Skip to content

좌표 변환기: 위경도·도분초·UTM·GCJ-02

온라인 위경도 좌표 변환: 십진수·도분초(DMS)를 UTM, 웹 메르카토르, GCJ-02(가오더)·BD-09(바이두)로. 위경도 순서 자동 판별, 역변환 오차 1 mm 미만, CSV 일괄 변환.

트래킹 없음 브라우저 실행 무료
변환은 모두 브라우저에서 실행되며, 붙여넣은 좌표는 이 기기 밖으로 나가지 않습니다.

모든 좌표계에서의 값

WGS-84 / CGCS2000 GPS, iOS 위치 정보, OpenStreetMap, 톈디투 39.909230, 116.397428 39°54′33.23″N 116°23′50.74″E 39°54.5538′N 116°23.8457′E
GCJ-02 가오더 지도(AMap), 텐센트 지도, 위챗 wx.getLocation gcj02 39.910634, 116.403672
BD-09 바이두 지도 (bd09ll) 39.916973, 116.410044
웹 메르카토르 (EPSG:3857) 미터 단위 x, y — 웹 지도 타일 12957302.415, 4852760.584
UTM (WGS-84) 대 + 반구, 동거, 북거(미터) 50N 448496.425 4417856.475
CGCS2000 3° 가우스-크뤼거 X(북), Y(동, 대 번호 포함) X=4419624.325 Y=39448475.815
CGCS2000 6° 가우스-크뤼거 X(북), Y(동, 대 번호 포함) X=4419624.325 Y=20448475.815

GCJ-02는 이 지점을 WGS-84 위치에서 555 m 이동시킵니다.

주요 라이브러리가 '중국'으로 쓰는 직사각형 안입니다. 이 범위에는 한반도, 일본 일부, 몽골, 베트남도 포함되지만, 이 지역에는 오프셋을 적용하면 안 됩니다.

각 링크에는 해당 지도의 좌표계로 이미 변환한 좌표가 담겨 있어 핀이 정확한 위치에 찍힙니다.

GCJ-02와 BD-09 정변환 결과는 gcoord 1.0.7과 한 점씩 대조했고, UTM, CGCS2000 가우스-크뤼거, 웹 메르카토르는 PROJ 9.8.1(pyproj)과 1 mm 이내로 일치함을 확인했습니다. 1단계 역변환과 반복 역변환의 오차는 중국 전역 35,321개 격자점에서 측정했습니다. 도분초 반올림과 자리올림은 정확한 십진 연산으로 검증했습니다. — Go Tools Developer Team · Sep 30, 2026

이 사이트의 지리·인코딩 도구를 만드는 개발자들이 작성하고 검토했습니다. 이 페이지의 모든 좌표, 거리, 오차 수치는 도구의 엔진으로 계산했거나 아래 측정에서 나온 것이며, 테스트로 검증합니다.

좌표 변환 빠른 답변

도분초를 십진수 도로 변환하는 방법은?

D + M/60 + S/3600 십진수 도 = 도 + 분/60 + 초/3600이며, 남위(S)와 서경(W)은 음수입니다. 예: 39°54′33.2″N = 39 + 54/60 + 33.2/3600 = 39.909222°.

가오더, 바이두, GPS는 각각 어떤 좌표계를 쓰나요?

GCJ-02 / BD-09 / WGS-84 가오더 지도(AMap), 텐센트 지도, 위챗 gcj02는 GCJ-02를, 바이두 지도는 GCJ-02 위에 한 번 더 오프셋을 더한 BD-09를, GPS, iOS 위치 정보, OpenStreetMap은 WGS-84를 씁니다. 중국의 세 지도 API 모두 WGS-84로 되돌리는 변환은 제공하지 않습니다.

GCJ-02와 WGS-84는 얼마나 차이 나나요?

17.6–715 m 위치에 따라 다릅니다. 중국 전역을 0.05° 격자로 재면 17.6–715 m, 중앙값은 약 430 m입니다. 톈안먼 주변은 약 555 m, 광저우는 약 621 m이며, BD-09는 여기서 0.76–0.98 km가 더 벌어집니다.

lat,lng와 lng,lat 중 어느 쪽인가요?

데이터 출처에 따라 다름 Google 지도와 공식 EPSG:4326 축 순서는 위도가 먼저이고, GeoJSON과 가오더·바이두 API는 경도가 먼저입니다(116.403672,39.910634). 순서가 뒤바뀌면 지점이 수천 km 이동하므로, 도구가 순서를 판별하고 그 이유를 알려 줍니다.

