Créer un champ de vision (Analyse raster)

Synthèse

Crée des surfaces dans lesquelles un observateur peut voir des objets au sol. Les points d'observation en entrée peuvent représenter soit des observateurs (par exemple, des personnes au sol ou des vigies dans une tour de guet) soit des objets observés (par exemple, des éoliennes, des châteaux d'eau, des véhicules ou d'autres personnes).

Les points d'observation et les objets observés peuvent se trouver à une certaine hauteur au-dessus du sol, laquelle permet de déterminer la visibilité. Par exemple, un champ de vision calculé pour des éoliennes de 90 mètres et des personnes mesurant 1,80 mètre au sol sera généralement plus important qu'un champ de vision calculé pour des éoliennes de 60 mètres et des personnes mesurant 1,50 mètre.

La couche de résultats enregistre le nombre de fois que chaque emplacement de cellule du raster de surface en entrée peut être vu par les points d'observation en entrée. Les cellules non visibles se voient attribuer des valeurs NoData.

Illustration

Outil Créer un champ de vision

Utilisation

  • Cet outil de portail d’analyse raster est disponible lorsque vous êtes connecté à un portail ArcGIS Enterprise disposant d’un ArcGIS Image Server configuré pour Analyse raster. Lorsque cet outil est appelé, ArcGIS Pro est utilisé comme client et le traitement est effectué dans les serveurs fédérés avec ArcGIS Enterprise. Cet outil du portail prend en charge les couches de votre portail en entrée et crée la sortie dans le portail.

    La couche raster en entrée prend en charge les éléments suivants : couche du portail, URI ou URL d’un service d’imagerie ou sortie de l’outil Créer une couche de serveur d’imagerie. La couche d’entités en entrée peut être une couche du portail, ou une URI ou une URL d’un service d’entités. Cet outil ne prend pas en charge les données raster ou les couches locales. Bien que vous ayez la possibilité d’utiliser des données d’entité et des couches locales en entrée dans cet outil du portail, il est recommandé d’utiliser les couches de votre portail en entrée.

  • La visibilité du centre de chaque cellule est déterminée par un test de ligne de visée entre la cible et chaque point d'observation.

Paramètres

ÉtiquetteExplicationType de données
Surface d’altitude en entrée

La surface d'altitude à utiliser pour calculer le champ de vision.

Si l'unité verticale de la surface en entrée est différente de l'unité horizontale, lorsque les valeurs d'altitude sont représentées en pieds, par exemple, et que le système de coordonnées est en mètres, la surface doit présenter un système de coordonnées verticales défini. Cela s'explique par le fait que l'outil utilise les unités verticale (Z) et horizontale (XY) afin de calculer un facteur z pour l'analyse du champ de vision. Sans système de coordonnées verticales, et donc sans informations disponibles sur l'unité Z, l'outil suppose que l'unité Z est identique à l'unité XY. Par conséquent, un facteur Z interne équivalent à 1,0 sera utilisé pour l'analyse, ce qui risque de produire des résultats inattendus.

La surface d'altitude peut être un entier ou une virgule flottante.

Raster Layer; Image Service; String
Entités points d'observation

Les entités ponctuelles qui représentent les emplacements des points d'observation lors du calcul des champs de vision.

Feature Set
Nom en sortie

Nom du service raster en sortie.

Le nom par défaut repose sur le nom de l'outil et sur le nom de la couche en entrée. Si le nom de la couche existe déjà, vous êtes invité à fournir un autre nom.

String
Optimiser pour
(Facultatif)

La méthode d'optimisation à utiliser pour calculer le champ de vision.

  • VitesseCette méthode optimise la vitesse de traitement en compromettant légèrement la précision du résultat pour améliorer les performances. Il s’agit de l’option par défaut.
  • PrécisionCette méthode est optimisée pour produire des résultats précis, mais la durée de traitement est prolongée.
String
Type de distance de visualisation maximum
(Facultatif)

Méthode permettant de déterminer la distance de visualisation maximum.

