三维空间分析 |
剖面表示表面高程沿某条线(截面)的变化,传统的剖面分析是研究某个截面的地形剖面,概括研究区域的地势、地质和水文特征,地貌形态、轮廓形状等。SuperMap iClient3D for Plugin提供的剖面线分析功能(Profile类),可以针对三维场景中的任意物体(包括建筑物、地下管道等)在任意方向上画出一条切线,自动生成剖面线图,并且支持在剖面线图上进行量算、经纬度位置查询等功能。
剖面线分析被广泛应用于变形监测、土地利用规划、工程选线、设施选址、管道布设、煤矿开采等方面。
在SuperMap iClient3D for Plugin中剖面线分析类为Profile类,其方法及属性见下表:
表 7.1 Profile类方法列表
返回类型 |
名称 |
描述 |
void |
build |
执行剖面线分析。 |
void |
clear |
清除分析结果。 |
Point3D |
getLeftTopPosition |
获取剖面线纹理中左上角点对应的三维空间位置。 |
Point3D |
getRightBottomPosition |
获取剖面线纹理中右下角点对应的三维空间位置。 |
void |
outputProfileToBitMap |
将剖面线纹理输出为bitmap图。 |
void |
outputProfileToJPG |
将剖面线纹理输出为JPG图。 |
表 7.2 Profile类属性列表
返回类型 |
名称 |
描述 |
Point3D |
endPoint |
获取或设置剖面线分析的的结束点。 |
Number |
extendHeight |
获取或设置剖面分析在三维空间中的跨越高度,单位是米。 |
Point3D |
startPoint |
获取或设置剖面线分析的的起始点 |
profile = new SuperMap.Web.Realspace.Profile(); //将剖面线纹理输出为bitmap图 profile.outputProfileToBitMap("C:/profile.png",SuperMap.Web.Realspace.ImageType.PNG); //获取剖面线纹理中左上角点对应的三维空间位置。 var test=profile.getLeftTopPosition(); //获取剖面线纹理中右下角点对应的三维空间位置。 var test2=profile.getRightBottomPosition(); //将剖面线纹理输出为JPG图。 profile.outputProfileToJPG(); |
剖面线分析的实现效果如下图:
图 7‑1 剖面线分析效果