首页 > 编程语言 > 详细

海龟作图---用Python绘图

时间:2020-04-26 12:06:38      阅读:160      评论:0      收藏:0      [点我收藏+]
一、关于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)

显示效果:
技术分享图片
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()

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

技术分享图片

 

 

海龟作图---用Python绘图

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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!