ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • 帮助
  • Sign Out
ArcGIS Desktop

ArcGIS Online

专为贵组织打造的制图平台

ArcGIS Desktop

全面的专业性 GIS

ArcGIS Enterprise

面向企业的 GIS

ArcGIS Developers

用于构建位置感知应用程序的工具

ArcGIS Solutions

适用于行业的免费模板地图和应用程序

ArcGIS Marketplace

获取适用于组织的应用程序和数据

  • 文档
  • 支持
Esri
  • 登录
user
  • 我的个人资料
  • 登出

ArcMap

  • 主页
  • 入门
  • 地图
  • 分析
  • 管理数据
  • 工具
  • 扩展模块

填挖方

需要 Spatial Analyst 许可。

需要 3D Analyst 许可。

  • 描述
  • 插图
  • 使用方法
  • 语法
  • 代码示例
  • 环境
  • 许可信息

描述

计算两表面间体积的变化。通常用于执行填挖操作。

了解有关填挖方工具工作原理的详细信息

插图

填挖方插图
CutFill_3d (Before_Ras, After_Ras, OutRas)
填挖方字段插图
执行填/挖操作时,默认情况下,将对图层使用专用渲染器来高亮显示执行填挖操作的位置。输出栅格的属性表用于确定显示方式,并且分别将正体积和负体积视为挖出材料的位置(已移除)和填充材料的位置(已添加)。

使用方法

  • 通过填挖方工具可基于操作前后两个输入表面创建一个地图,以便显示出由于移除或添加表面材料而发生变化的表面材料的面积和体积。

  • 这两个输入栅格表面必须重叠。即必须具有公共原点、相同的像元行数和列数以及相同的像元大小。

  • 要获得精确的结果,z 单位应与 x,y 地面单位相同。这样可以确保所生成体积的单位属于有意义的立方单位制(如立方米)。如果二者不同,可使用 z 因子将 z 单位转换为 x,y 单位。例如,如果 x,y 单位是米而 z 单位是英尺,则应指定 0.3048 的 z 因子以将英尺转换为米。

    或者,使用乘数学工具创建一个表面栅格,在此栅格中,z 值已调整为与地面单位保持一致。

  • 输出栅格的属性表可显示出执行填挖操作后表面体积的变化情况。使用正体积差值表示执行过挖操作(移除材料)前的栅格表面区域。使用负值表示执行过填操作(添加材料)的区域。请参阅填挖方工具的工作原理获取有关如何计算结果的详细信息。

  • 利用此工具执行填/挖操作时,默认情况下,将使用专用渲染器来高亮显示执行填挖操作的位置。该渲染器将被挖的区域绘制成蓝色,将被填的区域绘制成红色。没有变化的区域将显示为灰色。

  • 若要对输入栅格进行重采样,需使用双线性技术。例如,当输出栅格与输入栅格的坐标系统、范围或像元大小不同时,可对输入栅格进行重采样。

语法

arcpy.ddd.CutFill(in_before_surface, in_after_surface, out_raster, {z_factor})
参数说明数据类型
in_before_surface

表示填/挖操作之前的表面的输入。

Raster Layer
in_after_surface

表示填/挖操作之后的表面的输入。

Raster Layer
out_raster

定义挖填区域的输出栅格。

这些值显示了已向表面添加或从表面移除的位置和数量。

Raster Dataset
z_factor
(可选)

一个表面 z 单位中地面 x,y 单位的数量。

z 单位与输入表面的 x,y 单位不同时,可使用 z 因子调整 z 单位的测量单位。计算最终输出表面时,将用 z 因子乘以输入表面的 z 值。

如果 x,y 单位和 z 单位采用相同的测量单位,则 z 因子为 1。这是默认设置。

如果 x,y 单位和 z 单位采用不同的测量单位,则必须将 z 因子设置为适当的因子,否则会得到错误的结果。例如,如果 z 单位是英尺而 x,y 单位是米,则应使用 z 因子 0.3048 将 z 单位从英尺转换为米(1 英尺 = 0.3048 米)。

Double

代码示例

CutFill 示例 1(Python 窗口)

此示例将计算出填挖操作位置处的体积和面积,并将结果输出为 Grid 栅格。

import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.CutFill_3d("elevation01", "elevation02", "c:/output/outcutfill01", 1)
CutFill 示例 2(独立脚本)

此示例将计算出填挖操作位置处的体积和面积,并将结果输出为 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)

环境

  • 自动提交
  • 像元大小
  • 像元大小投影方法
  • 压缩
  • 当前工作空间
  • 范围
  • 地理变换
  • 掩膜
  • 输出配置关键字
  • 输出坐标系
  • 临时工作空间
  • 捕捉栅格
  • 切片大小

许可信息

  • Basic: 需要 3D Analyst 或 Spatial Analyst
  • Standard: 需要 3D Analyst 或 Spatial Analyst
  • Advanced: 需要 3D Analyst 或 Spatial Analyst

相关主题

  • 栅格表面工具集概述

ArcGIS Desktop

  • 主页
  • 文档
  • 支持

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

关于 Esri

  • 关于我们
  • 招贤纳士
  • Esri 博客
  • 用户大会
  • 开发者峰会
Esri
分享您的想法。
Copyright © 2021 Esri. | 隐私政策 | 法律声明