Bạn có thể định nghĩa một vòng quay từ hai vectơ đơn vị chiều dài v1
và v2
như vậy:
var quaternion = new THREE.Quaternion(); // create one and reuse it
quaternion.setFromUnitVectors(v1, v2);
Trong trường hợp của bạn, bạn cần phải bình thường hóa vectơ của bạn đầu tiên.
Sau đó bạn có thể áp dụng được luân chuyển đến một đối tượng sử dụng mẫu sau:
var matrix = new THREE.Matrix4(); // create one and reuse it
matrix.makeRotationFromQuaternion(quaternion);
object.applyMatrix(matrix);
Ngoài ra, nếu bạn không yêu cầu các ma trận, bạn có thể chỉ áp dụng các quaternion trực tiếp:
object.applyQuaternion(quaternion);
ba.js r.86
Đó là một tổ chức phi SO câu hỏi, btw nhìn đây http://gamedev.stackexchange.com/questions/20097/how- đến-tính-một-3x3-rotation-matrix-from-2-direction-vectơ –
và đây là tài liệu vector3 http://threejs.org/docs/#Reference/Math/Vector3 –
Câu hỏi này dường như là tắt- chủ đề vì nó là về http://math.stackexchange.com/ –