Partager via


Fonction SetWorldTransform (wingdi.h)

La fonction SetWorldTransform définit une transformation linéaire à deux dimensions entre l’espace mondial et l’espace de page pour le contexte d’appareil spécifié. Cette transformation peut être utilisée pour mettre à l’échelle, faire pivoter, cisailler ou traduire la sortie graphique.

Syntaxe

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

Paramètres

[in] hdc

Handle dans le contexte de l’appareil.

[in] lpxf

Pointeur vers une structure XFORM qui contient les données de transformation.

Valeur retournée

Si la fonction réussit, la valeur de retour est différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro.

Remarques

Vous trouverez ci-dessous la matrice de transformation (notez que les chiffres de la notation d’élément sont un numéro de colonne basé sur 1 suivi d’un numéro de ligne basé sur 1, plutôt que l’inverse).

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

Ainsi, pour toutes les coordonnées (x, y) dans l’espace mondial, les coordonnées transformées dans l’espace de page (x', y') peuvent être déterminées comme indiqué ci-dessous.

| 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

Cette fonction utilise des unités logiques.

La transformation mondiale est généralement utilisée pour mettre à l’échelle ou faire pivoter des images logiques de manière indépendante de l’appareil.

La transformation du monde par défaut est la matrice d’identité avec zéro décalage.

La fonction SetWorldTransform échoue, sauf si le mode graphique du contexte d’appareil donné a été défini sur GM_ADVANCED en appelant précédemment la fonction SetGraphicsMode . De même, il ne sera pas possible de réinitialiser le mode graphique pour le contexte de l’appareil au mode GM_COMPATIBLE par défaut, sauf si la transformation mondiale a d’abord été réinitialisée à la transformation d’identité par défaut en appelant SetWorldTransform ou ModifyWorldTransform.

Exemples

Pour obtenir un exemple, consultez Utilisation d’espaces de coordonnées et de transformations.

Configuration requise

   
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête wingdi.h (inclure Windows.h)
Bibliothèque Gdi32.lib
DLL Gdi32.dll

Voir aussi

Fonctions d’espace de coordonnées et de transformation

Vue d’ensemble des espaces de coordonnées et des transformations

GetWorldTransform

ModifyWorldTransform

SetGraphicsMode

SetMapMode

SetViewportExtEx

SetViewportOrgEx

SetWindowExtEx

SetWindowOrgEx

XFORM