Class to define non linear data mapping. More...
#include <MeshViz/graph/PbNonLinearDataMapping2.h>
Public Types | |
enum | Type { NON_LINEAR_PER_LEVEL, LINEAR_PER_LEVEL } |
Public Member Functions | |
PbNonLinearDataMapping2 () | |
PbNonLinearDataMapping2 (const PbNonLinearDataMapping2 &nonLinearDataMap2) | |
~PbNonLinearDataMapping2 () | |
PbNonLinearDataMapping2 & | operator= (const PbNonLinearDataMapping2 &nonLinearDataMap2) |
void | setValues (Type type, int numValues, const float *v, const SbColor *c) |
void | setValues (Type type, int numValues, const float *v, const SbColor *c, const float *t) |
void | setValues (Type type, int numValues, const float *v, const PbHLSColor *c) |
void | setValues (Type type, int numValues, const float *v, const PbHLSColor *c, const float *t) |
const float * | getValuesList (int &numValues) const |
const SbColor * | getRGBColorsList (int &numColors) const |
const PbHLSColor * | getHLSColorsList (int &numColors) |
const float * | getTransparencyList (int &num_transparency) const |
Type | getType () const |
This object defines a non linear association between colors, transparencies and floating-point values. In other words, this association is defined by 2 functions F(c,v) and F(c,t):
F(c,v)(V) = C (with c being a color and v being a value). F(t,v)(V) = T (with t being a transparency and v being a value).
There are two ways to express F(c,v)(V):
There are as well, two ways to express F(t,v)(V)
PbNonLinearDataMapping2::PbNonLinearDataMapping2 | ( | ) |
Default constructor.
PbNonLinearDataMapping2::PbNonLinearDataMapping2 | ( | const PbNonLinearDataMapping2 & | nonLinearDataMap2 | ) |
Copy constructor.
PbNonLinearDataMapping2::~PbNonLinearDataMapping2 | ( | ) |
Destructor.
const PbHLSColor* PbNonLinearDataMapping2::getHLSColorsList | ( | int & | numColors | ) |
Gets the list of HLS colors defining the current non linear data mapping.
const SbColor* PbNonLinearDataMapping2::getRGBColorsList | ( | int & | numColors | ) | const [inline] |
Gets the list of RGB colors defining the current non linear data mapping.
const float* PbNonLinearDataMapping2::getTransparencyList | ( | int & | num_transparency | ) | const [inline] |
Gets the list of transparencies defining the current non linear data mapping.
Type PbNonLinearDataMapping2::getType | ( | ) | const [inline] |
Returns the data mapping type.
const float* PbNonLinearDataMapping2::getValuesList | ( | int & | numValues | ) | const [inline] |
Gets the list of values defining the current non linear data mapping.
PbNonLinearDataMapping2& PbNonLinearDataMapping2::operator= | ( | const PbNonLinearDataMapping2 & | nonLinearDataMap2 | ) |
Assignment operator.
Reimplemented from PbDataMapping.
void PbNonLinearDataMapping2::setValues | ( | Type | type, | |
int | numValues, | |||
const float * | v, | |||
const PbHLSColor * | c, | |||
const float * | t | |||
) |
Sets non linear function for data mapping, with HLS color and transparencies.
If type = NON_LINEAR_PER_LEVEL, the number of colors and transparencies must be equal to numValues + 1, otherwise it must be equal to numValues.
void PbNonLinearDataMapping2::setValues | ( | Type | type, | |
int | numValues, | |||
const float * | v, | |||
const PbHLSColor * | c | |||
) |
Sets non linear function for data mapping, with HLS color.
If type = NON_LINEAR_PER_LEVEL, the number of colors must be equal to numValues + 1, otherwise it must be equal to numValues.
void PbNonLinearDataMapping2::setValues | ( | Type | type, | |
int | numValues, | |||
const float * | v, | |||
const SbColor * | c, | |||
const float * | t | |||
) |
Sets non linear function for data mapping, with RGB color and transparencies.
If type = NON_LINEAR_PER_LEVEL, the number of colors and transparencies must be equal to numValues + 1, otherwise it must be equal to numValues.
void PbNonLinearDataMapping2::setValues | ( | Type | type, | |
int | numValues, | |||
const float * | v, | |||
const SbColor * | c | |||
) |
Sets non linear function for data mapping, with RGB color.
If type = NON_LINEAR_PER_LEVEL, the number of colors must be equal to numValues + 1, otherwise it must be equal to numValues.