999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種基于CATIA二次開發(fā)的船體外形建模方法

2017-08-09 03:21:29劉勇杰胡勇鄭紹春
船海工程 2017年4期
關(guān)鍵詞:二次開發(fā)

劉勇杰,胡勇,鄭紹春

(武漢理工大學(xué) a.高性能船舶技術(shù)教育部重點實驗室;b.交通學(xué)院,武漢 430063)

?

一種基于CATIA二次開發(fā)的船體外形建模方法

劉勇杰,胡勇,鄭紹春

(武漢理工大學(xué) a.高性能船舶技術(shù)教育部重點實驗室;b.交通學(xué)院,武漢 430063)

為了快速得到船體三維外形,以某11 000 DWT散貨船為例,運用CATIA二次開發(fā)技術(shù),簡化重復(fù)性建模工作,精簡建模操作流程,較快得到比較理想的船體三維外形。詳細(xì)介紹船體外形型值點、外形樣條曲線和外表面的創(chuàng)建方法。

船體外形;CATIA;二次開發(fā);VBA;Excel

在實際建模過程中,往往要進(jìn)行許多重復(fù)性的操作,這在船體三維外形設(shè)計中也不例外。而且,船體外形在總體設(shè)計階段需要經(jīng)常修改[1],這為傳統(tǒng)建模方法增加了很大工作量和難度。因此,如何快速有效的建立船體三維外形是一個亟待解決的問題。

CATIA廣泛應(yīng)用于航空[2-3]、造船[4-5]、汽車[6-7]等眾多行業(yè),是世界上領(lǐng)先的產(chǎn)品設(shè)計與創(chuàng)新方案解決平臺[8]。其中,CATIA V5開放了很多接口,提供了很好的二次開發(fā)平臺,在船體外形設(shè)計方面也有一定的的研究應(yīng)用,如采用進(jìn)程內(nèi)VBScript腳本編程方式完成了船體的建模工作[9];采用進(jìn)程外VB編程方式完成了球首的參數(shù)化建模設(shè)計[10]。但是,這部分工作所述方法程序開發(fā)環(huán)境智能化程度低,使用不方便,如沒有代碼提示、語法高亮顯示等功能;或者由于軟件版本參差不齊,影響接口之間的通信,增加了開發(fā)的難度。因此,提出采用進(jìn)程內(nèi)VBA腳本編程方法來完成船體三維外形建模工作。

1 CATIA二次開發(fā)技術(shù)

通過編程來訪問CATIA的對象有很多種不同的方法[11],見表1。對于其他的程序或腳本而言,CATIA只是一個對象連接與嵌入(object linking and embedding,OLE)自動化對象服務(wù)器,任何能訪問COM(component object model,部件對象模型)對象的程序或腳本都能訪問CATIA的對象并對其進(jìn)行操作。

表1 編程訪問CATIA對象的方法

在CATIA Automation中所有的數(shù)據(jù)都被封裝成對象的形式,并形成樹形結(jié)構(gòu),如圖1所示。主根位于Application中,并逐層分解為Document,Cameras和Windows 3種形式的對象。每個對象都有其自己操縱集合的方法和屬性,如添加(Add)、刪除(Remove)、獲取子項(Item)方法和數(shù)量(Count)屬性等,這樣就可以通過根對象逐層對所有其他對象進(jìn)行訪問。

VBA對象是指Excel中的各種元素,即Excel對象[12](見圖2)。VBA程序要自動化操作和控制Excel應(yīng)用程序,則必須要與Excel所提供的對象進(jìn)行通信,比如訪問某工作表、修改某批單元格的數(shù)據(jù)等。所有的Excel對象構(gòu)成了Excel的對象模型。其中比較常用的對象為Application、Workbook、Worksheet、Range和Cells等。

圖1 CATIA對象結(jié)構(gòu)

圖2 Excel對象結(jié)構(gòu)

2 船體外形型值點的創(chuàng)建

