blob: 984ad636251e06b4299054139b5941e9d6283c8b [file] [log] [blame]
[email protected]2b3ee51b2014-08-17 09:52:031<!DOCTYPE html>
[email protected]2b3ee51b2014-08-17 09:52:032<script src="../../resources/testharness.js"></script>
[email protected]bac90e12014-08-25 17:58:013<script src="../../resources/testharnessreport.js"></script>
hs1217.lee33bb8aa12016-09-27 18:20:194<script src="./resources/geometry-interfaces-test-helpers.js"></script>
[email protected]2b3ee51b2014-08-17 09:52:035<script>
hs1217.leec65c410f2016-11-08 10:37:176
7test(function() {
8 var matrix = new DOMMatrix();
9 assert_identity_2d_matrix(matrix);
10 var result = matrix.translate();
11 assert_identity_2d_matrix(result);
12 assert_identity_2d_matrix(matrix);
13}, "DOMMatrix.translate()");
14
15test(function() {
16 var matrix = new DOMMatrix();
17 assert_identity_2d_matrix(matrix);
18 var result = matrix.translate(6);
19 assert_2d_matrix_equals(result, [1, 0, 0, 1, 6, 0]);
20 assert_identity_2d_matrix(matrix);
21}, "DOMMatrix.translate(tx)");
22
[email protected]2b3ee51b2014-08-17 09:52:0323test(function() {
24 var matrix = new DOMMatrix();
hs1217.lee33bb8aa12016-09-27 18:20:1925 assert_identity_2d_matrix(matrix);
[email protected]2b3ee51b2014-08-17 09:52:0326 var result = matrix.translate(2, 3);
hs1217.lee33bb8aa12016-09-27 18:20:1927 assert_2d_matrix_equals(result, [1, 0, 0, 1, 2, 3]);
28 assert_identity_2d_matrix(matrix);
[email protected]2b3ee51b2014-08-17 09:52:0329}, "DOMMatrix.translate(tx, ty)");
30
31test(function() {
32 var matrix = new DOMMatrix();
33 matrix.translateSelf(2, 3);
hs1217.lee33bb8aa12016-09-27 18:20:1934 assert_2d_matrix_equals(matrix, [1, 0, 0, 1, 2, 3]);
[email protected]2b3ee51b2014-08-17 09:52:0335 var result = matrix.translate(4, 2);
hs1217.lee33bb8aa12016-09-27 18:20:1936 assert_2d_matrix_equals(result, [1, 0, 0, 1, 6, 5]);
37 assert_2d_matrix_equals(matrix, [1, 0, 0, 1, 2, 3]);
[email protected]2b3ee51b2014-08-17 09:52:0338}, "DOMMatrix.translate(tx, ty) with non-identity");
39
40test(function() {
41 var matrix = new DOMMatrix();
hs1217.lee33bb8aa12016-09-27 18:20:1942 assert_identity_2d_matrix(matrix);
hs1217.leec65c410f2016-11-08 10:37:1743 var result = matrix.translateSelf();
44 assert_identity_2d_matrix(result);
45 assert_identity_2d_matrix(matrix);
46}, "DOMMatrix.translateSelf()");
47
48test(function() {
49 var matrix = new DOMMatrix();
50 assert_identity_2d_matrix(matrix);
51 var result = matrix.translateSelf(5);
52 assert_2d_matrix_equals(result, [1, 0, 0, 1, 5, 0]);
53 assert_2d_matrix_equals(matrix, [1, 0, 0, 1, 5, 0]);
54}, "DOMMatrix.translateSelf(tx)");
55
56test(function() {
57 var matrix = new DOMMatrix();
58 assert_identity_2d_matrix(matrix);
[email protected]2b3ee51b2014-08-17 09:52:0359 var result = matrix.translateSelf(4, 2);
hs1217.lee33bb8aa12016-09-27 18:20:1960 assert_2d_matrix_equals(result, [1, 0, 0, 1, 4, 2]);
61 assert_2d_matrix_equals(matrix, [1, 0, 0, 1, 4, 2]);
[email protected]2b3ee51b2014-08-17 09:52:0362}, "DOMMatrix.translateSelf(tx, ty)");
63
64test(function() {
65 var matrix = new DOMMatrix();
hs1217.lee33bb8aa12016-09-27 18:20:1966 assert_identity_2d_matrix(matrix);
[email protected]2b3ee51b2014-08-17 09:52:0367 var result = matrix.translate(2, 3, 4);
hs1217.lee33bb8aa12016-09-27 18:20:1968 assert_3d_matrix_equals(result, [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2, 3, 4, 1]);
69 assert_identity_2d_matrix(matrix);
[email protected]2b3ee51b2014-08-17 09:52:0370}, "DOMMatrix.translate(tx, ty, tz)");
71
72test(function() {
73 var matrix = new DOMMatrix();
74 matrix.translateSelf(2, 3);
hs1217.lee33bb8aa12016-09-27 18:20:1975 assert_2d_matrix_equals(matrix, [1, 0, 0, 1, 2, 3]);
[email protected]2b3ee51b2014-08-17 09:52:0376 var result = matrix.translate(4, 2, 3);
hs1217.lee33bb8aa12016-09-27 18:20:1977 assert_3d_matrix_equals(result, [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 6, 5, 3, 1]);
78 assert_2d_matrix_equals(matrix, [1, 0, 0, 1, 2, 3]);
[email protected]2b3ee51b2014-08-17 09:52:0379}, "DOMMatrix.translate(tx, ty, tz) with non-identity");
80
81test(function() {
82 var matrix = new DOMMatrix();
hs1217.lee33bb8aa12016-09-27 18:20:1983 assert_identity_2d_matrix(matrix);
[email protected]2b3ee51b2014-08-17 09:52:0384 var result = matrix.translateSelf(4, 2, 3);
hs1217.lee33bb8aa12016-09-27 18:20:1985 assert_3d_matrix_equals(result, [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 4, 2, 3, 1]);
86 assert_3d_matrix_equals(matrix, [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 4, 2, 3, 1]);
[email protected]2b3ee51b2014-08-17 09:52:0387}, "DOMMatrix.translateSelf(tx, ty, tz)");
88
89test(function() {
90 var matrix = new DOMMatrix();
hs1217.lee33bb8aa12016-09-27 18:20:1991 assert_identity_2d_matrix(matrix);
[email protected]2b3ee51b2014-08-17 09:52:0392 matrix.m14 = 2;
93 matrix.m24 = 3;
94 matrix.m34 = 4;
95 matrix.m44 = 7;
hs1217.lee33bb8aa12016-09-27 18:20:1996 assert_3d_matrix_equals(matrix, [1, 0, 0, 2, 0, 1, 0, 3, 0, 0, 1, 4, 0, 0, 0, 7]);
[email protected]2b3ee51b2014-08-17 09:52:0397 matrix.translateSelf(7, -8, 2);
hs1217.lee33bb8aa12016-09-27 18:20:1998 assert_3d_matrix_equals(matrix, [1, 0, 0, 2, 0, 1, 0, 3, 0, 0, 1, 4, 7, -8, 2, 5]);
[email protected]2b3ee51b2014-08-17 09:52:0399}, "DOMMatrix.translateSelf(tx, ty, tz) Homogeneous Coordinates");
[email protected]2b3ee51b2014-08-17 09:52:03100</script>