Что такое аффинные трансформации? Они применимы только к точкам или другим фигурам? Что это значит, что они могут быть «составлены»?
Что такое аффинные трансформации? Они применимы только к точкам или другим фигурам? Что это значит, что они могут быть «составлены»?
Ответы:
Аффинное преобразование - это линейное преобразование + вектор перевода.
Это может быть применено к отдельным точкам или к линиям или даже кривым Безье. Для линий это сохраняет свойство, что параллельные линии остаются параллельными. Для кривых Безье это сохраняет свойство выпуклой оболочки контрольных точек.
После умножения получается 2 уравнения для получения «преобразованной» пары координат из исходной пары и списка констант ,
Удобно, что Линейное преобразование и Вектор Трансляции могут быть объединены в трехмерную матрицу, которая может работать над двумерными однородными координатами.
Который дает те же 2 уравнения выше.
Очень удобно , что сами матрицы могут быть умножены вместе, чтобы получить третью матрицу (констант), которая выполняет то же преобразование, что и оригинал 2, выполняемый последовательно. Проще говоря, матричные умножения ассоциативны.
В качестве альтернативы вы можете рассмотреть несколько основных типов преобразования и составить любое более сложное преобразование, комбинируя их (умножая их вместе).
Преобразование идентичности
пересчет
* Примечание: отражение может быть выполнено с параметрами масштабирования или ( 1 , - 1 ) .
Перевод
Перекос х на у
Перекос y на x
вращение
[Примечание. Я показал форму Matrix, которая принимает вектор строки слева . Транспонирование этих матриц будет работать с вектором столбца справа.]
Матрица, составленная исключительно из масштабирования, вращения и перемещения, может быть разложена обратно на эти три компонента .