自家花园分享 http://blog.sciencenet.cn/u/zhou9

博文

绘制莲花的scratch程序

已有 6502 次阅读 2019-8-26 10:58 |个人分类:scratch|系统分类:论文交流


绘制莲花的scratch程序


         先看一下程序的最终结果吧

image.png

image.png



    下面是一个花瓣数为11的莲花,第一个花瓣垂直向上。


image.png

    每一个花瓣是由两个完全相反的圆弧组成。

image.png


这里重复执行2次,是画2个圆弧。

每个圆弧重复执行10次,每次右转10度,所以这个圆弧是100度,

第一个圆弧画完之后右转80,100+80=180度,所以第二个圆弧与

第一个圆弧正好相反,而且第一个圆弧的起点正好是第二个圆弧的终点。

 

面向0度时,画笔向上画垂直的直线。

为了保证第一个花瓣垂直向上,应该首先

面向-100/2度。

可以这样理解,假设圆弧是180度,即半圆,则应该首先

面向-180/2度。

image.png

    如果希望花瓣扁平一些,可以每个圆弧重复执行10次,每次右转8度,所以这个圆弧是80度,第一个圆弧画完之后右转100, 保证80+100=180度。画完一个花瓣之后,右转360/m度. 循环m次后,即可得到一个完整的莲花。用不同的尺寸,画一组相同形状的莲花,则图案会更加漂亮。


image.png

        上面的程序中,m为花瓣个数,angle为莲花的角度。第一个莲花的角度为0,则第二个莲花的角度为360/7.  len 决定莲花的大小。

        因为花瓣是10*8度的圆弧,所以要面向angle-80/2方向,以便保证第一个花瓣与该莲花的角度一致。



        结合正多边形的画法,也可以绘制 一个花篮      


        

image.png






https://blog.sciencenet.cn/blog-675615-1195253.html

上一篇:绘制六边形的scratch程序
下一篇:使用scratch中的克隆功能绘图
收藏 IP: 49.74.82.*| 热度|

1 刘炜

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-12-23 17:39

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部