Compartir a través de


Rectángulos (Direct3D 9)

A lo largo de la programación de Direct3D y Window, se hace referencia a los objetos de la pantalla en términos de rectángulos delimitadores. Los lados de un rectángulo delimitador siempre son paralelos a los lados de la pantalla, por lo que el rectángulo se puede describir mediante dos puntos, la esquina superior izquierda y la esquina inferior derecha. La mayoría de las aplicaciones usan la estructura RECT para llevar información sobre un rectángulo delimitador que se va a usar al dividir en la pantalla o realizar la detección de aciertos.

En C++, la estructura RECT tiene la siguiente definición.

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; 

En el ejemplo anterior, los miembros izquierdo y superior son las coordenadas x e y de una esquina superior izquierda del rectángulo delimitador. Del mismo modo, los miembros derecho e inferior componen las coordenadas de la esquina inferior derecha. En la ilustración siguiente se muestra cómo se pueden visualizar estos valores.

Ilustración del rectángulo limitado por los valores izquierdo, superior, derecho e inferior

La columna de píxeles en el borde derecho y la fila de píxeles en el borde inferior no se incluyen en el RECT. Por ejemplo, bloquear un RECT con miembros {10, 10, 138, 138} da como resultado un objeto de 128 píxeles de ancho y alto.

En interés de la eficiencia, coherencia y facilidad de uso, todas las funciones de presentación de Direct3D funcionan con rectángulos.

Sistemas de coordenadas y geometría