基于CATIA二次开发的球首参数化设计

作者:徐俊路;陈顺怀 刊名:船海工程 上传者:徐益宏

【摘要】为实现在船舶型线设计中快速生成船舶球首,以船舶球首为研究对象,通过定义控制球首形状的纵向边界线、横向边界线、横剖面形状,设置相关控制参数,以CATIA为开发平台,VB为开发工具,对其进行二次开发,编制球首参数化设计程序,迅速地生成球首三维模型。

全文阅读

球首部分的线型设计是船舶型线设计中的一个重点和难点。一方面首部线型决定着船舶的航行性能,另一方面由于首部空间形状复杂种类繁多,因此,要归纳出一套普遍适用的具体方法有难度。通常,设计球首是针对具体的船型特点,根据一些基本规律和经验,确定一个或几个球首方案,通过反复的模型试验来改进球首形状来最后确定。所以球首的设计过程非常烦琐,且经常需要修改,效率不高。因此快速生成船舶球首形状并便于修改是亟待解决的一个重要问题。1球首模型的建立1.1球首三维边界线理论球首的三维形状由球首的边界线来确定,主要由纵向边界线、横向边界线、首柱处的横剖面形状来决定[1]。见图1。图1球首三维边界线1)纵向边界线即为球首的中纵剖线。ABC是纵向中剖面的边界线,是一条二维曲线。2)横向边界线即球首各剖面最大宽度处的型值点连接起来的一条空间曲线。DBE是由球首各剖面最宽处型值点组成的一条边界线,显然,BE和BD对称。BE在ZY平面的投影为BE,在XY平面上的投影为BE,BE通常是一条三维的空间曲线。3)首柱处的横剖面形状决定着球首体积的纵向分布。首柱处的横剖面形状依剖面形心的位置的不同,大致分为2型、型和型[2]。见图2。图2横剖面类型1.2边界线形状控制参数的选取在CATIA中的,当三维曲线在点处加入切向约束时,曲线将自动在该点处产生一个张力值来衡量约束的程度大小。曲线形状不仅取决于曲线上点位置,而且还由点上的张力值来决定。通过相同点的曲线若在点处的张力值不同曲线的形状也是不同的。因此,可以同时将该点的位置和该点处的张力值作为控制曲线形状的参数,来控制球首边界线的形状。如图3a),球首纵向边界线当仅变化点处的张力值时,引起的边界线形状变化情况。图3b),球首纵向边界线改变点的位置引起边界线形状变化情况。图3c),改变横剖线点处的张力值引起的横剖线形状变化。1.3球首三维曲面的生成当给定控制的球首曲面形状的纵向边界线、横向边界线和首柱处的横剖线形状给定后,以首柱处的横剖线为扫掠线,以纵向边界线和横向边界线为导引线,进行变截面扫掠,即可生成球首三图3纵向边界线和球首横剖线随点和张力的变化情况维曲面。2球首参数化设计方法根据上述的由三维边界线控制的球首的外形模型,应用CATIA的二次开发技术,就可在CATIA环境下快速生成球首三维曲面模型。CATIA是基于新一代开放的、标准的体系结构,为各种应用的集成提供了一个开放的平台。对VB和VC这两种开发工具都提供了很好的支持,能够很好地实现二次开发的功能要求。船舶是具有双向曲度的复杂空间曲面,尤其是球首空间形状更加复杂,而CATIA具有强大的曲面造型能力,可以避免重复的曲面生成的编程工作。2.1CATIA二次开发的方法CATIA的二次开发方法主要包括进程内访问和进程外访问。进程内访问即指脚本和CAT-IA在同一进程内运行,也就是由CATIA的脚本引擎来解析执行宏脚本命令的。进程外访问即指脚本运行不由CATIA来调用,而是将CATIA作为一OL(ObjectLinkingandEmbedding)自动化服务器,外部程序通过COM接口来访问CATIA内部对象[3]。通过记录和修改宏命令,并应用VB编程进行进程外访问以实现CATIA的二次开发。2.2CATIA三维参数化建模的实现方法在CATIA中应用表格驱动几何图形实现这一功能。应用表格驱动几何图形,首先应将与零件尺寸有关的标准数据以表格的形式存放在相应的文件中,并建立表中数据与三维模型特征参数的联系。通过选择表中不同记录达到改变几何尺寸,获得所需零件的模型。在CATIA的参数化设计中,可以使用的

参考文献

引证文献

问答

我要提问