Поделиться через


Функция SetWorldTransform (wingdi.h)

Функция SetWorldTransform задает двумерное линейное преобразование между мировым пространством и пространством страницы для указанного контекста устройства. Это преобразование можно использовать для масштабирования, поворота, сдвига или преобразования выходных данных графики.

Синтаксис

BOOL SetWorldTransform(
  [in] HDC         hdc,
  [in] const XFORM *lpxf
);

Параметры

[in] hdc

Дескриптор контекста устройства.

[in] lpxf

Указатель на структуру XFORM , содержащую данные преобразования.

Возвращаемое значение

Если функция выполняется успешно, возвращается ненулевое значение.

Если функция выполняется неудачно, возвращается нулевое значение.

Комментарии

Ниже приведена матрица преобразования (обратите внимание, что цифры в нотации элементов представляют собой номер столбца, за которым следует 1 номер строки, а не обратный).

| eM11 eM21 eDx |
| eM12 eM22 eDy |
| 0    0    1   |

Таким образом, для любых координат (x, y) в мировом пространстве преобразованные координаты в пространстве страницы (x', y') можно определить, как показано ниже.

| x' |   | eM11 eM21 eDx |   | x |   
| y' | = | eM12 eM22 eDy | . | y |
| 1  |   | 0    0    1   |   | 1 |

x' = x * eM11 + y * eM21 + eDx
y' = x * eM12 + y * eM22 + eDy

Эта функция использует логические единицы.

Преобразование мира обычно используется для масштабирования или поворота логических изображений независимым от устройства способом.

Преобразование мира по умолчанию — это матрица идентификации со смещением нуля.

Функция SetWorldTransform завершится ошибкой , если для графического режима для заданного контекста устройства не было задано значение GM_ADVANCED путем вызова функции SetGraphicsMode . Аналогичным образом невозможно сбросить графический режим для контекста устройства в режим GM_COMPATIBLE по умолчанию, если только преобразование мира не было сначала сброшено до преобразования идентификатора по умолчанию путем вызова SetWorldTransform или ModifyWorldTransform.

Примеры

Пример см. в разделе Использование координатных пространств и преобразований.

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header wingdi.h (включая Windows.h)
Библиотека Gdi32.lib
DLL Gdi32.dll

См. также раздел

Функции координатного пространства и преобразования

Общие сведения о координатных пространствах и преобразованиях

GetWorldTransform

ModifyWorldTransform

SetGraphicsMode

SetMapMode

SetViewportExtEx

SetViewportOrgEx

SetWindowExtEx

SetWindowOrgEx

XFORM