DOMMatrix.js 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.default = void 0;
  6. function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
  7. class DOMMatrix {
  8. constructor(transform) {
  9. _defineProperty(this, "_is2D", true);
  10. _defineProperty(this, "m11", 1.0);
  11. _defineProperty(this, "m12", 0.0);
  12. _defineProperty(this, "m13", 0.0);
  13. _defineProperty(this, "m14", 0.0);
  14. _defineProperty(this, "m21", 0.0);
  15. _defineProperty(this, "m22", 1.0);
  16. _defineProperty(this, "m23", 0.0);
  17. _defineProperty(this, "m24", 0.0);
  18. _defineProperty(this, "m31", 0.0);
  19. _defineProperty(this, "m32", 0.0);
  20. _defineProperty(this, "m33", 1.0);
  21. _defineProperty(this, "m34", 0.0);
  22. _defineProperty(this, "m41", 0.0);
  23. _defineProperty(this, "m42", 0.0);
  24. _defineProperty(this, "m43", 0.0);
  25. _defineProperty(this, "m44", 1.0);
  26. if (transform && transform.length === 6) {
  27. this.m11 = transform[0];
  28. this.m12 = transform[1];
  29. this.m21 = transform[2];
  30. this.m22 = transform[3];
  31. this.m41 = transform[4];
  32. this.m42 = transform[5];
  33. this._is2D = true;
  34. return this;
  35. }
  36. if (transform && transform.length === 16) {
  37. this.m11 = transform[0];
  38. this.m12 = transform[1];
  39. this.m13 = transform[2];
  40. this.m14 = transform[3];
  41. this.m21 = transform[4];
  42. this.m22 = transform[5];
  43. this.m23 = transform[6];
  44. this.m24 = transform[7];
  45. this.m31 = transform[8];
  46. this.m32 = transform[9];
  47. this.m33 = transform[10];
  48. this.m34 = transform[11];
  49. this.m41 = transform[12];
  50. this.m42 = transform[13];
  51. this.m43 = transform[14];
  52. this.m44 = transform[15];
  53. this._is2D = false;
  54. return this;
  55. }
  56. if (transform) {
  57. throw new TypeError('Failed to construct \'DOMMatrix\': The sequence must contain 6 elements for a 2D matrix or 16 elements for a 3D matrix.');
  58. }
  59. this._is2D = false;
  60. }
  61. get isIdentity() {
  62. if (this._is2D) {
  63. return this.m11 == 1.0 && this.m12 == 0.0 && this.m21 == 0.0 && this.m22 == 1.0 && this.m41 == 0.0 && this.m42 == 0.0;
  64. } else {
  65. return this.m11 = 1.0 && this.m12 === 0.0 && this.m13 === 0.0 && this.m14 === 0.0 && this.m21 === 0.0 && this.m22 === 1.0 && this.m23 === 0.0 && this.m24 === 0.0 && this.m31 === 0.0 && this.m32 === 0.0 && this.m33 === 1.0 && this.m34 === 0.0 && this.m41 === 0.0 && this.m42 === 0.0 && this.m43 === 0.0 && this.m44 === 1.0;
  66. }
  67. }
  68. get a() {
  69. return this.m11;
  70. }
  71. set a(value) {
  72. this.m11 = value;
  73. }
  74. get b() {
  75. return this.m12;
  76. }
  77. set b(value) {
  78. this.m12 = value;
  79. }
  80. get c() {
  81. return this.m21;
  82. }
  83. set c(value) {
  84. this.m21 = value;
  85. }
  86. get d() {
  87. return this.m22;
  88. }
  89. set d(value) {
  90. this.m22 = value;
  91. }
  92. get e() {
  93. return this.m41;
  94. }
  95. set e(value) {
  96. this.m41 = value;
  97. }
  98. get f() {
  99. return this.m42;
  100. }
  101. set f(value) {
  102. this.m42 = value;
  103. }
  104. get is2D() {
  105. return this._is2D;
  106. }
  107. }
  108. exports.default = DOMMatrix;