0

我有一个使用 jsc3d 渲染 3d 对象的项目。该项目需要将新配件放入当前图形中。我需要检查附件是否与主要部分发生碰撞,以便输出 3D 模型可以通过 3d 打印机打印。有什么方法可以检测 jsc3d 中的碰撞?

4

1 回答 1

0

没有任何简单的方法可以检查 3D 网格碰撞。要获得复杂和/或凹形 3d 形状的准确结果,您需要检查两种形状的每个三角形是否相交。这可能会有点慢,具体取决于顶点的数量,但也有一些优化可能。

有一些近似技术比对所有三角形相交的 N*M 检查更快:

  • 轴对齐边界框的交集
  • 边界球的交点
  • 旋转边界框的交点
  • 边界圆柱的交点
  • ...或形状的任何组合

JSC3D 已经内置了 AABB 结构。对于简单的 3D 网格,也许你可以使用它。检查 3D AABB 相交真的很容易,在这里也可以看到这个答案:Intersection between two box in 3D space

于 2019-12-04T11:35:27.720 回答