webgis开发往大了说无非就是加载底图,修饰底图,加载图层,根据业务需求操作图层(查询【空间查询非空间查询】,分析【基本分析,统计分析,场景分析】,可视化【符号化,图表化】),制图出图这几个过程。结合arcgis api 怎样快速有效的开发一个WEBGIS系统。
加载底图这个过程逻辑无非分三步:
- 创建底图。
- 使用arcgis自带的basemap
- 自定义切片图层作为basemap
- 加载需要的图层,在创建好map对象后加入map,使其存在于最底层作为地图的底图
- 创建map对象。map对象比较重要的有三个属性,
- allLayers:所有的图层集合,包括底图和可操作图层合集
- basemap:地图底图
- layers:除底图以外的图层合集
- 创建MapView。mapView是一个比较基础也是一个比较重要的类,在arcgis api 4.x版本中视图逻辑分离之后,mapview充当了视图的角色,里面的诸多属性都比较有参考价值
经过以上三步,基本的加载底图也就完成了,至少完成这个逻辑后,我们可以看见自己加载的地图了。距离一个完整的通用的适用的WEBGIS系统迈出了第一步
总结 &写在最后
这是我近一年一直想做的事情,虽然中间经过了好几个版本的推翻以及半途而废,所幸我只是拖延症并不是逃避。我将会在CSDN上更新逻辑与思维,不会涉及到代码部分,代码共享在github上(https://github.com/shmilyxiaoqin/arcgis-js-vue),这里的代码并不是直接可视化的代码,由于目前只是js部分,目的是将各个基本功能参数化,下一步在实现视图化,接着定制化,可根据内容对应查找,如果需要的话。至于加载底图这个操作,他的逻辑关系在于,map作为basemap的承载,mapview又作为map的承载,一步步的就很清晰了。