소수점 6자리면 정밀도가 어느 정도인가요?

≈ 0.11 m 적도에서 1도는 약 111.3 km이므로 소수 5자리 ≈ 1.1 m, 6자리 ≈ 0.11 m, 7자리 ≈ 1.1 cm입니다. 위도 1초는 약 30.8 m입니다.

좌표 변환 공식

아래 여섯 공식은 도구의 엔진과 동일하며, 예시 값은 모두 엔진으로 계산했습니다. 5번과 6번 공식이 GCJ-02 정변환의 전부입니다. 두 다항식으로 오프셋을 구한 뒤 해당 위도의 호 길이로 도 단위로 환산하며, 계수는 gcoord, coordtransform과 같습니다.

도분초 → 십진수 도

DD = D + M/60 + S/3600

S/W: DD = -(D + M/60 + S/3600)

39°54′33.2″N →

  1. 39 + 54/60 + 33.2/3600
  2. 39 + 0.9 + 0.0092222
  3. 39.9092222

= 39.9092222°

십진수 도 → 도분초(먼저 반올림한 뒤 분해)

T = round(|DD| × 3600 × 10^k); D = ⌊T / (3600·10^k)⌋

M = ⌊(T − D·3600·10^k) / (60·10^k)⌋; S = remainder / 10^k

116.397428°, k = 2 →

  1. 116 + 0.397428°
  2. 0.397428 × 60 = 23.84568 → 23′
  3. 0.84568 × 60 = 50.7408 → 50.74″

= 116°23′50.74″

GCJ-02 → BD-09

z = √(x² + y²) + 0.00002·sin(y·π·3000/180); θ = atan2(y, x) + 0.000003·cos(x·π·3000/180)

lng_bd = z·cos θ + 0.0065; lat_bd = z·sin θ + 0.006

GCJ-02 (116.403672, 39.910634) →

  1. z = √(x² + y²) + 0.00002·sin(y·π·3000/180) = 123.055560
  2. θ = atan2(y, x) + 0.000003·cos(x·π·3000/180) = 0.33030648
  3. lng_bd = z·cos θ + 0.0065, lat_bd = z·sin θ + 0.006

= BD-09 (116.410044, 39.916973)

WGS-84 → 웹 메르카토르(EPSG:3857)

x = R·λ; y = R·ln(tan(π/4 + φ/2)), R = 6378137

|φ| ≤ 85.0511287798066°

(116.397428°, 39.90923°) →

  1. x = 6378137 × 116.397428 × π/180
  2. y = 6378137 × ln(tan(45° + 39.90923°/2))

= (12957302.415, 4852760.584)

GCJ-02 오프셋 다항식(x = 경도 − 105, y = 위도 − 35)

T_lat = −100 + 2x + 3y + 0.2y² + 0.1xy + 0.2√|x| + ⅔(20·sin 6πx + 20·sin 2πx) + ⅔(20·sin πy + 40·sin(πy/3)) + ⅔(160·sin(πy/12) + 320·sin(πy/30))

T_lng = 300 + x + 2y + 0.1x² + 0.1xy + 0.1√|x| + ⅔(20·sin 6πx + 20·sin 2πx) + ⅔(20·sin πx + 40·sin(πx/3)) + ⅔(150·sin(πx/12) + 300·sin(πx/30))

(116.397428, 39.90923) → x = 11.397428, y = 4.90923 →

  1. T_lat(x, y) = 155.8381
  2. T_lng(x, y) = 533.8815

= T_lat = 155.8381, T_lng = 533.8815

WGS-84 → GCJ-02: 오프셋을 도로 환산

Δφ = T_lat·180 / (a(1 − e²)/W³·π); Δλ = T_lng·180 / (a/W·cos φ·π)

a = 6378245, e² = 0.00669342162296594323, W = √(1 − e²·sin²φ)

WGS-84 (116.397428, 39.90923) →

  1. W = 0.99862149
  2. Δφ = 0.00140351°, Δλ = 0.00624363°

= GCJ-02 (116.403672, 39.910634)

WGS-84, GCJ-02, BD-09란?

WGS-84는 GPS의 기반이 되는 세계 측지계입니다. GPS 수신기, iOS Core Location(문서에 WGS 84 기준계로 명시), OpenStreetMap의 좌표가 모두 WGS-84입니다. 중국의 CGCS2000 타원체는 편평률의 유효숫자 9번째 자리만 WGS-84와 다르므로, 개발 용도에서는 둘을 같은 것으로 봐도 됩니다.

GCJ-02는 흔히 '화성 좌표'라 불리며 중국 지도 서비스가 쓰는 좌표계입니다. 가오더와 텐센트의 공식 문서 모두 중국 측량 당국이 정한 GCJ-02를 사용한다고 밝히고 있습니다. WGS-84에 위치마다 달라지는 비선형 오프셋을 더한 것으로, 중국 전역 실측값은 17.6–715 m입니다. GPS 지점을 그대로 가오더 지도에 찍으면 수백 미터 어긋나는 이유가 이것입니다.

BD-09는 바이두 지도의 좌표계로, GCJ-02 위에 오프셋을 한 번 더 적용한 것입니다(바이두 문서: 'GCJ02 좌표계를 기반으로 다시 암호화했다'). 도 단위 bd09ll과 미터 단위 bd09mc가 있으며, 이 도구는 bd09ll을 처리합니다. bd09mc는 웹 메르카토르 EPSG:3857이 아닙니다. 같은 지점이라도 북쪽 방향 값이 17–30 km 다릅니다.

이 도구는 공개된 오픈소스 공식을 사용합니다. GCJ-02와 BD-09 정변환 결과는 gcoord, coordtransform과 일치하며, 역변환은 왕복 오차가 1 mm 미만이 될 때까지 반복합니다. 공식은 리버스 엔지니어링으로 얻은 것이고 공식 알고리즘과의 공개 벤치마크가 없으므로, 결과는 개발과 데이터 처리에는 적합하지만 측량 성과물에는 적합하지 않습니다.

WGS-84  39.909230, 116.397428   (GPS / iOS / OSM)
GCJ-02  39.910634, 116.403672   (AMap / Tencent)   +555 m
BD-09   39.916973, 116.410044   (Baidu)            +1378 m
AMap / Baidu API order: lng,lat → 116.403672,39.910634

이 좌표 변환기가 하는 일

어떤 형식이든 붙여넣기

십진수, 도분초(DMS), 도분(DDM), d m s 문자 표기, 도분초로 쓴 중국식 北纬/东经, 앞이나 뒤에 붙은 반구 문자, Google 지도 @lat,lng 링크까지 있는 그대로 읽습니다. 미리 정리할 필요가 없습니다.

lat,lng와 lng,lat 자동 판별

가오더·바이두의 lng,lat과 Google의 lat,lng을 구분하고, 그 근거를 입력란 아래에 표시합니다. 두 값이 모두 90 미만인 중국 서부 지점도 GCJ-02/BD-09 입력이면 중국 범위 규칙에 따라 경도 우선으로 읽습니다.

모든 좌표계를 한 번에

한 지점, 일곱 가지 결과: WGS-84, GCJ-02, BD-09, 웹 메르카토르, UTM, CGCS2000 3°·6° 가우스-크뤼거 대. 행마다 복사 버튼이 있어 변환 방향을 이리저리 전환할 필요가 없습니다.

반복 역변환, 밀리미터 미만 오차

GCJ-02→WGS-84와 BD-09→GCJ-02는 흔히 쓰는 1단계 간이 역변환 대신 고정점 반복으로 계산합니다. 간이 역변환의 오차는 베이징에서 약 0.36 m, 상하이에서 약 2.07 m이고, 중국을 덮는 격자에서는 최대 약 4.9 m입니다. 3–5회 반복하면 왕복 오차가 1 mm 미만이 되며, 단위 테스트로 검증합니다.

UTM과 가우스-크뤼거 대 처리

UTM 대는 노르웨이와 스발바르 예외를 반영하고, 반구는 N/S로 표기합니다. 가우스-크뤼거는 CGCS2000 타원체를 쓰며 X가 북쪽, Y가 동쪽(대 번호 포함)입니다. PROJ와 1 mm 이내로 일치함을 확인했습니다.

CSV 일괄 변환

최대 5,000줄까지 붙여넣으면 줄마다 결과나 실패 이유를 보여 줍니다. 변환 대상 좌표계와 각도 형식을 고른 뒤 복사하거나 CSV(BOM 포함 UTF-8)를 다운로드하세요. 데이터는 브라우저 밖으로 나가지 않습니다.

좌표를 변환하는 다른 방법

gcoord (JavaScript)

npm 라이브러리

WGS84/GCJ02/BD09/BD09MC/EPSG:3857을 지원합니다. GCJ-02 역변환은 잔차가 1e-6° 미만이면 멈추기 때문에 실측 최대 0.147 m 오차가 있고, BD-09 역변환은 1단계입니다. 정변환 결과는 이 도구와 일치하며, 역변환은 이 도구가 더 정밀합니다.

coordtransform

npm / Python 라이브러리

가장 널리 복제된 구현입니다. gcj02towgs84는 1단계 역변환(상하이 부근 약 2.07 m, 격자에서 최대 약 4.9 m 오차)이며, 중국 판정 범위(동경 73.66–135.05°, 북위 3.86–53.55°)가 최북단 모허 같은 중국 자체의 끝 지점을 빠뜨립니다.

PROJ / pyproj / QGIS

GIS 소프트웨어

UTM, 가우스-크뤼거, EPSG 좌표계의 참조 구현으로, 이 도구의 투영 결과와 1 mm 이내로 일치합니다. PROJ에는 GCJ-02와 BD-09가 없으므로 중국 지도 좌표는 따로 처리해야 합니다.

가오더 좌표 변환 API

웹 서비스

/v3/assistant/coordinate/convert는 GPS나 바이두 좌표를 가오더 좌표로 변환하지만, GPS 좌표로 되돌리는 변환은 없고 API 키가 필요하며 좌표가 서버로 전송됩니다.

바이두 geoconv API

웹 서비스

GPS, 가오더/텐센트, bd09ll, bd09mc 좌표를 바이두 좌표로 변환합니다. 문서에는 법률 규정에 따라 어떤 좌표 유형도 GPS 좌표로는 변환할 수 없다고 적혀 있습니다.

스프레드시트 수식

Excel / Sheets

도분초를 십진수로 바꾸는 건 한 줄(=D+M/60+S/3600)이면 되지만, GCJ-02, BD-09, 가우스-크뤼거 공식은 길고 틀리기 쉽습니다. 대량 데이터는 여기에 붙여넣고 CSV로 내보내세요.

좌표 변환 예제

가오더 좌표(GCJ-02, 경도 우선)를 GPS 좌표로

입력 좌표계: GCJ-02
116.403672,39.910634
WGS-84: 39.909230, 116.397428
BD-09:  39.916973, 116.410044

가오더 API는 경도를 먼저 반환합니다. 116이 90보다 크므로 도구도 경도 우선으로 읽습니다. 역변환은 반복 계산입니다. 흔한 1단계 간이식은 이 지점에서 0.074 m, 상하이 부근에서 약 2.07 m, 중국을 덮는 격자에서는 최대 약 4.9 m(북동쪽 끝) 어긋납니다.

도분초를 십진수 도로

입력 좌표계: WGS-84
39°54′33.2″N 116°23′50.7″E
WGS-84: 39.909222, 116.397417

39 + 54/60 + 33.2/3600 = 39.909222, 116 + 23/60 + 50.7/3600 = 116.397417입니다. 중국식 표기 北纬39度54分33.2秒,东经116度23分50.7秒도 같은 결과를 냅니다.

GPS 좌표를 CGCS2000 가우스-크뤼거로

입력 좌표계: WGS-84
31.2304, 121.4737
3°: X=3457455.489 Y=40640412.315
6°: X=3457523.539 Y=21354575.479

동경 121.47°인 상하이는 3° 대 40대(중앙 자오선 120°E), 6° 대 21대(중앙 자오선 123°E)에 속합니다. 중앙 자오선이 다르면 X와 Y도 달라지며, Y의 앞 두 자리가 대 번호입니다.

여러 GPS 좌표를 가오더 좌표로 일괄 변환

39.90923, 116.397428
31.239692, 121.499755
22.543096, 114.057865
39.910634, 116.403672
31.237678, 121.504188
22.540379, 114.062979

여러 줄을 붙여넣으면 일괄 변환 표가 열립니다. '변환 대상'을 GCJ-02로 설정하면 위 결과가 나옵니다. 가오더 API에 넣으려면 CSV를 내보내기 전에 '출력 순서'를 lng, lat로 전환하세요.

