用Python实现一个实时运动的大挂钟效果
今天小千來給大家分享一篇用Python實現(xiàn)一個實時運(yùn)動的大掛鐘效果,最終的效果如下圖所示,喜歡的話看下去~~
本項目用到的庫主要有pygame、math、datetime等,另外還用到一些數(shù)學(xué)知識,勾股定理搞不明白的朋友就不要往下看了,可能會頭暈。
第一步:用pygame畫個圓
1.初始化畫布參數(shù)
設(shè)置畫布大小,添加標(biāo)題,設(shè)置圓的原點(diǎn)、半徑和角度:
2.畫1個黑色邊框的圓:
第二步:在圓上添加數(shù)字和刻度
1.添加數(shù)字
把圓周等分為12份,那么每份的角度為360/12,因為0點(diǎn)在垂直方向,所以再減去90度,由勾股定理,x=半徑cos(角度),y=半徑sin(角度),
因此代碼設(shè)置如下:
2.添加刻度
原理同上,只不過把圓分成了60份
第三步:畫時針、分針和秒針
1.把當(dāng)天的日期提取出來
我們需要用python的datetime庫:
再把月、日、時、分、秒提取出來:
2.開始畫線,讓指針動起來
先在中間畫個半徑為20的小圓圈
再畫時針,主要用到pygame的draw.line函數(shù):
效果圖:
分針和秒針的的劃線原理同時針,區(qū)別在于長度和粗細(xì),加上分針和秒針的圖為:
第四步:添加日期和星期
先將日期轉(zhuǎn)化為星期,主要用到datetime及date函數(shù):
這樣之后我們再次運(yùn)行程序就能看到最終的效果啦,看完之后別忘記自己上手試一試哦~
本文來自千鋒教育,轉(zhuǎn)載請注明出處。
與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的用Python实现一个实时运动的大挂钟效果的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java技术分享:Java的运行机制
- 下一篇: 面试开发岗位,你应该知道的回答技巧!