1 ! Copyright (C) 2012 John Benediktsson
2 ! See https://factorcode.org/license.txt for BSD license
4 USING: accessors combinators colors colors.gray kernel math
21 [ [ cyan>> ] [ black>> ] bi + ]
22 [ [ magenta>> ] [ black>> ] bi + ]
23 [ [ yellow>> ] [ black>> ] bi + ] tri
24 [ 1.0 min 1.0 swap - ] tri@ 1.0 <rgba> ; inline
26 GENERIC: >cmyka ( color -- cmyka )
28 M: object >cmyka >rgba >cmyka ;
32 [ 1 swap - ] tri@ 3dup min min
33 [ [ - 0.0 1.0 clamp ] curry tri@ ] keep
43 } cleave + + + 1.0 min 1.0 swap -
44 ] [ alpha>> ] bi <gray> ;