Инструмент Насыпи/выемки (Cut Fill) (3D Analyst)
Резюме
Вычисляет разницу в объеме между двумя поверхностями. Обычно используется для операций вырезания и заполнения.
Рисунок
Использование
-
Инструмент Насыпи/выемки позволяет строить карту на основании двух входных поверхностей — до и после события — и отображать площади участков и объемы материалов, которые были изменены путем удаления или добавления материала поверхности.
-
Оба входных растра должны быть совпадающими. Это означает, что у них должна быть одна и та же начальная точка, одинаковое число строк и столбцов ячеек и один и тот же размер ячеек.
-
Чтобы получить корректный результат, z-единицы должны совпадать с наземными единицами измерения x,y. Это гарантирует, что объемы будут выражены в значимых кубических единицах измерения (например, кубических метрах). Если они отличаются, используйте коэффициент z, чтобы преобразовать единицы z в единицы x,y. Например, если x,y-единицами измерения являются метры, а z-единицами - футы, то можно использовать z-коэффициент 0,3048 для преобразования футов в метры.
Или можно использовать инструмент Умножить (Times) группы инструментов Математические (Math), чтобы получить растр поверхности, в котором единицы измерения z-значений соответствуют единицам измерения наземных координат.
-
Таблица атрибутов выходного растра представляет изменения в объемах поверхности, вычисленные в результате выполнения операции Насыпи/Выемки. Положительные значения в разнице объемов указывают на участки растра "до события", где была проведена выемка материала. Отрицательные значения указывают на участки, на которые материал был добавлен (участки насыпей). Более подробно о том, производятся вычисления, см. в разделе Как работает инструмент Насыпи/Выемки (Cut Fill).
-
Когда операция Насыпи/Выемки запускается через инструмент, по умолчанию применяется специализированная шкала, которая выделяет участки насыпей и выемок. В соответствии с этой шкалой участки выемок отображаются синим цветом, а участки насыпей - красным цветом. Участки, которые не изменились, будут показаны серым цветом.
Синтаксис
Параметр | Объяснение | Тип данных |
in_before_surface |
Входная поверхность "до". | Raster Layer |
in_after_surface |
Входная поверхность "после". | Raster Layer |
out_raster | Выходной растр, определяющий регионы для насыпей и выемок. Значения показывают местоположения на поверхности, где зафиксированы изменения и объём насыпи или выемки. | Raster Dataset |
z_factor (дополнительно) | Количество наземных единиц измерения координат x,y в одной единице измерения z-значения поверхности. Коэффициент z (z-factor) приводит в соответствие единицы измерения z-значений в том случае, если они отличаются от единиц измерения координат x,y входной поверхности. При вычислении результирующей выходной поверхности z-значения входной поверхности умножаются на коэффициент по z. Если координаты x,y и z-значения приведены в одной и той же системе координат, коэффициент z равен 1. Это значение используется по умолчанию. Если координаты x,y и z-значения приведены в отличающихся единицах измерения, для коэффициента по z должно быть задано соответствующее значение, или же результаты будут некорректными. Например, если единицы измерения для z-значений – футы, а координаты x,y приведены в метрах, для преобразования z-значений из футов в метры вы должны использовать коэффициент по z, равный 0,3048 (1 фут = 0,3048 метра). | Double |
Пример кода
В этом примере вычисляется объем и площадь для областей насыпей и выемок, и в качестве результата выдается растр Grid.
import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.CutFill_3d("elevation01", "elevation02", "c:/output/outcutfill01", 1)
В этом примере вычисляется объем и площадь для областей насыпей и выемок, и в качестве результата выдается растр Grid.
# Name: Cutfill_3d_Ex_02.py
# Description: Calculates the volume and area of cut and
# fill locations.
# Requirements: 3D Analyst Extension
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inBeforeRaster = "elevation01"
inAfterRaster = "elevation02"
outRaster = "C:/output/outcutfill02"
zFactor = 0.5
# Check out the ArcGIS 3D Analyst extension license
arcpy.CheckOutExtension("3D")
# Execute CutFill
arcpy.CutFill_3d(inBeforeRaster, inAfterRaster, outRaster, zFactor)