|
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.4.2 |