Compartilhar via


Retângulos (Direct3D 9)

Em toda a programação direct3D e janela, os objetos na tela são referenciados em termos de retângulos delimitados. Os lados de um retângulo delimitador sempre são paralelos às laterais da tela, para que o retângulo possa ser descrito por dois pontos, o canto superior esquerdo e o canto inferior direito. A maioria dos aplicativos usa a estrutura RECT para transportar informações sobre um retângulo delimitador a ser usado ao fazer blitting na tela ou executar a detecção de ocorrências.

No C++, a estrutura RECT tem a definição a seguir.

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; 

No exemplo anterior, os membros esquerdo e superior são as coordenadas x e y do canto superior esquerdo do retângulo delimitador. Da mesma forma, os membros direito e inferior compõem as coordenadas do canto inferior direito. A ilustração a seguir mostra como você pode visualizar esses valores.

ilustração do retângulo delimitado pelos valores esquerdo, superior, direito e inferior

A coluna de pixels na borda direita e a linha de pixels na borda inferior não estão incluídas no RECT. Por exemplo, bloquear um RECT com membros {10, 10, 138, 138} resulta em um objeto com 128 pixels em largura e altura.

No interesse de eficiência, consistência e facilidade de uso, todas as funções de apresentação do Direct3D funcionam com retângulos.

Sistemas de coordenadas e geometria