python-turtle绘图

Python48

一、绘图命令

操纵海龟绘图有很多命令,可以划分为三种:画笔运动命令、画笔控制命令、全局控制命令

画笔运动命令

命令 说明 turtle.forward(distance) 向当前画笔方向移动distance像素长度 turtle.backward(distance) 向当前画笔相反方向移动distance像素长度 turtle.right(degree) 顺时针移动degree° turtle.left(degree) 逆时针移动degree° turtle.pendown() 移动时绘制图形,缺少参数时也为绘制 turtle.goto(x,y) 将画笔移动到坐标为(x,y)的位置 turtle.penup() 提起画笔,不绘制图形,用于另起一个地方绘制 turtle.circle() 画圆,半径为正(负),表示圆心在画笔的左边(右边)画圆 setx() 将当前x轴移动到指定位置 sety() 将当前y轴移动到指定位置 setheading(angle) 设置当前朝向为angle的角度 home() 设置当前画笔位置为原点,朝向向东 °

画笔控制命令

命令 说明 turtle.fillcolor(colorstring) 绘制图形填充颜色 turtle.color(color1, color2) 同时设置 pencolor = color1,fillcolor = color2 turtle.filling() 返回当前是否在填充状态 turtle.begin_fill() 准备开始填充图形 turtle.end_fill() 填充完成 turtle.hideturtle() 隐藏画笔的turtle形状 turtle.showturtle() 显示画笔的turtle形状

全局控制命令

命令 说明 turtle.clear() 清空turtle窗口,但是turtle的位置和状态不会发生变化 turtle.reset() 清空窗口,重置turtle状态为起始状态 turtle.undo() 撤销上一个turtle动作 turtle.isvisible() 返回当前turtle是否可见 stamp() 复制当前图形 turtle.write(s[,font = ("font_name",font_size,"font_type")]) 写文本,s为文本内容,font是字体参数,分别是字体名称,字体大小和类型,font和font的参数都是可选选项

案例

案例一

  • 熟悉turtle坐标体系
# 导入 turtle 模块
import turtle as t

t.goto(100,100)
t.goto(100,-100)
t.goto(-100,-100)
t.goto(-100,100)
t.goto(0,0)
t.done()

python-turtle绘图

案例二

  • 画笔自动绘图
# 用for循环初步实现画笔自动绘图
import turtle as t

for i in range(20):
    # 画笔向前移动
    t.forward(100 + 10 * i)
    # 顺时针旋转120°
    t.right(120)
t.done()

python-turtle绘图

案例三

  • 显示画笔运动印记
# 用for循环初步实现画笔自动绘图并显示其印记
import turtle as t

for i in range(20):
    # 画笔向前移动
    t.forward(100 + 10 * i)
    #t.shape("turtle")  # 海龟
    #t.shape("circle")  # 圆
    t.shape("square")  # 正方形
    # 打印turtle印记
    t.stamp()
    # 顺时针旋转60°
    t.right(60)
t.done()

python-turtle绘图

案例四

  • 画笔及填充控制
# 绘制金光闪闪的太阳
import turtle as t

# 为小数时表示占据电脑屏幕的比例
t.setup(width = 0.6, height = 0.6)
# t.pencolor("red")
t.color("red", "yellow")
t.begin_fill()
# 控制绘图时间
t.speed(20)
while True:
    t.forward(200)
    t.left(170)
    # print(t.pos())
    if abs(t.pos()) < 1:
        break
t.end_fill()
t.write("&#x4E00;&#x9897;&#x91D1;&#x5149;&#x95EA;&#x95EA;&#x7684;&#x592A;&#x9633;", align = "right", font = ("Arial", 20, "normal"))
t.done()

python-turtle绘图

案例五

  • 画圆形类的图
# &#x7C89;&#x8272;&#x7684;&#x7231;&#x5FC3;
import turtle as t

t.setup(800,800)
t.speed(8)
# &#x8BBE;&#x7F6E;&#x753B;&#x7B14;&#x5927;&#x5C0F;
t.pensize(10)
t.hideturtle()
t.pencolor("pink")
t.left(45)
t.forward(80)
t.circle(35,210)
t.right(150)
t.circle(35,210)
t.forward(80)
t.done()

python-turtle绘图

Original: https://www.cnblogs.com/L-hua/p/15412536.html
Author: L-L
Title: python-turtle绘图