x

MapGIS 组图层常用功能解析

发布时间:2022-04-14 阅读量:308

在复杂的业务场景中,常常需要将多个图层统一管理起来,但是面对众多的图层,扁平的存放在地图文档下的同一层级,并不能很好帮助我们完成数据管理功能。MapGIS提供图层管理方法可以做到类似文件管理的操作,可以将同一类型的文件保存到同一个文件夹中,逐级管理。MapGIS组图层专门用来解决该类需求,如地图上有两个图层分别用于表示省道和国道,可以将它们创建为组图层,并将组图层命名为交通网,后续其他道路相关数据也可以加入到交通网中,方便用户快捷管理数据。

本文重点介绍MapGIS组图层常用功能重点代码,WebGIS基础功能开发请参考示例站点:http://develop.smaryun.com/#/index

image.png

图 1 MapGIS Client for JavaScript示例站点

◆地图文档加载显示:

http://develop.smaryun.com/#/demo/openlayers/IGServer/MapService/E01EPSG4326

image.png

图 2 地图文档加载显示

◆地图文档要素查询:

http://develop.smaryun.com/#/demo/openlayers/IGServer/LayerFeatureQuery/E01QueryLayerByAttribute

image.png

图 3 地图文档要素查询

◆地图文档要素编辑:

http://develop.smaryun.com/#/demo/openlayers/IGServer/DocFeatureEdit/E01InterActionDocPointEdit

image.png

图 4 地图文档要素编辑

MapGIS组图层(或称之为图层组)可以包含其他图层,有助于对地图中相关类型的图层进行组织。一个组图层类似一个文件夹,用于图层类别的细分。下面介绍两种创建图层组的方式:

◆以“添加”的方式创建组图层

1. 在工作空间右键选择文档树下的地图节点,在弹出的右键菜单中选择“添加组图层”项,即可在该地图下添加组图层。

image.png

图 5 创建图层组

2. 添加组图层后,可将图层拖动到组图层下或在组图层下新建图层,在组内对图层进行统一管理,如下所示:

image.png

图 6 向组图层添加图层

◆以“成组”的方式创建组图层

在地图中选中多个图层,点击右键,选择“成组”,随即多个图层组成一个组图层,如下图所示:

image.png

图 7 多图层成组

MapGIS通过地图文档管理地图数据,并提供组图层来组织多个图层,图层显隐功能在各大项目中应用非常广泛。经调研和经验数据支撑,我们发现大家对非组图层的显示或隐藏功能应用自如,却并不了解如何对组图层中的图层进行显示隐藏控制或图层查询。下面为大家带来MapGIS组图层显隐功能控制及图层查询、要素编辑技巧。

image.png

图 8 地图文档图层组

01、控制组图层显示和隐藏

以MapGIS  Client for JavaScript -OpenLayers为例,首先需要加载地图文档(地图文档通过MapGIS Desktop制作,通过MapGIS IGServer发布),加载地图文档关键代码如下图所示:

image.png

图 9 加载二维地图文档

mapDocLayer提供setLayerStatus(opt_layers,opt_type) 方法,控制地图文档中的图层显示和隐藏。

● opt_layers (String):图层序号,多个图层以“,”分隔,如“1,2,3”

● opt_type(String):显示状态类型

image.png

与上文同理,图层组下图层序号为:图层组编号-图层组中图层序号,只显示图层组第一个图层代码,如下图所示。

image.png

图 10  控制图层组图层显示

image.png

图 11  二维地图文档原始效果及图层隐藏显示效果

02、地图文档组图层查询服务

其实对MapGIS组图层的查询和对MapGIS一般图层的查询方式是一致的,图层组下图层序号为:图层组编号-图层组中图层序号。

以上文二维地图文档为例,图层组排在地图文档第一位,所以编号为0,图层组下三个图层编号依次为0,1,2,因此若想查询图层组三个图层,传递查询图层参数为‘0-0,0-1,0-2’。

image.png

图 12 查询图层组图层示例代码

image.png

图 13 查询前地图文档

image.png

图 14 查询并高亮显示

03、地图文档组图层要素编辑

一般GIS应用系统,除需要对数据进行显示和查询外,对要素的编辑也有一定要求。MapGIS为组图层提供添加、删除和更新要素等功能。

image.png

图 15 实例化要素编辑服务对象

editService提供add、update、deletes方法,控制地图文档中图层要素的添加、更新、删除。

image.png

接下来以删除要素为例,为大家讲解图层组图层要素编辑功能。

image.png

图 16 要素删除

对于图层组的要素编辑,关键就是在构造地图文档要素编辑对象(delereService)中传递图层序号,此处和图层显示、图层查询同理,图层序号为:图层组编号-图层组中图层序号。

image.png

图 17 要素删除前地图文档

image.png

图 18 执行要素删除操作

精彩回顾

2022年度MapGIS 二次开发特训营再度来袭!每季度一期开发培训,资深讲师手把手带你体验MapGIS 二次开发产品新特性。目前,第一期课程已于3月31日与大家线上见面,不仅直播间现场热情满满,后台也收到众多用户留言求回放。

为响应大家的需求,中地数码秉承“用户至上”的原则,为大家送上课程回放链接:

https://rsw.h5.xeknow.com/s/qFNut

点击查看第一期精彩课程吧~

image.png

随着GIS产品的不断创新发展,GIS平台二次开发技能需求愈发凸显。未来,中地数码将始终践行以“GIS平台+生态发展”的融合创新战略打造GIS生态圈,积极拥抱业内合作伙伴,聚焦二次开发服务,为用户带来更加高效的二次开发技能培训及实战演练,满足用户“简便、易用、高效”的二次开发诉求。



联系我们

武汉中地(总部)

400-880-9970

武汉市东湖新技术开发区关山大道598号

北京中地(子公司)

010-51652066

北京市朝阳区东二环北路内2号天元港中心B座1205

深圳中地(子公司)

0755-26551638

深圳市南山区高新区科苑南路中地数码大楼A1001

西部基地(子公司)

028-85230200

成都市锦江区复地金融岛湾流锦宫506

苏州中地(子公司)

0512-65831998

苏州市姑苏区世界贸易中心A座22层2205室

热线电话

电话咨询

400 880 9970

点击咨询