A ComplexShape node for Inventor/Coin that defines an arrow or pointer. More...
#include <SoArrow.h>
Public Types | |
enum | Part { NONE = 0x00, BEGIN = 0x01, END = 0x02, BOTH = 0x03 } |
Bitflags controlling which arrowheads are visible (NONE, BEGIN, END, or BOTH). More... | |
Public Member Functions | |
void | addPart (Part part) |
SbBool | hasPart (Part part) const |
void | removePart (Part part) |
SoArrow () | |
Static Public Member Functions | |
static void | initClass () |
Public Attributes | |
SoSFBitMask | arrowHeads |
Defines which arrow heads should be shown. | |
SoSFFloat | coneHeight |
Height of the arrow head. | |
SoSFFloat | coneRadius |
Radius of the arrow head. | |
SoSFFloat | cylRadius |
Width of arrow shaft. | |
SoSFFloat | height |
Height of the entire arrow. | |
Private Member Functions | |
void | generateChildren () |
SO_NODE_HEADER (SoArrow) | |
virtual | ~SoArrow () |
Private Attributes | |
SoSwitch * | beginSw |
Pointer to switch node that controls the visibility of an arrowhead. | |
SoCalculator * | calEngine |
A pointer to the calculator engine that computes the cylinder height. | |
SoSwitch * | endSw |
A ComplexShape node for Inventor/Coin that defines an arrow or pointer.
This class combines a cylinder with 0,1, or 2 cones that serve as arrow heads. This makes it easy to add arrows to an Inventor scene without defining the pieces separately. The lengths and radii of the various pieces can all be customized.
Definition at line 43 of file SoArrow.h.
enum SoArrow::Part |
SoArrow::SoArrow | ( | ) |
Sets up default field values.
Definition at line 63 of file SoArrow.cpp.
SoArrow::~SoArrow | ( | ) | [private, virtual] |
Deletes the child nodes that make up this node.
Definition at line 91 of file SoArrow.cpp.
void SoArrow::addPart | ( | Part | part | ) |
Turns on a part of the arrow.
Definition at line 100 of file SoArrow.cpp.
void SoArrow::generateChildren | ( | ) | [private, virtual] |
This is called once to generate the child nodes that make up this complex shape. The child nodes consist of a cylinder, transforms, and cones. A calculator node caluculates the height of the cylinder from the total height field and the height of any present arrowheads.
Reimplemented from SoComplexShape.
Definition at line 169 of file SoArrow.cpp.
SbBool SoArrow::hasPart | ( | Part | part | ) | const |
Returns whether a given part is on or off.
Definition at line 156 of file SoArrow.cpp.
void SoArrow::initClass | ( | ) | [static] |
Initializes the SoArrow class. This is a one-time thing that is done after database initialization and before any instance of this class is constructed.
Reimplemented from SoComplexShape.
Definition at line 54 of file SoArrow.cpp.
void SoArrow::removePart | ( | Part | part | ) |
Turns off a part of the arrow.
Definition at line 128 of file SoArrow.cpp.
SoArrow::SO_NODE_HEADER | ( | SoArrow | ) | [private] |
SoSFBitMask SoArrow::arrowHeads |
SoSwitch* SoArrow::beginSw [private] |
SoCalculator* SoArrow::calEngine [private] |
SoSFFloat SoArrow::coneHeight |
SoSFFloat SoArrow::coneRadius |
SoSFFloat SoArrow::cylRadius |
SoSwitch * SoArrow::endSw [private] |
SoSFFloat SoArrow::height |