|
From: <kr_...@us...> - 2003-05-31 19:08:41
|
Update of /cvsroot/htoolkit/gio/src/Graphics/UI/GIO
In directory sc8-pr-cvs1:/tmp/cvs-serv5199/src/Graphics/UI/GIO
Modified Files:
Canvas.hs
Log Message:
Added rotate, scale, translate and shearCanvas
Index: Canvas.hs
===================================================================
RCS file: /cvsroot/htoolkit/gio/src/Graphics/UI/GIO/Canvas.hs,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** Canvas.hs 30 May 2003 21:55:06 -0000 1.10
--- Canvas.hs 31 May 2003 19:08:37 -0000 1.11
***************
*** 52,55 ****
--- 52,61 ----
, drawBitmap
+ -- * Transform
+ , rotateCanvas
+ , scaleCanvas
+ , shearCanvas
+ , translateCanvas
+
-- * Font metrics
, fontMetrics
***************
*** 225,226 ****
--- 231,252 ----
drawBitmap :: Point -> Bitmap -> Canvas -> IO ()
drawBitmap p bitmap can = Port.drawBitmap p bitmap (hcanvas can)
+
+ --------------------------------------------------------------------
+ -- Transformations
+ --------------------------------------------------------------------
+
+ -- | Rotate the canvas clockwise with an angle in radians.
+ rotateCanvas :: Double -> Canvas -> IO ()
+ rotateCanvas angle can = Port.rotateCanvas angle (hcanvas can)
+
+ -- | Scale the canvas with a horizontal and vertical factor.
+ scaleCanvas :: Double -> Double -> Canvas -> IO ()
+ scaleCanvas sx sy can = Port.scaleCanvas sx sy (hcanvas can)
+
+ -- | Shear the canvas in a horizontal and vertical direction.
+ shearCanvas :: Double -> Double -> Canvas -> IO ()
+ shearCanvas sx sy can = Port.shearCanvas sx sy (hcanvas can)
+
+ -- | Translate (or move) the canvas in a horizontal and vertical direction.
+ translateCanvas :: Double -> Double -> Canvas -> IO ()
+ translateCanvas dx dy can = Port.translateCanvas dx dy (hcanvas can)
|