한국 좌표계 SHP로 내려받기
GeoJSON 좌표는 WGS84 경위도로 읽습니다. 받는 쪽이 한국 투영 좌표계를 쓰면 대상 좌표계에서 EPSG:5186, EPSG:5179 같은 좌표계를 고르세요. 좌표를 변환하고 그 정의를 .prj 파일에 담습니다. urn:ogc:def:crs:EPSG::5186처럼 옛 규격의 crs 항목이 있고 그 좌표계가 mapverter 목록에 있으면 그 좌표계로 읽으며, SHP도 처음에는 그 좌표계로 나옵니다.
속성을 DBF 표에 맞추기
- 10바이트가 넘는 속성 이름은 줄이고, 겹치면
_1,_2를 붙입니다. 한글 이름은 UTF-8에서 3글자, CP949에서 5글자까지 들어가며 줄인 이름은field_names.csv에 원래 이름과 함께 적습니다. - 객체나 배열 값은 JSON 문자열로 바꾸고, 254바이트가 넘는 문자열은 잘라 낸 뒤 개수를 알립니다.
- 값이 모두 숫자인 속성은 숫자 필드가 됩니다. Feature의
id는id속성으로 남깁니다. - 문자 인코딩은 UTF-8이 기본이고, CP949만 읽는 한국 공공기관 프로그램용으로 CP949를 고를 수 있습니다.
도형 규칙
- 점·선·면이 섞여 있으면 종류별 SHP로 나누어 ZIP 하나에 담습니다.
- GeometryCollection은 같은 속성을 가진 종류별 객체로 나눕니다.
- 도형이 null인 객체는 빼고, Z 값은 지웁니다. 둘 다 변환 보고서에 알립니다.
stroke,fill같은 simplestyle 스타일 속성은 SHP에 담지 않습니다.