最新消息:码丁实验室,一站式儿童编程学习产品,寻地方代理合作共赢,微信联系:leon121393608。

Scratch教程:心形曲线之绘制历程

Scratch 少儿编程 5009浏览 0评论

码丁实验室,一站式儿童编程学习产品,寻地方代理合作共赢,微信联系:leon121393608。

Scratch是一个图形化的编程语言,在语言中提供了一些函数用于进行数学计算。但相比其它语言,Scratch中提供的函数少一些,在进行一些数学计算时,会遇到小小的麻烦。

心形曲线之绘制历程

平方容易计算,但作者研究了一下Scratch中的函数积木,发现Scratch并不像其它的语言那样提供了非整数次方的计算方法,无法直接计算1/3次方。

那该怎么办?

如何计算函数,进而绘制心形曲线了呢?

心形曲线之绘制历程
 

通过一些数学的分析,作者发现这个非整数的次方是可以用Scratch的函数积木通过组合得到的,下面进行一点数学方面的推导。

心形曲线之绘制历程

心形曲线之绘制历程

心形曲线之绘制历程

 最终程序如下:

心形曲线之绘制历程

其中zoom表示放大倍数,xstep表示x增加的步长。由于心形是上下两部分组成的,为避免重复的程序,使用了一个自定义积木块用于画半个曲线。当参数d等于1时,绘制a+b部分,当参数d等于-1时,绘制a-b部分。

 

自定义积木块定义如下:

心形曲线之绘制历程

最后,我们终于得到了漂亮的心形曲线。

心形曲线之绘制历程

 

 

分析

心形曲线之绘制历程

2 、大家可以复习一下对数。对数的目的就是减少计算的难度,将乘法除法降为加减法,将次方降为乘方计算。我们的实例中,就是应用对数的这种功能,将次方的计算降低为乘法计算的。

3、程序中使用的是以自然对数为底的lnexp函数,同样也可以使用以10为底的log10^函数完成相同的计算。

 

总结

大家可以看到,我们用函数的组合方式,最终完成了公式的计算,实现了绘制心形曲线的旅程。

 

参考资料及数学基础

1幂函数,

https://baike.baidu.com/item/%E5%B9%82%E5%87%BD%E6%95%B0/6013227?fr=aladdin

2对数,

https://baike.baidu.com/item/%E5%AF%B9%E6%95%B0

您必须 登录 才能发表评论!