Изолинии (3D Analyst)

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

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

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

Создает класс объектов изолиний из растровой поверхности.

Более подробно об изолиниях

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

  • Изолинии не выходят за пределы пространственного экстента растра, и они не создаются в областях значений NoData. Сначала сопоставьте смежных входные изолинии на границах в непрерывный набор классов объектов. В качестве альтернативы стыковке изолиний в краевых зонах, вы можете выполнить объединение смежных растров до построения изолиний.

    Однако полигоны изолиний экстраполируются по внешнему ребру растра, если Тип изолиний отличен от Изолиния.

  • Изолинии могут быть построены для участков с отрицательными значениями растра. Значения изолиний на таких участках будут отрицательными. Отрицательные интервалы изолиний недопустимы.

  • Если у вас есть Дополнительный модуль ArcGIS Spatial Analyst, более сглаженные, но менее точные изолинии можно получить путем предварительной обработки входного растра с помощью операции Фокальная статистика с опцией Mean или инструмента Фильтр с опцией Low.

  • Базовая изолиния используется, например, чтобы построить горизонтали через каждые 15 метров, начиная от высоты 10 метров. В данном примере для базовой изолинии будет задано значение 10, а число 15 будет определять интервал изолиний. Изолинии будут проведены через значения 10, 25, 40, 55 и так далее.

  • Задание базовой изолинии не препятствует тому, что изолинии строятся выше или ниже этого значения.

  • Тип изолиний используется для определения, будет ли выходной класс изолиний линейным или полигональным. Например, если у вас есть растр со значениями от 0 до 575 и интервал изолинии установлен на 250, инструмент может создать следующие классы объектов: Представлен фактический результат, а также отдельные полигоны компонентов.

    • CONTOUR—Линии на 250 и 500
    • CONTOUR_POLYGON—Неперекрывающиеся полигоны между 0-250, 250-500 и 500-575 (Рис. 1)

      Полигоны между 0-250, 250-500 и 500-575

      Рисунок 1. Опция Полигоны изолиний создает три неперекрывающихся полигона между 0-250, 250-500 и 500-575.

    • CONTOUR_SHELL—Перекрывающиеся полигоны между 0-575, 0-500 и 0-250 (Рис. 2)

      Полигоны между 0-575, 0-500 и 0-250

      Рисунок 2. Опция Оболочки изолиний создает три перекрывающихся полигона между 0-575, 0-500 и 0-250.

    • CONTOUR_SHELL_UP—Перекрывающиеся полигоны между 0-575, 250-575 и 500-575 (Рис. 3)

      Полигоны между 0-575, 250-575 и 500-575

      Рисунок 3. Опция Оболочки изолиний вершины создает три перекрывающихся полигона между 0-575, 250-575 и 500-575.

  • Параметр Максимальное число вершин в объекте может использоваться для разделения объекта. Он должен использоваться только когда выходные объекты должны содержать очень большое число вершин (несколько миллионов). Этот параметр приводит к созданию выходных данных, схожих с результатом инструмента Нарезать.

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

    Выбор лимита зависит от доступной памяти на компьютере, где будет работать инструмент, и от размера объекта (более крупные объекты требуют больше памяти). На большинстве современных компьютеров с 64-разрядным ПО обычно не возникает проблем с объектами, содержащими сотни тысяч или миллионы вершин. Если вы сталкиваетесь с такими проблемами, установка большего значения для этого параметра, например, 1 миллион, может решить проблемы, связанные с размером объекта.

    Параметр Ограничение вершин может использоваться для разделения объекта. Он должен использоваться только когда выходные объекты должны содержать очень большое число вершин (несколько миллионов).

  • По умолчанию этот инструмент будет использовать многоядерные процессоры, если они доступны. Максимальное число использующихся ядер – четыре.

    Чтобы использовать меньшее число ядер, настройте параметр среды Коэффициент параллельной обработки.

  • Если Экстент задан в параметре среды, и левый нижний угол выходного экстента не соответствует углу ячейки входного растра, во время обработки произойдет сдвиг выравнивания ячеек входного растра в соответствии с заданным экстентом. Сдвиг вызовет пересчет входного растра с использованием билинейного метода. Следовательно, выходные объекты также будут смещаться, и результирующие выходные объекты могут не накладываться точно на исходный входной растр. Предотвратить этот сдвиг можно, используя в параметрах среды входной растр в качестве Растра привязки.

Параметры

ПодписьОписаниеТип данных
Входной растр

Входной растр поверхности.

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

Выходные объекты изолиний.

Feature Class
Высота сечения

Интервал или расстояние между соседними изолиниями.

Этот параметр может быть представлен любым положительным числом.

Double
Базовая изолиния
(Дополнительный)

Значение базовой изолинии.

Изолинии строятся для значений выше и ниже значения этого параметра таким образом, чтобы охватить весь диапазон значений на входном растре. Значение по умолчанию равно нулю.

Double
Z Коэффициент
(Дополнительный)

Коэффициент конвертации единиц измерения, применяемый при построении изолиний. Значение по умолчанию равно 1.

Изолинии генерируются на основе Z-значений входного растра, которые чаще всего измеряются в метрах или футах. При использовании значения по умолчанию (равно 1), изолинии будут иметь те же единицы измерения, что и Z-значения входного растра. Чтобы создать изолинии в единицах, отличающихся от единиц z-значений, задайте соответствующее значения для коэффициента z. Нет необходимости делать x,y и z-единицы одинаковыми для этого инструмента.

