
Wumpus.Basic.PictureLanguage  Portability  GHC  Stability  unstable  Maintainer  stephen.tetley@gmail.com 





Description 
Composition operators for Pictures.
Note  empty pictures cannot exist in Wumpus hence the list
functions in this module are always supplied with an initial
picture, as well as the (possibly empty) list.


Synopsis 

    centerPoint :: Fractional u => Picture u > Point2 u   over :: (Num u, Ord u) => Picture u > Picture u > Picture u   under :: (Num u, Ord u) => Picture u > Picture u > Picture u   centerOver :: (Fractional u, Ord u) => Picture u > Picture u > Picture u   nextToH :: (Num u, Ord u) => Picture u > Picture u > Picture u   nextToV :: (Num u, Ord u) => Picture u > Picture u > Picture u   atPoint :: (Num u, Ord u) => Picture u > Point2 u > Picture u   centeredAt :: (Fractional u, Ord u) => Picture u > Point2 u > Picture u   stackOver :: (Num u, Ord u) => [Picture u] > Picture u > Picture u   zconcat :: (Num u, Ord u) => Picture u > [Picture u] > Picture u   hcat :: (Num u, Ord u) => Picture u > [Picture u] > Picture u   vcat :: (Num u, Ord u) => Picture u > [Picture u] > Picture u   stackOverCenter :: (Fractional u, Ord u) => [Picture u] > Picture u > Picture u   hspace :: (Num u, Ord u) => u > Picture u > Picture u > Picture u   vspace :: (Num u, Ord u) => u > Picture u > Picture u > Picture u   hsep :: (Num u, Ord u) => u > Picture u > [Picture u] > Picture u   vsep :: (Num u, Ord u) => u > Picture u > [Picture u] > Picture u   alignH :: (Fractional u, Ord u) => HAlign > Picture u > Picture u > Picture u   alignV :: (Fractional u, Ord u) => VAlign > Picture u > Picture u > Picture u   alignHSep :: (Fractional u, Ord u) => HAlign > u > Picture u > Picture u > Picture u   alignVSep :: (Fractional u, Ord u) => VAlign > u > Picture u > Picture u > Picture u   hcatA :: (Fractional u, Ord u) => HAlign > Picture u > [Picture u] > Picture u   vcatA :: (Fractional u, Ord u) => VAlign > Picture u > [Picture u] > Picture u   hsepA :: (Fractional u, Ord u) => HAlign > u > Picture u > [Picture u] > Picture u   vsepA :: (Fractional u, Ord u) => VAlign > u > Picture u > [Picture u] > Picture u 



Data types for alignment



Horizontal alignment  align to the top, center or bottom.
 Constructors   Instances  



Vertical alignment  align to the left, center or bottom.
 Constructors   Instances  


Operations on boundary



The center of a picture.


Composition



a `over` b
Place 'picture' a over b. The idea of over here is in
terms zordering, nither picture a or b are actually moved.



a `under` b
Similarly under draws the first picture behind
the second but move neither.
under was previously beneath.



Draw a centered over b  a is moved, b is static.
a `centerOver` b
centerOver was previously the (@) operator.



a `nextToH` b
Horizontal composition  move b, placing it to the right
of a.
nextToH was previously the (>) operator.



a `nextToV` b
Vertical composition  move b, placing it below a.
nextToV was previously the () operator.



Place the picture at the supplied point.
atPoint was previous the at operator.



Center the picture at the supplied point.



xs `stackOver` x
Stack the list of pictures xs over x.
Note, the first picture in the list is drawn at the top, all
the pictures in the list are drawn 'over' x. No pictures
are moved
[p1,p2,p3] stackOver p4 => [p1,p2,p3,p4] 


x `zconcat` xs
Concatenate x over the list of pictures xs.
x is drawn at the top. No pictures are moved.
p1 zconcat [p2,p3,p4] => [p1,p2,p3,p4] 


Concatenate the list pictures xs horizontally with nextToH
starting at x.



Concatenate the list of pictures xs vertically with nextToV
starting at x.



Stack pictures centered ontop of each other  the first
picture in the list is drawn at the top, last picture is on
drawn at the bottom.



hspace n a b
Horizontal composition  move b, placing it to the right
of a with a horizontal gap of n separating the pictures.



vspace n a b
Vertical composition  move b, placing it below a with a
vertical gap of n separating the pictures.



hsep n x xs
Concatenate the list of pictures xs horizontally with
hspace starting at x. The pictures are interspersed with
spaces of n units.



vsep n x xs
Concatenate the list of pictures xs vertically with
vspace starting at x. The pictures are interspersed with
spaces of n units.


Compose with alignment



alignH align a b
Horizontal composition  move b, placing it to the right
of a and align it with the top, center or bottom of a.



alignV align a b
Vertical composition  move b, placing it below a
and align it with the left, center or right of a.



alignHSep align sep a b
Spacing version of alignH  move b to the right of a
separated by sep units, align b according to align.



alignHSep align sep a b
Spacing version of alignV  move b below a
separated by sep units, align b according to align.



Variant of hcat that aligns the pictures as well as
concatenating them.



Variant of vcat that aligns the pictures as well as
concatenating them.



Variant of hsep that aligns the pictures as well as
concatenating and spacing them.



Variant of vsep that aligns the pictures as well as
concatenating and spacing them.


Produced by Haddock version 2.6.1 