Condividi tramite


Rettangoli (Direct3D 9)

Durante la programmazione Direct3D e Window, gli oggetti sullo schermo vengono definiti in termini di rettangoli di delimitazione. I lati di un rettangolo di selezione sono sempre paralleli ai lati dello schermo, quindi il rettangolo può essere descritto da due punti, dall'angolo superiore sinistro e dall'angolo inferiore destro. La maggior parte delle applicazioni usa la struttura RECT per trasportare informazioni su un rettangolo di delimitazione da usare quando si esegue il blitting allo schermo o l'esecuzione del rilevamento dei colpi.

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 di un rettangolo in alto a sinistra. Analogamente, i membri destro e inferiore costituiscono le coordinate dell'angolo inferiore destro. La figura seguente illustra come visualizzare questi valori.

illustrazione del rettangolo delimitato dai valori sinistro, superiore, destro e inferiore

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

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

Sistemi di coordinate e geometria