前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python海龟作图红绿灯_海龟作图—用Python绘图

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

作者头像
全栈程序员站长
发布2022-09-07 16:14:17
9550
发布2022-09-07 16:14:17
举报
文章被收录于专栏:全栈程序员必看

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

一、关于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
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
20200426120639485877.png

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

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

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档