空间数据格式(地理数据格式):GeoJSON(FeatureCollection)与EsriJSON(FeatureSet/ArcGIS格式)
2024-09-08 19:36:33
一、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。相同点是,二者多点和面的数组维度是一致的。
最新文章
- ns3 print 丢包内容的两种方法
- python中单引号, 双引号,三引号的差异
- 全面剖析 <;input>; 标签 ------ HTML\HTML5
- 完整的PHP MYSQL数据库类
- python基础五
- Android照片墙加强版,使用ViewPager实现画廊效果
- IE Javascript 进阶调试
- 使用亚马逊的Route53服务
- 【winform 学习】登录
- 18种CSS3loading效果完整版,兼容各大主流浏览器,提供在线小工具使用
- http://blog.csdn.net/jun55xiu/article/details/43051627
- C语言初学者代码中的常见错误与瑕疵(15)
- [codeforces 391D2]Supercollider
- 一道有趣的javascript编程题
- 在windows系统上安装VMware Workstation虚拟机,然后在虚拟机VMware Workstation上安装linux系统,在linux系统安装xshell的服务端,在windows系统上安装xshell。用windows系统上的xshell连接到linux
- mac使用初级
- Verilog-1995 VS Verilog-2001
- bzoj4652 [Noi2016]循环之美
- centos 6 网卡名称修改
- mysql性能优化之-innodb_flush_log_at_trx_commit