VTK  9.0.1
vtkConeSource.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkConeSource.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 =========================================================================*/
30 #ifndef vtkConeSource_h
31 #define vtkConeSource_h
32 
33 #include "vtkFiltersSourcesModule.h" // For export macro
34 #include "vtkPolyDataAlgorithm.h"
35 
36 #include "vtkCell.h" // Needed for VTK_CELL_SIZE
37 
38 class VTKFILTERSSOURCES_EXPORT vtkConeSource : public vtkPolyDataAlgorithm
39 {
40 public:
42  void PrintSelf(ostream& os, vtkIndent indent) override;
43 
49  static vtkConeSource* New();
50 
52 
56  vtkSetClampMacro(Height, double, 0.0, VTK_DOUBLE_MAX);
57  vtkGetMacro(Height, double);
59 
61 
64  vtkSetClampMacro(Radius, double, 0.0, VTK_DOUBLE_MAX);
65  vtkGetMacro(Radius, double);
67 
69 
72  vtkSetClampMacro(Resolution, int, 0, VTK_CELL_SIZE);
73  vtkGetMacro(Resolution, int);
75 
77 
82  vtkSetVector3Macro(Center, double);
83  vtkGetVectorMacro(Center, double, 3);
85 
87 
92  vtkSetVector3Macro(Direction, double);
93  vtkGetVectorMacro(Direction, double, 3);
95 
97 
104  void SetAngle(double angle);
105  double GetAngle();
107 
109 
112  vtkSetMacro(Capping, vtkTypeBool);
113  vtkGetMacro(Capping, vtkTypeBool);
114  vtkBooleanMacro(Capping, vtkTypeBool);
116 
118 
123  vtkSetMacro(OutputPointsPrecision, int);
124  vtkGetMacro(OutputPointsPrecision, int);
126 
127 protected:
128  vtkConeSource(int res = 6);
129  ~vtkConeSource() override {}
130 
133 
134  double Height;
135  double Radius;
138  double Center[3];
139  double Direction[3];
141 
142 private:
143  vtkConeSource(const vtkConeSource&) = delete;
144  void operator=(const vtkConeSource&) = delete;
145 };
146 
147 #endif
vtkConeSource::Resolution
int Resolution
Definition: vtkConeSource.h:136
vtkConeSource::Capping
vtkTypeBool Capping
Definition: vtkConeSource.h:137
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:35
vtkConeSource
generate polygonal cone
Definition: vtkConeSource.h:38
vtkConeSource::~vtkConeSource
~vtkConeSource() override
Definition: vtkConeSource.h:129
vtkPolyDataAlgorithm::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkCell.h
vtkPolyDataAlgorithm.h
VTK_CELL_SIZE
#define VTK_CELL_SIZE
Definition: vtkCell.h:40
vtkPolyDataAlgorithm::RequestData
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
vtkConeSource::OutputPointsPrecision
int OutputPointsPrecision
Definition: vtkConeSource.h:140
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:33
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:73
vtkConeSource::Radius
double Radius
Definition: vtkConeSource.h:135
vtkConeSource::Height
double Height
Definition: vtkConeSource.h:134
VTK_DOUBLE_MAX
#define VTK_DOUBLE_MAX
Definition: vtkType.h:165
vtkTypeBool
int vtkTypeBool
Definition: vtkABI.h:69
vtkPolyDataAlgorithm::New
static vtkPolyDataAlgorithm * New()
vtkPolyDataAlgorithm::RequestInformation
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
vtkPolyDataAlgorithm
Superclass for algorithms that produce only polydata as output.
Definition: vtkPolyDataAlgorithm.h:41