Формула для матрицы ортогональной проекции?

Я немного огляделся и не могу найти именно то, что ищу. Я нашел «канонические формулы», но как лучше всего их использовать? Нужно ли уменьшать масштаб каждой вершины? Или есть лучший способ?

Формула действительно помогла бы мне, но я также ищу объяснение о ближней и дальней плоскостях z относительно положения зрителя.


person Chad    schedule 27.03.2009    source источник
comment
Вы можете получить лучший ответ, если спросите более конкретно - это довольно общий вопрос. Приведите пример того, каковы входные данные для формулы и каковы ожидаемые выходные данные. Это из области линейной алгебры, так что это может дать вам больше информации для Google.   -  person Adam Davis    schedule 27.03.2009


Ответы (2)


Вот разумный источник, который выводит ортогональную матрицу проекта:

Учтите несколько моментов: во-первых, в пространстве глаз ваша камера расположена в начале координат и смотрит прямо по оси Z. И во-вторых, вы обычно хотите, чтобы ваше поле зрения простиралось одинаково далеко влево, как и вправо, и одинаково далеко над осью Z, как показано ниже. Если это так, ось z проходит прямо через центр вашего объема просмотра, и поэтому у вас есть r = –l и t = –b. Другими словами, вы можете вообще забыть о r, l, t и b и просто определить объем представления с точки зрения ширины w и высоты h вместе с другими плоскостями отсечения f и n. Если вы сделаете эти замены в матрице орфографической проекции выше, вы получите эту довольно упрощенную версию:

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

Визуализация матрицы орфографической проекции в LaTeX
(источник: codeguru.com)

person Bob Cross    schedule 12.05.2009