Spec-Zone.ru › Qt

Класс QGeoRectangle

Класс QGeoRectangle определяет прямоугольную географическую область. Подробнее...

Заголовок: #include <QGeoRectangle>
CMake: find_package(Qt6 COMPONENTS Positioning REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Positioning)
qmake: QT += positioning
С версии: Qt 5.2
Наследует: QGeoShape
  • Список всех членов, включая унаследованные

Свойства

  • bottomLeft : QGeoCoordinate
  • bottomRight : QGeoCoordinate
  • center : QGeoCoordinate
  • height : double
  • topLeft : QGeoCoordinate
  • topRight : QGeoCoordinate
  • width : double

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

QGeoRectangle(const QGeoShape &other)
QGeoRectangle(const QGeoRectangle &other)
QGeoRectangle(const QList<QGeoCoordinate> &coordinates)
QGeoRectangle(const QGeoCoordinate &topLeft, const QGeoCoordinate &bottomRight)
QGeoRectangle(const QGeoCoordinate &center, double degreesWidth, double degreesHeight)
QGeoRectangle()
QGeoRectangle & operator=(const QGeoRectangle &other)
~QGeoRectangle()
QGeoCoordinate bottomLeft() const
QGeoCoordinate bottomRight() const
QGeoCoordinate center() const
bool contains(const QGeoRectangle &rectangle) const
void extendRectangle(const QGeoCoordinate &coordinate)
double height() const
bool intersects(const QGeoRectangle &rectangle) const
void setBottomLeft(const QGeoCoordinate &bottomLeft)
void setBottomRight(const QGeoCoordinate &bottomRight)
void setCenter(const QGeoCoordinate &center)
void setHeight(double degreesHeight)
void setTopLeft(const QGeoCoordinate &topLeft)
void setTopRight(const QGeoCoordinate &topRight)
void setWidth(double degreesWidth)
QString toString() const
QGeoCoordinate topLeft() const
QGeoCoordinate topRight() const
void translate(double degreesLatitude, double degreesLongitude)
QGeoRectangle translated(double degreesLatitude, double degreesLongitude) const
QGeoRectangle united(const QGeoRectangle &rectangle) const
double width() const
QGeoRectangle operator|(const QGeoRectangle &rectangle) const
QGeoRectangle & operator|=(const QGeoRectangle &rectangle)

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

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

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

Географические прямоугольники никогда не пересекают полюса.

Несколько методов ведут себя так, как будто географический прямоугольник определен с помощью центральной координаты, ширины географического прямоугольника в градусах и высоты географического прямоугольника в градусах.

Если высота или центр географического прямоугольника корректируются таким образом, что он пересекает один из полюсов, высота изменяется так, чтобы географический прямоугольник касался, но не пересекал полюс, и чтобы центральная координата оставалась в центре географического прямоугольника.

Этот класс является Q_GADGET начиная с Qt 5.5. Он может быть непосредственно использован из C++ и QML.

Документация свойств

[since 5.5] bottomLeft : QGeoCoordinate

Это свойство содержит координаты нижней левой точки этого гео-прямоугольника.

Хотя это свойство было добавлено в Qt 5.5, соответствующие функции-доступа существуют с первой версии этого класса.

Это свойство было добавлено в Qt 5.5.

Функции доступа:

QGeoCoordinate bottomLeft() const
void setBottomLeft(const QGeoCoordinate &bottomLeft)

[since 5.5] bottomRight : QGeoCoordinate

Это свойство содержит координаты нижней правой точки этого гео-прямоугольника.

Хотя это свойство было добавлено в Qt 5.5, соответствующие функции-доступа существуют с первой версии этого класса.

Это свойство было добавлено в Qt 5.5.

Функции доступа:

QGeoCoordinate bottomRight() const
void setBottomRight(const QGeoCoordinate &bottomRight)

[since 5.5] center : QGeoCoordinate

Это свойство содержит центр этого гео-прямоугольника.

Хотя это свойство было добавлено в Qt 5.5, соответствующие функции-доступа существуют с первой версии этого класса.

Это свойство было добавлено в Qt 5.5.

Функции доступа:

QGeoCoordinate center() const
void setCenter(const QGeoCoordinate &center)

См. также QGeoShape::center.

[since 5.5] height : double

Это свойство содержит высоту этого гео-прямоугольника в градусах.

Значение свойства не определено, если этот гео-прямоугольник некорректен.

Если новая высота меньше 0.0 или этот гео-прямоугольник некорректен, свойство не изменяется. Для настройки значений некорректного гео-прямоугольника на основе центра, ширины и высоты, необходимо сначала использовать setCenter() для его валидации.

Если изменение высоты приведет к пересечению гео-прямоугольником полюса, высота корректируется таким образом, чтобы гео-прямоугольник только касался полюса.

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

180.0 используется в качестве высоты только в том случае, если новая высота больше или равна 180.

