#include <TetrahedralMesh.hpp>
Public Member Functions | |
Node< SPACE_DIM > * | GetNodeA () |
Node< SPACE_DIM > * | GetNodeB () |
bool | operator!= (const typename TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator &rOther) |
EdgeIterator & | operator++ () |
EdgeIterator (TetrahedralMesh &rMesh, unsigned elemIndex) | |
Private Attributes | |
std::set< std::pair< unsigned, unsigned > > | mEdgesVisited |
TetrahedralMesh & | mrMesh |
unsigned | mElemIndex |
unsigned | mNodeALocalIndex |
unsigned | mNodeBLocalIndex |
Iterator over edges in the mesh.
This class takes care of the logic to make sure that you consider each edge exactly once.
Definition at line 347 of file TetrahedralMesh.hpp.
TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::EdgeIterator | ( | TetrahedralMesh & | rMesh, | |
unsigned | elemIndex | |||
) | [inline] |
Constructor for a new edge iterator.
rMesh | The mesh | |
elemIndex | An element index |
Definition at line 705 of file TetrahedralMesh.cpp.
References AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetElement(), AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumAllElements(), TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mEdgesVisited, TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mElemIndex, TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mNodeALocalIndex, TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mNodeBLocalIndex, and TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mrMesh.
Node< SPACE_DIM > * TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::GetNodeA | ( | ) | [inline] |
Definition at line 622 of file TetrahedralMesh.cpp.
References TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgesEnd(), AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetElement(), TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mElemIndex, TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mNodeALocalIndex, and TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mrMesh.
Node< SPACE_DIM > * TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::GetNodeB | ( | ) | [inline] |
Definition at line 630 of file TetrahedralMesh.cpp.
References TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgesEnd(), AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetElement(), TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mElemIndex, TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mNodeBLocalIndex, and TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mrMesh.
bool TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::operator!= | ( | const typename TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator & | rOther | ) | [inline] |
rOther | edge iterator with which comparison is made |
Definition at line 638 of file TetrahedralMesh.cpp.
References TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mElemIndex, TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mNodeALocalIndex, and TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mNodeBLocalIndex.
TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator & TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::operator++ | ( | ) | [inline] |
Prefix increment operator.
Definition at line 646 of file TetrahedralMesh.cpp.
References AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetElement(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNodeGlobalIndex(), AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumAllElements(), TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mEdgesVisited, TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mElemIndex, TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mNodeALocalIndex, TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mNodeBLocalIndex, and TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mrMesh.
std::set< std::pair<unsigned, unsigned> > TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mEdgesVisited [private] |
Keep track of what edges have been visited. Each edge is stored as a pair of ordered indices.
Definition at line 385 of file TetrahedralMesh.hpp.
Referenced by TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::EdgeIterator(), and TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::operator++().
unsigned TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mElemIndex [private] |
Element index.
Definition at line 389 of file TetrahedralMesh.hpp.
Referenced by TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::EdgeIterator(), TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::GetNodeA(), TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::GetNodeB(), TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::operator!=(), and TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::operator++().
unsigned TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mNodeALocalIndex [private] |
Index of one node on the edge.
Definition at line 390 of file TetrahedralMesh.hpp.
Referenced by TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::EdgeIterator(), TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::GetNodeA(), TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::operator!=(), and TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::operator++().
unsigned TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mNodeBLocalIndex [private] |
Index of the other node on the edge.
Definition at line 391 of file TetrahedralMesh.hpp.
Referenced by TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::EdgeIterator(), TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::GetNodeB(), TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::operator!=(), and TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::operator++().
TetrahedralMesh& TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::mrMesh [private] |
The mesh.
Definition at line 387 of file TetrahedralMesh.hpp.
Referenced by TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::EdgeIterator(), TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::GetNodeA(), TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::GetNodeB(), and TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator::operator++().