Суббота, 23 Ноября 2024, 02:16

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Неаффинные преобразования
Gargolev43Дата: Понедельник, 27 Июля 2015, 12:48 | Сообщение # 1
частый гость
Сейчас нет на сайте
Подскажите, где про это можно почитать. В моем случае это матрица "перспективы":
1 0 0 0
0 1 0 0
0 0 1 a
0 0 0 1

где a != 0. В Objective C она получается перевернутая так что элемент a отвечает за перспективу, а за координату Z отвечает элемент m43. Визуально она как бы преобразует прямоугольники в трапеции.

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


Сообщение отредактировал Gargolev43 - Понедельник, 27 Июля 2015, 12:49
TLTДата: Понедельник, 27 Июля 2015, 13:43 | Сообщение # 2
Сейчас нет на сайте
Нужна инфа на русском языке или на английском тоже?

http://math.stackexchange.com/questions/577598/are-there-non-affine-matrices
http://algolist.manual.ru/graphics/fracart.php


Дао, выраженное словами, не есть истинное Дао.
Gargolev43Дата: Понедельник, 27 Июля 2015, 17:41 | Сообщение # 3
частый гость
Сейчас нет на сайте
без разницы. На английском что-то попадалось общего характера, на русском даже не знаю как задать запрос - выводит только "афинные"

Добавлено (27 июля 2015, 17:41)
---------------------------------------------
посмотрел по ссылкам - описываются какие-то частные случаи. А есть что-нибудь вроде этого?

https://ru.wikipedia.org/wiki/Матрица_поворота

т е с общими свойствами и формулами?

karuyДата: Вторник, 28 Июля 2015, 11:14 | Сообщение # 4
заслуженный участник
Сейчас нет на сайте
Матрицы Модели, Вида и Проекции
Gargolev43Дата: Вторник, 28 Июля 2015, 12:30 | Сообщение # 5
частый гость
Сейчас нет на сайте
Спасибо, последняя ссылка не подошла, но помогла найти более подходящие статьи:

Неафинные преобразования и с чем это едят:
https://msdn.microsoft.com/ru-ru/dn630652.aspx

Расписывается конкретно мой случай и похожие:
http://compgraph.tpu.ru/matrixproections.htm

Единственное что остается непонятно - если результирующий вектор [x y z w] и [x/w y/w z/w 1] - одно и то же, то почему они не предлагают делить на w саму матрицу преобразований, чтобы получить в ней m44 == 1. По свойству умножения матриц на число это вроде как возможно:



Сообщение отредактировал Gargolev43 - Вторник, 28 Июля 2015, 12:39
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг