利用數學軟體Mathematica的三維影像進行建模

悅靈發表於2021-12-31

前言

       最近在使用Mathematica進行二元函式的影像繪製,在匯出影像選項中看到了obj,maya等三維格式。其實很早之前我就有過這樣的想法,但之前使用的是matlab作圖,無法匯出三維格式。那麼廢話不多說,直接開搞。

一、用簡單曲面測試效果

       我們先用一個簡單的曲面來進行試驗,即$f \left ( x,y \right ) = x^{2} + y^{2},-5\leqslant x\leqslant 5,-5\leqslant y\leqslant 5$,其影像為:

利用數學軟體Mathematica的三維影像進行建模

我們先來選個OBJ格式的,將匯出的模型匯入3dmax中,但是會出現以下問題:

利用數學軟體Mathematica的三維影像進行建模

網上也沒有查到相關的解決辦法,可能是和版本不相容?(有知道原因的大佬來解釋一下吧?)

       既然OBJ格式匯入有問題,那就換個格式好了,這次我選則Maya格式,將匯出的模型匯入Maya中,看著還不錯。

利用數學軟體Mathematica的三維影像進行建模

由於我對Maya不熟悉,我將其匯出為FBX格式,再匯入3dmax檢視效果:

利用數學軟體Mathematica的三維影像進行建模

這個曲面少了一個面片,但在Maya中卻沒有出現這樣的情況,我換成OBJ格式在匯入3dmax中,就沒有問題了(有大大的問題,滿腦子的疑惑❓❓❓)。

利用數學軟體Mathematica的三維影像進行建模

切換為邊面模式,可以發現,mathematica匯出的不是四邊面,但也不完全是三角面,而是三角面和四邊面的混合,利用數學軟體Mathematica的三維影像進行建模

       我們知道,3dmax建模時再進行建模時,需要儘可能地用四邊面進行佈線,方便在後期進行高模卡線,這種佈線方式不太好卡線,先加一個渦輪平滑試試效果:

利用數學軟體Mathematica的三維影像進行建模

利用數學軟體Mathematica的三維影像進行建模

可以看出這個效果和預想中的一樣,存在很多硬邊,不圓滑,這樣的情況在3dmax中是很難解決的,於是我決定在Mathematica中利用程式進行加線,將網格全部顯示,將繪圖點改為100,如下:

利用數學軟體Mathematica的三維影像進行建模

按照以上步驟匯入3dmax中,

利用數學軟體Mathematica的三維影像進行建模

利用數學軟體Mathematica的三維影像進行建模

這次,模型不僅很光滑,而且佈線也很好看。看來由程式佈線最後還得有程式加線效果才會好。

二、用更復雜的曲面測試

       掌握了技術後當然要用它來測試更復雜的模型啦。這裡我使用了官方文件中使用的兩個模型函式進行測試,效果如下:

利用數學軟體Mathematica的三維影像進行建模

利用數學軟體Mathematica的三維影像進行建模

利用數學軟體Mathematica的三維影像進行建模

當然,也會有少數模型的法線存在一些小問題,比如上面的海螺模型匯入後法線是反的,只需要新增法線修改器即可,但是下面這個模型匯入後,有的面法線是正的,有的面法線是反的,法線修改器暫時不能改正。

利用數學軟體Mathematica的三維影像進行建模

三、結論

       雖然使用這樣的方法可以對三維函式影像轉化為模型,但實際上用處並不大,幾乎沒有建模師使用這樣的方法來進行建模。不過這種方法也有好處,比如不需要手動去卡線,而且模型的曲面還可能具有二階或者更高階的導數,因此曲面的光滑效果會更好。

相關文章