turtle庫居然也能做個播放器???

最近整理房間,居然翻到了一個《迪迦奧特曼》的光盤,對着這個光盤,把玩了一段時間,腦子裏面突然有了一絲奇怪的想法!!

效果圖:

第一次搞動態圖,這個好像只能播放三次來着,待會卡住不動的話就刷新一下吧!
在這裏插入圖片描述

代碼講解:

這個代碼關鍵的部分如何讓這個圖像動起來,我們首先想到的是循環,對,多次循環然後改變偏移角度,繼續繪製,就能達到這個效果,我先放一張角度固定的圖:

在這裏插入圖片描述
然後不斷循環,不斷的重疊繪製這四個正方形,那我們只要改變每次畫筆轉動的角度,那麼就會達到這個效果,具體解析我在代碼裏面註釋:

全部代碼:

import turtle as a
import time


def ring(step_, axis_):  # 圓環 最外面的大圓環 
    for i in range(600):
        t.color(color_list[i % 4], color_list[i % 4])
        t.begin_fill()
        t.left(axis_)
        t.fd(step_)
        t.right(axis_)
        t.fd(step_)
        t.right(axis_)
        t.fd(step_)
        t.end_fill()
        if i % 4 == 0:
            time.sleep(0.02)  # 停頓一點點


def center_draw(rad, color):  # 中心繪製
    t.color('black', color)
    t.begin_fill()
    t.circle(rad)
    t.end_fill()


def text_draw():
    string = ('用繪圖思想做一個動態播放器圖片\n'
              '         You have to be happy every day!')

    t.write(string, align='center', font=('華文行楷', 20))


if __name__ == '__main__':
    t = a.Turtle()
    w = a.Screen()
    w.screensize(bg='Tan')
    t.getscreen().tracer(3, 0)
    t.hideturtle()
    color_list = ['#006e54', '#895b8a', '#bf242a', '#38b48b']
    step = 90  # 正方形的邊長
    axis = 91  # 這個就是每次改變的度數,90 則 重疊繪製,91就能達到效果
    t.penup()
    t.goto(0, -45)
    t.pendown()
    center_draw(90 / 2, 'black')  # 調用繪製中心大圓
    t.penup()
    t.goto(0, -18)
    t.pendown()
    center_draw(90 / 5, 'pink')  # 調用繪製中心小圓
    t.penup()
    t.goto(0, -250)
    t.pendown()
    text_draw()
    t.penup()
    t.goto(-45, 45)
    t.pendown()
    ring(step, axis)  # 調用繪製外圍

    w.exitonclick()

播放音樂:

這個turtle還真做不了,溜了溜了。

關於這個pycharm的背景設置可以看看這個博客:美化

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章