Угол 2 векторов можно найти по следующей формуле: v1•v2 = |v1||v2| cos(angle)
Чтобы найти угол, вам нужно acos
скалярное произведение ваших 2 векторов.
Согласно документации, в Three JS Вы можете найти точечное произведение следующим образом: dotproductV1V2 = V1.dot(V2)
Затем acos
Результат, чтобы найти угол: Math.acos(dotproductV1V2)
Редактировать:
Пример получения угла каждого компонента вектора:
var V1x = new THREE.Vector3(1, 0, 0)
var V1y = new THREE.Vector3(0, 1, 0)
var V1z = new THREE.Vector3(0, 0, 1)
var V2 = new THREE.Vector3(6, -10, 20)
var V2xz = new THREE.Vector3(V2.x, 0, V2.z)
var V2xy = new THREE.Vector3(V2.x, V2.y, 0)
//angle in radian between origin X axis and X axis of V2
var angle_V1V2x = Math.acos(V1x.dot(V2xz.normalize()))
//angle in radian between origin Y axis and Y axis of V2
var angle_V1V2y = Math.acos(V1y.dot(V2xy.normalize()))
//angle in radian between origin Z axis and Z axis of V2
var angle_V1V2z = Math.acos(V1z.dot(V2xz.normalize()))