以项目谈WebGIS中Web制图的设计和实现
1.背景介绍
一般WebGIS项目中,前端展示数据的流程基本是先做数据入库、服务发布、然后前端调用展示。假设用户没有基本的GIS背景,需要将本地的excel或CSV等文件快速在地图上进行展示,此需求该如何解决?
目前市场上针对解决这种需求的产品已陆续出现,比如mapbox的studio,esri的portal,超图的地图慧以及由超图原项目经理离职后创办的地图无忧等产品。这类产品一般都以云服务的概念来包装,提供本地文件的Web制图,相关空间分析,数据的编辑,共享等。这里,我以公司某项目来谈谈个人对此类需求的设计和实现。
2.产品设计
研究市场上成熟的产品会发现二八定律是广泛存在的,比如esri的portal中提供了大量的空间分析功能,但是这些功能能够被用户使用上的概率非常低,仅限于卖产品时客户经理的技能秀状态。抽出普适的功能,定位使用的用户,结合公司的需求,是我最开始设计时的原则。
这里首先定义用户:公司研发(目标-数据整合、快速开发),工程同事(某些需求可独立解决),用户使用(解决用户简单需求)。
根据以上三个原则,提出了这样的产品功能构想:
a.本地文件快速展示(研发、工程、客户)。
b.本地文件制图(研发、工程、客户)。
c.基本空间分析(研发、工程、客户)。
d.数据编辑(研发、工程、客户)。
e.数据共享
针对研发:提供数据层面对接、服务层面对接、前端接口对接。
针对工程:提供服务发布功能。
针对客户:提供前端对分享数据的查看。
f.数据权限
针对工程、客户:可配置数据查看权限。
3.产品架构设计
以模块化为核心,首先将地图操作和制图业务进行分裂,构建出两个大模块:
在portal中对各功能模块是否能添加进行配置管理:
4.本地数据展示的设计和实现
本地数据展示主要针对本地的CSV和本地Excel数据,数据中需要包含坐标字段(X、Y),通过portal添加至地图上进行快速展示:
5.Web制图的设计和实现
5.1简单渲染
简单渲染是指用户可以选择渲染的填充色、填充透明度、边框色、边框透明度、以及选择是否用图标(图标可上传选择)展示:
&nb
