Creating plans and 3D shapes with x,y,z coordinates.

2 Ansichten (letzte 30 Tage)
Raphael Krier
Raphael Krier am 8 Mär. 2021
Kommentiert: KALYAN ACHARJYA am 10 Mär. 2021
Hi everyone,
I am trying to generate different 3D shapes with matlab. The idea is to represent a coral reef (picture attached). I could like the edge of the reef to have a concave shape. To get this shape I am using the elipse equation:
t = linspace(0,pi);
xe = 4 + 4*cos(t);
yconv = 5 + 5*sin(t);
plot(yconv,xe)
axis equal
I am trying to think of a way to do it but I am not sure how to start it.
Any ideas would be great. Thanks a lot
Raphael

Akzeptierte Antwort

KALYAN ACHARJYA
KALYAN ACHARJYA am 9 Mär. 2021
There may be subjective related toolboox/CAD tool to design such surfaces. You may try with surf plot, here on eexample. Here you have to find the values ​​of the z-direction array elements, such that it reflects the same plot.
a=1:10;
b=1:10;
c=[ones(4,10);1.5*ones(2,10);2*ones(4,10)];
% Add step in c data
surf(a,b,c);
grid on;
  2 Kommentare
Raphael Krier
Raphael Krier am 10 Mär. 2021
Hi Kalyan,
Thanks for your reply.
I managed to create the bathymetry I wanted. I first created a vector containing the y coordinates (dy=1m). I generated a vector containing the desired x coordinate (distance of each contour from the x0 origine for a given y). So for each contour I have two vectors y and corresponding x coordinates with dy=1m.
Then I used trigonometry to obtain z coodinates of each contour line for a given y (because I wanted a given gradient for each platform).
Finaly I used interp1 to interpolate the cross section on a dx=1m interval. Using a loop I obtained the cross section (x,z) for each y coordinates and stored them in a matrix.
Just out of curiosity, do you have a link to the CAD toolbox?
Thanks again,
Raphael

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by