#include <vtkColorTransferFunction.h>
vtkColorTransferFunction is a color mapping in RGB or HSV space that uses piecewise hermite functions to allow interpolation that can be piecewise constant, piecewise linear, or somewhere in-between (a modified piecewise hermite function that squishes the function according to a sharpness parameter). The function also allows for the specification of the midpoint (the place where the function reaches the average of the two bounding nodes) as a normalize distance between nodes.
Definition at line 53 of file vtkColorTransferFunction.h.
Public Types | |
typedef vtkScalarsToColors | Superclass |
Public Member Functions | |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
void | DeepCopy (vtkColorTransferFunction *f) |
void | ShallowCopy (vtkColorTransferFunction *f) |
void | PrintSelf (ostream &os, vtkIndent indent) |
int | GetSize () |
void | RemoveAllPoints () |
virtual unsigned char * | MapValue (double v) |
int | AdjustRange (double range[2]) |
void | BuildFunctionFromTable (double x1, double x2, int size, double *table) |
int | AddRGBPoint (double x, double r, double g, double b) |
int | AddRGBPoint (double x, double r, double g, double b, double midpoint, double sharpness) |
int | AddHSVPoint (double x, double h, double s, double v) |
int | AddHSVPoint (double x, double h, double s, double v, double midpoint, double sharpness) |
int | RemovePoint (double x) |
void | AddRGBSegment (double x1, double r1, double g1, double b1, double x2, double r2, double g2, double b2) |
void | AddHSVSegment (double x1, double h1, double s1, double v1, double x2, double h2, double s2, double v2) |
double * | GetColor (double x) |
void | GetColor (double x, double rgb[3]) |
double | GetRedValue (double x) |
double | GetGreenValue (double x) |
double | GetBlueValue (double x) |
int | GetNodeValue (int index, double val[6]) |
int | SetNodeValue (int index, double val[6]) |
virtual double * | GetRange () |
virtual void | GetRange (double &, double &) |
virtual void | GetRange (double[2]) |
void | GetTable (double x1, double x2, int n, double *table) |
void | GetTable (double x1, double x2, int n, float *table) |
const unsigned char * | GetTable (double x1, double x2, int n) |
virtual void | SetClamping (int) |
virtual int | GetClamping () |
virtual void | ClampingOn () |
virtual void | ClampingOff () |
virtual void | SetColorSpace (int) |
void | SetColorSpaceToRGB () |
void | SetColorSpaceToHSV () |
void | SetColorSpaceToLab () |
void | SetColorSpaceToDiverging () |
virtual int | GetColorSpace () |
virtual void | SetHSVWrap (int) |
virtual int | GetHSVWrap () |
virtual void | HSVWrapOn () |
virtual void | HSVWrapOff () |
virtual void | SetScale (int) |
void | SetScaleToLinear () |
void | SetScaleToLog10 () |
virtual int | GetScale () |
double * | GetDataPointer () |
void | FillFromDataPointer (int, double *) |
virtual void | MapScalarsThroughTable2 (void *input, unsigned char *output, int inputDataType, int numberOfValues, int inputIncrement, int outputIncrement) |
virtual void | SetAllowDuplicateScalars (int) |
virtual int | GetAllowDuplicateScalars () |
virtual void | AllowDuplicateScalarsOn () |
virtual void | AllowDuplicateScalarsOff () |
Static Public Member Functions | |
static vtkColorTransferFunction * | New () |
static int | IsTypeOf (const char *type) |
static vtkColorTransferFunction * | SafeDownCast (vtkObject *o) |
Protected Member Functions | |
vtkColorTransferFunction () | |
~vtkColorTransferFunction () | |
void | SortAndUpdateRange () |
void | MovePoint (double oldX, double newX) |
virtual void | SetRange (double, double) |
void | SetRange (double rng[2]) |
Protected Attributes | |
vtkColorTransferFunctionInternals * | Internal |
int | Clamping |
int | ColorSpace |
int | HSVWrap |
int | Scale |
double * | Function |
double | Range [2] |
unsigned char | UnsignedCharRGBAValue [4] |
int | AllowDuplicateScalars |
vtkTimeStamp | BuildTime |
unsigned char * | Table |
int | TableSize |
vtkColorTransferFunction::vtkColorTransferFunction | ( | ) | [protected] |
vtkColorTransferFunction::~vtkColorTransferFunction | ( | ) | [protected] |
static vtkColorTransferFunction* vtkColorTransferFunction::New | ( | ) | [static] |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
Reimplemented from vtkObject.
virtual const char* vtkColorTransferFunction::GetClassName | ( | ) | [virtual] |
Reimplemented from vtkScalarsToColors.
static int vtkColorTransferFunction::IsTypeOf | ( | const char * | name | ) | [static] |
Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.
Reimplemented from vtkScalarsToColors.
virtual int vtkColorTransferFunction::IsA | ( | const char * | name | ) | [virtual] |
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.
Reimplemented from vtkScalarsToColors.
static vtkColorTransferFunction* vtkColorTransferFunction::SafeDownCast | ( | vtkObject * | o | ) | [static] |
Reimplemented from vtkScalarsToColors.
void vtkColorTransferFunction::DeepCopy | ( | vtkColorTransferFunction * | f | ) |
void vtkColorTransferFunction::ShallowCopy | ( | vtkColorTransferFunction * | f | ) |
void vtkColorTransferFunction::PrintSelf | ( | ostream & | os, | |
vtkIndent | indent | |||
) | [virtual] |
Print method for vtkColorTransferFunction
Reimplemented from vtkScalarsToColors.
int vtkColorTransferFunction::GetSize | ( | ) |
How many points are there defining this function?
int vtkColorTransferFunction::AddRGBPoint | ( | double | x, | |
double | r, | |||
double | g, | |||
double | b | |||
) |
Add/Remove a point to/from the function defined in RGB or HSV Return the index of the point (0 based), or -1 on error.
int vtkColorTransferFunction::AddRGBPoint | ( | double | x, | |
double | r, | |||
double | g, | |||
double | b, | |||
double | midpoint, | |||
double | sharpness | |||
) |
Add/Remove a point to/from the function defined in RGB or HSV Return the index of the point (0 based), or -1 on error.
int vtkColorTransferFunction::AddHSVPoint | ( | double | x, | |
double | h, | |||
double | s, | |||
double | v | |||
) |
Add/Remove a point to/from the function defined in RGB or HSV Return the index of the point (0 based), or -1 on error.
int vtkColorTransferFunction::AddHSVPoint | ( | double | x, | |
double | h, | |||
double | s, | |||
double | v, | |||
double | midpoint, | |||
double | sharpness | |||
) |
Add/Remove a point to/from the function defined in RGB or HSV Return the index of the point (0 based), or -1 on error.
int vtkColorTransferFunction::RemovePoint | ( | double | x | ) |
Add/Remove a point to/from the function defined in RGB or HSV Return the index of the point (0 based), or -1 on error.
void vtkColorTransferFunction::AddRGBSegment | ( | double | x1, | |
double | r1, | |||
double | g1, | |||
double | b1, | |||
double | x2, | |||
double | r2, | |||
double | g2, | |||
double | b2 | |||
) |
Add two points to the function and remove all the points between them
void vtkColorTransferFunction::AddHSVSegment | ( | double | x1, | |
double | h1, | |||
double | s1, | |||
double | v1, | |||
double | x2, | |||
double | h2, | |||
double | s2, | |||
double | v2 | |||
) |
Add two points to the function and remove all the points between them
void vtkColorTransferFunction::RemoveAllPoints | ( | ) |
Remove all points
double* vtkColorTransferFunction::GetColor | ( | double | x | ) | [inline] |
Returns an RGB color for the specified scalar value
Reimplemented from vtkScalarsToColors.
Definition at line 92 of file vtkColorTransferFunction.h.
void vtkColorTransferFunction::GetColor | ( | double | x, | |
double | rgb[3] | |||
) | [virtual] |
Returns an RGB color for the specified scalar value
Implements vtkScalarsToColors.
double vtkColorTransferFunction::GetRedValue | ( | double | x | ) |
Get the color components individually.
double vtkColorTransferFunction::GetGreenValue | ( | double | x | ) |
Get the color components individually.
double vtkColorTransferFunction::GetBlueValue | ( | double | x | ) |
Get the color components individually.
int vtkColorTransferFunction::GetNodeValue | ( | int | index, | |
double | val[6] | |||
) |
For the node specified by index, set/get the location (X), R, G, and B values, midpoint, and sharpness values at the node.
int vtkColorTransferFunction::SetNodeValue | ( | int | index, | |
double | val[6] | |||
) |
For the node specified by index, set/get the location (X), R, G, and B values, midpoint, and sharpness values at the node.
virtual unsigned char* vtkColorTransferFunction::MapValue | ( | double | v | ) | [virtual] |
Map one value through the lookup table.
Implements vtkScalarsToColors.
virtual double* vtkColorTransferFunction::GetRange | ( | ) | [virtual] |
Returns min and max position of all function points.
Implements vtkScalarsToColors.
virtual void vtkColorTransferFunction::GetRange | ( | double & | , | |
double & | ||||
) | [virtual] |
Returns min and max position of all function points.
virtual void vtkColorTransferFunction::GetRange | ( | double | [2] | ) | [virtual] |
Returns min and max position of all function points.
int vtkColorTransferFunction::AdjustRange | ( | double | range[2] | ) |
Remove all points out of the new range, and make sure there is a point at each end of that range. Return 1 on success, 0 otherwise.
void vtkColorTransferFunction::GetTable | ( | double | x1, | |
double | x2, | |||
int | n, | |||
double * | table | |||
) |
Fills in a table of n function values between x1 and x2
void vtkColorTransferFunction::GetTable | ( | double | x1, | |
double | x2, | |||
int | n, | |||
float * | table | |||
) |
Fills in a table of n function values between x1 and x2
const unsigned char* vtkColorTransferFunction::GetTable | ( | double | x1, | |
double | x2, | |||
int | n | |||
) |
Fills in a table of n function values between x1 and x2
void vtkColorTransferFunction::BuildFunctionFromTable | ( | double | x1, | |
double | x2, | |||
int | size, | |||
double * | table | |||
) |
Construct a color transfer function from a table. Function range is is set to [x1, x2], each function size is set to size, and function points are regularly spaced between x1 and x2. Parameter "table" is assumed to be a block of memory of size [3*size]
virtual void vtkColorTransferFunction::SetClamping | ( | int | ) | [virtual] |
Sets and gets the clamping value for this transfer function.
virtual int vtkColorTransferFunction::GetClamping | ( | ) | [virtual] |
Sets and gets the clamping value for this transfer function.
virtual void vtkColorTransferFunction::ClampingOn | ( | ) | [virtual] |
Sets and gets the clamping value for this transfer function.
virtual void vtkColorTransferFunction::ClampingOff | ( | ) | [virtual] |
Sets and gets the clamping value for this transfer function.
virtual void vtkColorTransferFunction::SetColorSpace | ( | int | ) | [virtual] |
Set/Get the color space used for interpolation: RGB, HSV, CIELAB, or Diverging. In HSV mode, if HSVWrap is on, it will take the shortest path in Hue (going back through 0 if that is the shortest way around the hue circle) whereas if HSVWrap is off it will not go through 0 (in order the match the current functionality of vtkLookupTable). Diverging is a special mode where colors will pass through white when interpolating between two saturated colors.
void vtkColorTransferFunction::SetColorSpaceToRGB | ( | ) | [inline] |
Set/Get the color space used for interpolation: RGB, HSV, CIELAB, or Diverging. In HSV mode, if HSVWrap is on, it will take the shortest path in Hue (going back through 0 if that is the shortest way around the hue circle) whereas if HSVWrap is off it will not go through 0 (in order the match the current functionality of vtkLookupTable). Diverging is a special mode where colors will pass through white when interpolating between two saturated colors.
Definition at line 152 of file vtkColorTransferFunction.h.
void vtkColorTransferFunction::SetColorSpaceToHSV | ( | ) | [inline] |
Set/Get the color space used for interpolation: RGB, HSV, CIELAB, or Diverging. In HSV mode, if HSVWrap is on, it will take the shortest path in Hue (going back through 0 if that is the shortest way around the hue circle) whereas if HSVWrap is off it will not go through 0 (in order the match the current functionality of vtkLookupTable). Diverging is a special mode where colors will pass through white when interpolating between two saturated colors.
Definition at line 153 of file vtkColorTransferFunction.h.
void vtkColorTransferFunction::SetColorSpaceToLab | ( | ) | [inline] |
Set/Get the color space used for interpolation: RGB, HSV, CIELAB, or Diverging. In HSV mode, if HSVWrap is on, it will take the shortest path in Hue (going back through 0 if that is the shortest way around the hue circle) whereas if HSVWrap is off it will not go through 0 (in order the match the current functionality of vtkLookupTable). Diverging is a special mode where colors will pass through white when interpolating between two saturated colors.
Definition at line 154 of file vtkColorTransferFunction.h.
void vtkColorTransferFunction::SetColorSpaceToDiverging | ( | ) | [inline] |
Set/Get the color space used for interpolation: RGB, HSV, CIELAB, or Diverging. In HSV mode, if HSVWrap is on, it will take the shortest path in Hue (going back through 0 if that is the shortest way around the hue circle) whereas if HSVWrap is off it will not go through 0 (in order the match the current functionality of vtkLookupTable). Diverging is a special mode where colors will pass through white when interpolating between two saturated colors.
Definition at line 155 of file vtkColorTransferFunction.h.
virtual int vtkColorTransferFunction::GetColorSpace | ( | ) | [virtual] |
Set/Get the color space used for interpolation: RGB, HSV, CIELAB, or Diverging. In HSV mode, if HSVWrap is on, it will take the shortest path in Hue (going back through 0 if that is the shortest way around the hue circle) whereas if HSVWrap is off it will not go through 0 (in order the match the current functionality of vtkLookupTable). Diverging is a special mode where colors will pass through white when interpolating between two saturated colors.
virtual void vtkColorTransferFunction::SetHSVWrap | ( | int | ) | [virtual] |
Set/Get the color space used for interpolation: RGB, HSV, CIELAB, or Diverging. In HSV mode, if HSVWrap is on, it will take the shortest path in Hue (going back through 0 if that is the shortest way around the hue circle) whereas if HSVWrap is off it will not go through 0 (in order the match the current functionality of vtkLookupTable). Diverging is a special mode where colors will pass through white when interpolating between two saturated colors.
virtual int vtkColorTransferFunction::GetHSVWrap | ( | ) | [virtual] |
Set/Get the color space used for interpolation: RGB, HSV, CIELAB, or Diverging. In HSV mode, if HSVWrap is on, it will take the shortest path in Hue (going back through 0 if that is the shortest way around the hue circle) whereas if HSVWrap is off it will not go through 0 (in order the match the current functionality of vtkLookupTable). Diverging is a special mode where colors will pass through white when interpolating between two saturated colors.
virtual void vtkColorTransferFunction::HSVWrapOn | ( | ) | [virtual] |
Set/Get the color space used for interpolation: RGB, HSV, CIELAB, or Diverging. In HSV mode, if HSVWrap is on, it will take the shortest path in Hue (going back through 0 if that is the shortest way around the hue circle) whereas if HSVWrap is off it will not go through 0 (in order the match the current functionality of vtkLookupTable). Diverging is a special mode where colors will pass through white when interpolating between two saturated colors.
virtual void vtkColorTransferFunction::HSVWrapOff | ( | ) | [virtual] |
Set/Get the color space used for interpolation: RGB, HSV, CIELAB, or Diverging. In HSV mode, if HSVWrap is on, it will take the shortest path in Hue (going back through 0 if that is the shortest way around the hue circle) whereas if HSVWrap is off it will not go through 0 (in order the match the current functionality of vtkLookupTable). Diverging is a special mode where colors will pass through white when interpolating between two saturated colors.
virtual void vtkColorTransferFunction::SetScale | ( | int | ) | [virtual] |
Set the type of scale to use, linear or logarithmic. The default is linear. If the scale is logarithmic, and the range contains zero, the color mapping will be linear.
void vtkColorTransferFunction::SetScaleToLinear | ( | ) | [inline] |
Set the type of scale to use, linear or logarithmic. The default is linear. If the scale is logarithmic, and the range contains zero, the color mapping will be linear.
Definition at line 167 of file vtkColorTransferFunction.h.
void vtkColorTransferFunction::SetScaleToLog10 | ( | ) | [inline] |
Set the type of scale to use, linear or logarithmic. The default is linear. If the scale is logarithmic, and the range contains zero, the color mapping will be linear.
Definition at line 168 of file vtkColorTransferFunction.h.
virtual int vtkColorTransferFunction::GetScale | ( | ) | [virtual] |
Set the type of scale to use, linear or logarithmic. The default is linear. If the scale is logarithmic, and the range contains zero, the color mapping will be linear.
double* vtkColorTransferFunction::GetDataPointer | ( | ) |
Returns a list of all nodes Fills from a pointer to data stored in a similar list of nodes.
void vtkColorTransferFunction::FillFromDataPointer | ( | int | , | |
double * | ||||
) |
Returns a list of all nodes Fills from a pointer to data stored in a similar list of nodes.
virtual void vtkColorTransferFunction::MapScalarsThroughTable2 | ( | void * | input, | |
unsigned char * | output, | |||
int | inputDataType, | |||
int | numberOfValues, | |||
int | inputIncrement, | |||
int | outputIncrement | |||
) | [virtual] |
map a set of scalars through the lookup table
Implements vtkScalarsToColors.
virtual void vtkColorTransferFunction::SetAllowDuplicateScalars | ( | int | ) | [virtual] |
Toggle whether to allow duplicate scalar values in the color transfer function (off by default).
virtual int vtkColorTransferFunction::GetAllowDuplicateScalars | ( | ) | [virtual] |
Toggle whether to allow duplicate scalar values in the color transfer function (off by default).
virtual void vtkColorTransferFunction::AllowDuplicateScalarsOn | ( | ) | [virtual] |
Toggle whether to allow duplicate scalar values in the color transfer function (off by default).
virtual void vtkColorTransferFunction::AllowDuplicateScalarsOff | ( | ) | [virtual] |
Toggle whether to allow duplicate scalar values in the color transfer function (off by default).
virtual void vtkColorTransferFunction::SetRange | ( | double | , | |
double | ||||
) | [inline, protected, virtual] |
Set the range of scalars being mapped. The set has no functionality in this subclass of vtkScalarsToColors.
Implements vtkScalarsToColors.
Definition at line 232 of file vtkColorTransferFunction.h.
void vtkColorTransferFunction::SetRange | ( | double | rng[2] | ) | [inline, protected] |
Set the range of scalars being mapped. The set has no functionality in this subclass of vtkScalarsToColors.
Reimplemented from vtkScalarsToColors.
Definition at line 233 of file vtkColorTransferFunction.h.
void vtkColorTransferFunction::SortAndUpdateRange | ( | ) | [protected] |
void vtkColorTransferFunction::MovePoint | ( | double | oldX, | |
double | newX | |||
) | [protected] |
Moves point from oldX to newX. It removed the point from oldX. If any point existed at newX, it will also be removed.
vtkColorTransferFunctionInternals* vtkColorTransferFunction::Internal [protected] |
Definition at line 198 of file vtkColorTransferFunction.h.
int vtkColorTransferFunction::Clamping [protected] |
Definition at line 204 of file vtkColorTransferFunction.h.
int vtkColorTransferFunction::ColorSpace [protected] |
Definition at line 207 of file vtkColorTransferFunction.h.
int vtkColorTransferFunction::HSVWrap [protected] |
Definition at line 210 of file vtkColorTransferFunction.h.
int vtkColorTransferFunction::Scale [protected] |
Definition at line 213 of file vtkColorTransferFunction.h.
double* vtkColorTransferFunction::Function [protected] |
Definition at line 215 of file vtkColorTransferFunction.h.
double vtkColorTransferFunction::Range[2] [protected] |
Definition at line 218 of file vtkColorTransferFunction.h.
unsigned char vtkColorTransferFunction::UnsignedCharRGBAValue[4] [protected] |
Definition at line 221 of file vtkColorTransferFunction.h.
int vtkColorTransferFunction::AllowDuplicateScalars [protected] |
Definition at line 223 of file vtkColorTransferFunction.h.
vtkTimeStamp vtkColorTransferFunction::BuildTime [protected] |
Definition at line 225 of file vtkColorTransferFunction.h.
unsigned char* vtkColorTransferFunction::Table [protected] |
Definition at line 226 of file vtkColorTransferFunction.h.
int vtkColorTransferFunction::TableSize [protected] |
Definition at line 227 of file vtkColorTransferFunction.h.