X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FvtkInfoTextImageInteractor.cxx;h=4c82218a81b93af437b8d9dc1435f34583e9dd1f;hb=65c158dc171f8d3114ee3544b2a94a1f41880df0;hp=98a24ebf26ff36dd4a34ca7d143a39c74ed075c2;hpb=3d7dc8f5fc5f6acd6f79f455ef7d068d912653a1;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/vtkInfoTextImageInteractor.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/vtkInfoTextImageInteractor.cxx index 98a24eb..4c82218 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/vtkInfoTextImageInteractor.cxx +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/vtkInfoTextImageInteractor.cxx @@ -33,20 +33,31 @@ bool vtkInfoTextImageInteractor::OnMouseMove() /*JCP 14/05/2009 * int z = (int)(_vtkInteractorStyleBaseView->GetWxVtk2DBaseView()->GetVtkBaseData()->GetZ());*/ - double xx,yy,zz; + double dxx,dyy,dzz; + double ixx,iyy,izz; int z = (int)((wxVtk2DBaseView*)_vtkInteractorStyleBaseView->GetWxVtk2DBaseView())->GetVtkBaseData()->GetZ(); - xx=X; - yy=Y; - zz=z; + dxx=X; + dyy=Y; + dzz=z; - _vtkInteractorStyleBaseView->GetWxVtk2DBaseView()->TransFromeCoordScreenToWorld(xx,yy,zz); + _vtkInteractorStyleBaseView->GetWxVtk2DBaseView()->TransFromCoordScreenToWorld(dxx,dyy,dzz,true); GetVtkInfoTextImage()->PutWindowLevel(); GetVtkInfoTextImage()->PutColorLevel(); - GetVtkInfoTextImage()->PutPosition( (int)xx , (int)yy , (int)zz ); - GetVtkInfoTextImage()->PutPixelIntensity( (int)xx , (int)yy , (int)zz ); + + int tempext[6]; + ((wxVtk2DBaseView*)_vtkInteractorStyleBaseView->GetWxVtk2DBaseView())->GetVtkBaseData()->GetImageData()->GetExtent(tempext); + + if(tempext[0] <= dxx && dxx <= tempext[1] && tempext[2] <= dyy && dyy <= tempext[3]) + { + ixx=(int)(dxx+0.5); + iyy=(int)(dyy+0.5); + izz=(int)(dzz+0.0); + GetVtkInfoTextImage()->PutPosition( ixx , iyy , izz ); + GetVtkInfoTextImage()->PutPixelIntensity( ixx , iyy , izz ); + } this->_vtkInteractorStyleBaseView->SetRefresh_waiting(); return true;