VTK  9.3.20240419
vtkSectorSource.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
15 #ifndef vtkSectorSource_h
16 #define vtkSectorSource_h
17 
18 #include "vtkFiltersModelingModule.h" // For export macro
19 #include "vtkPolyDataAlgorithm.h"
20 
21 VTK_ABI_NAMESPACE_BEGIN
22 class VTKFILTERSMODELING_EXPORT vtkSectorSource : public vtkPolyDataAlgorithm
23 {
24 public:
25  static vtkSectorSource* New();
27  void PrintSelf(ostream& os, vtkIndent indent) override;
28 
30 
33  vtkSetClampMacro(InnerRadius, double, 0.0, VTK_DOUBLE_MAX);
34  vtkGetMacro(InnerRadius, double);
36 
38 
41  vtkSetClampMacro(OuterRadius, double, 0.0, VTK_DOUBLE_MAX);
42  vtkGetMacro(OuterRadius, double);
44 
46 
49  vtkSetClampMacro(ZCoord, double, 0.0, VTK_DOUBLE_MAX);
50  vtkGetMacro(ZCoord, double);
52 
54 
57  vtkSetClampMacro(RadialResolution, int, 1, VTK_INT_MAX);
58  vtkGetMacro(RadialResolution, int);
60 
62 
65  vtkSetClampMacro(CircumferentialResolution, int, 3, VTK_INT_MAX);
66  vtkGetMacro(CircumferentialResolution, int);
68 
70 
73  vtkSetClampMacro(StartAngle, double, 0.0, VTK_DOUBLE_MAX);
74  vtkGetMacro(StartAngle, double);
76 
78 
81  vtkSetClampMacro(EndAngle, double, 0.0, VTK_DOUBLE_MAX);
82  vtkGetMacro(EndAngle, double);
84 
85 protected:
87  ~vtkSectorSource() override = default;
88 
90  double InnerRadius;
91  double OuterRadius;
92  double ZCoord;
95  double StartAngle;
96  double EndAngle;
97 
98 private:
99  vtkSectorSource(const vtkSectorSource&) = delete;
100  void operator=(const vtkSectorSource&) = delete;
101 };
102 
103 VTK_ABI_NAMESPACE_END
104 #endif
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.
create a sector of a disk
static vtkSectorSource * New()
~vtkSectorSource() override=default
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
#define VTK_DOUBLE_MAX
Definition: vtkType.h:154
#define VTK_INT_MAX
Definition: vtkType.h:144