36 #ifndef vtkColorTransferFunction_h 37 #define vtkColorTransferFunction_h 39 #include "vtkRenderingCoreModule.h" 42 class vtkColorTransferFunctionInternals;
47 #define VTK_CTF_DIVERGING 3 49 #define VTK_CTF_LINEAR 0 50 #define VTK_CTF_LOG10 1 77 int AddRGBPoint(
double x,
double r,
double g,
double b );
78 int AddRGBPoint(
double x,
double r,
double g,
double b,
79 double midpoint,
double sharpness );
80 int AddHSVPoint(
double x,
double h,
double s,
double v );
81 int AddHSVPoint(
double x,
double h,
double s,
double v,
82 double midpoint,
double sharpness );
83 int RemovePoint(
double x );
91 void AddRGBSegment(
double x1,
double r1,
double g1,
double b1,
92 double x2,
double r2,
double g2,
double b2 );
93 void AddHSVSegment(
double x1,
double h1,
double s1,
double v1,
94 double x2,
double h2,
double s2,
double v2 );
100 void RemoveAllPoints();
107 void GetColor(
double x,
double rgb[3]) VTK_OVERRIDE;
113 double GetRedValue(
double x );
114 double GetGreenValue(
double x );
115 double GetBlueValue(
double x );
124 int GetNodeValue(
int index,
double val[6] );
125 int SetNodeValue(
int index,
double val[6] );
131 unsigned char *
MapValue(
double v) VTK_OVERRIDE;
137 double*
GetRange() VTK_OVERRIDE {
return this->Range; }
140 arg1 = this->Range[0];
141 arg2 = this->Range[1];
154 int AdjustRange(
double range[2]);
163 void GetTable(
double x1,
double x2,
int n,
double* table );
164 void GetTable(
double x1,
double x2,
int n,
float* table );
165 const unsigned char *GetTable(
double x1,
double x2,
int n );
177 void BuildFunctionFromTable(
double x1,
double x2,
int size,
double *table );
188 vtkSetClampMacro( Clamping,
int, 0, 1 );
189 vtkGetMacro( Clamping,
int );
208 vtkGetMacro( ColorSpace,
int );
210 vtkGetMacro(HSVWrap,
int);
223 vtkGetMacro(Scale,
int);
232 vtkSetVector3Macro(NanColor,
double);
233 vtkGetVector3Macro(NanColor,
double);
241 vtkSetVector3Macro(BelowRangeColor,
double);
242 vtkGetVector3Macro(BelowRangeColor,
double);
250 vtkGetMacro(UseBelowRangeColor,
int);
259 vtkSetVector3Macro(AboveRangeColor,
double);
260 vtkGetVector3Macro(AboveRangeColor,
double);
268 vtkGetMacro(UseAboveRangeColor,
int);
279 double* GetDataPointer();
286 void FillFromDataPointer(
int n,
double* ptr);
292 int inputDataType,
int numberOfValues,
293 int inputIncrement,
int outputIncrement) VTK_OVERRIDE;
301 vtkGetMacro(AllowDuplicateScalars,
int);
316 void GetIndexedColor(
vtkIdType idx,
double rgba[4]) VTK_OVERRIDE;
322 int EstimateMinNumberOfSamples(
double const & x1,
double const & x2);
328 vtkColorTransferFunctionInternals *Internal;
361 double BelowRangeColor[3];
366 int UseBelowRangeColor;
371 double AboveRangeColor[3];
376 int UseAboveRangeColor;
391 unsigned char UnsignedCharRGBAValue[4];
396 int AllowDuplicateScalars;
399 unsigned char *Table;
411 void SetRange(
double,
double) VTK_OVERRIDE {}
419 void SortAndUpdateRange();
431 void MovePoint(
double oldX,
double newX);
436 double FindMinimumXDistance();
record modification and/or execution time
void SetScaleToLinear()
Set the type of scale to use, linear or logarithmic.
virtual double * GetRange()
Sets/Gets the range of scalars that will be mapped.
virtual void MapScalarsThroughTable2(void *input, unsigned char *output, int inputDataType, int numberOfValues, int inputIncrement, int outputFormat)
An internal method typically not used in applications.
virtual unsigned char * MapValue(double v)
Map one value through the lookup table and return a color defined as a RGBA unsigned char tuple (4 by...
Superclass for mapping scalar values to colors.
static vtkScalarsToColors * New()
double * GetColor(double x)
Returns an RGB color for the specified scalar value.
void SetColorSpaceToLab()
Set/Get the color space used for interpolation: RGB, HSV, CIELAB, or Diverging.
a simple class to control print indentation
virtual void GetColor(double v, double rgb[3])
Map one value through the lookup table and store the color as an RGB array of doubles between 0 and 1...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetColorSpaceToRGB()
Set/Get the color space used for interpolation: RGB, HSV, CIELAB, or Diverging.
virtual void GetRange(double _arg[2])
Returns min and max position of all function points.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
double * GetRange() override
Returns min and max position of all function points.
virtual void GetRange(double &arg1, double &arg2)
Returns min and max position of all function points.
void SetColorSpaceToDiverging()
Set/Get the color space used for interpolation: RGB, HSV, CIELAB, or Diverging.
Defines a transfer function for mapping a property to an RGB color value.
void SetRange(double rng[2])
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
void SetScaleToLog10()
Set the type of scale to use, linear or logarithmic.
virtual void DeepCopy(vtkScalarsToColors *o)
Copy the contents from another object.
void SetColorSpaceToHSV()
Set/Get the color space used for interpolation: RGB, HSV, CIELAB, or Diverging.
#define VTK_CTF_DIVERGING
virtual vtkIdType GetNumberOfAvailableColors()
Get the number of available colors for mapping to.