3d параболическая траектория - PullRequest
6 голосов
/ 27 января 2010

Я пытаюсь вычислить некоторые вычисления, используя дуги в трехмерном пространстве, но я немного растерялся. Допустим, я хочу анимировать дугу в трехмерном пространстве, чтобы соединить координаты 2 x, y, z (обе координаты имеют значение z, равное 0, и являются просто точками на плоскости). Я управляю дугой, отправляя ей начальное положение x, y, z, вращение, скорость и значение силы тяжести. Если я знаю обе координаты x, y, z, которые необходимо соединить, есть ли способ рассчитать, какие значения вращения, скорости и силы тяжести необходимы для соединения его от начальной координаты x, y, z до конечной?

Спасибо.

РЕДАКТИРОВАТЬ: Спасибо Tom10. Чтобы уточнить, я делаю "дуги", создавая параболу с частицами. Я пытаюсь выяснить, как (начиная параболу, образованную серией частиц с началом x, y, z, скоростью, вращением и гравитацией) определить, где она будет в конце (последние координаты x, y, z ). Так что, если это, если это две координаты, которые должны быть связаны:

x1=240;
y1=140;
z1=0;

x2=300;
y2=200;
z2=0;

как можно рассчитать вращение, скорость и гравитацию этой параболы, используя только эти переменные, чтобы начать формирование параболы:

x1=240;
y1=140;
z1=0;
rotation;
velocity;
gravity;

Я пытаюсь сохранить угол постоянным значением.

Ответы [ 2 ]

6 голосов
/ 27 января 2010

Эта ссылка описывает баллистическую траекторию для «поражения цели в диапазоне x и высоте y при выстреле из (0,0) и с начальной скоростью v требуемого угла (углов) запуска θ», чего ты хочешь, верно? Чтобы привести ваши переменные в правильную форму, установите угол поворота (в плоскости xy) так, чтобы вы указывали в правильном направлении, то есть atan (y / x), и с этого момента, чтобы соответствовать обычной терминологии для 2D проблема, переписать ваш z на y и горизонтальное расстояние до цели (которое равно sqrt (x x + y y)) как x, а затем вы можете напрямую использовать формулу в ссылке.

0 голосов
/ 27 января 2010

Сделайте то же самое, что и в 2D. Вы просто должны преобразовать свои фигуры в аффинное пространство, вращая ось, чтобы одна из них стала нулевой затем решите и отмените вращение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...