练习 3:关于配置标准构建器的快速入门指南,配置后将可以对以几何网络形式组织的 GIS 要素执行操作
标准构建器是经过配置便可根据以几何网络形式组织的 GIS 要素方便快捷地生成逻辑示意图的构建器。在本练习中,您将学习如何创建和配置逻辑示意图模板以根据几何网络示例 ElectricNetwork_Net 生成逻辑示意图。此几何网络存储在随 Schematics 教程数据一起提供的 ElecDemo 教程地理数据库中。要完成该配置,需要使用在练习 1 中创建的 SchematicBuilderSamples 逻辑示意图数据集。
-
编辑存储在 C:\ArcGIS\ArcTutor\Schematics\TutorialSchematicDB 地理数据库中的 SchematicBuilderSamples 逻辑示意图数据集,方法为:使用 ArcCatalog 浏览到此数据库,右键单击该数据集,然后选择编辑菜单选项 。
注:
要了解有关如何使用“逻辑示意图数据集编辑器”逐步编辑逻辑示意图数据集的信息,请回顾练习 2:编辑逻辑示意图数据集。
基于标准构建器创建逻辑示意图模板
第一阶段是创建逻辑示意图模板,可使用该模板根据几何网络数据生成逻辑示意图。
-
在“数据集编辑器”树中右键单击 SchematicBuilderSamples 条目,然后单击新建逻辑示意图模板。
在编辑器窗口右侧会自动显示新建逻辑示意图模板的属性 选项卡:
此选项卡中包含带有默认值的各种参数。默认逻辑示意图构建器为标准构建器,即您要指定用于构建此逻辑示意图模板(将用于处理几何网络数据)的构建器。 - 在名称文本框中输入 DiagramsFromGeometricNetwork。
-
由于其他参数需要使用默认值,因此单击确定即可。
将在“数据集编辑器”树中自动显示一个条目用以表示 DiagramsFromGeometricNetwork 逻辑示意图模板。编辑器窗口右侧将显示三个新选项卡(关联、布局和规则)。
结束上述步骤后,“逻辑示意图数据集编辑器”将如下所示:
通过从要素图层进行导入的方式创建逻辑示意图要素类
逻辑示意图模板用于生成特定类型的逻辑示意图,其中包含一组所需的逻辑示意图要素。下一阶段是指定希望在基于 DiagramsFromGeometricNetwork 逻辑示意图模板创建的逻辑示意图中包含哪些逻辑示意图要素类。使用逻辑示意图模板生成将完全或部分基于 GIS 要素的逻辑示意图时,可以使用一个名为“从要素图层导入”的简单功能来快速创建所需的逻辑示意图要素类。“从要素图层导入”功能的操作对象是存储在地图文档(已添加了 GIS 要素的文档)中的要素图层。此功能不仅可创建逻辑示意图要素类,同时还可设置默认逻辑示意图图层属性,以便生成的逻辑示意图中包含的逻辑示意图要素的显示方式与相关的 GIS 要素在地图文档中的显示方式相同。
-
在“数据集编辑器”树中右键单击 DiagramsFromGeometricNetwork 逻辑示意图模板条目,然后单击从要素图层导入。
将打开从要素图层导入 对话框:
-
单击地图或图层文件区域右侧的省略号按钮。
将打开选择要导入的地图或图层文件 对话框。
-
浏览至存储在 C:\ArcGIS\ArcTutor\Schematics\Schematics_Configuration\GeometricNetwork_Data 文件夹中的 MapToImport MXD 文档并将其选中。
此地图文档中包含与 ElectricNetwork 要素数据集的要素类相关联的要素图层。这些 GIS 要素类存储在 C:\ArcGIS\ArcTutor\Schematics\Schematics_In_ArcMap\ElecDemo 地理数据库中。
-
单击添加。
将关闭选择要导入的地图或图层文件 对话框。
将自动填充从要素图层导入 对话框中的内容,如下面的屏幕截图所示:
指定的地图文档内容列表中的所有要素图层都将列在选择要导入的要素图层列表中。与 ElectricNetwork_Net 几何网络中的内容相关联的项默认处于选中状态。注:通常情况下,应始终将此列表中的所有图层保留为选中状态。如果您不希望某一图层显示在自己的逻辑示意图中,通常最好的办法是配置一个“减少结点”规则,这样才能适当地保留网络连通性。请参阅“Schematics 高级配置教程”中的练习 2 以了解有关“规则”的详细信息。
-
单击确定。
导入过程结束后,针对“要导入的要素图层”列表中所选中的每个逻辑示意图要素图层,都将在“数据集编辑器”中相应地显示一个新建的逻辑示意图要素类。
展开 ProtectionDeviceBank、TransformerBank、Primaryline 和 SecondaryLine 逻辑示意图要素类项后您会发现,导入过程中已自动为导入的逻辑示意图要素类创建了逻辑示意图属性:这些属性与导入的地图文档中用于标注或分类相关 GIS 要素的相同字段相关联。如果在“逻辑示意图数据集编辑器”树中展开数据源条目,您还会发现在导入过程中已自动添加新建的逻辑示意图数据源 ElecDemo。此数据源便是将用于与导入的地图文档中包含的 GIS 数据相连接的数据源。
-
单击保存。
至此,逻辑示意图数据集的配置过程便已完成,可以根据在此地图文档或包含相同 GIS 数据的其他地图文档中所指定的选择集或追踪结果生成逻辑示意图。
- 关闭“逻辑示意图数据集编辑器”。
根据相关 GIS 要素生成逻辑示意图
在本部分中,将根据新建的 DiagramsFromGeometricNetwork 逻辑示意图模板生成第一个逻辑示意图。
- 启动 ArcMap。
- 加载存储在 C:\ArcGIS\ArcTutor\Schematics\Schematics_Configuration\GeometricNetwork_Data 文件夹中的 MapToImport MXD 文档。
- 单击主菜单上的书签下拉菜单,然后单击 First GIS Features Set。
-
单击按矩形选择工具 ,然后选择一组 GIS 要素,如下面的屏幕截图所示:
-
单击“逻辑示意图”工具条上的生成新逻辑示意图按钮 。
将打开新建逻辑示意图 对话框:
由于地图中显示的 GIS 数据来源于 ElecDemo 地理数据库,而此地理数据库中恰好已经存在一个逻辑示意图数据集,因此当前所选的 GeoSchematic 逻辑示意图模板来源于此逻辑示意图数据集。由于要基于新建的 SchematicBuilderSamples 逻辑示意图数据集中配置的新建 DiagramsFromGeometricNetwork 逻辑示意图模板来创建逻辑示意图,因此需要首先指向该逻辑示意图数据集:-
单击“逻辑示意图数据集或文件夹”字段右侧的浏览按钮 。
将打开选择逻辑示意图数据集或逻辑示意图文件夹 对话框。
- 浏览到 C:\ArcGIS\ArcTutor\Schematics 并从中选择在练习 1 中创建的 TutorialSchematicDB 地理数据库。
-
双击此地理数据库,然后选择 SchematicBuilderSamples 逻辑示意图数据集。
-
单击添加。
将自动填充新建逻辑示意图 对话框中的内容,如下面的屏幕截图所示:
此逻辑示意图数据集 (DiagramsFromGeometricNetwork) 中包含的唯一一个逻辑示意图模板在逻辑示意图模板下拉列表中已处于选中状态。
-
单击“逻辑示意图数据集或文件夹”字段右侧的浏览按钮 。
-
在逻辑示意图名称字段中输入 FirstDiagram_FromSelection。
完成本步骤后,新建逻辑示意图 对话框中显示的内容如以下屏幕截图所示:
-
单击确定。
将开始生成过程,新生成的逻辑示意图将显示在自动添加到地图文档的新数据框中:
使用连接绘制和标注逻辑示意图要素
刚生成的逻辑示意图中包含的逻辑示意图要素将以默认逻辑示意图图层属性进行显示。在本练习的第一部分中使用“从要素图层导入”命令配置逻辑示意图模板时系统已自动设置了这些默认图层属性。由于它们是基于在导入过程中创建的逻辑示意图属性进行设置的,因此组成逻辑示意图图层的要素图层的属性与导入的地理要素图层的图层属性完全相同。
但由于逻辑示意图要素是标准要素,因此逻辑示意图中各要素图层的大多数属性都可以像其他图层一样通过“图层属性”对话框加以控制。尤其是当使用来源于几何网络中的数据时(如在本练习中),逻辑示意图要素会追踪相关联的真实 GIS 要素的对象,并且可以在逻辑示意图要素图层上配置连接以获取相关联的 GIS 属性。然后可以使用这些 GIS 属性绘制和标注逻辑示意图要素,而无需在逻辑示意图要素类上对逻辑示意图属性进行任何特殊配置。在本部分中,您将在某些要素图层上添加连接,并使用连接的属性绘制和标注逻辑示意图要素,从而通过这种方式来修改生成的逻辑示意图的图层属性。
根据来源于相关 GIS 要素的属性值绘制逻辑示意图要素
以下步骤介绍了如何在 ServiceLocation 逻辑示意图要素图层上配置连接以从相关 GIS 要素获取属性,进而使用这些 GIS 属性值绘制 ServiceLocation 逻辑示意图要素:
- 在 ArcMap 的内容列表中右键单击 FirstDiagram_FromSelection 逻辑示意图图层下的 ServiceLocation 要素图层。
- 选择属性... 菜单选项。
将打开图层属性 对话框。
- 选择连接和关联 选项卡。
- 在左侧的“连接”部分上单击添加。
将打开连接数据 对话框。
- 从选择该图层中连接将基于的字段下拉列表中选择 UOID。
UOID 是 Schematics 用于存储“真实”要素的 ObjectID 的字段
- 单击选择要连接到此图层的表,或者从磁盘加载表下拉列表旁的浏览按钮。
将打开 添加 对话框。
- 导航到存储在 C:\ArcGIS\ArcTutor\Schematics\Schematics_In_ArcMap\ElecDemo 地理数据库中的 ElectricNetwork 要素数据集,然后选择 ServiceLocation 要素类。
ServiceLocation GIS 要素类与 ServiceLocation 逻辑示意图要素类相关联。
- 单击添加按钮。
- 从选择此表中要作为连接基础的字段下拉列表中选择 OBJECTID。
至此,您已创建从逻辑示意图要素类到真实 GIS 要素类的连接:
- 单击确定。
将关闭连接数据 对话框。
- 从选择该图层中连接将基于的字段下拉列表中选择 UOID。
- 接下来,您将使用某个连接的 GIS 属性在自己的逻辑示意图中绘制 ServiceLocation 逻辑示意图要素:
- 单击符号系统 选项卡。
- 在显示部分中单击类别下的唯一值。
- 从值字段下拉列表中选择 ONWHAT。
请注意,此字段来源于与 ServiceLocation GIS 要素类的连接。此时,关于此要素类的全部 GIS 属性会全部显示在“值字段”列表中。
- 单击添加所有值按钮。
- 选择所有可能显示在 Building 值旁的值,然后单击移除按钮。
仅保留特定的 Building 值。
- 设置想要分别使用哪种符号系统来表示具有 Building 值的 ServiceLocation 逻辑示意图要素和具有其他值的 ServiceLocation 逻辑示意图要素。
- 单击应用,然后关闭图层属性 对话框。
由于建立了连接,此时的 ServiceLocation 逻辑示意图要素会以特定的符号系统(基于来自相关 GIS 要素的 ONWHAT 属性值)进行显示:
根据来源于相关 GIS 要素的属性值标注逻辑示意图要素
接下来,您将使用另一个连接的 GIS 属性来标注 ServiceLocation 逻辑示意图要素:
- 在 ArcMap 的内容列表中右键单击 FirstDiagram_FromSelection 逻辑示意图图层下的 ServiceLocation 要素图层。
- 选择属性... 菜单选项。
将打开图层属性 对话框。
- 单击标注 选项卡。
- 选中此图层中的标注要素复选框。
- 从标注字段下拉列表中选择 PhaseCode。
请注意,此字段来源于与 ServiceLocation GIS 要素类的连接。此时,关于此要素类的全部 GIS 属性会全部显示在“标注字段”列表中。
此时标注 选项卡上的内容应如下面的屏幕截图所示:
- 单击确定。
- 单击应用,然后关闭图层属性 对话框。
由于建立了连接,此时的 ServiceLocation 逻辑示意图要素会以特定的标注(基于来自相关 GIS 要素的 PhaseCode 属性值)进行显示。
此时,ServiceLocation 逻辑示意图要素便已使用来源于相关逻辑示意图要素的属性值进行标注和绘制。此自定义内容目前仅影响 FirstDiagram_FromSelection 示例逻辑示意图。但如果您愿意,也可将当前配置的图层属性指定为相关逻辑示意图模板的默认逻辑示意图图层属性,这样任何基于此模板的逻辑示意图都将以此种方式进行显示。有关此类型配置的详细信息,请参阅“高级配置教程”的第一个练习中的创建一个用作逻辑示意图模板默认值的图层文件部分。