RosettaCodeData/Task/Bitmap-Midpoint-circle-algorithm/Haskell/bitmap-midpoint-circle-algorithm-3.hs

12 lines
338 B
Haskell
Raw Permalink Normal View History

2013-04-10 16:19:29 -07:00
module CircleBitmapExample where
import Circle
import Bitmap
import Control.Monad.ST
drawCircle :: (Color c) => Image s c -> c -> Point -> Int -> ST s (Image s c)
drawCircle image colour center radius = do
let pixels = map Pixel (generateCirclePoints center radius)
forM_ pixels $ \pixel -> setPix image pixel colour
return image