Barrière d’horizon (3D Analyst)

Synthèse

Génère une classe d’entités multipatch représentant une barrière d’horizon ou un volume d’ombre.

En savoir plus sur le fonctionnement de l’outil Barrière d’horizon

Illustration

Illustration de l’outil Barrière d’horizon
La première image correspond à l’entrée de l’outil Barrière d’horizon. Elle se compose du point d’observation et de la sortie de l’horizon de l’outil Horizon. La seconde image correspond à la sortie de l’outil Barrière d’horizon.

Utilisation

  • La barrière ressemble à un éventail de triangles formé par le traçage d’une ligne entre le point d’observation et le premier sommet de l’horizon, puis par le balayage de cette ligne sur tous les sommets de l’horizon. Vous pouvez utiliser cet outil pour déterminer si des entités (par exemple, des multipatchs représentant des bâtiments) ne respectent pas la barrière par dépassement ou si un projet de construction risque de modifier l’horizon.

  • Utilisez tout d’abord l’outil Horizon pour générer un horizon ou une silhouette. Une silhouette produit une représentation volumétrique de l’ombre projetée par la lumière provenant du point d’observation.

  • Les paramètres Rayon minimum et Rayon maximal définissent la longueur des côtés du triangle émanant du point d’observation. Si la valeur par défaut de 0 est spécifiée pour le paramètre Rayon minimum ou Rayon maximal, aucune longueur minimale ou maximale n’est utilisée dans l’analyse.

  • Si vous choisissez de créer un multipatch fermé, la sortie est extrudée à la hauteur définie pour le paramètre Altitude de la base, et un anneau horizontal est créé pour former la partie inférieure de la géométrie fermée. Si l’altitude de la base spécifiée est supérieure au sommet le plus haut de la barrière d’horizon, la base est en fait un plafond.

  • La nouvelle classe d’entités multipatch comporte alors les champs suivants :

    • OBSV_PT_ID- FID du point d’observation utilisé pour créer l’horizon, qui a ensuite permis de créer ce multipatch de la barrière d’horizon.
    • ORIGFTR_ID- FID de l’entité d’origine (bâtiment, par exemple) représenté par la silhouette ou le segment d’horizon utilisé pour créer ce volume d’ombre.
    • SILHOUE_ID- FID de l’entité multipatch (silhouette) utilisée pour créer ce volume d’ombre (pour les silhouettes uniquement).

Paramètres

ÉtiquetteExplicationType de données
Entités ponctuelles d’observation en entrée

Classe d’entités ponctuelles qui contient les points d’observation.

Feature Layer
Entités en entrée

Classe d’entités linéaires en entrée qui représente les horizons ou classe d’entités multipatch en entrée représentant les silhouettes.

Feature Layer
Output Feature Class (Classe d’entités en sortie)

Classe d’entités en sortie dans laquelle la barrière d’horizon ou le volume d’ombre est placé.

Feature Class
Rayon minimum
(Facultatif)

Rayon minimal d’extension des côtés du triangle à partir du point d’observation. Par exemple, avec une valeur de 10 mètres, toutes les entités interruptions en sortie sont étendues d’au moins 10 mètres à partir du point d’origine. La valeur par défaut est de 0, autrement dit aucune distance minimale ne s’applique.

Linear Unit; Field
Rayon maximal
(Facultatif)

Rayon maximal d’extension des côtés du triangle à partir du point d’observation. La valeur par défaut est de 0, autrement dit aucune distance maximale ne s’applique.

Linear Unit; Field
Fermé
(Facultatif)

Fermeture ou non de la barrière d’horizon avec une jupe et une base, afin que le multipatch obtenu donne l’apparence d’être un solide fermé.

  • Désactivé - Il n’y a ni jupe ni base ajoutée au multipatch ; seul le multipatch qui représente la surface allant du point d’observation à l’horizon est représenté. Il s’agit de l’option par défaut.
  • Activé - Une jupe et une base sont ajoutées au multipatch afin de lui donner l’apparence d’un solide fermé.
Boolean
Altitude de la base
(Facultatif)

Altitude de la base du multipatch fermé. Ce paramètre est ignoré si le paramètre Fermé est désactivé. La valeur par défaut est 0.

Linear Unit; Field
Projeter sur le plan
(Facultatif)

