1. 링크에 들어가서 Asia로 들어간다.

2. 한국 .osm.pbf를 다운받는다.

3. 링크에서 대한민국 행정구역(시군구)를 다운받는다.

4. 링크에 들어가서 QGIS를 다운 받는다.

5. 다운받은 .osm.pbf를 QGIS에 드래그하고, lines만 선택하여 레이어를 추가한다.

  • .osm.pbf 파일은 4의 레이어로 이루어져 있다. (숭실대학교 기준 캡쳐화면)

    • linestrings.shp : 도보 경로(큰길, 골목길)
    • multilinestrings.shp : 대중교통 경로
    • points.shp : 노드 정보
    • multipolygons.shp : 건물 정보

6. 3에서 다운받은 시군구 shp파일을 QGIS에 가져온다.

  • 시군구 shp파일의 속성에 들어가 좌표계를 EPSG:5179로 설정한다.

7. 객체 선택 툴로 서울시를 선택하고 내보낸다.

  • ⌘(커맨드) 누른 상태에서 하나하나 서울시를 선택하고 내보낸다.
  • 이 때 파일 이름은 파일 경로까지 포함된 이름으로 입력해야 한다.

8. seoul.shp으로 south-korea-latest.osm을 잘라낸다.

9. 생성된 레이어를 seoul_linestrings.shp로 저장한다.

10. 링크에서 JOSM을 다운받는다.

11. JOSM의 설정 → 플러그인에서 opendata를 다운받는다. 링크

12. 9에서 저장했던 seoul_linestrings.shp을 연다.

13. 파일 → 다른 이름으로 저장 → .osm으로 저장한다.

14. 완성(Docker에서 사용 가능)


추가

C++로 직접 빌드하고 실행하려면 .osm, .osm.pbf 둘다 필요하다.

  • 우분투(20.04) 환경(링크)

    • osmconvert seoul.osm --out-pbf > seoul.osm.pbf
    • FileZilla를 이용해 Mac ↔︎ 우분투 간 파일을 전달한다.
  • M2 환경(링크)

    • brew install osmium-tool
    • osmium cat -o seoul.osm.pbf -O seoul.osm