De ASCII 3D a clase de entidad (3D Analyst)

Resumen

Importa entidades 3D desde uno o más archivos ASCII almacenados en los formatos XYZ, XYZI o GENERATE, a una clase de entidad.

Ilustración

Ejemplo de De ASCII 3D a clase de entidad

Uso

  • Todos los archivos de entrada deben ser del mismo formato y tipo de geometría.

  • Los formatos XYZ y XYZI admiten líneas de encabezado y tratan la primera fila que comienza con tres números consecutivos como el inicio de los registros de puntos. Ambos formatos pueden almacenar puntos, líneas y polígonos, pero cada archivo puede contener solo una entidad poligonal o de línea de una sola parte. Las entidades poligonales deben cerrarse, con las coordenadas del último vértice iguales a las del primero, y no deben intersecarse a sí mismos.

  • Los archivos XYZ almacenan las coordenadas x, y y z como valores de punto flotante, donde cada fila representa un registro de puntos distintos. Las coordenadas XYZ puede estar seguidas de entradas alfanuméricas, pero esta información no se transferirá a la clase de entidad resultante.

  • Los archivos XYZI almacenan medidas x, y, z y de intensidad. Los valores de intensidad se almacenan en un campo de objeto binario grande (BLOB) para salidas del multiparche.

    Nota:

    Si el archivo ASCII está en formato XYZI pero no desea las medidas de intensidad, elija XYZ. Esto omitirá el valor de intensidad al leer los archivos.

  • El formato GENERATE no admite líneas de encabezado, pero proporciona un Id. para cada punto junto con las coordenadas XYZ y la última línea del archivo se escribe opcionalmente con la palabra clave END:

    id x y z
    id x y z
    .
    .
    END
  • El formato GENERATE admite varias entidades por archivo. Para líneas y polígonos, la palabra clave END indica el final de una entidad y cada entidad debe ser una entidad de una sola parte. Dos palabras clave END en una fila indican el final de un archivo.

    id
    x y z
    x y z
    x y z
    END
    id
    x y z
    x y z
    END
    END
    Nota:

    Los polígonos se deben orientar en sentido de las agujas del reloj, no deben tener intersecciones propias y deben estar cerrados (es decir, el último vértice es igual al primero). Si una de estas condiciones no se cumple, el polígono de salida no será válido. La herramienta Verificar geometría se puede usar para validar las entidades resultantes, y la herramienta Reparar geometría se puede usar para corregir errores.

Sintaxis

arcpy.3d.ASCII3DToFeatureClass(input, in_file_type, out_feature_class, out_geometry_type, {z_factor}, {input_coordinate_system}, {average_point_spacing}, {file_suffix}, {decimal_separator})
ParámetroExplicaciónTipo de datos
input
[input,...]

Los archivos o carpetas ASCII que contienen datos en formato XYZ, XYZI (con intensidad lidar) o 3D GENERATE. Todos los archivos de entrada deben tener el mismo formato. Si se especifica una carpeta, el parámetro Sufijo del archivo pasa a ser obligatorio y se procesarán todos los archivos que tengan la misma extensión que el sufijo especificado.

En la ventana del cuadro de diálogo de la herramienta, también se puede especificar una carpeta como entrada seleccionando la carpeta deseada en el Explorador de Windows y arrastrándola al cuadro de entrada del parámetro.

Folder; File
in_file_type

Formato de los archivos ASCII que se convertirán a una clase de entidad.

  • XYZArchivo de texto que contiene la información de geometría almacenado como coordenadas XYZ.
  • XYZIArchivos de texto que contienen las coordenadas XYZ junto con mediciones de intensidad.
  • GENERATEArchivos de texto estructurados en el formato Generate.
String
out_feature_class

La clase de entidad que generará esta herramienta.

Feature Class
out_geometry_type

