Класс QGeoRectangle
Класс QGeoRectangle определяет прямоугольную географическую область. Подробнее...
| Заголовок: | #include <QGeoRectangle> |
| qmake: | QT += positioning |
| С версии: | Qt 5.2 |
| Наследуется от: | QGeoShape |
Свойства
|
- 3 свойства, унаследованные от QGeoShape
Открытые функции
| QGeoRectangle() | |
| QGeoRectangle(const QGeoCoordinate ¢er, double degreesWidth, double degreesHeight) | |
| QGeoRectangle(const QGeoCoordinate &topLeft, const QGeoCoordinate &bottomRight) | |
| QGeoRectangle(const QList<QGeoCoordinate> &coordinates) | |
| QGeoRectangle(const QGeoRectangle &other) | |
| QGeoRectangle(const QGeoShape &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 ¢er) |
| 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 |
| bool | operator!=(const QGeoRectangle &other) const |
| QGeoRectangle & | operator=(const QGeoRectangle &other) |
| bool | operator==(const QGeoRectangle &other) const |
| QGeoRectangle | operator|(const QGeoRectangle &rectangle) const |
| QGeoRectangle & | operator|=(const QGeoRectangle &rectangle) |
- 10 открытых функций, унаследованных от QGeoShape
Подробное описание
Класс QGeoRectangle определяет прямоугольную географическую область.
Прямоугольник определяется с помощью QGeoCoordinate, который задает левую верхнюю координату прямоугольника, и QGeoCoordinate, который задает правую нижнюю координату прямоугольника.
Географический прямоугольник считается недействительным, если левая верхняя или правая нижняя координаты недействительны или если левая верхняя координата находится южнее правой нижней координаты.
Географические прямоугольники никогда не могут пересекать полюса.
Несколько методов ведут себя так, как будто географический прямоугольник определяется с помощью центральной координаты, ширины географического прямоугольника в градусах и высоты географического прямоугольника в градусах.
Если высота или центр географического прямоугольника корректируются таким образом, что он пересекает один из полюсов, высота изменяется таким образом, чтобы географический прямоугольник касался, но не пересекал полюс, и чтобы центральная координата оставалась в центре географического прямоугольника.
Этот класс является Q_GADGET начиная с Qt 5.5. Он может быть непосредственно использован из C++ и QML.
Документация по свойствам
bottomLeft : QGeoCoordinate
Это свойство содержит координаты нижней левой точки этого гео-прямоугольника.
Хотя это свойство было введено в Qt 5.5, соответствующие функции доступа существуют с первой версии этого класса.
Это свойство было введено в Qt 5.5.
Функции доступа:
| QGeoCoordinate | bottomLeft() const |
| void | setBottomLeft(const QGeoCoordinate &bottomLeft) |
bottomRight : QGeoCoordinate
Это свойство содержит координаты нижней правой точки этого гео-прямоугольника.
Хотя это свойство было введено в Qt 5.5, соответствующие функции доступа существуют с первой версии этого класса.
Это свойство было введено в Qt 5.5.
Функции доступа:
| QGeoCoordinate | bottomRight() const |
| void | setBottomRight(const QGeoCoordinate &bottomRight) |
center : QGeoCoordinate
Это свойство содержит центр этого гео-прямоугольника.
Хотя это свойство было введено в Qt 5.5, соответствующие функции доступа существуют с первой версии этого класса.
Это свойство было введено в Qt 5.5.
Функции доступа:
| QGeoCoordinate | center() const |
| void | setCenter(const QGeoCoordinate ¢er) |
См. также QGeoShape::center.
height : double
Это свойство содержит высоту этого гео-прямоугольника в градусах.
Значение свойства не определено, если гео-прямоугольник некорректен.
Если новая высота меньше 0,0 или гео-прямоугольник некорректен, свойство не изменяется. Чтобы установить значения некорректного гео-прямоугольника на основе центра, ширины и высоты, необходимо сначала использовать setCenter() для приведения гео-прямоугольника в корректное состояние.
Если изменение высоты приведет к пересечению полюса, высота корректируется таким образом, чтобы гео-прямоугольник лишь касался полюса.
Это изменение делается таким образом, чтобы координата центра оставалась в центре гео-прямоугольника, что может привести к гео-прямоугольнику с меньшей высотой, чем ожидалось.
180.0 используется в качестве высоты только если новая высота больше или равна 180.
Хотя это свойство было введено в Qt 5.5, соответствующие функции доступа существуют с первой версии этого класса.
Это свойство было введено в Qt 5.5.
Функции доступа:
| double | height() const |
| void | setHeight(double degreesHeight) |
topLeft : QGeoCoordinate
Это свойство содержит координаты верхней левой точки этого гео-прямоугольника.
Хотя это свойство было введено в Qt 5.5, соответствующие функции доступа существуют с первой версии этого класса.
Это свойство было введено в Qt 5.5.
Функции доступа:
| QGeoCoordinate | topLeft() const |
| void | setTopLeft(const QGeoCoordinate &topLeft) |
topRight : QGeoCoordinate
Это свойство содержит координаты верхней правой точки этого гео-прямоугольника.
Хотя это свойство было введено в Qt 5.5, соответствующие функции доступа существуют с первой версии этого класса.
Это свойство было введено в Qt 5.5.
Функции доступа:
| QGeoCoordinate | topRight() const |
| void | setTopRight(const QGeoCoordinate &topRight) |
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()
Создаёт новый некорректный гео-прямоугольник.
QGeoRectangle::QGeoRectangle(const QGeoCoordinate ¢er, double degreesWidth, double degreesHeight)
Создаёт новый гео-прямоугольник, центрированный в точке center с шириной degreesWidth и высотой degreesHeight в градусах.
Если degreesHeight выведет гео-прямоугольник за пределы одного из полюсов, высота гео-прямоугольника будет усечена таким образом, чтобы гео-прямоугольник лишь касался полюса. Центр гео-прямоугольника останется неизменным, а высота будет скорректирована таким образом, чтобы центральная точка была в центре усечённого гео-прямоугольника.
QGeoRectangle::QGeoRectangle(const QGeoCoordinate &topLeft, const QGeoCoordinate &bottomRight)
Создаёт новый гео-прямоугольник с координатами верхней левой точки topLeft и нижней правой точки bottomRight.
QGeoRectangle::QGeoRectangle(const QList<QGeoCoordinate> &coordinates)
Создаёт новый гео-прямоугольник минимального размера, содержащий все coordinates.
QGeoRectangle::QGeoRectangle(const QGeoRectangle &other)
Создаёт гео-прямоугольник на основе содержимого other.
QGeoRectangle::QGeoRectangle(const QGeoShape &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 внутри этого гео-прямоугольника.
void QGeoRectangle::extendRectangle(const QGeoCoordinate &coordinate)
Расширяет гео-прямоугольник, чтобы он также охватывал координату coordinate
Эта функция была добавлена в Qt 5.9.
double QGeoRectangle::height() const
Возвращает высоту этого гео-прямоугольника в градусах.
Значение возврата неопределено, если этот гео-прямоугольник некорректен.
Примечание: Функция-геттер для свойства height.
См. также setHeight().
bool QGeoRectangle::intersects(const QGeoRectangle &rectangle) const
Возвращает значение, указывающее, пересекается ли гео-прямоугольник rectangle с этим гео-прямоугольником.
Если верхние или нижние края обоих гео-прямоугольников находятся на одном из полюсов, гео-прямоугольники считаются пересекающимися, поскольку долгота не имеет значения, когда края находятся на полюсе.
void QGeoRectangle::setBottomLeft(const QGeoCoordinate &bottomLeft)
Устанавливает юго-западную координату этого гео-прямоугольника в bottomLeft.
Примечание: Функция-сеттер для свойства bottomLeft.
См. также bottomLeft().
void QGeoRectangle::setBottomRight(const QGeoCoordinate &bottomRight)
Устанавливает юго-восточную координату этого гео-прямоугольника в bottomRight.
Примечание: Функция-сеттер для свойства bottomRight.
См. также bottomRight().
void QGeoRectangle::setCenter(const QGeoCoordinate ¢er)
Устанавливает центр этого гео-прямоугольника в 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().
QString QGeoRectangle::toString() const
Возвращает свойства гео-прямоугольника в виде строки.
Эта функция была добавлена в Qt 5.5.
QGeoCoordinate QGeoRectangle::topLeft() const
Возвращает северо-западную координату этого гео-прямоугольника.
Примечание: Функция-геттер для свойства topLeft.
См. также setTopLeft().
QGeoCoordinate QGeoRectangle::topRight() const
Возвращает северо-восточную координату этого гео-прямоугольника.
Примечание: Функция-геттер для свойства topRight.
См. также setTopRight().
void QGeoRectangle::translate(double degreesLatitude, double degreesLongitude)
Перемещает этот гео-прямоугольник на degreesLatitude градусов на север и degreesLongitude градусов на восток.
Отрицательные значения degreesLatitude и degreesLongitude соответствуют перемещению на юг и запад соответственно.
Если перемещение приведет к пересечению гео-прямоугольника с полюсом, гео-прямоугольник будет перемещен до тех пор, пока верхняя или нижняя граница гео-прямоугольника не коснется полюса, но не дальше.
QGeoRectangle QGeoRectangle::translated(double degreesLatitude, double degreesLongitude) const
Возвращает копию этого гео-прямоугольника, перемещенную на degreesLatitude градусов на север и degreesLongitude градусов на восток.
Отрицательные значения degreesLatitude и degreesLongitude соответствуют перемещению на юг и запад соответственно.
См. также translate().
QGeoRectangle QGeoRectangle::united(const QGeoRectangle &rectangle) const
Возвращает наименьший гео-прямоугольник, содержащий как этот гео-прямоугольник, так и rectangle.
Если центры двух гео-прямоугольников разделены ровно на 180,0 градусов, ширина устанавливается в 360,0 градусов, а левая долгота устанавливается в -180,0 градусов, а правая долгота - в 180,0 градусов. Это делается для обеспечения того, что результат не зависит от порядка операндов.
double QGeoRectangle::width() const
Возвращает ширину этого гео-прямоугольника в градусах.
Значение возврата неопределено, если этот гео-прямоугольник некорректен.
Примечание: Функция-геттер для свойства width.
См. также setWidth().
bool QGeoRectangle::operator!=(const QGeoRectangle &other) const
Возвращает значение, указывающее, не равен ли этот гео-прямоугольник other.
QGeoRectangle &QGeoRectangle::operator=(const QGeoRectangle &other)
Присваивает other этому гео-прямоугольнику и возвращает ссылку на этот гео-прямоугольник.
bool QGeoRectangle::operator==(const QGeoRectangle &other) const
Возвращает значение, указывающее, равен ли этот гео-прямоугольник other.
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-5.9/qgeorectangle.html