Partager via


Rectangles (Direct3D 9)

Tout au long de la programmation Direct3D et Window, les objets affichés à l’écran sont référencés en termes de rectangles englobants. Les côtés d’un rectangle englobant étant toujours parallèles aux côtés de l’écran, le rectangle peut être décrit par deux points, le coin supérieur gauche et l’angle inférieur droit. La plupart des applications utilisent la structure RECT pour transporter des informations sur un rectangle englobant à utiliser lors d’un blittage à l’écran ou de la détection d’accès.

En C++, la structure RECT a la définition suivante.

typedef struct tagRECT { 
    LONG    left;    // This is the upper-left corner x-coordinate.
    LONG    top;     // The upper-left corner y-coordinate.
    LONG    right;   // The lower-right corner x-coordinate.
    LONG    bottom;  // The lower-right corner y-coordinate.
} RECT, *PRECT, NEAR *NPRECT, FAR *LPRECT; 

Dans l’exemple précédent, les membres gauche et supérieur sont les coordonnées x et y du coin supérieur gauche d’un rectangle englobant. De même, les membres droit et inférieur constituent les coordonnées du coin inférieur droit. L’illustration suivante montre comment visualiser ces valeurs.

illustration du rectangle délimité par les valeurs de gauche, de haut, de droite et de bas

La colonne de pixels sur le bord droit et la ligne de pixels sur le bord inférieur ne sont pas incluses dans le RECT. Par exemple, le verrouillage d’un RECT avec des membres {10, 10, 138, 138} génère un objet de 128 pixels en largeur et en hauteur.

Dans un souci d’efficacité, de cohérence et de facilité d’utilisation, toutes les fonctions de présentation Direct3D fonctionnent avec des rectangles.

Systèmes de coordonnées et géométrie