三维空间分析 |
坡度和坡向是两个重要的地形特征因子,在地形表面分析中起到重要作用。其中,坡度表示地球面某一位置的高度变化率的量度;而坡度变化的方向成为坡向,表示地表面某一位置斜坡方向变化的量度。
SuperMap iClient3D for Plugin提供坡度坡向分析功能(SlopeMap类),用户可在地形上任意指定某一范围,自动获取并通过分层设色策略绘制坡度坡向图,生成坡度坡向指示箭头,使用户根据颜色和箭头指向直观的查看地形的起伏方向和起伏大小。
坡度坡向分析在土地利用、植被分析、环境评价、景观分析等领域有重要的应用价值。
在SuperMap iClient3D for Plugin中坡度坡向分析类为SlopeMap类,其方法及属性见下表:
表 5.1 SlopeMap类方法列表
返回类型 |
名称 |
描述 |
void |
build |
执行等坡度坡向分析。 |
void |
clear |
清除分析结果。 |
Color |
getColorTable |
获取颜色表对应的颜色值。 |
Number |
getSlopeDirectionValue |
获得坡向值,大小在0~360之间,单位是度。 |
Number |
getSlopeValue |
获得坡度值,大小在0~90之间,单位是度。 |
void |
setColorDictionary |
设置颜色表,键(key)为坡度值,值为坡度对应的颜色。 |
Number |
getSlopValues |
获取坡度值,即颜色表对应的key值。 |
表 5.2 SlopeMap类属性列表
类型 |
名称 |
描述 |
Color |
borderColor |
获取或设置分析区域边框的颜色。 |
Rectangle2D |
coverageArea |
获取或设置要分析的区域。 |
Boolean |
isBorderVisible |
获取或设置分析区域边框的可见性。 |
Number |
maxVisibleSlope |
获取或设置最大可见坡度。 |
Number |
minVisibleSlope |
获取或设置最小可见坡度。 |
Number |
opacity |
获取或设置不透明度。 |
SlopeDisplayStyle |
displayStyle |
获取或设置坡度分析的显示方式。 |
slopMap = new SuperMap.Web.Realspace.SlopeMap(); colors = new Array(); colors[0] = new SuperMap.Web.Core.Color(0,0,255,255); colors[1] = new SuperMap.Web.Core.Color(255,0,0,255); //设置分析的显示方式 slopMap.set_displayStyle(slopDisplay); var keys = new Array(0,25);; //设置分析颜色表key值和颜色,坡度值的范围为0-25度。 slopMap.setColorDictionary(keys,colors); //设置不透明度 slopMap.set_opacity(dOpacity); //设置分析区域 slopMap.set_coverageArea(bounds); //执行分析 slopMap.build(); |
坡度坡向图分析的实现效果如下图:
图 5‑1 坡度坡向分析效果