Aggregate Obstacles (Aviation)

Available with Aviation Charting license.

Summary

Aggregates point obstacle features within a given radius so that the highest obstacle in the group represents the entire group.

This tool groups cartographic representations of obstacle data on dense or crowded charts. Instead of being displayed individually, obstacle data will be represented as groups of obstacles based on the location of the highest obstacle in each group.

Usage

  • The tool uses the geometry and attribution of the obstacle at the highest Above Mean Sea Level (AMSL) elevation to represent all obstacles within a search radius of that obstacle.

  • Obstacles are considered for grouping if they are as tall or taller (height above ground level) than the provided height threshold (or the built-up area height threshold if inside a built-up area polygon).

  • For the Obstacle Features parameter value, you can use the Obstacle or the ObstaclePoint feature class in the AIS model.

  • Use the Obstacle Grouping Type parameter to output to a point feature class or to a polygon feature class. Either grouping type will represent all input obstacle features in the output features.

    If the parameter is set to To point, each obstacle group feature will represent one or more obstacles from the input obstacle features.

    If the parameter is set to To polygon, generalized polygons will be created to encompass the extent of two or more input obstacle features.

    If a potential output polygon is smaller than the input Minimum Polygon Area parameter value, a point obstacle group feature will be output instead.

  • Use the AIS feature class, ObstacleGroup, for the Target Obstacle Group Features parameter. The following fields are populated by the tool:

    • ClientKey_Id—The GFID value of the highest obstacle in the group.
    • Height1_Val—The above ground height of the highest obstacle in the group.
    • Elevation_Val—The elevation of the highest obstacle in the group, calculated according to the Elevation Interpretation parameter value.
    • SearchRadius_Val—The Search Radius parameter value.
    • Label_Txt—The Target Obstacle Group Label parameter value.
    • Group_Code—Set to Yes if the group is composed of more than one obstacle; otherwise, set to No.
    • Count_Val—The number of features in Obstacle Features parameter value.
  • Use the AIS feature class, ObstacleGroupArea, for the Target Obstacle Polygon Group Features parameter. The following fields are populated by the tool:

    • ClientKey_Id—The GFID value of the highest obstacle in the group.
    • Height1_Val—The above ground height of the highest obstacle in the group.
    • Elevation_Val—The elevation of the highest obstacle in the group, calculated according to the Elevation Interpretation parameter value.
    • SearchRadius_Val—The Search Radius parameter value.
    • Label_Txt—The Target Obstacle Group Label parameter value.
  • The AIS table, ObstacleAssociation, will be populated by the tool to link input obstacle features with their ObstacleGroup or ObstacleGroupArea features.

    Note:

    The Built-Up Areas polygon feature class is not included in the AIS charting data model.

Parameters

LabelExplanationData Type
Obstacle Features

The input obstacle features.

Feature Layer
Height Field

The field containing the height of the obstacle features.

String
Height Field Units

Specifies the units that will be used for obstacle height.

  • MetersThe obstacle height will be in meters.
  • DecimetersThe obstacle height will be in decimeters.
  • CentimetersThe obstacle height will be in centimeters.
  • MillimetersThe obstacle height will be in millimeters.
  • YardsThe obstacle height will be in yards.
  • FeetThe obstacle height will be in feet. This is the default.
  • InchesThe obstacle height will be in inches.
String
Elevation Field

The field containing the elevation of the obstacle features.

String
Elevation Field Units

Specifies the units that will be used for obstacle elevation.

  • MetersThe obstacle elevation will be in meters.
  • DecimetersThe obstacle elevation will be in decimeters.
  • CentimetersThe obstacle elevation will be in centimeters.
  • MillimetersThe obstacle elevation will be in millimeters.
  • YardsThe obstacle elevation will be in yards.
  • FeetThe obstacle elevation will be in feet. This is the default.
  • InchesThe obstacle elevation will be in inches.
String
Elevation Interpretation

Specifies how obstacle elevations will be measured.

  • On the GroundThe height value will be added to the elevation value to determine the elevation of the top of the obstacle. Specify this option when the Elevation Field parameter value contains values representing the elevation (AMSL) of the base of the obstacle.
  • Above the GroundSpecify this option when the Elevation Field parameter value contains values representing the elevation (AMSL) of the top of the obstacle. This is the default.
String
Target Obstacle Group Features

The output feature class where aggregated obstacle features will be written.

Feature Layer
Target Obstacle Group Label

