X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FwxVtk2DBaseView.cxx;h=5337c807149d005d81571e3b5aa476a66779726a;hb=255f774ce4100c0b84e6b5efa5c64d0db77f8a61;hp=dc7c52e7268c06804b39c549675c2968955453ed;hpb=a906c7009b5c3c2ef5263f4d84ba13be7d4549ff;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVtk2DBaseView.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVtk2DBaseView.cxx index dc7c52e..5337c80 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVtk2DBaseView.cxx +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVtk2DBaseView.cxx @@ -141,6 +141,11 @@ printf("//EED wxVtk2DBaseView::ResetView %d %d %d %d %d %d \n",x1,x2,y1,y vtkInteractorScrollZ *_vtkInteractorScrollZ = new vtkInteractorScrollZ(); style2D->SetInteractorScrollZ(_vtkInteractorScrollZ); + vtkInteractorZoomCamera *_vtkInteractorZoomCamera = new vtkInteractorZoomCamera(); + style2D->SetInteractorZoomCamera(_vtkInteractorZoomCamera); + + + SetInteractorStyleImage( style2D ); // RaC @@ -200,6 +205,9 @@ void wxVtk2DBaseView::Configure(bool okimage) vtkInteractorScrollZ *_vtkInteractorScrollZ = new vtkInteractorScrollZ(); style2D->SetInteractorScrollZ(_vtkInteractorScrollZ); + vtkInteractorZoomCamera *_vtkInteractorZoomCamera = new vtkInteractorZoomCamera(); + style2D->SetInteractorZoomCamera(_vtkInteractorZoomCamera); + SetInteractorStyleImage( style2D ); // RaC @@ -271,7 +279,10 @@ void wxVtk2DBaseView::Configure(bool okimage) camera->SetClippingRange( 0.01 , 1000000 ); camera->ComputeViewPlaneNormal(); - camera->SetParallelScale( spx*(x2-x1)/3.0 ); + + double cameraparallelScale=spx*(x2-x1)/3.0; + camera->SetParallelScale( cameraparallelScale ); + GetVtkBaseData()->SetCameraParallelScale( cameraparallelScale ); // text information over the graphic window if(_vtkIinfoTextImage == NULL){ @@ -307,18 +318,19 @@ void wxVtk2DBaseView::UpdateColorWindowLevel() //EED 24oct2010 //EED 02nov2012 -// vtkImageViewer2 *vtkimageviewer2 = _imageViewer2XYZ->GetVtkImageViewer2(); - vtkImageMapToWindowLevelColors* imagemaptowindowlevel = _imageViewer2XYZ->GetVtkImageViewer2()->GetWindowLevel(); imagemaptowindowlevel->SetWindow( GetVtkBaseData()->GetColorWindow() ); imagemaptowindowlevel->SetLevel( GetVtkBaseData()->GetColorLevel() ); - -// EED Borrame -// vtkimageviewer2->SetColorWindow( GetVtkBaseData()->GetColorWindow() ); -// vtkimageviewer2->SetColorLevel( GetVtkBaseData()->GetColorLevel() ); _imageViewer2XYZ->GetVtkImageViewer2()->GetWindowLevel()->Modified(); } +//------------------------------------------------------------------- +void wxVtk2DBaseView::UpdateCameraParallelScale() +{ + vtkCamera *camera =_imageViewer2XYZ->GetVtkImageViewer2()->GetRenderer()->GetActiveCamera(); + camera->SetParallelScale( GetVtkBaseData()->GetCameraParallelScale() ); +} + //------------------------------------------------------------------- void wxVtk2DBaseView::Refresh() { @@ -329,6 +341,7 @@ void wxVtk2DBaseView::Refresh() imageactor->SetInterpolate( GetVtkBaseData()->GetInterpolate() ); //EED 01nov2012 UpdateColorWindowLevel(); + UpdateCameraParallelScale(); wxVtkBaseView::Refresh(); }