]> Creatis software - creaMaracasVisu.git/blobdiff - lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVtkMPR3DView.cxx
#3474 Refresh optimization DrawAxisTree3D Box
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / wxVtkMPR3DView.cxx
index fc664f2ec52c85ccc8b116cfa5e90cc2affbfb17..23b6ce1ad4b199dde4a41aa3525362bc8b08d38b 100644 (file)
@@ -41,6 +41,7 @@
 #include "vtkCellPicker.h"
 #include "vtkInteractorStyleBaseView.h"
 #include <vtkImageReslice.h>
+#include "vtkTexture.h"
 
 
 
@@ -168,8 +169,6 @@ void wxVtkMPR3DView::RemoveActor(vtkActor* actor)
 //-------------------------------------------------------------------
 void wxVtkMPR3DView::Configure()
 {
-printf("EED wxVtkMPR3DView::Configure Configure Start\n");
-
        vtkImageData *imageData = GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->GetImageData();
        _wxvtk3Dbaseview->Configure();
        _wxvtkmpr3DviewCntrlPanel->UpdateControlPanel();
@@ -288,15 +287,11 @@ printf("EED wxVtkMPR3DView::Configure Configure Start\n");
        // render window (expressed in pixels).
        _wxvtk3Dbaseview->GetRenderer()->SetBackground( 0.36 , 0.36 , 0.36 );
 //EED 23oct2010        _wxvtk3Dbaseview->GetRenWin()->SetSize(400, 400);
-
-printf("EED wxVtkMPR3DView::Configure Configure End\n");
-
 }
 
 //-------------------------------------------------------------------
 void wxVtkMPR3DView::ConfigureFreePlanes()
 {
-printf("EED wxVtkMPR3DView::ConfigureFreePlanes Start\n");
        // The shared picker enables us to use 3 planes at one time
        // and gets the picking order right
        vtkCellPicker* picker = vtkCellPicker::New();
@@ -320,17 +315,12 @@ printf("EED wxVtkMPR3DView::ConfigureFreePlanes Start\n");
        _planeWidgetX->AddObserver(vtkCommand::InteractionEvent, wlipwc );
        _planeWidgetY->AddObserver(vtkCommand::InteractionEvent, wlipwc );
        _planeWidgetZ->AddObserver(vtkCommand::InteractionEvent, wlipwc );      
-       
-
-       
-printf("EED wxVtkMPR3DView::ConfigureFreePlanes End\n");
 }
 
 
 //-------------------------------------------------------------------
 void wxVtkMPR3DView::SetImage()
 {
-printf("EED wxVtkMPR3DView::SetImage Start\n");
        vtkImageData *imageData                                 = GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->GetImageData();
        // Orthogonal planes B&W
 //EED 2017-01-01 Migration VTK7
@@ -343,8 +333,8 @@ printf("EED wxVtkMPR3DView::SetImage Start\n");
 #else
 
 
-       double colorWindow      = _vtkmpr3Ddataviewer->GetVtkMPRBaseData()->GetColorWindow();
-       double colorLevel       = _vtkmpr3Ddataviewer->GetVtkMPRBaseData()->GetColorLevel();
+//     double colorWindow      = _vtkmpr3Ddataviewer->GetVtkMPRBaseData()->GetColorWindow();
+//     double colorLevel       = _vtkmpr3Ddataviewer->GetVtkMPRBaseData()->GetColorLevel();
 
        double spc[3];
        vtkImageData *image = GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->GetImageData();
@@ -393,12 +383,15 @@ printf("EED wxVtkMPR3DView::SetImage Start\n");
        _planeWidgetY->SetSlicePosition( y*spc[1] );
        _planeWidgetZ->SetSlicePosition( z*spc[2] );
 
+       _planeWidgetX->GetTexture()->SetInterpolate( _vtkmpr3Ddataviewer->GetVtkMPRBaseData()->GetInterpolate() );
+       _planeWidgetY->GetTexture()->SetInterpolate( _vtkmpr3Ddataviewer->GetVtkMPRBaseData()->GetInterpolate() );
+       _planeWidgetZ->GetTexture()->SetInterpolate( _vtkmpr3Ddataviewer->GetVtkMPRBaseData()->GetInterpolate() );
+
+
        // -- Plane widget
        _probe->SetSourceData( imageData );
 #endif
        _vtkmpr3Ddataviewer->SetImage();
-printf("EED wxVtkMPR3DView::SetImage End %f  %f \n", colorWindow,colorLevel );
-       
 }
 
 //-------------------------------------------------------------------
