Создать TIN (3D Analyst)

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

Создает набор данных, содержащий триангуляционную нерегулярную сеть (triangulated irregular network – TIN).

Иллюстрация

Иллюстрация работы инструмента Создать TIN.

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

  • Избегайте создания TIN с использованием географической системы координат, т.к. правило триангуляции Делоне не может эффективно применяться, когда единицы измерения x,y выражены в сферических координатах.

  • Тип объекта поверхности определяет, каким образом входные объекты участвуют в определении триангуляционной поверхности.

    • Точечные объекты можно задать в виде облаков точек, что создает узлы данных, z-значения которых используются в триангуляции поверхности.
    • Линейные объекты можно задать в виде облаков точек и линий перегиба, которые обозначают местоположения на поверхности вдоль линейных неоднородностей уклона, таких как линии хребтов, береговые линии, бордюры, фундаменты зданий и т.д.
    • Полигональные объекты также можно задать в виде облаков точек и линий перегиба, вместе с вырезающими объектами, определяющими область данных, заменяющими объектами, задающими регионы с постоянными z-значениями (например, поверхность воды), и стирающими объектами, которые обозначают внутренние области с отсутствующими данными.
  • Инструмент может создать TIN, состоящий из множества миллионов точек, при наличии достаточного объема памяти. Однако ограничение числа узлов TIN до менее чем 6 миллионов обеспечит достаточную производительность и удобство использования. Если необходима большая поверхность TIN, рассмотрите возможность использования набора данных Terrain. Набор данных о рельефе местности предлагает многоуровневую TIN-поверхность, которая может поддерживать гораздо большие наборы исходных измерений.

  • Установите для параметра среды Версия хранения TIN по умолчанию значение PRE_10.0, если создаваемая TIN будет использоваться в версиях ArcGIS Desktop до 10.0.

  • Когда набор данных TIN создан, его можно изменить, используя инструмент Редактировать TIN, чтобы добавить дополнительные измерения объектов на поверхность TIN. Также можно использовать инструмент Определение областей данных TIN, чтобы задать треугольники TIN, которые составляют зону интерполяции, на основе максимальной длины ребра треугольника. Поверхность TIN также можно изменить через Интерактивное редактирование.

Параметры

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

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

TIN
Система координат
(Дополнительный)

Пространственная привязка выходной TIN. Задайте пространственную привязку для системы координат проекции. Применение географической системы координат не рекомендуется, поскольку триангуляция Делоне может работать неправильно, если координаты x,y выражены в угловых единицах, что может неблагоприятно воздействовать на точность вычислений, основанных на измерении расстояний, как, например, уклон, объем и линия взгляда.

Coordinate System
Входной класс объектов
(Дополнительный)

Входные объекты и связанные с ними свойства, определяющие, как они будут добавлены в TIN.

  • Входные объекты — объекты, которые будут добавлены в TIN.
  • Поле высот – источник высот для входных объектов. Может использоваться любое числовое поле из таблицы атрибутов входных объектов, а также Shape.Z в качестве z-значений 3D-объектов и Shape.M в качестве m-значений, сохраненных в геометрии. Если выбрать ключевое слово <None>, то высота объекта будет интерполирована из окружающей поверхности.
  • Тип – роль входного объекта в определении поверхности TIN. Доступные опции зависят от геометрии входных объектов. Для линейных и полигональных типов объектов поверхности жесткие и мягкие обозначения типа объекта поверхности влияют на способ обработки границы линии или полигона при интерполяции растровой поверхности из набора данных TIN с помощью метода естественной окрестности. Резкий тип объекта поверхности представляет собой границу с резким перепадом высот, например, край обрыва, стены или бордюра на обочине дороги. Мягкий тип объекта поверхности представляет собой границу, где высота определена более плавно.
    • Точечные и мультиточечные объекты могут задаваться как Mass_Points, которые вносят значения высот, сохраняемые как узлы TIN-данных.
    • Линейные объекты могут быть включены в TIN следующим образом:
      • Облако точек, в котором вершины линий преобразуются в узлы TIN.
      • Объекты перегибов Резкая линия или Нерезкая линия, определяющие линейные разрывы в TIN.
    • Полигональные объекты могут быть включены в TIN в виде облаков точек, линий разрыва и следующих типов объектов поверхности:
      • Объектов типа Жесткое вырезание или Мягкое вырезание, задающие область данных поверхности TIN.
      • Объектов типа Жесткое стирание или Мягкое стирание, которые соответствуют внутренним пустотам в данных.
      • Объектов типа Жесткая замена или Мягкая замена, которые определяют области с постоянной высотой.
      • Объектов типа Жесткое заполнение значений или Мягкое заполнение значений, которые назначают целочисленные атрибуты узлам и граням треугольников.
  • Поле тега – числовой атрибут будет присвоен элементам данных TIN с помощью значений, полученных из целочисленного поля атрибутивной таблицы входного объекта.
Value Table
Делоне с ограничениями
(Дополнительный)

Определяет, какой метод триангуляции будет использоваться вдоль линий перегиба TIN.

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

arcpy.ddd.CreateTin(out_tin, {spatial_reference}, {in_features}, {constrained_delaunay})
ИмяОписаниеТип данных
out_tin

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

TIN
spatial_reference
(Дополнительный)

