生成室内路径 (Indoors)

摘要

用于在一个或多个设施点中的所选楼层上生成根据障碍物(例如墙壁或圆柱)切割的初步路径。

在添加楼梯或电梯楼层过渡后,可以使用稀疏化室内路径工具来创建最终室内网络数据集

插图

“生成室内路径”工具图示

使用情况

  • 用于输入楼层要素输入细节要素受限单元要素参数的要素图层或要素类可以来自室内数据集(使用创建室内数据集工具创建)或 Indoors 地理数据库(使用创建 Indoors 数据库工具创建)。 用于目标 PrelimPathways 参数的要素图层或要素类可以来自原始室内网络数据集(使用创建室内网络数据集工具创建)或 Indoors 地理数据库。

  • 输入楼层要素参数值必须是符合 Levels 要素类的 ArcGIS Indoors 信息模型的要素图层或要素类。

    • 要为特定设施点或级别生成路径,在运行该工具之前,请使用按属性选择图层工具来选择相应的级别要素。
    • 如果指定了未选择要素的要素类或要素图层,则该工具将为存在的所有要素生成路径。

  • 输入细节要素参数值必须是符合 Details 要素类的 Indoors 模型的要素图层或要素类。

    • 如果输入细节要素参数值包含表示障碍(例如墙壁和窗户)和非障碍(例如楼梯和门廊)的折线,请使用细节表达式参数来标识表示障碍的要素。 在 Indoors 模型中,通常可以使用 USE_TYPE 字段的值。

  • 目标 PrelimPathways 参数值必须是符合 PrelimPathways 要素类的 Indoors 模型的要素图层或要素类。

    • 如果目标 PrelimPathways 参数值包含输入楼层要素参数值定义的现有楼层路径,则该工具将覆盖现有路径。

  • 格网旋转参数可定义将从正西方向对生成的路径格网进行旋转的角度。

    • 可以使用格网旋转参数来生成更好地与输入级别要素的主要行驶方向对齐的路径。
    • 如果未提供格网旋转值,则该工具将根据输入楼层要素参数值定义的每个设施点楼层的最小边界矩形来计算旋转值。

  • 格网密度参数可定义路径格网中相邻的连接节点之间的最大距离。 该参数值必须介于 0.25 到 2.9 之间。 该工具使用来自 Indoors 数据集坐标系的测量单位。

    • 可以使用格网密度参数来生成相应格网,其间距足够密集,能够穿过楼层规划中最窄的门廊。
    • 切勿使格网过密。 密集的格网需要更长的生成时间,并且需要更多的磁盘空间。
    • 如果 Indoors 数据集的坐标系以米为单位,则默认值 (0.6) 适用于大多数情况。 如果 Indoors 数据集使用具有米以外的测量单位的坐标系,则可能需要更改默认的格网密度参数值。 例如,如果 Indoors 数据集使用以英尺为单位的美国国家平面坐标系,则需要将默认值从 0.6 更改为 1.9。 您可以试验单个楼层,以找到适合您的楼层规划的最佳格网密度。

  • 受限单元要素参数值必须是符合 Units 要素类的 Indoors 模型的要素图层或要素类。

    • 可以使用受限单元要素参数来定义不应该为其生成路径的楼层规划区域,例如内部景观美化、维护通道或者通向下方楼层的中庭空间。
    • 如果受限单元要素参数值包含表示受限和非受限空间的面,请使用受限单元表达式参数来标识表示受限空间的要素。 在 Indoors 模型中,通常可以使用 USE_TYPE 字段的值。

参数

标注说明数据类型
输入楼层要素

表示设施点中楼层的输入面要素。 在 Indoors 模型中,此项将为 Levels 图层。 该工具支持应用于图层的选择和定义查询。

Feature Layer
输入细节要素

表示建筑细节的输入折线要素,可能会作为设施点内要行驶的障碍。 在 Indoors 模型中,此项将为 Details 图层。

如果输入折线图层包含表示障碍(例如墙壁和窗户)和非障碍(例如楼梯和门廊)的要素,请使用细节表达式参数来标识表示障碍的要素。

Feature Layer
目标 PrelimPathways

将写入生成的路径折线的要素类或要素图层。 在 Indoors 模型中,此项为 PrelimPathways 图层。

Feature Layer
格网旋转
(可选)

从正西方向开始顺时针旋转输入楼层的主要途经方向的度数。 如果保留空白,则该工具将基于每个楼层的最小边界矩形计算一个值。

该值必须介于 0.0 到 180.0 之间

Double
格网密度
(可选)

在生成的路径格网中,节点之间允许的最长距离。 该工具使用来自 Indoors 数据集坐标系的测量单位。 默认值为 0.6。

该值必须介于 0.25 到 2.9 之间。

Double
受限单元要素
(可选)

