VTK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
vtkCylinderSource.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkCylinderSource.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 __vtkCylinderSource_h
34 #define __vtkCylinderSource_h
35 
36 #include "vtkFiltersSourcesModule.h" // For export macro
37 #include "vtkPolyDataAlgorithm.h"
38 
39 #include "vtkCell.h" // Needed for VTK_CELL_SIZE
40 
41 class VTKFILTERSSOURCES_EXPORT vtkCylinderSource : public vtkPolyDataAlgorithm
42 {
43 public:
44  static vtkCylinderSource *New();
45  vtkTypeMacro(vtkCylinderSource,vtkPolyDataAlgorithm);
46  void PrintSelf(ostream& os, vtkIndent indent);
47 
49 
50  vtkSetClampMacro(Height,double,0.0,VTK_DOUBLE_MAX)
51  vtkGetMacro(Height,double);
53 
55 
56  vtkSetClampMacro(Radius,double,0.0,VTK_DOUBLE_MAX)
57  vtkGetMacro(Radius,double);
59 
61 
62  vtkSetVector3Macro(Center,double);
63  vtkGetVectorMacro(Center,double,3);
65 
67 
68  vtkSetClampMacro(Resolution,int,2,VTK_CELL_SIZE)
69  vtkGetMacro(Resolution,int);
71 
73 
75  vtkSetMacro(Capping,int);
76  vtkGetMacro(Capping,int);
77  vtkBooleanMacro(Capping,int);
79 
80 protected:
81  vtkCylinderSource(int res=6);
83 
84  int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
85  double Height;
86  double Radius;
87  double Center[3];
89  int Capping;
90 
91 private:
92  vtkCylinderSource(const vtkCylinderSource&); // Not implemented.
93  void operator=(const vtkCylinderSource&); // Not implemented.
94 };
95 
96 #endif
generate a cylinder centered at origin