1SoFaceSet(3IV)()                                              SoFaceSet(3IV)()
2
3
4

NAME

6       SoFaceSet — polygonal face shape node
7

INHERITS FROM

9       SoBase > SoFieldContainer > SoNode > SoShape > SoVertexShape > SoNonIn‐
10       dexedShape > SoFaceSet
11

SYNOPSIS

13       #include <Inventor/nodes/SoFaceSet.h>
14
15          Fields from class SoFaceSet:
16
17     SoMFInt32           numVertices
18
19          Fields from class SoNonIndexedShape:
20
21     SoSFInt32           startIndex
22
23          Fields from class SoVertexShape:
24
25     SoSFNode            vertexProperty
26
27          Methods from class SoFaceSet:
28
29                         SoFaceSet()
30     static SoType       getClassTypeId()
31
32          Methods from class SoNode:
33
34     void                setOverride(SbBool state)
35     SbBool              isOverride() const
36     SoNode *            copy(SbBool copyConnections = FALSE) const
37     virtual SbBool      affectsState() const
38     static SoNode *     getByName(const SbName &name)
39     static int          getByName(const SbName &name, SoNodeList &list)
40
41          Methods from class SoFieldContainer:
42
43     void                setToDefaults()
44     SbBool              hasDefaultValues() const
45     SbBool              fieldsAreEqual(const SoFieldContainer *fc) const
46     void                copyFieldValues(const  SoFieldContainer  *fc,  SbBool
47                              copyConnections = FALSE)
48     SbBool              set(const char *fieldDataString)
49     void                get(SbString &fieldDataString)
50     virtual int         getFields(SoFieldList &resultList) const
51     virtual SoField *   getField(const SbName &fieldName) const
52     SbBool              getFieldName(const SoField *field, SbName &fieldName)
53                              const
54     SbBool              isNotifyEnabled() const
55     SbBool              enableNotify(SbBool flag)
56
57          Methods from class SoBase:
58
59     void                ref()
60     void                unref() const
61     void                unrefNoDelete() const
62     void                touch()
63     virtual SoType      getTypeId() const
64     SbBool              isOfType(SoType type) const
65     virtual void        setName(const SbName &name)
66     virtual SbName      getName() const
67
68

DESCRIPTION

70       This node represents a 3D shape formed by constructing faces (polygons)
71       from  vertices  located at the coordinates specified in the vertexProp‐
72       erty field (from SoVertexShape), or the current  inherited  state.  For
73       optimal performance, the vertexProperty field is recommended.
74
75       SoFaceSet  uses  the coordinates in order, starting with the first one.
76       Each face has a number of vertices specified by a value in the  numVer‐
77       tices  field.  For  example,  an  SoFaceSet with numVertices of [3,4,4]
78       would use coordinates 1, 2, and 3 for the first face, coordinates 4, 5,
79       6,  and 7 for the second face, and coordinates 8, 9, 10, and 11 for the
80       third. For improved performance, arrange all the faces with only 3 ver‐
81       tices  at  beginning  of  the list, then all faces with 4 vertices, and
82       finally all other faces.
83
84       The number of values in the numVertices field indicates the  number  of
85       faces in the set.
86
87       The  coordinates of the face set are transformed by the current cumula‐
88       tive transformation. The faces are drawn with the current  light  model
89       and drawing style.
90
91       Treatment of the current material and normal binding is as follows: The
92       PER_PART and PER_FACE bindings specify a material or  normal  for  each
93       face.  The  _INDEXED bindings are equivalent to their non-indexed coun‐
94       terparts. The default material binding is OVERALL. The  default  normal
95       binding is PER_VERTEX.
96
97       If  any normals (or materials) are specified, Inventor assumes you pro‐
98       vide the correct number of them, as indicated by the binding. You  will
99       see unexpected results if you specify fewer normals (or materials) than
100       the shape requires. If no normals are specified, they will be generated
101       automatically.
102

FIELDS

104     SoMFInt32           numVertices
105          Number of vertices per face.
106
107

METHODS

109                         SoFaceSet()
110          Creates a face set node with default settings.
111
112     static SoType       getClassTypeId()
113          Returns type identifier for this class.
114
115

ACTION BEHAVIOR

117       SoGLRenderAction
118          Draws  faces  based  on the current coordinates, normals, materials,
119          drawing style, and so on.
120
121     SoRayPickAction
122          Picks faces based on the  current  coordinates  and  transformation.
123          Details about the intersection are returned in an SoFaceDetail.
124
125     SoGetBoundingBoxAction
126          Computes the bounding box that encloses all vertices of the face set
127          with the current transformation applied to them. Sets the center  to
128          the average of the coordinates of all vertices.
129
130     SoCallbackAction
131          If  any triangle callbacks are registered with the action, they will
132          be invoked for each successive triangle generated from each face  in
133          the set.
134
135

FILE FORMAT/DEFAULTS

137       FaceSet {
138          vertexProperty  NULL
139          startIndex      0
140          numVertices     -1
141     }
142

SEE ALSO

144       SoCoordinate3,  SoDrawStyle,  SoIndexedFaceSet, SoFaceDetail, SoVertex‐
145       Property
146
147
148
149
150                                                              SoFaceSet(3IV)()
Impressum