Rhino C++ API  8.10
Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
ON_SubDFaceCornerDex Class Reference

A ON_SubDFaceCornerDex is a value that identifies a subd face corner. More...

#include <opennurbs_subd.h>

Public Member Functions

 ON_SubDFaceCornerDex ()=default
 
 ON_SubDFaceCornerDex (const ON_SubDFaceCornerDex &)=default
 
 ON_SubDFaceCornerDex (unsigned face_corner_index, unsigned face_edge_count)
 
 ~ON_SubDFaceCornerDex ()=default
 
unsigned CornerIndex () const
 
const ON_SubDVertexCornerVertex (const class ON_SubDFace *face) const
 Get the vertex at the corner of the face identified by this. If this is not set, face is nullptr, or face->EdgeCount() != this->EdgeCount(), then nullptr is returned. More...
 
unsigned EdgeCount () const
 
const ON_SubDEdgePtr EdgePtr (const class ON_SubDFace *face, unsigned corner_edge_dex) const
 Get the edge face->EdgePtr(this->CornerIndex()). If this is not set, face is nullptr, or face->EdgeCount() != this->EdgeCount(), then ON_SubDEdgePtr::Null is returned. More...
 
bool IsNotSet () const
 
bool IsQuadFace () const
 
Returns
True if this is a corner of a quad face (IsSet() && 4 == EdgeCount()).
More...
 
bool IsSet () const
 
bool IsValid (const class ON_SubDFace *face) const
 
const ON_SubDEdgePtr LeftEdgePtr (const class ON_SubDFace *face) const
 Get the edge of face that goes from the the previous face corner to this face corner. The edge pointer is oriented from PreviousCornerVertex() to CornerVertex(). If this is not set, face is nullptr, or face->EdgeCount() != this->EdgeCount(), then ON_SubDEdgePtr::Null is returned. More...
 
const ON_SubDFaceCornerDex NextCornerDex () const
 NextCornerDex() = (this->CornerDex() + 1) % this->EdgeCount(). If this is not set, then ON_SubDFaceCornerDex::Unset is returned. More...
 
const ON_SubDVertexNextCornerVertex (const class ON_SubDFace *face) const
 Get the vertex at the corner of the face identified by this->NextCornerDex(). If this is not set, face is nullptr, or face->EdgeCount() != this->EdgeCount(), then nullptr is returned. More...
 
ON_SubDFaceCornerDexoperator= (const ON_SubDFaceCornerDex &)=default
 
const ON_SubDFaceCornerDex PreviousCornerDex () const
 NextCornerDex() = (this->CornerDex() + this->EdgeCount() - 1) % this->EdgeCount(). If this is not set, then ON_SubDFaceCornerDex::Unset is returned. More...
 
const ON_SubDVertexPreviousCornerVertex (const class ON_SubDFace *face) const
 Get the vertex at the corner of the face identified by this->PreviousCornerDex(). If this is not set, face is nullptr, or face->EdgeCount() != this->EdgeCount(), then nullptr is returned. More...
 
const ON_SubDEdgePtr RightEdgePtr (const class ON_SubDFace *face) const
 Get the edge of face that goes from the this face corner to the next face corner. The edge pointer is oriented from CornerVertex() to NextCornerVertex(). If this is not set, face is nullptr, or face->EdgeCount() != this->EdgeCount(), then ON_SubDEdgePtr::Null is returned. More...
 

Static Public Member Functions

static int Compare (const ON_SubDFaceCornerDex *lhs, const ON_SubDFaceCornerDex *rhs)
 Uses ON_SubDFaceCornerDex::CompareAll to dictionary sort nonnull inputs and safely sorts nullptr to the end. More...
 
static int CompareAll (const ON_SubDFaceCornerDex &lhs, const ON_SubDFaceCornerDex &rhs)
 Dictionary compares EdgeCount() then CornerIndex(). Any set value < any unset value. More...
 

Static Public Attributes

static const ON_SubDFaceCornerDex Unset
 ON_SubDFaceCorner::Unset has CornerIndex()=0 and EdgeCount()=0. More...
 

Detailed Description

A ON_SubDFaceCornerDex is a value that identifies a subd face corner.