GeoJSON结构解析

在进行javascript编程时,json格式是一个比较简单且容易接受的一个数据形式,完全的键值对应,很好地与javascript对象结合。而且现在服务器端也有很多类库可以将服务器的对象生成json,包括simplejson,Newtonsoft.Json等,在与服务器端通信时方便而且快捷,不附带像xml多余的其它信息。所以在写himap时就考虑使用geojson当数据来源,而且arcmap通过FME可以轻松将很多格式矢量数据转成geojson.下面为geojson 1.0标准主要对象说明:

{ "type": "Point", "coordinates": [100.0, 0.0] }

线

{ “type”: “LineString”,
“coordinates”: [ [100.0, 0.0], [101.0, 1.0] ]
}

{ “type”: “Polygon”,
“coordinates”: [
[ [100.0, 0.0], [101.0, 0.0], [101.0, 1.0], [100.0, 1.0], [100.0, 0.0] ]
]
}

带内部洞的:

{ “type”: “Polygon”,
“coordinates”: [
[ [100.0, 0.0], [101.0, 0.0], [101.0, 1.0], [100.0, 1.0], [100.0, 0.0] ],
[ [100.2, 0.2], [100.8, 0.2], [100.8, 0.8], [100.2, 0.8], [100.2, 0.2] ]
]
}

多点

{ “type”: “MultiPoint”,
“coordinates”: [ [100.0, 0.0], [101.0, 1.0] ]
}

多线

{ “type”: “MultiLineString”,
“coordinates”: [
[ [100.0, 0.0], [101.0, 1.0] ],
[ [102.0, 2.0], [103.0, 3.0] ]
]
}

多面

{ “type”: “MultiPolygon”,
“coordinates”: [
[[[102.0, 2.0], [103.0, 2.0], [103.0, 3.0], [102.0, 3.0], [102.0, 2.0]]],
[[[100.0, 0.0], [101.0, 0.0], [101.0, 1.0], [100.0, 1.0], [100.0, 0.0]],
[[100.2, 0.2], [100.8, 0.2], [100.8, 0.8], [100.2, 0.8], [100.2, 0.2]]]
]
}

空间对象集合

{ “type”: “GeometryCollection”,
“geometries”: [
{ "type": "Point",
"coordinates": [100.0, 0.0]
},
{ “type”: “LineString”,
“coordinates”: [ [101.0, 0.0], [102.0, 1.0] ]
}
]
}

对象集合

{“name”:”subway_point”,”type”:”FeatureCollection”
,”features”:[
{"type":"Feature","geometry":{"type":"Point","coordinates":[116.189086914063,39.9382934570313]},”properties”:{“OBJECTID”:1}}
,{“type”:”Feature”,”geometry”:{“type”:”Point”,”coordinates”:[116.197875976563,39.9296875]},”properties”:{“OBJECTID”:2}}]
}

 

针对多点、多线、多面、集合对象在处理时都可以拆解为单个的点、线、面进行处理,很是方便。

本文固定链接: http://www.higis.org/2012/06/21/geojson/ | Hi,GIS


该日志由 H.J 于2012年06月21日发表在 地理信息系统, 程序 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: GeoJSON结构解析 | Hi,GIS
关键字: ,

GeoJSON结构解析:等您坐沙发呢!

发表评论

快捷键:Ctrl+Enter