clem 0.4.1, ch-asdf 0.2.8, ch-util 0.2.2, lift 1.3.1, darcs ignored, smarkup 0.3.3
[CommonLispStat.git] / external / clem / test / test-transform.cl
blobd08d16feffda023897a9ee365fab9822f9ad0e35
2 (in-package :clem-test)
4 (defun test-affine-transform ()
5 (let ((xfrm (make-affine-transformation :x-shift -2d0 :y-shift -3d0 :theta (* -.25 pi)))
6 (coord1 (transpose (array->double-float-matrix #2A((10.0d0 20.0d0 1.0d0)))))
7 (coord2 (transpose (array->double-float-matrix #2A((2d0 2d0 1d0))))))
8 (let ((inv-xfrm (invert-matrix xfrm)))
9 (print-matrix (mat-mult xfrm coord1))
10 (print-matrix inv-xfrm)
11 (let ((hc (mat-mult inv-xfrm coord2)))
12 hc))))
14 (defun test-affine-transform-2 ()
15 (let ((t1 (clem:make-affine-transformation
16 :x-shift 20d0 :y-shift 20d0 :theta (/ (* 120 pi) 180) :x-scale (log 2) :y-scale (log 2)))
17 (t2 (clem:make-affine-transformation
18 :x-shift 100d0 :y-shift 100d0)))
19 (clem:print-matrix t1)
20 (clem:print-matrix t2)
21 (clem:print-matrix (clem:mat-mult t2 t1))))