SoBillboard Class Reference
[Groups]

VSG extension Grouping node that modifies its coordinate system so that its local Z-axis always points at the viewer. More...

#include <Inventor/nodes/SoBillboard.h>

Inheritance diagram for SoBillboard:
SoSeparator SoGroup SoNode SoFieldContainer SoBase SoRefCounter SoTypedObject

List of all members.

Public Member Functions

virtual SoType getTypeId () const
 SoBillboard ()
 SoBillboard (int nChildren)

Static Public Member Functions

static SoType getClassTypeId ()

Public Attributes

SoSFVec3f axisOfRotation
SoSFBool useSphereBBox

Detailed Description

VSG extension Grouping node that modifies its coordinate system so that its local Z-axis always points at the viewer.

The SoBillboard node is a grouping node which modifies its coordinate system so that the billboard node's local Z-axis turns to point at the viewer. The children of an SoBillboard node may include other grouping nodes as well as shape nodes.

Performance:

Export limitations:

The axisOfRotation field specifies which axis to use to perform the rotation. This axis is defined in the local coordinates of the SoBillboard node. The default (0,1,0) is useful for objects such as images of trees and lamps positioned on a ground plane. But when an object is oriented at an angle, for example, on the incline of a mountain, then the axisOfRotation may also need to be oriented at a similar angle.

A special case of billboarding is screen-alignment -- the object rotates to always stay aligned with the viewer even when the viewer elevates, pitches and rolls. This special case is distinguished by setting the axisOfRotation to (0, 0, 0).

To rotate the SoBillboard to face the viewer, determine the line between the SoBillboard's origin and the viewer's position; call this the billboard-to-viewer line. The axisOfRotation and the billboard-to-viewer line define a plane. The local z-axis of the SoBillboard is then rotated into that plane, pivoting around the axisOfRotation.

If the axisOfRotation and the billboard-to-viewer line are coincident (the same line), then the plane cannot be established, and the rotation results of the SoBillboard are undefined. For example, if the axisOfRotation is set to (0,1,0) (Y-axis) and the viewer flies over the SoBillboard and peers directly down the Y-axis the results are undefined .

Multiple instances of SoBillboards (DEF/USE) operate as expected - each instance rotates in its unique coordinate system to face the viewer.

FILE FORMAT/DEFAULT


Open Inventor Toolkit reference manual, generated on 4 Sep 2023
Copyright © Thermo Fisher Scientific All rights reserved.
https://www.openinventor.com/