ICAO Annex 15 (Aviation)

Available with Aviation Airports license.

Available with Aviation Charting license.

Summary

Creates obstruction identification surfaces (OIS) based on the ICAO Annex 15 specification (Areas 2a, 2b, and 2c). These surfaces assist in determining the height restriction or removal of obstacles that pose a hazard to air navigation in and around an aerodrome. This tool creates surfaces as a polygon or multipatch features.

Usage

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

  • This tool creates the OIS in an existing polygon or multipatch feature class. The OIS can also be generated as a new polygon shapefile. If a feature class is used as the Target OIS Features parameter value, it must include a vertical spatial reference.

  • To create a .json file for the Custom JSON File parameter, use the CustomizeOIS.exe utility included in the Aviation Airports Product Data download available from My Esri.

  • OIS tools are flexible and accept a variety of input and output feature class types. For more information, see the OIS Input and Output schemas.

  • The Input Airport Control Point Feature parameter can be used to supply x-, y-, and z-geometry for displaced threshold features. If displaced thresholds are included, surfaces will be constructed based on their x-, y-, and z-geometry instead of their corresponding runway feature endpoint.

  • High Runway End refers to runway direction identifiers 19 through 36. Low Runway End refers to runway direction identifiers 01 through 18.

Parameters

LabelExplanationData Type
Input Runway Features

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

Feature Layer
Target OIS Features

The target feature class that will contain the generated OIS.

Feature Layer
Length of High Runway End Clearway
(Optional)

The length of the area at the high end of the runway. The unit of measurement is based on the input runway features.

Double
Length of Low Runway End Clearway
(Optional)

The length of the area at the low end of the runway. The unit of measurement is based on the input runway features.

Double
Custom JSON File
(Optional)

The import configuration, in JSON format, that will be used to create the custom OIS.

File
Input Airport Control Point Feature
(Optional)

Supplies x-, y-, and z-geometry for displaced threshold features. If displaced thresholds are included, surfaces will be constructed based on their x-, y-, and z-geometry instead of their corresponding runway feature endpoint.

Feature Layer

Derived Output

LabelExplanationData Type
Output OIS Features

The updated feature class containing the generated OIS.

Feature Layer

arcpy.aviation.ICAOAnnex15(in_features, target, {highend_clear_way_length}, {lowend_clear_way_length}, {custom_json_file}, {airport_control_point_feature_class})
NameExplanationData Type
in_features

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

Feature Layer
target

The target feature class that will contain the generated OIS.

Feature Layer
highend_clear_way_length
(Optional)

The length of the area at the high end of the runway. The unit of measurement is based on the input runway features.

Double
lowend_clear_way_length
(Optional)

The length of the area at the low end of the runway. The unit of measurement is based on the input runway features.

Double
custom_json_file
(Optional)

The import configuration, in JSON format, that will be used to create the custom OIS.

File
airport_control_point_feature_class
(Optional)

Supplies x-, y-, and z-geometry for displaced threshold features. If displaced thresholds are included, surfaces will be constructed based on their x-, y-, and z-geometry instead of their corresponding runway feature endpoint.

Feature Layer

Derived Output

NameExplanationData Type
derived_outfeatureclass

The updated feature class containing the generated OIS.

Feature Layer

Code sample

ICAOAnnex15 example 1 (stand-alone script)

The following Python window script demonstrates how to use the ICAOAnnex15 function.

import arcpy

# set gp environment
arcpy.env.workspace = "c:/data/ois.gdb"
arcpy.CheckOutExtension("Aeronautical")

# Input Runway Feature Class
inFeatures = "RunwayCenterline"

# feature class that will contain the OIS surface
outFeatureClass = "ObstructionIdSurface"

# exec ICAOAnnex15
arcpy.ICAOAnnex15_aviation(inFeatures, outFeatureClass, 10, 0)

arcpy.CheckInExtension("Aeronautical")
ICAOAnnex15 example 2 (stand-alone script)

The following Python window script demonstrates how to use the ICAOAnnex15 function with the custom_json_file parameter.

import arcpy

# set gp environment
arcpy.env.workspace = "c:/data/ois.gdb"
arcpy.CheckOutExtension("Aeronautical")

# Input Runway Feature Class
inFeatures = "RunwayCenterline"

# feature class that will contain the OIS surface
outFeatureClass = "ObstructionIdSurface"
customJSON = r"C:\data\customOIS.json"

# exec ICAOAnnex15
arcpy.ICAOAnnex15_aviation(inFeatures, outFeatureClass, 10, 0, customJSON)

arcpy.CheckInExtension("Aeronautical")

Environments

Licensing information

  • Basic: No
  • Standard: Requires Airports or ArcGIS Aviation Charting
  • Advanced: Requires Airports or ArcGIS Aviation Charting