generate 3d periodic geometry matlab

5 views (last 30 days)
I would like to generate three dimensional periodoc images for academic pappers. One such image would be randomoly placed elipses inside a cube to represent the propogation of flat cracks inside a matrix. Sililarly randomly placed oblate spheroidsinside a cube to reperesent diffuse porosity in a highly porous medium. I would like to generate an image that resembles the image shown below.
I have a piece of code that does increment this the value ϵ giving the desired loss of stiffness within the matrix material
Thanks in advance

Accepted Answer

Matt J
Matt J on 8 Dec 2022
P=scale(nsidedpoly(1000),[1,2]*0.1);
X=P.Vertices(:,1); Y=P.Vertices(:,2); Z=0*X;
for i=1:30
patch(X+rand,Y+rand,Z+rand,'b','FaceAlpha',0.2);
end
view(3); shg; axis equal
  1 Comment
A Poyser
A Poyser on 8 Dec 2022
Wow awesome, thank you so much. I guess an obvious follow-up question (or three) would be, is it possible to maintain an axis of 0 - 1 on all three axes no-matter what value n is in the expression i = 1:n? Could I also hide the values on the axis while enclosing the area in a cube (as seen in the examples)? Also could I make a nested loop so I can run for i=1:n for several values [5, 10, 50 100] for example?
Thanks again
Alex

Sign in to comment.

More Answers (0)

Tags

Products


Release

R2022b

Community Treasure Hunt

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

Start Hunting!