37 #ifndef vtkDiscretizableColorTransferFunction_h
38 #define vtkDiscretizableColorTransferFunction_h
41 #include "vtkRenderingCoreModule.h"
45 VTK_ABI_NAMESPACE_BEGIN
78 this->SetIndexedColor(index, rgb[0], rgb[1], rgb[2]);
82 this->SetIndexedColor(index, rgba[0], rgba[1], rgba[2], rgba[3]);
84 void SetIndexedColor(
unsigned int index,
double r,
double g,
double b,
double a = 1.0);
106 void SetNumberOfIndexedColors(
unsigned int count);
107 unsigned int GetNumberOfIndexedColors();
116 void Build()
override;
135 virtual void SetUseLogScale(
vtkTypeBool useLogScale);
153 const unsigned char*
MapValue(
double v)
override;
159 void GetColor(
double v,
double rgb[3])
override;
173 int numberOfComponents,
int vectorComponent,
int outputFormat)
override;
192 void SetNanColor(
double r,
double g,
double b)
override;
226 vtkSetMacro(EnableOpacityMapping,
bool);
227 vtkGetMacro(EnableOpacityMapping,
bool);
228 vtkBooleanMacro(EnableOpacityMapping,
bool);
271 template <
typename T,
typename VectorGetter>
272 void MapVectorToOpacity(VectorGetter getter, T* scalars,
int component,
int numberOfComponents,
273 vtkIdType numberOfTuples,
unsigned char* colors);
275 template <
template <
class>
class VectorGetter>
276 void AllTypesMapVectorToOpacity(
int scalarType,
void* scalarsPtr,
int component,
277 int numberOfComponents,
vtkIdType numberOfTuples,
unsigned char* colors);
280 vtkInternals* Internals;
283 VTK_ABI_NAMESPACE_END
void MapScalarsThroughTable(vtkAbstractArray *input, unsigned char *output, int numberOfTuples, int numberOfComponents, int vectorComponent, int outputFormat) override
Map a set of scalars through the lookup table.
vtkTypeBool UseLogScale
Flag indicating whether log scaling is to be used.
vtkTypeBool Discretize
Flag indicating whether transfer function is discretized.
virtual vtkTypeBool IsOpaque()
Return true if all of the values defining the mapping have an opacity equal to 1. ...
virtual void SetNanOpacity(double)
Get/Set the opacity to use when a NaN (not a number) is encountered.
Defines a 1D piecewise function.
vtkTypeUInt32 vtkMTimeType
void PrintSelf(ostream &os, vtkIndent indent) override
Print method for vtkColorTransferFunction.
Abstract superclass for all arrays.
void GetIndexedColor(vtkIdType idx, double rgba[4]) override
Return a color given an integer index.
record modification and/or execution time
static vtkColorTransferFunction * New()
map scalar values into colors via a lookup table
virtual void SetAlpha(double alpha)
Specify an additional opacity (alpha) value to blend with.
vtkIdType NumberOfValues
Number of values to use in discretized color map.
virtual void SetNanColor(double, double, double)
Set the RGB color to use when a NaN (not a number) is encountered.
vtkTimeStamp LookupTableUpdateTime
virtual double GetOpacity(double v)
Map one value through the lookup table and return the alpha value (the opacity) as a double between 0...
#define VTK_MARSHALMANUAL
double * GetColor(double x)
Returns an RGB color for the specified scalar value.
bool EnableOpacityMapping
a simple class to control print indentation
abstract superclass for arrays of numeric data
virtual vtkMTimeType GetMTime()
Return this object's modified time.
void SetIndexedColorRGBA(unsigned int index, const double rgba[4])
dynamic, self-adjusting array of unsigned char
vtkIdType GetNumberOfAvailableColors() override
Get the number of available colors for mapping to.
a combination of vtkColorTransferFunction and vtkLookupTable.
Defines a transfer function for mapping a property to an RGB color value.
void SetNanColor(const double rgb[3]) override
Set the color to use when a NaN (not a number) is encountered.
void SetIndexedColorRGB(unsigned int index, const double rgb[3])
Add colors to use when IndexedLookup is true.
vtkSmartPointer< vtkPiecewiseFunction > ScalarOpacityFunction
virtual void Build()
Perform any processing required (if any) before processing scalars.
vtkTypeBool UsingLogScale() override
This should return 1 if the subclass is using log scale for mapping scalars to colors.
vtkLookupTable * LookupTable
Internal lookup table used for some aspects of the color mapping.
const unsigned char * MapValue(double v) override
Map one value through the lookup table.
void MapScalarsThroughTable(vtkDataArray *scalars, unsigned char *output, int outputFormat)
Map a set of scalars through the lookup table in a single operation.