00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00032 #ifndef __vtkConeSource_h
00033 #define __vtkConeSource_h
00034
00035 #include "vtkPolyDataAlgorithm.h"
00036
00037 #include "vtkCell.h"
00038
00039 class VTK_GRAPHICS_EXPORT vtkConeSource : public vtkPolyDataAlgorithm
00040 {
00041 public:
00042 vtkTypeRevisionMacro(vtkConeSource,vtkPolyDataAlgorithm);
00043 void PrintSelf(ostream& os, vtkIndent indent);
00044
00048 static vtkConeSource *New();
00049
00051
00053 vtkSetClampMacro(Height,double,0.0,VTK_DOUBLE_MAX)
00054 vtkGetMacro(Height,double);
00056
00058
00059 vtkSetClampMacro(Radius,double,0.0,VTK_DOUBLE_MAX)
00060 vtkGetMacro(Radius,double);
00062
00064
00065 vtkSetClampMacro(Resolution,int,0,VTK_CELL_SIZE)
00066 vtkGetMacro(Resolution,int);
00068
00070
00073 vtkSetVector3Macro(Center,double);
00074 vtkGetVectorMacro(Center,double,3);
00076
00078
00081 vtkSetVector3Macro(Direction,double);
00082 vtkGetVectorMacro(Direction,double,3);
00084
00086
00090 void SetAngle (double angle);
00091 double GetAngle ();
00093
00095
00096 vtkSetMacro(Capping,int);
00097 vtkGetMacro(Capping,int);
00098 vtkBooleanMacro(Capping,int);
00100
00101 protected:
00102 vtkConeSource(int res=6);
00103 ~vtkConeSource() {}
00104
00105 virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00106 int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00107
00108 double Height;
00109 double Radius;
00110 int Resolution;
00111 int Capping;
00112 double Center[3];
00113 double Direction[3];
00114
00115 private:
00116 vtkConeSource(const vtkConeSource&);
00117 void operator=(const vtkConeSource&);
00118 };
00119
00120 #endif
00121
00122