module Trans (
    trans,     -- :: Vertex -> Point  
               -- Die Koordinaten eines Koordinatenpunktes werden 
               -- in Pixel umgerechnet.
    transList, -- :: [Vertex] -> [Point]
               -- Umrechnung einer Liste von Koordinatenpunkten in
               -- Pixelpunkte.
    xWin, yWin -- :: Int 
               -- Festlegung der Fenstergroesse in Pixeln                 
    ) where 

inchToPixel  :: Float -> Int
inchToPixel x = round (100*x)

pixelToInch  :: Int -> Float
pixelToInch n = intToFloat n / 100

intToFloat   :: Int -> Float
intToFloat  n = fromInteger (toInteger n)

xWin, yWin :: Int
xWin = 600
yWin = 500
type Vertex = (Float,Float) 
type Point  = (Int,Int)
trans :: Vertex -> Point
trans (x,y) = ( xWin2 + inchToPixel x, 
                yWin2 - inchToPixel y )

xWin2, yWin2 :: Int
xWin2 = xWin `div` 2 
yWin2 = yWin `div` 2 

transList = map trans



