r = @(u,v) 2 + sin(7.*u + 5.*v);
funx = @(u,v) r(u,v).*cos(u).*sin(v);
funy = @(u,v) r(u,v).*sin(u).*sin(v);
funz = @(u,v) r(u,v).*cos(v);
xshift = 2; yshift = -2;
M = 100 ; N =100 ;
u = linspace(0,2*pi,M) ;
v = linspace(0,pi,N) ;
[U,V] = meshgrid(u,v) ;
X = funx(U,V)-2 ;
Y = funy(U,V)+2 ;
Z = funz(U,V) ;
surf(X,Y,Z)
Best Answer