이 페이지에서

QGeoCoordinate Class

QGeoCoordinate 클래스는 지구 표면상의 지리적 위치를 정의합니다. 더 보기...

헤더: #include <QGeoCoordinate>
CMake: find_package(Qt6 REQUIRED COMPONENTS Positioning)
target_link_libraries(mytarget PRIVATE Qt6::Positioning)
qmake: QT += positioning

공개 유형

enum CoordinateFormat { Degrees, DegreesWithHemisphere, DegreesMinutes, DegreesMinutesWithHemisphere, DegreesMinutesSeconds, DegreesMinutesSecondsWithHemisphere }
enum CoordinateType { InvalidCoordinate, Coordinate2D, Coordinate3D }

속성

공개 행사

QGeoCoordinate()
QGeoCoordinate(double latitude, double longitude)
QGeoCoordinate(double latitude, double longitude, double altitude)
QGeoCoordinate(const QGeoCoordinate &other)
(since 6.2) QGeoCoordinate(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)
(since 6.2) void swap(QGeoCoordinate &other)
QString toString(QGeoCoordinate::CoordinateFormat format = DegreesMinutesSecondsWithHemisphere) const
QGeoCoordinate::CoordinateType type() const
(since 6.2) QGeoCoordinate &operator=(QGeoCoordinate &&other)
QGeoCoordinate &operator=(const QGeoCoordinate &other)
bool operator!=(const QGeoCoordinate &lhs, const QGeoCoordinate &rhs)
QDataStream &operator<<(QDataStream &stream, const QGeoCoordinate &coordinate)
bool operator==(const QGeoCoordinate &lhs, const QGeoCoordinate &rhs)
QDataStream &operator>>(QDataStream &stream, QGeoCoordinate &coordinate)

상세 설명

QGeoCoordinate는 위도, 경도 및 선택적으로 고도로 정의됩니다.

type()를 사용하여 좌표가 2D 좌표(위도와 경도만 포함)인지, 3D 좌표(위도, 경도 및 고도 포함)인지 확인하십시오. distanceTo() 및 azimuthTo()를 사용하여 좌표 간의 거리와 방위를 계산하십시오.

좌표 값은 WGS84 기준계를 사용하여 지정해야 합니다. 지리학 용어에 대한 자세한 내용은 좌표에 관한 이 문서와 WGS84를 포함한 측지계에 관한 다른 문서를 참조하십시오.

이 문맥에서 방위각(Azimuth)은 진북을 기준으로 한 나침반 방위와 동일합니다.

이 클래스는 QML에서 geoCoordinate 로도 접근할 수 있습니다.

멤버 유형 문서

enum QGeoCoordinate::CoordinateFormat

toString() 함수에 사용할 수 있는 서식 지정 옵션을 정의합니다.

상수값설명
QGeoCoordinate::Degrees0좌표를 십진도 형식의 문자열로 반환합니다.
QGeoCoordinate::DegreesWithHemisphere1'N', 'S', 'E' 또는 'W'를 사용하여 좌표의 반구를 나타내는, 십진도 형식의 좌표 문자열을 반환합니다.
QGeoCoordinate::DegreesMinutes2좌표를 도-분 형식으로 나타낸 문자열을 반환합니다.
QGeoCoordinate::DegreesMinutesWithHemisphere3'N', 'S', 'E' 또는 'W'를 사용하여 좌표의 반구를 나타내는, 도-분 형식의 좌표 문자열을 반환합니다.
QGeoCoordinate::DegreesMinutesSeconds4좌표를 도-분-초 형식으로 표현한 문자열을 반환합니다.
QGeoCoordinate::DegreesMinutesSecondsWithHemisphere5'N', 'S', 'E' 또는 'W'를 사용하여 좌표의 반구를 나타내는, 도-분-초 형식의 좌표 문자열을 반환합니다.

toString()도 참조하십시오 .

enum QGeoCoordinate::CoordinateType

좌표의 유형을 정의합니다.

상수값설명
QGeoCoordinate::InvalidCoordinate0유효하지 않은 좌표. 위도 또는 경도 값이 유효하지 않은 경우 해당 좌표는 유효하지 않습니다.
QGeoCoordinate::Coordinate2D1위도와 경도 값이 유효한 좌표입니다.
QGeoCoordinate::Coordinate3D2위도와 경도 값이 유효하고 고도 값도 있는 좌표입니다.

