osgParticle::Interpolator Class Reference

An abstract base class for implementing interpolators. More...

Inheritance diagram for osgParticle::Interpolator:

osg::Object osg::Referenced osgParticle::LinearInterpolator List of all members.

Public Member Functions

 Interpolator ()
 Interpolator (const Interpolator &copy, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
virtual const char * libraryName () const
virtual const char * className () const
virtual bool isSameKindAs (const osg::Object *obj) const
virtual float interpolate (float t, float y1, float y2) const =0
 Interpolate between floats. Must be overriden in descendant classes.
virtual osg::Vec2 interpolate (float t, const osg::Vec2 &y1, const osg::Vec2 &y2) const
 Interpolate between 2-dimensional vectors. Default behavior is to interpolate each component separately.
virtual osg::Vec3 interpolate (float t, const osg::Vec3 &y1, const osg::Vec3 &y2) const
 Interpolate between 3-dimensional vectors. Default behavior is to interpolate each component separately.
virtual osg::Vec4 interpolate (float t, const osg::Vec4 &y1, const osg::Vec4 &y2) const
 Interpolate between 4-dimensional vectors. Default behavior is to interpolate each component separately.
template<class ValueType>
ValueType interpolate (float t, const range< ValueType > &r) const

Protected Member Functions

virtual ~Interpolator ()

Detailed Description

An abstract base class for implementing interpolators.


Constructor & Destructor Documentation

osgParticle::Interpolator::Interpolator (  )  [inline]

osgParticle::Interpolator::Interpolator ( const Interpolator copy,
const osg::CopyOp copyop = osg::CopyOp::SHALLOW_COPY 
) [inline]

virtual osgParticle::Interpolator::~Interpolator (  )  [inline, protected, virtual]


Member Function Documentation

virtual const char* osgParticle::Interpolator::className (  )  const [inline, virtual]

return the name of the object's class type. Must be defined by derived classes.

Implements osg::Object.

template<class ValueType>
ValueType osgParticle::Interpolator::interpolate ( float  t,
const range< ValueType > &  r 
) const [inline]

virtual osg::Vec4 osgParticle::Interpolator::interpolate ( float  t,
const osg::Vec4 y1,
const osg::Vec4 y2 
) const [inline, virtual]

Interpolate between 4-dimensional vectors. Default behavior is to interpolate each component separately.

virtual osg::Vec3 osgParticle::Interpolator::interpolate ( float  t,
const osg::Vec3 y1,
const osg::Vec3 y2 
) const [inline, virtual]

Interpolate between 3-dimensional vectors. Default behavior is to interpolate each component separately.

virtual osg::Vec2 osgParticle::Interpolator::interpolate ( float  t,
const osg::Vec2 y1,
const osg::Vec2 y2 
) const [inline, virtual]

Interpolate between 2-dimensional vectors. Default behavior is to interpolate each component separately.

virtual float osgParticle::Interpolator::interpolate ( float  t,
float  y1,
float  y2 
) const [pure virtual]

Interpolate between floats. Must be overriden in descendant classes.

Implemented in osgParticle::LinearInterpolator.

virtual bool osgParticle::Interpolator::isSameKindAs ( const osg::Object obj  )  const [inline, virtual]

Reimplemented from osg::Object.

virtual const char* osgParticle::Interpolator::libraryName (  )  const [inline, virtual]

return the name of the object's library. Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name.

Implements osg::Object.


The documentation for this class was generated from the following file:
Generated on Sun Oct 1 13:17:12 2006 for openscenegraph by  doxygen 1.4.7