以某11 000 DWT散貨船的電子版型線圖作為原材料,使用CATIA(P3 V5 R20版本號)軟件進(jìn)行船體外形三維建模等相關(guān)工作研究。該型線圖主要包括橫剖線圖、縱剖線圖、半寬水線圖、型值表、主尺度欄等,另附肋骨型線圖。船舶三維坐標(biāo)系是以中線面、中站面和基平面3個互相垂直的平面的交線為x,y,z坐標(biāo)軸,以船艏、船舶右舷和上方分別為x,y,z軸的正方向。而CATIA環(huán)境的坐標(biāo)系y軸正方向的定義與船舶坐標(biāo)系相反。因此,將型值點都取正值在CATIA中得到的是船舶的左舷。

2.1 進(jìn)程內(nèi)以VBA腳本編程方式創(chuàng)建型值點

錄制生成點的宏腳本,在CATIA自帶的VBA開發(fā)環(huán)境下進(jìn)行編輯調(diào)試。調(diào)試運行成功后的生成型值點的代碼如下。

Sub CATMain() ‘入口函數(shù)

Set documents1 = CATIA.Documents ‘獲取文檔集合

Set partDocument1 = documents1.Add("Part") ‘添加新的零件文檔

Set part1 = partDocument1.Part ‘獲取part對象

Set hybridBodies1 = part1.HybridBodies ‘獲取幾何圖形集對象

Set hybridBody1 = hybridBodies1.Add() ‘添加一個幾何圖形集對象

Set hybridShapeFactory1 = part1.HybridShapeFactory ‘獲得HybridShapeFactory對象

Set part1 = partDocument1.Part

Set Excel = GetObject(******) ‘訪問Excel文件

For i = 2 To 645

X = Excel.worksheets(1).cells(i, 2).Value ‘給X賦值

Y = Excel.worksheets(1).cells(i, 3).Value ‘給Y賦值

Z = Excel.worksheets(1).cells(i, 4).Value ‘給Z賦值

Set hybridShapePointCoord1 = hybridShapeFactory1.AddNewPointCoord(X, Y, Z) ‘建立點

hybridBody1.AppendHybridShape hybridShapePointCoord1

part1.InWorkObject = hybridShapePointCoord1

Next

part1.Update

End Sub

以上代碼中,******代表.xls(x)文件在計算機上存儲的完整路徑(可以通過選中該文件,然后按住Shift同時點擊鼠標(biāo)右鍵“復(fù)制為路徑”,最后粘貼獲得)。每行代碼單引號后面的文字是說明性的注釋語言,且錄制產(chǎn)生的宏腳本中把Dim語句給注釋或刪掉(不影響程序的正常運行),以上是修改后的最終代碼。For循環(huán)表達(dá)式的書寫格式與型值在Excel文檔中的格式密切相關(guān),合理的數(shù)據(jù)保存格式可以簡化程序結(jié)構(gòu)。以上代碼對應(yīng)的數(shù)據(jù)格式如圖3,型值點每一站從上到下依次排列,最終得到的型值點云圖見圖4。

圖3 型值點保存格式

圖4 運行腳本程序后在CATIA中生成的點云圖

2.2 使用CATIA示例宏文件獲取點(線、面)

在CATIA的創(chuàng)成式曲面設(shè)計(general shape design,GSD)模塊中,包含一個錄有宏腳本的.xls文件,保存在CATIA安裝目錄下,一般路徑為…intel_acodecommandGSDPointSplineLoftFromExcel.xls。該文件初始格式如圖5,其中每一個StartCurve和EndCurve之間的橫向的3個數(shù)值分別代表x,y,z坐標(biāo),即每一行代表一個點,每一對StartCurve和EndCurve代表一根樣條線。運行此文件中名稱為Feuil1.Main的宏輸入1、2、3可以分別對應(yīng)生成點、線、面。這里,將每一站上的型值點分別復(fù)制到相應(yīng)的StartCurve和EndCurve之間(見圖6),在CATIA的GSD模塊環(huán)境下,成功得到型值點云圖,見圖7。(執(zhí)行宏輸入2得到的線框圖見圖8,輸入3執(zhí)行后系統(tǒng)提示錯誤)這種方法其實是CATIA進(jìn)程內(nèi)VBA腳本編程方法的另一種表現(xiàn)形式。

