X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FcreaVtk%2FcreaVtkPlaneWidget.cpp;h=39cca10c7502c937298b74332a66cd9d1c81057c;hb=fbbb28f5a7bfb5aa48b76977df6238774c4512cd;hp=609d425d34cfc8fe47cd95472cd2fdbc2a01a442;hpb=d4f6c5cb7ede3153395f46a4dbfd9e741672b3f4;p=creaVtk.git diff --git a/lib/creaVtk/creaVtkPlaneWidget.cpp b/lib/creaVtk/creaVtkPlaneWidget.cpp index 609d425..39cca10 100644 --- a/lib/creaVtk/creaVtkPlaneWidget.cpp +++ b/lib/creaVtk/creaVtkPlaneWidget.cpp @@ -153,6 +153,10 @@ std::vector creaVtkPlaneWidget::GetNormal() return vecNormal; } +void creaVtkPlaneWidget::SetOrigin(std::vector origin) +{ + _origin = origin; +} //------------------------------------------------------------------------ void creaVtkPlaneWidget::Process() @@ -160,36 +164,41 @@ void creaVtkPlaneWidget::Process() if ((GetActive()==true) && (GetRenderer()!=NULL)) { -//EED 2017-01-01 Migration VTK7 -#if VTK_MAJOR_VERSION <= 5 - _vPlaneWidget->SetInput( GetImage() ); -#else - _vPlaneWidget->SetInputData( GetImage() ); -#endif - _vPlaneWidget->SetInteractor( GetRenderer()->GetRenderWindow()->GetInteractor() ); - _vPlaneWidget->NormalToXAxisOn(); - _vPlaneWidget->NormalToZAxisOn(); - _vPlaneWidget->SetResolution(_resolution); - if (_representation==0){ _vPlaneWidget->SetRepresentationToOutline(); } - if (_representation==1){ _vPlaneWidget->SetRepresentationToWireframe(); } - if (_representation==2){ _vPlaneWidget->SetRepresentationToSurface(); } - _vPlaneWidget->SetPlaceFactor(1); //defini zoom initial - _vPlaneWidget->SetHandleSize(0.5); - _vPlaneWidget->On(); - if (_firsttime==true ) - { - _firsttime = false; - _vPlaneWidget->PlaceWidget(); - creaVtkCallbackPlaneWidget *creavtkcallbackplanewidget = creaVtkCallbackPlaneWidget::New(); - creavtkcallbackplanewidget->creavtkplanewidget = this ; - _vPlaneWidget->AddObserver( vtkCommand::InteractionEvent , creavtkcallbackplanewidget ); - _vPlaneWidget->AddObserver( vtkCommand::StartInteractionEvent , creavtkcallbackplanewidget ); - _vPlaneWidget->AddObserver( vtkCommand::EnableEvent , creavtkcallbackplanewidget ); - } - UpdatePlane(); + //EED 2017-01-01 Migration VTK7 + #if VTK_MAJOR_VERSION <= 5 + _vPlaneWidget->SetInput( GetImage() ); + #else + _vPlaneWidget->SetInputData( GetImage() ); + #endif + _vPlaneWidget->SetInteractor( GetRenderer()->GetRenderWindow()->GetInteractor() ); + _vPlaneWidget->NormalToXAxisOn(); + _vPlaneWidget->NormalToZAxisOn(); + _vPlaneWidget->SetResolution(_resolution); + if (_representation==0){ _vPlaneWidget->SetRepresentationToOutline(); } + if (_representation==1){ _vPlaneWidget->SetRepresentationToWireframe(); } + if (_representation==2){ _vPlaneWidget->SetRepresentationToSurface(); } + _vPlaneWidget->SetPlaceFactor(1); //defini zoom initial + _vPlaneWidget->SetHandleSize(0.01); + _vPlaneWidget->On(); + _vPlaneWidget->Print(std::cout); + if (_origin.size()==3) + { + _vPlaneWidget->SetCenter( _origin[0] , _origin[1] , _origin[2] ); + } // if _origin + if (_firsttime==true ) + { + _firsttime = false; + _vPlaneWidget->PlaceWidget(); + creaVtkCallbackPlaneWidget *creavtkcallbackplanewidget = creaVtkCallbackPlaneWidget::New(); + creavtkcallbackplanewidget->creavtkplanewidget = this ; + _vPlaneWidget->AddObserver( vtkCommand::InteractionEvent , creavtkcallbackplanewidget ); + _vPlaneWidget->AddObserver( vtkCommand::StartInteractionEvent , creavtkcallbackplanewidget ); + _vPlaneWidget->AddObserver( vtkCommand::EnableEvent , creavtkcallbackplanewidget ); + } + UpdatePlane(); } else { - _vPlaneWidget->Off(); - } + _vPlaneWidget->Off(); + } // if Active Render }