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=b03173ef2ffc0475ab2f30cfd0e829c90aaca6fb;hpb=41887020212dbf73ca6c182e5aafab6b0ea596a3;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 b03173e..3398325 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/vtkImageViewer2_XYZ.cxx +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/vtkImageViewer2_XYZ.cxx @@ -30,172 +30,6 @@ -#include "vtkLookupTable.h" -#include "vtkObjectFactory.h" - -class /*VTK_COMMON_EXPORT*/ vtkLookupTableDirectionVector2 : public vtkScalarsToColors -{ -public: - // Description: - // Construct with range=[0,1]; and hsv ranges set up for rainbow color table - // (from red to blue). - static vtkLookupTableDirectionVector2 *New(); - - vtkTypeMacro(vtkLookupTableDirectionVector2,vtkScalarsToColors); - void PrintSelf(ostream& os, vtkIndent indent); - - double *GetRange() { return this->GetTableRange(); }; - void SetRange(double min, double max) { this->SetTableRange(min, max); }; - void SetRange(double rng[2]) { this->SetRange(rng[0], rng[1]); }; - - void SetTableRange(double r[2]); - virtual void SetTableRange(double min, double max); - vtkGetVectorMacro(TableRange,double,2); - - unsigned char *MapValue(double v); - - void GetColor(double x, double rgb[3]); - - - void MapScalarsThroughTable2(void *input, unsigned char *output, - int inputDataType, int numberOfValues, - int inputIncrement, int outputIncrement); - -protected: - double TableRange[2]; - vtkLookupTableDirectionVector2(int sze=256, int ext=256); - ~vtkLookupTableDirectionVector2(); - -private: - vtkLookupTableDirectionVector2(const vtkLookupTableDirectionVector2&); // Not implemented. - void operator=(const vtkLookupTableDirectionVector2&); // Not implemented. -}; - - - - -vtkStandardNewMacro(vtkLookupTableDirectionVector2); - -// Construct with range=(0,1); and hsv ranges set up for rainbow color table -// (from red to blue). -vtkLookupTableDirectionVector2::vtkLookupTableDirectionVector2(int sze, int ext) -{ - this->TableRange[0] = 0.0; - this->TableRange[1] = 1.0; -} - -//---------------------------------------------------------------------------- -vtkLookupTableDirectionVector2::~vtkLookupTableDirectionVector2() -{ -} - -unsigned char *vtkLookupTableDirectionVector2::MapValue(double v) -{ - - //int idx = this->GetIndex(v); - //return (this->Table->GetPointer(0) + 4*idx); - return 0; -} - -void vtkLookupTableDirectionVector2::GetColor(double v, double rgb[3]) -{ -// unsigned char *rgb8 = this->MapValue(v); -// rgb[0] = rgb8[0]/255.0; -// rgb[1] = rgb8[1]/255.0; -// rgb[2] = rgb8[2]/255.0; - - rgb[0] = 1; - rgb[1] = 1; - rgb[2] = 0; -} - - -void vtkLookupTableDirectionVector2::SetTableRange(double r[2]) -{ - this->SetTableRange(r[0],r[1]); -} - -//---------------------------------------------------------------------------- -// Set the minimum/maximum scalar values for scalar mapping. Scalar values -// less than minimum range value are clamped to minimum range value. -// Scalar values greater than maximum range value are clamped to maximum -// range value. -void vtkLookupTableDirectionVector2::SetTableRange(double rmin, double rmax) -{ - if (rmax < rmin) - { - vtkErrorMacro("Bad table range: ["<TableRange[0] == rmin && this->TableRange[1] == rmax) - { - return; - } - - this->TableRange[0] = rmin; - this->TableRange[1] = rmax; - - this->Modified(); -} - - - -//---------------------------------------------------------------------------- -// Although this is a relatively expensive calculation, -// it is only done on the first render. Colors are cached -// for subsequent renders. -template -void vtkLookupTableMapDirVectorEED2(vtkLookupTableDirectionVector2 *self, T *input, - unsigned char *output, int length, - int inIncr, int outFormat) -{ - int i; - for (i = 0; i < length; ++i) - { - *output++ = static_cast(input[0]); // red - *output++ = static_cast(input[1]); // green - *output++ = static_cast(input[2]); // blue -// *output++ = 255; - input = input+inIncr; - } // for - -} - - -//---------------------------------------------------------------------------- -void vtkLookupTableDirectionVector2::MapScalarsThroughTable2(void *input, - unsigned char *output, - int inputDataType, - int numberOfValues, - int inputIncrement, - int outputFormat) -{ -// if (this->UseMagnitude && inputIncrement > 1) -// { - switch (inputDataType) - { - vtkTemplateMacro( vtkLookupTableMapDirVectorEED2(this,static_cast(input),output, - numberOfValues,inputIncrement,outputFormat); - return - ); - case VTK_BIT: - vtkErrorMacro("Cannot comput magnitude of bit array."); - break; - default: - vtkErrorMacro(<< "MapImageThroughTable: Unknown input ScalarType"); - } /// switch -// } //if -} - - -//---------------------------------------------------------------------------- -void vtkLookupTableDirectionVector2::PrintSelf(ostream& os, vtkIndent indent) -{ - this->Superclass::PrintSelf(os,indent); -} - - //------------------------------------------------------------------- @@ -203,17 +37,19 @@ void vtkLookupTableDirectionVector2::PrintSelf(ostream& os, vtkIndent indent) //------------------------------------------------------------------- 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, @@ -301,7 +137,7 @@ void vtkImageViewer2_XYZ::setScalarsToColors(vtkScalarsToColors* colortable, int /* outputformat VTK-8.1.1/Common/Core/vtkSystemIncludes.h VTK_LUMINANCE 1 VTK_LUMINANCE_ALPHA 2 - VTK_RGB 3 + VTK_RGB 3 OK VTK_RGBA 4 */ if( _colortable!=colortable) @@ -309,7 +145,7 @@ void vtkImageViewer2_XYZ::setScalarsToColors(vtkScalarsToColors* colortable, int _colortable = colortable; _vtkimageviewer2->GetWindowLevel()->SetOutputFormat( outputformat ); _vtkimageviewer2->GetWindowLevel()->SetLookupTable(colortable); -// _vtkimageviewer2->GetWindowLevel()->SetOutputFormatToRGB(); + _vtkimageviewer2->GetWindowLevel()->SetOutputFormatToRGB(); // vtkLookupTableDirectionVector2 *_LutEED = vtkLookupTableDirectionVector2::New(); // _LutEED->SetVectorModeToRGBColors(); // _vtkimageviewer2->GetWindowLevel()->SetLookupTable(_LutEED);