|
NavMap
|
Low-level geometry utilities for NavMap cells (triangles), AABB and basic queries such as ray-triangle intersection and closest-point. More...
#include <Eigen/Core>#include <Eigen/Geometry>#include <limits>#include <cmath>#include <algorithm>

Go to the source code of this file.
Classes | |
| struct | AABB |
| Axis-aligned bounding box. More... | |
Namespaces | |
| namespace | navmap |
Typedefs | |
| using | Vec3 = Eigen::Vector3f |
| 3D vector alias used across NavMap geometry. | |
Functions | |
| Vec3 | closest_point_on_triangle (const Vec3 &p, const Vec3 &a, const Vec3 &b, const Vec3 &c) |
| Compute the closest point on triangle ABC to point P. | |
| float | point_triangle_squared_distance (const Vec3 &p, const Vec3 &a, const Vec3 &b, const Vec3 &c, Vec3 *closest=nullptr) |
| Squared distance between point and triangle, with optional closest pt. | |
| bool | ray_triangle_intersect (const Vec3 &orig, const Vec3 &dir, const Vec3 &v0, const Vec3 &v1, const Vec3 &v2, float &t, float &u, float &v) |
| Möller–Trumbore ray–triangle intersection. | |
| float | triangle_area (const Vec3 &a, const Vec3 &b, const Vec3 &c) |
| Compute the area of a triangle ABC. | |
| Vec3 | triangle_normal (const Vec3 &a, const Vec3 &b, const Vec3 &c) |
| Compute a unit normal of triangle ABC. | |
Low-level geometry utilities for NavMap cells (triangles), AABB and basic queries such as ray-triangle intersection and closest-point.
This header is intentionally lightweight and header-only to enable aggressive inlining by the compiler. It provides: