作业帮 > 综合 > 作业

matlab中如何画x^2+y^2+z^2=5^2,与x+y+z=0的交线,要求最后只显示出这条圆曲线,两个曲面不要显示

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/14 01:06:32
matlab中如何画x^2+y^2+z^2=5^2,与x+y+z=0的交线,要求最后只显示出这条圆曲线,两个曲面不要显示.
希望高人给出代码.
如果可以的话,能不能再在这个曲线上指定两个点,并只绘制出这两个点之间的那段曲线.
[X,Y,Z]=sphere(50);
mesh(5*X,5*Y,5*Z)%画球面
hold on;
ezmesh('0-x-y',[-5 5])%画平面
[x,y,z]=meshgrid(linspace(-5,5));
contourslice(x,y,z,x+y+z,5*X,5*Y,5*Z,[0 0])%画交线
axis equal
view(135,20)
%只显示出这条圆曲线
figure
contourslice(x,y,z,x+y+z,5*X,5*Y,5*Z,[0 0])%画交线
axis equal
view(135,20)
再问: 你好,我只运行这段 contourslice(x,y,z,x+y+z,6400*X,6400*Y,6400*Z,[0 0])%画交线 axis equal view(135,20) 代码的时候,我把里面的5改成了6400,为什么运行出来坐标轴只显示到了1左右的范围,所以坐标系上什么都看不到 这是什么原因呢,如何显示?
再答: [X,Y,Z]=sphere(50);画的是单位球,6400*X,6400*Y,6400*Z,,实际画得是半径80的球体,ezmesh('0-x-y',[-5 5])%画平面的范围是-5 5,当然看不到其他的图形了