深入剖析三維幾何內(nèi)核 - 功能介紹
我們將幾何內(nèi)核的功能進(jìn)行分類(lèi),看看幾何內(nèi)核做了哪些事情,或者什么情況下上層應(yīng)用會(huì)用到幾何內(nèi)核。
1. 二維草圖
“草圖”是一個(gè)專(zhuān)業(yè)術(shù)語(yǔ)。我們?cè)O(shè)計(jì)一個(gè)對(duì)象或者繪制一個(gè)對(duì)象時(shí),開(kāi)始很難用三維進(jìn)行建模,通常的做法是先用二維表示,工程上的圖紙一般也都是用二維表示,比如我們常見(jiàn)的俯視圖,側(cè)視圖,截面圖等等。AutoCAD之類(lèi)的繪圖設(shè)計(jì)軟件最初都是二維的。
有人可能覺(jué)得二維比較簡(jiǎn)單,沒(méi)什么難度,實(shí)則不然。單個(gè)的二維對(duì)象確實(shí)比較簡(jiǎn)單,點(diǎn)線面數(shù)據(jù)通過(guò)基本設(shè)計(jì)即可實(shí)現(xiàn)。
考慮如下設(shè)計(jì):
兩個(gè)互相咬合的齒輪,已經(jīng)分別設(shè)計(jì)出齒輪的半徑,進(jìn)行了咬合。現(xiàn)在需要修改其中一個(gè)齒輪的半徑,如果只是簡(jiǎn)單的分別繪制出兩個(gè)齒輪,其中一個(gè)改動(dòng)后,另外一個(gè)也需要手動(dòng)修改以保證齒輪咬合。一般的做法是將兩個(gè)齒輪關(guān)聯(lián),一個(gè)改動(dòng)后,另外一個(gè)自動(dòng)修改以保證咬合。如果一個(gè)齒輪同時(shí)和多個(gè)齒輪相連,則涉及到多個(gè)同時(shí)關(guān)聯(lián)。
再考慮一種情況,在平面墻上繪制門(mén)和窗戶,當(dāng)我們修改墻高度和寬度的時(shí)候,門(mén)和窗戶要隨動(dòng),比如我們加了約束(窗戶不能靠房頂,門(mén)底和地面平齊等等),隨動(dòng)要滿足這種約束關(guān)系。
這就引申出幾何內(nèi)核里的一項(xiàng)基本功能:約束設(shè)計(jì)求解器。
約束設(shè)計(jì)求解器在于給定各種約束情況下,求解類(lèi)似剛體運(yùn)動(dòng)自由度方程,約束設(shè)計(jì)求解器常用于二維草圖繪制,零件在裝配體中定位,以及各種幾何外輪廓的繪制。
2. 三維實(shí)體建模,屬性計(jì)算
三維實(shí)體建模是幾何內(nèi)核的基本功能。基于幾何特征,幾何內(nèi)核需要提供完整的實(shí)體表達(dá)。最常見(jiàn)的長(zhǎng)方體,根據(jù)長(zhǎng)寬高等參數(shù)建立起對(duì)應(yīng)的數(shù)據(jù)結(jié)構(gòu)。以BREP為例,一個(gè)長(zhǎng)方體至少包含如下信息:
1個(gè)體,6個(gè)面,6個(gè)環(huán),12條邊,12條有向邊,8個(gè)頂點(diǎn),8個(gè)頂點(diǎn)的坐標(biāo)
這也是為什么專(zhuān)業(yè)軟件的幾何文件很小,而三維幾何模型文件大的原因。
除了長(zhǎng)方體,圓柱,圓臺(tái),圓環(huán),球,鍥形等各種基礎(chǔ)實(shí)體模型外,各種常用的建模方法也是必須的,常見(jiàn)的拉伸,掃掠,放樣,陣列,平移,縮放,矩陣變換,布爾運(yùn)算,拆分。
創(chuàng)建的對(duì)象實(shí)體要提供邊長(zhǎng),面積,體積,包圍盒等基本信息。
3. 歷史系統(tǒng)
歷史系統(tǒng)主要用來(lái)跟蹤記錄幾何對(duì)象的變化信息。這些信息在參數(shù)建模和約束建模中要經(jīng)常使用,是undo/redo機(jī)制的基礎(chǔ),同時(shí)也是幾何模型質(zhì)量的保證。
看幾個(gè)例子:
一步步設(shè)計(jì)好模型后,保存工程文件,關(guān)閉程序退出。再次打開(kāi)工程文件,需要undo進(jìn)行編輯
一個(gè)復(fù)雜的模型,執(zhí)行到某一步出現(xiàn)錯(cuò)誤,整體模型壞掉,需要恢復(fù)到上一步模型完好的狀態(tài)
一個(gè)模型,需要進(jìn)行一些修改才能拿到某些信息,但是并不希望對(duì)模型本身進(jìn)行修改
以上需求都可以通過(guò)歷史系統(tǒng)來(lái)完成
4. 屬性系統(tǒng)
幾何對(duì)象一般不會(huì)單獨(dú)存在,幾何對(duì)象上會(huì)有很多屬性,比如顏色,顯示方式,材料,業(yè)務(wù)類(lèi)型,參數(shù)。對(duì)于數(shù)值仿真,還會(huì)有各種邊界,荷載等信息。附加在幾何上的屬性系統(tǒng)也會(huì)涉及到增加,刪除,修改,以及隨幾何變動(dòng)而變動(dòng),比如兩個(gè)不同屬性的幾何進(jìn)行并運(yùn)算,并之后新幾何上的屬性系統(tǒng)要有明確的設(shè)定。
5. 參數(shù)建模和約束建模
參數(shù)建模和約束建模都很好理解。底層需要有參數(shù)系統(tǒng),基本功能包含參數(shù)表達(dá),驅(qū)動(dòng)更新,參數(shù)表達(dá)式計(jì)算,幾何對(duì)象參數(shù)管理,以及約束求解器等等。這些功能是CAD軟件幾何設(shè)計(jì)(Design)的基礎(chǔ),而非Drawing
幾何拓?fù)?,屬性系統(tǒng),歷史系統(tǒng),參數(shù)建模和約束建模構(gòu)成了幾何內(nèi)核底層管理的基礎(chǔ)。
6. 幾何離散化
幾何內(nèi)核要提供幾何離散化功能,主要有兩個(gè)目的:1. 生成基本的三角面片信息供渲染使用;2. 提供更多參數(shù)控制的面片的生成,以滿足上層業(yè)務(wù)不同的需求。
7. 位置運(yùn)算
位置運(yùn)算提供各種幾何之間的位置信息計(jì)算,常見(jiàn)的線線,點(diǎn)線,線面,點(diǎn)面,面面,面體,線體等各個(gè)維度幾何的距離,相交,交點(diǎn)等信息。
通常位置運(yùn)算需要大量使用計(jì)算幾何或數(shù)值計(jì)算方法,這也是幾何內(nèi)核底層的基本功能之一
8. 布爾運(yùn)算
布爾運(yùn)算涉及到兩個(gè)對(duì)象之間的合并,減,公共基本操作。在基本操作上衍生出切分,投影,縫補(bǔ)等操作。布爾運(yùn)算主要涉及到線線,面面,面線的求交和裁剪運(yùn)算,后續(xù)詳細(xì)介紹。
布爾運(yùn)算的準(zhǔn)確性,穩(wěn)定性和性能是衡量一個(gè)幾何內(nèi)核質(zhì)量的重要標(biāo)準(zhǔn)
9. 特征識(shí)別和抑制
識(shí)別模型中的倒角,突出,凹陷,以及常用基本幾何實(shí)體,并對(duì)其進(jìn)行編輯操作。
10. 外部數(shù)據(jù)交換
在實(shí)際工程中,通常使用的軟件和數(shù)據(jù)文件格式有多種,為了保證整體數(shù)據(jù)格式的統(tǒng)一,幾何內(nèi)核需要提供與外部的數(shù)據(jù)的接口,即能導(dǎo)入和導(dǎo)出第三方的文件格式。這一塊和幾何內(nèi)核沒(méi)有直接關(guān)系,技術(shù)上也沒(méi)有太多難度,主要問(wèn)題是不同數(shù)據(jù)格式的接口兼容性問(wèn)題,比如公差,數(shù)據(jù)表達(dá)轉(zhuǎn)換。
11. 與網(wǎng)格接口
這個(gè)在 深入理解數(shù)值計(jì)算網(wǎng)格(7)--幾何與網(wǎng)格 已經(jīng)做過(guò)介紹,不多講。
12. 幾何清理修復(fù)
除非建立封閉的生態(tài)系統(tǒng),否則這是幾何內(nèi)核工程應(yīng)用的一個(gè)基礎(chǔ)模塊。在建模工程中,因?yàn)榉N種原因?qū)е履P统霈F(xiàn)問(wèn)題,比如各種拓?fù)浜蛶缀尾粷M足設(shè)定條件或者出現(xiàn)錯(cuò)誤。這種錯(cuò)誤會(huì)導(dǎo)致模型本身的分析,比如面積,體積計(jì)算出錯(cuò),還會(huì)導(dǎo)致仿真的網(wǎng)格劃分出現(xiàn)錯(cuò)誤。
除了提供模型的拓?fù)鋷缀螜z查外,還要提供基本的清理,修復(fù)以及必要的編輯功能。
很多時(shí)候CAD設(shè)計(jì)的模型即使沒(méi)有錯(cuò)誤,也無(wú)法用來(lái)直接仿真,比如CAD設(shè)計(jì)中的小邊,小孔,倒角,印刻的字體,需要在劃分網(wǎng)格前對(duì)其進(jìn)行刪除清理。
除了模型幾何對(duì)象本身的錯(cuò)誤外,實(shí)際應(yīng)用中還要進(jìn)行諸如幾何對(duì)象之間的干涉檢測(cè),自由對(duì)象,重復(fù)對(duì)象的檢測(cè)操作。這些功能可以在業(yè)務(wù)層實(shí)現(xiàn),也可以在幾何內(nèi)核中完成。
13. 圖形顯示接口
幾何內(nèi)核本身是沒(méi)有圖形顯示系統(tǒng)的。換言之,幾何內(nèi)核創(chuàng)建的數(shù)據(jù)無(wú)法直觀的表現(xiàn)出來(lái)。為了將幾何對(duì)象顯示,需要和外部的圖形顯示引擎合作。
通常的做法是將幾何對(duì)象離散化面片,然后送給圖形顯示引擎顯示。離散化的面片和幾何對(duì)象建立映射關(guān)系,以方便后續(xù)的操作。
14. 提供仿真所需的幾何功能
比如提供抽中面,供有限元分析中的殼單元使用;三維實(shí)體簡(jiǎn)化成一維單元,供有限元分析中的桿,梁?jiǎn)卧褂?;處理非二維流體,以解決復(fù)合材料,流體,碰撞,接觸分析中的共形網(wǎng)格;提供高次曲面以滿足透平機(jī)械設(shè)計(jì)分析需求等等
15.腳本系統(tǒng)
提供腳本系統(tǒng),便利上層應(yīng)用的開(kāi)發(fā)和調(diào)試
16.提供必要的調(diào)試工具
使用幾何內(nèi)核出錯(cuò)后,往往難以檢查和調(diào)試,提供必要的工具幫助發(fā)現(xiàn)和解決錯(cuò)誤
17.支持高性能計(jì)算
提供工具方便上層應(yīng)用使用多線程,多進(jìn)程以及分布式計(jì)算
1. 企業(yè)項(xiàng)目承接、技術(shù)轉(zhuǎn)移、員工培養(yǎng)、定制培訓(xùn)。提供中小制造業(yè)深度合作,一位工程師的成本支出,享受眾多領(lǐng)域全方面技術(shù)支持。各CAE仿真軟件銷(xiāo)售,服務(wù)器工作站搭建。
2. 疲勞專(zhuān)題、電池包專(zhuān)題、整車(chē)剛強(qiáng)度、前處理、NVH、ABAQUS、CCM、顯示動(dòng)力學(xué)、約束系統(tǒng)等于上海、西安、秦皇島開(kāi)設(shè)(具體時(shí)間協(xié)調(diào)確定),直指企業(yè)項(xiàng)目!離能做項(xiàng)目只差一場(chǎng)精品課程。
3. 針對(duì)企業(yè)、在職人員、學(xué)生、業(yè)外人員提供定制學(xué)習(xí)方案。你所擔(dān)心的學(xué)不好、不會(huì)做項(xiàng)目、不被企業(yè)認(rèn)可,這里都可以解決。
4. 高校免費(fèi)培訓(xùn),提供校內(nèi)培訓(xùn)??蛇x擇前處理、剛強(qiáng)度、疲勞。
5. 中小制造業(yè)免費(fèi)技術(shù)咨詢與支持、免費(fèi)做項(xiàng)目。
6. VIP學(xué)員、協(xié)議學(xué)員招生中,你的問(wèn)題我們幫你解決,你的計(jì)劃我們幫你制定,你的職業(yè)我們幫你規(guī)劃,助力全方面發(fā)展。
7. 所有課程(含在線和現(xiàn)場(chǎng)項(xiàng)目精品課程)均可選擇自費(fèi)、免費(fèi)、帶補(bǔ)助學(xué)習(xí)。
8. 課程包含網(wǎng)絡(luò)及現(xiàn)場(chǎng)培訓(xùn)課程(隨時(shí)可開(kāi)),包含Hypermesh(ansa)整車(chē)前處理,剛強(qiáng)度,碰撞,約束系統(tǒng),行人保護(hù),二次開(kāi)發(fā),疲勞,NVH,熱管理,Abaqus,F(xiàn)luent,CCM,Workbench等等。
QQ :1171926630 微信:kt1171926630
座機(jī):0335-8903355 電話:18010138523
更多動(dòng)態(tài),請(qǐng)關(guān)注我們官方網(wǎng)站:www.mtechfea.com,歡迎大家前來(lái)交流或投稿。
CAE學(xué)習(xí)之家感謝您一直以來(lái)的支持, 謝謝!
*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。
電容式觸摸屏相關(guān)文章:電容式觸摸屏原理