This commit is contained in:
Yang Zhang 2019-07-24 16:30:33 +08:00
parent 0780034c41
commit ba28dcad83
1 changed files with 4 additions and 13 deletions

View File

@ -14,21 +14,17 @@ def Skip(step):
pendown() pendown()
def mkHand(name, length): def mkHand(name, length):
#注册Turtle形状建立表针Turtle
reset() reset()
Skip(-length*0.1) Skip(-length*0.1)
begin_poly() begin_poly()
forward(length*1.1) forward(length*1.1)
end_poly() end_poly()
handForm = get_poly() handForm = get_poly()
#注册Turtle形状命令register_shape(name,shape=None)
register_shape(name, handForm) register_shape(name, handForm)
def Init(): def Init():
global secHand, minHand, hurHand, printer global secHand, minHand, hurHand, printer
mode("logo")# 重置Turtle指向北 mode("logo")
#建立三个表针Turtle并初始化
#第二个参数为长度
mkHand("secHand", 125) mkHand("secHand", 125)
mkHand("minHand", 130) mkHand("minHand", 130)
mkHand("hurHand", 90) mkHand("hurHand", 90)
@ -41,13 +37,11 @@ def Init():
for hand in secHand, minHand, hurHand: for hand in secHand, minHand, hurHand:
hand.shapesize(1, 1, 3) hand.shapesize(1, 1, 3)
hand.speed(0) hand.speed(0)
#建立输出文字Turtle
printer = Turtle() printer = Turtle()
printer.hideturtle() printer.hideturtle()
printer.penup() printer.penup()
def SetupClock(radius): def SetupClock(radius):
#建立表的外框
reset() reset()
pensize(7) pensize(7)
for i in range(60): for i in range(60):
@ -61,8 +55,8 @@ def SetupClock(radius):
right(6) right(6)
def Week(t): def Week(t):
week = ["星期一", "星期二", "星期三", week = ["Mon", "Tue", "Wed",
"星期四", "星期五", "星期六", "星期日"] "Thu", "Fri", "Sat", "Sun"]
return week[t.weekday()] return week[t.weekday()]
def Date(t): def Date(t):
@ -72,8 +66,6 @@ def Date(t):
return "%s %d %d" % (y, m, d) return "%s %d %d" % (y, m, d)
def Tick(): def Tick():
#绘制表针的动态显示
#当前时间
t = datetime.today() t = datetime.today()
second = t.second + t.microsecond*0.000001 second = t.second + t.microsecond*0.000001
minute = t.minute + second/60.0 minute = t.minute + second/60.0
@ -82,7 +74,6 @@ def Tick():
minHand.setheading(6*minute) minHand.setheading(6*minute)
hurHand.setheading(30*hour) hurHand.setheading(30*hour)
#介入Tracer函数以控制刷新速度
tracer(False) tracer(False)
printer.forward(65) printer.forward(65)
printer.write(Week(t), align="center", printer.write(Week(t), align="center",
@ -93,7 +84,7 @@ def Tick():
printer.home() printer.home()
tracer(True) tracer(True)
ontimer(Tick, 100)#100ms后继续调用tick ontimer(Tick, 100)
@app.route('/') @app.route('/')