@@ -535,19 +528,16 @@ void wxVtkMPR3DView::setColorTransferFunction(vtkColorTransferFunction* colortab
 //-------------------------------------------------------------------
 void wxVtkMPR3DView::Refresh()   // virtual
 {
-printf("EED wxVtkMPR3DView::Refresh Start\n");
        _vtkmpr3Ddataviewer->Refresh();
        if (_wxvtkmpr3DviewCntrlPanel!=NULL)
        {
                _wxvtkmpr3DviewCntrlPanel->Refresh();
        }
-printf("EED wxVtkMPR3DView::Refresh End\n");
 }
 
 //-------------------------------------------------------------------
 void wxVtkMPR3DView::RefreshView()   // virtual
 {
-printf("EED wxVtkMPR3DView::RefreshView Start\n");
        double spc[3];
        vtkImageData *image = GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->GetImageData();
        if(image)
@@ -573,7 +563,7 @@ printf("EED wxVtkMPR3DView::RefreshView Start\n");
        {
                _planeWidgetX->SetSlicePosition( x*spc[0] );
 //EED 2016/02/19
-//             _planeWidgetX->GetReslice()->SetInterpolate( _vtkmpr3Ddataviewer->GetVtkMPRBaseData()->GetInterpolate() );
+               _planeWidgetX->GetReslice()->SetInterpolate( _vtkmpr3Ddataviewer->GetVtkMPRBaseData()->GetInterpolate() );
                _planeWidgetX->GetTexture()->SetInterpolate( _vtkmpr3Ddataviewer->GetVtkMPRBaseData()->GetInterpolate() );
        }
        // FreePlaneY
@@ -594,9 +584,9 @@ printf("EED wxVtkMPR3DView::RefreshView Start\n");
                _planeWidgetZ->GetReslice()->SetInterpolate( _vtkmpr3Ddataviewer->GetVtkMPRBaseData()->GetInterpolate() );
                _planeWidgetZ->GetTexture()->SetInterpolate( _vtkmpr3Ddataviewer->GetVtkMPRBaseData()->GetInterpolate() );
        }
-
+    
        SetWindowColorLevel(_vtkmpr3Ddataviewer->GetVtkMPRBaseData()->GetColorWindow() , _vtkmpr3Ddataviewer->GetVtkMPRBaseData()->GetColorLevel() );
-
+    
        x = x*spc[0];
        y = y*spc[1];
        z = z*spc[2];
@@ -632,7 +622,6 @@ printf("EED wxVtkMPR3DView::RefreshView Start\n");
        {
                _wxvtkmpr3DviewCntrlPanel->UpdateControlPanel(false);
        } // if _wxvtkmpr3DviewCntrlPanel
-printf("EED wxVtkMPR3DView::RefreshView End\n");
 }
 
 //-------------------------------------------------------------------
@@ -907,13 +896,13 @@ void wxVtkMPR3DView::TestLoic1()
 //EED 2017-01-01 Migration VTK7
 #if VTK_MAJOR_VERSION <= 5
        _3DSliceMapper->SetInput(change->GetOutput( ) );
+       _3DSliceMapper->ImmediateModeRenderingOn( );
 #else
        _3DSliceMapper->SetInputData(change->GetOutput( ) );
 #endif
 
        _3DSliceMapper->SetLookupTable( _bwlookup );
        _3DSliceMapper->SetScalarRange( _range );
-       _3DSliceMapper->ImmediateModeRenderingOn( );
 
        vtkActor *_3DSliceActor = vtkActor::New( );
        _3DSliceActor->SetMapper( _3DSliceMapper );