|
ViewDesignEngine
3.1.0
高性能 CAD 计算几何引擎
|
射线求交工具集 更多...
#include "vde/core/point.h"#include "vde/core/line.h"#include "vde/core/triangle.h"#include "vde/core/aabb.h"#include <optional>#include <vector>
类 | |
| struct | vde::collision::RayTriResult |
| 射线-三角形求交结果 更多... | |
| struct | vde::collision::RaySphereResult |
| 射线-球体求交结果 更多... | |
命名空间 | |
| vde | |
| vde::collision | |
函数 | |
| std::optional< RayTriResult > | vde::collision::ray_triangle_intersect (const Point3D &origin, const Vector3D &dir, const Triangle3D &tri) |
| 射线-三角形求交(Möller-Trumbore 算法) 更多... | |
| std::optional< RayTriResult > | vde::collision::ray_triangle_intersect (const Ray3Dd &ray, const Triangle3D &tri) |
| 射线-三角形求交(Ray3Dd 重载) 更多... | |
| bool | vde::collision::ray_aabb_intersect (const Ray3Dd &ray, const AABB3D &box, double &tmin_out, double &tmax_out) |
| 射线-AABB 求交(slab 方法) 更多... | |
| std::optional< RaySphereResult > | vde::collision::ray_sphere_intersect (const Point3D &origin, const Vector3D &dir, const Point3D ¢er, double radius) |
| 射线-球体求交(解析法) 更多... | |
| std::optional< RaySphereResult > | vde::collision::ray_sphere_intersect (const Ray3Dd &ray, const Point3D ¢er, double radius) |
| 射线-球体求交(Ray3Dd 重载) 更多... | |
| std::optional< double > | vde::collision::ray_plane_intersect (const Point3D &origin, const Vector3D &dir, const Point3D &plane_point, const Vector3D &plane_normal) |
| 射线-平面求交 更多... | |
| std::optional< double > | vde::collision::ray_plane_intersect (const Ray3Dd &ray, const Point3D &plane_point, const Vector3D &plane_normal) |
| 射线-平面求交(Ray3Dd 重载) 更多... | |
| std::optional< RayTriResult > | vde::collision::ray_mesh_intersect (const Point3D &origin, const Vector3D &dir, const std::vector< Triangle3D > &triangles) |
| 射线-网格求交(暴力遍历) 更多... | |
| std::optional< RayTriResult > | vde::collision::ray_mesh_intersect (const Ray3Dd &ray, const std::vector< Triangle3D > &triangles) |
| 射线-网格求交(Ray3Dd 重载) 更多... | |
射线求交工具集
射线与基本几何图元(三角形、AABB、球体、平面、网格)的求交函数。 包含 Möller-Trumbore 算法、slab 方法、解析求交等。
在文件 ray_intersect.h 中定义.