VTK  9.3.0
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
30#ifndef vtkDiskSource_h
31#define vtkDiskSource_h
32
33#include "vtkFiltersSourcesModule.h" // For export macro
35
36VTK_ABI_NAMESPACE_BEGIN
37class vtkTransform;
38
39class VTKFILTERSSOURCES_EXPORT vtkDiskSource : public vtkPolyDataAlgorithm
40{
41public:
43
47 static vtkDiskSource* New();
49 void PrintSelf(ostream& os, vtkIndent indent) override;
51
53
56 vtkSetClampMacro(InnerRadius, double, 0.0, VTK_DOUBLE_MAX);
57 vtkGetMacro(InnerRadius, double);
59
61
64 vtkSetClampMacro(OuterRadius, double, 0.0, VTK_DOUBLE_MAX);
65 vtkGetMacro(OuterRadius, double);
67
69
72 vtkSetClampMacro(RadialResolution, int, 1, VTK_INT_MAX);
73 vtkGetMacro(RadialResolution, int);
75
77
80 vtkSetClampMacro(CircumferentialResolution, int, 3, VTK_INT_MAX);
81 vtkGetMacro(CircumferentialResolution, int);
83
85
88 vtkSetVector3Macro(Center, double);
89 vtkGetVectorMacro(Center, double, 3);
91
93
96 vtkSetVector3Macro(Normal, double);
97 vtkGetVectorMacro(Normal, double, 3);
99
101
106 vtkSetMacro(OutputPointsPrecision, int);
107 vtkGetMacro(OutputPointsPrecision, int);
109
110protected:
112 ~vtkDiskSource() override = default;
113
118 double Center[3];
119 double Normal[3];
123
124private:
125 vtkDiskSource(const vtkDiskSource&) = delete;
126 void operator=(const vtkDiskSource&) = delete;
127};
128
129VTK_ABI_NAMESPACE_END
130#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:38
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:154
#define VTK_INT_MAX
Definition vtkType.h:144