图层管理
新建/添加图层
新建图层
在"地图"节点的右键菜单中,提供了对地图数据的各种管理功能。新建图层是一种最基本的管理,以下为新建图层的具体操作说明。
1. 在工作空间的文档树下选择要新建图层的地图,选择其右键菜单中的"新建图层"项,弹出"新建图层"对话框如下:

2. 在新建图层对话框中,选择您要创建的图层类型。系统提供了简单要素类图层(点、线、区、面、体),6x文件图层(点、线、区)以及注记类图层的创建。
3. 在选择了要创建的图层类型之后,需要设置新图层的保存路径。点击"新建图层"对话框下方"保存路径"输入框后的按钮,弹出"保存文件"对话框(如下图),选择新建图层的保存位置后,并输入图层的文件名,点击"保存"按钮,完成新图层保存路径的选定。

4. 完成图层保存路径的设置之后,"新建图层"对话框上的"确定"按钮被激活,点击"新建",执行图层的创建。

提示:
对于6x文件,图层在选择保存路径时,只能保存在本地磁盘位置;对于简单要素类图层、注记类图层,只能保存在MapGIS GDBCatalog目录数据下数据库中的位置。
添加图层
向地图中加入图层的方式,除了新建,还可以添加已经创建好的图层。添加图层的方式有两种,以下将详细介绍每种添加方式的具体操作说明。
(一)通过"添加"功能添加图层
1. 在需要添加图层的地图节点上,点击右键。在弹出的右键菜单中选择"添加图层"项,弹出"打开文件"对话框(如下图示)。用户可以选择本地或MapGIS GDB中的GIS数据,也可通过"最近使用的项目"快速添加近期打开的GIS数据。

提示:
在MapGIS 10中,扩展了OGR中间件的功能,用户无需对OGR中间件进行配置,就可以在工作空间中直接打开6x数据、Shape数据、E00数据。
2. 选定数据后,点击"打开"按钮,即完成图层的添加。
提示:
同时添加多种类型的图层时,MapGIS中默认会按照服务图层、镶嵌数据集、栅格、区、线、点的顺序进行自动排序,保证图层的默认添加顺序可满足大多数应用需求。用户也可按照实际应用需求调整图层顺序。
(二)在MapGIS GDBCatalog目录树中直接拖动数据添加
在MapGIS GDBCatalog目录中,找到要添加的图层,按下左键不放直接拖动至地图视图窗口,当鼠标变为""样式时松开鼠标,即可完成图层的添加。

使用组图层
组图层(或者称之为图层组)可以包含其他图层,有助于对地图中相关类型的图层进行组织。一个组图层类似一个文件夹,用于图层类别的细分。例如,地图上有两个图层分别用于表示省道和国道,我们可以为它们创建组图层,并将组图层命名为交通网。
下面介绍组图层的相关操作:
一、"添加"的方式创建组图层
1. 在工作空间右键选择文档树下的地图节点,在弹出的右键菜单中选择"添加组图层"项,即在该地图下添加组图层。
2. 添加上组图层后,可将图层拖动到组图层下或在组图层下新建图层,在组内对图层进行统一管理,如下所示:


二、"成组"的方式创建组图层
在地图中选中多个图层,点击右键,选择"成组",则多个图层组成一个组图层,如下图所示:

三、管理组图层
组图层名称节点的右键菜单中,提供基本的管理操作,例如取消组、移除、重命名、属性等。
打开组图层的"属性"对话框,可以修改名称、显示状态、关联的图例分类码。
或者在工作空间通过点击组图层的状态框,在可见与不可见状态间切换。


使用服务图层
MapGIS Desktop中可直接添加服务图层进行显示。服务图层包括 MapGIS栅格瓦片数据,MapGIS栅格瓦片服务、MapGIS地图服务,OGC标准的WMS/WMTS服务,以及天地图、XYZ Tile、百度地图、高德地图等第三方在线地图服务。
各种类型服务图层添加方法可参考服务图层。
使用矢量瓦片图层
MapGIS支持直接添加矢量瓦片图层对其进行预览,既可以添加本地矢量瓦片数据(*.muvt、*.vtdf),也可以添加MongoDB中的矢量瓦片数据。
关于MapGIS 10平台中矢量瓦片的生成和应用,请参考后文"矢量瓦片"章节。
在接下来的内容中,将介绍两种矢量瓦片图层的添加方法。
一、添加本地矢量瓦片数据
1. 在MapGIS工作空间内地图节点的右键菜单中,选择"添加矢量瓦片图层",弹出"添加矢量瓦片图层"对话框,如下图所示:


