GIS基础软件及操作(七)

简介: 原文 GIS基础软件及操作(七) 练习七、地形分析 地形分析:TIN及DEM的生成及应用 加深对TIN建立过程的原理、方法的认识; 熟练掌握ArcGIS中建立DEM、TIN的技术方法; 结合实际,掌握应用DEM解决地学空间分析问题的能力。

原文 GIS基础软件及操作(七)

练习七、地形分析

地形分析:TIN及DEM的生成及应用

  1. 加深对TIN建立过程的原理、方法的认识;
  2. 熟练掌握ArcGIS中建立DEM、TIN的技术方法;
  3. 结合实际,掌握应用DEM解决地学空间分析问题的能力。

1. TIN 及DEM 生成

矢量数据:

  • 高程点Elevpt_Clip.shp

  • 高程Elev_Clip.shp

  • 边界Boundary.shp

  • 洱海Erhai.shp

本章的大部分练习都会用到三维分析扩展模块,要使用“三维分析模块”首先在ArcMap中执行菜单命令【自定义】>【扩展模块】,在扩展模块管理窗口中,勾选【3D
Analyst】。然后在ArcMap
工具栏的空白区域点右键,在出现的右键菜单中找到【3D
Analyst】项,点击该项,在ArcMap中显示三维分析工具栏。


1.1由高程点、等高线矢量数据生成TIN转为DEM

(1) 在ArcMap中新建一个地图文档,添加矢量数据:Elevpt_Clip、Elev_Clip、Boundary、Erhai;

(2) 在ArcToolbox中双击【3D Analyst工具】>【TIN管理】>【创建TIN】,打开【创建TIN】对话框;

(3) 在对话框中添加上述4个图层,参数设置如下图(注意:在构建Erhai图层时,SF_type参数需要设置为“硬替换”)

【创建TIN】对话框中的参数说明:

height_field:高程字段,用于提供要素的高程值。当图层中无高度属性时,可选“<None>”,但至少要保证有一个图层属性表中有高程值。

SF_type:表面要素类型字段,用于定义如何将要素几何添加到三角形中。

tag_field:标签字段,用于指定在TIN中用做标签值的要素类型属性字段。

“SF_type”字段取值类型说明:

离散多点:是TIN网中的结点,主要决定表面的形状,在表面变化程度较大的区域包括较多的离散点,表面变化程度较小的区域包括较少的离散点。

断裂线:主要用来表示自然要素(如山脊线、河流)或人工要素(如道路),分为硬断线和软断线。

硬断线:用来表示坡度的不连续性,如河流和道路可以作为硬断裂线包括在TIN中;

软断线:用于向TIN添加边,以捕获不会改变表面局部坡度的线状要素,研究区域边界可作为软断裂线包括在TIN中。

(1) 在图层控制中,仅打开[ErHai]和[Tin]两个图层,同时关闭图层[Tin]的“边类型”,可得到如下的效果:

(1) 在ArcToolbox中双击【3D Analyst工具】>【由TIN转出】>【TIN转栅格】,打开【TIN转栅格】对话框,在对话框中设置相关参数(如下图所示):

需要保存在个人数据库中

(1) 确定后得到一个栅格数据图层[tinGrid],其中每个栅格单元表示50m*50m的区域,如下图所示。

1.2 TIN的显示

(1) 在图层控制中,仅打开[Tin]图层,编辑图层的属性,在属性对话框中,点击【符号系统】选项页,将【边类型】和【高程】前面的勾去掉,点击【添加】按钮,如下图所示:

(1) 在【添加渲染器】对话框中,将【具有相同符号的边】和【具有相同符号的节点】添加到TIN的显示列表中,如下图所示:

(1) 点击确定,将[Tin]图层局部放大,认真理解TIN的存储模式及显示方式,如下图所示:

1.3将TIN转换为坡度多边形

(1) 新建地图文档,加载图层[Tin],参考上一步操作,将【具有分级色带的表面坡度】项添加到TIN的显示列表中;

{width=”3.248031496062992in”
height=”2.688976377952756in”}

(1) 在上面的对话框中,选中【坡度(度)】,将【分类】中的【类】指定为“5”,点击【分类】按钮,在下面的对框中,将【分类】中的【方法】指定为“手动”,在【中断值】列表中依次输入坡度中断值:8、15、25、35、90,如下图所示:

点击【确定】后关闭图层属性对话框,图层[Tin]将根据指定的渲染方式进行渲染,效果如下图所示:

(1) 在ArcToolbox中双击【3D Analyst工具】>【表面三角化】>【表面坡度】,打开【表面坡度】对话框,按下图所示指定各参数(注意:需要在【类明细表】中选取数据库SlopeCode.mdb)

