Изолиния (3D Analyst)
Резюме
Создает класс линейных объектов изолиний из растровой поверхности.
Использование
-
Изолинии не выходят за пределы пространственного экстента растра, и они не создаются в областях значений NoData; поэтому, сначала необходимо подогнать границы смежных входных данных изолиний в непрерывные наборы классов объектов. В качестве альтернативы стыковке изолиний в краевых зонах, вы можете выполнить объединение смежных растров до построения изолиний.
-
Изолинии могут быть построены для участков с отрицательными значениями растра. Значения изолиний на таких участках будут отрицательными. Отрицательные интервалы изолиний недопустимы.
Если вам доступен дополнительный модуль Дополнительный модуль ArcGIS Spatial Analyst, более сглаженные, но менее точные изолинии можно получить путем предварительной обработки входного растра с помощью операции Фокальная статистика (Focal_Statistics) с опцией MEAN или инструмента Фильтр (Filter) с опцией LOW.
-
Базовая изолиния используется в том случае, например, если вы хотите построить горизонтали через каждые 15 метров, начиная от высоты 10 метров. В данном примере, для базовой изолинии будет задано значение 10, а число 15 будет определять интервал изолиний. Изолинии будут проведены через значения 10, 25, 40, 55 и так далее.
-
Задание базовой изолинии не препятствует тому, что изолинии строятся выше или ниже этого значения.
Синтаксис
Параметр | Объяснение | Тип данных |
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 (z_factor) = 3,2808 (т.к. 1 метр = 3,2808 фута). | Double |
Пример кода
В этом примере создаются изолинии из растра типа Esri Grid, и они выводятся в виде шейп-файла.
import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.Contour_3d("elevation", "C:/output/outcontours.shp", 200, 0)
В этом примере создаются изолинии из растра типа 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)