论文部分内容阅读
开发交互式三维图形程序是充满乐趣和富有挑战性的工作.随着图形标准OpenGL在Unix与PC平台的广泛应用,越来越多的3D应用程序采用OpenGL作为支撑库.OpenGL提供了数百个库函数,可方便地绘制具有真实感的3D图形.但是对于一个完整的交互式3D应用程序,二维或三维图形的绘制只是系统应有的基本功能,更多的工作集中在绘制三维虚拟场景所用到数据结构的设计、人机实时交互算法的实现和用户界面的设计.由于OpenGL并不提供此类编程接口,因此开发交互式3D应用程序的技术难度较大.目前图形图像方面的软件系统较多,在各自方面都有不俗的表现,但都要求用户有一定的专业水准.然而有很多用户,他们仅是想获得建筑设计的一般知识,体验建筑设计到实现的过程、进行三维建筑的审美,针对这些需求,该文提出一种利用可视化技术构建的软件系统,该系统能够提取简单平面设计的信息数据,自动生成具有真实感的三维虚拟场景.这个系统也将通过不断地完善,达到能够满足一般或专业人士对建筑设计方面软件需求的目的.该文也将详细说明系统用到的三维软件构件库,该构件库符合现代软件工程,而且可复用、可进行二次开发,其基本构成为基本算法函数(如矢量运算函数等)和COM接口.该文将对目前组件技术发展趋势以及流行的各种组件技术进行阐述,并通过比较各种技术的优缺点,说明该文开发3D构件库采用COM的主要原因.该文也将重点论述在作者开发的建筑设计虚拟现实系统中用到的两个视图,即2D设计视图和3D设计视图,并着重说明了努力增强人机交互而实现的各种功能,阐述了它们用到的数据结构以及两种数据结构之间的交互.在2D设计视图中,论述了图元之间的关系及其依赖,规定出了它们之间的约束.在3D设计视图中,针对于建立的虚拟场景提出了一种模拟人的视觉的基于视线的虚拟漫游算法,并在实践中获得了较为满意的效果.该文最后也说明了该系统中需要解决的一些问题,并在最后的章节中提出了对该系统一些优化和应用方面的探索性见解,以此和读者共勉.