X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FvtkImageViewer2_XYZ.cxx;h=3398325ba00bc385b0958886eb551361facd7c7e;hb=f9901e756bb82bd333310b47607875331616bb29;hp=f39e637ccea649f44caa87fe5fc82683227b5e67;hpb=e4ef2b5df5aac431ff3b806f83b7dd5e55e89d86;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/vtkImageViewer2_XYZ.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/vtkImageViewer2_XYZ.cxx index f39e637..3398325 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/vtkImageViewer2_XYZ.cxx +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/vtkImageViewer2_XYZ.cxx @@ -27,46 +27,56 @@ #include "vtkRenderer.h" #include "vtkImageActor.h" #include "vtkImageData.h" + + + + + //------------------------------------------------------------------- //------------------------------------------------------------------- //------------------------------------------------------------------- vtkImageViewer2_XYZ::vtkImageViewer2_XYZ() { - _vtkimageviewer2= vtkImageViewer2::New(); + _colortable = NULL; + _vtkimageviewer2 = vtkImageViewer2::New(); _vtkimageviewer2->GetRenderer()->GradientBackgroundOn(); _vtkimageviewer2->GetRenderer()->SetBackground( 0.33 , 0.33 , 0.33 ); _vtkimageviewer2->GetRenderer()->SetBackground2( 0.66 , 0.66 , 0.66 ); - _colortable = NULL; } + //------------------------------------------------------------------- vtkImageViewer2_XYZ::~vtkImageViewer2_XYZ() { //_vtkimageviewer2->Delete(); } + //------------------------------------------------------------------- void vtkImageViewer2_XYZ::SetExtentDimension(int x1,int x2, int y1,int y2, int z1,int z2) { - _x1=x1; - _x2=x2; - _y1=y1; - _y2=y2; - _z1=z1; - _z2=z2; + _x1 = x1; + _x2 = x2; + _y1 = y1; + _y2 = y2; + _z1 = z1; + _z2 = z2; } + //------------------------------------------------------------------- void vtkImageViewer2_XYZ::SetXSlice(int slice) { vtkImageActor *imageActor = _vtkimageviewer2->GetImageActor(); imageActor->SetDisplayExtent(slice, slice, _y1, _y2, _z1, _z2 ); } + //------------------------------------------------------------------- void vtkImageViewer2_XYZ::SetYSlice(int slice) { vtkImageActor *imageActor = _vtkimageviewer2->GetImageActor(); imageActor->SetDisplayExtent(_x1, _x2, slice, slice, _z1, _z2 ); } + //------------------------------------------------------------------- void vtkImageViewer2_XYZ::SetZSlice(int slice) { @@ -77,8 +87,6 @@ void vtkImageViewer2_XYZ::SetZSlice(int slice) #else _vtkimageviewer2->SetZSlice( slice ); #endif - - } //------------------------------------------------------------------- int vtkImageViewer2_XYZ::GetXSlice() @@ -86,40 +94,62 @@ int vtkImageViewer2_XYZ::GetXSlice() vtkImageActor *imageActor = _vtkimageviewer2->GetImageActor(); return imageActor->GetDisplayExtent()[0]; } + //------------------------------------------------------------------- int vtkImageViewer2_XYZ::GetYSlice() { vtkImageActor *imageActor = _vtkimageviewer2->GetImageActor(); return imageActor->GetDisplayExtent()[2]; } + //------------------------------------------------------------------- int vtkImageViewer2_XYZ::GetZSlice() { - int result; #if (VTK_MAJOR_VERSION >= 5) result= _vtkimageviewer2->GetSlice( ); #else result= _vtkimageviewer2->GetZSlice( ); -#endif - - +#endif return result; } + //------------------------------------------------------------------- vtkImageViewer2 *vtkImageViewer2_XYZ::GetVtkImageViewer2() { return _vtkimageviewer2; } -void vtkImageViewer2_XYZ::setColorTransferFunction(vtkColorTransferFunction* colortable){ - - - vtkImageMapToWindowLevelColors* imagemaptowindowlevel = _vtkimageviewer2->GetWindowLevel(); - - if(colortable!=NULL&&colortable->GetSize()>0 && _colortable != colortable){ +//------------------------------------------------------------------- +void vtkImageViewer2_XYZ::setColorTransferFunction(vtkColorTransferFunction* colortable) +{ + if(colortable!=NULL && colortable->GetSize()>0 && _colortable!=colortable) + { _colortable = colortable; - imagemaptowindowlevel->SetLookupTable(colortable); - } + vtkImageMapToWindowLevelColors* imagemaptowindowlevel = _vtkimageviewer2->GetWindowLevel(); + imagemaptowindowlevel->SetLookupTable(_colortable); + } // if colortable +} +//------------------------------------------------------------------- +void vtkImageViewer2_XYZ::setScalarsToColors(vtkScalarsToColors* colortable, int outputformat) +{ +/* outputformat VTK-8.1.1/Common/Core/vtkSystemIncludes.h + VTK_LUMINANCE 1 + VTK_LUMINANCE_ALPHA 2 + VTK_RGB 3 OK + VTK_RGBA 4 +*/ + if( _colortable!=colortable) + { + _colortable = colortable; + _vtkimageviewer2->GetWindowLevel()->SetOutputFormat( outputformat ); + _vtkimageviewer2->GetWindowLevel()->SetLookupTable(colortable); + _vtkimageviewer2->GetWindowLevel()->SetOutputFormatToRGB(); +// vtkLookupTableDirectionVector2 *_LutEED = vtkLookupTableDirectionVector2::New(); +// _LutEED->SetVectorModeToRGBColors(); +// _vtkimageviewer2->GetWindowLevel()->SetLookupTable(_LutEED); + } // if colortable } + +