randomSites :: Int -> IO [Site]
randomSites n = do
     xs <- randomList 0 (fst imgsize - 1)
     ys <- randomList 0 (snd imgsize - 1)
     cs <- randomList 0 255
     return $ take n $ zip (zip xs ys) (map (uncurry3 rgb) (trips cs))


-- Math-related functions

-- l2 (Euclidian) norm
randomSites :: Int -> IO [Site]
randomSites n = do
     xs <- randomList 0 (fst imgsize - 1)
     ys <- randomList 0 (snd imgsize - 1)
     cs <- randomList 0 255
     return $ take n $ zip (zip xs ys) (map (uncurry3 rgb) (trips cs))


-- Math-related functions

-- l2 (Euclidian) norm
randomSites n = do
     xs <- randomList 0 (fst imgsize - 1)
     ys <- randomList 0 (snd imgsize - 1)
     cs <- randomList 0 255
     return $ take n $ zip (zip xs ys) (map (uncurry3 rgb) (trips cs))


-- Math-related functions

-- l2 (Euclidian) norm