úÎ(­%À      needs GADTs and rank n types experimental Luke Palmer <lrpalmer@gmail.com>9 !AIndicate how a nonrectangular image is to be mapped to a sprite. WScaleHeight will set the height of the image to 1, and scale the width appropriately. UScaleWidth will set the width of the image to 1, and scale the height appropriately. IScaleMax will set the maximum of the height and width of the image to 1. $A sprite represents a bitmap image. "#$%&'()*Draw a4 represents a drawing which returns a value of type  a when selected. +,-./0 >Draw a Drawing on the screen in the current OpenGL coordinate = system (which, in absense of information, is (-1,-1) in the + lower left and (1,1) in the upper right). :Like runDrawing, but clears the screen first, and sets up . a little necessary OpenGL state. This is so 6 you can use this module and pretend that OpenGL doesn't  exist at all. KGiven a bounding box, lower left and upper right in the default coordinate 4 system (-1,-1) to (1,1), return the topmost drawing's value (with respect to   ") intersecting that bounding box. 1 7Perform initialization of the library. This can fail. 2,Draw a single pixel at the specified point. -Draw a line connecting the two given points. <Draw a regular polygon centered at the origin with n sides. ?Draw a unit circle centered at the origin. This is equivalent  to regularPoly 24. 3Draw a convex polygon given by the list of points. 1Translate the given drawing by the given amount. 1Rotate the given drawing counterclockwise by the  given number of radians.  scale x y d scales d by a factor of x in the  horizontal direction and y in the vertical direction. 3 colorFunc f d" modifies all colors appearing in d with  the function f. For example: ) colorFunc (\(r,g,b,a) -> (r,g,b,a/2)) d =Will draw d at greater transparency, regardless of the calls  to color within.  color c d* sets the color of the drawing to exactly c. 456$Convert an SDL.Surface to a Sprite. 79Load an image from a file and create a sprite out of it. Draw a sprite at the origin. Load a TTF font from a file. 8FDraw a string using a font. The resulting string will have height 1.       9      !"#$%&'(()*+,-./012345678 graphics-drawingcombinators-0.43Graphics.DrawingCombinatorsFont SpriteScaling ScaleHeight ScaleWidthScaleMaxSpriteDrawColorVec2 runDrawingdraw selectRegionclickoveroverlayemptyinitpointline regularPolycircle convexPoly translaterotatescale colorFunccolorsurfaceToSprite imageToSpritespriteopenFonttextgetFont spriteObjectspriteWidthRatspriteHeightRat spriteWidth spriteHeightDrawCxt colorTransFMapOverEmpty TransformGLDrawGLDrawM joinMaybesconvRealcong textureHackallocateTexture freeTexture padSurface textSprite