[求助]ezsurf画图的问题
已知ezsurf可以画x=x(s,t),y=y(s,t),z=z(s,t)形式的三维图形<BR> ezsurf('(s-sin(s))*cos(t)','(1-cos(s))*sin(t)','s',[-2*pi,2*pi])<BR>现在我自己定义了x,y,z<BR>x=f1(s,t),y=f2(s,t),z=f3(s,t)<BR>其中f1,f2,f3为关于s,t的分段函数,<BR>如何画出它的图形,试了几个可能的形式都不行<BR>哪位高手指点一下,3x回复:(yqchenlolo)[求助]ezsurf画图的问题
<P>把函数形式给一下</P> 我编了几个例子测试的,过不了<BR>function x=f1(u,v)<BR>if u>=0&u<=1<BR> s1=u+1;<BR>else<BR> s1=0;<BR>end<BR>if v>=0&v<=1<BR> s2=v+2;<BR>else<BR> s2=0;<BR>end<BR>x=s1*s2;<BR> <BR>function y=f2(u,v)<BR>if u>=0&u<=1<BR> s1=u^2+1;<BR>else<BR> s1=0;<BR>end<BR>if v>=0&v<=1<BR> s2=v^2+2;<BR>else<BR> s2=0;<BR>end<BR>y=s1*s2;<BR><BR>function z=f3(u,v)<BR>if u>=0&u<=1<BR> s1=u^3;<BR>else<BR> s1=0;<BR>end<BR>if v>=0&v<=1<BR> s2=v^3+3;<BR>else<BR> s2=0;<BR>end<BR>z=s1*s2;<BR>还有如果f1,f2,f3如果为分段递归的函数,不知道可行不 如果要画三个量xyz分别随uv变化的图像,<BR>你这么定义xyz的表达式是错的,<BR>u,v在这里不是符号变量,<BR>调用f1返回的是一个数值。<BR>而ezsurf需要三个表达式作为输入,才能做出图像。<BR>所以,xyz不过怎么定义,调用ezsurf时必须保证它们为2个变量的表达式<BR><BR>回复:(xueyi)如果要画三个量xyz分别随uv变化的图像...
<DIV class=quote><B>以下是引用<I>xueyi</I>在2006-1-1 17:40:44的发言:</B><BR>如果要画三个量xyz分别随uv变化的图像,<BR>你这么定义xyz的表达式是错的,<BR>u,v在这里不是符号变量,<BR>调用f1返回的是一个数值。<BR>而ezsurf需要三个表达式作为输入,才能做出图像。<BR>所以,xyz不过怎么定义,调用ezsurf时必须保证它们为2个变量的表达式<BR></DIV><P>那如果要画这种形式的,有没有什么其它的办法?</P> <P>可以用plot3来分段画试试,<BR></P>
页:
[1]