文件名称:Triangle/Ray Intersection:快速矢量化三角形/射线交叉算法-matlab开发
文件大小:647KB
文件格式:ZIP
更新时间:2024-06-18 09:10:34
matlab
使用 Möller 和Trumbore (1997),作为高度矢量化的 MATLAB 代码实现。 该算法可以处理一侧和两侧的表面,也可以处理无限线、射线(以一侧为界的线)和线段(以双方)。 输入(Nx3 中的所有数组,其中 N 是顶点数或射线数): orig : 射线的起源dir : 射线的方向vert0, vert1, vert2: 三角形的顶点输出: 相交 - 长度为 N 的布尔数组t - 从射线原点到 |dir| 中的交点的距离u,v - 交点单位的重心坐标xcoor - 交点的笛卡尔坐标此外 PointInsideVolume 是 3D 等效于 2D inpolygon 函数,可以测试是否点数组位于由表面网格定义的任何体积的内部或外部。
【文件预览】:
TriangleRayIntersection.zip
TriangleRayIntersection.mltbx