Ë
    #´˜j–  ã                   ó˜   — d Z ddlmZmZmZmZ ddlmZ ddlm	Z
 d„ Zd„ Zd„ Zdd„Zd	„ Zd
„ Zd„ Zd„ Zd„ Zedk(  r e«         e«        yy)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Ú	colormodeÚtracerÚmainloop©Ú	randrange)Úperf_counterc                 ó"   — t        |  | dz   «      S )Né   r   )Úns    ú#lib/python3.12/turtledemo/forest.pyÚ	symRandomr      s   € Ü�a�R˜˜!™ÓÐó    c           
      ór   — | D ��cg c]$  \  }}|t        |«      z   |dt        |«      z  z  f‘Œ& c}}S c c}}w )Ng)\�Âõ(ð?)r   )Ú
branchlistÚ	angledistÚsizedistÚangleÚ
sizefactors        r   Ú	randomizer      sO   € ñ /9ô;á.8Ñ*˜ 
ð ”I˜iÓ(Ñ(Ø˜œy¨Ó2Ñ2Ñ2ò4à.8ò;ð ;ùó ;s   †)3c                 ó†   — t        |«      D ]3  }| j                  t        |«      «       | j                  d|z  |z  «       Œ5 y )Ng      ð?)ÚrangeÚleftr   Úforward)ÚtÚdistanceÚpartsr   Úis        r   Úrandomfdr      s6   € Ü�5Ž\ˆØ	�‰Œy˜Ó#Ô$Ø	�	‰	�C˜(‘N EÑ)Õ+ñ r   c           	   #   óJ  K  — |dkD  �rg }g }t        t        | |«      «      D ]Ü  \  }	}
|	j                  ||z  «       |	j                  ddd|z  z
  t	        d«      z   z
  dd|z  z
  t	        d«      z   d«       |	j                  «        t        |	|||«       d–— |
D ]b  \  }}|	j                  |«       |j                  |	j                  «       «       |j                  t        |
||«      «       |	j                  |«       Œd ŒÞ t        ||z  |dz
  ||||«      D ]  }d –— Œ y y ­w)Nr   éÿ   é´   é   é   r   )ÚlistÚzipÚpensizeÚpencolorr   Úpendownr   r   ÚappendÚcloner   ÚrightÚtree)ÚtlistÚsizeÚlevelÚwidthfactorÚbranchlistsr   r   ÚlstÚbrsr   r   r   r   Úxs                 r   r-   r-      s  è ø€ ð ˆqƒyØˆØˆÜ!¤# e¨KÓ"8Ö9‰MˆAˆzØ�I‰I�t˜kÑ)Ô+Ø�J‰J˜˜s R¨%¡ZÑ/´)¸B³-Ñ?Ñ@Ø˜b 5™jÑ(¬9°R«=Ñ8Øôð �I‰IŒKÜ�Q˜˜e YÔ0ØŠGÛ%/Ñ!��zØ—‘�u”Ø—
‘
˜1Ÿ7™7›9Ô%Ø—
‘
œ9 Z°¸HÓEÔFØ—‘˜•ñ	 &0ð :ô �c˜4 
™?¨E°!©G°[À#Ø ö+ˆAà‹Jñ+ð! ùs   ‚D!D#c                 ó  — t        d«       | j                  «        | j                  d«       | j                  «        | j	                  d«       | j                  «        | j                  ||«       | j                  «        y )Nr!   r   éZ   )r   ÚresetÚspeedÚ
hideturtler   ÚpenupÚsetposr)   )r   r5   Úys      r   Ústartr>   7   sP   € Üˆc„NØ‡G�G„IØ‡G�GˆA„JØ‡L�L„NØ‡F�Fˆ2„JØ‡G�G„IØ‡H�HˆQˆq„MØ‡I�I…Kr   c                 óf   — |j                  «        t        |dd«       t        |gd| dg d¢g«      }|S )Né   i0ÿÿÿéP   çš™™™™™¹?)©é-   g®Gázæ?)r   çÍÌÌÌÌÌä?©éÓÿÿÿg¸…ëQ¸æ?©r:   r>   r-   ©r0   Úpenr   s      r   Údoit1rK   A   s5   € Ø‡N�NÔÜ	ˆ#ˆr�4ÔÜˆsˆe�R˜ Ò&IÐ%JÓL€AØ€Hr   c                 óf   — |j                  «        t        |dd«       t        |gd| dddgg«      }|S )Niyÿÿÿi~ÿÿÿéx   rB   rC   rF   rH   rI   s      r   Údoit2rN   G   s9   € Ø‡N�NÔÜ	ˆ#ˆt�TÔÜˆsˆe�S˜% ¨°JÐ'@Ð&AÓC€AØ€Hr   c                 óf   — |j                  «        t        |dd«       t        |gd| dg d¢g«      }|S )Né¾   i¦ÿÿÿéd   rB   ))rD   gffffffæ?)r   g
×£p=
ç?)rG   rE   rH   rI   s      r   Údoit3rR   M   s5   € Ø‡N�NÔÜ	ˆ#ˆs�CÔÜˆsˆe�S˜% Ò'IÐ&JÓL€AØ€Hr   c                  ó„  — t        «       } | j                  «        t        dd«       t        dt        d¬«      «      }t	        dt        d¬«      «      }t        dt        d¬«      «      }t        «       }	 d}|||fD ]  }	 |j                  «        Œ |dk(  rnŒ$t        dd	«       t        «       }d
||z
  z  S #  |dz  }Y ŒDxY w)NéK   r   é   r   )Úundobuffersizeé   é   é   é
   zruntime: %.2f sec.)r   Úhtr   rK   rN   rR   ÚclockÚ__next__)ÚpÚuÚsr   ÚaÚdoneÚbs          r   Úmainrd   T   s½   € Ü‹€AØ‡D�D„FÜ
ˆ2ˆa„LÜˆa” qÔ)Ó*€AÜˆa” qÔ)Ó*€AÜˆa” qÔ)Ó*€AÜ‹€AØ
ØˆØ�1�Q“ˆAðØ—
‘
•ð ð
 �1Š9Øð ô ˆ1ˆR„LÜ‹€AØ 1 Q¡3Ñ'Ð'øðØ˜‘	’ús   Á?B6Â6B?Ú__main__N)rZ   rX   )Ú__doc__Úturtler   r   r   r   Úrandomr   Útimer	   r\   r   r   r   r-   r>   rK   rN   rR   rd   Ú__name__© r   r   Ú<module>rl      s^   ðñ÷ 7Ó 6Ý Ý &òò;ò
,ó
ò0òòòò(ð, ˆzÒÙ„FÙ…Jð r   