1SoQuadMesh(3IV)() SoQuadMesh(3IV)()
2
3
4
6 SoQuadMesh — quadrilateral mesh shape node
7
9 SoBase > SoFieldContainer > SoNode > SoShape > SoVertexShape > SoNonIn‐
10 dexedShape > SoQuadMesh
11
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
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
107 SoSFInt32 verticesPerColumn
108 SoSFInt32 verticesPerRow
109 Number of vertices per column and row.
110
111
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
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
142 QuadMesh {
143 vertexProperty NULL
144 startIndex 0
145 verticesPerColumn 1
146 verticesPerRow 1
147 }
148
150 SoCoordinate3, SoDrawStyle, SoFaceDetail, SoFaceSet, SoTrian‐
151 gleStripSet, SoVertexProperty
152
153
154
155
156 SoQuadMesh(3IV)()