Staging
v0.5.1
https://github.com/python/cpython
Raw File
Tip revision: 5673e27e722566441137ffb46de091ea86e933a7 authored by Georg Brandl on 15 May 2011, 15:52:42 UTC
Bump to 3.2.1rc1.
Tip revision: 5673e27
two_canvases.py
#!/usr/bin/env python3
## DEMONSTRATES USE OF 2 CANVASES, SO CANNOT BE RUN IN DEMOVIEWER!
"""turtle example: Using TurtleScreen and RawTurtle
for drawing on two distinct canvases.
"""
from turtle import TurtleScreen, RawTurtle, TK

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)

## Want to get some info?

#print(s1, s2)
#print(p, q)
#print(s1.turtles())
#print(s2.turtles())

TK.mainloop()
back to top