QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1407|回复: 14

[讨论]在linux平台上开发三维几何内核的可行性有多大?

[复制链接]
发表于 2005-5-7 22:58:19 | 显示全部楼层 |阅读模式
其实我也不大懂这个,只是最近打算做三维图形,才了解了一丁点。

三维几何内核主要是面向CAD的(面向其他图形需求也可以),中国从来就没有自己的几何内核,尽管有国产的三维CAD,但也是买国外的内核来做的。三维几何内核对于三维CAD软件,就象linux内核对于linux系统,游戏引擎对于游戏软件那样的重要。

目前主要的几何内核是ACIS和ParaSolid,都是美国的。美国人就依仗这两个几何核心开发出一系列的CAD软件,几乎垄断了中国的CAD市场。几乎每套三维CAD软件整套买下来都要数万或数十万美元,而且每年的升级费用也要数千美元。相较之下,一套正版的windows刚几个钱啊?也和windows一样,国内企业规模小点的都用盗版,几乎都用出依赖心理来了。中国人里怎么就有那么多目光短浅的人呢?

能不能在利用自由软件的运作方式,在数年或更长久的时间打造中国的几何内核及CAD软件呢?我觉得国内的那些只知道赚钱的软件公司决不会往这样长久的项目上投钱的,而高校里的研究人员又过于势单力薄,而且大多也都是微软的顺民。只有通过无数支持自由软件的程序员才有力量做这样大规模的事情。
发表于 2005-5-7 23:03:37 | 显示全部楼层

不知道“三维几何内核”的概念是什么?
回复

使用道具 举报

发表于 2005-5-7 23:18:55 | 显示全部楼层
看了第一边,我糊涂了。
看了第二边,糊涂到已经不知道楼主和我究竟谁糊涂了……
你到底要说什么啊。
回复

使用道具 举报

 楼主| 发表于 2005-5-7 23:26:42 | 显示全部楼层
最初的三维几何图形在计算机中是采用线框模型表示的,譬如一个长方体,只需要由它的棱线来表示就可以了。所有的几何对象看上去都像铁丝笼子。

将实体的概念首先引入三维几何造型的第一个尝试是日本北海道大学冲野教郎。他用代数方程表示机械零件的规则曲面形状。为了判别一个空间点是在曲面之外、之内还是之上,只要将点的坐标值代入曲面的代数方程中,计算方程的值是大于,小于,还是等于零。用垂直于坐标轴的三组密集平面去切割零件模型的所有表面,将求得的交线消除隐藏部分后就得到零件立体图。冲野教授做了这样的一个软件,称之为TIPS(技术信息处理系统),并公布了源程序,在英国、美国等大学中产生了很大影响。中国纺织大学、清华大学、华中理工大学的教师先后访问过冲野教授,北京航空航天大学也得到了源程序磁带和全套手册的馈赠,并成功地移植到IBM主机上运行TIPS当时已初具CAD/CAM规模,可以自动计算零件的重量、惯性矩,自动生成有限元网格,产生数控加工的粗铣和精铣走刀轨迹。实在想不通为什么最初CAD实体造型雏形的东西我们都有了,但最终没有产生自己的东西。起步都是一样的。

1972年美国罗切斯特大学沃尔克教授开始研制PADL系统.PADL是零件与装配描述语言的缩写。1976年后向外界扩散,提供PADL-1.0版的源程序和全套文档。对于非赢利的教育单位只收象征性的100美元,作为磁带复制和资料成本费。到1981年,已有美国通用汽车公司和英国Leeds大学等多个学校和公司引用了这一系统。北京航空航天大学当时也通过中国航空技术进出口公司申请引进一套,但由于对方在合同文本中写了“凡是因使用此软件而引起质量事故损失,本单位概不承担法律责任”等条款,中航技公司不能接受这些条款,终止了签署合同,仅购买了全套软件资料。[机会好像又一次被一些庸才浪费了]

沃尔克教授及其课题组的主要成员雷奎卡对于实体造型的理论基础发表了很多论著,至今在我国的和计算机图形学教材中有广泛引用。实体造型简称体素拼合,它是用三维基本体素,如立方体、圆柱体、圆锥体、球、斜楔、圆环作为积木块,通过两两相加或相减来产生规则形状的机械零件。沃欠克将体素拼合看作是一个集合运算过程,A和B两个正则集通过并、差、交三种操作得出另一个正则集。他企图为实体造型的集合运算建立一个严密、完整的理论体系,使得体素拼合的算法实现可以表示为这一理论体系的一系列形式化描述。遵循这一方法,就可以保证开发的软件正确无误,运行可靠。

     1979年起沃尔克进一步联合工业界力量,在国家科学基金委的支持下开发了PADL-2.0系统,于1982年推出试用版。当时美国的Unigraphics,Auto-trol, AutoCAD12版都使用PADL2作为自己商品系统的实体造型模块。一个实体可以由基本的的体素拼合而成,在系统中称作CSG,直译为构造性实体几何。这一名词已被全世界普遍接受,成为实体造型中记录体素拼合过程的一种标准描述形式。

