Group node that creates a regular IxJxK array of copies of its children. More...
#include <Inventor/nodes/SoArray.h>
Public Types | |
enum | Origin { FIRST, CENTER, LAST } |
Public Member Functions | |
virtual SoType | getTypeId () const |
SoArray () | |
virtual SbBool | affectsState () const |
Static Public Member Functions | |
static SoType | getClassTypeId () |
Public Attributes | |
SoSFShort | numElements1 |
SoSFShort | numElements2 |
SoSFShort | numElements3 |
SoSFVec3f | separation1 |
SoSFVec3f | separation2 |
SoSFVec3f | separation3 |
SoSFEnum | origin |
Group node that creates a regular IxJxK array of copies of its children.
This group node traverses its children, in order, several times, creating a regular 3D array of copies of them. The number of copies in each of the three directions is specified by fields, as are the vectors used to separate the copies in each of the three dimensions.
For example, an SoArray node can be used to create a 2x3x4 array of copies of its children, where the separation vectors between adjacent copies in the three array dimensions are (1,2,3), (-4,-5,-6), and (7,8,9), respectively. The base point of the array can be set to one of several values, as described in the origin field.
Copies are traversed so that the first dimension cycles most quickly, followed by the second, and then the third. This order is important because SoArray sets the current switch value to N before traversing the children for the Nth time (for use with inherited switch values - see SoSwitch).
numElements1 | 1 |
numElements2 | 1 |
numElements3 | 1 |
separation1 | 1 0 0 |
separation2 | 0 1 0 |
separation3 | 0 0 1 |
origin | FIRST |
SoSearchAction
Traverses all children once, setting the inherited switch value to SO_SWITCH_ALL first.
enum SoArray::Origin |
Array origin.
SoArray::SoArray | ( | ) |
Creates an array node with default settings.
virtual SbBool SoArray::affectsState | ( | ) | const [virtual] |
static SoType SoArray::getClassTypeId | ( | ) | [static] |
Returns the type identifier for this class.
Reimplemented from SoGroup.
virtual SoType SoArray::getTypeId | ( | ) | const [virtual] |
Returns the type identifier for this specific instance.
Reimplemented from SoGroup.
Number of elements in the 1st dimension.
Number of elements in the 2nd dimension.
Number of elements in the 3rd dimension.
Defines the base point from which copies are distributed.
Use enum Origin. Default is FIRST.
Separation vector in the 1st dimension.
Separation vector in the 2nd dimension.
Separation vector in the 3rd dimension.