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

Python 3 使用Pillow生成漂亮的分形樹圖片

 更新時間:2019年12月24日 11:48:13   作者:醉落紅塵  
這篇文章主要介紹了Python 3 使用Pillow生成漂亮的分形樹圖片,本文通過實例代碼介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下

該程序通過繪制樹干(最初是樹;后來是樹枝)并遞歸地添加樹來繪制“樹”。 使用Pillow。

利用遞歸函數(shù)繪制分形樹(fractal tree),分形幾何學的基本思想:客觀事物具有自相似的層次結構,局部與整體在形態(tài)、功能、信息、時間、空間等方面具有統(tǒng)計意義上的相似性,成為自相似性。自相似性是指局部是整體成比例縮小的性質(zhì)。

版本:Python 3

# Adapted from http://rosettacode.org/wiki/Fractal_tree#Python
# to parameterise, and add colour.
# http://pillow.readthedocs.org/
# Author: Alan Richmond, Python3.codes, and others (Rosettacode)
import math, colorsys
from PIL import Image, ImageDraw
spread = 17     # how much branches spread apart
width, height = 1000, 800 # window size
maxd = 12     # maximum recursion depth
len = 9.0     # branch length factor
# http://pillow.readthedocs.org/en/latest/reference/Image.html
img = Image.new('RGB', (width, height))
# http://pillow.readthedocs.org/en/latest/reference/ImageDraw.html
d = ImageDraw.Draw(img)
# This function calls itself to add sub-trees
def drawTree(x1, y1, angle, depth):
 if depth > 0:
  #  compute this branch's next endpoint
  x2 = x1 + int(math.cos(math.radians(angle)) * depth * len)
  y2 = y1 + int(math.sin(math.radians(angle)) * depth * len)
  # https://docs.python.org/2/library/colorsys.html
  (r, g, b) = colorsys.hsv_to_rgb(float(depth) / maxd, 1.0, 1.0)
  R, G, B = int(255 * r), int(255 * g), int(255 * b)
  #  draw the branch
  d.line([x1, y1, x2, y2], (R, G, B), depth)
  #  and append 2 trees by recursion
  drawTree(x2, y2, angle - spread, depth - 1)
  drawTree(x2, y2, angle + spread, depth - 1)
# Start drawing!
drawTree(width / 2, height * 0.9, -90, maxd)
img.show()
img.save("www.linuxidc.com.png", "PNG")

效果圖如下:

總結

以上所述是小編給大家介紹的Python 3 使用Pillow生成漂亮的分形樹圖片,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

相關文章

  • virtualenv隔離Python環(huán)境的問題解析

    virtualenv隔離Python環(huán)境的問題解析

    virtualenv為應用提供了隔離的Python運行環(huán)境,解決了不同應用間多版本的沖突問題,這篇文章主要介紹了virtualenv隔離Python環(huán)境,需要的朋友可以參考下
    2022-06-06
  • Python使用textcase庫輕松實現(xiàn)文本格式處理

    Python使用textcase庫輕松實現(xiàn)文本格式處理

    在Python開發(fā)中,規(guī)范的文本格式處理是提升代碼可讀性和維護性的關鍵一環(huán),本文將系統(tǒng)講解textcase庫的核心功能,典型應用場景及性能優(yōu)化策略,感興趣的小伙伴可以跟隨小編一起學習一下
    2025-04-04
  • pytorch動態(tài)神經(jīng)網(wǎng)絡(擬合)實現(xiàn)

    pytorch動態(tài)神經(jīng)網(wǎng)絡(擬合)實現(xiàn)

    這篇文章主要介紹了pytorch動態(tài)神經(jīng)網(wǎng)絡(擬合)實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-03-03
  • 詳談python在windows中的文件路徑問題

    詳談python在windows中的文件路徑問題

    下面小編就為大家分享一篇詳談python在windows中的文件路徑問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04
  • Python sorted對list和dict排序

    Python sorted對list和dict排序

    這篇文章主要介紹了Python sorted對list和dict排序,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-06-06
  • Python機器學習之隨機梯度下降法的實現(xiàn)

    Python機器學習之隨機梯度下降法的實現(xiàn)

    如果當我們數(shù)據(jù)量和樣本量非常大時,每一項都要參與到梯度下降,那么它的計算量時非常大的,所以我們需要采用隨機梯度下降法。本文介紹了Python實現(xiàn)隨機梯度下降法的方法,希望對大家有所幫助
    2023-02-02
  • windows10環(huán)境下用anaconda和VScode配置的圖文教程

    windows10環(huán)境下用anaconda和VScode配置的圖文教程

    這篇文章主要介紹了windows10環(huán)境下用anaconda和VScode配置的圖文教程,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家介紹的非常詳細,需要的朋友可以參考下
    2020-03-03
  • python中tkinter復選框使用操作

    python中tkinter復選框使用操作

    Python Tkinter 復選框用來選取我們需要的選項,它前面有個小正方形的方塊,如果選中則有一個對號,也可以再次點擊以取消該對號來取消選中,下面通過代碼介紹下python中tkinter復選框使用操作,需要的朋友參考下吧
    2021-11-11
  • Django入門優(yōu)缺點及環(huán)境搭建流程

    Django入門優(yōu)缺點及環(huán)境搭建流程

    這篇文章主要為大家介紹了Django入門優(yōu)缺點及環(huán)境搭建流程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-11-11
  • pandas 透視表中文字段排序方法

    pandas 透視表中文字段排序方法

    今天小編就為大家分享一篇pandas 透視表中文字段排序方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11

最新評論

疏附县| 开阳县| 江津市| 瓮安县| 民乐县| 德江县| 通城县| 塔城市| 成武县| 土默特右旗| 格尔木市| 丹巴县| 长沙市| 孝义市| 渝北区| 浑源县| 高安市| 绥宁县| 大埔县| 拉孜县| 阿克陶县| 乌海市| 武乡县| 满城县| 黄大仙区| 昆山市| 嘉峪关市| 拜泉县| 永登县| 尼勒克县| 五峰| 武威市| 株洲市| 鄂尔多斯市| 新乡市| 会同县| 库伦旗| 茂名市| 嵊泗县| 贺州市| 高陵县|