QPolygonF 类

QPolygonF 类提供了使用浮点精度点的列表。 更多信息...

头文件 #include <QPolygonF>
CMakefind_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmakeQT += gui
继承 QList

注意: 此类中所有函数都是 可重入的

公共函数

QPolygonF()
QPolygonF(const QList<QPointF> &points)
QPolygonF(const QRectF &rectangle)
QPolygonF(const QPolygon &polygon)
QRectFboundingRect() const
boolcontainsPoint(const QPointF &point, Qt::FillRule fillRule) const
QPolygonFintersected(const QPolygonF &r) const
boolintersects(const QPolygonF &p) const
boolisClosed() const
QPolygonFsubtracted(const QPolygonF &r) const
voidswap(QPolygonF &other)
QPolygontoPolygon() const
voidtranslate(const QPointF &offset)
voidtranslate(qreal dx, qreal dy)
QPolygonFtranslated(const QPointF &offset) const
QPolygonFtranslated(qreal dx, qreal dy) const
QPolygonFunited(const QPolygonF &r) const
QVariantoperator QVariant() const
QDataStream &operator<<(QDataStream &stream, const QPolygonF &polygon)
QDataStream &operator>>(QDataStream &stream, QPolygonF &polygon)

详细说明

QPolygonF 是一个 QList<QPointF>。向 QPolygonF 中添加点的最简单方法是使用其流操作符,如下所示

QPolygonF polygon;
polygon << QPointF(10.4, 20.5) << QPointF(20.2, 30.2);

除了 QList 提供的函数外,QPolygonF 还提供了 boundingRect() 和 translate() 函数用于几何操作。使用 QTransform::map() 函数进行 QPolygonF 的更通用变换。

QPolygonF 还提供了 isClosed() 函数来判断一个多边形的起始点和结束点是否相同,以及 toPolygon() 函数,它返回此多边形的一个具有整数精度副本。

QPolygonF 类是 隐式共享的。

另请参阅QListQPolygonQLineF

成员函数文档

[constexpr noexcept] QPolygonF::QPolygonF()

构造一个没有点的多边形。

另请参阅QList::isEmpty

QPolygonF::QPolygonF(const QList<QPointF> &points)

构造一个包含指定 points 的多边形。

QPolygonF::QPolygonF(const QRectF &rectangle)

使用指定的 rectangle 构造一个封闭多边形。

多边形包含矩形的四个顶点,以顺时针顺序开始和结束于左上角顶点。

另请参阅isClosed

QPolygonF::QPolygonF(const QPolygon &polygon)

从指定的整数多边形 polygon 构造一个浮点数多边形。

另请参阅toPolygon

QRectF QPolygonF::boundingRect() const

返回多边形的边界矩形,如果多边形为空,则返回 QRectF(0,0,0,0)。

另请参阅QList::isEmpty

bool QPolygonF::containsPoint(const QPointF &point, Qt::FillRule fillRule) const

如果给定的 point 根据指定的 fillRule 在多边形内,则返回 true;否则返回 false

QPolygonF QPolygonF::intersected(const QPolygonF &r) const

返回一个多边形,它是此多边形和 r 的交集。

多边形的集合操作将多边形视为区域。非封闭多边形将隐式地视为封闭。

另请参阅intersects

bool QPolygonF::intersects(const QPolygonF &p) const

如果当前多边形与给定的多边形 p 在任何点相交,则返回 true。如果当前多边形包含或被包含在 p 的任何部分中,也返回 true

多边形的集合操作将多边形视为区域。非封闭多边形将隐式地视为封闭。

另请参阅intersected

bool QPolygonF::isClosed() const

如果多边形是封闭的,则返回 true;否则返回 false

如果多边形的起始点与结束点相等,则称多边形是封闭的。

另请参阅QList::first() 和 QList::last

QPolygonF QPolygonF::subtracted(const QPolygonF &r) const

返回一个多边形,它是从该多边形中减去r的结果。

多边形的集合操作将多边形视为区域。非封闭多边形将隐式地视为封闭。

void QPolygonF::swap(QPolygonF &other)

与该多边形交换多边形other。此操作非常快且绝不会失败。

QPolygon QPolygonF::toPolygon() const

通过将每个QPointF转换为QPoint,创建并返回一个QPolygon

另请参阅 QPointF::toPoint

void QPolygonF::translate(const QPointF &offset)

将多边形中所有点的坐标通过给定的offset平移。

另请参阅 translated

void QPolygonF::translate(qreal dx, qreal dy)

这是一个重载函数。

通过(dxdy)平移多边形中所有点的坐标。

另请参阅 translated

QPolygonF QPolygonF::translated(const QPointF &offset) const

返回一个通过给定的offset平移的多边形副本。

另请参阅 translate

QPolygonF QPolygonF::translated(qreal dx, qreal dy) const

这是一个重载函数。

返回一个通过(dxdy)平移的多边形副本。

另请参阅 translate

QPolygonF QPolygonF::united(const QPolygonF &r) const

返回一个多边形,它是该多边形和r的并集。

多边形的集合操作将多边形视为区域。非封闭多边形将隐式地视为封闭。

另请参阅 intersectedsubtracted

QVariant QPolygonF::operator QVariant() const

将多边形作为QVariant返回。

相关非成员函数

QDataStream &operator<<(QDataStream &stream, const QPolygonF &polygon)

将给定的polygon写入给定的stream,并返回对流的引用。

另请参阅 序列化 Qt 数据类型

QDataStream &operator>>(QDataStream &stream, QPolygonF &polygon)

从给定的stream中读取多边形到给定的polygon,并返回对流的引用。

另请参阅 序列化 Qt 数据类型

© 2024 Qt公司有限公司。此处包含的文档贡献的版权归其各自所有者。提供的文档是根据由自由软件基金会发布的GNU自由文档许可证版本1.3进行许可的。Qt及其相应徽标是芬兰以及/或在其他国家全球的商标,归Qt公司有限公司所有。所有其他商标均为其各自所有者的财产。