Qt5_的类_QPoint,QPointF(相关的方法,不会的都在)


QPoint

QPoint官网链接

简介

QPoint 类使用整数精度来定义平面中的一个点

包含的成员

我觉得你可能看不懂的成员使用的方法:

1、dotProduct(const QPoint &, const QPoint &):int,参数是两个点的坐标,return 他们两点之间的点积,即进行向量的点乘运算,即x1x2+y1y2。

QPoint p( 3, 7);
QPoint q(-1, 4);
int lengthSquared = QPoint::dotProduct(p, q);   // lengthSquared becomes 25
// -3+28=25,可以用来计算两条直线之间的角度

2、isNull()const : bool,如果 x 和 y 坐标都设置为 0,则返回 true,否则返回 false。

3、manhattanLength() const : int ,曼哈顿长度,返回的是他们的曼哈顿距离d(i,j)=|xi-xj|+|yi-yj|。

4、rx(),ry(),则是对一个点的x,y坐标单独拿出来进行更改

5、transPosed(): const QPoint,交换一个点的x,y坐标(exchanged)。

QPointF

简介

第一眼看上去以为是一个新的类,结果发现就是Float QPoint(哈哈😁),用法的话相信你认真看完前面的QPoint后,这一个类的使用也会恍然大悟。QPointF在浮点精度上表征平面上的点,绝大部分操作都是与QPoint相类似的,细微的差别在于运算符重载以及提供了QPoint与QPointF的相互转换。

成员函数

看完这张图你就会发现QPointF的用法和QPoint基本一样的,里面的很多方法和QPoint一样都是对运算符的重载。

几个要注意的函数:

1、toPoint() const由浮点精度转化为整数精度

2、构造函数那里QPointF(const QPoint& point)由是为了从整数精度转化为浮点精度。


文章作者: AllenMirac
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 AllenMirac !
  目录