MATLAB绘制三维图形
1.画椭球
1.1 圆心在(0,0,0)
[x,y,z]=sphere(30);%30是画出来的球面的经纬分面数...30的话就是30个经度, 30个纬度
surf(x,y,z)
1.2 圆心在(x0,y0,z0),半径为 r
[x,y,z]=sphere(30);%30是画出来的球面的经纬分面数...30的话就是30个经度, 30个纬度
x0=1;
y0=3;
z0=2;
r=3;
x=x0+r*x;
y=y0+r*y;
z=z0+r*z;
surf(x,y,z)
1.3 椭球
$$
\varGamma(x) = \frac{\int_{\alpha}^{\beta} g(t)(x-t)^2\text{ d}t }{\phi(x)\sum_{i=0}^{N-1} \omega_i} \tag{2}
$$
%(xc,yc,zc)为中心,xr,yr,zr为半轴长。
[x, y, z] = ellipsoid(0,0,0,5.9,3.25,3.25,30);
surfl(x, y, z)
colormap copper
axis equal
2.绘制双曲抛物面
- 公式
$$ E = mc^2 $$
- 代码
x=-8:0.5:8; % x范围
y=-8:0.5:8; % y范围
[xx,yy]=meshgrid(x,y); %构成格点矩阵
p=1;
z=-(xx.^2)./(2*p)+(yy.^2)./(2*p);
surf(xx,yy,z); %子图1,绘制三维图形
title('双曲抛物面');
- 图片