Например, если значения высот во входном растре измеряются в футах, но изолинии необходимо построить на основе других единиц измерения — метров, следует задать коэффициент Z равный 0,3048 (т.к. 1 фт = 0,3048 м).

Другой пример – рассмотрим входной растр с географическими координатами WGS_84, при этом его высоты измеряются в метрах. Необходимо построить изолинии для этого растра с шагом 100 футов, причем базовым должно быть значение в 50 футов (т.е. изолинии будут проходить на высотах 50 футов, 150 футов, 250 футов и т.д.). Для этого следует задать Интервал изолинии равным 100, Базовая изолиния – 50, а Коэффициент Z – 3.2808 (так как 1 метр = 3.2808 футам).

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

Задает выходной тип выходных данных. Выходные данные могут представлять изолинии как в виде линий, так и в виде полигонов. Есть несколько опций для полигонов.

  • ИзолинииКласс полилинейных объектов контуров (изолиний). Используется по умолчанию.
  • Полигоны изолинийКласс полигональных объектов изолиний с заливкой.
  • Оболочки изолинийКласс полигональных объектов, в котором верхняя граница полигона увеличивается с нарастающим итогом на величину интервала. Нижняя граница не меняется и равна минимальному значению растра.
  • оболочки изолиний вершиныКласс полигональных объектов, в котором нижняя граница полигона увеличивается с нарастающим итогом от минимума растра на значение интервала. Верхняя граница не меняется и равна максимальному значению растра.
String
Максимальное число вершин в объекте
(Дополнительный)

Лимит вершин при разделении объекта. Должен использоваться только когда выходные объекты содержат очень большое число вершин (несколько миллионов).

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

При оставлении пустым выходные объекты делиться не будут. По умолчанию не заполнено.

Long

arcpy.ddd.Contour(in_raster, out_polyline_features, contour_interval, {base_contour}, {z_factor}, {contour_type}, {max_vertices_per_feature})
ИмяОписаниеТип данных
in_raster

Входной растр поверхности.

Raster Layer
out_polyline_features

Выходные объекты изолиний.

Feature Class
contour_interval

Интервал или расстояние между соседними изолиниями.

Этот параметр может быть представлен любым положительным числом.

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

Значение базовой изолинии.

Изолинии строятся для значений выше и ниже значения этого параметра таким образом, чтобы охватить весь диапазон значений на входном растре. Значение по умолчанию равно нулю.

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

Коэффициент конвертации единиц измерения, применяемый при построении изолиний. Значение по умолчанию равно 1.

Изолинии генерируются на основе Z-значений входного растра, которые чаще всего измеряются в метрах или футах. При использовании значения по умолчанию (равно 1), изолинии будут иметь те же единицы измерения, что и Z-значения входного растра. Чтобы создать изолинии в единицах, отличающихся от единиц z-значений, задайте соответствующее значения для коэффициента z. Нет необходимости делать x,y и z-единицы одинаковыми для этого инструмента.

Например, если значения высот во входном растре измеряются в футах, но изолинии необходимо построить на основе других единиц измерения — метров, следует задать коэффициент Z равный 0,3048 (т.к. 1 фт = 0,3048 м).

Другой пример – рассмотрим входной растр с географическими координатами WGS_84, при этом его высоты измеряются в метрах. Необходимо построить изолинии для этого растра с шагом 100 футов, причем базовым должно быть значение в 50 футов (т.е. изолинии будут проходить на высотах 50 футов, 150 футов, 250 футов и т.д.). Для этого задайте для contour_interval 100, для base_contour 50 и для z_factor 3.2808 (т.к. 1 метр = 3.2808 фута).

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

Задает выходной тип выходных данных. Выходные данные могут представлять изолинии как в виде линий, так и в виде полигонов. Есть несколько опций для полигонов.

  • CONTOURКласс полилинейных объектов контуров (изолиний). Используется по умолчанию.
  • CONTOUR_POLYGONКласс полигональных объектов изолиний с заливкой.
  • CONTOUR_SHELLКласс полигональных объектов, в котором верхняя граница полигона увеличивается с нарастающим итогом на величину интервала. Нижняя граница не меняется и равна минимальному значению растра.
  • CONTOUR_SHELL_UPКласс полигональных объектов, в котором нижняя граница полигона увеличивается с нарастающим итогом от минимума растра на значение интервала. Верхняя граница не меняется и равна максимальному значению растра.
String
max_vertices_per_feature
(Дополнительный)

Лимит вершин при разделении объекта. Должен использоваться только когда выходные объекты содержат очень большое число вершин (несколько миллионов).

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

При оставлении пустым выходные объекты делиться не будут. По умолчанию не заполнено.

Long

Пример кода

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

В этом примере создаются изолинии из растра типа Esri Grid, и они выводятся в виде шейп-файла.

import arcpy
from arcpy import env  
env.workspace = "C:/data"
arcpy.Contour_3d("elevation", "C:/output/outcontours.shp", 200, 0)
Contour, пример 2 (автономный скрипт)

В этом примере создаются изолинии из растра типа Esri Grid, и они выводятся в виде шейп-файла.

# Name: Contour_3d_Ex_02.py
# Description: Creates contours or isolines from a raster surface.
# Requirements: 3D Analyst Extension

# Import system modules
import arcpy
from arcpy import env

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

# Set local variables
inRaster = "elevation"
contourInterval = 200
baseContour = 0
outContours = "C:/sapyexamples/output/outcontours02.shp"

# Execute Contour
arcpy.ddd.Contour(inRaster, outContours, contourInterval, baseContour)

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

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

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