OCCT里的Mesh网格计算流程
? ? Open CasCade Technology簡(jiǎn)稱OCCT, 在OCCT中有2種網(wǎng)格轉(zhuǎn)換器:
- VRML轉(zhuǎn)換器
作用:將Open CASCADE Shape形狀翻譯成VRML 1.0文件(虛擬現(xiàn)實(shí)建模語(yǔ)言)
Open CASCADE Shape形狀可以被翻譯成兩種表現(xiàn)形式:陰影或線框。陰影表示法將形狀表現(xiàn)為由網(wǎng)格算法計(jì)算的三角形集合,而線框表示法將形狀表現(xiàn)為曲線集合。 - STL轉(zhuǎn)換器
作用:將Open CASCADE Shape形狀翻譯成STL文件。
STL(STtereoLithography)格式被廣泛用于快速原型設(shè)計(jì)。
1 Mesh網(wǎng)格的計(jì)算流程
圖(1) Mesh網(wǎng)格的計(jì)算流程? ? 創(chuàng)建數(shù)據(jù)模型 --> 離散化邊緣、2D/3D曲線(對(duì)Edge進(jìn)行離散化) --> 修復(fù)離散模型 --> 預(yù)處理 --> 對(duì)Face進(jìn)行離散化 --> 后處理 --> 得到網(wǎng)格。
1.1 創(chuàng)建數(shù)據(jù)模型
【Create Model Data Structure】
? ? 將源TopoDS_Shape分解為Face和Edge。為每個(gè)實(shí)體創(chuàng)建一個(gè)反射。
1.2 對(duì)Edge進(jìn)行離散化
【Discretize Edges 3D &2D Curves】
? ? 將模型的邊緣Edge離散為一組3D曲線或2D曲線,形成一個(gè)連貫的骨架,為面的網(wǎng)格剖分打基礎(chǔ)。
1.3 修復(fù)離散模型
【Heal Discrete Model】
? ? 分析并修復(fù)離散模型,使其滿足預(yù)處理的標(biāo)準(zhǔn)。比如,對(duì)于自相交的,可以通過(guò)引入粗略離散的邊來(lái)解決;如果無(wú)法修復(fù),則拒絕該模型。
1.4 預(yù)處理離散模型
【Preprocess Discrete Model】
? ? 對(duì)模型面Face進(jìn)行迭代,檢查現(xiàn)有三角形的一致性,若不一致,則清理相關(guān)的拓?fù)涿婧拖噜彽倪叀?/p>
1.5 對(duì)Face進(jìn)行離散化
【Discretize Faces】
? ? 使用二維離散數(shù)據(jù)對(duì)特定的Face進(jìn)行網(wǎng)格生成,將數(shù)據(jù)存儲(chǔ)到TopoDS_Face中。
1.6 后處理離散模型
【Postprocess Discrete Model】
? ? 在面進(jìn)行網(wǎng)格化之后,將多邊形數(shù)據(jù)存儲(chǔ)到源模型的TopoDS_Edge對(duì)象中。
總結(jié)
以上是生活随笔為你收集整理的OCCT里的Mesh网格计算流程的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 智能指针的相关讲解
- 下一篇: 基于jsp+mysql+Spring+m