Проекция на плоскость с использованием матрицы 2 * 3 - PullRequest
1 голос
/ 21 мая 2010

Я легко могу нарисовать проекцию трехмерного набора точек на плоскость с вектором нормали (1,1,1), используя матрицу

    (-sqrt(3)/2   sqrt(3)/2   0)
    (-1/2         -1/2        1).

Я хочу сделать то же самое, но для проекции на произвольную плоскость с вектором нормали (a, b, c) вместо (1,1,1). Как найти матрицу?

Заранее спасибо!

РЕДАКТИРОВАТЬ: перефразировать вопрос:

При просмотре из (1,1,1) три единичных вектора проецируются на (-sqrt (3) / 2, -1/3), (sqrt (3) / 2, -1/2), (0,1). (До коэффициента масштабирования, который не имеет значения.)

Я хочу найти проекцию трех единичных векторов при просмотре из (a, b, c) вместо (1,1,1).

Ответы [ 2 ]

0 голосов
/ 21 мая 2010

Боюсь, вы не можете застрять с матрицей 3х2 в произвольном плоском случае. Вот отличная бумага именно для того, что вы ищете.

0 голосов
/ 21 мая 2010

Когда я писал такой код, я просто использовал прекрасную статью из Википедии по этой теме.

Доступны дополнительные ресурсы здесь и здесь . Есть также связанный вопрос о SO.

...