Прямоугольники (Direct3D 9)
Во время программирования Direct3D и Window объекты на экране называются ограничивающими прямоугольниками. Стороны ограничивающего прямоугольника всегда параллельны сторонам экрана, поэтому такой прямоугольник можно описать двумя точками: левый верхний угол и правый нижний угол. В большинстве приложений структура RECT используется для передачи сведений о ограничивающем прямоугольнике, используемом при разрезе на экране или при обнаружении попадания.
В C++ структура RECT имеет следующее определение.
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;
В предыдущем примере верхний и левый элементы — это координаты x и y верхнего левого угла ограничивающего прямоугольника. Аналогичным образом правый и нижний элементы представляют координаты правого нижнего угла. На следующем рисунке показано, как можно отобразить эти значения.
Столбец пикселей справа и строка пикселей внизу не включаются в RECT. Например, блокировка RECT с использованием элементов {10, 10, 138, 138} в результате даст объект шириной и высотой 128 пикселей.
В интересах эффективности, согласованности и простоты использования все функции представления Direct3D работают с прямоугольниками.