Учитывая начальную точку, углы по каждой оси вращения и направление, вычислите конечную точку

У меня есть начальная точка в 3D координатах, например, (0,0,0).

У меня есть направление, на которое я указываю, представленное тремя углами - по одному на каждый угол вращения (вращение по X, вращение по Y, вращение по Z) (для примера предположим, что я одна из тех старых черепах с пером) и расстояние, которое я пройду в направлении, на которое я указываю.

Как мне вычислить координаты конечной точки?

Я знаю, что для двумерной системы это будет просто:

new_x = old_x + cos(angle) * distance
new_y = old_y + sin(angle) * distance

но я не могу понять, как применить это к трехмерной

Я полагаю, что другой способ думать об этом - попытаться найти точку на поверхности сферы, зная направление, куда вы указываете, и радиус сферы.

9
задан Nick Udell 10 January 2011 в 00:05
поделиться