processing代码_[小记]logo、turtle、Processing、用运动的思想看待几何图形

eec6ec58d50bfde56a86db6fb2b064cb.png
小学数学这样教

从这本书里看到,要从运动的观点看待几何图形。

logo语言

教学经验超过10年的小学信息技术老师对于logo一定不陌生,以前小学教材中就有logo,或者他们小学时候学过logo。

logo语言是西蒙·帕佩特发明的。在《因计算而强大》一书中,对logo语言的来龙去脉,设计初衷有详细的介绍。logo是学生进行探索的一个安全的环境。

潮流总在变,现在python火了,python中有个经典的内置模块turtle,是logo语言的python简易实现。所以,在教python的时候,是可以继承当年logo语言的案例、教学方法的。虽然语言变了,但是编程的基本概念没有变化。

logo语言远不是教学的玩具这么简单,实际上logo语言作为lisp的方言很强大,甚至不弱于python。netlogo和starlogo是重要的科研工具,可以模拟对病毒传染等建模。

Processing

Processing是一门强大的面向艺术的编程语言。自从2001年诞生后,对软件编程在视觉艺术领域的应用和技术的艺术表达能力。许多学生、艺术家、设计师、研究人员和爱好者基于学习Processing并用Processing搭建原型。

Processing的绘图能力很强大,可以做出各种酷炫的粒子系统、视觉特效。提供了简单易用的API,可以方便的设计图像。抽象程度比turtle高,衍生出了processing.py、p5.js、pgzero、Arduino等项目。

提供了易用的脚手架:

void setup(){
  // 程序初始化的代码
}

void loop(){
  // 游戏循环
}

这个结构在很多开源项目中都看得到,大大简化制作动画代码的理解难度。

画正方形

turtle画正方形可以是:

for i in range(4):
    fd(100)
    rt(90)

而用processing更简单:

void setup(){
  rect(0, 0, 100, 100) // 左上角(0,0),宽100
}

两种方法都可以绘制正方形,但是背后的思想不同。turtle是基于运动的思想看待集合图形,而processing则是静态的观点。小朋友可以轻松的把自己想象成小乌龟,绘制出正方形,但是如果没有学过正方形的概念,直接用rect就难的多。

1b4752da393941c55a2395bee35458b3.png
运动与静止

Processing提供了丰富的函数,turtle可以清晰的观察图形形成的过程。如果我们按照过程来看待图形的绘制,对于基本几何概念可能会有更好的领悟。

但是,Processing在绘制动画方面更有优势,所以更方便编写动画演示程序。turtle自身虽然绘制过程可见,但是绘制复杂的图形比较难;而且processing对交互的支持远不是turtle能比的。

862a82de1c345a4aae5c0489bdc0ac22.png
圆柱形成过程

这个动画效果用processing实现就比较容易,turtle实现的话就很难。

dc01aa42d0313a17af7265d002b147ac.png
线动成面
dffc1fa997cb708aa599c0239a6b3a76.png
平行四边的形成

从这个角度,就很容易理解,等底同高的长方形和平行四边面积相等。

turtle画正方形,基本上每次如果回到最初的状态,还原,可以方便进行下一步,Processing中,初级程序不存在这个问题。

画一个图形,并不是为了画图形而画图形,背后要传达的东西也很重要,当然小朋友自己创作又是另外一回事。

当然,小学数学思维中的运动思想我也是一知半解,欢迎大家留言讨论。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值