summaryrefslogtreecommitdiff
path: root/Lib/lib-tk
diff options
context:
space:
mode:
authorMartin v. Löwis <martin@v.loewis.de>2006-07-10 22:11:28 +0000
committerMartin v. Löwis <martin@v.loewis.de>2006-07-10 22:11:28 +0000
commit7a1ead9b6b88e5d15ed865ccc2f5f208af4db044 (patch)
tree8c767b044595058e4ebf39671353a8cd96ca44fa /Lib/lib-tk
parentc1f1155fcc57a078d308e963a48e3983f147e344 (diff)
downloadcpython-7a1ead9b6b88e5d15ed865ccc2f5f208af4db044.tar.gz
Patch #1519566: Remove unused _tofill member.
Make begin_fill idempotent. Update demo2 to demonstrate filling of concave shapes.
Diffstat (limited to 'Lib/lib-tk')
-rw-r--r--Lib/lib-tk/turtle.py35
1 files changed, 23 insertions, 12 deletions
diff --git a/Lib/lib-tk/turtle.py b/Lib/lib-tk/turtle.py
index 9fa447c189..4cface736c 100644
--- a/Lib/lib-tk/turtle.py
+++ b/Lib/lib-tk/turtle.py
@@ -86,7 +86,6 @@ class RawPen:
self._color = "black"
self._filling = 0
self._path = []
- self._tofill = []
self.clear()
canvas._root().tkraise()
@@ -306,19 +305,15 @@ class RawPen:
{'fill': self._color,
'smooth': smooth})
self._items.append(item)
- if self._tofill:
- for item in self._tofill:
- self._canvas.itemconfigure(item, fill=self._color)
- self._items.append(item)
self._path = []
- self._tofill = []
self._filling = flag
if flag:
self._path.append(self._position)
- self.forward(0)
def begin_fill(self):
""" Called just before drawing a shape to be filled.
+ Must eventually be followed by a corresponding end_fill() call.
+ Otherwise it will be ignored.
Example:
>>> turtle.begin_fill()
@@ -331,7 +326,8 @@ class RawPen:
>>> turtle.forward(100)
>>> turtle.end_fill()
"""
- self.fill(1)
+ self._path = [self._position]
+ self._filling = 1
def end_fill(self):
""" Called after drawing a shape to be filled.
@@ -901,15 +897,30 @@ def demo2():
speed(speeds[sp])
color(0.25,0,0.75)
fill(0)
- color("green")
- left(130)
+ # draw and fill a concave shape
+ left(120)
up()
- forward(90)
+ forward(70)
+ right(30)
+ down()
color("red")
- speed('fastest')
+ speed("fastest")
+ fill(1)
+ for i in range(4):
+ circle(50,90)
+ right(90)
+ forward(30)
+ right(90)
+ color("yellow")
+ fill(0)
+ left(90)
+ up()
+ forward(30)
down();
+ color("red")
+
# create a second turtle and make the original pursue and catch it
turtle=Turtle()
turtle.reset()