GENERIC: >rgba ( color -- rgba )
-M: rgba >rgba ( rgba -- rgba ) ;
+M: rgba >rgba ( rgba -- rgba ) ; inline
M: color red>> ( color -- red ) >rgba red>> ;
M: color green>> ( color -- green ) >rgba green>> ;
C: <gray> gray
M: gray >rgba ( gray -- rgba )
- [ gray>> dup dup ] [ alpha>> ] bi <rgba> ;
+ [ gray>> dup dup ] [ alpha>> ] bi <rgba> ; inline
M: gray red>> gray>> ;
{ 4 [ [ t ] [ p ] [ value>> ] tri ] }
{ 5 [ [ value>> ] [ p ] [ q ] tri ] }
} case
- ] [ alpha>> ] bi <rgba> ;
+ ] [ alpha>> ] bi <rgba> ; inline
:: rgba>hsva ( rgba -- hsva )
rgba >rgba-components :> ( r g b a )
[ [ cyan>> ] [ black>> ] bi + ]
[ [ magenta>> ] [ black>> ] bi + ]
[ [ yellow>> ] [ black>> ] bi + ] tri
- [ 1.0 min 1.0 swap - ] tri@ 1.0 <rgba> ;
+ [ 1.0 min 1.0 swap - ] tri@ 1.0 <rgba> ; inline
: rgba>cmyka ( rgba -- cmyka )
>rgba-components [
p q h value
p q h 1/3 - value
] if
- ] dip <rgba> ;
+ ] dip <rgba> ; inline
: rgba>hsla ( rgba -- hsla )
>rgba-components [| r g b |
[ [ 0.276066 * ] [ 0.639810 * ] bi* + - ]
[ [ 1.105450 * ] [ 1.729860 * ] bi* - - ]
3tri [ 0.0 1.0 clamp ] tri@
- ] dip <rgba> ;
+ ] dip <rgba> ; inline
: rgba>yiqa ( rgba -- yiqa )
>rgba-components [