• <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。

            青青国产成人久久91网 | 久久精品国产精品亚洲人人 | 久久99精品国产麻豆宅宅| 久久精品国产亚洲AV蜜臀色欲| 中文字幕无码久久精品青草| 久久伊人五月丁香狠狠色| 久久精品无码一区二区无码| 国产成人香蕉久久久久| 亚洲精品美女久久777777| 99久久国产热无码精品免费久久久久| 久久久久18| 久久99精品国产自在现线小黄鸭| 色诱久久av| 91秦先生久久久久久久| 久久无码人妻一区二区三区午夜| 国产精品gz久久久| 久久精品国产亚洲一区二区| 一本久久a久久精品综合香蕉| 久久精品国产清高在天天线| 中文字幕无码久久精品青草| 精品久久久久久无码中文野结衣| 国内精品九九久久久精品| 久久天天躁狠狠躁夜夜avapp| 国产精品美女久久久久av爽| 精品久久久久久久无码| 亚洲中文字幕无码久久综合网 | 午夜精品久久影院蜜桃| 久久香蕉一级毛片| 99久久超碰中文字幕伊人| 午夜精品久久久久久中宇| 久久精品亚洲AV久久久无码| 欧美日韩精品久久久久| 久久久久久av无码免费看大片| 亚洲综合久久综合激情久久| 国产精品久久久久久久久鸭| 久久亚洲精品国产精品| 午夜精品久久久久久毛片| 久久精品国产清高在天天线| 久久久久久国产精品无码超碰| 99久久人妻无码精品系列蜜桃| 伊人久久久AV老熟妇色|