#include <NhalfEdge.h>
Inheritance diagram for NhalfEdge:


Definition at line 30 of file NhalfEdge.h.
Public Member Functions | |
constructors | |
| NhalfEdge () | |
| basic constructor | |
| NhalfEdge (NhalfEdgeVertex *v1, NhalfEdgeVertex *v2) | |
| another constructor | |
| NhalfEdge (NhalfEdgeVertex *v1, NhalfEdgeVertex *v2, const R32 weight) | |
| another constructor | |
destruction and deallocation | |
| ~NhalfEdge () | |
| basic destructor | |
| void | clear () |
| clear the edge | |
check for properties of the edge | |
| BOOL | isVisited () const |
| test whether edge has been visited | |
| BOOL | isDeleted () const |
| test whether edge has been deleted | |
| BOOL | isActive () const |
| test whether edge is active | |
| BOOL | isContractable () |
| test whether edge may be contracted | |
| BOOL | onPartition () const |
| test wheter edge straddles a partition | |
| BOOL | operator< (const NhalfEdge &edge) |
| less than operator | |
| BOOL | operator> (const NhalfEdge &edge) |
| greator than operator | |
| BOOL | operator<= (const NhalfEdge &edge) |
| less than equals operator | |
get information about the edge | |
| NhalfEdgeVertex * | getVertexA () const |
| get the "from" vertex of the edge | |
| NhalfEdgeVertex * | getVertexB () const |
| get the "to" vertex of the edge | |
| R32 | getWeight () const |
| get the edge weight | |
| NhalfEdge * | getOpposite () const |
| get the opposite for the edge | |
| NhalfEdge * | getNext () const |
| get the next for the edge | |
| NhalfEdge * | getPrevious () const |
| get the previous for the edge | |
set information about the edge | |
| void | setVisited (const BOOL visited) |
| set the edge visited or not | |
| void | setActive (const BOOL active) |
| set the edge active or not | |
| void | setDeleted (const BOOL deleted) |
| set the edge deleted or not | |
| void | setWeight (const R32 weight) |
| set the edge weight | |
| void | addToWeight (const R32 weight) |
| add to the edge weight | |
| void | setNext (NhalfEdge *pEdge) |
| set the next for the edge | |
| void | setOpposite (NhalfEdge *pEdge) |
| set the opposite for the edge | |
Protected Member Functions | |
special operations on the edge | |
| void | reconnectPrevious () const |
| special op for deletion | |
| void | disconnectFromOpposite () const |
| special op for deletion | |
| U32 | getIndex () const |
| get the index for the edge | |
| void | setIndex (const U32 index) |
| set the index for the edge | |
Protected Attributes | |
| NhalfEdgeVertex * | m_pVertexA |
| pointer to start vertex | |
| NhalfEdgeVertex * | m_pVertexB |
| pointer to edge vertex | |
| NhalfEdge * | m_pOpposite |
| pointer to opposite vertex | |
| NhalfEdge * | m_pNext |
| pointer to next vertex | |
| R32 | m_weight |
| edge weight | |
| U32 | m_attributeMask |
| attribute mash | |
| U32 | m_index |
| index ..only should be accessed by halfEdgeMesh | |
Friends | |
| class | NhalfEdgeMesh |
| class | NhalfEdgeVertex |
|
|
basic constructor
Definition at line 7 of file NhalfEdge.cpp. References clear(), FALSE, setActive(), setDeleted(), setVisited(), and TRUE. Referenced by NhalfEdge(). |
|
||||||||||||
|
another constructor
Definition at line 34 of file NhalfEdge.cpp. References clear(), FALSE, getOpposite(), m_pVertexA, m_pVertexB, setActive(), setDeleted(), setOpposite(), setVisited(), and TRUE. |
|
||||||||||||||||
|
another constructor
Definition at line 22 of file NhalfEdge.cpp. References NhalfEdge(), R32, and setWeight(). |
|
|
basic destructor
Definition at line 54 of file NhalfEdge.cpp. References clear(). |
|
|
add to the edge weight
Definition at line 441 of file NhalfEdge.cpp. References isDeleted(), m_weight, and R32. Referenced by NhalfEdgeMesh::collapseEdge(). |
|
|
clear the edge
Definition at line 62 of file NhalfEdge.cpp. References m_attributeMask, m_pNext, m_pOpposite, m_pVertexA, m_pVertexB, and m_weight. Referenced by NhalfEdge(), and ~NhalfEdge(). |
|
|
special op for deletion
Definition at line 380 of file NhalfEdge.cpp. References isDeleted(), and setOpposite(). Referenced by NhalfEdgeMesh::activatePartition(), NhalfEdgeMesh::deleteEdge(), NhalfEdgeMesh::deleteFace(), and NhalfEdgeMesh::deleteVertex(). |
|
|
get the index for the edge allows for fast deletion and finding
Definition at line 119 of file NhalfEdge.cpp. References U32. |
|
|
get the next for the edge the edge that is next in the "ring" in clockwise order
Reimplemented in gmEdge, and ParticleEdge. Definition at line 311 of file NhalfEdge.cpp. Referenced by NhalfEdgeMesh::activatePartition(), NhalfEdgeMesh::collapseEdge(), NhalfEdgeMesh::deleteFace(), NhalfEdgeMesh::deleteVertex(), NhalfEdgeVertex::getNeighbors(), ParticleEdge::getNext(), gmEdge::getNext(), getPrevious(), isContractable(), NhalfEdgeVertex::isMovable(), reconnectPrevious(), and NhalfEdgeMesh::uncollapseVertex(). |
|
|
get the opposite for the edge
Reimplemented in gmEdge, and ParticleEdge. Definition at line 293 of file NhalfEdge.cpp. Referenced by NhalfEdgeVertex::addEdge(), NhalfEdgeMesh::collapseEdge(), NhalfEdgeVertex::getNeighbors(), ParticleEdge::getOpposite(), gmEdge::getOpposite(), NhalfEdge(), and NhalfEdgeVertex::removeEdge(). |
|
|
get the previous for the edge the edge that is previous in the "ring" in clockwise order slow.. method traverses ring to get edge...
Reimplemented in gmEdge, and ParticleEdge. Definition at line 332 of file NhalfEdge.cpp. References getNext(). Referenced by NhalfEdgeMesh::deleteFace(), ParticleEdge::getPrevious(), and gmEdge::getPrevious(). |
|
|
get the "from" vertex of the edge
Reimplemented in gmEdge, and ParticleEdge. Definition at line 257 of file NhalfEdge.cpp. Referenced by NhalfEdgeMesh::activatePartition(), NhalfEdgeVertex::addEdge(), NhalfEdgeMesh::addHalfEdge(), NhalfEdgeMesh::collapseEdge(), NhalfEdgeMesh::deleteEdge(), NhalfEdgeMesh::deleteFace(), NhalfEdgeMesh::deleteVertex(), NhalfEdgeVertex::findEdge(), NhalfEdgeVertex::getNeighbors(), ParticleEdge::getVertexA(), gmEdge::getVertexA(), isContractable(), NhalfEdgeVertex::removeEdge(), and NhalfEdgeMesh::uncollapseVertex(). |
|
|
get the "to" vertex of the edge
Reimplemented in gmEdge, and ParticleEdge. Definition at line 273 of file NhalfEdge.cpp. Referenced by NhalfEdgeMesh::activatePartition(), NhalfEdgeVertex::addEdge(), NhalfEdgeMesh::addHalfEdge(), NhalfEdgeMesh::collapseEdge(), NhalfEdgeMesh::deleteEdge(), NhalfEdgeMesh::deleteFace(), NhalfEdgeMesh::deleteVertex(), NhalfEdgeVertex::findEdge(), NhalfEdgeVertex::getNeighbors(), ParticleEdge::getVertexB(), gmEdge::getVertexB(), isContractable(), NhalfEdgeVertex::isMovable(), NhalfEdgeMesh::partitionFromConnectedness(), NhalfEdgeVertex::removeEdge(), and NhalfEdgeMesh::uncollapseVertex(). |
|
|
get the edge weight
Definition at line 415 of file NhalfEdge.cpp. References R32. Referenced by NhalfEdgeMesh::collapseEdge(), and NhalfEdgePtrSort::operator()(). |
|
|
test whether edge is active
Definition at line 167 of file NhalfEdge.cpp. References BOOL, FALSE, and N_EDGE_ACTIVE. Referenced by NhalfEdgeMesh::activateEdge(), NhalfEdgeMesh::activatePartition(), NhalfEdgeVertex::findEdge(), NhalfEdgeVertex::getNeighbors(), and NhalfEdgeMesh::isInHalfEdgeMesh(). |
|
|
test whether edge may be contracted
Definition at line 455 of file NhalfEdge.cpp. References BOOL, FALSE, NhalfEdgeVertex::findEdge(), NhalfEdgeVertex::getNeighbors(), getNext(), getVertexA(), getVertexB(), isDeleted(), and TRUE. Referenced by NhalfEdgeMesh::collapseEdge(). |
|
|
test whether edge has been deleted
Definition at line 191 of file NhalfEdge.cpp. References BOOL, and N_EDGE_DELETED. Referenced by NhalfEdgeMesh::activatePartition(), addToWeight(), disconnectFromOpposite(), isContractable(), NhalfEdgeMesh::isInHalfEdgeMesh(), operator<(), operator<=(), operator>(), reconnectPrevious(), setActive(), setIndex(), setNext(), setOpposite(), setVisited(), and setWeight(). |
|
|
test whether edge has been visited
Definition at line 141 of file NhalfEdge.cpp. References BOOL, and N_EDGE_VISITED. Referenced by ModButterflySubdivision::subdivide(). |
|
|
test wheter edge straddles a partition
Definition at line 400 of file NhalfEdge.cpp. |
|
|
less than operator
Definition at line 77 of file NhalfEdge.cpp. References BOOL, edge, isDeleted(), and m_weight. |
|
|
less than equals operator
Definition at line 107 of file NhalfEdge.cpp. References BOOL, edge, isDeleted(), and m_weight. |
|
|
greator than operator
Definition at line 92 of file NhalfEdge.cpp. References BOOL, edge, isDeleted(), and m_weight. |
|
|
special op for deletion
Definition at line 352 of file NhalfEdge.cpp. References getNext(), isDeleted(), and setNext(). Referenced by NhalfEdgeMesh::deleteEdge(). |
|
|
set the edge active or not
Definition at line 177 of file NhalfEdge.cpp. References BOOL, isDeleted(), m_attributeMask, and N_EDGE_ACTIVE. Referenced by NhalfEdgeMesh::activateEdge(), NhalfEdgeMesh::deActivateEdge(), and NhalfEdge(). |
|
|
set the edge deleted or not
Definition at line 200 of file NhalfEdge.cpp. References BOOL, m_attributeMask, and N_EDGE_DELETED. Referenced by NhalfEdgeMesh::deleteEdge(), NhalfEdgeMesh::deleteFace(), NhalfEdgeMesh::deleteVertex(), NhalfEdge(), and NhalfEdgeMesh::uncollapseVertex(). |
|
|
set the index for the edge allows for fast deletion and finding
Definition at line 128 of file NhalfEdge.cpp. References isDeleted(), m_index, and U32. Referenced by NhalfEdgeMesh::addHalfEdge(). |
|
|
set the next for the edge the edge that is next in the "ring" in clockwise order
Definition at line 241 of file NhalfEdge.cpp. References isDeleted(), and m_pNext. Referenced by NhalfEdgeMesh::activatePartition(), NhalfEdgeMesh::collapseEdge(), NhalfEdgeMesh::deleteFace(), reconnectPrevious(), ModButterflySubdivision::subdivide(), and NhalfEdgeMesh::uncollapseVertex(). |
|
|
set the opposite for the edge
Definition at line 219 of file NhalfEdge.cpp. References isDeleted(), and m_pOpposite. Referenced by NhalfEdgeMesh::activatePartition(), NhalfEdgeMesh::collapseEdge(), disconnectFromOpposite(), and NhalfEdge(). |
|
|
set the edge visited or not
Definition at line 153 of file NhalfEdge.cpp. References BOOL, isDeleted(), m_attributeMask, and N_EDGE_VISITED. Referenced by NhalfEdgeMesh::computeCutSize(), NhalfEdge(), and ModButterflySubdivision::subdivide(). |
|
|
set the edge weight
Definition at line 428 of file NhalfEdge.cpp. References isDeleted(), m_weight, and R32. Referenced by NhalfEdgeMesh::activatePartition(), NhalfEdgeMesh::collapseEdge(), and NhalfEdge(). |
|
|
Definition at line 31 of file NhalfEdge.h. |
|
|
Definition at line 32 of file NhalfEdge.h. |
|
|
attribute mash
Definition at line 128 of file NhalfEdge.h. Referenced by clear(), setActive(), setDeleted(), and setVisited(). |
|
|
index ..only should be accessed by halfEdgeMesh
Definition at line 130 of file NhalfEdge.h. Referenced by setIndex(). |
|
|
pointer to next vertex
Definition at line 124 of file NhalfEdge.h. |
|
|
pointer to opposite vertex
Definition at line 122 of file NhalfEdge.h. Referenced by clear(), and setOpposite(). |
|
|
pointer to start vertex
Definition at line 118 of file NhalfEdge.h. Referenced by clear(), and NhalfEdge(). |
|
|
pointer to edge vertex
Definition at line 120 of file NhalfEdge.h. Referenced by clear(), and NhalfEdge(). |
|
|
edge weight
Definition at line 126 of file NhalfEdge.h. Referenced by addToWeight(), clear(), operator<(), operator<=(), operator>(), and setWeight(). |
1.3.4