
Public Types | |
| enum | Mode { POINT_ROT_EYE, POINT_ROT_WORLD, AXIAL_ROT } | 
| typedef std::vector < Vec3 >  | PositionList | 
| Type definition for pivot point position list.   | |
Public Member Functions | |
| Billboard () | |
| Billboard (const Billboard &, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
| Copy constructor using CopyOp to manage deep vs shallow copy.   | |
| META_Node (osg, Billboard) | |
| void | setMode (Mode mode) | 
| Set the billboard rotation mode.   | |
| Mode | getMode () const | 
| Get the billboard rotation mode.   | |
| void | setAxis (const Vec3 &axis) | 
| Set the rotation axis for the billboard's child Drawables.   | |
| const Vec3 & | getAxis () const | 
| Get the rotation axis.   | |
| void | setNormal (const Vec3 &normal) | 
| This normal defines child Drawables' front face direction when unrotated.   | |
| const Vec3 & | getNormal () const | 
| Get the front face direction normal.   | |
| void | setPosition (unsigned int i, const Vec3 &pos) | 
| Set the specified child Drawable's position.   | |
| const Vec3 & | getPosition (unsigned int i) const | 
| Get the specified child Drawable's position.   | |
| void | setPositionList (PositionList &pl) | 
| Set the list of pivot point positions.   | |
| PositionList & | getPositionList () | 
| Get the list of pivot point positions.   | |
| const PositionList & | getPositionList () const | 
| Get a const list of pivot point positions.   | |
| virtual bool | addDrawable (Drawable *gset) | 
| Add a Drawable with a default position of Vec3(0,0,0).   | |
| virtual bool | addDrawable (Drawable *gset, const Vec3 &pos) | 
| Add a Drawable with a specified position.   | |
| virtual bool | removeDrawable (Drawable *gset) | 
| Remove a Drawable and its associated position.   | |
| bool | computeMatrix (Matrix &modelview, const Vec3 &eye_local, const Vec3 &pos_local) const | 
| virtual BoundingSphere | computeBound () const | 
| Compute the bounding sphere around Node's geometry or children.   | |
Protected Types | |
| enum | AxisAligned {  AXIAL_ROT_X_AXIS = AXIAL_ROT+1, AXIAL_ROT_Y_AXIS, AXIAL_ROT_Z_AXIS, POINT_ROT_WORLD_Z_AXIS, CACHE_DIRTY }  | 
Protected Member Functions | |
| virtual | ~Billboard () | 
| void | updateCache () | 
Protected Attributes | |
| Mode | _mode | 
| Vec3 | _axis | 
| Vec3 | _normal | 
| Matrix | _rotateNormalToZAxis | 
| PositionList | _positionList | 
| int | _cachedMode | 
| Vec3 | _side | 
Typical uses incllude trees and particle explosions,
| typedef std::vector<Vec3> osg::Billboard::PositionList | 
Type definition for pivot point position list.
| enum osg::Billboard::Mode | 
enum osg::Billboard::AxisAligned [protected]           | 
        
| osg::Billboard::Billboard | ( | ) | 
Copy constructor using CopyOp to manage deep vs shallow copy.
| virtual osg::Billboard::~Billboard | ( | ) |  [protected, virtual] | 
        
| osg::Billboard::META_Node | ( | osg | , | |
| Billboard | ||||
| ) | 
| void osg::Billboard::setMode | ( | Mode | mode | ) | 
Set the billboard rotation mode.
| Mode osg::Billboard::getMode | ( | ) |  const [inline] | 
        
Get the billboard rotation mode.
| void osg::Billboard::setAxis | ( | const Vec3 & | axis | ) | 
Set the rotation axis for the billboard's child Drawables.
Only utlized when mode==AXIAL_ROT.
| const Vec3& osg::Billboard::getAxis | ( | ) |  const [inline] | 
        
Get the rotation axis.
| void osg::Billboard::setNormal | ( | const Vec3 & | normal | ) | 
This normal defines child Drawables' front face direction when unrotated.
| const Vec3& osg::Billboard::getNormal | ( | ) |  const [inline] | 
        
Get the front face direction normal.
| void osg::Billboard::setPosition | ( | unsigned int | i, | |
| const Vec3 & | pos | |||
| ) |  [inline] | 
        
Set the specified child Drawable's position.
| const Vec3& osg::Billboard::getPosition | ( | unsigned int | i | ) |  const [inline] | 
        
Get the specified child Drawable's position.
| void osg::Billboard::setPositionList | ( | PositionList & | pl | ) |  [inline] | 
        
Set the list of pivot point positions.
| PositionList& osg::Billboard::getPositionList | ( | ) |  [inline] | 
        
Get the list of pivot point positions.
| const PositionList& osg::Billboard::getPositionList | ( | ) |  const [inline] | 
        
Get a const list of pivot point positions.
| virtual bool osg::Billboard::addDrawable | ( | Drawable * | gset | ) |  [virtual] | 
        
Add a Drawable with a default position of Vec3(0,0,0).
Call the base-class Geode::addDrawble() to add the given Drawable gset as a child. If Geode::addDrawable() returns true, add the default position to the pivot point position list and return true. Otherwise, return false.
Reimplemented from osg::Geode.
Add a Drawable with a specified position.
Call the base-class Geode::addDrawble() to add the given Drawable gset as a child. If Geode::addDrawable() returns true, add the given position pos to the pivot point position list and return true. Otherwise, return false.
| virtual bool osg::Billboard::removeDrawable | ( | Drawable * | gset | ) |  [virtual] | 
        
Remove a Drawable and its associated position.
If gset is a child, remove it, decrement its reference count, remove its pivot point position. and return true. Otherwise, return false.
Reimplemented from osg::Geode.
| bool osg::Billboard::computeMatrix | ( | Matrix & | modelview, | |
| const Vec3 & | eye_local, | |||
| const Vec3 & | pos_local | |||
| ) | const | 
| virtual BoundingSphere osg::Billboard::computeBound | ( | ) |  const [virtual] | 
        
Compute the bounding sphere around Node's geometry or children.
This method is automatically called by getBound() when the bounding sphere has been marked dirty via dirtyBound().
Reimplemented from osg::Geode.
| void osg::Billboard::updateCache | ( | ) |  [protected] | 
        
Mode osg::Billboard::_mode [protected]           | 
        
Vec3 osg::Billboard::_axis [protected]           | 
        
Vec3 osg::Billboard::_normal [protected]           | 
        
Matrix osg::Billboard::_rotateNormalToZAxis [protected]           | 
        
PositionList osg::Billboard::_positionList [protected]           | 
        
int osg::Billboard::_cachedMode [protected]           | 
        
Vec3 osg::Billboard::_side [protected]           |