Résumé
Crée une couche de jeu de données LAS qui peut appliquer des filtres aux points LAS et contrôler la mise en application des entités de contraintes de surface.
Utilisation
Une couche de jeu de données LAS peut servir à filtrer des données lidar en vue d'analyses ultérieures. Par exemple, un modèle numérique de terrain (MNT) peut être facilement créé en filtrant le code de classe 2, qui représente les mesures terrestres, puis en utilisant la couche obtenue en entrée pour l'outil Jeu de données LAS vers raster.
Syntaxe
arcpy.management.MakeLasDatasetLayer(in_las_dataset, out_layer, {class_code}, {return_values}, {no_flag}, {synthetic}, {keypoint}, {withheld}, {surface_constraints})
Paramètre | Explication | Type de données |
in_las_dataset | Jeu de données LAS à traiter. | LAS Dataset Layer |
out_layer | Nom de la couche de jeu de données LAS résultante. Une barre oblique inverse ou une barre oblique peut servir à indiquer un groupe de couches. | LAS Dataset Layer |
class_code [class_code,...] (Facultatif) | Permet de filtrer les points LAS par codes de classification. La plage des valeurs valides dépend des codes de classes pris en charge par la version des fichiers LAS référencés par le jeu de données LAS. Tous les codes de classes sont sélectionnés par défaut.
| String |
return_values [return_values,...] (Facultatif) | Valeurs renvoyées à utiliser pour le filtrage des points LAS. Lorsqu’aucune valeur n’est spécifiée, tous les retours sont utilisés.
| String |
no_flag (Facultatif) | Spécifie si les points de données auxquels aucun indicateur de classification n’est attribué doivent être activés à des fins d’affichage et d’analyse.
| Boolean |
synthetic (Facultatif) | Spécifie si les points de données signalés comme étant synthétiques ou les points provenant d’une source de données autre que lidar, doivent être activés à des fins d’affichage et d’analyse.
| Boolean |
keypoint (Facultatif) | Spécifie si les points de données signalés comme étant des points clés de modèle ou des mesures significatives ne devant pas être affinées doivent être activés à des fins d’affichage et d’analyse.
| Boolean |
withheld (Facultatif) | Spécifie si les points de données signalés comme étant retenus, qui constituent généralement des mesures de bruit indésirable, doivent être activés à des fins d’affichage et d’analyse.
| Boolean |
surface_constraints [surface_constraints,...] (Facultatif) | Nom des entités de contraintes de surface qui seront activées dans la couche. Toutes les contraintes sont activées par défaut. | String |
Exemple de code
Exemple 1 d'utilisation de l'outil MakeLasDatasetLayer (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.MakeLasDatasetLayer_management('Baltimore.lasd', 'Baltimore Layer',
2, 'LAST', 'INCLUDE_UNFLAGGED',
'EXCLUDE_SYNTHETIC', 'INCLUDE_KEYPOINT',
'EXCLUDE_WITHHELD')
Exemple 2 d'utilisation de l'outil MakeLasDatasetLayer (script autonome)
L'exemple suivant illustre l'utilisation de cet outil dans un script Python autonome.
'''*********************************************************************
Name: Export Elevation Raster from Ground LAS Measurements
Description: This script demonstrates how to export
ground measurements from LAS files to a raster using a
LAS dataset. This sample is designed to be used as a script
tool.
*********************************************************************'''
# Import system modules
import arcpy
try:
# Set Local Variables
inLas = arcpy.GetParameterAsText(0)
recursion = arcpy.GetParameterAsText(1)
surfCons = arcpy.GetParameterAsText(2)
classCode = arcpy.GetParameterAsText(3)
returnValue = arcpy.GetParameterAsText(4)
spatialRef = arcpy.GetParameterAsText(5)
lasD = arcpy.GetParameterAsText(6)
outRaster = arcpy.GetParameterAsText(7)
cellSize = arcpy.GetParameter(8)
zFactor = arcpy.GetParameter(9)
if arcpy.ProductInfo == 'ArcView':
arcpy.CheckOutExtension('3D')
# Execute CreateLasDataset
arcpy.management.CreateLasDataset(inLas, lasD, recursion, surfCons, sr)
# Execute MakeLasDatasetLayer
lasLyr = arcpy.CreateUniqueName('Baltimore')
arcpy.management.MakeLasDatasetLayer(lasD, lasLyr, classCode, returnValue)
# Execute LasDatasetToRaster
arcpy.conversion.LasDatasetToRaster(lasLyr, outRaster, 'ELEVATION',
'TRIANGULATION LINEAR WINDOW_SIZE 10', 'FLOAT',
'CELLSIZE', cellSize, zFactor)
arcpy.GetMessages()
except arcpy.ExecuteError:
print(arcpy.GetMessages())
except Exception as err:
print(err.args[0])
finally:
arcpy.management.Delete(lasLyr)
Environnements
Informations de licence
- Basic: Oui
- Standard: Oui
- Advanced: Oui