Spec-Zone.ru › Qt 5.11

Класс QLineF

Класс QLineF предоставляет двумерный вектор с использованием точности с плавающей запятой. Подробнее...

Заголовок: #include <QLineF>
qmake: QT += core
  • Список всех членов, включая унаследованные члены
  • Устаревшие члены

Открытые типы

enum IntersectType { NoIntersection, UnboundedIntersection, BoundedIntersection }

Открытые функции

QLineF()
QLineF(const QPointF &p1, const QPointF &p2)
QLineF(qreal x1, qreal y1, qreal x2, qreal y2)
QLineF(const QLine &line)
QPointF p1() const
QPointF p2() const
qreal x1() const
qreal x2() const
qreal y1() const
qreal y2() const
qreal angle() const
qreal angleTo(const QLineF &line) const
QPointF center() const
qreal dx() const
qreal dy() const
QLineF::IntersectType intersect(const QLineF &line, QPointF *intersectionPoint) const
bool isNull() const
qreal length() const
QLineF normalVector() const
QPointF pointAt(qreal t) const
void setP1(const QPointF &p1)
void setP2(const QPointF &p2)
void setAngle(qreal angle)
void setLength(qreal length)
void setLine(qreal x1, qreal y1, qreal x2, qreal y2)
void setPoints(const QPointF &p1, const QPointF &p2)
QLine toLine() const
void translate(const QPointF &offset)
void translate(qreal dx, qreal dy)
QLineF translated(const QPointF &offset) const
QLineF translated(qreal dx, qreal dy) const
QLineF unitVector() const
bool operator!=(const QLineF &line) const
bool operator==(const QLineF &line) const

Статические открытые члены

QLineF fromPolar(qreal length, qreal angle)

Связанные внешние члены

QDataStream & operator<<(QDataStream &stream, const QLineF &line)
QDataStream & operator>>(QDataStream &stream, QLineF &line)

Подробное описание

Класс QLineF предоставляет двумерный вектор с использованием точности с плавающей запятой.

Объект QLineF описывает линию (или отрезок линии) конечной длины на двумерной поверхности. QLineF определяет начальную и конечную точки линии с использованием точности с плавающей запятой для координат. Используйте функцию toLine() для получения копии этой линии на основе целых чисел.

Положения начальной и конечной точек линии можно получить с помощью функций p1(), x1(), y1(), p2(), x2() и y2(). Функции dx() и dy() возвращают горизонтальную и вертикальную компоненты линии соответственно.

Длину линии можно получить с помощью функции length() и изменить с помощью функции setLength(). Аналогично, angle() и setAngle() используются соответственно для получения и изменения угла линии. Используйте функцию isNull(), чтобы определить, представляет ли QLineF действительную линию или нулевую линию.

Функция intersect() определяет IntersectType для этой линии и данной линии, а функция angleTo() возвращает угол между линиями. Кроме того, функция unitVector() возвращает линию, имеющую ту же начальную точку, что и эта линия, но длиной только 1, а функция normalVector() возвращает линию, перпендикулярную этой линии, с той же начальной точкой и длиной.

Наконец, линию можно переместить на заданный сдвиг с помощью функции translate(), и её можно пройти с помощью функции pointAt().

Ограничения

QLine ограничен минимальными и максимальными значениями для типа int. Операции над QLine, которые могут привести к значениям за пределами этого диапазона, приведут к неопределённому поведению.

См. также QLine, QPolygonF и QRectF.

Документация по типу члена

enum QLineF::IntersectType

Описывает пересечение двух линий.

QLineF::UnboundedIntersection QLineF::BoundedIntersection
Константа Значение Описание
QLineF::NoIntersection 0 Указывает, что линии не пересекаются; т.е. они параллельны.
QLineF::UnboundedIntersection 2 Две линии пересекаются, но не в пределах диапазона, определяемого их длинами. Это будет так, если линии не параллельны.
END_OF_DOCUMENT_MARKER

intersect() также вернёт это значение, если точка пересечения находится внутри начальной и конечной точки только одной из линий.

Константа Значение Описание
QLineF::BoundedIntersection 1 Две линии пересекаются друг с другом внутри начальных и конечных точек каждой линии.

См. также intersect().

Документация по членам-функциям

QLineF::QLineF()

Создаёт линию без значений.

QLineF::QLineF(const QPointF &p1, const QPointF &p2)

Создаёт объект линии, представляющий линию между p1 и p2.

QLineF::QLineF(qreal x1, qreal y1, qreal x2, qreal y2)

Создаёт объект линии, представляющий линию между (x1, y1) и (x2, y2).

QLineF::QLineF(const QLine &line)

Создаёт объект QLineF из заданной линии line на основе целых чисел.

См. также toLine().

QPointF QLineF::p1() const

Возвращает начальную точку линии.

См. также setP1(), x1(), y1() и p2().

QPointF QLineF::p2() const

Возвращает конечную точку линии.

См. также setP2(), x2(), y2() и p1().

qreal QLineF::x1() const

Возвращает координату x начальной точки линии.

См. также p1().

qreal QLineF::x2() const

Возвращает координату x конечной точки линии.

См. также p2().

qreal QLineF::y1() const

Возвращает координату y начальной точки линии.

См. также p1().

qreal QLineF::y2() const

Возвращает координату y конечной точки линии.

См. также p2().

qreal QLineF::angle() const

Возвращает угол линии в градусах.

Возвращаемое значение будет в диапазоне от 0.0 до 360.0, но не включая 360.0. Углы измеряются против часовой стрелки от точки на оси x справа от начала координат (x > 0).

