Condividi tramite


Funzione SetWorldTransform (wingdi.h)

La funzione SetWorldTransform imposta una trasformazione lineare bidirezionale tra lo spazio mondiale e lo spazio pagina per il contesto del dispositivo specificato. Questa trasformazione può essere usata per ridimensionare, ruotare, shear o tradurre l'output grafico.

Sintassi

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

Parametri

[in] hdc

Handle nel contesto del dispositivo.

[in] lpxf

Puntatore a una struttura XFORM che contiene i dati di trasformazione.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è diverso da zero.

Se la funzione ha esito negativo, il valore restituito è zero.

Commenti

Di seguito è riportata la matrice di trasformazione (si noti che le cifre nella notazione dell'elemento sono numeri di colonna basati su 1 seguiti da un numero di riga basato su 1, anziché inverso).

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

Pertanto, per le coordinate (x, y) nello spazio mondiale, le coordinate trasformate nello spazio pagina (x', y') possono essere determinate nel modo illustrato di seguito.

| 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

Questa funzione usa unità logiche.

La trasformazione mondiale viene in genere usata per ridimensionare o ruotare immagini logiche in modo indipendente dal dispositivo.

La trasformazione mondiale predefinita è la matrice di identità con offset zero.

La funzione SetWorldTransform avrà esito negativo a meno che la modalità grafica per il contesto del dispositivo specificato sia stata impostata su GM_ADVANCED chiamando in precedenza la funzione SetGraphicsMode . Analogamente, non sarà possibile reimpostare la modalità grafica per il contesto del dispositivo nella modalità GM_COMPATIBLE predefinita, a meno che la trasformazione mondiale non sia stata prima reimpostata alla trasformazione identità predefinita chiamando SetWorldTransform o ModifyWorldTransform.

Esempio

Per un esempio, vedere Uso di spazi di coordinate e trasformazioni.

Requisiti

   
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione wingdi.h (include Windows.h)
Libreria Gdi32.lib
DLL Gdi32.dll

Vedi anche

Funzioni di coordinata e trasformazione

Panoramica degli spazi e delle trasformazioni delle coordinate

GetWorldTransform

ModifyWorldTransform

SetGraphicsMode

SetMapMode

SetViewportExtEx

SetViewportOrgEx

SetWindowExtEx

SetWindowOrgEx

XFORM