-#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: ["<<rmin<<", "<<rmax<<"]");
- return;
- }
-
- if (this->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<class T>
-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<T>(input[0]); // red
- *output++ = static_cast<T>(input[1]); // green
- *output++ = static_cast<T>(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<VTK_TT*>(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);
-}
-
-
//-------------------------------------------------------------------
//-------------------------------------------------------------------
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,
/* 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)
_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);