文档介绍:基于OpenGL三维物体建模方法的研究与实现
赵启升,李存华
(淮海工学院计算机科学系连云港222005)
摘要使用OpenGL可以对读入的STL几何模型进行三维真实感渲染、视角变换、显示缩放、光照设置及鼠标拾取等。本文介绍了一种基于OpenGL的三维物体建模方法,分析了基于该方法设计相应软件的体系结构,并着重探讨了STL文件的载入及视角变换等关键技术。
关键词Visual C++ OpenGL STL 三维图形建模
基金项目江苏省教育厅自然科学基金资助项目()
Research and Implementation of Three-Dimensional Object
Modeling based on OpenGL Technology
Zhao Qisheng,Li Cunhua
(Depart puter Science,Huaihai Institute of Technology,Lianyungang222005)
Abstract After a STL gemometric model is read,using OpenGL can dye its color, transform its visual angle,zoom its display,set its illumination,pick its mouse and paper introduces a method of three-dimensional object modeling,analyzes the architecture of related software based on the method,and discusses emphatically such key technology as loading of STL files and visual angle transforming.
Key words Visual C++ OpenGL STL Three-Dimensional Graphics Modeling
OpenGL是一个硬件和图形软件接口,由于它在三维真实感图形制作中性能优秀,已经成为事实上的高性能和交互式视景标准。但是它只能提供基本几何元素的造型函数,使得复杂模型的建模相对困难。而3DMAX、AutoCAD等三维图形建模和动画软件,虽能方便建立各种复杂物体模型,但是很难进行程序控制。如果在3DMAX、AutoCAD等软件中建立好复杂模型后,在OpenGL中实现对其进行控制和变换,使用OpenGL直接构建模型,将产生很好的效果。本文阐述了通过接收STL几何模型数据,将其转化为系统自定义的几何模型的一种方法,并通过OpenGL实现对几何模型进行三维视角的变换等。
三维物体结构分析
图1为一个三维圆环的线框视图,将它局部放大,可以清晰的看到一个复杂的三维物体其实是由一个个结构简单的三角形面片组成的,多个三角面片在三维空间中依照一定的次序排列,就可以构成任意结构的三维模型。由此可以得到三维物体构造的层次关系如图2所示。
三维模型
三角面片1
三角面片n
顶点1
顶点2
顶点3
顶点1
顶点2