2. 勾选本地(muvt),点击""按钮,选择本地的矢量瓦片图层进行添加,并设置该矢量瓦片数据的样式文件(*_style.json)路径。
提示:
本地矢量瓦片数据依赖的样式文件(*_style.json)就在该矢量瓦片文件所在目录下。除此之外,样式文件所依赖的sprite文件需与其在同级目录下。
3. 添加成功后,地图文档下将显示矢量瓦片图层节点,右键点击"设为当前显示范围",即可在视图中成功预览该矢量瓦片数据,如下图所示:

二、添加MongoDB矢量瓦片数据
在上述弹出的对话框中,勾选MongoDB,设置IP地址和端口号,输入数据库名、集合名、用户名和密码,并设置矢量瓦片样式文件,点击"确定",MongoDB矢量瓦片数据添加成功。
使用TinLayer
MapGIS支持添加TinLayer,操作如下:
1. 在MapGIS工作空间内地图节点的右键菜单中,点击"添加TinLayer",选择数据库中的TIN简单要素类进行添加。

2. 添加成功后,地图文档下将显示TinLayer节点,右键点击"设为当前显示范围",即可在视图中成功预览该Tin数据,如下图所示:

关于MapGIS 10平台中如何生成TinLayer(TIN简单要素类),请参考后文"TIN转换"章节。
调整图层顺序
默认情况下,地图文档的图层顺序是根据用户添加图层的先后时间和数据类型依次往后排。如果在一次添加行为中选择了多个图层,则优先考虑数据类型。
提示:
同时添加多种类型的图层时,MapGIS中默认会按照服务图层、镶嵌数据集、栅格、区、线、点的顺序进行自动排序,保证图层的默认添加顺序可满足大多数应用需求。用户也可按照实际应用需求调整图层顺序。
相同的图层,不同的顺序,所得到的显示效果通常都不一样。地图数据视图加载显示地图时,以工作空间中第一个图层为最底层,这意味着目录树上越靠后的图层,在显示视图里反而显示在最上层。


MapGIS平台提供了多种调整图层顺序的方法:
一、手动调整顺序
在工作空间中选中图层,并按住鼠标左键不放,移动鼠标将其拖动到所需位置上;当出现向上或向下的蓝色箭头时,即可松开鼠标。此手动操作同样适用于组图层内及各类图层间,且支持跨地图拖动。

二、按约束类型排序
在地图的右键菜单中,提供了自动排序功能。在工作空间右键"地图"节点,在弹出的右键菜单中选择"按约束类型排序",系统会按照"地图集、组图层、栅格和其它数据、区图层、线图层、点图层、注记图层"的先后顺序对地图图层进行排序。
如下右图所示,对于一个图层随机排布的地图,在使用"按约束类型排序"前后的图层排序对比:


三、更多排序方式
除了按约束类型对图层进行排序以外,系统还提供了更多的排序方式,以满足用户对图层排序方式的多样化需求。
1. 在工作空间右键"地图"节点,选择"更多排序方式…",弹出"排序"对话框,如下所示:

2. 在"排序"对话框上选择排序方式。系统提供了5种排序方式:
- 【名称】:按图层名称进行排序,分为正序和逆序。"正序",按字母表先后顺序排序;"逆序",按字母表逆序排序。
- 【路径】:按图层路径前后位置进行排序。需要注意:本地数据的路径在GDB数据的路径之前;当数据主路径相同时,会按照图层名称进行排序;按路径排序也包括正序和逆序;
- 【图层类型】:按照图层的点、线、区等类型进行排序。相同类型再按照名称排序;
- 【状态】:按照图层状态进行排序,用户可设置不同状态图层的相对顺序。相同状态再按照名称排序;
- 【约束类型】:按照如下所示的约束类型进行图层排序。相同类型再按照名称排序。


管理图层范围
地图范围是图层范围的综合,所以图层范围的变化有可能影响地图范围,影响地图的显示效果。图层的右键菜单提供两类功能用于处理图层显示范围:
设为当前显示范围
将某图层的范围作为地图视图的显示范围。当用户需要查看某个图层数据的全貌时,可以考虑使用此功能。
在工作空间右键选择某图层,在弹出的菜单中选择"设为当前显示范围"项。此时所选图层的数据范围即为当前地图视图内的显示范围。
重置空间范围
重新计算图层的数据范围。在图层中增加绘制要素,系统会自动更新图层范围;但是在图层中删除要素时,系统不会自动更新范围。所以当执行删除要素操作,且可能会影响图层范围时,建议使用"重置空间范围"。例如,地图出现飞点或飞线时,找到对应的图层并将飞点或飞线图元删除后,要对该图层执行"重置空间范围"操作,图层的范围才是正常的,且此时复位地图时,显示的效果才是正常的。
在工作空间右键选择某图层,在右键菜单中选择"重置空间范围"项。系统将重新计算图层的数据范围。
属性编辑
地理数据既包含图形信息,也包含属性信息,两者结合才能使地理数据发挥最大分析作用。通过工作空间视图下,图层的右键菜单的相应功能,可以对图层属性进行查看及编辑。有关属性的编辑操作的详细步骤可参见地图编辑章节的属性编辑。