Пространственная привязка выходной TIN. Задайте пространственную привязку для системы координат проекции. Применение географической системы координат не рекомендуется, поскольку триангуляция Делоне может работать неправильно, если координаты x,y выражены в угловых единицах, что может неблагоприятно воздействовать на точность вычислений, основанных на измерении расстояний, как, например, уклон, объем и линия взгляда.

Coordinate System
in_features
[[in_features, height_field, SF_type, tag_value],...]
(Дополнительный)

Входные объекты и связанные с ними свойства, определяющие, как они будут добавлены в TIN.

  • in_features — объекты, которые будут добавлены в TIN.
  • height_field – источник высот для входных объектов. Может быть указано любое числовое поле из таблицы атрибутов входных объектов, а также Shape.Z в качестве z-значений 3D-объектов и Shape.M в качестве m-значений, сохраненных с геометрией. Если выбрать ключевое слово <None>, то высота объекта будет интерполирована из окружающей поверхности.
  • sf_type – роль входного объекта в определении поверхности TIN. Доступные опции зависят от геометрии входных объектов. Для линейных и полигональных типов объектов поверхности жесткие и мягкие обозначения типа объекта поверхности влияют на способ обработки границы линии или полигона при интерполяции растровой поверхности из набора данных TIN с помощью метода естественной окрестности. Резкий тип объекта поверхности представляет собой границу с резким перепадом высот, например, край обрыва, стены или бордюра на обочине дороги. Мягкий тип объекта поверхности представляет собой границу, где высота определена более плавно.
    • Точечные и мультиточечные объекты могут задаваться как Mass_Points, которые вносят значения высот, сохраняемые как узлы TIN-данных.
    • Линейные объекты могут быть включены в TIN как:
      • Mass_Points, в котором вершины линий преобразуются в узлы TIN.
      • Объекты перегибов Hard_Line или Soft_Line, определяющие линейные разрывы в TIN.
    • Полигональные объекты могут быть включены в TIN в виде облаков точек, линий разрыва и следующих типов объектов поверхности:
      • Объектов типа Hard_Clip или Soft_Clip, задающие область данных поверхности TIN.
      • Объектов типа Hard_Erase или Soft_Erase, которые соответствуют внутренним пустотам в данных.
      • Объектов типа Hard_Replace или Soft_Replace, которые определяют области с постоянной высотой.
      • Объектов типа Hardvalue_Fill или Softvalue_Fill, которые назначают целочисленные атрибуты узлам и граням треугольников.
  • tag_field – числовой атрибут, будет получен из целочисленного поля атрибутивной таблицы входного объекта, значения которого могут использоваться для ввода базовой формы атрибутов для элементов данных TIN. Определение <None> приведет к тому, что значения тегов задаваться не будут.
Value Table
constrained_delaunay
(Дополнительный)

Определяет, какой метод триангуляции будет использоваться вдоль линий перегиба TIN.

  • DELAUNAYTIN будет использовать соответствующую триангуляцию Делоне, которая позволяет уплотнять каждый сегмент линий перегиба, чтобы создать множество ребер триангуляции. Используется по умолчанию.
  • CONSTRAINED_DELAUNAYTIN будет использовать триангуляцию Делоне с ограничениями, которая будет добавлять каждый сегмент как отдельное ребро. Правила триангуляции Делоне не соблюдаются только вдоль линий перегиба, которые не будут уплотняться.
Boolean

Пример кода

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

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

arcpy.env.workspace = "C:/data"
arcpy.ddd.CreateTin("NewTIN", "NAD 1983 StatePlane California II FIPS 0402 (Feet).prj", 
                   "points.shp Shape.Z masspoints", "constrained_delaunay")
CreateTin, пример 2 (автономный скрипт)

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

'''****************************************************************************
Name: Define Data Boundary of LAS File
Description: This script demonstrates how to delineate data boundaries of 
             LAS files with irregularly clustered points. It is intended for 
             use as a script tool with one input LAS file.
****************************************************************************'''
# Import system modules
import arcpy

# Set local variables
inLas = arcpy.GetParameterAsText(0)  # input LAS file
ptSpacing = arcpy.GetParameterAsText(1)  # LAS point spacing
classCode = arcpy.GetParameterAsText(2)  # List of integers
returnValue = arcpy.GetParameterAsText(3)  # List of strings
outTin = arcpy.GetParameterAsText(4)  # TIN created to delineate data area
outBoundary = arcpy.GetParameterAsText(5)  # Polygon boundary file

try:
    # Execute LASToMultipoint
    lasMP = arcpy.CreateUniqueName('lasMultipoint', 'in_memory')
    arcpy.ddd.LASToMultipoint(inLas, LasMP, ptSpacing, class_code, 
                             "ANY_RETURNS", "", sr, inFormat, zfactor)
    # Execute CreateTin
    arcpy.ddd.CreateTin(outTin, sr, "{0} Shape.Z masspoints"\
                       .format(lasMP), "Delaunay")
    # Execute CopyTin
    arcpy.ddd.CopyTin(outTin, "{0}_copy".format(outTin))
    # Execute DelineateTinDataArea
    maxEdge = ptSpacing * 4
    arcpy.ddd.DelineateTinDataArea(outTin, maxEdge, "PERIMETER_ONLY")
    # Execute TinDomain
    arcpy.ddd.TinDomain(outTin, outBoundary, "POLYGON")
        
except arcpy.ExecuteError:
    print(arcpy.GetMessages())
except Exception as err:
    print(err)

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

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

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