X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=packages%2Fwxvtk%2Fsrc%2FbbwxvtkViewer2D.cxx;h=f9e1e1326f7c6c3f0b9a95bc3738f78e7ce2547b;hb=31e21c4bf4e9051ae07b5ca010d2e9b74c4dc06d;hp=6cf958807a7ac6f646a7b24f40b9566e7b7631a2;hpb=62f21094493592cc2ccf1f105db791fb0ebbe2d0;p=bbtk.git diff --git a/packages/wxvtk/src/bbwxvtkViewer2D.cxx b/packages/wxvtk/src/bbwxvtkViewer2D.cxx index 6cf9588..f9e1e13 100644 --- a/packages/wxvtk/src/bbwxvtkViewer2D.cxx +++ b/packages/wxvtk/src/bbwxvtkViewer2D.cxx @@ -3,8 +3,8 @@ Program: bbtk Module: $RCSfile: bbwxvtkViewer2D.cxx,v $ Language: C++ - Date: $Date: 2008/06/26 07:37:18 $ - Version: $Revision: 1.12 $ + Date: $Date: 2008/07/03 13:59:37 $ + Version: $Revision: 1.15 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -54,13 +54,13 @@ namespace bbwxvtk wxvtkrenderwindowinteractor->UseCaptureMouseOn(); imageViewer = vtkImageViewer2::New(); - imageViewer->SetSlice( 1 ); + imageViewer->SetSlice( 1 ); imageViewer->SetupInteractor ( wxvtkrenderwindowinteractor ); mDefaultImage = vtkImageData::New(); int dim[3]; dim[0] = dim[1] = 32 ; - dim[2] = 2; + dim[2] = 2; mDefaultImage->SetDimensions ( dim ); mDefaultImage->SetSpacing(1,1,1); mDefaultImage->SetExtent(0,dim[0]-1,0,dim[1]-1,0,dim[2]-1); @@ -84,11 +84,17 @@ namespace bbwxvtk mUpdateCamera = true; wxBoxSizer *sizer = new wxBoxSizer(wxVERTICAL); - sizer -> Add( wxvtkrenderwindowinteractor , 1, wxEXPAND, 0); - panel -> SetSizer(sizer); - panel -> SetAutoLayout(true); - panel -> Layout(); - + sizer-> Add( wxvtkrenderwindowinteractor , 1, wxEXPAND, 0); + panel-> SetSizer(sizer); + panel-> SetAutoLayout(true); + panel-> Layout(); + + + wxvtkrenderwindowinteractor->Refresh(); + wxvtkrenderwindowinteractor->Render(); + imageViewer->GetRenderer()->ResetCameraClippingRange(); + + } //------------------------------------------------------------------------- @@ -153,9 +159,9 @@ namespace bbwxvtk vtkCamera *camera = imageViewer->GetRenderer()->GetActiveCamera(); - camera->SetViewUp ( spx*0, -spy*1, spz*0 ); - camera->SetPosition( spx*(x1+x2)/2, spy*(y1+y2)/2, -spz*10000000 ); - camera->SetFocalPoint ( spx*(x1+x2)/2 , spy*(y1+y2)/2 , spz*0 ); + camera->SetViewUp ( spx*0, -spy*1, spz*0 ); + camera->SetPosition ( spx*(x1+x2)/2, spy*(y1+y2)/2, -spz*10000000 ); + camera->SetFocalPoint( spx*(x1+x2)/2, spy*(y1+y2)/2, spz*0 ); camera->ComputeViewPlaneNormal(); camera->SetParallelScale( spx*(x2-x1)/2.0 ); @@ -165,8 +171,8 @@ namespace bbwxvtk } // std::cout << "OW = "<< mBox->bbGetWindow() << std::endl; - // std::cout << "CW = "<< mBox->bbGetContainingWindow() << std::endl; - // std::cout << "Sh = "<< mBox->bbIsShown() << std::endl; + // std::cout << "CW = "<< mBox->bbGetContainingWindow() << std::endl; + // std::cout << "Sh = "<< mBox->bbIsShown() << std::endl; @@ -187,6 +193,10 @@ namespace bbwxvtk if (zext[5]) { z=ext[5]; } + wxvtkrenderwindowinteractor->Update(); + wxvtkrenderwindowinteractor->Render(); + imageViewer->GetRenderer()->ResetCameraClippingRange(); + #if (VTK_MAJOR_VERSION >= 5) imageViewer->SetSlice( z ); @@ -195,10 +205,7 @@ namespace bbwxvtk #endif //imageViewer->UpdateDisplayExtent(); - // wxvtkrenderwindowinteractor->Render(); - imageViewer->GetRenderer()->ResetCameraClippingRange(); - } - + } } @@ -231,7 +238,7 @@ namespace bbwxvtk ((Viewer2DWidget*)bbGetOutputWidget())->UpdateView(); bbSetOutputOut( bbGetInputSlice() ); - bbSetOutputRenderer( ((Viewer2DWidget*)bbGetOutputWidget())->GetRenderer() ); + bbSetOutputRenderer( ((Viewer2DWidget*)bbGetOutputWidget())->GetRenderer() ); } @@ -262,9 +269,16 @@ namespace bbwxvtk // when window is shown void Viewer2D::bbUserOnShow() { - ((Viewer2DWidget*)bbGetOutputWidget())->Refresh(); + +#if defined(_WIN32) +// ((Viewer2DWidget*)bbGetOutputWidget())->Refresh(); + ((Viewer2DWidget*)bbGetOutputWidget())->Update(); + ((Viewer2DWidget*)bbGetOutputWidget())->UpdateView(); +#endif + /* ((Viewer2DWidget*)bbGetOutputWidget())->Update(); ((Viewer2DWidget*)bbGetOutputWidget())->UpdateView(); + */ }