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

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

问题描述:

我有两点:使用Three.js获取两个3d矢量之间的方向?

v1 = (0, 0, 0); 
v2 = (10, 4, -3); 

我想这两点之间的方向,所以我可以从光线投射点V1到v2。

我该怎么做?

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

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

... 

dir.subVectors(v2, v1).normalize(); 

在three.js所方向矢量被假定为具有单位长度。换句话说,他们必须正常化。如果光线投射时使用的方向矢量长度不等于1,则不会得到准确的结果。

three.js r.82

+0

是的,这是正确的。谢谢! – arpo

数学的一点点:方向= V2 - V1

此外,文件ThreeJS一点点:https://threejs.org/docs/index.html?q=vec#Reference/Math/Vector3

Aannd ... PAF!解决方案

var direction = new THREE.Vector3(); 
direction.subVectors(v2, v1) ; 
+0

啊哈!这很简单。谢谢,我会试试这个。 – arpo