Допустим, у нас есть два элемента, A и B, оба с известными позициями; Мне нужно получить положение точки, которая обращена в направлении между A и B, и на расстоянии X метров от B.

Я предполагаю, что мне нужно создать «линию» от A до B, удлинить ее еще на X метров и получить точку в конце линии.

Как это перевести в вектор?

0
Strae 5 Ноя 2018 в 23:53

1 ответ

Лучший ответ

Может быть так:

const x = 2;
const a = new THREE.Vector3();
const b = new THREE.Vector3( 0, 0, 1 );
const v = new THREE.Vector3(); // the result vector

v.subVectors( a, b );
v.normalize();
v.multiplyScalar( x );
v.add( b ); // v is now (0, 0, - 1)

Полный рабочий пример: https://jsfiddle.net/f2Lommf5/15820/

1
Mugen87 6 Ноя 2018 в 11:18