]> Creatis software - FrontAlgorithms.git/blobdiff - lib/fpa/VTK/Image3DObserver.h
Branches extraction algorithm from MSTs updated
[FrontAlgorithms.git] / lib / fpa / VTK / Image3DObserver.h
index 6b6af4324c397aab87c5a8facb01c1c876f2fbe0..d5ec4e83a9a86dcaf9ac9bda311a746cfdf36c44 100644 (file)
@@ -6,7 +6,6 @@
 #include <itkCommand.h>
 
 #include <vtkActor.h>
-#include <vtkImageData.h>
 #include <vtkPolyData.h>
 #include <vtkPolyDataMapper.h>
 #include <vtkSmartPointer.h>
@@ -27,10 +26,11 @@ namespace fpa
       typedef itk::SmartPointer< Self >       Pointer;
       typedef itk::SmartPointer< const Self > ConstPointer;
 
-      typedef F                             TFilter;
-      typedef R                             TRenderWindow;
-      typedef typename TFilter::TInputImage TImage;
-      typedef typename TFilter::TVertex     TVertex;
+      typedef F                                TFilter;
+      typedef R                                TRenderWindow;
+      typedef typename TFilter::TInputImage    TImage;
+      typedef typename TFilter::TVertex        TVertex;
+      typedef typename TFilter::TVertexCompare TVertexCompare;
 
       typedef std::set< TVertex > TVertices;
 
@@ -43,13 +43,6 @@ namespace fpa
 
     public:
       void SetRenderWindow( R* rw );
-      void SetPixel(
-        typename TImage::IndexType idx,
-        unsigned char red,
-        unsigned char green,
-        unsigned char blue,
-        unsigned char alpha
-        );
       void Render( );
       void Execute( itk::Object* c, const itk::EventObject& e )
         { this->Execute( ( const itk::Object* )( c ), e ); }
@@ -64,10 +57,11 @@ namespace fpa
       void operator=( const Self& );  // Not impl.
 
     protected:
-      vtkSmartPointer< vtkImageData >      m_Stencil;
       vtkSmartPointer< vtkPolyData >       m_PolyData;
       vtkSmartPointer< vtkPolyDataMapper > m_PolyDataMapper;
       vtkSmartPointer< vtkActor >          m_PolyDataActor;
+      std::map< TVertex, unsigned long, TVertexCompare >   m_PointsToReplace;
+      std::map< TVertex, unsigned long, TVertexCompare >   m_PointsInFront;
 
       R*            m_RenderWindow;
       unsigned long m_Count;
@@ -75,56 +69,6 @@ namespace fpa
       double        m_RenderPercentage;
     };
 
-    /**
-     */
-    /*
-    template< class F, class R >
-    class Image3DObserver
-      : public itk::Command
-    {
-    public:
-      typedef Image3DObserver                 Self;
-      typedef itk::Command                    Superclass;
-      typedef itk::SmartPointer< Self >       Pointer;
-      typedef itk::SmartPointer< const Self > ConstPointer;
-
-      typedef F TFilter;
-      typedef R TRenderWindow;
-
-    public:
-      itkNewMacro( Self );
-      itkTypeMacro( Image3DObserver, itkCommand );
-
-      itkGetConstMacro( RenderPercentage, double );
-      itkSetMacro( RenderPercentage, double );
-
-    public:
-      void SetRenderWindow( R* rw );
-      void Execute( itk::Object* c, const itk::EventObject& e )
-        { this->Execute( ( const itk::Object* )( c ), e ); }
-      void Execute( const itk::Object* c, const itk::EventObject& e );
-
-    protected:
-      Image3DObserver( );
-      virtual ~Image3DObserver( )
-        { }
-
-    private:
-      Image3DObserver( const Self& ); // Not impl.
-      void operator=( const Self& );  // Not impl.
-
-    protected:
-      R*            m_RenderWindow;
-      unsigned long m_Count;
-      unsigned long m_RenderCount;
-      double        m_RenderPercentage;
-
-      vtkSmartPointer< vtkPolyData >       m_Data;
-      vtkSmartPointer< vtkPolyDataMapper > m_Mapper;
-      vtkSmartPointer< vtkActor >          m_Actor;
-    };
-    */
-
   } // ecapseman
 
 } // ecapseman