python海龟作图红绿灯_海龟作图—用Python绘图

python海龟作图红绿灯_海龟作图—用Python绘图一、关于Turtle“turtle是一个简单的绘图工具。它提供了一个海龟,你可以把它理解为一个机器人,只听得懂有限的指令”操纵海龟绘图有着许多的命令,这些命令可以划分为两种:一种为运动命令,一种为画笔控制命令。二、运动命令forward(degree)#向前移动距离degree代表距离backward(degree)#向后移动距离degree代表距离right(degree)#向右移动多少度lef…

大家好,又见面了,我是你们的朋友全栈君。

一、关于Turtle

“turtle是一个简单的绘图工具。它提供了一个海龟,你可以把它理解为一个机器人,只听得懂有限的指令”

操纵海龟绘图有着许多的命令,这些命令可以划分为两种:一种为运动命令,一种为画笔控制命令。

二、运动命令

forward(degree)

#向前移动距离degree代表距离

backward(degree)

#向后移动距离degree代表距离

right(degree)

#向右移动多少度

left(degree)

#向左移动多少度

goto(x,y)

#将画笔移动到坐标为x,y的位置

speed(speed)

#画笔绘制的速度范围[0,10]整数

三、画笔控制命令

down()

画笔落下,移动时绘制图形

up()

画笔抬起,移动时不绘制图形

setheading(degree)

海龟朝向,degree代表角度

reset()

恢复所有设置

pensize(width)

画笔的宽度

pencolor(colorstring)

画笔的颜色

fillcolor(colorstring)

绘制图形的填充颜色

fill(True)

fill(False)

四、程序体验

1.奥运五环

代码:

#绘制奥运五环

import turtle

turtle.width(15) #画笔粗细

turtle.color(“blue”)

turtle.circle(50)

turtle.penup()

turtle.goto(120,0)

turtle.down()

turtle.color(“black”)

turtle.circle(50)

turtle.penup()

turtle.goto(240,0)

turtle.down()

turtle.color(“red”)

turtle.circle(50)

turtle.penup()

turtle.goto(60,-50)

turtle.down()

turtle.color(“yellow”)

turtle.circle(50)

turtle.penup()

turtle.goto(180,-50)

turtle.down()

turtle.color(“green”)

turtle.circle(50)

显示效果:

20200426120639090354.png

2.使用递归,可以绘制出非常复杂的图形。例如,下面的代码可以绘制一棵分型树:

from turtle import *

# 设置色彩模式是RGB:

colormode(255)

lt(90)

lv = 14

l = 120

s = 45

width(lv)

# 初始化RGB颜色:

r = 0

g = 0

b = 0

pencolor(r, g, b)

penup()

bk(l)

pendown()

fd(l)

def draw_tree(l, level):

global r, g, b

# save the current pen width

w = width()

# narrow the pen width

width(w * 3.0 / 4.0)

# set color:

r = r + 1

g = g + 2

b = b + 3

pencolor(r % 200, g % 200, b % 200)

l = 3.0 / 4.0 * l

lt(s)

fd(l)

if level < lv:

draw_tree(l, level + 1)

bk(l)

rt(2 * s)

fd(l)

if level < lv:

draw_tree(l, level + 1)

bk(l)

lt(s)

# restore the previous pen width

width(w)

speed(“fastest”)

draw_tree(l, 4)

done()

显示效果:执行上述程序需要花费一定的时间,最后的效果如下

20200426120639485877.png

原文:https://www.cnblogs.com/Fairy-02-11/p/12778477.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/154091.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Java三大器之拦截器(Interceptor)的实现原理及代码示例「建议收藏」

    Java三大器之拦截器(Interceptor)的实现原理及代码示例「建议收藏」过滤器与拦截器的区别过滤器可以简单的理解为“取你所想取”,过滤器关注的是web请求;拦截器可以简单的理解为“拒你所想拒”,拦截器关注的是方法调用,比如拦截敏感词汇。4.1,拦截器是基于java反射机制来实现的,而过滤器是基于函数回调来实现的。(有人说,拦截器是基于动态代理来实现的)4.2,拦截器不依赖servlet容器,过滤器依赖于servlet容器。4.3,拦截器只对Action起作用,过滤器可以对所有请求起作用。4.4,拦截器可以访问Action上下文和值栈中的对象,过滤器不能。4

    2022年6月4日
    94
  • 【sql修改字段类型大小】

    【sql修改字段类型大小】之前在百度上面查询到修改字段的语句:alerttable表名altercolumn列名类型【大小】nullornotnull;但是执行完这句话后发现报错后来修改一下语句altertable表名modify(列名类型【大小】);ok,编译通过。注意:1.()内不能还有column关键字2.()内不能含有nullornotnull关键字使用第二种修改方式可以顺利执行成功。…

    2022年6月3日
    41
  • 【小程序】手把手带你完成微信小程序开发实践

    【小程序】手把手带你完成微信小程序开发实践帐号相关流程注册范围企业政府媒体其他组织换句话讲就是不让个人开发者注册。:)填写企业信息不能使用和之前的公众号账户相同的邮箱,也就是说小程序是和微信公众号一个层级的。填写公司机构信息,对公账户信息绑定管理员微信企业认证公司对公账户对微信进行打款账户自动验证后,自动认证通过,并将认证资金退回公司对公账户,费用在1元内随机小程序发布流程开发实践这次的demo项目为农历和公历的转换器,重在体验

    2022年9月22日
    0
  • python开发环境搭建,pycharm安装运行[通俗易懂]

    python开发环境搭建,pycharm安装运行[通俗易懂]一、python安装指南首先我们安装python1、进入官方网站(网址:https://www.python.org/downloads),根据自己的需求选择python的版本,这里我是选择的Python3.7.3,点击DownloadPython3.7.3按钮2、下载完成后点击安装文件包3、双击EXE文件进行安装,如下…

    2022年8月28日
    0
  • VBScript经典教程以及函数手册

    VBScript经典教程以及函数手册   Vbs经典教程:   https://www.jb51.net/article/53280.htm   Vbs函数手册:   https://www.jb51.net/shouce/vbs/

    2022年6月29日
    24
  • mac安装navicat 激活码【中文破解版】

    (mac安装navicat 激活码)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html1STL5S9V8F-eyJsaWN…

    2022年3月27日
    62

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号