VTK  9.3.20240302
vtkArcSource.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 vtkArcSource_h
31 #define vtkArcSource_h
32 
33 #include "vtkFiltersSourcesModule.h" // For export macro
34 #include "vtkPolyDataAlgorithm.h"
35 
36 VTK_ABI_NAMESPACE_BEGIN
37 class VTKFILTERSSOURCES_EXPORT vtkArcSource : public vtkPolyDataAlgorithm
38 {
39 public:
40  static vtkArcSource* New();
42  void PrintSelf(ostream& os, vtkIndent indent) override;
43 
45 
48  vtkSetVector3Macro(Point1, double);
49  vtkGetVectorMacro(Point1, double, 3);
51 
53 
56  vtkSetVector3Macro(Point2, double);
57  vtkGetVectorMacro(Point2, double, 3);
59 
61 
66  vtkSetVector3Macro(Center, double);
67  vtkGetVectorMacro(Center, double, 3);
69 
71 
76  vtkSetVector3Macro(Normal, double);
77  vtkGetVectorMacro(Normal, double, 3);
79 
81 
86  vtkSetVector3Macro(PolarVector, double);
87  vtkGetVectorMacro(PolarVector, double, 3);
89 
91 
97  vtkSetClampMacro(Angle, double, -360.0, 360.0);
98  vtkGetMacro(Angle, double);
100 
102 
107  vtkSetClampMacro(Resolution, int, 1, VTK_INT_MAX);
108  vtkGetMacro(Resolution, int);
110 
112 
118  vtkSetMacro(Negative, bool);
119  vtkGetMacro(Negative, bool);
120  vtkBooleanMacro(Negative, bool);
122 
124 
132  vtkSetMacro(UseNormalAndAngle, bool);
133  vtkGetMacro(UseNormalAndAngle, bool);
134  vtkBooleanMacro(UseNormalAndAngle, bool);
136 
138 
143  vtkSetMacro(OutputPointsPrecision, int);
144  vtkGetMacro(OutputPointsPrecision, int);
146 
147 protected:
148  vtkArcSource(int res = 1);
149  ~vtkArcSource() override = default;
150 
153  double Point1[3];
154  double Point2[3];
155  double Center[3];
156  double Normal[3];
157  double PolarVector[3];
158  double Angle;
160  bool Negative;
163 
164 private:
165  vtkArcSource(const vtkArcSource&) = delete;
166  void operator=(const vtkArcSource&) = delete;
167 };
168 
169 VTK_ABI_NAMESPACE_END
170 #endif
create a circular arc
Definition: vtkArcSource.h:38
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
bool UseNormalAndAngle
Definition: vtkArcSource.h:161
vtkArcSource(int res=1)
static vtkArcSource * New()
~vtkArcSource() override=default
int OutputPointsPrecision
Definition: vtkArcSource.h:162
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
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.
@ Normal
Definition: vtkX3D.h:45
#define VTK_INT_MAX
Definition: vtkType.h:144