说起空间查询,一般上用的Arcgis server服务做空间查询,如何利用前端用js实现响应式空间查询呢。
前者要经历:画几何要素---------把几何要素信息和目标图层信息发送请求到arcgis server-------arcgis server用空间查询算法,查询目标图层内所有满足和绘制几何要素特定空间关系的要素------返回结果到浏览器-------api 将查询到的要素结果地图可视化。
笔者尝试着用前端js实现空间查询,步骤如下:
画几何要素-----把几何要素geometry和目标图层上每一个要素的graphic进行空间关系判定并过滤出条件的要素------将过滤出的要素的graphic拷贝到一个新的graphicsLayer上------迭代出每一个要素的属性得到表格数据。
代码实现:
为了实现空间查询的通用化,我们需要使用特定的数据结构来保存数据和操作地图。
dictHighlightLayer是目标图层名字(一个或多个)(FeatureLayer或WFSLayer)和满足空间条件(intersect)的graphic组成的graphicsLayer的键值对应。画完几何图形即可立即实现查询。也可以为每个目标图层配置查询结果graphsLayer的样式。
代码实现(根据一个几何图形和目标图层(可为GraphicsLayer,FeatureLayer,WFSLayer),返回查询结果图层GraphicsLayer):
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。