圖5 初始格式

圖6 修改后的格式

圖7 輸入“1”得到的點云圖

圖8 輸入”2”得到的初始線框圖

3 船體外形樣條曲線的創(chuàng)建

3.1 樣條曲線的自動生成

由于已經(jīng)獲得了型值點,希望進(jìn)一步獲得相應(yīng)的樣條線。所以,錄制宏腳本的環(huán)境也在存在已知點的基礎(chǔ)上進(jìn)行,如此能夠更加準(zhǔn)確的獲得腳本代碼,這大大有利于宏腳本調(diào)試工作的進(jìn)行。調(diào)試運行成功后的部分代碼如下。

For i = 18 To 35

Dim hybridShapePointCoord1 As HybridShapePointCoord

Set hybridShapePointCoord1 = hybridShapes1.Item(i)

Dim reference1 As Reference

Set reference1 = part1.CreateReferenceFromObject(hybridShapePointCoord1)

hybridShapeSpline1.AddPointWithConstraintExplicit reference1, Nothing, -1#, 1, Nothing, 0#

Next

以上代碼是通過錄制存在已知點的情況下建立樣條線的宏腳本,然后單純的進(jìn)行部分重復(fù)代碼的刪減和適當(dāng)位置添加For-Next循環(huán)調(diào)試完成的,操作簡單方便。通過修改變量i的取值范圍,使對應(yīng)一組控制點生成樣條線。圖9a)是i取值1~17和18~35范圍時生成的2根橫剖線。

3.2 船體外形樣條曲線的最終生成

通過多次重復(fù)執(zhí)行或嵌套多重循環(huán)語句,可以達(dá)到自動化生成整個船體樣條曲線的目的,采用上述示例文件宏命令中的2選項也可以完成樣條曲線的一鍵生成。然而,不難發(fā)現(xiàn),該船體曲線在艏部和艉部比較復(fù)雜,在一鍵生成樣條線時出現(xiàn)了錯誤,見圖8。其主要原因是準(zhǔn)備階段型值點數(shù)據(jù)錄入處理不恰當(dāng),在Excel中進(jìn)行排序的簡單操作后即可達(dá)到預(yù)想的結(jié)果。采用這種方法,在某種程度上,把自動化建模工作轉(zhuǎn)化為了數(shù)據(jù)的編輯整理工作。分步生成橫剖線、縱剖線、水線的結(jié)果分別如圖9b)、9c)和9d)所示,通過對稱操作后最終得到的船體外形線框圖見圖10。

圖9 船體外形線框建模流程圖

圖10 船體外形線框三視圖

4 船體外表面的創(chuàng)建

在得到船體外形線框圖之后,需要選擇特定的樣條線利用相關(guān)命令創(chuàng)建曲面。船的艏艉部外形比較復(fù)雜,而型值表所提供的型值有限,往往需要局部添加樣條線或控制點。基本方法是利用參考平面與站線或者水線相交獲得控制點,進(jìn)而得到樣條線,也可以利用肋骨型線圖。

創(chuàng)建曲面的命令主要是采用“多截面曲面”“網(wǎng)狀曲面”和“填充曲面”,需要利用CATIA的自由曲面和創(chuàng)成式曲面設(shè)計多工作臺協(xié)同完成,這也是CATIA功能的強大之處之一。其中,在船體平行舯體部分采用“多截面曲面”命令,在船艏艉通過“網(wǎng)狀曲面”和“填充曲面”相結(jié)合的方式完成。在此過程中,還要用到“切割”和“接合”命令對樣條線進(jìn)行適當(dāng)編輯以滿足曲面命令的使用需要。最終得到的比較光順的船體外形見圖11。

圖11 船體外形三視圖

5 新型線圖的獲取

