Import Floorplans To Indoors Geodatabase (Indoors)

Available for an ArcGIS organization licensed with the Indoors extension.

Summary

Imports floor plans from CAD files into an indoor dataset that conforms to the ArcGIS Indoors Information Model. The output of this tool can be used to create floor-aware scenes for use in floor-aware apps, as well as to generate an indoor network for routing.

Usage

  • The geodatabase into which floor plan data will be loaded must already exist and contain required Indoors model items.

    You can use this tool to load floor plan data into an indoor dataset (created using the Create Indoor Dataset tool) or an Indoors geodatabase (created using the Create Indoors Database tool).

  • When using an enterprise geodatabase, the connection file must connect directly to the database and the connection must be made as the database owner.

  • Use the DWG or DGN format for the input CAD data.

  • CAD file paths are stored in an Excel spreadsheet. A template file is included with the ArcGIS Pro installation in the Resources\Indoors\MappingFile folder.

    Learn more about mapping fields from floor plans to the geodatabase

  • The Unique ID Delimiter parameter will separate key values in the Indoors model hierarchy. For example, using a period will result in an ID such as ESRI.REDLANDS.OOA. Using an underscore will produce an ID such as ESRI_REDLANDS_OOA.

  • When the Sliver Threshold parameter is used, identified sliver features will be placed in the review geodatabase located in the scratch folder of the ArcGIS Pro project.

  • The Door Close Buffer parameter is used to account for poor CAD topology—for example, line gaps between doors and walls—when the CLOSE_DOORS column is set to Y in the configuration spreadsheet.

    Caution:

    Identify polylines that are to be merged in the OPENINGS column of the CAD Layer to FC Mapping sheet before running the tool with CLOSE_DOORS set to Y.

  • The optional Area Unit of Measure parameter defines the unit of measure used to calculate area fields when importing floor plans. The default is square feet.

  • Z-values for the Levels, Units, Sections, and Zones features are calculated based on the ELEVATION_RELATIVE attribute values in the Level Properties sheet.

  • If data exists in the input geodatabase, the FACILITY_ID and LEVEL_ID attribute values are used to determine the features to replace.

    Learn more about updating Indoors data

Parameters

LabelExplanationData Type
Input Geodatabase

The geodatabase (file or enterprise) into which the floor plan data will be loaded.

Workspace
Input Excel Template File

An Excel spreadsheet (.xls or .xlsx file) that contains input and configuration parameters.

File
Unique ID Delimiter

Specifies the delimiter that will separate key values in the Indoors model hierarchy.

  • Period —The ID will include key values separated by periods. This is default.
  • Hyphen —The ID will include key values separated by hyphens.
  • Underscore —The ID will include key values separated by underscores.
String
Sliver Threshold
(Optional)

The ratio of perimeter to area that defines a sliver polygon. It is used when importing Unit polygons to improve the quality of the imported data. Unit polygons that are determined to be slivers are placed in a review geodatabase located in the scratch folder of the ArcGIS Pro project. The default value is 2.

Long
Door Close Buffer
(Optional)

The distance, in inches, the tool will search from a door to find and snap to the nearest wall. This parameter is used when the CLOSE_DOORS column is set to Y in the input Excel template file. The default value is 0.

Double
Area Unit of Measure
(Optional)

Specifies the unit of measure that will be used to calculate area for the area fields when importing floor plans.

  • Square Feet —Area will be defined in square feet. This is default.
  • Square Meters —Area will be defined in square meters.
String

Derived Output

LabelExplanationData Type
Updated Geodatabase

The updated input geodatabase with the floor plan data loaded.

Workspace

arcpy.indoors.ImportFloorplansToIndoorsGDB(in_geodatabase, in_excel_template, uniqueid_delimiter, {sliver_threshold}, {door_close_buffer}, {area_unit_of_measure})
NameExplanationData Type
in_geodatabase

The geodatabase (file or enterprise) into which the floor plan data will be loaded.

Workspace
in_excel_template

An Excel spreadsheet (.xls or .xlsx file) that contains input and configuration parameters.

File
uniqueid_delimiter

Specifies the delimiter that will separate key values in the Indoors model hierarchy.

  • PERIODThe ID will include key values separated by periods. This is default.
  • HYPHENThe ID will include key values separated by hyphens.
  • UNDERSCOREThe ID will include key values separated by underscores.
String
sliver_threshold
(Optional)

The ratio of perimeter to area that defines a sliver polygon. It is used when importing Unit polygons to improve the quality of the imported data. Unit polygons that are determined to be slivers are placed in a review geodatabase located in the scratch folder of the ArcGIS Pro project. The default value is 2.

Long
door_close_buffer
(Optional)

The distance, in inches, the tool will search from a door to find and snap to the nearest wall. This parameter is used when the CLOSE_DOORS column is set to Y in the input Excel template file. The default value is 0.

Double
area_unit_of_measure
(Optional)

Specifies the unit of measure that will be used to calculate area for the area fields when importing floor plans.

  • SQUARE_FEETArea will be defined in square feet. This is default.
  • SQUARE_METERSArea will be defined in square meters.
String

Derived Output

NameExplanationData Type
updated_gdb

The updated input geodatabase with the floor plan data loaded.

Workspace

Code sample

ImportFloorplansToIndoorsGeodatabase example 1 (Python window)

The following Python window script demonstrates how to use the ImportFloorplansToIndoorsGeodatabase function in immediate mode.

import arcpy
arcpy.indoors.ImportFloorplansToIndoorsGDB('C:/Indoors/ExampleCampus.gdb', 
                                           'C:/Indoors/ExampleCampus/Config_ExampleCampus_CAD.xlsx', 
                                           'PERIOD', 2, 0, 'SQUARE_FEET')
ImportFloorplansToIndoorsGeodatabase example 2 (stand-alone script)

The following stand-alone script demonstrates how to use the ImportFloorplansToIndoorsGeodatabase function.

# Name: Indoors_ImportFloorplansToIndoorsGDB_example2.py
# Description: Imports CAD data into an Indoors geodatabase.

import arcpy

# Set geodatabase that is populated with the Indoors Model
in_geodatabase = 'C:/Indoors/ExampleCampus.gdb'

# Spreadsheet that points to CAD files and defines field mapping
in_excel_template = 'C:/Indoors/Config_ExampleCampus_CAD.xlsx'

# Set tool parameters
uniqueid_delimiter = 'PERIOD'
sliver_threshold = 2
door_close_buffer = 0
area_unit_of_measure = 'SQUARE_FEET'

# Run the tool
arcpy.indoors.ImportFloorplansToIndoorsGDB(in_geodatabase, in_excel_template, 
                                           uniqueid_delimiter, sliver_threshold, 
                                           door_close_buffer, area_unit_of_measure)

Environments

Licensing information

  • Basic: No
  • Standard: No
  • Advanced: Requires Indoors

Related topics