从 IFC 文件导入楼层平面图

适用于 ArcGIS Indoors Pro 或 ArcGIS Indoors Maps 扩展模块。

IFC(工业基础类)格式通常用于 2D 和 3D 建筑模型,也可用于在 Indoors 工作空间中创建要素。 将 IFC 导入室内数据集工具可将要素从 .ifc 文件导入符合 ArcGIS Indoors 信息模型的室内工作空间。

创建室内工作空间后,可以使用将 IFC 导入室内数据集工具将 .ifc 文件中的楼层平面图加载到 Indoors 工作空间中。 然后,您可以手动加载附加要素事件占用者数据。

如果使用创建室内 3D 数据集工具创建了 3D 室内数据集,则可以选择将 3D 对象从 .ifc 文件加载到室内 3D 数据集中。

导入工作流涉及以下高级步骤:

  1. 对楼层平面图进行地理配准。
  2. (可选)运行提取 BIM 文件楼层平面图工具。
  3. 运行将 IFC 导入室内数据集工具。
  4. 检查输出。
  5. 以下部分会对每个步骤进行描述。

对楼层平面图进行地理配准

准确地对楼层平面图进行地理配准非常重要,因为缩放或地理位置错误会导致对室内要素的位置的计算错误。 将 BIM 数据导入室内数据集之前,必须对 BIM 文件进行地理配准

注:

在运行该工具之前,必须在 3D 中对 BIM 文件进行地理配准并具有关联的 .prj.wld3 文件。 如果您将链接的 Revit 模型与主机 Revit 模型一起导入,请确保所有链接 Revit 模型均已准确地理配准,并且具有与主机 Revit 模型相同的坐标系。

了解有关在 ArcGIS Pro 中对 BIM 文件进行地理配准的详细信息

运行“提取 BIM 文件楼层平面图”工具

在运行将 IFC 导入室内数据集工具之前,可以选择性地运行提取 BIM 文件楼层平面图工具来创建包含 2D 楼层平面图要素的楼层平面图要素类。 如果您先运行此工具,则可以将生成的楼层平面图图层用作将 IFC 导入到室内数据集工具的输入。 下面是创建这些图层的益处:

  • 您可以在填充 Indoors 模型之前检查 2D 要素,确保按预期建模。
  • 可以为模型中的一部分楼层创建 2D 要素,仅使用这些楼层填充 Indoors 模型。 位于楼层平面图图层中的要素仅在作为将 IFC 导入到室内数据集工具的输入提供时才很重要。
  • 可以将楼层平面图图层添加到地图并选择要添加到 Indoors 模型的部分要素。 支持在输入楼层平面图图层上进行选择。
警告:

确保在运行提取 BIM 文件楼层平面图工具之前对 .ifc 文件进行地理配准。 用作将 IFC 导入到室内数据集工具的输入的任何楼层平面图视图必须具有与 .ifc 文件相同的空间参考。

运行“将 IFC 导入室内数据集”工具

在对 BIM 数据进行地理配准并根据需要创建楼层平面图要素类后,运行将 IFC 导入室内数据集工具以将 IFC 楼层平面图导入 Indoors 模型。

导入 2D 数据

该工具根据下表从 IFC 类别中的对象创建 Indoors 模型要素类中的要素:

IFC 类别Indoors 模型要素类

所有楼板的全图

Facilities

楼板和屋顶(可选)

Levels

空间

注:

该工具不会将区域空间导入为单元。

Units

门、柱、墙壁、坡道、楼梯、窗户、幕墙、结构柱

详细信息

运行将 IFC 导入到室内数据集工具时,默认情况下,系统会将后文表格中的字段填充到 Indoors 工作空间中。 可以使用单元属性映射参数将更多属性从 Spaces 图层映射到 Units 图层中的现有字段。 如果要将属性映射到 Units 图层中的自定义字段,则必须在运行该工具之前创建自定义字段。

Facilities

