亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        CATIA輸出STP格式的船體模型數(shù)據(jù)分析及重現(xiàn)

        2018-09-27 06:57:58朱安慶杜兆陽
        造船技術(shù) 2018年4期
        關(guān)鍵詞:船體邊界實(shí)體

        朱安慶, 杜兆陽 , 何 佳

        (1. 江蘇科技大學(xué) 船舶與海洋工程學(xué)院, 江蘇 鎮(zhèn)江 212003;2.江蘇現(xiàn)代造船技術(shù)有限公司, 江蘇 鎮(zhèn)江 212003)

        0 引 言

        CATIA是法國達(dá)索公司旗下的CAD/CAE/CAM一體化軟件,其功能覆蓋了產(chǎn)品設(shè)計(jì)制造的各個(gè)方面[1]。近年來CATIA發(fā)布了V6版本,更進(jìn)一步增強(qiáng)了多學(xué)科系統(tǒng)建模和仿真功能。為更好地發(fā)揮CATIA的模型性能,將CATIA軟件中生成的模型傳輸?shù)狡渌嚓P(guān)軟件中,達(dá)到模型數(shù)據(jù)共享,提高設(shè)計(jì)效率,研究CATIA軟件船體模型與其他CAD軟件的數(shù)據(jù)交換就顯得十分必要。

        本文基于CATIA V6設(shè)計(jì)軟件中的結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)結(jié)構(gòu),通過STP中間文件分析船體模型數(shù)據(jù)組成,提取模型產(chǎn)品數(shù)據(jù),并以CATIA設(shè)計(jì)軟件導(dǎo)出的STP文件數(shù)據(jù)組織結(jié)構(gòu)為依據(jù),運(yùn)用OpenCasCade(OCC)第三方開源包編寫解析程序,生成可以驗(yàn)證的三維幾何模型[2]。

        1 CATIA系統(tǒng)模型數(shù)據(jù)特點(diǎn)

        CATIA作為一款國際流行的三維設(shè)計(jì)軟件,功能齊全,具有強(qiáng)大的混合建模能力,模型的細(xì)節(jié)表達(dá)及虛擬仿真功能也非常完善[3-4],它的基本功能模塊及集成應(yīng)用模塊的產(chǎn)品結(jié)構(gòu)模型表達(dá)如圖1所示。產(chǎn)品作為最高級的組織,由若干子產(chǎn)品、部件、零件組成,其中:部件由許多的零件通過它們之間不同的約束關(guān)系組成;零件是整個(gè)產(chǎn)品模型的最底層結(jié)構(gòu),由許多實(shí)體組成,其中包含了組成該零件的幾何及非幾何信息。本文討論以CATIA中建立的船體模型輸出STP文件,分析其結(jié)構(gòu)組成,獲取船體模型數(shù)據(jù),利用OCC第三方開源包,編寫解析程序,實(shí)現(xiàn)模型重建[5]。

        圖1 CATIA產(chǎn)品模型結(jié)構(gòu)

        2 STP文件基本組成

        STP文件格式滿足STEP模型交換標(biāo)準(zhǔn),模型數(shù)據(jù)覆蓋產(chǎn)品整個(gè)生命周期中所有數(shù)據(jù)元素,包括為進(jìn)行設(shè)計(jì)、分析、制造、測試、檢驗(yàn)和產(chǎn)品支持而全面定義的零部件或構(gòu)件所需的幾何、拓?fù)?、公差、關(guān)系、屬性和性能等數(shù)據(jù)。因此,選用這種輸出文件作為數(shù)據(jù)源進(jìn)行分析能準(zhǔn)確得到模型數(shù)據(jù)信息。

        STP文件由ISO-10303-21開始,由END-ISO-10303-21結(jié)束[6],每1行數(shù)據(jù)由基本字符串組成,其中包含了表示特定意義的標(biāo)識符、關(guān)鍵字和數(shù)據(jù)信息等,整個(gè)文件從結(jié)構(gòu)上分為頭部分和數(shù)據(jù)部分。

        頭部分主要是對整個(gè)交換文件的基本信息進(jìn)行描述,如用戶、工程名、日期、文件版本等信息,以HEADER開頭,以ENDSEC結(jié)尾。數(shù)據(jù)部分是STP文件的主體部分,是對各個(gè)實(shí)體信息描述的集合,主要對具體模型信息進(jìn)行描述,以DATA開頭,以ENDSEC結(jié)尾。本文主要針對數(shù)據(jù)部分對文件進(jìn)行解析,獲取模型數(shù)據(jù)結(jié)構(gòu)。

        數(shù)據(jù)部分是各實(shí)體描述的集合,采用擴(kuò)展邊界表示法來描述實(shí)體。通過對導(dǎo)出的多個(gè)STP文件進(jìn)行分析,總結(jié)出STP文件中對一般實(shí)體的表示格式是:

        #數(shù)字=實(shí)體關(guān)鍵字(‘實(shí)體名稱’,屬性1,屬性2,…);

        例如:

        #38=CARTESIAN_POINT('Vertex',(58 200.,-2 800.,12 000.));

        從這行數(shù)據(jù)中可以得出:標(biāo)識符38表示的是1個(gè)點(diǎn),該點(diǎn)為某直線的頂點(diǎn),由坐標(biāo)(58 200.,-2 800.,12 000.)確定位置。

        不同實(shí)體實(shí)例通過其屬性的組成進(jìn)行聯(lián)系,例如:#121=LINE('Line',#118,#120),其中#121表示的是1條線,括號內(nèi)是該標(biāo)識符下的實(shí)體名稱——線及括號內(nèi)組成這條線的2個(gè)屬性,這2個(gè)屬性用標(biāo)識符表示,繼續(xù)查找括號內(nèi)屬性值所代表的實(shí)體,得到組成這條線的其他信息,最終完整實(shí)體實(shí)例。

        3 基于CATIA的STP格式船體模型數(shù)據(jù)分析

        3.1 基于CATIA的STP輸出格式的數(shù)據(jù)結(jié)構(gòu)

        STP文件描述的CATIA模型數(shù)據(jù)結(jié)構(gòu)可分為3類,分別是幾何信息、拓?fù)湫畔⒓皩傩孕畔?,其中幾何信息和拓?fù)湫畔⑹荢TP文件中描述模型數(shù)據(jù)結(jié)構(gòu)的核心部分,也是實(shí)體造型的基礎(chǔ)數(shù)據(jù)。通過分析文件中的這些數(shù)據(jù)來完成幾何實(shí)體的構(gòu)造。

        (1) 幾何信息。文件中定義的幾何信息包括點(diǎn)、線、面等幾何元素,如:點(diǎn)包含笛卡爾點(diǎn);線包含直線、B樣條曲線、圓、曲線等;面包含曲面、平面、B樣條曲面等;此外,還有方向、矢量、方位等的定義。文件中這些幾何元素通過實(shí)體關(guān)鍵字來區(qū)別定義,具體的幾何元素關(guān)系如圖2所示。

        (2) 拓?fù)湫畔?。文件中的拓?fù)湫畔瑢?shí)體間的連接、鄰接關(guān)系,這種拓?fù)潢P(guān)系描述了幾何上的點(diǎn)、線、面等元素的相鄰關(guān)系。文件中定義的拓?fù)湓刂饕袣?、面、環(huán)、邊、頂點(diǎn),具體的拓?fù)湓仃P(guān)系如圖3所示。

        圖2 幾何實(shí)體元素關(guān)系

        圖3 拓?fù)鋵?shí)體元素關(guān)系

        通過分析總結(jié),STP文件中描述模型產(chǎn)品的實(shí)體主要有:笛卡爾點(diǎn)(CARTESIAN_POINT)、頂點(diǎn)(VERTEX_POINT)、方向(DIRECTION)、矢量(VECTOR)等,通過查找各實(shí)體的關(guān)鍵字,找到各實(shí)體間的幾何及拓?fù)潢P(guān)系來完整地描述模型實(shí)體信息。

        下面以CATIA軟件建立的板材模型為例,導(dǎo)出STP格式的文件,對相應(yīng)的STP文件進(jìn)行分析,確定數(shù)據(jù)組織結(jié)構(gòu)。

        3.2 平面板材的結(jié)構(gòu)組成

        在CATIA中建立船體平面板架模型,如圖4所示,并基于此對船體模型進(jìn)行數(shù)據(jù)分析。

        圖4 平面板架模型

        在STP文件的基本組成中,STP文件表達(dá)模型數(shù)據(jù)分為幾何體定義和幾何信息定義等2部分,文中僅對其所表達(dá)的數(shù)據(jù)結(jié)構(gòu)中的幾何體定義內(nèi)的信息進(jìn)行分析。分析平面板架的STP文件,得出平面板材的表達(dá)是通過在一個(gè)大表面上定義一個(gè)閉合邊界來確定面的具體形狀和位置。

        文件中一個(gè)平板實(shí)體是一個(gè)高級面(ADVANCED_FACE)組成,同時(shí)在STP文件中,表示高級面的這行數(shù)據(jù)內(nèi)有命名這個(gè)平板的名稱,通過這行數(shù)據(jù)可以得到需要的板的屬性信息,例如:

        #328=ADVANCED_FACE('DECK_9 000 A.BL_0 mm_8 mm_STEEL A235',(#327),#56,.T.) ;

        從這條數(shù)據(jù)中可以得出:這個(gè)高級面所定義的是1個(gè)命名為DECK_9 000. BL_0 mm_8 mm_STEEL A235的甲板面,可從中得到需要的信息。高級面由1個(gè)面的邊界(FACE_OUTER_BOUND)和1個(gè)幾何曲面(PLANE)組成,這里的PLANE就是1個(gè)在某高度上無限大的面,相當(dāng)于1個(gè)大表面;面的邊界(FACE_OUTER_BOUND)由多個(gè)邊界環(huán)(EDGE_LOOP)組成,邊界環(huán)由多個(gè)有向邊(ORIENTED_EDGE)組成,根據(jù)不同面的具體形狀,STP文件會按照STEP標(biāo)準(zhǔn)劃分不等數(shù)量的有向邊;不同的有向邊之間首尾相連形成封閉邊界環(huán)。每個(gè)有向邊由1個(gè)邊界曲線(EDGE_CURVE)組成,邊界曲線由2個(gè)頂點(diǎn)(VERTEX_POINT)和表示邊的幾何曲線(LINE)組成,這里的頂點(diǎn)分別是起始點(diǎn)和終止點(diǎn),2點(diǎn)連線即為邊界曲線,幾何曲線由1個(gè)起點(diǎn)(Line Origine)和矢量(VECTOR)組成,幾何曲線方向表示該邊界曲線的方向。在平面板材中,通過這些實(shí)體組成的邊界來描述具體的平板。

        對于不同的平面,數(shù)據(jù)結(jié)構(gòu)在STP文件中的表達(dá)均是如此,平面板材數(shù)據(jù)組織結(jié)構(gòu)如圖5所示。

        圖5 平面板材數(shù)據(jù)結(jié)構(gòu)

        3.3 STP文件的解析

        對CATIA的STP文件的解析采用開發(fā)外插程序的方法進(jìn)行,對STP文件進(jìn)行預(yù)處理,遍歷整個(gè)文件,以分割字符串的方法將文件中的數(shù)據(jù)按不同的實(shí)體進(jìn)行分類,具體的流程如圖6和圖7所示。

        圖6 文件處理流程

        圖7 字符串分割具體流程

        完成文件中不同實(shí)體的數(shù)據(jù)處理后,對提取出來的數(shù)據(jù)按照船體結(jié)構(gòu)的特點(diǎn)進(jìn)行重新組織。判斷該實(shí)體是否為板材、型材、肘板、面板等,根據(jù)判斷結(jié)果進(jìn)行不同的處理,得出相應(yīng)信息,將相關(guān)數(shù)據(jù)信息保存到相應(yīng)的零件節(jié)點(diǎn)下,完成數(shù)據(jù)提取,并輸出.txt文件以便驗(yàn)證數(shù)據(jù)的準(zhǔn)確性。處理流程如圖8所示。

        示例結(jié)構(gòu)的.txt文件生成如下:

        #328 ADVANCED_FACE

        NAME: DECK_9 000 A.BL_0 mm_8 mm_STEEL A235 //節(jié)點(diǎn)名稱

        H: 9 //高度

        Thick: 8 //厚度

        Material: A235 //材料

        #327 FACE_OUTER_BOUND: //板邊界

        #316 EDGE_LOOP //邊界環(huán)

        #317 ORIENTED_EDGE //邊界曲線,以B樣條曲線描述

        圖8 實(shí)體模型處理

        #57 B_SPLINE_CURVE_WITH_KNOTS:CARTESIAN_POINT(71.200 000 8.172 622 9.000 000) …… //省略若干坐標(biāo)

        #318 ORIENTED_EDGE

        #69 B_SPLINE_CURVE_WITH_KNOTS:CARTESIAN_POINT(81.399 000 3.280 384 9.000 000) ……

        3.4 基于OCC的船體模型重現(xiàn)

        STP格式文件通用CAD文件交換格式,遵守STEP標(biāo)準(zhǔn),可運(yùn)用開源OCC對CATIA導(dǎo)出的STP文件進(jìn)行模型重建。OCC將類庫中有關(guān)聯(lián)的類封裝成1個(gè)包(Package),這個(gè)包被翻譯成動態(tài)鏈接庫,為開發(fā)者提供所需的接口函數(shù)。OCC中獨(dú)立的STEP數(shù)據(jù)交換模塊可以讀取、寫入STEP標(biāo)準(zhǔn)文件中數(shù)據(jù)模型的幾何、拓?fù)?、屬性等信息,并進(jìn)行三維模型的重建。本文運(yùn)用OCC工具編程,將STP文件中的數(shù)據(jù)模型映射成OCC數(shù)據(jù)模型,通過OCC數(shù)據(jù)模型的重建來實(shí)現(xiàn)對STP文件中數(shù)據(jù)模型的三維重建。STP文件中數(shù)據(jù)模型的拓?fù)鋵?shí)體與OCC對象之間的映射關(guān)系如圖9所示,幾何實(shí)體與OCC對象之間的映射關(guān)系如圖10所示。

        圖9 STP文件中拓?fù)鋵?shí)體與OCC對象之間的映射

        圖10 STP文件中幾何實(shí)體與OCC對象之間的映射

        在文件的解析過程中,生成能夠驗(yàn)證的OCC幾何實(shí)體模型集,對OCC幾何模型集進(jìn)行遍歷解析,獲取幾何信息,實(shí)現(xiàn)CATIA導(dǎo)出的STP文件的船體三維實(shí)體模型重建。以本文所建立的平面板架為例,驗(yàn)證本文利用OCC所開發(fā)解析程序的有效性。本程序的流程圖如圖11所示,船體結(jié)構(gòu)平面模型重建效果圖如圖12所示。

        圖11 程序流程

        圖12 基于OCC的船體結(jié)構(gòu)模型重建效果圖

        4 結(jié) 論

        本文通過對CATIA軟件導(dǎo)出的STP文件進(jìn)行分析,間接得到了CATIA中模型的幾何、拓?fù)浼捌湎嚓P(guān)屬性等信息。在文件解析過程中,采用分析中性文件的方法,提取出模型的數(shù)據(jù)信息,提高了后續(xù)開發(fā)CATIA軟件與其他軟件的數(shù)據(jù)交換接口程序的獨(dú)立性,減少數(shù)據(jù)分析過程中對軟件的依賴性。同時(shí),利用OCC第三方開源包,編寫解析程序,實(shí)現(xiàn)CATIA導(dǎo)出的STP文件的船體三維實(shí)體模型重建。

        猜你喜歡
        船體邊界實(shí)體
        船體行駛過程中的壓力監(jiān)測方法
        拓展閱讀的邊界
        前海自貿(mào)區(qū):金融服務(wù)實(shí)體
        中國外匯(2019年18期)2019-11-25 01:41:54
        論中立的幫助行為之可罰邊界
        實(shí)體的可感部分與實(shí)體——兼論亞里士多德分析實(shí)體的兩種模式
        兩會進(jìn)行時(shí):緊扣實(shí)體經(jīng)濟(jì)“釘釘子”
        振興實(shí)體經(jīng)濟(jì)地方如何“釘釘子”
        焊接殘余應(yīng)力對船體結(jié)構(gòu)疲勞強(qiáng)度的影響分析
        焊接(2015年9期)2015-07-18 11:03:51
        赴美軍“仁慈”號醫(yī)院船駐船體會
        水下爆炸氣泡作用下船體總縱強(qiáng)度估算方法
        亚洲国产av精品一区二区蜜芽 | 国产国语对白一区二区三区| 亚洲高清美女久久av| 成人av综合资源在线| 亚洲成av人在线播放无码 | 亚洲精品国产第一综合色吧| 久久综合九色综合97欧美| 亚洲国产一区二区三区亚瑟| 色哟哟av网站在线观看| 91色综合久久熟女系列| 国产av国片精品有毛| 国产熟妇搡bbbb搡bb七区| 啊v在线视频| av网站国产主播在线| 国内揄拍国内精品少妇| 国产精品乱码在线观看| 蜜桃av多人一区二区三区| 99久久国内精品成人免费| 亚洲综合色婷婷七月丁香| 怡春院欧美一区二区三区免费| 熟女人妻丰满熟妇啪啪| 美女狂喷白浆网站视频在线观看| 亚洲午夜精品一区二区麻豆av| 色欲人妻aaaaaaa无码| 三上悠亚av影院在线看| 亚洲在战AV极品无码| 青青青免费在线视频亚洲视频| 国产精品二区一区二区aⅴ污介绍| 久久www色情成人免费观看| 欧美成人专区| 91麻豆精品一区二区三区| 国产精品国产三级国产av品爱 | 97cp在线视频免费观看| 久久er99热精品一区二区| 无码久久流水呻吟| 精品久久精品久久精品| 无码人妻h动漫中文字幕| 国产欧美日韩视频一区二区三区| 亚洲成aⅴ人片在线观看天堂无码| 美女把内衣内裤脱了给男人舔| 国产午夜视频在线观看.|