VTK
vtkRegularPolygonSource.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkRegularPolygonSource.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
33 #ifndef vtkRegularPolygonSource_h
34 #define vtkRegularPolygonSource_h
35 
36 #include "vtkFiltersSourcesModule.h" // For export macro
37 #include "vtkPolyDataAlgorithm.h"
38 
39 class VTKFILTERSSOURCES_EXPORT vtkRegularPolygonSource : public vtkPolyDataAlgorithm
40 {
41 public:
43 
46  static vtkRegularPolygonSource *New();
48  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
50 
52 
56  vtkSetClampMacro(NumberOfSides,int,3,VTK_INT_MAX);
57  vtkGetMacro(NumberOfSides,int);
59 
61 
65  vtkSetVector3Macro(Center,double);
66  vtkGetVectorMacro(Center,double,3);
68 
70 
75  vtkSetVector3Macro(Normal,double);
76  vtkGetVectorMacro(Normal,double,3);
78 
80 
83  vtkSetMacro(Radius,double);
84  vtkGetMacro(Radius,double);
86 
88 
91  vtkSetMacro(GeneratePolygon,int);
92  vtkGetMacro(GeneratePolygon,int);
93  vtkBooleanMacro(GeneratePolygon,int);
95 
97 
100  vtkSetMacro(GeneratePolyline,int);
101  vtkGetMacro(GeneratePolyline,int);
102  vtkBooleanMacro(GeneratePolyline,int);
104 
106 
111  vtkSetMacro(OutputPointsPrecision,int);
112  vtkGetMacro(OutputPointsPrecision,int);
114 
115 protected:
117  ~vtkRegularPolygonSource() VTK_OVERRIDE {}
118 
120 
121  int NumberOfSides;
122  double Center[3];
123  double Normal[3];
124  double Radius;
125  int GeneratePolygon;
126  int GeneratePolyline;
127  int OutputPointsPrecision;
128 
129 private:
130  vtkRegularPolygonSource(const vtkRegularPolygonSource&) VTK_DELETE_FUNCTION;
131  void operator=(const vtkRegularPolygonSource&) VTK_DELETE_FUNCTION;
132 };
133 
134 #endif
Store vtkAlgorithm input/output information.
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
#define VTK_INT_MAX
Definition: vtkType.h:153
static vtkPolyDataAlgorithm * New()
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
create a regular, n-sided polygon and/or polyline
Store zero or more vtkInformation instances.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.