File: //lib64/python3.8/turtledemo/__pycache__/forest.cpython-38.pyc
U
e5d @ s d Z ddlmZmZmZmZ ddlmZ ddlm Z
dd Zdd Zd d
Z
dd
dZdd Zdd Zdd Zdd Zdd Zedkre e dS )a4 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/
)Turtle colormodetracermainloop randrange)perf_counterc C s t | | d S )N r )n r )/usr/lib64/python3.8/turtledemo/forest.py symRandom s r
c s fdd| D S )Nc s, g | ]$\}}|t |d t fqS )g)\(?)r
).0angle
sizefactor angledistsizedistr r
<listcomp> s
zrandomize.<locals>.<listcomp>r )
branchlistr r r r r randomize s r c C s2 t |D ]$}| t| | d| | qd S )Ng ?)rangeleftr
Zforward)tZdistancepartsr ir r r randomfd s r
c c s |dkrg }g }t t| |D ]\} }
| || | ddd| td dd| td d | t| ||| dV |
D ]<\}}| | || |t
|
|| | | qqt||| |d ||||D ]
}
d V qd S )Nr r )
listzipZpensizeZpencolorr
pendownr r appendZcloner righttree)ZtlistsizelevelZwidthfactorZbranchlistsr r ZlstZbrsr r r r xr r r r( s,
r( c C sL t d | | d | | d | | || | d S )Nr r Z )r resetZspeed
hideturtler ZpenupZsetposr% )r r+ yr r r start7 s
r0 c C s2 | t|dd t|gd| ddddgg}|S )N i0P 皙?- gGz?)r ?gQ?r. r0 r( r* Zpenr r r r doit1A s r; c C s0 | t|dd t|gd| dddgg}|S )Niyi~x r3 r4 r7 r9 r: r r r doit2G s r= c C s2 | t|dd t|gd| ddddgg}|S )N id r3 )r5 gffffff?)r g
ףp=
?)r8 r6 r9 r: r r r doit3M s r@ c C s t } | tdd tdt dd}tdt dd}tdt dd}t }d}|||fD ]&}z| W q\ |d7 }Y q\X q\|dkrNqqNtdd t }d
|| S )NK r r )Zundobuffersize r r zruntime: %.2f sec.)r Zhtr r; r= r@ clock__next__)pusr aZdonebr r r mainT s$
rL __main__N)r r )__doc__Zturtler r r r Zrandomr timer rE r
r r r( r0 r; r= r@ rL __name__r r r r <module> s