Go to the first, previous, next, last section, table of contents.

Coord interface


type Coord  = (Int,Int) -- this may very well change!
type FCoord = (Double,Double)

 {- basic coord arithmetic -}

addCoords    :: Coord  -> Coord  -> Coord
addFCoords   :: FCoord -> FCoord -> FCoord

 {- flip the sign iof both components -}
negateCoord  :: Coord  -> Coord
negateFCoord  :: FCoord -> FCoord

negateCoordX  :: Coord  -> Coord
negateFCoordX :: FCoord -> FCoord

negateCoordY  :: Coord  -> Coord
negateFCoordY :: FCoord -> FCoord

{- apply ops -}
transformCoord    :: Transform -> Coord  -> Coord
scaleCoord        :: Transform -> Coord  -> Coord
rotateCoord       :: Transform -> Coord  -> Coord
scaleRotateCoord  :: Transform -> Coord  -> Coord
translateCoord    :: Transform -> Coord  -> Coord
                 
transformFCoord   :: Transform -> FCoord -> FCoord
scaleFCoord       :: Transform -> FCoord -> FCoord
rotateFCoord      :: Transform -> FCoord -> FCoord
scaleRotateFCoord :: Transform -> FCoord -> FCoord
translateFCoord   :: Transform -> FCoord -> FCoord
                 
roundFCoord       :: FCoord    -> Coord


Go to the first, previous, next, last section, table of contents.