lib64
/
python3.8
/
turtledemo
/
Go to Home Directory
+
Upload
Create File
root@0UT1S:~$
Execute
By Order of Mr.0UT1S
[DIR] ..
N/A
[DIR] __pycache__
N/A
__init__.py
314 bytes
Rename
Delete
__main__.py
13.91 KB
Rename
Delete
bytedesign.py
4.15 KB
Rename
Delete
chaos.py
951 bytes
Rename
Delete
clock.py
3.13 KB
Rename
Delete
colormixer.py
1.31 KB
Rename
Delete
forest.py
2.90 KB
Rename
Delete
fractalcurves.py
3.39 KB
Rename
Delete
lindenmayer.py
2.38 KB
Rename
Delete
minimal_hanoi.py
2.00 KB
Rename
Delete
nim.py
6.36 KB
Rename
Delete
paint.py
1.26 KB
Rename
Delete
peace.py
1.04 KB
Rename
Delete
penrose.py
3.30 KB
Rename
Delete
planet_and_moon.py
2.76 KB
Rename
Delete
rosette.py
1.33 KB
Rename
Delete
round_dance.py
1.76 KB
Rename
Delete
sorting_animate.py
4.91 KB
Rename
Delete
tree.py
1.37 KB
Rename
Delete
turtle.cfg
160 bytes
Rename
Delete
two_canvases.py
1.09 KB
Rename
Delete
yinyang.py
820 bytes
Rename
Delete
#! /usr/bin/python3.8 """ turtle-example-suite: tdemo_bytedesign.py An example adapted from the example-suite of PythonCard's turtle graphics. It's based on an article in BYTE magazine Problem Solving with Logo: Using Turtle Graphics to Redraw a Design November 1982, p. 118 - 134 ------------------------------------------- Due to the statement t.delay(0) in line 152, which sets the animation delay to 0, this animation runs in "line per line" mode as fast as possible. """ from turtle import Turtle, mainloop from time import perf_counter as clock # wrapper for any additional drawing routines # that need to know about each other class Designer(Turtle): def design(self, homePos, scale): self.up() for i in range(5): self.forward(64.65 * scale) self.down() self.wheel(self.position(), scale) self.up() self.backward(64.65 * scale) self.right(72) self.up() self.goto(homePos) self.right(36) self.forward(24.5 * scale) self.right(198) self.down() self.centerpiece(46 * scale, 143.4, scale) self.getscreen().tracer(True) def wheel(self, initpos, scale): self.right(54) for i in range(4): self.pentpiece(initpos, scale) self.down() self.left(36) for i in range(5): self.tripiece(initpos, scale) self.left(36) for i in range(5): self.down() self.right(72) self.forward(28 * scale) self.up() self.backward(28 * scale) self.left(54) self.getscreen().update() def tripiece(self, initpos, scale): oldh = self.heading() self.down() self.backward(2.5 * scale) self.tripolyr(31.5 * scale, scale) self.up() self.goto(initpos) self.setheading(oldh) self.down() self.backward(2.5 * scale) self.tripolyl(31.5 * scale, scale) self.up() self.goto(initpos) self.setheading(oldh) self.left(72) self.getscreen().update() def pentpiece(self, initpos, scale): oldh = self.heading() self.up() self.forward(29 * scale) self.down() for i in range(5): self.forward(18 * scale) self.right(72) self.pentr(18 * scale, 75, scale) self.up() self.goto(initpos) self.setheading(oldh) self.forward(29 * scale) self.down() for i in range(5): self.forward(18 * scale) self.right(72) self.pentl(18 * scale, 75, scale) self.up() self.goto(initpos) self.setheading(oldh) self.left(72) self.getscreen().update() def pentl(self, side, ang, scale): if side < (2 * scale): return self.forward(side) self.left(ang) self.pentl(side - (.38 * scale), ang, scale) def pentr(self, side, ang, scale): if side < (2 * scale): return self.forward(side) self.right(ang) self.pentr(side - (.38 * scale), ang, scale) def tripolyr(self, side, scale): if side < (4 * scale): return self.forward(side) self.right(111) self.forward(side / 1.78) self.right(111) self.forward(side / 1.3) self.right(146) self.tripolyr(side * .75, scale) def tripolyl(self, side, scale): if side < (4 * scale): return self.forward(side) self.left(111) self.forward(side / 1.78) self.left(111) self.forward(side / 1.3) self.left(146) self.tripolyl(side * .75, scale) def centerpiece(self, s, a, scale): self.forward(s); self.left(a) if s < (7.5 * scale): return self.centerpiece(s - (1.2 * scale), a, scale) def main(): t = Designer() t.speed(0) t.hideturtle() t.getscreen().delay(0) t.getscreen().tracer(0) at = clock() t.design(t.position(), 2) et = clock() return "runtime: %.2f sec." % (et-at) if __name__ == '__main__': msg = main() print(msg) mainloop()
Save