摘要:肘板是鋼結(jié)構(gòu)中常用的連接構(gòu)件,折邊肘板經(jīng)常用于船舶主構(gòu)件的折邊對(duì)接中。為了提高折邊肘板建模的效率,設(shè)計(jì)了折邊肘板參數(shù)化三維實(shí)體造型過(guò)程;根據(jù)造型過(guò)程,探討了肘板輪廓參數(shù)化生成及折邊信息存儲(chǔ)方法;給出了坐標(biāo)轉(zhuǎn)換及折邊旋轉(zhuǎn)算法;研究了面向?qū)ο蟮某绦蛟O(shè)計(jì)方法;以AutoCAD為開(kāi)發(fā)平臺(tái),VS.Net為編程環(huán)境,ObjectARX為開(kāi)發(fā)工具,實(shí)現(xiàn)了面向?qū)ο蟮恼圻呏獍鍏?shù)化實(shí)體造型。
關(guān)鍵詞:AutoCAD;ObjectARX;折邊肘板;參數(shù)化建模;三維設(shè)計(jì)
中圖分類(lèi)號(hào):TP31 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9599 (2012) 22-0000-03
1 引言
肘板是鋼結(jié)構(gòu)中常用的連接構(gòu)件,折邊肘板經(jīng)常用于船舶主構(gòu)件的折邊對(duì)接中[1,2]。折邊肘板又可分為折邊舭肘板、折邊橫梁肘板和折邊舷墻肘板等類(lèi)型。研究一種方法,實(shí)現(xiàn)不同類(lèi)型肘板的快速建模及折邊肘板的三維實(shí)體造型,可以提高工程人員船體建模的效率。在折邊肘板實(shí)體造型過(guò)程中,折邊的方向與肘板的厚度方向等有一定的關(guān)系,通過(guò)用戶(hù)設(shè)置的肘板厚度方向、折邊方向等參數(shù),確定折邊的位置,是折邊肘板實(shí)體造型過(guò)程中需要解決的問(wèn)題。針對(duì)這個(gè)問(wèn)題,本文中研究了折邊旋轉(zhuǎn)的算法,結(jié)合面向?qū)ο蟪绦蛟O(shè)計(jì)方法,最終實(shí)現(xiàn)了折邊肘板參數(shù)化三維實(shí)體造型。
2 造型過(guò)程描述
折邊肘板參數(shù)化實(shí)體造型過(guò)程設(shè)計(jì)為三個(gè)步驟,如圖1所示。
第一步、肘板輪廓參數(shù)化繪制。對(duì)于不同的肘板類(lèi)型,通過(guò)用戶(hù)界面設(shè)置相應(yīng)的參數(shù),實(shí)現(xiàn)肘板基本輪廓的繪制。第二步、折邊信息定義。在肘板輪廓中定義并存儲(chǔ)相應(yīng)的折邊信息。第三步、三維實(shí)體生成。根據(jù)肘板中定義的折邊信息,利用坐標(biāo)轉(zhuǎn)換及折邊旋轉(zhuǎn)算法,生成折邊肘板三維實(shí)體。
3 方法研究及實(shí)現(xiàn)
3.1 面向?qū)ο蠓椒?/p>
使用面向?qū)ο蟮恼Z(yǔ)言進(jìn)行程序編制意味著將實(shí)體對(duì)象抽象建立為新的數(shù)據(jù)類(lèi)型(稱(chēng)為類(lèi)Class),以及使這些數(shù)據(jù)類(lèi)型能夠通過(guò)建立僅與類(lèi)相關(guān)的方法(函數(shù))來(lái)處理信息,將數(shù)據(jù)結(jié)構(gòu)和其操作封裝在類(lèi)對(duì)象中,達(dá)到類(lèi)對(duì)象中數(shù)據(jù)結(jié)構(gòu)與其操作過(guò)程彼此不分離。把這種方法用于船舶結(jié)構(gòu)實(shí)體造型建模上,即把船體各種構(gòu)件分類(lèi)、定義出具有不同特點(diǎn)的板材類(lèi),抽象出它們的屬性和它們的行為[3]。折邊肘板參數(shù)化三維實(shí)體造型具體實(shí)現(xiàn)時(shí),將折邊,肘板及肘板輪廓都?xì)w結(jié)為對(duì)象。
3.2 板輪廓參數(shù)化繪制
肘板輪廓參數(shù)化繪制過(guò)程中,通過(guò)定義相應(yīng)的參數(shù)信息,便可完成輪廓的繪制。具體實(shí)現(xiàn)時(shí),定義了CrossSection類(lèi)表示肘板輪廓對(duì)象,不同類(lèi)型的肘板以不同的參數(shù)初始化CrossSection對(duì)象,并通過(guò)Draw()方法繪制肘板輪廓。圖2為某一類(lèi)型肘板的參數(shù)信息及對(duì)應(yīng)生成生成的肘板輪廓示意圖。
3.3 折邊信息存儲(chǔ)
折邊肘板實(shí)體造型中利用XDATA存儲(chǔ)折邊信息,包括這邊的基準(zhǔn)線(xiàn)及輪廓線(xiàn)。XDATA是AutoCAD提供的一種擴(kuò)展實(shí)體數(shù)據(jù)的方法。XDATA 跟隨在該實(shí)體的正常定義數(shù)據(jù)之后,包含一個(gè)或多個(gè)1001組。每一組均以一個(gè)互不相同的應(yīng)用程序名開(kāi)頭,不同組碼對(duì)應(yīng)不同類(lèi)型的信息[4]??捎靡韵路椒橹付▽?duì)象附加擴(kuò)展實(shí)體數(shù)據(jù),獲取指定對(duì)象的擴(kuò)展實(shí)體數(shù)據(jù)。
(1)為指定對(duì)象附加擴(kuò)展實(shí)體數(shù)據(jù):Acad::ErrorStatus AcDbObject::setXData(const resbuf* xdata);其中,xdata為結(jié)果緩沖區(qū)鏈表,包含要添加的信息。
(2)獲取指定對(duì)象的擴(kuò)展實(shí)體數(shù):Acad::ErrorStatus AcDbObject::XData(const char* regappName);其中,regappName欲獲取信息所屬的應(yīng)用程序名。
3.4 坐標(biāo)轉(zhuǎn)換及折邊旋轉(zhuǎn)算法
折邊肘板三維實(shí)體生成過(guò)程中,對(duì)于每個(gè)折邊實(shí)體,要根據(jù)定義的折邊方向、厚度及旋轉(zhuǎn)角度等信息進(jìn)行旋轉(zhuǎn)。如圖3中折邊肘板側(cè)面圖中所示,虛線(xiàn)折邊實(shí)體要沿著紅色旋轉(zhuǎn)軸進(jìn)行旋轉(zhuǎn),最終確定折邊實(shí)體的位置(旋轉(zhuǎn)角度定為90)。
3.5 三維實(shí)體生成
在折邊肘板面向?qū)ο髮?shí)體生成實(shí)現(xiàn)中,將肘板及其折邊分別抽象為類(lèi)類(lèi)CFBracket及CFlange,折邊肘板中的每一個(gè)折邊對(duì)應(yīng)一個(gè)CFlange類(lèi)對(duì)象,通過(guò)各自的CreateSolid()方法生成對(duì)應(yīng)實(shí)體。圖4為類(lèi)設(shè)計(jì)UML圖,圖5為折邊實(shí)體生成過(guò)程時(shí)序圖。
圖6為圖2對(duì)應(yīng)肘板定義折邊后生成的三維實(shí)體示意圖,圖中包含兩條折邊,折邊厚度方向與肘板厚度方向一致。
4 結(jié)語(yǔ)
為了提高折邊肘板建模的效率,本文給出了一種折邊肘板參數(shù)化實(shí)體造型的方法。造型過(guò)程分為三個(gè)階段:肘板參數(shù)化繪制;折邊信息定義;三維實(shí)體生成。針對(duì)造型過(guò)程的三個(gè)階段,分別給出了相應(yīng)的實(shí)現(xiàn)方法,對(duì)實(shí)體生成過(guò)程中的坐標(biāo)轉(zhuǎn)換及折邊旋轉(zhuǎn)算法進(jìn)行了詳細(xì)的描述。利用提出的造型方法,結(jié)合面向?qū)ο缶幊趟枷?,最終在AutoCAD平臺(tái)下實(shí)現(xiàn)了折邊肘板參數(shù)化實(shí)體造型。給出相應(yīng)的工程示例,證明了方法的有效性。
參考文獻(xiàn):
[1]中國(guó)船級(jí)社.國(guó)內(nèi)航行海船建造規(guī).北京:人民交通出版社,2006.
[2]邢金友.肘板連接的極限強(qiáng)度分析.中國(guó)造船,1999,5(2):69-73.
[3]羅金炎,陳慶強(qiáng).船舶面向?qū)ο笥邢拊膽?yīng)用研究.計(jì)算機(jī)輔助工程,2004,3(1):18-22.
[4]唐雙春.XDATA 在AutoCAD 二次開(kāi)發(fā)中的應(yīng)用.機(jī)械,2003,6:76-77.
[5]Charles McAuley著,李世國(guó)等譯.AutoCAD 2000 ObjectARX編程指南.北京:機(jī)械工業(yè)出版社,2000.
[6]陳文峰等.AutoCAD二次開(kāi)發(fā)在工程計(jì)算軟件中的應(yīng)用.科學(xué)技術(shù)與工程,2011,11(24):5844-5848.
[7]張麗霞.基于AutoCAD直齒圓柱齒輪的三維參數(shù)化精確建模,機(jī)械工程與自動(dòng)化,2008,12.
[8]劉勝勇,王勇.基于AutoCAD的鐵路貨車(chē)車(chē)軸參數(shù)化設(shè)計(jì).計(jì)算機(jī)應(yīng)用,2008,10.
[作者簡(jiǎn)介]
薛楨(1978-),女,碩士,工程師,主要研究方向:計(jì)算機(jī)系統(tǒng)及開(kāi)發(fā)技術(shù),計(jì)算機(jī)控制;管芳景(1980-),碩士,講師,研究方向:計(jì)算機(jī)系統(tǒng)及開(kāi)發(fā)技術(shù),人工智能;田志峰(1981-),碩士,工程師,主要從事計(jì)算機(jī)輔助工程設(shè)計(jì)。