Класс 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 |
| 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 этот гео-прямоугольник.
double QGeoRectangle::height() const
Возвращает высоту этого геопрямоугольника в градусах.
Возвращаемое значение равно undefined, если этот геопрямоугольник некорректен.
Примечание: Функция-геттер для свойства height.
См. также setHeight().
bool QGeoRectangle::intersects(const QGeoRectangle &rectangle) const
Возвращает значение true, если геопрямоугольник 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
Возвращает ширину этого геопрямоугольника в градусах.
Возвращаемое значение равно undefined, если этот геопрямоугольник некорректен.
Примечание: Функция-геттер для свойства width.
См. также setWidth().
bool QGeoRectangle::operator!=(const QGeoRectangle &other) const
Возвращает true, если этот геопрямоугольник не равен other.
QGeoRectangle &QGeoRectangle::operator=(const QGeoRectangle &other)
Присваивает other этому геопрямоугольнику и возвращает ссылку на этот геопрямоугольник.
bool QGeoRectangle::operator==(const QGeoRectangle &other) const
Возвращает true, если этот геопрямоугольник равен 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/archives/qt-5.6/qgeorectangle.html