Python------绘图Turtle库

Python------Turtle绘图库

_ turtle库是一个点线面的简单图形库,能够完成一些简单的几何图形绘制。就像一个小乌龟,根据一组函数指令的控制,在他爬行的路径上绘制出图形。利用turtle库可以绘制出许多好玩的图形。接下来让我们详细了解一下吧_

掌握三种命令:
画笔运动命令意 义
turtle.forward()向当前画笔方向移动多少像素
turtle.backward()向当前画笔相反方向移动多少像素
turtle.right()顺时针旋转多少度
turtle.left()逆时针旋转多少度
turtle.pendown()移动时绘制图形,不提笔
turtle.goto(x,y)将画笔移动到坐标(x,y)处
turtle.penup()移动时不绘制图形,提笔
turtle.speed(speed)画笔绘制图形的速度范围[0,10]整数
turtle.circle()画圆,半径为正(负),表示圆心在画笔的左边(右边)画圆

实例说明:

_绘制蝴蝶结▷◁ _


import turtle as t #导入turtle库
#注意画笔的最初位置在(0,0)
t.goto(100,100)
t.goto(100,-100)
t.goto(-100,100)
t.goto(-100,-100)
t.goto(0,0)
绘制冰激凌
import turtle as t
t.bgcolor("pink")
t.pencolor("white")
t.left(90)
t.penup()
t.goto(-250,0)
t.pendown()
t.pensize(10)
t.circle(-100,90)
t.left(90)
t.circle(-150,180)
t.left(90)
t.circle(-100,90)
t.goto(0,-400)
t.goto(-250,0)
t.goto(250,0)
t.penup()
t.goto(0,0)

在这里插入图片描述

画笔控制命令:

画笔控制命令意 义
turtle.pencolor()画笔颜色
turtle.pensize()画笔宽度(绘制图形时的笔画粗细)
turtle.color(color1, color2)同时设置画笔颜色pencolor= color1,填充颜色fillcolor = color2
turtle.filling()返回当前是否在填充状态
turtle.begin_fill()准备开始填充图形
turtle.end_fill()填充完毕
turtlr.hideturtle()隐藏画笔的turtle形状
turtle.showturtle()显示画笔的turtle形状

实例:

绘制太阳

import turtle as t
t.bgcolor("white")
t.color("red","yellow")
t.speed(10)
t.begin_fill()
for x in range(50):#循环控制绘画次数
    t.forward(100)
    t.left(170)
t.end_fill()


绘制彩色六边形
import turtle as t
t.bgcolor('black')
sides= 6
colors = ["red", "yellow", "green", "blue", "orange", "purple"]
for i in range(360):
    t.pencolor(colors[i%sides])
    t.forward(i*3/sides+i)
    t.left(360/sides+1)
    t.width(i*sides/200)

彩色六边形

全局控制命令
全局控制命令_意 义 _
turtle.screensize()设置画布的宽(单位像素)、高、背景颜色
turtle.setup()设置画布的大小,还可以设置窗口左上角顶点的位置
turtle.clear()清空turtle窗口,但突然停了的位置和状态不会改变
turtle.reset()清空窗口,重置turtle状态为起始状态
turtle.undo()撤销上一个turtle动作
turtle.isvisiable()返回当前turtle是否可见
turtle.stamp()复制当前图形
turtle.write()写文本
turtle.shape(“str”)_设置海龟的形状,取值:“arrow”,“turtle”,“circle”,“square”,“triangle",“classic”__

举例

绘制文字旋转效果
import turtle as p
p.screensize(800,600,"pink")
name =p.textinput("Please enter your name:","your name")
mycolors =["green",'red','blue','yellow']
for x in range(80):
    p.pencolor(mycolors[x%4])
    p.penup()
    p.forward(x*4)
    p.down()
    p.write(name, font=("Arial", int((x+4)/4), "bold"))
    p.left(93)
绘制太极图
import turtle as t

R = 150#太极图半径
t.screensize(400, 300, "yellow")
t.pensize(3)
t.pencolor('black')
t.speed(10)
TJT_color = {1: 'white', -1: 'black'}#太极填充色
color_list = [1, -1]#先画半边,再画另外半边
for c in color_list:
    t.fillcolor(TJT_color.get(c))#获取半边的填充色
    t.begin_fill()#开始填充
    t.circle(R/2, 180)
    t.circle(R, 180)
    t.circle(R/2, -180)
    t.end_fill()

    t.penup()#绘制该半边的鱼眼
    t.goto(0, R/3*c)#由c决定移动到哪边
    t.pendown()
    t.fillcolor(TJT_color.get(-c))#获取鱼眼填充色,与该半边的颜色相反
    t.begin_fill()
    t.circle(-R/6, 360)
    t.end_fill()
    t.penup()
    t.goto(0, 0)#回到原点,并为下一轮循环做准备
    t.pendown()



太极图绘制
总结不易
各位大佬,
你们的每一个点赞是对博主创作的肯定;
你们的每一次转发是对博主创作的支持
你们的每一次收藏是博主的莫大的荣幸
你们的每一次评论是对博主最好的理解
谢谢!

  • 2
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

由心同学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值