]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Improve consistency of colorsys.rgb_to_hsv (GH-27277)
authorseb-hub <45536464+seb-hub@users.noreply.github.com>
Fri, 23 Jul 2021 12:59:30 +0000 (14:59 +0200)
committerGitHub <noreply@github.com>
Fri, 23 Jul 2021 12:59:30 +0000 (09:59 -0300)
Cache repeated difference to make code easier to read and consistent with colorsys.rgb_to_hls.

Lib/colorsys.py

index 0f52512a67d87c571835467b411ec8ec4e691230..9bdc83e377260339bf0578ab85d00ff8f9fbcc85 100644 (file)
@@ -125,13 +125,14 @@ def _v(m1, m2, hue):
 def rgb_to_hsv(r, g, b):
     maxc = max(r, g, b)
     minc = min(r, g, b)
+    rangec = (maxc-minc)
     v = maxc
     if minc == maxc:
         return 0.0, 0.0, v
-    s = (maxc-minc) / maxc
-    rc = (maxc-r) / (maxc-minc)
-    gc = (maxc-g) / (maxc-minc)
-    bc = (maxc-b) / (maxc-minc)
+    s = rangec / maxc
+    rc = (maxc-r) / rangec
+    gc = (maxc-g) / rangec
+    bc = (maxc-b) / rangec
     if r == maxc:
         h = bc-gc
     elif g == maxc: