packages feed

chalkboard-1.9.0.16: examples/example/Main.hs

import Graphics.ChalkBoard

main :: IO ()
main = startChalkBoard [] $ \ cb -> loop cb 0 (cycle colors)

loop :: ChalkBoard -> Float -> [O RGB] -> IO ()
loop cb n rgb@(c1:c2:c3:_) | n >= 0.999 = loop cb (n - 1) (tail rgb)
              | otherwise = do
  drawChalkBoard cb (choose (o (lerp n (unO c3) (unO c2))) c1 <$> rotate (n * pi) (scale (n * 1.1) square))
  loop cb (n + 0.01) rgb

colors :: [O RGB]
colors = [red,green,blue,yellow,cyan,purple,black,white]