• <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點向圓柱面投影

            Posted on 2019-09-22 22:39 eryar 閱讀(2088) 評論(0)  編輯 收藏 引用 所屬分類: 2.OpenCASCADE

            OpenCASCADE點向圓柱面投影

            eryar@163.com

             

            OpenCASCADE的類Extrema_ExtPElS提供了點到基本曲面的投影計算功能,距離可能是最大值或是最小值。如下圖所示的點到圓柱的投影會有兩個投影點P1P2,則點到圓柱的距離的最小值是PP1的距離,最大值是PP2的距離。本文主要是對此類中點到圓柱的投影算法進行分析。

             

            Extrema_ExtPElS類中計算點到圓柱的投影源碼列出如下:

             

            結合源碼的注釋可以看出點P到圓柱S的投影主要按有如下步驟:

            l 計算點P到以圓柱S軸線為法線的平面的投影點Pp

            l 若點P在軸線上,則計算失敗返回;

            l 計算點Pp在圓柱U方向的參數U1(角度);

            l 將參數U1(角度)加180度得到參數U2

            l 計算參數(U1V),(U2V)對應在圓柱面上的點;

            上述實現主要也是使用向量的運算,所以程序簡單且性能高。其中保存的距離是距離的平方值,這種方式主要考慮的是自帶的開方函數性能,除非后面要用到距離才會自己去開方,這樣也是提供性能的一種處理方式。

            OpenCASCADE的向量類gp_Vec提供了一個函數AngleWithRef(),查看源碼可知這個函數主要是計算兩個向量之間的夾角,其中參數向量Ref是用來處理角度的正負。當兩個向量叉乘的向量與參考向量Ref反向時,也會將得到的角度值取負。

            下面通過一個簡單的小程序來將計算結果在Draw Test Harness中可視化,這樣可以直觀地驗證一下:

             

            將生成的腳本文件加載到DRAW中得到如下圖所示的結果:

             

            從上圖可以看出,投影得到的兩個點P1P2的高度值與點P是相同的。


            為了方便大家在移動端也能看到我的博文和討論交流,現已注冊微信公眾號,歡迎大家掃描下方二維碼關注。
            Shing Liu(eryar@163.com)
            精品久久8x国产免费观看| 久久久精品人妻一区二区三区蜜桃| 色8久久人人97超碰香蕉987| 午夜天堂精品久久久久| 久久91亚洲人成电影网站| 久久青青草原精品国产不卡| 中文字幕无码免费久久| 久久青青草原国产精品免费| 人妻系列无码专区久久五月天| 日本强好片久久久久久AAA | 精品国产乱码久久久久久呢| 97热久久免费频精品99| 亚洲国产精品无码久久久久久曰 | 国产精品九九久久精品女同亚洲欧美日韩综合区 | 无码人妻精品一区二区三区久久久| 91精品国产高清久久久久久io| 理论片午午伦夜理片久久| 精品一区二区久久久久久久网站| 久久亚洲精品无码aⅴ大香| 66精品综合久久久久久久| 亚洲精品乱码久久久久久| 精品久久久久久国产三级| 丰满少妇人妻久久久久久| 伊人久久大香线蕉av不变影院 | 久久久久人妻一区二区三区| 精品国产综合区久久久久久 | 亚洲国产精品嫩草影院久久| 亚洲国产成人久久精品动漫| 日韩精品久久无码中文字幕| 日韩人妻无码一区二区三区久久99| 久久久国产精品网站| 国产精品久久网| 国产日产久久高清欧美一区| 久久天天躁狠狠躁夜夜96流白浆| 国产亚洲精品久久久久秋霞| 久久久久久久91精品免费观看| 日韩影院久久| 97精品伊人久久大香线蕉| 久久无码国产专区精品| 久久99精品久久久大学生| 亚洲AV无码久久精品蜜桃|