diff CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/lib/python3.8/turtledemo/two_canvases.py @ 69:33d812a61356

planemo upload commit 2e9511a184a1ca667c7be0c6321a36dc4e3d116d
author jpayne
date Tue, 18 Mar 2025 17:55:14 -0400
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/lib/python3.8/turtledemo/two_canvases.py	Tue Mar 18 17:55:14 2025 -0400
@@ -0,0 +1,54 @@
+"""turtledemo.two_canvases
+
+Use TurtleScreen and RawTurtle to draw on two
+distinct canvases in a separate windows. The
+new window must be separately closed in
+addition to pressing the STOP button.
+"""
+
+from turtle import TurtleScreen, RawTurtle, TK
+
+def main():
+    root = TK.Tk()
+    cv1 = TK.Canvas(root, width=300, height=200, bg="#ddffff")
+    cv2 = TK.Canvas(root, width=300, height=200, bg="#ffeeee")
+    cv1.pack()
+    cv2.pack()
+
+    s1 = TurtleScreen(cv1)
+    s1.bgcolor(0.85, 0.85, 1)
+    s2 = TurtleScreen(cv2)
+    s2.bgcolor(1, 0.85, 0.85)
+
+    p = RawTurtle(s1)
+    q = RawTurtle(s2)
+
+    p.color("red", (1, 0.85, 0.85))
+    p.width(3)
+    q.color("blue", (0.85, 0.85, 1))
+    q.width(3)
+
+    for t in p,q:
+        t.shape("turtle")
+        t.lt(36)
+
+    q.lt(180)
+
+    for t in p, q:
+        t.begin_fill()
+    for i in range(5):
+        for t in p, q:
+            t.fd(50)
+            t.lt(72)
+    for t in p,q:
+        t.end_fill()
+        t.lt(54)
+        t.pu()
+        t.bk(50)
+
+    return "EVENTLOOP"
+
+
+if __name__ == '__main__':
+    main()
+    TK.mainloop()  # keep window open until user closes it