24小时热门版块排行榜    

查看: 977  |  回复: 2

guojunhang

金虫 (正式写手)

[求助] 请教一个已知方程的空间曲面的画法,matlab语言

那这个空间圆柱体又该怎么处理呢?
(x-y)^2+(y-z)^2+(z-x)^2=1

还有这个稍微复杂点的,
方程是这样写的,

(((x-y)^2+(y-z)^2+(z-x)^2)/2)^0.5+2*0.01*1.2375*exp((x+y+z)/3/1.2375)=1

不知道该怎么样才能搞定,特来请教各位大侠。
回复此楼

» 本帖已获得的红花(最新10朵)

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dbb627

荣誉版主 (著名写手)

【答案】应助回帖

感谢参与,应助指数 +1
guojunhang(金币+10): 多谢您的大力帮助! 2011-12-10 23:45:52
编写一个隐含数绘图函数文件
CODE:
function h=implicitmesh(f,xlimit,ylimit,zlimit,gd)
%implicitmesh(f,span,gd):画隐函数曲面f(x,y,z)=0的网格图,
%                          各坐标范围均限定在span=[lb,ub],
%                          网格数为gd,默认为25
%implicitmesh(f,xspan,yspan,zspan,gd):画隐函数曲面f(x,y,z)=0,
%                          各坐标范围分别限定在xspan,yspan,zspan
%h=implicitmesh(...):画隐函数曲面并输出句柄
%例一:
%implicitmesh(inline('x.*y+z.^2'),[-5 5])%注意*\^一定要设成点运算
%例二:
%f=@(x,y,z)x.^2+y.^2+0*z-1;%注意如果f中不含某个变量一定要加上诸如0*y的项。
%implicitmesh(f,[-1 1],10)
%例三:
%f=@(x,y,z)(x.^2 + (9/4)*y.^2 + z.^2 - 1).^3 - x.^2.*z.^3 - (9/80)*y.^2.*z.^3;
%g=@(x,y,z)(sqrt(x.^2+y.^2)-2).^2+z.^2-.09;
%implicitmesh(f,[-1.5 1.5],[-.8 .8],[-1.5 1.5],50);
%hold on%可以添加图形
%h=implicitmesh(g,[-2.3,2.3]);
%colormap hsv;set(h,'facecolor','none');%可以设置各种效果
%axis off;axis equal;
if nargin==2
    ylimit=xlimit;zlimit=xlimit;gd=25;
elseif nargin==3
    gd=ylimit;ylimit=xlimit;zlimit=xlimit;
elseif nargin==4
    gd=25;
elseif nargin==5
else
    error('Error in input arguments')
end
x=linspace(xlimit(1),xlimit(2),gd);
y=linspace(ylimit(1),ylimit(2),gd);
z=linspace(zlimit(1),zlimit(2),gd);
[x,y,z]=meshgrid(x,y,z);val=f(x,y,z);
[f,v]=isosurface(x,y,z,val,0);
if isempty(f)
    warning('There is no graph in the range.');
    p=[];
else
    newplot;
    p=patch('Faces',f,'Vertices',v,'CData',v(:,3),'facecolor','w','EdgeColor','flat');
    isonormals(x,y,z,val,p);view(3);grid on
end
if nargout==0
else
    h=p;
end

然后调用绘图
>> f=@(x,y,z)(x-y).^2+(y-z).^2+(z-x).^2-1;
>> implicitmesh(f,[-1 1],50)


The more you learn, the more you know, the more you know, and the more you forget. The more you forget, the less you know. So why bother to learn.
2楼2011-12-10 17:07:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

guojunhang

金虫 (正式写手)

送鲜花一朵
非常感谢您的关注和支持,帮我解决了这个问题。
我回去好好体会体会,多谢了。
3楼2011-12-10 23:45:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 guojunhang 的主题更新
信息提示
请填处理意见