矩形 (Direct3D 9)
在整个 Direct3D 和窗口编程中,屏幕上的对象在边界矩形方面被引用。 边界矩形的两侧始终与屏幕的两侧平行,因此矩形可以用两个点(左上角和右下角)来描述。 大多数应用程序都使用 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 中。 例如,锁定成员 {10, 10, 138, 138} 的 RECT 会导致对象宽度和高度为 128 像素。
为了提高效率、一致性和易用性,所有 Direct3D 演示文稿函数都使用矩形。
相关主题