isosurface in cylindrical coordinates

Hi.
How can I plot a 3D surface of the function F(r, theta,z) with 'isosurface'? The cylindrical coordinates are r, theta and z (r is the radius, theta is the angle and z is the axial coordinate)?
A million thanks for your help

 采纳的回答

darova
darova 2021-2-4
编辑:darova 2021-2-4
Use isosurface normally
[f,v] = isosurface(R,THETA,Z,F,isovalue); % returns faces and vertices
Convert cylindrical coordinates into cartesian
x = v(:,1).*cos(v(:,2));
y = v(:,1).*sin(v(:,2));
z = v(:,3);
Use patch to plot
patch('Faces',f,'Vertices',[x y z])

更多回答(0 个)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by