X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FcpExtensions%2FVisualization%2FMPRObjects.cxx;h=0727f2223489628be5ba0f3a14aec0fbea026907;hb=dbc5b32e13cf4a299ce29a5666a8e0a2ff5e62a8;hp=af0ad4192751367156338fb6ca57d38abfa2d039;hpb=a02d2e4b730e0a8c7709856c9c47eb7ad19edda0;p=cpPlugins.git diff --git a/lib/cpExtensions/Visualization/MPRObjects.cxx b/lib/cpExtensions/Visualization/MPRObjects.cxx index af0ad41..0727f22 100644 --- a/lib/cpExtensions/Visualization/MPRObjects.cxx +++ b/lib/cpExtensions/Visualization/MPRObjects.cxx @@ -15,35 +15,308 @@ New( ) // ------------------------------------------------------------------------- void cpExtensions::Visualization::MPRObjects:: SetRenderWindows( - vtkRenderWindow* wx, vtkRenderWindow* wy, - vtkRenderWindow* wz, vtkRenderWindow* w3D + vtkRenderWindow* x, vtkRenderWindow* y, + vtkRenderWindow* z, vtkRenderWindow* w ) { - this->m_Windows[ 0 ] = wx; - this->m_Windows[ 1 ] = wy; - this->m_Windows[ 2 ] = wz; - this->m_Windows[ 3 ] = w3D; + this->m_Windows[ 0 ] = x; + this->m_Windows[ 1 ] = y; + this->m_Windows[ 2 ] = z; + this->m_Windows[ 3 ] = w; // Prepare 2D renderers for( int i = 0; i < 4; ++i ) { - if( this->m_Windows[ i ] == NULL ) + // Create renderer, if render window exists + if( this->m_Windows[ i ] != NULL ) { + this->m_Renderers[ i ] = vtkSmartPointer< vtkRenderer >::New( ); + this->m_Renderers[ i ]->SetBackground( 0.3, 0.3, 0.3 ); + this->m_Windows[ i ]->AddRenderer( this->m_Renderers[ i ] ); + } + else this->m_Renderers[ i ] = NULL; - continue; + + } // rof +} + +// ------------------------------------------------------------------------- +void cpExtensions::Visualization::MPRObjects:: +SetInputConnection( vtkAlgorithmOutput* aout ) +{ + this->m_MPRActors->SetInputConnection( aout ); +} + +// ------------------------------------------------------------------------- +void cpExtensions::Visualization::MPRObjects:: +SetInputImage( vtkImageData* data ) +{ + this->m_MPRActors->SetInputImage( data ); +} + +// ------------------------------------------------------------------------- +int cpExtensions::Visualization::MPRObjects:: +AddBinaryConnection( + vtkAlgorithmOutput* aout, + const double& r, const double& g, const double& b + ) +{ + return( this->m_MPRActors->AddBinaryConnection( aout, r, g, b ) ); +} + +// ------------------------------------------------------------------------- +int cpExtensions::Visualization::MPRObjects:: +AddBinaryImage( + vtkImageData* data, + const double& r, const double& g, const double& b + ) +{ + return( this->m_MPRActors->AddBinaryImage( data, r, g, b ) ); +} + +// ------------------------------------------------------------------------- +void cpExtensions::Visualization::MPRObjects:: +Show( ) +{ + this->m_MPRActors->PushActorsInto( + this->m_Windows[ 0 ], + this->m_Windows[ 1 ], + this->m_Windows[ 2 ], + this->m_Windows[ 3 ] + ); +} + +// ------------------------------------------------------------------------- +void cpExtensions::Visualization::MPRObjects:: +Hide( ) +{ +} + +// ------------------------------------------------------------------------- +void cpExtensions::Visualization::MPRObjects:: +Clear( ) +{ + this->m_MPRActors->Clear( ); +} + +// ------------------------------------------------------------------------- +vtkImageData* cpExtensions::Visualization::MPRObjects:: +GetInputImage( ) +{ + return( this->m_MPRActors->GetInputImage( ) ); +} + +// ------------------------------------------------------------------------- +const vtkImageData* cpExtensions::Visualization::MPRObjects:: +GetInputImage( ) const +{ + return( this->m_MPRActors->GetInputImage( ) ); +} + +// ------------------------------------------------------------------------- +unsigned int cpExtensions::Visualization::MPRObjects:: +GetNumberOfImages( ) const +{ + return( this->m_MPRActors->GetNumberOfImages( ) ); +} + +// ------------------------------------------------------------------------- +void cpExtensions::Visualization::MPRObjects:: +SetInterpolate( bool v ) +{ + this->m_MPRActors->SetInterpolate( v ); +} + +// ------------------------------------------------------------------------- +void cpExtensions::Visualization::MPRObjects:: +InterpolateOn( ) +{ + this->m_MPRActors->InterpolateOn( ); +} + +// ------------------------------------------------------------------------- +void cpExtensions::Visualization::MPRObjects:: +InterpolateOff( ) +{ + this->m_MPRActors->InterpolateOff( ); +} + +// ------------------------------------------------------------------------- +double cpExtensions::Visualization::MPRObjects:: +GetMinWindow( ) const +{ + return( this->m_MPRActors->GetMinWindow( ) ); +} + +// ------------------------------------------------------------------------- +double cpExtensions::Visualization::MPRObjects:: +GetMaxWindow( ) const +{ + return( this->m_MPRActors->GetMaxWindow( ) ); +} + +// ------------------------------------------------------------------------- +double cpExtensions::Visualization::MPRObjects:: +GetMinLevel( ) const +{ + return( this->m_MPRActors->GetMinLevel( ) ); +} + +// ------------------------------------------------------------------------- +double cpExtensions::Visualization::MPRObjects:: +GetMaxLevel( ) const +{ + return( this->m_MPRActors->GetMaxLevel( ) ); +} + +// ------------------------------------------------------------------------- +double cpExtensions::Visualization::MPRObjects:: +GetWindow( ) const +{ + return( this->m_MPRActors->GetWindow( ) ); +} + +// ------------------------------------------------------------------------- +double cpExtensions::Visualization::MPRObjects:: +GetLevel( ) const +{ + return( this->m_MPRActors->GetLevel( ) ); +} + +// ------------------------------------------------------------------------- +void cpExtensions::Visualization::MPRObjects:: +SetWindow( double w ) +{ + this->m_MPRActors->SetWindow( w ); +} + +// ------------------------------------------------------------------------- +void cpExtensions::Visualization::MPRObjects:: +SetLevel( double l ) +{ + this->m_MPRActors->SetLevel( l ); +} + +// ------------------------------------------------------------------------- +void cpExtensions::Visualization::MPRObjects:: +SetWindowLevel( double w, double l ) +{ + this->m_MPRActors->SetWindowLevel( w, l ); +} + +// ------------------------------------------------------------------------- +void cpExtensions::Visualization::MPRObjects:: +ResetWindowLevel( ) +{ + this->m_MPRActors->ResetWindowLevel( ); +} + +// ------------------------------------------------------------------------- +int cpExtensions::Visualization::MPRObjects:: +GetSliceNumber( const int& axis ) const +{ + return( this->m_MPRActors->GetSliceNumber( axis ) ); +} + +// ------------------------------------------------------------------------- +int cpExtensions::Visualization::MPRObjects:: +GetSliceNumberMinValue( const int& axis ) const +{ + return( this->m_MPRActors->GetSliceNumberMinValue( axis ) ); +} + +// ------------------------------------------------------------------------- +int cpExtensions::Visualization::MPRObjects:: +GetSliceNumberMaxValue( const int& axis ) const +{ + return( this->m_MPRActors->GetSliceNumberMaxValue( axis ) ); +} + +// ------------------------------------------------------------------------- +void cpExtensions::Visualization::MPRObjects:: +SetSliceNumber( const int& axis, const int& slice ) +{ + this->m_MPRActors->SetSliceNumber( axis, slice ); +} + +// ------------------------------------------------------------------------- +void cpExtensions::Visualization::MPRObjects:: +SetSlice( const int& axis, double* pos ) +{ + this->m_MPRActors->SetSlice( axis, pos ); +} + +// ------------------------------------------------------------------------- +void cpExtensions::Visualization::MPRObjects:: +Render( const double& t ) +{ + this->Render( 0, t ); + this->Render( 1, t ); + this->Render( 2, t ); + this->Render( 3, t ); +} + +// ------------------------------------------------------------------------- +void cpExtensions::Visualization::MPRObjects:: +Render( const int& axis, const double& t ) +{ + if( axis < 4 ) + { + if( this->m_Windows[ axis ].GetPointer( ) != NULL ) + { + if( this->m_Renderers[ axis ].GetPointer( ) != NULL ) + this->m_Renderers[ axis ]->SetAllocatedRenderTime( t ); + this->m_Windows[ axis ]->Render( ); } // fi - // Create renderer, if render window exists - this->m_Renderers[ i ] = vtkSmartPointer< vtkRenderer >::New( ); - this->m_Renderers[ i ]->SetBackground( 0.1, 0.3, 0.8 ); - this->m_Windows[ i ]->AddRenderer( this->m_Renderers[ i ] ); + } // fi +} - } // rof +// ------------------------------------------------------------------------- +void cpExtensions::Visualization::MPRObjects:: +ResetCamera( const int& axis ) +{ + if( axis < 4 ) + if( this->m_Renderers[ axis ].GetPointer( ) != NULL ) + this->m_Renderers[ axis ]->ResetCamera( ); +} - // Create 3D renderer - if( this->m_Windows[ 3 ] != NULL ) - this->m_Renderers[ 3 ]->SetBackground( 0.2, 0.2, 0.2 ); +// ------------------------------------------------------------------------- +void cpExtensions::Visualization::MPRObjects:: +ResetCameras( ) +{ + this->ResetCamera( 0 ); + this->ResetCamera( 1 ); + this->ResetCamera( 2 ); + this->ResetCamera( 3 ); +} + +// ------------------------------------------------------------------------- +cpExtensions::Visualization::MPRObjects:: +MPRObjects( ) + : vtkObject( ) +{ + this->m_MPRActors = vtkSmartPointer< MPRActors >::New( ); +} + +// ------------------------------------------------------------------------- +cpExtensions::Visualization::MPRObjects:: +~MPRObjects( ) +{ +} + + + + +/* +// ------------------------------------------------------------------------- +void cpExtensions::Visualization::MPRObjects:: +SetRenderWindows( + vtkRenderWindow* wx, vtkRenderWindow* wy, + vtkRenderWindow* wz, vtkRenderWindow* w3D + ) +{ } // ------------------------------------------------------------------------- @@ -68,6 +341,13 @@ AddImage( vtkImageData* image ) this->RenderAll( 1e-3 ); } +// ------------------------------------------------------------------------- +unsigned int cpExtensions::Visualization::MPRObjects:: +GetNumberOfImages( ) const +{ + return( this->m_MPRActors->GetNumberOfImages( ) ); +} + // ------------------------------------------------------------------------- void cpExtensions::Visualization::MPRObjects:: ClearAll( ) @@ -234,5 +514,6 @@ cpExtensions::Visualization::MPRObjects:: ~MPRObjects( ) { } +*/ // eof - $RCSfile$