Si vous changez le type de visualisation de distance par le champ, le paramètre Maximum Viewing Distance (Distance de visualisation maximum) est remplacé par Maximum Viewing Distance Field (Champ de distance de visualisation maximum).

  • DistanceLa distance maximum est définie par une valeur que vous spécifiez. Il s'agit de la méthode par défaut.
  • ChampLa distance maximum pour chaque emplacement de point d'observation est déterminée par les valeurs d'un champ que vous spécifiez.
String
Distance de visualisation maximum
(Facultatif)

Il s'agit d'une distance limite où s'arrête le calcul de zones visibles. Au-delà de cette distance, nul ne sait si les points d’observation et les autres objets peuvent se voir.

Les unités peuvent être les kilomètres, les mètres, les miles, les yards ou les pieds.

Les miles sont utilisés comme valeur par défaut.

Linear Unit
Champ de distance de visualisation maximum
(Facultatif)

Champ qui permet d'indiquer la distance de visualisation maximum pour chaque point d'observation. Les valeurs du champ doivent utiliser la même unité que la coordonnée XY de la surface d'altitude en entrée.

La distance de visualisation maximum est la distance limite où s'arrête le calcul de zones visibles. Au-delà de cette distance, nul ne sait si les points d’observation et les autres objets peuvent se voir.

Field
Type de distance de visualisation minimum
(Facultatif)

Sélectionnez la méthode permettant de déterminer la distance visible minimum.

Si vous changez le type de visualisation de distance par le champ, le paramètre Minimum Viewing Distance (Distance de visualisation minimum) est remplacé par Minimum Viewing Distance Field (Champ de distance de visualisation minimum).

  • DistanceLa distance minimum est définie par une valeur que vous spécifiez. Il s'agit de la méthode par défaut.
  • ChampLa distance minimum pour chaque emplacement de point d'observation est déterminée par les valeurs d'un champ que vous spécifiez.
String
Distance de visualisation minimum
(Facultatif)

Distance à laquelle le calcul des zones visibles doit commencer. Les cellules de la surface se trouvant à une distance inférieure à celle-ci ne sont pas visibles dans la sortie, mais peuvent toutefois bloquer la visibilité des cellules comprises entre les distances de visualisation minimum et maximum.

Les unités peuvent être les kilomètres, les mètres, les miles, les yards ou les pieds.

Les unités par défaut sont les mètres.

Linear Unit
Champ de distance de visualisation minimum
(Facultatif)

Champ qui permet d'indiquer la distance de visualisation minimum pour chaque point d'observation. Les valeurs du champ doivent utiliser la même unité que la coordonnée XY de la surface d'altitude en entrée.

La distance de visualisation minimum détermine le point de départ du calcul des surfaces visibles. Les cellules de la surface se trouvant à une distance inférieure à celle-ci ne sont pas visibles dans la sortie, mais peuvent toutefois bloquer la visibilité des cellules comprises entre les distances de visualisation minimum et maximum.

Field
La distance de visualisation est en 3D
(Facultatif)

Indiquez si les paramètres de distance d'affichage minimum et maximum sont mesurés en 3D ou en 2D. Une distance 2D représente la simple distance linéaire mesurée entre un point d'observation et une cible à l'aide de leurs emplacements projetés au niveau de la mer. Une distance 3D produit une valeur plus réaliste en tenant compte de leur hauteur relative.

  • Activé : la distance de visualisation est mesurée en 3D.
  • Désactivé : la distance de visualisation est mesurée en 2D. Il s’agit de l’option par défaut.
Boolean
Type d'altitude des points d'observation
(Facultatif)

Méthode permettant de déterminer l'altitude des points d'observation.

Si vous changez le type de visualisation d’altitude par le champ, le paramètre Minimum Observers Elevation (Altitude des points d’observation) est remplacé par Observers Elevation Field (Champ d’altitude des points d’observation).

  • ÉlévationL'altitude des points d'observation est définie par une valeur que vous spécifiez. Il s'agit de la méthode par défaut.
  • ChampL'altitude de chaque emplacement de point d'observation est déterminée par les valeurs d'un champ de vous spécifiez.
