!/usr/bin/env python3
-- coding: utf-8 --
@Author: dong dong
@Env: python 3.6
from turtle import *
无轨迹跳跃
def my_goto(x, y): penup() goto(x, y) pendown()
眼睛
def eyes(): tracer(False) a = 2.5 for i in range(120): if 0 <= i < 30 or 60 <= i < 90: a -= 0.05 lt(3) fd(a) else: a += 0.05 lt(3) fd(a) tracer(True)
胡须
def beard(): my_goto(-37, 135) seth(165) fd(60)
my_goto(-37, 125) seth(180) fd(60)
my_goto(-37, 115) seth(193) fd(60)
my_goto(37, 135) seth(15) fd(60)
my_goto(37, 125) seth(0) fd(60)
my_goto(37, 115) seth(-13) fd(60)
嘴巴
def mouth(): my_goto(5, 148) seth(270) fd(100) seth(0) circle(120, 50) seth(230) circle(-120, 100)
围巾
def scarf(): fillcolor('#e70010') begin_fill() seth(0) fd(200) circle(-5, 90) fd(10) circle(-5, 90) fd(207) circle(-5, 90) fd(10) circle(-5, 90) end_fill()
鼻子
def nose(): my_goto(-10, 158) fillcolor('#e70010') begin_fill() circle(20) end_fill()
黑眼睛
def black_eyes(): seth(0) my_goto(-20, 195) fillcolor('#000000') begin_fill() circle(13) end_fill()
pensize(6) my_goto(20, 205) seth(75) circle(-10, 150) pensize(3)
my_goto(-17, 200) seth(0) fillcolor('#ffffff') begin_fill() circle(5) end_fill() my_goto(0, 0)
脸
def face(): fd(183) fillcolor('#ffffff') begin_fill() lt(45) circle(120, 100)
seth(90) eyes() seth(180) penup() fd(60) pendown() seth(90) eyes() penup() seth(180) fd(64) pendown() seth(215) circle(120, 100) end_fill()
头型
def head(): penup() circle(150, 40) pendown() fillcolor('#00a0de') begin_fill() circle(150, 280) end_fill()
画哆啦A梦
def Doraemon():
头部
head()
围脖
scarf()
脸
face()
红鼻子
nose()
嘴巴
mouth()
胡须
beard()
身体
my_goto(0, 0) seth(0) penup() circle(150, 50) pendown() seth(30) fd(40) seth(70) circle(-30, 270)
fillcolor('#00a0de') begin_fill()
seth(230) fd(80) seth(90) circle(1000, 1) seth(-89) circle(-1000, 10)
print(pos())
seth(180) fd(70) seth(90) circle(30, 180) seth(180) fd(70)
print(pos())
seth(100) circle(-1000, 9)
seth(-86) circle(1000, 2) seth(230) fd(40)
print(pos())
circle(-30, 230) seth(45) fd(81) seth(0) fd(203) circle(5, 90) fd(10) circle(5, 90) fd(7) seth(40) circle(150, 10) seth(30) fd(40) end_fill()
左手
seth(70) fillcolor('#ffffff') begin_fill() circle(-30) end_fill()
脚
my_goto(103.74, -182.59) seth(0) fillcolor('#ffffff') begin_fill() fd(15) circle(-15, 180) fd(90) circle(-15, 180) fd(10) end_fill()
my_goto(-96.26, -182.59) seth(180) fillcolor('#ffffff') begin_fill() fd(15) circle(15, 180) fd(90) circle(15, 180) fd(10) end_fill()
右手
my_goto(-133.97, -91.81) seth(50) fillcolor('#ffffff') begin_fill() circle(30) end_fill()
口袋
my_goto(-103.42, 15.09) seth(0) fd(38) seth(230) begin_fill() circle(90, 260) end_fill()
my_goto(5, -40) seth(0) fd(70) seth(-90) circle(-70, 180) seth(0) fd(70)
#铃铛 my_goto(-103.42, 15.09) fd(90) seth(70) fillcolor('#ffd200')
print(pos())
begin_fill() circle(-20) end_fill() seth(170) fillcolor('#ffd200') begin_fill() circle(-2, 180) seth(10) circle(-100, 22) circle(-2, 180) seth(180-10) circle(100, 22) end_fill() goto(-13.42, 15.09) seth(250) circle(20, 110) seth(90) fd(15) dot(10) my_goto(0, -150)
画眼睛
black_eyes()
if name == 'main': screensize(800,600, "#f0f0f0") pensize(3) # 画笔宽度 speed(9) # 画笔速度 Doraemon() my_goto(100, -300) write('by dongdong', font=("Bradley Hand ITC", 30, "bold")) mainloop()
效果图: