欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

用Python?Turtle畫棵櫻花樹(shù)送給自己

 更新時(shí)間:2022年02月16日 10:20:55   作者:盛夏溫暖流年  
心情不好的時(shí)候,來(lái)用Python和Turtle庫(kù)畫棵櫻花樹(shù)送給自己吧,自己也要好好愛(ài)自己才對(duì)!文中的示例代碼講解詳細(xì),感興趣的小伙伴可以動(dòng)手試一試

最近發(fā)生了很多事情,工作不開(kāi)心,愛(ài)情無(wú)果而終,身邊的小伙伴陸陸續(xù)續(xù)離職。雖然都不是會(huì)一下子擊垮自己的事情,但是積攢起來(lái),還是會(huì)有突然感到疲憊和倦怠的時(shí)候,有一種不知道下一步要走向哪里的無(wú)力感。

在這個(gè)城市留下了很多的回憶,但是身邊的人一個(gè)個(gè)離開(kāi),走到現(xiàn)在,似乎沒(méi)有太多留戀的了,也沒(méi)想好未來(lái)要去哪里。自己是一個(gè)始終需要新鮮感的人,在這里停留了太久,大概到了該說(shuō)再見(jiàn)的時(shí)候了吧。

那么,用一個(gè)不熟悉的語(yǔ)言,畫棵櫻花樹(shù)送給自己吧,代碼也可以很浪漫不是嗎。520剛剛過(guò)了,沒(méi)有愛(ài)情,自己也要好好愛(ài)自己才對(duì)。

一. 繪制步驟

1. 環(huán)境安裝

可以參考之前的博客:

Python爬蟲實(shí)現(xiàn)抓取電影網(wǎng)站信息并入庫(kù)

2. 圖片美化

之前沒(méi)怎么用過(guò) Python,就對(duì)別人的代碼進(jìn)行分析和效果優(yōu)化好啦,順便學(xué)習(xí)一下。

這個(gè)是原來(lái)的效果圖,有點(diǎn)灰蒙蒙的,微微改動(dòng),讓它明媚一點(diǎn)。

修改之后的代碼:

from turtle import *
from random import *
from math import *

def tree(n,l):
    pd()#下筆
    #陰影效果
    t = cos(radians(heading()+45))/8+0.25
    pencolor(t,t,t)
    pensize(n/3)
    forward(l)#畫樹(shù)枝

    if n>0:
        b = random()*15+10 #右分支偏轉(zhuǎn)角度
        c = random()*15+10 #左分支偏轉(zhuǎn)角度
        d = l*(random()*0.25+0.7) #下一個(gè)分支的長(zhǎng)度
        #右轉(zhuǎn)一定角度,畫右分支
        right(b)
        tree(n-1,d)
        #左轉(zhuǎn)一定角度,畫左分支
        left(b+c)
        tree(n-1,d)
        #轉(zhuǎn)回來(lái)
        right(c)
    else:
        #畫葉子
        right(90)
        n=cos(radians(heading()-45))/4+0.5
        ran=random()
        #這里相比于原來(lái)隨機(jī)添加了填充的圓圈,讓櫻花葉子看起來(lái)更多一點(diǎn)
        if(ran>0.7):
            begin_fill()
            circle(3)
            fillcolor('pink')
        #把原來(lái)隨機(jī)生成的葉子換成了統(tǒng)一的粉色
        pencolor("pink")
        circle(3)
        if(ran>0.7):
            end_fill()
        left(90)
        #添加0.3倍的飄落葉子
        if(random()>0.7):
            pu()
            #飄落
            t = heading()
            an = -40 +random()*40
            setheading(an)
            dis = int(800*random()*0.5 + 400*random()*0.3 + 200*random()*0.2)
            forward(dis)
            setheading(t)
            #畫葉子
            pd()
            right(90)
            n = cos(radians(heading()-45))/4+0.5
            pencolor(n*0.5+0.5,0.4+n*0.4,0.4+n*0.4)
            circle(2)
            left(90)
            pu()
            #返回
            t=heading()
            setheading(an)
            backward(dis)
            setheading(t)
    pu()
    backward(l)#退回
    
bgcolor(0.956,0.9255,0.9882)#設(shè)置背景色(把灰色換成淡紫色)
ht()#隱藏turtle
speed(0)#速度 1-10漸進(jìn),0 最快
tracer(0,0)
pu()#抬筆
backward(50)
left(90)#左轉(zhuǎn)90度
pu()#抬筆
backward(300)#后退300
tree(12,100)#遞歸7層
done()

之后的效果溫暖一點(diǎn),喜歡這種更有溫度的色調(diào):

二. 技術(shù)學(xué)習(xí)

1. turtle 簡(jiǎn)介

櫻花樹(shù)的繪制效果是通過(guò) Python 中的 turtle 來(lái)實(shí)現(xiàn)的,Python 的強(qiáng)大之處在于有許多很強(qiáng)大的庫(kù),turtle就是其中之一,是 Python 自帶的一個(gè)庫(kù)。

2. turtle 繪圖的基礎(chǔ)知識(shí)

turtle庫(kù)繪制原理:有一只海龜在窗體正中心,在畫布上游走,走過(guò)的軌跡形成了繪制的圖形,海龜由程序控制,可以自由改變顏色、方向?qū)挾鹊取?/p>

(1) . turtle 繪圖窗體

setup用來(lái)設(shè)置窗體大小,后兩個(gè)參數(shù)為非必選參數(shù);

turtle.setup(width,height,startx,starty)

(2) . turtle 的坐標(biāo)體系

畫布上,默認(rèn)有一個(gè)坐標(biāo)原點(diǎn)為畫布中心的坐標(biāo)軸,坐標(biāo)原點(diǎn)上有一只面朝x軸正方向的小烏龜。

這里我們描述小烏龜時(shí)使用了兩個(gè)詞語(yǔ):坐標(biāo)原點(diǎn)(位置),面朝x軸正方向(方向), turtle 繪圖中,就是使用位置方向描述小烏龜(畫筆)的狀態(tài)的。

(3) . turtle 畫筆屬性

(4) . turtle 繪圖命令

運(yùn)動(dòng)命令

控制命令

全局控制命令

雖然沒(méi)有在原來(lái)的基礎(chǔ)上改動(dòng)太多的代碼,只是簡(jiǎn)單的給櫻花樹(shù)換了個(gè)風(fēng)格,但是其實(shí)也做了很多的嘗試和調(diào)整,也學(xué)到了怎么使用 turtle 。

本篇博客參考了以下博客的代碼:使用python圖形模塊turtle庫(kù)繪制櫻花、玫瑰、圣誕樹(shù)代碼實(shí)例

到此這篇關(guān)于用Python Turtle畫棵櫻花樹(shù)送給自己的文章就介紹到這了,更多相關(guān)Python Turtle 櫻花樹(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論