一、FeatureCollection(GeoJSON)格式介绍

https://learn.microsoft.com/en-us/javascript/api/azure-maps-control/atlas.data.featurecollection?view=azure-maps-typescript-latest

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格式)的更多相关文章

  1. mongodb gdal 矢量数据格式驱动

    写了个mongodb的gdal driver,放在了github上,如果你需要,欢迎加入mongogis group. 直接的效果是使得QGIS, GeoServer, MapServer, ArcG ...

  2. treeGrid树形数据表格的json数据格式说明

    在使用easyUI 的treeGrid的时候,很多时候我们从数据库取出来的数据treeGrid却不能读取显示成一个树:如下 { menuCode: "a00", menuName: ...

  3. 从零开始学 Web 之 Ajax(五)同步异步请求,数据格式

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  4. PCL中点云数据格式之间的转化

    (1) 关于pcl::PCLPointCloud2::Ptr和pcl::PointCloud<pcl::PointXYZ>两中数据结构的区别 pcl::PointXYZ::PointXYZ ...

  5. C#/STM32 WAV转byte WAV数据格式

    最近在做STM32音乐播放器,选取了最容易做的WAV格式. 为了更方便开发自己做了一个WAV转Byte的小上位机 附软件下载链接 链接:https://pan.baidu.com/s/1Zz7bczZ ...

  6. Excel数据常用操作,vlookup,text,trim,数据格式导致出错

    数据有缺漏,需要在数据前面补零 =TEXT(F70,"000000") 前面是要操作的数据,后面是补几位 匹配数据(将一个表格中的数据进行匹配) =VLOOKUP(C2,aaa,4 ...

  7. gis空间分析案例_坐标文件高斯投影变换地理处理工具

    gis空间分析案例_坐标文件投影变换地理处理工具 商务科技合作:向日葵,135—4855__4328,xiexiaokui#qq.com 功能: 对文件进行投影变换 特点: 1. 地理处理工具,可以与 ...

  8. SpringBoot入门系列(二)如何返回统一的数据格式

    前面介绍了Spring Boot的优点,然后介绍了如何快速创建Spring Boot 项目.不清楚的朋友可以看看之前的文章:https://www.cnblogs.com/zhangweizhong/ ...

  9. Python:GeoJson格式的多边形裁剪Tiff影像并计算栅格数值

    JSON是通过键值对表示数据对象的一种格式,其全称为JavaScript Object Notation,它采用完全独立于编程语言的文本格式来存储和表示数据,轻量级.简洁清晰的层次结构.容易解析等特点 ...

  10. GeoJson格式与转换(shapefile)Geotools

    转自:https://blog.csdn.net/cobramonkey/article/details/71124888 作为大数据分析的重要工具,Hadoop在这一领域发挥着不可或缺的作用.有些人 ...

随机推荐

  1. Linux命令执行时,提示commond not found的处理办法

    执行chattr命令时,或其他命令时,若出现命令没发现,commond not found 那么就是有可能命令文件丢了,执行find / -name chattr,如果没有命令了,可以拷贝一个或yum ...

  2. Docker中使用Jenkins(3)

    一.前言 上一文章介绍了docker-compose,本文介绍Jenkins自动化部署. 二.Jenkins dockerfile文件切记右键属性复制到输出目录调整为:如果较新则复制,否则在publi ...

  3. .NET 6 + Hangfire 实现后台作业管理

    一.环境: ASP.NET Core 6 + Hangfire + MySQL   二.新建ASP.NET Core空项目 项目名称:HangfireExample 框架:.NET 6.0   三.N ...

  4. jmeter进行websocket 通信

    最近项目弄了基于websocket的通信接口,所以需要做一个websocket的接口压测. jmeter当前自带的插件无法进行jmeter接口的通信,所以 本人是下载的一套jar包插件,进行的安装 1 ...

  5. nginx 配置443 域名

    1 申请域名 (公有云)2 下载证书 pem key 并上传服务器指定目录3 公有云上做A记录解析 (解析到代理的nginx)4 nginx配置443模块 配置内容: server { listen ...

  6. k8s 1.20.5(补充)

    1.根据前面1.15.0补充 2.初始化操作 selinux swap firewall关闭防火墙 swapoff -a 禁用交换空间 vim /etc/sysctl.d/k8s.conf net.b ...

  7. PostgreSQL权限管理

    一旦一个对象被创建,它会被分配一个所有者.所有者通常是执行创建语句的角色.对于大部分类型的对象,初始状态下只有所有者(或者超级用户)能够对该对象做任何事情.为了允许其他角色使用它,必须分配权限. 1 ...

  8. 【实验】B站资源免费下载技巧you-get

    搭建环境, python pip3  install you-get 查看可以下载格式 you-get -i https://www.bilibili.com/video/BV1yN411d7KH?p ...

  9. ssgvip设置

    ssgvip.tpl set service "{vipport}" protocol {xieyi} src-port 0-65535 dst-port {vipport}-{v ...

  10. RabbitMQ异常注意 reply-code=404, reply-text=NOT_FOUND - no exchange 'topic' in vhost '/', class-id=50

    1.问题排查: 第一次,一定要先启动Provider再启动Consumer!!! rabbitmq为初始状态没有队列信息,然后我又没有启动consumer,所以导致provider找不到queue和e ...