安装fractal模块。
pip install fractal
打开python安装目次内里的lib\site-packages\fractal文件夹内里的base.py文件,把第45行的内容改为:
……
pygame.quit()
sys.exit()
……
然后新建py文件,运行如下代码:
from fractal import Pen
p = Pen([500, 300], title="Koch")
p.setPoint([5, 190])
p.doD0L(omega="f", P={"f": "f+f--f+f"},
delta=60, times=5, length=490, rate=3)
p = Pen([500, 500], title="Window")
p.setPoint([100, 495])
p.doD0L(omega="f+f+f+f+f", P={"f": "ff+f--f+f"},
delta=72, times=3, length=490, rate=4.3)
p.save('0.png')
p.wait()
p = Pen([500, 500], title="Window")
p.setPoint([100, 495])
p.doD0L(omega="f+f+f+f+f", P={"f": "ff+f--f+f"},
delta=72, times=5, length=490, rate=4)
p.save('0.png')
p.wait()
from fractal import IFS
from random import random
def ifsp(x, y):
p = random()
if p < 0.01:
return (0, 0.16 * y)
elif p < 0.07:
if random() > 0.5:
return (0.21 * x - 0.25 * y, 0.25 * x + 0.21 * y + 0.44)
else:
return (-0.2 * x + 0.26 * y, 0.23 * x + 0.22 * y + 0.6)
else:
return (0.85 * x + 0.1 * y, -0.05 * x + 0.85 * y + 0.6)
ob = IFS([400, 500], title = "Leaf")
ob.setPx(100, 100, 100)
ob.setIfsp(ifsp)
ob.doIFS(200000)
ob.wait()
from fractal import Pen
p = Pen([500, 365])
p.setPoint([400, 200])
p.setWidth(1)
p.doD0L(omega="L", P={"L": "L+R", "R": "L-R"},
delta=90, times=20, length=900, rate=1.5)
p.save('0.png')
p.wait()
END0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!