3D surface plot with thickness

13 次查看(过去 30 天)
Wei Wang
Wei Wang 2023-5-4
评论: Wei Wang 2023-5-8
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).

回答(1 个)

chicken vector
chicken vector 2023-5-4
编辑:chicken vector 2023-5-5
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 个评论
Wei Wang
Wei Wang 2023-5-8
it is not the same as the graph showed above. there is no thickness for the surface, also no rendering.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Surface and Mesh Plots 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by