Projection ou non de l’extrémité avant (plus proche du point d’observation) et de l’extrémité arrière (plus éloignée du point d’observation) de la barrière sur un plan vertical. Ce paramètre est généralement activé pour créer un volume d’ombre.

  • Activé - La barrière se prolonge du point d’observation vers l’horizon (ou plus près ou plus loin si des valeurs non nulles sont définies pour le rayon minimal et le rayon maximal). Il s’agit de l’option par défaut.
  • Activé - La barrière se prolonge entre deux plans verticaux.
Boolean

arcpy.ddd.SkylineBarrier(in_observer_point_features, in_features, out_feature_class, {min_radius_value_or_field}, {max_radius_value_or_field}, {closed}, {base_elevation}, {project_to_plane})
NomExplicationType de données
in_observer_point_features

Classe d’entités ponctuelles qui contient les points d’observation.

Feature Layer
in_features

Classe d’entités linéaires en entrée qui représente les horizons ou classe d’entités multipatch en entrée représentant les silhouettes.

Feature Layer
out_feature_class

Classe d’entités en sortie dans laquelle la barrière d’horizon ou le volume d’ombre est placé.

Feature Class
min_radius_value_or_field
(Facultatif)

Rayon minimal d’extension des côtés du triangle à partir du point d’observation. Par exemple, avec une valeur de 10 mètres, toutes les entités interruptions en sortie sont étendues d’au moins 10 mètres à partir du point d’origine. La valeur par défaut est de 0, autrement dit aucune distance minimale ne s’applique.

Linear Unit; Field
max_radius_value_or_field
(Facultatif)

Rayon maximal d’extension des côtés du triangle à partir du point d’observation. La valeur par défaut est de 0, autrement dit aucune distance maximale ne s’applique.

Linear Unit; Field
closed
(Facultatif)

Fermeture ou non de la barrière d’horizon avec une jupe et une base, afin que le multipatch obtenu donne l’apparence d’être un solide fermé.

  • NO_CLOSEDIl n’y a ni jupe ni base ajoutée au multipatch ; seul le multipatch qui représente la surface allant du point d’observation à l’horizon est représenté. Il s’agit de l’option par défaut.
  • CLOSEDUne jupe et une base sont ajoutées au multipatch afin de lui donner l’apparence d’un solide fermé.
Boolean
base_elevation
(Facultatif)

Altitude de la base du multipatch fermé. Ce paramètre est ignoré si le paramètre closed est défini sur NO_CLOSED. La valeur par défaut est 0.

Linear Unit; Field
project_to_plane
(Facultatif)

Projection souhaitée ou non de l’extrémité avant (plus proche du point d’observation) et de l’extrémité arrière (plus éloignée du point d’observation) de la barrière sur un plan vertical. Ce paramètre est généralement défini sur PROJECT_TO_PLANE pour créer un volume d’ombre.

  • NO_PROJECT_TO_PLANELa barrière se prolonge du point d’observation vers l’horizon (ou plus près ou plus loin si des valeurs non nulles sont définies pour le rayon minimal et le rayon maximal). Il s’agit de l’option par défaut.
  • PROJECT_TO_PLANELa barrière se prolonge entre deux plans verticaux.
Boolean

Exemple de code

Exemple 1 d’utilisation de l’outil Barrière d’horizon (fenêtre Python)

L’exemple suivant illustre l’utilisation de cet outil dans la fenêtre Python.

arcpy.env.workspace = "C:/data"
arcpy.ddd.SkylineBarrier("observers.shp", "skyline_outline.shp", 
                        "barrier_output.shp")
Exemple 2 d’utilisation de l’outil Barrière d’horizon (script autonome)

L’exemple suivant illustre l’utilisation de cet outil dans un script Python autonome.

'''****************************************************************************
Name: Skyline Barrier Example
Description: This script demonstrates how to use the 
             Skyline Barrier tool.

****************************************************************************'''
# Import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = 'C:/data'
# Set Local Variables
inPts = 'observers.shp'
inLine = 'skyline.shp'
outFC = 'output_barriers.shp'
minRadius = '0 METERS'
maxRadius = '200 METERS'

#Execute SkylineBarrier
arcpy.ddd.SkylineBarrier(inPts, inLine, outFC, minRadius,
                      maxRadius, 'CLOSED')

Rubriques connexes