The text describing the obstacle grouping. The text is used to identify obstacle groups for different chart specifications that may be created using different parameters.

String
Obstacle Association Table

The table that will be populated with information linking each obstacle group feature to the obstacles it represents.

Table View
Search Radius
(Optional)

The radius within which the obstacles will be grouped.

Linear Unit
Height Threshold
(Optional)

The height threshold for an obstacle to be considered for grouping. Obstacles with a height value greater than or equal to this value will be considered.

Linear Unit
Built-Up Areas
(Optional)

Polygon features designating built-up areas. These represent areas where a different height threshold is required.

Feature Layer
Built-Up Areas Height Threshold
(Optional)

The height threshold for an obstacle within a built-up area polygon to be considered for grouping. Obstacles with a height value equal to or greater than this value will be considered.

Linear Unit
Obstacle Grouping Type
(Optional)

Specifies the geometry type of the obstacle groups that will be generated.

  • To pointObstacles will be generated as points. This is the default.
  • To polygonObstacles will be generated as polygons.
String
Target Obstacle Polygon Group Features
(Optional)

The output polygon feature class where aggregated obstacle features will be written.

Feature Layer
Minimum Polygon Area
(Optional)

The minimum area of an output polygon before it collapses to a point feature.

Areal Unit

Derived Output

LabelExplanationData Type
Updated Obstacle Group Features

The updated obstacle group features.

Feature Layer
Updated Obstacle Polygon Group Features

The updated obstacle polygon group features.

Feature Layer
Updated Obstacle Association Rows

The updated obstacle association rows.

Table View

arcpy.aviation.AggregateObstacles(in_obstacle_features, height_field, height_field_units, elevation_field, elevation_field_units, elevation_interpretation, target_obstacle_group_features, target_obstacle_group_label, in_obstacle_assocation_table, {search_radius}, {height_threshold}, {builtup_areas_features}, {builtup_areas_height_threshold}, {obstacle_grouping_type}, {target_obstacle_group_polygon_features}, {minimum_polygon_area})
NameExplanationData Type
in_obstacle_features

The input obstacle features.

Feature Layer
height_field

The field containing the height of the obstacle features.

String
height_field_units

Specifies the units that will be used for obstacle height.

  • METERSThe obstacle height will be in meters.
  • DECIMETERSThe obstacle height will be in decimeters.
  • CENTIMETERSThe obstacle height will be in centimeters.
  • MILLIMETERSThe obstacle height will be in millimeters.
  • YARDSThe obstacle height will be in yards.
  • FEETThe obstacle height will be in feet. This is the default.
  • INCHESThe obstacle height will be in inches.
String
elevation_field

The field containing the elevation of the obstacle features.

String
elevation_field_units

Specifies the units that will be used for obstacle elevation.

  • METERSThe obstacle elevation will be in meters.
  • DECIMETERSThe obstacle elevation will be in decimeters.
  • CENTIMETERSThe obstacle elevation will be in centimeters.
  • MILLIMETERSThe obstacle elevation will be in millimeters.
  • YARDSThe obstacle elevation will be in yards.
  • FEETThe obstacle elevation will be in feet. This is the default.
  • INCHESThe obstacle elevation will be in inches.
String
elevation_interpretation

Specifies how obstacle elevations will be measured.

  • ON_THE_GROUNDThe height value will be added to the elevation value to determine the elevation of the top of the obstacle. Specify this option when the Elevation Field parameter value contains values representing the elevation (AMSL) of the base of the obstacle.
  • ABOVE_THE_GROUNDSpecify this option when the Elevation Field parameter value contains values representing the elevation (AMSL) of the top of the obstacle. This is the default.
String
target_obstacle_group_features

The output feature class where aggregated obstacle features will be written.

Feature Layer
target_obstacle_group_label

The text describing the obstacle grouping. The text is used to identify obstacle groups for different chart specifications that may be created using different parameters.

String
in_obstacle_assocation_table

The table that will be populated with information linking each obstacle group feature to the obstacles it represents.

Table View
search_radius
(Optional)

The radius within which the obstacles will be grouped.

Linear Unit
height_threshold
(Optional)

The height threshold for an obstacle to be considered for grouping. Obstacles with a height value greater than or equal to this value will be considered.

Linear Unit
builtup_areas_features
(Optional)

Polygon features designating built-up areas. These represent areas where a different height threshold is required.

