3D surface plot with thickness

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).

Antworten (1)

chicken vector
chicken vector am 4 Mai 2023
Bearbeitet: chicken vector am 5 Mai 2023

0 Stimmen

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 Kommentar

Wei Wang
Wei Wang am 8 Mai 2023
it is not the same as the graph showed above. there is no thickness for the surface, also no rendering.

Melden Sie sich an, um zu kommentieren.

Gefragt:

am 4 Mai 2023

Kommentiert:

am 8 Mai 2023

Community Treasure Hunt

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

Start Hunting!

Translated by