逻辑示意图规则是逻辑示意图生成和更新过程中要执行的特定任务,用于简化逻辑示意图内容或基于其初始内容创建新的逻辑示意图要素。
逻辑示意图规则的执行
首先,对于要由 Schematics 构建器处理的指定输入数据,构建器会在内存中创建逻辑示意图中所需的逻辑示意图要素。对输入数据配置了 Schematics 规则后,它们便可处理内存中的这些逻辑示意图要素,以便自动简化逻辑示意图内容(减去规则)或在逻辑示意图中创建新的逻辑示意图要素,如容器(关系规则)。当逻辑示意图构建器完成其在内存中的生成/更新工作之后,这些规则会立即作用于逻辑示意图的生成和更新过程。过程结束后,逻辑示意图将被存储到逻辑示意图数据集,此时的逻辑示意图内容是构建器与规则共同作用的结果。
逻辑示意图规则的配置
逻辑示意图规则在“逻辑示意图数据集编辑器”的逻辑示意图模板中进行指定。无论它们使用哪种类型的构建器,均可在任何逻辑示意图模板上对其进行配置。您可以随时编辑每个指定的规则,并对其参数进行修改。
可以配置多个规则在每个逻辑示意图的生成/更新期间执行。在这种情况下,这些规则会按其输入顺序串联执行。可根据需要对此顺序进行更改。
开箱即用的逻辑示意图规则
ArcGIS Schematics 10.1 提供了八个逻辑示意图规则,可用于自动简化或丰富所生成的逻辑示意图。
简化规则
- 减去结点的逻辑示意图规则分为三种类型:按优先级减去结点、按流向减去结点、按路径减去结点,这些规则可配置为自动去除与特定数量的链接相连、用于验证某些特定条件等的结点。这些规则可在处理图形简化的同时保留拓扑。
- 折叠相关要素逻辑示意图规则可配置为在简化逻辑示意图时,使逻辑示意图中所有相关的逻辑示意图要素自动折叠,同时保留图形拓扑。
- 要素移除逻辑示意图规则可配置为自动去除所有或部分用于验证某些特定条件的逻辑示意图结点或链接,而不保留图形拓扑。
左侧屏幕截图显示的是“按优先级减去结点”规则所产生的作用,该规则被配置为自动去除含有两个连接的所有结点 - 在所选的 GIS 要素中,红色的点用作逻辑示意图生成时的输入。
开发您自己的逻辑示意图规则
也可以使用 Schematics API 通过兼容 COM 的编程语言从头开始开发您自己的自定义规则。Schematics 对适用规则的处理方式与标准规则相同。适当地实现 ISchematicRule 和 IPropertyPage,可以让您自己的规则可通过任何逻辑示意图模板的“规则”选项卡进行配置。
ArcObjects for .NET 帮助系统中提供了两个 SDK 示例 - 实现逻辑示意图规则及其属性页面和实现 ISchematicRulesHelper 以便于开发自定义的逻辑示意图规则 - 这两个示例举例说明了适用规则的实现。