基于 CityEngine 规则转换要素 (3D Analyst 工具)
汇总
按照在 ArcGIS CityEngine 中创作的规则基于现有 2D 和 3D 输入要素生成 3D 几何。
用法
输入要素可以是点、面或多面体。 应该为 CityEngine 规则包文件 (
.rpk) 中的@StartRule指定预期的输入要素类型:对于点,该类型为@InPoint注记;对于面,该类型为@InPolygon;对于多面体要素,该类型为@InMesh。 如果@StartRule未使用其中任何一种要素类型进行注释,系统将假设该要素类型为面。 如果输入了异常的几何类型,将会发生错误。输入要素可以是 按程序符号化的 要素图层。 CityEngine 规则通常可以定义一系列属性(CityEngine 中名为
attrs),这些属性可以控制根据输入形状生成输出 3D 模型的方式。 例如,生成建筑物外壳的规则可能包含针对BuildingHeight的双精度类型attr,以及针对FloorCount的整数类型attr。 如果输入要素类包含的特性字段与 CityEngine 规则属性具有相同的名称和数据类型,则将自动使用该特性字段的值来生成输出模型。 CityEngine 规则属性与特性字段的这种自动匹配称为默认字段映射。如果输入要素图层使用 单一符号符号系统(其符号包含一个程序符号图层,该程序符号图层将引用与输入规则包相同的规则包)进行符号化,则该工具将在创建输出时应用程序符号图层中配置的覆盖。 这样,程序符号图层即可用于配置 自定义字段映射(其中映射的字段名称与规则包属性名称不完全匹配),或使用单个自定义值覆盖规则包属性。 有关详细信息,请参阅 属性驱动型符号系统。
规则包参数值是 CityEngine
.rpk文件。 即包含已编译 CityEngine 规则以及该规则使用的关联资产的压缩文件。 导出 Leaf Shape 参数只有在输入规则包表明其包含下列 CGA 注记并支持此操作时可用:@StartRule @Out (granularity=separatedShapes)。使用导出 Leaf Shape 参数生成叶形状时,将在与主输出多面体要素类相同的位置创建一组标准要素类,并具有如下命名约定:
<outputFC_Points>、<outputFC_MPoints>和<outputFC_Lines>。 所有输出要素类均包含OriginalOID属性字段,此属性字段参考生成输出的输入要素ObjectID。OriginalOID字段可用于将输出要素类连接到输入要素类。 如果报告是使用包括报告参数生成的,那么输出要素类的每个报告也会获得一个属性。系统会向输出要素类中添加
OriginalOID字段,以包含从中生成各个输出要素的输入要素的 ObjectID。 如果输入要素类已经具有名为OriginalOID的字段,则可以在此名称后追加数值作为新字段的名称,例如OriginalOID2。转换期间出现的详细错误或警告将写入到名为
ArcGISProLog<process ID and GUID>.xml的日志文件中(当工具在 ArcGIS Pro 中以交互方式运行并启用诊断日志记录时)或pythonLog<process ID and GUID>.xml中(当使用独立 Python 脚本运行该工具并且已启用诊断日志记录时),其中<process ID and GUID>是一个进程 ID 和一个新的 GUID,在每次运行该工具时都会追加到日志文件的名称上,例如ArcGISProLog-12300~1A9C1C2A-A2CB-41AF-BEB9-1F8CDC4F6D29.xml或pythonLog-2160~807AFBC8-CA35-4370-9F90-4EDB2F9238AE.xml。 此文件位于<Install drive>:\Users\<user name>\Documents\ArcGIS\Diagnostics。
参数
| 标注 | 说明 | 数据类型 |
|---|---|---|
|
输入要素 |
输入点、面或多面体要素。 输入要素可以是按程序符号化的要素图层。 将支持字段映射(属性驱动的符号属性)。 |
Feature Layer |
|
规则包 |
包含 CGA 规则信息和资源的 CityEngine 规则包文件 ( |
File |
|
输出要素 |
包含应用 CGA 规则生成的多面体要素的输出要素类。 系统会向输出要素类中添加 |
Feature Class |
|
包括现有字段 (可选) |
指定输出要素类是否将包含输入要素类的属性字段。 使用导出 Leaf Shape 参数时,此参数不在考虑范围之内。
|
Boolean |
|
包括报告 (可选) |
根据创建规则包的方法,报告可能包含创建模型时生成一个或多个报告的逻辑。 这些报告可以包含有关要素的各种信息。 例如,报告为每个建筑模型生成的窗口数的规则包。 如果规则包不包含生成报告的逻辑,将会忽略此参数。
|
Boolean |
|
导出 Leaf Shape (可选) |
指定每个输入要素是将转换为单个合并的多面体要素,还是将成为多个要素(可能是点、线或多面体)的集合。 CityEngine 规则包通过生成组件部分并将其合并至单个的 3D 对象来构建内容。 然而,还可以将这些组件或叶形状存储为独立的要素。 此选项在使用 3D 对象子元素(如建筑物的窗户)运行分析操作时特别重要。 例如,某规则可能使用输入面轮廓线生成无缝建筑物模型,或者为每个公寓面(包括朝外的面板、代表中心的点以及显示边界的线)创建单独的要素。 在本示例中,应将公寓面板、中心点和轮廓均视为叶形状。
|
Boolean |
派生输出
| 标注 | 说明 | 数据类型 |
|---|---|---|
|
输出点要素 |
生成叶形状时,将在与主输出多面体要素类相同的位置创建输出点要素类。 |
Feature Class |
|
输出线要素 |
生成叶形状时,将在与主输出多面体要素类相同的位置创建输出折线要素类。 |
Feature Class |
|
输出多点要素 |
生成叶形状时,将在与主输出多面体要素类相同的位置创建输出面要素类。 |
Feature Class |
环境
此工具不使用任何地理处理环境。
许可信息
- 基本: 是
- 标准: 是
- 高级: 是