Feature Layer
builtup_areas_height_threshold
(Optional)

The height threshold for an obstacle within a built-up area polygon to be considered for grouping. Obstacles with a height value equal to or greater than this value will be considered.

Linear Unit
obstacle_grouping_type
(Optional)

Specifies the geometry type of the obstacle groups that will be generated.

  • TO_POINTObstacles will be generated as points. This is the default.
  • TO_POLYGONObstacles will be generated as polygons.
String
target_obstacle_group_polygon_features
(Optional)

The output polygon feature class where aggregated obstacle features will be written.

Feature Layer
minimum_polygon_area
(Optional)

The minimum area of an output polygon before it collapses to a point feature.

Areal Unit

Derived Output

NameExplanationData Type
updated_obstacle_group_features

The updated obstacle group features.

Feature Layer
updated_obstacle_polygon_group_features

The updated obstacle polygon group features.

Feature Layer
updated_obstacle_association_rows

The updated obstacle association rows.

Table View

Code sample

AggregateObstacles example 1 (stand-alone script)

The following script demonstrates how to use the AggregateObstacles function to generate point type obstacles.

# Import system modules
import arcpy

# Check out extensions
arcpy.CheckOutExtension("Aeronautical")

# Set environment settings
arcpy.env.workspace = r"C:/data/AIS.gdb"

# Set local variables
in_obstacle_features = "Obstacle"
height_field = "HEIGHT_VAL"
height_field_units = "FEET"
elevation_field = "ELEV_VAL"
elevation_field_units = "FEET"
elevation_interpretation = "ABOVE_THE_GROUND"
target_obstacle_group_features = "ObstacleGroup"
target_obstacle_group_label = "Enroute Series"
in_obstacle_assocation_table = "ObstacleAssociation"
search_radius = "1.5 NauticalMiles"
height_threshold = "100 Feet"
builtup_areas_features = "BuiltUpAreas"
builtup_areas_height_threshold = "300 Feet"
obstacle_grouping_area= "TO_POINT"

# Call the AggregateObstacles tool
arcpy.aviation.AggregateObstacles(in_obstacle_features,\
                                  height_field, height_field_units, elevation_field,\
                                  elevation_field_units, elevation_interpretation,target_obstacle_group_features,\
                                  target_obstacle_group_label,\
                                  in_obstacle_assocation_table, search_radius,\
                                  height_threshold, builtup_areas_features,\
                                  builtup_areas_height_threshold, obstacle_grouping_area
                                   )

# Check in extensions
arcpy.CheckInExtension('Aeronautical')
AggregateObstacles example 2 (stand-alone script)

The following script demonstrates how to use the AggregateObstacles function to generate polygon type obstacles.

# Import system modules
import arcpy

# Check out extensions
arcpy.CheckOutExtension("Aeronautical")

# Set environment settings
arcpy.env.workspace = r"C:/data/AIS.gdb"

# Set local variables
in_obstacle_features = "Obstacle"
height_field = "HEIGHT_VAL"
height_field_units = "FEET"
elevation_field = "ELEV_VAL"
elevation_field_units = "FEET"
elevation_interpretation = "ABOVE_THE_GROUND"
target_obstacle_group_features = "ObstacleGroup"
target_obstacle_group_label = "Enroute Series"
in_obstacle_assocation_table = "ObstacleAssociation"
search_radius = "1.5 NauticalMiles"
height_threshold = "100 Feet"
builtup_areas_features = "BuiltUpAreas"
builtup_areas_height_threshold = "300 Feet"
obstacle_grouping_area= "TO_POLYGON"
target_obstacle_group_polygon_feature= "PolygonGroup"
minimum_polygon_area= "3 SquareMilesUs"
# Call the AggregateObstacles tool
arcpy.aviation.AggregateObstacles(in_obstacle_features,\
                                  height_field, height_field_units, elevation_field,\
                                  elevation_field_units, elevation_interpretation,target_obstacle_group_features,\
                                  target_obstacle_group_label,\
                                  in_obstacle_assocation_table, search_radius,\
                                  height_threshold, builtup_areas_features,\
                                  builtup_areas_height_threshold, obstacle_grouping_area,\
                                  target_obstacle_group_polygon_feature, \
                                  minimum_polygon_area
                                   )

# Check in extensions
arcpy.CheckInExtension('Aeronautical')

Environments

This tool does not use any geoprocessing environments.

Licensing information

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

Related topics