Graphics/vtkPlatonicSolidSource.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00028 #ifndef __vtkPlatonicSolidSource_h
00029 #define __vtkPlatonicSolidSource_h
00030
00031 #include "vtkPolyDataSource.h"
00032
00033 #define VTK_SOLID_TETRAHEDRON 0
00034 #define VTK_SOLID_CUBE 1
00035 #define VTK_SOLID_OCTAHEDRON 2
00036 #define VTK_SOLID_ICOSAHEDRON 3
00037 #define VTK_SOLID_DODECAHEDRON 4
00038
00039 class VTK_GRAPHICS_EXPORT vtkPlatonicSolidSource : public vtkPolyDataSource
00040 {
00041 public:
00042 static vtkPlatonicSolidSource *New();
00043 vtkTypeRevisionMacro(vtkPlatonicSolidSource,vtkPolyDataSource);
00044 void PrintSelf(ostream& os, vtkIndent indent);
00045
00047
00048 vtkSetClampMacro(SolidType,int,VTK_SOLID_TETRAHEDRON,VTK_SOLID_DODECAHEDRON);
00049 vtkGetMacro(SolidType,int);
00050 void SetSolidTypeToTetrahedron()
00051 {this->SetSolidType(VTK_SOLID_TETRAHEDRON);}
00052 void SetSolidTypeToCube()
00053 {this->SetSolidType(VTK_SOLID_CUBE);}
00054 void SetSolidTypeToOctahedron()
00055 {this->SetSolidType(VTK_SOLID_OCTAHEDRON);}
00056 void SetSolidTypeToIcosahedron()
00057 {this->SetSolidType(VTK_SOLID_ICOSAHEDRON);}
00058 void SetSolidTypeToDodecahedron()
00059 {this->SetSolidType(VTK_SOLID_DODECAHEDRON);}
00061
00062 protected:
00063 vtkPlatonicSolidSource() : SolidType(VTK_SOLID_TETRAHEDRON) {}
00064 ~vtkPlatonicSolidSource() {}
00065
00066 void Execute();
00067 int SolidType;
00068
00069 private:
00070 vtkPlatonicSolidSource(const vtkPlatonicSolidSource&);
00071 void operator=(const vtkPlatonicSolidSource&);
00072
00073 };
00074
00075 #endif
00076
00077