Generate Indoor Pathways (Indoors)

Available with the ArcGIS Indoors Pro or ArcGIS Indoors Maps extension.

Available with 3D Analyst license.

Summary

Generates preliminary pathways that are cut according to obstructions, such as walls or columns, on selected levels in one or more facilities.

Once stair or elevator floor transitions are added, use the Thin Indoor Pathways tool to create the final indoor network dataset.

Illustration

Generate Indoor Pathways tool illustration

Usage

  • The feature layers or feature classes used for the Input Level Features, Input Detail Features, and Restricted Unit Features parameters can be from an indoor dataset (created using the Create Indoor Dataset tool) or an Indoors geodatabase (created using the Create Indoors Database tool). The feature layer or feature class used for the Target PrelimPathways parameter can be from a preliminary indoor network dataset (created using the Create Indoor Network Dataset tool) or an Indoors geodatabase.

  • The Input Level Features parameter value must be a feature layer or feature class that conforms to the ArcGIS Indoors Information Model for the Levels feature class.

    • To generate pathways for specific facilities or levels, use the Select Layer by Attribute tool to select the corresponding level features before running the tool.
    • If a feature class or a feature layer that has no features selected is specified, the tool will generate pathways for all features present.

  • The Input Detail Features parameter value must be a feature layer or feature class that conforms to the Indoors model for the Details feature class.

    • If the Input Detail Features parameter value contains polylines representing both barriers (such as walls and windows) and nonbarriers (such as stairs and doorways), use the Detail Expression parameter to identify which features represent barriers. In the Indoors model, values from the USE_TYPE field are typically used.

  • The Target PrelimPathways parameter value must be a feature layer or feature class that conforms to the Indoors model for the PrelimPathways feature class.

    • If the Target PrelimPathways parameter value contains existing pathways for the levels defined by the Input Level Features parameter value, the tool will overwrite the existing pathways.

  • The Lattice Rotation parameter defines the angle the generated lattice of pathways will be rotated from due west.

    • You can use the Lattice Rotation parameter to generate pathways that better align with the input level features' primary direction of travel.
    • If a Lattice Rotation value is not provided, the tool will calculate a rotation value based on the minimum bounding rectangle of each facility's level as defined by the Input Level Features parameter value.

  • The Lattice Density parameter defines the maximum distance between adjacent connected nodes in the lattice of pathways. The parameter value must be between 0.25 and 2.9. The tool uses the unit of measure from the coordinate system of the Indoors dataset.

    • You can use the Lattice Density parameter to generate a lattice with spacing tight enough to pass through the narrowest doorways in your floor plans.
    • Do not make the lattice denser than necessary. A dense lattice takes longer to generate and requires more disk space.
    • The default value (0.6) works well for most situations if the coordinate system of the Indoors dataset is in meters. If the Indoors dataset uses a coordinate system with a unit of measurement other than meters, you may want to change the default Lattice Density parameter value. For example, if the Indoors dataset uses a state plane coordinate system in feet, change the default value from 0.6 to 1.9. You can experiment with a single floor to find an optimal lattice density for your floor plans.

  • The Restricted Unit Features parameter value must be a feature layer or feature class that conforms to the Indoors model for the Units feature class.

    • You can use the Restricted Unit Features parameter to define areas of a floor plan where pathways should not be generated, such as interior landscaping, maintenance access, or atrium spaces that are open to the floor below.
    • If the Restricted Unit Features parameter value contains polygons representing both restricted and unrestricted spaces, use the Restricted Unit Expression parameter to identify which features represent restricted spaces. In the Indoors model, values from the USE_TYPE field are typically used.

Parameters

LabelExplanationData Type
Input Level Features

The input polygon features representing levels in facilities. In the Indoors model, this is the Levels layer. The tool honors selections and definition queries applied to the layer.

Feature Layer
Input Detail Features

The input polyline features representing architectural details that can serve as barriers to travel within a facility. In the Indoors model, this is the Details layer.

If the input polyline layer contains feature representing both barriers (such as walls and windows) and nonbarriers (such as stairs and doorways), use the Detail Expression parameter to identify which features represent barriers.

Feature Layer
Target PrelimPathways

The feature class or feature layer to which generated pathway polylines will be written. In the Indoors model, this is the PrelimPathways layer.

Feature Layer
Lattice Rotation
(Optional)

The number of degrees by which the input floors' primary travel direction is rotated clockwise from due west. If left blank, the tool will calculate a value based on the minimum bounding rectangle of each floor.

The value must be between 0.0 and 180.0.

Double
Lattice Density
(Optional)

The longest distance allowed between nodes in the generated lattice of pathways. The tool uses the unit of measure from the coordinate system of the Indoors dataset. The default value is 0.6.

The value must be between 0.25 and 2.9.

Double
Restricted Unit Features
(Optional)

The input polygon features representing restricted and unrestricted spaces within a facility. In the Indoors model, this is the Units layer.

Feature Layer
Restricted Unit Expression
(Optional)

An SQL expression that will be used to select the Restricted Unit Features parameter values where the tool will not generate pathways.

SQL Expression
Detail Expression
(Optional)

An SQL expression used to select the Input Detail Features parameter values across which the tool will not generate pathways.

SQL Expression

Derived Output

LabelExplanationData Type
Updated Pathways

The updated Target Pathways layer.

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})
NameExplanationData Type
in_level_features

The input polygon features representing levels in facilities. In the Indoors model, this is the Levels layer. The tool honors selections and definition queries applied to the layer.

Feature Layer
in_detail_features

The input polyline features representing architectural details that can serve as barriers to travel within a facility. In the Indoors model, this is the Details layer.

If the input polyline layer contains feature representing both barriers (such as walls and windows) and nonbarriers (such as stairs and doorways), use the detail_exp parameter to identify which features represent barriers.

Feature Layer
target_pathways

The feature class or feature layer to which generated pathway polylines will be written. In the Indoors model, this is the PrelimPathways layer.

Feature Layer
lattice_rotation
(Optional)

The number of degrees by which the input floors' primary travel direction is rotated clockwise from due west. If left blank, the tool will calculate a value based on the minimum bounding rectangle of each floor.

The value must be between 0.0 and 180.0.

Double
lattice_density
(Optional)

The longest distance allowed between nodes in the generated lattice of pathways. The tool uses the unit of measure from the coordinate system of the Indoors dataset. The default value is 0.6.

The value must be between 0.25 and 2.9.

Double
restricted_unit_features
(Optional)

The input polygon features representing restricted and unrestricted spaces within a facility. In the Indoors model, this is the Units layer.

Feature Layer
restricted_unit_exp
(Optional)

An SQL expression that will be used to select the restricted_unit_features parameter values where the tool will not generate pathways.

SQL Expression
detail_exp
(Optional)

An SQL expression used to select the in_detail_features parameter values across which the tool will not generate pathways.

SQL Expression

Derived Output

NameExplanationData Type
updated_pathways

The updated Target Pathways layer.

Feature Class

Code sample

GenerateIndoorPathways example (Python window)

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

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 example 2 (stand-alone script)

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

# 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)

Environments

This tool does not use any geoprocessing environments.

Licensing information

  • Basic: No
  • Standard: No
  • Advanced: Requires ArcGIS Indoors Pro or ArcGIS Indoors Maps and 3D Analyst

Related topics