Прореживание узлов TIN (3D Analyst)

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

Создает набор данных TIN с использованием подмножества узлов исходной TIN.

Иллюстрация

Иллюстрация инструмента DecimateTinNodes

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

  • Этот инструмент пригодится для упрощения работы с большими объемами данных и улучшения их восприятия. Доступны следующие опции упрощения:

    • Допуск Z – полученная TIN сохранит вертикальную точность исходной TIN с указанным значением допуска Z, которое всегда выражается в единицах Z исходной сети TIN. Отклонение любого узла от исходной TIN при сравнении с интерполированным значением выходной TIN не будет превышать допуск Z.
      Примечание:

      Этот метод также поддерживает применение дополнительного предела узлов, которое приводит к тому, что инструмент прекращает обработку, если значение допуска Z приводит к тому, что TIN превышает максимальное количество узлов. В этом случае TIN будет создана, но также будет возвращено предупреждение.

    • Число – сокращает количество узлов в выходной TIN до заданного значения, которое предположительно меньше, чем количество узлов исходной TIN. Узлы обычно выбираются так, чтобы сохранить экстент и характеристики поверхности исходной TIN.
  • Если выбрана опция Копировать линии разлома (Copy Breaklines), линии разлома в исходной TIN будут сохранены в выходных данных без генерализации. Узлы, созданные линиями разлома, не учитываются при подсчете максимального количества узлов.

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

Параметры

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

Набор данных TIN, который будет обрабатываться.

TIN Layer
Выходная TIN

Набор данных TIN, который будет создан.

TIN
Метод прореживания

Задает метод прореживания, используемый для выбора подмножества узлов из входной TIN.

  • Z_TOLERANCEСоздает TIN, который соответствует вертикальной точности, заданной параметром Допуск Z. Используется по умолчанию.
  • COUNTСоздает TIN, в котором не превышается лимит узлов, заданный параметром Максимальное число узлов.
String
Копировать линии разлома
(Дополнительный)

Указывает, должны ли линии перегиба входной TIN копироваться в выходную.

  • Не отмечено – линии перегибов не копируются. Используется по умолчанию.
  • Отмечено — линии перегибов будут копироваться.

Boolean

arcpy.ddd.DecimateTinNodes(in_tin, out_tin, method, {copy_breaklines})
ИмяОписаниеТип данных
in_tin

Набор данных TIN, который будет обрабатываться.

TIN Layer
out_tin

Набор данных TIN, который будет создан.

TIN
method

Задает метод прореживания, используемый для выбора подмножества узлов из входной TIN.

  • Z_TOLERANCEСоздает TIN, который соответствует вертикальной точности, заданной параметром z_tolerance_value. Используется по умолчанию.
  • COUNTСоздает TIN, в котором не превышается лимит узлов, заданный параметром max_node_value.
String
copy_breaklines
(Дополнительный)

Указывает, должны ли линии перегиба входной TIN копироваться в выходную.

  • BREAKLINESЛинии перегибов будут копироваться.
  • NO_BREAKLINESЛинии перегибов не копируются. Используется по умолчанию.
Boolean

Пример кода

DecimateTinNodes 1, пример (окно Python)

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

arcpy.env.workspace = "C:/data"
arcpy.ddd.DecimateTinNodes("tin", "tin_simple", "COUNT 5000" "BREAKLINES")
DecimateTinNodes, пример 2 (автономный скрипт)

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

'''****************************************************************************
Name: DecimateTinNodes Example
Description: This script demonstrates how to use the 
             DecimateTinNodes tool.
****************************************************************************'''

# Import system modules
import arcpy
from arcpy import env

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

# Set Local Variables
inTin = "elevation"
method = "COUNT 5000"
copyBrk = "BREAKLINES"
# Ensure output name is unique
outTin = arcpy.CreateUniqueName("simple_elev")

#Execute DecimateTinNodes
arcpy.ddd.DecimateTinNodes(inTin, outTin, method, copyBrk)

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