【发布时间】:2017-10-22 12:18:55
【问题描述】:
我正在尝试检查向量的新位置是否越过给定的线。
我知道原始向量的坐标,以及它的新位置。 我要检查它是否交叉的线始终垂直于向量原始位置方向。 并且直线与零的距离始终相同。
我正在使用threejs,因此可以访问他们所有的数学/向量函数。然而,这只是二维的。
编辑
如果有人需要查看此代码,感谢@beta 下面的回答。它实际上是为了阻止一个点离另一个物体的中心太近
canPointMoveTo(originalPos, newPos) {
const minDistance = 40;
const k = originalPos.clone().normalize();
const newDotProduct = newPos.dot(k);
return newDotProduct >= minDistance;
}
【问题讨论】:
标签: javascript math vector three.js