속성 설명서

altitude : double

이 속성은 해발 고도를 미터 단위로 저장합니다.

고도가 설정되지 않은 경우, 이 속성은 정의되지 않은 값(qQNaN()))을 가집니다.

이 속성은 Qt 5.5에서 도입되었으나, 관련 액세서 함수는 이 클래스의 첫 번째 버전부터 존재해 왔습니다.

액세스 함수:

double altitude() const
void setAltitude(double altitude)

[read-only] isValid : bool

이 속성은 해당 지리적 좌표의 유효성을 나타냅니다.

longitude 및 latitude 속성이 유효한 값으로 설정된 경우, 해당 지리적 좌표는 유효합니다.

이 속성은 Qt 5.5에서 도입되었으나, 관련 액세서 함수는 이 클래스의 첫 번째 버전부터 존재해 왔습니다.

액세스 함수:

bool isValid() const

latitude : double

이 속성은 십진도 단위의 위도를 저장합니다.

위도가 설정되지 않은 경우 이 속성은 정의되지 않은 값(qQNaN()))을 반환합니다. 양의 위도는 북반구를, 음의 위도는 남반구를 나타냅니다. 위도를 설정할 때는 새로운 값이 WGS84 좌표계 형식으로 되어야 합니다.

유효한 위도 값은 -90부터 90까지(양쪽 끝 포함)여야 합니다.

이 속성은 Qt 5.5에서 도입되었지만, 관련 액세서 함수는 이 클래스의 첫 번째 버전부터 존재해 왔습니다.

액세스 함수:

double latitude() const
void setLatitude(double latitude)

longitude : double

이 속성은 십진도 단위의 경도를 저장합니다.

경도가 설정되지 않은 경우 이 속성은 정의되지 않은 값(qQNaN()))을 가집니다. 양의 경도는 동반구를, 음의 경도는 서반구를 나타냅니다. 경도를 설정할 때는 새 값이 WGS84 좌표계 형식으로 되어야 합니다.

경도는 유효하기 위해 -180에서 180 사이의 값이어야 합니다(이 범위 포함).

이 속성은 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 의 내용을 바탕으로 좌표를 생성합니다.

[constexpr noexcept default, since 6.2] QGeoCoordinate::QGeoCoordinate(QGeoCoordinate &&other)

other 에서 이동하여 좌표를 생성합니다.

참고: 이동 대상인 QGeoCoordinate객체는 소멸되거나 할당될 수만 있습니다. 소멸자나 할당 연산자 중 하나를 제외한 다른 함수를 호출할 경우 그 결과는 정의되지 않습니다.

이 함수는 Qt 6.2에서 도입되었습니다.

[noexcept] QGeoCoordinate::~QGeoCoordinate()

좌표 객체를 삭제합니다.

double QGeoCoordinate::altitude() const

고도(해발 미터)를 반환합니다.

고도가 설정되지 않은 경우 반환 값은 정의되지 않습니다.

참고: altitude 속성에 대한게터 함수입니다.

setAltitude() 및 type()도 참조하십시오 .

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

현재 좌표( azimuth 또는 방위각)에서 대원(great-circle)을 따라 distance 미터 이동했을 때 도달하는 좌표를 반환합니다. 이 계산에서는 지구가 구형이라는 가정을 전제로 합니다.

고도 값에는 distanceUp 가 더해집니다.

이 좌표가 유효하지 않은 경우, 무효한 좌표를 반환합니다.

참고: 이 함수는 메타 객체 시스템 및 QML을 통해 호출할 수 있습니다. Q_INVOKABLE 를 참조하십시오.

[invokable] qreal QGeoCoordinate::azimuthTo(const QGeoCoordinate &other) const

이 좌표에서 other 로 지정된 좌표까지의 방위각(또는 베어링)을 도 단위로 반환합니다. 계산에는 고도가 사용되지 않습니다.

반환된 방위는 두 좌표 사이의 대원(great-circle)을 따라 원점(origin)에서 other 까지의 방위각입니다. 이 계산에서는 지구가 구형이라는 가정을 합니다.

이 좌표의 유형이나 other 의 유형이 ` QGeoCoordinate::InvalidCoordinate`인 경우 0을 반환합니다.

참고: 이 함수는 메타 객체 시스템 및 QML을 통해 호출할 수 있습니다. Q_INVOKABLE 를 참조하십시오.

