How to achieve real-time graphics in MATLAB?

18 views (last 30 days)
I created a ball using MATLAB graphics functions. This ball is supposed to follow equations of motion and fall from certain height. The data I generate follows the laws of motion but the ball does not seem( or it looks too slow) to be falling with the speed that we see in real life. It is like if I am seeing this falling object in slow motion. Is it possible to make MATLAB show us the ball going down with exactly the same look and speed as we normally see in real life?

Accepted Answer

Thiago Henrique Gomes Lobato
If you plot your ball in matlab and update the plots there it will never be exactly as fast as a real life example because you have a plotting processing time. If you know the processing time and just skip some frames you may get a reasonable result although a not so smooth one. A solution is to use the videowriter function which has a framing rate that allows you to exactly calculate the time. An example code adpated from the matlab example:
A = rand(300);
v = VideoWriter('newfile.avi');
for idx=1:60
The default framerate is 30, so if I have 60 images/plots, the duration of the video will be 2 s. In this way you can exactly calculate how much samples you need and the ration of time needed to end up with a real time plot animation.

More Answers (2)

Pavel Osipov
Pavel Osipov on 2 Feb 2020
Hello, SYED IMTIAZ ALI SHAH. Please tell me if your ball is moving on the screen. Or do you see a static image? There is a demo in MATLAB - Bouncing Ball. Look. Good luck!

Sign in to comment.

Pavel Osipov
Pavel Osipov on 2 Feb 2020
See Matlab help topic: Simulation of a Bouncing Ball.
At Simulink: sldemo_bounce
Good Bye.


Find more on Startup and Shutdown 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!

Translated by