全局
MeshBVH
SerializedBVH
MeshBVHVisualizer
ExtendedTriangle
OrientedBox
Raycaster
StaticGeometryGenerator
GenerateMeshBVHWorker

OrientedBox.distanceToPoint

OrientedBox.distanceToPoint() 方法用于计算有向包围盒(Oriented Box)与给定点之间的最近距离。

语法

distanceToPoint(point: Vector3): number

参数

  • pointVector3 类型,表示要计算的点。

返回值

  • 返回一个 number 类型值,表示有向包围盒与给定点之间的最近距离。

示例

const orientedBox = new THREE.OrientedBox(new THREE.Vector3(0, 0, 0), new THREE.Vector3(1, 0, 0), 
    new THREE.Vector3(0, 1, 0), new THREE.Vector3(0, 0, 1));
const point = new THREE.Vector3(2, 2, 2);
const distance = orientedBox.distanceToPoint(point);
// distance: -0.2679491924311228

在这个示例中,我们创建了一个以原点为中心,沿着 X 轴、Y 轴、Z 轴分别为其轴向的有向包围盒。然后我们将给定点放在其外部,调用 OrientedBox.distanceToPoint() 方法计算最近距离。根据算法,我们得到的结果应该是负数,因为点位于有向包围盒的外部。

参考文献