openscenegraph
osg::TransferFunction1D Class Reference

#include <TransferFunction>

Inheritance diagram for osg::TransferFunction1D:
osg::TransferFunction osg::Object osg::Referenced

Public Types

typedef std::map< float, osg::Vec4ColorMap
Public Types inherited from osg::Object
enum  DataVariance { DYNAMIC , STATIC , UNSPECIFIED }

Public Member Functions

 TransferFunction1D ()
 TransferFunction1D (const TransferFunction1D &tf, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
 META_Object (osg, TransferFunction1D) float getMinimum() const
float getMaximum () const
void allocate (unsigned int numImageCells)
void clear (const osg::Vec4 &color=osg::Vec4(1.0f, 1.0f, 1.0f, 1.0f))
osg::Vec4 getPixelValue (unsigned int i) const
unsigned int getNumberImageCells () const
void setColor (float v, const osg::Vec4 &color, bool updateImage=true)
osg::Vec4 getColor (float v) const
void setColorMap (const ColorMap &vcm)
ColorMapgetColorMap ()
const ColorMapgetColorMap () const
void assign (const ColorMap &vcm)
void updateImage ()
Public Member Functions inherited from osg::TransferFunction
 TransferFunction ()
 TransferFunction (const TransferFunction &tf, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
 META_Object (osg, TransferFunction) osg
const osg::ImagegetImage () const
Public Member Functions inherited from osg::Object
 Object ()
 Object (bool threadSafeRefUnref)
 Object (const Object &, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
virtual ObjectcloneType () const =0
virtual Objectclone (const CopyOp &) const =0
virtual bool isSameKindAs (const Object *) const
virtual const char * libraryName () const =0
virtual const char * className () const =0
std::string getCompoundClassName () const
virtual NodeasNode ()
virtual const NodeasNode () const
virtual NodeVisitorasNodeVisitor ()
virtual const NodeVisitorasNodeVisitor () const
virtual StateSetasStateSet ()
virtual const StateSetasStateSet () const
virtual StateAttributeasStateAttribute ()
virtual const StateAttributeasStateAttribute () const
virtual UniformasUniform ()
virtual const UniformasUniform () const
virtual CameraasCamera ()
virtual const CameraasCamera () const
virtual DrawableasDrawable ()
virtual const DrawableasDrawable () const
virtual CallbackasCallback ()
virtual const CallbackasCallback () const
virtual CallbackObjectasCallbackObject ()
virtual const CallbackObjectasCallbackObject () const
virtual UserDataContainerasUserDataContainer ()
virtual const UserDataContainerasUserDataContainer () const
virtual ValueObjectasValueObject ()
virtual const ValueObjectasValueObject () const
virtual ImageasImage ()
virtual const ImageasImage () const
virtual void setThreadSafeRefUnref (bool threadSafe)
virtual void setName (const std::string &name)
void setName (const char *name)
const std::string & getName () const
void setDataVariance (DataVariance dv)
DataVariance getDataVariance () const
virtual void computeDataVariance ()
void setUserDataContainer (osg::UserDataContainer *udc)
template<class T>
void setUserDataContainer (const ref_ptr< T > &udc)
osg::UserDataContainergetUserDataContainer ()
const osg::UserDataContainergetUserDataContainer () const
osg::UserDataContainergetOrCreateUserDataContainer ()
virtual void setUserData (Referenced *obj)
template<class T>
void setUserData (const ref_ptr< T > &ud)
virtual ReferencedgetUserData ()
virtual const ReferencedgetUserData () const
template<typename T>
bool getUserValue (const std::string &name, T &value) const
template<typename T>
void setUserValue (const std::string &name, const T &value)
virtual void resizeGLObjectBuffers (unsigned int)
virtual void releaseGLObjects (osg::State *=0) const
template<typename T>
BoolValueObject UCharValueObject UShortValueObject UIntValueObject DoubleValueObject Vec3fValueObject Vec2dValueObject Vec4dValueObject PlaneValueObject MatrixdValueObject BoundingBoxdValueObject BoundingSpheredValueObject bool getUserValue (const std::string &name, T &value) const
Public Member Functions inherited from osg::Referenced
 Referenced ()
 Referenced (bool threadSafeRefUnref)
 Referenced (const Referenced &)
Referencedoperator= (const Referenced &)
bool getThreadSafeRefUnref () const
OpenThreads::MutexgetRefMutex () const
int ref () const
int unref () const
int unref_nodelete () const
int referenceCount () const
ObserverSetgetObserverSet () const
ObserverSetgetOrCreateObserverSet () const
void addObserver (Observer *observer) const
void removeObserver (Observer *observer) const

Protected Member Functions

void assignToImage (float lower_v, const osg::Vec4 &lower_c, float upper_v, const osg::Vec4 &upper_c)
Protected Member Functions inherited from osg::TransferFunction
virtual ~TransferFunction ()
Protected Member Functions inherited from osg::Object
virtual ~Object ()
Protected Member Functions inherited from osg::Referenced
virtual ~Referenced ()
void signalObserversAndDelete (bool signalDelete, bool doDelete) const
void deleteUsingDeleteHandler () const

Protected Attributes

ColorMap _colorMap
Protected Attributes inherited from osg::TransferFunction
osg::ref_ptr< osg::Image_image
Protected Attributes inherited from osg::Object
std::string _name
DataVariance _dataVariance
osg::UserDataContainer_userDataContainer
Protected Attributes inherited from osg::Referenced
OpenThreads::AtomicPtr _observerSet
OpenThreads::Atomic _refCount

Additional Inherited Members

Static Public Member Functions inherited from osg::Referenced
static OpenThreads::MutexgetGlobalReferencedMutex ()
static void setDeleteHandler (DeleteHandler *handler)
static DeleteHandlergetDeleteHandler ()

Detailed Description

1D variant of TransferFunction.

Member Typedef Documentation

◆ ColorMap

typedef std::map<float, osg::Vec4> osg::TransferFunction1D::ColorMap

Constructor & Destructor Documentation

◆ TransferFunction1D() [1/2]

osg::TransferFunction1D::TransferFunction1D ( )

Referenced by META_Object(), and TransferFunction1D().

◆ TransferFunction1D() [2/2]

osg::TransferFunction1D::TransferFunction1D ( const TransferFunction1D & tf,
const CopyOp & copyop = CopyOp::SHALLOW_COPY )

Copy constructor using CopyOp to manage deep vs shallow copy.

References osg::CopyOp::SHALLOW_COPY, and TransferFunction1D().

Member Function Documentation

◆ allocate()

void osg::TransferFunction1D::allocate ( unsigned int numImageCells)

allocate the osg::Image with specified dimension. The Image tracks the color map, and is used to represent the transfer function when download to GPU.

◆ assign()

void osg::TransferFunction1D::assign ( const ColorMap & vcm)

Assign a color map and automatically update the image to make sure they are in sync.

Referenced by setColorMap().

◆ assignToImage()

void osg::TransferFunction1D::assignToImage ( float lower_v,
const osg::Vec4 & lower_c,
float upper_v,
const osg::Vec4 & upper_c )
protected

◆ clear()

void osg::TransferFunction1D::clear ( const osg::Vec4 & color = osg::Vec4(1.0f, 1.0f, 1.0f, 1.0f))

Clear the whole range to just represent a single color.

◆ getColor()

osg::Vec4 osg::TransferFunction1D::getColor ( float v) const

Get the color for a specified transfer function value, interpolating the value if no exact match is found.

◆ getColorMap() [1/2]

ColorMap & osg::TransferFunction1D::getColorMap ( )
inline

Get the color map that stores the mapping between the transfer function value and the colour it maps to.

References _colorMap.

◆ getColorMap() [2/2]

const ColorMap & osg::TransferFunction1D::getColorMap ( ) const
inline

Get the const color map that stores the mapping between the transfer function value and the colour it maps to.

References _colorMap.

◆ getMaximum()

float osg::TransferFunction1D::getMaximum ( ) const
inline

Get the maximum transfer function value.

References _colorMap.

◆ getNumberImageCells()

unsigned int osg::TransferFunction1D::getNumberImageCells ( ) const
inline

Get the number of image cells that are assigned to the represent the transfer function when download to the GPU.

References osg::TransferFunction::_image.

◆ getPixelValue()

osg::Vec4 osg::TransferFunction1D::getPixelValue ( unsigned int i) const
inline

Get pixel value from the image.

References osg::TransferFunction::_image.

◆ META_Object()

osg::TransferFunction1D::META_Object ( osg ,
TransferFunction1D  ) const
inline

Get the minimum transfer function value.

References _colorMap, and TransferFunction1D().

◆ setColor()

void osg::TransferFunction1D::setColor ( float v,
const osg::Vec4 & color,
bool updateImage = true )

Set the color for a specified transfer function value. updateImage defaults to true, and tells the setColor function to update the associate osg::Image that tracks the color map. Pass in false as the updateImage parameter if you are setting up many values at once to avoid recomputation of the image data, then once all setColor calls are made explicitly call updateImage() to bring the osg::Image back into sync with the color map.

References updateImage().

◆ setColorMap()

void osg::TransferFunction1D::setColorMap ( const ColorMap & vcm)
inline

set the color map and automatically update the image to make sure they are in sync.

References assign().

◆ updateImage()

void osg::TransferFunction1D::updateImage ( )

Manually update the associate osg::Image to represent the colors assigned in the color map.

Referenced by setColor().

Member Data Documentation

◆ _colorMap

ColorMap osg::TransferFunction1D::_colorMap
protected

The documentation for this class was generated from the following file: