상상 너머 그 무언가...

위도 경도LatLng 본문

개발관련(Development)/기타(Etc)

위도 경도LatLng

Clack 2012. 10. 4. 19:05

GPS나 네이베이션 또는 지도 어플리케이션 등등 지도상의 특정 좌표를 가리키는데 위도와 경도를 사용한다.


위도는 적도를 기준으로 북극과 남극 방향으로 90도씩 총 180도로 나눈 가로방향 좌표이고

경도는 그리니치 천문대를 기준으로 좌우로 총 360도로 나눈 세로방향 좌표이다. ( 경도 15도는 1시간 )


위도( Latitude ), 경도( Longitude ) 는 약어로  프로그램 코딩상에서 Lat, Lng 으로 줄여서 쓰기도 한다.


위도와 경도를 나타내는 단위로는 도,분,초 를 사용하는데 시간 처럼 60진법을 사용한다.

ex) 1도는 60분 1분은 60초


상봉역 3번 출구의 위도, 경도 값은 

위도 : 37.59523

경도 : 127.08600


상봉역 3번 출구의 위도 경도값을 도분초 단위로 바꿔 적으면

위도 :  북위 37도 35분 42초

경도 : 동경 127도  5분 9초


위도와 경도 값에서 도분초 단위의 값을 구하는 방식은 위도와 경도의 값에서 

앞에 정수 부분은 도의 값으로  - ex) 37.59523

남은 소수의 값에 60을 곱해 나온 수의 정수값이 분 - ex) 0.59523 * 60 = 35.7138

남은 소수의 값에 다시 60을 곱해 나온 수의 정수값이 초 - ex) 0.7138 * 60 = 42.828



지구의 반지름은 대략 6300km ~ 6400km (지구는 살짝 타원형 )

지구 둘레는 약 40000km

지구 둘레 40000을 360도로 나누면 1도에 해당하는 길이 값을 구할 수 있다.

위도 1도에 해당하는 길이 값은, 40000 / 360 = 약 111km (111.11111111... 이지만 어차피 대략적이므로 )

경도도 위도와 같이 1도에 해당하는 값이 111km이지만 북극과 남극으로 가까워질수록 경도사이의 간격이 좁아지고 북극점과 남극점에서는 경도 사이의 거리가 0이 되므로 (경도는 적도에서 간격이 가장 길다, 북극과 남극에서는 경도선이 한점으로 모인다 )

경도 1도에 해당하는 길이값은 111 *  cos( 해당 지역의 위도값 ) 방식으로 구해야 한다.

우리나라에서 흔히쓰는  위도37도기준  경도 거리는 1도=88.8km ,1분=1.48km , 1초≒25m 입니다


지도상의 두 위도(북위),경도(동경)에 해당하는 두 점의 거리값을 구하는 방법은 

도,분,초 값으로 구한 두 값의 차를 구하고 나온 결과 값에

위도의 값 y좌표의 도 * 111 + y좌표의 분 * 1.85 + y좌표의 초 * 0.031 를 계산한 값 A를 구하고

경도의 값 x좌표의 도 * 88.8 + x좌표의 분 * 1.48 + x좌표의 초 * 0.025 를 계산한 값 B와

A제곱 + B제곱의 값에 루트 연산을 하면 km단위의 거리값을 구할 수 있다.



위의 방식은 위도 차이가 크지 않는 거리내에서는 오차가 적지만 북극 근처의 한 지점과 적도 근처의  다른 한 지점과의 거리 값 구하는 공식으로는 올바르지 않다. 


구 위에 두 점을 백터로 연산하는 방식이 있다고 한다.