Eco Life & Bioteco

biology and technology in MY LIFE

공부/Qgis

[Qgis]웹(web)지도와 벡터파일 좌표계 맞추는 방법

bioteco 2021. 6. 28. 01:06

몇일전 어떤 분이 문의를 했던내용이다.

카카오맵에 좌표계가 가지고 있는 벡터파일과 좌표계가 맞지 않아

불어오는 방법에 대한 내용을 문의주셨다.

 

무료로 공개된 웹 지도를 불러올수 있는 방법이 많이 있지만,

나는 우연히 플러그인에서 쉽게 지도를 불러올 수 있는 방법을 찾아내었다.

플러그인에 korea를 검색한다.

플러그인에 korea를 검색하면 다음과 같이 TMS for korea 라고 뜰 것이다.

해당 탭을 누르고 플러그인 설치를 누른다.

 

 

TMS for korea 탭

플러그인이 오류없이 잘 설치되었다면 

웹 이라는 탭을 누르면 사진과 같이 국내에서 제공하는 지도들이 뜬다.

이 방법이 다양한 웹지도를 불러오는데 있어서는 가장 편했던 것 같다.

 

 

카카오맵과 국내 행정경계 파일 불러오기

아마 나에게 문의를 주셨던 분의 문제가 다음과 같은 것이라고 생각한다.

사진에서 보면 알겠지만 벡터파일의 위치가 이상한 것을 알 수 있다.

이는 두개의 좌표계가 다르기 때문인데...

이경우에는 다른 문제가 있다.

 

 

 

카카오에서 제공하는 웹 지도를 열면...

다른 지도도 마찬가지지만,

카카오, vworld 등 국내에서 제공하는 웹지도를 불러오면 qgis의 파이썬 코드에 오류가 생긴다고

경고문이 뜬다.

윈도우에서도 한번 실행해 보아야 겠지만...

일단 맥북에서는 다음과 같은 오류로 해결하기가 어려울 것 같다.

 

 

하나의 해결 방법

질문하신 분이 어떤 이유로 카카오맵을 통해서 작업을 해야하는지 모르겠지만,

해외의 open street map으로 불러온 후,

좌표계를 조금만 만져주면 국내 행정경계가 딱 맞게 들어간다.

 

 

 

좌표계를 맞추기 위해 수정했던 것을 맞추자

open street map에 행정경계를 맞추기위해 5179로 맞추어 주었던 좌표계를

제작자가 만들었던 원래의 좌표계로 변경을 해주어야 한다.

사진에서 보는 것처럼 원래 5186에 맞는 좌표계를 5179로 변경해서

웹 지도에 좌표를 맞춘것을 확인 할 수 있다.

 

 

레이어 재투영

이러한 문제는 레이어 재투영을 통해 5179의 좌표계에서

벡터파일의 원래 좌표계인 5186으로 변경해 줄 수 있다.

많은 벡터파일이 있을 경우 다른 좌표계를 나타내게 되면 복잡한 분석을 실시할 때에

오류가 발생한다.

이러한 오류를 해결 할 수 있는 방법이 사진과 같이 레이어를 재투영 하는 것이다.

 

 

재투영된 산출물

재투영된 산출물이라는 이름을 가진 벡터파일이 새로 생성된 것을 확인 할 수 있다.

새로 생긴 벡터는 웹 지도에 맞는 위치에 들어가 있는 것을 확인 할 수 있다.

해당 벡터의 좌표를 확인해 보면....

 

 

 

5186 좌표계로 변경

5186의 좌표계로 변경된 것을 확인 할 수 있다.

보다 복잡한 벡터가 첨부되어 있을 경우에 좌표계를 재투영하는 방법에 대한 내용은

다음에 기회가 되면 다시 포스팅하도록 하겠다.

 

웹지도에 대한 파이썬 오류문제는 맥 환경에서 말고

윈도우 환경에서 한번 더 시도를 해보고

같은 현상이 일어나는지 확인해 봐야 겠다.

 

 

오늘도 누군가에게 도움이 되었길 바라며...