国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于OCCT的三維矢量彎管軟件的開發(fā)和研究

2022-01-08 02:15盧宇坤王梓榆
中國科技縱橫 2021年22期
關(guān)鍵詞:句柄表示法管材

盧宇坤 王梓榆

(常州固高智能裝備技術(shù)研究院有限公司,江蘇常州 213000)

0.引言

彎管作為大多數(shù)氣體、液體的輸送結(jié)構(gòu),在許多領(lǐng)域都擁有著廣泛的應(yīng)用,如汽車工業(yè)、航天航空等,隨著彎管應(yīng)用市場進(jìn)一步擴(kuò)大,傳統(tǒng)的繞彎式彎管機(jī),壓彎式彎管機(jī)等已經(jīng)不能夠滿足工業(yè)上的應(yīng)用要求,因此發(fā)展出了最新的三維矢量彎管機(jī),這種彎管機(jī)的工作原理比傳統(tǒng)彎管機(jī)更為復(fù)雜,因此需要在進(jìn)行彎制前,能夠?qū)崿F(xiàn)對于管材模型的顯示,便于技術(shù)人員更好的加工管材。

本文旨在基于Open CASCADE Technology這一開源的幾何內(nèi)核,研究開發(fā)出一款專門針對三維矢量彎管機(jī)的小型軟件平臺[1]。通過該軟件能夠便捷地導(dǎo)入外部管材的STEP模型,實(shí)現(xiàn)STEP模型的整體展示,并能夠?qū)τ谀P瓦M(jìn)行操作。開源幾何內(nèi)核再實(shí)際的開發(fā)應(yīng)用中具有許多優(yōu)勢,并且針對三維矢量彎管開發(fā)相應(yīng)的軟件平臺,能夠大大降低成本,同時還能夠保證后續(xù)加工的穩(wěn)定性,這無疑有著廣闊的前景和市場。

1.Open CASCADE Technology簡介

Open CASCADE Technology簡稱OCCT,是基于C++開發(fā)出的一個幾何內(nèi)核,提供了多種C++的類,旨在快速生成復(fù)雜的特定領(lǐng)域CAD/CAM/CAE應(yīng)用程序。使用OCCT開發(fā)的典型應(yīng)用程序處理通用或?qū)S糜嬎銠C(jī)輔助設(shè)計(CAD)系統(tǒng)、制造或分析應(yīng)用程序、模擬應(yīng)用程序甚至插圖工具中的二維或三維(2D或3D)幾何建模。利用OCCT開發(fā)特定領(lǐng)域CAD/CAM/CAE應(yīng)用程序,具有功能模塊化和可擴(kuò)展性高的優(yōu)點(diǎn),以下各項為OCCT所提供主要C++類:

基本數(shù)據(jù)結(jié)構(gòu)(幾何建模、可視化、交互式選擇和特定于應(yīng)用程序的服務(wù));建模算法;網(wǎng)格數(shù)據(jù)處理算法;IGES、STEP格式的數(shù)據(jù)互操作性。

Open CASCADE 采用C++11中的新特性智能指針來管理引用,這種管理機(jī)制利用句柄來實(shí)現(xiàn)。Open CASCADE中的句柄由Standard_Transient(臨時)類或Standard_Persistent(持久類)類派生。同時Open CASCADE提供了一個宏預(yù)處理函數(shù)Handle()。通過聲明句柄的方式來創(chuàng)建出需要處理的對象,并采用new操作符初始化句柄。在本文的研究與開發(fā)中,常需要利用到該特點(diǎn)[2]。

2.三維矢量管材模型軟件平臺的開發(fā)與研究

基于Open CASCADE Technology平臺,采用Visual Studio 2019編程平臺和C++編語言來開發(fā)。開發(fā)出一款具有可視化界面,能夠?qū)崿F(xiàn)三維矢量管材STEP文件導(dǎo)入以及對于管材模型操作的軟件平臺[3-4]。

2.1 可視化界面的開發(fā)

可視化界面的開發(fā)是整體軟件平臺的框架,選用Qt作為可視化界面開發(fā)框架具有較好的可操作性。Open CASCAS CADE與程序的交互環(huán)境接口通過AIS_Interactive-Context類實(shí)現(xiàn),該類通過接受一個高級的API信號控制顯示過程。本文選擇在文檔類中實(shí)現(xiàn)對象的創(chuàng)建與初始化,在視圖類中設(shè)置程序交互環(huán)境界面背景。部分實(shí)現(xiàn)代碼如下:

其可視化界面的初始化界面如圖1所示。

圖1 可視化界面的初始化界

2.2 STEP文件導(dǎo)入技術(shù)

OCCT中,模型是使用B-rep(邊界表示法)描述的。所以STEP文件導(dǎo)入是實(shí)現(xiàn)將STEO文件表示的模型,轉(zhuǎn)換為OCCT使用的B-rep表示的模型。

描述一個物體的方法有許多,而在實(shí)體建模中,經(jīng)常使用物體的一個封閉的邊界來描述一個物體,這個方法就叫作邊界表示法。因?yàn)橥ǔG闆r下來說,一組面的集合可以組成一個完全封閉的邊界,所以說邊界表示法是高效且準(zhǔn)確的描述出整個模型的。在OCCT中,有一個總的拓?fù)漕惤凶鱐opoDS_Shape,以此類作為父類,派生出許多的子類,這些子類能夠基本上概括出組成模型的所有基本拓?fù)漕愋?,其中與邊界表示法最為相關(guān)的的幾大子類分別如下:

