APP下载

基于skyline的地下三维管线的自动生成与浏览速度提成

2015-01-09裴洪云

科技视界 2015年5期
关键词:倾斜角管网高程

裴洪云

(正元地理信息有限责任公司山东分公司,山东 济南250101)

0 概述

随着城市规模不断的扩大和生活水平的日益提高,城市地下管网系统越来越庞大。如何应对社会的发展,更好地服务于社会,作为城市的重要组成部分,地下管网将面临管理上的更高要求和严峻考验。管网系统在国内部分大中城市已经应用起来,中西部地区也在加紧建设的步伐。但是,仍然有许城市应用效果并不良好。这一方面是由于各单位自身的原因,另一方面是系统本身技术落后,不够灵活,不能适应发展的需求。以实际项目经验为依据,从地下管线系统的数据结构,结合Skyline的应用,简易介绍Skylie三维GIS技术在地下管网系统中的应用,引导用户建立一个先进、灵活、实用、安全、高效、三维立体的地下管网地理信息系统。

1 生成新的数据表

(1)根据三维管线起始点、终止点位置,每条二维管线都包含起始点坐标(x1, y1)和终止点坐标(x2,y2)信息,将二维管线图层中的“起始点管线高程”和“终止点管线高程”作为三维管线的的“起始点管线高程”和“终止点管线高程”,然后借助Skyline中IPosition61接口创建管线的起始位置点position1(简称P1)和终止位置点position2(简称P2)。

(2)管线的管径值统一按照与实际管道1:2000的比例来确定,管道的高程值则采用管线的起点管线高与管径相加之和。

(3)管线长度即起始点号位置和终止点号位置之间的空间距离,其中Vdist表示管线端点的高程差,Hdist表示管线在XOY平面上的投影长,distance表示管线两端点之间的空间距离。相应地,计算公式描述如下 Hdist=(P2.X-P1.X)2+(P2.Y-P1.Y) 槡 2 Vdist=P2.Altitude-P1.Altitudedistance=Hdist2+Vdist槡2}式中,每个位置点的X属性表示该点的X坐标值;Y属性表示该点的Y坐标值;Altitude属性表示该点的绝对高程值。

(4)偏航角(Yaw)Yaw是指视点和兴趣点的偏移角度,在三维坐标系中表示绕Z轴旋转的角度。Yaw范围为0°~360°,以正北方向为0°。其中Xdist表示管线在X轴上的投影长度,Ydist表示管线在Y轴上的投影长度。相应地,计算公式描述如下Xdist=P2.X-P1.X Ydist=P2.Y-P1.Y Yaw=arctan(Xdist/Ydist)×180÷π }

(5)倾斜角(Pitch)Pitch表示视点和兴趣点的俯仰角度,在三维坐标系中表示绕X轴旋转的角度。Pitch范围为-90°~90°,以水平方向为0°。其中Vdist表示管线起点和终点的高程差,Hdist表示管线在XOY坐标系上的投影长度。相应地,计算公式描述如下Hdist=(P2.XP1.X)2+(P2.Y-P1.Y) 槡 2 Vdist=P2.Altitude-P1.AltitudeYaw=arctan(Vdist/Hdist)×180÷π }

(6)旋转角(Roll)Roll表示视点和兴趣点的旋转角度,在三维坐标系中表示绕 Y轴旋转的角度。Roll范围为-180°~180°,0°表示与水平方向平行。

(7)管线的生成,根据skline接口连接新生成的数据表,观点表创建三维模型对象,管线表包括方形管和圆管,方形管利用createBox()接口创建管线,圆形管用createCylinder()接口创建圆柱体,然后设置管线的长度,偏航角,倾斜角,旋转角、文理文件等,设置管点的偏航角,倾斜角,旋转角。然后能保存到fly文件中即可,在数据库连通的情况下,即可看到地下管线。

(8)关于井盖贴地的问题,可以通过skyline的接口GetGroundHeight Info()获取地表的高程,然后减去井的埋深,得到井的高程值,利用这个高程值,生成的井盖管点可达到贴地的效果。

(9)把管线数据导成shape文件,导成shape文件再加载到fly中,可以脱离数据库,随时可用。在skyline的pro中导出shape,把纹理文件,模型文件放到本地,然后按照一定组织方式导入这些shape设好长度,偏航角,倾斜角,旋转角、文理文件、模型文件等(如下图 属性设置),保存fly即可。

图1 属性设置

表1三维管点表

表2 三维管线表

2 Skyline的接口支持

由于管线数据的长短不一的特殊要求和Skyline中对象的支持程度,目前管线数据在三维中显示的对象主要是圆柱体对象,即Cylinder对象(Building对象也可以实现);系统可以根据不同数据种类的管线制作不同颜色的三维管线数据,以便区别管线的种类,如果管线颜色有规定,我们也可以制作一个管线颜色符号库。管点数据在三维中显示的对象主要是模型对象,即Model对象。根据系统中不同管点数据制作不同的模型;同一种类的管点,根据结构类型的不同也可制作相应的模型,下图为生成三维地下管线的模型库。

图2

3 提高三维浏览速度

三维场景的数据量是非常大的,尤其在地上建筑模型、地下管线数据同时加载的情况下,会导致浏览速度严重下降,为了解决这个问题我们可以用处理exe扩大内存的方法解决使用VS命令提示工具(如下图)执行editbin/LARGEADDRESSAWARE“exe路径“

图3

4 生成效果

图4

图5

5 示例代码

管点生成代码

6 结束语

三维管线的自动生成,在很大程度上提高了错综复杂管线的可视化,查询分析风方便直接,加上浏览速度的提升,使得三维管线在实际中应用更加编辑。

[1]Skyline6中文帮助手册[Z].东方道迩GIS运营中心/技术支持部.

[2]TerraExplorer Pro二次开发用户手册V6.1[Z].东方道迩GIS运营中心/技术支持部.

猜你喜欢

倾斜角管网高程
8848.86m珠峰新高程
以“倾斜角与斜角”为例谈概念教学
基于飞参Щp-4配电板的倾斜角故障研究
开缝圆柱缝隙倾斜角对脱落涡的影响
织起一张共管网
GPS控制网的高程异常拟合与应用
SDCORS高程代替等级水准测量的研究
回归支持向量机在区域高程异常拟合中的应用
直线问题的错解分析