Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound 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 Methods

 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 T_> T_ interpolate (float t, const range< T_ > &r) const

Protected Methods

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 T_>
T_ osgParticle::Interpolator::interpolate float    t,
const range< T_ > &    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 the is that the namspace 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 Wed Sep 18 13:55:51 2002 for the Open Scene Graph by doxygen 1.2.16.