Plot a rolling disk
5 views (last 30 days)
Show older comments
1.1. Write MATLAB Script to animate the motion of the rolling disk for two complete rotations, showing (as a trace) the trajectory of the point on the rim. Take: radius of the disk equal to 10 units, radius of the point is also equal to 10 units. An example is presented below.
1.2 Produce a static plot for your system, showing the rim point's speed using the "quiver" command. An example is presented below.
r=10;y=10;
figure
t=0:pi/64/pi;
th = 0:pi/50:2*pi;
yline(0)
hold on
for x=-128:4:0
xp=r*cos(th)+x;
yp=r*sin(th)+y;
plot(xp,yp)
pause(0.1)
end
axis([-140 10 -40 60])
set(gca,'xtick',[-120:20:0])
set(gca,'ytick',[-50:10:70])
hold off`
3 Comments
Geoff Hayes
on 16 Apr 2021
Abhishek - what have you tried so far? This looks like homework, so please discuss what you have attempted (showing code where necessary) and ask a specific question about what you don't understand or what errors you are observing with your code.
Answers (1)
Image Analyst
on 16 Apr 2021
Use a line style that places markers at each point, like 'b.-':
plot(xp, yp, 'b.-', 'MarkerSize', 15, 'LineWidth', 1)
2 Comments
Image Analyst
on 16 Apr 2021
Then get rid of the dot and lot short line segments using plot() or line() (like tick marks along the curved line). You just need to determine the endpoints of the line but that should be easy for you.
See Also
Categories
Find more on Animation in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!