ArcGIS小知识(十一)——栅格数据在矢量范围的端点值(线)以及整体差值(面)
目录
本文是以泥石流沟道及其参数提取为例,使用面矢量裁剪范围内的线矢量。并提取线矢量的端点,最后结合DEM计算端点的高程,计算流域内最大高差与坡度。可以应用于自动计算大量沟道的纵坡等字段以及流域整体最大高差与坡度。
一:提取流域内矢量(面矢量提取其内的线矢量)
首先通过DEM可以自动提取水系信息(因为工作中师兄已经提取好了整个工作区的,以后有机会再试试提取流程,貌似很简单)。
加载面矢量(泥石流流域)和线矢量(DEM自动提取的沟道),使用arctoolbox里的“Analysis Tools”->”Overlay”->”Intersect”选取流域内的进行提取。
也可以使用工具栏的Selection->select by location使用Intersect进行相交选取(但是实验证明大量数据时使用arctoolbox的工具更快,否则分分钟卡到怀疑人生)。
二、计算每条沟道的纵坡(计算点的栅格值):
用于计算端点的高程值或对应的slope等栅格数据的值。
1、提取端点:使用Feature Vertices To Points提取首、尾点。分别导出。(解译沟道时,沟道矢量从沟口开始向沟头画或者统一反过来,否则自动生成的起终点混乱)
2、计算点对应DEM的值,使用Extract Values to Points(必须在Stop edit后才行)
3、使用jion链接表,直接计算纵坡(注意:如果纵坡的单位是‰,别忘了乘1000)。纵坡即坡降公式:(沟头点高程-沟口点高程)/够长。
三、计算流域内相对高差和坡度(面矢量内栅格最大最小差值)
首先生成整个北京的DEM与slope。
然后使用Zonal Statistics as Table输入“泥石流沟流域”依次对DEM和Slope进行计算,其中的“RANGE”字段表示的就是相对高差或者坡度。
转载自:https://blog.csdn.net/liukunrs/article/details/82154769