• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            eryar

            PipeCAD - Plant Piping Design Software.
            RvmTranslator - Translate AVEVA RVM to OBJ, glTF, etc.
            posts - 603, comments - 590, trackbacks - 0, articles - 0

            OpenCASCADE-Glue Faces to Shell

            Posted on 2022-11-27 22:04 eryar 閱讀(1645) 評論(0)  編輯 收藏 引用 所屬分類: 2.OpenCASCADE

            OpenCASCADE-Glue Faces to Shell

            eryar@163.com

            1 Introduction

            BRep邊界表示法通過對幾何曲面加上邊界Wire限定得到有界的曲面片后,如何將曲面片連接起來生成一個閉合的Shell,進而得到一個Solid實體?以前寫過如何將無序的Edge連接起來生成Wire的方法,今天介紹一下OpenCASCADE中如何將Face連接起來生成Shell。這也是我們要手工通過Vertex, Edge, Face來構造BRep的Solid必須思考和解決的問題。

             

            2 BRepTools_Quilt

            從類BRepTools_Quilt的注釋可以看出,如果面有共用的Edge,可以使用此類來生成Shell。如何來理解共用的Edge(common edges),下面我們通過使用Draw Test Harness的Tcl腳本來進行說明。

            如上圖所示的右邊為Draw的Tcl腳本。先生成一個圓柱面aCylinderFace;再通過命令explode得到這個圓柱面的邊Edge,分別為頂部邊aCylinderFace_3和底部的邊aCylinderFace_2;再分別生成頂面和底面。最后使用quilt生成了Shell,使用命令ssolid生成了Solid體。為了驗證生成的BRep體是不是正確的,通過一個和一個box布爾運算來檢驗,結果顯示正常。從這個腳本可以看出,使用類BRepTools_Quilt連接的面Face必須有共用邊,上面的例子中頂面和底面的邊是和圓柱面的邊共用的。

            3 BRepBuilderAPI_Sewing

            有的情況下想要縫合成Shell的面Face并沒有共用邊,這時可以使用類BRepBuilderAPI_Sewing。這個類的注釋中有華天軟件的梅博士的名字:

            這個類也可以用來縫合面,大家可以在源碼中搜索一下這個類名看看哪里有用到。目前看主要用到了對導入的STL文件中的三角形面進行縫合。這也是導入STL文件生成TopoDS_Shape時默認的操作,所以有很多人反應導入大一點的STL文件有點慢。目前OpenCASCADE最新版本中對于導入的STL模型也只能是顯示,所以可以使用選項只生成網格模型,而不是每個三角形生成一個TopoDS_Face后再調用縫合,這樣性能上要好很多。

            這段Tcl腳本代碼演示的就是沒有公用邊的面FACE如何生成Shell。如果這時使用quilt是得不到一個閉合的Shell的,只能使用sewing命令來縫合這三個面來生成Shell。

            4 Conclusion

            當我們手工從邊EDGE,面FACE來構造一個BRep體時,需要考慮如何將無序的邊EDGE生成WIRE,如何將無序的FACE縫合成SHELL。

            在OpenCASCADE中提供了兩種方式縫合面FACE生成SEHLL:如果這些面FACE有共用邊EDGE,可以使用類BRepTools_Quilt;如果這些FACE沒有共用邊EDGE,只能使用類BRepBuilderAPI_Sewing。

            久久无码人妻一区二区三区午夜| 久久精品国产亚洲AV久| 99久久99久久精品国产片| 人妻无码久久精品| 久久er99热精品一区二区| 日韩人妻无码一区二区三区久久99| 国产精品久久成人影院| 久久婷婷五月综合色奶水99啪| 久久亚洲日韩看片无码| 久久精品国产免费一区| 国产精品久久久福利| 久久九九免费高清视频| 精品国产热久久久福利| 青青青青久久精品国产 | 久久精品久久久久观看99水蜜桃| 日韩AV无码久久一区二区| 久久精品成人免费观看97| 麻豆AV一区二区三区久久 | 久久美女人爽女人爽| 久久频这里精品99香蕉久| 久久一本综合| 亚洲欧美一级久久精品| 亚洲国产成人久久笫一页| 久久久久久久尹人综合网亚洲| 一本久久a久久精品vr综合| 无码精品久久久久久人妻中字| 国内精品伊人久久久久妇| 一本久久久久久久| 精品久久久久久无码专区不卡| 久久亚洲国产午夜精品理论片| 亚洲综合伊人久久综合| 久久无码AV一区二区三区| 人妻中文久久久久| 亚洲精品无码久久久久AV麻豆| 999久久久国产精品| 国产免费久久精品99久久| 亚洲欧美一级久久精品| 婷婷久久综合九色综合绿巨人| 久久精品国产福利国产琪琪| 国内精品伊人久久久久影院对白| 91久久香蕉国产熟女线看|