论文下载
  • 首页
  • 论文发表
  • 论文宝库
  • 期刊大全
  • 新闻中心
  • 著作出书
  • 发表流程
  • 关于我们
  • 诚心通道
  • 联系我们
  • 当前位置:主页 ->论文下载 ->计算机论文 ->计算机理论
  • 基于OpenGL 的高程图研究与应用

    2017年5月11日 09:12 作者:lunwwcom

    【关键词】高程图 LOD OpenGL 三维地形

    1 引言

    本设计主要工作是首先对系统进行需求

    分析;其次阐述了结构化程序设计的基本思想;

    然后在需求分析的基础上,详细描述了整体设

    计过程,包括数据结构的设计、功能模块的设

    计,最后用C 语言编程实现;最后对系统的

    功能进行测试及结果分析。

    实现基于高度图的地形建模技术,采用

    OpenGL 图像绘制语言实现地形的真实感绘制

    及交互式漫游,实现一个用户可以交互操作的

    地形绘制程序。

    2 三维地形建模

    本文设计并实现一个基于高程图技术的

    地形绘制系统。该系统具有的功能如下:掌握

    基于高度图的地形建模技术,采用OpenGL 绘

    制语言实现地形的真实感绘制及交互式漫游,

    实现一个用户可以交互操作的地形绘制程序。

    首先,应该初始化OpenGL 环境,包括

    生成绘制描述表,一些全局控制变量的初始赋

    值,光照位置和渲染、颜色方式初始化,地形

    网格数据初始化,纹理图片的加载,纹理方式

    选择,平滑和渲染方式的选择。只有初始化适

    当,程序才能后续绘制。

    我们还应该设置一个计时器,目的是为

    了漫游时实时进行地形视角的更新。计时器可

    以设置为每隔20ms 触发一次,每次触发时的

    回调函数负责更新视角位置,视角运动速度,

    视角前进方向,并以此刷新场景。设置计时器

    语句如下:

    SetTimer(1, 20, NULL);

    接下来是初始化地形数据,由于算法是

    是采用网格化地形,网格地形数据用二维矩阵

    来存放,所以初始化地形数据就是给地形矩阵

    分配空间并初始化。

    文/刘盛意 王志鹏 陈癸伶

    在计算机图形学领域,三维

    高程图显示是一个重要的研究方

    向。地形三维建模及可视化技术

    是是三维地理信息系统重要研究

    内容, 它能使地理信息更直观、

    更形象地展现在人们面前。本文

    主要采用的是OpenGL 来对高程图

    进行绘制,在未来的二次图像重

    建技术方向有广阔的应用前景。

    因此, 研究如何快速实现地形的

    建模以及三维可视化就有非常重

    要的意义。

    摘 要

    一般采用俯瞰视角,这样才能尽可能接近真实

    地,自然地观看到地形的全貌。

    接下来便是建立四叉树,后来的绘制和

    纹理贴图都是基于这棵树,这棵树即要绘制的

    地形。

    刚才初始化的地形数据,被用来在绘制

    地形,每当按下空格键,便会产生新的地形,

    实际上是产生新的地形参数,然后这些参数被

    实时调用,来绘制新的地形。

    有了实时地形数据之后,便是绘制地形,

    简单的可以理解为把网格上各个点或者说相邻

    的点建立联系,进行平滑处理,高程颜色分类。

    最重要的是,四叉树本身是递归树,所以在进

    行网格数据处理时,是递归进行的,当处理的

    网格元尺寸小到一定程度就不再进行递归,而

    是直接当做最小单位来处理。对于距离客观世

    界的观察视角比较远的网格元,递归的尺寸界

    限适当调高,这样其实就是LOD 技术的实际

    应用了。

    当线框模式的地形绘制完成后,整个地

    形就已经呈现出来了,凹凸不平的特点得以呈

    现,而且接缝处进行了平滑。但还不真实,更

    重要的是,还没有是实现高程图。最后的纹理

    贴图实现了这两方面。根据不同的高度层,分

    别进行纹理贴图处理,高海拔的地方,贴图颜

    色就浅些,低海拔的地区,就用绿色渲染。这

    样渲染出来的效果,基本接近真实地貌,而且

    非常具有观赏性。

    3 OpenGL高程图实现与应用

    采用四叉树作为地形绘制的数据结构。

    四叉树(Quad Tree)是一种很有名的树状数

    据结构。四叉树划分,是通过递归的方法,将

    一个矩形区域不断地进行一分为四的划分,直

    到某一种条件得到满足为止。多分辨率地形模

    型的四叉树构建过程为:把整个地形作为根节

    点,从这个根节点出发,检查根节点是否满足

    某种分割条件,若不满足,则不分割,并作为

    叶子节点保存;否则,递归地把根节点不断地

    分割成相等的四个子节点区域,直到不能再分

    割为止。最后,将所有叶子节点绘制渲染。分

    割的深度越大,得到的分辨率就会越高,即分

    割深度每提高一层,采样密度提高一倍。在用

    来描述地形的数据结构中,四叉树非常有效。

    具体操作过程如下:

    (1)初始化地形的最大、最小高度以及

    地形的网格间距;

    (2)打开一幅位图,计算出位图的高度

    和宽度,以及地形的水平、垂直网格数,找出

    位图的最大灰度值与最小灰度值;在这一步骤

    中,需要注意的是,如果位图图像的宽或高有

    冗余( 也就是位图的高度、宽度不是给定的网

    格间距的整数倍),则必须剪裁掉冗余的部分,

    然后在重新计算实际用到的位图图像的宽和

    高;

    (3)建立位图的灰度值与地形高程的线

    型映射关系;

    (4)依据网格交点的灰度值以及线型映

    射关系,求出对应于该点的地图的高程值;并

    将其存储到两维数组中;

    (5) 计算出各个顶点的法线, 利用

    OpenGL 的显示技术。绘制地形的三角形面片。

    本设计的程序,可以绘制不同地貌,不

    同海拔高度的地形,模拟范围非常广。图1、

    2 是几种典型的地貌模拟图。

    对于即将到来的研究,有几个有趣的趋势

    已经确定。其中,有希望的方向可以归纳如下:

    第一,性能和交互性的程序方法将继续改善,

    往往意味着对GPU 的并行编程。第二,有了

    上述的算法作为支撑,在大数据下基于多种传

    感器的二次图像重建技术将成为可能。

    参考文献

    [1] 徐拥军. 基于Google Earth 的高程图制

    作方法[J]. 中国西部科技,2010(04).

    [2] 贺菁. 基于高程图的光学成像模型[J].

    计算机工程,2008(01).

    [3] 闫飞. 基于拓扑高程模型的室外三维环

    境建模与路径规划 [J]. 自动化学报,

    2010(11).

    [4] 宋春玉. 基于Google Earth 绘制中小比

    例尺高程图可行性研究[J]. 自动化学

    报,2013(06).

    作者单位

    大连东软信息学院电子工程系 辽宁省大连市

    116000

    图1:远距离整体视图

    图2:高海拔地区视图

    98 • 电子技术与软件工程 Electronic Technology & Software Engineering

  • 上一篇             下一篇
发给朋友 分享到朋友圈
  • 回顶部
中国权威论文发表|微信客服:lunww2015
本站提供论文发表发表论文核心论文发表
免费论文发表资源,文章只代表作者观点,并不意味着本站认同,部分作品系转载,版权归原作者或相应的机构;若某篇作品侵犯您的权利,请来信告知:lunww@126.com