Mesh - This is the main class for working with the mesh objects. It has data members that point to the vertices, faces, texture vertices, and texture faces. Methods are provided to access all properties of the mesh and to render, snap to, and hit test the mesh. There are also methods to optimize, apply mapping coordinates, and perform boolean operations on the mesh.
TriObject - All objects should be able to convert themselves to a collection of TriObjects. This is one of the native classes that flows down the geometry pipeline. This class contains an instance of the Mesh class.
Face - This is the class used to hold a single triangular face of the mesh object. It maintains three indices to the vertex array of the mesh. Methods are provided for setting materials, smoothing groups, edge visibility, and hidden status.
TVFace - This is the class used to hold a texture face. It contains an array of three indices to the texture vertex array of the mesh.
AdjEdgeList - Support class for working with the lists of edges.
AdjFaceList - Support class for working with the lists of faces.
FaceElementList - Support class for working with the lists of face elements.
FaceClusterList - Support class for working with the lists of face clusters.
MNMesh - Provides capabilities that help with complex topology-based modifications, such as the ability to recognize faces with more than three sides.
ObjectWrapper - Provides a common interface to three common classes of geometry objects: Mesh, MNMesh, and PatchMesh. Specifically, the ObjectWrapper class is intended for use in the modifier plug-ins because you can avoid writing three versions of code for three object types. Objects of other types, such as NURBS and Particle Systems are not directly supported by the ObjectWrapper class, although the wrapper can attempt to convert them to a supported type.