Matlab繪圖基礎——一些標准三維曲面


 

標准三維曲面
t=0:pi/20:2*pi;
[x,y,z]= cylinder(2+sin(t),30);
     %[x,y,z]= cylinder(R,n),其中R為圓周半徑,n為組成圓周的點數。
     %[x,y,z]= cylinder(2,30);  %這是一個標准圓柱面
subplot(2,2,1);
surf(x,y,z);   %這是一個瓶子形狀圖片
 
[x,y,z]=sphere(20);   %括號內的參數越大,圖形越精細
subplot(2,2,2);
surf(x,y,z);   %球面
 
[x,y,z]=peaks(30);
subplot(2,1,2);
surf(x,y,z);   %matlab標准內置圖像,經常使用
 
應用示例:
利用cylinder函數繪制一個球面
zz=-5:0.25:5;
r=sqrt(25-zz.^2);
[x,y,z]= cylinder(r,30);
subplot(2,2,1);
surf(x,y,z);  

看上去似乎並沒有什么問題,但是當我把它旋轉一下
會看到它的上下底面都是尖的
 
%%對比用sphere生成的球面
[x,y,z]=sphere(20);   %括號內的參數越大,圖形越精細
surf(x,y,z);   %球面

將其旋轉一下:
看來它的光滑性還是不錯的。
這是為什么呢?讓我看一下兩次生成球面是所用到的Z值
這個是sphere函數生成的:
這個是cylinder生成的
結論:cylinder生成的是柱面,所以Z軸取值的等間隔的,所以在極點處就會發生突變
            而sphere生成的是單位球面,Z軸取值比較特殊,不是等間隔的,所以它生成的球面比較光滑。

 

<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM