• <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 HLR 輪廓線

            Posted on 2023-12-03 20:53 eryar 閱讀(2574) 評論(0)  編輯 收藏 引用 所屬分類: 2.OpenCASCADE

            OpenCASCADE HLR Quadric Surface Outline Edge

            Key Words: HLR, Outline Edge, Sihouette Edge

            1 Introduction

            OpenCASCADE中關(guān)于隱藏線消除HLR算法的描述就是一句話:These algorithms are based on the principle of comparing each edge of the shape to be visualized with each of its faces, and calculating the visible and the hidden parts of each edge. 即根據(jù)面判斷每條邊Edge的遮擋關(guān)系,計算出邊Edge可見和不可見部分。所以HLR算法的輸入主要為邊和面,計算遮擋關(guān)系依賴線面求交算法。對于精確的HLR算法依賴精確的線面求交算法,PolyAlgo算法依賴多段線與網(wǎng)格求交算法。輸入的邊中除了BREP中的邊以外,還有一類是根據(jù)投影方向計算得來的,即外輪廓線Outline,也稱為Contour線。ACIS的PHLR中稱輪廓線Sihouette Edge。

            輪廓線的計算是HLR中比較關(guān)鍵的一步,本文以O(shè)penCASCADE中簡單的二次曲面的輪廓線計算入手來理解曲面的輪廓線概念,為理解任意曲面輪廓線計算打下基礎(chǔ)。

            2 Outline Builder

            OpenCASCADE的HLR中使用類HLRTopoBRep_OutLiner來計算外輪廓線。輪廓線的計算依賴投影方向及投影方式,主要計算邏輯在函數(shù)Fill()中:

            投影方式主要分為透視投影Perspective和平行投影,工程圖生成一般使用平行投影方式。實(shí)際計算類是Contap_Contour,在類Contap_Contour中又根據(jù)投影曲面類型分為兩種類型來處理:

            • 二次曲面
            • 任意曲面

            其中函數(shù)PerformAna()為計算平面、球面、圓柱面、圓錐面的外輪廓線,最終會使用類Contap_ContAna。其中Ana為Analytical解析曲面的意思,這里指能用解析表達(dá)式表示的二次曲面。

            3 Contap_ContAna

            類Contap_ContAna能計算球面、圓柱面和圓錐面的外輪廓線Contour,下面我們主要來看看這三類面的外輪廓線計算結(jié)果。

            對于平行投影球面會生成以投影方向?yàn)榉ㄏ颍郧虬霃綖榘霃降囊粋€圓,代碼如下所示:

            如下圖所示中的綠色的線:

            對于平行投影圓柱面會生成兩條直線,若投影方向與圓柱面法向平行時不生成輪廓線,這時就是使用圓柱體中的上下兩個圓的邊。代碼如下所示:

            生成的兩條直線方向?yàn)閳A柱面的軸方向:

            圓錐面的輪廓線生成函數(shù)邏輯類似,留給讀者自行分析理解。

            4 Conclusion

            綜上所述,BREP的HLR算法需要計算模型的外輪廓線。如球體的BREP邊有兩個退化邊(極點(diǎn)),及兩個重合邊,若來投影實(shí)質(zhì)上只有重合邊中的一條邊有用,而這個邊還是個半圓。從理解 簡單的二次曲面外輪廓線計算函數(shù)入手,再去深入理解任意曲面的外輪廓線計算方法。

            理解HLR實(shí)現(xiàn)原理,可以重構(gòu)HLR代碼,也可以完全自己動手,開發(fā)出滿足實(shí)際需求的自動出圖程序,自動出圖是工程類設(shè)計軟件中相對核心的功能,目前國內(nèi)基于PDMS做自動出圖相關(guān)軟件開發(fā)的就有很多家。本著開放的心態(tài)分享這些相對比較關(guān)鍵功能的原理,讓國內(nèi)這些產(chǎn)品能擺脫基于AutoCAD/BricsCAD開發(fā)接口或PDMS Draft的限制,開發(fā)出更好用、更自由靈活的軟件。

            国产精品青草久久久久婷婷| 狠狠精品久久久无码中文字幕| 99久久人人爽亚洲精品美女| 亚洲国产精品一区二区久久hs| 久久亚洲AV无码西西人体| 精品一区二区久久| 99精品久久精品| 久久久老熟女一区二区三区| 一本一本久久aa综合精品| 久久久噜噜噜久久中文字幕色伊伊 | 久久99热这里只有精品国产| 理论片午午伦夜理片久久| 久久免费视频6| 欧美一级久久久久久久大| 欧美久久久久久午夜精品| 亚洲中文字幕伊人久久无码 | 久久精品极品盛宴观看| 日本久久中文字幕| 日韩欧美亚洲综合久久| 久久WWW免费人成一看片| 精品久久人妻av中文字幕| 精品久久一区二区三区| 久久国产热这里只有精品| 天天综合久久一二三区| 久久99久久99精品免视看动漫| 国产精品一区二区久久国产| 中文精品久久久久国产网址| 久久久久一本毛久久久| 久久人人爽人人爽人人爽| 久久精品午夜一区二区福利| 国产精品久久久久久久久| 久久精品国产亚洲7777| 久久久久久久波多野结衣高潮| 精品蜜臀久久久久99网站| 久久久久久国产精品无码下载 | 亚洲午夜久久久影院| 久久精品人人槡人妻人人玩AV | 99久久精品免费看国产一区二区三区| 久久精品国产日本波多野结衣| 久久66热人妻偷产精品9| 久久精品三级视频|