Хотя это свойство было добавлено в Qt 5.5, соответствующие функции-доступа существуют с первой версии этого класса.

Это свойство было добавлено в Qt 5.5.

Функции доступа:

double height() const
void setHeight(double degreesHeight)

[since 5.5] topLeft : QGeoCoordinate

Это свойство содержит координаты верхней левой точки этого гео-прямоугольника.

Хотя это свойство было добавлено в Qt 5.5, соответствующие функции-доступа существуют с первой версии этого класса.

Это свойство было добавлено в Qt 5.5.

Функции доступа:

QGeoCoordinate topLeft() const
void setTopLeft(const QGeoCoordinate &topLeft)

[since 5.5] topRight : QGeoCoordinate

Это свойство содержит координаты верхней правой точки этого гео-прямоугольника.

Хотя это свойство было добавлено в Qt 5.5, соответствующие функции-доступа существуют с первой версии этого класса.

Это свойство было добавлено в Qt 5.5.

Функции доступа:

QGeoCoordinate topRight() const
void setTopRight(const QGeoCoordinate &topRight)

[since 5.5] width : double

Это свойство содержит ширину этого гео-прямоугольника в градусах.

Значение свойства не определено, если этот гео-прямоугольник некорректен.

Если новая ширина меньше 0.0 или этот гео-прямоугольник некорректен, эта функция ничего не делает. Для настройки значений некорректного гео-прямоугольника на основе центра, ширины и высоты, необходимо сначала использовать setCenter() для его валидации.

360.0 используется в качестве ширины только в том случае, если новая ширина больше или равна 360. В таких случаях левая долгота гео-прямоугольника устанавливается в -180.0 градусов, а правая долгота - в 180.0 градусов.

Хотя это свойство было добавлено в Qt 5.5, соответствующие функции-доступа существуют с первой версии этого класса.

Это свойство было добавлено в Qt 5.5.

Функции доступа:

double width() const
void setWidth(double degreesWidth)

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

QGeoRectangle::QGeoRectangle(const QGeoShape &other)

Создаёт гео-прямоугольник из содержимого other.

QGeoRectangle::QGeoRectangle(const QGeoRectangle &other)

Создаёт гео-прямоугольник из содержимого other.

QGeoRectangle::QGeoRectangle(const QList<QGeoCoordinate> &coordinates)

Создаёт новый гео-прямоугольник минимального размера, содержащий все coordinates.

QGeoRectangle::QGeoRectangle(const QGeoCoordinate &topLeft, const QGeoCoordinate &bottomRight)

Создаёт новый гео-прямоугольник с координатами верхней левой точки topLeft и нижней правой точки bottomRight.

QGeoRectangle::QGeoRectangle(const QGeoCoordinate &center, double degreesWidth, double degreesHeight)

Создаёт новый гео-прямоугольник, центрированный в center, с шириной degreesWidth и высотой degreesHeight в градусах.

Если degreesHeight выведет гео-прямоугольник за пределы одного из полюсов, высота гео-прямоугольника будет усечена так, чтобы гео-прямоугольник простирался только до полюса. Центр гео-прямоугольника останется неизменным, а высота будет скорректирована так, чтобы центральная точка была в центре усечённого гео-прямоугольника.

QGeoRectangle::QGeoRectangle()

Создаёт новый, некорректный гео-прямоугольник.

QGeoRectangle &QGeoRectangle::operator=(const QGeoRectangle &other)

Присваивает other этому гео-прямоугольнику и возвращает ссылку на этот гео-прямоугольник.

QGeoRectangle::~QGeoRectangle()

Удаляет этот гео-прямоугольник.

QGeoCoordinate QGeoRectangle::bottomLeft() const

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

Примечание: Функция-получатель для свойства bottomLeft.

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

QGeoCoordinate QGeoRectangle::bottomRight() const

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

Примечание: Функция-получатель для свойства bottomRight.

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

QGeoCoordinate QGeoRectangle::center() const

Возвращает центр этого гео-прямоугольника. Эквивалентно QGeoShape::center().

Примечание: Функция-получатель для свойства center.

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

bool QGeoRectangle::contains(const QGeoRectangle &rectangle) const

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

[invokable, since 5.9] void QGeoRectangle::extendRectangle(const QGeoCoordinate &coordinate)

Расширяет геопрямоугольник, чтобы он также охватывал координату coordinate.

Примечание: Данную функцию можно вызывать через систему метаобъектов и из QML. См. Q_INVOKABLE.

Данная функция была введена в Qt 5.9.

double QGeoRectangle::height() const

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

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

Примечание: Функция-геттер для свойства height.

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

[invokable] bool QGeoRectangle::intersects(const QGeoRectangle &rectangle) const

Возвращает значение, указывающее, пересекается ли геопрямоугольник rectangle с этим геопрямоугольником.

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

