From 0d1384fe289b6e490a98483bbec76ebc23e03969 Mon Sep 17 00:00:00 2001 From: Walter Bender Date: Mon, 27 Sep 2010 00:50:41 +0000 Subject: taking into account turtle skin size when mving turtle (#2378) --- diff --git a/TurtleArt/tacanvas.py b/TurtleArt/tacanvas.py index 8556e50..969ae33 100644 --- a/TurtleArt/tacanvas.py +++ b/TurtleArt/tacanvas.py @@ -642,8 +642,10 @@ class TurtleGraphics: self.tw.active_turtle = self.tw.turtles.get_turtle(k, False) self.tw.active_turtle.show() tx, ty = self.tw.active_turtle.get_xy() - self.xcor = -self.width / 2 + tx + 28 - self.ycor = self.height / 2 - ty - 30 + self.xcor = -self.width / 2 + tx + \ + self.tw.active_turtle.spr.rect.width/2 + self.ycor = self.height / 2 - ty - \ + self.tw.active_turtle.spr.rect.height/2 self.heading = self.tw.active_turtle.get_heading() self.setcolor(self.tw.active_turtle.get_color(), False) self.setgray(self.tw.active_turtle.get_gray(), False) diff --git a/TurtleArt/tawindow.py b/TurtleArt/tawindow.py index ac16d9c..170eaa3 100644 --- a/TurtleArt/tawindow.py +++ b/TurtleArt/tawindow.py @@ -1175,8 +1175,8 @@ class TurtleArtWindow(): self.selected_turtle.spr.set_layer(TOP_LAYER) self.selected_turtle.move((sx + dx, sy + dy)) else: - dx = x - sx - 30 - dy = y - sy - 30 + dx = x - sx - self.active_turtle.spr.rect.width/2 + dy = y - sy - self.active_turtle.spr.rect.height/2 self.canvas.seth(int(dragx + atan2(dy, dx)/DEGTOR + 5)/10 * 10) # If we are hoving, show popup help. @@ -1336,8 +1336,10 @@ class TurtleArtWindow(): self.selected_turtle.hide() self.turtles.remove_from_dict(k) else: - self._move_turtle(tx - self.canvas.width / 2 + 30, - self.canvas.height / 2 - ty - 30) + self._move_turtle(tx - self.canvas.width / 2 + \ + self.active_turtle.spr.rect.width/2, + self.canvas.height / 2 - ty - \ + self.active_turtle.spr.rect.height/2) self.selected_turtle = None self.active_turtle = self.turtles.get_turtle( self.default_turtle_name) -- cgit v0.9.1