Cambiar límites de resolución de terreno (3D Analyst)

Disponible con una licencia de 3D Analyst.

Resumen

Los cambios de los niveles de pirámide en los que se aplicará una clase de entidad de un dataset de terreno determinado.

Uso

  • Los límites de resolución de pirámide solo se pueden asignar a tipos de superficie que no están designados como puntos de masa.

  • Considere ajustar los límites de resolución de una entidad de terreno cuando introduzca nuevas pirámides o su rango actual proporciona un rendimiento de la visualización no deseado.

  • El dataset de terreno no se invalidará a partir de esta operación y no es necesario volver a construirlo con la herramienta Construir terreno.

Parámetros

EtiquetaExplicaciónTipo de datos
Terreno de entrada

El dataset de terreno que se procesará.

Terrain Layer
Clase de entidad de entrada

La clase de entidad a la que hace referencia el terreno a la que se le modificarán las resoluciones a nivel de pirámide.

String
Resolución más baja de pirámide
(Opcional)

La nueva resolución de nivel de pirámide más baja para la clase de entidad elegida.

Double
Resolución más alta de pirámide
(Opcional)

La nueva resolución de nivel de pirámide más alta para la clase de entidad elegida.

Double
Contribuye a la vista general
(Opcional)

Especifica si la clase de entidad contribuirá a la vista general del dataset de terreno.

  • Activada: implementa la clase de entidad en la visualización de la vista general del dataset de terreno. Esta es la opción predeterminada.
  • Desactivada: omite la clase de entidad de la visualización de la vista general del dataset de terreno.
Boolean

Salida derivada

EtiquetaExplicaciónTipo de datos
Terreno de entrada actualizado

El terreno actualizado.

Capa de terreno

arcpy.ddd.ChangeTerrainResolutionBounds(in_terrain, feature_class, {lower_pyramid_resolution}, {upper_pyramid_resolution}, {overview})
NombreExplicaciónTipo de datos
in_terrain

El dataset de terreno que se procesará.

Terrain Layer
feature_class

La clase de entidad a la que hace referencia el terreno a la que se le modificarán las resoluciones a nivel de pirámide.

String
lower_pyramid_resolution
(Opcional)

La nueva resolución de nivel de pirámide más baja para la clase de entidad elegida.

Double
upper_pyramid_resolution
(Opcional)

La nueva resolución de nivel de pirámide más alta para la clase de entidad elegida.

Double
overview
(Opcional)

Especifica si la clase de entidad contribuirá a la vista general del dataset de terreno.

  • OVERVIEW Implementa la clase de entidad en la visualización de la vista general del dataset de terreno. Esta es la opción predeterminada.
  • NO_OVERVIEWOmite la clase de entidad de la visualización de la vista general del dataset de terreno.
Boolean

Salida derivada

NombreExplicaciónTipo de datos
derived_out_terrain

El terreno actualizado.

Capa de terreno

Muestra de código

Ejemplo 1 de Cambiar límites de resolución de terreno (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

env.workspace = 'C:/data'
arcpy.ddd.ChangeTerrainResolutionBounds('sample.gdb\featuredataset/terrain',
                                       'breaklines', 2.5, 7.5)
Ejemplo 2 de Cambiar límites de resolución de terreno (script independiente)

En el siguiente ejemplo se muestra cómo usar esta herramienta en una secuencia de comandos independiente de Python.

'''****************************************************************************
Name: Update Terrain
Description: This script demonstrates how to update a terrain dataset
             with new elevation measurements obtained from Lidar by
             importing LAS files to multipoint features, then appending the
             new points to another multipoint feature that participates in a
             terrain. The terrain's pyramids are modified to optimize its
             draw speed.
****************************************************************************'''
# Import system modules
import arcpy

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

    # Set Variables
    inTerrain = "sample.gdb/featuredataset/terrain"
    currentPts = "existing_points"
    lasFiles = ['las/NE_Philly.las',
                'las/NW_Philly.las']
    newPts = 'in_memory/update_pts'
    # Define spatial reference of LAS files using factory code
    # for NAD_1983_StatePlane_Pennsylvania_South
    lasSR = arcpy.SpatialReference(2272)

    arcpy.AddMessage("Converting LAS files to multipoint features...")
    arcpy.ddd.LASToMultipoint(lasFiles, newPts, 1.5, 2, 1,
                              'INTENSITY', lasSR)

    arcpy.AddMessage("Appending LAS points to {0}..."\
                     .format(currentPts))
    arcpy.ddd.AppendTerrainPoints(inTerrain, currentPts, newPts)

    arcpy.AddMessage("Changing terrain pyramid reference scales...")
    arcpy.ddd.ChangeTerrainReferenceScale(inTerrain, 1000, 500)
    arcpy.ddd.ChangeTerrainReferenceScale(inTerrain, 2500, 2000)

    arcpy.AddMessage("Adding terrain pyramid level...")
    arcpy.ddd.AddTerrainPyramidLevel(inTerrain, "", "4 4500")

    arcpy.AddMessage("Changing pyramid resolution bounds for breaklines...")
    arcpy.ddd.ChangeTerrainResolutionBounds(inTerrain, "breaklines", 5, 4)

    arcpy.AddMessage("Building terrain...")
    arcpy.ddd.BuildTerrain(inTerrain)

    arcpy.AddMessage("Completed updates.")

except arcpy.ExecuteError:
    print(arcpy.GetMessages())
except Exception as err:
    print(err)

Temas relacionados