Open Inventor Reference
SoCube Class Reference

Cube shape node. More...

#include <Inventor/nodes/SoCube.h>

Inheritance diagram for SoCube:
SoShape SoNode SoFieldContainer SoBase

List of all members.

Public Member Functions

 SoCube ()
 Creates a cube node with default settings.
virtual void GLRender (SoGLRenderAction *action)
 Implements actions.
virtual void rayPick (SoRayPickAction *action)
 Implements picking along a ray by intersecting the ray with each primitive generated by subclass.

Static Public Member Functions

static void initClass ()
 Initializes base node class.

Public Attributes

Fields
SoSFFloat width
 Size in x dimension.
SoSFFloat height
 Size in y dimension.
SoSFFloat depth
 Size in z dimension.

Protected Member Functions

virtual void generatePrimitives (SoAction *action)
 Generates triangles representing a cube.
virtual void computeBBox (SoAction *action, SbBox3f &box, SbVec3f &center)
 Computes bounding box of cube.
virtual SoDetailcreateTriangleDetail (SoRayPickAction *action, const SoPrimitiveVertex *v1, const SoPrimitiveVertex *v2, const SoPrimitiveVertex *v3, SoPickedPoint *pp)
 Overrides standard method to create an SoCubeDetail instance.
virtual ~SoCube ()

Friends

class SoShape
 SoShape needs to get at the above methods.

Detailed Description

This node represents a cuboid aligned with the coordinate axes. By default, the cube is centered at (0,0,0) and measures 2 units in each dimension, from -1 to +1. The cube is transformed by the current cumulative transformation and is drawn with the current lighting model, drawing style, material, and geometric complexity.

If the current material binding is PER_PART, PER_PART_INDEXED, PER_FACE, or PER_FACE_INDEXED, materials will be bound to the faces of the cube in this order: front, back, left, right, top, and bottom.

Textures are applied individually to each face of the cube; the entire texture goes on each face. On the front, back, right, and left sides of the cube, the texture is applied right side up. On the top, the texture appears right side up when the top of the cube is tilted toward the camera. On the bottom, the texture appears right side up when the top of the cube is tilted away from the camera.

File Format/Default
Cube {
  width 2
  height 2
  depth 2
}
Action Behavior
SoGLRenderAction
Draws cube based on the current coordinates, materials, drawing style, and so on.
SoRayPickAction
Intersects the ray with the cube. The face of the cube that was picked is available from the SoCubeDetail.
SoGetBoundingBoxAction
Computes the bounding box that encloses the cube.
SoCallbackAction
If any triangle callbacks are registered with the action, they will be invoked for each successive triangle that approximates the cube.
See Also
SoCone, SoCubeDetail, SoCylinder, SoSphere

Definition at line 118 of file SoCube.h.


Constructor & Destructor Documentation

SoCube::SoCube ( )
virtual SoCube::~SoCube ( ) [protected, virtual]

Member Function Documentation

virtual void SoCube::computeBBox ( SoAction action,
SbBox3f box,
SbVec3f center 
) [protected, virtual]

Implements SoShape.

virtual SoDetail* SoCube::createTriangleDetail ( SoRayPickAction action,
const SoPrimitiveVertex v1,
const SoPrimitiveVertex v2,
const SoPrimitiveVertex v3,
SoPickedPoint pp 
) [protected, virtual]

Reimplemented from SoShape.

virtual void SoCube::generatePrimitives ( SoAction action) [protected, virtual]

Implements SoShape.

virtual void SoCube::GLRender ( SoGLRenderAction action) [virtual]

Reimplemented from SoShape.

static void SoCube::initClass ( ) [static]

Reimplemented from SoShape.

virtual void SoCube::rayPick ( SoRayPickAction action) [virtual]

May be overridden in subclass.

Reimplemented from SoShape.


Friends And Related Function Documentation

friend class SoShape [friend]

Definition at line 199 of file SoCube.h.


Member Data Documentation

Definition at line 130 of file SoCube.h.

Definition at line 128 of file SoCube.h.

Definition at line 126 of file SoCube.h.


The documentation for this class was generated from the following file: