使用Three.js获取两个3d向量之间的方向?

arp*_*rpo 4 javascript math three.js

我有两点:

v1 = (0, 0, 0);
v2 = (10, 4, -3);
Run Code Online (Sandbox Code Playgroud)

我想得到这两点之间的方向,所以我可以从点v1到v2进行rayCast.

我怎么做?

Wes*_*ley 15

图案遵循以创建方向矢量从v1v2的是:

var dir = new THREE.Vector3(); // create once an reuse it

...

dir.subVectors( v2, v1 ).normalize();
Run Code Online (Sandbox Code Playgroud)

假设three.js中的方向向量具有单位长度.换句话说,它们必须正常化.如果光线投射时使用的方向向量长度不等于1,则无法获得准确的结果.

three.js r.82


Hel*_*ium 6

一点数学知识:方向 = v2 - v1

另外,还有一点 ThreeJS 文档:https://thirdjs.org/docs/#api/math/Vector3

安安德……帕夫!解决方案 !

 var direction = new THREE.Vector3();
 direction.subVectors( v2, v1 ) ;
Run Code Online (Sandbox Code Playgroud)