Isle
|
[AI] Represents an edge in the LEGO world geometry graph. More...
#include <legoedge.h>
Public Member Functions | |
LegoEdge () | |
[AI] Constructs a LegoEdge with all members initialized to nullptr. More... | |
virtual | ~LegoEdge () |
[AI] Destructor. More... | |
LegoEdge * | GetClockwiseEdge (LegoWEEdge &p_face) |
[AI] Returns the clockwise adjacent edge relative to the given face. More... | |
LegoEdge * | GetCounterclockwiseEdge (LegoWEEdge &p_face) |
[AI] Returns the counterclockwise adjacent edge relative to the given face. More... | |
Vector3 * | CWVertex (LegoWEEdge &p_face) |
[AI] Returns the "clockwise" endpoint of this edge with respect to a given face. More... | |
Vector3 * | CCWVertex (LegoWEEdge &p_face) |
[AI] Returns the "counterclockwise" endpoint of this edge with respect to a given face. More... | |
LegoResult | FUN_1002ddc0 (LegoWEEdge &p_face, Vector3 &p_point) |
[AI] Performs an, as yet, unknown operation using the given face and point. More... | |
LegoWEEdge * | GetFaceA () |
[AI] Gets the first face (A) using this edge. More... | |
LegoWEEdge * | GetFaceB () |
[AI] Gets the second face (B) using this edge. More... | |
Vector3 * | GetPointA () |
[AI] Gets the first endpoint (A) of the edge. More... | |
Vector3 * | GetPointB () |
[AI] Gets the second endpoint (B) of the edge. More... | |
Public Attributes | |
LegoWEEdge * | m_faceA |
[AI] Pointer to the first face sharing this edge. More... | |
LegoWEEdge * | m_faceB |
[AI] Pointer to the second face sharing this edge. More... | |
LegoEdge * | m_ccwA |
[AI] Next edge (counterclockwise) around face A. More... | |
LegoEdge * | m_cwA |
[AI] Next edge (clockwise) around face A. More... | |
LegoEdge * | m_ccwB |
[AI] Next edge (counterclockwise) around face B. More... | |
LegoEdge * | m_cwB |
[AI] Next edge (clockwise) around face B. More... | |
Vector3 * | m_pointA |
[AI] The first endpoint of the edge. More... | |
Vector3 * | m_pointB |
[AI] The second endpoint of the edge. More... | |
[AI] Represents an edge in the LEGO world geometry graph.
Connects two points and can belong to two faces. Provides clockwise/counterclockwise edge navigation and vertex lookup for algorithms requiring half-edge traversal. [AI]
[AI] A LegoEdge represents a connection between two points (Vector3*) and can be shared between two polygonal faces (LegoWEEdge*). It also stores links to adjacent edges around each face, which allows for efficient traversal (e.g., for walking along polygons' borders). [AI]
Definition at line 16 of file legoedge.h.
LegoEdge::LegoEdge | ( | ) |
[AI] Constructs a LegoEdge with all members initialized to nullptr.
[AI]
Definition at line 9 of file legoedge.cpp.
|
virtual |
[AI] Destructor.
No special cleanup is performed (pointers are not owned). [AI]
Definition at line 22 of file legoedge.cpp.
Vector3 * LegoEdge::CCWVertex | ( | LegoWEEdge & | p_face | ) |
[AI] Returns the "counterclockwise" endpoint of this edge with respect to a given face.
[AI]
[AI] Returns the vertex that is at the endpoint of the edge in alignment with moving counterclockwise along the face p_face. Ownership is not transferred. [AI]
p_face | The face to determine the orientation. [AI] |
Definition at line 69 of file legoedge.cpp.
Vector3 * LegoEdge::CWVertex | ( | LegoWEEdge & | p_face | ) |
[AI] Returns the "clockwise" endpoint of this edge with respect to a given face.
[AI]
[AI] Returns the vertex that is at the endpoint of the edge in alignment with moving clockwise along the face p_face. Ownership is not transferred. [AI]
p_face | The face to determine the orientation. [AI] |
Definition at line 56 of file legoedge.cpp.
LegoResult LegoEdge::FUN_1002ddc0 | ( | LegoWEEdge & | p_face, |
Vector3 & | p_point | ||
) |
[AI] Performs an, as yet, unknown operation using the given face and point.
[AI_SUGGESTED_NAME: IntersectOrProjectOrClassify]
[AI] The operation likely checks or projects the provided point relative to this edge and face. Exact semantics unresolved. [AI]
p_face | The face context for the operation. [AI] |
p_point | The point involved in the operation. [AI] |
LegoEdge * LegoEdge::GetClockwiseEdge | ( | LegoWEEdge & | p_face | ) |
[AI] Returns the clockwise adjacent edge relative to the given face.
[AI]
p_face | The face (LegoWEEdge) for which to find the clockwise edge. [AI] |
Definition at line 27 of file legoedge.cpp.
LegoEdge * LegoEdge::GetCounterclockwiseEdge | ( | LegoWEEdge & | p_face | ) |
[AI] Returns the counterclockwise adjacent edge relative to the given face.
[AI]
p_face | The face (LegoWEEdge) for which to find the counterclockwise edge. [AI] |
Definition at line 41 of file legoedge.cpp.
|
inline |
[AI] Gets the first face (A) using this edge.
[AI]
Definition at line 70 of file legoedge.h.
|
inline |
[AI] Gets the second face (B) using this edge.
[AI]
Definition at line 76 of file legoedge.h.
|
inline |
[AI] Gets the first endpoint (A) of the edge.
[AI]
Definition at line 82 of file legoedge.h.
|
inline |
[AI] Gets the second endpoint (B) of the edge.
[AI]
Definition at line 88 of file legoedge.h.
LegoEdge* LegoEdge::m_ccwA |
LegoEdge* LegoEdge::m_ccwB |
LegoEdge* LegoEdge::m_cwA |
LegoEdge* LegoEdge::m_cwB |
LegoWEEdge* LegoEdge::m_faceA |
[AI] Pointer to the first face sharing this edge.
[AI]
[AI] May be null if the edge is not referenced by a face. [AI]
Definition at line 97 of file legoedge.h.
LegoWEEdge* LegoEdge::m_faceB |
[AI] Pointer to the second face sharing this edge.
[AI]
[AI] May be null if not referenced by a second face. [AI]
Definition at line 103 of file legoedge.h.
Vector3* LegoEdge::m_pointA |
Vector3* LegoEdge::m_pointB |