Azzera filtri
Azzera filtri

How to Revolve a 2D Profile and Make it's 3D Plot

10 visualizzazioni (ultimi 30 giorni)
Hello, i am trying to figure out how to revolve this profile around any axis (lets assume x=35) and make the plot in 3D. I found a really good solution here (https://www.mathworks.com/matlabcentral/answers/522502-how-can-i-revolve-a-2d-plot-by-2pi-around-an-axis-to-make-a-3d-surface-plot) but i am having trouble applying to this simple code
x = [82,80,65,38,82]
y = [82,54,36,94,82]
plot(x,y)

Risposta accettata

mark li
mark li il 12 Apr 2022
This is a example:
x = [82,80,65,38,82];
y = [82,54,36,94,82];
x_zero = 35;
theta = linspace(0,2*pi,100);
X = [];
Y = [];
Z = [];
for i = 1 : length(x)
X_new = sin(theta)*(x(i)-x_zero)+x_zero;
Y_new = cos(theta)*(x(i)-x_zero)+x_zero;
Z_new = y(i)*ones(1,100);
X = [X ; X_new];
Y = [Y ; Y_new];
Z = [Z ; Z_new];
end
surface(X, Y , Z)
You may modify x and y, and the function surface may not be appropriate!

Più risposte (0)

Prodotti


Release

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by