VTK
|
map scalar values into colors via a lookup table More...
#include <vtkLookupTable.h>
map scalar values into colors via a lookup table
vtkLookupTable is an object that is used by mapper objects to map scalar values into rgba (red-green-blue-alpha transparency) color specification, or rgba into scalar values. The color table can be created by direct insertion of color values, or by specifying hue, saturation, value, and alpha range and generating a table.
This class behaves differently depending on how IndexedLookup is set. When true, vtkLookupTable enters a mode for representing categorical color maps. By setting IndexedLookup to true, you indicate that the annotated values are the only valid values for which entries in the color table should be returned. The colors in the lookup Table are assigned to annotated values by taking the modulus of their index in the list of annotations. IndexedLookup changes the behavior of GetIndex, which in turn changes the way MapScalarsThroughTable2 behaves; when IndexedLookup is true, MapScalarsThroughTable2 will search for scalar values in AnnotatedValues and use the resulting index to determine the color. If a scalar value is not present in AnnotatedValues, then NanColor will be used.
Definition at line 64 of file vtkLookupTable.h.
Reimplemented from vtkScalarsToColors.
Reimplemented in vtkLookupTableWithEnabling, vtkWindowLevelLookupTable, and vtkLogLookupTable.
Definition at line 71 of file vtkLookupTable.h.
vtkLookupTable::vtkLookupTable | ( | int | sze = 256 , |
int | ext = 256 |
||
) | [protected] |
vtkLookupTable::~vtkLookupTable | ( | ) | [protected] |
static vtkLookupTable* vtkLookupTable::New | ( | ) | [static] |
Construct with range=[0,1]; and hsv ranges set up for rainbow color table (from red to blue).
Reimplemented from vtkScalarsToColors.
Reimplemented in vtkLookupTableWithEnabling, vtkWindowLevelLookupTable, and vtkLogLookupTable.
static int vtkLookupTable::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 vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkScalarsToColors.
Reimplemented in vtkLookupTableWithEnabling, vtkWindowLevelLookupTable, and vtkLogLookupTable.
virtual int vtkLookupTable::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 vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkScalarsToColors.
Reimplemented in vtkLookupTableWithEnabling, vtkWindowLevelLookupTable, and vtkLogLookupTable.
static vtkLookupTable* vtkLookupTable::SafeDownCast | ( | vtkObjectBase * | o | ) | [static] |
Reimplemented from vtkScalarsToColors.
Reimplemented in vtkLookupTableWithEnabling, vtkWindowLevelLookupTable, and vtkLogLookupTable.
virtual vtkObjectBase* vtkLookupTable::NewInstanceInternal | ( | ) | const [protected, virtual] |
Reimplemented from vtkScalarsToColors.
Reimplemented in vtkLookupTableWithEnabling, vtkWindowLevelLookupTable, and vtkLogLookupTable.
vtkLookupTable* vtkLookupTable::NewInstance | ( | ) | const |
Reimplemented from vtkScalarsToColors.
Reimplemented in vtkLookupTableWithEnabling, vtkWindowLevelLookupTable, and vtkLogLookupTable.
void vtkLookupTable::PrintSelf | ( | ostream & | os, |
vtkIndent | indent | ||
) | [virtual] |
Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from vtkScalarsToColors.
Reimplemented in vtkLookupTableWithEnabling, vtkWindowLevelLookupTable, and vtkLogLookupTable.
virtual int vtkLookupTable::IsOpaque | ( | ) | [virtual] |
Return true if all of the values defining the mapping have an opacity equal to 1. Default implementation return true.
Reimplemented from vtkScalarsToColors.
int vtkLookupTable::Allocate | ( | int | sz = 256 , |
int | ext = 256 |
||
) |
Allocate a color table of specified size.
virtual void vtkLookupTable::Build | ( | ) | [virtual] |
Generate lookup table from hue, saturation, value, alpha min/max values. Table is built from linear ramp of each value.
Reimplemented from vtkScalarsToColors.
Reimplemented in vtkWindowLevelLookupTable.
virtual void vtkLookupTable::ForceBuild | ( | ) | [virtual] |
Force the lookup table to regenerate from hue, saturation, value, and alpha min/max values. Table is built from a linear ramp of each value. ForceBuild() is useful if a lookup table has been defined manually (using SetTableValue) and then an application decides to rebuild the lookup table using the implicit process.
virtual void vtkLookupTable::SetRamp | ( | int | ) | [virtual] |
Set the shape of the table ramp to either linear or S-curve. The default is S-curve, which tails off gradually at either end. The equation used for the S-curve is y = (sin((x - 1/2)*pi) + 1)/2, while the equation for the linear ramp is simply y = x. For an S-curve greyscale ramp, you should set NumberOfTableValues to 402 (which is 256*pi/2) to provide room for the tails of the ramp. The equation for the SQRT is y = sqrt(x).
void vtkLookupTable::SetRampToLinear | ( | ) | [inline] |
Set the shape of the table ramp to either linear or S-curve. The default is S-curve, which tails off gradually at either end. The equation used for the S-curve is y = (sin((x - 1/2)*pi) + 1)/2, while the equation for the linear ramp is simply y = x. For an S-curve greyscale ramp, you should set NumberOfTableValues to 402 (which is 256*pi/2) to provide room for the tails of the ramp. The equation for the SQRT is y = sqrt(x).
Definition at line 101 of file vtkLookupTable.h.
void vtkLookupTable::SetRampToSCurve | ( | ) | [inline] |
Set the shape of the table ramp to either linear or S-curve. The default is S-curve, which tails off gradually at either end. The equation used for the S-curve is y = (sin((x - 1/2)*pi) + 1)/2, while the equation for the linear ramp is simply y = x. For an S-curve greyscale ramp, you should set NumberOfTableValues to 402 (which is 256*pi/2) to provide room for the tails of the ramp. The equation for the SQRT is y = sqrt(x).
Definition at line 102 of file vtkLookupTable.h.
void vtkLookupTable::SetRampToSQRT | ( | ) | [inline] |
Set the shape of the table ramp to either linear or S-curve. The default is S-curve, which tails off gradually at either end. The equation used for the S-curve is y = (sin((x - 1/2)*pi) + 1)/2, while the equation for the linear ramp is simply y = x. For an S-curve greyscale ramp, you should set NumberOfTableValues to 402 (which is 256*pi/2) to provide room for the tails of the ramp. The equation for the SQRT is y = sqrt(x).
Definition at line 103 of file vtkLookupTable.h.
virtual int vtkLookupTable::GetRamp | ( | ) | [virtual] |
Set the shape of the table ramp to either linear or S-curve. The default is S-curve, which tails off gradually at either end. The equation used for the S-curve is y = (sin((x - 1/2)*pi) + 1)/2, while the equation for the linear ramp is simply y = x. For an S-curve greyscale ramp, you should set NumberOfTableValues to 402 (which is 256*pi/2) to provide room for the tails of the ramp. The equation for the SQRT is y = sqrt(x).
void vtkLookupTable::SetScale | ( | int | scale | ) |
Set the type of scale to use, linear or logarithmic. The default is linear. If the scale is logarithmic, then the TableRange must not cross the value zero.
void vtkLookupTable::SetScaleToLinear | ( | ) | [inline] |
Set the type of scale to use, linear or logarithmic. The default is linear. If the scale is logarithmic, then the TableRange must not cross the value zero.
Definition at line 112 of file vtkLookupTable.h.
void vtkLookupTable::SetScaleToLog10 | ( | ) | [inline] |
Set the type of scale to use, linear or logarithmic. The default is linear. If the scale is logarithmic, then the TableRange must not cross the value zero.
Definition at line 113 of file vtkLookupTable.h.
virtual int vtkLookupTable::GetScale | ( | ) | [virtual] |
Set the type of scale to use, linear or logarithmic. The default is linear. If the scale is logarithmic, then the TableRange must not cross the value zero.
void vtkLookupTable::SetTableRange | ( | double | r[2] | ) |
Set/Get 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. The TableRange values are only used when IndexedLookup is false.
virtual void vtkLookupTable::SetTableRange | ( | double | min, |
double | max | ||
) | [virtual] |
Set/Get 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. The TableRange values are only used when IndexedLookup is false.
virtual double* vtkLookupTable::GetTableRange | ( | ) | [virtual] |
Set/Get 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. The TableRange values are only used when IndexedLookup is false.
virtual void vtkLookupTable::GetTableRange | ( | double | data[2] | ) | [virtual] |
Set/Get 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. The TableRange values are only used when IndexedLookup is false.
virtual void vtkLookupTable::SetHueRange | ( | double | , |
double | |||
) | [virtual] |
Set the range in hue (using automatic generation). Hue ranges between [0,1].
void vtkLookupTable::SetHueRange | ( | double | [2] | ) |
Set the range in hue (using automatic generation). Hue ranges between [0,1].
virtual double* vtkLookupTable::GetHueRange | ( | ) | [virtual] |
Set the range in hue (using automatic generation). Hue ranges between [0,1].
virtual void vtkLookupTable::GetHueRange | ( | double & | , |
double & | |||
) | [virtual] |
Set the range in hue (using automatic generation). Hue ranges between [0,1].
virtual void vtkLookupTable::GetHueRange | ( | double | [2] | ) | [virtual] |
Set the range in hue (using automatic generation). Hue ranges between [0,1].
virtual void vtkLookupTable::SetSaturationRange | ( | double | , |
double | |||
) | [virtual] |
Set the range in saturation (using automatic generation). Saturation ranges between [0,1].
void vtkLookupTable::SetSaturationRange | ( | double | [2] | ) |
Set the range in saturation (using automatic generation). Saturation ranges between [0,1].
virtual double* vtkLookupTable::GetSaturationRange | ( | ) | [virtual] |
Set the range in saturation (using automatic generation). Saturation ranges between [0,1].
virtual void vtkLookupTable::GetSaturationRange | ( | double & | , |
double & | |||
) | [virtual] |
Set the range in saturation (using automatic generation). Saturation ranges between [0,1].
virtual void vtkLookupTable::GetSaturationRange | ( | double | [2] | ) | [virtual] |
Set the range in saturation (using automatic generation). Saturation ranges between [0,1].
virtual void vtkLookupTable::SetValueRange | ( | double | , |
double | |||
) | [virtual] |
Set the range in value (using automatic generation). Value ranges between [0,1].
void vtkLookupTable::SetValueRange | ( | double | [2] | ) |
Set the range in value (using automatic generation). Value ranges between [0,1].
virtual double* vtkLookupTable::GetValueRange | ( | ) | [virtual] |
Set the range in value (using automatic generation). Value ranges between [0,1].
virtual void vtkLookupTable::GetValueRange | ( | double & | , |
double & | |||
) | [virtual] |
Set the range in value (using automatic generation). Value ranges between [0,1].
virtual void vtkLookupTable::GetValueRange | ( | double | [2] | ) | [virtual] |
Set the range in value (using automatic generation). Value ranges between [0,1].
virtual void vtkLookupTable::SetAlphaRange | ( | double | , |
double | |||
) | [virtual] |
Set the range in alpha (using automatic generation). Alpha ranges from [0,1].
void vtkLookupTable::SetAlphaRange | ( | double | [2] | ) |
Set the range in alpha (using automatic generation). Alpha ranges from [0,1].
virtual double* vtkLookupTable::GetAlphaRange | ( | ) | [virtual] |
Set the range in alpha (using automatic generation). Alpha ranges from [0,1].
virtual void vtkLookupTable::GetAlphaRange | ( | double & | , |
double & | |||
) | [virtual] |
Set the range in alpha (using automatic generation). Alpha ranges from [0,1].
virtual void vtkLookupTable::GetAlphaRange | ( | double | [2] | ) | [virtual] |
Set the range in alpha (using automatic generation). Alpha ranges from [0,1].
virtual void vtkLookupTable::SetNanColor | ( | double | , |
double | , | ||
double | , | ||
double | |||
) | [virtual] |
Set the color to use when a NaN (not a number) is encountered. This is an RGBA 4-tuple color of doubles in the range [0,1].
virtual void vtkLookupTable::SetNanColor | ( | double | [4] | ) | [virtual] |
Set the color to use when a NaN (not a number) is encountered. This is an RGBA 4-tuple color of doubles in the range [0,1].
virtual double* vtkLookupTable::GetNanColor | ( | ) | [virtual] |
Set the color to use when a NaN (not a number) is encountered. This is an RGBA 4-tuple color of doubles in the range [0,1].
virtual void vtkLookupTable::GetNanColor | ( | double & | , |
double & | , | ||
double & | , | ||
double & | |||
) | [virtual] |
Set the color to use when a NaN (not a number) is encountered. This is an RGBA 4-tuple color of doubles in the range [0,1].
virtual void vtkLookupTable::GetNanColor | ( | double | [4] | ) | [virtual] |
Set the color to use when a NaN (not a number) is encountered. This is an RGBA 4-tuple color of doubles in the range [0,1].
unsigned char* vtkLookupTable::GetNanColorAsUnsignedChars | ( | ) |
Return the NanColor as a pointer to 4 unsigned chars. This will overwrite any data returned by previous calls to MapValue.
unsigned char* vtkLookupTable::MapValue | ( | double | v | ) | [virtual] |
Map one value through the lookup table.
Reimplemented from vtkScalarsToColors.
void vtkLookupTable::GetColor | ( | double | x, |
double | rgb[3] | ||
) | [virtual] |
Map one value through the lookup table and return the color as an RGB array of doubles between 0 and 1.
Reimplemented from vtkScalarsToColors.
double vtkLookupTable::GetOpacity | ( | double | v | ) | [virtual] |
Map one value through the lookup table and return the alpha value (the opacity) as a double between 0 and 1.
Reimplemented from vtkScalarsToColors.
virtual vtkIdType vtkLookupTable::GetIndex | ( | double | v | ) | [virtual] |
Return the table index associated with a particular value. Do not use this function when IndexedLookup is true: in that case, the set of values v may take on is exactly the integers from 0 to GetNumberOfTableValues() - 1; and v serves directly as an index into TableValues.
void vtkLookupTable::SetNumberOfTableValues | ( | vtkIdType | number | ) |
Specify the number of values (i.e., colors) in the lookup table.
vtkIdType vtkLookupTable::GetNumberOfTableValues | ( | ) | [inline] |
Specify the number of values (i.e., colors) in the lookup table.
Definition at line 188 of file vtkLookupTable.h.
virtual void vtkLookupTable::SetTableValue | ( | vtkIdType | indx, |
double | rgba[4] | ||
) | [virtual] |
Directly load color into lookup table. Use [0,1] double values for color component specification. Make sure that you've either used the Build() method or used SetNumberOfTableValues() prior to using this method.
virtual void vtkLookupTable::SetTableValue | ( | vtkIdType | indx, |
double | r, | ||
double | g, | ||
double | b, | ||
double | a = 1.0 |
||
) | [virtual] |
Directly load color into lookup table. Use [0,1] double values for color component specification.
Return a rgba color value for the given index into the lookup table. Color components are expressed as [0,1] double values.
void vtkLookupTable::GetTableValue | ( | vtkIdType | id, |
double | rgba[4] | ||
) |
Return a rgba color value for the given index into the lookup table. Color components are expressed as [0,1] double values.
unsigned char* vtkLookupTable::GetPointer | ( | const vtkIdType | id | ) | [inline] |
Get pointer to color table data. Format is array of unsigned char r-g-b-a-r-g-b-a...
Definition at line 215 of file vtkLookupTable.h.
unsigned char * vtkLookupTable::WritePointer | ( | const vtkIdType | id, |
const int | number | ||
) | [inline] |
Get pointer to data. Useful for direct writes into object. MaxId is bumped by number (and memory allocated if necessary). Id is the location you wish to write into; number is the number of rgba values to write.
Definition at line 319 of file vtkLookupTable.h.
double* vtkLookupTable::GetRange | ( | ) | [inline, virtual] |
Sets/Gets the range of scalars which will be mapped. This is a duplicate of Get/SetTableRange.
Reimplemented from vtkScalarsToColors.
Definition at line 228 of file vtkLookupTable.h.
void vtkLookupTable::SetRange | ( | double | min, |
double | max | ||
) | [inline, virtual] |
Sets/Gets the range of scalars which will be mapped. This is a duplicate of Get/SetTableRange.
Reimplemented from vtkScalarsToColors.
Definition at line 229 of file vtkLookupTable.h.
void vtkLookupTable::SetRange | ( | double | rng[2] | ) | [inline] |
Sets/Gets the range of scalars which will be mapped. This is a duplicate of Get/SetTableRange.
Reimplemented from vtkScalarsToColors.
Definition at line 230 of file vtkLookupTable.h.
static void vtkLookupTable::GetLogRange | ( | const double | range[2], |
double | log_range[2] | ||
) | [static] |
Returns the log of range
in log_range
. There is a little more to this than simply taking the log10 of the two range values: we do conversion of negative ranges to positive ranges, and conversion of zero to a 'very small number'.
static double vtkLookupTable::ApplyLogScale | ( | double | v, |
const double | range[2], | ||
const double | log_range[2] | ||
) | [static] |
Apply log to value, with appropriate constraints.
virtual void vtkLookupTable::SetNumberOfColors | ( | vtkIdType | ) | [virtual] |
Set the number of colors in the lookup table. Use SetNumberOfTableValues() instead, it can be used both before and after the table has been built whereas SetNumberOfColors() has no effect after the table has been built.
virtual vtkIdType vtkLookupTable::GetNumberOfColors | ( | ) | [virtual] |
Set the number of colors in the lookup table. Use SetNumberOfTableValues() instead, it can be used both before and after the table has been built whereas SetNumberOfColors() has no effect after the table has been built.
void vtkLookupTable::SetTable | ( | vtkUnsignedCharArray * | ) |
Set/Get the internal table array that is used to map the scalars to colors. The table array is an unsigned char array with 4 components representing RGBA.
virtual vtkUnsignedCharArray* vtkLookupTable::GetTable | ( | ) | [virtual] |
Set/Get the internal table array that is used to map the scalars to colors. The table array is an unsigned char array with 4 components representing RGBA.
void vtkLookupTable::MapScalarsThroughTable2 | ( | void * | input, |
unsigned char * | output, | ||
int | inputDataType, | ||
int | numberOfValues, | ||
int | inputIncrement, | ||
int | outputIncrement | ||
) | [virtual] |
map a set of scalars through the lookup table
Reimplemented from vtkScalarsToColors.
Reimplemented in vtkLookupTableWithEnabling.
void vtkLookupTable::DeepCopy | ( | vtkScalarsToColors * | lut | ) | [virtual] |
Copy the contents from another LookupTable
Reimplemented from vtkScalarsToColors.
virtual int vtkLookupTable::UsingLogScale | ( | ) | [inline, virtual] |
This should return 1 is the subclass is using log scale for mapping scalars to colors. Returns 1 is scale == VTK_SCALE_LOG10.
Reimplemented from vtkScalarsToColors.
Definition at line 277 of file vtkLookupTable.h.
virtual vtkIdType vtkLookupTable::GetNumberOfAvailableColors | ( | ) | [virtual] |
Get the number of available colors for mapping to.
Reimplemented from vtkScalarsToColors.
virtual void vtkLookupTable::GetIndexedColor | ( | vtkIdType | idx, |
double | rgba[4] | ||
) | [virtual] |
Return a color given an integer index. This is used to assign colors to annotations (given an offset into the list of annotations). If the table is empty or idx < 0, then NanColor is returned.
Reimplemented from vtkScalarsToColors.
vtkIdType vtkLookupTable::NumberOfColors [protected] |
Definition at line 295 of file vtkLookupTable.h.
vtkUnsignedCharArray* vtkLookupTable::Table [protected] |
Definition at line 296 of file vtkLookupTable.h.
double vtkLookupTable::TableRange[2] [protected] |
Definition at line 297 of file vtkLookupTable.h.
double vtkLookupTable::HueRange[2] [protected] |
Definition at line 298 of file vtkLookupTable.h.
double vtkLookupTable::SaturationRange[2] [protected] |
Definition at line 299 of file vtkLookupTable.h.
double vtkLookupTable::ValueRange[2] [protected] |
Definition at line 300 of file vtkLookupTable.h.
double vtkLookupTable::AlphaRange[2] [protected] |
Definition at line 301 of file vtkLookupTable.h.
double vtkLookupTable::NanColor[4] [protected] |
Definition at line 302 of file vtkLookupTable.h.
int vtkLookupTable::Scale [protected] |
Definition at line 303 of file vtkLookupTable.h.
int vtkLookupTable::Ramp [protected] |
Definition at line 304 of file vtkLookupTable.h.
vtkTimeStamp vtkLookupTable::InsertTime [protected] |
Definition at line 305 of file vtkLookupTable.h.
vtkTimeStamp vtkLookupTable::BuildTime [protected] |
Definition at line 306 of file vtkLookupTable.h.
double vtkLookupTable::RGBA[4] [protected] |
Definition at line 307 of file vtkLookupTable.h.
unsigned char vtkLookupTable::NanColorChar[4] [protected] |
Definition at line 308 of file vtkLookupTable.h.
int vtkLookupTable::OpaqueFlag [protected] |
Definition at line 310 of file vtkLookupTable.h.
vtkTimeStamp vtkLookupTable::OpaqueFlagBuildTime [protected] |
Definition at line 311 of file vtkLookupTable.h.