Spec-Zone.ru › Qt 5.14

Класс QGeoCoordinate

Класс QGeoCoordinate определяет географическую позицию на поверхности Земли. Подробнее...

Заголовок: #include <QGeoCoordinate>
qmake: QT += positioning
С момента: Qt 5.2

Этот класс был представлен в Qt 5.2.

  • Список всех членов, включая унаследованные

Типы публичного доступа

перечисление CoordinateFormat { Degrees, DegreesWithHemisphere, DegreesMinutes, DegreesMinutesWithHemisphere, DegreesMinutesSeconds, DegreesMinutesSecondsWithHemisphere }
перечисление CoordinateType { InvalidCoordinate, Coordinate2D, Coordinate3D }

Свойства

  • altitude : double
  • isValid : const bool
  • latitude : double
  • longitude : double

Публичные функции

QGeoCoordinate(const QGeoCoordinate &other)
QGeoCoordinate(double latitude, double longitude, double altitude)
QGeoCoordinate(double latitude, double longitude)
QGeoCoordinate()
QGeoCoordinate & operator=(const QGeoCoordinate &other)
~QGeoCoordinate()
double altitude() const
QGeoCoordinate atDistanceAndAzimuth(qreal distance, qreal azimuth, qreal distanceUp = 0.0) const
qreal azimuthTo(const QGeoCoordinate &other) const
qreal distanceTo(const QGeoCoordinate &other) const
bool isValid() const
double latitude() const
double longitude() const
void setAltitude(double altitude)
void setLatitude(double latitude)
void setLongitude(double longitude)
QString toString(QGeoCoordinate::CoordinateFormat format = DegreesMinutesSecondsWithHemisphere) const
QGeoCoordinate::CoordinateType type() const
bool operator!=(const QGeoCoordinate &other) const
bool operator==(const QGeoCoordinate &other) const

Связанные нечлены

QDataStream & operator<<(QDataStream &stream, const QGeoCoordinate &coordinate)
QDataStream & operator>>(QDataStream &stream, QGeoCoordinate &coordinate)

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

QGeoCoordinate определяется широтой, долготой и, необязательно, высотой.

Используйте type(), чтобы определить, является ли координата 2D координатой (содержит только широту и долготу) или 3D координатой (содержит широту, долготу и высоту). Используйте distanceTo() и azimuthTo(), чтобы вычислить расстояние и направление между координатами.

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

Азимут в данном контексте эквивалентен компасному направлению, основанному на истинном севере.

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

Документация по типам членов

перечисление QGeoCoordinate::CoordinateFormat

Определяет возможные варианты форматирования для toString().

Константа Значение Описание
QGeoCoordinate::Degrees 0 Возвращает строковое представление координат в формате десятичных градусов.
QGeoCoordinate::DegreesWithHemisphere 1 Возвращает строковое представление координат в формате десятичных градусов, используя 'N', 'S', 'E' или 'W' для указания полушарий координат.
QGeoCoordinate::DegreesMinutes 2 Возвращает строковое представление координат в формате градусов-минут.
QGeoCoordinate::DegreesMinutesWithHemisphere 3 Возвращает строковое представление координат в формате градусов-минут, используя 'N', 'S', 'E' или 'W' для указания полушарий координат.
QGeoCoordinate::DegreesMinutesSeconds 4 Возвращает строковое представление координат в формате градусов-минут-секунд.
QGeoCoordinate::DegreesMinutesSecondsWithHemisphere 5 Возвращает строковое представление координат в формате градусов-минут-секунд, используя 'N', 'S', 'E' или 'W' для указания полушарий координат.

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

перечисление QGeoCoordinate::CoordinateType

Определяет типы координат.

Константа Значение Описание
QGeoCoordinate::InvalidCoordinate 0 Недействительная координата. Координата считается недействительной, если ее значения широты или долготы недействительны.
QGeoCoordinate::Coordinate2D 1 Координата с действительными значениями широты и долготы.
QGeoCoordinate::Coordinate3D 2 Координата с действительными значениями широты и долготы, а также значением высоты.

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

altitude : double

Это свойство содержит высоту в метрах над уровнем моря.

Свойство не определено (qQNaN()), если высота не была задана.

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

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

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

double altitude() const
void setAltitude(double altitude)

isValid : const bool

Это свойство содержит значение валидности этого геокоординаты.

Геокоордината является валидной, если свойства longitude и latitude были заданы на валидные значения.

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

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

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

bool isValid() const

latitude : double

Это свойство содержит широту в десятичных градусах.

Свойство не определено (qQNaN()), если широта не была задана. Положительная широта указывает на Северное полушарие, а отрицательная широта - на Южное полушарие. При установке широты новое значение должно быть в формате WGS84.

Для валидности широты она должна быть в диапазоне от -90 до 90 включительно.

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

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

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

double latitude() const
void setLatitude(double latitude)

longitude : double

Это свойство содержит долготу в десятичных градусах.

Свойство не определено (qQNaN()), если долгота не была задана. Положительная долгота указывает на Восточное полушарие, а отрицательная долгота - на Западное полушарие. При установке долготы новое значение должно быть в формате WGS84.

Для валидности долготы она должна быть в диапазоне от -180 до 180 включительно.

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

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

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

double longitude() const
void setLongitude(double longitude)

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

QGeoCoordinate::QGeoCoordinate(const QGeoCoordinate &other)

Создаёт координату из содержимого other.

QGeoCoordinate::QGeoCoordinate(double latitude, double longitude, double altitude)

