X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FwxVtkMPR2DView.cxx;h=87b4fa3d909c507d49fb273a68eb6e5db4f79b17;hb=04daf8279bb4bd4219f2903e7352e36db8d88866;hp=b6e50ca0e95e42fc60d84e5a851cb28a1b325b41;hpb=60238e95450685ecb14f7e6d77247fa9e15b7441;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVtkMPR2DView.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVtkMPR2DView.cxx index b6e50ca..87b4fa3 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVtkMPR2DView.cxx +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVtkMPR2DView.cxx @@ -28,6 +28,8 @@ #include "vtkInteractorStyleBaseView.h" #include "vtkCellArray.h" +#include "vtkImageActor.h" + #ifdef WIN32 #include using namespace gtm; @@ -54,14 +56,14 @@ wxVtkMPR2DView::wxVtkMPR2DView( wxWindow *parent, int direction) //------------------------------------------------------------------- wxVtkMPR2DView::~wxVtkMPR2DView() { - if (_ptsA!=NULL) { _ptsA -> Delete(); } - if (_lineAActor!=NULL) { _lineAActor -> Delete(); } - if (_lineAMapper!=NULL) { _lineAMapper -> Delete(); } - if (_pdA!=NULL) { _pdA -> Delete(); } - if (_ptsB!=NULL) { _ptsB -> Delete(); } - if (_lineBActor!=NULL) { _lineBActor -> Delete(); } - if (_lineBMapper!=NULL) { _lineBMapper -> Delete(); } - if (_pdB!=NULL) { _pdB -> Delete(); } + if (_ptsA!=NULL) { _ptsA->Delete(); } + if (_lineAActor!=NULL) { _lineAActor->Delete(); } + if (_lineAMapper!=NULL) { _lineAMapper->Delete(); } + if (_pdA!=NULL) { _pdA->Delete(); } + if (_ptsB!=NULL) { _ptsB->Delete(); } + if (_lineBActor!=NULL) { _lineBActor->Delete(); } + if (_lineBMapper!=NULL) { _lineBMapper->Delete(); } + if (_pdB!=NULL) { _pdB->Delete(); } } //------------------------------------------------------------------- vtkMPRBaseData *wxVtkMPR2DView::GetVtkmprbasedata() @@ -95,11 +97,9 @@ void wxVtkMPR2DView::Configure() x1 = (int)(x1*spc[0]); y1 = (int)(y1*spc[1]); z1 = (int)(z1*spc[2]); - x2 = (int)(x2*spc[0]); y2 = (int)(y2*spc[1]); z2 = (int)(z2*spc[2]); - _visibleAxis = true; } @@ -115,7 +115,14 @@ void wxVtkMPR2DView::Configure() _ptsA->SetPoint(1, 1000 , 1000 , 1000 ); _pdA = vtkPolyData::New(); _lineAMapper = vtkPolyDataMapper::New(); + +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 _lineAMapper->SetInput(_pdA); +#else + _lineAMapper->SetInputData(_pdA); +#endif + _lineAMapper->ImmediateModeRenderingOn(); _lineAActor->SetMapper(_lineAMapper); } @@ -153,7 +160,14 @@ void wxVtkMPR2DView::Configure() _pdB->SetPoints( _ptsB ); _pdB->SetLines( linesB ); linesB->Delete(); //do not delete lines ?? + +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 _lineBMapper->SetInput(_pdB); +#else + _lineBMapper->SetInputData(_pdB); +#endif + _lineBMapper->ImmediateModeRenderingOn(); if(_imageViewer2XYZ){ _imageViewer2XYZ->GetVtkImageViewer2()->GetRenderer()->AddActor( _lineAActor ); @@ -248,7 +262,8 @@ void wxVtkMPR2DView::Refresh() double xx1,yy1,zz1,xx2,yy2,zz2; vtkImageData* img = GetVtkmprbasedata()->GetImageData(); - if(img!=NULL){ + if(img!=NULL) + { origin = img->GetOrigin(); img->GetExtent(x1,x2,y1,y2,z1,z2); spc = img->GetSpacing(); @@ -288,8 +303,8 @@ void wxVtkMPR2DView::Refresh() y = yy*spc[1]; z = zz*spc[2]; - - if ((xx!=_backX) || (yy!=_backY) || (zz!=_backZ)) { + if ((xx!=_backX) || (yy!=_backY) || (zz!=_backZ)) + { if (_direction==0) { // YZ if(_imageViewer2XYZ) @@ -344,17 +359,30 @@ void wxVtkMPR2DView::Refresh() _ptsB->SetPoint(1, x , yy2, z1 ); - } + } // if back + +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 + // .. +#else + _ptsA->Modified(); + _ptsB->Modified(); +#endif + _backX=xx; _backY=yy; _backZ=zz; - } + } // if image +//EED 2016/02/19 + vtkImageActor *imageactor = _imageViewer2XYZ->GetVtkImageViewer2()->GetImageActor(); + imageactor->SetInterpolate( GetVtkBaseData()->GetInterpolate() ); //EED 01nov2012 UpdateColorWindowLevel(); wxVtkBaseView::Refresh(); } } + //------------------------------------------------------------------- int wxVtkMPR2DView::GetActualSlice() // virtual {