SoArray man page on IRIX

Man page or keyword search:  
man Server   31559 pages
apropos Keyword Search (all sections)
Output format
IRIX logo
[printable version]



								  SoArray(3IV)

NAME
     SoArray (SoArray) - group node that creates a regular IxJxK array of
     copies of its children

INHERITS FROM
     SoBase > SoFieldContainer > SoNode > SoGroup > SoArray

SYNOPSIS
     #include <Inventor_c/nodes/SoArray.h>

     enum SoArrayOrigin {
	  FIRST		      First copy is rendered at the current local
				   origin; all other copies are distributed
				   relative to it
	  CENTER	      Copies are distributed relative to the center of
				   the array
	  LAST		      Last copy is rendered at the current local
				   origin; all other copies are distributed
				   relative to it
     }

	  Fields from class SoArray:

     SoSFShort		 numElements1
     SoSFShort		 numElements2
     SoSFShort		 numElements3
     SoSFVec3f		 separation1
     SoSFVec3f		 separation2
     SoSFVec3f		 separation3
     SoSFEnum		 origin

	  Functions from class SoArray:

     SoArray *		 SoArrayCreate()
     SoType		 SoArrayGetClassTypeId()

	  Functions from class SoGroup:

     void		 SoArrayAddChild(SoArray *this, SoNode *child)
     void		 SoArrayInsertChild(SoArray *this, SoNode *child, int
			      newChildIndex)
     SoNode *		 SoArrayGetChild(const SoArray *this, int index)
     int		 SoArrayFindChild(const SoArray *this, const SoNode
			      *child)
     int		 SoArrayGetNumChildren(const SoArray *this)
     void		 SoArrayRemoveChild(SoArray *this, int index)
     void		 SoArrayRemoveChildNode(SoArray *this, SoNode *child)
     void		 SoArrayRemoveAllChildren(SoArray *this)
     void		 SoArrayReplaceChild(SoArray *this, int index, SoNode
			      *newChild)
     void		 SoArrayReplaceChildNode(SoArray *this, SoNode
			      *oldChild, SoNode *newChild)

Page 1

SoArray(3IV)

	  Functions from class SoNode:

     void		 SoArraySetOverride(SoArray *this, SbBool state)
     SbBool		 SoArrayIsOverride(const SoArray *this)
     SoNode *		 SoArrayCopy(const SoArray *this, SbBool
			      copyConnections = FALSE)
     SbBool		 SoArrayAffectsState(const SoArray *this)
     SoNode *		 SoArrayGetByName(const char *name)
     int		 SoArrayGetByNameList(const char *name, SoNodeList
			      *list)

	  Functions from class SoFieldContainer:

     void		 SoArraySetToDflts(SoArray *this)
     SbBool		 SoArrayHasDfltVals(const SoArray *this)
     SbBool		 SoArrayFldsAreEq(const SoArray *this, const
			      SoFieldContainer *fc)
     void		 SoArrayCopyFieldVals(SoArray *this, const
			      SoFieldContainer *fc, SbBool copyConnections =
			      FALSE)
     SbBool		 SoArraySet(SoArray *this, const char
			      *fieldDataString)
     void		 SoArrayGet(SoArray *this, SbString *fieldDataString)
     int		 SoArrayGetFields(const SoArray *this, SoFieldList
			      *resultList)
     SoField *		 SoArrayGetField(const SoArray *this, const char
			      *fieldName)
     SbBool		 SoArrayGetFieldName(const SoArray *this, const
			      SoField *field, SbName *fieldName)
     SbBool		 SoArrayIsNotifyEnabled(const SoArray *this)
     SbBool		 SoArrayEnableNotify(SoArray *this, SbBool flag)

	  Functions from class SoBase:

     void		 SoArrayRef(SoArray *this)
     void		 SoArrayUnref(const SoArray *this)
     void		 SoArrayUnrefNoDelete(const SoArray *this)
     void		 SoArrayTouch(SoArray *this)
     SoType		 SoArrayGetTypeId(const SoArray *this)
     SbBool		 SoArrayIsOfType(const SoArray *this, SoType type)
     void		 SoArraySetName(SoArray *this, const char *name)
     SbName		 SoArrayGetName(const SoArray *this)

DESCRIPTION
     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

Page 2

								  SoArray(3IV)

     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).

FIELDS
     SoSFShort		 numElements1
     SoSFShort		 numElements2
     SoSFShort		 numElements3
	  Number of elements in each of the three array dimensions.

     SoSFVec3f		 separation1
     SoSFVec3f		 separation2
     SoSFVec3f		 separation3
	  Separation vector in each of the three array dimensions.

     SoSFEnum		 origin
	  Defines the base point from which copies are distributed.

FUNCTIONS
     SoArray *		 SoArrayCreate()
	  Creates an array node with default settings.

     SoType		 SoArrayGetClassTypeId()
	  Returns type identifier for this class.

ACTION BEHAVIOR
     SoGLRenderAction, SoCallbackAction, SoGetBoundingBoxAction,
     SoRayPickAction
	  Traverses all children for each array element, saving and restoring
	  state before and after each traversal.

     SoSearchAction
	  Traverses all children once, setting the inherited switch value to
	  SO_SWITCH_ALL first.

FILE FORMAT/DEFAULTS
     Array {
	  numElements1	1
	  numElements2	1
	  numElements3	1
	  separation1	1 0 0
	  separation2	0 1 0
	  separation3	0 0 1

Page 3

SoArray(3IV)

	  origin	FIRST
     }

SEE ALSO
     SoMultipleCopy, SoSwitch

Page 4

[top]

List of man pages available for IRIX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net