#include <TetrahedralMesh.hpp>
Public Member Functions | |
Node< SPACE_DIM > * | GetNodeA () |
Node< SPACE_DIM > * | GetNodeB () |
bool | operator!= (const 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 363 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 772 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] |
Get a pointer to the node in the mesh at end A of the spring.
Definition at line 689 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] |
Get a pointer to the node in the mesh at end B of the spring.
Definition at line 697 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 TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::EdgeIterator & | rOther | ) | [inline] |
Comparison not-equal-to.
rOther | edge iterator with which comparison is made |
Definition at line 705 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 713 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 402 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 406 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 407 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 408 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 404 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++().