diff options
author | Walter Bender <walter.bender@gmail.com> | 2013-01-23 18:51:12 (GMT) |
---|---|---|
committer | Walter Bender <walter.bender@gmail.com> | 2013-01-23 18:51:12 (GMT) |
commit | cd76414ef0f9e3903296b373889e864475cc19aa (patch) | |
tree | 56abcbc1e5494beaafe1783e0d480d7ae467bc7a /TurtleArt | |
parent | 8aaec7024ac8d0e5a25fac174b32a6d851f19a5c (diff) |
catch some potential zero divide situations
Diffstat (limited to 'TurtleArt')
-rw-r--r-- | TurtleArt/tacanvas.py | 18 |
1 files changed, 5 insertions, 13 deletions
diff --git a/TurtleArt/tacanvas.py b/TurtleArt/tacanvas.py index 1272b6b..1aac790 100644 --- a/TurtleArt/tacanvas.py +++ b/TurtleArt/tacanvas.py @@ -49,18 +49,10 @@ def wrap100(n): def calc_shade(c, s, invert=False): ''' Convert a color to the current shade (lightness/darkness). ''' # Assumes 16 bit input values - ''' if invert: - if s < 0: - return int(c / (1 + s * 0.8)) - return int((c - 65536 * s * 0.9) / (1 - (s * 0.9))) - else: - if s < 0: - return int(c * (1 + s * 0.8)) - return int(c + (65536 - c) * s * 0.9) - ''' - if invert: - if s < 0: + if s == -1: + return int(c) + elif s < 0: return int(c / (1 + s)) return int((c - 65536 * s) / (1 - s)) else: @@ -73,10 +65,10 @@ def calc_gray(c, g, invert=False): ''' Gray is a psuedo saturation calculation. ''' # Assumes 16 bit input values if g == 100: - return c + return int(c) if invert: if g == 0: - return c + return int(c) else: return int(((c * 100) - (32768 * (100 - g))) / g) else: |