一、利用Arcgis将等高线图片转为三维立体示意图
1、利用图片处理软件手动处理等高线图
由原始图片转为只有等高线的纯等高线图


2、利用Arcgis进行图片的矢量化
详细步骤如下:
①打开Arcgis系列软件中的Arcmap,建立与自己新建文件夹的联系,拖入已经处理过的等高线图片

②利用ArcToolbox工具箱中的Spatial Analyst Tools空间分析工具对图片进行“重分类”,注意输入栅格选取刚才加载的等高线图片,然后它会自动默认按照“Value”字段。点击右侧“分类”按钮,在“类别”中选取“2”级,确定就好(这样可以让等高线图片只有黑白两色,方便后期矢量化)。“输出栅格”这里可以选择默认,也可以自行保存重命名在刚才自己新建的文件夹。这里要稍等一会儿,软件可能反应有点慢,成功后会有提示,左侧的内容目录里也会自动加载出刚才“重分类”成功后的栅格文件。






③接下来可以取消原始等高线的图片的勾选,只保留勾选刚才“重分类”后的栅格。在左侧目录中右键刚才“重分类”后的栅格文件,点选“属性”——“符号系统”——“已分类”进行调整(会自动呈现黑白两级的色带),让它以黑白色呈现,并进行栅格转shp文件的操作(将刚才的栅格文件转为等高线的shp【线】文件,这样才能进行矢量化)。打开目录窗口,在自己的新建文件夹下新建“数据库”下新建“数据集”(过程中选取坐标系时,如果知道就如实选,或者根据经纬度自己查,不然就先随便选一个,垂直坐标系也一样),再新建“数据类”【线要素(也就是shp类型),名称随便,但是类型一定是线要素。注意要添加一个字段,后面要给每条等高线赋值,名称随便,类型选择“浮点型”或者“双精度”】。成功后,左内目录中会自动勾选多出来一个shp的空白文件













④将刚开始“重分类”的栅格文件矢量化到刚才的shp线要素文件中。先在Arcmap顶部工具栏的空白处右键,勾选出“ArcScan”和“编辑器”。点击“编辑器”,在其“选项”下的“常规”栏中勾选“使用经典捕捉”。然后点击“编辑器”进行“开始捕捉”(注意选择刚才新建好的shp线要素文件,弹窗的空间参考不用管)。再点击“ArcScan”工具栏的“矢量化”选择“生成要素”,就可以得到矢量化后的等高线图(shp类型文件),过程默认就好。生成完毕后,可以在左侧内容窗口处,取消刚开始“重分类”栅格文件的选取,只保留“矢量化”后的等高线看看效果。也可以对刚才“矢量化”后的等高线进行线的颜色、粗细等进行更改。










⑤接下来对刚才矢量化后的等高线进行高程的赋值。在左侧内容栏中右键刚才的shp文件,“打开属性表”,对刚才自己新建shp要素时,新建的“haiba”字段(看你前面自己设的什么哈)进行赋值。注意要选取现在的每一根线,必须先在Arcmap顶上的工具栏中选择“选取要素”按钮,这样属性表里就会同步指向你选取那根线的表格行。依次对每根线进行赋值(这里应该可以用excel等方式进行连接就行,不过待研究,等高线不密集的情况下,就手动一根一根输入吧)



3、对已经赋值完毕的矢量化等高线进行tin创建
利用“搜索”按钮,进行“tin”搜索,选择“创建TIN工具”。
【特别注意,在创建之前,一定在顶端工具栏处取消“选择要素”按钮,点选“选择元素”按钮。(先在“选取要素”时,随便点击一下视图图层中的空白处,在点击“选择元素”按钮)因为前面给高程赋值时,你是选择了一条线的,如果没有取消勾选,就会生成这条线一个海拔的tin。就没有地形高低变化了!!!】
在“输出tin”可改成自己新建文件夹的位置和命名。“坐标系”可选择前面新建数据集时选择的,也可以不选。“输入要素”就是刚才矢量化后的等高线文件,“字段”选择刚才前面赋值高程的那个字段,其他可以默认。
创建成功的话,就会出现分层设色的tin视图了,并且左侧的内容框处,会在tin文件下显示各颜色的海拔
可以右键生成的tin文件选择“属性”或者直接双击,进行tin色带和分层的更改,让其各段变成整数(例如案例中的800-880,它默认是9级,可以更正为8级,这样就是整数间隔了,后期出图的图例也更美观)










4、接下来,打开ArcScene,连接到刚才存储tin文件的文件夹数据库,打开tin,对等高线进行三维的观察吧
仍然需要对tin的色带和层级进行修改,以达到自己需要的效果。这里为了更突出地形的起伏,可以对tin的属性“基本高度”栏进行更改,例如案例中对其进行了3倍的扩放(有可能扩放后,图层看不见了,可以右键tin“缩放至图层”就出来了。上下左右旋转看看三维效果吧)
选择好观察角度后就可以导出2D图片使用了!
也可以保存为3D格式,但是需要如3Dmax等专业的3D查看软件才行,简单的方法是旋转过程中录制视频,这样播放起来比较方便










附:在ArcMap中生成tin后,可以利用3D Analyst工具栏(在顶部工具栏空白处右键调出选取)进行“地形剖面图”的绘制,以及“通视”问题的观察。
先在3D Analyst工具栏上切换刚才建好的tin图层,不能用它默认选择的前期那个“重分类”图层。这个“重分类”图层没有海拔高度的,后期剖面线是没有海拔的一条直线,看不出效果。
点击“创建视线”按钮,“通视分析”可以默认,在图层上点取起点和终点,再点击3D Analyst工具栏上的“剖面图”按钮,就可以显示出“地形剖面图”了,其中,绿色是可以通视的,红色是无法通视的。可以创建多条线进行观察。如果要删除这些线,可以通过工具栏上的“选择元素”按钮,逐一点选,进行删除就行,剖面图窗口直接关闭就可以。






后记:还可以对ArcScene中的三维tin进行美化以及加底座等,暂时未研究透彻,待续。
二、利用Arcgis提取所在地的等高线(待实践)