ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Aide
  • Sign Out
ArcGIS Desktop

ArcGIS Online

La plateforme cartographique de votre organisation

ArcGIS Desktop

Un SIG professionnel complet

ArcGIS Enterprise

SIG dans votre entreprise

ArcGIS Developers

Outils de création d'applications de localisation

ArcGIS Solutions

Modèles d'applications et de cartes gratuits pour votre secteur d'activité

ArcGIS Marketplace

Téléchargez des applications et des données pour votre organisation.

  • Documentation
  • Support
Esri
  • Se connecter
user
  • Mon profil
  • Déconnexion

ArcMap

  • Accueil
  • Commencer
  • Carte
  • Analyser
  • Gérer les données
  • Outils
  • Extensions

GenerateOISProfileJSON

  • Résumé
  • Discussion
  • Syntaxe
  • Exemple de code

Résumé

Generates a JSON string that represents the RunwayCenterline, OIS, obstacles, and elevation along the profile of the approach surface, storing the result in an existing OIS Multipatch layer.

Licence :

This function requires anArcGIS Aviation Airports license.

Discussion

The GenerateOISProfileJSON function is used to create a standard format that provides a view of runway and approach surfaces as well as any obstructions and terrain (maximum and minimum) that can be used in web-based applications. The information contained in the JSON allows you to create a representation of the runway and approach profile similar to the Terrain and Obstacle Profile tool. This information will be stored in a text field on the OIS Multipatch called profileJSON. If you specify an obstacle feature class to be included, that information will be stored in the obstacleJSON field.

Remarque :

The profileJSON and obstacleJSON text fields must already exist in the OIS Multipatch feature class to be populated. Since these fields need to contain a long JSON string, the field length should be a minimum of 50,000 characters. A larger field size may be required depending on the source data and sampling distance used. The function will report an error to increase the field length if necessary.

Syntaxe

GenerateOISProfileJSON (runway_centerline, ois, demRaster, {sampling_distance}, {obstacle}, {profile_OIS}, {profile_Runway}, {curved_path})
ParamètreExplicationType de données
runway_centerline

A z-aware polyline layer that contains the centerline of the runway. The recommended input is RunwayCenterline from the Airports 18B data model or ADHPSurfaceLine from the AIS data model. At least one of the following fields is required: DESIGNATOR_TXT or RWYDESG.

Layer
ois

A multipatch layer that represents the approach surface.

Remarque :

The recommended input is ObstructionIdSurface_MP from the Airports 18B data model.

The following fields are required:
  • DESCRIP
  • OBSTACLEJSON
  • PROFILEJSON
  • RWYDESG

Layer
demRaster

A layer of a raster dataset.

Layer
sampling_distance

The size of the sampling distance in meters.

Double
obstacle

A z-aware point layer that contains the obstacles.

Remarque :

The recommended input is ObstructionIdSurface_MP from the Airports 18B data model.

The following fields are required:
  • DISTVERT_UOM
  • ELEV_VAL
  • HEIGHT_VAL
  • HORIZACC_UOM
  • HORIZACC_VAL
  • OBSTACLETYPE_CODE or TYPE_CODE
  • VERTACC_UOM
  • VERTACC_VAL

Layer
profile_OIS

Specifies whether points other than the end points are added for the OIS.

  • False —Only end points are in the JSON. This is the default.
  • True —Multiple points are added in the JSON based on the sampling distance.
Boolean
profile_Runway

Specifies whether points other than the end points are added for the runway.

  • False —Only end points are in the JSON. This is the default.
  • True —Multiple points are added in the JSON based on the sampling distance.
Boolean
curved_path

The curved_path layer that contains the path used to create curved approach.

Layer

Exemple de code

GenerateOISProfileJSON example - Straight Approach

This script updates the profileJSON field with the information about the runway and approach profile as well as the obstacleJSON field with the obstacle information.

# Name: GenerateOISProfileJSONExample.py
# Description: Generates the JSON of the approach profile
# Author: Esri
# Date: April 2016

# Import arcpyproduction and aviation modules
import arcpy
import arcpyproduction

# Check out Aviation license
arcpy.CheckOutExtension("Aeronautical")

# Set variables
mxd = arcpy.mapping.MapDocument(r"C:\Aviation\GenerateJSON.mxd")
lyrs = arcpy.mapping.ListLayers(mxd)

lyrLine = lyrOIS = lyrdemRaster = lyrObstacle  = None

for lyr in lyrs:
    if lyr.name == "RunwayCenterLine":
        lyrLine  = lyr
    elif lyr.name == "ois":
        lyrOIS = lyr
    elif lyr.name == "DEMRaster":
        lyrdemRaster = lyr
    elif lyr.name == "Obstacle":
        lyrObstacle = lyr
		
# Generate the profile JSON
arcpyproduction.aviation.airports.GenerateOISProfileJSON(lyrLine, lyrOIS, lyrdemRaster, 20, lyrObstacle, False, False)

# Check in Aviation license
arcpy.CheckInExtension("Aeronautical")
GenerateOISProfileJSON example - Curved Approach

This script updates the profileJSON field with the information about the runway and approach profile as well as the obstacleJSON field with the obstacle information.

# Name: GenerateOISProfileJSON_curvedapproach.py
# Description: Generates the JSON of the approach profile
# Author: Esri
# Date: April 2016

# Import arcpyproduction and aviation modules
import arcpy
import arcpyproduction

# Check out Aviation license
arcpy.CheckOutExtension("Aeronautical")

# Set variables
mxd = arcpy.mapping.MapDocument(r"C:\Aviation\GenerateJSON.mxd")
lyrs = arcpy.mapping.ListLayers(mxd)

lyrLine = lyrOIS = lyrdemRaster = lyrObstacle = lyrCurvePath = None

for lyr in lyrs:
    if lyr.name == "RunwayCenterLine":
        lyrLine  = lyr
    elif lyr.name == "ois":
        lyrOIS = lyr
    elif lyr.name == "DEMRaster":
        lyrdemRaster = lyr
    elif lyr.name == "Obstacle":
        lyrObstacle = lyr
    elif lyr.name == "CurvedPath":
        lyrCurvePath = lyr

		
# Generate the profile JSON
arcpyproduction.aviation.airports.GenerateOISProfileJSON(lyrLine, lyrOIS, lyrdemRaster, 20, lyrObstacle, False, False, lyrCurvePath)

# Check in Aviation license
arcpy.CheckInExtension("Aeronautical")

Rubriques connexes

  • Introduction to arcpyproduction.aviation.airports
  • Adding the terrain and obstacle profile to the chart layout

ArcGIS Desktop

  • Accueil
  • Documentation
  • Support

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

A propos d'Esri

  • A propos de la société
  • Carrières
  • Blog d’Esri
  • Conférence des utilisateurs
  • Sommet des développeurs
Esri
Donnez-nous votre avis.
Copyright © 2021 Esri. | Confidentialité | Légal