Struct HalfEdgeEdge

Struct Documentation

struct legion::physics::HalfEdgeEdge

Public Functions

HalfEdgeEdge() = default
inline HalfEdgeEdge(math::vec3 newEdgePositionPtr)
inline void setNextAndPrevEdge(HalfEdgeEdge *newPrevEdge, HalfEdgeEdge *newNextEdge)

sets ‘nextEdge’ and ‘prevEdge’ with the given HalfEdgeEdges

inline void setPairingEdge(HalfEdgeEdge *edge)

Sets the pairingEdge to the passed in edge, and sets the edge.pairingEdge to this if this edge or the passed edge already have pairing edge, the pairing edge of the pairing edge will be set to nullptr.

inline math::vec3 getLocalNormal() const
inline math::vec3 getLocalEdgeDirection() const

Gets the direction of the edge by getting the vector starting from the current edge’s position to the next edge.

inline bool isVertexVisible(const math::vec3 &vert)
inline bool isEdgeHorizonFromVertex(const math::vec3 &vert)
inline void DEBUG_drawEdge(const math::mat4 &transform, const math::color &debugColor, float time = 20.0f, float width = 5.0f)
inline void DEBUG_drawInsetEdge(const math::vec3 spacing, const math::color &debugColor, float time = 20.0f, float width = 5.0f)

Public Members

HalfEdgeEdge *pairingEdge = nullptr
HalfEdgeEdge *nextEdge = nullptr
HalfEdgeEdge *prevEdge = nullptr
HalfEdgeFace *face = nullptr
EdgeLabel label
math::vec3 edgePosition
std::string id