QLine类

QLine类使用整数精度提供了一个二维向量。更多信息...

头文件 #include <QLine>
CMakefind_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmakeQT += core

公共函数

QLine()
QLine(const QPoint &p1, const QPoint &p2)
QLine(int x1, int y1, int x2, int y2)
QPointp1() const
QPointp2() const
intx1() const
intx2() const
inty1() const
inty2() const
QPointcenter() const
intdx() const
intdy() const
boolisNull() const
voidsetP1(const QPoint &p1)
voidsetP2(const QPoint &p2)
voidsetLine(int x1, int y1, int x2, int y2)
voidsetPoints(const QPoint &p1, const QPoint &p2)
(since 6.4) QLineFtoLineF() const
voidtranslate(const QPoint &offset)
voidtranslate(int dx, int dy)
QLinetranslated(const QPoint &offset) const
QLinetranslated(int dx, int dy) const
booloperator!=(const QLine &line) const
booloperator==(const QLine &line) const
QDataStream &operator<<(QDataStream &stream, const QLine &line)
QDataStream &operator>>(QDataStream &stream, QLine &line)

详细描述

QLine描述了二维表面上的有限长度线(或线段)。线的起始点和结束点使用整数坐标精度指定。使用QLineF构造函数获取浮点副本。

可以使用 p1()、x1()、y1()、p2()、x2() 和 y2() 函数获取线的起点和终点的位置。函数 dx() 和 dy() 返回线的水平和垂直分量。使用 isNull() 函数来确定 QLine 表示的是有效线还是空线。

最后,可以使用 translate() 函数将线平移指定的偏移量。

另请参阅QLineFQPolygonQRect

成员函数文档

[constexpr] QLine::QLine()

构造一个空线。

[constexpr] QLine::QLine(const QPoint &p1, const QPoint &p2)

构造表示两个点之间线的对象 p1p2

[constexpr] QLine::QLine(int x1, int y1, int x2, int y2)

构造表示从坐标点 (x1, y1) 到 (x2, y2) 的线的对象。

[constexpr] QPoint QLine::p1() const

返回线的起点。

另请参阅setP1()、x1()、y1() 和 p2()。

[constexpr] QPoint QLine::p2() const

返回线的终点。

另请参阅setP2()、x2()、y2() 和 p1()。

[constexpr] int QLine::x1() const

返回线的起点的 x 坐标。

另请参阅p1()。

[constexpr] int QLine::x2() const

返回线的终点的 x 坐标。

另请参阅p2()。

[constexpr] int QLine::y1() const

返回线的起点的 y 坐标。

另请参阅p1()。

[constexpr] int QLine::y2() const

返回线的终点的 y 坐标。

另请参阅p2()。

[constexpr] QPoint QLine::center() const

返回此线的中心点。这等价于 (p1() + p2()) / 2,除非永远不会溢出。

[constexpr] int QLine::dx() const

返回直线的向量水平分量。

另请参阅 dy()。

[constexpr] int QLine::dy() const

返回直线的向量垂直分量。

另请参阅 dx()。

[constexpr] bool QLine::isNull() const

如果线没有不同的起点和终点,则返回 true;否则返回 false

void QLine::setP1(const QPoint &p1)

将此线的起点设置为 p1

另请参阅 setP2() 和 p1()。

void QLine::setP2(const QPoint &p2)

将此线的终点设置为 p2

另请参阅 setP1() 和 p2()。

void QLine::setLine(int x1, int y1, int x2, int y2)

将此线的起始设为 x1, y1 并设置为终止点 x2, y2

另请参阅 setP1(),setP2(),p1() 和 p2()。

void QLine::setPoints(const QPoint &p1, const QPoint &p2)

将此线的起点设置为 p1 并将终点设置为 p2

另请参阅 setP1(),setP2(),p1() 和 p2()。

[constexpr noexcept, since 6.4] QLineF QLine::toLineF() const

以浮点精度返回此线。

此功能自 Qt 6.4 上市。

另请参阅 QLineF::toLine()。

void QLine::translate(const QPoint &offset)

通过给定 offset 平移此线。

void QLine::translate(int dx, int dy)

这是一个重载函数。

通过 dxdy 指定的距离平移此线。

[constexpr] QLine QLine::translated(const QPoint &offset) const

返回给定 offset 平移的此线。

[constexpr] QLine QLine::translated(int dx, int dy) const

这是一个重载函数。

返回 dxdy 指定的距离平移的此线。

[constexpr noexcept] bool QLine::operator!=(const QLine &line) const

如果给定的 line 与此 line 不相同,则返回 true

一个直线与另一个不同的条件是它们的开头或结尾点不同,或者点内部顺序不同。

[constexpr noexcept] bool QLine::operator==(const QLine &line) const

如果给定的 line 与此 line 相同,则返回 true

如果起点和终点相同且点内部顺序相同,则一条直线与另一条直线相同。

相关非成员

QDataStream &operator<<(QDataStream &stream, const QLine &line)

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

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

QDataStream &operator>>(QDataStream &stream, QLine &line)

从给定的 stream 中读取一条直线到给定的 line 并返回对流的引用。

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

© 2024 Qt 公司有限公司。在此处包含的文档贡献的版权归其各自所有者所有。此处提供的文档是根据自由软件基金会发布的 GNU 自由文档许可证 1.3 版 的条款许可的。Qt 和相应的标志是芬兰的 Qt 公司及其在全球的子公司和关联公司的 商标。所有其他商标均为其各自所有者的财产。