TopoDS_Vertex是最基本的拓?fù)漕愋停簿褪俏覀兂Uf的頂點(diǎn);2個頂點(diǎn)可以構(gòu)成一條線,那么這條線相對應(yīng)的拓?fù)漕愋徒凶鱐opoDS_Edge;當(dāng)許多條TopoDS_Edge連接起來,就能夠構(gòu)成一個面,也就是TopoDS_Face;將多個TopoDS_Face拼接,就會獲得一個新的拓?fù)漕愋?,叫作體,也就是TopoDS_Solid。但我們把多條TopoDS_Edge組成一個集合時,這個集合對應(yīng)的拓?fù)漕愋鸵簿褪荰opoDS_Wire;把多個TopoDS_Face組成一個集合時,這個由TopoDS_Face組成的集合對應(yīng)的拓?fù)漕愋途褪荰opoDS_Shell。當(dāng)我們擁有一個包含了各種拓?fù)漕愋偷募蠒r,這個集合稱之為TopoDS_Compound。所有拓?fù)浣Y(jié)構(gòu)的關(guān)系如圖2所示。

圖2 各拓?fù)渲g的結(jié)構(gòu)關(guān)系

在OCCT中,有STEPAPI_Reader類,我們可以運(yùn)用此類來讀取STEP格式的文件,每一個STEP文件中,都包含了自己的網(wǎng)格信息。因?yàn)樵贠CCT中,是采用B-rep表示法來表示一個模型,想獲取STEP模型,就需要將STEP模型里的數(shù)據(jù)全部轉(zhuǎn)換為B-rep表示的模型,這個操作我們同時調(diào)用STEPAPI_Reader類和STEP Mesh_Mesh類就可以完成。在讀取STEP文件的同時,會獲得該STEP文件中所有的三角面片的信息,這些信息會保存到STEP Mesh_Mesh類中的網(wǎng)格信息中,根據(jù)所有獲得的網(wǎng)格信息,就可以生成只擁有單個拓?fù)浣Y(jié)構(gòu)的TopoDS_Shell模型中,也可以生成擁有多種拓?fù)浣Y(jié)構(gòu)的TopoDS_Compound模型中。

為了將生成的TopoDS_Shell模型或者是TopoDS_Compound模型顯示出來,OCCT 也提供了相應(yīng)的顯示模塊,這個模塊叫作AIS(Application Interactive Services)模塊。AIS模塊提供了多種的顯示有關(guān)的功能,通過合理的組合使用這些功能,就能夠?qū)崿F(xiàn)幾何和拓樸對象的顯示、選擇和管理。其中對象的顯示可以顯示出對象的顏色,也可以自己指定顯示模式。對于對象的選擇而言,如果被選中那么就將此對象進(jìn)行高亮顯示。實(shí)現(xiàn)讀取STEP文件的部分關(guān)鍵代碼如下:

外部管材STEP文件在本軟件平臺中的顯示效果如圖3所示。

圖3 STEP模型顯示效果

2.3 管材模型的操作

通過AIS模塊可以讀取三維模型文件中的特征,并將三維模型在程序視圖框架中顯示出來,而無法對模型實(shí)現(xiàn)旋轉(zhuǎn)、放縮、移動等基本的交互操作。OCCT提供了V3d_View類,在這個類中有豐富的圖形操作函數(shù),通過枚舉CurAction3d能及時響應(yīng)渲染模型表面、場景、紋理等,想要完成對于模型的旋轉(zhuǎn)、平移、縮放等交互。STEP 模型操作顯示如圖4所示。

圖4 STEP模型操作顯示

3.結(jié)語

本文基于Open CASCADE Technology這一開源幾何內(nèi)核,研究并開發(fā)出了一款三維模型軟件,并且該軟件應(yīng)用到三維矢量彎管技術(shù)中,從而能夠?qū)崿F(xiàn)管材STEP文件的顯示,以及對于STEP模型操作的功能,能夠讓工程技術(shù)人員更好地了解管材的數(shù)據(jù)結(jié)構(gòu),以便于后續(xù)的開發(fā)。如今,在CADCAM系統(tǒng)中,對于STEP文件進(jìn)行數(shù)據(jù)交互在整體的協(xié)同工作中占據(jù)了重要的地位,但是相比于現(xiàn)較成熟的三維軟件,利用Open CASCADE Technology這一幾何內(nèi)核,針對性的對于三維矢量彎管開發(fā)軟件,并對STEP模型進(jìn)行處理,在能夠確保降低成本的同時也能獲得較好的穩(wěn)定性,這無疑能夠給管材加工帶來極大的便利。本文研究的軟件,能夠進(jìn)一步的再借助Open CASCADE Technology,開發(fā)出具有更多功能的軟件平臺,這無疑對有十分重大的意義和更加廣闊的市場前景。

猜你喜歡
句柄表示法管材
否定意義的四種特殊表示法
編譯程序語法分析句柄問題分析與探討
從一道小題聯(lián)想到的整數(shù)表示法
大型管材在線切割設(shè)備的設(shè)計
名詞易錯點(diǎn)透視
SA-213T23管材焊后熱處理工藝
建筑室內(nèi)給排水管材的合理選擇
芯層微孔發(fā)泡管材的制備
日期和時間