Spec-Zone.ru › Qt 5.12

Класс QLineF

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

Подробнее...

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

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

перечисление IntersectType { НетПересечения, НеограниченноеПересечение, ОграниченноеПересечение }

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

… (rest of the table is translated similarly)
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

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

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.

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

перечисление QLineF::IntersectType

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

QLineF::НеограниченноеПересечение QLineF::ОграниченноеПересечение
Константа Значение Описание
QLineF::NoIntersection 0 Указывает, что линии не пересекаются; т. е. они параллельны.
QLineF::UnboundedIntersection 2 Две линии пересекаются, но не в пределах диапазона, определенного их длинами. Это будет случай, если линии не параллельны. 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. Углы измеряются против часовой стрелки от точки на оси 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 с заданной length и angle.

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

Положительные значения для углов означают против часовой стрелки, а отрицательные — по часовой стрелке. Ноль градусов соответствует положению 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)

Устанавливает длину линии на заданную 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

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

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

См. также 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 не совпадает с этой прямой.

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

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/qt-5.12/qlinef.html

Spec-Zone.ru

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