#include <itkCommand.h>
#include <vtkActor.h>
-#include <vtkImageData.h>
#include <vtkPolyData.h>
#include <vtkPolyDataMapper.h>
#include <vtkSmartPointer.h>
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;
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 ); }
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;
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