空间数据格式(地理数据格式):GeoJSON(FeatureCollection)与EsriJSON(FeatureSet/ArcGIS格式)
一、FeatureCollection(GeoJSON)格式介绍
1、FeatureCollection格式
{
type: "FeatureCollection",
features: [{
type: "Feature",
geometry: geometry,
properties: {}
}]
}
2、 Geometry格式
{
type: "Point | MultiPoint | LineString | MultiLineString | Polygon | MultiPolygon",
coordinates: 数组
}
3、Point数组 ,也是下文的position数组
[longitude, latitude, elevation].
position: [longitude, latitude, elevation]
4、MultiPoint数组
coordinates:position[]
5、LineString数组
coordinates:position[]
6、MultiLineString数组
coordinates:position[][]
7、Polygon数组
coordinates:Position[][]
8、MultiPolygon数组
coordinates:position[][][]
二、FeatureSet,EsriJSON格式介绍
1、FeatureSet格式
{
"objectIdFieldName": "objectid",
"globalIdFieldName": "globalid",
"geometryType": "esriGeometryPoint | esriGeometryMultipoint | esriGeometryPolyline | esriGeometryPolygon | esriGeometryEnvelope",
"spatialReference": {
"wkid": 102100,
"latestWkid": 3857
},
"fields": [{
"name": "objectid",
"alias": "OBJECTID",
"type": "esriFieldTypeOID"
}],
"features": [{
"geometry": {},
"attributes": {}
}]
}
2、Point类型的geometry
A 2D point
geometry:{
"x": -118.15,
"y": 33.80,
"spatialReference": {
"wkid": 4326
}
}
3、MultiPoint类型的Geometry
A 2D multipoint
geometry:{
"points": [
[
-97.06138,
32.837
],
[
-97.06133,
32.836
]
],
"spatialReference": {
"wkid": 4326
}
}
4、Polyline类型的Geometry
2D polylines
geometry:{
"paths": [
[
[-97.06138,32.837],
[-97.06133,32.836],
[-97.06124,32.834],
[-97.06127,32.832]
],
[
[-97.06326,32.759],
[-97.06298,32.755]
]
],
"spatialReference": {"wkid": 4326}
}
5、PolyGon类型的Geometry
A 2D polygon
geometry:{
"rings": [
[
[-97.06138,32.837],
[-97.06133,32.836],
[-97.06124,32.834],
[-97.06127,32.832],
[-97.06138,32.837]
],
[
[-97.06326,32.759],
[-97.06298,32.755],
[-97.06153,32.749],
[-97.06326,32.759]
]
],
"spatialReference": {
"wkid": 4326
}
}
三、GeoJSON和EsriJSON的异同点
1、属性信息的异同点
geojson没有关于属性元数据的描述,fields数组、displayfield字段等;相同点是都在feature内部记录,geojson的属性字段为properties,esrijson的属性字段为attruibutes
2、坐标信息的异同点
geojson的坐标信息由不同维度的数组表示,由coordinates属性表示,每个geometry用type属性来区分是什么类型的几何;esrijson的单点是用x/y属性记录,其余多点、线、面用二维和三维数组记录,区分不同类型的几何体取决于geometry对象内的属性字段,分别为points,paths,rings。esrijson没有multipolygon和multipolyline。相同点是,二者多点和面的数组维度是一致的。
空间数据格式(地理数据格式):GeoJSON(FeatureCollection)与EsriJSON(FeatureSet/ArcGIS格式)的更多相关文章
- mongodb gdal 矢量数据格式驱动
写了个mongodb的gdal driver,放在了github上,如果你需要,欢迎加入mongogis group. 直接的效果是使得QGIS, GeoServer, MapServer, ArcG ...
- treeGrid树形数据表格的json数据格式说明
在使用easyUI 的treeGrid的时候,很多时候我们从数据库取出来的数据treeGrid却不能读取显示成一个树:如下 { menuCode: "a00", menuName: ...
- 从零开始学 Web 之 Ajax(五)同步异步请求,数据格式
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- PCL中点云数据格式之间的转化
(1) 关于pcl::PCLPointCloud2::Ptr和pcl::PointCloud<pcl::PointXYZ>两中数据结构的区别 pcl::PointXYZ::PointXYZ ...
- C#/STM32 WAV转byte WAV数据格式
最近在做STM32音乐播放器,选取了最容易做的WAV格式. 为了更方便开发自己做了一个WAV转Byte的小上位机 附软件下载链接 链接:https://pan.baidu.com/s/1Zz7bczZ ...
- Excel数据常用操作,vlookup,text,trim,数据格式导致出错
数据有缺漏,需要在数据前面补零 =TEXT(F70,"000000") 前面是要操作的数据,后面是补几位 匹配数据(将一个表格中的数据进行匹配) =VLOOKUP(C2,aaa,4 ...
- gis空间分析案例_坐标文件高斯投影变换地理处理工具
gis空间分析案例_坐标文件投影变换地理处理工具 商务科技合作:向日葵,135—4855__4328,xiexiaokui#qq.com 功能: 对文件进行投影变换 特点: 1. 地理处理工具,可以与 ...
- SpringBoot入门系列(二)如何返回统一的数据格式
前面介绍了Spring Boot的优点,然后介绍了如何快速创建Spring Boot 项目.不清楚的朋友可以看看之前的文章:https://www.cnblogs.com/zhangweizhong/ ...
- Python:GeoJson格式的多边形裁剪Tiff影像并计算栅格数值
JSON是通过键值对表示数据对象的一种格式,其全称为JavaScript Object Notation,它采用完全独立于编程语言的文本格式来存储和表示数据,轻量级.简洁清晰的层次结构.容易解析等特点 ...
- GeoJson格式与转换(shapefile)Geotools
转自:https://blog.csdn.net/cobramonkey/article/details/71124888 作为大数据分析的重要工具,Hadoop在这一领域发挥着不可或缺的作用.有些人 ...
随机推荐
- 9.增加Marker 标记
1 <!DOCTYPE html> 2 <html lang="zh"> 3 <head> 4 <meta charset="U ...
- 2.2 在resources目录下,新建applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?> <beans> <!-- 这个bean标签的作用是, ...
- ACE下载地址
https://download.dre.vanderbilt.edu/previous_versions/ 在某n中找了大半天愣是没人贴出来
- js 对象命名
JS 标识符的命名规则,即变量的命名规则: 标识符只能由字母.数字.下划线和'$'组成 数字不可以作为标识符的首字符 对象属性的命名规则 通过[]操作符为对象添加属性时,属性名称可以是任何字符串(包括 ...
- sheet.getLastRowNum()获取行数不准的问题
// 获得总共有多少行int rowNum = 0;//存在样式的空行.会被统计进来.所以主要的问题是要判断是否是空行.for (int num = 1; num <= sheet.getLas ...
- 一次eureka的事故
本地起了一个微服务(不知道怎么起的),导致注册到微服务上了,不知所措.. 想了下,杀死对应微服务的进程id就可以了(记不住啊!!)
- jekins+svn
1.jekins安装可以看jekins+shell随笔. 2.安装svn. yum -y install subversion 3.配置相关文件 mkdir 家目录 cd 到家目录修改conf下三 ...
- 单个Java文件连接数据库demo
在单个java文件中,尝试连接数据库,跟python的模块包安装方式很接近,已经测试成功,把博客写一下,记录下来. 首先把jdb的驱动包下载下来,就是一个jar包,下面是官网下载地址 官网下载 ...
- vue2实现tabs侧边导航栏点击内容跳转到对应位置,且内容滚动导航栏切换对应tab
vue2实现tabs侧边导航栏点击内容跳转到对应位置,且内容滚动导航栏切换对应tab 1.tabs使用了 element的插件tabs, 省的自己写滑动动画 2.左侧有用到了 element的插件 N ...
- 01爬取豆瓣网电影数据进行numpy的练习
level 2:10.案例:编写爬虫爬取豆瓣电影排行榜(电影名称,评分),保存为csv文件 a.用numpy加载csv数据 b.把评分列转换成float64类型 c.计算电影的平均评分 d.求评分最高 ...