设置属性结构
在工作空间视窗下右键选择图层,在右键菜单中选择"属性结构设置",弹出"属性结构设置"对话框。在"字段名称"下方单元格内单击鼠标左键可以输入(或修改)要添加的字段名称,同理也可设置"别名"、"字段类型"、"长度"等参数,点击"确定",操作结束,属性内容被保存。
用户也可以在某字段上点击鼠标右键,在弹出的右键菜单中选择对应功能:"插入"新的字段、"删除"当前选中字段、将该字段"上移"或"下移"。

属性连接
属性连接功能是通过唯一关键字段将空间数据与对象类数据进行属性连接,获得新的图层数据。具体操作如下:
1. 在工作空间视窗下右键选择图层,在右键菜单中选择"属性连接",弹出"连接管理"对话框,如下图所示。

- 【连接配置】可对连接配置进行添加、删除和修改等操作。
- 【添加】:可添加空间数据与对象类的属性连接。
- 【删除】:选中连接配置后,可删除配置信息。
- 【修改】:对选中的配置进行修改。
- 【连接信息】显示所添加的连接信息。
2. 在连接管理对话框中,点击"添加"命令,弹出"添加连接"对话框,如下图所示。

- 【基本参数设置】设置要连接的对象类和连接信息。
- 【连接类】:选中连接对象类。
- 【连接字段】:对象类的主要字段,与空间数据的主要字段完全一致。
- 【目标字段】:空间数据中的主要字段,与对象类的主要字段完全一致。
- 【其他参数】对象类中所有字段。
- 【自定义显示连接字段】:勾选要参与连接的字段。
- 【自定义字段前缀】:防止字段名称冲突,对字段名批量修改。
- 【在内存缓存连接类】:设置连接类存储在内存中,默认勾选。
3. 点击"确定"按钮,完成属性连接。
查看属性表
在工作空间视窗下右键选择图层,在右键菜单中选择"查看属性",弹出"属性视图"对话框,如下图;

右键某一属性字段名,用户可在弹出的右键菜单中选择相应的功能进行操作。

- 【升序】:对当前选中的该列属性字段值进行升序排列。
- 【降序】:对当前选中的该列属性字段值进行降序排列。
- 【隐藏列】:隐藏当前选中列的属性字段,隐藏后该列字段将不显示。
- 【锁定列】:对当前选中的该列属性字段锁定,锁定后该字段在属性视图中仅次于OID显示级别,当左右滚动属性表时,该字段总是显示。
- 【字段显示设置】:选择该功能,弹出下图对话框,在对话框中选中某一行字段对其进行操作:

- 【查找替换】:可使用此功能查找并替换特定条件的属性记录。选择"查找替换"弹出下图对话框,具体操作可参考"查找与替换"章节。

- 【字段汇总】:对某个字段的属性信息进行汇总统计。选择该功能,弹出下图对话框,在对话框中选择某一属性字段,如"面积",点击【汇总标准信息】,可统计出面积的最大值、最小值、平均值、求和,如下图。

点击【汇总单值信息】,可统计出该字段的属性值个数,点击【详细】,可查看属性值详情,如下图。

- 【数据保存】:可将属性表保存为excel表格或文本文件。选择该功能,弹出下图对话框,点击【浏览】,选择保存的路径,设置保存的文件类型:excel或txt,设置需要保存的属性字段,点击"确定"保存。

子层处理
图层可以被看做MapGIS中最小的独立的数据文件。当单个图层的内容非常庞大或复杂,使得编辑图层的工作变得异常困难时,在图层上再划分出逻辑子层是一种可行有效的解决方法。或者,为了使图层的内容的分类更加清晰,也可以考虑将图层的图元划分出各类子层。例如,我们可以将交通网图层划分出铁路、国道、省道、城市道路等子图层。
在MapGIS平台中,通过图层属性结构中的mpLayer字段来控制对应记录的图元归属于哪一个逻辑子层;同时,提供了"层编辑"菜单来处理关于子层的各类操作。
工作空间视图下,图层的右键菜单中,则提供了较为常用的子层处理的功能:
按层分离图元
将图层下不同子层的图元分离出来,并单独存成新的图层文件。操作说明如下:
1. 在工作空间右键选择某图层,在其右键菜单中选择"按层分离图元"项,弹出"图层分离"对话框。图层信息列表默认读取图层下"mpLayer"字段的子层信息。如果用户不打算根据子层分离,希望通过某个属性字段的值的不同分离图元,则在下拉框中可选择以某字段属性值的不同来分离图层。

