Importar BIM a dataset de interiores (Indoors)

Disponible con un portal con licencia con la capacidad Indoors.​

Resumen

Importa entidades de un archivo BIM a un dataset de interiores.

Esta herramienta importa entidades directamente desde un archivo BIM a un dataset de interiores que se ajusta al modelo de información de ArcGIS Indoors. La salida de esta herramienta se puede utilizar para crear mapas 2D y escenas 3D para su uso en aplicaciones que tienen en cuenta las plantas, así como para generar una red de interiores para la generación de rutas.

Uso

  • Los datos BIM de origen se deben georreferenciar antes de ejecutar la herramienta.

    Más información sobre cómo agregar datos BIM a ArcGIS Pro

  • El parámetro Capa de polígono de plano de planta BIM de entrada es la capa de entidades Floorplan_Polygon del dataset Floorplan del archivo BIM de origen.

    • La herramienta utiliza la capa Floorplan_Polygon para construir las entidades Niveles y Unidades.
    • Basándose en el valor del parámetro Capa de polígono de plano de planta BIM de entrada, la herramienta accede a capas adicionales del mismo dataset Floorplan para construir el dataset de interiores. La capa Huella se utiliza para construir las entidades Instalaciones y la capa Floorplan_Polyline se utiliza para construir las entidades Detalles.
  • El valor del parámetro Dataset de interiores de destino debe ser un dataset de interiores que contenga clases de entidad Instalaciones, Niveles, Unidades y Detalles que se ajusten al modelo de información de ArcGIS Indoors.

  • El parámetro Nombre de planta baja determina la planta baja del edificio. El orden vertical, la elevación relativa, el número de nivel y el valor z para cada nivel en el dataset de interiores de destino se derivan de esta entrada. A los niveles con una elevación inferior a la planta baja identificada se les asigna un orden vertical negativo.

    Nota:
    • No es necesario que importe la planta que estableció como la planta baja al dataset de interiores.
    • Solo los niveles habitables se aceptan como entradas para este parámetro.
    • La elevación absoluta de cada nivel del dataset de interiores de destino se deriva de las coordenadas z de las entidades de planta del archivo BIM de origen. Esto se utiliza para determinar el valor del campo ABSOLUTE_ELEVATION para las entidades Niveles, Unidades y Detalles. El valor del campo ABSOLUTE_ELEVATION de las entidades Instalaciones se establece en función del valor absoluto de la entidad de planta proporcionada para el parámetro Nombre de planta baja.

  • El parámetro Nombre del edificio se utiliza para rellenar los campos FACILITY_ID y NAME de las entidades Instalaciones del dataset de interiores. Si la herramienta se ejecuta con un valor no especificado para el parámetro Nombre del edificio, los campos FACILITY_ID y NAME se rellenan con el valor del campo Bldg_Name de la capa Huella en el archivo BIM de origen. Si el campo Bldg_Name es nulo o está vacío, los campos se rellenan con el nombre del archivo BIM de origen.

  • Si existen datos en el dataset de interiores, los nombres Instalación y Nivel del archivo BIM de origen se comparan con los nombres Instalación y Nivel del dataset de interiores para determinar las entidades que se van a reemplazar. Si el valor del parámetro Nombre del edificio coincide con el valor del campo NAME de una entidad Instalaciones, la instalación se sustituye. Si el valor del campo BldgLevel para una entidad de niveles en el archivo BIM de origen coincide con el valor del campo NAME para una entidad Niveles en el dataset de interiores, se reemplazan la entidad Nivel y las entidades Detalles y Unidades asociadas.

    Nota:

    Si el valor del parámetro Nombre del edificio no coincide con el campo NAME de la capa Instalaciones del dataset de interiores, las entidades del archivo BIM de origen se importan como parte de una nueva instalación con el valor especificado para Nombre del edificio.

  • El parámetro Campo de categoría de sala define el campo de la capa de entidades Floorplan_Polygon que se utiliza para rellenar el campo USE_TYPE de la clase de entidad Unidades en el dataset de destino. Si no se proporciona ningún campo, se utiliza el valor del campo RoomName de la capa Floorplan_Polygon.

  • El parámetro Plantas a importar define las plantas del archivo BIM de entrada que se importan. Si las plantas seleccionadas existen en el dataset de destino, se actualizan, junto con cualquier entidad Detalles y Unidades asociadas. Si no se proporcionan plantas, todas las plantas del archivo BIM se importan y actualizan.

  • El parámetro Unidad de medida de área le permite especificar las unidades utilizadas para los campos AREA_GROSS y AREA_NET en las clases de entidad Instalaciones, Niveles y Unidades.

Sintaxis

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})
ParámetroExplicaciónTipo de datos
in_bim_floorplan_layer

La capa de entidades Floorplan_Polygon del archivo BIM de origen que se ha agregado al mapa actual.

Feature Layer
target_indoor_dataset

El dataset de interiores de destino que se ajusta al modelo de información de ArcGIS Indoors y contiene clases de entidad Instalaciones, Niveles, Unidades y Detalles.

Feature Dataset
ground_floor_name

La planta baja del edificio. El orden vertical de los niveles se deriva de esta entrada. A los niveles con una elevación inferior a la planta baja especificada se les asigna un orden vertical negativo.

String
building_name
(Opcional)

El nombre de edificio único asignado a las entidades de Indoors de salida. El valor predeterminado es el valor del campo Bldg_Name del archivo BIM de entrada. Si el campo es nulo o está vacío, este parámetro se rellena con el nombre del archivo de origen de entrada.

String
room_category_field
(Opcional)

El campo de la capa de entidades Floorplan_Polygon que se utiliza para rellenar el campo USE_TYPE para la clase de entidad Unidades en el dataset de interiores de destino. Si no se proporciona ningún campo, se utiliza el valor del campo RoomName de la capa Floorplan_Polygon.

String
floors_to_import
[floors_to_import,...]
(Opcional)

Las plantas del archivo BIM de entrada que se importan al dataset de interiores de destino. Si no se proporcionan plantas, se importan todas las plantas.

String
area_unit_of_measure
(Opcional)

Especifica la unidad de medida utilizada para los campos de área en las clases de entidad Instalaciones, Niveles y Unidades.

  • SQUARE_METERSEl área se define en metros cuadrados.
  • SQUARE_FEETEl área se define en pies cuadrados. Esta es la opción predeterminada.
String

Salida derivada

NombreExplicaciónTipo de datos
updated_indoor_dataset

El Dataset de interiores de destino actualizado.

Dataset de entidades

Muestra de código

Ejemplo 1 de ImportBIMToIndoorDataset (ventana de Python)

El siguiente script de la ventana de Python demuestra cómo utilizar la función ImportBIMToIndoorDataset en modo inmediato.

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')
Ejemplo 2 de ImportBIMToIndoorDataset (script independiente)

El siguiente script independiente muestra cómo utilizar la función 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)

Información de licenciamiento

  • Basic: Requiere Indoors
  • Standard: Requiere Indoors
  • Advanced: Requiere Indoors

Temas relacionados