得到較光順的船體外形之后,通過參考面與船體外形相交,可以分別得到橫剖線、水線、縱剖線等,經(jīng)過“投影”等命令編輯處理后可在CATIA工程圖模塊中形成相應(yīng)的型線圖(樣式參考圖10);然后參考面再與線相交就能得到新的型值點。運用“測量”命令依次測量所得型值點,再利用“設(shè)計表”命令把型值點導(dǎo)出到Excel表格中,進(jìn)行適當(dāng)?shù)木庉嫕M足型線圖里型值表的格式要求后,保存為.csv格式,在CATIA工程圖模塊中利用“從CSV創(chuàng)建表”命令可直接導(dǎo)入該型值表,以形成最終完整的型線圖。

6 結(jié)論

采用進(jìn)程內(nèi)VBA編程方法對CATIA進(jìn)行二次開發(fā),提高了建模效率,較快的完成了對船體三維外形的建模工作,結(jié)果表明該方法是可行有效的。且該二次開發(fā)方法較前述其他方法具有開發(fā)環(huán)境友好、代碼簡潔、接口通信方便、應(yīng)用門檻低等優(yōu)勢。使用者只需要具備基本的編程知識就能完成相關(guān)功能的二次開發(fā)工作,省時省力,可操性強,容易上手,適合廣大相關(guān)從業(yè)人員以及初學(xué)者借鑒使用,具有一定的實用價值。

[1] 顧敏童.船舶設(shè)計原理[M].2版.上海:上海交通大學(xué)出版社,2001.

[2] 謝岳峰,余雄慶.基于CATIA二次開發(fā)的飛機外形參數(shù)化設(shè)計[J].計算機工程與設(shè)計,2008,29(14): 3792-3794.

[3] 李惠宇,黃俊.基于CATIA VB二次開發(fā)的機翼幾何外形參數(shù)化建模研究[J].飛機設(shè)計,2015,35(2):1-4.

[4] 廖顯庭,劉家新.基于CATIA二次開發(fā)的散貨船艙段參數(shù)化設(shè)計[J].船海工程,2011,40(2):58-60.

[5] 鄧小龍,柳存根.船舶三維數(shù)字化設(shè)計研究[J].船舶工程,2010,32(5):40-43.

[6] 董廷.基于CATIA二次開發(fā)的車身骨架建模[J].客車技術(shù)與研究,2010,32(6): 18-20.

[7] 吳文龍,金新燦.基于CATIA二次開發(fā)的轉(zhuǎn)向架構(gòu)架參數(shù)化建模[J].鐵道機車車輛,2015,35(1):47-50.

[8] 羅朝陽.基于CATIA游艇機艙可視化設(shè)計[D].武漢:武漢理工大學(xué),2013.

[9] 朱曉軍,王鵬,彭飛.船體外形的CATIA建模方法[J].船海工程,2013,42(2):13-15.

[10] 徐俊路,陳順懷.基于CATIA二次開發(fā)的球首參數(shù)化設(shè)計[J].船海工程,2010,39(1): 45-47.

[11] 胡挺,吳立軍.CATIA二次開發(fā)技術(shù)基礎(chǔ)[M].北京:電子工業(yè)出版社,2006.

[12] 孟學(xué)多,鐘晴江.VB程序設(shè)計基礎(chǔ)與VBA應(yīng)用[M].杭州:浙江科學(xué)技術(shù)出版社,2011.

A Modeling Method of Hull Form Based on CATIA Secondary Development

LIU Yong-jie, HU Yong, ZHENG Shao-chun

(a.Key Laboratory of High Performance Ship Technology (Ministry of Education) b.School of Transportation,Wuhan University of Technology, Wuhan 430063, China)

In order to get the hull form rapidly, the secondary development technology based on CATIA was used to avoid a large quantity of repetitive modeling work and simplify modeling steps. Taking a 11 000 DWT bulk carrier as an example, the methods of creating the offset points, splines and outer surface of the hull form in the proposed method were introduced in detail.

hull form; CATIA; secondary development; VBA; Excel

10.3963/j.issn.1671-7953.2017.04.017

2016-12-27

國家自然科學(xué)基金(51379167)

劉勇杰(1992—),男,碩士生

研究方向:船舶先進(jìn)制造技術(shù)

U662

