mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-05-22 21:32:31 +00:00
python-3.6.zip added from Github
README.cosmo contains the necessary links.
This commit is contained in:
parent
75fc601ff5
commit
0c4c56ff39
4219 changed files with 1968626 additions and 0 deletions
86
third_party/python/Lib/turtledemo/round_dance.py
vendored
Normal file
86
third_party/python/Lib/turtledemo/round_dance.py
vendored
Normal file
|
@ -0,0 +1,86 @@
|
|||
""" turtle-example-suite:
|
||||
|
||||
tdemo_round_dance.py
|
||||
|
||||
(Needs version 1.1 of the turtle module that
|
||||
comes with Python 3.1)
|
||||
|
||||
Dancing turtles have a compound shape
|
||||
consisting of a series of triangles of
|
||||
decreasing size.
|
||||
|
||||
Turtles march along a circle while rotating
|
||||
pairwise in opposite direction, with one
|
||||
exception. Does that breaking of symmetry
|
||||
enhance the attractiveness of the example?
|
||||
|
||||
Press any key to stop the animation.
|
||||
|
||||
Technically: demonstrates use of compound
|
||||
shapes, transformation of shapes as well as
|
||||
cloning turtles. The animation is
|
||||
controlled through update().
|
||||
"""
|
||||
|
||||
from turtle import *
|
||||
|
||||
def stop():
|
||||
global running
|
||||
running = False
|
||||
|
||||
def main():
|
||||
global running
|
||||
clearscreen()
|
||||
bgcolor("gray10")
|
||||
tracer(False)
|
||||
shape("triangle")
|
||||
f = 0.793402
|
||||
phi = 9.064678
|
||||
s = 5
|
||||
c = 1
|
||||
# create compound shape
|
||||
sh = Shape("compound")
|
||||
for i in range(10):
|
||||
shapesize(s)
|
||||
p =get_shapepoly()
|
||||
s *= f
|
||||
c *= f
|
||||
tilt(-phi)
|
||||
sh.addcomponent(p, (c, 0.25, 1-c), "black")
|
||||
register_shape("multitri", sh)
|
||||
# create dancers
|
||||
shapesize(1)
|
||||
shape("multitri")
|
||||
pu()
|
||||
setpos(0, -200)
|
||||
dancers = []
|
||||
for i in range(180):
|
||||
fd(7)
|
||||
tilt(-4)
|
||||
lt(2)
|
||||
update()
|
||||
if i % 12 == 0:
|
||||
dancers.append(clone())
|
||||
home()
|
||||
# dance
|
||||
running = True
|
||||
onkeypress(stop)
|
||||
listen()
|
||||
cs = 1
|
||||
while running:
|
||||
ta = -4
|
||||
for dancer in dancers:
|
||||
dancer.fd(7)
|
||||
dancer.lt(2)
|
||||
dancer.tilt(ta)
|
||||
ta = -4 if ta > 0 else 2
|
||||
if cs < 180:
|
||||
right(4)
|
||||
shapesize(cs)
|
||||
cs *= 1.005
|
||||
update()
|
||||
return "DONE!"
|
||||
|
||||
if __name__=='__main__':
|
||||
print(main())
|
||||
mainloop()
|
Loading…
Add table
Add a link
Reference in a new issue