Примечание: Данную функцию можно вызывать через систему метаобъектов и из QML. См. Q_INVOKABLE.

void QGeoRectangle::setBottomLeft(const QGeoCoordinate &bottomLeft)

Устанавливает нижнюю левую координату этого геопрямоугольника в bottomLeft.

Примечание: Функция-сеттер для свойства bottomLeft.

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

void QGeoRectangle::setBottomRight(const QGeoCoordinate &bottomRight)

Устанавливает нижнюю правую координату этого геопрямоугольника в bottomRight.

Примечание: Функция-сеттер для свойства bottomRight.

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

void QGeoRectangle::setCenter(const QGeoCoordinate &center)

Устанавливает центр этого геопрямоугольника в center.

Если это приводит к тому, что геопрямоугольник пересекает один из полюсов, высота геопрямоугольника будет усечена таким образом, что геопрямоугольник будет простираться только до полюса. Центр геопрямоугольника останется неизменным, а высота будет скорректирована таким образом, чтобы центральная точка находилась в центре усечённого геопрямоугольника.

Примечание: Функция-сеттер для свойства center.

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

void QGeoRectangle::setHeight(double degreesHeight)

Устанавливает высоту этого геопрямоугольника в градусах в degreesHeight.

Примечание: Функция-сеттер для свойства height.

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

void QGeoRectangle::setTopLeft(const QGeoCoordinate &topLeft)

Устанавливает верхнюю левую координату этого геопрямоугольника в topLeft.

Примечание: Функция-сеттер для свойства topLeft.

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

void QGeoRectangle::setTopRight(const QGeoCoordinate &topRight)

Устанавливает верхнюю правую координату этого геопрямоугольника в topRight.

Примечание: Функция-сеттер для свойства topRight.

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

void QGeoRectangle::setWidth(double degreesWidth)

Устанавливает ширину этого геопрямоугольника в градусах в degreesWidth.

Примечание: Функция-сеттер для свойства width.

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

[invokable, since 5.5] QString QGeoRectangle::toString() const

Возвращает свойства геопрямоугольника в виде строки.

Примечание: Данную функцию можно вызывать через систему метаобъектов и из QML. См. Q_INVOKABLE.

Данная функция была введена в Qt 5.5.

QGeoCoordinate QGeoRectangle::topLeft() const

Возвращает верхнюю левую координату этого геопрямоугольника.

Примечание: Функция-геттер для свойства topLeft.

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

QGeoCoordinate QGeoRectangle::topRight() const

Возвращает верхнюю правую координату этого геопрямоугольника.

Примечание: Функция-геттер для свойства topRight.

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

[invokable] void QGeoRectangle::translate(double degreesLatitude, double degreesLongitude)

Перемещает этот геопрямоугольник на degreesLatitude градусов к северу и degreesLongitude градусов к востоку.

Отрицательные значения degreesLatitude и degreesLongitude соответствуют перемещению на юг и запад соответственно.

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

Примечание: Данную функцию можно вызывать через систему метаобъектов и из QML. См. Q_INVOKABLE.

[invokable] QGeoRectangle QGeoRectangle::translated(double degreesLatitude, double degreesLongitude) const

Возвращает копию этого геопрямоугольника, перемещенного на degreesLatitude градусов к северу и degreesLongitude градусов к востоку.

Отрицательные значения degreesLatitude и degreesLongitude соответствуют перемещению на юг и запад соответственно.

Примечание: Данную функцию можно вызывать через систему метаобъектов и из QML. См. Q_INVOKABLE.

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

[invokable] QGeoRectangle QGeoRectangle::united(const QGeoRectangle &rectangle) const

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

Если центры двух геопрямоугольников разделены ровно на 180.0 градусов, ширина устанавливается в 360.0 градусов, с самой левой долготой -180.0 градусов и самой правой долготой 180.0 градусов. Это делается для обеспечения независимости результата от порядка операндов.

Примечание: Данную функцию можно вызывать через систему метаобъектов и из QML. См. Q_INVOKABLE.

double QGeoRectangle::width() const

Возвращает ширину этого геопрямоугольника в градусах.

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

Примечание: Функция-геттер для свойства width.

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

QGeoRectangle QGeoRectangle::operator|(const QGeoRectangle &rectangle) const

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

Если центры двух геопрямоугольников разделены ровно на 180.0 градусов, ширина устанавливается в 360.0 градусов, с самой левой долготой -180.0 градусов и самой правой долготой 180.0 градусов. Это делается для обеспечения независимости результата от порядка операндов.

QGeoRectangle &QGeoRectangle::operator|=(const QGeoRectangle &rectangle)

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

Если центры двух геопрямоугольников разделены ровно на 180.0 градусов, ширина устанавливается в 360.0 градусов, с самой левой долготой -180.0 градусов и самой правой долготой 180.0 градусов. Это делается для обеспечения независимости результата от порядка операндов.

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

Spec-Zone.ru

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