Методы выполнения аффинных преобразований хорошо известны из аналитической геометрии. Например, рассмотрим перенос (трансляцию) и поворот. Пусть на плоскости имеется двухмерная система координат XOY. В этой системе точка М имеет координаты х, у. Пусть на той же плоскости имеется еще одна система координат. Тогда в этой новой системе та же точка М будет иметь в общем случае иные координаты х', y'. Отметим, что одна система координат переводится в другую при перемещении ее центра вдоль отрезка, соединяющего начала координат обоих систем. Тогда переход от одной прямоугольной декартовой системы координат к другой описывается формулами:
(2) |
Здесь a, b, d, g, m, l - произвольные числа.
Данное преобразование показано на Рис. 5.1.
Рис. 5.1 - Общий случай перехода от одной координатной системы к другой.
Плоскопараллельный перенос (трансляция) точки заключается в алгебраическом сложении ее координат с приращениями dx и dy:
x'=x+dx y'=y+dy | (3) |
Это равносильно перемещению точки вдоль отрезка (х, у) - (dx, dy).
|
|
Пусть точку М(х,у) нужно повернуть вокруг начала координат на угол j. Новые координаты точки после поворота определяются по формулам (Рис. 5.2):
(4) |
Рис. 5.2 - Поворот системы координат.
Как видно из этих несложных примеров, для разных преобразований используются совершенно разные методики. Однако существует единый универсальный подход, основанный на использовании матричного исчисления. Именно он и используется в системах векторной графики.