GeoJSON

GeoJSON
GeoJSON
파일 이름 확장명.json, .geojson
인터넷 미디어 유형application/geo+json[1]
형식 유형GIS 파일 형식
연장 위치제이슨
표준RFC 7946
오픈 포맷?
웹사이트geojson.org

GeoJSON[1] 단순한 지리적 특징과 비공간적 특성을 나타내도록 설계된 개방형 표준 형식이다. 그것은 JSON 포맷을 기반으로 한다.

특징에는 점(따라서 주소와 위치), 선 문자열(따라서 도로, 고속도로 및 경계), 다각형(국, 도, 토지) 및 이러한 유형의 다중 부분 집합이 포함된다. 예를 들어, 모바일 라우팅과 내비게이션 앱은 GeoJSON을 사용한 서비스 범위를 설명할 수 있다.[2]

GeoJSON 형식은 작성되었다는 점에서 다른 GIS 표준과 다르며 공식적인 표준 기관이 아니라 인터넷 개발자 그룹이 유지한다.[3]

GeoJSON의 눈에 띄는 자손은 TopoJ이다.SON, 지리공간 토폴로지를 인코딩하고 일반적으로 더 작은 파일 크기를 제공하는 GeoJSON의 확장자.

역사

2007년[4] 3월부터 GeoJSON 포맷 워킹그룹 및 논의가 시작되었고, 2008년 6월에 포맷 사양이 확정되었다.

2015년 4월 인터넷 엔지니어링 태스크포스는 2016년 8월 GeoJSON을 RFC 7946으로 출시한 지오그래픽 JSON 워킹그룹[5] 설립했다.

{   "형식": "FeatureCollection",   "features": [     {       "형식": "특징",       "geometry": {         "형식": "점",         "coordinates": [102.0, 0.5]       },       "properties": {         "prop0": "value0"       }     },     {       "형식": "특징",       "geometry": {         "형식": "라인스트링",         "coordinates": [           [102.0, 0.0], [103.0, 1.0], [104.0, 0.0], [105.0, 1.0]         ]       },       "properties": {         "prop0": "value0",         "prop1": 0.0       }     },     {       "형식": "특징",       "geometry": {         "형식": "폴리곤",         "coordinates": [           [             [100.0, 0.0], [101.0, 0.0], [101.0, 1.0],             [100.0, 1.0], [100.0, 0.0]           ]         ]       },       "properties": {         "prop0": "value0",         "prop1": { "이것": "그것" }       }     }   ] } 

기하학

점수는 [x, y] 또는 [x, y, z]이다. 그것들은 [경도, 위도 ] 또는 [동측, 북경]일 수 있다. 표고는 선택적인 세 번째 숫자다. 그것들은 십진수다. [6]

예를 들어 런던(북 51.5074°, 서부 0.1278°)은 [-0.1278, 51.5074]이다.

지오메트리 원시 요소
유형
포인트 SFA Point.svg
{     "형식": "점",      "coordinates": [30.0, 10.0] } 
라인스트링 SFA LineString.svg
{     "형식": "라인스트링",      "coordinates": [         [30.0, 10.0], [10.0, 30.0], [40.0, 40.0]     ] } 
폴리곤 SFA Polygon.svg
{     "형식": "폴리곤",      "coordinates": [         [[30.0, 10.0], [40.0, 40.0], [20.0, 40.0], [10.0, 20.0], [30.0, 10.0]]     ] } 
SFA Polygon with hole.svg
{     "형식": "폴리곤",      "coordinates": [         [[35.0, 10.0], [45.0, 45.0], [15.0, 40.0], [10.0, 20.0], [35.0, 10.0]],          [[20.0, 30.0], [35.0, 35.0], [30.0, 20.0], [20.0, 30.0]]     ] } 
멀티파트 기하학
유형
멀티포인트 SFA MultiPoint.svg
{     "형식": "멀티포인트",      "coordinates": [         [10.0, 40.0], [40.0, 30.0], [20.0, 20.0], [30.0, 10.0]     ] } 
멀티라인 스트링 SFA MultiLineString.svg
{     "형식": "멀티라인 문자열",      "coordinates": [         [[10.0, 10.0], [20.0, 20.0], [10.0, 40.0]],          [[40.0, 40.0], [30.0, 30.0], [40.0, 20.0], [30.0, 10.0]]     ] } 
멀티폴리곤 SFA MultiPolygon.svg
{     "형식": "멀티폴리곤",      "coordinates": [         [             [[30.0, 20.0], [45.0, 40.0], [10.0, 40.0], [30.0, 20.0]]         ],          [             [[15.0, 5.0], [40.0, 10.0], [10.0, 20.0], [5.0, 10.0], [15.0, 5.0]]         ]     ] } 
SFA MultiPolygon with hole.svg
{     "형식": "멀티폴리곤",      "coordinates": [         [             [[40.0, 40.0], [20.0, 45.0], [45.0, 30.0], [40.0, 40.0]]         ],          [             [[20.0, 35.0], [10.0, 30.0], [10.0, 10.0], [30.0, 5.0], [45.0, 20.0], [20.0, 35.0]],              [[30.0, 20.0], [20.0, 15.0], [20.0, 25.0], [30.0, 20.0]]         ]     ] } 
지오메트리컬렉션 SFA GeometryCollection.svg
{     "형식": "GeometryCollection",     "여유": [         {             "형식": "점",             "coordinates": [40.0, 10.0]         },         {             "형식": "라인스트링",             "coordinates": [                 [10.0, 10.0], [20.0, 20.0], [10.0, 40.0]             ]         },         {             "형식": "폴리곤",             "coordinates": [                 [[40.0, 40.0], [20.0, 45.0], [45.0, 30.0], [40.0, 40.0]]             ]         }     ] } 

