{-# LANGUAGE OverloadedStrings #-} module Main where import Data.Time.Clock.POSIX import qualified Graphics.NanoVG.Simple as NS import qualified Graphics.NanoVG.Picture as P import qualified NanoVG as NVG main :: IO () main = do start <- getPOSIXTime NS.run 800 600 "nanovg Playground" $ NS.showFPS "Liberation Sans" $ NS.loadFont "/usr/share/fonts/truetype/liberation/LiberationSans-Regular.ttf" "Liberation Sans" $ P.asWindow $ getPOSIXTime >>= \time -> pure $ P.rotateP (400, 300) (realToFrac $ time - start) $ P.scaleP' (0, 0) 10 $ mconcat [ P.translateP (12 * (x+1)) (12 * (y+1)) myRing | x <- [0..4] , y <- [0..3] ] where myRing = P.fill (NVG.Color 1 0 0 1) $ mconcat [ P.circle (0, 0) 4 , P.hole $ P.circle (0, 0) 3 ]