MATLAB分段曲面怎么画?..

来源:百度知道 编辑:UC知道 时间:2024/05/24 23:36:15
题在这个图上.

x=-10:0.5:10;
y=-10:0.5:10;
[X,Y]=meshgrid(x,y);
[M,N]=size(X);
r=6;
for x1=1:M
for y1=1:N
x2=X(x1,y1);
y2=Y(x1,y1);
r1=sqrt(x2*x2+y2*y2);
if r1<r
f(x1,y1)=sqrt(r*r-X(x1,y1)*X(x1,y1)-Y(x1,y1)*Y(x1,y1));
else
f(x1,y1)=-(x2*x2+y2*y2)/45;
end
end
end
surf(X,Y,f)

clc;clear;
x=meshgrid(-10:10);
y=x';
if sqrt(x.^2+y.^2)<6
z=sqrt(6-x.^2-y.^2)
else
z=-(x.^2+y.^2)/45
end
surf(x,y,z)

结果象一个倒扣的锅。