Rhino C++ API
8.10
|
#include <opennurbs_mesh.h>
Public Member Functions | |
bool | IsQuad () const |
bool | IsTriangle () const |
bool | IsValid () const |
Public Attributes | |
char | m_reve [4] |
int | m_topei [4] |
bool ON_MeshTopologyFace::IsQuad | ( | ) | const |
Description: A topological mesh face is a valid quad if m_topei[0], m_topei[1], m_topei[2], and m_topei[3] are distinct edges. Returns: True if face is a quad.
bool ON_MeshTopologyFace::IsTriangle | ( | ) | const |
Description: A topological mesh face is a valid triangle if m_topei[0], m_topei[1], m_topei[2] are distinct edges and m_topei[3]=m_topei[2]. Returns: True if face is a triangle.
bool ON_MeshTopologyFace::IsValid | ( | ) | const |
Description: A topological mesh face is valid if m_topei[0], m_topei[1], and m_topei[2] are mutually distinct, and m_topei[3] is either equal to m_topei[2] or mutually distinct from the first three indices. Returns: True if face is valid.
char ON_MeshTopologyFace::m_reve[4] |
If m_reve[i] is 0, then the orientation of the edge matches the orientation of the face. If m_reve[i] is 1, then the orientation of the edge is opposite that of the face.
int ON_MeshTopologyFace::m_topei[4] |
m_topei[] = indices of the topological edges that bound the face. If m_topei[2] = m_topei[3], then the face is a triangle, otherwise the face is a quad.
NOTE WELL: The topological edge with index m_topei[k] ENDS at the vertex corresponding to ON_MeshFace.vi[k]. So, ...
If the face is a quad, (ON_MeshFace.vi[2]!=ON_MeshFace.vi[3]), the topological edge with index m_topei[0] STARTS at ON_MeshFace.vi[3] and ENDS at ON_MeshFace.vi[0], the topological edge with index m_topei[1] STARTS at ON_MeshFace.vi[0] and ENDS at ON_MeshFace.vi[1], the topological edge with index m_topei[2] STARTS at ON_MeshFace.vi[1] and ENDS at ON_MeshFace.vi[2], and the topological edge with index m_topei[3] STARTS at ON_MeshFace.vi[2] and ENDS at ON_MeshFace.vi[3],
If the face is a triangle, (ON_MeshFace.vi[2]==ON_MeshFace.vi[3]), the topological edge with index m_topei[0] STARTS at ON_MeshFace.vi[2] and ENDS at ON_MeshFace.vi[0], the topological edge with index m_topei[1] STARTS at ON_MeshFace.vi[0] and ENDS at ON_MeshFace.vi[1], the topological edge with index m_topei[2] STARTS at ON_MeshFace.vi[1] and ENDS at ON_MeshFace.vi[2].