得到多边形图层[tinSlope],它表示研究区内各类坡度的分布状况,结果是矢量格式,打开其属性表可以看到属性字段[SlopeCode]
的取值为1、2、3、4、5。

查看矢量图层:tinSlopef
中要素属性表,其中属性字段[SlopeCode]1、2、3、4、5分别表示坡度范围(0-8)、(8-15)、(15-25)、(25-35)、(35-90)

1.4合并破碎多边形

(1) 新建地图文档,加载上一步生成的坡度多边形图层[tinSlope],打开属性表,添加一个字段Area(类型为Double);

(1) 通过【计算几何】操作,计算各个多边形的面积:

(1) 执行菜单命令【选择】>【按属性选择】,打开【按属性选择】对话框,将面积小于等于10000平方米的多边形选择出来,被选中的多边形以高亮方式显示:

(1) 双击ArcToolBox中的【数据管理工具】>【制图综合】>【消除】,打开【消除】对话框,将面积小于等于10000平方米的多边形合并到周围面积最大的多边形中。

原始多边形

合并后的多边形

将地图适当放大,比较原始图层[tinSlope]与合并后的图层[tinSlope_Eliminate]。

Eliminate(合并破碎多边形)操作原理

1.5 TIN转换为坡向多边形

参照1.3节中的操作步骤,可得到坡向多边形图层[tinAspect]:

得到的坡向多边形中属性AspectCode的数值(-1,1,2,3,4,5,6,7,8,9)分别表示当前图斑的坡向(平坦、北、东北、东、东南、南、西南、西、西北、北),其中1,
9是相同的可以合并为1。

2. DEM的应用

2.1坡度Slope

(1) 新建地图文档,加载1.1节第6步中得到的栅格数据[tinGrid];

(2) 双击ArcToolBox中的【Spatial Analyst工具】>【表面分析】>【坡度】,打开【坡度】对话框,参照下图指定各参数:

(3) 得到坡度栅格Slope_TinGrid,栅格单元的值在[ 0 -90 ] 度间变化:

(1) 右键点击图层[Slope_TinGrid],执行[属性命令],设置图层[符号],重新调整坡度分级(参考1.3节中第2步进行分类):

2.2坡向Aspect

(1) 新建地图文档,加载1.1节第6步中得到的栅格数据[tinGrid];

(2) 双击ArcToolBox中的【Spatial Analyst工具】>【表面分析】>【坡向】, 打开【坡向】对话框,参照下图指定各参数:

(1) 得到坡向栅格[AspectTinGrid]:

2.3提取等高线

(1) 新建地图文档,加载栅格数据[tinGrid];

(2) 双击ArcToolBox中的【3D Analyst工具】>【栅格表面】>【等值线】,打开【等值线】对话框,参照下图指定各参数:

(1) 生成等高线矢量图层[Contour_TinGrid]:

2.4计算地形表面的阴影图

(1) 新建地图文档,加载栅格数据[tinGrid];

(2) 双击ArcToolBox中的【3D Analyst工具】>【栅格表面】>【山体阴影】,打开【山体阴影】对话框,参照下图指定各参数:

(1) 生成地表阴影栅格:[ShadowTinGrid]:

(1) 关闭除[TinGrid]和[ShadowTinGrid]以外的所有图层,并将[TinGrid]置于[ShadowTinGrid]之上,右键点击[TinGrid],在出现的右键菜单中执行【属性】,在【图层属性】对话框中,参照下图所示设置【符号系统】选项页中颜色:

(1) 打开工具栏【效果】,如下图所示,设置栅格图层[TinGrid]的透明度为40%左右,以便部分透出下层的山体阴影效果。

2.5通视分析

(1) 新建地图文档,加载栅格数据[tinGrid];

(2) 打开【3DAnalyst】工具栏,从工具栏选择【创建通视线】工具:

(1) 在出现的【通视线】对话框中输入【观察点偏移】和【目标偏移】,即距地面的距离,如图:

在地图显示区中从某点A沿不同方向绘制多条直线,可以得到观察点A到不同目标点的通视性:

绿色线段表示可视的部分,红色线段表示不可见部分

2.6视域分析

(1) 新建地图文档,加载栅格数据[tinGrid]和矢量数据[移动基站.shp];

(2) 双击ArcToolBox中的【3D Analyst工具】>【可见性】>【视域】,打开【视域】对话框,参照下图指定各参数:

(1) 生成可视区栅格[View_TinGrid],其中绿色表示现有发射基站信息已覆盖的区域,淡红色表示无法接收到手机信号的区域。

2.7地形剖面

(1) 新建地图文档,加载栅格数据[tinGrid];

