data FlexibleDrawing = FlexD Size Bool Bool (Rect -> [DrawCommand]) instance Graphic FlexibleDrawing instance Show FlexibleDrawing flex :: (Rect -> [DrawCommand]) -> FlexibleDrawing flex' :: Size -> (Rect -> [DrawCommand]) -> FlexibleDrawing
Rect r s
, the drawing function should use drawing commands
that only affect pixels cordinates p such that r<=p && <r+s
.
Apart from the drawing function, the values of this type include the desired size, and whether the size should be fixed horizontally and/or vertially.
Values of this type are more useful as part of Drawings than by themselves.
Class Graphic.
Types Drawing, FixedDrawing, DrawCommand.
Some flexible drawings: filler, lbrace, et al.
FlexibleDrawing
is also described in the section
Types for simple graphical objects
in Fudgets Thesis
.