좌표 변환기 사용법

  1. 1

    입력 좌표계 선택

    좌표의 출처에 따라 고릅니다. GPS 수신기, iOS 위치 정보, OSM은 WGS-84, 가오더 지도, 텐센트 지도, type: 'gcj02'로 호출한 위챗 미니프로그램은 GCJ-02, 바이두 지도는 BD-09입니다. 투영 좌표(웹 메르카토르 미터 값, UTM, CGCS2000 가우스-크뤼거)도 입력할 수 있습니다.

  2. 2

    좌표를 한 줄에 한 점씩 붙여넣기

    십진수, 도분초(DMS), 도분(DDM), 앞이나 뒤에 붙은 N/S/E/W, 중국식 北纬/东经 표기까지 모두 읽습니다. 값은 쉼표, 공백, 세미콜론 중 무엇으로 구분해도 됩니다. 가우스-크뤼거 입력은 중국 측량 관례대로 X(북쪽) 다음 Y(동쪽) 순서이며, 39448475.815처럼 대 번호가 붙은 Y는 대를 자동으로 정합니다.

  3. 3

    판별된 순서 확인

    입력란 아래 줄에 값을 '위도, 경도'와 '경도, 위도' 중 어느 쪽으로 읽었는지와 그 근거(반구 문자, 90을 넘는 값, 중국 범위 규칙)가 표시됩니다. 두 값이 모두 90 미만이면 순서를 증명할 수 없어 위도 우선으로 간주합니다. 필요하면 '값 순서'를 변경하세요.

  4. 4

    결과 복사 또는 CSV 내보내기

    각 행에 복사 버튼이 있고, 가오더·바이두 API용으로 '출력 순서'를 lng, lat로 전환할 수 있습니다. 여러 줄을 입력하면 일괄 변환 표가 만들어지니, 변환 대상 좌표계와 각도 형식을 고른 뒤 복사하거나 CSV를 다운로드하세요(BOM 포함 UTF-8이라 Excel에서도 깨지지 않습니다).

흔한 좌표 변환 실수

위도와 경도가 뒤바뀜

가오더와 바이두 API는 경도가 먼저, Google 지도와 대부분의 스프레드시트는 위도가 먼저입니다. lng,lat을 lat,lng으로 읽으면 지점이 수천 km 이동합니다.

✗ 오류
lat=116.403672, lng=39.910634
✓ 정상
lat=39.910634, lng=116.403672

GPS 좌표를 가오더·바이두 지도에 그대로 표시

GPS 수신기와 iOS 위치 정보는 WGS-84를 반환합니다. 가오더 지도에 그대로 찍으면 핀이 수백 미터 어긋나고, 바이두 지도에서는 더 어긋납니다. 먼저 해당 지도의 좌표계로 변환하세요.

✗ 오류
AMap marker ← 39.909230, 116.397428 (WGS-84)
✓ 정상
AMap marker ← 39.910634, 116.403672 (GCJ-02)

바이두 좌표를 가오더 좌표로 취급

BD-09는 GCJ-02에서 0.76–0.98 km 더 떨어져 있습니다. 바이두 지도에서 찍은 지점은 GCJ-02로 쓰지 말고, 입력 좌표계를 BD-09로 두고 변환해야 합니다.

✗ 오류
GCJ-02 ← 39.916973, 116.410044 (from Baidu)
✓ 정상
BD-09 → GCJ-02: 39.910634, 116.403672

도 값을 웹 메르카토르 미터 값으로 사용

EPSG:4326은 도, EPSG:3857은 미터입니다. 116.39와 39.90을 EPSG:3857에 넣으면 지점이 북위 0°·동경 0°에서 수백 미터 떨어진 기니만 한가운데에 찍힙니다.

✗ 오류
EPSG:3857 x=116.397428, y=39.90923
✓ 정상
EPSG:3857 x=12957302.415, y=4852760.584

60초가 표시되는 도분초

도·분·초로 먼저 나눈 뒤 초를 반올림하면 39°59′60.00″ 같은 잘못된 값이 나옵니다. 표시할 마지막 자리에서 먼저 반올림한 뒤 나누세요.

✗ 오류
39°59′60.00″
✓ 정상
40°00′00.00″

대 번호가 없는 가우스-크뤼거 Y

대 번호가 붙지 않은 Y(예: 448475.815)로는 중앙 자오선을 알 수 없습니다. 대 번호가 포함된 Y를 입력하거나 대 번호를 직접 지정하세요.

✗ 오류
X=4419624.325 Y=448475.815 (zone ?)
✓ 정상
X=4419624.325 Y=39448475.815 (3° zone 39)

좌표 변환이 필요한 경우

