@ƭ]dZddlddlmZmZddlmZmZdZ dedezdz zZ d Z d Z d Z d Zdd ZdZdZdZdZddeddfdZefdZdZedk(reZeyy)a xturtle-example-suite: xtx_kites_and_darts.py Constructs two aperiodic penrose-tilings, consisting of kites and darts, by the method of inflation in six steps. Starting points are the patterns "sun" consisting of five kites and "star" consisting of five darts. For more information see: http://en.wikipedia.org/wiki/Penrose_tiling ------------------------------------------- )*)cospi) perf_countersleepgP/7? ct|z}tdt|tdt|tdt|tdt|tdy)N$lfltfdrtlfls 9/opt/alt/python312/lib64/python3.12/turtledemo/penrose.pykiterJ QBrFqEsGrFrFrFsGqEsGct|z}tdt|tdt|tdt|tdt|tdy)Nr rrrs rdartr%rrc |dk(rEt\}}ttt|dt|d}}}dt|||f<yt |z}t dt||dz t|tdt||dz t dt|tztdt||dz t dt|td t||dz t dy) Nrr Tr r) posintheadingroundtiledictrr inflatedartrr inflatekitedrnpxpyhxyrs rr(r(1sAvBgi.%1+uR{a1 !Aa QBrFAaCqEsGAaCrFqsGsGAaCrFqEsGAaCrFrc|dk(rEt\}}ttt|dt|d}}}dt|||f<yt |z}t ||dz tdt|tdt||dz tdt|tztdt||dz t|td y) Nrr Frr r!6~r) r"r#r$r%r&rr(rrrr'r)r*s rr'r'GsAvBgi.%1+uR{a1!!Aa QBAaCrFqEsGAaCrFqsGsGAaCqEsGrc*t|t|zz}t|dz |dz |tD]a}|\}}}t ||t |t|rt dtddnt dtddtcy)NgY@rblack)r?rr)r6rr) clearr shapesizer&setpos setheadingshapecolorstamp)rr+thkr.r/r0s rdrawr@Zs{ G AqDA agqw# 1aq! 1 A; &M '< ( &M '< ( rcRtdD]}t||tdyNH)ranger(rrr+is rsunrHj! 1XAq 2rcRtdD]}t||tdyrB)rEr'rrFs rstarrKorIrctdttdtt dt tt dtt dt tdy)Nrdrrr)tracer begin_polyrend_polyregister_shapeget_polyrrr makeshapesrTtsJ 1ILI J68:&LI J68:& 1Ircjttttt dy)Nuser)resethtpurT resizemoderSrrstartr[s GDDLvr)rrcdt|tdiatd|||t |||tdt tDcgc]}t|s |c}}t tDcgc]}t|r |c}}t d||||zfzycc}wcc}w)Nrrz"%d kites and %d darts = %d pieces.)gotor:r&rNr@lenprint)rr+funstartposr>r/nknds rtestrfsNqMH 1I1IArN 1I  1AXa[a 1 2B  5A!a 5 6B ."b"R% @A2 5sB(!B(9B-B-cttdD]<}t}td||t}||z }|dks/t d|z >y)Ni,r)r[rEclockrfr)rbrGabts rdemormsJ G 1X G S!S G E q5 !a%L rctdtdddttt dtt t dtddt dddtd d d td ddy)Nlogog333333?rrr5i8gffffff?rzPlease wait...center)z Arial Blackr bold)alignfontiXrh)Fu)rcDone) modebgcolorrmrHrrKpencolorr_writerfrSrrmainr{sgL CaI !HJ W4L SQ :<a)$ r__main__N)r)__doc__turtlemathrrtimerrirrr)rrr(r'r@rHrKrTr[rfrmr{__name__msgmainlooprSrrrs -AbDG      , &    !u B  z &C Jr