我们都知道火是物质燃烧时伴随的现象,但你是否还想对火探个究竟,为什么气体燃烧的火焰是蓝色而木头是橘红色?为什么火焰总是晃动飘渺?
![](https://adatech-1256165843.cos.ap-chengdu.myqcloud.com/20181017211950.png)
化学能解释燃烧的实质,但放光放热却是物理现象。当物质充分燃烧时,比如煤气、火把或蜡烛火焰的底部,热量激发电子跃迁放出淡蓝色的光,也就是量子力学。当燃料不纯或是未能充分燃烧时,比如木头、煤炭或是蜡烛火焰的顶端仍然会有部分蓝火。但你看不到,因为烟把它遮住了。你只能看到红色火焰。
![](https://adatech-1256165843.cos.ap-chengdu.myqcloud.com/20181017212057.png)
那为什么热的物体会发光?辐射告诉我们所有的物体在不同的温度下,会辐射不同频率的光。但你看不到你的小伙伴发光,是因为人体温度太低不能辐射可见光 ,我们辐射红外线。但岩浆、热铁块和煤烟,都有足够的温度放出橘红色的光。
![](https://adatech-1256165843.cos.ap-chengdu.myqcloud.com/20181017212119.png)
火焰飘忽的原因是地球向下扯的重力。重力使得热空气上升,空气的对流造成了火焰的形状。如果你在零重力的环境中划亮一根火柴,火焰会是球形。没有重力的影响 火焰会向各个方向延伸。
![](https://adatech-1256165843.cos.ap-chengdu.myqcloud.com/20181017212150.png)
了解了火焰形成的背景。我们就来用Scratch做一把火吧!
我们先来看一下游戏的整体效果:
![](https://adatech-1256165843.cos.ap-chengdu.myqcloud.com/什么是火.gif)
## 设置游戏角色
首先,我们新建一个Scratch项目,设置一个存黑色的背景。我们选择一个蜡烛作为燃烧物质。
![](https://adatech-1256165843.cos.ap-chengdu.myqcloud.com/20181017212248.png)
## 制作火焰粒子
从前面的内容我们知道,火焰是由于燃烧物散发粒子形成的。因此,我们新增一个红色的粒子角色。然后,我们使用clone积木复制出很多个粒子。
![](https://adatech-1256165843.cos.ap-chengdu.myqcloud.com/20181017212304.png)
在没有重力的影响下,粒子应该散播成一个圆形,因此,我们改变粒子的位置,让它位于一个圆形里。这里注意,我们使用了一个数学公式:
```
圆点坐标:(x0,y0)
半径:r
角度:a0
则圆上任一点为:(x1,y1)
x1 = x0 + r * cos(ao * 3.14 /180 )
y1 = y0 + r * sin(ao * 3.14 /180 )
```
## 火焰受重力影响飞起来
我们新增一个重力变量,值在0~9.8之间。粒子在初始化好后会根据重力的不同飞起来,从而形成火焰的效果。
![](https://adatech-1256165843.cos.ap-chengdu.myqcloud.com/20181017212322.png)
完整的项目可以参照:
https://kada.163.com/project/1304620-1382044.htm
## 蓝色火焰
火焰的颜色是燃烧物质的燃烧层度决定的。因此,我们再定义一个燃烧度变量,值在0~100之间。粒子的颜色会根据燃烧度变化。
我们的火焰就完成啦,火焰会根据重力和燃烧度发生变化,是不是很酷?科学很有趣,小朋友们想知道其他科学现象也可以跟阿达老师说哦!
**阿达老师-孩子身边的编程专家**
*完整课程请关注阿达老师,主页里有完整的课程目录和观看地址*
- 空白目录
- 8.21 做自媒体我学到了什么
- scratch技巧分享系列-调试技巧
- 8.23 论scratch的缺陷
- 9.4 孩子为什么要学编程
- 9.4 好榜样
- 9.12 python a-z
- 开发网页很难吗?
- 9.14 用python识别微表情
- 9.14 todo,给孩子搭建一个自己的网站吧
- 9.16 scratch模拟台风
- 9.17 python好文分享-列表详解
- 9.17 台风怎么形成的,阿达老师做给你
- 9.18 阿达老师科学课-什么是生物
- 9.18 进位加法怎么做?阿达老师用Scratch教给你
- 9.19 树叶为什么会变黄?和阿达老师一起看下
- 9.19 用Scratch做100以内的减法
- 9.19 小草和山羊的斗智斗勇
- 9.19习大大主持开幕的人工智能大会讲了啥
- 9.24 中秋节的月亮为什么那么圆
- 9.27 编程还可以写歌?你没看错
- 10.10
- 10.11 用编程玩物理-什么是引力
- 10.16 jupyter使用
- 10.17 什么是火
- 1024 长度换算
- 你会叠飞机吗
- 和孩子们一起做绘本-沙漠版小红帽
- 一分钟学编程系列-下雪啦
- 一分钟学编程系列-光合作用
- 一分钟学编程系列-挂满礼物的圣诞树
- 一分钟学编程系列-太阳系里的星球(一)
- 一分钟学编程系列-太阳系里的星球(二)
- 为什么学生不喜欢上学(二)-事实性知识的重要性
- 为什么学生不喜欢上学(三)-为什么学生能记住电视里的所有细节, 却记不住我们告诉他的任何知识?
- 为什么学生不喜欢上学(四)- 抽象概念为什么这么难
- 一分钟学编程计划-圣诞节的礼物派对
- 一分钟学编程系列-火星营救(一)
- 为什么孩子不喜欢上学(五)- 题海战术有用吗
- 为什么孩子不喜欢上学(六)- 思考的秘诀是什么