用python去编写动漫里的人或物

废话不多说,直接上图

import turtle as t
import time

def tcyuan(x, y, r):
    t.fillcolor("black")
    t.begin_fill()
    t.seth(0)
    y = y - r
    t.penup()
    t.goto(x, y)
    t.pendown()
    t.circle(r)
    t.end_fill()


def yuan(x, y, r):
    t.seth(0)
    y = y - r
    t.penup()
    t.goto(x, y)
    t.pendown()
    t.circle(r)


def yueliang():
    R = 110 - 1

    r = R - 22 - 1

    # 月亮填充
    t.penup()
    t.goto(-350 + 2 * R, 0)
    t.seth(90)
    t.fillcolor("black")
    t.begin_fill()
    t.circle(R, 359)
    t.left(90)
    t.fd(2)
    t.left(90)
    t.circle(-r, 359)
    t.left(90)
    t.fd(2)
    t.pendown()
    t.end_fill()
    # 轮廓
    yuan(-350 + R, 0, R)
    yuan(-350 + 44 + r - 2, 0, r - 2)


def zhixian(R, r, count, jiaodu):
    t.seth(90 + jiaodu)
    #    t.goto(0, 0)
    for i in range(count):
        t.penup()
        t.goto(0, 0)
        t.fd(r)
        t.pendown()
        t.fd(R - r)
        t.left(360 / count)


def zfx(R, r):
    jiange = 10
    #    t.pensize(jiange)
    t.seth(90)
    big = pow((R ** 2) * 2, 0.5)
    small = big - 2 * jiange
    for i in range(13):
        # 大线
        t.penup()
        t.goto(0, 0)
        t.fd(R)
        t.pendown()
        t.right(135)
        t.fd(big)
        # 小线
        t.left(135)
        t.penup()
        t.goto(0, 0)
        t.fd(pow((small ** 2) / 2, 0.5))
        t.pendown()
        t.right(135)
        t.fd(small)
        # 粗线
        t.pensize(8)
        t.pencolor("black")
        t.left(135)
        t.penup()
        t.goto(0, 0)
        t.fd((R + pow((small ** 2) / 2, 0.5)) / 2)
        t.pendown()
        t.right(135)
        t.fd((big + small) / 2)
        t.pensize(2)
        t.pencolor("yellow")
        t.seth(90 + i * 30)
    else:
        # 大线
        t.penup()
        t.goto(0, 0)
        t.fd(R)
        t.right(135)
        t.fd(big / 2)
        t.pendown()
        t.fd(big / 2)
        # 小线
        t.left(135)
        t.penup()
        t.goto(0, 0)
        t.fd(pow((small ** 2) / 2, 0.5))
        t.right(135)
        t.fd(small / 2)
        t.pendown()
        t.fd(small / 2)
        # 粗线
        t.pensize(8)
        t.pencolor("black")
        t.left(135)
        t.penup()
        t.goto(0, 0)
        t.fd((R + pow((small ** 2) / 2, 0.5)) / 2)
        t.right(135)
        t.fd((big + small) / 2 / 2)
        t.pendown()
        t.fd((big + small) / 2 / 2)
        t.pensize(2)
        t.pencolor("yellow")
        t.seth(90 + i * 30)


def wjx(r, jiaodu):
    t.fillcolor("black")
    t.penup()
    t.goto(0, 0)
    t.seth(90 + jiaodu)
    t.fd(r)
    t.pendown()
    t.right(18)
    t.begin_fill()
    for i in range(5):
        t.right(144)
        t.forward(144)
        t.left(72)
        t.forward(144)
    t.end_fill()
    if jiaodu != 0:
        t.seth(90 + jiaodu)
        for i in range(1, 6):
            t.penup()
            t.goto(0, 0)
            t.left(72)
            t.pendown()
            t.fd(r)


def xingzuo():
    r = 250
    t.penup()
    t.goto(20, -35)
    t.seth(-45)
    t.fd(r)
    t.pendown()
    xz = ['♒', '♓', '♈', '♉', '♌', '♍', '♎', '♏']
    for i in range(4):
        t.write(xz[i], font=("", 20, ""))
        t.penup()
        t.right(90)
        t.circle(-300, 30)
        t.left(90)
        t.pendown()
    t.penup()
    t.goto(-r / 4 + 10, 5)
    t.seth(135)
    t.fd(r)
    for i in range(4, 8):
        t.write(xz[i], font=("", 20, ""))
        t.penup()
        t.right(90)
        t.circle(-300, 30)
        t.left(90)
        t.pendown()


def dxnb(s):
    t.penup()
    t.fd(-19)
    t.left(90)
    t.fd(2)
    t.pendown()
    t.write(s, font=["KaiTi", 30, "bold"])


