Изменить границы разрешения Terrain (3D Analyst)

Доступно с лицензией 3D Analyst.

Краткая информация

Изменяет уровни пирамидных слоев, на которых применяется класс объектов для указанного набора данных Terrain.

Использование

  • Границы разрешения пирамиды можно задать только для типов поверхности, не обозначенных как облака точек.

  • Рассмотрите корректировки границ разрешения для объекта Terrain при создании новых пирамид или когда текущий диапазон не обеспечивает нужную производительность.

  • Набор данных Terrain станет недействительным в результате этой операции и должен быть перестроен с использованием инструмента Построить Terrain.

Параметры

ПодписьОписаниеТип данных
Входная Terrain

Обрабатываемый набор данных terrain.

Terrain Layer
Входной класс пространственных объектов

Класс пространственных объектов, на который ссылается Terrain, для которого будут изменены разрешения пирамидных слоев.

String
Низкое разрешение уровня пирамидного слоя
(Дополнительный)

Новое нижнее разрешение пирамидных слоев для выбранного класса пространственных объектов.

Double
Высокое разрешение уровня пирамидного слоя
(Дополнительный)

Новое верхнее разрешение пирамидных слоев для выбранного класса пространственных объектов.

Double
Относится к общему обзору
(Дополнительный)

Указывает, отражается ли класс пространственных объектов в обзоре набора данных Terrain.

  • Отмечено – Принудительно назначает класс пространственных объектов в отображении обзора набора данных Terrain. Используется по умолчанию.
  • Не отмечено — Пропускает класс пространственных объектов в обзорном отображении набора данных Terrain.
Boolean

Производные выходные данные

ПодписьОписаниеТип данных
Обновленная входная terrain

Обновленная terrain.

Слой Terrain

arcpy.ddd.ChangeTerrainResolutionBounds(in_terrain, feature_class, {lower_pyramid_resolution}, {upper_pyramid_resolution}, {overview})
ИмяОписаниеТип данных
in_terrain

Обрабатываемый набор данных terrain.

Terrain Layer
feature_class

Класс пространственных объектов, на который ссылается Terrain, для которого будут изменены разрешения пирамидных слоев.

String
lower_pyramid_resolution
(Дополнительный)

Новое нижнее разрешение пирамидных слоев для выбранного класса пространственных объектов.

Double
upper_pyramid_resolution
(Дополнительный)

Новое верхнее разрешение пирамидных слоев для выбранного класса пространственных объектов.

Double
overview
(Дополнительный)

Указывает, отражается ли класс пространственных объектов в обзоре набора данных Terrain.

  • OVERVIEW Задает класс пространственных объектов в отображении обзора набора данных Terrain. Используется по умолчанию.
  • NO_OVERVIEWПропускает класс пространственных объектов из отображения обзора набора данных Terrain.
Boolean

Производные выходные данные

ИмяОписаниеТип данных
derived_out_terrain

Обновленная terrain.

Слой Terrain

Пример кода

Пример 1 инструмента ChangeTerrainResolutionBounds (окно Python)

В следующем примере показано использование этого инструмента в окне Python.

import arcpy
from arcpy import env

env.workspace = 'C:/data'
arcpy.ChangeTerrainResolutionBounds_3d('sample.gdb\featuredataset/terrain',
                                       'breaklines', 2.5, 7.5)
Пример 2 инструмента ChangeTerrainResolutionBounds (автономный скрипт)

В следующем примере показано использование этого инструмента в автономном скрипте 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.AppendTerrainPoints_3d(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.ChangeTerrainResolutionBounds_3d(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)

Информация о лицензиях

  • Basic: Обязательно 3D Analyst
  • Standard: Обязательно 3D Analyst
  • Advanced: Обязательно 3D Analyst

Связанные разделы