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

用python繪制櫻花樹(shù)

 更新時(shí)間:2020年10月09日 16:39:58   作者:劉早起  
這篇文章主要介紹了如何用python繪制櫻花樹(shù),幫助大家更好的使用python處理圖片,感興趣的朋友可以了解下

黑夜可能漫長(zhǎng),但總會(huì)迎來(lái)溫暖的陽(yáng)光,三月如期而至,武大的櫻花又一次盛開(kāi)。那么今天就一起來(lái)看看怎樣在python中畫(huà)一棵美麗的櫻花樹(shù)~

說(shuō)到用python畫(huà)畫(huà),那當(dāng)然就是小烏龜Turtle庫(kù)了,為啥是turtle呢,想象一個(gè)小烏龜,在一個(gè)橫軸為x、縱軸為y的坐標(biāo)系原點(diǎn),(0,0)位置開(kāi)始,它根據(jù)一組函數(shù)指令的控制,在這個(gè)平面坐標(biāo)系中移動(dòng),從而在它爬行的路徑上繪制了圖形。

一、安裝與引入

安裝沒(méi)有什么難度直接pip安裝就可以

pip install turtle

可使用以下3種方法引入:

二、使用

turtle庫(kù)使用起來(lái)也很簡(jiǎn)單,主要就是利用幾個(gè)核心的控制代碼

turtle.goto(x,y):直接跳轉(zhuǎn)到(x,y)點(diǎn),以繪圖窗口中心為原點(diǎn),

turtle.fd(d):以當(dāng)前方向,往前行進(jìn)d像素。

turtle.bk(d):保持當(dāng)前方向不變,往后退行d像素。

turtle.circle(r,angle):以r為半徑圓的angle角度旋轉(zhuǎn)。

turtle.penup():抬筆

turtle.pendown():落筆

urtle.left(angle):向左旋轉(zhuǎn)angle度。

turtle.right(angle):向右旋轉(zhuǎn)angle度。

比如繪制樹(shù)干部分的代碼可以這樣寫(xiě)

def Tree(branch, t):
 time.sleep(0.0005)
 if branch > 3:
  if 6 <= branch <= 12: #
   if random.randint(0, 2) == 0: #隨機(jī)繪制
    t.color('snow') #設(shè)置顏色
   else:
    t.color('lightcoral') # 樹(shù)葉顏色
   t.pensize(branch / 3)
  elif branch < 6:
   if random.randint(0, 1) == 0:
    t.color('snow')
   else:
    t.color('lightcoral') #
   t.pensize(branch / 2)
  else:
   t.color('sienna') # 赭(zhě)色
   t.pensize(branch / 10) # 6
  t.forward(branch)
  a = 1.5 * random.random()
  t.right(20 * a)
  b = 1.5 * random.random()
  Tree(branch - 10 * b, t)
  t.left(40 * a)
  Tree(branch - 10 * b, t)
  t.right(20 * a)
  t.up()
  t.backward(branch)
  t.down()

而寫(xiě)字的部分就不用一筆一劃的去繪制,直接使用turtle.write()就可以在指定位置寫(xiě)上你需要的文字。

write(arg,move=false,align='left',font=('arial',8,'normal'))

#arg--將寫(xiě)入Turtle繪畫(huà)屏幕的文字。

#align(可選)--“左(left)”、“中(center)”或“右(right)”之一。

#font(可選)--(fontname、fontsize、fonttype)。

那么來(lái)看看最后效果吧!

完整源碼:

import turtle as T
import random
import time

# 畫(huà)櫻花的軀干(60,t)
def Tree(branch, t):
  time.sleep(0.0005)
  if branch > 3:
    if 8 <= branch <= 12:
      if random.randint(0, 2) == 0:
        t.color('snow') # 白
      else:
        t.color('lightcoral') # 淡珊瑚色
      t.pensize(branch / 3)
    elif branch < 8:
      if random.randint(0, 1) == 0:
        t.color('snow')
      else:
        t.color('lightcoral') # 淡珊瑚色
      t.pensize(branch / 2)
    else:
      t.color('sienna') # 赭(zhě)色
      t.pensize(branch / 10) # 6
    t.forward(branch)
    a = 1.5 * random.random()
    t.right(20 * a)
    b = 1.5 * random.random()
    Tree(branch - 10 * b, t)
    t.left(40 * a)
    Tree(branch - 10 * b, t)
    t.right(20 * a)
    t.up()
    t.backward(branch)
    t.down()

# 掉落的花瓣
def Petal(m, t):
  for i in range(m):
    a = 200 - 400 * random.random()
    b = 10 - 20 * random.random()
    t.up()
    t.forward(b)
    t.left(90)
    t.forward(a)
    t.down()
    t.color('lightcoral') # 淡珊瑚色
    t.circle(1)
    t.up()
    t.backward(a)
    t.right(90)
    t.backward(b)

# 繪圖區(qū)域
t = T.Turtle()
# 畫(huà)布大小
w = T.Screen()
t.hideturtle() # 隱藏畫(huà)筆
t.getscreen().tracer(5, 0)
w.screensize(bg='wheat') # wheat小麥
t.left(90)
t.up()
t.backward(150)
t.down()
t.color('sienna')

# 畫(huà)櫻花的軀干
Tree(60, t)
# 掉落的花瓣
Petal(200, t)
w.exitonclick()

以上就是用python繪制櫻花樹(shù)的詳細(xì)內(nèi)容,更多關(guān)于python繪圖的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論

泽库县| 读书| 二连浩特市| 运城市| 杂多县| 米泉市| 新泰市| 铜川市| 徐闻县| 历史| 保亭| 隆化县| 南汇区| 额尔古纳市| 麻阳| 元朗区| 拜城县| 托克逊县| 延长县| 榆树市| 台中市| 南汇区| 渭南市| 呼和浩特市| 尚义县| 舒城县| 商城县| 营口市| 昆山市| 昌乐县| 南部县| 三原县| 察隅县| 丽江市| 清水县| 镶黄旗| 托克托县| 青田县| 蓬莱市| 赤峰市| 正蓝旗|