X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FcpPlugins%2FInterface%2FMesh.h;h=b2fe92302d84c810a20276a0e784320eb5f02f29;hb=8f73fe60149066b59be7cc39e352f74a1e9e664f;hp=ae7292891d2b1cfccb226a596f9c7bff1b1459eb;hpb=2361f4f97631e09d88d8a5510a369817dcaa19db;p=cpPlugins.git diff --git a/lib/cpPlugins/Interface/Mesh.h b/lib/cpPlugins/Interface/Mesh.h index ae72928..b2fe923 100644 --- a/lib/cpPlugins/Interface/Mesh.h +++ b/lib/cpPlugins/Interface/Mesh.h @@ -1,10 +1,14 @@ #ifndef __CPPLUGINS__INTERFACE__MESH__H__ #define __CPPLUGINS__INTERFACE__MESH__H__ -#include +#include #include -class vtkPolyData; +#include +#include +#include +#include +#include namespace cpPlugins { @@ -12,7 +16,7 @@ namespace cpPlugins { /** */ - class cpPlugins_EXPORT Mesh + class cpPlugins_Interface_EXPORT Mesh : public DataObject { public: @@ -24,40 +28,42 @@ namespace cpPlugins public: itkNewMacro( Self ); itkTypeMacro( Mesh, DataObject ); + cpPlugins_Id_Macro( + cpPlugins::Interface::Mesh, "DataObject" + ); public: - virtual void SetITKDataObject( itk::DataObject* o ); - virtual void SetVTKDataObject( vtkDataObject* o ); + template< class M > + inline void SetITK( itk::Object* object ); - vtkPolyData* GetVTKPolyData( ); - const vtkPolyData* GetVTKPolyData( ) const; + virtual void SetVTK( vtkObject* mesh ); + + virtual void CreateVTKActor( ); + virtual vtkActor* GetVTKActor( ); + virtual const vtkActor* GetVTKActor( ) const; protected: Mesh( ); virtual ~Mesh( ); - template< unsigned int D > - void _ITK_2_VTK_0( itk::DataObject* o ); - - template< class P, unsigned int D > - void _ITK_2_VTK_1( itk::DataObject* o ); - - template< unsigned int D > - void _VTK_2_ITK_0( itk::DataObject* o ); - - template< class P, unsigned int D > - void _VTK_2_ITK_1( itk::DataObject* o ); - private: // Purposely not implemented Mesh( const Self& ); Self& operator=( const Self& ); + + protected: + vtkSmartPointer< vtkPolyDataNormals > m_Normals; + vtkSmartPointer< vtkStripper > m_Stripper; + vtkSmartPointer< vtkPolyDataMapper > m_Mapper; + vtkSmartPointer< vtkQuadricLODActor > m_Actor; }; } // ecapseman } // ecapseman +#include + #endif // __CPPLUGINS__INTERFACE__MESH__H__ // eof - $RCSfile$