1 #ifndef __CPPLUGINS__INTERFACE__MESH__H__
2 #define __CPPLUGINS__INTERFACE__MESH__H__
4 #include <cpPlugins/Interface/cpPlugins_Interface_Export.h>
5 #include <cpPlugins/Interface/DataObject.h>
7 #include <vtkSmartPointer.h>
8 #include <vtkQuadricLODActor.h>
9 #include <vtkPolyDataMapper.h>
10 #include <vtkPolyDataNormals.h>
11 #include <vtkStripper.h>
19 class cpPlugins_Interface_EXPORT Mesh
24 typedef DataObject Superclass;
25 typedef itk::SmartPointer< Self > Pointer;
26 typedef itk::SmartPointer< const Self > ConstPointer;
30 itkTypeMacro( Mesh, DataObject );
32 cpPlugins::Interface::Mesh, "DataObject"
37 inline void SetITK( itk::Object* object );
39 virtual void SetVTK( vtkObject* mesh );
41 virtual void CreateVTKActor( );
42 virtual vtkActor* GetVTKActor( );
43 virtual const vtkActor* GetVTKActor( ) const;
50 // Purposely not implemented
52 Self& operator=( const Self& );
55 vtkSmartPointer< vtkPolyDataNormals > m_Normals;
56 vtkSmartPointer< vtkStripper > m_Stripper;
57 vtkSmartPointer< vtkPolyDataMapper > m_Mapper;
58 vtkSmartPointer< vtkQuadricLODActor > m_Actor;
65 #include <cpPlugins/Interface/Mesh.hxx>
67 #endif // __CPPLUGINS__INTERFACE__MESH__H__