00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00031 #ifndef __vtkCylinderSource_h
00032 #define __vtkCylinderSource_h
00033 
00034 #include "vtkPolyDataAlgorithm.h"
00035 
00036 #include "vtkCell.h" 
00037 
00038 class VTK_GRAPHICS_EXPORT vtkCylinderSource : public vtkPolyDataAlgorithm 
00039 {
00040 public:
00041   static vtkCylinderSource *New();
00042   vtkTypeMacro(vtkCylinderSource,vtkPolyDataAlgorithm);
00043   void PrintSelf(ostream& os, vtkIndent indent);
00044 
00046 
00047   vtkSetClampMacro(Height,double,0.0,VTK_DOUBLE_MAX)
00048   vtkGetMacro(Height,double);
00050 
00052 
00053   vtkSetClampMacro(Radius,double,0.0,VTK_DOUBLE_MAX)
00054   vtkGetMacro(Radius,double);
00056 
00058 
00059   vtkSetVector3Macro(Center,double);
00060   vtkGetVectorMacro(Center,double,3);
00062 
00064 
00065   vtkSetClampMacro(Resolution,int,2,VTK_CELL_SIZE)
00066   vtkGetMacro(Resolution,int);
00068 
00070 
00072   vtkSetMacro(Capping,int);
00073   vtkGetMacro(Capping,int);
00074   vtkBooleanMacro(Capping,int);
00076 
00077 protected:
00078   vtkCylinderSource(int res=6);
00079   ~vtkCylinderSource() {};
00080 
00081   int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00082   double Height;
00083   double Radius;
00084   double Center[3];
00085   int Resolution;
00086   int Capping;
00087 
00088 private:
00089   vtkCylinderSource(const vtkCylinderSource&);  
00090   void operator=(const vtkCylinderSource&);  
00091 };
00092 
00093 #endif