def taiyang():
    def haicao(r, i):
        # 海藻
        t.fillcolor("black")

        t.penup()
        if i == 0:
            t.goto(256, r)
        elif i == 1:
            t.goto(256 - r, 0)
        else:
            t.goto(256, -r)
        t.pendown()
        t.begin_fill()
        t.seth(2 + i * 90)
        t.circle(r / 2, 105)
        t.left(10)
        t.circle(-r / 3, 90)
        t.circle(r / 3, 60)
        t.left(20)
        t.circle(r / 3, -80)
        t.left(50)
        t.circle(-r + 10, -40)
        t.right(30)
        t.circle(r / 2 + 10, -50)
        t.penup()
        if i == 0:
            t.goto(256, r)
        elif i == 1:
            t.goto(256 - r, 0)
        else:
            t.goto(256, -r)
        t.pendown()
        t.end_fill()

        t.seth(2 + i * 90)
        t.circle(r / 2, 105)
        t.left(10)
        t.circle(-r / 3, 90)
        t.begin_fill()
        t.circle(r / 3, 60)
        t.left(20)
        t.circle(r / 3, -80)
        t.left(50)
        t.circle(-r + 10, -40)
        t.right(30)
        t.circle(r / 2 + 10, -50)
        t.right(30)
        t.circle(r / 2 - 2, 110)
        t.circle(-r / 3, 70)
        t.left(7)
        t.circle(r / 3, 85)
        t.end_fill()

        t.penup()
        if i == 0:
            t.goto(256, r)
            t.pendown()
            t.seth(180 - (2 + i * 90))
            t.circle(-(r / 2), 105)
        elif i == 1:
            t.goto(256 - r, 0)
            t.pendown()
            t.seth(- (2 + i * 90))
            t.circle(-(r / 2), 105)
        else:
            t.goto(256, -r)
            t.pendown()
            t.seth(180 - (2 + i * 90))
            t.circle(-(r / 2), 105)
        t.begin_fill()
        t.left(-10)
        t.circle(-(-r / 3), 90)
        t.circle(-(r / 3), 60)
        t.left(-20)
        t.circle(-(r / 3), -80)
        t.left(-50)
        t.circle(-(-r + 10), -40)
        t.right(-30)
        t.circle(-(r / 2 + 10), -50)
        t.end_fill()

        t.penup()
        if i == 0:
            t.goto(256, r)
            t.pendown()
            t.seth(180 - (2 + i * 90))
            t.circle(-(r / 2), 105)
        elif i == 1:
            t.goto(256 - r, 0)
            t.pendown()
            t.seth(- (2 + i * 90))
            t.circle(-(r / 2), 105)
        else:
            t.goto(256, -r)
            t.pendown()
            t.seth(180 - (2 + i * 90))
            t.circle(-(r / 2), 105)
        t.pendown()

        t.left(-10)
        t.circle(-(-r / 3), 90)
        t.circle(-(r / 3), 60)
        t.left(-20)
        t.begin_fill()
        t.circle(-(r / 3), -80)
        t.left(-50)
        t.circle(-(-r + 10), -40)
        t.right(-30)
        t.circle(-(r / 2 + 10), -50)
        t.right(-30)
        t.circle(-(r / 2 - 2), 110)
        t.circle(-(-r / 3), 70)
        t.left(-7)
        t.circle(-(r / 3), 85)
        t.end_fill()

    def xhaicao(r, i):
        t.penup()
        t.goto(256 + r, 0)
        t.seth(-90)
        t.circle(-r, 20)
        t.pendown()
        t.begin_fill()
        t.seth(30)
        t.circle(-r / 3, 100)
        t.circle(r / 6, 140)
        t.circle(-r / 11, 100)
        t.left(80)
        t.circle(-r / 2, -30)
        t.circle(r / 4, -140)
        t.circle(-r / 3, -60)
        t.end_fill()
        t.penup()
        t.goto(256 + r, 0)
        t.seth(-90)
        t.circle(-r, 30)
        t.pendown()
        t.seth(45)
        t.circle(-r / 4, 100)
        t.right(20)
        t.circle(r / 4, 140)
        t.right(10)
        t.circle(-r / 11, 90)

        t.penup()
        t.goto(256 + r, 0)
        t.seth(90)
        t.circle(r, 20)
        t.pendown()
        t.begin_fill()
        t.seth(-30)
        t.circle(-(-r / 3), 100)
        t.circle(-(r / 6), 140)
        t.circle(-(-r / 11), 100)
        t.left(-80)
        t.circle(-(-r / 2), -30)
        t.circle(-(r / 4), -140)
        t.circle(-(-r / 3), -60)
        t.end_fill()
        t.penup()
        t.goto(256 + r, 0)
        t.seth(90)
        t.circle(r, 30)
        t.pendown()
        t.seth(-45)
        t.circle(-(-r / 4), 100)
        t.right(-25)
        t.circle(-(r / 4), 140)
        t.right(-10)
        t.circle(-(-r / 11), 90)

    r = 50
    # 海藻
    haicao(r, 0)
    haicao(r, 1)
    haicao(r, 2)
    xhaicao(r, 3)

    # 大三角形
    t.fillcolor("black")

    for i in range(1, 4):
        temp = 3
        t.penup()
        t.goto(256, 0)
        t.seth(i * 90)
        t.pendown()
        t.begin_fill()
        t.right(22.5)
        t.fd(r)
        if i == 1:
            t.goto(256, 3 * r - temp)
            t.goto(256, 0)
            t.seth(i * 90 + 22.5)
            t.fd(r)
            t.goto(256, 3 * r - temp)
        elif i == 2:
            t.goto(256 - 3 * r + temp, 0)
            t.goto(256, 0)
            t.seth(i * 90 + 22.5)
            t.fd(r)
            t.goto(256 - 3 * r + temp, 0)
        else:
            t.goto(256, -3 * r + temp)
            t.goto(256, 0)
            t.seth(i * 90 + 22.5)
            t.fd(r)
            t.goto(256, -3 * r + temp)
        t.end_fill()
    # 小三角形
    x = pow(((2 * r) ** 2) / 2, 0.5) - 8
    for i in range(1, 5):
        t.penup()
        t.goto(256, 0)
        t.seth(i * 90)
        t.pendown()
        t.begin_fill()
        t.right(22.5)
        t.fd(r)
        if i == 1:
            t.goto(256 + x, x)
            t.goto(256, 0)
            t.right(45)
            t.fd(r)
            t.goto(256 + x, x)
        elif i == 2:
            t.goto(256 - x, x)
            t.goto(256, 0)
            t.right(45)
            t.fd(r)
            t.goto(256 - x, x)
        elif i == 3:
            t.goto(256 - x, -x)
            t.goto(256, 0)
            t.right(45)
            t.fd(r)
            t.goto(256 - x, -x)
        else:
            t.goto(256 + x, -x)
            t.goto(256, 0)
            t.right(45)
            t.fd(r)
            t.goto(256 + x, -x)
        t.end_fill()

    # 圆
    #    t.begin_fill()
    tcyuan(256, 0, r)


