]> Creatis software - cpPlugins.git/blob - plugins/ImageMeshFilters/RasterMeshFilter.h
Spline widget finished.
[cpPlugins.git] / plugins / ImageMeshFilters / RasterMeshFilter.h
1 #ifndef __cpPluginsImageMesh__RasterMeshFilter__h__
2 #define __cpPluginsImageMesh__RasterMeshFilter__h__
3
4 #include <plugins/cpPluginsImageMeshFilters_Export.h>
5 #include <cpPlugins/BaseObjects/ProcessObject.h>
6 #include <cpPlugins/DataObjects/Image.h>
7 #include <vtkSmartPointer.h>
8
9 // -------------------------------------------------------------------------
10 class vtkStripper;
11 class vtkLinearExtrusionFilter;
12 class vtkPolyDataToImageStencil;
13 class vtkImageStencil;
14
15 // -------------------------------------------------------------------------
16 namespace cpPluginsImageMeshFilters
17 {
18   /**
19    */
20   class cpPluginsImageMeshFilters_EXPORT RasterMeshFilter
21     : public cpPlugins::BaseObjects::ProcessObject
22   {
23     cpPluginsObject(
24       RasterMeshFilter,
25       cpPlugins::BaseObjects::ProcessObject,
26       MeshToImageFilters
27       );
28
29   public:
30     typedef cpPlugins::DataObjects::Image TImage;
31
32   protected:
33     template< class _TMesh >
34       inline void _GD0_2D( _TMesh* mesh );
35
36     template< class _TMesh >
37       inline void _GD0_3D( _TMesh* mesh );
38
39   protected:
40     TImage::Pointer m_WhiteImage;
41     vtkSmartPointer< vtkStripper > m_Stripper;
42     vtkSmartPointer< vtkLinearExtrusionFilter > m_Extruder;
43     vtkSmartPointer< vtkPolyDataToImageStencil > m_PolyDataToStencil;
44     vtkSmartPointer< vtkImageStencil > m_ImageStencil;
45   };
46
47 } // ecapseman
48
49 #endif // __cpPluginsImageMesh__RasterMeshFilter__h__
50
51 // eof - $RCSfile$