Plot a surface with cross-section matrix
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Good day,
I am looking on how to create a 3D surface directly on matlab (to be converted to igs and exported to Fluent). Currently I have a portion of a missile-like shape and I have the crossections stored in a matrix. The matrix size for the angular values is 576x640, meaning there are 576 cross-sections and 640 points per cross-section. The radial values are stored in a matrix of equal size. The distance vector, or the one that dictates how far is one crossection from the other is of size 1x576. (one value per cross-section). I cannot share the code due to its lenght but hopefully my issue could be explained properly.
I currently need to make a surface out of these matrices, preferably a surface that can later be generated on Ansys or can be exported to Solidworks. Help is much appreciated.
3 Kommentare
AR_Sh
am 25 Okt. 2023
Did you end up finding an appropriate answer? I'm having the same issue but with x-y data and not radial
Akzeptierte Antwort
Bruno Luong
am 2 Sep. 2020
Bearbeitet: Bruno Luong
am 3 Sep. 2020
theta = your_angle
r = your_radial
z = your_z
% wrap around to close the azimuthal patch
theta = theta(:,[1:end 1]);
r = r(:,[1:end 1]);
x = r.*cos(theta);
y = r.*sin(theta);
z = repmat(z(:),1,size(x,2));
surf(x,y,z)
1 Kommentar
Asad (Mehrzad) Khoddam
am 2 Sep. 2020
Bearbeitet: Asad (Mehrzad) Khoddam
am 2 Sep. 2020
The coordinates are not polar.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Line Plots finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!