# 初始化
t.setup(1500, 800, 0, 0)
t.speed(0)
t.bgcolor("black")
t.pencolor("yellow")
t.pensize(2)
# 最大的圆
yuan(0, 0, 350)
yuan(0, 0, 325)
yuan(0, 0, 321)
yuan(0, 0, 306)
zhixian(321, 306, 72, 0)
# 小圆
yuan(0, 0, 204)
yuan(0, 0, 200)
yuan(0, 0, 186)
zhixian(200, 186, 72, 0)
# 正方形边框以及直线
zhixian(290, 213, 12, 0)
zhixian(248, 205, 12, 15)
zfx(306, 204)
# 里五角星
wjx(200, 36)
# 月亮
yueliang()
# 太阳
taiyang()
# 最小圆
tcyuan(0, 328, 22)
dxnb("北")
tcyuan(0, -328, 22)
dxnb("南")
tcyuan(-328, 0, 22)
dxnb("西")
tcyuan(328, 0, 22)
dxnb("東")
xingzuo()
#展示
time.sleep(30)   #展示时间30s

画蜘蛛侠:

from turtle import *
bgcolor("#990000")
pensize(10)
penup()
goto(0, 50)
pendown()
circle(-120)
penup()
circle(-120, -60)
pendown()
pensize(5)
right(50)
circle(70, 55)
right(85)
circle(75, 58)
right(90)
circle(70, 55)
right(90)
circle(70, 58)
penup()
pensize(10)
goto(80, 15)
pendown()
seth(92)
fd(135)
seth(125)
circle(30, 135)
seth(190)
fd(50)
seth(125)
circle(30, 135)
seth(275)
fd(90)
penup()
pensize(10)
goto(92, -150)
seth(240)
pendown()
fd(80)
left(10)
circle(-28, 185)
penup()
goto(0, 50)
seth(0)
pensize(10)
circle(-120, -60)
seth(200)
pendown()
fd(72)
left(20)
circle(30, 150)
left(20)
fd(20)
right(15)
fd(10)
pensize(5)
fillcolor("#3366cc")
begin_fill()
seth(92)
circle(-120, 31)
seth(200)
fd(45)
left(90)
fd(52)
end_fill()
fd(-12)
right(90)
fd(40)
penup()
right(90)
fd(18)
pendown()
right(86)
fd(40)
penup()
goto(-152, -86)
pendown()
left(40)
circle(35, 90)
penup()
goto(-80, 116)
seth(10)
pensize(5)
pendown()
begin_fill()
fillcolor("#3366cc")
fd(155)
seth(-88)
fd(37)
seth(195)
fd(156)
end_fill()
penup()
goto(-75, 38)
seth(15)
pendown()
begin_fill()
fd(158)
seth(-88)
fd(55)
seth(140)
circle(120, 78)
end_fill()
penup()
fillcolor("#3366cc")
pensize(5)
goto(75, -170)
pendown()
begin_fill()
seth(240)
fd(30)
right(90)
fd(17)
end_fill()
fd(10)
left(80)
fd(55)
penup()
left(90)
fd(15)
pendown()
left(85)
fd(55)
penup()
goto(43, -225)
left(84)
pendown()
circle(60, 51)
for i in range(3):
    penup()
    goto(-70+i*15, 135)
    seth(-90)
    pendown()
    pensize(5)
    fd(15-2*i)
for i in range(3):
    penup()
    goto(36 + i * 15, 156)
    seth(-90)
    pendown()
    pensize(5)
    fd(15 - 2 * i)
    a = -60
    b = 70
for i in range(4):
    penup()
    goto(a, b)
    a = a+40
    b = b+10
    seth(-90)
    pendown()
    pensize(5)
    fd(26)
 
 
def oo(li, jing):
    penup()
    goto(0, 50)
    seth(0)
    circle(-120, li)
    pendown()
    right(jing)
 
 
pensize(5)
oo(-60, 110)
fd(130)
oo(-28, 96)
fd(140)
oo(9, 89)
fd(144)
oo(42, 70)
fd(160)
oo(80, 60)
fd(130)
penup()
goto(-80, -40)
right(160)
pendown()
right(50)
circle(70, 45)
right(75)
circle(70, 38)
right(50)
circle(70, 45)
right(90)
circle(70, 48)
penup()
goto(-53, -70)
pendown()
left(40)
circle(70, 30)
right(50)
circle(70, 20)
right(50)
circle(70, 38)
right(70)
circle(70, 24)
penup()
goto(-19, -105)
left(72)
pendown()
fd(22)
right(60)
fd(22)
oo(-140, 80)
circle(-90, 120)
penup()
oo(140, 100)
circle(90, 13)
pendown()
right(-50)
circle(70, 45)
right(75)
circle(70, 38)
right(50)
circle(70, 36)
penup()
goto(22, -185)
right(70)
pendown()
fd(72)
penup()
goto(-40, -182)
right(38)
pendown()
fd(70)
penup()
pensize(7)
goto(-15, -110)
seth(0)
pendown()
pensize(10)
begin_fill()
left(130)
fd(110)
right(250)
circle(90, 60)
circle(40, 120)
fillcolor("#F5FFFA")
end_fill()
penup()
goto(5, -110)
pendown()
begin_fill()
right(30)
fd(110)
right(-250)
circle(-90, 60)
circle(-40, 120)
end_fill()
done()

 

import turtle as te
import time
WriteStep = 15  # 贝塞尔函数的取样次数
Speed = 5
Width = 600  # 界面宽度
Height = 500  # 界面高度
Xh = 0  # 记录前一个贝塞尔函数的手柄
Yh = 0


def Bezier(p1, p2, t):  # 一阶贝塞尔函数
    return p1 * (1 - t) + p2 * t


def Bezier_2(x1, y1, x2, y2, x3, y3):  # 二阶贝塞尔函数
    te.goto(x1, y1)
    te.pendown()
    for t in range(0, WriteStep + 1):
        x = Bezier(Bezier(x1, x2, t / WriteStep),
                   Bezier(x2, x3, t / WriteStep), t / WriteStep)
        y = Bezier(Bezier(y1, y2, t / WriteStep),
                   Bezier(y2, y3, t / WriteStep), t / WriteStep)
        te.goto(x, y)
    te.penup()


def Bezier_3(x1, y1, x2, y2, x3, y3, x4, y4):  # 三阶贝塞尔函数
    x1 = -Width / 2 + x1
    y1 = Height / 2 - y1
    x2 = -Width / 2 + x2
    y2 = Height / 2 - y2
    x3 = -Width / 2 + x3
    y3 = Height / 2 - y3
    x4 = -Width / 2 + x4
    y4 = Height / 2 - y4  # 坐标变换
    te.goto(x1, y1)
    te.pendown()
    for t in range(0, WriteStep + 1):
        x = Bezier(Bezier(Bezier(x1, x2, t / WriteStep), Bezier(x2, x3, t / WriteStep), t / WriteStep),
                   Bezier(Bezier(x2, x3, t / WriteStep), Bezier(x3, x4, t / WriteStep), t / WriteStep), t / WriteStep)
        y = Bezier(Bezier(Bezier(y1, y2, t / WriteStep), Bezier(y2, y3, t / WriteStep), t / WriteStep),
                   Bezier(Bezier(y2, y3, t / WriteStep), Bezier(y3, y4, t / WriteStep), t / WriteStep), t / WriteStep)
        te.goto(x, y)
    te.penup()


def Moveto(x, y):  # 移动到svg坐标下(x,y)
    te.penup()
    te.goto(-Width / 2 + x, Height / 2 - y)


def line(x1, y1, x2, y2):  # 连接svg坐标下两点
    te.penup()
    te.goto(-Width / 2 + x1, Height / 2 - y1)
    te.pendown()
    te.goto(-Width / 2 + x2, Height / 2 - y2)
    te.penup()


def lineto(dx, dy):  # 连接当前点和相对坐标(dx,dy)的点
    te.pendown()
    te.goto(te.xcor() + dx, te.ycor() - dy)
    te.penup()


