wallpaper-0.1.0.1: A library and executable for creating wallpaper, frieze, and rosette patterns.

Copyright(c) 2017 Jeffrey Rosenbluth
LicenseBSD-style (see LICENSE)
Maintainerjeffrey.rosenbluth@gmail.com
Safe HaskellNone
LanguageHaskell2010

Portrait

Contents

Description

Tools for creating symmtery images specific to JuicyPixels.

Synopsis

Wallpaper Generation

pattern :: RealFloat a => Options a -> ([Coef a] -> Recipe a) -> [Coef a] -> WPtype a -> PreProcess -> Maybe FilePath -> FilePath -> IO () Source #

Create and write a wallpaper or frieze image.

rosette :: RealFloat a => Options a -> [Coef a] -> Int -> Bool -> PreProcess -> Maybe FilePath -> FilePath -> IO () Source #

Create and write a rosette.

recipe :: RealFloat a => SymmetryGroup a -> [Coef a] -> Recipe a Source #

Build a recipe for a group.

Color Wheels

colorWheel :: RealFloat a => Complex a -> PixelRGBA8 Source #

A Color wheel on the entire complex plane. The color is solely based on the phase of the complex number.

Image Processing

invertImage :: (Pixel p, Invertible p) => Image p -> Image p Source #

Invert the colors of an image.

flipVertical :: Pixel a => Image a -> Image a Source #

Reflect and image about the horizontal axis.

flipHorizontal :: Pixel a => Image a -> Image a Source #

Reflect and image about the horizontal axis.

flipBoth :: Pixel a => Image a -> Image a Source #

Reflect and image about the both axis.

beside :: Pixel a => Image a -> Image a -> Image a Source #

Place two images side by side.

below :: Pixel a => Image a -> Image a -> Image a Source #

Place the second image below the first.

antiSymmHorizontal :: (Pixel a, Invertible a) => Image a -> Image a Source #

Flip an image horizontally, invert it and place it below the original image.

antiSymmVertical :: (Pixel a, Invertible a) => Image a -> Image a Source #

Flip an image vertically, invert it and place it beside the original image.

JuicyPixels Utilities

writeJpeg :: Word8 -> FilePath -> Image PixelRGBA8 -> IO () Source #

Write a jpeg image to a file.

writeImage :: FilePath -> Image PixelRGBA8 -> IO () Source #

Write an image file to disk, the image type depends on the file extension of the output file name.