跳到主要内容
版本:3.0 Beta 🧪

类:Dimension

Dimension 类表示二维尺寸或大小,提供了面积计算和比较等操作的实用函数。

该类的源文件位于 os/framework/Dimension.h


构造函数

默认构造函数

Dimension();

将尺寸初始化为 (0, 0)


xy 创建

Dimension(int16_t x, int16_t y);

从单独的 xy 值构造尺寸。

参数:

  • x (int16_t):宽度。
  • y (int16_t):高度。

从原始 32 位值创建

Dimension(uint32_t rawByte);

从 32 位原始值构造尺寸。

参数:

  • rawByte (uint32_t):编码 xy 的原始数据。高 16 位表示 x,低 16 位表示 y

成员函数

Contains

bool Contains(Point point);

检查点是否在尺寸范围内。

参数:

  • point (Point):要检查的点。

返回值:

  • bool:如果点在尺寸范围内则返回 true,否则返回 false

Area

uint32_t Area();

计算尺寸的面积。

返回值:

  • uint32_t:面积,计算为 x * y

运算符

加法

Dimension operator+(const Dimension& cp) const;

将两个尺寸相加。

参数:

  • cp (const Dimension&):要相加的其他尺寸。

返回值:

  • Dimension:加法结果的新尺寸。

不等于比较

bool operator!=(const Dimension& cp) const;

检查两个尺寸是否不相等。

参数:

  • cp (const Dimension&):要比较的其他尺寸。

返回值:

  • bool:如果尺寸不相等则返回 true,否则返回 false

小于比较

bool operator<(const Dimension& cp) const;

比较两个尺寸。首先比较 x,如果相等,则比较 y

参数:

  • cp (const Dimension&):要比较的其他尺寸。

返回值:

  • bool:如果当前尺寸更小则返回 true,否则返回 false

转换为 bool

operator bool();

检查尺寸是否为非零。

返回值:

  • bool:如果 xy 都为非零则返回 true,否则返回 false

转换为 uint32_t

operator uint32_t();

将尺寸转换为 32 位原始值。

返回值:

  • uint32_t:尺寸的原始表示。高 16 位表示 x,低 16 位表示 y

Comments