def Lineto(x, y):  # 连接当前点和svg坐标下(x,y)
    te.pendown()
    te.goto(-Width / 2 + x, Height / 2 - y)
    te.penup()


def Horizontal(x):  # 做到svg坐标下横坐标为x的水平线
    te.pendown()
    te.setx(x - Width / 2)
    te.penup()


def horizontal(dx):  # 做到相对横坐标为dx的水平线
    te.seth(0)
    te.pendown()
    te.fd(dx)
    te.penup()


def vertical(dy):  # 做到相对纵坐标为dy的垂直线
    te.seth(-90)
    te.pendown()
    te.fd(dy)
    te.penup()
    te.seth(0)


def polyline(x1, y1, x2, y2, x3, y3):  # 做svg坐标下的折线
    te.penup()
    te.goto(-Width / 2 + x1, Height / 2 - y1)
    te.pendown()
    te.goto(-Width / 2 + x2, Height / 2 - y2)
    te.goto(-Width / 2 + x3, Height / 2 - y3)
    te.penup()


def Curveto(x1, y1, x2, y2, x, y):  # 三阶贝塞尔曲线到(x,y)
    te.penup()
    X_now = te.xcor() + Width / 2
    Y_now = Height / 2 - te.ycor()
    Bezier_3(X_now, Y_now, x1, y1, x2, y2, x, y)
    global Xh
    global Yh
    Xh = x - x2
    Yh = y - y2


def curveto_r(x1, y1, x2, y2, x, y):  # 三阶贝塞尔曲线到相对坐标(x,y)
    te.penup()
    X_now = te.xcor() + Width / 2
    Y_now = Height / 2 - te.ycor()
    Bezier_3(X_now, Y_now, X_now + x1, Y_now + y1,
             X_now + x2, Y_now + y2, X_now + x, Y_now + y)
    global Xh
    global Yh
    Xh = x - x2
    Yh = y - y2


def Smooth(x2, y2, x, y):  # 平滑三阶贝塞尔曲线到(x,y)
    global Xh
    global Yh
    te.penup()
    X_now = te.xcor() + Width / 2
    Y_now = Height / 2 - te.ycor()
    Bezier_3(X_now, Y_now, X_now + Xh, Y_now + Yh, x2, y2, x, y)
    Xh = x - x2
    Yh = y - y2


def smooth_r(x2, y2, x, y):  # 平滑三阶贝塞尔曲线到相对坐标(x,y)
    global Xh
    global Yh
    te.penup()
    X_now = te.xcor() + Width / 2
    Y_now = Height / 2 - te.ycor()
    Bezier_3(X_now, Y_now, X_now + Xh, Y_now + Yh,
             X_now + x2, Y_now + y2, X_now + x, Y_now + y)
    Xh = x - x2
    Yh = y - y2

te.tracer(10)
te.setup(Width, Height, 0, 0)
te.pensize(1)
te.speed(Speed)
te.penup()

# 图层_2
time.sleep(20)
te.color("black", "#F2F2F2")  # 外套
Moveto(61, 462)
te.begin_fill()
smooth_r(12, -41, 27, -58)
curveto_r(-6, -36, 6, -118, 9, -132)
curveto_r(-15, -27, -23, -51, -26, -74)
curveto_r(4, -66, 38, -105, 65, -149)
Horizontal(486)
curveto_r(12, 24, 40, 99, 33, 114)
curveto_r(39, 82, 55, 129, 39, 144)
smooth_r(-31, 23, -39, 28)
smooth_r(-12, 37, -12, 37)
lineto(50, 92)
Horizontal(445)
smooth_r(-29, -38, -31, -46)
smooth_r(78, -107, 72, -119)
Smooth(355, 178, 340, 176)
Smooth(272, 63, 264, 64)
smooth_r(-29, 67, -27, 73)
Curveto(99, 292, 174, 428, 173, 439)
smooth_r(-8, 23, -8, 23)
Lineto(61, 462)
te.end_fill()

Moveto(60.5, 461.5)  # 阴影
te.color("black", "#D3DFF0")
te.begin_fill()
curveto_r(0, 0, 17, -42, 27, -59)
curveto_r(-6, -33, 6, -128, 10, -133)
curveto_r(-15, -10, -27, -66, -27.285, -75)
te.pencolor("#D3DFF0")
curveto_r(12.285, 11, 82.963, 156, 82.963, 156)
te.pencolor("black")
smooth_r(12.322, 75, 19.322, 86)
curveto_r(-1, 11, -8, 25, -8, 25)
Horizontal(60.5)
te.end_fill()

Moveto(444.5, 464)
te.begin_fill()
curveto_r(0, 0, -29, -36, -31, -46)
smooth_r(53.59, -82.337, 53.59, -82.337)
te.pencolor("#D3DFF0")
smooth_r(86.41, -47.663, 96.072, -54.85)
Curveto(563.5, 297.5, 570.5, 299.5, 518.5, 334)
te.pencolor("black")
curveto_r(-2, 16, -12, 33, -12, 37)
smooth_r(50, 92, 50, 93)
Horizontal(444.5)
te.end_fill()

