适用于具有 Indoors 功能许可的门户。
描述
可将单元开口创建为线要素,从而对入口的位置和物理范围进行建模。
该工具将分析输入单元和门要素以标识入口,例如门和旋转门,或者可以平开、滑动或旋转的物理门。将开口建模为直线可通过避免复杂的门符号系统来简化地图。开口的直线要素也是导出到 IMDF 的要求。
使用方法
输入单元要素参数必须是符合 Units 要素类的 ArcGIS Indoors 信息模型的面要素图层或要素类。这些单元要素用于标识沿其生成开口的边。通过在输入图层上进行选择或定义查询,可以将开口的生成限制为特定单元。
输入细节要素参数必须是符合 Details 要素类的 Indoors 模型并且包含建筑细节折线的折线要素图层或要素类。
注:
在运行此工具之前,必须使用多部分至单部分工具将包含用于定义入口的门和内墙的多部分细节线分为多部分要素。
- 可以使用门细节表达式参数来定义相应细节线,这些细节线表示单元上的门开口。其中包括由单个或多个要素组成的门、穿过开口的直线、表示门平开的曲线、表示旋转门的圆形线以及其他类型的门。除了输入细节图层上的任何定义查询或选择之外,还将应用此表达式。
- 可以使用墙壁细节表达式参数来定义相应细节线,这些细节线表示围绕输入单元要素的墙壁。单元周围可能存在不同类型的墙壁线,例如墙壁、内部墙壁或玻璃墙壁,并且表达式应包含每种类型墙壁要素的条件。
墙壁厚度公差参数可指定工具将从单元要素的边向内和向外搜索以找到输入门要素的距离。由此该工具可同时检测内开门和外开门,以及与单元不一致的门。
生成的门开口将被写入 Target Openings 图层,其中 USE_TYPE 字段值设置为 Opening。
输出开口要素的 z 值源自输入单元要素参数值上的 ELEVATION_RELATIVE 字段。
语法
arcpy.indoors.GenerateUnitOpenings(in_unit_features, in_detail_features, door_detail_expression, wall_detail_expression, target_openings, {wall_thickness_tolerance}, {delete_existing_openings})
参数 | 说明 | 数据类型 |
in_unit_features | 输入面要素,表示一个或多个建筑物的单元覆盖区。在 Indoors 模型中,此项将为 Units 图层。该工具将仅处理包含所选要素的建筑物楼层。 | Feature Layer |
in_detail_features | 输入折线要素,表示建筑细节折线。 | Feature Layer |
door_detail_expression | 一个 SQL 表达式,用于标识表示门的细节折线。 | SQL Expression |
wall_detail_expression | 一个 SQL 表达式,用于标识表示墙壁的细节折线。 | SQL Expression |
target_openings | 将写入生成的折线的现有要素类或要素图层。在 Indoors 模型中,此项将为 Details 图层。 | Feature Layer |
wall_thickness_tolerance (可选) | 工具将从单元要素的边向内和向外搜索以找到门要素的距离。默认的测量单位为英尺。默认值为 2 英尺,但是范围为 0 到 6 英尺。 | Linear Unit |
delete_existing_openings (可选) | 指定在创建新的开口要素之前,是否将删除 USE_TYPE 字段值为 Opening 的现有开口要素。如果删除,则该工具会将现有开口替换为新开口(如果其位于同一位置)。
| Boolean |
派生输出
名称 | 说明 | 数据类型 |
updated_openings | 已更新的 Target Openings 要素图层或要素类。 | 要素图层 |
代码示例
以下 Python 窗口脚本演示了如何在即时模式下使用 GenerateUnitOpenings 函数。
import arcpy
arcpy.indoors.GenerateUnitOpenings("C:/Indoors/ExampleCampus.gdb/Units",
"C:/Indoors/ExampleCampus.gdb/Details",
"USE_TYPE IN('Door')",
"USE_TYPE IN ('Wall', 'Interior Wall')",
"2 feet",
"KEEP_EXISTING")
以下独立脚本演示了如何使用 GenerateUnitOpenings 函数。
# Name: Indoors_GenerateUnitOpenings_example2.py
# Description: Creates Unit Openings for selected doors features
import arcpy
# Set tool parameters
in_unit_features = "C:/Indoors/ExampleCampus.gdb/Units"
in_detail_features = "C:/Indoors/ExampleCampus.gdb/Details"
#Define which Details features represent doors and walls
door_detail_expression = "USE_TYPE IN ('Door')"
wall_detail_expression = "USE_TYPE IN ('Wall', 'Interior Wall')"
target_openings = "C:/Indoors/ExampleCampus.gdb/Details"
wall_thickness_tolerance = "2 feet"
delete_existing_openings = "KEEP_EXISTING"
# Run the tool
arcpy.indoors.GenerateUnitOpenings(in_unit_features, in_detail_features, door_detail_expression, wall_detail_expression, target_openings,
wall_thickness_tolerance, delete_existing_openings)
环境
许可信息
- Basic: 需要 Indoors
- Standard: 需要 Indoors
- Advanced: 需要 Indoors