Resumen
Crea una capa de dataset LAS que aplica filtros en los puntos LAS y controla la aplicación de las entidades de restricción de superficie.
Uso
Una capa de dataset LAS se puede utilizar para filtrar datos LIDAR para otros análisis. Por ejemplo, se puede crear fácilmente un modelo digital de elevación (DEM) filtrando por el código de clase 2, que representa las mediciones de terreno y, a continuación, transfiriendo la capa resultante como entrada para la herramienta De dataset LAS a ráster.
Sintaxis
arcpy.management.MakeLasDatasetLayer(in_las_dataset, out_layer, {class_code}, {return_values}, {no_flag}, {synthetic}, {keypoint}, {withheld}, {surface_constraints})
Parámetro | Explicación | Tipo de datos |
in_las_dataset | El dataset LAS que se va a procesar. | LAS Dataset Layer |
out_layer | El nombre de la capa de dataset LAS resultante. Se puede utilizar cualquier barra invertida o barra diagonal para denotar una capa de grupo. | LAS Dataset Layer |
class_code [class_code,...] (Opcional) | Permite filtrar los puntos LAS por códigos de clasificación. El rango de valores válidos dependerá de los códigos de clase que se admitan en la versión de los archivos LAS a los que se hace referencia en el dataset LAS. Se seleccionarán todos los códigos de clase de forma predeterminada.
| String |
return_values [return_values,...] (Opcional) | Los valores de retorno que se utilizarán para filtrar los puntos LAS. Cuando no se especifica ningún valor, se utilizan todos los de retorno.
| String |
no_flag (Opcional) | Especifica si los puntos de datos que no tienen asignado ningún marcador de clasificación se deben habilitar para la visualización y el análisis.
| Boolean |
synthetic (Opcional) | Especifica si los puntos de datos marcados como sintéticos, o puntos que provienen de una fuente de datos distinta a LIDAR, se deben habilitar para la visualización y el análisis.
| Boolean |
keypoint (Opcional) | Especifica si los puntos de datos marcados como puntos clave de modelo, o bien las mediciones significativas que no se deben simplificar, se deben habilitar para la visualización y el análisis.
| Boolean |
withheld (Opcional) | Especifica si los puntos de datos marcados como retenidos, que normalmente representan mediciones de ruido no deseado, se deben habilitar para la visualización y el análisis.
| Boolean |
surface_constraints [surface_constraints,...] (Opcional) | El nombre de las entidades de restricción de superficie que están habilitadas en la capa. Todas las restricciones están habilitadas por defecto. | String |
Muestra de código
Ejemplo 1 de MakeLasDatasetLayer (ventana de Python)
En el siguiente ejemplo se muestra cómo usar esta herramienta en la ventana de 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')
Ejemplo 2 de MakeLasDatasetLayer (secuencia de comandos independiente)
En el siguiente ejemplo se muestra cómo usar esta herramienta en un script independiente de Python.
'''*********************************************************************
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)
Entornos
Información de licenciamiento
- Basic: Sí
- Standard: Sí
- Advanced: Sí