A

1671-7953(2017)04-0077-05

修回日期:2017-02-27

猜你喜歡
二次開發(fā)
淺談基于Revit平臺的二次開發(fā)
甘肅科技(2020年20期)2020-04-13 00:30:02
西門子Operate高級編程的旋轉(zhuǎn)坐標(biāo)系二次開發(fā)
淺談Mastercam后處理器的二次開發(fā)
模具制造(2019年3期)2019-06-06 02:11:02
基于C#的AutoCAD建筑構(gòu)件庫二次開發(fā)
江西建材(2018年2期)2018-04-14 08:01:14
西門子Easy Screen對倒棱機床界面二次開發(fā)
基于全站儀二次開發(fā)的覆冰厚度測量與實現(xiàn)
電測與儀表(2016年9期)2016-04-12 00:29:52
Micaps3.2 版本二次開發(fā)入門淺析
西藏科技(2015年12期)2015-09-26 12:13:51
基于VB的ANSYS二次開發(fā)在變壓器抗短路性能分析中的應(yīng)用
基于CATIA的橡皮囊成形毛料展開的二次開發(fā)
機械工程師(2015年9期)2015-02-26 08:38:10
ANSYS Workbench二次開發(fā)在汽車穩(wěn)定桿CAE分析中的應(yīng)用
汽車零部件(2014年5期)2014-11-11 12:24:32
主站蜘蛛池模板: 国产成人精品免费av| 一级毛片免费观看不卡视频| 日本人妻丰满熟妇区| 亚洲免费黄色网| 国内精品小视频福利网址| 欧美在线黄| 亚洲精品国产自在现线最新| 91精品久久久久久无码人妻| 日韩精品一区二区深田咏美| 91精品综合| 大学生久久香蕉国产线观看| 亚洲一区免费看| 久久精品66| 精品福利网| 婷婷六月在线| 国产在线麻豆波多野结衣| www.亚洲天堂| 国产毛片基地| 老司机精品一区在线视频| 亚洲天堂网2014| 青青青国产视频| 小蝌蚪亚洲精品国产| 国产探花在线视频| 欧美亚洲国产精品第一页| 国产精品99久久久| 欧美成人二区| 亚洲福利片无码最新在线播放| 色综合热无码热国产| 久久亚洲中文字幕精品一区| 香蕉久久国产超碰青草| 欧美一区二区丝袜高跟鞋| 国产色图在线观看| 亚洲欧州色色免费AV| 最新国产麻豆aⅴ精品无| 亚洲日韩高清在线亚洲专区| 国产00高中生在线播放| 91九色国产porny| 免费在线一区| 欧洲亚洲一区| 丁香亚洲综合五月天婷婷| 日韩中文精品亚洲第三区| 99视频在线免费观看| 亚洲综合中文字幕国产精品欧美| 中文字幕亚洲电影| 一本色道久久88| 中文字幕一区二区视频| 99久久99视频| 久久精品无码一区二区日韩免费| 在线观看精品国产入口| 国产精品无码久久久久久| 91精品国产自产在线老师啪l| 黄色网站不卡无码| 国产精品一区二区久久精品无码| 国产午夜精品鲁丝片| 国产欧美专区在线观看| 精品久久高清| 真人免费一级毛片一区二区| 久久永久精品免费视频| 1024国产在线| 日本手机在线视频| 欧美一级99在线观看国产| 亚洲最大福利网站| 色哟哟色院91精品网站| 小13箩利洗澡无码视频免费网站| 国产高清在线观看91精品| 午夜视频免费一区二区在线看| 久久香蕉国产线| 国产精品亚欧美一区二区| 欧美在线国产| 中国精品自拍| 精品国产aⅴ一区二区三区| 亚洲天堂区| 中文字幕在线免费看| 欧美第一页在线| 亚洲精品爱草草视频在线| 国产va在线观看| 亚洲日韩精品综合在线一区二区| 玖玖精品在线| 日韩精品无码免费一区二区三区| 色欲综合久久中文字幕网| 亚洲成人一区在线| 亚洲一区毛片|