Moveto(195, 49)
te.begin_fill()
te.pencolor("#D3DFF0")
polyline(195, 49, 175.5, 106.5, 202.522, 49)
te.pencolor("black")
Horizontal(195)
te.pencolor("#D3DFF0")
te.end_fill()

Moveto(327.997, 49)
te.begin_fill()
te.pencolor("#D3DFF0")
curveto_r(0, 0, 11.503, 121.087, 13.503, 128.087)
curveto_r(11, 2, 54, 37, 54, 37)
lineto(-40, -165.087)
te.pencolor("black")
Horizontal(327.997)
te.pencolor("#D3DFF0")
te.end_fill()

te.pencolor("black")
line(94.5, 397.5, 107.5, 373.5)  # 皱纹
line(122.5, 317.5, 95.875, 274.699)
line(122.5, 341.5, 141.5, 402.5)
line(141.5, 409.5, 153.5, 431.5)
# line(328,47.712,344,175.977)
line(340.023, 49, 360.5, 144)
# line(353.5,47.5,395.5,208.5)
line(478.5, 95.5, 518.5, 161.5)
line(518.5, 332.5, 460.5, 359.5)
polyline(506.5, 369.5, 493.5, 402.5, 502.5, 443.5)
Moveto(530, 429)
curveto_r(4, 16, -5, 33, -5, 33)

# 图层_3
te.color("black", "#2b1d2a")  # 外套内侧
Moveto(225, 462)
te.begin_fill()
Horizontal(165)
smooth_r(9, -15, 8, -25)
curveto_r(-47, -126, 6, -212, 12, -225)
Curveto(185, 305, 202, 428, 225, 462)
Lineto(225, 462)
te.end_fill()

Moveto(390, 462)
te.begin_fill()
curveto_r(10, -23, 34, -180, 35, -222)  # !!!227
curveto_r(7, 4, 54, 45, 61, 61)  # 61
smooth_r(-73, 101, -72, 118)
curveto_r(5, 15, 31, 46, 31, 45)
Lineto(390, 462)
te.end_fill()
# 图层_4
te.color("black", "#2b1d29")  # 外套内侧
Moveto(225, 462)
te.begin_fill()
curveto_r(-28, -50, -40, -166, -40, -250)
curveto_r(6, 51, -6, 87, 45, 106)
smooth_r(64, 27, 89, 24)
smooth_r(49, -18, 56, -20)
smooth_r(50, -10, 51, -85)
curveto_r(0, 29, -25, 201, -36, 225)
Lineto(225, 462)
te.end_fill()
# 图层_5
te.color("black", "#3D3D3D")  # 衣服
Moveto(225, 462)
te.begin_fill()
curveto_r(-5, -5, -22, -53, -23, -70)
lineto(32, -13)
curveto_r(3, -25, 6, -28, 12, -36)
smooth_r(13, -12, 16, -12)
vertical(-2)
curveto_r(45, 20, 64, 14, 94, 1)
vertical(2)
curveto_r(8, -2, 15, 2, 17, 4)
smooth_r(0, 6, -2, 9)
curveto_r(10, 10, 10, 29, 11, 33)
smooth_r(23, 4, 25, 6)
smooth_r(-17, 83, -17, 78)
Lineto(225, 462)
te.end_fill()
# 图层_6
te.color("black", "#968281")  # 脖子
Moveto(262, 329)
te.begin_fill()
vertical(17)
curveto_r(1, 2, 44, 14, 45, 15)
smooth_r(3, 12, 3, 12)
horizontal(3)
vertical(-5)
curveto_r(1, -3, 4, -6, 5, -7)
lineto(36, -14)
curveto_r(1, -1, 3, -16, 2, -17)
Curveto(318, 348, 296, 344, 262, 329)
te.end_fill()
# 图层_8
te.color("black", "#E7F1FF")  # 白色褶皱
Moveto(225, 462)
te.begin_fill()
lineto(-3, -5)  # -3,-3,-3,-5
curveto_r(0, -2, 4, -4, 5, -6)
smooth_r(16, 3, 19, -8)
smooth_r(0, -7, 0, -11)
smooth_r(5, -8, 9, -5)
smooth_r(19, -8, 19, -11)
smooth_r(6, -7, 6, -7)
smooth_r(7, -2, 9, -4)
lineto(41, -2)
lineto(12, 9)
smooth_r(3, 15, 7, 18)
smooth_r(15, 4, 17, 4)
smooth_r(4, -4, 6, -4)
smooth_r(6, 4, 5, 9)
smooth_r(0, 9, 0, 9)
smooth_r(1, 7, 7, 6)
smooth_r(8, 0, 8, 0)
lineto(-2, 8)
Lineto(225, 462)
te.end_fill()

