The laws for rotation are probably wrong (I made them up actually), but that's not what this file is about. Shown here is a very simple code that creates a nice animation, which can be quickly edited to suit anyone's needs.
The parameters are ball radius, gravity, initial velocity in the Y direction, initial velocity in the X direction, vertical speed conservation (%), horizontal speed conservation (%) and initial angular velocity.
Please note that the ball may stop moving at different locations for different trials, even with the same input parameters. This is due to the slight randomization of the deformations of the ball and the ground, which could lead to the ball getting "stuck" to the ground at times and stopping there. This is normal and deliberate.
Set the vertical speed conservation as a value larger than 100 (e.g. 130) for a small bonus ;)
Husam Aldahiyat (2021). Bouncing Smiley Face (https://www.mathworks.com/matlabcentral/fileexchange/23081-bouncing-smiley-face), MATLAB Central File Exchange. Retrieved .
Inspired by: Bouncing Ball Physics
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Create scripts with code, output, and formatted text in a single executable document.
nice work
Yes, great program Husam!
Great program.
The appropriate review would just be this.
8-)
Wow, too easy. Thanks.
One solution to the dependence on the Image Processing Toolbox... you could plot a square surface object, then texture map the smiley-face image onto it. Then you can simply rotate the surface object yourself, without a need for the IPT.
Ah, sorry about that. Will send an update that brings notice to this. Also, you're to be mentioned as inspiration in the code. Forgot to include that in before.
As for getting around the problem, I don't think there's a simple way to do it, so anyone without the Image Processing Toolbox should comment out lines 278 and 282. The result is missing out on the smiley face bit altogether.
Looks very nice. I was disappointed that no mention was made of the requirements for use. NO image processing toolbox, no go.
??? Undefined function or method 'imrotate' for input arguments of type 'uint8'.
Error in ==> bb2>go at 282
iii=image(imrotate(uint8(flipud(am)),ll,'bilinear','crop'),'xdata',[ccc2-r/2,ccc2+r/2],'ydata',[ccc-r/2
ccc+r/2]);
??? Error while evaluating uicontrol Callback