Class in order to circulate over the edges connected to a Triangle's vertex.
More...
#include <Mesh.h>
|
| | VertexEdgeCirculator (const Mesh *mesh, size_t triangleIndex, uint_fast8_t localVertexIndex) |
| | This hidden constructor can only be called from the Mesh class.
|
| |
Class in order to circulate over the edges connected to a Triangle's vertex.
Involves a small overhead compared to using the more low-level access to the raw data by using getMeshData().
Definition at line 202 of file Mesh.h.
◆ VertexEdgeCirculator() [1/2]
| agxCollide::Mesh::VertexEdgeCirculator::VertexEdgeCirculator |
( |
| ) |
|
◆ VertexEdgeCirculator() [2/2]
| agxCollide::Mesh::VertexEdgeCirculator::VertexEdgeCirculator |
( |
const Mesh * |
mesh, |
|
|
size_t |
triangleIndex, |
|
|
uint_fast8_t |
localVertexIndex |
|
) |
| |
|
protected |
This hidden constructor can only be called from the Mesh class.
- Parameters
-
| mesh | - Pointer to a mesh |
| triangleIndex | Within the meshData, the index of the Triangle the circulator points to when constructed. |
| localVertexIndex | The local index of the Triangle's vertex that the circulator points to when constructed. |
◆ atEnd()
| bool agxCollide::Mesh::VertexEdgeCirculator::atEnd |
( |
| ) |
const |
◆ getEdgeEndVertex()
| agx::Vec3 agxCollide::Mesh::VertexEdgeCirculator::getEdgeEndVertex |
( |
| ) |
const |
- Returns
- Ending vertex of the edge the circulator is pointing to.
Definition at line 957 of file Mesh.h.
◆ getEdgeStartVertex()
| agx::Vec3 agxCollide::Mesh::VertexEdgeCirculator::getEdgeStartVertex |
( |
| ) |
const |
- Returns
- Starting vertex of the edge the circulator is pointing to.
Definition at line 948 of file Mesh.h.
◆ getLocalEdgeIndex()
| uint_fast8_t agxCollide::Mesh::VertexEdgeCirculator::getLocalEdgeIndex |
( |
| ) |
const |
◆ getMesh()
| const Mesh * agxCollide::Mesh::VertexEdgeCirculator::getMesh |
( |
| ) |
const |
- Returns
- A pointer to the Mesh this triangle is based on.
Definition at line 990 of file Mesh.h.
◆ getTriangle()
| const Mesh::Triangle agxCollide::Mesh::VertexEdgeCirculator::getTriangle |
( |
| ) |
const |
|
inline |
◆ getTriangleIndex()
| size_t agxCollide::Mesh::VertexEdgeCirculator::getTriangleIndex |
( |
| ) |
const |
- Returns
- Global index of triangle the circulator is pointing at right now.
Definition at line 984 of file Mesh.h.
◆ hasJustJumpedOverHole()
| bool agxCollide::Mesh::VertexEdgeCirculator::hasJustJumpedOverHole |
( |
| ) |
const |
- Returns
- Has the iterator just jumped over a hole (and is on its other side).
Definition at line 965 of file Mesh.h.
◆ isValid()
| bool agxCollide::Mesh::VertexEdgeCirculator::isValid |
( |
| ) |
const |
◆ operator++() [1/2]
Move circulator one step clockwise.
Moves to next triangle bordering to the vertex and this triangle's edge starting from the vertex. If no half-edge information is available for the bordering edge (a hole), the circulator will go counterclockwise backwards around the vertex until a hole is found there.
Definition at line 925 of file Mesh.h.
◆ operator++() [2/2]
| void agxCollide::Mesh::VertexEdgeCirculator::operator++ |
( |
int |
| ) |
|
Move circulator one step clockwise.
Moves to next triangle bordering to the vertex and this triangle's edge starting from the vertex. If no half-edge information is available for the bordering edge (a hole), the circulator will go counterclockwise backwards around the vertex until a hole is found there.
Definition at line 892 of file Mesh.h.
◆ m_hasJustJumpedOverHole
| bool agxCollide::Mesh::VertexEdgeCirculator::m_hasJustJumpedOverHole |
|
protected |
◆ m_hasMoved
| bool agxCollide::Mesh::VertexEdgeCirculator::m_hasMoved |
|
protected |
◆ m_localEdgeIndex
| uint_fast8_t agxCollide::Mesh::VertexEdgeCirculator::m_localEdgeIndex |
|
protected |
◆ m_localEdgeStartIndex
| uint_fast8_t agxCollide::Mesh::VertexEdgeCirculator::m_localEdgeStartIndex |
|
protected |
◆ m_mesh
◆ m_triangleIndex
| size_t agxCollide::Mesh::VertexEdgeCirculator::m_triangleIndex |
|
protected |
◆ m_triangleStartIndex
| size_t agxCollide::Mesh::VertexEdgeCirculator::m_triangleStartIndex |
|
protected |
◆ m_valid
| bool agxCollide::Mesh::VertexEdgeCirculator::m_valid |
|
protected |
The documentation for this class was generated from the following file: