zoukankan      html  css  js  c++  java
  • 如何绘制多样化的太阳花?

    今天,作为Python新手的我来分享一下我经过初步学习后的一个尝试:

    如何绘制多样化的太阳花?

    我们预设的太阳花模型是多瓣的(花瓣数量可以根据自己的喜好通过改变代码中的转换角度值来确定),然后在一个建立好的窗口中绘画多个不同的太阳花(颜色,大小,位置不同),我画了三个哈哈哈~

    工具:

     

    1. Python语言包

     

    2. win7系统

    一、准备阶段:

    新建一个记事本文本(右键找到新建—>记事本),

    下载好python(我是用的是3.7.2版本)

     

    二、编程:

    1.编写代码: 

    首先贴出自己的代码(附带注释哦~):

    from turtle import*
    color('pink','yellow')             #粉笔画框,黄色填充
    pensize(2)                           #建立画笔大小
    speed(10)                           #绘画速度
    i=0
    setup(800,600,500,500)     #建立一个窗口


    begin_fill()                          #开始绘画/绘画第一朵太阳花
    while 1:
    forward(300)
    left(170)                             #设置太阳花角度(设置花瓣数)
    if abs(pos())<1:
    break

    end_fill()                            #第一朵花画好了(黄花)
    penup()                             #抬起画笔
    seth(-100)                         #开始移动画笔,向角度-100度的方向
    fd(80)                                #移动80
    pendown()                        #放下画笔
    color('black','green')           #黑笔画框,绿色填充


    begin_fill()                         #开始绘画第二朵太阳花
    for i in range(16):             #根据实际情况设置循环次数
    forward(200)
    right(150)                          #设置太阳花角度(设置花瓣数)
    end_fill()                            #第二朵花画好了(绿花)
    penup()
    seth(60)
    fd(80)
    pendown()
    color('green','red')             #绿笔画框,红色填充


    begin_fill()                         #开始绘画/绘画第三朵太阳花
    for i in range(100):            #根据实际情况设置循环次数
    forward(400)
    left(175)                             #设置太阳花角度(设置花瓣数)
    end_fill()                            #第三朵花画好了(红花)
    done()                               #运行模型结束后不会关闭窗口

    最后更改后缀后放入IDLE环境下的效果是:

    炫不炫酷呢??其实我觉得丑了点(    动图所设置的画笔速度有点慢,你们在设置的时候可以尝试更改画笔速度speed()来实现快速绘图!!

    那么要如何开始呢?

    如果你也是小白,那么请接着看下去哟~

    首先,在记事本中建立画图的基本框架,具体的结构代码如下界面,同时,如下图:

    然后就可以开始编写画图啦~

     

    然后保存!

    然后更改记事本后缀为.py

    查看效果(运行):

    拖动记事本到python中,既可以完成运行~

    好啦,今天的分享就到这里!

  • 相关阅读:
    Codeforces Round #632 (Div. 2)
    Codeforces Round #630 (Div. 2)
    多项式全家桶
    Educational Codeforces Round 84 (Rated for Div. 2)
    【cf1186E】E. Vus the Cossack and a Field(找规律+递归)
    [CF847B] Preparing for Merge Sort
    [CF858D] Polycarp's phone book
    [CF911D] Inversion Counting
    [CF938C] Constructing Tests
    [CF960C] Subsequence Counting
  • 原文地址:https://www.cnblogs.com/iconangle/p/10524170.html
Copyright © 2011-2022 走看看