|Specialize the SFMatrix4f to update the matrix from the fields in the Billboard node. More...|
Public Member Functions
|Billboard (Inst< MFChild > _addChildren=0, Inst< MFChild > _removeChildren=0, Inst< MFChild > _children=0, Inst< SFNode > _metadata=0, Inst< SFBound > _bound=0, Inst< SFVec3f > _bboxCenter=0, Inst< SFVec3f > _bboxSize=0, Inst< SFTransformedBound > _transformedBound=0, Inst< SFMatrix4f > _matrix=0, Inst< SFVec3f > _axisOfRotation=0)|
|virtual void||traverseSG (TraverseInfo &ti)|
|Set the matrix field in order to set the matrix field to perform the rotation required by the Billboard. |
|auto_ptr< SFVec3f >||axisOfRotation|
|The axisOfRotation field specifies which axis to use to perform the rotation. |
Static Public Attributes
|The H3DNodeDatabase for this node. |
The Billboard node has children which may be other children nodes.
The axisOfRotation field specifies which axis to use to perform the rotation. This axis is defined in the local coordinate system. When the axisOfRotation field is not (0, 0, 0), the following steps describe how to rotate the billboard to face the viewer:
Multiple instances of Billboard nodes (DEF/USE) operate as expected: each instance rotates in its unique coordinate system to face the viewer.
The bboxCenter and bboxSize fields specify a bounding box that encloses the Billboard node's children. This is a hint that may be used for optimization purposes. The results are undefined if the specified bounding box is smaller than the actual bounding box of the children at any time. A default bboxSize value, (-1, -1, -1), implies that the bounding box is not specified and if needed shall be calculated by the browser.
|void Billboard::traverseSG||(||TraverseInfo &||ti||)||
Set the matrix field in order to set the matrix field to perform the rotation required by the Billboard.
|ti||The TraverseInfo object containing information about the traversal.|
Reimplemented from H3D::MatrixTransform.
References H3D::X3DViewpointNode::accForwardMatrix, H3D::TraverseInfo::getAccInverseMatrix(), H3D::X3DViewpointNode::getActive(), H3D::X3DViewpointNode::totalOrientation, and H3D::X3DViewpointNode::totalPosition.
The axisOfRotation field specifies which axis to use to perform the rotation.
This axis is defined in the local coordinate system. When the axisOfRotation field is set to (0, 0, 0), the special case of viewer-alignment is indicated.
Access type: inputOutput
Default value: Vec3f( 0, 1, 0 )
Referenced by Billboard().