4 Data Structures

4 Meshes

A mesh is a collection of vertices and faces that represent a topological polyhedron. The polyhedron does not need to be closed (that is, a mesh may have a boundary). The structure of a mesh is maintained privately by QuickDraw3D. You create a new empty mesh by calling Q3Mesh_New, and you can add vertices and faces by calling Q3Mesh_VertexNew and Q3Mesh_FaceNew.

QuickDraw3D supports meshes primarily for interactive rendering of polygonal models, not for representing large polygonal databases. A mesh is always a retained object, never an immediate object. As a result, QuickDraw3D does not supply routines to draw or write meshes.<8bat>s

A mesh can have a set of attributes attached to it; you call the Q3Geometry_SetAttributeSet function to attach an attribute set to a mesh. In addition, each mesh vertex, face, edge, and corner can have a set of attributes attached to it.

There is only one public data structure defined for meshes, the mesh iterator structure. You use the mesh iterator structure when you call any one of a large number of mesh iterators. The mesh iterator structure is defined by the TQ3MeshIterator data type.

typedef struct TQ3MeshIterator {
 void         *var1;
 void         *var2;
 void         *var3;
 struct {
  void        *field1;
  char        field2[4];
 } var4;
} TQ3MeshIterator;
var1 Reserved for use by Apple Computer, Inc.
var2 Reserved for use by Apple Computer, Inc.
var3 Reserved for use by Apple Computer, Inc.
var4 Reserved for use by Apple Computer, Inc.
field1 Reserved for use by Apple Computer, Inc.
field2 Reserved for use by Apple Computer, Inc.

3D Graphics Programming with QuickDraw 3D - 21 OCT 1995

© Apple Computer, Inc.

Let us know what you think of these prototype pages.

Generated with Harlequin WebMaker