表示设施点内的受限空间和非受限空间的输入面要素。 在 Indoors 模型中,此项将为 Units 图层。

Feature Layer
受限单元表达式
(可选)

一个 SQL 表达式,用于选择该工具不会在其中生成路径的受限单元要素参数值。

SQL Expression
细节表达式
(可选)

一个 SQL 表达式,用于选择该工具不会在其中生成路径的输入细节要素参数值。

SQL Expression

派生输出

标注说明数据类型
已更新的路径

已更新的目标路径图层。

Feature Class

arcpy.indoors.GenerateIndoorPathways(in_level_features, in_detail_features, target_pathways, {lattice_rotation}, {lattice_density}, {restricted_unit_features}, {restricted_unit_exp}, {detail_exp})
名称说明数据类型
in_level_features

表示设施点中楼层的输入面要素。 在 Indoors 模型中,此项将为 Levels 图层。 该工具支持应用于图层的选择和定义查询。

Feature Layer
in_detail_features

表示建筑细节的输入折线要素,可能会作为设施点内要行驶的障碍。 在 Indoors 模型中,此项将为 Details 图层。

如果输入折线图层包含表示障碍(例如墙壁和窗户)和非障碍(例如楼梯和门廊)的要素,请使用 detail_exp 参数来标识表示障碍的要素。

Feature Layer
target_pathways

将写入生成的路径折线的要素类或要素图层。 在 Indoors 模型中,此项为 PrelimPathways 图层。

Feature Layer
lattice_rotation
(可选)

从正西方向开始顺时针旋转输入楼层的主要途经方向的度数。 如果保留空白,则该工具将基于每个楼层的最小边界矩形计算一个值。

该值必须介于 0.0 到 180.0 之间

Double
lattice_density
(可选)

在生成的路径格网中,节点之间允许的最长距离。 该工具使用来自 Indoors 数据集坐标系的测量单位。 默认值为 0.6。

该值必须介于 0.25 到 2.9 之间。

Double
restricted_unit_features
(可选)

表示设施点内的受限空间和非受限空间的输入面要素。 在 Indoors 模型中,此项将为 Units 图层。

Feature Layer
restricted_unit_exp
(可选)

一个 SQL 表达式,用于选择该工具不会在其中生成路径的 restricted_unit_features 参数值。

SQL Expression
detail_exp
(可选)

一个 SQL 表达式,用于选择该工具不会在其中生成路径的 in_detail_features 参数值。

SQL Expression

派生输出

名称说明数据类型
updated_pathways

已更新的目标路径图层。

Feature Class

代码示例

GenerateIndoorPathways 示例(Python 窗口)

以下 Python 脚本演示了如何在即时模式下使用 GenerateIndoorPathways 函数。

import arcpy
arcpy.indoors.GenerateIndoorPathways(r"C:\ExampleCampus.gdb\Indoors\Levels", 
                                      r"C:\ExampleCampus.gdb\Indoors\Details", 
                                      r"C:\ExampleCampus.gdb\PrelimNetwork\PrelimPathways", 
                                      28.2, 0.65, 
                                      r"C:\ExampleCampus.gdb\Indoors\Units", 
                                      "USE_TYPE = 'Landscaping'", 
                                      "USE_TYPE IN ('I-WALL', 'A-WALL-GLAS', 'A-WALL-EXTR')")
GenerateIndoorPathways 示例 2(独立脚本)

以下独立脚本演示了如何使用 GenerateIndoorPathways 函数。

# Name: Indoors_GenerateIndoorPathways_example2.py
# Description: Generates pathways for specified levels

# import system modules
import arcpy

# set input features
in_level_features = r"C:\ExampleCampus.gdb\Indoors\Levels"
in_detail_features = r"C:\ExampleCampus.gdb\Indoors\Details"
target_pathways = r"C:\temp\ExampleCampus.gdb\PrelimNetwork\PrelimPathways"

# Define which Details features represent barriers
detail_exp = "USE_TYPE IN ('Interior Wall', 'Column')"

# Let tool calculate rotation for each facility
lattice_rotation = None

# Set max distance in meters between lattice nodes 
lattice_density = 0.55

# Don't generate pathways for maintenance areas
restricted_unit_features = r"C:\ExampleCampus.gdb\Indoors\Units"
restricted_unit_exp = "USE_TYPE IN ('AC Duct Shaft', 'Janitor''s Closet', 'Electrical Room')"

arcpy.indoors.GenerateIndoorPathways(in_level_features, in_detail_features, 
                                     target_pathways, lattice_rotation, 
                                     lattice_density, restricted_unit_features, 
                                     restricted_unit_exp, detail_exp)

环境

此工具不使用任何地理处理环境。

许可信息

  • Basic: 否
  • Standard: 否
  • Advanced: 需要 ArcGIS Indoors Pro 或 ArcGIS Indoors Maps 和 3D Analyst

相关主题