溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

Python如何繪制同心圓

發(fā)布時(shí)間:2021-11-25 14:01:31 來(lái)源:億速云 閱讀:1490 作者:小新 欄目:大數(shù)據(jù)

這篇文章主要介紹了Python如何繪制同心圓,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

前言

屏幕一共4行6列,每一個(gè)位置放了一個(gè)同心圓,圓環(huán)的顏色不一樣。

每次按下鼠標(biāo),重新繪制。

這里學(xué)習(xí)兩個(gè)概念:循環(huán)和隨機(jī)

Python如何繪制同心圓

循環(huán)

import pgzrun

def draw():
    screen.fill('white')
    for r in range(1, 201, 10):
        screen.draw.circle((400, 300), r, 'black')

pgzrun.go()

第4行:屏幕白色

第5行:循環(huán),半徑開(kāi)始是1,每次加10,直到201

第6行:繪制圓,圓心位置是400,300,半徑是r,顏色是黑色

每次循環(huán)畫(huà)圓圈,相同的是圓心和顏色,不同的是半徑

年年歲歲花相似,歲歲年年人不同

隨機(jī)數(shù)

import random
n = random.randint(1, 5)
print(n)

第2行:產(chǎn)生一個(gè)1~5的隨機(jī)數(shù)

隨機(jī)就是不確定,每次都不確定,就像我們拋硬幣,或是從撲克牌抽一張,結(jié)果是啥,不確定

漂亮的圓環(huán)

Python如何繪制同心圓

import pgzrun
import random
def draw():
    screen.fill('white')
    for r in range(250, 0, -10):
        screen.draw.filled_circle((400, 300), r,\
        (random.randint(0, 255), random.randint(0, 255),\
        random.randint(0, 255)))
def on_mouse_down():
    draw()
pgzrun.go()

第5行:圓的半徑從大到小,最大是250,最小是10,每次減少10

第6行:畫(huà)圓,圓心固定400,300,半徑是r,也就是先畫(huà)250,再畫(huà)240,直到10。這里用的是filled_circle,也就是會(huì)用顏色填充圓。

填充圓的顏色是RGB,RGB三原色的三個(gè)參數(shù)值都是隨機(jī)變量。

第9行:當(dāng)鼠標(biāo)按下時(shí),重新繪制。

美麗的圓圈畫(huà)

怎么畫(huà)4行6列的圓圈呢?

這就要用到多個(gè)循環(huán)了,最里一層循環(huán)是畫(huà)一個(gè)圓圈,外邊一層循環(huán)是畫(huà)一行,不同的是圓心的橫坐標(biāo),最外一層循環(huán)是畫(huà)一列。

import pgzrun  # 導(dǎo)入游戲庫(kù)
import random  # 導(dǎo)入隨機(jī)庫(kù)
WIDTH = 1200   # 設(shè)置窗口的寬度
HEIGHT = 800   # 設(shè)置窗口的高度
R = 100        # 大圓圈的半徑

def draw():    # 繪制模塊,每幀重復(fù)執(zhí)行
    screen.fill('white')  # 白色背景
    for x in range(R, WIDTH, 2*R): # x坐標(biāo)平鋪遍歷
        for y in range(R, HEIGHT, 2*R):  # y坐標(biāo)平鋪遍歷
             for r in range(1, R, 10):  #  同心圓半徑從小到大遍歷
                 # 繪制一個(gè)填充圓,坐標(biāo)(x,y),半徑R-r,顏色隨機(jī)
                screen.draw.filled_circle((x, y), R-r, \
                 (random.randint(0, 255), random.randint(0, 255), \
                 random.randint(0, 255)))

def on_mouse_down(): # 當(dāng)按下鼠標(biāo)鍵時(shí)
    draw()  # 調(diào)用繪制函數(shù)

pgzrun.go()  # 開(kāi)始執(zhí)行游戲

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“Python如何繪制同心圓”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來(lái)學(xué)習(xí)!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI