11#ifndef EBGEOMETRY_DCEL_ITERATOR_HPP
12#define EBGEOMETRY_DCEL_ITERATOR_HPP
40template <
class T,
class Meta>
43 static_assert(std::is_floating_point_v<T>,
"T must be a floating-point type");
195#include "EBGeometry_DCEL_IteratorImplem.hpp"
Half-edge iterator class for navigating the half edge mesh.
Definition EBGeometry_DCEL_Iterator.hpp:42
std::shared_ptr< Edge > EdgePtr
Alias for edge pointer.
Definition EBGeometry_DCEL_Iterator.hpp:69
EdgeIteratorT(const EdgePtr &a_startEdge) noexcept
Constructor, taking an arbitrary starting half-edge directly (rather than a face's own half-edge)....
EdgeIteratorT(Face &a_face) noexcept
Constructor, taking a face as argument. The iterator begins at the half-edge pointer contained in the...
std::shared_ptr< Edge > m_startEdge
Starting half-edge.
Definition EBGeometry_DCEL_Iterator.hpp:184
std::shared_ptr< Edge > m_curEdge
Current half-edge.
Definition EBGeometry_DCEL_Iterator.hpp:189
~EdgeIteratorT() noexcept=default
Destructor.
EdgeIteratorT(EdgeIteratorT &&a_other) noexcept=default
Move constructor.
std::shared_ptr< Face > FacePtr
Alias for face pointer.
Definition EBGeometry_DCEL_Iterator.hpp:74
std::shared_ptr< Vertex > VertexPtr
Alias for vertex pointer.
Definition EBGeometry_DCEL_Iterator.hpp:64
EdgeIteratorT(const EdgeIteratorT &a_other) noexcept=default
Copy constructor.
void reset() noexcept
Reset function for the iterator. This resets the iterator so that it begins from the starting half-ed...
bool m_fullLoop
If true, a full loop has been made around the polygon face.
Definition EBGeometry_DCEL_Iterator.hpp:179
EdgeIteratorT()=delete
Default construction is not allowed. Use one of the full constructors.
EdgeIteratorT(const Face &a_face) noexcept
Constructor, taking a face as argument. The iterator begins at the half-edge pointer contained in the...
bool ok() const noexcept
Function which checks if the iteration can be continued.
Three-dimensional vector class with arithmetic operators.
Definition EBGeometry_Vec.hpp:225
Namespace containing all of EBGeometry's functionality.
Definition EBGeometry_AnalyticDistanceFunctions.hpp:31