有哪些GIS+JavaScript的开发经验值得分享

JavaScript015

有哪些GIS+JavaScript的开发经验值得分享,第1张

python之于GIS与python之于IT类似 GISer采用python的原因也在于“人生苦短,我用python” python在gis中的应用非常之广 1. desktop GIS: ArcGIS从版本10开始不再支持原来的VBA,而改用python QGIS本身大部分的代码特别是插件部分可以采用python进行开发 2. 地图引擎 mapnik—基于C++引擎的顶级地图引擎库,和python结合比较紧密 mapfish—支持部分专题地图在线制作 3. webgis python+geodjango 是最常用也最庞大的后台框架 GISer使用python一定要充分发挥python语言的特性 如ArcGIS集成phthon是利用了python的脚本语言特性 后台webgis等服务,可以发挥python作为语言黏合剂的特性,充分利用已有的GIS算法库

动态图层是地图服务中包含的一项功能,允许通过客户端API动态的更改地图服务中的图层外观和行为。具体来说,通过动态图层可以实现:

拿WebGIS系统开发来说,如果想更改地图服务中某个图层的渲染方式,通常的做法是先将数据取到客户端,然后在客户端更改渲染方法。对于小数据量,这种客户端渲染的方式没有问题,但数据量大之后客户端无法承载。

个人认为,在以下业务需求下,可尝试使用动态图层来解决:

需要注意的是,动态图层支持的数据量也不是无限的,动态图层的出图效果与发布的动态地图服务效果一样。换句话说,如果动态地图服务中数据量上百万后,在客户端加载时会明显看到数据加载效果,而且加载会较慢,同样换成动态图层也会出现同样的效果。

动态图层支持的数据源包括:

在客户端API中使用动态图层功能时,可以结合rest服务地址来测试传递的参数是否合法,以及检验输出结果。rest地址中传递的参数内容可根据REST API帮助说明输入。

在JS API中与动态图层相关的数据源有两类:图层源和数据源。图层源指的是可以加载到地图中的Layer,数据源则是图层源Layer实际关联的原始数据。图层源与数据源的关系如下:

图层源分为两种:Map Layer和Data Layer,如果是原地图服务中的图层,则图层源类型是Map Layer;如果是从动态工作空间加载的图层,则是Data Layer类型。Data Layer根据原始数据的来源(即数据源),包含有:table、raster、query、join。table数据源指的是表和图层数据、raster指的是栅格数据、query指的是查询图层、join用于建关联关系。