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
shape requires. If no normals are specified, they will be generated automatically.