-- Ein Bild mit einem Shader verarbeiten shade :: Pixel a =>(Double->Double) -> Picture a -> Picture a shade f = map (map (shader f)) -- Invertieren eines Bildes invert :: Pixel a => Picture a -> Picture a invert = shade (\x -> 1.0 - x) -- Gammakorrektur eines Bildes gamma :: Pixel a => Double -> Picture a -> Picture a gamma g = shade (\x -> if x == 0 then 0 else x ** (1/g))