#include #include #include #include // ------------------------------------------------------------------------- double cpExtensions::Visualization::ImageOutlineActor::Colors[ 3 ][ 3 ] = { { 1, 0, 0 }, { 0, 1, 0 }, { 0, 0, 1 } }; // ------------------------------------------------------------------------- cpExtensions::Visualization::ImageOutlineActor:: Self* cpExtensions::Visualization::ImageOutlineActor:: New( ) { return( new Self( ) ); } // ------------------------------------------------------------------------- void cpExtensions::Visualization::ImageOutlineActor:: Modified( ) { this->m_Outline->Modified( ); this->m_Mapper->Modified( ); this->Superclass::Modified( ); } // ------------------------------------------------------------------------- void cpExtensions::Visualization::ImageOutlineActor:: SetBounds( int orientation, double step, double* bounds ) { // Update geometry this->m_Outline->SetBounds( orientation, step, bounds ); // Update visualization properties int o = orientation % 3; this->GetProperty( )->SetLineWidth( 1.5 ); this->GetProperty( )->SetColor( Self::Colors[ o ][ 0 ], Self::Colors[ o ][ 1 ], Self::Colors[ o ][ 2 ] ); this->Modified( ); } // ------------------------------------------------------------------------- cpExtensions::Visualization::ImageOutlineActor:: ImageOutlineActor( ) : Superclass( ) { this->m_Outline = vtkSmartPointer< ImageOutlineSource >::New( ); this->m_Mapper = vtkSmartPointer< vtkPolyDataMapper >::New( ); this->m_Mapper->SetInputConnection( this->m_Outline->GetOutputPort( ) ); this->SetMapper( this->m_Mapper ); this->UseBoundsOff( ); } // ------------------------------------------------------------------------- cpExtensions::Visualization::ImageOutlineActor:: ~ImageOutlineActor( ) { } // eof - $RCSfile$