String
Altitude des points d'observation
(Facultatif)

Il s'agit de l'altitude des emplacements de vos points d'observation.

Si ce paramètre n'est pas spécifié, l'altitude du point d'observation s'obtient à partir du raster de surface à l'aide de l'interpolation bilinéaire. Si une valeur est attribuée à ce paramètre, elle est appliquée à tous les points d’observation. Pour spécifier des valeurs différentes pour chaque point d'observation, définissez ce paramètre sur un champ des entités des points d'observation en entrée.

Les unités peuvent être les kilomètres, les mètres, les miles, les yards ou les pieds.

Les unités par défaut sont les mètres.

Linear Unit
Champ d'altitude des points d'observation
(Facultatif)

Champ qui permet de spécifier l'altitude des points d'observation. La valeur de ce champ doit utiliser la même unité que la coordonnée Z de la surface d'altitude en entrée.

Si ce paramètre n'est pas spécifié, l'altitude du point d'observation s'obtient à partir du raster de surface à l'aide de l'interpolation bilinéaire.

Field
Type de hauteur des points d'observation
(Facultatif)

Méthode permettant de déterminer la hauteur des points d'observation.

Si vous changez la hauteur par le champ, le paramètre Observers Height (Hauteur des points d’observation) est remplacé par Observers Height Field (Champ de hauteur des points d’observation).

  • HauteurLa hauteur d'un point d'observation est obtenue à partir de la valeur que vous spécifiez. Il s'agit de la méthode par défaut.
  • ChampLa hauteur de chaque emplacement de point d'observation est déterminée par les valeurs d'un champ de vous spécifiez.
String
Hauteur des points d'observation
(Facultatif)

Il s'agit de la hauteur utilisée pour les emplacements de vos points d'observation.

Les unités peuvent être les kilomètres, les mètres, les miles, les yards ou les pieds.

Les unités par défaut sont les mètres.

Linear Unit
Champ de hauteur des points d'observation
(Facultatif)

Champ qui permet de spécifier la hauteur des points d'observation. La valeur de ce champ doit utiliser la même unité que la coordonnée Z de la surface d'altitude en entrée.

Field
Type de hauteur de la cible
(Facultatif)

Méthode permettant de déterminer la hauteur des cibles.

Si vous changez la hauteur par le champ, le paramètre Target Height (Hauteur de la cible) est remplacé par Target Height Field (Champ de hauteur cible).

  • HauteurLa hauteur d'une cible est obtenue à partir de la valeur que vous spécifiez. Il s'agit de la méthode par défaut.
  • ChampLa hauteur de chaque cible est déterminée par les valeurs d'un champ de vous spécifiez.
String
Hauteur de la cible
(Facultatif)

Il s'agit de la hauteur des structures ou des personnes au sol qui servent à établir la visibilité. Le champ de vision résultant correspond aux zones dans lesquelles un point d'observation peut voir les autres objets. L'inverse est également vrai : les autres objets peuvent voir un point d'observation.

Les unités peuvent être les kilomètres, les mètres, les miles, les yards ou les pieds.

Les unités par défaut sont les mètres.

Linear Unit
Champ de hauteur cible
(Facultatif)

Champ qui permet de spécifier la hauteur des cibles. La valeur de ce champ doit utiliser la même unité que la coordonnée Z de la surface d'altitude en entrée.

Field
Nom du raster au-dessus du niveau du sol en sortie
(Facultatif)

Nom du raster AGL (Above Ground Level - Au-dessus du niveau du sol) en sortie. Le raster AGL obtenu est un raster dans lequel la valeur de chaque cellule correspond à la hauteur minimale devant être ajoutée à une cellule (qui, sinon, ne serait pas visible) pour la rendre visible par au moins un observateur. La valeur 0 sera attribuée aux cellules qui étaient déjà visibles dans ce raster en sortie.

String

Sortie obtenue

ÉtiquetteExplicationType de données
Raster en sortie

Raster de champ de vision en sortie.

Raster Layer
Raster au-dessus du niveau du sol en sortie

Raster au-dessus du niveau du sol en sortie.

Raster Layer

arcpy.ra.CreateViewshed(inputElevationSurface, inputObserverFeatures, outputName, {optimizeFor}, {maximumViewingDistanceType}, {maximumViewingDistance}, {maximumViewingDistanceField}, {minimumViewingDistanceType}, {minimumViewingDistance}, {minimumViewingDistanceField}, {viewingDistanceIs3D}, {observersElevationType}, {observersElevation}, {observersElevationField}, {observersHeightType}, {observersHeight}, {observersHeightField}, {targetHeightType}, {targetHeight}, {targetHeightField}, {aboveGroundLevelOutputName})
NomExplicationType de données
inputElevationSurface

La surface d'altitude à utiliser pour calculer le champ de vision.

Si l'unité verticale de la surface en entrée est différente de l'unité horizontale, lorsque les valeurs d'altitude sont représentées en pieds, par exemple, et que le système de coordonnées est en mètres, la surface doit présenter un système de coordonnées verticales défini. Cela s'explique par le fait que l'outil utilise les unités verticale (Z) et horizontale (XY) afin de calculer un facteur z pour l'analyse du champ de vision. Sans système de coordonnées verticales, et donc sans informations disponibles sur l'unité Z, l'outil suppose que l'unité Z est identique à l'unité XY. Par conséquent, un facteur Z interne équivalent à 1,0 sera utilisé pour l'analyse, ce qui risque de produire des résultats inattendus.

La surface d'altitude peut être un entier ou une virgule flottante.

Raster Layer; Image Service; String
inputObserverFeatures

Les entités ponctuelles qui représentent les emplacements des points d'observation lors du calcul des champs de vision.

Feature Set
outputName

Nom du service raster en sortie.

Le nom par défaut repose sur le nom de l'outil et sur le nom de la couche en entrée. Si le nom de la couche existe déjà, vous êtes invité à fournir un autre nom.

String
optimizeFor
(Facultatif)

La méthode d'optimisation à utiliser pour calculer le champ de vision.

  • SPEEDCette méthode optimise la vitesse de traitement en compromettant légèrement la précision du résultat pour améliorer les performances. Il s’agit de l’option par défaut.
  • ACCURACYCette méthode est optimisée pour produire des résultats précis, mais la durée de traitement est prolongée.
String
maximumViewingDistanceType
(Facultatif)

Méthode permettant de déterminer la distance de visualisation maximum.

  • DISTANCELa distance maximum est définie par une valeur que vous spécifiez. Il s'agit de la méthode par défaut.
  • FIELDLa distance maximum pour chaque emplacement de point d'observation est déterminée par les valeurs d'un champ que vous spécifiez.
String
maximumViewingDistance
(Facultatif)

Il s'agit d'une distance limite où s'arrête le calcul de zones visibles. Au-delà de cette distance, nul ne sait si les points d’observation et les autres objets peuvent se voir.

Les unités peuvent être les kilomètres, les mètres, les miles, les yards ou les pieds.

Les miles sont utilisés comme valeur par défaut.

Linear Unit
maximumViewingDistanceField
(Facultatif)

Champ qui permet d'indiquer la distance de visualisation maximum pour chaque point d'observation. Les valeurs du champ doivent utiliser la même unité que la coordonnée XY de la surface d'altitude en entrée.

La distance de visualisation maximum est la distance limite où s'arrête le calcul de zones visibles. Au-delà de cette distance, nul ne sait si les points d’observation et les autres objets peuvent se voir.

Field
minimumViewingDistanceType
(Facultatif)

Sélectionnez la méthode permettant de déterminer la distance visible minimum.

  • DISTANCELa distance minimum est définie par une valeur que vous spécifiez. Il s'agit de la méthode par défaut.
  • FIELDLa distance minimum pour chaque emplacement de point d'observation est déterminée par les valeurs d'un champ que vous spécifiez.
String
minimumViewingDistance
(Facultatif)

Distance à laquelle le calcul des zones visibles doit commencer. Les cellules de la surface se trouvant à une distance inférieure à celle-ci ne sont pas visibles dans la sortie, mais peuvent toutefois bloquer la visibilité des cellules comprises entre les distances de visualisation minimum et maximum.

Les unités peuvent être les kilomètres, les mètres, les miles, les yards ou les pieds.

Les unités par défaut sont les mètres.

Linear Unit
minimumViewingDistanceField
(Facultatif)

Champ qui permet d'indiquer la distance de visualisation minimum pour chaque point d'observation. Les valeurs du champ doivent utiliser la même unité que la coordonnée XY de la surface d'altitude en entrée.

La distance de visualisation minimum détermine le point de départ du calcul des surfaces visibles. Les cellules de la surface se trouvant à une distance inférieure à celle-ci ne sont pas visibles dans la sortie, mais peuvent toutefois bloquer la visibilité des cellules comprises entre les distances de visualisation minimum et maximum.

Field
viewingDistanceIs3D
(Facultatif)

Indiquez si les paramètres de distance d'affichage minimum et maximum sont mesurés en 3D ou en 2D. Une distance 2D représente la simple distance linéaire mesurée entre un point d'observation et une cible à l'aide de leurs emplacements projetés au niveau de la mer. Une distance 3D produit une valeur plus réaliste en tenant compte de leur hauteur relative.

  • 2DLa distance de visualisation est mesurée en 2D. Il s’agit de l’option par défaut.
  • 3DLa distance de visualisation est mesurée en 3D.
Boolean
observersElevationType
(Facultatif)

Méthode permettant de déterminer l'altitude des points d'observation.

  • ELEVATIONL'altitude des points d'observation est définie par une valeur que vous spécifiez. Il s'agit de la méthode par défaut.
  • FIELDL'altitude de chaque emplacement de point d'observation est déterminée par les valeurs d'un champ de vous spécifiez.
String
observersElevation
(Facultatif)

Il s'agit de l'altitude des emplacements de vos points d'observation.

Si ce paramètre n'est pas spécifié, l'altitude du point d'observation s'obtient à partir du raster de surface à l'aide de l'interpolation bilinéaire. Si une valeur est attribuée à ce paramètre, elle est appliquée à tous les points d’observation. Pour spécifier des valeurs différentes pour chaque point d'observation, définissez ce paramètre sur un champ des entités des points d'observation en entrée.

Les unités peuvent être les kilomètres, les mètres, les miles, les yards ou les pieds.

Les unités par défaut sont les mètres.

Linear Unit
observersElevationField
(Facultatif)

Champ qui permet de spécifier l'altitude des points d'observation. La valeur de ce champ doit utiliser la même unité que la coordonnée Z de la surface d'altitude en entrée.

Si ce paramètre n'est pas spécifié, l'altitude du point d'observation s'obtient à partir du raster de surface à l'aide de l'interpolation bilinéaire.

Field
observersHeightType
(Facultatif)

Méthode permettant de déterminer la hauteur des points d'observation.

  • HEIGHTLa hauteur d'un point d'observation est obtenue à partir de la valeur que vous spécifiez. Il s'agit de la méthode par défaut.
  • FIELDLa hauteur de chaque emplacement de point d'observation est déterminée par les valeurs d'un champ de vous spécifiez.
String
observersHeight
(Facultatif)

Il s'agit de la hauteur utilisée pour les emplacements de vos points d'observation.

Les unités peuvent être les kilomètres, les mètres, les miles, les yards ou les pieds.

Les unités par défaut sont les mètres.

Linear Unit
observersHeightField
(Facultatif)

Champ qui permet de spécifier la hauteur des points d'observation. La valeur de ce champ doit utiliser la même unité que la coordonnée Z de la surface d'altitude en entrée.

Field
targetHeightType
(Facultatif)

Méthode permettant de déterminer la hauteur des cibles.

  • HEIGHTLa hauteur d'une cible est obtenue à partir de la valeur que vous spécifiez. Il s'agit de la méthode par défaut.
  • FIELDLa hauteur de chaque cible est déterminée par les valeurs d'un champ de vous spécifiez.
