最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python簡單幾步畫個鉆石戒指

 更新時間:2022年09月06日 09:25:10   作者:清遠(yuǎn)小阮  
這篇文章主要介紹了Python簡單幾步畫個鉆石戒指,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

一、效果演示

二、制作步驟/過程

(一)繪制戒指

使用tkinter的canvas畫布繪制8個點,然后把這8個點使用canvas.create_line()劃線函數(shù)用直線連接起來形成鉆石形狀。為了增強(qiáng)效果讓鉆石旋轉(zhuǎn)起來,使用while循環(huán),每隔一段時間重新繪制鉆石,但繪制的起始角度偏轉(zhuǎn)11.25度,這樣運(yùn)行程序鉆石看上去就旋轉(zhuǎn)起來了。

繪制好鉆石后,再使用canvas.create_oval()繪制兩個橢圓作為戒指環(huán)就可以了。

(二)繪制雪花

只有戒指單調(diào)了一點,來給畫布添加點雪花。這里使用random.randint()函數(shù)每隔一段時間隨機(jī)繪制50個10px大小的白色正方形,并繪制在畫布上,這里看起來就好多了。這里繪制正方形使用到了canvas.create_rectangle()函數(shù)。

三、完整源代碼文件

import time,random,math
from tkinter import Tk, Canvas
# 打開窗口
def open_window():
    _root = Tk()
    _root.title("七夕,用Python給你送個鉆石戒指")
    _root.config(bg='black')
    # 設(shè)置畫板
    _canvas = Canvas(_root, width=640, height=380, bg='black')
    _canvas.pack()
    # 待窗口創(chuàng)建后,2秒后執(zhí)行動畫
    _root.after(2000, paint_canvas(_root, _canvas))
    _root.mainloop()
# 啟動動畫函數(shù)
def paint_canvas(_tk, _canvas):
    # 設(shè)置鉆石開始角度
    _start_angle = 0
    # 設(shè)置存放鉆石八個點x,y坐標(biāo)的列表
    _list_x, _list_y = [], []
    # 設(shè)置鉆石八個點之間的角度_angel,鉆石中心點x,y坐標(biāo)_x_center,_y_center,鉆石半徑_r
    _angle, _x_center, _y_center, _r = 30, 320, 120, 50
    while True:
        # 清空畫板
        _canvas.delete("all")
        # 畫戒指
        paint_ring(_canvas, _start_angle, _angle, _x_center, _y_center, _r, _list_x, _list_y)
        _list_x.clear()
        _list_y.clear()
        # 從新計算鉆石開始角度
        _start_angle = (_start_angle + 11.25) % 360
        # 畫星星
        paint_star(_canvas)
        # 動畫刷新時間間隔
        time.sleep(0.05)
        _canvas.update()
        _tk.update()
# 畫戒指函數(shù)
def paint_ring(_canvas, _start_angle, _angle, _x_center, _y_center, _r, _list_x, _list_y):
    _canvas.create_oval(180, 110, 460, 280, outline='white')
    _canvas.create_oval(190, 130, 450, 275, outline='white')
    for i in range(12):
        _list_x.append(_x_center + _r * math.cos((_start_angle + (_angle * i)) * math.pi / 180))
        _list_y.append(_y_center + _r * math.sin((_start_angle + (_angle * i)) * math.pi / 180))
    for i in range(12):
        for j in range(12):
            _canvas.create_line(_list_x[i], _list_y[i], _list_x[j], _list_y[j], fill='white')
# 畫雪花函數(shù)
def paint_star(_canvas):
    # 隨機(jī)生成不超過畫布長、寬的50個正方形點
    for i in range(50):
        x = random.randint(0, 630)
        y = random.randint(0, 370)
        _canvas.create_rectangle(x, y, x + 5, y + 5, fill='white')
if __name__ == '__main__':
    # 打開程序窗口
    open_window()