토포제이슨

TopoJSON은 토폴로지를 인코딩하는 GeoJSON의 확장이다. 지오메트리를 분리하여 나타내기 보다는 TopoJ의 지오메트리SON 파일은 arcs라는 공유 회선 세그먼트에서 함께 연결된다.[7] 는 점의 순서인 반면, 선 문자열과 다각형은 호들의 순서인 것으로 정의된다. 각 호는 한 번만 정의되지만 다른 도형으로 여러 번 참조할 수 있어 중복성을 줄이고 파일 크기를 줄일 수 있다.[8] 게다가, TopoJ.SON은 위상 보존 형태 단순화, 자동 지도 색소화, 카토그램과 같은 위상 사용 애플리케이션을 촉진한다.

TopoJ의 참조 구현SON 사양은 TopoJ를 인코딩하는 명령줄 도구로 사용 가능GeoJSON(또는 ESRI Shapefiles) 및 TopoJ를 디코딩하는 클라이언트 측 JavaScript 라이브러리의 SON다시 GeoJSON으로 돌아온 SON. TopoJSON은 버전 1.11[9] 및 Post 현재 인기 있는 OGR 툴로도 지원된다.버전 2.1.0의 GIS.[10]

TopoJSON 스키마

좌표 위도 0° 및 경도 0°에 가까운 GIS 형상에 따라 모든 메타데이터, Polygon, LineString, Point 요소, arcs속성을 포함하는 단순하지만 유효하고 완전한 topojson 파일을 다음과 같이 정의한다.

토포이슨 모양
{   "형식":"토폴로지",   "transform":{     "척도": [1,1],     "translate": [0,0]   },   "objects":{      "두 개짜리":{       "형식": "GeometryCollection",       "여유":[         {"형식": "폴리곤", "arcs":[[0,1]],"properties": {"이름": "왼쪽_폴리곤" }},         {"형식": "폴리곤", "arcs":[[2,-1]],"properties": {"이름": "오른쪽_폴리곤" }}       ]     },     "한 줄": {       "형식":"GeometryCollection",       "여유":[         {"형식": "라인스트링", "arcs": [3],"properties":{"이름":"Under_LineString"}}       ]     },     "2개소":{       "형식":"GeometryCollection",       "여유":[         {"형식":"점","coordinates":[0,0],"properties":{"이름":"Originine_Point"}},         {"형식":"점","coordinates":[0,-1],"properties":{"이름":"Under_Point"}}       ]     }   },   "arcs": [     [[1,2],[0,-2]],     [[1,0],[-1,0],[0,2],[1,0]],     [[1,2],[1,0],[0,-2],[-1,0]],     [[0,-1],[2,0]]   ] } 

참고 항목

참조

  1. ^ Jump up to: a b Butler, Howard; Daly, Martin; Doyle, Allan; Gillies, Sean; Hagen, Stefan; Schaub, Tim (August 2016). RFC 7946. IETF. doi:10.17487/RFC7946.
  2. ^ "Providing Directions". developer.apple.com.
  3. ^ "GeoJSON Info Page". lists.geojson.org.
  4. ^ "The GeoJSON March 2007 Archive by thread". lists.geojson.org.
  5. ^ "Geographic JSON (geojson) -". datatracker.ietf.org.
  6. ^ "GeoJSON RFC #3.1.1".
  7. ^ "topojson/topojson-specification". December 11, 2020 – via GitHub.
  8. ^ "topojson/topojson". GitHub.
  9. ^ "Release/1.11.0-News – GDAL". trac.osgeo.org.
  10. ^ "AsTopoJSON". postgis.net.

원천

외부 링크