1、提取等高线图层
(1)如果是具有坐标和投影的矢量图件,提取其等高线一层,打开属性表,确保等高线具有高程值。
(2)如果是滚凳纸质图件扫描件,那就麻烦了,需要先对纸质图件进行校正,使其具有正确的坐标信息,再大滚旅对等高线进行矢量化、赋值,这个工作量是巨大的,嘿嘿。
2、等高线生成tin
使用3d
analyst
tools-data
management-tin-create
tin工具,输入tin文件的存储路径、等高线图层、矢量范围边框,根据等高线图层的高程字段生成tin文件
3、tin生成DEM
使用3d
analyst
tools-conversion-from
tin-tin
to
raster工具,输入tin文件、DEM文件存储路径,生成DEM
4、坡度坡向生成
使用3d
analyst
tools-raster
surface-aspect/slope工具,分别由DEM生成坡向、坡度文件。
ps:每一步都写清楚了,但不太详细,楼主可以根据每个要点搜索更详细的教程,祝运。
坡向定义为:地表面上一点的切平面闭闷改的法线矢量n在水平面的投影nxOy与过该点的正北方向的夹角(如表4-1的坡向示意图所示,x轴为正北方向)。其数学表达公式为
森林景观格局与生罩槐态规划研究:以长白山地区白河林业局为例
图 4-7 森林景观在不同坡度分布图
图 4-8 森林景观在不同坡度分级图
表 4-1 坡向值的判断
对于地面任何一点来说,坡向表征了该点高程值改变量的最大变化方向。在输出的坡向数据中,坡向值有如下规定: 正北方向为 0°,按顺时针方向计算,取值范围为 0° ~360°。
坡向可以在 DEM 数据中用式( 4-8) 直接提取。但是值得注意的是,由于式( 4-8) 求出坡向有与x轴负向夹角之分,此时就要根据fx和fy的符号来进一步确定坡向值。
采用这种方法求取的坡向分级比较详细,但实际应用中往往需要给予归并,在ArcView和ArcGIS软件中,通常把坡向综合分成八个轿判方向:分别为北(0°~22.5°,337.5°~360°)、东北(22.5°~67.5°)、东(67.5°~112.5°)、东南(112.5°~157.5°)、南(157.5°~202.5°)、西南(202.5°~247.5°)、西(247.5°~292.5°)、西北(292.5°~337.5°)。按主坡向的磁方位角将坡向分为四个坡向组:阳坡(S,SW)、半阳坡(W,SE)、阴坡(N,NE)、半阴坡(E,NW),见表4-2。
表 4-2 坡向及其地理意义
本文是在 ARCGIS/INFO 中对 DEM 进行坡度和坡向的求解,坡向分布图见图 4-9。
图 4-9 坡向分布图
按照主坡向的磁方位角对坡向进行等级分类,结果见图 4-10。
图 4-10 坡向等级分布图
案例1:矢量(SHP)数据提取,可重复数据
场景: 想要将 data.shp 格式数据根据属性字段提取到 data 目录下
脚本:Python脚本示范
def ShpSelect_Repeat(src_data, dst_path, field_list):
arcpy.env.workspace = r'C:/Users/Administrator/Documents/ArcGIS/Default.gdb'蠢纯陵
with arcpy.da.SearchCursor(src_data, field_list) as cursor:
for row in cursor:
rw = list(row)
裤含 select_data0 = rw[0]
select_data2 = rw[2]
print(rw[0])
select_data0 = select_data0.replace(' (Petrel Is.)', '')
if not os.path.isdir(dst_path + '%s/' % select_data0):
os.makedirs(dst_path + '%s/' % select_data0)
arcpy.Select_analysis(src_data,
dst_path + '%s/' % select_data0 + select_data0 + '_'
+ select_data2 + '.shp',
field_list[0] + "=" + "'" + select_data0 + "'")
ShpSelect_Repeat(r'data.shp', 'data/', ('SOVEREIGNT', 'NAME', 'ADM0_A3'))
案例2:带戚矢量(SHP)数据提取,不可重复数据
场景: 想要将 data.shp 格式数据根据属性字段提取到 data 目录下
脚本:Python脚本示范
def ShpSelect_NoRepeat(src_data, dst_path, field_list):
arcpy.env.workspace = r'C:/Users/Administrator/Documents/ArcGIS/Default.gdb'
field_data_list = []
with arcpy.da.SearchCursor(src_data, field_list) as cursor:
for row in cursor:
if row[0] not in field_data_list:
field_data_list.append(row[0])
for select_data in field_data_list:
print(select_data)
if not os.path.isdir(dst_path + '%s/' % select_data):
os.makedirs(dst_path + '%s/' % select_data)
arcpy.Select_analysis(src_data,
dst_path + '%s/' % select_data + select_data + '.shp',
field_list + "=" + "'" + select_data + "'")
ShpSelect_NoRepeat(r'data.shp', r'data/', 'NAME')
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)