字段描述

FACILITY_ID

已填充 GUID。

NAME

根据将 IFC 导入室内数据集工具中提供的设施点名称参数值填充。

Levels

字段描述

LEVEL_ID

已填充 GUID。

NAME

使用源 .ifc 文件中可占用级别的名称填充。

LEVEL_NUMBER

对于一楼,该字段已填充 1。 将向二楼及以上楼层分配连续的正楼层编号字段值。 将向负一层及以下楼层分配连续的负楼层编号。

VERTICAL_ORDER

对于一楼,该字段填充为 0。 还根据其他级别与选定底层的关系来计算其他级别。 将向高程小于标识的底层的任何级别分配负垂直顺序。

默认在楼层感知型地图中显示垂直顺序为 0 的楼层。

NAME_SHORT

定义要素的短名称。 对于一楼,该字段已填充 1。 将向二楼及以上楼层分配连续的正名称缩写。 将向负一层及以下楼层分配连续的负名称缩写。

AREA_GROSS

已根据楼层几何进行计算。 测量单位取决于目标图层的水平坐标系。

FACILITY_ID

已填充与 Facilities 图层中的 FACILITY_ID 字段相同的 GUID。

Units

字段描述

UNIT_ID

已填充 GUID。

USE_TYPE

默认已填充空间要素中的 LongName 字段值。 可以使用单元属性映射参数更改要将空间要素中的哪个字段映射到此字段。

NAME

默认已填充空间要素的 NAME 字段值。 可以使用单元属性映射参数更改要将空间要素中的哪个字段映射到此字段。

LEVEL_ID

使用关联级别的 LEVEL_ID 字段值填充该字段。

AREA_GROSS

已根据单元几何进行计算。 测量单位取决于目标图层的水平坐标系。

ASSIGNMENT_TYPE

设置为无(默认)。 您可以为导入后不可分配的单元更新此设置。

详细信息

字段描述

DETAIL_ID

已填充 GUID。

USE_TYPE

已填充 IFC 类别。

LEVEL_ID

使用关联级别的 LEVEL_ID 字段值填充该字段。

导入 3D 数据

可以使用 3D 要素部分中的参数将要素导入使用创建室内 3D 数据集工具创建的 Units3D、Details3D 或 Facilities3D 多面体图层。

警告:

确保对 BIM 数据进行了精确地理配准,并确保室内数据集和室内 3D 数据集的坐标系与关联的 .wld3 文件中的坐标系相匹配。 水平和垂直坐标系单位必须匹配,并且任何链接的 Revit 模型必须具有与主 Revit 模型相同的水平和垂直坐标系。 地理配准不精确或者坐标系不匹配可能会导致 3D 要素的缩放问题。

该工具根据 IFC 数据在 Indoors 3D 数据集中创建多面体要素,如下表所示:

IFC 数据Indoors 3D 要素类

ExteriorShell - 代表建筑物外墙的单个要素。 ExteriorShell 要素类是根据 BIM 文件中定义为外墙要素的元素在 ArcGIS Pro 的 BIM 文件工作空间中创建的。

Facilities3D

空间 - IFC 文件中空间对象的覆盖区用于生成 3D 单元要素。

Units3D

IFC 类别 - 门、柱、墙壁、坡道、楼梯、窗户、幕墙、结构柱

Details3D

如果您运行该工具,但不包含目标 Facility 3D 要素目标 Unit 3D 要素目标 Details 3D 要素参数的值,则可以重新运行该工具以将 3D 数据添加到 Indoors 模型。

如果您在运行该工具时使用目标 Unit 3D 要素目标 Detail 3D 要素参数,下表中的字段将填充到 Indoors 3D 数据集中。 如果 Units 和 Units3D 要素类中都存在相同字段,可以使用单元属性映射参数将其他属性从 Spaces 图层映射到 Units 要素类中的字段。

Facilities3D

字段描述

FACILITY_ID

