]> Creatis software - creaMaracasVisu.git/blobdiff - lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVtk2DBaseView.cxx
Bug #1373
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / wxVtk2DBaseView.cxx
index 61607c373e2075bf13ba759877412a49b7a2f260..fe3b8513deaa5cf49f02c1d594f587ddf77d00b8 100644 (file)
@@ -181,6 +181,8 @@ void wxVtk2DBaseView::Configure(bool okimage)
                        imageData->GetExtent (x1,x2,y1,y2,z1,z2);
                        SetImageToVtkViewer(imageData);
                        _imageViewer2XYZ->SetExtentDimension(x1,x2,y1,y2,z1,z2);
+                       
+/*EED Borrame,  now is syncroniced in vtkBaseData for all windows                      
                        double range[2];
                        imageData->GetScalarRange(range);
                        if (range[1]<20000){
@@ -190,6 +192,8 @@ void wxVtk2DBaseView::Configure(bool okimage)
                                 _imageViewer2XYZ->GetVtkImageViewer2()->SetColorWindow( 1000 );
                                 _imageViewer2XYZ->GetVtkImageViewer2()->SetColorLevel( 500 );
                        }
+*/ 
+                       
 // EED 31 Janvier 2007
 //vtkImageActor *vtkimageactor = _imageViewer2XYZ->GetVtkImageViewer2()->GetImageActor ();
 //vtkimageactor->InterpolateOff ();
@@ -271,20 +275,35 @@ void wxVtk2DBaseView::SetVtkBaseData(vtkBaseData *vtkbasedata)
 }
 
 //-------------------------------------------------------------------
+void wxVtk2DBaseView::UpdateColorWindowLevel()
+{
+       //EED 24oct2010
+       //EED 02nov2012
+       
+//     vtkImageViewer2 *vtkimageviewer2        = _imageViewer2XYZ->GetVtkImageViewer2();               
+       
+       
+       vtkImageMapToWindowLevelColors* imagemaptowindowlevel = _imageViewer2XYZ->GetVtkImageViewer2()->GetWindowLevel();
+       imagemaptowindowlevel->SetWindow( _vtkbasedata->GetColorWindow() );
+       imagemaptowindowlevel->SetLevel( _vtkbasedata->GetColorLevel() );
+       
+// EED Borrame
+//     vtkimageviewer2->SetColorWindow( _vtkbasedata->GetColorWindow() );
+//     vtkimageviewer2->SetColorLevel(  _vtkbasedata->GetColorLevel() );
+       _imageViewer2XYZ->GetVtkImageViewer2()->GetWindowLevel()->Modified();
+}
 
+//-------------------------------------------------------------------
 void wxVtk2DBaseView::Refresh()
 {
-   int z = (int)(GetVtkBaseData()->GetZ());
-  _imageViewer2XYZ->SetZSlice( z );
-
-//EED 24oct2010
-  _imageViewer2XYZ->GetVtkImageViewer2()->GetWindowLevel()->Modified();
-
-   wxVtkBaseView::Refresh();
+       int z = (int)(GetVtkBaseData()->GetZ());
+       _imageViewer2XYZ->SetZSlice( z );
+       //EED 01nov2012
+       UpdateColorWindowLevel();       
+       wxVtkBaseView::Refresh();
 }
 
 //-------------------------------------------------------------------
-
 void wxVtk2DBaseView::SetInteractorStyleImage(vtkInteractorStyleBaseView *interactorstylebaseview)
 {
        SetInteractorStyleBaseView(interactorstylebaseview);
@@ -307,6 +326,7 @@ vtkRenderer* wxVtk2DBaseView::GetRenderer() // virtual
 {
    return _imageViewer2XYZ->GetVtkImageViewer2()->GetRenderer();
 }
+
 //---------------------------------------------------------------------------
 vtkRenderWindow* wxVtk2DBaseView::GetRenWin()          // virtual
 {
@@ -317,7 +337,8 @@ vtkRenderWindow* wxVtk2DBaseView::GetRenWin()               // virtual
 void wxVtk2DBaseView::GetSpacing(double spc[3])  // virtual
 {
    vtkImageData *imageData     = GetVtkBaseData()->GetImageData();
-   if(imageData){
+   if(imageData)
+   {
        imageData->GetSpacing(spc);
    }else{
         spc[0] = 0;
@@ -329,28 +350,26 @@ void wxVtk2DBaseView::GetSpacing(double spc[3])  // virtual
 //-------------------------------------------------------------------
 void wxVtk2DBaseView::setColorTransferFunction(vtkColorTransferFunction* colortable)
 {
-       if(_imageViewer2XYZ!=NULL){
+       if(_imageViewer2XYZ!=NULL)
+       {
                _imageViewer2XYZ->setColorTransferFunction(colortable);
                this->Refresh();
        }
 }
 
 //-------------------------------------------------------------------
-void wxVtk2DBaseView::setWindowLevel(double level)
+void wxVtk2DBaseView::SetColorWindow(double level)
 {
 //     _imageViewer2XYZ->GetVtkImageViewer2()->SetColorWindow(level);
-
-       vtkImageMapToWindowLevelColors* imagemaptowindowlevel = _imageViewer2XYZ->GetVtkImageViewer2()->GetWindowLevel();
-       imagemaptowindowlevel->SetWindow(level);
+       _vtkbasedata->SetColorWindow(level);    
        this->Refresh();
 }
 
 //-------------------------------------------------------------------
-void wxVtk2DBaseView::setColorLevel(double level)
+void wxVtk2DBaseView::SetColorLevel(double level)
 {
 //     _imageViewer2XYZ->GetVtkImageViewer2()->SetColorLevel(level);
-       vtkImageMapToWindowLevelColors* imagemaptowindowlevel = _imageViewer2XYZ->GetVtkImageViewer2()->GetWindowLevel();
-       imagemaptowindowlevel->SetLevel(level);
+       _vtkbasedata->SetColorLevel(level);
        this->Refresh();
 }