将 BIM 导入室内数据集 (Indoors)

适用于具有 Indoors 功能许可的门户。​

描述

将要素从 BIM 文件导入室内数据集。

此工具可直接将要素从 BIM 文件导入符合 ArcGIS Indoors 信息模型的室内数据集。可使用该工具的输出创建 2D 地图和 3D 场景,以用于楼层感知型应用程序,以及生成用于路由的室内网络。

使用方法

  • 源 BIM 数据必须在运行该工具之前进行地理配准

    了解有关将 BIM 数据添加到 ArcGIS Pro 的详细信息

  • 输入 BIM 楼层平面图面图层参数是源 BIM 文件的 Floorplan 数据集中的 Floorplan_Polygon 要素图层。

    • 该工具使用 Floorplan_Polygon 图层构造“楼层”和“单元”要素。
    • 根据输入 BIM 楼层平面图面图层参数值,该工具会访问同一 Floorplan 数据集中的其他图层以构造室内数据集。“覆盖区”图层用于构造“设施点”要素,而 Floorplan_Polyline 图层用于构造“细节”要素。
  • 目标室内数据集参数值必须是包含符合 ArcGIS Indoors 信息模型的设施点、楼层、单元和细节要素类的室内数据集。

  • 一楼名称参数用于确定建筑物的一楼。目标室内数据集中每个楼层的垂直顺序、相对高程、楼层编号和 z 值均派生自此输入。将向高程小于标识的一楼的任何楼层分配负垂直顺序。

    注:
    • 无需将设置为一楼的楼层导入室内数据集。
    • 此参数仅接受可占用的楼层作为输入。
    • 目标室内数据集中每个楼层的绝对高程是派生自源 BIM 文件中的楼层要素的 z 坐标。此项用于确定“楼层”、“单元”和“细节”要素的 ABSOLUTE_ELEVATION 字段值。设施点要素的 ABSOLUTE_ELEVATION 字段值根据为一楼名称参数提供的楼层要素的绝对值设置。

  • 建筑物名称参数用于填充室内数据集中设施点要素的 FACILITY_IDNAME 字段。如果工具运行时未指定建筑物名称参数值,则将在 FACILITY_IDNAME 字段中填充源 BIM 文件中“覆盖区”图层的 Bldg_Name 字段值。如果 Bldg_Name 字段为 null 或为空,则将使用源 BIM 文件的名称填充这两个字段。

  • 如果室内数据集中存在数据,则会将源 BIM 文件中的“设施点”和“楼层”名称与室内数据集中的“设施点”和“楼层”名称进行比较,以确定要替换的要素。如果建筑物名称参数值与“设施点”要素的 NAME 字段值一致,将替换设施点。如果 BIM 源文件中“楼层”要素的 BldgLevel字段值与室内数据集中“楼层”要素的 NAME 字段值一致,将替换“楼层”以及关联的“细节”和“单元”要素。

    注:

    如果建筑物名称参数值与室内数据集中“设施点”图层的 NAME 字段不一致,源 BIM 文件中的要素将作为具有指定建筑物名称值的新设施点的一部分进行导入。

  • 房间类别字段参数定义 Floorplan_Polygon 要素图层中的一个字段,用于填充目标数据集中“单元”要素类的 USE_TYPE 字段。如果未提供任何字段,则使用 Floorplan_Polygon 图层中的 RoomName 字段值。

  • 要导入的楼层参数定义导入的 BIM 文件中的楼层。如果目标数据集中存在所选楼层,则将对这些楼层以及所有关联的“细节”和“单元”要素进行更新。如果未提供楼层,则将导入并更新 BIM 文件中的所有楼层。

  • 面积测量单位参数用于指定“设施点”、“楼层”和“单元”要素类中 AREA_GROSSAREA_NET 字段的单位。

语法

arcpy.indoors.ImportBIMToIndoorDataset(in_bim_floorplan_layer, target_indoor_dataset, ground_floor_name, {building_name}, {room_category_field}, {floors_to_import}, {area_unit_of_measure})
参数说明数据类型
in_bim_floorplan_layer

源 BIM 文件中已添加到当前地图的 Floorplan_Polygon 要素图层。

Feature Layer
target_indoor_dataset

符合 ArcGIS Indoors 信息模型且包含“设施点”、“楼层”、“单元”和“细节”要素类的目标室内数据集。

Feature Dataset
ground_floor_name

建筑物的一楼。楼层的垂直顺序派生自此输入。将向高程小于指定的一楼的任何楼层分配负垂直顺序。

String
building_name
(可选)

分配给输出 Indoors 要素的唯一建筑物名称。默认值为输入 BIM 文件中的 Bldg_Name 字段值。如果该字段为 null 或为空,则使用输入源文件的名称填充此参数。

String
room_category_field
(可选)

Floorplan_Polygon 要素图层中的字段,用于填充目标室内数据集中“单元”要素类的 USE_TYPE 字段。如果未提供任何字段,则使用 Floorplan_Polygon 图层中的 RoomName 字段值。

String
floors_to_import
[floors_to_import,...]
(可选)

输入 BIM文件中要导入目标室内数据集的楼层。如果未提供楼层,则将导入所有楼层。

String
area_unit_of_measure
(可选)

指定设施点、楼层和单元要素类中的面积字段的测量单位。

  • SQUARE_METERS面积以平方米为单位进行定义。
  • SQUARE_FEET面积以平方英尺为单位进行定义。这是默认设置。
String

派生输出

名称说明数据类型
updated_indoor_dataset

更新的目标室内数据集

要素数据集

代码示例

ImportBIMToIndoorDataset 示例 1(Python 窗口)

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

import arcpy
arcpy.indoors.ImportBIMToIndoorDataset(r'C:\ExampleCampus.rvt\Floorplan\Floorplan_Polygon', 
                                        r'C:\Indoors\ExampleCampus.gdb\Indoors',
                                        'LEVEL 01',
                                        'Building_A',
                                        'Category',
                                        ['BASEMENT', 'LEVEL 01', 'LEVEL 02'],
                                        'SQUARE_FEET')
ImportBIMToIndoorDataset 示例 2(独立脚本)

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

# Name: ImportBIMToIndoorDataset_example2.py
# Description: Imports features from a BIM file into the indoor dataset

import arcpy

# Set tool parameters 
in_bim_floorplan_fc = r'C:\ExampleCampus.rvt\Floorplan\Floorplan_Polygon'
arcpy.management.MakeFeatureLayer(in_bim_floorplan_fc, 'in_bim_floorplan_layer')

target_indoor_dataset = r'C:\Indoors\ExampleCampus.gdb\Indoors'
ground_floor_name = 'LEVEL 01'
building_name = 'Building_A'
room_category_field = 'Category'
floors_to_import = ['BASEMENT', 'LEVEL 01', 'LEVEL 02']
area_unit_of_measure = 'SQUARE_FEET'

# Run the tool
arcpy.indoors.ImportBIMToIndoorDataset('in_bim_floorplan_layer', target_indoor_dataset,
                                       ground_floor_name, building_name,
                                       room_category_field, floors_to_import,
                                       area_unit_of_measure)

许可信息

  • Basic: 需要 Indoors
  • Standard: 需要 Indoors
  • Advanced: 需要 Indoors

相关主题