te.pensize(2)
Moveto(240, 450)
smooth_r(0, 9, 3, 12)
Moveto(372, 462)
curveto_r(-2, -4, -5, -29, -7, -28)
te.pensize(1)
# 图层_7
te.color("black", "#A2B8D6")  # 衣领
Moveto(262, 331)
te.begin_fill()
curveto_r(0, 8, -1, 13, 0, 15)
smooth_r(43, 14, 45, 15)
lineto(3, 12)
horizontal(3)
smooth_r(-1, -3, 0, -5)
lineto(5, -7)
lineto(36, -14)
curveto_r(1, -1, 2, -12, 2, -15)
smooth_r(25, -2, 15, 13)
curveto_r(-2, 4, -7, 29, -7, 32)
smooth_r(-35, 19, -41, 22)
smooth_r(-9, 14, -12, 14)
smooth_r(-7, -12, -14, -15)
curveto_r(-19, -2, -41, -25, -41, -25)
smooth_r(-10, -26, -10, -30)
Smooth(255, 332, 262, 331)
te.end_fill()

Moveto(262, 346)
lineto(-12, -6)
Moveto(369, 333)
curveto_r(2, 4, -6, 10, -15, 14)
# 图层_9
te.color("black", "#151515")  # 领结
Moveto(247, 358)
te.begin_fill()
curveto_r(-5, 3, -8, 20, -6, 23)
curveto_r(25, 21, 50, 17, 50, 17)
lineto(-23, 64)
horizontal(22)
smooth_r(1, -13, 2, -16)
lineto(13, -50)
curveto_r(2, 2, 7, 3, 10, 1)
smooth_r(18, 65, 18, 65)
horizontal(19)
lineto(-24, -65)
curveto_r(21, 5, 39, -10, 44, -13)
curveto_r(5, -20, 1, -21, 0, -24)
curveto_r(-18, -2, -49, 15, -52, 17)
smooth_r(-11, -3, -15, -1)
Smooth(252, 356, 247, 358)
te.end_fill()
# 图层_10
te.color("black", "#A2B8D6")  # 衣领(透过领结)
Moveto(297, 387)
te.begin_fill()
lineto(-11, 6)
curveto_r(-1, 0, -20, -7, -30, -19)
Curveto(259, 373, 297, 385, 297, 387)
te.end_fill()

Moveto(323, 384)
te.begin_fill()
lineto(8, 7)
lineto(30, -14)
curveto_r(1, -1, 5, -6, 4, -7)
Smooth(329, 379, 323, 384)
te.end_fill()
# 图层_11
te.color("black", "#F3EEEB")  # 脸
Moveto(185, 212)
te.begin_fill()
curveto_r(4, -9, 46, -77, 52, -75)
curveto_r(-2, -17, 19, -68, 27, -73)
curveto_r(16, 15, 71, 108, 76, 112)
smooth_r(76, 53, 86, 60)
curveto_r(0, 65, -27, 75, -31, 76)
curveto_r(-50, 28, -70, 30, -85, 30)
smooth_r(-77, -22, -86, -26)
Curveto(180, 302, 186, 228, 185, 212)
te.end_fill()
# 图层_12
te.color("black", "#2B1D29")  # 头发
Moveto(189, 202)
te.begin_fill()
curveto_r(-1, 22, 19, 51, 19, 51)
smooth_r(-10, -42, 7, -92)
Curveto(212, 168, 196, 189, 189, 202)
te.end_fill()

Moveto(221, 155)
te.begin_fill()
curveto_r(-2, 6, 5, 48, 5, 48)
smooth_r(18, -28, 20, -48)
curveto_r(-5, 24, 4, 43, 7, 50)
curveto_r(-10, -49, 3, -72, 13, -106)
curveto_r(-2, -7, -3, -32, -3, -35)
curveto_r(-17, 18, -27, 71, -27, 71)
Lineto(221, 155)
te.end_fill()

Moveto(264, 64)
te.begin_fill()
curveto_r(-4, 5, 14, 100, 14, 100)
smooth_r(-6, -79, -5, -85)
curveto_r(0, 98, 49, 139, 49, 139)
smooth_r(8, -50, 3, -65)
Smooth(272, 64, 264, 64)
te.end_fill()

Moveto(342, 176)
te.begin_fill()
curveto_r(-1, 27, -10, 57, -10, 57)
smooth_r(20, -33, 17, -54)
Lineto(342, 176)
te.end_fill()

te.penup()
te.begin_fill()
polyline(349, 180, 353, 203, 361, 203)
polyline(361, 203, 362, 188, 349, 180)
te.end_fill()
# 图层_13
te.pensize(2)
Moveto(210, 180)  # 眉毛
curveto_r(5, -4, 63, 9, 63, 14)
Moveto(338, 193)
curveto_r(0, -3, 18, -6, 18, -6)
te.pensize(1)
# 图层_14
te.color("black", "#D1D1D1")  # 眼睛1
te.pensize(2)
Moveto(206, 212)
te.begin_fill()
lineto(15, -7)
curveto_r(4, -1, 26, -2, 30, 0)
smooth_r(10, 3, 12, 7)
te.pencolor("#D1D1D1")
te.pensize(1)
smooth_r(2, 27, -1, 30)
smooth_r(-39, 5, -44, 1)
Smooth(206, 212, 206, 212)
te.end_fill()