2. 在"图层信息"列表中选择分离的层,点击或
按钮,可将选中图层提取到"提取任务信息"列表中。
需要注意的是,若在"图层信息"列表中选中多个图层时,使用"=>"按钮提取,提取结果会将选中的所有图层进行合并;使用"—>"按钮,提取的结果不会合并。
3. 点击结果目录保存按钮,弹出"浏览文件夹"对话框,选择结果文件的存储路径。
如果需要修改分离后的文件名,在"提取任务信息"列表中,点击相应层的"保存的结果名"栏,可修改存储的文件名。
如果需要将分离后的图层立即添加到地图中以查看结果,则勾选"分离后自动添加到当前地图文档中"复选框。
4. 最后点击"分离"按钮,系统开始执行分离操作。。
提示:
【弧段转线】:只有对区简单要素类做按层分离图元操作时该参数可用,若勾选,在选择图层至提取列表时,结果图层后缀为.wl,表示将区边界转线保存到结果文件中。
改层开关
通过改层开关对每个子层的显示状态进行控制。
在工作空间右键选择某图层,在右键菜单中选择"改层开关"项,弹出下图所示下拉菜单。可单独修改某层的状态,也可统改层开关。

- 【开所有层/关所有层】:点击对应按钮,将该图层所有层开关打开或关闭。
- 【开所选层/关所有层】:点击对应按钮,将所选的某子层的开关打开或关闭。
提示:
"改层开关"对话框中的"层号"对应图元的"mplayer"字段值。"mplayer"是MapGIS图层的默认字段,若图层缺失该字段(如下图),您可以通过"设置属性结构"功能进行添加。有关层开关状态说明更详细的内容,参见"层编辑/改层开关"。


导出与追加图层
导出图层
当然,有时候也会需要将图层做另存操作。可以直接在MapGIS GDBCatalog目录树上选中图层要素,在其右键菜单中提供了"复制"功能,该功能的效果与"另存"类似。如果数据已经添加到工作空间视图(地图文档)中,则选中图层要素,在其右键菜单中提供了"导出图层"的功能。
1. 在工作空间选择一个或多个图层,点击右键,在右键菜单中选择"导出/追加"-"导出图层",弹出"保存文件"对话框。
2. 对结果文件命名后,点击"保存"即将当前图层的副本保存到指定路径下。
追加图层
用户有时候需要将多个图层的图元归并到一个图层上,这个时候可以考虑使用"追加图层"功能来完成。当图层的属性结构相同时,属性值也会相应跟随追加;属性结构不同时,以追加到的结果图层为主。
1. 在工作空间右键选择某图层,在右键菜单中选择"导出/追加"-"追加图层",弹出"打开文件"对话框。
2. 选择目标图层,点击"打开",目标图层的图元将追加到源图层中。
提示:
1、追加图层时,两个图层的图层类型必须一致,例如都是简单要素类或者栅格数据,否则无法追加。
2、追加图层前,注意确保两个图层的空间范围相符,使得图层是可用的。
3、追加图层操作无法撤销,追加图层前,建议用户做好原图层的备份(例如,可使用"导出图层"功能,保存当前图层副本)。
批量导出
1. 在工作空间选择多个图层,点击右键,在右键菜单中选择"批量导出",弹出"数据转换"对话框:

2. 选择目的数据类型、目的数据目录,填写目的数据名,点击"转换",当前图层的副本保存到指定路径下。
图层属性
在工作空间右键选择某图层,在右键菜单中选择"属性"项,可打开图层的属性页面。通过对图层属性页面的设置可以控制图层的各方面,包括:查看数据源、数据范围、类型等;设置参照系、系统库、动态注记与否、显示相关的各类参数等。
提示:
图层属性相关参数设置均是临时的显示设置,不会保存到数据中,仅保存在地图文档(*.mapx)中。
不同类型的图层数据的"属性"对话框有所差异,具体可参考"图层属性"章节。
图层合并
图层合并用来将两个图层类型一致的图层合并为一个图层。
操作说明
1. 在"工作空间"中选择要合并的图层右键"合并图层",弹出如下对话框:

2. 在"图层合并"对话框中,设置属性字段、结果参照系与系统库来源以及保存路径。该页面上,对各个设置项的说明如下:
- 【属性选择】:选择合并图层后需要保留的图层属性字段;
- 【结果参照系与系统库来源】:支持指定结果参照系以及系统库,可选择任意一个参与图层合并数据的参照系和系统库作为结果参照系和系统库;
- 【保存路径】:设置结果图层的保存路径。
3. 完成"图层合并"的设置后,点击"确定"完成合并。