到此這篇關(guān)于Python簡單幾步畫個鉆石戒指的文章就介紹到這了,更多相關(guān)Python鉆石戒指內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • linux之文件查找指定文件中包含關(guān)鍵字的行信息方式

    linux之文件查找指定文件中包含關(guān)鍵字的行信息方式

    這篇文章主要介紹了linux之文件查找指定文件中包含關(guān)鍵字的行信息方式,具有很好的參考價值,希望對大家有所幫助。
    2023-06-06
  • Python3多線程基礎(chǔ)知識點

    Python3多線程基礎(chǔ)知識點

    在本篇內(nèi)容里小編給大家分享了關(guān)于Python3多線程基礎(chǔ)知識點內(nèi)容,需要的朋友們跟著學(xué)習(xí)參考下。
    2019-02-02
  • Python數(shù)學(xué)形態(tài)學(xué)實例分析

    Python數(shù)學(xué)形態(tài)學(xué)實例分析

    這篇文章主要介紹了Python數(shù)學(xué)形態(tài)學(xué),結(jié)合實例形式分析了Python數(shù)學(xué)運(yùn)算與圖形繪制相關(guān)操作技巧,需要的朋友可以參考下
    2019-09-09
  • Python中AI圖像識別實現(xiàn)身份證識別

    Python中AI圖像識別實現(xiàn)身份證識別

    圖像識別說白了就是把一張照片上面的文字進(jìn)行提取,提供工作效率,本文主要介紹了Python 身份證識別,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • python中reload(module)的用法示例詳解

    python中reload(module)的用法示例詳解

    與from和import相比,reload是內(nèi)置函數(shù),而不是語句,下面這篇文章主要給大家介紹了關(guān)于python中reload(module)用法的相關(guān)資料,文中給出了詳細(xì)的示例代碼供大家參考學(xué)習(xí),需要的朋友們下面來一起看看吧。
    2017-09-09
  • python中pandas庫中DataFrame對行和列的操作使用方法示例

    python中pandas庫中DataFrame對行和列的操作使用方法示例

    這篇文章主要介紹了python中pandas庫中DataFrame對行和列的操作使用方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • 十一個案例帶你吃透Python函數(shù)參數(shù)

    十一個案例帶你吃透Python函數(shù)參數(shù)

    這篇文章主要通過十一個案例帶大家一起了解一下Python中的函數(shù)參數(shù),文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)Python有一定幫助,需要的可以參考一下
    2022-08-08
  • flask 框架操作MySQL數(shù)據(jù)庫簡單示例

    flask 框架操作MySQL數(shù)據(jù)庫簡單示例

    這篇文章主要介紹了flask 框架操作MySQL數(shù)據(jù)庫,結(jié)合實例形式詳細(xì)分析了flask框架操作MySQL數(shù)據(jù)庫的連接、表格創(chuàng)建、數(shù)據(jù)增刪改查等相關(guān)使用技巧,需要的朋友可以參考下
    2020-02-02
  • 如何判斷pytorch是否支持GPU加速

    如何判斷pytorch是否支持GPU加速

    這篇文章主要介紹了判斷pytorch是否支持GPU加速的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • Python 裝飾器使用詳解

    Python 裝飾器使用詳解

    裝飾器是Python語言中的高級語法。主要的功能是對一個函數(shù)、方法、或者類進(jìn)行加工,作用是為已經(jīng)存在的對象添加額外的功能,提升代碼的可讀性。裝飾器是設(shè)計模式的一種,被用于有切面需求的場景,較為經(jīng)典的有插入日志、性能測試、事務(wù)處理等
    2017-07-07

最新評論

科尔| 临高县| 武邑县| 新干县| 临清市| 卓尼县| 万荣县| 鄂伦春自治旗| 嫩江县| 抚宁县| 龙陵县| 仙游县| 惠水县| 武宣县| 宝兴县| 克什克腾旗| 南丹县| 济源市| 德州市| 吴江市| 大兴区| 全南县| 文安县| 石河子市| 黄骅市| 瑞昌市| 山西省| 响水县| 垫江县| 桐城市| 本溪| 余江县| 门头沟区| 茶陵县| 长海县| 开远市| 连江县| 乐平市| 金华市| 咸宁市| 花莲市|