VTK  9.5.20251107
vtkDiskSource.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
83#ifndef vtkDiskSource_h
84#define vtkDiskSource_h
85
86#include "vtkFiltersSourcesModule.h" // For export macro
88#include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
89
90VTK_ABI_NAMESPACE_BEGIN
91class vtkTransform;
92
93class VTKFILTERSSOURCES_EXPORT VTK_MARSHALAUTO vtkDiskSource : public vtkPolyDataAlgorithm
94{
95public:
97
103 void PrintSelf(ostream& os, vtkIndent indent) override;
105
107
110 vtkSetClampMacro(InnerRadius, double, 0.0, VTK_DOUBLE_MAX);
111 vtkGetMacro(InnerRadius, double);
113
115
118 vtkSetClampMacro(OuterRadius, double, 0.0, VTK_DOUBLE_MAX);
119 vtkGetMacro(OuterRadius, double);
121
123
126 vtkSetClampMacro(RadialResolution, int, 1, VTK_INT_MAX);
127 vtkGetMacro(RadialResolution, int);
129
131
134 vtkSetClampMacro(CircumferentialResolution, int, 3, VTK_INT_MAX);
135 vtkGetMacro(CircumferentialResolution, int);
137
139
142 vtkSetVector3Macro(Center, double);
143 vtkGetVectorMacro(Center, double, 3);
145
147
150 vtkSetVector3Macro(Normal, double);
151 vtkGetVectorMacro(Normal, double, 3);
153
155
160 vtkSetMacro(OutputPointsPrecision, int);
161 vtkGetMacro(OutputPointsPrecision, int);
163
164protected:
166 ~vtkDiskSource() override = default;
167
172 double Center[3];
173 double Normal[3];
177
178private:
179 vtkDiskSource(const vtkDiskSource&) = delete;
180 void operator=(const vtkDiskSource&) = delete;
181};
182
183VTK_ABI_NAMESPACE_END
184#endif
create a disk with hole in center
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods to instantiate the class, obtain type information, and print the state of the object...
~vtkDiskSource() override=default
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkSmartPointer< vtkTransform > GetTransformation()
int CircumferentialResolution
static vtkDiskSource * New()
Standard methods to instantiate the class, obtain type information, and print the state of the object...
a simple class to control print indentation
Definition vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce only polydata as output.
Hold a reference to a vtkObjectBase instance.
describes linear transformations via a 4x4 matrix
#define VTK_DOUBLE_MAX
Definition vtkType.h:206
#define VTK_INT_MAX
Definition vtkType.h:196
#define VTK_MARSHALAUTO