基于OpenGL的飞行模拟视景系统中地坑模拟方法

文档序号:6372562阅读:277来源:国知局
专利名称:基于OpenGL的飞行模拟视景系统中地坑模拟方法
技术领域
本发明涉及一种飞行模拟视景系统中特殊的地形模拟方法,尤其涉及一种基于OpenGL的飞行模拟视景系统中地坑模拟方法。
背景技术
虚拟现实技术已经广泛应用于各个领域。利用虚拟 现实技术实现场景的仿真是可视化仿真系统中的必要部分。它可以实时模拟场景的变化,为很多虚拟操作提供逼真的环境。虚拟场景地形绘制后,除了实时漫游,为了满足一定仿真需要(如重物击中地面目标后地形凹陷),还需要对地形进行动态修改。现有的飞行模拟视景系统设计中,由于传统的地理信息系统的数据结构都是二维的,高程是地理空间中的第三维坐标,数字高程模型的建立是一个必要的补充。地形模型一般是定义好的平坦的,这有时不能真实的反应场景情况。比如重物击中地面后,地面发生形变显示凹陷。

发明内容
要解决的技术问题为了避免现有技术的不足之处,本发明提出一种基于OpenGL的飞行模拟视景系统中地坑模拟方法,提出通过修改高程值的方法来模拟地坑。技术方案一种基于OpenGL的飞行模拟视景系统中地坑模拟方法,其特征在于步骤如下步骤I :定义地坑坑口平面的圆心为中心点,中心点坐标为(m,n);然后在坑口所在平面上ro _ -JcIa < i < //7 + yfcTa ,n-yfcTa < j'< + >/c/a的坐标区间内,按照行和列分别
等间隔取点,所取点的坐标为 Q1, ji)、(I1, j2)、......Qi,ji)、(i2,Ji)......(i2,Ji)......(ii,
J1),I为任意整数;其中,a是自定义可变量,且a>0 ;c为地坑的深度= r为坑口半径;步骤2 :建立地坑的形状的数学模型4 = /(/) = <,,-0,2为地坑表面内的高程值,且地平面的高程值Z=O ;其中为所取点到中心点的距离,具体序列值为X11 =^ +X12 = ^j{n-j2)x{n-J2) +{m-Qxim-i,)… ',=加—i;)x(7 -J1) + (m-i,)x{m-i)步骤3 :计算地坑表面内的高程值,X ^ r时定义高程值为0 ;当x〈r时,根据公式z = /(X) = ax l; -c计算坑口区域表面内每一点对应的高程值,得到坑口所在平面上每一点的高程值为Z1YZu2……Zlll;步骤4 :将步骤3得到的高程值,采用OpenGL建模,再运行OpenGL程序得到飞行模拟视景系统中的模拟地坑。
有益效果本发明提出的一种基于OpenGL的飞行模拟视景系统中地坑模拟方法,根据仿真目的,构造地形模型,再现飞行视景,能够达到非常逼真的仿真效果,客观、实时地再现仿真过程,可以为模拟飞行提供真实的效果。


图I :地坑示意图。
具体实施例方式现结合实施例、附图对本发明作进一步描述 以一个具体的要仿真的地坑为例,已知地坑平面的中心点为(80,80),坑口半径r=10,地坑深度c=10。I)根据要仿真地坑的形状和参数。定义坑的数学模型为f(X) =0. Ix2-IO2)在70〈1〈90,70〈」〈90的区域内,以 Ai=I, △ j=l 等间隔取 400 个点,点(71,71)至IJ中心点的距离X11 =W^x1JlO,所以该点高程值不变仍为Zu=O15点(81,80)到中心点距离xii,ici=l,xn,1(l〈10,计算出该点的高程值zn,1(l=-9. 9。点(83,84)到中心点的距离X13,14=5, X13,14〈10,计算出该点的高程值z13,14=-7. 5。同理,计算坑口平面内每一点的高程值。3)用上步得到的高程值在OpenGL中对应替换原有的高程值。软件运行后,地坑效果如图I所示。利用虚拟现实技术和可视化技术,采用OpenGL构建了地坑模型,用于实时修改地形模型使得地形模型更加逼真并且满足一定的仿真需要。
权利要求
1 一种基于OpenGL的飞行模拟视景系统中地坑模拟方法,其特征在于步骤如下 步骤I :定义地坑坑口平面的圆心为中心点,中心点坐标为(m,η);然后在坑口所在平面上m — -JcIa <i <m + ^sjc I a,n — ^lc / a < j <n + ^fcTa的坐标区间内,按照4丁和列分别等间隔取点,所取点的坐标为 Q1, ji)、(I1, J2)、......Q1, ji)、(i2,ji)......(i2,ji)......Q1, ji),I为任意整数; 其中,a是自定义可变量,且a>0 ;c为地坑的深度;^^ = r为坑口半径; 步骤2 :建立地坑的形状的数学模型z = f(x) = Ctxlji ~c,z为地坑表面内的高程值,且地平面的高程值z=0 ; 其中所取点到中心点的距离,具体序列值为 气1 =扣-JiP<(〃-Λ) + 0卜O(m—h) xU =λ/(〃-Λ)χ("-Λ) +(In-I1)X(m — Z1)......= λ/( -./;)X( -i,) + {m-i,)x(m-i,); 步骤3 :计算地坑表面内的高程值,当χ > r时定义高程值为O ;当x〈r时,根据公式z = /(χ) = OX^hji -c计算坑口区域表面内每一点对应的高程值,得到坑口所在平面上每一点的高程值为Z1,P Zlj2......Zul ; 步骤4 :将步骤3得到的高程值,采用OpenGL建模,再运行OpenGL程序得到飞行模拟视景系统中的模拟地坑。
全文摘要
本发明涉及一种飞行模拟视景系统中特殊的地形模拟方法,尤其涉及一种基于OpenGL的飞行模拟视景系统中地坑模拟方法。其特征在于在坑口所在平面上按照行和列分别等间隔取点,建立地坑的形状的数学模型计算地坑表面内的高程值,对高程值采用OpenGL建模,再运行OpenGL程序得到飞行模拟视景系统中的模拟地坑。本发明提出的一种基于OpenGL的飞行模拟视景系统中地坑模拟方法,根据仿真目的,构造地形模型,再现飞行视景,能够达到非常逼真的仿真效果,客观、实时地再现仿真过程,可以为模拟飞行提供真实的效果。
文档编号G06T17/05GK102789652SQ20121022610
公开日2012年11月21日 申请日期2012年7月3日 优先权日2012年7月3日
发明者刘宁, 刘琦, 姬维君, 宋阳, 张金汇, 李南京, 李瑛 , 郭淑霞, 陈卫军, 高颖 申请人:西北工业大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1