summary refs log tree commit diff
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2018-04-02 19:48:16 -0400
committerJune McEnroe <june@causal.agency>2018-04-02 19:48:16 -0400
commit749acb403815a1a7553e5e42a8e99cc5eb1590ae (patch)
tree6bce3d231c14fafe3ae6e7128cbe3011fa1c7253
parentRewrite scheme in a more sensible order (diff)
downloadsrc-749acb403815a1a7553e5e42a8e99cc5eb1590ae.tar.gz
src-749acb403815a1a7553e5e42a8e99cc5eb1590ae.zip
Modulo H and saturate S, V in scheme
-rw-r--r--bin/scheme.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/bin/scheme.c b/bin/scheme.c
index cd41c6f4..2187ceb1 100644
--- a/bin/scheme.c
+++ b/bin/scheme.c
@@ -34,7 +34,11 @@ static const struct Hsv { double h, s, v; }
     M = { 300.0, 1.0, 1.0 };
 
 static struct Hsv x(struct Hsv o, double hd, double sf, double vf) {
-    return (struct Hsv) { o.h + hd, o.s * sf, o.v * vf };
+    return (struct Hsv) {
+        fmod(o.h + hd, 360.0),
+        fmin(o.s * sf, 1.0),
+        fmin(o.v * vf, 1.0),
+    };
 }
 
 struct Ansi {