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

            幾何內(nèi)核與數(shù)學(xué)

            Posted on 2023-09-18 20:47 eryar 閱讀(646) 評論(0)  編輯 收藏 引用 所屬分類: 2.OpenCASCADE

            幾何內(nèi)核與數(shù)學(xué)

            1 概述

            從1950年第一臺圖形顯示器(美國麻省理工大學(xué)MIT旋風(fēng)I號Whirlwind I)的誕生,到1962年MIT林肯實驗室的Ivan E. Sutherland發(fā)表題為“Sketchpad: 一個人機交互的圖形系統(tǒng)”確定計算機圖形學(xué)作為獨立科學(xué)分支。經(jīng)過70多年的發(fā)展,計算機圖形學(xué)中的幾何造型技術(shù)成了現(xiàn)在的幾何內(nèi)核。

            數(shù)學(xué)是我們從小學(xué)、中學(xué)到大學(xué)一直都在學(xué)習(xí)的課程,是現(xiàn)代科技的理論基礎(chǔ),是創(chuàng)新的源泉。幾何內(nèi)核與數(shù)學(xué)的聯(lián)系非常緊密,結(jié)合開源幾何內(nèi)核opencascade談?wù)剬W(xué)習(xí)過程和數(shù)學(xué)的認識。

            2 高中時代

            在剛學(xué)習(xí)的時候,總是先從簡單的開始入手。比如,先看看直線、圓是什么,怎么顯示出來。長方體、圓柱體等怎么用BREP進行表示,怎么顯示在屏幕上。這個時候考慮問題是常人思維,我認為是高中時代。

            比如,怎么計算二維直線與圓的交點呢?上過高中的都學(xué)過,聯(lián)立直線與圓的一元二次方程組,將解方程組的代碼固化在代碼中。當(dāng)計算橢圓與圓的交點時,也做同樣的處理,就是多寫點代碼。高中幾何學(xué)得好的,可能會說我可以用向量,向量的方法會比代數(shù)的方法速度要快。

            再比如,怎么計算曲線的弧長和曲面的面積呢?計算曲線可以通過對曲線進行采樣點,將點連成多段線,再分別計算每小段線段的長度累加就是了。面積咱們也可以類似處理,將曲面離散成三角形或四邊形,再將這些三角形或四邊形面積累加。這些方法都能實現(xiàn),但是性能、精度都會成為問題。要計算得精度高,采樣就要密,就會帶來性能問題。

            3 大學(xué)時代

            到了大學(xué)時代學(xué)習(xí)過高等數(shù)學(xué)、線性代數(shù)等,有了更有力的工具來解決更一般問題。面向?qū)ο缶幊毯蛿?shù)學(xué)也是相通的,就是將問題抽象的能力。這個時候眼中沒有直線、圓、B樣條曲線、平面、球面、B樣條曲面等等,只有線Curve和面Surface。

            再進一步抽象,將線Curve與一元函數(shù)F(x)對應(yīng),將面Surface與多元函數(shù)對應(yīng)F(x,y),與數(shù)學(xué)建立了聯(lián)系。

            這時就可以使用數(shù)學(xué)工具對問題進行處理了。如計算曲線弧長,就變成一個對切向量的積分。曲線切向量需要計算一階導(dǎo)數(shù),《The NURBS Book》等書上計算B樣條微分的公式就有用,看待B樣條曲線和看待圓一樣了。

            積分的計算可以使用數(shù)值方法,如Newton-Cotes或Gauss積分法,使用更少的迭代獲得更高的精度,程序優(yōu)化的方向也清晰。

             

            從opencascade的類math_Function和math_MultipleVarFunction可以可以看出,許多幾何問題都抽象成了數(shù)學(xué)問題。有很多人問我,怎樣才算入門了opencascade呢?那就是思考問題的方式轉(zhuǎn)換成數(shù)學(xué)的方式,我覺得就算入門了。再具體點可操作點呢,首先就是數(shù)據(jù)結(jié)構(gòu)的入門,掌握BREP邊界表示法,如在圓柱面Surface上框出一個小面片F(xiàn)ace,能正常顯示出來就算理解opencascade中的BREP結(jié)構(gòu)。其次是幾何算法入門,就是將從math_Function和math_MultipleVarFunction所有的派生類的數(shù)學(xué)公式寫出來。這兩點動手做完,我覺得可以算入門了。

             

            4 研究生時代

            如果大學(xué)時代我們掌握了微分、積分、線性代數(shù),到研究生時代應(yīng)該掌握變分、偏微分方程、最優(yōu)化理論等等。如偏微分方程用于構(gòu)造過渡曲面,曲線曲面擬合光順最后都抽象成帶約束的非線性方程組的求解。

            到研究生時代因為掌握的數(shù)學(xué)工具,會處理看上去很簡單但處理起來更復(fù)雜的問題:如上圖所示的過渡Blend,以及蒙面Skinning和掃掠Sweep等。

            這時也可以有一些智能算法,如遺傳算法、蟻群,粒子群PSO優(yōu)化算法,AI等,使用仿生、遺傳變異等手段使求解迭代更快收斂。為傳統(tǒng)優(yōu)化算法提供初始解,使傳統(tǒng)算法能更快、更準(zhǔn)地找到解析解,不至于深陷局部最優(yōu)解中不能自拔。在opencascade中也有相關(guān)實例,如math_PSO。這些智能算法有隨機性,不像解析算法那樣滿足一定約束條件必定會找到相對準(zhǔn)確答案。只能作為像曲面求交之網(wǎng)格離散法,作為參數(shù)迭代法的預(yù)處理。到這個時代,查看相關(guān)技術(shù)論文毫無壓力,面對一般的幾何問題都應(yīng)該可以從容應(yīng)對。和研究生一樣面對的問題更加具體,會鉆牛角尖。

            5 總結(jié)

            綜上所述,幾何內(nèi)核可以看成一個數(shù)學(xué)庫的子集,只是在幾何圖形上的應(yīng)用。學(xué)習(xí)幾何內(nèi)核的過程類比于學(xué)生時代掌握的數(shù)學(xué)工具。在高中時代,看問題很具體,只能case by case的處理,功能能做出來。到大學(xué)時代,有了一定的抽象能力(與面向?qū)ο缶幊桃粯樱磫栴}具有一般性,能使用更高級點的數(shù)學(xué)工具來處理,有能力來兼顧精度和性能。到了研究生時代,就不怕別人來卡脖子,甚至能超越別人。這個時候不要給自己設(shè)限,找準(zhǔn)喜歡的方向去鉆牛角尖,終會有所成。

             

            99久久人妻无码精品系列| 久久久WWW免费人成精品| 久久久久久国产精品无码下载| 欧美777精品久久久久网| 色综合久久综精品| 久久久久国产精品嫩草影院| 久久久久18| 亚洲AV无码久久精品成人| 99国产欧美精品久久久蜜芽| 国产综合免费精品久久久| 欧美与黑人午夜性猛交久久久| 欧美午夜A∨大片久久| 亚洲国产精品无码久久| 久久精品国产亚洲AV嫖农村妇女 | 久久精品一区二区三区不卡| 久久青草国产精品一区| 亚洲精品无码久久久久AV麻豆| 国产成人无码精品久久久性色| 综合久久国产九一剧情麻豆| 久久久91精品国产一区二区三区| 亚洲国产成人久久笫一页| 国产精品无码久久综合 | 无码任你躁久久久久久老妇App| 久久人爽人人爽人人片AV | 狠狠色丁香婷婷综合久久来| 久久黄视频| 国产99精品久久| 狠狠色丁香久久婷婷综合| 国产精品久久久久乳精品爆| 久久久久亚洲AV无码专区首JN| 9191精品国产免费久久| 久久夜色精品国产噜噜亚洲AV| 色青青草原桃花久久综合| 91久久精品国产91性色也| 久久人人爽人人爽人人AV| 亚洲欧洲中文日韩久久AV乱码| 国产福利电影一区二区三区久久老子无码午夜伦不 | 久久精品免费观看| 久久久噜噜噜久久中文福利| 热久久视久久精品18| 久久久久这里只有精品|