String
targetHeight
(Facultatif)

Il s'agit de la hauteur des structures ou des personnes au sol qui servent à établir la visibilité. Le champ de vision résultant correspond aux zones dans lesquelles un point d'observation peut voir les autres objets. L'inverse est également vrai : les autres objets peuvent voir un point d'observation.

Les unités peuvent être les kilomètres, les mètres, les miles, les yards ou les pieds.

Les unités par défaut sont les mètres.

Linear Unit
targetHeightField
(Facultatif)

Champ qui permet de spécifier la hauteur des cibles. La valeur de ce champ doit utiliser la même unité que la coordonnée Z de la surface d'altitude en entrée.

Field
aboveGroundLevelOutputName
(Facultatif)

Nom du raster AGL (Above Ground Level - Au-dessus du niveau du sol) en sortie. Le raster AGL obtenu est un raster dans lequel la valeur de chaque cellule correspond à la hauteur minimale devant être ajoutée à une cellule (qui, sinon, ne serait pas visible) pour la rendre visible par au moins un observateur. La valeur 0 sera attribuée aux cellules qui étaient déjà visibles dans ce raster en sortie.

String

Sortie obtenue

NomExplicationType de données
outputRaster

Raster de champ de vision en sortie.

Raster Layer
outputAboveGroundLevelRaster

Raster au-dessus du niveau du sol en sortie.

Raster Layer

Exemple de code

Exemple 1 d'utilisation de l'outil CreateViewshed (fenêtre Python)

Cet exemple crée un service d'imagerie de champ de vision à l'aide de points de surface et d'observation donnés.

import arcpy

arcpy.ra.CreateViewshed(
    "https://myserver/rest/services/elevation/ImageServer", 
    "https://myserver/rest/services/destination/FeatureServer/0", 
    "outview1", "SPEED", "DISTANCE", "9 Miles", "#", "DISTANCE",
    "0 Meters", "#", "2D", "ELEVATION", "#", "#", "HEIGHT",
    "6 Feet", "#", "HEIGHT", "3 Feet", "#", "outagl1")
Exemple 2 d'utilisation de l'outil CreateViewshed (script autonome)

Cet exemple crée un service d'imagerie de champ de vision à l'aide de points de surface et d'observation donnés.

#---------------------------------------------------------------------------
# Name: CreateViewshed_example02.py
# Description: Creates a viewshed image service raster from given surface
#   and observer points.
#
# Requirements: ArcGIS Image Server

# Import system modules
import arcpy

# Set local variables
inSurface = "https://myserver/rest/services/elevation/ImageServer"
inObservers = "https://myserver/rest/services/destination/FeatureServer/0"
outputViewshed = "outview1"
optimizeFor = "Speed"
maxDistType = "Distance"
maxDist = "9 Miles"
maxDistField = "#"
minDistType = "Distance"
minDist = "0 Miles"
minDistField = "#"
distanceIs3D = "2D"
obsElevationType = "Elevation"
obsElevation = "#"
obsElevationField = "#"
obsOffsetType = "Height"
obsOffset = "6 Feet"
obsOffsetField = "#"
surfOffsetType = "Height"
surfOffset = "3 Feet"
surfOffsetField = "#"
outputAgl = "outagl1"

# Execute Create Viewshed raster analysis tool
arcpy.ra.CreateViewshed(
    inSurface, inObservers, outputViewshed, optimizeFor,
    maxDistType, maxDist, maxDistField, minDistType, minDist,
    minDistField, distanceIs3D, obsElevationType, obsElevation,
    obsElevationField, obsOffsetType, obsOffset, obsOffsetField,
    surfOffsetType, surfOffset, surfOffsetField, outputAgl)

Informations de licence

  • Basic: Nécessite ArcGIS Image Server
  • Standard: Nécessite ArcGIS Image Server
  • Advanced: Nécessite ArcGIS Image Server

Rubriques connexes