最新消息:

scratch3.0小问题系列(六)画图因边界导致变形

Scratch 少儿编程 2853浏览 0评论
Scratch3.0小问题系列01

友情提示:视频教程观看时请手动设置清晰度。

scratch3.0小问题系列(六)画图因边界导致变形

 

大家好,我是苏小糖,今天我们玩一玩画笔画笔是个不错的工具,就像Windows系统自带的画图板。我们可以标记角色的移动轨迹,也可以通过一系列计算,绘制自己想要的几何图形。当画图全部就在舞台上的时候,不会有问题,但是当画图要超越舞台边界的时候,问题就来了。对的,一旦超越边界,它就变形了。

 

有的同学说了,你是不是强迫症晚期,为啥要画这么大?我想说,对呀,强迫症啊,旁边有留白,不觉得很别扭么?我们要整整齐齐的把旁边的留白也画上,而且,不能变形。下面我们一起探究,如何解决变形问题。




1

画一个逐步扩大的正方形

设定正方形的四个顶点为(a,0)、(0,a)、(-a,0)、(0,-a),只需要每次把a+1,就可以看到正方形逐步扩大,为了方便查看,每次我们让画笔颜色也+1,这样就得到一个颜色渐变的正方形了。

那么我们设定a从1开始每次自加1,分别100次,200次,300次,400次。运行结果如以下四图。

scratch3.0小问题系列(六)画图因边界导致变形

scratch3.0小问题系列(六)画图因边界导致变形

scratch3.0小问题系列(六)画图因边界导致变形

scratch3.0小问题系列(六)画图因边界导致变形

通过上面的4幅图,我们可以看到循环100次和200次的时候,因为所画图形均在舞台内,没有变形。而300次和400次的时候,图形差不多就好像是从上下方向压扁了一样。如果运行程序的时候,仔细观察可以发现,到最后只是边界在不停闪烁,说明,已经被强制限定了图形的进一步加大。




2

如何解决问题

对于强迫症同学来说,上面画的图形真的不完美。那么怎么解决这个问题呢。很奇葩的解决方法,通过改变角色大小,来扩大限定边界。我们先测试把小猫的大小改到1,系统会默认小猫角色最小值5。这个时候运行会发现,相比大小100的时候,图形被进一步限定了。好像全部缩到了舞台里面。

scratch3.0小问题系列(六)画图因边界导致变形

我们隐约感到,角色的大小会影响画图的边界,于是改角色大小为1000。这个时候发现,小猫角色大小系统设定最大535。那么这个时候再运行程序呢,我们发现,期待的强迫症图形出现了,简直完美。因为舞台边界导致的挤压变形问题解决了。

scratch3.0小问题系列(六)画图因边界导致变形




3

    额外收获

在多次调试的时候发现,颜色可以呈现出波纹状态逐渐扩散的一种景象。于是我们加上重复执行,开启加速模式,得到了下面的这种动画效果。

scratch3.0小问题系列(六)画图因边界导致变形


好滴,最后我们再说一下结论,改变角色大小,可以解决画图因边界导致的变形问题

希望,以上分享对各位有所帮助,转发请注明出处。在使用Scratch的时候,你都有什么小问题呢,可以在留言区留言,我们一起讨论解决吧。

转自公众号:
xtrobot

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