Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/TurtleArt/tasprite_factory.py
diff options
context:
space:
mode:
Diffstat (limited to 'TurtleArt/tasprite_factory.py')
-rwxr-xr-xTurtleArt/tasprite_factory.py56
1 files changed, 30 insertions, 26 deletions
diff --git a/TurtleArt/tasprite_factory.py b/TurtleArt/tasprite_factory.py
index c40d13a..3278e8a 100755
--- a/TurtleArt/tasprite_factory.py
+++ b/TurtleArt/tasprite_factory.py
@@ -305,7 +305,7 @@ class SVG:
self._innie_spacer - self._stroke_width)
self._hide_x = self._x + self._radius + self._stroke_width
- self._hide_y = self._y - self._radius * 0 + self._stroke_width
+ self._hide_y = self._y
self._show_x = self._x + self._radius + self._stroke_width
svg += self._rarc_to(1, -1)
@@ -321,7 +321,7 @@ class SVG:
svg += self._do_boolean()
svg += self._rline_to(0, self._radius / 2.0)
- self._show_y = self._y + self._radius * 0
+ self._show_y = self._y
self._show_y -= (self._innie_y1 + self._innie_y2 + self._stroke_width)
svg += self.line_to(xx, self._y)
@@ -402,7 +402,7 @@ class SVG:
svg += self._rline_to(0, yoffset)
self._hide_x = self._x + self._radius + self._stroke_width
- self._hide_y = self._y - self._radius * 0 + self._stroke_width
+ self._hide_y = self._y
self._show_x = self._x + self._radius + self._stroke_width
svg += self._rarc_to(1, -1)
@@ -421,8 +421,9 @@ class SVG:
svg += self._rline_to(-self._expand_x, 0)
- self._show_y = self._y + self._radius * 0
- self._show_y -= (self._innie_y1 + self._innie_y2 + self._stroke_width)
+ self._show_y = self._y
+ self._show_y -= \
+ (self._innie_y1 + self._innie_y2 + self._stroke_width * 2)
svg += self._end_boolean()
self.margins[0] = int((self._radius + self._stroke_width) * \
@@ -947,14 +948,19 @@ class SVG:
def _corner(self, sign_x, sign_y, a=90, l=0, s=1, start=True, end=True):
svg_str = ""
- if sign_x == 1 and sign_y == -1:
+ if sign_x == 1 and sign_y == -1: # Upper-left corner
self._hide_x = self._x + self._radius + self._stroke_width
- self._hide_y = self._y - self._radius * 0 + self._stroke_width
self._show_x = self._x + self._radius + self._stroke_width
- if sign_x == 1 and sign_y == 1 and len(self._innie) == 1:
- self._show_x = self._x - self._radius + self._stroke_width
- if sign_x == -1 and sign_y == 1:
- self._show_y = self._y + self._radius * 0 - self._stroke_width
+ self._hide_y = self._y + self._stroke_width
+ elif sign_x == 1 and sign_y == 1: # Upper-right corner
+ if len(self._innie) == 1 and self._innie[0]:
+ self._show_x = self._x - self._radius
+ self._show_y = self._hide_y
+ elif sign_x == -1 and sign_y == 1: # Lower-right corner
+ if not (len(self._innie) == 1 and self._innie[0]):
+ self._show_y = \
+ self._y - self._stroke_width
+
if self._radius > 0:
r2 = self._radius / 2.0
if start:
@@ -998,36 +1004,34 @@ class SVG:
r = self._dot_radius
y2 = y - 1.5
else:
- scale = self._scale * 2
+ scale = self._scale * 1.75
scale2 = scale / 2
- x = self._hide_x * scale2
- y = self._hide_y * scale2
+ x = self._hide_x * self._scale
+ y = self._hide_y * self._scale
r = self._dot_radius * scale2
- y2 = y - scale + scale2 / 2
+ y2 = y - scale2
svg += self._circle(r, x, y)
self._fill, self._stroke = HIDE_WHITE, HIDE_WHITE
svg += self._rect(10 * scale2, scale, x - 5 * scale2, y2)
self._fill, self._stroke = _saved_fill, _saved_stroke
return svg
- def _show_dot(self, noscale=False):
+ def _show_dot(self):
_saved_fill, _saved_stroke = self._fill, self._stroke
self._fill, self._stroke = HIT_GREEN, HIT_GREEN
svg = "</g>/n<g>/n"
- if noscale:
- scale = self._scale
- else:
- scale = self._scale * 2
+ scale = self._scale * 1.75
scale2 = scale / 2
- svg += self._circle(self._dot_radius * scale2, self._show_x * scale2,
- self._show_y * scale2)
+ svg += self._circle(self._dot_radius * scale2,
+ self._show_x * self._scale,
+ self._show_y * self._scale)
self._fill, self._stroke = SHOW_WHITE, SHOW_WHITE
svg += self._rect(10 * scale2,
- 2 * scale2, self._show_x * scale2 - 5 * scale2,
- self._show_y * scale2 - scale2 + scale2 / 2)
+ 2 * scale2, self._show_x * self._scale - 5 * scale2,
+ self._show_y * self._scale - scale2 + scale2 / 2)
svg += self._rect(2 * scale2, 10 * scale2,
- self._show_x * scale2 - scale2 + scale2 / 2,
- self._show_y * scale2 - 5 * scale2)
+ self._show_x * self._scale - scale2 + scale2 / 2,
+ self._show_y * self._scale - 5 * scale2)
self._fill, self._stroke = _saved_fill, _saved_stroke
return svg