From 659dbd0adda20c3f8f9d43cd10dd8ef6b6606ce5 Mon Sep 17 00:00:00 2001 From: John Benediktsson Date: Sun, 21 Oct 2012 13:24:51 -0700 Subject: [PATCH] colors.hsv: adding complimentary-color. --- basis/colors/hsv/hsv.factor | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/basis/colors/hsv/hsv.factor b/basis/colors/hsv/hsv.factor index d604c9d914..65e51be475 100644 --- a/basis/colors/hsv/hsv.factor +++ b/basis/colors/hsv/hsv.factor @@ -55,3 +55,12 @@ M: hsva >rgba ( hsva -- rgba ) { [ b x = r z > and ] [ 5 x r - x z - / - ] } } cond 6 / 360 * x z - x / x a ] if ; + +: complimentary-color ( color -- color' ) + dup hsva? [ >rgba rgba>hsva ] unless + { + [ hue>> 180 + 360 mod ] + [ saturation>> ] + [ value>> ] + [ alpha>> ] + } cleave ;