Skip To Content

Generate OIS Obstacle Data


Enhances select Obstruction Identification Surface (OIS) features by determining the data necessary to build a skyline profile of point, polyline, or polygon features that may or may not be true obstacles to safe flight approach, adding collections of 3D points representing obstacle cross-sections to those features using JSON.


  • The Input Runway Features parameter must be z-enabled.

  • The Input Runway Features parameter must have a Runway Designator field (RWYDESG, DESIGNATOR_TXT, or RUNWAYDESIGNATORIDENTIFIER).

  • The Input Obstacle Features parameter must be z-enabled and have a type code field (TYPE_CODE) and an elevation value field (ELEV_VAL).

  • Using a multipatch OIS feature class generated by any of the OIS tools, for example FAA13A or FAA18B, is recommended with all defined attributes populated in the Airport schema.

  • Straight runway approaches are assumed and extended to 25000 meters.

  • The Target OIS Features parameter must include the following fields:

    • Name

      The field length must be at least 50,000 characters. A warning appears if the JSON output exceeds the length of the OBSTACLEJSON field.

  • The tool will take each runway feature and find each of the approach surfaces (OIS features with descriptions that include the words Approach or Area 2B) associated with that runway. With each approach surface, the tool will then use the underlying DEM and the Input Obstacle Features parameter to determine the highest elevations and heights of those obstacle features that intersect that approach OIS feature. The resulting 3D points representing the highest-point cross section of each affected obstacle are then created and stored in JSON format and saved in the corresponding approach OIS feature.

  • If the tool is run repeatedly with different Input Obstacle Features, it will append the generated JSON data for each set of obstacles to each affected approach surface feature. Subsequently running the tool with an updated version of given Input Obstacle Features will selectively update the JSON data for those features without affecting the JSON data generated using other Input Obstacle Features.

  • The tool will use a flight path ID field (PATHID) to associate curved approach polylines with specific approach surfaces. This is required if you have Input Flight Path Features value provided.


GenerateOISObstacleData_aviation (in_runway_features, in_dems, in_obstacle_features, target_ois_features, {obstacle_height_field}, {obstacle_height_unit}, {in_flightpath_features})
ParameterExplanationData Type

This is the input runway dataset. The feature class must be z-enabled and contain polylines.

Feature Layer

The DEMs covering the runways and their approach obstruction identification surfaces.

Raster Layer

The input obstacle features that will be analyzed. The feature class must be z-enabled.

Feature Layer

The multipatch features with defined Airport schema. The feature class must be z-enabled.

Feature Layer

The field containing the height of the obstacle feature.


The unit of the obstacle height.


The polyline features that define curved approaches to the specified runways. If unspecified, all input features will be processed as straight approaches.

Feature Layer

Code sample

GenerateOISObstacleData example (stand-alone script)

The following Python window script demonstrates how to use the GenerateOISObstacleData tool.

import arcpy

# set gp environment

# Input RunwayCenterline Feature Class
inRunwayFeatures = r"C:\data\ois.gdb\RunwayCenterlines"

# Input Terrain DEM Raster
inDEMRaster= ["C:\data\ois.gdb\AirportFirstDEM", "C:\data\ois.gdb\AirportSecondDEM"]

# Input Obstacle Feature Class
inOISObstacles = r”C:\data\ois.gdb\Obstacles”

# Input Obstruction Identification Surface Feature Class
targetOISFeatures = r"C:\data\ois.gdb\ObstructionIdSurface"

# Input Curved Approach Feature Class
inCurvedApproachFeatures = r”C:\data\ois.gdb\CurvedApproach”

# Processing GenerateOISObstacleData
arcpy.GenerateOISObstacleData_aviation(inRunwayFeatures, inDEMRaster, inOISObstacles, targetOISFeatures, "ELEV_Val", "Meters", inCurvedApproachFeatures)



Licensing information

  • ArcGIS Desktop Basic: No
  • ArcGIS Desktop Standard: Requires Aviation Airports
  • ArcGIS Desktop Advanced: Requires Aviation Airports

Related topics