Эта функция была добавлена в Qt 4.4.

См. также setAngle().

qreal QLineF::angleTo(const QLineF &line) const

Возвращает угол (в градусах) от этой линии до заданной line, учитывая направление линий. Если линии не пересекаются в пределах своего диапазона, то в качестве начала используется точка пересечения продолженных линий (см. QLineF::UnboundedIntersection).

Возвращаемое значение представляет собой количество градусов, которое необходимо добавить к этой линии, чтобы она имела тот же угол, что и заданная line, против часовой стрелки.

Эта функция была добавлена в Qt 4.4.

См. также intersect().

QPointF QLineF::center() const

Возвращает центральную точку этой линии. Это эквивалентно 0.5 * p1() + 0.5 * p2().

Эта функция была добавлена в Qt 5.8.

qreal QLineF::dx() const

Возвращает горизонтальную составляющую вектора линии.

См. также dy() и pointAt().

qreal QLineF::dy() const

Возвращает вертикальную составляющую вектора линии.

См. также dx() и pointAt().

[static] QLineF QLineF::fromPolar(qreal length, qreal angle)

Возвращает QLineF с заданной длиной и углом.

Первая точка линии будет находиться в начале координат.

Положительные значения углов означают вращение против часовой стрелки, а отрицательные — по часовой стрелке. Ноль градусов соответствует положению 3 часа.

Эта функция была добавлена в Qt 4.4.

QLineF::IntersectType QLineF::intersect(const QLineF &line, QPointF *intersectionPoint) const

Возвращает значение, указывающее, пересекается ли эта линия с заданной line.

Фактическая точка пересечения извлекается в intersectionPoint (если указатель действителен). Если линии параллельны, точка пересечения не определена.

bool QLineF::isNull() const

Возвращает true, если линия не настроена с действительными начальной и конечной точками; в противном случае возвращает false.

qreal QLineF::length() const

Возвращает длину линии.

См. также setLength().

QLineF QLineF::normalVector() const

Возвращает линию, перпендикулярную этой линии, с той же начальной точкой и длиной.

См. также unitVector().

QPointF QLineF::pointAt(qreal t) const

Возвращает точку в параметризованном положении, указанном t. Функция возвращает начальную точку линии, если t = 0, и конечную точку, если t = 1.

См. также dx() и dy().

void QLineF::setP1(const QPointF &p1)

Устанавливает начальную точку этой линии на p1.

Эта функция была добавлена в Qt 4.4.

См. также setP2() и p1().

void QLineF::setP2(const QPointF &p2)

Устанавливает конечную точку этой линии на p2.

Эта функция была добавлена в Qt 4.4.

См. также setP1() и p2().

void QLineF::setAngle(qreal angle)

Устанавливает угол линии на заданный angle (в градусах). Это изменит положение второй точки линии таким образом, что линия будет иметь заданный угол.

Положительные значения углов означают вращение против часовой стрелки, а отрицательные — по часовой стрелке. Ноль градусов соответствует положению 3 часа.

Эта функция была добавлена в Qt 4.4.

См. также angle().

void QLineF::setLength(qreal length)

Устанавливает длину линии на заданную длину. QLineF переместит конечную точку - p2() - линии, чтобы придать линии новую длину.

Если линия является нулевой, длина останется равной нулю независимо от указанной длины.

См. также length() и isNull().

void QLineF::setLine(qreal x1, qreal y1, qreal x2, qreal y2)

Устанавливает эту линию для начала в x1, y1 и конца в x2, y2.

Эта функция была добавлена в Qt 4.4.

См. также setP1(), setP2(), p1() и p2().

void QLineF::setPoints(const QPointF &p1, const QPointF &p2)

Устанавливает начальную точку этой линии на p1, а конечную точку — на p2.

Эта функция была добавлена в Qt 4.4.

См. также setP1(), setP2(), p1() и p2().

QLine QLineF::toLine() const

Возвращает копию этой линии на основе целых чисел.

Обратите внимание, что начальная и конечная точки возвращаемой линии округляются до ближайшего целого числа.

END_OF_DOCUMENT_MARKER

См. также QLineF().

void QLineF::translate(const QPointF &offset)

Перемещает эту линию на заданный offset.

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

Это перегруженный метод.

Перемещает эту линию на расстояние, указанное dx и dy.

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

Возвращает эту линию, перемещённую на заданный offset.

Этот метод был добавлен в Qt 4.4.

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

Это перегруженный метод.

Возвращает эту линию, перемещённую на расстояние, указанное dx и dy.

Этот метод был добавлен в Qt 4.4.

QLineF QLineF::unitVector() const

Возвращает единичный вектор для этой линии, т.е. линию, начинающуюся в той же точке, что и эта линия, с длиной 1.0.

См. также normalVector().

bool QLineF::operator!=(const QLineF &line) const

Возвращает true если заданная line не такая же, как this.

Одна линия отличается от другой, если их начальные или конечные точки отличаются, или внутренний порядок точек отличается.

bool QLineF::operator==(const QLineF &line) const

Возвращает true если заданная line такая же, как эта линия.

Линии идентичны, если начальные и конечные точки идентичны, и внутренний порядок точек такой же.

Связанные внешние члены

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

Записывает заданную line в заданный stream и возвращает ссылку на поток.

См. также Сериализация типов данных Qt.

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

Читает линию из заданного stream в заданную line и возвращает ссылку на поток.

См. также Сериализация типов данных Qt.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qlinef.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API