GPS 궤적을 가오더·바이두 지도에 표시
GPS 수신기와 iOS 위치 정보는 WGS-84입니다. 가오더나 텐센트 지도에 표시하려면 GCJ-02로, 바이두 지도라면 BD-09로 변환하세요. 모든 지점을 붙여넣고 CSV를 가져오면 됩니다.
지도에서 찍은 지점을 GPS 기기나 글로벌 지도로
가오더나 바이두 지도에서 얻은 좌표는 등산용 GPS, 드론 비행 계획, OpenStreetMap, Google Earth에서 쓰기 전에 WGS-84로 되돌려야 합니다. 중국 공식 지도 API는 GPS 좌표로의 역변환을 제공하지 않으므로, 오프라인 변환기가 필요한 이유가 바로 이것입니다.
측량·현장 조사 데이터 정리
현장 기록의 도분초를 십진수 도로, 십진수 도를 CGCS2000 3°/6° 가우스-크뤼거 좌표로, UTM을 다시 위경도로 변환합니다. 베이징 1954와 시안 1980은 지역별 매개변수가 필요하므로 여기서는 다루지 않습니다.
'핀이 수백 미터 어긋난다' 문제 디버깅
좌표를 붙여넣으면 GCJ-02와 WGS-84 사이 거리가 표 아래에 표시됩니다. 수백 미터 어긋났다면 좌표계 변환 누락, 수천 km라면 대개 위도와 경도가 뒤바뀐 것입니다.

알고리즘과 정밀도

GCJ-02 정변환 공식
크라소프스키 타원체(a = 6378245.0, e² = 0.00669342162296594323)를 기반으로, (lng−105, lat−35)에 대한 사인 항이 포함된 두 다항식으로 미터 단위 오프셋을 구한 뒤, 해당 위도의 자오선 호장과 평행권 호장으로 도 단위로 환산합니다. 이 도구는 gcoord 1.0.7과 부동소수점 오차 수준에서 일치합니다. 공식은 리버스 엔지니어링으로 얻은 것이며 공식 발표본이 아닙니다.
역변환이 반복 계산인 이유
유통되는 것은 GCJ-02 정변환 공식뿐입니다. 흔히 쓰는 1단계 역변환 wgs ≈ 2·gcj − f(gcj)는 중국을 덮는 격자(동경 73.5–135°, 북위 18–53.5°, 35,321개 지점)에서 오차 중앙값 0.42 m, 최대 약 4.9 m이며, 최대값은 북동쪽 끝 동경 131°, 북위 53.25° 부근에서 나옵니다. 이 도구는 스텝이 1e-10° 미만이 될 때까지 w ← g − Δ(w)를 반복하며(최대 10회), 3–5회 만에 수렴해 왕복 오차가 1 mm 미만이 됩니다. BD-09→GCJ-02도 같은 방식으로 반복합니다.
'중국 내' 판정
주요 오픈소스 라이브러리와 마찬가지로 GCJ-02 오프셋은 동경 72.004–137.8347°, 북위 0.8293–55.8271° 직사각형 안에서만 적용합니다. 이 범위는 대략적이어서 서울, 하노이, 뉴델리 같은 해외 도시도 안에 들어가 132–620 m 오프셋이 걸립니다. 해외 좌표는 보통 변환할 필요가 없으니, 데이터 출처에 맞는 좌표계를 고르세요. 바이두와 텐센트의 공식 문서는 모두 중국 밖에서는 WGS-84를 반환한다고 밝히고 있지만(텐센트는 대만도 포함한다고 명시), 대만은 전체가 이 직사각형 안에 있어 주류 라이브러리에서는 여전히 오프셋이 적용됩니다.
UTM과 가우스-크뤼거
둘 다 횡메르카토르 도법으로, Karney(2011)의 6차 크뤼거 급수로 구현해 PROJ와 나노미터 수준으로 일치합니다. UTM: WGS-84 타원체, k₀ = 0.9996, 가산 동거 500 km, 남반구 가산 북거 10,000 km, 노르웨이·스발바르 대 예외 반영. CGCS2000 가우스-크뤼거: k₀ = 1, 가산 동거 500 km, 3° 대 중앙 자오선 3n, 6° 대 6n−3.
정밀도와 소수 자릿수
도의 소수 자리별 지상 거리는 5자리 ≈ 1.1 m, 6자리 ≈ 0.11 m, 7자리 ≈ 1.1 cm입니다. 위경도는 소수 6자리, 투영 좌표는 밀리미터까지 표시합니다. GCJ-02와 BD-09 공식은 공식 알고리즘과의 공개 벤치마크가 없으므로, 그 이상의 자릿수는 허울뿐인 정밀도일 뿐입니다.

좌표 데이터를 올바르게 다루는 법

