gloss-accelerate-1.8.0.0: Extras to interface Gloss and Accelerate

Safe HaskellNone

Graphics.Gloss.Accelerate.Data.Point

Contents

Synopsis

Point data type

type Point = XY FloatSource

An abstract point value on the xy-plane.

Point creation

makePointSource

Arguments

:: Exp Float

x-coordinate

-> Exp Float

y-coordinate

-> Exp Point 

Make a custom point

xyOfPoint :: Exp Point -> (Exp Float, Exp Float)Source

Take the components of a point

pointOfIndexSource

Arguments

:: Int

width

-> Int

height

-> Exp DIM2 
-> Exp Point 

Convert a two-dimensional index into a point centered in a plane of the given width and height.

Testing points

pointInBoxSource

Arguments

:: Exp Point

point to test

-> Exp Point

corner of box

-> Exp Point

opposite corner of box

-> Exp Bool 

Test whether a point lies within a rectangular box that is oriented on the x-y plane. The points P1-P2 are opposing points of the box, but need not be in a particular order.

    P2 +-------+
       |       |
       | + P0  |
       |       |
       +-------+ P1