3D surface plot with thickness

13 views (last 30 days)
Wei Wang
Wei Wang on 4 May 2023
Commented: Wei Wang on 8 May 2023
How to plot surface plot showed in the graph? these surfaces include gyroid, lidinoid, Schwarz P, Schwarz D etc.
A function plot can be use is F(x,y,z)=cos(x)+cos(y)+cos(z).

Answers (1)

chicken vector
chicken vector on 4 May 2023
Edited: chicken vector on 5 May 2023
You can't give thickness to plotted data, but you can plot the outisde surface with isosurface.
Have a look at @darova answer from this question for the gyroid example.
% Lidinoid:
[x, y, z] = meshgrid(-10:0.1:10);
v = .5*(sin(2*x).*cos(y).*sin(z) + ...
sin(2*y).*cos(z).*sin(x) + ...
sin(2*z).*cos(x).*sin(y)) - ...
.5*(cos(2*x).*cos(2*y) + ...
cos(2*y).*cos(2*z) + ...
cos(2*z).*cos(2*x)) + .15;
p = isosurface(x,y,z,v,0);
patch(p,'FaceColor','r','EdgeColor','None')
camlight;
material('Shiny');
axis equal off;
view([1 1 1]);
  1 Comment
Wei Wang
Wei Wang on 8 May 2023
it is not the same as the graph showed above. there is no thickness for the surface, also no rendering.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!