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

#include <opennurbs_subd.h>

Public Types

enum  Type : unsigned char { Type::Unset = 0, Type::Vertex = 2, Type::Edge = 4, Type::Face = 6 }
 ON_SubDComponentPtr::Type identifies the type of subdivision component referenced by the ON_SubDComponentPtr. More...
 

Public Member Functions

const ON_BoundingBox BoundingBox (ON_SubDComponentLocation subd_appearance, const class ON_SubD &subd) const
 
const ON_3dPoint CenterPoint (ON_SubDComponentLocation subd_appearance) const
 
const ON_SubDComponentPtr ClearComponentDirection () const
 
bool ClearMark () const
 
ON__UINT8 ClearMarkBits () const
 
void ClearSavedSubdivisionPoints () const
 
void ClearSavedSubdivisionPoints (bool bClearNeighborhood) const
 
unsigned int ClearStates (ON_ComponentStatus states_to_clear)
 
class ON_SubDComponentBaseComponentBase () const
 
class ON_SubDComponentBaseComponentBase (ON_SubDComponentPtr::Type type_filter) const
 
ON__UINT_PTR ComponentDirection () const
 
unsigned int ComponentId () const
 
const ON_COMPONENT_INDEX ComponentIndex () const
 
ON_SubDComponentPtr::Type ComponentType () const
 
const ON_BoundingBox ControlNetBoundingBox () const
 
const ON_3dPoint ControlNetCenterPoint () const
 
const ON_3dPoint DoubleSubdivisionPoint () const
 
class ON_SubDEdgeEdge () const
 
const ON_SubDEdgePtr EdgePtr () const
 
class ON_SubDFaceFace () const
 
const ON_SubDFacePtr FacePtr () const
 
unsigned int GroupId (unsigned int null_component_value) const
 
ON__UINT16 Hash16FromTypeAndId () const
 
ON__UINT32 Hash32FromPointer () const
 
bool InSymmetrySet () const
 
bool IsActive () const
 
const bool IsEdge () const
 
const bool IsFace () const
 
bool IsNotNull () const
 
bool IsNull () const
 
bool IsSymmetrySetPrimaryMotif () const
 
const bool IsVertex () const
 
bool Mark () const
 
ON__UINT8 MarkBits () const
 
const ON_SubDComponentPtr NextComponent () const
 Depending on the type of this component, returns an ON_SubDComponentPtr to ON_SubDVertex::NextVertex(), ON_SubDEdge::NextEdge(), or ON_SubDFace::NextFace(). More...
 
const ON_SubDComponentPtr operator++ ()
 Prefix operator ++ sets this to ON_SubDComponentPtr::NextComponent() and returns the new value of this. More...
 
const ON_SubDComponentPtr operator++ (int)
 Postfix operator ++ sets this to ON_SubDComponentPtr::NextComponent() and returns the previous value of this. More...
 
const ON_SubDComponentPtr PrevComponent () const
 Depending on the type of this component, returns an ON_SubDComponentPtr to ON_SubDVertex::PrevVertex(), ON_SubDEdge::PrevEdge(), or ON_SubDFace::PrevFace(). More...
 
const ON_SubDComponentPtr Reversed () const
 
const ON_SubDComponentPtr SetComponentDirection () const
 
const ON_SubDComponentPtr SetComponentDirection (ON__UINT_PTR dir) const
 
bool SetGroupId (unsigned int group_id)
 
bool SetMark () const
 
bool SetMark (bool bMark) const
 
ON__UINT8 SetMarkBits (ON__UINT8 mark_bits) const
 
unsigned int SetStates (ON_ComponentStatus states_to_set)
 
unsigned int SetStatus (ON_ComponentStatus status)
 
const ON_ComponentStatus Status () const
 
const ON_3dPoint SubdivisionPoint () const
 
const ON_wString ToString () const
 
wchar_t * ToString (wchar_t *s, size_t s_capacity) const
 
class ON_SubDVertexVertex () const
 
const ON_SubDVertexPtr VertexPtr () const
 

Static Public Member Functions

static int CompareComponent (const ON_SubDComponentPtr *a, const ON_SubDComponentPtr *b)
 
static int CompareComponentAndDirection (const ON_SubDComponentPtr *a, const ON_SubDComponentPtr *b)
 
static int CompareComponentId (const ON_SubDComponentPtr *a, const ON_SubDComponentPtr *b)
 
static int CompareComponentPtrType (ON_SubDComponentPtr::Type a, ON_SubDComponentPtr::Type b)
 
static int CompareType (const ON_SubDComponentPtr *a, const ON_SubDComponentPtr *b)
 
static ON_SubDComponentPtr::Type ComponentPtrTypeFromUnsigned (unsigned int component_pointer_type_as_unsigned)
 
static const ON_SubDComponentPtr Create (const class ON_SubDEdge *edge)
 
static const ON_SubDComponentPtr Create (const class ON_SubDEdge *edge, ON__UINT_PTR edge_direction)
 
static const ON_SubDComponentPtr Create (const class ON_SubDFace *face)
 
static const ON_SubDComponentPtr Create (const class ON_SubDFace *face, ON__UINT_PTR face_direction)
 
static const ON_SubDComponentPtr Create (const class ON_SubDVertex *vertex)
 
static const ON_SubDComponentPtr Create (const class ON_SubDVertex *vertex, ON__UINT_PTR vertex_direction)
 
static const ON_SubDComponentPtr Create (ON_SubDEdgePtr edgeptr)
 
static const ON_SubDComponentPtr Create (ON_SubDFacePtr faceptr)
 
static const ON_SubDComponentPtr Create (ON_SubDVertexPtr vertexptr)
 
static const ON_SubDComponentPtr CreateNull (ON_SubDComponentPtr::Type component_type, ON__UINT_PTR component_direction)
 

Public Attributes

ON__UINT_PTR m_ptr
 

Static Public Attributes

static const ON_SubDComponentPtr Null
 nullptr, type = Unset, direction = 0 More...
 
static const ON_SubDComponentPtr NullEdge
 nullptr, type = Edge, direction = 0 More...
 
static const ON_SubDComponentPtr NullFace
 nullptr, type = Face, direction = 0 More...
 
static const ON_SubDComponentPtr NullVertex
 nullptr, type = Vertex, direction = 0 More...