Доступно с лицензией Spatial Analyst.
Доступно с лицензией 3D Analyst.
Краткая информация
Создает класс объектов изолиний из растровой поверхности.
Использование
Изолинии не выходят за пределы пространственного экстента растра, и они не создаются в областях значений NoData; поэтому сначала необходимо подогнать границы смежных входных данных изолиний в непрерывные наборы классов объектов. В качестве альтернативы стыковке изолиний в краевых зонах, вы можете выполнить объединение смежных растров до построения изолиний.
Если Тип изолиний не соответствует CONTOUR, полигоны изолиний экстраполируются по внешнему ребру растра.
Изолинии могут быть построены для участков с отрицательными значениями растра. Значения изолиний на таких участках будут отрицательными. Отрицательные интервалы изолиний недопустимы.
При наличии дополнительного модуля ArcGIS Spatial Analyst более сглаженные, но менее точные изолинии можно получить путем предварительной обработки входного растра с помощью операции Фокальная статистика с опцией MEAN или инструмента Фильтр с опцией LOW.
Базовая изолиния используется в том случае, например, если вы хотите построить горизонтали через каждые 15 метров, начиная от высоты 10 метров. Базовая изолиния, интервал изолинии и проиндексированный интервал изолиний не указываются. Изолинии будут проведены через значения 10, 25, 40, 55 и так далее.
Задание базовой изолинии не препятствует тому, что изолинии строятся выше или ниже этого значения.
Тип изолиний используется для определения, будет ли выходной класс изолиний линейным или полигональным. Например, если у вас есть растр со значениями от 0 до 1000, и интервал изолинии установлен на 250, инструмент может создать следующие классы объектов:
- CONTOUR – линии на 250, 500, 750 и 1000
- CONTOUR_POLYGON – полигоны между 0-250, 250-500, 500-750, и 750-1000
- CONTOUR_SHELL – полигоны между 0-1000, 0-750, 0-500, и 0-250
- CONTOUR_SHELL_UP – полигоны между 0-1000, 250-1000, 500-1000, и 750-1000
Параметр Максимальное число вершин на полигон может использоваться для подразделения полигона на меньшие полигоны, в зависимости от заданного числа вершин. Он должен использоваться только когда выходные объекты должны содержать очень большое число вершин (несколько миллионов). Этот параметр приводит к созданию выходных данных, схожих с результатом инструмента Нарезать.
Этот параметр служит способом разделения особенно крупных объектов, которые впоследствии могут создать различные проблемы, например, при хранении, анализе или отображении.
Выбор лимита зависит от доступной памяти на компьютере, где будет работать инструмент, и от размера объекта (более крупные объекты требуют больше памяти). На большинстве современных компьютеров с 64-разрядным ПО обычно не возникает проблем с объектами, содержащими сотни тысяч или миллионы вершин. Если вы сталкиваетесь с такими проблемами, установка большего значения для этого параметра, например, 1 миллион, может решить проблемы, связанные с размером объекта.
Параметр ограничения числа вершин может использоваться для подразделения полигона на меньшие полигоны, в зависимости от заданного числа вершин. Он должен использоваться только когда выходные объекты должны содержать очень большое число вершин (несколько миллионов).
Если в параметрах среды указан Экстент, и левый нижний угол не совпадает с каким-либо углом ячейки выходного растра, в процессе обработки будет применен сдвиг для выравнивания ячеек входного растра по указанному экстенту. Сдвиг вызовет пересчет входного растра с использованием билинейного метода. Соответственно, выходные объекты также будут сдвинуты и результирующие объекты могут не полностью покрывать исходный растр. Предотвратить этот сдвиг можно, используя в параметрах среды входной растр в качестве Растра привязки.
Синтаксис
Contour_3d (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 футов и т.д.). Для этого следует задать Интервал изолинии равным 100, Базовая изолиния – 50, а Коэффициент Z – 3.2808 (так как 1 метр = 3.2808 футам). | Double |
contour_type (Дополнительный) | Тип выходных данных.
| 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"
# Check out the ArcGIS 3D Analyst extension license
arcpy.CheckOutExtension("3D")
# Execute Contour
arcpy.Contour_3d(inRaster, outContours, contourInterval, baseContour)
Параметры среды
- Автоподтверждение
- Размер ячейки
- Текущая рабочая область
- Выходное Z-значение по умолчанию
- Экстент
- Географические преобразования
- Разрешение M
- Допуск M
- Поддерживать пространственный индекс
- Выходное ключевое слово CONFIG
- Выходная система координат
- Выходные данные содержат M-значения
- Выходные данные содержат Z значения
- Выходной M домен
- Выходной XY домен
- Выходной Z домен
- Временная рабочая область
- Растр привязки
- Разрешение XY
- Допуск XY
- Разрешение Z
- Допуск Z
Информация о лицензиях
- ArcGIS Desktop Basic: Требует 3D Analyst или Spatial Analyst
- ArcGIS Desktop Standard: Требует 3D Analyst или Spatial Analyst
- ArcGIS Desktop Advanced: Требует 3D Analyst или Spatial Analyst