陈东风一番对于编程方向的分析引起了其他三人的疑惑,陈东风光要搞个底层的算法,这搞出来要怎么用呢?毕竟他们的初衷是要运用到设计中去的。但是陈东风说的也没有错,除非有大量的人力物力支持否者他们四人可能连几何引擎算法都不一定能够完成。
“东风,我们向院长求救?”杨辉有困难找院长。
“得了吧,现在黄院长的魂已经被mini2给勾走了,恐怕他是没有空理我们,再说了我们是航空院又不是计算机院,巧妇难为无米之炊啊。”唐昌宏叹口气道。
陈东风一拍大腿说:“兄弟们,首先我们搞得这个几何引擎可能一点实用价值都没有,这样我们也是张不开口求助学校。现在院长给我们批准了两个客户端已经是天大的面子了。这样我们先搞起来,等搞出点眉目,我估计杨光老师那里也差不多也忙完了,当时候我们在联合计算机院来搞这个几何引擎,怎么样?”
陈东风都这样说了,三人自然没有意见,毕竟现在都是纸上谈兵阶段,连几何引擎的功能分析还没有做完。正好这段时间vax-11还没有到,四人利用这段时间先把框架讨论出来。
其实陈东风四人还不知道1979年,公司发布了世界上第一个完全基于实体造型技术的大型cad/cae软件──ideas。由于实体造型技术能够精确表达零件的全部属性,在理论上有助于统一cad、cae、cam的模型表达,给设计带来了惊人的方便性。可以说,实体造型技术的普及应用标志着cad发展史上的第二次技术革命。但是,在当时的硬件条件下,实体造型的计算及显示速度太慢,限制了它在整个行业的推广。
现在cad/cae等cax软件还没有在硬件的支持下发挥威力,但是随着这几年计算机计算能力的大幅度提高,cax等软件已经在汽车、航空等制造业发挥越来越重要的作用。
这次陈东风提出的几何引擎计划中最为重要的就是三维造型技术。三维造型技术是建立恰当的模型来表示自然界中形态丰富的三维物体的技术,根据造型对象将造型技术分成3类。
第一类是曲面造型,主要研究计算机内如何描述一张曲面,及曲面的显示与控制。曲面造型又分成规则曲面和不规则曲面两种。不规则曲面造型方法他们采用的是贝塞尔曲线曲面。
第二类是立体造型方法,主要研究在计算机内如何定义、表示一个三维物体,主要有体素构造法、边界表示法和八叉数法等等。曲面造型和立体造型合称几何模型造型。
第三类是自然景物模拟,主要研究在计算机内如何模拟自然景物,如云、流水、树等。该造型技术主要应用在游戏和艺术造型等领域。
不过自然景物的模拟不是他们四人的研究重点,曲面和立体造型是他们这次几何引擎的重点方向。当然三维几何引擎是重点,二维的几何引擎也不能少。
二维图形基本几何变换是指相对于坐标原点和坐标轴进行的几何变换,包括平移、比例、旋转、反射)和错切5种变换。
二维和三维的图形的底层函数算法都实现了才能构成一个完整的几何引擎。
所谓几何引擎是是借用机器工业的同名术语,表明在整个系统中的核心地位。也可以称之为“支持应用的底层函数库”或者说是对特定应用的一种抽象。
陈东风想做这个几何引擎,关键还是现在人少,整体cax系列软件需要大规模的人员共同开发以及对各种客户需求的分析。这些都不是目前陈东风他们能掌握的资源,然而搞几何引擎就不一样了,最底层的研究关键还是算法、结构、效率,以他们四人目前的实力可以勉强实现。
“东风,我问下,如果这个几何引擎搞出来后,你准备怎么办?”杨韦问出了关键。
陈东风来回走了几步,“我也没有想好,只是觉得这是趋势,没有cax软件在航空设计等领域的效率会很低。大家有什么看法?”
“无非有两条路,一是免费给别人使用,然后根据第三方开发的反馈来不断的完善这个几何引擎。二是我们自己组织人研发cax类软件。”杨韦说。
杨韦想说的就是如果这个几何引擎想要完善那么就必须要有人用,这样才能不断的完善发展,所以关键问题就是怎么用了。
唐昌宏在沉默了一会说道:“我们现在想这些是不是太早了,其实这个几何引擎的使用问题应该不大,由于三维图形涉及到许多算法和专业知识,要快速的开发三维应用程序是有一定困难的。当应用程序开发人员非常需要一个封装了硬件操作和图形算法、简单易用、功能丰富的三维图形开发环境,而这个环境就是我们的几何图形引擎。所以我们现在的焦点是怎么开发这个引擎,编程的语言,引擎的架构、算法等等,成品之后的工作还是等等再说吧。”
陈东风接着唐昌宏的话说:“昌宏考虑的很对,我预计这个几何引擎的代码有几十万行,我们四个人想要完全的可能性不大,还是要先做出第一阶段的成果后寻找帮手。编程语言我觉得c语言已经不太合适了,c++是一个很好的选择。”
自从四人开始晚上计算机后,对编程语言的发展一直是很上心。去年c++由比雅尼·斯特劳斯特鲁普博士在贝尔实验室发明并实现后,c++开始在编程领域展露头角。经过一段时间的发展,c++已经在工业上的开发语言占很大的比例