lightwater 发表于 2006-9-27 23:34

初学MATLAB 有一作业题无法做求教~

以不同的视角观察球面x2 + y2 + z2 = r2和圆柱面x2 + y2 = r x所围区域
   
x=-3:0.1:3;   y=-3:0.1:3;
=meshgrid(x,y);
Z=(9-X.^2-Y.^2).^(0.5);
mesh(X,Y,Z)   
hold on;
Z=-(9-X.^2-Y.^2).^(0.5);
mesh(X,Y,Z)

我以这样的方法画出了球面~但Z=0的地方有颜色,不知道怎么解决。

然后想用cylinder画出圆柱,但不知道高度为什么限定为1改不了~

就这里卡住了~还有就是要是这里过了~怎么实现只显示所围成的区域呢?

AaronSpark 发表于 2006-9-29 01:42

球面的做法:

= ellipsoid(0,0,0,0.5,0.5,0.5);
surf(x,y,z);
axis equal;

AaronSpark 发表于 2006-9-29 01:46

柱面的画法:

f=inline('x^2+y^2-1');
fvector=vectorize(f);
x=linspace(-1,1);
y=x;
z=2*x;
=meshgrid(x,y,z);
fvalues=feval(fvector,xm,ym);
isosurface(xm,ym,zm,fvalues,0);

lightwater 发表于 2006-10-4 17:34

十分感谢~~一定仔细钻研~~
页: [1]
查看完整版本: 初学MATLAB 有一作业题无法做求教~