[invokable] qreal QGeoCoordinate::distanceTo(const QGeoCoordinate &other) const

이 좌표에서 ` other`로 지정된 좌표까지의 거리(미터 단위)를 반환합니다. 계산 시 고도는 고려되지 않습니다.

이 계산은 두 좌표 간의 대원 거리를 반환하며, 계산의 목적으로 지구가 구형이라고 가정합니다.

이 좌표의 유형이나 other 의 유형이 QGeoCoordinate::InvalidCoordinate 인 경우 0을 반환합니다.

참고: 이 함수는 메타 객체 시스템 및 QML을 통해 호출할 수 있습니다. Q_INVOKABLE 를 참조하십시오.

bool QGeoCoordinate::isValid() const

longitude 와 latitude 가 유효한 경우 true 를 반환합니다.

참고: 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()도 참조하십시오 .

[noexcept, since 6.2] void QGeoCoordinate::swap(QGeoCoordinate &other)

other 와 이 좌표를 서로 바꿉니다. 이 작업은 매우 빠르며 절대 실패하지 않습니다.

이 함수는 Qt 6.2에서 도입되었습니다.

[invokable] QString QGeoCoordinate::toString(QGeoCoordinate::CoordinateFormat format = DegreesMinutesSecondsWithHemisphere) const

지정된 ` format` 형식으로 이 좌표를 문자열로 반환합니다.

예를 들어, 이 좌표의 위도가 -27.46758, 경도가 153.027892, 고도가 28.1인 경우, ` format`에 따라 다음과 같은 문자열이 반환됩니다:

format 값반환된 문자열
Degrees-27.46758°, 153.02789°, 28.1m
DegreesWithHemisphere남위 27.46758°, 동경 153.02789°, 28.1m
DegreesMinutes-27° 28.054', 153° 1.673', 28.1m
DegreesMinutesWithHemisphere남위 27° 28.054', 동경 153° 1.673', 28.1m
DegreesMinutesSeconds-27° 28' 3.2", 153° 1' 40.4", 28.1m
DegreesMinutesSecondsWithHemisphere남위 27° 28' 3.2", 동경 153° 1' 40.4", 28.1m

고도가 설정되지 않은 경우 고도 필드는 생략됩니다.

좌표가 유효하지 않은 경우, 빈 문자열이 반환됩니다.

참고: 이 함수는 메타 객체 시스템 및 QML을 통해 호출할 수 있습니다. Q_INVOKABLE 를 참조하십시오.

QGeoCoordinate::CoordinateType QGeoCoordinate::type() const

이 좌표의 유형을 반환합니다.

[noexcept, since 6.2] QGeoCoordinate &QGeoCoordinate::operator=(QGeoCoordinate &&other)

other 를 이 좌표에 할당하고, 이 좌표에 대한 참조를 반환합니다.

참고: 이동된 QGeoCoordinate 객체는 소멸되거나 할당될 수만 있습니다. 소멸자나 할당 연산자 중 하나를 제외한 다른 함수를 호출할 경우의 결과는 정의되지 않습니다.

이 함수는 Qt 6.2에서 도입되었습니다.

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

이 좌표에 ` other `를 할당하고, 이 좌표에 대한 참조를 반환합니다.

관련 비멤버 변수

bool operator!=(const QGeoCoordinate &lhs, const QGeoCoordinate &rhs)

lhs 좌표의 위도, 경도 또는 고도가 rhs 좌표의 위도, 경도 또는 고도와 일치하지 않으면 true 를 반환합니다. 그렇지 않은 경우 false 를 반환합니다.

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

지정된 ` coordinate `를 지정된 ` stream`에 기록합니다.

'Qt 데이터 유형 직렬화'항목도 참조하십시오 .

bool operator==(const QGeoCoordinate &lhs, const QGeoCoordinate &rhs)

lhs 좌표의 위도, 경도 및 고도가 rhs 좌표의 위도, 경도 및 고도와 동일한 경우 true 를 반환합니다. 그렇지 않은 경우 false 를 반환합니다.

위도가 ±90도인 경우 경도는 무시됩니다.

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

지정된 ` stream `에서 좌표를 읽어와 주어진 ` coordinate`에 저장합니다.

'Qt 데이터 유형 직렬화'항목도 참조하십시오 .

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.