1SoQuadMesh(3IV)()                                            SoQuadMesh(3IV)()
2
3
4

NAME

6       SoQuadMesh — quadrilateral mesh shape node
7

INHERITS FROM

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

SYNOPSIS

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

DESCRIPTION

71       This shape node constructs quadrilaterals out of vertices. The vertices
72       may  be  specified in the vertexProperty field (from SoVertexShape), or
73       by the current inherited coordinates. For optimal performance, the ver‐
74       texProperty field is recommended.
75
76       SoQuadMesh uses the coordinates, in order, starting with the first one.
77       The number of vertices in the columns and rows of the mesh  are  speci‐
78       fied  by  the  verticesPerColumn  and verticesPerRow fields. (Note that
79       these numbers are 1 greater than the number of quadrilaterals  per  row
80       and per column.)
81
82       For  example,  an SoQuadMesh with verticesPerColumn of 3, and vertices‐
83       PerRow of 4 would use coordinates 1, 2, 3, and 4 for the first  row  of
84       vertices,  coordinates  5,  6, 7, and 8 for the second row, and coordi‐
85       nates 9, 10, 11, and 12 for the third (last) row. The result is a  mesh
86       of  3  quadrilaterals across by 2 down. Note: non-planar quadrilaterals
87       formed by a quad mesh may cause interesting but unpredictable results.
88
89       The coordinates of the mesh are transformed by the  current  cumulative
90       transformation.  The  mesh  is  drawn  with the current light model and
91       drawing style.
92
93       Treatment of the current material and normal binding is as follows: The
94       PER_PART  binding  specifies  a  material or normal for each row of the
95       mesh. The PER_FACE binding specifies a  material  or  normal  for  each
96       quadrilateral.  The  _INDEXED  bindings  are  equivalent  to their non-
97       indexed counterparts. The default  material  binding  is  OVERALL.  The
98       default normal binding is PER_VERTEX.
99
100       If  any normals (or materials) are specified, Inventor assumes you pro‐
101       vide the correct number of them, as indicated by the binding. You  will
102       see unexpected results if you specify fewer normals (or materials) than
103       the shape requires. If no normals are specified, they will be generated
104       automatically.
105

FIELDS

107     SoSFInt32           verticesPerColumn
108     SoSFInt32           verticesPerRow
109          Number of vertices per column and row.
110
111

METHODS

113                         SoQuadMesh()
114          Creates a quadrilateral mesh node with default settings.
115
116     static SoType       getClassTypeId()
117          Returns type identifier for this class.
118
119

ACTION BEHAVIOR

121       SoGLRenderAction
122          Draws  a  mesh based on the current coordinates, normals, materials,
123          drawing style, and so on.
124
125     SoRayPickAction
126          Picks on the mesh based on the current coordinates  and  transforma‐
127          tion.  Details  about  the intersection are returned in an SoFaceDe‐
128          tail.
129
130     SoGetBoundingBoxAction
131          Computes the bounding box that encloses all  vertices  of  the  mesh
132          with  the current transformation applied to them. Sets the center to
133          the average of the coordinates of all vertices.
134
135     SoCallbackAction
136          If any triangle callbacks are registered with the action, they  will
137          be  invoked  for each successive triangle forming the quadrilaterals
138          of the mesh.
139
140

FILE FORMAT/DEFAULTS

142       QuadMesh {
143          vertexProperty     NULL
144          startIndex         0
145          verticesPerColumn  1
146          verticesPerRow     1
147     }
148

SEE ALSO

150       SoCoordinate3,   SoDrawStyle,   SoFaceDetail,    SoFaceSet,    SoTrian‐
151       gleStripSet, SoVertexProperty
152
153
154
155
156                                                             SoQuadMesh(3IV)()
Impressum