The QLine class provides a two-dimensional vector using integer precision. More...
| Header: | #include <QLine> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Core)target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake: | QT += core |
This class is equality-comparable.
This class is equality-comparable with QLineF.
| QLine() | |
| QLine(const QPoint &p1, const QPoint &p2) | |
| QLine(int x1, int y1, int x2, int y2) | |
| QPoint | p1() const |
| QPoint | p2() const |
| int | x1() const |
| int | x2() const |
| int | y1() const |
| int | y2() const |
| QPoint | center() const |
| int | dx() const |
| int | dy() const |
| bool | isNull() const |
| void | setP1(const QPoint &p1) |
| void | setP2(const QPoint &p2) |
| void | setLine(int x1, int y1, int x2, int y2) |
| void | setPoints(const QPoint &p1, const QPoint &p2) |
(since 6.4) QLineF |
toLineF() const |
| void | translate(const QPoint &offset) |
| void | translate(int dx, int dy) |
| QLine | translated(const QPoint &offset) const |
| QLine | translated(int dx, int dy) const |
| bool | operator!=(const QLine &lhs, const QLine &rhs) |
| QDataStream & | operator<<(QDataStream &stream, const QLine &line) |
| bool | operator==(const QLine &lhs, const QLine &rhs) |
| QDataStream & | operator>>(QDataStream &stream, QLine &line) |
A QLine describes a finite length line (or a line segment) on a two-dimensional surface. The start and end points of the line are specified using integer point accuracy for coordinates. Use the QLineF constructor to retrieve a floating point copy.
![]() |
![]() |
The positions of the line's start and end points can be retrieved using the p1(), x1(), y1(), p2(), x2(), and y2() functions. The dx() and dy() functions return the horizontal and vertical components of the line. Use isNull() to determine whether the QLine represents a valid line or a null line.
Finally, the line can be translated a given offset using the translate() function.
See also QLineF, QPolygon, and QRect.
[constexpr] QLine::QLine()Constructs a null line.
[constexpr] QLine::QLine(const QPoint &p1,
const QPoint &p2)Constructs a line object that represents the line between p1 and p2.
[constexpr] QLine::QLine(int x1, int y1,
int x2, int y2)Constructs a line object that represents the line between (x1, y1) and (x2, y2).
[constexpr] QPoint QLine::p1() constReturns the line's start point.
See also setP1(), x1(), y1(), and p2().
[constexpr] QPoint QLine::p2() constReturns the line's end point.
See also setP2(), x2(), y2(), and p1().
[constexpr] int QLine::x1() constReturns the x-coordinate of the line's start point.
See also p1().
[constexpr] int QLine::x2() constReturns the x-coordinate of the line's end point.
See also p2().
[constexpr] int QLine::y1() constReturns the y-coordinate of the line's start point.
See also p1().
[constexpr] int QLine::y2() constReturns the y-coordinate of the line's end point.
See also p2().
[constexpr] QPoint QLine::center() constReturns the center point of this line. This is equivalent to (p1() + p2()) / 2, except it will never overflow.
[constexpr] int QLine::dx() constReturns the horizontal component of the line's vector.
See also dy().
[constexpr] int QLine::dy() constReturns the vertical component of the line's vector.
See also dx().
[constexpr] bool QLine::isNull() constReturns true if the line does not have distinct start and end points; otherwise returns false.
Sets the starting point of this line to p1.
Sets the end point of this line to p2.
Sets this line to the start in x1, y1 and end in x2, y2.
See also setP1(), setP2(), p1(), and p2().
Sets the start point of this line to p1 and the end point of this line to p2.
See also setP1(), setP2(), p1(), and p2().
[constexpr noexcept, since 6.4] QLineF QLine::toLineF() constReturns this line as a line with floating point accuracy.
This function was introduced in Qt 6.4.
See also QLineF::toLine().
Translates this line by the given offset.
This is an overloaded function.
Translates this line the distance specified by dx and dy.
[constexpr] QLine QLine::translated(const
QPoint &offset) constReturns this line translated by the given offset.
[constexpr] QLine QLine::translated(int dx, int dy) constThis is an overloaded function.
Returns this line translated the distance specified by dx and dy.
[constexpr noexcept] bool operator!=(const QLine &lhs, const QLine &rhs)Returns true if the line lhs is not the same as line rhs.
A line is different from another line if any of their start or end points differ, or the internal order of the points is different.
Writes the given line to the given stream and returns a reference to the stream.
See also Serializing Qt Data Types.
[constexpr noexcept] bool operator==(const QLine &lhs, const QLine &rhs)Returns true if the line lhs is the same as line rhs.
A line is identical to another line if the start and end points are identical, and the internal order of the points is the same.
Reads a line from the given stream into the given line and returns a reference to the stream.
See also Serializing Qt Data Types.