Аффинные преобразования на плоскости.
Афинные преобразования координат x,y описываются по формуле:
X=Ax+By+C
Y=Dx+Ey+F
где A,B,C…F—const .
Х,У—координаты в новой системе координат.
Обратное преобразование из Х,У в х,у также является афинными. Аффинное преобразование удобно записывать в матричном виде.
A,B,C…F—const образуют матрицу преобразований, которые будучи умноженными на столбец коэффициентов (х,у) дает матрицу столбец Х,У.
Однако, чтобы учесть const C и F необходимо перейти к так называемым однородным коэффициентам. Добавим в строку с единицами матрицу координат
Матричная запись дает возможность наглядно записывать несколько преобразований, которые идут друг за другом. Например, если необходимо выполнить одно преобразование:
а затем другое преобразование:
то эти преобразования можно записать следующим образом:
Вместо двух преобразований выполнить только одно, предварительно перемножив матрицы коэффициентов.
Рассмотрим частный случай аффинного преобразования:
параллельный сдвиг координат:
Значения новых координат рассчитываются следующим образом.
В матричной форме расчет координат записывается следующим образом:
Обратное преобразование:
Обратное преобразование в матричном виде:
растяжение, сжатие осей координат
Обратное преобразование:
В матричном виде:
Коэффициенты kx, ky могут быть и отрицательными. Например, если kx=-1, то это соответствует зеркальному отражению относительно оси У.
поворот
Обратное преобразование соответствует повороту Х,У на угол –α:
- Универсальные и векторные графические форматы.
- Формат eps.
- Формат pdf.
- Формат wmf.
- Формат al.
- Математические основы компьютерной графики.
- Преобразование координат.
- Аффинные преобразования на плоскости.
- Свойства аффинного преобразования:
- Трехмерные аффинные преобразования.
- Преобразование объектов.
- Проекции
- Мировые и экранные координаты.
- Основные типы проекции.
- Отображение в окно.
- Цепочка преобразования координат от мировых к экранным:
- Базовые растровые алгоритмы.
- Алгоритм вывода прямой линии.
- Алгоритм вывода окружность.
- Программирование компьютерной графики
- Графическая библиотека OpenGl
- Структура программ для работы с OpenGl.