]> Creatis software - cpPlugins.git/blob - lib/cpPlugins/Interface/ImplicitFunction.cxx
1ffc516739274ca2fa26d863a67678b141a237a6
[cpPlugins.git] / lib / cpPlugins / Interface / ImplicitFunction.cxx
1 #include <cpPlugins/Interface/ImplicitFunction.h>
2
3 #include <vtkBox.h>
4 #include <vtkCone.h>
5 #include <vtkCylinder.h>
6 #include <vtkImplicitBoolean.h>
7 #include <vtkImplicitDataSet.h>
8 #include <vtkImplicitHalo.h>
9 #include <vtkImplicitPolyDataDistance.h>
10 #include <vtkImplicitSelectionLoop.h>
11 #include <vtkImplicitSum.h>
12 #include <vtkImplicitVolume.h>
13 #include <vtkImplicitWindowFunction.h>
14 #include <vtkPerlinNoise.h>
15 #include <vtkPlane.h>
16 #include <vtkPlanes.h>
17 #include <vtkPlanesIntersection.h>
18 #include <vtkPolyPlane.h>
19 #include <vtkQuadric.h>
20 #include <vtkSphere.h>
21 #include <vtkSuperquadric.h>
22
23 // -------------------------------------------------------------------------
24 #define cpPlugins_Interface_ImplicitFunction_DEF( T )                   \
25   void cpPlugins::Interface::ImplicitFunction::SetFunctionTo##T( )      \
26   {                                                                     \
27     this->m_VTKObject = vtkSmartPointer< vtk##T >::New( );              \
28     this->Modified( );                                                  \
29   }
30
31 // -------------------------------------------------------------------------
32 cpPlugins_Interface_ImplicitFunction_DEF( Box );
33 cpPlugins_Interface_ImplicitFunction_DEF( Cone );
34 cpPlugins_Interface_ImplicitFunction_DEF( Cylinder );
35 cpPlugins_Interface_ImplicitFunction_DEF( ImplicitBoolean );
36 cpPlugins_Interface_ImplicitFunction_DEF( ImplicitDataSet );
37 cpPlugins_Interface_ImplicitFunction_DEF( ImplicitHalo );
38 cpPlugins_Interface_ImplicitFunction_DEF( ImplicitPolyDataDistance );
39 cpPlugins_Interface_ImplicitFunction_DEF( ImplicitSelectionLoop );
40 cpPlugins_Interface_ImplicitFunction_DEF( ImplicitSum );
41 cpPlugins_Interface_ImplicitFunction_DEF( ImplicitVolume );
42 cpPlugins_Interface_ImplicitFunction_DEF( ImplicitWindowFunction );
43 cpPlugins_Interface_ImplicitFunction_DEF( PerlinNoise );
44 cpPlugins_Interface_ImplicitFunction_DEF( Plane );
45 cpPlugins_Interface_ImplicitFunction_DEF( Planes );
46 cpPlugins_Interface_ImplicitFunction_DEF( PlanesIntersection );
47 cpPlugins_Interface_ImplicitFunction_DEF( PolyPlane );
48 cpPlugins_Interface_ImplicitFunction_DEF( Quadric );
49 cpPlugins_Interface_ImplicitFunction_DEF( Sphere );
50 cpPlugins_Interface_ImplicitFunction_DEF( Superquadric );
51
52 // -------------------------------------------------------------------------
53 vtkImplicitFunction* cpPlugins::Interface::ImplicitFunction::
54 GetVTKImplicitFunction( )
55 {
56   return(
57     dynamic_cast< vtkImplicitFunction* >(
58       this->m_VTKObject.GetPointer( )
59       )
60     );
61 }
62
63 // -------------------------------------------------------------------------
64 const vtkImplicitFunction* cpPlugins::Interface::ImplicitFunction::
65 GetVTKImplicitFunction( ) const
66 {
67   return(
68     dynamic_cast< const vtkImplicitFunction* >(
69       this->m_VTKObject.GetPointer( )
70       )
71     );
72 }
73
74 // -------------------------------------------------------------------------
75 void cpPlugins::Interface::ImplicitFunction::
76 SetFunction( vtkImplicitFunction* function )
77 {
78   this->m_VTKObject = function;
79   this->Modified( );
80 }
81
82 // -------------------------------------------------------------------------
83 cpPlugins::Interface::ImplicitFunction::
84 ImplicitFunction( )
85   : Superclass( )
86 {
87 }
88
89 // -------------------------------------------------------------------------
90 cpPlugins::Interface::ImplicitFunction::
91 ~ImplicitFunction( )
92 {
93 }
94
95 // eof - $RCSfile$