X7ROOT File Manager
Current Path:
/usr/lib64/python3.8/turtledemo
usr
/
lib64
/
python3.8
/
turtledemo
/
ðŸ“
..
📄
__init__.py
(314 B)
📄
__main__.py
(13.91 KB)
ðŸ“
__pycache__
📄
bytedesign.py
(4.15 KB)
📄
chaos.py
(951 B)
📄
clock.py
(3.13 KB)
📄
colormixer.py
(1.31 KB)
📄
forest.py
(2.9 KB)
📄
fractalcurves.py
(3.39 KB)
📄
lindenmayer.py
(2.38 KB)
📄
minimal_hanoi.py
(2 KB)
📄
nim.py
(6.36 KB)
📄
paint.py
(1.26 KB)
📄
peace.py
(1.04 KB)
📄
penrose.py
(3.3 KB)
📄
planet_and_moon.py
(2.76 KB)
📄
rosette.py
(1.33 KB)
📄
round_dance.py
(1.76 KB)
📄
sorting_animate.py
(4.91 KB)
📄
tree.py
(1.37 KB)
📄
turtle.cfg
(160 B)
📄
two_canvases.py
(1.09 KB)
📄
yinyang.py
(820 B)
Editing: forest.py
#! /usr/bin/python3.8 """ turtlegraphics-example-suite: tdemo_forest.py Displays a 'forest' of 3 breadth-first-trees similar to the one in tree. For further remarks see tree.py This example is a 'breadth-first'-rewrite of a Logo program written by Erich Neuwirth. See http://homepage.univie.ac.at/erich.neuwirth/ """ from turtle import Turtle, colormode, tracer, mainloop from random import randrange from time import perf_counter as clock def symRandom(n): return randrange(-n,n+1) def randomize( branchlist, angledist, sizedist ): return [ (angle+symRandom(angledist), sizefactor*1.01**symRandom(sizedist)) for angle, sizefactor in branchlist ] def randomfd( t, distance, parts, angledist ): for i in range(parts): t.left(symRandom(angledist)) t.forward( (1.0 * distance)/parts ) def tree(tlist, size, level, widthfactor, branchlists, angledist=10, sizedist=5): # benutzt Liste von turtles und Liste von Zweiglisten, # fuer jede turtle eine! if level > 0: lst = [] brs = [] for t, branchlist in list(zip(tlist,branchlists)): t.pensize( size * widthfactor ) t.pencolor( 255 - (180 - 11 * level + symRandom(15)), 180 - 11 * level + symRandom(15), 0 ) t.pendown() randomfd(t, size, level, angledist ) yield 1 for angle, sizefactor in branchlist: t.left(angle) lst.append(t.clone()) brs.append(randomize(branchlist, angledist, sizedist)) t.right(angle) for x in tree(lst, size*sizefactor, level-1, widthfactor, brs, angledist, sizedist): yield None def start(t,x,y): colormode(255) t.reset() t.speed(0) t.hideturtle() t.left(90) t.penup() t.setpos(x,y) t.pendown() def doit1(level, pen): pen.hideturtle() start(pen, 20, -208) t = tree( [pen], 80, level, 0.1, [[ (45,0.69), (0,0.65), (-45,0.71) ]] ) return t def doit2(level, pen): pen.hideturtle() start(pen, -135, -130) t = tree( [pen], 120, level, 0.1, [[ (45,0.69), (-45,0.71) ]] ) return t def doit3(level, pen): pen.hideturtle() start(pen, 190, -90) t = tree( [pen], 100, level, 0.1, [[ (45,0.7), (0,0.72), (-45,0.65) ]] ) return t # Hier 3 Baumgeneratoren: def main(): p = Turtle() p.ht() tracer(75,0) u = doit1(6, Turtle(undobuffersize=1)) s = doit2(7, Turtle(undobuffersize=1)) t = doit3(5, Turtle(undobuffersize=1)) a = clock() while True: done = 0 for b in u,s,t: try: b.__next__() except: done += 1 if done == 3: break tracer(1,10) b = clock() return "runtime: %.2f sec." % (b-a) if __name__ == '__main__': main() mainloop()
Upload File
Create Folder