Revolving a 2D profile around any axis
15 次查看(过去 30 天)
显示 更早的评论
Hello, I'm trying to rotate a curve around the y - axis. The code is under:
figure
% Define our initial profile
t = 0:.01:1;
x = 2*pi*t + 1;
y = sin(2*pi*t) + 2;
plot(x,y);
figure
% We use the cylinder function to rotate and align
% with the z-axis, to produce a 3D solid
[X,Y,Z] = cylinder(y);
surf(X,Y,Z)
The problem is that the cylinder does not count the x coordinates from the 2D profile and only revolves the curve around the z - axis. Can anyone help?
0 个评论
回答(1 个)
Devineni Aslesha
2020-3-26
The rotate function allows you to rotate a curve around any axis. To rotate the curve along y-axis, use the below code.
h = surf(X,Y,Z);
for i = 1:360
rotate(h,[0 1 0], i);
drawnow;
end
For more information, refer the following link.
1 个评论
Ayan
2024-6-26
Hello,
If you have this plot:
t = 0:.01:1;
x = 2*pi*t + 1;
y = sin(2*pi*t) + 2;
plot(x,y);
figure
and want to get a surface plot from an x-y plot, how would I approach this? Essentially if the x axis is goin from 0-1, then revolve the x axis around the y axis and generate a surface plot. How would I go about this?
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Surface and Mesh Plots 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!