▷Scratch课堂丨模拟物理算法:万有引力、曲线运动,值得您的收藏!

Scratch融合卡通、动画、音效等多媒体的运用和直观拖拽式的编程方式,生动有趣,可以编写各种类型程序,游戏、动画、互动美术、实物模拟、数学模拟等,想象无限。同时蕴含丰富知识,体现现代编程思想,涵盖程序设计、数学、物理、语言、艺术各领域;经过系统学习,编程班的孩子的逻辑思维能力将远远超过一般的同年龄孩子。事实上,Scratch是种“一朝学会,受益终生”的课程。

现在我就将物理只是与程序编程结合起来的scratch算法作品发出来和大家分享一下!
首先是效果图:

是不是比较惊讶?
事实上,行星一直受到恒星对他的引力,为什么能做圆周运动?重力加速度是多大?如何设计脚本?这是我们要考虑的问题
这里我们普及一下概念:

其实初中学过的g就是重力的加速度。
为什么能做圆周运动?

我们将证明步骤省略,有公式g=v^2/r,其中v是行星平抛运动时的初速度(平抛运动的初速度理解为方向与行星和恒心圆心的连线延长线垂直的初速度),r是行星与恒星圆心连线的距离,也就是圆周运动的半径。
我们将行星放在距离恒星r个像素的地方,并给予特定方向的初速度,计算出g,就可以实现圆周运动了!
重力加速度是多大?

我设定小球状态如上图所示,我们利用公式g=v^2/r,计算出g=0.15625px/帧^2
设计脚本!

这两个模块是我们做运动算法的时候都要使用的,这样可实现还要初速度不变化就可以做匀速直线运动,若是初速度变化:

当圈圈碰到行星的时候,行星被引力捕获,获得重力加速度,这个重力加速度我们是事先计算出来的,
利用相似三角形

其中上面几个数据都是可以计算出来的,我们目的要将g分解为水平方向的加速度和竖直方向的加速度

解出来竖直方向的加速度=yg/到角色的距离,竖直方向的加速度=xg/到角色的距离,至此,两个脚本同时运行,最终实现圆周运动!

软件下载安装:

Scratch安装步骤(WINDOWS中)

Scratch在Mac下的安装手册

Scratch3.0样式离线编译器,Clip Team邀请你前来体验!


领导说了!
您点一个
小编的工资涨5毛!

觉得有用就分享出去吧!想要获取更多资讯,请扫码关注吧!么么哒!

              
长按扫码关注
想学习 想咨询 想体验欢迎您添加我的联系方式QQ:1090626553Scratch青儿编程课堂
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

青少儿编程课堂

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值