(2) 打开【3DAnalyst】工具栏,从工具栏选择【线插值】工具,跟踪一条线段,这条线段可以从[tinGrid]中得到高程值:

(1) 从【3DAnalyst】工具栏中选择【创建剖面图】工具,得到该线段所在区域的剖面图:


作者: 王顺利 
发表于: 2016-01-14 14:56:18 
更新于: 2016-04-28 21:41:49 
原文链接: http://www.wshunli.com/2016/01/14/GIS基础软件及操作-七/ 
本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。

目录
相关文章
|
6月前
|
存储 人工智能 前端开发
超越问答:深入理解并构建自主决策的AI智能体(Agent)
如果说RAG让LLM学会了“开卷考试”,那么AI智能体(Agent)则赋予了LLM“手和脚”,使其能够思考、规划并与真实世界互动。本文将深入剖析Agent的核心架构,讲解ReAct等关键工作机制,并带你一步步构建一个能够调用外部工具(API)的自定义Agent,开启LLM自主解决复杂任务的新篇章。
1379 6
|
敏捷开发 测试技术
开发模型(瀑布、螺旋、scrum) 和 测试模型(V、W)、增量和迭代、敏捷(思想)及敏捷开发 scrum
文章详细介绍了软件开发过程中的不同开发模型(瀑布、螺旋、Scrum)和测试模型(V模型、W模型),以及增量和迭代的概念,最后阐述了敏捷思想及其在敏捷开发(如Scrum)中的应用。
2352 0
开发模型(瀑布、螺旋、scrum) 和 测试模型(V、W)、增量和迭代、敏捷(思想)及敏捷开发 scrum
|
前端开发 关系型数据库 定位技术
用Ganos低代码实现免切片遥感影像浏览(一)
本文介绍了使用PolarDB-PG数据库配合Ganos时空数据库引擎,不借助第三方工具仅利用SQL语句快速管理与展示遥感影像数据的一种方法。Ganos共提供两种影像免切浏览的方法,一种使用窗口范围获取影像数据展示,另一种通过固定瓦片范围获取影像数据展示,本文详细介绍第一种方法并提供了前后端实操代码帮助用户可以快速理解Ganos Raster的使用细节。
|
7天前
|
缓存 人工智能 自然语言处理
我对比了8个Claude API中转站,踩了不少坑,总结给你
本文是个人开发者耗时1周实测的8大Claude中转平台横向评测,聚焦Claude Code真实体验:以加权均价(¥/M token)、内部汇率、缓存支持、模型真实性及稳定性为核心指标。
2735 20
|
19天前
|
人工智能 自然语言处理 安全
Claude Code 全攻略:命令大全 + 实战工作流(建议收藏)
本文介绍了Claude Code终端AI助手的使用指南,主要内容包括:1)常用命令如版本查看、项目启动和更新;2)三种工作模式切换及界面说明;3)核心功能指令速查表,包含初始化、压缩对话、清除历史等操作;4)详细解析了/init、/help、/clear、/compact、/memory等关键命令的使用场景和语法。文章通过丰富的界面截图和场景示例,帮助开发者快速掌握如何通过命令行和交互界面高效使用Claude Code进行项目开发,特别强调了CLAUDE.md文件作为项目知识库的核心作用。
16402 50
Claude Code 全攻略:命令大全 + 实战工作流(建议收藏)
|
14天前
|
人工智能 JavaScript Ubuntu
低成本搭建AIP自动化写作系统:Hermes保姆级使用教程,长文和逐步实操贴图
我带着怀疑的态度,深度使用了几天,聚焦微信公众号AIP自动化写作场景,写出来的几篇文章,几乎没有什么修改,至少合乎我本人的意愿,而且排版风格,也越来越完善,同样是起码过得了我自己这一关。 这个其实OpenClaw早可以实现了,但是目前我觉得最大的区别是,Hermes会自主总结提炼,并更新你的写作技能。 相信就冲这一点,就值得一试。 这篇帖子主要就Hermes部署使用,作一个非常详细的介绍,几乎一步一贴图。 关于Hermes,无论你赞成哪种声音,我希望都是你自己动手行动过,发自内心的选择!
3099 29
|
3天前
|
人工智能 测试技术 API
阿里Qwen3.6-27B正式开源:网友直呼“太牛了”!
阿里云千问3.6系列重磅开源Qwen3.6-27B稠密大模型!官网:https://t.aliyun.com/U/JbblVp 仅270亿参数,编程能力媲美千亿模型,在SWE-bench等权威基准中表现卓越。支持多模态理解、本地部署及OpenClaw等智能体集成,已开放Hugging Face与ModelScope下载。