FAA 18B (Aviation)

Available with Aviation Airports license.

Available with Aviation Charting license.

Summary

Creates obstruction identification surfaces (OIS) based on the FAA Advisory Circular 150/5300-18B specification. These OIS assist in the identification of possible hazards to air navigation and critical approach/departure obstructions within the vicinity of the airport and are used to support planning and design activities. The type, function, and dimension of a surface differ by its runway classification. This tool creates surfaces such as a polygon or multipatch features

Usage

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

  • When Runway Classification is set to Vertical Guidance, the output transitional surface will be split into four sections by a line perpendicular to the runway centerline.

  • When Runway Classification is set to Vertical Guidance, the output conical and horizontal surfaces will be split into sections by a meridian and a parallel. The meridian intersects the Airport Elevation Point and the centerpoint of the runway centerline. The parallel runs perpendicular to the meridian through the centerpoint of the runway centerline.

    Note:

    In the absence of Airport Control Point Feature Class parameter values, the split will be based on the runway endpoint and runway centerpoint. The split will then draw a line from the runway endpoint and runway centerpoint and form a line parallel and perpendicular to the runway centerline.

  • This tool creates the OIS in an existing polygon or multipatch feature class. It can also be generated in an existing polygon shapefile. If a feature class is selected for Target OIS Features, it must have a vertical spatial reference.

  • To create a JSON file for Custom JSON File, use the CustomizeOIS.exe file that is part of the ArcGIS Aviation data package available from My Esri.

  • The Airport Elevation parameter has a default value of 0. If you use an elevation value greater than 0, it takes precedence and overrides any existing airport elevation value read from the Input Airport Control Point Feature parameter.

  • The Input Airport Control Point Feature parameter can be used to supply x-, y-, and z-geometry for an Airport Elevation parameter, displaced threshold point features, or both. If displaced threshold points are included, surfaces will be constructed based on their x-, y-, and z-geometry instead of their corresponding Input Runway Feature parameter endpoint.

  • 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.

Syntax

arcpy.aviation.FAA18B(in_features, target, runway_type, {highend_clear_way_length}, {lowend_clear_way_length}, {airport_elevation}, {include_merged_surface}, {custom_json_file}, {airport_control_point_feature_class})
ParameterExplanationData 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 obstruction identification surfaces.

Feature Layer
runway_type

Specifies the runway classification of in_features.

  • NON_VERTICAL_GUIDANCE_TYPE_1A runway designed for visual maneuvers, nonvertically guided operations, and instrument departure procedures.
  • NON_VERTICAL_GUIDANCE_TYPE_2A specially prepared hard surface (SPHS) runway designed for visual maneuvers, nonvertically guided operations, and instrument departure procedures. SPHS runways have a primary surface that extends 200 feet beyond each end of the runway.
  • VERTICAL_GUIDANCEA runway that uses precision guidance systems to support aircraft approach and landing.
String
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
airport_elevation
(Optional)

The highest elevation on any of the runways of the airport. The value should be given in the vertical coordinate system linear units of the target feature class. If no value is given, the highest point on the Input Runway Features will be used.

Double
include_merged_surface
(Optional)

Indicates whether merged horizontal and conical surfaces are included in the OIS in addition to the regular surfaces.

  • INCLUDE_MERGED_SURFACE Include merged surfaces in the OIS output. This is the default.
  • NOT_INCLUDE_MERGED_SURFACE Do not include merged surfaces in the OIS output.
Boolean
custom_json_file
(Optional)

The import configuration, in JSON format, that creates the custom OIS.

File
airport_control_point_feature_class
(Optional)

The point features containing an Airport Elevation feature, displaced threshold features, or both. Values provided in the Airport Elevation parameter will take precedence over these point features.

Feature Layer

Derived Output

NameExplanationData Type
derived_outfeatureclass

The updated feature class containing the generated obstruction identification surfaces.

Feature Layer

Code sample

FAA18B example 1 (stand-alone script)

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

import arcpy

# set gp environment
arcpy.CheckOutExtension("Aeronautical")

# Input Runway Feature Class
inFeatures = r"C:\data\ois.gdb\RunwayCenterline"

# Feature class that will contain the OIS surface
outFeatures= r"C:\data\ois.gdb\ObstructionIdSurface"

# Airport variables
runway = "VERTICAL_GUIDANCE"
airportElev = 100

# Generate FAA18B OIS
arcpy.FAA18B_aviation(inFeatures,outFeatures, runway, 10, 0, airportElev,
                      "INCLUDE_MERGED_SURFACE")

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

The following Python window script demonstrates how to use the FAA18B tool with the Custom JSON File parameter.

import arcpy

# set gp environment
arcpy.CheckOutExtension("Aeronautical")

# Input Runway Feature Class
inFeatures = r"C:\data\ois.gdb\RunwayCenterline"

# Feature class that will contain the OIS surface
outFeatures= r"C:\data\ois.gdb\ObstructionIdSurface"

# Airport variables
runway = "VERTICAL_GUIDANCE"
airportElev = 100
customJSON = r"C:\data\customOIS.json"

# Generate FAA18B OIS
arcpy.FAA18B_aviation(inFeatures,outFeatures, runway, 10, 0, airportElev,
                      "INCLUDE_MERGED_SURFACE", customJSON)

arcpy.CheckInExtension("Aeronautical")
FAA18B example 3 (stand-alone script)

The following Python window script demonstrates how to use the FAA18B tool with the airport_control_point_feature_class parameter.

import arcpy

# set gp environment
arcpy.CheckOutExtension("Aeronautical")

# Input Runway Feature Class
inFeatures = r"C:\data\ois.gdb\RunwayCenterline"

# Feature class that will contain the OIS surface
outFeatures= r"C:\data\ois.gdb\ObstructionIdSurface"

# Airport variables
runway = "VERTICAL_GUIDANCE"
airportElev = 0
customJSON = r"C:\data\customOIS.json"

# Feature class that will contain the Airport Elevation feature
inACPFeatures= r"C:\data\ois.gdb\AirportControlPoint"

# Generate FAA18B OIS
arcpy.FAA18B_aviation(inFeatures,outFeatures, runway, 10, 0, airportElev,
                      "INCLUDE_MERGED_SURFACE", customJSON, inACPFeatures)

arcpy.CheckInExtension("Aeronautical")

Environments

Licensing information

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