Spec-Zone.ru › Qt 5.15

Класс QGeoCoordinate

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

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

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

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

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

Перечисление CoordinateFormat { Степени, СтепениСПолушарием, СтепениМинуты, СтепениМинутыСПолушарием, СтепениМинутыСекунды, СтепениМинутыСекундыСПолушарием }
Перечисление CoordinateType { НедействительнаяКоордината, Координата2D, Координата3D }

Свойства

  • 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.15/qgeocoordinate.html

Spec-Zone.ru

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