本人是Python新人小白,欢迎各位大佬指正,本文介绍的是用Python的turtle画一只小猪乔治。
还有本人画画基础超级差= =没天赋,画参考度娘上的一个图片画的。
先上总代码,然后说说我写的思路,
import turtle as t
'''
t.pu() 提起画笔
t.pd() 移动时绘制图形,缺省时也为绘制
t.seth 设置当前朝向为angle角度
t.begin_fill() 准备开始填充图形
t.color 同时设置pencolor=color1, fillcolor=color2
t.goto 设置笔的坐标
t.circle(70,20) 半径 度数
15,124,215 乔治裤子颜色外面
66,163,242 乔治裤子颜色里面
134 196 247 天空的颜色
123,245,95 草地的颜色
253,6,6 鞋子外面
253,70,70 鞋子里面
130,119,100 泥坑
'''
r_a=0.8
wight = 1100
height = 700
#t.pensize(4)
t.hideturtle()
t.colormode(255)
t.color((255,155,192),"pink")
t.setup(wight,height)
t.speed(10)
def move_pen(x,y):
t.pu()
t.goto(x-wight/2+50,y-height/2+50)
t.pd()
def pen_set(size,r1,g1,b1,r2=0,g2=0,b2=0):
t.pensize(size)
t.color((r1,g1,b1),(r2,g2,b2))
def draw_grid():
pen_set(1,0,0,0,0,0,0)
for i in range(20):
move_pen(0+i*50,0)
t.seth(90)
t.fd(600)
for i in range(12):
move_pen(0,0+i*50)
t.seth(0)
t.fd(1000)
def draw_bg():
#画草地
move_pen(0,350)
pen_set(4,123,245,95, 123,245,95)
t.begin_fill()
t.seth(-90)
t.fd(350)
t.seth(0)
t.fd(1000)
t.seth(90)
t.fd(350)
t.end_fill()
#画天空
move_pen(0,350)
pen_set(4,134,196,247, 134,196,247)
t.begin_fill()
t.seth(90)
t.fd(250)
t.seth(0)
t.fd(1000)
t.seth(-90)
t.fd(250)
a=-180 + r_a
for i in range(50):
a = a - r_a/50
t.seth(a)
t.fd(500/50)
a =180
for i in range(50):
a = a - r_a/50
t.seth(a)
t.fd(500/50)
t.end_fill()
def draw_mud_pit():
#画泥坑
pen_set(5,130,119,100, 130,119,100)
move_pen(350,150)
t.begin_fill()
t.seth(-180)
t.circle(50,125)
t.seth(-20)
t.circle(350,60)
t.seth(20)
t.circle(50,30)
t.seth(10)
t.circle(50,30)
t.seth(0)
t.circle(50,30)
t.seth(40)
t.circle(50,90)
t.seth(170)
t.circle(500,45)
t.end_fill()
def draw_shoes():
pen_set(3,253,6,6, 253,70,70)
move_pen(400,100)
t.begin_fill()
t.seth(0)
t.fd(50)
t.seth(87)
t.fd(50)
t.seth(180)
t.fd(25)
t.seth(-93)
t.fd(20)
t.seth(-180)
t.fd(25)
t.seth(-120)
t.circle(45,38)
t.end_fill()
move_pen(470,100)
t.begin_fill()
t.seth(0)
t.fd(50)
t.seth(87)
t.fd(50)