Класс QPointF
Класс QPointF определяет точку на плоскости с использованием чисел с плавающей точкой. Подробнее...
| Заголовок: | #include <QPointF> |
| qmake: | QT += core |
Примечание: Все функции в этом классе являются взаимоисключающими.
Открытые функции
| QPointF(qreal xpos, qreal ypos) | |
| QPointF(const QPoint &point) | |
| QPointF() | |
| bool | isNull() const |
| qreal | manhattanLength() const |
| qreal & | rx() |
| qreal & | ry() |
| void | setX(qreal x) |
| void | setY(qreal y) |
| CGPoint | toCGPoint() const |
| QPoint | toPoint() const |
| QPointF | transposed() const |
| qreal | x() const |
| qreal | y() const |
| QPointF & | operator*=(qreal factor) |
| QPointF & | operator+=(const QPointF &point) |
| QPointF & | operator-=(const QPointF &point) |
| QPointF & | operator/=(qreal divisor) |
Статические открытые члены
| qreal | dotProduct(const QPointF &p1, const QPointF &p2) |
| QPointF | fromCGPoint(CGPoint point) |
Связанные нечлены
| bool | operator!=(const QPointF &p1, const QPointF &p2) |
| const QPointF | operator*(const QPointF &point, qreal factor) |
| const QPointF | operator*(qreal factor, const QPointF &point) |
| const QPointF | operator+(const QPointF &p1, const QPointF &p2) |
| const QPointF | operator+(const QPointF &point) |
| const QPointF | operator-(const QPointF &p1, const QPointF &p2) |
| const QPointF | operator-(const QPointF &point) |
| const QPointF | operator/(const QPointF &point, qreal divisor) |
| QDataStream & | operator<<(QDataStream &stream, const QPointF &point) |
| bool | operator==(const QPointF &p1, const QPointF &p2) |
| QDataStream & | operator>>(QDataStream &stream, QPointF &point) |
Подробное описание
Точка задается координатами x и y, к которым можно получить доступ с помощью функций x() и y(). Координаты точки задаются с помощью чисел с плавающей точкой для повышения точности. Функция isNull() возвращает true если обе x и y установлены в 0.0. Координаты можно установить (или изменить) с помощью функций setX() и setY() или, как альтернатива, функций rx() и ry(), которые возвращают ссылки на координаты (что позволяет напрямую изменять их).
Для точки p следующие утверждения эквивалентны:
QPointF p; p.setX(p.x() + 1.0); p += QPointF(1.0, 0.0); p.rx()++;
Объект QPointF также может использоваться как вектор: сложение и вычитание определены как для векторов (каждая компонента добавляется отдельно). Объект QPointF также может быть поделен или умножен на int или qreal.
Кроме того, класс QPointF предоставляет конструктор для преобразования объекта QPoint в объект QPointF и соответствующую функцию toPoint(), которая возвращает копию точки this как QPoint. Наконец, объекты QPointF могут быть переданы и сравнены.
Документация по функциям-членам
QPointF::QPointF(qreal xpos, qreal ypos)
Создает точку с заданными координатами (xpos, ypos).
QPointF::QPointF(const QPoint &point)
Создает копию заданной точки point.
См. также toPoint().
QPointF::QPointF()
Создает нулевую точку, т.е. с координатами (0.0, 0.0)
См. также isNull().
[static] qreal QPointF::dotProduct(const QPointF &p1, const QPointF &p2)
QPointF p( 3.1, 7.1); QPointF q(-1.0, 4.1); int lengthSquared = QPointF::dotProduct(p, q); // lengthSquared becomes 26.01
Возвращает скалярное произведение p1 и p2.
Эта функция была добавлена в Qt 5.1.
[static] QPointF QPointF::fromCGPoint(CGPoint point)
Создает QRectF из CGPoint point.
Эта функция была добавлена в Qt 5.8.
См. также toCGPoint().
bool QPointF::isNull() const
Возвращает true если обе координаты x и y установлены в 0.0 (не учитывая знак); в противном случае возвращает false.
qreal QPointF::manhattanLength() const
Возвращает сумму абсолютных значений x() и y(), традиционно называемую «манхэттенской длиной» вектора от начала координат до точки.
Эта функция была добавлена в Qt 4.6.
См. также QPoint::manhattanLength().
qreal &QPointF::rx()
Возвращает ссылку на координату x этой точки.
Использование ссылки позволяет напрямую манипулировать x. Например:
QPointF p(1.1, 2.5); p.rx()--; // p becomes (0.1, 2.5)
qreal &QPointF::ry()
Возвращает ссылку на координату y этой точки.
Использование ссылки позволяет напрямую манипулировать y. Например:
QPointF p(1.1, 2.5); p.ry()++; // p becomes (1.1, 3.5)
void QPointF::setX(qreal x)
Устанавливает координату x этой точки на заданную координату x.
void QPointF::setY(qreal y)
Устанавливает координату y этой точки на заданную координату y.
CGPoint QPointF::toCGPoint() const
Создаёт CGPoint из QPointF.
Эта функция была добавлена в Qt 5.8.
См. также fromCGPoint().
QPoint QPointF::toPoint() const
Округляет координаты этой точки до ближайшего целого числа и возвращает объект QPoint с округленными координатами.
См. также QPointF().
QPointF QPointF::transposed() const
Возвращает точку с переставленными координатами x и y:
QPointF{1.0, 2.0}.transposed() // {2.0, 1.0} Эта функция была добавлена в Qt 5.14.
См. также x(), y(), setX(), и setY().
qreal QPointF::x() const
Возвращает координату x этой точки.
qreal QPointF::y() const
Возвращает координату y этой точки.
QPointF &QPointF::operator*=(qreal factor)
Умножает координаты этой точки на заданный factor и возвращает ссылку на эту точку. Например:
QPointF p(-1.1, 4.1); p *= 2.5; // p becomes (-2.75, 10.25)
См. также operator/=().
QPointF &QPointF::operator+=(const QPointF &point)
Добавляет заданную point к этой точке и возвращает ссылку на эту точку. Например:
QPointF p( 3.1, 7.1); QPointF q(-1.0, 4.1); p += q; // p becomes (2.1, 11.2)
См. также operator-=().
QPointF &QPointF::operator-=(const QPointF &point)
Вычитает заданную point из этой точки и возвращает ссылку на эту точку. Например:
QPointF p( 3.1, 7.1); QPointF q(-1.0, 4.1); p -= q; // p becomes (4.1, 3.0)
См. также operator+=().
QPointF &QPointF::operator/=(qreal divisor)
Делит обе координаты x и y на заданный divisor и возвращает ссылку на эту точку. Например:
QPointF p(-2.75, 10.25); p /= 2.5; // p becomes (-1.1, 4.1)
См. также operator*=().
Связанные нечлены
bool operator!=(const QPointF &p1, const QPointF &p2)
Возвращает true если p1 не равно p2; в противном случае возвращает false.
const QPointF operator*(const QPointF &point, qreal factor)
Возвращает копию заданной point, умноженной на заданный factor.
См. также QPointF::operator*=().
const QPointF operator*(qreal factor, const QPointF &point)
Это перегруженная функция.
Возвращает копию заданной point, умноженной на заданный factor.
const QPointF operator+(const QPointF &p1, const QPointF &p2)
Возвращает объект QPointF, являющийся суммой заданных точек p1 и p2; каждый компонент складывается отдельно.
См. также QPointF::operator+=().
const QPointF operator+(const QPointF &point)
Возвращает point без изменений.
Эта функция была добавлена в Qt 5.0.
const QPointF operator-(const QPointF &p1, const QPointF &p2)
Возвращает объект QPointF, полученный путём вычитания p2 из p1; каждый компонент вычитается отдельно.
См. также QPointF::operator-=().
const QPointF operator-(const QPointF &point)
Это перегруженная функция.
Возвращает объект QPointF, образованный изменением знака обоих компонентов заданной point.
Эквивалентно QPointF(0,0) - point.
const QPointF operator/(const QPointF &point, qreal divisor)
Возвращает объект QPointF, полученный путём деления обоих компонентов заданной point на заданный divisor.
См. также QPointF::operator/=().
QDataStream &operator<<(QDataStream &stream, const QPointF &point)
Записывает заданную point в заданный stream и возвращает ссылку на поток.
См. также Сериализация типов данных Qt.
bool operator==(const QPointF &p1, const QPointF &p2)
Возвращает true если p1 равно p2; в противном случае возвращает false.
QDataStream &operator>>(QDataStream &stream, QPointF &point)
Читает точку из заданного stream в заданную point и возвращает ссылку на поток.
См. также Сериализация типов данных Qt.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.14/qpointf.html