1.身份证号码:13112819870610xxxx;2.身份证号码:32102219731221xxxx
摘要:三维城市模型的构建与应用是目前国际GIS及其相关科学研究的热点,具有多功能的三维城市模型在建筑。土木工程、交通、地质、测绘、城市规划、市政工程设计、网络与多媒体等许多领域有着广泛的应用前景。另外,随着“数字地球”、“数字城市”等概念的提出,三维城市模型的构建方法显得越来越重要。
关键词:三维城市建模;三角剖分及分层组合方法;TIN;可视化
引言:
三维城市模型不仅仅可以可视化,还必须可以交互操作和进行空间分析,基于这样的一个三维模型,便能提供一个动态的环境,用以在相应氛围的空间中逼真地显示、管理和创建复杂物体(如建筑物),并未进一步空间分析和决策服务。诸如:环境仿真、洪水淹没、城市规划、市政管理等等、作者基于建立的三维模型实现了三维场景的空间坐标查询、任意两点间的剖面绘制、空间距离量算、面积量算、建筑物的属性查询、三维模型的动态漫游等功能。
1三维空间坐标查询
1.1可见点的判别与保存
显示在计算机屏幕上的3D模型上的像点(x,y)和3D模型的用户坐标(如大地坐标)(x,y,z)不是—对应关系。因此,必须确定鼠标点扑捉到的2D屏幕坐标所对应的唯一可见的3D大地坐标才能进行正确的空间分析和查询操作。
1.2三维空间坐标查询
在基于三维城市模型的可视化场景中,最基本的空间查询就是空间点的三维坐标查询,它是其他交互操作和空间分析的基础。实现这一点实际上就是将计算机的2维屏幕坐标反解为三维空间坐标,是透视投影的一个逆过程。主要有两种:正解变换和反解变换两种方法。
2任意两点间剖面的生成
在三维可视化系统中,经常要做剖面的应用。例如:在三维库区信息系统中库容的计算,在三维漫游的过程中任意切割两个剖面来计算两个剖面之间的库容等等。
根据上述的空间点三维坐标的获取方法,便可得到任意两点的三维坐标(x1,y1,z1)、(x2,y2,z2)。根据它们的平面位置(x1,y1)、(x2,y2)和TIN模型存储的数据结构采用一定的算法可知道它们所在TIN模型中的三角形号,由起点和终点的三角形位置和它们的连线,运用线段求交算法,从而得到一系列的三维坐标点(xi,yi,zi)。根据所求交点的平面位置可以判断其是否位于建筑物上,如果是,则求出该连线与建筑物相交的交点。
3空间距离查询和面积量算
用鼠标在模型上任意选取两个不同的点,其间的距离为该连线与模型的一系列交点(xi,yi,zi)间的距离之和,使用上一节的算法可以得到连线与模型的一系列交点的三维坐标,利用以下公式可以计算空间两点的距离:
;(1-1)
(1-2)
剖面切割后需要计算投影面积,即任意多边形在水平面上的面积。可以采用海伦公式进行计算,但通常采用梯形法则来计算投影面积,如果一个多边形有顺序排列的N个点(Xi,Yi,i=1,2,3,…,n)组成并且第n个点与第一个点相同,则计算公式如下:
(1-3)
如果多边形顶点按顺时针方向排列,则计算的面积为负,反之,为正。
4土石方量的计算
建立DEM模型之后,通常会遇到象场地平整等土石方量的计算,实际上就是计算DEM体积。DEM体积可由四棱柱和三棱柱表面可用斜平台拟合,下表面为水平面或参考平面,计算公式如下:
V=(Z1+Z2+Z3)/3*S3(4-3)
V=(Z1+Z2+Z3+Z4)/4*S4(4-4)
其中,S3、S4分别是三棱柱和四棱柱的底面积。
5坡度、坡向分析
坡度、坡向分析是一种描述地形表面特征的重要变量。坡度是指表示地表面在某点的倾斜程度的一个量,它是矢量。坡度矢量从数学上讲,其模等于第表面曲面函数在该点的切平面与水平面的夹角的正切,其方向等于在该切平面上沿最大倾斜方向的某一矢量在水平上的投影方向也即坡向。
在军事地形分析中,坡度、坡向是影响武器性能、部队机动、阵地设置的重要因素。基于DEM进行坡度、坡向计算方法较多,其精度与计算效率各不相同。
6建筑物的属性查询
在三维场景中,经常要对建筑物的属性进行编辑以及更换建筑物的墙面纹理,那么首先必须选中建筑物,查询出建筑物的属性。实际上就是判断用鼠标捕捉到的点是不是建筑物的点,如果是建筑物上的点,那么读取建筑物ID号,利用简单的SQL语句:Select*From建筑物属性表WhereID=“*********”;从建筑物的属性数据库中查询建筑物的属性信息,通过对话框进行显示。
7建筑物的增加和删除
为了保证三维城市模型的实时性,使其能够真实地反映当前的最新信息,通常根据实际的情况在增加或删除建筑物。由上一节可知,当选取一栋建筑物后,根据建筑物ID号可以查询到该建筑物的几何数据和相应的属性信息,便可以容易地删除建筑物的几何和属性数据,同时在三维场景中删除该建筑物。当在三维场景中增加建筑物时,同时也把建筑物的几何数据增加到数据库中,通过对话框输入属性数据也把属性数据添加到了数据库中,通过对话框输入属性数据也把属性数据添加到了数据库中,从而保证了三维城市模型的实时性。
8三维模型的动态显示
根据观察者的需要,对显示的三维模型进行手动或自动旋转,绕三轴任意角度旋转,改变景深,从而选择我们满意的角度进行观察。另外,也可以选取预先定义的路线模拟飞行或地面驾驶效果,这样,对一个三维场景有一个局部或全面的了解。
9结束语
在建立三维城市模型的基础上,就如何实现三维城市模型的可视化方法进行了讨论,
得出以下结论:
1、采用不规则三角网(TIN)正确地建立了DEM模型。
2、采用三角剖分及分层组合法正确地建立了建筑物等复杂地物的三维模型,并融于DEM中,实现了三维模型可视化。
3、成功地实现了基于三维城市模型的空间互操作和部分空间分析功能。
参考文献:
[1]刘春雨,白玉琪,常歌.三维地形中地物模型构造方法[J].计算机应用.2001(05)。
[2]周杨,谭兵,徐青.基于3维地形图的空间分析算法[J].测绘学院学报.2001(01)。
[3]王留召,龙志,魏占营.面向对象的三维数据模型及其存取实现——以三维城市房屋重建为例[J].焦作工学院学报(自然科学版).2001(01)。
[4]王少安,魏占营.三维场景中GIS模型交互操作的实现——以三维城市模型为例[J].焦作工学院学报(自然科学版).2000(05)。