Función SetWorldTransform (wingdi.h)
La función SetWorldTransform establece una transformación lineal bidimensional entre el espacio mundial y el espacio de página para el contexto de dispositivo especificado. Esta transformación se puede usar para escalar, rotar, distorsionar o traducir la salida de gráficos.
Sintaxis
BOOL SetWorldTransform(
[in] HDC hdc,
[in] const XFORM *lpxf
);
Parámetros
[in] hdc
Identificador del contexto del dispositivo.
[in] lpxf
Puntero a una estructura XFORM que contiene los datos de transformación.
Valor devuelto
Si la función se realiza correctamente, el valor devuelto es distinto de cero.
Si la función no se realiza correctamente, el valor devuelto es cero.
Comentarios
A continuación se muestra la matriz de transformación (tenga en cuenta que los dígitos de la notación de elementos son un número de columna basado en 1 seguido de un número de fila basado en 1, en lugar del inverso).
| eM11 eM21 eDx |
| eM12 eM22 eDy |
| 0 0 1 |
Por lo tanto, para cualquier coordenada (x, y) en el espacio del mundo, las coordenadas transformadas en el espacio de página (x', y') se pueden determinar de la manera que se muestra a continuación.
| 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
Esta función usa unidades lógicas.
Normalmente, la transformación del mundo se usa para escalar o girar imágenes lógicas de forma independiente del dispositivo.
La transformación del mundo predeterminada es la matriz de identidades con desplazamiento cero.
La función SetWorldTransform producirá un error a menos que el modo gráfico del contexto de dispositivo determinado se haya establecido en GM_ADVANCED llamando previamente a la función SetGraphicsMode . Del mismo modo, no será posible restablecer el modo de gráficos para el contexto del dispositivo al modo de GM_COMPATIBLE predeterminado, a menos que la transformación del mundo se haya restablecido primero a la transformación de identidad predeterminada llamando a SetWorldTransform o ModifyWorldTransform.
Ejemplos
Para obtener un ejemplo, consulte Uso de espacios de coordenadas y transformaciones.
Requisitos
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | wingdi.h (incluye Windows.h) |
Library | Gdi32.lib |
Archivo DLL | Gdi32.dll |
Consulte también
Funciones de espacio de coordenadas y transformación
Información general sobre espacios de coordenadas y transformaciones