Доступно с лицензией Spatial Analyst.
Доступно с лицензией 3D Analyst.
Сводка
Строит изолинии по растровой поверхности. Включение объектов-барьеров позволяет строить изолинии независимо, по разным сторонам барьера.
Использование
Текущая версия инструмента Изолинии с барьерами позволяет получить выходные данные только в виде полилиний. Если в параметре Тип изолиний выбран Полигон, то эта настройка не будет учитываться, и выходные данные все равно будут в виде полилиний.
При наличии дополнительного модуля ArcGIS Spatial Analyst более сглаженные, но менее точные изолинии можно получить путем предварительной обработки входного растра с помощью операции Фокальная статистика с опцией Среднее или инструмента Фильтр с опцией Низкочастотный.
Для ячеек со значением NoData изолинии строятся на расстоянии, равном половине размера ячейки. Это означает, что изолинии будут проходить поверх отдельных ячеек NoData. Тем не менее, для области ячеек NoData, размером 3 на 3 ячейки, изолинии все равно будут построены на расстоянии половины размера ячейки.
Поле Type в выходном классе пространственных объектов-изолиний может иметь следующие значения:
1 for contours 2 for indexed contours 3 for explicit contours
Проиндексированный интервал изолиний используется для получения дополнительных изолиний, которые кодируются значением 2 в поле Type выходного класса объектов.
Базовая изолиния используется в том случае, например, если вы хотите построить горизонтали через каждые 15 метров, начиная от высоты 10 метров. Базовая изолиния, интервал изолинии и проиндексированный интервал изолиний не указываются. Изолинии будут проведены через значения 10, 25, 40, 55 и так далее.
Задание базовой изолинии не препятствует тому, что изолинии строятся выше или ниже этого значения.
Текстовый файл, содержащий спецификацию значений изолиний, трактуется следующим образом:
- Любая строка, которая не сдержит число, игнорируется и воспринимается, как комментарии.
- Строка, которая содержит одно число, воспринимается как точное определение значения изолинии.
- Строка с 3 значениями будет расцениваться как основная, интервал изолинии и индексированный интервал.
- Строка, которая содержит четыре значения, интерпретируется как: от-, до-, через-, и проиндексированный интервал изолиний.
Например, если минимальное значение растра – 102, а максимальное – 500, то текстовой файл, содержащий:
# contour values and ranges 122.75 485 500 5 12 4 100 99
создаст изолинии в:
122.75 104, 204, 304, 404 103, 202, 301, 400, 499 485, 490, 495, 500 497
Если значения ячеек растра находятся в пределах полигонального объекта – барьера, изолинии построенные по этим значениям, будут разбиты по этому барьеру. Если вы хотите игнорировать ячейки, попадающие в пределы полигона – барьера, измените значения этих ячеек на NoData.
Если входная растровая поверхность очень большая, или получено очень много выходных объектов, в оперативной памяти может быть создано большое количество временных файлов. Если такой результат часто встречается при работе с этим инструментом, попробуйте следующие действия:
- Увеличите доступное место на диске, где расположены временные файлы.
- Уменьшите число изолиний, или разбейте весь диапазон значений на группы и обрабатывайте группы по отдельности, с последующим объединением отдельных наборов в единый финальный класс объектов.
- Обрабатывайте входные данные по секциям (листам), затем объедините отдельные наборы в один набор данных.
Синтаксис
ContourWithBarriers(in_raster, out_contour_feature_class, {in_barrier_features}, {in_contour_type}, {in_contour_values_file}, {explicit_only}, {in_base_contour}, {in_contour_interval}, {in_indexed_contour_interval}, {in_contour_list}, {in_z_factor})
Parameter | Объяснение | Тип данных |
in_raster | Входной растр поверхности. | Raster Layer; Raster Dataset; Mosaic Layer; Mosaic Dataset |
out_contour_feature_class | Выходные объекты изолиний. | Feature Class |
in_barrier_features (Дополнительный) | Входные объекты барьеров. Выходными данными могут быть полилинейные или полигональные объекты. | Feature Layer |
in_contour_type (Дополнительный) | Тип создаваемых изолиний.
Примечание:Текущая версия данного инструмента позволяет получить выходные данные только в виде полилиний. Если параметр Тип изолиний установлен на полигон, эта установка учтена не будет, и выходные данные все равно будут в виде полилиний. | String |
in_contour_values_file (Дополнительный) | Базовая изолиния, интервал изолиний, проиндексированный интервал изолиний и точные значения изолиний можно указать в текстовом файле. | File |
explicit_only (Дополнительный) | Используются только точные значения изолиний. Базовая изолиния, интервал изолинии, и проиндексированный интервал изолиний не указываются.
| Boolean |
in_base_contour (Дополнительный) | Значение базовой изолинии. Изолинии строятся для значений выше и ниже значения этого параметра таким образом, чтобы охватить весь диапазон значений на входном растре. Значение по умолчанию равно нулю. | Double |
in_contour_interval (Дополнительный) | Интервал или расстояние между соседними изолиниями. Этот параметр может быть представлен любым положительным числом. | Double |
in_indexed_contour_interval (Дополнительный) | Изолинии будут построены также и для этого интервала, и соответствующим образом помечены флагами в выходном классе объектов. | Double |
in_contour_list [in_explicit_contour,...] (Дополнительный) | Точные значения, по которым будут построены изолинии. | Double |
in_z_factor (Дополнительный) | Коэффициент конвертации единиц измерения, применяемый при построении изолиний. Значение по умолчанию равно 1. Изолинии генерируются на основе Z-значений входного растра, которые чаще всего измеряются в метрах или футах. При использовании значения по умолчанию (равно 1), изолинии будут иметь те же единицы измерения, что и Z-значения входного растра. Для построения изолиний в единицах измерения, отличных от единиц Z-значений, необходимо задать соответствующее значение коэффициента z. Обратите внимание, для работы этого инструмента необходимо, чтобы единицы измерения горизонтальных координат X, Y и Z-значений поверхности совпадали. Например, если значения рельефа во входном растре измеряются в футах, но изолинии необходимо построить на основе других единиц измерения – метров, следует задать коэффициент Z равный 0,3048 (так как 1 фут = 0,3048 метра). | Double |
Пример кода
В этом примере создаются изолинии из растра типа Esri Grid, при использовании входного объекта барьеров. Также указываются параметры базового значения и интервала. Выходные изолиний являются полилиниями в шейп-файле.
import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.ContourWithBarriers_3d("elevation", "C:/output/outcwb.shp",
"elevation_barrier.shp", "POLYLINES", "", "", 0, 300)
В этом примере создаются изолинии из растра типа Esri Grid, при использовании входного объекта барьеров. Также указываются параметры базового значения и интервала. Выходные изолиний являются полилиниями в шейп-файле.
# Name: ContourWithBarriers_3d_Ex_02.py
# Description: Creates contours from a raster surface. The inclusion of
# barrier features will allow one to independently generate contours on
# either side of a barrier.
# 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"
inBarrier = "elevation_barrier.shp"
inTextFile = ""
explicitValues = "NO_EXPLICIT_VALUES_ONLY"
contourInterval = 200
contourList = "600; 935; 1237.4"
baseContour = 0
outContours = "C:/output/outcwb.shp"
# Execute Contour
arcpy.ContourWithBarriers_3d(inRaster, outContours, inBarrier, "POLYLINES",
inTextFile, explicitValues, baseContour,
contourInterval, "", contourList, "")
Environments
Информация о лицензиях
- Basic: Требуется 3D Analyst или Spatial Analyst
- Standard: Требуется 3D Analyst или Spatial Analyst
- Advanced: Требуется 3D Analyst или Spatial Analyst