Click or drag to resize

MeshFaceList Class

Provides access to the faces and Face related functionality of a Mesh.
Inheritance Hierarchy

Namespace:  Rhino.Geometry.Collections
Assembly:  RhinoCommon (in RhinoCommon.dll)
public class MeshFaceList : IEnumerable<MeshFace>, 

The MeshFaceList type exposes the following members.

Public propertyCapacity
Gets or sets the total number of mesh triangles and quads the internal data structure can hold without resizing.
Public propertyCount
Gets or sets the number of mesh faces.
Public propertyItem
Returns the mesh face at the given index.
Public propertyQuadCount
Gets the number of faces that are quads (4 corners).
Public propertyTriangleCount
Gets the number of faces that are triangles (3 corners).
Public methodAddFace(MeshFace)
Appends a new mesh face to the end of the mesh face list.
Public methodAddFace(Int32, Int32, Int32)
Appends a new triangular face to the end of the mesh face list.
Public methodCode exampleAddFace(Int32, Int32, Int32, Int32)
Appends a new quadragular face to the end of the mesh face list.
Public methodAddFaces
Appends a list of faces to the end of the mesh face list.
Public methodAdjacentFaces
Gets all faces that share a topological edge with a given face.
Public methodClear
Clears the Face list on the mesh.
Public methodConvertNonPlanarQuadsToTriangles
Splits non-planar quads into two triangles based on given params.
Public methodConvertQuadsToTriangles
Splits all quads along the short diagonal.
Public methodConvertTrianglesToQuads
Joins adjacent triangles into quads if the resulting quad is 'nice'.
Public methodCullDegenerateFaces
Attempts to removes degenerate faces from the mesh.

Degenerate faces are faces that contains such a combination of indices, that their final shape collapsed in a line or point.

Before returning, this method also attempts to repair faces by juggling vertex indices.

Public methodDeleteFaces
Removes a collection of faces from the mesh without affecting the remaining geometry.
Public methodDestroy
Releases all memory allocated to store faces. The list capacity will be 0 after this call.

Subsequent calls can add new items.

Public methodEquals (Inherited from Object.)
Public methodExtractDuplicateFaces
Extracts, or removes, duplicate faces.
Public methodExtractFaces
Extracts, or removes, faces.
Protected methodFinalize (Inherited from Object.)
Public methodGetClashingFacePairs
Gets an array of pairs of mesh faces that clash.
Public methodGetConnectedFaces
Find all connected face indices where adjacent face normals meet the criteria of angleRadians and greaterThanAngle
Public methodGetConnectedFacesToEdges
Uses startFaceIndex and finds all connected face indexes up to unwelded or naked edges. If treatNonmanifoldLikeUnwelded is true then non-manifold edges will be considered as unwelded or naked
Public methodGetDuplicateFaces
Finds all of the duplicate faces.
Public methodGetEnumerator
Gets an enumerator that yields all faces in this collection.
Public methodGetFace
Returns the mesh face at the given index.
Public methodGetFaceAspectRatio
Returns the mesh face at the given index.
Public methodGetFaceBoundingBox
Gets the bounding box of a face.
Public methodGetFaceCenter
Gets the center point of a face.

For a triangular face, this is the centroid or barycenter.

For a quad, this is the avarage of four coner points.

Public methodGetFaceVertices
Gets the 3D location of the vertices forming a face.
Public methodGetHashCode (Inherited from Object.)
Public methodGetTopologicalVertices
Gets the topology vertex indices of a face.
Public methodGetType (Inherited from Object.)
Public methodGetZeroAreaFaces
Examines and adds face indexes to whollyDegenerateFaces if the face is a triangle with zero area or a quad both triangles have zero area. Face indexes are added to partiallyDegenerateFaces when a quad has one triangle with zero area.
Public methodHasNakedEdges
Returns true if at least one of the face edges are not topologically connected to any other faces.
Public methodInsert
Inserts a mesh face at a defined index in this list.
Public methodIsHidden
Gets a value indicating whether a face is hidden.

A face is hidden if, and only if, at least one of its vertices is hidden.

Protected methodMemberwiseClone (Inherited from Object.)
Public methodRemoveAt
Removes a face from the mesh.
Public methodRemoveZeroAreaFaces
Deletes or fixes mesh faces that have zero area.
Public methodSetFace(Int32, MeshFace)
Sets a face at a specific index of the mesh.
Public methodSetFace(Int32, Int32, Int32, Int32)
Sets a triangular face at a specific index of the mesh.
Public methodSetFace(Int32, Int32, Int32, Int32, Int32)
Sets a quadrangular face at a specific index of the mesh.
Public methodToIntArray
Copies all of the faces to a linear array of indices.
Public methodToString (Inherited from Object.)
Version Information

Rhino for Mac

Supported in: 5.4

Rhino for Windows

Supported in: 6.2
See Also