参考:https://blog.csdn.net/zjhysj/article/details/80666085
1、引入包
import turtle
2、turtle绘图窗体
Turtle.setup(width, height, startx, starty) 设置窗口的位置及其大小
Turtle.bk(d)向海龟后面走d像素
Turtle.fd(d)向海龟前面走d像素 全称为:Turtle.forward(d)
Turtle.circle(r, angle)以左侧距离海龟距离为r的一点为圆心做曲线运动,运动弧度为angel,例:Turtle.circle(20, 90),是画四分之一个圆,
turtle.speed(x) x的取值从0到10,越大速度越快
参考:https://blog.csdn.net/m0_38015368/article/details/79952418
tur.goto(x, y) # x为正即向右前进,y为正则向上前进
tur.goto(100, 0) #向右画直线
例如:
tur.seth(15) 全称为:Turtle.setheading(angle)
tur.fd(50) #与x夹角15度(右上方向)的长为50的直线
tur.left(190)
tur.fd(50) #与x夹角190度(左下角)的直线 .left(90)==垂直向上;.left(0)===水平向右;即:left为逆时针
tur.right(90); #垂直向下; tur.right(0);水平向右;即:right是顺时针
3、turtle的色彩体系
turtle.pencolor(), 传入参数设置画笔颜色,可以是颜色的英文如"green", "red", "purple", 也可以是RGB 3元组, 如RGB小数 值 turtle.pencolor(0.63, 0.13, 0.94),元组值 turtle.pencolor((0.63, 0.13, 0.94))。
例如:
import turtle as tur
tur.setup(400, 400, 0, 0) # 设置窗口的位置及其大小
tur.pencolor(0.63, 0.12, 0.52)
tur.right(40)
tur.fd(50)
tur.pencolor('red')
tur.left(80)
tur.fd(50)
##turtle的运动方向控制函数
1,seth(angle) 将turtle当前的方向设置为绝对坐标下的angle角度
2,left(angle) 将turtle朝向设置为海龟当前朝向左侧的angle
2,right(angle) 将turtle朝向设置为海龟当前朝向右侧的angle
##turtle的流程控制
1,turtle画笔默认首先在中心的位置。并且画笔是放下状态
2,turtle.penup() 抬起画笔
3,turtle.pendown() 放下画笔
4,turtle.pensize() 设置画笔的粗细
5,turtle.pencolor() 设置画笔的颜色
6,turtle.done()表示状态,运行完之后不会退出,需要手动退出,如果不加入的话,turtle画布会自动退出
7,turtle.write(c,font=(“Arial”,18,“normal”))来写文字c,包括汉字
8,turtle.hideturtle()函数可以隐藏turtle的的画笔
---------------------
原文:https://blog.csdn.net/u013894427/article/details/80261256
4、画彩色多边形:
t = turtle.Pen()
turtle.bgcolor("black")
# sides = eval(str(input("输入要绘制的边的数目,请输入2-6Dev数字! ")))
sides = 6
colors = ["red", "yellow", "green", "blue", "orange", "purple"]
for x in range(360):
t.pencolor(colors[x % sides]) # 随机颜色
t.speed("fast")
t.forward(x * 3 / sides + x) # 六边形长度依次增加
t.left(360 / sides + 1) # 转动角度依次变化
t.width(x * sides / 180)
t.left(91)
t.done()
# print("结束")
# coding:utf-8
import turtle as t
# 绘制小猪佩奇
# =======================================
t.pensize(4)
t.hideturtle()
t.colormode(255)
t.color((255, 155, 192), "pink")
t.setup(840, 500)
t.speed(10)
# 鼻子
t.pu()
t.goto(-100,100)
t.pd()
t.seth(-30)
t.begin_fill()
a = 0.4
for i in range(120):
if 0 <= i < 30 or 60 <= i < 90:
a = a+0.08
t.lt(3) # 向左转3度
t.fd(a) # 向前走a的步长
else:
a = a-0.08
t.lt(3)
t.fd(a)
t.end_fill()
t.pu()
t.seth(90)
t.fd(25)
t.seth(0)
t.fd(10)
t.pd()
t.pencolor(255, 155, 192)
t.seth(10)
t.begin_fill()
t.circle(5)
t.color(160, 82, 45)
t.end_fill()
t.pu()
t.seth(0)
t.fd(20)
t.pd()
t.pencolor(255, 155, 192)
t.seth(10)
t.begin_fill()
t.circle(5)
t.color(160, 82, 45)
t.end_fill()
# 头
t.color((255, 155, 192), "pink")
t.pu()
t.seth(90)
t.fd(41)
t.seth(0)
t.fd(0)
t.pd()
t.begin_fill()
t.seth(180)
t.circle(300, -30)
t.circle(100, -60)
t.circle(80, -100)
t.circle(150, -20)
t.circle(60, -95)
t.seth(161)
t.circle(-300, 15)
t.pu()
t.goto(-100, 100)
t.pd()
t.seth(-30)
a = 0.4
for i in range(60):
if 0 <= i < 30 or 60 <= i <90:
a = a+0.08
t.lt(3) # 向左转3度
t.fd(a) # 向前走a的步长
else:
a = a-0.08
t.lt(3)
t.fd(a)
t.end_fill()
# 耳朵
t.color((255, 155, 192), "pink")
t.pu()
t.seth(90)
t.fd(-7)
t.seth(0)
t.fd(70)
t.pd()
t.begin_fill()
t.seth(100)
t.circle(-50, 50)
t.circle(-10, 120)
t.circle(-50, 54)
t.end_fill()
t.pu()
t.seth(90)
t.fd(-12)
t.seth(0)
t.fd(30)
t.pd()
t.begin_fill()
t.seth(100)
t.circle(-50, 50)
t.circle(-10, 120)
t.circle(-50, 56)
t.end_fill()
#眼睛
t.color((255, 155, 192), "white")
t.pu()
t.seth(90)
t.fd(-20)
t.seth(0)
t.fd(-95)
t.pd()
t.begin_fill()
t.circle(15)
t.end_fill()
t.color("black")
t.pu()
t.seth(90)
t.fd(12)
t.seth(0)
t.fd(-3)
t.pd()
t.begin_fill()
t.circle(3)
t.end_fill()
t.color((255, 155, 192), "white")
t.pu()
t.seth(90)
t.fd(-25)
t.seth(0)
t.fd(40)
t.pd()
t.begin_fill()
t.circle(15)
t.end_fill()
t.color("black")
t.pu()
t.seth(90)
t.fd(12)
t.seth(0)
t.fd(-3)
t.pd()
t.begin_fill()
t.circle(3)
t.end_fill()
# 腮
t.color((255, 155, 192))
t.pu()
t.seth(90)
t.fd(-95)
t.seth(0)
t.fd(65)
t.pd()
t.begin_fill()
t.circle(30)
t.end_fill()
# 嘴
t.color(239, 69, 19)
t.pu()
t.seth(90)
t.fd(15)
t.seth(0)
t.fd(-100)
t.pd()
t.seth(-80)
t.circle(30, 40)
t.circle(40, 80)
# 身体
t.color("red", (255, 99, 71))
t.pu()
t.seth(90)
t.fd(-20)
t.seth(0)
t.fd(-78)
t.pd()
t.begin_fill()
t.seth(-130)
t.circle(100,10)
t.circle(300,30)
t.seth(0)
t.fd(230)
t.seth(90)
t.circle(300,30)
t.circle(100,3)
t.color((255,155,192),(255,100,100))
t.seth(-135)
t.circle(-80,63)
t.circle(-150,24)
t.end_fill()
# 手
t.color((255,155,192))
t.pu()
t.seth(90)
t.fd(-40)
t.seth(0)
t.fd(-27)
t.pd()
t.seth(-160)
t.circle(300,15)
t.pu()
t.seth(90)
t.fd(15)
t.seth(0)
t.fd(0)
t.pd()
t.seth(-10)
t.circle(-20,90)
t.pu()
t.seth(90)
t.fd(30)
t.seth(0)
t.fd(237)
t.pd()
t.seth(-20)
t.circle(-300,15)
t.pu()
t.seth(90)
t.fd(20)
t.seth(0)
t.fd(0)
t.pd()
t.seth(-170)
t.circle(20,90)
# 脚
t.pensize(10)
t.color((240,128,128))
t.pu()
t.seth(90)
t.fd(-75)
t.seth(0)
t.fd(-180)
t.pd()
t.seth(-90)
t.fd(40)
t.seth(-180)
t.color("black")
t.pensize(15)
t.fd(20)
t.pensize(10)
t.color((240, 128, 128))
t.pu()
t.seth(90)
t.fd(40)
t.seth(0)
t.fd(90)
t.pd()
t.seth(-90)
t.fd(40)
t.seth(-180)
t.color("black")
t.pensize(15)
t.fd(20)
# 尾巴
t.pensize(4)
t.color((255, 155, 192))
t.pu()
t.seth(90)
t.fd(70)
t.seth(0)
t.fd(95)
t.pd()
t.seth(0)
t.circle(70, 20)
t.circle(10, 330)
t.circle(70, 30)
t.done()
---------------------
作者:hhjian6666
来源:CSDN
原文:https://blog.csdn.net/qq_30796379/article/details/87259067
版权声明:本文为博主原创文章,转载请附上博文链接!