Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

osgParticle::Interpolator Class Reference

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

Inheritance diagram for osgParticle::Interpolator:

Inheritance graph
[legend]
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
 return the name of the object's library.

virtual const char * className () const
 return the name of the object's class type.

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]
 

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 at Thu Nov 24 16:25:12 2005 for the OpenSceneGraph by doxygen 1.3.6.