float componentAspect = (x1 - x) / (y1 - y);
//设置当前的可视空间为正投影空间
if (xRatio > yRatio)
glOrtho(0,x1 - x, 0,(float)( rc.bottom - rc.top ) * xRatio, -50000.0,50000.0);
else
glOrtho(0,(float)(rc.right - rc.left) * yRatio, 0,y1 - y, -50000.0,50000.0);
glMatrixMode(GL_MODELVIEW); //指定模型矩阵为当前矩阵
3.2 实现三维统计数字
为了实现三维数字的显示,需要做3方面的工作。第一,利用三维建模软件实现数字0到9的三维模型;第二,利用工具把模型转换成CPP的输出文件;第三,把生成的CPP文件内容加入工程中,编程驱动。
首先,生成0到9的三维模型。在这里选用multigen creator软件,当然,用3DMAX等软件都是可以的。Creator软件为美国MultiGen公司新一代实时仿真建模软件;它区别于其他建模软件,主要考虑在满足实时性的前提下如何生成用户需要的三维模型。其强大的建模功能可为众多不同类型的图像发生器提供建模系统及工具,其Openflight输出格式在实时三维领域中成为最流行的图像生成格式,并成为视景仿真领域事实上的行业标准。
打开creator软件,新建一个空文件。在工具栏选择“Geometry”中的“3D Text”按钮,弹出“Text”对话框,在“Text String”编辑框中输入“0123456789”,点击ok,生成平面的数字模型,如图1所示。
图1 平面数字
|