Résumé
Crée des entités multi-points à l'aide d'un ou plusieurs fichiers LIDAR.
Illustration
Utilisation
Cet outil prend en charge les versions 1.0 à 1.4 des fichiers ZLAS et LAS.
-
Le format LAS prend en charge la classification de chaque point en fonction des spécifications définies par l'ASPRS (American Society for Photogrammetry and Remote Sensing). La plateforme ArcGIS applique le schéma de classification spécifié pour la version 1.4 du fichier LAS :
Valeur de classification Type de classification 0
Jamais classé
1
Non attribuée
2
Sol
3
Végétation basse
4
Moyenne végétation
5
Haute végétation
6
Construction
7
Niveau sonore faible
8
Clé de modèle/Réservé
9
Eau
10
Ferroviaire
11
Surface routière
12
Superposition/Réservé
13
Fil métallique
14
Conducteur métallique
15
Tour de transmission
16
Connecteur métallique
17
Tablier de pont
18
Niveau sonore élevé
19 – 63
Réservé pour la définition ASPRS (prise en charge de LAS 1.1 à 1.3 jusqu'au code de classe 31)
32 – 255
Défini par l'utilisateur (uniquement pris en charge dans LAS 1.0 et certaines versions de 1.4)
Le format LAS prend en charge le stockage de nombreux attributs prédéfinis pour chaque point Lidar. Si vous ne savez pas quels attributs sont disponibles avec une collection donnée de fichiers LAS, utilisez un jeu de données LAS pour examiner les propriétés des fichiers LAS.
Lorsque vous chargez plusieurs attributs LAS dans une base de données Oracle, vous devez vous assurer que tous les mots-clés DBTUNE du paramètre attribute_binary sont définis pour utiliser de grands objets binaires (BLOB), et non LONGRAW. Les attributs LAS sont chargés en tant que BLOB, et Oracle ne prend pas en charge plusieurs BLOB dans les tables LONGRAW. Si vous avez besoin d'aide, consultez votre administrateur de base de données Oracle.
Syntaxe
arcpy.ddd.LASToMultipoint(input, out_feature_class, average_point_spacing, {class_code}, {return}, {attribute}, {input_coordinate_system}, {file_suffix}, {z_factor}, {folder_recursion})
Paramètre | Explication | Type de données |
input [input,...] | Fichiers LAS ou ZLAS qui seront importés dans une classe d'entités multi-points. Si un dossier est spécifié, tous les fichiers LAS qui se trouvent à l'intérieur seront importés. Dans la boîte de dialogue de l'outil, vous pouvez également spécifier un dossier en entrée en le sélectionnant dans l'Explorateur Windows et en le faisant glisser vers la zone de saisie du paramètre. | Folder; File |
out_feature_class | Classe d'entités qui va être produite par cet outil. | Feature Class |
average_point_spacing | Distance 2D moyenne entre les points dans les fichiers en entrée. Vous pouvez utiliser une approximation. Si des zones ont été échantillonnées à différentes densités, spécifiez l'espacement le plus petit. La valeur doit être entrée dans les unités de projection du système de coordonnées en sortie. | Double |
class_code [class_code,...] (Facultatif) | Codes de classification à utiliser en tant que filtre de requête pour les points de données LAS. Les valeurs correctes sont comprises entre 1 et 32. Par défaut, aucun filtre n'est appliqué. | Long |
return [return,...] (Facultatif) | Valeurs renvoyées qui serviront à filtrer les points LAS importés dans des entités multi-points.
| String |
attribute [[keyword, name],...] (Facultatif) | Propriétés du point LAS dont les valeurs seront stockées dans des champs de grands objets binaires (BLOB) dans la table attributaire de la sortie. Si les entités obtenues sont destinées à participer à un jeu de données de MNT, les attributs stockés peuvent servir à symboliser le MNT. La colonne Nom indique le nom du champ qui sera utilisé pour stocker les attributs spécifiés. Les propriétés LAS suivantes sont prises en charge :
| Value Table |
input_coordinate_system (Facultatif) | Système de coordonnées du fichier LAS en entrée. | Coordinate System |
file_suffix (Facultatif) | Suffixe des fichiers à importer à partir d'un dossier en entrée. Ce paramètre est requis lorsqu'un dossier est spécifié en entrée. | String |
z_factor (Facultatif) | Facteur par lequel les valeurs z sont multipliées. Il permet généralement de convertir des unités linéaires Z afin d'apparier les unités linéaires XY. La valeur par défaut est de 1, ce qui laisse les valeurs d’altitude inchangées. Ce paramètre est désactivé si la référence spatiale de la surface en entrée possède un datum Z avec une unité linéaire spécifiée. | Double |
folder_recursion (Facultatif) | Passe en revue les sous-dossiers lorsqu'un dossier en entrée contenant des données est sélectionné dans un répertoire de sous-dossiers. La classe d'entités en sortie est générée avec une ligne pour chaque fichier rencontré dans la structure de répertoires.
| Boolean |
Exemple de code
1er exemple d'utilisation de l'outil LASToMultipoint (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.LASToMultipoint_3d("001.las", "Test.gdb/feature_dataset/sample_1", 1.5,
"2", "ANY_RETURNS", "INTENSITY", "Coordinate Systems"\
"/Projected Coordinate Systems/UTM/NAD 1983/NAD 1983 "\
"UTM Zone 17N.prj", "las", 1)
2e exemple d'utilisation de l'outil LASToMultipoint (script autonome)
L'exemple suivant illustre l'utilisation de cet outil dans un script Python autonome.
'''****************************************************************************
Name: Define Data Boundary of LAS File
Description: This script demonstrates how to delineate data boundaries of
LAS files with irregularly clustered points. It is intended for
use as a script tool with one input LAS file.
****************************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback
# Set local variables
inLas = arcpy.GetParameterAsText(0) #input LAS file
ptSpacing = arcpy.GetParameterAsText(1) # LAS point spacing
classCode = arcpy.GetParameterAsText(2) # List of integers
returnValue = arcpy.GetParameterAsText(3) # List of strings
outTin = arcpy.GetParameterAsText(4) # TIN created to delineate data area
outBoundary = arcpy.GetParameterAsText(5) # Polygon boundary file
try:
arcpy.CheckOutExtension("3D")
# Execute LASToMultipoint
arcpy.AddMessage("Creating multipoint features from LAS...")
lasMP = arcpy.CreateUniqueName('lasMultipoint', 'in_memory')
arcpy.ddd.LASToMultipoint(inLas, LasMP, ptSpacing, class_code,
"ANY_RETURNS", "", sr, inFormat, zfactor)
# Execute CreateTin
arcpy.AddMessage("Creating TIN dataset...")
arcpy.ddd.CreateTin(outTin, sr, "{0} Shape.Z masspoints"\
.format(lasMP), "Delaunay")
# Execute CopyTin
arcpy.AddMessage("Copying TIN to delineate data boundary...")
arcpy.ddd.CopyTin(outTin, "{0}_copy".format(outTin))
# Execute DelineateTinDataArea
arcpy.AddMessage("Delineating TIN boundary...")
maxEdge = ptSpacing * 4
arcpy.ddd.DelineateTinDataArea(outTin, maxEdge, "PERIMETER_ONLY")
# Execute TinDomain
arcpy.AddMessage("Exporting data area to polygon boundary...")
arcpy.ddd.TinDomain(outTin, outBoundary, "POLYGON")
arcpy.AddMessage("Finished")
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
- Espace de travail courant
- Système de coordonnées en sortie
- Transformations géographiques
- Étendue
- Résolution XY
- Tolérance XY
- Résolution Z
- Tolérance Z
- Mot-clé CONFIG en sortie
- Validation automatique
- Grille spatiale 1 en sortie
- Grille spatiale 2 en sortie
- Grille spatiale 3 en sortie
- Domaine XY en sortie
- Domaine Z en sortie
Informations de licence
- Basic: Requiert 3D Analyst
- Standard: Requiert 3D Analyst
- Advanced: Requiert 3D Analyst