From 2b88f63a3c78755ff19d8e535fbe93a2f16a87d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20v=2E=20L=C3=B6wis?= Date: Mon, 3 Jul 2006 10:19:49 +0000 Subject: [PATCH] Bug #1514693: Update turtle's heading when switching between degrees and radians. --- Lib/lib-tk/turtle.py | 7 ++++++- Misc/NEWS | 5 ++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/Lib/lib-tk/turtle.py b/Lib/lib-tk/turtle.py index cc5ffa10495..90d1aa327d0 100644 --- a/Lib/lib-tk/turtle.py +++ b/Lib/lib-tk/turtle.py @@ -30,6 +30,7 @@ class RawPen: self._tracing = 1 self._arrow = 0 self._delay = 10 # default delay for drawing + self._angle = 0.0 self.degrees() self.reset() @@ -39,6 +40,10 @@ class RawPen: Example: >>> turtle.degrees() """ + # Don't try to change _angle if it is 0, because + # _fullcircle might not be set, yet + if self._angle: + self._angle = (self._angle / self._fullcircle) * fullcircle self._fullcircle = fullcircle self._invradian = pi / (fullcircle * 0.5) @@ -365,7 +370,7 @@ class RawPen: steps = 1+int(min(11+abs(radius)/6.0, 59.0)*frac) w = 1.0 * extent / steps w2 = 0.5 * w - l = 2.0 * radius * sin(w2*self._invradian) + l = 2.0 * radius * sin(w2*self._invradian) if radius < 0: l, w, w2 = -l, -w, -w2 self.left(w2) diff --git a/Misc/NEWS b/Misc/NEWS index 764f7e0db96..a5faa9b88d5 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -19,8 +19,11 @@ Core and builtins Library ------- +- Bug #1514693: Update turtle's heading when switching between + degrees and radians. + - Reimplement turtle.circle using a polyline, to allow correct - filling of arcs. Also fixes #1514693. + filling of arcs. - Bug #1514703: Only setup canvas window in turtle when the canvas is created.