Создаёт координату с заданной latitude, longitude и altitude.

Если широта не находится в диапазоне от -90 до 90 включительно, или долгота не находится в диапазоне от -180 до 180 включительно, значения не устанавливаются, и тип (type()) будет QGeoCoordinate::InvalidCoordinate.

Обратите внимание, что altitude указывает метры над уровнем моря.

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

QGeoCoordinate::QGeoCoordinate(double latitude, double longitude)

Создаёт координату с заданной latitude и longitude.

Если широта не находится в диапазоне от -90 до 90 включительно, или долгота не находится в диапазоне от -180 до 180 включительно, значения не устанавливаются, и тип (type()) будет QGeoCoordinate::InvalidCoordinate.

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

QGeoCoordinate::QGeoCoordinate()

Создаёт координату. Координата будет невалидной, пока не будут вызваны setLatitude() и setLongitude().

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

Присваивает other этой координате и возвращает ссылку на эту координату.

QGeoCoordinate::~QGeoCoordinate()

Уничтожает объект координаты.

double QGeoCoordinate::altitude() const

Возвращает высоту (в метрах над уровнем моря).

Возвращаемое значение не определено, если высота не была установлена.

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

См. также setAltitude() и type().

QGeoCoordinate QGeoCoordinate::atDistanceAndAzimuth(qreal distance, qreal azimuth, qreal distanceUp = 0.0) const

Возвращает координату, достигнутую при перемещении на distance метров от текущей координаты под углом azimuth (или азимутом) по большой окружности. Предполагается, что Земля является сферической для целей этого расчета.

Высота будет увеличена на distanceUp.

Возвращает невалидную координату, если текущая координата невалидна.

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

qreal QGeoCoordinate::azimuthTo(const QGeoCoordinate &other) const

Возвращает азимут (или направление) в градусах от этой координаты до координаты, заданной other. Высота не используется в расчёте.

Возвращаемый азимут - это направление от начала координат до other по большой окружности между двумя координатами. Предполагается, что Земля является сферической для целей этого расчета.

Возвращает 0, если тип этой координаты или тип other равен QGeoCoordinate::InvalidCoordinate.

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

qreal QGeoCoordinate::distanceTo(const QGeoCoordinate &other) const

Возвращает расстояние (в метрах) от этой координаты до координаты, заданной other. Высота не используется в расчёте.

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

Возвращает 0, если тип этой координаты или тип other равен QGeoCoordinate::InvalidCoordinate.

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

bool QGeoCoordinate::isValid() const

Возвращает true если longitude и latitude валидны.

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

double QGeoCoordinate::latitude() const

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

Положительная широта указывает на Северное полушарие, отрицательная - на Южное.

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

См. также setLatitude() и type().

double QGeoCoordinate::longitude() const

Возвращает долготу в десятичных градусах. Возвращаемое значение не определено, если долгота не была установлена.

Положительная долгота указывает на Восточное полушарие, отрицательная - на Западное.

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

См. также setLongitude() и type().

void QGeoCoordinate::setAltitude(double altitude)

Устанавливает высоту (в метрах над уровнем моря) в altitude.

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

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

void QGeoCoordinate::setLatitude(double latitude)

Устанавливает широту (в десятичных градусах) в latitude. Значение должно быть в системе координат WGS84.

Для корректности широта должна быть в пределах от -90 до 90 включительно.

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

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

void QGeoCoordinate::setLongitude(double longitude)

Устанавливает долготу (в десятичных градусах) в longitude. Значение должно быть в системе координат WGS84.

Для корректности долгота должна быть в пределах от -180 до 180 включительно.

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

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

QString QGeoCoordinate::toString(QGeoCoordinate::CoordinateFormat format = DegreesMinutesSecondsWithHemisphere) const

Возвращает координаты в виде строки в указанном формате format.

Например, если у этих координат широта -27.46758, долгота 153.027892 и высота 28.1, то возвращаемые строки в зависимости от format будут следующими:

Значение format Возвращаемая строка
Degrees -27.46758°, 153.02789°, 28.1м
DegreesWithHemisphere 27.46758° Ю, 153.02789° В, 28.1м
DegreesMinutes -27° 28.054', 153° 1.673', 28.1м
DegreesMinutesWithHemisphere 27° 28.054 Ю', 153° 1.673' В, 28.1м
DegreesMinutesSeconds -27° 28' 3.2", 153° 1' 40.4", 28.1м
DegreesMinutesSecondsWithHemisphere 27° 28' 3.2" Ю, 153° 1' 40.4" В, 28.1м

Поле высоты опущено, если высота не задана.

Если координаты некорректны, возвращается пустая строка.

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

QGeoCoordinate::CoordinateType QGeoCoordinate::type() const

Возвращает тип этих координат.

bool QGeoCoordinate::operator!=(const QGeoCoordinate &other) const

Возвращает true если широта, долгота или высота этих координат не идентичны other.

bool QGeoCoordinate::operator==(const QGeoCoordinate &other) const

Возвращает true, если широта, долгота и высота этих координат совпадают с other.

Долгота будет игнорироваться, если широта равна +/- 90 градусов.

Связанные нечлены

QDataStream &operator<<(QDataStream &stream, const QGeoCoordinate &coordinate)

Записывает заданные coordinate в указанный stream.

См. также Сериализация типов данных Qt.

QDataStream &operator>>(QDataStream &stream, QGeoCoordinate &coordinate)

Считывает координату из указанного stream в заданные coordinate.

См. также Сериализация типов данных Qt.

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

Spec-Zone.ru

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