Spec-Zone.ru › Qt 5.6

Класс QGeoCoordinate

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

Заголовок: #include <QGeoCoordinate>
qmake: QT += positioning
С момента: Qt 5.2
  • Список всех членов, включая унаследованные

Типы общего доступа

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

Свойства

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

Функции общего доступа

QGeoCoordinate()
QGeoCoordinate(double latitude, double longitude)
QGeoCoordinate(double latitude, double longitude, double altitude)
QGeoCoordinate(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(CoordinateFormat format = DegreesMinutesSecondsWithHemisphere) const
CoordinateType type() const
bool operator!=(const QGeoCoordinate &other) const
QGeoCoordinate & operator=(const QGeoCoordinate &other)
bool operator==(const QGeoCoordinate &other) const

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

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

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

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

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()

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

QGeoCoordinate::QGeoCoordinate(double latitude, double longitude)

Конструирует координату с заданными latitude и longitude.

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

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

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

Конструирует координату с заданными latitude, longitude и altitude.

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

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

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

QGeoCoordinate::QGeoCoordinate(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.

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

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

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

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

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

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

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

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

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

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(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м

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

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

CoordinateType QGeoCoordinate::type() const

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

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

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

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

Присваивает 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/archives/qt-5.6/qgeocoordinate.html

Spec-Zone.ru

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