写点什么

Qt | 关于点的坐标的使用 QPoint

作者:YOLO.
  • 2022 年 9 月 07 日
    河北
  • 本文字数:559 字

    阅读完需:约 2 分钟

Qt | 关于点的坐标的使用 QPoint

前言:

在 Qt 中,点的坐标及其操作用 QPoint 类来表示。QPoint 类可以表示一个平面上整数精度的点坐标,如果想表示浮点类型的点坐标,可以使用 QPointF 类。

可以在标记控件位置时使用坐标点,比如一个控件的左上角位置可以用点的坐标表示;也可以在画线时使用点的坐标表示线的起点坐标和终点坐标。

除了表示点的位置,点的坐标还可以进行一系列操作。

QPoint 相关操作:

  • 定义一个点: QPoint pt(3, 7);

  • 判断一个点的坐标与指定坐标是否相等: if(pt == QPoint(10, 10));

  • 计算两个点之间的距离: int dis = dotProduct(pt1, pt2);//这个函数计算出的是亮点之间距离的平方和,开平方根即为距离,因为 QPoint 类中的坐标值都是整数,开根号可能会出现小数,所以 dotProduct()函数没有开平方根,只计算了平方和。

  • 获取 x 和 y 的值: pt.x(); pt.y();

  • 设置 x 和 y 的值: pt.setX(10); pt.setY(20);

  • 更新坐标值: pt.rx()--; pt.ry()++;//rx()和 ry()既可以获取当前的坐标值,也能自己更新坐标值。

  • 坐标运算: “+”运算;“-”运算;“/”运算;“*”运算;

QPoint p(3, 7);QPoint q(-1, 4);

  • “+”运算:q += q;//p 变成(2, 11);

  • “-”运算:p -= q;//p 变成(4, 3);

QPoint p(-3, 10);

  • “/”运算:p /= 2.5;//p 变成(-1, 4);

QPoint p(-1, 4);

  • “*”运算:p *= 2.5;//p 变成();

注: QPoint 的坐标值是整数,所以计算过程中遇到小数会进行四舍五入

发布于: 刚刚阅读数: 4
用户头像

YOLO.

关注

还未添加个人签名 2022.05.06 加入

还未添加个人简介

评论

发布
暂无评论
Qt | 关于点的坐标的使用 QPoint_qt_YOLO._InfoQ写作社区