]> Creatis software - cpPlugins.git/blob - lib/cpPlugins/DataObjects/PolyLineParametricPath.cxx
...
[cpPlugins.git] / lib / cpPlugins / DataObjects / PolyLineParametricPath.cxx
1 #include <cpPlugins/DataObjects/PolyLineParametricPath.h>
2 #include <cpExtensions/Visualization/PolyLineParametricPathToPolyData.h>
3 #include <cpPlugins/DataObjects/PolyLineParametricPath_Demanglers.h>
4 #include <cpExtensions/DataStructures/PolyLineParametricPath.h>
5
6 // -------------------------------------------------------------------------
7 void cpPlugins::DataObjects::PolyLineParametricPath::
8 SetITK( itk::LightObject* o )
9 {
10   this->Superclass::SetITK( o );
11   cpPlugins_Demangle_PolyLineParametricPath_All_1( o, _ITK_2_VTK )
12   {
13     this->m_VTK = NULL;
14     this->m_ITKvVTK = NULL;
15   }
16 }
17
18 // -------------------------------------------------------------------------
19 void cpPlugins::DataObjects::PolyLineParametricPath::
20 SetVTK( vtkObjectBase* o )
21 {
22   // Do nothing
23   this->m_ITK = NULL;
24   this->m_VTK = NULL;
25   this->m_ITKvVTK = NULL;
26 }
27
28 // -------------------------------------------------------------------------
29 cpPlugins::DataObjects::PolyLineParametricPath::
30 PolyLineParametricPath( )
31   : Superclass( )
32 {
33 }
34
35 // -------------------------------------------------------------------------
36 cpPlugins::DataObjects::PolyLineParametricPath::
37 ~PolyLineParametricPath( )
38 {
39 }
40
41 // -------------------------------------------------------------------------
42 template< class _TPolyLine >
43 void cpPlugins::DataObjects::PolyLineParametricPath::
44 _ITK_2_VTK( _TPolyLine* pl )
45 {
46   typedef
47     cpExtensions::Visualization::PolyLineParametricPathToPolyData< _TPolyLine >
48     _TFilter;
49   _TFilter* f = dynamic_cast< _TFilter* >( this->m_ITKvVTK.GetPointer( ) );
50   if( f == NULL )
51   {
52     _TFilter* nf = _TFilter::New( );
53     this->m_ITKvVTK = nf;
54     f = nf;
55
56   } // fi
57   f->SetInput( pl );
58   f->Update( );
59
60   // Keep object track
61   this->m_ITK = pl;
62   this->m_VTK = f->GetOutput( );
63 }
64
65 // eof - $RCSfile$