Класс 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.
Примечание: Эту функцию можно вызвать через механизм метаобъектов и из QML. См. Q_INVOKABLE.
double QGeoRectangle::height() const
Возвращает высоту этого гео-прямоугольника в градусах.
Возвращаемое значение неопределено, если этот гео-прямоугольник некорректен.
Примечание: Функция-геттер для свойства height.
См. также setHeight().
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 ¢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.
Примечание: Эту функцию можно вызвать через механизм метаобъектов и из QML. См. Q_INVOKABLE.
QGeoCoordinate QGeoRectangle::topLeft() const
Возвращает северо-западную координату этого гео-прямоугольника.
Примечание: Функция-геттер для свойства topLeft.
См. также setTopLeft().
QGeoCoordinate QGeoRectangle::topRight() const
Возвращает северо-восточную координату этого гео-прямоугольника.
Примечание: Функция-геттер для свойства topRight.
См. также setTopRight().
void QGeoRectangle::translate(double degreesLatitude, double degreesLongitude)
Перемещает этот гео-прямоугольник на degreesLatitude градусов на север и degreesLongitude градусов на восток.
Отрицательные значения degreesLatitude и degreesLongitude соответствуют перемещению на юг и запад соответственно.
Если перемещение приведет к пересечению гео-прямоугольником полюса, гео-прямоугольник будет перемещен до тех пор, пока его верхняя или нижняя граница не коснется полюса, но не дальше.
Примечание: Эту функцию можно вызвать через механизм метаобъектов и из QML. См. Q_INVOKABLE.
QGeoRectangle QGeoRectangle::translated(double degreesLatitude, double degreesLongitude) const
Возвращает копию этого гео-прямоугольника, перемещенную на degreesLatitude градусов на север и degreesLongitude градусов на восток.
Отрицательные значения degreesLatitude и degreesLongitude соответствуют перемещению на юг и запад соответственно.
Примечание: Эту функцию можно вызвать через механизм метаобъектов и из QML. См. Q_INVOKABLE.
См. также translate().
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().
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/archives/qt-5.11/qgeorectangle.html