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

            OPEN CASCADE Curve Continuity

            Posted on 2015-11-15 23:01 eryar 閱讀(2609) 評論(4)  編輯 收藏 引用 所屬分類: 2.OpenCASCADE

            OPEN CASCADE Curve Continuity

            eryar@163.com

            Abstract. 設計一條復雜曲線時,出于設計和制造上的考慮,常常通過多段曲線組合而成,這就需要解決曲線段之間如何實現光滑連接的問題。評價曲線間連接的光滑度的度量有兩種:參數連接性和幾何連續性。本文對這兩種連續性分別進行介紹。

            Key Words. Curve Continuity, Geometric Continuity, 參數連續性、幾何連續性

            1.Introduction

            在實際應用中進行復雜零件的幾何設計時,通常我們用到的不僅僅是整個曲線,而是滿足一定的連續條件拼接而成的曲線段組成的組合曲線。關于連續條件有兩種不同的度量方法。一種是滿足于數學上嚴格定義的函數曲線可微性方法;別一種是滿足相對寬松的約束條件的幾何連續性方法。

            本文對連續性的兩種度量方法進行介紹,來理解參數連續性和幾何連續性。對連續性的概念有個認識后,在使用OPEN CASCADE或其他幾何造型內核時,當出現需要指定連續性的時候,不至于茫然無措。

            2.Parametric Continuity

            利用函數曲線的可微性,曲線在連接處具有直到n階連續導矢,即n次連續可微,這類光滑度稱之為Cn或n階參數連續性。下面給出參數連續性Parametric Continuity的定義:

            參數曲線C(u)在u=u0處為k階參數連續(Ck連續)的充要條件是:C(u)的每個分量在u=u0處Ck連續,即

            wps_clip_image-8474

            如果對所有的u∈[a,b],曲線C(u)均Ck連續,則稱它為關于參數u的Ck連續曲線。在函數曲線里,可微性和光滑度是一致的,函數曲線是C1連續,意味著具有連續的切矢;C2連續意味著不僅具有連續的切矢,還具有連續的曲率。由于曲線的參數選取并不唯一,同樣的曲線可以有不同的參數表示,而曲線的參數連續又與參數選取緊密相關。若參數變換前曲線為Ck連續,但曲線的參數變換后可能不能在每一點處都滿足Ck連續。這是個問題。

            3.Geometric Continuity

            實際工程設計中,人們有一種直觀的感覺:兩線段相連接,只要在連接點有相同的切線就認為是光滑的。但按照參數連續性度量光滑度,還必須有相同的切矢模長才能認為是C1連續的。由于參數連續性不能客觀準確度量參數曲線連接的光滑度,因而經常用稱之為幾何連續性(Geometric Continuity)的方法來度量曲線的光滑程度。下面給出幾何連續性的定義:

            參數曲線C(u)是k階幾何連續的充要條件為:在弧長參數化下,曲線是Ck的。因為在弧長參數化下,曲線的參數連續與幾何連續是一致的。

            關于弧長參數化相關概念可參考: http://www.shnenglu.com/eryar/archive/2014/08/25/208127.html

            合成曲線在拼接點處滿足不同于Cn連續性的某一組約束條件,稱為具有n階幾何連續性,簡記為Gn。事實上模型的形狀是與描述它所取的參數無關的,作為形狀的內在幾何特征的光滑度及作為度量光滑度的幾何連續性定義應該是獨立于具體的參數化的。幾何連續性放寬了對參數曲線光滑度的限制條件,為形狀定義和形狀控制提供了更多的自由度,更適合曲線在交互設計中使用,有文獻稱其為視覺連續性。

            4.Curve Continuity

            下面通過一個具體的例子來說明參數連續性和幾何連續性。最后介紹OPEN CASCADE中對曲線連續性的定義。

            wps_clip_image-3347

            Φ(t)在[0,2]上表示一條連接V0,V1的直線段,但卻有

            wps_clip_image-6475

            Φ(t)明明是一條直線,卻非C1連續,說明用參數連續性描述光滑性是不恰當的。

            wps_clip_image-9192

            Figure 4.1 兩條曲線拼接的連續性

            如4.1所示,對于參數t∈[0,1]的兩條曲線P(t)和Q(t),若要求在拼接處達到G0連續或C0連續,即兩曲線在拼接處位置連續,則需要P(1) = Q(0);

            若要求在拼接處達到G1連續,就是說兩條曲線在拼接處滿足G0連續的條件下,并有公共的切矢:

            wps_clip_image-22327

            當α=1時,G1連續就成為C1連續。

            若要求在拼接處達到G2連續,就是說兩條曲線在拼接處滿足G1連續的條件下,并有公共的曲率矢。根據曲率計算公式:

            wps_clip_image-24839

            wps_clip_image-16585

            將G1連續的條件方程代入可得:

            wps_clip_image-12445

            β為任意常數。當α=1,β=0時,G2連續就成為了C2連續。至此可以看到,C1連續保證G1連續,C2連續保證G2連續,但反過來不行。也就是說Cn連續的條件比Gn連續的條件要苛刻。

            OPEN CASCADE中關于曲線是連續性的定義使用了GeomAbs_Shape枚舉定義:

            //! Provides information about the continuity of a curve:
            //! -   C0: only geometric continuity.
            //! -   G1: for each point on the curve, the tangent vectors
            //! "on the right" and "on the left" are collinear with the same orientation.
            //! -   C1: continuity of the first derivative. The "C1" curve is
            //! also "G1" but, in addition, the tangent vectors " on the
            //! right" and "on the left" are equal.
            //! -   G2: for each point on the curve, the normalized
            //! normal vectors "on the right" and "on the left" are equal.
            //! -   C2: continuity of the second derivative.
            //! -   C3: continuity of the third derivative.
            //! -   CN: continuity of the N-th derivative, whatever is the
            //! value given for N (infinite order of continuity).
            //! Also provides information about the continuity of a surface:
            //! -   C0: only geometric continuity.
            //! -   C1: continuity of the first derivatives; any
            //! isoparametric (in U or V) of a surface "C1" is also "C1".
            //! -   G2: for BSpline curves only; "on the right" and "on the
            //! left" of a knot the computation of the "main curvature
            //! radii" and the "main directions" (when they exist) gives the same result.
            //! -   C2: continuity of the second derivative.
            //! -   C3: continuity of the third derivative.
            //! -   CN: continuity of any N-th derivative, whatever is the
            //! value given for N (infinite order of continuity).
            //! We may also say that a surface is "Ci" in u, and "Cj" in v
            //! to indicate the continuity of its derivatives up to the order
            //! i in the u parametric direction, and j in the v parametric direction.
            enum GeomAbs_Shape
            {
              GeomAbs_C0,
              GeomAbs_G1,
              GeomAbs_C1,
              GeomAbs_G2,
              GeomAbs_C2,
              GeomAbs_C3,
              GeomAbs_CN
            };

            結合前面關于參數連續和幾何連續的介紹,再看頭文件中的注釋就很好理解了。

            5.Conclusion

            綜上所述,對拼接曲線光滑度進行度量有兩種方法:參數連續性和幾何連續性。參數連續性是嚴格的數學可微性定義,就像別人對你到了年紀還沒結婚的看法……“肯定是要求太高了”。而幾何連續性就像我們工科專業的,不是那么喜歡較真,差不多就可以了。對有些精確結果還喜歡乘以一個經驗系數,放點余量。理解了對拼接曲線光滑性的度量方法,就可以在用到的時候按需選擇。

            6.References

            1. 莫蓉. 常智勇. 計算機輔助幾何造型技術. 科學出版社. 2009

            2. 王仁宏. 李崇君. 朱春鋼. 計算幾何教程. 科學出版社. 2008

            3. 孫家廣等. 計算機圖形學. 清華大學出版社. 2000

            4. 朱心雄. 自由曲線曲面造型技術. 科學出版社. 2008

            5. Shing Liu. OPENCASCADE Curve Length Calculation.  http://www.shnenglu.com/eryar/archive/2014/08/25/208127.html

             

            Feedback

            # re: OPEN CASCADE Curve Continuity  回復  更多評論   

            2015-11-19 23:08 by robust
            博主您好,想向您請教一個問題,如果我編的程序用到了occ庫,也就是在我的程序中include了occ的頭文件*.hxx,*.lib,沒有對0cc庫做任何改動,那么我的程序能獨立發布而不用公開源代碼嗎?
            我看了LGPL條款,有些內容還是理解不透,特來請教資深專家。謝謝

            # re: OPEN CASCADE Curve Continuity  回復  更多評論   

            2015-11-19 23:15 by eryar
            @robust
            Hi robust,

            對LGPL協議的理解我也是從網上獲取相關信息,你可以直接在網上搜索下LGPL協議的授權相關注意事項。

            你關注的這個問題在OPEN CASCADE的官網上也給了明確回復,可參考:
            http://www.opencascade.com/content/faqs

            3) Can I use Open CASCADE Technology to make commercial products and to sell them? If yes, are there any limitations?
            Yes, you can use Open CASCADE Technology (OCCT) libraries in commercial applications without having to pay any development license fees or run time fees or royalties.
            Your obligation is to give prominent notice that your software uses Open CASCADE Technology, which is a Trademark of OPEN CASCADE Company, supply a copy of the OCCT license with your product and follow the other requirements of the license itself. Starting from version 6.7.0, this license is the GNU LGPL version 2.1 (with some minor additional permissions).
            Please, also note that Open CASCADE Technology uses third-party components which are listed on our System Requirements page. The use of third-party components is governed by their corresponding licenses.

            6) Am I obliged to disclose the entire source code of my application using OCCT?
            No, you are not. The decision to disclose the source code of your application is up to you.

            # re: OPEN CASCADE Curve Continuity  回復  更多評論   

            2015-11-20 12:33 by robust
            謝謝專家.

            # re: OPEN CASCADE Curve Continuity  回復  更多評論   

            2015-11-20 16:49 by eryar
            @robust
            客氣了。

            版權意識很好!
            AV无码久久久久不卡蜜桃| 四虎久久影院| 精品无码久久久久国产| 99久久精品免费国产大片| 色偷偷88888欧美精品久久久| 久久精品国产精品亚洲艾草网美妙| 久久综合精品国产二区无码| 青青青国产成人久久111网站| 青青久久精品国产免费看| 久久久久久久99精品免费观看| 亚洲色大成网站WWW久久九九| 囯产精品久久久久久久久蜜桃| 久久婷婷色综合一区二区| 久久久久国产精品熟女影院| 日韩久久无码免费毛片软件| yellow中文字幕久久网| 久久久久久久97| 99精品久久精品一区二区| 综合久久久久久中文字幕亚洲国产国产综合一区首 | 日韩精品久久无码人妻中文字幕| 色婷婷噜噜久久国产精品12p | 久久精品午夜一区二区福利 | 香蕉久久av一区二区三区| 99久久香蕉国产线看观香| 久久久久亚洲AV无码专区首JN| 2021国内久久精品| 久久久久久亚洲精品不卡 | 午夜精品久久久久久毛片| 久久精品无码专区免费青青| 色成年激情久久综合| 久久久久人妻一区精品性色av | 中文字幕精品久久| 久久人人爽人人爽人人片AV麻豆 | 亚洲欧洲久久av| 久久久精品人妻无码专区不卡 | 久久精品一本到99热免费| 久久只有这里有精品4| 亚洲人成电影网站久久| AV无码久久久久不卡蜜桃| 色偷偷888欧美精品久久久| 亚洲欧美成人久久综合中文网|