GeoJSON格式规范
发布日期:2021-07-01 05:57:16 浏览次数:2 分类:技术文章

本文共 1573 字,大约阅读时间需要 5 分钟。

GeoJSON是一种对地理数据结构进行编码的数据格式。

支持类型:点/多点、线/多线、面/多面以及几何集合。

格式要求:

  1. 可由任意数目个键值对组成
  2. 必须有一个"type"键,用以指定对象集合类型
  3. 可选键名"crs",用以指定坐标系,必须是一个坐标系对象
  4. 可选键名"bbox",用以指定几何对象边界,必须是一个边界框数组

类型参数:“type”

type对应值必须为Point/MultiPoint/LineString/MultiLineString/Polygon/MultiPolygon/GeometryCollection/Feature/FeatureCollection中一个

位置参数:“coordinates”

除GeometryCollection外,其他几何类型必须有coordinates参数,此参数值总为数组类型,至少有两个元素,顺序必须是X->Y->Z投影坐标系的东向->北向->高度地理坐标系的经度->纬度->高度

坐标系参数:“crs”

可选参数,若当前对象无此参数,则继承上级对象坐标系,若顶级也无坐标系,则使用默认crs即WGS84坐标系,长度和高度都以十进制表示。

  1. 对应值必须为JSON对象或null
  2. 对应值必须有type和properties两个键值对,其中type值必须为字符串,说明crs对象是名字crs还是连接crs,properties值对应crs内容

边界框参数:“bbox”

可选参数,对应值必须为2*N维数组,所有坐标轴的最低值后面跟着最高者值,遵循几何坐标轴的顺序。

不同几何类型的位置参数

**点 :**对类型"Point"来说,“coordinates"成员必须是一个单独的位置。

**多点:**对类型"MultiPoint"来说,"coordinates"成员必须是位置数组。

**线 :**对类型"LineString"来说,“coordinates"成员必须是两个或者多个位置的数组。 线性环是具有4个或者更多位置的封闭的线。第一个和最后一个位置是相等的(它们表示相同的的点)。虽然线性环没有鲜明地作为GeoJSON几何类型,不过在面几何类型定义里有提到它。

**多线:**对类型“MultiLineString"来说,"coordinates"成员必须是一个线坐标数组的数组。

**面:**对类型"Polygon"来说,"coordinates"成员必须是一个线性环坐标数组的数组。对拥有多个环的的面来说,第一个环必须是外部环,其他的必须是内部环或者孔。

**多面:**对类型"MultiPlygon"来说,"coordinates"成员必须是面坐标数组的数组。

**几何集合:**类型为"GeometryCollection"的GeoJSON对象是一个集合对象,它表示几何对象的集合。 几何集合必须有一个名字为"geometries"的成员。与"geometries"相对应的值是一个数组。这个数组中的每个元素都是一个GeoJSON几何对象。

**特征对象:**特征对象必须由一个名字为"geometry"的成员,这个几何成员的值是上面定义的几何对象或者JSON的null值; 特征对戏那个必须有一个名字为“properties"的成员,这个属性成员的值是一个对象(任何JSON对象或者JSON的null值);如果特征是常用的标识符,那么这个标识符应当包含名字为“id”的特征对象成员。

**特征集合对象:**类型为"FeatureCollection"的GeoJSON对象是特征集合对象,类型为"FeatureCollection"的对象必须由一个名字为"features"的成员。与“features"相对应的值是一个数组。这个数组中的每个元素都是上面定义的特征对象。

转载地址:https://pandora.blog.csdn.net/article/details/100979306 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Nginx控制信号
下一篇:海森矩阵就是二阶偏导函数的方阵.他描述了局部的曲率函数

发表评论

最新留言

不错!
[***.144.177.141]2024年05月05日 08时25分37秒