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

#include <opennurbs_subd.h>

Public Types

enum  Topology : unsigned char {
  Topology::Unset = 0, Topology::Boundary = 1, Topology::Interior = 2, Topology::Nonmanifold = 4,
  Topology::BoundaryOrInterior = 3, Topology::BoundaryOrNonmanifold = 5, Topology::InteriorOrNonmanifold = 6
 Topology filters. /summary> More...

Public Member Functions

 ON_SubDComponentFilter ()=default
 ON_SubDComponentFilter (const ON_SubDComponentFilter &)=default
 ~ON_SubDComponentFilter ()=default
bool AcceptComponent (const class ON_Geometry *geometry) const
bool AcceptComponent (const class ON_SubDComponentRef *cref) const
bool AcceptComponent (ON_COMPONENT_INDEX component_index, const class ON_Geometry *geometry) const
bool AcceptComponent (ON_SubDComponentPtr cptr) const
bool AcceptEdge (const ON_SubDEdge *e) const
bool AcceptEdge (ON_SubDEdgePtr eptr) const
bool AcceptEdges () const
bool AcceptEdgeTag (ON_SubDEdgeTag edge_tag) const
bool AcceptFace (const ON_SubDFace *f) const
bool AcceptFace (ON_SubDFacePtr fptr) const
bool AcceptFaceEdgeCount (unsigned face_edge_count) const
bool AcceptFaces () const
bool AcceptVertex (const ON_SubDVertex *v) const
bool AcceptVertex (ON_SubDVertexPtr vptr) const
bool AcceptVertexTag (ON_SubDVertexTag vertex_tag) const
bool AcceptVertices () const
void AddAcceptedEdgeTag (ON_SubDEdgeTag edge_tag)
void AddAcceptedVertexTag (ON_SubDVertexTag vertex_tag)
void ClearEdgeTagFilter ()
void ClearEdgeTopologyFilter ()
void ClearFaceEdgeCountFilter ()
void ClearFaceTopologyFilter ()
void ClearVertexTagFilter ()
void ClearVertexTopologyFilter ()
ON_SubDComponentFilter::Topology EdgeTopologyFilter () const
ON_SubDComponentFilter::Topology FaceTopologyFilter () const
ON_SubDComponentFilteroperator= (const ON_SubDComponentFilter &)=default
void SetAcceptEdges (bool bAcceptEdges)
void SetAcceptFaces (bool bAcceptFaces)
void SetAcceptVertices (bool bAcceptVertices)
void SetEdgeTopologyFilter (ON_SubDComponentFilter::Topology edge_topology_filter)
void SetFaceEdgeCountFilter (unsigned minimum_face_edge_count, unsigned maximum_face_edge_count)
void SetFaceTopologyFilter (ON_SubDComponentFilter::Topology face_topology_filter)
void SetVertexTopologyFilter (ON_SubDComponentFilter::Topology vertex_topology_filter)
ON_SubDComponentFilter::Topology VertexTopologyFilter () const

Static Public Member Functions

static const ON_SubDComponentFilter Create (bool bAcceptVertices, bool bAcceptEdges, bool bAcceptFaces)

Static Public Attributes

static const ON_SubDComponentFilter OnlyEdges
static const ON_SubDComponentFilter OnlyFaces
static const ON_SubDComponentFilter OnlyVertices
static const ON_SubDComponentFilter Unset
 No filters are set and all components are accepted. /summary> More...

Member Enumeration Documentation

◆ Topology

enum ON_SubDComponentFilter::Topology : unsigned char

Topology filters. /summary>


summary> No topology filter. /summary> summary> A boundary vertex has a single sector bounded by two boundary edges. A boundary edge has a single face. A boundary face has at least one boundary edge. /summary>


summary> An interior vertex has the same number of edges and faces and all edges are interior. An interior edge has two faces. An interior face has all interior edges. /summary>


summary> A nonmanifold vertex is a vertex that is neither boundary nor interior. A nonmanifold edge is an edge that is neither boundary nor interior. A nonmanifold face is a face that is neither boundary nor interior. /summary>


summary> A component that is either boundary or interior. /summary>


summary> A component that is either boundary or nonmanifold. /summary>


summary> A component that is either interior or nonmanifold /summary>


Constructor & Destructor Documentation

◆ ON_SubDComponentFilter() [1/2]

ON_SubDComponentFilter::ON_SubDComponentFilter ( )

◆ ~ON_SubDComponentFilter()

ON_SubDComponentFilter::~ON_SubDComponentFilter ( )

◆ ON_SubDComponentFilter() [2/2]

ON_SubDComponentFilter::ON_SubDComponentFilter ( const ON_SubDComponentFilter )

Member Function Documentation

◆ AcceptComponent() [1/4]

bool ON_SubDComponentFilter::AcceptComponent ( const class ON_Geometry geometry) const

◆ AcceptComponent() [2/4]

bool ON_SubDComponentFilter::AcceptComponent ( const class ON_SubDComponentRef cref) const

◆ AcceptComponent() [3/4]

bool ON_SubDComponentFilter::AcceptComponent ( ON_COMPONENT_INDEX  component_index,
const class ON_Geometry geometry 
) const

◆ AcceptComponent() [4/4]

bool ON_SubDComponentFilter::AcceptComponent ( ON_SubDComponentPtr  cptr) const

Returns: True if the filter accepts the component. False otherwise.

◆ AcceptEdge() [1/2]

bool ON_SubDComponentFilter::AcceptEdge ( const ON_SubDEdge e) const

Returns: True if the filter accepts the edge. False otherwise.

◆ AcceptEdge() [2/2]

bool ON_SubDComponentFilter::AcceptEdge ( ON_SubDEdgePtr  eptr) const

Returns: True if the filter accepts the edge. False otherwise.

◆ AcceptEdges()

bool ON_SubDComponentFilter::AcceptEdges ( ) const

◆ AcceptEdgeTag()

bool ON_SubDComponentFilter::AcceptEdgeTag ( ON_SubDEdgeTag  edge_tag) const

◆ AcceptFace() [1/2]

bool ON_SubDComponentFilter::AcceptFace ( const ON_SubDFace f) const

Returns: True if the filter accepts the face. False otherwise.

◆ AcceptFace() [2/2]

bool ON_SubDComponentFilter::AcceptFace ( ON_SubDFacePtr  fptr) const

Returns: True if the filter accepts the face. False otherwise.

◆ AcceptFaceEdgeCount()

bool ON_SubDComponentFilter::AcceptFaceEdgeCount ( unsigned  face_edge_count) const

◆ AcceptFaces()

bool ON_SubDComponentFilter::AcceptFaces ( ) const

◆ AcceptVertex() [1/2]

bool ON_SubDComponentFilter::AcceptVertex ( const ON_SubDVertex v) const

Returns: True if the filter accepts the vertex. False otherwise.

◆ AcceptVertex() [2/2]

bool ON_SubDComponentFilter::AcceptVertex ( ON_SubDVertexPtr  vptr) const

Returns: True if the filter accepts the vertex. False otherwise.

◆ AcceptVertexTag()

bool ON_SubDComponentFilter::AcceptVertexTag ( ON_SubDVertexTag  vertex_tag) const

◆ AcceptVertices()

bool ON_SubDComponentFilter::AcceptVertices ( ) const

◆ AddAcceptedEdgeTag()

void ON_SubDComponentFilter::AddAcceptedEdgeTag ( ON_SubDEdgeTag  edge_tag)

◆ AddAcceptedVertexTag()

void ON_SubDComponentFilter::AddAcceptedVertexTag ( ON_SubDVertexTag  vertex_tag)

◆ ClearEdgeTagFilter()

void ON_SubDComponentFilter::ClearEdgeTagFilter ( )

◆ ClearEdgeTopologyFilter()

void ON_SubDComponentFilter::ClearEdgeTopologyFilter ( )

◆ ClearFaceEdgeCountFilter()

void ON_SubDComponentFilter::ClearFaceEdgeCountFilter ( )

◆ ClearFaceTopologyFilter()

void ON_SubDComponentFilter::ClearFaceTopologyFilter ( )

◆ ClearVertexTagFilter()

void ON_SubDComponentFilter::ClearVertexTagFilter ( )

◆ ClearVertexTopologyFilter()

void ON_SubDComponentFilter::ClearVertexTopologyFilter ( )

◆ Create()

static const ON_SubDComponentFilter ON_SubDComponentFilter::Create ( bool  bAcceptVertices,
bool  bAcceptEdges,
bool  bAcceptFaces 

Parameters: bAcceptVertices - [in] If true, all vertices are accepted. Otherwise, all vertices are rejected. bAcceptEdges - [in] If true, all edges are accepted. Otherwise all edges are rejected. bAcceptFaces - [in] If true, all faces are accepted. Otherwise all faces are rejected.

◆ EdgeTopologyFilter()

ON_SubDComponentFilter::Topology ON_SubDComponentFilter::EdgeTopologyFilter ( ) const

◆ FaceTopologyFilter()

ON_SubDComponentFilter::Topology ON_SubDComponentFilter::FaceTopologyFilter ( ) const

◆ operator=()

ON_SubDComponentFilter& ON_SubDComponentFilter::operator= ( const ON_SubDComponentFilter )

◆ SetAcceptEdges()

void ON_SubDComponentFilter::SetAcceptEdges ( bool  bAcceptEdges)

◆ SetAcceptFaces()

void ON_SubDComponentFilter::SetAcceptFaces ( bool  bAcceptFaces)

◆ SetAcceptVertices()

void ON_SubDComponentFilter::SetAcceptVertices ( bool  bAcceptVertices)

◆ SetEdgeTopologyFilter()

void ON_SubDComponentFilter::SetEdgeTopologyFilter ( ON_SubDComponentFilter::Topology  edge_topology_filter)

◆ SetFaceEdgeCountFilter()

void ON_SubDComponentFilter::SetFaceEdgeCountFilter ( unsigned  minimum_face_edge_count,
unsigned  maximum_face_edge_count 

◆ SetFaceTopologyFilter()

void ON_SubDComponentFilter::SetFaceTopologyFilter ( ON_SubDComponentFilter::Topology  face_topology_filter)

◆ SetVertexTopologyFilter()

void ON_SubDComponentFilter::SetVertexTopologyFilter ( ON_SubDComponentFilter::Topology  vertex_topology_filter)

◆ VertexTopologyFilter()

ON_SubDComponentFilter::Topology ON_SubDComponentFilter::VertexTopologyFilter ( ) const

Member Data Documentation

◆ OnlyEdges

const ON_SubDComponentFilter ON_SubDComponentFilter::OnlyEdges

summary> Only faces are accepted. /summary>

◆ OnlyFaces

const ON_SubDComponentFilter ON_SubDComponentFilter::OnlyFaces

◆ OnlyVertices

const ON_SubDComponentFilter ON_SubDComponentFilter::OnlyVertices

summary> Only edges are accepted. /summary>

◆ Unset

const ON_SubDComponentFilter ON_SubDComponentFilter::Unset

No filters are set and all components are accepted. /summary>

summary> Only vertices are accepted. /summary>