El tipo de geometría de la clase de entidad de salida.

  • MULTIPOINTSe recomiendan multipuntos si los datos de entrada contienen un número grande de puntos y no se necesitan atributos por entidad.
  • POINTCada coordenada XYZ producirá una entidad de punto.
  • POLYLINELa salida incluirá entidades de polilínea.
  • POLYGONLa salida contendrá entidades poligonales.
String
z_factor
(Opcional)

El factor por el que se multiplicarán los valores z. Esto se utiliza generalmente para convertir las unidades lineales Z para que coincidan con las unidades lineales XY. El valor predeterminado es 1, que no altera los valores de elevación. Este parámetro está deshabilitado si la referencia espacial de la superficie de entrada tiene un datum Z con una unidad lineal especificada.

Double
input_coordinate_system
(Opcional)

El sistema de coordenadas de los datos de entrada El valor predeterminado es Sistema de coordenadas desconocido. Si se especifica, la salida puede o no proyectarse en un sistema de coordenadas diferente. Esto depende de si el entorno de geoprocesamiento tiene un sistema de coordenadas definido para la ubicación de la clase de entidad de destino.

Coordinate System
average_point_spacing
(Opcional)

La distancia planimétrica promedio entre los puntos de la entrada. Este parámetro sólo se usa cuando la geometría de salida se establece en MULTIPOINT, y su función es proporcionar medios para agrupar los puntos. Este valor se utiliza junto con los puntos según el límite de forma para crear un sistema de teselas virtual utilizado para agrupar los puntos. El origen del sistema está basado en el dominio de la clase de entidad de destino. Especifique el espaciado en las unidades horizontales de la clase de entidad de destino.

Double
file_suffix
(Opcional)

El sufijo de los archivos para importar desde una carpeta de entrada. Este parámetro es necesario cuando se especifica una carpeta como entrada.

String
decimal_separator
(Opcional)

El carácter decimal usado en el archivo de texto para diferenciar al entero de un número de su parte fraccionaria.

  • DECIMAL_POINTSe usa un punto como carácter decimal. Esta es la opción predeterminada.
  • DECIMAL_COMMASe usa una coma como carácter decimal.
String

Muestra de código

Ejemplo 1 de ASCII3DToFeatureClass (ventana de Python)

En el siguiente ejemplo se muestra cómo usar esta herramienta en la ventana de Python.

arcpy.env.workspace = "C:/data"
#Create spatial reference object using WKID
sr = arcpy.SpatialReference(32136)
arcpy.ASCII3DToFeatureClass_3d("masspntz.gen", "GENERATE", "elevation_points.shp", 
                               "MULTIPOINT", z_factor=3.28, 
                               input_coordinate_system=sr, average_point_spacing=2.5)
Ejemplo 2 de ASCII3DToFeatureClass (secuencia de comandos independiente)

En el siguiente ejemplo se muestra cómo usar esta herramienta en un script independiente de Python.

'''****************************************************************************
Name: ASCII3D_to_Feature_Class Example
Description: Creates a TIN surface using XYZI files in a folder and breaklines
             imported from ASCII files.
****************************************************************************'''
# Import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = "C:/data"

# Define the spatial reference using the name
sr = arcpy.SpatialReference("Hawaii Albers Equal Area Conic")

# Create the elevation points
arcpy.ddd.ASCII3DToFeatureClass("Elevation Points", "XYZI",
                               "elevation_points.shp",
                               "MULTIPOINT", z_factor=3.28,
                               input_coordinate_system=sr,
                               average_point_spacing=2.5,
                               file_suffix="XYZ")

# Create the break lines
arcpy.ddd.ASCII3DToFeatureClass("brklines.gen", "GENERATE",
                               "breaklines.shp",
                               "POLYLINE", z_factor=3.28,
                               input_coordinate_system=sr)

arcpy.ddd.CreateTin("elevation_tin", sr,
                    [["breaklines.shp", "Shape", "hardline"],
                    ["elevation_points.shp", "Shape", "masspoints"]],
                    "CONSTRAINED_DELAUNAY")

Información de licenciamiento

  • Basic: Sí
  • Standard: Sí
  • Advanced: Sí

Temas relacionados