Establecer códigos de clase LAS con las entidades (3D Analyst)

Resumen

Clasifica los puntos de datos en los archivos LAS a los que hace referencia un dataset LAS usando entidades de puntos, línea y poligonales.

Uso

Sintaxis

SetLasClassCodesUsingFeatures_3d (in_las_dataset, feature_class, {compute_stats})
ParámetroExplicaciónTipo de datos
in_las_dataset

El dataset de LAS de entrada.

LAS Dataset Layer
feature_class
[[features, buffer_distance, new_class, synthetic, key_point, withheld],...]

Especifique una o más clases de entidad que se usarán para definir valores del código de clase para los archivos LIDAR a los que hace referencia un dataset LAS. Cada entidad tendrá las siguientes opciones que se pueden especificar:

  • entidades: la capa de entidad o la ruta completa a la clase de entidad de entrada.
  • buffer_distance: la tolerancia de selección utilizada para determinar qué puntos LIDAR modificarán las entidades de entrada.
  • new_class: el código de clase a ser asignado a los archivos LIDAR que se intersecan con las entidades y la distancia de zona de influencia asociada.
  • sintéticas: especifica si se debe marcar o eliminar una designación Sintética, lo cual implica que el punto no se creó con LIDAR, pero con una técnica alterna (por ejemplo, digitalizado de un modelo de estéreo fotogramétrico).
  • key_point: especifica si se debe marcar o eliminar una designación de Punto clave para el punto de datos. Un punto clave del modelo se trata típicamente como un punto de ancla que no se elimina por medio de un algoritmo de simplificación.
  • retenidos: especifica si se debe marcar o eliminar una designación de Retenido para el punto de datos, que generalmente se utiliza para indicar datos erróneos.
Value Table
compute_stats
(Opcional)

Especifica si las estadísticas se deben calcular para los archivos LAS a los que hace referencia el dataset LAS. La existencia de las estadísticas permite las opciones de simbología y filtrado de la capa del dataset LAS para mostrar solo los valores de atributos LAS que existen en los archivos LAS.

  • COMPUTE_STATSSe calcularán las estadísticas.
  • NO_COMPUTE_STATSNo se calcularán las estadísticas. Esta es la opción predeterminada.
Boolean

Ejemplo de código

Ejemplo 1 SetLasClassCodesUsingFeatures (ventana de Python)

El siguiente ejemplo muestra cómo usar de esta herramienta en la ventana Python:

import arcpy
from arcpy import env

arcpy.CheckOutExtension('3D')
env.workspace = 'C:/data'
arcpy.SetLasClassCodesUsingFeatures_3d("test.lasd", [["lake.shp 0 9"],
                                       ["outliers.shp", 5, "NO_CHANGE", 
                                        "NO_CHANGE", "NO_CHANGE", "SET"]], 
                                       "COMPUTE_STATS")
Ejemplo 2 SetLasClassCodesUsingFeatures (secuencia de comandos independiente)

El siguiente ejemplo muestra cómo usar esta herramienta en una secuencia de comandos independiente de Python:

'''**********************************************************************
Name: Assign Withheld Classification Flag to Outlier Points in LAS Files
Description: Uses Locate Outliers to identify points in LAS files that
             should be assigned the 'withheld' classification flag.
             Designed for use as a script tool.
**********************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback

try:
    arcpy.CheckOutExtension('3D')
    # Set Local Variables
    lasD = arcpy.GetParameterAsText(0)
    outliers = 'in_memory/outliers'
    # Execute LocateOutliers
    arcpy.ddd.LocateOutliers(lasD, outliers, 'APPLY_HARD_LIMIT', -10, 
                             350, 'APPLY_COMPARISON_FILTER', 1.2, 120, 
                             0.8, 8000)
    # Execute SetLasClassCodeUsingFeatures
    arcpy.ddd.SetLasClassCodesUsingFeatures(lasd, [["outliers.shp", 5, 
                                                    "NO_CHANGE", "NO_CHANGE",
                                                    "NO_CHANGE", "SET"]])
    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)

Entornos

Temas relacionados

9/11/2013