WGS-84로 저장하고 표시할 때 변환
데이터베이스에는 WGS-84(또는 CGCS2000)를 저장하고, 지도에 그릴 때만 해당 지도의 좌표계로 변환하세요. GCJ-02로 저장하면 오프셋이 모든 하위 시스템으로 번지고, 지도 서비스를 교체할 때 전체를 다시 계산해야 합니다.
모든 좌표 필드에 좌표계 표기
lng_gcj02나 lat_wgs84처럼 필드 이름을 짓고, API 문서에 lng,lat인지 lat,lng인지 명시하세요. 운영 환경의 '핀이 어긋난다' 버그 대부분은 좌표계나 순서를 밝히지 않은 데서 옵니다.
측량 성과물용이 아님
GCJ-02/BD-09 공식과 CGCS2000 ≈ WGS-84라는 취급은 개발과 데이터 처리에는 충분합니다. 측량, 도시 계획, 토지 등기 업무에는 당국이 공표한 변환 매개변수가 필요하며, 베이징 1954와 시안 1980에는 지역별 7매개변수 또는 4매개변수가 필요합니다.
중국에서 지도를 게시할 때
이 도구는 숫자만 변환할 뿐 지도를 제작하거나 표시하지 않습니다. 중국에서 지도를 게시하는 제품이라면 측량제도법과 지도관리조례의 지도 심사 규정을 따르세요.

좌표 변환 FAQ

