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
#define VTK_DOUBLE_MAX
Definition: vtkType.h:165
Store vtkAlgorithm input/output information.
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
generate polygonal cone
Definition: vtkConeSource.h:38
#define VTK_CELL_SIZE
Definition: vtkCell.h:40
static vtkPolyDataAlgorithm * New()
int vtkTypeBool
Definition: vtkABI.h:69
Superclass for algorithms that produce only polydata as output.
~vtkConeSource() override
a simple class to control print indentation
Definition: vtkIndent.h:33
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
int OutputPointsPrecision
vtkTypeBool Capping
Store zero or more vtkInformation instances.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.