要素模板入门
要素的创建可通过应用要素模板来完成。要素模板定义创建要素所需的全部信息:存储要素的图层、创建的要素所应具有的属性以及创建要素所使用的默认工具。另外,模板也具有名称、描述和标签,这有助于对模板进行查找和组织。如果启动编辑时未显示模板,则会在当前编辑工作空间中为每个图层自动创建。模板保存在地图文档 (.mxd) 和图层文件 (.lyr) 中。
自动为用户创建要素模板的示例
开始编辑时,ArcMap 会通过检查来了解哪些图层具有要素模板。如果图层没有模板,将基于图层当前的符号系统自动创建模板。虽然通常会为所有类型的符号系统创建模板,但对于按类别、单一符号或制图表达符号化的图层,模板的使用效果最佳,而对于按数量或图表符号化的图层,模板的使用效果并不会达到最佳。
如果在编辑会话中间向地图添加图层并想在其中创建要素,用户需要使用“创建新模板”向导自行创建图层模板。首先这可用于正确地符号化图层,并确保模板将体现出用户实际要创建的要素。但是,每次添加图层文件 (.lyr) 时,在图层中保存的现有模板均将显示在“创建要素”窗口中。
如果用户删除图层中的所有模板,则将不会重新生成。如果用户随后决定要在图层中创建要素,则必须通过向导自行创建。
“创建要素”窗口中不显示某些要素模板的原因
有时您会发现,某些要素模板不显示在与您当前编辑的图层所对应的“创建要素”窗口中。请记住,要素模板始终与地图内容同步;如果在内容列表中关闭了某个图层,则该图层的模板便不会在“创建要素”窗口中显示。这确保了您所创建的要素始终显示在地图上,而不会因为图层不可见而立即消失。
当不显示可编辑图层的要素模板时,将在“创建要素”窗口顶部显示消息。单击消息可以查看任何隐藏的要素模板列表,然后获取模板不显示原因的说明。以下为可编辑图层的模板隐藏的主要原因以及使其显示在“创建要素”窗口的操作方法:
- 该图层不可见。您需要在内容列表中打开图层。
- 该图层是隐藏图层组的一部分。您需要在内容列表中打开图层组并确保子图层可见。
- 该图层具有超出地图当前比例的可见比例范围。在内容列表中右键单击该图层,然后单击“缩放至可见”将图层在视图中展开。您可以在“图层属性”对话框的“常规”选项卡中更新或移除比例范围。
- 该图层来自宗地结构数据集。要使用“宗地编辑器”工具条而不是“创建要素”窗口创建新宗地。
- 该图层应用了定义查询,但是与要素模板不匹配。您需要打开要素模板的属性并设置满足查询条件的默认属性值。可以在“图层属性”对话框的“定义查询”选项卡中更新或移除表达式。
使用定义查询时,“创建要素”窗口中只会列出满足查询条件的默认属性值的要素模板。例如,如果定义查询的条件是“在包含多种不同道路类型的图层中只显示主干道”,则只会显示道路类型默认属性值为主干道的要素模板。要更新默认属性值,请打开“组织要素模板”对话框,单击图层名称,打开要使用的模板的属性,然后设置与定义查询相匹配的值(在此例中,将道路类型字段设置为主干道)。但是,如果需要添加次级道路要素,应首先在“图层属性”对话框中更新定义查询以使次要道路显示在地图上,然后便可使用这些默认属性创建模板。
除了这些原因外,“创建要素”窗口中活动的过滤器也会使模板隐藏。例如,执行模板搜索时,只会显示与搜索条件匹配的模板。要清除过滤器,请单击“通过分组和过滤排列模板”,然后单击“显示所有模板”。
在开始创建新模板之前,最好在“组织要素模板”对话框中单击图层名称以查看该图层中是否已经存在任何模板。这样可以防止重复创建现有模板。
创建新要素模板
要创建要素模板,可在“创建要素”窗口中打开“组织要素模板”对话框,然后启动“创建新模板”向导。该向导会逐步引导您快速完成创建模板过程:首先,选择图层;然后选择图层中的任一类或所有类生成单个模板(如果可行)。创建模板之后,可以更改其默认属性、对其进行复制粘贴或将其删除。
您可以创建现有模板的副本,并将其作为新模板的基础。例如,如果要使图层中的某个字段具有不同的默认属性,可复制并粘贴模板,然后更改新模板的属性。这样便无需逐步设置创建模板向导,而只需对模板稍微进行更改。
在将图层添加到地图中时,如果对用于绘制要素的符号系统进行了较大的更改,或者新添加了一个符号系统类别(例如对于利用唯一值绘制的图层),那么您就需要创建能够在该图层中添加要素的新模板。
设置要素模板的属性
默认属性值是为要素模板设置的某些最重要的属性。在“模板属性”对话框中设置的属性将被指定给使用该要素模板创建的新要素。设置合适的默认值会节省时间并提高精度,因为新要素中属性会被自动填充。
每个模板均具有默认的构造工具,您可在模板属性中设置。设置默认工具可使您在创建新要素时不需另行单击选择其他工具。例如,绘制矩形建筑物覆盖区时,可将模板的默认构造工具设置为“矩形”工具,这样便使该工具在创建建筑物覆盖区时自动变为活动状态。您可随时在“创建要素”窗口中选择其他工具替代默认工具。
编辑命令中的要素模板
某些编辑命令(例如“编辑器”菜单上的命令)允许用户在创建新要素时通过对话框选择模板。
该模板可指定存储要素的图层和新要素的默认属性。要在窗口中列出的模板必须已经存在,而且必须是合适的目标几何类型;其他模板类型已在列表中过滤掉,因此不会显示。
只能输出一种几何类型的编辑命令(如“复制平行线”命令,它只生成线)仅会列出针对该图层类型的模板。可输出多种图层类型的命令将列出所有类型正确的现有模板。例如,“缓存”命令可创建线或面要素,因此窗口中将同时列出线和面模板。如果已为线图层创建了模板,但没有为面图层创建模板,则窗口中仅列出线模板,因为地图中没有可用的面模板。在这种情况下,要选择面作为输出,请关闭命令对话框,从“创建要素”窗口中启动“创建新模板向导”,然后为面创建模板。
如果地图中的所有图层都不具有任何模板,您可以从要在其中创建新要素的可用图层列表中进行选择。但是,如果模板仅适用于特定的图层类型,那么当试图使用其他图层类型模板的命令时,会弹出提示信息。例如,使用“平行复制”时,如果地图中只有面模板,而没有线模板,Arcmap 将会出现提示信息,告知您需要创建线模板时才能使用此命令。
但是在复制要素时,需要选择存储新要素的图层。这样就可以保留所复制的要素的属性值,而不会用要素模板的值覆盖这些属性值。这也同样适用于“复制要素”和“粘贴要素”等命令。
查找和组织要素模板
用户可在“创建要素”窗口中搜索模板。搜索时,“创建要素”窗口中只会显示满足查询条件的模板。要使模板的查找和识别变得更加容易,可为它们指定明确且具描述性的名称。对于图层和符号标注也是如此,因为它们提供默认模板名称。可以输入描述,这样当您将鼠标悬停在模板上时,该描述将作为弹出文本出现。该“描述”属性可用于提供有关特定模板的内容和用途的附加信息。
此外,还可以向模板添加标签。标签通常是简短的关键字、元数据项、或其他任何有助于在搜索时识别模板的词。标签可作为一种分类形式,因此只有满足某种条件的模板才会显示在“创建要素”窗口中。例如,您要创建表示动物栖息地的面要素。您可以为要素模板添加标签,从而通过栖息地类型对模板进行筛选,以便仅显示适于特定动物的栖息地。创建灰熊栖息地的面时,可隐藏用于海洋和沙漠环境的要素模板,因为这些位置不大可能是灰熊的栖息之所。
可以在“创建要素”窗口中以多种不同方式对模板进行排序和分组。如果在地图中有许多当前并未使用的模板,可考虑使用过滤器(例如,仅显示特定类型的图层)将其隐藏,而不是将其统统删除。这样便可在需要这些模板时再次使用。可以通过这种方式尽可能减少“创建要素”窗口中列出的项目,以便更轻松地找到所需模板。您还可以在所有模板中进行搜索,以选择所需模板,并将其他模板隐藏。
更新要素模板属性
如果发现需要更改新要素的默认属性值,或者需要反复从默认工具切换到其他工具,请更新模板的属性。
“组织要素模板”对话框允许同时在一个图层中设置多个要素模板的属性。要执行此操作,需选择模板,例如单击“属性”,然后更新默认构造工具或属性值。仅更改要应用到所有选中模板的属性。
切记,只有在创建要素时才会使用模板。要素创建完毕后,就不会再与模板保持连接。如果您对模板的默认属性值进行了更新,这些属性值不会追加应用于现有要素。对模板属性所做的更改仅会体现在使用更改生效后的模板所创建的新要素中。要更新已创建的要素的属性值,可使用属性表或“属性”窗口。
为同一符号系统创建多个要素模板
即使是使用单个符号进行符号化,您也可以为图层创建多个模板。如果整个图层应以相同方式显示,而需要创建的要素却具有不同的属性值时,可以执行此操作。例如,创建用来表示管道要素的线时,可为常见材料类型或直径大小的管道创建若干个具有不同默认属性的要素模板。
删除不必要的要素模板
删除不使用的模板。例如,如果地图中包含 10 个图层,但只在其中的两个图层中创建新要素,则可以删除其他模板,以便更易于查找所需模板。
如果自模板最初创建以来已经更改了多个图层的渲染,最好的办法便是删除所有模板,并重新开始,以便使模板与当前符号系统更好地同步。删除模板之后,只需启动“创建新模板”向导,然后仅为要在其中创建要素的图层创建模板。
然而,更好的做法是在实际开始编辑和创建模板之前,花一些时间准备地图及其符号系统。
创建与其他编辑者共享的地图
如果要创建可供其他编辑者使用的地图,应确保创建要素所需的所有元素都容易被所有编辑者理解。这会涉及清晰地命名图层和符号标注,因为这些图层和符号标注将用于在“创建要素”窗口中识别要素模板。这点在通过 ArcGIS for Server 提供地图时也同样适用,因为通过 Web 或本地下载数据来编辑地图内容的编辑者也接收地图中的要素模板。