已填充 Facilities 图层中 FACILITY_ID 字段的 GUID。

NAME

已使用将 IFC 导入室内数据集工具中为设施点名称参数输入的值填充。

Units3D

字段描述

UNIT_ID

已填充相应 2D 单元要素的 UNIT_ID 字段值。

USE_TYPE

默认情况下,已填充源 .ifc 文件中 Spaces 图层的 LongName 字段值。 如果在 Units 和 Units3D 图层中存在相同字段,可以使用单元属性映射参数更改要将空间要素中的哪个字段映射到此字段。

NAME

默认情况下,已填充源 .ifc 文件中 Spaces 图层的 LongName 字段值。 如果在 Units 和 Units3D 图层中存在相同字段,可以使用单元属性映射参数更改要将空间要素中的哪个字段映射到此字段。

LEVEL_ID

使用关联级别的 LEVEL_ID 字段值填充该字段。

AREA_GROSS

已根据单元几何进行计算。 测量单位取决于目标图层的水平坐标系。

SOURCE_ID

已填充源 .ifc 文件中 Spaces 图层的 GlobalId 字段值。

Details3D

字段描述

DETAIL_ID

已填充相应 2D 单元要素的 DETAIL_ID 字段值。

USE_TYPE

已填充 IFC 类别中源对象的类别值。

LEVEL_ID

使用关联级别的 LEVEL_ID 字段值填充该字段。

SOURCE_ID

已填充 .ifc 文件中源对象的 GlobalId 值。

检查输出

检查将 BIM 导入室内数据集工具在室内数据集中创建的输出要素。

要检查输出要素,请完成以下步骤:

  1. 地图选项卡的图层组中,单击添加数据按钮 添加数据,然后将室内数据集中的 Facilities、Levels、Units 和 Details 图层添加到加载 IFC 楼层平面图的地图中。
    注:

    要在设施点中的楼层之间进行切换,可以通过将地图配置为楼层感知型地图来启用楼层过滤器。

  2. 验证所有预期要素是否在室内数据集中显示。

    可通过以下解决方案对问题进行故障排除:

    问题解决方案

    设施点和级别要素中的错误或间隙

    如果楼板未延伸穿过整个楼层,则设施点和楼层要素中可能出现间隙。 这通常会出现在存在楼梯或电梯等过渡的位置。 间隙可能在生成室内可路由网络时导致问题。 在源 .ifc 文件中修改楼板要素或使用 ArcGIS Pro 中的编辑工具,确保楼层和设施点要素以适当的方式限制单元要素。

    细节和单元要素中的错误或间隙

    当要素与楼板不相关时,细节和单元要素可能会出现间隙。 确保细节和单元与源模型中的楼板相关联,然后再次运行该工具。

  3. 如果您已将楼层平面图数据导入使用创建 Indoors 数据库工具创建的 Indoors 工作空间,请查看 Units 要素类中空间要素的 USE_TYPE 值,以标识不应通过 Indoor Space Planner 应用程序直接分配给占用者的空间。将这些空间的 ASSIGNMENT_TYPE 值设置为不可分配

    以下是空间类型的示例,这些空间类型通常不可以分配给占用者,也不能用于定义办公桌轮用制办公或旅馆式办公区域:

    • 大厅
    • 循环区域
    • 公共区域
    • 卫生间
    • 休息室

  4. 保存地图。
  5. 如果导入 3D 数据,可通过执行以下操作检查每层楼的数据:
    1. 插入选项卡上,单击新建地图下拉箭头,然后选择新建局部场景
    2. 单击添加数据按钮 添加数据,然后添加来自室内 3D 数据集的 Units 3D 和 Details 3D,以及来自室内数据集的 Levels 图层。
    3. 将场景配置为楼层感知,并使用楼层过滤器检查每个楼层的数据。

将楼层平面图加载到室内数据集或 Indoors 地理数据库后,您可以加载其他要素事件占用者数据。

相关主题