绘制隐式函数的曲线 3维 matlab

来源:百度知道 编辑:UC知道 时间:2024/05/10 12:56:45
绘制隐式函数的曲线 3维 matlab
比如 x^2+y^2+z^2 = 100
嗯 不好意思 是面哈
可我是说不转换为显示函数而直接画
不是所有的都是那么好转换的哦.....

由于方程是曲面方程,只能给你画个面出来,用球极坐标写的,代码如下:
STEP=0.05
[fai,thi]=meshgrid([0:STEP:2*pi+STEP],[0:STEP:pi+STEP]);
X=10*cos(fai).*sin(thi);
Y=10*sin(fai).*sin(thi);
Z=10*cos(thi);
mesh(X,Y,Z)
或者用ezmesh(),ezsurf()等语句,但是不能控制间距:
ezmesh('10*cos(s).*sin(t)','10*sin(s).*sin(t)','10*cos(t)',[0,2*pi,0,pi])
总之,画曲面要转换成关于两个参数的三个单值函数,画曲线要转换成关于一个参数的三个单值函数,画曲线用ezplot3()用法和ezmesh()差不多。

victortkl抄袭是可耻的
搂主想要用原来的方程似乎不太可行,ezmesh()和ezsurf()不像ezplot()还可以指定值域,这样就必须把方程写成单值函数的形式,通过参数来控制。

真深奥

ezmesh('10*cos(s).*sin(t)','10*sin(s).*sin(t)','10*cos(t)',[0,2*pi,0,pi])