1973年,英国布雷德在剑桥大学实验室发表了题为“用体素进行设计”的博士论文,提出了用体素拼合建立几何形体边界表示的原型试验系统。他也使用规则形状的体素,但用参数方程表示二次圆锥曲面。在体素拼合中求出各个相贯表面之间的交线,并且沿交线将参与集合运算的两个体素组合为一个整体。实体造型中的拼合操作,在文献中往往也称作布尔操作(Boolean operation),借用英国数学家乔治·布尔(George Boole)所提出的与、或、非逻辑运算法则来表示拼合后的相贯曲面取舍准则。布雷德完成论文答辩后,继续留在CAD实验室里研究实体造型技术,接连发表了几篇内容翔实的研究报告,并先后研制了Build1和Build2两个新的实验系统。其中Build2采用了当时欧洲最新推出的Algol 68结构化编程语言。与此同时,布雷德和他的导师Charles Lang, 同窗Alan Grayer合作,聘请荷兰人Peter Veenman作市场策划,于1974年创办了Shape Data公司,用Fortran语言开发出第一代实体造型商品系统Romulus,并从1978年起推向市场。
回复

使用道具 举报

发表于 2005-5-7 23:34:31 | 显示全部楼层
matlab可以画一些三维线条图。
回复

使用道具 举报

 楼主| 发表于 2005-5-7 23:45:49 | 显示全部楼层
1982年3月北航吴骏恒等与航空工业部下属510厂合作,去英国剑桥CAD中心接收引进的GINO-F图形软件包。经福累斯特教授介绍,访问了Shape Data和另一家实体造型系统Medusa开发公司。Romulus只提供三维几何造型能力,绘图输出衔接剑桥另一家公司的GDS通用绘图系统,加工编程衔接CAD中心的GNC,有限元建模衔接FEMGEN。当时Romulus已卖出25套,目标程序约3万英磅,Fortran源程序要再加3万英磅。

英国的Ferranti数控机床公司在1981年将Romulus纳入公司自己开发的CAM-X加工编程系统中,转卖出15套。此后,北京航空工艺研究所的黄无忌等也访问了Shape Data,洽谈购买Romulus的源程序,共约10万美元,最后未能在国内办妥手续而作罢。

1981年后Evans & Sutherland公司收购了Shape Data,并在布雷德等的支持下,从1986年起着手开发美国版权的第二代实体造型Parasolid系统,其中增强了二次曲面造型和交互查询几何数据、局部修改形状等功能。1988年前后,UG买下了Parasolid,并用它取代PADL2。由于UG的曲面造型系统一开始采用插值于四条边界的孔斯曲面,开发了很强的二次曲面功能,所以与Parasolid的几何算法有很好的兼容性,移植很快完成。但是1989年9月航空部CAD小组去洛杉矶附近的Cypress访问麦道公司的UG系统集成组时,演示Parasolid的曲面求交功能过程中仍很快出现死机。经过持久的应用磨合后,Parasolid已成为当前CAD系统中性能最稳定的通用几何开发平台之一。1996年夏,Autodesk公司主管MDT软件开发的执行副总裁Dominic Gallello在北京谈到Parasolid时情不自禁地流露出自豪感,认为这是美国开发CAD软件的一项重大成果。至于Medusa实体造型系统,于1983年被美国CV公司并购,并进入中国市场销售,国内有一批用户,所以大家很熟悉这一软件。这是一个多面体造型系统。

1986年美国创建了Spatial Technology公司,从事基于NURBS的新一代CAD通用支撑平台开发。其中的实体造型功能从国际上流行的16种商品系统中优选,最后还是决定与 布雷德等人合作。NURBS曲面功能则以波音公司于1980~1985年开发的CAD系统TIGER为基础。1989年12月推出了ACIS1.0版。ACIS就是布雷德的同窗Alan Grayer,导师Charles Lang,以及Ian Braid本人加上Solid的字首。ACIS自称是世界上最好的CAD三维几何造型平台,专供CAD厂商进行增值产品开发和大学、研究所进行CAD技术研究。1993年6月Autodesk与Spatial公司签约,采用ACIS作为三维机械设计系统MDT的开发平台,从此成为ACIS的最大用户。
回复

使用道具 举报

 楼主| 发表于 2005-5-7 23:47:28 | 显示全部楼层
这点资料也是刚刚搜到的。大体上就是CAD的发展史。可以看出来,中国有三个机会可以发展本国的CAD产业,但都被浪费了●●●●

大家大都知道游戏引擎,一开始我表达的不够好,游戏引擎就可以说是游戏软件的内核了。linux系统我还不熟,仅知道linux系统有好多种,但内核都是一样的。几何内核也是如此,CAD软件有好多种,但几何内核是一样的。

许多人梦想着能搞出一套游戏引擎,而实际上做一套通用的几何核心更有价值。前者仅体现出娱乐的价值,而后者可以关系到国计民生。
回复

