Public Types | |
typedef std::vector < bool > | ValueList |
Public Member Functions | |
Switch () | |
Switch (const Switch &, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
Copy constructor using CopyOp to manage deep vs shallow copy. | |
META_Node (osg, Switch) | |
virtual void | traverse (NodeVisitor &nv) |
Traverse downwards : calls children's accept method with NodeVisitor. | |
void | setNewChildDefaultValue (bool value) |
bool | getNewChildDefaultValue () const |
virtual bool | addChild (Node *child) |
Add Node to Group. | |
virtual bool | addChild (Node *child, bool value) |
virtual bool | insertChild (unsigned int index, Node *child) |
Insert Node to Group at specific location. | |
virtual bool | insertChild (unsigned int index, Node *child, bool value) |
virtual bool | removeChildren (unsigned int pos, unsigned int numChildrenToRemove) |
Remove children from Group. | |
void | setValue (unsigned int pos, bool value) |
bool | getValue (unsigned int pos) const |
void | setChildValue (const Node *child, bool value) |
bool | getChildValue (const Node *child) const |
bool | setAllChildrenOff () |
Set all the children off (false), and set the new default child value to off (false). | |
bool | setAllChildrenOn () |
Set all the children on (true), and set the new default child value to on (true). | |
bool | setSingleChildOn (unsigned int pos) |
Set a single child on, switch off all other children. | |
void | setValueList (const ValueList &values) |
const ValueList & | getValueList () const |
virtual BoundingSphere | computeBound () const |
Compute the bounding sphere around Node's geometry or children. | |
Protected Member Functions | |
virtual | ~Switch () |
Protected Attributes | |
bool | _newChildDefaultValue |
ValueList | _values |
Typical uses would be for objects which might need to be rendered differently at different times, for instance a switch could be used to represent the different states of a traffic light.
typedef std::vector<bool> osg::Switch::ValueList |
osg::Switch::Switch | ( | ) |
Copy constructor using CopyOp to manage deep vs shallow copy.
virtual osg::Switch::~Switch | ( | ) | [inline, protected, virtual] |
osg::Switch::META_Node | ( | osg | , | |
Switch | ||||
) |
virtual void osg::Switch::traverse | ( | NodeVisitor & | ) | [virtual] |
Traverse downwards : calls children's accept method with NodeVisitor.
Reimplemented from osg::Group.
void osg::Switch::setNewChildDefaultValue | ( | bool | value | ) | [inline] |
bool osg::Switch::getNewChildDefaultValue | ( | ) | const [inline] |
virtual bool osg::Switch::addChild | ( | Node * | child | ) | [virtual] |
If node is not NULL and is not contained in Group then increment its reference count, add it to the child list and dirty the bounding sphere to force it to recompute on next getBound() and return true for success. Otherwise return false. Scene nodes can't be added as child nodes.
Reimplemented from osg::Group.
virtual bool osg::Switch::addChild | ( | Node * | child, | |
bool | value | |||
) | [virtual] |
virtual bool osg::Switch::insertChild | ( | unsigned int | index, | |
Node * | child | |||
) | [virtual] |
Insert Node to Group at specific location.
The new child node is inserted into the child list before the node at the specified index. No nodes are removed from the group with this operation.
Reimplemented from osg::Group.
virtual bool osg::Switch::insertChild | ( | unsigned int | index, | |
Node * | child, | |||
bool | value | |||
) | [virtual] |
virtual bool osg::Switch::removeChildren | ( | unsigned int | pos, | |
unsigned int | numChildrenToRemove | |||
) | [virtual] |
Remove children from Group.
Note, must be override by subclasses of Group which add per child attributes.
Reimplemented from osg::Group.
void osg::Switch::setValue | ( | unsigned int | pos, | |
bool | value | |||
) |
bool osg::Switch::getValue | ( | unsigned int | pos | ) | const |
void osg::Switch::setChildValue | ( | const Node * | child, | |
bool | value | |||
) |
bool osg::Switch::getChildValue | ( | const Node * | child | ) | const |
bool osg::Switch::setAllChildrenOff | ( | ) |
Set all the children off (false), and set the new default child value to off (false).
bool osg::Switch::setAllChildrenOn | ( | ) |
Set all the children on (true), and set the new default child value to on (true).
bool osg::Switch::setSingleChildOn | ( | unsigned int | pos | ) |
Set a single child on, switch off all other children.
void osg::Switch::setValueList | ( | const ValueList & | values | ) | [inline] |
const ValueList& osg::Switch::getValueList | ( | ) | const [inline] |
virtual BoundingSphere osg::Switch::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::Group.
bool osg::Switch::_newChildDefaultValue [protected] |
ValueList osg::Switch::_values [protected] |