2011-01-21 6 views
0

Я прошел через все доступные ресурсы исследования в Интернете, насколько это возможно, в форме простых уравнений, векторов или тригонометрические уравнения. Я не мог найти способ сделать следующее:Преобразование 3D (x, y, z) в 2D (x, y) (ортогонально) вдоль его направления

Предполагая, что Y находится в 3D-мире. Мне нужно нарисовать две двумерные траектории ортогонально (не выступы) для трехмерной траектории, скажем XY-плоскость для бокового обзора траектории w.r.t. сама траектория и XZ-плоскость для просмотра сверху.

У меня есть все трехмерные точки 3D-траектории, начальная скорость, оба угла могут быть вычислены векторной математикой.

Как продолжить?

ссылка: Под кривой под разными углами, которая может потерять ее значение при проецировании вдоль плоскости XY. Все, что я хочу, - это преобразовать красную кривую вдоль себя, зеленую кривую вдоль зеленой кривой и так далее. и дальше, как бы я сопоставлял вид сбоку плоскости. Вид сверху сравнительно прост и прост, просто беря X и Z ординат каждой точки.

Я имею в виду это требование. :)

alt text alt text

+0

Я думаю, что это связано с интерполяцией. – Rick2047

ответ

0

Я не думаю, что я понимаю этот вопрос, но я отвечу мою интерпретацию в любом случае.

У вас есть 3D траекторию, описываемую последовательность точек р , ..., р N. Нам дано угол V на плоскости Р, параллельной оси ординат, и желает, чтобы вычислить 2D координаты (д я, ч я) из точек р я проецируется на эту плоскость, где Н я является высота координата в направлении Y и г я является расстояние координата в направлении V. Предположим, P = (0, 0, 0), либо вычесть р от всех векторы.

Пусть р я = (х я, у я, г я). Координата высоты h i = y i. Предположим, что угол v задан относительно оси Z. Тогда вектор для направления v равен r = (sin (v), 0, cos (v)), а координаты расстояния становятся равными d i = точка (p i, r).

+0

Вы поняли мою проблему отлично. \ m/Я пытаюсь представить 3-й абзац. Я вернусь. (И я удивляюсь, что я мог бы объяснить по-иному). – Rick2047