/usr/lib64/python3.12/turtledemo
NameSizeModeActions
__pycache__/-0755rm
bytedesign.py42480755editdlrm
chaos.py9510644editdlrm
clock.py33040755editdlrm
colormixer.py13390644editdlrm
forest.py29660755editdlrm
fractalcurves.py34730755editdlrm
lindenmayer.py24340755editdlrm
minimal_hanoi.py20510755editdlrm
nim.py65130644editdlrm
paint.py12910755editdlrm
peace.py10660755editdlrm
penrose.py33800755editdlrm
planet_and_moon.py28250755editdlrm
rosette.py13610644editdlrm
round_dance.py18040644editdlrm
sorting_animate.py50530755editdlrm
tree.py14010755editdlrm
turtle.cfg1600644editdlrm
two_canvases.py11190644editdlrm
yinyang.py8210755editdlrm
__init__.py3140644editdlrm
__main__.py153840755editdlrm
Edit: /usr/lib64/python3.12/turtledemo/tree.py (1401B)
#! /usr/bin/python3.12 """ turtle-example-suite: tdemo_tree.py Displays a 'breadth-first-tree' - in contrast to the classical Logo tree drawing programs, which use a depth-first-algorithm. Uses: (1) a tree-generator, where the drawing is quasi the side-effect, whereas the generator always yields None. (2) Turtle-cloning: At each branching point the current pen is cloned. So in the end there are 1024 turtles. """ from turtle import Turtle, mainloop from time import perf_counter as clock def tree(plist, l, a, f): """ plist is list of pens l is length of branch a is half of the angle between 2 branches f is factor by which branch is shortened from level to level.""" if l > 3: lst = [] for p in plist: p.forward(l) q = p.clone() p.left(a) q.right(a) lst.append(p) lst.append(q) for x in tree(lst, l*f, a, f): yield None def maketree(): p = Turtle() p.setundobuffer(None) p.hideturtle() p.speed(0) p.getscreen().tracer(30,0) p.left(90) p.penup() p.forward(-210) p.pendown() t = tree([p], 200, 65, 0.6375) for x in t: pass def main(): a=clock() maketree() b=clock() return "done: %.2f sec." % (b-a) if __name__ == "__main__": msg = main() print(msg) mainloop()