|
| Graphics.DrawingCombinators | | Portability | needs GADTs and rank n types | | Stability | experimental | | Maintainer | Luke Palmer <lrpalmer@gmail.com> |
|
|
|
|
|
| Description |
Drawing combinators as a functional interface to OpenGL
(for 2D drawings only... for now).
This module is intended to be imported qualified, as in:
import Graphics.DrawingCombinators as Draw
It is recommended that you use this module in combination
with SDL; it has not been tested in any other environments.
For some reason the selection stuff (selectRegion, click)
crashes GHCi, but it works okay compiled.
|
|
| Synopsis |
|
|
|
|
| Basic types
|
|
|
| Draw a represents a drawing which returns a value of type
a when selected.
| Instances | |
|
|
|
| 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. This is so
you can use this module and pretend that OpenGL doesn't
exist at all.
|
|
|
|
| Selection
|
|
|
| Given a bounding box, lower left and upper right in the default coordinate
system (-1,-1) to (1,1), return the topmost drawing's value (with respect to
over) intersecting that bounding box.
|
|
|
|
| Combinators
|
|
|
|
|
|
|
|
| Initialization
|
|
|
| Perform initialization of the library. This can fail.
|
|
| Geometric Primitives
|
|
|
| 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.
|
|
|
| Draw a convex polygon given by the list of points.
|
|
| Transformations
|
|
|
| Translate the given drawing by the given amount.
|
|
|
| Rotate 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.
|
|
| Colors
|
|
|
|
|
| color c d sets the color of the drawing to exactly c.
|
|
|
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.
|
|
| Sprites (images from files)
|
|
|
| A sprite represents a bitmap image.
|
|
|
|
| Indicate how a nonrectangular image is to be mapped to a sprite.
| | Constructors | | ScaleMax | ScaleMax will set the maximum of the height and width of the image to 1.
| | ScaleWidth | ScaleWidth will set the width of the image to 1, and scale the height appropriately.
| | ScaleHeight | ScaleHeight will set the height of the image to 1, and scale the width appropriately.
|
|
|
|
|
| Convert an SDL.Surface to a Sprite.
|
|
|
| Load an image from a file and create a sprite out of it.
|
|
|
| Draw a sprite at the origin.
|
|
| Text
|
|
|
|
|
| Load a TTF font from a file.
|
|
|
| Draw a string using a font. The resulting string will have height 1.
|
|
| Produced by Haddock version 2.6.0 |