23#ifndef _SO_TRANSFER_FUNCTION_
24#define _SO_TRANSFER_FUNCTION_
40#pragma warning( push )
41#pragma warning(disable:4251)
748 virtual void doAction(
SoAction *action );
769 MAP_TO_CENTER = SoConversion::MAP_TO_CENTER,
778 MAP_TO_BORDER = SoConversion::MAP_TO_BORDER
789 typedef float OpacityCorrectionFunction(
float alpha,
void* userData);
794 virtual void notify(SoNotList *list);
800 virtual bool affectsPath()
const;
802 static void initClass();
803 static void exitClass();
805 int getPackedColorMap(
unsigned int * &,
int);
806 static unsigned int getDefaultPackedColor(
unsigned int);
807 enum GLColorMapType {
809 TEX_FRAGMENT_PROGRAM = 2
812 GLColorMapType installColorMap(
SoState*,
int alphaUse);
817 GLColorMapType installColorMap(
SoState*,
int, OpacityCorrectionFunction* f,
void* userData);
824 void applyOpacityCorrection(
unsigned int* allRgba,
size_t numRgba,
825 OpacityCorrectionFunction* f,
void* userData);
830 SbBool isFullyTransparent(int64_t min, int64_t max,
int alphaUse = 0);
837 void getCMBuffer(
int alphaUse,
int nrgba,
unsigned int *rgba );
843 bool isTransparent(
const float min,
const float max,
const float materialTransparency)
const;
859 unsigned int getNumColors()
const;
864 bool isBinary()
const;
869 static void createPreIntegratedTexture(
SoState* state,
SoGroup* placeHolder);
874 size_t getNumComponents()
const;
880 int getTransferFunctionPosInTexture(
int maxTfId);
887 friend class SoVolumeState;
891#pragma warning( pop )
SO_PIMPL_BASE_PUBLIC_DECLARATION(SoImageDataAdapter)
#define SO_NODE_HEADER(className)
Class for smart character strings.
Abstract base class for all actions.
Performs a generic traversal of a scene graph or path.
Renders a scene graph using Open Inventor's Render Engine.
Base class for all group nodes.
Multiple-value field containing any number of floating point values.
Abstract base class for all database nodes.
Abstract base class for picking objects in a scene.
Smart pointer for any class inheriting SoRefCounter.
Field containing an enumerated value.
Field containing a floating-point value.
Field containing a int32_t integer.
<a href="IconLegend.html"><img src="extLDM.gif" alt="Large Data Management" border="0"></a> Describe...
ColorMapType
Available color map type.
SoSFEnum colorMapType
ColorMap type (number of color components).
SoMFFloat actualColorMap
This field contains the actual color map used.
PredefColorMap
Predefined color maps.
@ VOLREN_GREEN
VolRenGreen (opacity ramp).
@ LABEL_256
256 labels (opaque).
@ TEMPERATURE
Temperature (opaque).
@ BLUE_WHITE_RED
Blue white red (opaque).
@ AIRWAY_SURFACES
Airway surfaces.
@ STANDARD
Standard (opaque).
@ INTENSITY
Intensity (opaque).
@ BLUE_RED
Blue red (opaque).
@ PHYSICS
Physics (opaque).
@ VOLREN_RED
VolRenRed (opacity ramp).
SoSFFloat fauxShadingLength
Controls how many color values will be affected by faux shading.
SoMFFloat colorMap
Array of floats in the range [0,1] defining a color map.
SbBool hasTransparency() const
Returns TRUE if the current color map contains alpha values less than 1.
SoSFFloat fauxShadingDarkenThreshold
Opacity threshold for darkening edges.
virtual SbBool loadColormap(const SbString &filename)
Loads a colormap from a file.
SoSFFloat fauxShadingStrength
Controls how much faux shading will darken the color values of the transfer function.
SoSFEnum predefColorMap
Predefined color map to use.
SoSFInt32 shift
Used for rescaling the input data values.
SoSFInt32 offset
Used for rescaling the input data values.
SoSFInt32 minValue
Remaps the defined color map between minValue and maxValue indices.
SoTransferFunction()
Constructor.
SoSFInt32 transferFunctionId
This field allows the use of multiple transfer functions.
SoSFInt32 maxValue
See minValue field.
Writes a scene graph to a file.
void notify(SoNotList *list)