Share via


Rettangoli

Durante la programmazione Direct3D e Windows, gli oggetti sullo schermo sono indicati in termini di rettangoli di delimitazione. I lati di un rettangolo di delimitazione sono sempre paralleli ai lati dello schermo, per cui il rettangolo può essere descritto da due punti, l'angolo superiore sinistro e l'angolo inferiore destro.

Rettangoli di delimitazione.

La maggior parte delle applicazioni usa la struttura RECT (o un alias typedef) per trasportare informazioni su un rettangolo di delimitazione da usare quando si esegue il blitting allo schermo o quando si esegue il rilevamento degli hit. In C++, la struttura RECT ha la definizione seguente.

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; 

Nell'esempio precedente, i membri sinistro e superiore sono le coordinate x e y dell'angolo superiore sinistro di un rettangolo di delimitazione. Analogamente, i membri destro e inferiore costituiscono le coordinate dell'angolo inferiore destro. La figura successiva mostra come visualizzare questi valori.

illustration of the rectangle bounded by the left, top, right, and bottom values

La colonna di pixel al bordo destro e la riga di pixel nel bordo inferiore non sono incluse nel RECT. Ad esempio, il blocco di un RECT con membri {10, 10, 138, 138} comporta un oggetto di 128 pixel in termini di larghezza e altezza.

Per efficienza, coerenza e facilità d'uso, tutte le funzioni di presentazione Direct3D funzionano con rettangoli.

Sistemi di coordinate e geometria