Disponible avec une licence Advanced.
Disponible avec une licence 3D Analyst.
Résumé
Crée des lignes de visée entre les points d’observation et les cibles.
Utilisation
Cet outil utilise les paramètres Construct Sight Lines (Construire des lignes de visée) et Line Of Sight (Lignes de visée) de la boîte à outils 3D Analyst.
Le point d’observation est le point de début et la cible, l’extrémité de la ligne utilisée pour déterminer la visibilité.
Un ou plusieurs points d’observation et une ou plusieurs entités ponctuelles cible sont utilisés.
Tous les points d’observation sont appariés à toutes les cibles.
Les lignes résultantes sont colorées pour afficher les sections visibles (en vert) et non visibles (en rouge).
Les champs suivants sont ajoutés à la Output Sight Line Feature Class (Classe d’entités des lignes de visée en sortie) :
- OID_OBSERV : ID d’objet du point d’observation utilisé pour créer la ligne de visée
- OID_TARGET : ID d’objet du point cible utilisé pour créer la ligne de visée
- TarIsVis : indique si la cible est visible (1) ou non visible (0) par le point d’observation le long de chaque ligne de visée
- AZIMUTH : azimut entre le point d’observation et la cible
- VERT_ANGLE : angle de vue vers le haut ou le bas (négatif) du point d’observation à la cible
Les champs suivants sont ajoutés à la Output Line Of Sight Feature Class (Classe d’entités des lignes de visée en sortie) :
- OID_OBSERV : ID d’objet du point d’observation utilisé pour créer la ligne de visée
- OID_TARGET : ID d’objet du point cible utilisé pour créer la ligne de visée
- VisCode : indique si le segment de surface est visible (1) par le point d’observation ou non visible (2)
- TarIsVis : indique si la cible est visible (1) ou non visible (0) par le point d’observation le long de chaque ligne de visée
- AZIMUTH : azimut entre le point d’observation et la cible
- ObsSPOT : altitude du point d’observation
- TgtSPOT : altitude de la cible
Les champs suivants sont ajoutés à la Output Observer Feature Class (Classe d’entités des points d'observation en sortie) :
- OID_OBSERV : ID d’objet du point d’observation utilisé pour créer la ligne de visée
- OID_TARGET : ID d’objet du point cible utilisé pour créer la ligne de visée
- AZIMUTH : azimut entre le point d’observation et la cible
- VERT_ANGLE : angle de vue vers le haut ou le bas (négatif) du point d’observation à la cible
- TarIsVis : indique si la cible est visible (1) ou non visible (0) par le point d’observation le long de chaque ligne de visée
- Z : altitude de surface à l’emplacement du point d’observation
- ObsSPOT : altitude du point d’observation
Les champs suivants sont ajoutés à la Output Target Feature Class (Classe d’entités des cibles en sortie) :
- OID_OBSERV : ID d’objet du point d’observation utilisé pour créer la ligne de visée
- OID_TARGET : ID d’objet du point cible utilisé pour créer la ligne de visée
- AZIMUTH : azimut entre le point d’observation et la cible
- VERT_ANGLE : angle de vue vers le haut ou le bas (négatif) du point d’observation à la cible
- TarIsVis : indique si la cible est visible (1) ou non visible (0) par le point d’observation le long de chaque ligne de visée
- Z : altitude de surface à l’emplacement cible
- TgtSPOT : altitude de la cible
Les unités de hauteur sont exprimées dans les unités de la surface d'altitude.
L’outil utilise les calculs de courbure de la Terre et de réfraction si la surface en entrée les prend en charge.
Si les entités d’obstruction sont utilisées, les lignes résultantes du profil de surface ne suivent pas le profil de surface mais s’étendent directement entre le point d’observation et la cible. Cela modifie le graphique de profil facultatif.
Syntaxe
LinearLineOfSight(in_observer_features, in_target_features, in_surface, out_los_feature_class, out_sight_line_feature_class, out_observer_feature_class, out_target_feature_class, {in_obstruction_features}, {observer_height_above_surface}, {target_height_above_surface}, {add_profile_attachment})
Paramètre | Explication | Type de données |
in_observer_features | Points d’observation en entrée. | Feature Set |
in_target_features | Points cible de l’entrée. | Feature Set |
in_surface | Surface raster d’altitude en entrée. | Raster Layer |
out_los_feature_class | Classe d'entités en sortie affichant les lignes des surfaces visibles et non visibles. | Feature Class |
out_sight_line_feature_class | Classe d'entités en sortie affichant la ligne de visée directe entre le point d’observation et la cible. | Feature Class |
out_observer_feature_class | Classe d’entités ponctuelles des points d'observation en sortie. | Feature Class |
out_target_feature_class | Classe d’entités ponctuelles des cibles en sortie. | Feature Class |
in_obstruction_features (Facultatif) | Entité multipatch en entrée qui risque d’obstruer la ligne de visée. | Feature Layer |
observer_height_above_surface (Facultatif) | Hauteur ajoutée à l’altitude de surface du point d’observation. La valeur par défaut est 2. | Double |
target_height_above_surface (Facultatif) | Hauteur ajoutée à l’altitude de surface de la cible. La valeur par défaut est 0. | Double |
add_profile_attachment (Facultatif) | Indique si l’outil ajoute une pièce jointe à l'entité avec le profil (diagramme MNT à section croisée) entre le point d’observation et la cible.
| Boolean |
Exemple de code
Le script de fenêtre Python ci-dessous illustre l'utilisation de la fonction LinearLineOfSight.
import arcpy
arcpy.env.workspace = r"C:/Data.gdb"
arcpy.LinearLineOfSight_defense("LLOS_Obs",
"LLOS_Tar",
"n36.dt2",
"LineOfSight",
"SightLines",
"Observers",
"Targets",
None,
2,
0,
"NO_PROFILE_GRAPH")
L’exemple suivant utilise la fonction LinearLineOfSight dans un script de processus d’exemple.
# Description: Create Linear Line of Sight to test siting of a radio antenna
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = r"C:/Data.gdb"
# Select antenna to test
antenna_layer = "antennas"
whereClause = "antenna_call_sign = 'KJT'"
test_ant_layer = arcpy.MakeFeatureLayer_management(antenna_layer, whereClause)
# Select observer test location
obs_layer = "observer_locations"
whereClause = "site_name = 'test_site'"
test_obs_layer = arcpy.MakeFeatureLayer_management(obs_layer, whereClause)
# Inputs
input_surface = "n36.dt2"
# Create line of sight between selected antenna and observer locations
arcpy.LinearLineOfSight_defense(test_obs_layer,
test_ant_layer,
input_surface,
"LineOfSight",
"SightLines",
"Test_Observers",
"Test_Targets",
None,
2,
0,
"NO_PROFILE_GRAPH")
Environnements
Informations de licence
- Basic: Non
- Standard: Non
- Advanced: Oui
Rubriques connexes
Vous avez un commentaire à formuler concernant cette rubrique ?