【ArcGIS】关于ArcGIS建模及明暗等高线提取的浅浅记录

本文记录了一次使用ArcGIS进行空间分析实验的过程,旨在理解和提取DEM影像的明暗等高线。首先通过等值线工具获取等高线,接着利用坡向工具确定光照条件,并通过条件筛选得到向阳和背阳的区域。接着使用标识工具结合等高线和光照信息,创建具有立体感的明暗等高线。实验详细阐述了每个步骤,并展示了建模和配置色彩的结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一个很简单的本科生的空间分析实验,以前大学做得迷迷糊糊的,现在弄懂了浅浅记录一下,希望以后用得到。

这里有一幅dem影像 黑色的代表低高程 白色代表高高程 我们如何提取它的明暗等高线呢?

老问题 首先回答什么是明暗等高线。
【明暗等高线】为提高等高线的表现力,在确定光源前提下,将背光坡的等高线加粗或加深,迎光坡的等高线变细或变浅,即形成明暗的反差,从而提高等高线的立体效果。为强化等高线的明暗反差,有的将粗细与深浅相结合应用,如“浮雕式表现法”。明暗等高线既可保持等高线的基本功能,又有立体感,多用于表示海底地貌、月球的“月貌”等。 
示意图如下👇

思路:
        既然最后结果是要获得“明暗等高线”,也就是说,首先得获得等高线,其次考虑明暗。
        等高线的部分简单,用【等值线工具】(输入dem,输出线shp)。
        明暗的部分我们考虑坡向【坡向工具】(输入dem,输出一个以东南西北或说0-360分类的dem);定义里说了要固定光源,那就在坡向后的dem里我们再定义条件,提取某范围(例如45-225)的dem,这个范围内的向阳或背阳,那么余下的范围就背阳或向阳,这里我们获取的还是dem,不过是粗暴分类为向阳和背阳的dem,我们将dem转为面shp,记为dem_identify.shp,方便以下操作及叙述。
        联系等高线和明暗的部分,这里我们用【标识】工具,在等值线的线shp基础上,用dem_identify.shp进行标识(实际上就是将该shp里定义“向阳or背阳”的属性 赋予到等值线上 这样我们就可以知道哪个等值线的哪个部分是向阳or背阳)(一根等值线上不可能全向阳或全背阳 也就是说标识工具可以分割原本的等值线shp 用啥分割?用dem_identify.shp分割,文末再放图说明一下)

流程:

ArcGIS建模:
        比较懒,直接放实验报告的截图了ooxx 

建好的模型如下:

配置完色彩的结果:

其他要说的:
建完模的过程包括验证,此时的流程图是白色的,右键流程图里的DEM,【打开】,设置输入的数据集,整个流程图就变彩啦,点击运行,可以在框框里看到运行过程,运行好了不会自动加载图层,可以去框框里面看生成到哪里了,然后自己加载哈哈。

工具的总结:
让我们再看一眼原始的DEM

 【坡向】看到了吧,范围变成-1-359.99,也就是0-360啦

【等值线】

 【大于】一个数学工具,这里设置的条件是坡向>45,绿色的就是满足条件的部分,满足属性值即1,不满足即0

【加】把坡向大于45,小于225的dem叠加,获得同时满足两个部分的区域(矢量文件好像喜欢用相交呀啥啥啥的,栅格就一路代数运算,属性值的运算),绿色(属性值为2,1+1)的就是同时满足两个条件的区域啦。

 【识别】
输入要素:等值线如下,属性表干干净净,只有个高程,我们调皮地选中一根等高线。

识别要素:已经从栅格化为shp了,属性表更简单,有个代表向阳or背阳的GRIDCODE。
 识别后的结果:属性表多了GRIDCODE,原来一根完整的等高线也断成两根,一根照得到太阳,一根照不到。

### 使用ArcGIS提取立体等高线 #### 准备工作 为了在ArcGIS中成功提取立体等高线,需先准备好DEM(数字高程模型)数据文件。这类文件通常可以从国家测绘局官方网站或其他公开资源获取[^2]。 #### 创建TIN表面 一旦获得了合适的DEM数据,在ArcMap环境中加载此栅格数据集。接着利用3D Analyst扩展模块中的“Raster to TIN”工具转换成TIN(不规则三角网)格式的数据。这一过程能够更好地表示地形特征并支持后续操作[^1]。 ```python import arcpy from arcpy import env env.workspace = "C:/data" arcpy.RasterToTin_3d("dem", "tin_output", 1, "", "") ``` #### 构建等高线 完成上述步骤之后,便可以通过执行“Contour”命令来构建所需的等高线条目。设置好间隔距离和其他必要参数后运行该指令即可得到一系列代表不同海拔高度级别的矢量图形对象。 ```python out_contour = "contours.shp" arcpy.Contour_3d("tin_output", out_contour, 10) ``` #### 可视化效果增强 为了让最终成果更加直观易懂,建议采用三维场景的方式展示这些等高线。此时可以借助Scene Layer Package (SLPK) 或者直接在ArcGIS Pro 中建立新的3D Map Document来进行更高级别的渲染配置。 通过以上流程,不仅可以在二维平面上清晰地看到各条等高线之间的相对位置关系;而且当切换至三维视角观察时,整个区域的地貌起伏变化也将栩栩如生地展现在眼前[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值