日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

Matlab——图形绘制——三维立体图形 剔透玲珑球 动态图——彗星状轨迹图

發布時間:2023/12/13 综合教程 41 生活家
生活随笔 收集整理的這篇文章主要介紹了 Matlab——图形绘制——三维立体图形 剔透玲珑球 动态图——彗星状轨迹图 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

三維繪圖函數

三維繪制工具

函數view

實例:三維螺旋線

>> t=0:pi/50:10*pi;
plot3(sin(t),cos(t),t)
grid %添加網格

plot3可以畫出空間中的曲線

>> t=linspace(0,20*pi, 501);
plot3(t.*sin(t), t.*cos(t), t); %注意用點乘 .*

也可以同時畫出兩條空間中的曲線

>> t=linspace(0,10*pi,501);
>> plot3(t.*sin(t),t.*cos(t),t,t.*sin(t),t.*cos(t),-t);

正弦曲線圖

x=linspace(0,3*pi); % 0 到 3pi 間100 個數據點
z1=sin(x);
z2=sin(2*x);
z3=sin(3*x);
y1=zeros(100); % 含有100 個數據的 0 數組
y3=zeros(100);
y2=y3/2;
plot3(x,y1,z1,x,y2,z2,x,y3,z3);

立體網狀圖

實例:

>> x=linspace(-2, 2, 25); %在x軸上取25點
y=linspace(-2, 2, 25); %在y軸上取25點
[xx,yy]=meshgrid(x, y); % xx和yy都是21x21的矩陣
zz=xx.*exp(-xx.^2-yy.^2); %計算函數值,zz也是21x21的矩陣
mesh(xx, yy, zz); %畫出立體網狀圖

曲面圖

>> x=linspace(-2, 2, 25); %在x軸上取25點
y=linspace(-2, 2, 25); %在y軸上取25點
[xx,yy]=meshgrid(x, y); % xx和yy都是21x21的矩陣
zz=xx.*exp(-xx.^2-yy.^2); %計算函數值,zz也是21x21的矩陣
surf(xx, yy, zz);%畫出立體曲面圖

peaks函數

>> z = 3*(1-x).^2.*exp(-(x.^2) - (y+1).^2) ...
- 10*(x/5 - x.^3 - y.^5).*exp(-x.^2-y.^2) ...
- 1/3*exp(-(x+1).^2 - y.^2);
>> peaks z

也可以對peaks函數取點,再以各種不同的方法進行繪圖

meshz 可將曲面加上圍裙

[x,y,z]=peaks;
meshz(x,y,z);

waterfall 可在x 方向或y 方向產生水流效果:

[x,y,z]=peaks;
waterfall(x,y,z);

產生在y方向的水流效果:

[x,y,z]=peaks;
waterfall(x',y',z');

meshc 同時畫出網狀圖與等高線:

[x,y,z]=peaks;
meshc(x,y,z);

surfc 同時畫出曲面圖與等高線:

[x,y,z]=peaks;
surfc(x,y,z);

contour3 畫出曲面在三度空間中的等高線

contour3(peaks, 20);

contour 畫出曲面等高線在XY 平面的投影

contour(peaks, 20);

剔透玲瓏球

[X0,Y0,Z0]=sphere(30); %產生單位球面的三維坐標
X=2*X0;Y=2*Y0;Z=2*Z0; %產生半徑為2 的球面的三維坐標
surf(X0,Y0,Z0); %畫單位球面
shading interp %采用插補明暗處理
hold on; mesh(X,Y,Z);hold off %畫外球面
hidden off %產生透視效果
axis off %不顯示坐標軸

動態圖形動畫效果——彗星狀軌跡圖

R0=1; %以地球半徑為一個單位
a=12*R0;b=9*R0;T0=2*pi; %T0是軌道周期
T=5*T0;dt=pi/100;t=[0:dt:T]';
f=sqrt(a^2-b^2); %地球與另一焦點的距離
th=12.5*pi/180; %衛星軌道與x-y平面的傾角
E=exp(-t/20); %軌道收縮率
x=E.*(a*cos(t)-f);y=E.*(b*cos(th)*sin(t));z=E.*(b*sin(th)*sin(t));
plot3(x,y,z,'g') %畫全程軌線
[X,Y,Z]=sphere(30);X=R0*X;Y=R0*Y;Z=R0*Z; %獲得單位球坐標
grid on,hold on,surf(X,Y,Z),shading interp %畫地球
x1=-18*R0;x2=6*R0;y1=-12*R0;y2=12*R0;z1=-6*R0;z2=6*R0;
axis([x1 x2 y1 y2 z1 z2]) %確定坐標范圍
view([117 37]),comet3(x,y,z,0.02),hold off %設視角、畫運動軌線

總結

以上是生活随笔為你收集整理的Matlab——图形绘制——三维立体图形 剔透玲珑球 动态图——彗星状轨迹图的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。