SoFaceSet(3IV)NAMESoFaceSet (SoFset) - polygonal face shape node
INHERITS FROM
SoBase > SoFieldContainer > SoNode > SoShape > SoVertexShape >
SoNonIndexedShape > SoFaceSetSYNOPSIS
#include <Inventor_c/nodes/SoFaceSet.h>
typedef SoFaceSet SoFset
Fields from class SoFaceSet:
SoMFInt32 numVertices
Fields from class SoNonIndexedShape:
SoSFInt32 startIndex
Fields from class SoVertexShape:
SoSFNode vertexProperty
Functions from class SoFaceSet:
SoFaceSet * SoFsetCreate()
SoType SoFsetGetClassTypeId()
Functions from class SoNode:
void SoFsetSetOverride(SoFset *this, SbBool state)
SbBool SoFsetIsOverride(const SoFset *this)
SoNode * SoFsetCopy(const SoFset *this, SbBool copyConnections
= FALSE)
SbBool SoFsetAffectsState(const SoFset *this)
SoNode * SoFsetGetByName(const char *name)
int SoFsetGetByNameList(const char *name, SoNodeList
*list)
Functions from class SoFieldContainer:
void SoFsetSetToDflts(SoFset *this)
SbBool SoFsetHasDfltVals(const SoFset *this)
SbBool SoFsetFldsAreEq(const SoFset *this, const
SoFieldContainer *fc)
void SoFsetCopyFieldVals(SoFset *this, const
SoFieldContainer *fc, SbBool copyConnections =
FALSE)
SbBool SoFsetSet(SoFset *this, const char *fieldDataString)
void SoFsetGet(SoFset *this, SbString *fieldDataString)
Page 1SoFaceSet(3IV)
int SoFsetGetFields(const SoFset *this, SoFieldList
*resultList)
SoField * SoFsetGetField(const SoFset *this, const char
*fieldName)
SbBool SoFsetGetFieldName(const SoFset *this, const SoField
*field, SbName *fieldName)
SbBool SoFsetIsNotifyEnabled(const SoFset *this)
SbBool SoFsetEnableNotify(SoFset *this, SbBool flag)
Functions from class SoBase:
void SoFsetRef(SoFset *this)
void SoFsetUnref(const SoFset *this)
void SoFsetUnrefNoDelete(const SoFset *this)
void SoFsetTouch(SoFset *this)
SoType SoFsetGetTypeId(const SoFset *this)
SbBool SoFsetIsOfType(const SoFset *this, SoType type)
void SoFsetSetName(SoFset *this, const char *name)
SbName SoFsetGetName(const SoFset *this)
DESCRIPTION
This node represents a 3D shape formed by constructing faces (polygons)
from vertices located at the coordinates specified in the vertexProperty
field (from SoVertexShape), or the current inherited state. For optimal
performance, the vertexProperty field is recommended.
SoFaceSet uses the coordinates in order, starting with the first one.
Each face has a number of vertices specified by a value in the
numVertices field. For example, an SoFaceSet with numVertices of [3,4,4]
would use coordinates 1, 2, and 3 for the first face, coordinates 4, 5,
6, and 7 for the second face, and coordinates 8, 9, 10, and 11 for the
third. For improved performance, arrange all the faces with only 3
vertices at beginning of the list, then all faces with 4 vertices, and
finally all other faces.
The number of values in the numVertices field indicates the number of
faces in the set.
The coordinates of the face set are transformed by the current cumulative
transformation. The faces are drawn with the current light model and
drawing style.
Treatment of the current material and normal binding is as follows: The
PER_PART and PER_FACE bindings specify a material or normal for each
face. The _INDEXED bindings are equivalent to their non-indexed
counterparts. The default material binding is OVERALL. The default normal
binding is PER_VERTEX.
If any normals (or materials) are specified, Inventor assumes you provide
the correct number of them, as indicated by the binding. You will see
unexpected results if you specify fewer normals (or materials) than the
Page 2SoFaceSet(3IV)
shape requires. If no normals are specified, they will be generated
automatically.
FIELDS
SoMFInt32 numVertices
Number of vertices per face.
FUNCTIONSSoFaceSet * SoFsetCreate()
Creates a face set node with default settings.
SoType SoFsetGetClassTypeId()
Returns type identifier for this class.
ACTION BEHAVIOR
SoGLRenderAction
Draws faces based on the current coordinates, normals, materials,
drawing style, and so on.
SoRayPickAction
Picks faces based on the current coordinates and transformation.
Details about the intersection are returned in an SoFaceDetail.
SoGetBoundingBoxAction
Computes the bounding box that encloses all vertices of the face set
with the current transformation applied to them. Sets the center to
the average of the coordinates of all vertices.
SoCallbackAction
If any triangle callbacks are registered with the action, they will
be invoked for each successive triangle generated from each face in
the set.
FILE FORMAT/DEFAULTS
FaceSet {
vertexProperty NULL
startIndex 0
numVertices -1
}
SEE ALSO
SoCoordinate3, SoDrawStyle, SoIndexedFaceSet, SoFaceDetail,
SoVertexProperty
Page 3