全局
MeshBVH
SerializedBVH
MeshBVHVisualizer
ExtendedTriangle
OrientedBox
Raycaster
StaticGeometryGenerator
GenerateMeshBVHWorker

ExtendedTriangle.intersectsSphere

该方法用于判断一个扩展的三角形是否与一个给定的球体相交。

参数

  • center:球体的中心点坐标。

  • radius:球体的半径。

返回值

返回一个布尔值,表示扩展的三角形是否与给定的球体相交。

描述

该方法用于判断一个扩展的三角形是否与一个给定的球体相交。如果相交,则返回 true。对于每一个三角形,在其对应的包围盒判断没有相交之后,还需要对三角形的每一个顶点进行判断。若三角形中存在点在球体内,则说明该三角形与球体相交。

示例

// 创建一个扩展三角形
const triangle = new THREE.ExtendedTriangle(
  new THREE.Vector3(-1, 0, 0),
  new THREE.Vector3(0, 1, 0),
  new THREE.Vector3(1, 0, 0)
);

// 创建一个球体
const sphere = new THREE.Sphere(
  new THREE.Vector3(0, 0, 0),
  1
);

// 判断三角形是否与球体相交
const isIntersected = triangle.intersectsSphere(sphere.center, sphere.radius);

if (isIntersected) {
  console.log('三角形与球体相交');
} else {
  console.log('三角形与球体不相交');
}

参考

  • three-bvh-mesh:基于 THREE.Mesh 和 BVH 的快速碰撞检测库。