使用道具 举报

发表于 2005-5-8 00:25:08 | 显示全部楼层
楼上的继续。 :-)
回复

使用道具 举报

 楼主| 发表于 2005-5-8 01:48:58 | 显示全部楼层
直到90年代中期,政府号召了一个叫做“甩图板“的工程,就是让机械设计人员不再使用尺规在一块木制的图板上绘制图纸了,改成使用AUTOCAD在计算机屏幕上绘制工程图。实际上那也仅仅是把电脑作为一个高级图板用了。

对于3D实体造型类CAD应用软件来说,理论上的难度不能说很大,而工程应用中的需求却复杂多变,软件系统庞大,需要有精干、稳定的队伍持久进行维护,而且每经过一段时间,例如7~8年后需要更新软件的体系结构,以适应当前的主流软件技术环境。关于这个精干、稳定的队伍的问题,linux旗帜下的兄弟应该是最有资格的。我觉得技术不能与利益挂钩,一旦它们勾结了起来,思想就会保守起来,会阻碍技术的发展。

大致背景就说这么点,感兴趣的兄弟可以查查资料的。这里只是想讨论一下可行性。我觉得技术的可行性应该是没有问题的,关键问题是开发梯队会是怎样的呢?
回复

使用道具 举报

发表于 2005-5-8 09:21:09 | 显示全部楼层

Re: [讨论]在linux平台上开发三维几何内核的可行性有

[quote:8594218ea6="背后的小刀"]其实我也不大懂这个,只是最近打算做三维图形,才了解了一丁点。

三维几何内核主要是面向CAD的(面向其他图形需求也可以),中国从来就没有自己的几何内核,尽管有国产的三维CAD,但也是买国外的内核来做的。三维几何内核对于三维CAD软件,就象linux内核对于linux系统,游戏引擎对于游戏软件那样的重要。

目前主要的几何内核是ACIS和ParaSolid,都是美国的。美国人就依仗这两个几何核心开发出一系列的CAD软件,几乎垄断了中国的CAD市场。几乎每套三维CAD软件整套买下来都要数万或数十万美元,而且每年的升级费用也要数千美元。相较之下,一套正版的windows刚几个钱啊?也和windows一样,国内企业规模小点的都用盗版,几乎都用出依赖心理来了。中国人里怎么就有那么多目光短浅的人呢?

能不能在利用自由软件的运作方式,在数年或更长久的时间打造中国的几何内核及CAD软件呢?我觉得国内的那些只知道赚钱的软件公司决不会往这样长久的项目上投钱的,而高校里的研究人员又过于势单力薄,而且大多也都是微软的顺民。只有通过无数支持自由软件的程序员才有力量做这样大规模的事情。[/quote]

想法是不错,只是三维核心于linux其实也没多大关系。要做出这种核心要求的并不只是软件,还有数学和工程;难度还是非常大的。
回复

使用道具 举报

 楼主| 发表于 2005-5-8 09:47:51 | 显示全部楼层
我觉得三维核心与linux关系很大。如果linux上也没有国产的自由的CAD软件,那linux是无法在工程中使用的,注定要丢掉那些最有力量支持linux的做设计/制造工程的企业,我们工科的学生毕了业大都是流向这些单位的,如果企业采用了linux,那么在高校里自然会响应这种需求,开始linux普及教育吧。

其实那么多人依赖MS,并不尽是他们觉悟低,因为市场需求他们那样做。对于我们学工科的学生,你拿什么理由不让我们使用windows呢?因为工厂里的各种软件都是在windows上跑的,我们学了linux有什么好处?连最基本的设计软件都没有,unix下倒有许多,不知道能不能移植在linux下运行,即使移植过来,还是很贵的,那还不如使用熟悉了许多年的windows中的软件呢。

另外几何核心虽然和平台没有多大关系,但是我总觉得linux最适合它,自由的和自由的应该站在一起。如果在windows下做,会有无尽的麻烦。
回复

使用道具 举报

发表于 2005-5-8 09:52:37 | 显示全部楼层
我也觉得这个跟平台的关系不时很大,可以纠集一帮数学好的积极分子来做。。。。否则那么多的复杂的算法应付不来
回复

使用道具 举报

 楼主| 发表于 2005-5-8 10:14:27 | 显示全部楼层
要说到难度,我觉得数学上不会用到很深的东西,会数值分析的人应该就可以了,许多算法,国外许多大学都有丰富的资源。另外虽然CAD的系统庞大,且要面向具体的各种工程使用,但几何核心不需要考虑这些,只需实现最本质的几何运算就可以。
回复

使用道具 举报

发表于 2005-5-8 11:19:26 | 显示全部楼层
没什么好说的,支持楼主。
回复

使用道具 举报

 楼主| 发表于 2005-5-8 11:36:21 | 显示全部楼层
国外有搞的,可以借鉴
http://www.opencascade.org/
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-6 03:38 , Processed in 0.046094 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表