00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00035 #ifndef __vtkConeSource_h
00036 #define __vtkConeSource_h
00037
00038 #include "vtkPolyDataAlgorithm.h"
00039
00040 #include "vtkCell.h"
00041
00042 class VTK_GRAPHICS_EXPORT vtkConeSource : public vtkPolyDataAlgorithm
00043 {
00044 public:
00045 vtkTypeRevisionMacro(vtkConeSource,vtkPolyDataAlgorithm);
00046 void PrintSelf(ostream& os, vtkIndent indent);
00047
00051 static vtkConeSource *New();
00052
00054
00056 vtkSetClampMacro(Height,double,0.0,VTK_DOUBLE_MAX)
00057 vtkGetMacro(Height,double);
00059
00061
00062 vtkSetClampMacro(Radius,double,0.0,VTK_DOUBLE_MAX)
00063 vtkGetMacro(Radius,double);
00065
00067
00068 vtkSetClampMacro(Resolution,int,0,VTK_CELL_SIZE)
00069 vtkGetMacro(Resolution,int);
00071
00073
00074 vtkSetVector3Macro(Center,double);
00075 vtkGetVectorMacro(Center,double,3);
00077
00079
00082 vtkSetVector3Macro(Direction,double);
00083 vtkGetVectorMacro(Direction,double,3);
00085
00087
00089 void SetAngle (double angle);
00090 double GetAngle ();
00092
00094
00095 vtkSetMacro(Capping,int);
00096 vtkGetMacro(Capping,int);
00097 vtkBooleanMacro(Capping,int);
00099
00100 protected:
00101 vtkConeSource(int res=6);
00102 ~vtkConeSource() {}
00103
00104 virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00105 int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00106
00107 double Height;
00108 double Radius;
00109 int Resolution;
00110 int Capping;
00111 double Center[3];
00112 double Direction[3];
00113
00114 private:
00115 vtkConeSource(const vtkConeSource&);
00116 void operator=(const vtkConeSource&);
00117 };
00118
00119 #endif
00120
00121