Geocoding과 구글맵

일전에 한참 GoogleMap을 가지고 이런 저런 작업(?)을 하다가 주소나 우편번호를 입력하면 해당 위치가 지도상에 보여지도록하는 방법에 대해서 이리저리 알아보고 다녔던 기억이 났다. 이것을 가리켜서 전문용어(?)로 Reverse Geocoding이라고 한다.

그럼 이러한 주소정보만을 가지고 어떻게 해당지역을 지도위에 표시해줄 수 있을까?? 지도를 수십만개의 작은 영역으로 나누고 해당 영역마다 주소정보를 넣어 놓는 방법도 있을테고, 여기서는 작은영역이 작을수록 보다 정밀하게 주소에 대응하는 지역을 찾을 수 있겠다. 이외에도 뭐 생각한다면 여러가지 무식한 방법들이 많을테고...

내가 선택한 방법은 우선 전국의 우편번호와 우편번호에 따른 주소를 가기고 와서 이 우편번호에 대응하는 지도의 위도와 경도를 데이터베이스화 해서 사용자가 주소나 우편번호를 입력하면 데이터베이스에서 일치하는 위도,경도 값을 가져와 구글맵에 표시해주는 방식을 선택하기로 했다.

첫번째 우편번호와 그에 대응하는 주소 정보 가져오기는 뭐 공개되어있는 우편번호들을 이용해서 아주 손쉽게 가져올 수 있었다.

두번째 그럼 주소에 대응하는 위,경도 정보는 여기서 막힌다. 그래서 네이버에다가 첫번째 단계에서 얻은 주소들을 쿼리로 날려서 네이버에서 제공하는 위,경도 정보를 얻어냈다. 이거 우편번호가 한두개도 아니기 때문에 프로그램을 만들어서 대량의 쿼리를 네이버로 자동으로 보내고 응답(위,경도정보)을 DB화 했다.

마지막 세번째로는 네이버의 위,경도 정보를 다시 구글맵용으로 변환하는 스크립트(네이버에서 사용하는 좌표 정보와 구글맵에서 사용하는 좌표 정보가 틀리단다.)를 만들어 낸다. 그러면 끝.

이제 http://www.hongiiv.com/gmap 여기에 붙이기만 하면 주소입력하면 해당 지역으로 바로 이동이 가능한것이다. ㅋㄷㅋㄷ

뭐좀 다른방법 없나....

Posted by hongiiv

2008/01/04 11:09 2008/01/04 11:09
, , , , , , ,
Response
No Trackback , 6 Comments
RSS :
http://socmaster.homelinux.org/~hongiiv/rss/response/298

Trackback URL : http://socmaster.homelinux.org/~hongiiv/trackback/298

Comments List

  1. 푸른하늘 2008/01/04 13:16 # M/D Reply Permalink

    주소, 우편번호로 위치를 찾아가도록 해주는 것은 Geocoding입니다. 반대로 위치로부터 주소나 우편번호를 찾을 수 있도록 해준다면 그것이 Reverse Geocoding이죠.
    아마... 새주소가 활성화되면 주소를 위경도로 바꾸는 건 매우 편해질 겁니다~

    1. hongiiv 2008/01/04 18:27 # M/D Permalink

      앗 제가 잘못 알고 있었군요 ^^;; 우선 제목은 급하게 바꿨습니다. 음 새주소가 나올때까지 기다려봐야겠군요. 암튼 감사합니다.

  2. snowall 2008/03/21 13:46 # M/D Reply Permalink

    혹시 이거 DB나 사용하신 프로그램을 공개하실 수 있나요? 이 정보가 필요하긴 한데, 프로그램을 만들려고 하니까 난감하네요...--;

    1. hongiiv 2008/03/21 14:36 # M/D Permalink

      주소, 우편번호로 위치를 찾아가도록 해주는Geocoding,
      위치로부터 주소나 우편번호를 찾을 수 있도록 해주는 Reverse Geocoding 모두 보류한 상태입니다. 그냥 우편번호에 해당하는 위/경도 정보만 DB로 가지고 있을 뿐입니다.

    2. hongiiv 2008/03/22 00:36 # M/D Permalink

      http://socmaster.homelinux.org/~hongiiv/356 여기에 geocoding 정보를 호출할 수 있도록 만들어 놓았습니다. 참고하세요 ^^

  3. snowall 2008/03/22 02:18 # M/D Reply Permalink

    네, 그러니까 정확히 그 우편번호에 해당하는 위/경도 정보만 있는 DB가 필요합니다.
    다른건 없어도 됩니다...

Leave a comment
[로그인][오픈아이디란?]
« Previous : 1 : ... 278 : 279 : 280 : 281 : 282 : 283 : 284 : 285 : 286 : ... 543 : Next »


야후 블로그 벳지


Site Stats

Total hits:
291553
Today:
160
Yesterday:
166