GCJ-02에서 WGS-84로의 변환은 정확한가요? 원래 GPS 지점으로 정확히 돌아가나요?
주요 오픈소스 라이브러리가 쓰는 정변환 공식을 기준으로 하면, 이 도구의 반복 역변환은 왕복 오차가 1 mm 미만입니다. 하지만 그 정변환 공식은 리버스 엔지니어링으로 얻은 것이고 실제 GCJ-02와의 공개 벤치마크가 없으므로, 정직하게 말할 수 있는 것은 '정확하다'가 아니라 '주요 라이브러리와 일치한다'입니다. 지도 지점을 GPS 좌표로 되돌리거나 궤적을 가져오기에는 충분하고도 남지만, 측량 업무에는 공식 매개변수를 사용하세요.
사이트마다 결과가 몇 미터씩 다른 이유는?
대부분 GCJ-02 → WGS-84 1단계 간이식을 쓰는데, 중국을 덮는 격자에서 오차 중앙값 0.42 m, 최대 약 4.9 m입니다(북동쪽 끝에서 가장 크며, 베이징은 약 0.36 m, 상하이는 약 2.07 m). 이 도구는 1 mm 미만까지 반복합니다. 또한 eviltransform의 JavaScript BD-09 함수는 주류 공식이 x_pi를 쓰는 자리에 π를 써서 최대 90 m까지 차이가 납니다. 상대가 어떤 라이브러리를 썼는지 확인하세요.
가오더 좌표를 바이두 좌표로 변환하려면?
입력 좌표계로 GCJ-02를 선택하고 가오더 좌표를 붙여넣은 뒤(경도가 먼저여도 됩니다) BD-09 행을 읽으면 됩니다. BD-09는 GCJ-02에서 0.76–0.98 km 더 떨어져 있습니다. 반대 방향은 입력을 BD-09로 두고 GCJ-02 행을 읽으세요.
휴대폰 위치가 지도에서 수백 미터 어긋나는 이유는?
GPS 기기와 iOS 위치 정보(Core Location 문서에 WGS 84로 명시)는 WGS-84를 반환하지만, 가오더와 텐센트 지도는 GCJ-02, 바이두는 BD-09를 씁니다. WGS-84 좌표를 이 지도들에 찍으면 장소에 따라 17.6–715 m 어긋나며, 베이징 중심부에서는 약 555 m입니다. 먼저 해당 지도의 좌표계로 변환하세요. 위챗 미니프로그램은 wx.getLocation({ type: 'gcj02' })로 GCJ-02를 바로 받을 수 있습니다.
십진수 도를 도분초로 변환하려면?
십진수 좌표를 붙여넣으면 첫 행 아래에 도분초(DMS)와 도분(DDM) 형식이 나타납니다. 규칙은 정수 부분이 도, 소수 부분 × 60이 분, 그 나머지 × 60이 초입니다. 도구는 나누기 전에 초의 마지막 표시 자리에서 반올림하므로 59′60″ 같은 잘못된 값을 출력하지 않습니다. 일괄 모드에서는 '각도 형식'을 도분초로 설정하세요.
제 좌표가 왜 경도 우선으로 읽혔나요?
이유는 입력란 아래에 표시됩니다. 반구 문자(N/S/E/W)가 최우선이고, 90을 넘는 값은 경도일 수밖에 없습니다. 두 값이 모두 90 미만이고 입력 좌표계가 GCJ-02나 BD-09일 때, 첫 값이 73에서 90 사이면 경도로 읽습니다. 중국 지도 좌표의 위도가 73°를 넘는 일은 없기 때문입니다. 그 밖에는 위도 우선으로 간주합니다. '값 순서'로 직접 지정할 수 있습니다.
CGCS2000과 WGS-84 사이에 변환이 필요한가요?
개발이나 일반 데이터 작업이라면 필요 없습니다. 두 타원체는 장반경이 같고 편평률의 유효숫자 9번째 자리만 다르므로(단반경 기준 약 0.1 mm), 이 도구는 두 좌표계의 위경도를 같은 값으로 취급합니다. 엄밀히는 기준 원기가 다르며, ITRF2014 유라시아판 모델로 보면 2000년 이후 판 이동은 약 0.77 m입니다. 측량 업무에는 공식 매개변수를 사용하세요.
베이징 1954나 시안 1980 좌표도 변환할 수 있나요?
아니요. 그리고 '원클릭'으로 변환해 주는 도구가 있어서도 안 됩니다. 이 측지계들은 타원체만 다른 게 아니라 원점, 방향, 과거 측지망의 왜곡까지 CGCS2000과 다르기 때문에, 기준점으로부터 지역별로 구한 7매개변수 또는 4매개변수가 필요합니다. EPSG 데이터베이스에는 베이징 1954 → WGS 84 매개변수가 일부 지역에만 있고 시안 1980은 아예 없습니다. 다른 지역의 매개변수를 빌려 쓰면 수십 미터 오차가 납니다.
가우스-크뤼거 3° 대와 6° 대 중 무엇을 쓰고, 대 번호는 어떻게 구하나요?
일반적으로 대축척 측량은 3° 대, 중소축척 지도 제작은 6° 대를 쓰지만 프로젝트 규정을 따르세요. 6° 대 번호 n = ⌊경도/6⌋ + 1, 중앙 자오선은 6n − 3이고, 3° 대 번호 n = ⌊(경도 − 1.5)/3⌋ + 1, 중앙 자오선은 3n입니다. 중국 내에서는 6° 대가 13–23, 3° 대가 25–45이므로 Y의 앞 두 자리로 어느 쪽인지 알 수 있습니다. 도구는 두 가지를 모두 표시합니다.
UTM 좌표의 '50N'은 무슨 뜻인가요?
50은 UTM 대 번호(폭 6°, 베이징은 50대)이고 N은 북반구, S는 남반구를 뜻합니다. 일부 소프트웨어는 '50S'라고 쓰는데, 이때 S는 남반구가 아니라 MGRS 위도대(북위 32°–40°)입니다. 이 도구는 이런 오독을 막기 위해 항상 N/S를 반구 표기로만 씁니다.
웹 메르카토르(EPSG:3857)와 바이두 메르카토르는 같은가요?
아니요. EPSG:3857은 WGS-84 위경도를 R = 6378137 m인 구면 메르카토르 공식에 넣은 것으로, 위도는 ±85.0511°로 제한되며 웹 지도 타일의 표준입니다. 바이두 메르카토르(bd09mc)는 자체 위도대별 다항식을 쓰며, 같은 지점이라도 북쪽 방향 값이 EPSG:3857과 17–30 km 다릅니다. 이 도구는 EPSG:3857을 출력하며 bd09mc는 다루지 않습니다.
주소로 좌표를 찾거나 지도에서 지점을 확인할 수 있나요?
주소 검색은 할 수 없습니다. 주소나 지명을 좌표로 바꾸는 일(지오코딩)에는 온라인 지도 서비스가 필요한데, 이 도구는 모든 계산을 로컬에서 처리하고 어떤 요청도 보내지 않습니다. 좌표의 위치를 보려면 좌표를 붙여 넣고 결과 아래의 '지도에서 열기'를 사용하세요. 가오더 지도, 바이두 지도, OpenStreetMap 링크에는 각 지도의 좌표계로 이미 변환한 좌표가 담겨 있어 핀이 정확한 위치에 찍힙니다. 지도에서 좌표를 가져오려면 가오더나 바이두의 공식 좌표 선택기를 사용한 뒤, 결과를 여기에 GCJ-02 또는 BD-09로 붙여 넣으세요.
제 좌표가 업로드되나요?
아니요. 모든 변환은 브라우저의 JavaScript로 실행되며, 좌표 처리를 위한 네트워크 요청이 전혀 없고 오프라인에서도 작동합니다. 세 개의 '지도에서 열기' 링크는 클릭했을 때만 현재 지점을 해당 지도 사이트로 전달합니다.