Отражение

Некоторые приложения предоставляют функции, отражающие (или зеркальные) объекты, нарисованные в клиентской области. Приложения, содержащие возможности отражения, используют функцию SetWorldTransform для задания соответствующих значений в преобразовании пространства страницы. Эта функция получает указатель на структуру XFORM, содержащую соответствующие значения. Члены XFORM и eM11 и eM22 указывают горизонтальные и вертикальные компоненты отражения соответственно.

Преобразование отражения создает зеркальное изображение объекта относительно оси X или Y. Короче говоря, отражение просто отрицательное масштабирование. Чтобы создать горизонтальное отражение, координаты x умножаются на -1. Для создания вертикального отражения координаты y умножаются на -1.

Горизонтальное отражение может быть представлено следующим алгоритмом:

x' = -x 

где x является координатой x и x' является результатом отражения.

Матрица 2–2, которая произвела горизонтальное отражение, содержит следующие значения:

|-1    0| 
|0     1| 

Вертикальное отражение может быть представлено следующим алгоритмом:

y' = -y 

где y является координатой y и y' является результатом отражения.

Матрица 2–2, которая произвела вертикальное отражение, содержит следующие значения:

|1    0| 
|0   -1| 

Операции горизонтального отражения и вертикального отражения можно объединить в одну операцию с помощью следующей матрицы 2–2:

|-1    0| 
|0    -1|