二、OSM相关软件及其相互关系总结

来源:互联网 发布:淘宝旺旺客服电话 编辑:程序博客网 时间:2024/05/17 20:02

一、语言

Python:特别适用于网络应用,包括网站、后台服务等。

Node.js:是一个服务器端JavaScript 解释器。

二、前端

Leaflet:一个开源JavaScript库,Leaflet是用来创建移动友好性、交互式地图的工具。Leaflet设计的目标是简洁性、表现性和易用性。

Openlayer 3: 它是一个开源的Web GIS引擎,使用了JavaScript、最新的HTML5技术及CSS技术,支持dom,canvas和webgl三种渲染方式。除了支持网页端,还支持移动端,在地图数据源方面,支持各种类型的瓦片地图,既支持在线的,也支持离线的。比如OSM,Bing, MapBox, Stamen, MapQuest等等;还支持各种矢量地图,比如GeoJSON,TopoJSON,KML,GML等等。随着OpenLayers3的进一步发展,将支持更多的地图类型。

三、后端

Geoserver:Geoserver是一个功能齐全,遵循OGC开放标准的开源WFS-T和WMS服务器。利用Geoserver可以把数据作为maps/images来发布(利用WMS来实现)也可以直接发布实际的数据(利用WFS来实现),同时也提供了修改,删除和新增的功能(利用WFS-T)。geoserver只能用j2ee开发

四、数据格式

地图瓦片:当前地图瓦片分为两种,一种是栅格地图瓦片,一种是矢量地图瓦片。栅格地图瓦片的优点是显示效率高,方便传输,缺点是图片占用带宽和存储都较大,不利于地图在移动设备的应用,图片无法交互。矢量地图瓦片的优点是占用服务器的空间较少,配色灵活,可以实现有效的地图交互显示功能,缺点是技术想对不够成熟,以前的资源不通用。

五、数据库

Postgresql:PostgreSQL 是一个开源的对象-关系数据库服务器(数据库管理系统)

MBTILES:MBTiles是一种地图瓦片存储的数据规范,它使用SQLite数据库,可大大提高海量地图瓦片的读取速度,比通过瓦片文件方式的读取要快很多,适用于Android、IPhone等智能手机的离线地图存储。

六、瓦片渲染

Mapnik:是个地图渲染的工具,底层C++,顶层有各种各样的API接口,包括python,node.js等。作为地图渲染引擎,有着举足轻重的地位。mapnik主要完成的是矢量数据转成栅格数据的过程。

TileMill:是一款自由定制开源地图的开源软件,可以制作交互式地图,mapnik为其渲染器,CartoCSS作为样表式语言,node.js为其本地服务器交互,用 Backbone.js作为代理器。

七、OSM常用配套工具

Potlatch:在线的地图编辑器

Josm:JOSM是可拓展的Open street map编辑器,以java 7写成,目前它支持本地数据或osm数据库中的GPX轨迹数据,以及加载和编辑osm数据库中的现有节点、路径、元数据标签及关系。

Maperitive:可用于制作地图切片,但不支持从Postgis或SQlite等数据库读入数据,所以处理大型的数据比较麻烦。

八、一些软件之间的相互关系:

1.Mapnik、Tilemill相互关系

    ①关系可见下图。

总的关系

0 0
原创粉丝点击