Ligne de visée (3D Analyst)

Niveau de licence :BasicStandardAdvanced

Récapitulatif

Détermine la visibilité des lignes de visée sur les obstructions constituées d'une surface fonctionnelle et d'un jeu de données multipatch facultatif.

Pour en savoir plus sur l'outil Ligne de visée

Illustration

Ligne de visée

Utilisation

Syntaxe

LineOfSight_3d (in_surface, in_line_feature_class, out_los_feature_class, {out_obstruction_feature_class}, {use_curvature}, {use_refraction}, {refraction_factor}, {pyramid_level_resolution}, {in_features})
ParamètreExplicationType de données
in_surface

Jeu de données LAS, raster, TIN ou surface MNT utilisé pour définir la visibilité.

LAS Dataset Layer; Raster Layer; Terrain Layer; TIN Layer
in_line_feature_class

Entités linéaires dont le premier sommet définit le point d'observation et le dernier l'emplacement cible. La hauteur des emplacements d'observation et cible est obtenue à partir des valeurs z des entités 3D et interpolée à partir de la surface des entités 2D.

Les lignes 2D sont également décalées d'une unité, laquelle est ajoutée à leur altitude pour élever les points au-dessus de la surface. Si l'entité contient un champ OffsetA, sa valeur est ajoutée à la hauteur du point d'observation. Si l'entité contient un champ OffsetB, sa valeur est ajoutée à la hauteur de la position cible.

Feature Layer
out_los_feature_class

Classe d'entités linéaires en sortie sur laquelle la visibilité a été déterminée. Deux champs attributaires sont créés. VisCode indique la visibilité le long de la ligne, 1 étant visible et 2 étant invisible. TarIsVis indique la visibilité cible, 0 étant invisible et 1 étant visible.

Feature Class
out_obstruction_feature_class
(Facultatif)

Classe d'entités ponctuelles facultative identifiant l'emplacement de la première obstruction vers sa cible sur la ligne de visée du point d'observation.

Feature Class
use_curvature
(Facultatif)

Indique si la courbure de la Terre doit être prise en compte lors de l'analyse de la ligne de visée. Pour que cette option soit activée, la surface doit avoir une référence spatiale définie dans des coordonnées projetées avec des unités z définies.

  • CURVATURELa courbure de la Terre est prise en compte.
  • NO_CURVATURELa courbure de la Terre n'est pas prise en compte. Il s'agit de l'option par défaut.
Boolean
use_refraction
(Facultatif)

Indique si la réfraction atmosphérique doit être prise en compte lors de la génération d'une ligne de visée à partir d'une surface fonctionnelle. Cette option ne s'applique pas si des entités multipatch sont utilisées.

  • REFRACTIONLa réfraction atmosphérique est prise en compte.
  • NO_REFRACTIONLa réfraction atmosphérique n'est pas prise en compte. Il s'agit de l'option par défaut.
Boolean
refraction_factor
(Facultatif)

Indique la valeur à utiliser comme facteur de réfraction. Le facteur de réfraction par défaut est 0,13.

Double
pyramid_level_resolution
(Facultatif)

Résolution de taille de fenêtre ou de tolérance z du niveau de pyramide de MNT qui sera utilisée par cet outil. La valeur par défaut est 0 (ou résolution maximale).

Double
in_features
(Facultatif)

Une entité multipatch qui peut définir des éléments obstruants supplémentaires, tels que des bâtiments. Les options de réfraction ne sont pas respectées pour cette entrée.

Feature Layer

Exemple de code

1er exemple d'utilisation de l'outil LineOfSight (fenêtre Python)

L'exemple suivant illustre l'utilisation de cet outil dans la fenêtre Python :

import arcpy
from arcpy import env

arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.LineOfSight_3d("tin", "line.shp", "los.shp", "buldings_multipatch.shp", 
                    "obstruction.shp")
2e exemple d'utilisation de l'outil LineOfSight (script autonome)

L'exemple suivant illustre l'utilisation de cet outil dans un script Python autonome :

'''*********************************************************************
Name: Sight Line Visibility of Parade Path
Description: This script demonstrates how to create a sight line feature class
             from a pair of observer and target points.
*********************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback
from arcpy import env

try:
    # Checking out 3D Analyst Extension:
    arcpy.CheckOutExtension('3D')

    # Set Local Variables:
    env.workspace = 'C:/data'

    # Setting up input and output variables:
    obs = "observer_pts.shp"
    tar = "parade_path.shp"
    sightlines = "output_sightlines.shp"
    height = "<None>"
    join_field = "#"
    sampling = 0.5
    direction = "OUTPUT_THE_DIRECTION"
    surface = 'elevation.tif'
    bldgs = 'buildings.shp'

    arcpy.AddMessage("Building sightlines...")
    arcpy.ddd.ConstructSightLines(obs, tar, sightlines, height, height, 
                                  join_field, sampling, direction)
    arcpy.ddd.LineOfSight(surface, sightlines, "Parade_LOS.shp", 
                          "Obstructions.shp", in_features=bldgs)
    
    arcpy.GetMessages(0)
    arcpy.CheckInExtension("3D")

except arcpy.ExecuteError:
    print arcpy.GetMessages()
except:
    # Get the traceback object
    tb = sys.exc_info()[2]
    tbinfo = traceback.format_tb(tb)[0]
    # Concatenate error information into message string
    pymsg = 'PYTHON ERRORS:\nTraceback info:\n{0}\nError Info:\n{1}'\
          .format(tbinfo, str(sys.exc_info()[1]))
    msgs = 'ArcPy ERRORS:\n {0}\n'.format(arcpy.GetMessages(2))
    # Return python error messages for script tool or Python Window
    arcpy.AddError(pymsg)
    arcpy.AddError(msgs)

Environnements

Thèmes connexes

Informations de licence

ArcGIS for Desktop Basic: Requis 3D Analyst
ArcGIS for Desktop Standard: Requis 3D Analyst
ArcGIS for Desktop Advanced: Requis 3D Analyst
6/5/2014