Moveto(384, 204)
te.begin_fill()
te.pencolor("black")
te.pensize(2)
curveto_r(-3, -1, -18, -1, -28, 1)
smooth_r(-9, 6, -10, 9)
te.pencolor("#D1D1D1")
te.pensize(1)
smooth_r(3, 18, 6, 23)
smooth_r(38, 6, 40, 4)
smooth_r(10, -9, 13, -22)
te.pencolor("black")
te.pensize(2)
Lineto(384, 204)
te.end_fill()
# 图层_15
te.color("#0C1631", "#0C1631")  # 眼睛2
te.pensize(1)
Moveto(216, 206)
te.begin_fill()
curveto_r(-1, 5, 0, 26, 7, 35)
smooth_r(30, 2, 33, 0)
smooth_r(5, -31, 2, -34)
Smooth(219, 203, 216, 206)
te.end_fill()

Moveto(354, 207)
te.begin_fill()
curveto_r(-2, 1, 2, 29, 4, 31)
smooth_r(30, 3, 33, 1)
smooth_r(6, -24, 4, -27)
lineto(-11, -8)
Curveto(382, 204, 357, 206, 354, 207)
te.end_fill()

# 图层_17
te.color("#F5F5F5", "#F5F5F5")  # 眼睛3
Moveto(253, 211)
te.begin_fill()
curveto_r(-3, 0, -8, 8, 1, 10)
Smooth(258, 210, 253, 211)
te.end_fill()

Moveto(392, 209)
te.begin_fill()
lineto(4, 3)
vertical(4)
lineto(-4, 2)
Curveto(386, 214, 392, 209, 392, 209)
te.end_fill()
# 图层_18
te.color("#352F53", "#352F53")  # 眼睛4
Moveto(219, 229)
te.begin_fill()
smooth_r(2, -5, 6, -4)
smooth_r(18, 13, 27, 1)
curveto_r(3, 0, 5, 3, 5, 3)
vertical(13)
Horizontal(224)
Lineto(219, 229)
te.end_fill()

Moveto(357, 227)
te.begin_fill()
smooth_r(4, -6, 10, -2)
smooth_r(10, 13, 19, 1)
curveto_r(6, 0, 8, 6, 8, 6)
lineto(-2, 9)
curveto_r(-12, 3, -29, 0, -32, -2)
Smooth(357, 227, 357, 227)
te.end_fill()

# 图层_19
te.color("#9A90CB", "#9A90CB")  # 眼睛5
Moveto(227, 231)
te.begin_fill()
curveto_r(-6, 0, -5, 5, -3, 8)
smooth_r(24, 2, 27, 0)
smooth_r(0, -8, -1, -8)
Smooth(234, 231, 227, 231)
te.end_fill()

Moveto(361, 227)
te.begin_fill()
curveto_r(2, 18, 26, 14, 30, 6)
smooth_r(-1, -3, -2, -4)
smooth_r(-15, 9, -24, -4)
Curveto(363, 224, 361, 225, 361, 227)
te.end_fill()

# 图层_16
te.pencolor("black")  # 眼睛(线条)
te.pensize(3)
# Moveto(206,213)
# lineto(14,-8)
# curveto_r(3,-1,30,0,33,1)
# lineto(10,6)
Moveto(225, 215)
curveto_r(10, 28, 22, 16, 24, 6)
Moveto(365, 219)
curveto_r(4, 14, 18, 24, 22, -3)
te.pensize(2)
line(240.5, 207.5, 227.5, 211.5)
line(245.5, 209.5, 227.5, 214.5)
line(247.5, 211.5, 227.5, 217.5)
line(247.5, 214.5, 229.5, 220.5)
line(247.5, 218.5, 230.5, 223.5)
line(246.5, 222.5, 232.5, 226.5)
line(244.5, 225.5, 234.5, 228.5)

line(377.5, 207.5, 367.5, 210.5)
line(384.5, 207.5, 366.5, 212.5)
line(385.5, 210.5, 366.5, 215.5)
line(384.5, 213.5, 366.5, 218.5)
line(384.5, 215.5, 367.5, 220.5)
line(384.5, 218.5, 368.5, 223.5)
# line(383.5,220.5,368.5,225.5)
line(382.5, 223.5, 370.5, 227.5)
# line(381.5,226.5,373.5,229.5)
# 图层_20
te.pencolor("black")
Moveto(309, 270)  # 鼻子、嘴
curveto_r(0, 0, 4, 7, 1, 9)
line(296.5, 307.5, 303.5, 307.5)
Moveto(315, 307)
smooth_r(10, -1, 10, 2)

te.penup()
te.hideturtle()
te.update()
te.done()

偶尔从翻到的一个github我实现了下感觉效果超漂亮,分享给大家! 

 

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值