arcgis中坡向计算工作原理说明

2024-04-18 15:04

本文主要是介绍arcgis中坡向计算工作原理说明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

用于识别出从每个像元到其相邻像元方向上值的变化率最大的下坡方向。坡向可以被视为坡度方向。输出栅格中各像元的值可指示出各像元位置处表面的朝向的罗盘方向。将按照顺时针方向进行测量,角度范围介于 0(正北)到 360(仍是正北)之间,即完整的圆。不具有下坡方向的平坦区域将赋值为 -1。

   坡向数据集中每个像元的值都可指示出该像元的坡度朝向。

    从概念上讲,坡向工具将根据要处理的像元或中心像元周围一个 3 x 3 的像元邻域的 z 值拟合出一个平面。该平面的朝向就是要处理的像元的坡向。

    下图显示的是输入高程数据集和输出坡向栅格。


1. 坡向算法

   移动的 3 x 3 窗口会访问输入栅格中的每个像元,而每次位于窗口中心的像元的坡向值将通过一种将纳入八个相邻像元值的算法进行计算。这些像元使用字母 a 至 i 进行标识,其中 e 表示当前正在计算坡向的像元。

    像元 e 在 x 方向上的变化率将通过以下算法进行计算:

[dz/dx] = ((c + 2f + i) - (a + 2d + g)) / 8

   像元 e 在 y 方向上的变化率将通过以下算法进行计算:

[dz/dy] = ((g + 2h + i) - (a + 2b + c)) / 8

   代入像元 e 在 x 方向和 y 方向上的变化率,坡向将通过以下算法进行计算:

aspect = 57.29578 * atan2 ([dz/dy], -[dz/dx])

   然后,坡向值将根据以下规则转换为罗盘方向值(0 到 360 度):

2. 坡向计算示例

   示例中,将计算移动窗口内中心像元的坡向值。

中心像元 e 在 x 方向上的变化率为:

  [dz/dx] =((c + 2f + i)-(a + 2d + g))/8=((85 + 170 + 84))-(101 + 202 + 101))/8=-8.125

像元 e 在 y 方向上的变化率为:

  [dz/dy] = ((g + 2h + i)-(a + 2b + c) / 8 =((101 + 182 + 84)-(101 + 184 + 85))/ 8 = -0.375

坡向计算如下:

  aspect = 57.29578 * atan2 ([dz/dy], -[dz/dx])= 57.29578 * atan2 (-0.375, 8.125) = -2.64

由于计算得出的值小于零,则根据最终规则得出:

  cell = 90.0 - aspect = 90 - (-2.64)= 90 + 2.64 = 92.64

中心像元 e 的值 92.64 表明它的坡向为朝东。

3. 参考文献

Burrough, P. A., and McDonell, R. A., 1998. Principles of Geographical Information Systems (Oxford University Press, New York), 190 pp.

这篇关于arcgis中坡向计算工作原理说明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/915110

相关文章

Go语言中make和new的区别及说明

《Go语言中make和new的区别及说明》:本文主要介绍Go语言中make和new的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 概述2 new 函数2.1 功能2.2 语法2.3 初始化案例3 make 函数3.1 功能3.2 语法3.3 初始化

java中新生代和老生代的关系说明

《java中新生代和老生代的关系说明》:本文主要介绍java中新生代和老生代的关系说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、内存区域划分新生代老年代二、对象生命周期与晋升流程三、新生代与老年代的协作机制1. 跨代引用处理2. 动态年龄判定3. 空间分

从原理到实战深入理解Java 断言assert

《从原理到实战深入理解Java断言assert》本文深入解析Java断言机制,涵盖语法、工作原理、启用方式及与异常的区别,推荐用于开发阶段的条件检查与状态验证,并强调生产环境应使用参数验证工具类替代... 目录深入理解 Java 断言(assert):从原理到实战引言:为什么需要断言?一、断言基础1.1 语

MySQL之InnoDB存储引擎中的索引用法及说明

《MySQL之InnoDB存储引擎中的索引用法及说明》:本文主要介绍MySQL之InnoDB存储引擎中的索引用法及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录1、背景2、准备3、正篇【1】存储用户记录的数据页【2】存储目录项记录的数据页【3】聚簇索引【4】二

mysql中的数据目录用法及说明

《mysql中的数据目录用法及说明》:本文主要介绍mysql中的数据目录用法及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、版本3、数据目录4、总结1、背景安装mysql之后,在安装目录下会有一个data目录,我们创建的数据库、创建的表、插入的

MySQL中的表连接原理分析

《MySQL中的表连接原理分析》:本文主要介绍MySQL中的表连接原理分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、环境3、表连接原理【1】驱动表和被驱动表【2】内连接【3】外连接【4编程】嵌套循环连接【5】join buffer4、总结1、背景

深度解析Spring AOP @Aspect 原理、实战与最佳实践教程

《深度解析SpringAOP@Aspect原理、实战与最佳实践教程》文章系统讲解了SpringAOP核心概念、实现方式及原理,涵盖横切关注点分离、代理机制(JDK/CGLIB)、切入点类型、性能... 目录1. @ASPect 核心概念1.1 AOP 编程范式1.2 @Aspect 关键特性2. 完整代码实

Java Stream的distinct去重原理分析

《JavaStream的distinct去重原理分析》Javastream中的distinct方法用于去除流中的重复元素,它返回一个包含过滤后唯一元素的新流,该方法会根据元素的hashcode和eq... 目录一、distinct 的基础用法与核心特性二、distinct 的底层实现原理1. 顺序流中的去重

SpringBoot集成LiteFlow工作流引擎的完整指南

《SpringBoot集成LiteFlow工作流引擎的完整指南》LiteFlow作为一款国产轻量级规则引擎/流程引擎,以其零学习成本、高可扩展性和极致性能成为微服务架构下的理想选择,本文将详细讲解Sp... 目录一、LiteFlow核心优势二、SpringBoot集成实战三、高级特性应用1. 异步并行执行2

Maven中的profiles使用及说明

《Maven中的profiles使用及说明》:本文主要介绍Maven中的profiles使用及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录主要用途定义 Profiles示例:多环境配置激活 Profiles示例:资源过滤示例:依赖管理总结Maven 中的