@mlightcad/data-model 1.2.6 → 1.2.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -838,7 +838,7 @@ var po = { exports: {} };
838
838
  function k(R, U, D) {
839
839
  return f(R) || b.apply(this, arguments);
840
840
  }
841
- function T(R, U) {
841
+ function M(R, U) {
842
842
  var D = this, gt, ft, ut, W = "loglevel";
843
843
  typeof R == "string" ? W += ":" + R : typeof R == "symbol" && (W = void 0);
844
844
  function mt(xt) {
@@ -920,18 +920,18 @@ var po = { exports: {} };
920
920
  var Ut = lt();
921
921
  Ut != null && (ut = Ht(Ut)), S.call(D);
922
922
  }
923
- c = new T(), c.getLogger = function(R) {
923
+ c = new M(), c.getLogger = function(R) {
924
924
  if (typeof R != "symbol" && typeof R != "string" || R === "")
925
925
  throw new TypeError("You must supply a name when creating a logger.");
926
926
  var U = h[R];
927
- return U || (U = h[R] = new T(
927
+ return U || (U = h[R] = new M(
928
928
  R,
929
929
  c.methodFactory
930
930
  )), U;
931
931
  };
932
- var O = typeof window !== e ? window.log : void 0;
932
+ var z = typeof window !== e ? window.log : void 0;
933
933
  return c.noConflict = function() {
934
- return typeof window !== e && window.log === c && (window.log = O), c;
934
+ return typeof window !== e && window.log === c && (window.log = z), c;
935
935
  }, c.getLoggers = function() {
936
936
  return h;
937
937
  }, c.default = c, c;
@@ -1647,8 +1647,8 @@ function Et(a, t) {
1647
1647
  return x;
1648
1648
  }, [{}]), c = !1, g = h.length - 1;
1649
1649
  for (; !Tt(e, 0, "EOF"); ) {
1650
- let x = function(O, R, U) {
1651
- return O.find((D, gt) => {
1650
+ let x = function(z, R, U) {
1651
+ return z.find((D, gt) => {
1652
1652
  var ft;
1653
1653
  return gt >= U && ((ft = D[R]) == null ? void 0 : ft.length);
1654
1654
  });
@@ -1658,13 +1658,13 @@ function Et(a, t) {
1658
1658
  break;
1659
1659
  }
1660
1660
  f.isMultiple || x[e.code].pop();
1661
- let { name: S, parser: b, isMultiple: k } = f, T = b == null ? void 0 : b(e, s, o);
1662
- if (T === qi) {
1661
+ let { name: S, parser: b, isMultiple: k } = f, M = b == null ? void 0 : b(e, s, o);
1662
+ if (M === qi) {
1663
1663
  s.rewind();
1664
1664
  break;
1665
1665
  }
1666
1666
  if (S) {
1667
- let [O, R] = function(U, D) {
1667
+ let [z, R] = function(U, D) {
1668
1668
  let gt = D.split("."), ft = U;
1669
1669
  for (let ut = 0; ut < gt.length - 1; ++ut) {
1670
1670
  let W = gt[ut];
@@ -1672,7 +1672,7 @@ function Et(a, t) {
1672
1672
  }
1673
1673
  return [ft, gt.at(-1)];
1674
1674
  }(o, S);
1675
- k ? (Object.hasOwn(O, R) || (O[R] = []), O[R].push(T)) : O[R] = T;
1675
+ k ? (Object.hasOwn(z, R) || (z[R] = []), z[R].push(M)) : z[R] = M;
1676
1676
  }
1677
1677
  f.pushContext && (g -= 1), c = !0, e = s.next();
1678
1678
  }
@@ -4316,8 +4316,8 @@ const xi = class xl {
4316
4316
  * @returns Return this matrix
4317
4317
  */
4318
4318
  multiplyMatrices(t, e) {
4319
- const s = t.elements, o = e.elements, h = this.elements, c = s[0], g = s[3], x = s[6], f = s[1], S = s[4], b = s[7], k = s[2], T = s[5], O = s[8], R = o[0], U = o[3], D = o[6], gt = o[1], ft = o[4], ut = o[7], W = o[2], mt = o[5], lt = o[8];
4320
- return h[0] = c * R + g * gt + x * W, h[3] = c * U + g * ft + x * mt, h[6] = c * D + g * ut + x * lt, h[1] = f * R + S * gt + b * W, h[4] = f * U + S * ft + b * mt, h[7] = f * D + S * ut + b * lt, h[2] = k * R + T * gt + O * W, h[5] = k * U + T * ft + O * mt, h[8] = k * D + T * ut + O * lt, this;
4319
+ const s = t.elements, o = e.elements, h = this.elements, c = s[0], g = s[3], x = s[6], f = s[1], S = s[4], b = s[7], k = s[2], M = s[5], z = s[8], R = o[0], U = o[3], D = o[6], gt = o[1], ft = o[4], ut = o[7], W = o[2], mt = o[5], lt = o[8];
4320
+ return h[0] = c * R + g * gt + x * W, h[3] = c * U + g * ft + x * mt, h[6] = c * D + g * ut + x * lt, h[1] = f * R + S * gt + b * W, h[4] = f * U + S * ft + b * mt, h[7] = f * D + S * ut + b * lt, h[2] = k * R + M * gt + z * W, h[5] = k * U + M * ft + z * mt, h[8] = k * D + M * ut + z * lt, this;
4321
4321
  }
4322
4322
  /**
4323
4323
  * Multiply every component of the matrix by the scalar value s.
@@ -4342,10 +4342,10 @@ const xi = class xl {
4342
4342
  * @returns Return this matrix
4343
4343
  */
4344
4344
  invert() {
4345
- const t = this.elements, e = t[0], s = t[1], o = t[2], h = t[3], c = t[4], g = t[5], x = t[6], f = t[7], S = t[8], b = S * c - g * f, k = g * x - S * h, T = f * h - c * x, O = e * b + s * k + o * T;
4346
- if (O === 0) return this.set(0, 0, 0, 0, 0, 0, 0, 0, 0);
4347
- const R = 1 / O;
4348
- return t[0] = b * R, t[1] = (o * f - S * s) * R, t[2] = (g * s - o * c) * R, t[3] = k * R, t[4] = (S * e - o * x) * R, t[5] = (o * h - g * e) * R, t[6] = T * R, t[7] = (s * x - f * e) * R, t[8] = (c * e - s * h) * R, this;
4345
+ const t = this.elements, e = t[0], s = t[1], o = t[2], h = t[3], c = t[4], g = t[5], x = t[6], f = t[7], S = t[8], b = S * c - g * f, k = g * x - S * h, M = f * h - c * x, z = e * b + s * k + o * M;
4346
+ if (z === 0) return this.set(0, 0, 0, 0, 0, 0, 0, 0, 0);
4347
+ const R = 1 / z;
4348
+ return t[0] = b * R, t[1] = (o * f - S * s) * R, t[2] = (g * s - o * c) * R, t[3] = k * R, t[4] = (S * e - o * x) * R, t[5] = (o * h - g * e) * R, t[6] = M * R, t[7] = (s * x - f * e) * R, t[8] = (c * e - s * h) * R, this;
4349
4349
  }
4350
4350
  /**
4351
4351
  * Transpose this matrix in place.
@@ -4579,8 +4579,8 @@ function Al(a, t, e = !1) {
4579
4579
  const c = t.length;
4580
4580
  for (let g = 0, x = c - 1; g < c; x = g++) {
4581
4581
  const f = t[g].x, S = t[g].y, b = t[x].x, k = t[x].y;
4582
- let T = S > o != k > o;
4583
- e && (T = S >= o != k >= o), T && s < (b - f) * (o - S) / (k - S) + f && (h = !h);
4582
+ let M = S > o != k > o;
4583
+ e && (M = S >= o != k >= o), M && s < (b - f) * (o - S) / (k - S) + f && (h = !h);
4584
4584
  }
4585
4585
  return h;
4586
4586
  }
@@ -4695,8 +4695,8 @@ function uc(a, t, e, s) {
4695
4695
  t,
4696
4696
  e,
4697
4697
  s
4698
- ), k = b[0] - S[0], T = b[1] - S[1], O = b[2] - S[2];
4699
- return g += Math.sqrt(k * k + T * T + O * O), g;
4698
+ ), k = b[0] - S[0], M = b[1] - S[1], z = b[2] - S[2];
4699
+ return g += Math.sqrt(k * k + M * M + z * z), g;
4700
4700
  }
4701
4701
  function pd(a) {
4702
4702
  return a.map((t) => [...t]);
@@ -4724,24 +4724,24 @@ class $r {
4724
4724
  */
4725
4725
  static slerpFlat(t, e, s, o, h, c, g) {
4726
4726
  let x = s[o + 0], f = s[o + 1], S = s[o + 2], b = s[o + 3];
4727
- const k = h[c + 0], T = h[c + 1], O = h[c + 2], R = h[c + 3];
4727
+ const k = h[c + 0], M = h[c + 1], z = h[c + 2], R = h[c + 3];
4728
4728
  if (g === 0) {
4729
4729
  t[e + 0] = x, t[e + 1] = f, t[e + 2] = S, t[e + 3] = b;
4730
4730
  return;
4731
4731
  }
4732
4732
  if (g === 1) {
4733
- t[e + 0] = k, t[e + 1] = T, t[e + 2] = O, t[e + 3] = R;
4733
+ t[e + 0] = k, t[e + 1] = M, t[e + 2] = z, t[e + 3] = R;
4734
4734
  return;
4735
4735
  }
4736
- if (b !== R || x !== k || f !== T || S !== O) {
4736
+ if (b !== R || x !== k || f !== M || S !== z) {
4737
4737
  let U = 1 - g;
4738
- const D = x * k + f * T + S * O + b * R, gt = D >= 0 ? 1 : -1, ft = 1 - D * D;
4738
+ const D = x * k + f * M + S * z + b * R, gt = D >= 0 ? 1 : -1, ft = 1 - D * D;
4739
4739
  if (ft > Number.EPSILON) {
4740
4740
  const W = Math.sqrt(ft), mt = Math.atan2(W, D * gt);
4741
4741
  U = Math.sin(U * mt) / W, g = Math.sin(g * mt) / W;
4742
4742
  }
4743
4743
  const ut = g * gt;
4744
- if (x = x * U + k * ut, f = f * U + T * ut, S = S * U + O * ut, b = b * U + R * ut, U === 1 - g) {
4744
+ if (x = x * U + k * ut, f = f * U + M * ut, S = S * U + z * ut, b = b * U + R * ut, U === 1 - g) {
4745
4745
  const W = 1 / Math.sqrt(x * x + f * f + S * S + b * b);
4746
4746
  x *= W, f *= W, S *= W, b *= W;
4747
4747
  }
@@ -4759,8 +4759,8 @@ class $r {
4759
4759
  * @returns Return an array
4760
4760
  */
4761
4761
  static multiplyQuaternionsFlat(t, e, s, o, h, c) {
4762
- const g = s[o], x = s[o + 1], f = s[o + 2], S = s[o + 3], b = h[c], k = h[c + 1], T = h[c + 2], O = h[c + 3];
4763
- return t[e] = g * O + S * b + x * T - f * k, t[e + 1] = x * O + S * k + f * b - g * T, t[e + 2] = f * O + S * T + g * k - x * b, t[e + 3] = S * O - g * b - x * k - f * T, t;
4762
+ const g = s[o], x = s[o + 1], f = s[o + 2], S = s[o + 3], b = h[c], k = h[c + 1], M = h[c + 2], z = h[c + 3];
4763
+ return t[e] = g * z + S * b + x * M - f * k, t[e + 1] = x * z + S * k + f * b - g * M, t[e + 2] = f * z + S * M + g * k - x * b, t[e + 3] = S * z - g * b - x * k - f * M, t;
4764
4764
  }
4765
4765
  /**
4766
4766
  * X cooridinate
@@ -4831,25 +4831,25 @@ class $r {
4831
4831
  * @returns Return this quaternion
4832
4832
  */
4833
4833
  setFromEuler(t, e = !0) {
4834
- const s = t.x, o = t.y, h = t.z, c = t.order, g = Math.cos, x = Math.sin, f = g(s / 2), S = g(o / 2), b = g(h / 2), k = x(s / 2), T = x(o / 2), O = x(h / 2);
4834
+ const s = t.x, o = t.y, h = t.z, c = t.order, g = Math.cos, x = Math.sin, f = g(s / 2), S = g(o / 2), b = g(h / 2), k = x(s / 2), M = x(o / 2), z = x(h / 2);
4835
4835
  switch (c) {
4836
4836
  case "XYZ":
4837
- this._x = k * S * b + f * T * O, this._y = f * T * b - k * S * O, this._z = f * S * O + k * T * b, this._w = f * S * b - k * T * O;
4837
+ this._x = k * S * b + f * M * z, this._y = f * M * b - k * S * z, this._z = f * S * z + k * M * b, this._w = f * S * b - k * M * z;
4838
4838
  break;
4839
4839
  case "YXZ":
4840
- this._x = k * S * b + f * T * O, this._y = f * T * b - k * S * O, this._z = f * S * O - k * T * b, this._w = f * S * b + k * T * O;
4840
+ this._x = k * S * b + f * M * z, this._y = f * M * b - k * S * z, this._z = f * S * z - k * M * b, this._w = f * S * b + k * M * z;
4841
4841
  break;
4842
4842
  case "ZXY":
4843
- this._x = k * S * b - f * T * O, this._y = f * T * b + k * S * O, this._z = f * S * O + k * T * b, this._w = f * S * b - k * T * O;
4843
+ this._x = k * S * b - f * M * z, this._y = f * M * b + k * S * z, this._z = f * S * z + k * M * b, this._w = f * S * b - k * M * z;
4844
4844
  break;
4845
4845
  case "ZYX":
4846
- this._x = k * S * b - f * T * O, this._y = f * T * b + k * S * O, this._z = f * S * O - k * T * b, this._w = f * S * b + k * T * O;
4846
+ this._x = k * S * b - f * M * z, this._y = f * M * b + k * S * z, this._z = f * S * z - k * M * b, this._w = f * S * b + k * M * z;
4847
4847
  break;
4848
4848
  case "YZX":
4849
- this._x = k * S * b + f * T * O, this._y = f * T * b + k * S * O, this._z = f * S * O - k * T * b, this._w = f * S * b - k * T * O;
4849
+ this._x = k * S * b + f * M * z, this._y = f * M * b + k * S * z, this._z = f * S * z - k * M * b, this._w = f * S * b - k * M * z;
4850
4850
  break;
4851
4851
  case "XZY":
4852
- this._x = k * S * b - f * T * O, this._y = f * T * b - k * S * O, this._z = f * S * O + k * T * b, this._w = f * S * b + k * T * O;
4852
+ this._x = k * S * b - f * M * z, this._y = f * M * b - k * S * z, this._z = f * S * z + k * M * b, this._w = f * S * b + k * M * z;
4853
4853
  break;
4854
4854
  default:
4855
4855
  console.warn(
@@ -4877,17 +4877,17 @@ class $r {
4877
4877
  setFromRotationMatrix(t) {
4878
4878
  const e = t.elements, s = e[0], o = e[4], h = e[8], c = e[1], g = e[5], x = e[9], f = e[2], S = e[6], b = e[10], k = s + g + b;
4879
4879
  if (k > 0) {
4880
- const T = 0.5 / Math.sqrt(k + 1);
4881
- this._w = 0.25 / T, this._x = (S - x) * T, this._y = (h - f) * T, this._z = (c - o) * T;
4880
+ const M = 0.5 / Math.sqrt(k + 1);
4881
+ this._w = 0.25 / M, this._x = (S - x) * M, this._y = (h - f) * M, this._z = (c - o) * M;
4882
4882
  } else if (s > g && s > b) {
4883
- const T = 2 * Math.sqrt(1 + s - g - b);
4884
- this._w = (S - x) / T, this._x = 0.25 * T, this._y = (o + c) / T, this._z = (h + f) / T;
4883
+ const M = 2 * Math.sqrt(1 + s - g - b);
4884
+ this._w = (S - x) / M, this._x = 0.25 * M, this._y = (o + c) / M, this._z = (h + f) / M;
4885
4885
  } else if (g > b) {
4886
- const T = 2 * Math.sqrt(1 + g - s - b);
4887
- this._w = (h - f) / T, this._x = (o + c) / T, this._y = 0.25 * T, this._z = (x + S) / T;
4886
+ const M = 2 * Math.sqrt(1 + g - s - b);
4887
+ this._w = (h - f) / M, this._x = (o + c) / M, this._y = 0.25 * M, this._z = (x + S) / M;
4888
4888
  } else {
4889
- const T = 2 * Math.sqrt(1 + b - s - g);
4890
- this._w = (c - o) / T, this._x = (h + f) / T, this._y = (x + S) / T, this._z = 0.25 * T;
4889
+ const M = 2 * Math.sqrt(1 + b - s - g);
4890
+ this._w = (c - o) / M, this._x = (h + f) / M, this._y = (x + S) / M, this._z = 0.25 * M;
4891
4891
  }
4892
4892
  return this._onChangeCallback(), this;
4893
4893
  }
@@ -5023,8 +5023,8 @@ class $r {
5023
5023
  return this._w = c, this._x = s, this._y = o, this._z = h, this;
5024
5024
  const x = 1 - g * g;
5025
5025
  if (x <= Number.EPSILON) {
5026
- const T = 1 - e;
5027
- return this._w = T * c + e * this._w, this._x = T * s + e * this._x, this._y = T * o + e * this._y, this._z = T * h + e * this._z, this.normalize(), this;
5026
+ const M = 1 - e;
5027
+ return this._w = M * c + e * this._w, this._x = M * s + e * this._x, this._y = M * o + e * this._y, this._z = M * h + e * this._z, this.normalize(), this;
5028
5028
  }
5029
5029
  const f = Math.sqrt(x), S = Math.atan2(f, g), b = Math.sin((1 - e) * S) / f, k = Math.sin(e * S) / f;
5030
5030
  return this._w = c * b + this._w * k, this._x = s * b + this._x * k, this._y = o * b + this._y * k, this._z = h * b + this._z * k, this._onChangeCallback(), this;
@@ -5758,8 +5758,8 @@ const mi = /* @__PURE__ */ new $(), to = /* @__PURE__ */ new $r(), wi = class Il
5758
5758
  * @param n43 Input element in the forth row and the third column
5759
5759
  * @param n44 Input element in the forth row and the forth column
5760
5760
  */
5761
- constructor(t, e, s, o, h, c, g, x, f, S, b, k, T, O, R, U) {
5762
- this.elements = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1], t != null && e != null && s != null && o != null && h != null && c != null && g != null && x != null && f != null && S != null && b != null && k != null && T != null && O != null && R != null && U != null && this.set(
5761
+ constructor(t, e, s, o, h, c, g, x, f, S, b, k, M, z, R, U) {
5762
+ this.elements = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1], t != null && e != null && s != null && o != null && h != null && c != null && g != null && x != null && f != null && S != null && b != null && k != null && M != null && z != null && R != null && U != null && this.set(
5763
5763
  t,
5764
5764
  e,
5765
5765
  s,
@@ -5772,8 +5772,8 @@ const mi = /* @__PURE__ */ new $(), to = /* @__PURE__ */ new $r(), wi = class Il
5772
5772
  S,
5773
5773
  b,
5774
5774
  k,
5775
- T,
5776
- O,
5775
+ M,
5776
+ z,
5777
5777
  R,
5778
5778
  U
5779
5779
  );
@@ -5799,9 +5799,9 @@ const mi = /* @__PURE__ */ new $(), to = /* @__PURE__ */ new $r(), wi = class Il
5799
5799
  * @param n44 Input element in the forth row and the forth column
5800
5800
  * @returns Return this matrix
5801
5801
  */
5802
- set(t, e, s, o, h, c, g, x, f, S, b, k, T, O, R, U) {
5802
+ set(t, e, s, o, h, c, g, x, f, S, b, k, M, z, R, U) {
5803
5803
  const D = this.elements;
5804
- return D[0] = t, D[4] = e, D[8] = s, D[12] = o, D[1] = h, D[5] = c, D[9] = g, D[13] = x, D[2] = f, D[6] = S, D[10] = b, D[14] = k, D[3] = T, D[7] = O, D[11] = R, D[15] = U, this;
5804
+ return D[0] = t, D[4] = e, D[8] = s, D[12] = o, D[1] = h, D[5] = c, D[9] = g, D[13] = x, D[2] = f, D[6] = S, D[10] = b, D[14] = k, D[3] = M, D[7] = z, D[11] = R, D[15] = U, this;
5805
5805
  }
5806
5806
  /**
5807
5807
  * Reset this matrix to the identity matrix.
@@ -6085,8 +6085,8 @@ const mi = /* @__PURE__ */ new $(), to = /* @__PURE__ */ new $r(), wi = class Il
6085
6085
  * @returns Return this matrix
6086
6086
  */
6087
6087
  multiplyMatrices(t, e) {
6088
- const s = t.elements, o = e.elements, h = this.elements, c = s[0], g = s[4], x = s[8], f = s[12], S = s[1], b = s[5], k = s[9], T = s[13], O = s[2], R = s[6], U = s[10], D = s[14], gt = s[3], ft = s[7], ut = s[11], W = s[15], mt = o[0], lt = o[4], Wt = o[8], Ht = o[12], Ut = o[1], xt = o[5], Nt = o[9], de = o[13], me = o[2], Ie = o[6], Qt = o[10], ie = o[14], Q = o[3], It = o[7], ae = o[11], ir = o[15];
6089
- return h[0] = c * mt + g * Ut + x * me + f * Q, h[4] = c * lt + g * xt + x * Ie + f * It, h[8] = c * Wt + g * Nt + x * Qt + f * ae, h[12] = c * Ht + g * de + x * ie + f * ir, h[1] = S * mt + b * Ut + k * me + T * Q, h[5] = S * lt + b * xt + k * Ie + T * It, h[9] = S * Wt + b * Nt + k * Qt + T * ae, h[13] = S * Ht + b * de + k * ie + T * ir, h[2] = O * mt + R * Ut + U * me + D * Q, h[6] = O * lt + R * xt + U * Ie + D * It, h[10] = O * Wt + R * Nt + U * Qt + D * ae, h[14] = O * Ht + R * de + U * ie + D * ir, h[3] = gt * mt + ft * Ut + ut * me + W * Q, h[7] = gt * lt + ft * xt + ut * Ie + W * It, h[11] = gt * Wt + ft * Nt + ut * Qt + W * ae, h[15] = gt * Ht + ft * de + ut * ie + W * ir, this;
6088
+ const s = t.elements, o = e.elements, h = this.elements, c = s[0], g = s[4], x = s[8], f = s[12], S = s[1], b = s[5], k = s[9], M = s[13], z = s[2], R = s[6], U = s[10], D = s[14], gt = s[3], ft = s[7], ut = s[11], W = s[15], mt = o[0], lt = o[4], Wt = o[8], Ht = o[12], Ut = o[1], xt = o[5], Nt = o[9], de = o[13], me = o[2], Ie = o[6], Qt = o[10], ie = o[14], Q = o[3], It = o[7], ae = o[11], ir = o[15];
6089
+ return h[0] = c * mt + g * Ut + x * me + f * Q, h[4] = c * lt + g * xt + x * Ie + f * It, h[8] = c * Wt + g * Nt + x * Qt + f * ae, h[12] = c * Ht + g * de + x * ie + f * ir, h[1] = S * mt + b * Ut + k * me + M * Q, h[5] = S * lt + b * xt + k * Ie + M * It, h[9] = S * Wt + b * Nt + k * Qt + M * ae, h[13] = S * Ht + b * de + k * ie + M * ir, h[2] = z * mt + R * Ut + U * me + D * Q, h[6] = z * lt + R * xt + U * Ie + D * It, h[10] = z * Wt + R * Nt + U * Qt + D * ae, h[14] = z * Ht + R * de + U * ie + D * ir, h[3] = gt * mt + ft * Ut + ut * me + W * Q, h[7] = gt * lt + ft * xt + ut * Ie + W * It, h[11] = gt * Wt + ft * Nt + ut * Qt + W * ae, h[15] = gt * Ht + ft * de + ut * ie + W * ir, this;
6090
6090
  }
6091
6091
  /**
6092
6092
  * Multiply every component of the matrix by a scalar value s.
@@ -6102,8 +6102,8 @@ const mi = /* @__PURE__ */ new $(), to = /* @__PURE__ */ new $r(), wi = class Il
6102
6102
  * @returns Return the determinant of this matrix.
6103
6103
  */
6104
6104
  determinant() {
6105
- const t = this.elements, e = t[0], s = t[4], o = t[8], h = t[12], c = t[1], g = t[5], x = t[9], f = t[13], S = t[2], b = t[6], k = t[10], T = t[14], O = t[3], R = t[7], U = t[11], D = t[15];
6106
- return O * (+h * x * b - o * f * b - h * g * k + s * f * k + o * g * T - s * x * T) + R * (+e * x * T - e * f * k + h * c * k - o * c * T + o * f * S - h * x * S) + U * (+e * f * b - e * g * T - h * c * b + s * c * T + h * g * S - s * f * S) + D * (-o * g * S - e * x * b + e * g * k + o * c * b - s * c * k + s * x * S);
6105
+ const t = this.elements, e = t[0], s = t[4], o = t[8], h = t[12], c = t[1], g = t[5], x = t[9], f = t[13], S = t[2], b = t[6], k = t[10], M = t[14], z = t[3], R = t[7], U = t[11], D = t[15];
6106
+ return z * (+h * x * b - o * f * b - h * g * k + s * f * k + o * g * M - s * x * M) + R * (+e * x * M - e * f * k + h * c * k - o * c * M + o * f * S - h * x * S) + U * (+e * f * b - e * g * M - h * c * b + s * c * M + h * g * S - s * f * S) + D * (-o * g * S - e * x * b + e * g * k + o * c * b - s * c * k + s * x * S);
6107
6107
  }
6108
6108
  /**
6109
6109
  * Transposes this matrix.
@@ -6131,11 +6131,11 @@ const mi = /* @__PURE__ */ new $(), to = /* @__PURE__ */ new $r(), wi = class Il
6131
6131
  * @returns Return this matrix
6132
6132
  */
6133
6133
  invert() {
6134
- const t = this.elements, e = t[0], s = t[1], o = t[2], h = t[3], c = t[4], g = t[5], x = t[6], f = t[7], S = t[8], b = t[9], k = t[10], T = t[11], O = t[12], R = t[13], U = t[14], D = t[15], gt = b * U * f - R * k * f + R * x * T - g * U * T - b * x * D + g * k * D, ft = O * k * f - S * U * f - O * x * T + c * U * T + S * x * D - c * k * D, ut = S * R * f - O * b * f + O * g * T - c * R * T - S * g * D + c * b * D, W = O * b * x - S * R * x - O * g * k + c * R * k + S * g * U - c * b * U, mt = e * gt + s * ft + o * ut + h * W;
6134
+ const t = this.elements, e = t[0], s = t[1], o = t[2], h = t[3], c = t[4], g = t[5], x = t[6], f = t[7], S = t[8], b = t[9], k = t[10], M = t[11], z = t[12], R = t[13], U = t[14], D = t[15], gt = b * U * f - R * k * f + R * x * M - g * U * M - b * x * D + g * k * D, ft = z * k * f - S * U * f - z * x * M + c * U * M + S * x * D - c * k * D, ut = S * R * f - z * b * f + z * g * M - c * R * M - S * g * D + c * b * D, W = z * b * x - S * R * x - z * g * k + c * R * k + S * g * U - c * b * U, mt = e * gt + s * ft + o * ut + h * W;
6135
6135
  if (mt === 0)
6136
6136
  return this.set(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
6137
6137
  const lt = 1 / mt;
6138
- return t[0] = gt * lt, t[1] = (R * k * h - b * U * h - R * o * T + s * U * T + b * o * D - s * k * D) * lt, t[2] = (g * U * h - R * x * h + R * o * f - s * U * f - g * o * D + s * x * D) * lt, t[3] = (b * x * h - g * k * h - b * o * f + s * k * f + g * o * T - s * x * T) * lt, t[4] = ft * lt, t[5] = (S * U * h - O * k * h + O * o * T - e * U * T - S * o * D + e * k * D) * lt, t[6] = (O * x * h - c * U * h - O * o * f + e * U * f + c * o * D - e * x * D) * lt, t[7] = (c * k * h - S * x * h + S * o * f - e * k * f - c * o * T + e * x * T) * lt, t[8] = ut * lt, t[9] = (O * b * h - S * R * h - O * s * T + e * R * T + S * s * D - e * b * D) * lt, t[10] = (c * R * h - O * g * h + O * s * f - e * R * f - c * s * D + e * g * D) * lt, t[11] = (S * g * h - c * b * h - S * s * f + e * b * f + c * s * T - e * g * T) * lt, t[12] = W * lt, t[13] = (S * R * o - O * b * o + O * s * k - e * R * k - S * s * U + e * b * U) * lt, t[14] = (O * g * o - c * R * o - O * s * x + e * R * x + c * s * U - e * g * U) * lt, t[15] = (c * b * o - S * g * o + S * s * x - e * b * x - c * s * k + e * g * k) * lt, this;
6138
+ return t[0] = gt * lt, t[1] = (R * k * h - b * U * h - R * o * M + s * U * M + b * o * D - s * k * D) * lt, t[2] = (g * U * h - R * x * h + R * o * f - s * U * f - g * o * D + s * x * D) * lt, t[3] = (b * x * h - g * k * h - b * o * f + s * k * f + g * o * M - s * x * M) * lt, t[4] = ft * lt, t[5] = (S * U * h - z * k * h + z * o * M - e * U * M - S * o * D + e * k * D) * lt, t[6] = (z * x * h - c * U * h - z * o * f + e * U * f + c * o * D - e * x * D) * lt, t[7] = (c * k * h - S * x * h + S * o * f - e * k * f - c * o * M + e * x * M) * lt, t[8] = ut * lt, t[9] = (z * b * h - S * R * h - z * s * M + e * R * M + S * s * D - e * b * D) * lt, t[10] = (c * R * h - z * g * h + z * s * f - e * R * f - c * s * D + e * g * D) * lt, t[11] = (S * g * h - c * b * h - S * s * f + e * b * f + c * s * M - e * g * M) * lt, t[12] = W * lt, t[13] = (S * R * o - z * b * o + z * s * k - e * R * k - S * s * U + e * b * U) * lt, t[14] = (z * g * o - c * R * o - z * s * x + e * R * x + c * s * U - e * g * U) * lt, t[15] = (c * b * o - S * g * o + S * s * x - e * b * x - c * s * k + e * g * k) * lt, this;
6139
6139
  }
6140
6140
  /**
6141
6141
  * Multiply the columns of this matrix by vector v.
@@ -6249,8 +6249,8 @@ const mi = /* @__PURE__ */ new $(), to = /* @__PURE__ */ new $r(), wi = class Il
6249
6249
  * @returns Return this matrix
6250
6250
  */
6251
6251
  compose(t, e, s) {
6252
- const o = this.elements, h = e.x, c = e.y, g = e.z, x = e.w, f = h + h, S = c + c, b = g + g, k = h * f, T = h * S, O = h * b, R = c * S, U = c * b, D = g * b, gt = x * f, ft = x * S, ut = x * b, W = s.x, mt = s.y, lt = s.z;
6253
- return o[0] = (1 - (R + D)) * W, o[1] = (T + ut) * W, o[2] = (O - ft) * W, o[3] = 0, o[4] = (T - ut) * mt, o[5] = (1 - (k + D)) * mt, o[6] = (U + gt) * mt, o[7] = 0, o[8] = (O + ft) * lt, o[9] = (U - gt) * lt, o[10] = (1 - (k + R)) * lt, o[11] = 0, o[12] = t.x, o[13] = t.y, o[14] = t.z, o[15] = 1, this;
6252
+ const o = this.elements, h = e.x, c = e.y, g = e.z, x = e.w, f = h + h, S = c + c, b = g + g, k = h * f, M = h * S, z = h * b, R = c * S, U = c * b, D = g * b, gt = x * f, ft = x * S, ut = x * b, W = s.x, mt = s.y, lt = s.z;
6253
+ return o[0] = (1 - (R + D)) * W, o[1] = (M + ut) * W, o[2] = (z - ft) * W, o[3] = 0, o[4] = (M - ut) * mt, o[5] = (1 - (k + D)) * mt, o[6] = (U + gt) * mt, o[7] = 0, o[8] = (z + ft) * lt, o[9] = (U - gt) * lt, o[10] = (1 - (k + R)) * lt, o[11] = 0, o[12] = t.x, o[13] = t.y, o[14] = t.z, o[15] = 1, this;
6254
6254
  }
6255
6255
  /**
6256
6256
  * Decompose this matrix into its position, quaternion and scale components.
@@ -7171,25 +7171,25 @@ const no = /* @__PURE__ */ new wn(), so = /* @__PURE__ */ new $r(), kl = class P
7171
7171
  * @returns Return this euler
7172
7172
  */
7173
7173
  setFromRotationMatrix(t, e = this._order, s = !0) {
7174
- const o = t.elements, h = o[0], c = o[4], g = o[8], x = o[1], f = o[5], S = o[9], b = o[2], k = o[6], T = o[10];
7174
+ const o = t.elements, h = o[0], c = o[4], g = o[8], x = o[1], f = o[5], S = o[9], b = o[2], k = o[6], M = o[10];
7175
7175
  switch (e) {
7176
7176
  case "XYZ":
7177
- this._y = Math.asin(Lr(g, -1, 1)), Math.abs(g) < 0.9999999 ? (this._x = Math.atan2(-S, T), this._z = Math.atan2(-c, h)) : (this._x = Math.atan2(k, f), this._z = 0);
7177
+ this._y = Math.asin(Lr(g, -1, 1)), Math.abs(g) < 0.9999999 ? (this._x = Math.atan2(-S, M), this._z = Math.atan2(-c, h)) : (this._x = Math.atan2(k, f), this._z = 0);
7178
7178
  break;
7179
7179
  case "YXZ":
7180
- this._x = Math.asin(-Lr(S, -1, 1)), Math.abs(S) < 0.9999999 ? (this._y = Math.atan2(g, T), this._z = Math.atan2(x, f)) : (this._y = Math.atan2(-b, h), this._z = 0);
7180
+ this._x = Math.asin(-Lr(S, -1, 1)), Math.abs(S) < 0.9999999 ? (this._y = Math.atan2(g, M), this._z = Math.atan2(x, f)) : (this._y = Math.atan2(-b, h), this._z = 0);
7181
7181
  break;
7182
7182
  case "ZXY":
7183
- this._x = Math.asin(Lr(k, -1, 1)), Math.abs(k) < 0.9999999 ? (this._y = Math.atan2(-b, T), this._z = Math.atan2(-c, f)) : (this._y = 0, this._z = Math.atan2(x, h));
7183
+ this._x = Math.asin(Lr(k, -1, 1)), Math.abs(k) < 0.9999999 ? (this._y = Math.atan2(-b, M), this._z = Math.atan2(-c, f)) : (this._y = 0, this._z = Math.atan2(x, h));
7184
7184
  break;
7185
7185
  case "ZYX":
7186
- this._y = Math.asin(-Lr(b, -1, 1)), Math.abs(b) < 0.9999999 ? (this._x = Math.atan2(k, T), this._z = Math.atan2(x, h)) : (this._x = 0, this._z = Math.atan2(-c, f));
7186
+ this._y = Math.asin(-Lr(b, -1, 1)), Math.abs(b) < 0.9999999 ? (this._x = Math.atan2(k, M), this._z = Math.atan2(x, h)) : (this._x = 0, this._z = Math.atan2(-c, f));
7187
7187
  break;
7188
7188
  case "YZX":
7189
- this._z = Math.asin(Lr(x, -1, 1)), Math.abs(x) < 0.9999999 ? (this._x = Math.atan2(-S, f), this._y = Math.atan2(-b, h)) : (this._x = 0, this._y = Math.atan2(g, T));
7189
+ this._z = Math.asin(Lr(x, -1, 1)), Math.abs(x) < 0.9999999 ? (this._x = Math.atan2(-S, f), this._y = Math.atan2(-b, h)) : (this._x = 0, this._y = Math.atan2(g, M));
7190
7190
  break;
7191
7191
  case "XZY":
7192
- this._z = Math.asin(-Lr(c, -1, 1)), Math.abs(c) < 0.9999999 ? (this._x = Math.atan2(k, f), this._y = Math.atan2(g, h)) : (this._x = Math.atan2(-S, T), this._y = 0);
7192
+ this._z = Math.asin(-Lr(c, -1, 1)), Math.abs(c) < 0.9999999 ? (this._x = Math.atan2(k, f), this._y = Math.atan2(g, h)) : (this._x = Math.atan2(-S, M), this._y = 0);
7193
7193
  break;
7194
7194
  default:
7195
7195
  console.warn(
@@ -7368,12 +7368,12 @@ class Zi extends Ml {
7368
7368
  const f = o[x], S = e[f], b = s[f];
7369
7369
  let k = x + 1;
7370
7370
  for (; k < c; k++) {
7371
- const T = o[k], O = e[T];
7372
- if (s[T].containsBox(b) && ac.isPointInPolygon(
7371
+ const M = o[k], z = e[M];
7372
+ if (s[M].containsBox(b) && ac.isPointInPolygon(
7373
7373
  S[Ot.randInt(0, S.length - 1)],
7374
- O
7374
+ z
7375
7375
  )) {
7376
- (t = h.get(T)) == null || t.children.push(h.get(f));
7376
+ (t = h.get(M)) == null || t.children.push(h.get(f));
7377
7377
  break;
7378
7378
  }
7379
7379
  }
@@ -7576,10 +7576,10 @@ class us extends ms {
7576
7576
  const o = (lt, Wt) => ({
7577
7577
  x: (lt.x + Wt.x) / 2,
7578
7578
  y: (lt.y + Wt.y) / 2
7579
- }), h = (lt, Wt) => (Wt.y - lt.y) / (Wt.x - lt.x), c = (lt) => -1 / lt, g = o(t, e), x = o(e, s), f = h(t, e), S = h(e, s), b = c(f), k = c(S), T = (lt, Wt, Ht, Ut) => {
7579
+ }), h = (lt, Wt) => (Wt.y - lt.y) / (Wt.x - lt.x), c = (lt) => -1 / lt, g = o(t, e), x = o(e, s), f = h(t, e), S = h(e, s), b = c(f), k = c(S), M = (lt, Wt, Ht, Ut) => {
7580
7580
  const xt = (Ut - Wt) / (lt - Ht), Nt = lt * xt + Wt;
7581
7581
  return { x: xt, y: Nt };
7582
- }, O = g.y - b * g.x, R = x.y - k * x.x, U = T(b, O, k, R), D = Math.sqrt(
7582
+ }, z = g.y - b * g.x, R = x.y - k * x.x, U = M(b, z, k, R), D = Math.sqrt(
7583
7583
  Math.pow(t.x - U.x, 2) + Math.pow(t.y - U.y, 2)
7584
7584
  ), gt = (lt, Wt) => Math.atan2(lt.y - Wt.y, lt.x - Wt.x), ft = gt(t, U), ut = gt(e, U), W = gt(s, U), mt = W > ft && W < ut || ft > W && ft < ut || ut > W && ut < ft;
7585
7585
  this.center = U, this.radius = D, this.startAngle = ft, this.endAngle = W, this.clockwise = !mt;
@@ -7601,17 +7601,17 @@ class us extends ms {
7601
7601
  const g = new $t().subVectors(c, h), x = g.length(), f = new $t().addVectors(h, g.multiplyScalar(0.5)), S = Math.abs(x / 2 / Math.tan(o / 2)), b = g.normalize();
7602
7602
  let k;
7603
7603
  if (o < Math.PI) {
7604
- const T = new $t(
7604
+ const M = new $t(
7605
7605
  b.x * Math.cos(Math.PI / 2) - b.y * Math.sin(Math.PI / 2),
7606
7606
  b.y * Math.cos(Math.PI / 2) + b.x * Math.sin(Math.PI / 2)
7607
7607
  );
7608
- k = f.add(T.multiplyScalar(-S));
7608
+ k = f.add(M.multiplyScalar(-S));
7609
7609
  } else {
7610
- const T = new $t(
7610
+ const M = new $t(
7611
7611
  b.x * Math.cos(Math.PI / 2) - b.y * Math.sin(Math.PI / 2),
7612
7612
  b.y * Math.cos(Math.PI / 2) + b.x * Math.sin(Math.PI / 2)
7613
7613
  );
7614
- k = f.add(T.multiplyScalar(S));
7614
+ k = f.add(M.multiplyScalar(S));
7615
7615
  }
7616
7616
  s < 0 ? (this.startAngle = Math.atan2(h.y - k.y, h.x - k.x), this.endAngle = Math.atan2(c.y - k.y, c.x - k.x)) : (this.startAngle = Math.atan2(c.y - k.y, c.x - k.x), this.endAngle = Math.atan2(h.y - k.y, h.x - k.x)), this.clockwise = s < 0, this.center = k, this.radius = c.sub(k).length();
7617
7617
  }
@@ -8006,8 +8006,8 @@ class xn extends ps {
8006
8006
  const o = new $().addVectors(t, e).multiplyScalar(0.5), h = new $().addVectors(t, s).multiplyScalar(0.5), c = new $().subVectors(e, t), g = new $().subVectors(s, t), x = new $().crossVectors(c, g).normalize();
8007
8007
  if (x.lengthSq() === 0)
8008
8008
  return console.error("Points are collinear and cannot form a valid arc."), null;
8009
- const f = new $().crossVectors(c, x).normalize(), S = new $().crossVectors(g, x).normalize(), b = f.clone().multiplyScalar(Number.MAX_SAFE_INTEGER), k = S.clone().multiplyScalar(Number.MAX_SAFE_INTEGER), T = new Zr(o, o.clone().add(b)), O = new Zr(h, h.clone().add(k)), R = new $();
8010
- return T.closestPointToPoint(O.startPoint, !0, R) ? R : (console.error("Cannot find a valid center for the arc."), null);
8009
+ const f = new $().crossVectors(c, x).normalize(), S = new $().crossVectors(g, x).normalize(), b = f.clone().multiplyScalar(Number.MAX_SAFE_INTEGER), k = S.clone().multiplyScalar(Number.MAX_SAFE_INTEGER), M = new Zr(o, o.clone().add(b)), z = new Zr(h, h.clone().add(k)), R = new $();
8010
+ return M.closestPointToPoint(z.startPoint, !0, R) ? R : (console.error("Cannot find a valid center for the arc."), null);
8011
8011
  }
8012
8012
  /**
8013
8013
  * Create arc by three points
@@ -8973,7 +8973,7 @@ var Tl = { exports: {} };
8973
8973
  var b = {}, k = function() {
8974
8974
  return It.__string_rec(this, "");
8975
8975
  };
8976
- function T(r, n) {
8976
+ function M(r, n) {
8977
8977
  function i() {
8978
8978
  }
8979
8979
  i.prototype = r;
@@ -8981,9 +8981,9 @@ var Tl = { exports: {} };
8981
8981
  for (var u in n) l[u] = n[u];
8982
8982
  return n.toString !== Object.prototype.toString && (l.toString = n.toString), l;
8983
8983
  }
8984
- var O = function() {
8984
+ var z = function() {
8985
8985
  };
8986
- b.HxOverrides = O, O.__name__ = ["HxOverrides"], O.strDate = function(r) {
8986
+ b.HxOverrides = z, z.__name__ = ["HxOverrides"], z.strDate = function(r) {
8987
8987
  var n = r.length;
8988
8988
  switch (n) {
8989
8989
  case 8:
@@ -8998,13 +8998,13 @@ var Tl = { exports: {} };
8998
8998
  default:
8999
8999
  throw new Q("Invalid date format : " + r);
9000
9000
  }
9001
- }, O.cca = function(r, n) {
9001
+ }, z.cca = function(r, n) {
9002
9002
  var i = r.charCodeAt(n);
9003
9003
  if (i == i)
9004
9004
  return i;
9005
- }, O.substr = function(r, n, i) {
9005
+ }, z.substr = function(r, n, i) {
9006
9006
  return n != null && n != 0 && i != null && i < 0 ? "" : (i == null && (i = r.length), n < 0 ? (n = r.length + n, n < 0 && (n = 0)) : i < 0 && (i = r.length + i - n), r.substr(n, i));
9007
- }, O.iter = function(r) {
9007
+ }, z.iter = function(r) {
9008
9008
  return {
9009
9009
  cur: 0,
9010
9010
  arr: r,
@@ -9240,16 +9240,16 @@ var Tl = { exports: {} };
9240
9240
  break;
9241
9241
  case me:
9242
9242
  this.buf.b += "b";
9243
- for (var M = r, L = M.keys(); L.hasNext(); ) {
9243
+ for (var T = r, L = T.keys(); L.hasNext(); ) {
9244
9244
  var N = L.next();
9245
- this.serializeString(N), this.serialize(Ks[N] != null ? M.getReserved(N) : M.h[N]);
9245
+ this.serializeString(N), this.serialize(Ks[N] != null ? T.getReserved(N) : T.h[N]);
9246
9246
  }
9247
9247
  this.buf.b += "h";
9248
9248
  break;
9249
9249
  case xt:
9250
9250
  this.buf.b += "q";
9251
- for (var B = r, z = B.keys(); z.hasNext(); ) {
9252
- var F = z.next();
9251
+ for (var B = r, O = B.keys(); O.hasNext(); ) {
9252
+ var F = O.next();
9253
9253
  this.buf.b += ":", F == null ? this.buf.b += "null" : this.buf.b += "" + F, this.serialize(B.h[F]);
9254
9254
  }
9255
9255
  this.buf.b += "h";
@@ -9361,7 +9361,7 @@ var Tl = { exports: {} };
9361
9361
  if (n >= 43 && n < 58 || n == 101 || n == 69) this.pos++;
9362
9362
  else break;
9363
9363
  }
9364
- return gt.parseFloat(O.substr(this.buf, r, this.pos - r));
9364
+ return gt.parseFloat(z.substr(this.buf, r, this.pos - r));
9365
9365
  },
9366
9366
  unserializeObject: function(r) {
9367
9367
  for (; ; ) {
@@ -9399,7 +9399,7 @@ var Tl = { exports: {} };
9399
9399
  case 121:
9400
9400
  var n = this.readDigits();
9401
9401
  if (this.get(this.pos++) != 58 || this.length - this.pos < n) throw new Q("Invalid string length");
9402
- var i = O.substr(this.buf, this.pos, n);
9402
+ var i = z.substr(this.buf, this.pos, n);
9403
9403
  return this.pos += n, i = decodeURIComponent(i.split("+").join(" ")), this.scache.push(i), i;
9404
9404
  case 107:
9405
9405
  return NaN;
@@ -9444,15 +9444,15 @@ var Tl = { exports: {} };
9444
9444
  case 119:
9445
9445
  var I = this.unserialize(), E = this.resolver.resolveEnum(I);
9446
9446
  if (E == null) throw new Q("Enum not found " + I);
9447
- var M = this.unserializeEnum(E, this.unserialize());
9448
- return this.cache.push(M), M;
9447
+ var T = this.unserializeEnum(E, this.unserialize());
9448
+ return this.cache.push(T), T;
9449
9449
  case 106:
9450
9450
  var L = this.unserialize(), N = this.resolver.resolveEnum(L);
9451
9451
  if (N == null) throw new Q("Enum not found " + L);
9452
9452
  this.pos++;
9453
- var B = this.readDigits(), z = mt.getEnumConstructs(N)[B];
9454
- if (z == null) throw new Q("Unknown enum index " + L + "@" + B);
9455
- var F = this.unserializeEnum(N, z);
9453
+ var B = this.readDigits(), O = mt.getEnumConstructs(N)[B];
9454
+ if (O == null) throw new Q("Unknown enum index " + L + "@" + B);
9455
+ var F = this.unserializeEnum(N, O);
9456
9456
  return this.cache.push(F), F;
9457
9457
  case 108:
9458
9458
  var V = new U();
@@ -9484,8 +9484,8 @@ var Tl = { exports: {} };
9484
9484
  case 118:
9485
9485
  var st;
9486
9486
  if (this.buf.charCodeAt(this.pos) >= 48 && this.buf.charCodeAt(this.pos) <= 57 && this.buf.charCodeAt(this.pos + 1) >= 48 && this.buf.charCodeAt(this.pos + 1) <= 57 && this.buf.charCodeAt(this.pos + 2) >= 48 && this.buf.charCodeAt(this.pos + 2) <= 57 && this.buf.charCodeAt(this.pos + 3) >= 48 && this.buf.charCodeAt(this.pos + 3) <= 57 && this.buf.charCodeAt(this.pos + 4) == 45) {
9487
- var ot = O.substr(this.buf, this.pos, 19);
9488
- st = O.strDate(ot), this.pos += 19;
9487
+ var ot = z.substr(this.buf, this.pos, 19);
9488
+ st = z.strDate(ot), this.pos += 19;
9489
9489
  } else {
9490
9490
  var it = this.readFloat(), ht = /* @__PURE__ */ new Date();
9491
9491
  ht.setTime(it), st = ht;
@@ -9547,7 +9547,7 @@ var Tl = { exports: {} };
9547
9547
  var r = [];
9548
9548
  for (var n in this.h)
9549
9549
  this.h.hasOwnProperty(n) && r.push(n | 0);
9550
- return O.iter(r);
9550
+ return z.iter(r);
9551
9551
  },
9552
9552
  __class__: xt
9553
9553
  };
@@ -9563,7 +9563,7 @@ var Tl = { exports: {} };
9563
9563
  var r = [];
9564
9564
  for (var n in this.h.__keys__)
9565
9565
  this.h.hasOwnProperty(n) && r.push(this.h.__keys__[n]);
9566
- return O.iter(r);
9566
+ return z.iter(r);
9567
9567
  },
9568
9568
  __class__: Nt
9569
9569
  };
@@ -9590,7 +9590,7 @@ var Tl = { exports: {} };
9590
9590
  },
9591
9591
  keys: function() {
9592
9592
  var r = this.arrayKeys();
9593
- return O.iter(r);
9593
+ return z.iter(r);
9594
9594
  },
9595
9595
  arrayKeys: function() {
9596
9596
  var r = [];
@@ -9655,7 +9655,7 @@ var Tl = { exports: {} };
9655
9655
  var Q = function(r) {
9656
9656
  Error.call(this), this.val = r, this.message = String(r), Error.captureStackTrace && Error.captureStackTrace(this, Q);
9657
9657
  };
9658
- b["js._Boot.HaxeError"] = Q, Q.__name__ = ["js", "_Boot", "HaxeError"], Q.__super__ = Error, Q.prototype = T(Error.prototype, {
9658
+ b["js._Boot.HaxeError"] = Q, Q.__name__ = ["js", "_Boot", "HaxeError"], Q.__super__ = Error, Q.prototype = M(Error.prototype, {
9659
9659
  __class__: Q
9660
9660
  });
9661
9661
  var It = function() {
@@ -9701,15 +9701,15 @@ var Tl = { exports: {} };
9701
9701
  var I = r.toString();
9702
9702
  if (I != "[object Object]") return I;
9703
9703
  }
9704
- var E = null, M = `{
9704
+ var E = null, T = `{
9705
9705
  `;
9706
9706
  n += " ";
9707
9707
  var L = r.hasOwnProperty != null;
9708
9708
  for (var E in r)
9709
- L && !r.hasOwnProperty(E) || E == "prototype" || E == "__class__" || E == "__super__" || E == "__interfaces__" || E == "__properties__" || (M.length != 2 && (M += `,
9710
- `), M += n + E + " : " + It.__string_rec(r[E], n));
9711
- return n = n.substring(1), M += `
9712
- ` + n + "}", M;
9709
+ L && !r.hasOwnProperty(E) || E == "prototype" || E == "__class__" || E == "__super__" || E == "__interfaces__" || E == "__properties__" || (T.length != 2 && (T += `,
9710
+ `), T += n + E + " : " + It.__string_rec(r[E], n));
9711
+ return n = n.substring(1), T += `
9712
+ ` + n + "}", T;
9713
9713
  case "function":
9714
9714
  return "<function>";
9715
9715
  case "string":
@@ -10059,7 +10059,7 @@ var Tl = { exports: {} };
10059
10059
  var tn = f.promhx.Deferred = function() {
10060
10060
  St.call(this);
10061
10061
  };
10062
- b["promhx.Deferred"] = tn, tn.__name__ = ["promhx", "Deferred"], tn.__super__ = St, tn.prototype = T(St.prototype, {
10062
+ b["promhx.Deferred"] = tn, tn.__name__ = ["promhx", "Deferred"], tn.__super__ = St, tn.prototype = M(St.prototype, {
10063
10063
  resolve: function(r) {
10064
10064
  this.handleResolve(r);
10065
10065
  },
@@ -10086,7 +10086,7 @@ var Tl = { exports: {} };
10086
10086
  }, pe.promise = function(r) {
10087
10087
  var n = new pe();
10088
10088
  return n.handleResolve(r), n;
10089
- }, pe.__super__ = St, pe.prototype = T(St.prototype, {
10089
+ }, pe.__super__ = St, pe.prototype = M(St.prototype, {
10090
10090
  isRejected: function() {
10091
10091
  return this._rejected;
10092
10092
  },
@@ -10160,7 +10160,7 @@ var Tl = { exports: {} };
10160
10160
  }, jt.stream = function(r) {
10161
10161
  var n = new jt(null);
10162
10162
  return n.handleResolve(r), n;
10163
- }, jt.__super__ = St, jt.prototype = T(St.prototype, {
10163
+ }, jt.__super__ = St, jt.prototype = M(St.prototype, {
10164
10164
  then: function(r) {
10165
10165
  var n = new jt(null);
10166
10166
  return St.link(this, n, r), this._end_promise._update.push({
@@ -10261,7 +10261,7 @@ var Tl = { exports: {} };
10261
10261
  b["promhx.PublicStream"] = br, br.__name__ = ["promhx", "PublicStream"], br.publicstream = function(r) {
10262
10262
  var n = new br(null);
10263
10263
  return n.handleResolve(r), n;
10264
- }, br.__super__ = jt, br.prototype = T(jt.prototype, {
10264
+ }, br.__super__ = jt, br.prototype = M(jt.prototype, {
10265
10265
  resolve: function(r) {
10266
10266
  this.handleResolve(r);
10267
10267
  },
@@ -10458,25 +10458,25 @@ var Tl = { exports: {} };
10458
10458
  var In = f.core.Plane = function(r, n) {
10459
10459
  this.origin = r, this.normal = n;
10460
10460
  };
10461
- b["verb.core.Plane"] = In, In.__name__ = ["verb", "core", "Plane"], In.__super__ = Xt, In.prototype = T(Xt.prototype, {
10461
+ b["verb.core.Plane"] = In, In.__name__ = ["verb", "core", "Plane"], In.__super__ = Xt, In.prototype = M(Xt.prototype, {
10462
10462
  __class__: In
10463
10463
  });
10464
10464
  var rn = f.core.Ray = function(r, n) {
10465
10465
  this.origin = r, this.dir = n;
10466
10466
  };
10467
- b["verb.core.Ray"] = rn, rn.__name__ = ["verb", "core", "Ray"], rn.__super__ = Xt, rn.prototype = T(Xt.prototype, {
10467
+ b["verb.core.Ray"] = rn, rn.__name__ = ["verb", "core", "Ray"], rn.__super__ = Xt, rn.prototype = M(Xt.prototype, {
10468
10468
  __class__: rn
10469
10469
  });
10470
10470
  var Ft = f.core.NurbsCurveData = function(r, n, i) {
10471
10471
  this.degree = r, this.controlPoints = i, this.knots = n;
10472
10472
  };
10473
- b["verb.core.NurbsCurveData"] = Ft, Ft.__name__ = ["verb", "core", "NurbsCurveData"], Ft.__super__ = Xt, Ft.prototype = T(Xt.prototype, {
10473
+ b["verb.core.NurbsCurveData"] = Ft, Ft.__name__ = ["verb", "core", "NurbsCurveData"], Ft.__super__ = Xt, Ft.prototype = M(Xt.prototype, {
10474
10474
  __class__: Ft
10475
10475
  });
10476
10476
  var Jt = f.core.NurbsSurfaceData = function(r, n, i, l, u) {
10477
10477
  this.degreeU = r, this.degreeV = n, this.knotsU = i, this.knotsV = l, this.controlPoints = u;
10478
10478
  };
10479
- b["verb.core.NurbsSurfaceData"] = Jt, Jt.__name__ = ["verb", "core", "NurbsSurfaceData"], Jt.__super__ = Xt, Jt.prototype = T(Xt.prototype, {
10479
+ b["verb.core.NurbsSurfaceData"] = Jt, Jt.__name__ = ["verb", "core", "NurbsSurfaceData"], Jt.__super__ = Xt, Jt.prototype = M(Xt.prototype, {
10480
10480
  __class__: Jt
10481
10481
  });
10482
10482
  var je = f.core.MeshData = function(r, n, i, l) {
@@ -10484,19 +10484,19 @@ var Tl = { exports: {} };
10484
10484
  };
10485
10485
  b["verb.core.MeshData"] = je, je.__name__ = ["verb", "core", "MeshData"], je.empty = function() {
10486
10486
  return new je([], [], [], []);
10487
- }, je.__super__ = Xt, je.prototype = T(Xt.prototype, {
10487
+ }, je.__super__ = Xt, je.prototype = M(Xt.prototype, {
10488
10488
  __class__: je
10489
10489
  });
10490
10490
  var kn = f.core.PolylineData = function(r, n) {
10491
10491
  this.points = r, this.params = n;
10492
10492
  };
10493
- b["verb.core.PolylineData"] = kn, kn.__name__ = ["verb", "core", "PolylineData"], kn.__super__ = Xt, kn.prototype = T(Xt.prototype, {
10493
+ b["verb.core.PolylineData"] = kn, kn.__name__ = ["verb", "core", "PolylineData"], kn.__super__ = Xt, kn.prototype = M(Xt.prototype, {
10494
10494
  __class__: kn
10495
10495
  });
10496
10496
  var En = f.core.VolumeData = function(r, n, i, l, u, d, p) {
10497
10497
  this.degreeU = r, this.degreeV = n, this.degreeW = i, this.knotsU = l, this.knotsV = u, this.knotsW = d, this.controlPoints = p;
10498
10498
  };
10499
- b["verb.core.VolumeData"] = En, En.__name__ = ["verb", "core", "VolumeData"], En.__super__ = Xt, En.prototype = T(Xt.prototype, {
10499
+ b["verb.core.VolumeData"] = En, En.__name__ = ["verb", "core", "VolumeData"], En.__super__ = Xt, En.prototype = M(Xt.prototype, {
10500
10500
  __class__: En
10501
10501
  });
10502
10502
  var te = f.core.Pair = function(r, n) {
@@ -10583,7 +10583,7 @@ var Tl = { exports: {} };
10583
10583
  return -P.item1;
10584
10584
  }), d, p = null;
10585
10585
  p = function(P) {
10586
- for (var I, E = P.dimension, M = l.distanceFunction(r, P.kdPoint.point), L, N = [], B = 0, z = l.dim; B < z; )
10586
+ for (var I, E = P.dimension, T = l.distanceFunction(r, P.kdPoint.point), L, N = [], B = 0, O = l.dim; B < O; )
10587
10587
  B++, N.push(0);
10588
10588
  L = N;
10589
10589
  for (var F, V, H = function(Y, tt) {
@@ -10593,10 +10593,10 @@ var Tl = { exports: {} };
10593
10593
  j == P.dimension ? L[j] = r[j] : L[j] = P.kdPoint.point[j];
10594
10594
  }
10595
10595
  if (F = l.distanceFunction(L, P.kdPoint.point), P.right == null && P.left == null) {
10596
- (u.size() < n || M < u.peek().item1) && H(P, M);
10596
+ (u.size() < n || T < u.peek().item1) && H(P, T);
10597
10597
  return;
10598
10598
  }
10599
- P.right == null ? I = P.left : P.left == null ? I = P.right : r[E] < P.kdPoint.point[E] ? I = P.left : I = P.right, p(I), (u.size() < n || M < u.peek().item1) && H(P, M), (u.size() < n || Math.abs(F) < u.peek().item1) && (I == P.left ? V = P.right : V = P.left, V != null && p(V));
10599
+ P.right == null ? I = P.left : P.left == null ? I = P.right : r[E] < P.kdPoint.point[E] ? I = P.left : I = P.right, p(I), (u.size() < n || T < u.peek().item1) && H(P, T), (u.size() < n || Math.abs(F) < u.peek().item1) && (I == P.left ? V = P.right : V = P.left, V != null && p(V));
10600
10600
  }, d = p;
10601
10601
  for (var _ = 0; _ < n; )
10602
10602
  _++, u.push(new te(null, i));
@@ -10870,13 +10870,13 @@ var Tl = { exports: {} };
10870
10870
  A.push(r[E].slice());
10871
10871
  }
10872
10872
  r = A;
10873
- var M = r.length, L = M - 1, N = [];
10874
- for (l = 0; l < M; ) {
10875
- for (_ = l, p = r[l], w = Math.abs(p[l]), i = l + 1; i < M; )
10873
+ var T = r.length, L = T - 1, N = [];
10874
+ for (l = 0; l < T; ) {
10875
+ for (_ = l, p = r[l], w = Math.abs(p[l]), i = l + 1; i < T; )
10876
10876
  u = Math.abs(r[i][l]), w < u && (w = u, _ = i), ++i;
10877
- for (N[l] = _, _ != l && (r[l] = r[_], r[_] = p, p = r[l]), d = p[l], n = l + 1; n < M; )
10877
+ for (N[l] = _, _ != l && (r[l] = r[_], r[_] = p, p = r[l]), d = p[l], n = l + 1; n < T; )
10878
10878
  r[n][l] /= d, ++n;
10879
- for (n = l + 1; n < M; ) {
10879
+ for (n = l + 1; n < T; ) {
10880
10880
  for (v = r[n], i = l + 1; i < L; )
10881
10881
  v[i] -= v[l] * p[i], ++i, v[i] -= v[l] * p[i], ++i;
10882
10882
  i == L && (v[i] -= v[l] * p[i]), ++n;
@@ -10910,8 +10910,8 @@ var Tl = { exports: {} };
10910
10910
  u.push(new te(_, p));
10911
10911
  }
10912
10912
  u.sort(function(I, E) {
10913
- var M = I.item0, L = E.item0;
10914
- return M == L ? 0 : M > L ? 1 : -1;
10913
+ var T = I.item0, L = E.item0;
10914
+ return T == L ? 0 : T > L ? 1 : -1;
10915
10915
  });
10916
10916
  for (var v = [], w = 0, A = u.length; w < A; ) {
10917
10917
  var P = w++;
@@ -10936,8 +10936,8 @@ var Tl = { exports: {} };
10936
10936
  }
10937
10937
  return i;
10938
10938
  }, ee.triangleUVFromPoint = function(r, n, i) {
10939
- var l = r.faces[n], u = r.points[l[0]], d = r.points[l[1]], p = r.points[l[2]], _ = r.uvs[l[0]], v = r.uvs[l[1]], w = r.uvs[l[2]], A = m.sub(u, i), P = m.sub(d, i), I = m.sub(p, i), E = m.norm(m.cross(m.sub(u, d), m.sub(u, p))), M = m.norm(m.cross(P, I)) / E, L = m.norm(m.cross(I, A)) / E, N = m.norm(m.cross(A, P)) / E;
10940
- return m.add(m.mul(M, _), m.add(m.mul(L, v), m.mul(N, w)));
10939
+ var l = r.faces[n], u = r.points[l[0]], d = r.points[l[1]], p = r.points[l[2]], _ = r.uvs[l[0]], v = r.uvs[l[1]], w = r.uvs[l[2]], A = m.sub(u, i), P = m.sub(d, i), I = m.sub(p, i), E = m.norm(m.cross(m.sub(u, d), m.sub(u, p))), T = m.norm(m.cross(P, I)) / E, L = m.norm(m.cross(I, A)) / E, N = m.norm(m.cross(A, P)) / E;
10940
+ return m.add(m.mul(T, _), m.add(m.mul(L, v), m.mul(N, w)));
10941
10941
  };
10942
10942
  var Ar = function(r, n) {
10943
10943
  if (this._empty = !1, this._face = -1, n == null) {
@@ -10984,7 +10984,7 @@ var Tl = { exports: {} };
10984
10984
  var d = n.length, p = r(n), _ = p, v;
10985
10985
  if (isNaN(p)) throw new Q("uncmin: f(x0) is a NaN!");
10986
10986
  i = Math.max(i, rt.EPSILON);
10987
- var w, A, P, I = Mt.identity(d), E = 0, M = [], L, N, B, z, F, V, H = "";
10987
+ var w, A, P, I = Mt.identity(d), E = 0, T = [], L, N, B, O, F, V, H = "";
10988
10988
  for (A = l(n); E < u; ) {
10989
10989
  if (!m.all(m.finite(A))) {
10990
10990
  H = "Gradient has Infinity or NaN";
@@ -10999,7 +10999,7 @@ var Tl = { exports: {} };
10999
10999
  break;
11000
11000
  }
11001
11001
  for (F = 1, v = m.dot(A, w), L = n; E < u && !(F * V < i); ) {
11002
- if (M = m.mul(F, w), L = m.add(n, M), _ = r(L), _ - p >= 0.1 * F * v || isNaN(_)) {
11002
+ if (T = m.mul(F, w), L = m.add(n, T), _ = r(L), _ - p >= 0.1 * F * v || isNaN(_)) {
11003
11003
  F *= 0.5, ++E;
11004
11004
  continue;
11005
11005
  }
@@ -11013,20 +11013,20 @@ var Tl = { exports: {} };
11013
11013
  H = "maxit reached during line search";
11014
11014
  break;
11015
11015
  }
11016
- P = l(L), N = m.sub(P, A), z = m.dot(N, M), B = Mt.dot(I, N), I = Mt.sub(Mt.add(I, Mt.mul((z + m.dot(N, B)) / (z * z), Ge.tensor(M, M))), Mt.div(Mt.add(Ge.tensor(B, M), Ge.tensor(M, B)), z)), n = L, p = _, A = P, ++E;
11016
+ P = l(L), N = m.sub(P, A), O = m.dot(N, T), B = Mt.dot(I, N), I = Mt.sub(Mt.add(I, Mt.mul((O + m.dot(N, B)) / (O * O), Ge.tensor(T, T))), Mt.div(Mt.add(Ge.tensor(B, T), Ge.tensor(T, B)), O)), n = L, p = _, A = P, ++E;
11017
11017
  }
11018
11018
  return new Rn(n, p, A, I, E, H);
11019
11019
  }, Ge.numericalGradient = function(r, n) {
11020
11020
  var i = n.length, l = r(n);
11021
11021
  if (l == NaN) throw new Q("gradient: f(x) is a NaN!");
11022
- for (var u = n.slice(0), d, p, _ = [], v, w = 1e-3, A, P, I, E = 0, M, L, N, B = 0; B < i; )
11023
- for (var z = B++, F = Math.max(1e-6 * l, 1e-8); ; ) {
11022
+ for (var u = n.slice(0), d, p, _ = [], v, w = 1e-3, A, P, I, E = 0, T, L, N, B = 0; B < i; )
11023
+ for (var O = B++, F = Math.max(1e-6 * l, 1e-8); ; ) {
11024
11024
  if (++E, E > 20) throw new Q("Numerical gradient fails");
11025
- if (u[z] = n[z] + F, d = r(u), u[z] = n[z] - F, p = r(u), u[z] = n[z], isNaN(d) || isNaN(p)) {
11025
+ if (u[O] = n[O] + F, d = r(u), u[O] = n[O] - F, p = r(u), u[O] = n[O], isNaN(d) || isNaN(p)) {
11026
11026
  F /= 16;
11027
11027
  continue;
11028
11028
  }
11029
- if (_[z] = (d - p) / (2 * F), A = n[z] - F, P = n[z], I = n[z] + F, M = (d - l) / F, L = (l - p) / F, N = m.max([Math.abs(_[z]), Math.abs(l), Math.abs(d), Math.abs(p), Math.abs(A), Math.abs(P), Math.abs(I), 1e-8]), v = Math.min(m.max([Math.abs(M - _[z]), Math.abs(L - _[z]), Math.abs(M - L)]) / N, F / N), v > w) F /= 16;
11029
+ if (_[O] = (d - p) / (2 * F), A = n[O] - F, P = n[O], I = n[O] + F, T = (d - l) / F, L = (l - p) / F, N = m.max([Math.abs(_[O]), Math.abs(l), Math.abs(d), Math.abs(p), Math.abs(A), Math.abs(P), Math.abs(I), 1e-8]), v = Math.min(m.max([Math.abs(T - _[O]), Math.abs(L - _[O]), Math.abs(T - L)]) / N, F / N), v > w) F /= 16;
11030
11030
  else break;
11031
11031
  }
11032
11032
  return _;
@@ -11295,9 +11295,9 @@ var Tl = { exports: {} };
11295
11295
  var i = yt.rationalSurfaceClosestParam(r, n);
11296
11296
  return C.rationalSurfacePoint(r, i[0], i[1]);
11297
11297
  }, yt.rationalSurfaceClosestParam = function(r, n) {
11298
- for (var i = 5, l = 0, u, d = 1e-4, p = 5e-4, _, v = r.knotsU[0], w = K.last(r.knotsU), A = r.knotsV[0], P = K.last(r.knotsV), I = yt.isRationalSurfaceClosed(r), E = yt.isRationalSurfaceClosed(r, !1), M, L = Lt.rationalSurfaceAdaptive(r, new Sr()), N = 1 / 0, B = 0, z = L.points.length; B < z; ) {
11298
+ for (var i = 5, l = 0, u, d = 1e-4, p = 5e-4, _, v = r.knotsU[0], w = K.last(r.knotsU), A = r.knotsV[0], P = K.last(r.knotsV), I = yt.isRationalSurfaceClosed(r), E = yt.isRationalSurfaceClosed(r, !1), T, L = Lt.rationalSurfaceAdaptive(r, new Sr()), N = 1 / 0, B = 0, O = L.points.length; B < O; ) {
11299
11299
  var F = B++, V = L.points[F], H = m.normSquared(m.sub(n, V));
11300
- H < N && (N = H, M = L.uvs[F]);
11300
+ H < N && (N = H, T = L.uvs[F]);
11301
11301
  }
11302
11302
  for (var J = function(Vt) {
11303
11303
  return C.rationalSurfaceDerivatives(r, Vt[0], Vt[1], 2);
@@ -11305,16 +11305,16 @@ var Tl = { exports: {} };
11305
11305
  var Yt = qt[1][0], Pe = qt[0][1], De = qt[2][0], _e = qt[0][2], ge = qt[1][1], Ae = qt[1][1], Te = m.dot(Yt, Bt), He = m.dot(Pe, Bt), sr = [-Te, -He], qe = m.dot(Yt, Yt) + m.dot(De, Bt), Ye = m.dot(Yt, Pe) + m.dot(ge, Bt), Ke = m.dot(Yt, Pe) + m.dot(Ae, Bt), lr = m.dot(Pe, Pe) + m.dot(_e, Bt), dn = [[qe, Ye], [Ke, lr]], Dr = Mt.solve(dn, sr);
11306
11306
  return m.add(Dr, Vt);
11307
11307
  }; l < i; ) {
11308
- u = J(M), _ = m.sub(u[0][0], n);
11308
+ u = J(T), _ = m.sub(u[0][0], n);
11309
11309
  var j = m.norm(_), Y = m.dot(u[1][0], _), tt = m.norm(u[1][0]) * j, et = m.dot(u[0][1], _), st = m.norm(u[0][1]) * j, ot = Y / tt, it = et / st, ht = j < d, nt = ot < p, ct = it < p;
11310
- if (ht && nt && ct) return M;
11311
- var q = G(M, u, _);
11310
+ if (ht && nt && ct) return T;
11311
+ var q = G(T, u, _);
11312
11312
  q[0] < v ? I ? q = [w - (q[0] - v), q[1]] : q = [v + rt.EPSILON, q[1]] : q[0] > w && (I ? q = [v + (q[0] - w), q[1]] : q = [w - rt.EPSILON, q[1]]), q[1] < A ? E ? q = [q[0], P - (q[1] - A)] : q = [q[0], A + rt.EPSILON] : q[1] > P && (E ? q = [q[0], A + (q[0] - P)] : q = [q[0], P - rt.EPSILON]);
11313
- var pt = m.norm(m.mul(q[0] - M[0], u[1][0])), Pt = m.norm(m.mul(q[1] - M[1], u[0][1]));
11314
- if (pt + Pt < d) return M;
11315
- M = q, l++;
11313
+ var pt = m.norm(m.mul(q[0] - T[0], u[1][0])), Pt = m.norm(m.mul(q[1] - T[1], u[0][1]));
11314
+ if (pt + Pt < d) return T;
11315
+ T = q, l++;
11316
11316
  }
11317
- return M;
11317
+ return T;
11318
11318
  }, yt.rationalCurveClosestPoint = function(r, n) {
11319
11319
  return C.rationalCurvePoint(r, yt.rationalCurveClosestParam(r, n));
11320
11320
  }, yt.rationalCurveClosestParam = function(r, n) {
@@ -11322,14 +11322,14 @@ var Tl = { exports: {} };
11322
11322
  var _ = d++, v = u[_][0], w = u[_ + 1][0], A = u[_].slice(1), P = u[_ + 1].slice(1), I = Ee.segmentClosestPoint(n, A, P, v, w), E = m.norm(m.sub(n, I.pt));
11323
11323
  E < i && (i = E, l = I.u);
11324
11324
  }
11325
- for (var M = 5, L = 0, N, B = 1e-4, z = 5e-4, F, V = r.knots[0], H = K.last(r.knots), J = m.normSquared(m.sub(r.controlPoints[0], K.last(r.controlPoints))) < rt.EPSILON, G = l, j = function(q) {
11325
+ for (var T = 5, L = 0, N, B = 1e-4, O = 5e-4, F, V = r.knots[0], H = K.last(r.knots), J = m.normSquared(m.sub(r.controlPoints[0], K.last(r.controlPoints))) < rt.EPSILON, G = l, j = function(q) {
11326
11326
  return C.rationalCurveDerivatives(r, q, 2);
11327
11327
  }, Y = function(q, pt, Pt) {
11328
11328
  var Vt = m.dot(pt[1], Pt), qt = m.dot(pt[2], Pt), Bt = m.dot(pt[1], pt[1]), Yt = qt + Bt;
11329
11329
  return q - Vt / Yt;
11330
- }; L < M; ) {
11330
+ }; L < T; ) {
11331
11331
  N = j(G), F = m.sub(N[0], n);
11332
- var tt = m.norm(F), et = m.dot(N[1], F), st = m.norm(N[1]) * tt, ot = et / st, it = tt < B, ht = Math.abs(ot) < z;
11332
+ var tt = m.norm(F), et = m.dot(N[1], F), st = m.norm(N[1]) * tt, ot = et / st, it = tt < B, ht = Math.abs(ot) < O;
11333
11333
  if (it && ht) return G;
11334
11334
  var nt = Y(G, N, F);
11335
11335
  nt < V ? J ? nt = H - (nt - V) : nt = V : nt > H && (J ? nt = V + (nt - H) : nt = H);
@@ -11435,9 +11435,9 @@ var Tl = { exports: {} };
11435
11435
  for (var p, _ = [], v = 0, w = u + 1; v < w; )
11436
11436
  v++, _.push(n);
11437
11437
  p = _;
11438
- for (var A = [], P = [], I = C.knotSpan(u, n, l), E = null, M = 0; M < d.length; ) {
11439
- var L = d[M];
11440
- ++M, E = _t.curveKnotRefine(new Ft(u, l, L), p), A.push(E.controlPoints.slice(0, I + 1)), P.push(E.controlPoints.slice(I + 1));
11438
+ for (var A = [], P = [], I = C.knotSpan(u, n, l), E = null, T = 0; T < d.length; ) {
11439
+ var L = d[T];
11440
+ ++T, E = _t.curveKnotRefine(new Ft(u, l, L), p), A.push(E.controlPoints.slice(0, I + 1)), P.push(E.controlPoints.slice(I + 1));
11441
11441
  }
11442
11442
  var N = E.knots.slice(0, I + u + 2), B = E.knots.slice(I + 1);
11443
11443
  return i ? [new Jt(r.degreeU, u, r.knotsU.slice(), N, A), new Jt(r.degreeU, u, r.knotsU.slice(), B, P)] : (A = Mt.transpose(A), P = Mt.transpose(P), [new Jt(u, r.degreeV, N, r.knotsV.slice(), A), new Jt(u, r.degreeV, B, r.knotsV.slice(), P)]);
@@ -11484,16 +11484,16 @@ var Tl = { exports: {} };
11484
11484
  var P = w++;
11485
11485
  _.push([]);
11486
11486
  for (var I = 0, E = l - P + 1; I < E; ) {
11487
- for (var M = I++, L = d[P][M], N = 1, B = M + 1; N < B; ) {
11488
- var z = N++;
11489
- m.subMulMutate(L, zt.get(M, z) * p[0][z], _[P][M - z]);
11487
+ for (var T = I++, L = d[P][T], N = 1, B = T + 1; N < B; ) {
11488
+ var O = N++;
11489
+ m.subMulMutate(L, zt.get(T, O) * p[0][O], _[P][T - O]);
11490
11490
  }
11491
11491
  for (var F = 1, V = P + 1; F < V; ) {
11492
11492
  var H = F++;
11493
- m.subMulMutate(L, zt.get(P, H) * p[H][0], _[P - H][M]);
11494
- for (var J = m.zeros1d(v), G = 1, j = M + 1; G < j; ) {
11493
+ m.subMulMutate(L, zt.get(P, H) * p[H][0], _[P - H][T]);
11494
+ for (var J = m.zeros1d(v), G = 1, j = T + 1; G < j; ) {
11495
11495
  var Y = G++;
11496
- m.addMulMutate(J, zt.get(M, Y) * p[H][Y], _[P - H][M - Y]);
11496
+ m.addMulMutate(J, zt.get(T, Y) * p[H][Y], _[P - H][T - Y]);
11497
11497
  }
11498
11498
  m.subMulMutate(L, zt.get(P, H), J);
11499
11499
  }
@@ -11525,7 +11525,7 @@ var Tl = { exports: {} };
11525
11525
  d < p ? I = d : I = p;
11526
11526
  var E;
11527
11527
  d < _ ? E = d : E = _;
11528
- for (var M = m.zeros3d(d + 1, d + 1, P), L = C.knotSpanGivenN(r, p, l, w), N = C.knotSpanGivenN(n, _, u, A), B = C.derivativeBasisFunctionsGivenNI(L, l, p, r, w), z = C.derivativeBasisFunctionsGivenNI(N, u, _, n, A), F = m.zeros2d(_ + 1, P), V = 0, H = 0, J = I + 1; H < J; ) {
11528
+ for (var T = m.zeros3d(d + 1, d + 1, P), L = C.knotSpanGivenN(r, p, l, w), N = C.knotSpanGivenN(n, _, u, A), B = C.derivativeBasisFunctionsGivenNI(L, l, p, r, w), O = C.derivativeBasisFunctionsGivenNI(N, u, _, n, A), F = m.zeros2d(_ + 1, P), V = 0, H = 0, J = I + 1; H < J; ) {
11529
11529
  for (var G = H++, j = 0, Y = _ + 1; j < Y; ) {
11530
11530
  var tt = j++;
11531
11531
  F[tt] = m.zeros1d(P);
@@ -11538,36 +11538,36 @@ var Tl = { exports: {} };
11538
11538
  it < E ? V = it : V = E;
11539
11539
  for (var ht = 0, nt = V + 1; ht < nt; ) {
11540
11540
  var ct = ht++;
11541
- M[G][ct] = m.zeros1d(P);
11541
+ T[G][ct] = m.zeros1d(P);
11542
11542
  for (var q = 0, pt = _ + 1; q < pt; ) {
11543
11543
  var Pt = q++;
11544
- m.addMulMutate(M[G][ct], z[ct][Pt], F[Pt]);
11544
+ m.addMulMutate(T[G][ct], O[ct][Pt], F[Pt]);
11545
11545
  }
11546
11546
  }
11547
11547
  }
11548
- return M;
11548
+ return T;
11549
11549
  }, C.surfacePoint = function(r, n, i) {
11550
11550
  var l = r.knotsU.length - r.degreeU - 2, u = r.knotsV.length - r.degreeV - 2;
11551
11551
  return C.surfacePointGivenNM(l, u, r, n, i);
11552
11552
  }, C.surfacePointGivenNM = function(r, n, i, l, u) {
11553
11553
  var d = i.degreeU, p = i.degreeV, _ = i.controlPoints, v = i.knotsU, w = i.knotsV;
11554
11554
  if (!C.areValidRelations(d, _.length, v.length) || !C.areValidRelations(p, _[0].length, w.length)) throw new Q("Invalid relations between control points, knot vector, and n");
11555
- for (var A = _[0][0].length, P = C.knotSpanGivenN(r, d, l, v), I = C.knotSpanGivenN(n, p, u, w), E = C.basisFunctionsGivenKnotSpanIndex(P, l, d, v), M = C.basisFunctionsGivenKnotSpanIndex(I, u, p, w), L = P - d, N = I, B = m.zeros1d(A), z = m.zeros1d(A), F = 0, V = p + 1; F < V; ) {
11555
+ for (var A = _[0][0].length, P = C.knotSpanGivenN(r, d, l, v), I = C.knotSpanGivenN(n, p, u, w), E = C.basisFunctionsGivenKnotSpanIndex(P, l, d, v), T = C.basisFunctionsGivenKnotSpanIndex(I, u, p, w), L = P - d, N = I, B = m.zeros1d(A), O = m.zeros1d(A), F = 0, V = p + 1; F < V; ) {
11556
11556
  var H = F++;
11557
- z = m.zeros1d(A), N = I - p + H;
11557
+ O = m.zeros1d(A), N = I - p + H;
11558
11558
  for (var J = 0, G = d + 1; J < G; ) {
11559
11559
  var j = J++;
11560
- m.addMulMutate(z, E[j], _[L + j][N]);
11560
+ m.addMulMutate(O, E[j], _[L + j][N]);
11561
11561
  }
11562
- m.addMulMutate(B, M[H], z);
11562
+ m.addMulMutate(B, T[H], O);
11563
11563
  }
11564
11564
  return B;
11565
11565
  }, C.curveRegularSamplePoints = function(r, n) {
11566
- for (var i = C.curveDerivatives(r, r.knots[0], r.degree), l = 1 / n, u = l * l, d = i[0], p = m.mul(l, i[1]), _ = m.mul(u * 0.5, i[2]), v = m.mul(u * l * 0.5, i[3]), w = m.add(_, _), A = m.add(v, v), P = m.mul(0.3333333333333333, v), I = [], E = 0, M = n + 1; E < M; )
11566
+ for (var i = C.curveDerivatives(r, r.knots[0], r.degree), l = 1 / n, u = l * l, d = i[0], p = m.mul(l, i[1]), _ = m.mul(u * 0.5, i[2]), v = m.mul(u * l * 0.5, i[3]), w = m.add(_, _), A = m.add(v, v), P = m.mul(0.3333333333333333, v), I = [], E = 0, T = n + 1; E < T; )
11567
11567
  E++, I.push(C.dehomogenize(d)), m.addAllMutate([d, p, _, P]), m.addAllMutate([p, w, v]), m.addAllMutate([w, A]), m.addAllMutate([_, v]);
11568
11568
  return I;
11569
11569
  }, C.curveRegularSamplePoints2 = function(r, n) {
11570
- for (var i = C.curveDerivatives(r, r.knots[0], r.degree), l = 1 / n, u = l * l, d = i[0], p = m.mul(l, i[1]), _ = m.mul(u * 0.5, i[2]), v = m.mul(u * l * 0.5, i[3]), w = m.add(_, _), A = m.add(v, v), P = m.mul(0.3333333333333333, v), I = [], E = 0, M = n + 1; E < M; )
11570
+ for (var i = C.curveDerivatives(r, r.knots[0], r.degree), l = 1 / n, u = l * l, d = i[0], p = m.mul(l, i[1]), _ = m.mul(u * 0.5, i[2]), v = m.mul(u * l * 0.5, i[3]), w = m.add(_, _), A = m.add(v, v), P = m.mul(0.3333333333333333, v), I = [], E = 0, T = n + 1; E < T; )
11571
11571
  E++, I.push(C.dehomogenize(d)), m.addAllMutate([d, p, _, P]), m.addAllMutate([p, w, v]), m.addAllMutate([w, A]), m.addAllMutate([_, v]);
11572
11572
  return I;
11573
11573
  }, C.rationalSurfaceRegularSampleDerivatives = function(r, n, i, l) {
@@ -11575,7 +11575,7 @@ var Tl = { exports: {} };
11575
11575
  var A = w++, P = [];
11576
11576
  d.push(P);
11577
11577
  for (var I = 0; I < _; ) {
11578
- for (var E = I++, M = u[A][E], L = C.rational2d(M), N = C.weight2d(M), B = [], z = L[0][0].length, F = 0; F < v; ) {
11578
+ for (var E = I++, T = u[A][E], L = C.rational2d(T), N = C.weight2d(T), B = [], O = L[0][0].length, F = 0; F < v; ) {
11579
11579
  var V = F++;
11580
11580
  B.push([]);
11581
11581
  for (var H = 0, J = v - V; H < J; ) {
@@ -11586,7 +11586,7 @@ var Tl = { exports: {} };
11586
11586
  for (var st = 1, ot = V + 1; st < ot; ) {
11587
11587
  var it = st++;
11588
11588
  m.subMulMutate(j, zt.get(V, it) * N[it][0], B[V - it][G]);
11589
- for (var ht = m.zeros1d(z), nt = 1, ct = G + 1; nt < ct; ) {
11589
+ for (var ht = m.zeros1d(O), nt = 1, ct = G + 1; nt < ct; ) {
11590
11590
  var q = nt++;
11591
11591
  m.addMulMutate(ht, zt.get(G, q) * N[it][q], B[V - it][G - q]);
11592
11592
  }
@@ -11602,12 +11602,12 @@ var Tl = { exports: {} };
11602
11602
  }, C.surfaceRegularSampleDerivatives = function(r, n, i, l) {
11603
11603
  var u = r.degreeU, d = r.degreeV, p = r.controlPoints, _ = r.knotsU, v = r.knotsV, w = p[0][0].length;
11604
11604
  (K.last(_) - _[0]) / n, (K.last(v) - v[0]) / i;
11605
- for (var A = C.regularlySpacedDerivativeBasisFunctions(u, _, n), P = A.item0, I = A.item1, E = C.regularlySpacedDerivativeBasisFunctions(d, v, i), M = E.item0, L = E.item1, N = [], B = n + 1, z = i + 1, F = 0; F < B; ) {
11605
+ for (var A = C.regularlySpacedDerivativeBasisFunctions(u, _, n), P = A.item0, I = A.item1, E = C.regularlySpacedDerivativeBasisFunctions(d, v, i), T = E.item0, L = E.item1, N = [], B = n + 1, O = i + 1, F = 0; F < B; ) {
11606
11606
  var V = F++, H = [];
11607
11607
  N.push(H);
11608
- for (var J = 0; J < z; ) {
11608
+ for (var J = 0; J < O; ) {
11609
11609
  var G = J++;
11610
- H.push(C.surfaceDerivativesGivenBasesKnotSpans(u, d, p, P[V], M[G], I[V], L[G], w, l));
11610
+ H.push(C.surfaceDerivativesGivenBasesKnotSpans(u, d, p, P[V], T[G], I[V], L[G], w, l));
11611
11611
  }
11612
11612
  }
11613
11613
  return N;
@@ -11616,12 +11616,12 @@ var Tl = { exports: {} };
11616
11616
  }, C.surfaceRegularSamplePoints = function(r, n, i) {
11617
11617
  var l = r.degreeU, u = r.degreeV, d = r.controlPoints, p = r.knotsU, _ = r.knotsV, v = d[0][0].length;
11618
11618
  (K.last(p) - p[0]) / n, (K.last(_) - _[0]) / i;
11619
- for (var w = C.regularlySpacedBasisFunctions(l, p, n), A = w.item0, P = w.item1, I = C.regularlySpacedBasisFunctions(u, _, i), E = I.item0, M = I.item1, L = [], N = n + 1, B = i + 1, z = 0; z < N; ) {
11620
- var F = z++, V = [];
11619
+ for (var w = C.regularlySpacedBasisFunctions(l, p, n), A = w.item0, P = w.item1, I = C.regularlySpacedBasisFunctions(u, _, i), E = I.item0, T = I.item1, L = [], N = n + 1, B = i + 1, O = 0; O < N; ) {
11620
+ var F = O++, V = [];
11621
11621
  L.push(V);
11622
11622
  for (var H = 0; H < B; ) {
11623
11623
  var J = H++;
11624
- V.push(C.surfacePointGivenBasesKnotSpans(l, u, d, A[F], E[J], P[F], M[J], v));
11624
+ V.push(C.surfacePointGivenBasesKnotSpans(l, u, d, A[F], E[J], P[F], T[J], v));
11625
11625
  }
11626
11626
  }
11627
11627
  return L;
@@ -11639,13 +11639,13 @@ var Tl = { exports: {} };
11639
11639
  return new te(p, d);
11640
11640
  }, C.surfacePointGivenBasesKnotSpans = function(r, n, i, l, u, d, p, _) {
11641
11641
  for (var v = m.zeros1d(_), w, A = l - r, P = u - n, I = 0, E = n + 1; I < E; ) {
11642
- var M = I++;
11642
+ var T = I++;
11643
11643
  w = m.zeros1d(_);
11644
11644
  for (var L = 0, N = r + 1; L < N; ) {
11645
11645
  var B = L++;
11646
11646
  m.addMulMutate(w, d[B], i[A + B][P]);
11647
11647
  }
11648
- P++, m.addMulMutate(v, p[M], w);
11648
+ P++, m.addMulMutate(v, p[T], w);
11649
11649
  }
11650
11650
  return v;
11651
11651
  }, C.surfaceDerivativesGivenBasesKnotSpans = function(r, n, i, l, u, d, p, _, v) {
@@ -11653,9 +11653,9 @@ var Tl = { exports: {} };
11653
11653
  v < r ? A = v : A = r;
11654
11654
  var P;
11655
11655
  v < n ? P = v : P = n;
11656
- for (var I = m.zeros3d(A + 1, P + 1, w), E = m.zeros2d(n + 1, w), M = 0, L = 0, N = A + 1; L < N; ) {
11657
- for (var B = L++, z = 0, F = n + 1; z < F; ) {
11658
- var V = z++;
11656
+ for (var I = m.zeros3d(A + 1, P + 1, w), E = m.zeros2d(n + 1, w), T = 0, L = 0, N = A + 1; L < N; ) {
11657
+ for (var B = L++, O = 0, F = n + 1; O < F; ) {
11658
+ var V = O++;
11659
11659
  E[V] = m.zeros1d(w);
11660
11660
  for (var H = 0, J = r + 1; H < J; ) {
11661
11661
  var G = H++;
@@ -11663,8 +11663,8 @@ var Tl = { exports: {} };
11663
11663
  }
11664
11664
  }
11665
11665
  var j = v - B;
11666
- j < P ? M = j : M = P;
11667
- for (var Y = 0, tt = M + 1; Y < tt; ) {
11666
+ j < P ? T = j : T = P;
11667
+ for (var Y = 0, tt = T + 1; Y < tt; ) {
11668
11668
  var et = Y++;
11669
11669
  I[B][et] = m.zeros1d(w);
11670
11670
  for (var st = 0, ot = n + 1; st < ot; ) {
@@ -11683,9 +11683,9 @@ var Tl = { exports: {} };
11683
11683
  var _ = d[0].length, v;
11684
11684
  l < u ? v = l : v = u;
11685
11685
  for (var w = m.zeros2d(l + 1, _), A = C.knotSpanGivenN(r, u, i, p), P = C.derivativeBasisFunctionsGivenNI(A, i, u, v, p), I = 0, E = v + 1; I < E; )
11686
- for (var M = I++, L = 0, N = u + 1; L < N; ) {
11686
+ for (var T = I++, L = 0, N = u + 1; L < N; ) {
11687
11687
  var B = L++;
11688
- m.addMulMutate(w[M], P[M][B], d[A - u + B]);
11688
+ m.addMulMutate(w[T], P[T][B], d[A - u + B]);
11689
11689
  }
11690
11690
  return w;
11691
11691
  }, C.curvePoint = function(r, n) {
@@ -11707,15 +11707,15 @@ var Tl = { exports: {} };
11707
11707
  return C.volumePointGivenNML(r, u, d, p, n, i, l);
11708
11708
  }, C.volumePointGivenNML = function(r, n, i, l, u, d, p) {
11709
11709
  if (!C.areValidRelations(r.degreeU, r.controlPoints.length, r.knotsU.length) || !C.areValidRelations(r.degreeV, r.controlPoints[0].length, r.knotsV.length) || !C.areValidRelations(r.degreeW, r.controlPoints[0][0].length, r.knotsW.length)) throw new Q("Invalid relations between control points and knot vector");
11710
- for (var _ = r.controlPoints, v = r.degreeU, w = r.degreeV, A = r.degreeW, P = r.knotsU, I = r.knotsV, E = r.knotsW, M = _[0][0][0].length, L = C.knotSpanGivenN(n, v, u, P), N = C.knotSpanGivenN(i, w, d, I), B = C.knotSpanGivenN(l, A, p, E), z = C.basisFunctionsGivenKnotSpanIndex(L, u, v, P), F = C.basisFunctionsGivenKnotSpanIndex(N, d, w, I), V = C.basisFunctionsGivenKnotSpanIndex(B, p, A, E), H = L - v, J = m.zeros1d(M), G = m.zeros1d(M), j = m.zeros1d(M), Y = 0, tt = A + 1; Y < tt; ) {
11710
+ for (var _ = r.controlPoints, v = r.degreeU, w = r.degreeV, A = r.degreeW, P = r.knotsU, I = r.knotsV, E = r.knotsW, T = _[0][0][0].length, L = C.knotSpanGivenN(n, v, u, P), N = C.knotSpanGivenN(i, w, d, I), B = C.knotSpanGivenN(l, A, p, E), O = C.basisFunctionsGivenKnotSpanIndex(L, u, v, P), F = C.basisFunctionsGivenKnotSpanIndex(N, d, w, I), V = C.basisFunctionsGivenKnotSpanIndex(B, p, A, E), H = L - v, J = m.zeros1d(T), G = m.zeros1d(T), j = m.zeros1d(T), Y = 0, tt = A + 1; Y < tt; ) {
11711
11711
  var et = Y++;
11712
- j = m.zeros1d(M);
11712
+ j = m.zeros1d(T);
11713
11713
  for (var st = B - A + et, ot = 0, it = w + 1; ot < it; ) {
11714
11714
  var ht = ot++;
11715
- G = m.zeros1d(M);
11715
+ G = m.zeros1d(T);
11716
11716
  for (var nt = N - w + ht, ct = 0, q = v + 1; ct < q; ) {
11717
11717
  var pt = ct++;
11718
- m.addMulMutate(G, z[pt], _[H + pt][nt][st]);
11718
+ m.addMulMutate(G, O[pt], _[H + pt][nt][st]);
11719
11719
  }
11720
11720
  m.addMulMutate(j, F[ht], G);
11721
11721
  }
@@ -11732,28 +11732,28 @@ var Tl = { exports: {} };
11732
11732
  var I = A++;
11733
11733
  p[I] = n - u[r + 1 - I], _[I] = u[r + I] - n, v = 0;
11734
11734
  for (var E = 0; E < I; ) {
11735
- var M = E++;
11736
- d[I][M] = _[M + 1] + p[I - M], w = d[M][I - 1] / d[I][M], d[M][I] = v + _[M + 1] * w, v = p[I - M] * w;
11735
+ var T = E++;
11736
+ d[I][T] = _[T + 1] + p[I - T], w = d[T][I - 1] / d[I][T], d[T][I] = v + _[T + 1] * w, v = p[I - T] * w;
11737
11737
  }
11738
11738
  d[I][I] = v;
11739
11739
  }
11740
- for (var L = m.zeros2d(l + 1, i + 1), N = m.zeros2d(2, i + 1), B = 0, z = 1, F = 0, V = 0, H = 0, J = 0, G = 0, j = 0, Y = i + 1; j < Y; ) {
11740
+ for (var L = m.zeros2d(l + 1, i + 1), N = m.zeros2d(2, i + 1), B = 0, O = 1, F = 0, V = 0, H = 0, J = 0, G = 0, j = 0, Y = i + 1; j < Y; ) {
11741
11741
  var tt = j++;
11742
11742
  L[0][tt] = d[tt][i];
11743
11743
  }
11744
11744
  for (var et = 0, st = i + 1; et < st; ) {
11745
11745
  var ot = et++;
11746
- B = 0, z = 1, N[0][0] = 1;
11746
+ B = 0, O = 1, N[0][0] = 1;
11747
11747
  for (var it = 1, ht = l + 1; it < ht; ) {
11748
11748
  var nt = it++;
11749
- F = 0, V = ot - nt, H = i - nt, ot >= nt && (N[z][0] = N[B][0] / d[H + 1][V], F = N[z][0] * d[V][H]), V >= -1 ? J = 1 : J = -V, ot - 1 <= H ? G = nt - 1 : G = i - ot;
11749
+ F = 0, V = ot - nt, H = i - nt, ot >= nt && (N[O][0] = N[B][0] / d[H + 1][V], F = N[O][0] * d[V][H]), V >= -1 ? J = 1 : J = -V, ot - 1 <= H ? G = nt - 1 : G = i - ot;
11750
11750
  for (var ct = J, q = G + 1; ct < q; ) {
11751
11751
  var pt = ct++;
11752
- N[z][pt] = (N[B][pt] - N[B][pt - 1]) / d[H + 1][V + pt], F += N[z][pt] * d[V + pt][H];
11752
+ N[O][pt] = (N[B][pt] - N[B][pt - 1]) / d[H + 1][V + pt], F += N[O][pt] * d[V + pt][H];
11753
11753
  }
11754
- ot <= H && (N[z][nt] = -N[B][nt - 1] / d[H + 1][ot], F += N[z][nt] * d[ot][H]), L[nt][ot] = F;
11754
+ ot <= H && (N[O][nt] = -N[B][nt - 1] / d[H + 1][ot], F += N[O][nt] * d[ot][H]), L[nt][ot] = F;
11755
11755
  var Pt = B;
11756
- B = z, z = Pt;
11756
+ B = O, O = Pt;
11757
11757
  }
11758
11758
  }
11759
11759
  for (var Vt = i, qt = 1, Bt = l + 1; qt < Bt; ) {
@@ -11853,14 +11853,14 @@ var Tl = { exports: {} };
11853
11853
  }), 3);
11854
11854
  });
11855
11855
  }, at.surfacesAtPointWithEstimate = function(r, n, i, l, u) {
11856
- var d, p, _, v, w, A, P, I, E, M, L, N, B, z = 5, F = 0;
11856
+ var d, p, _, v, w, A, P, I, E, T, L, N, B, O = 5, F = 0;
11857
11857
  do {
11858
- if (d = C.rationalSurfaceDerivatives(r, i[0], i[1], 1), p = d[0][0], v = d[1][0], w = d[0][1], _ = m.normalized(m.cross(v, w)), A = m.dot(_, p), P = C.rationalSurfaceDerivatives(n, l[0], l[1], 1), I = P[0][0], M = P[1][0], L = P[0][1], E = m.normalized(m.cross(M, L)), N = m.dot(E, I), B = m.distSquared(p, I), B < u * u) break;
11858
+ if (d = C.rationalSurfaceDerivatives(r, i[0], i[1], 1), p = d[0][0], v = d[1][0], w = d[0][1], _ = m.normalized(m.cross(v, w)), A = m.dot(_, p), P = C.rationalSurfaceDerivatives(n, l[0], l[1], 1), I = P[0][0], T = P[1][0], L = P[0][1], E = m.normalized(m.cross(T, L)), N = m.dot(E, I), B = m.distSquared(p, I), B < u * u) break;
11859
11859
  var V = m.normalized(m.cross(_, E)), H = m.dot(V, p), J = at.threePlanes(_, A, E, N, V, H);
11860
11860
  if (J == null) throw new Q("panic!");
11861
- var G = m.sub(J, p), j = m.sub(J, I), Y = m.cross(v, _), tt = m.cross(w, _), et = m.cross(M, E), st = m.cross(L, E), ot = m.dot(tt, G) / m.dot(tt, v), it = m.dot(Y, G) / m.dot(Y, w), ht = m.dot(st, j) / m.dot(st, M), nt = m.dot(et, j) / m.dot(et, L);
11861
+ var G = m.sub(J, p), j = m.sub(J, I), Y = m.cross(v, _), tt = m.cross(w, _), et = m.cross(T, E), st = m.cross(L, E), ot = m.dot(tt, G) / m.dot(tt, v), it = m.dot(Y, G) / m.dot(Y, w), ht = m.dot(st, j) / m.dot(st, T), nt = m.dot(et, j) / m.dot(et, L);
11862
11862
  i = m.add([ot, it], i), l = m.add([ht, nt], l), F++;
11863
- } while (F < z);
11863
+ } while (F < O);
11864
11864
  return new Cn(i, l, p, B);
11865
11865
  }, at.meshes = function(r, n, i, l) {
11866
11866
  i == null && (i = new rr(r)), l == null && (l = new rr(n));
@@ -11871,7 +11871,7 @@ var Tl = { exports: {} };
11871
11871
  }).filter(function(p) {
11872
11872
  return m.distSquared(p.min.point, p.max.point) > rt.EPSILON;
11873
11873
  }), function(p, _) {
11874
- var v = m.sub(p.min.uv0, _.min.uv0), w = m.dot(v, v), A = m.sub(p.max.uv0, _.max.uv0), P = m.dot(A, A), I = m.sub(p.min.uv0, _.max.uv0), E = m.dot(I, I), M = m.sub(p.max.uv0, _.min.uv0), L = m.dot(M, M);
11874
+ var v = m.sub(p.min.uv0, _.min.uv0), w = m.dot(v, v), A = m.sub(p.max.uv0, _.max.uv0), P = m.dot(A, A), I = m.sub(p.min.uv0, _.max.uv0), E = m.dot(I, I), T = m.sub(p.max.uv0, _.min.uv0), L = m.dot(T, T);
11875
11875
  return w < rt.EPSILON && P < rt.EPSILON || E < rt.EPSILON && L < rt.EPSILON;
11876
11876
  });
11877
11877
  return at.makeMeshIntersectionPolylines(d);
@@ -11879,7 +11879,7 @@ var Tl = { exports: {} };
11879
11879
  for (var u = new Ar(r), d = u.boundingBox(), p = d.min[0], _ = d.min[1], v = d.max[0], w = d.max[1], A = m.span(n, i, l), P = [], I = 0; I < A.length; ) {
11880
11880
  var E = A[I];
11881
11881
  ++I;
11882
- var M = [[p, _, E], [v, _, E], [v, w, E], [p, w, E]], L = [[0, 0], [1, 0], [1, 1], [0, 1]], N = [[0, 1, 2], [0, 2, 3]], B = new je(N, M, null, L);
11882
+ var T = [[p, _, E], [v, _, E], [v, w, E], [p, w, E]], L = [[0, 0], [1, 0], [1, 1], [0, 1]], N = [[0, 1, 2], [0, 2, 3]], B = new je(N, T, null, L);
11883
11883
  P.push(at.meshes(r, B, u));
11884
11884
  }
11885
11885
  return P;
@@ -11900,14 +11900,14 @@ var Tl = { exports: {} };
11900
11900
  w != null && w.adj == null && (v.adj = w, w.adj = v);
11901
11901
  }
11902
11902
  }
11903
- var A = u.filter(function(z) {
11904
- return z.adj == null;
11903
+ var A = u.filter(function(O) {
11904
+ return O.adj == null;
11905
11905
  });
11906
11906
  A.length == 0 && (A = u);
11907
11907
  for (var P = [], I = 0, E = !1; A.length != 0; ) {
11908
- var M = A.pop();
11909
- if (!M.visited) {
11910
- for (var L = [], N = M; N != null && !(N.visited || (N.visited = !0, N.opp.visited = !0, L.push(N), I += 2, N = N.opp.adj, N == M)); )
11908
+ var T = A.pop();
11909
+ if (!T.visited) {
11910
+ for (var L = [], N = T; N != null && !(N.visited || (N.visited = !0, N.opp.visited = !0, L.push(N), I += 2, N = N.opp.adj, N == T)); )
11911
11911
  ;
11912
11912
  L.length > 0 && (L.push(L[L.length - 1].opp), P.push(L));
11913
11913
  }
@@ -11935,7 +11935,7 @@ var Tl = { exports: {} };
11935
11935
  i == null && (i = 1e-3), l != null ? l = l : l = new er(r), u != null ? u = u : u = new Pr(n);
11936
11936
  var d = at.boundingBoxTrees(l, u, i);
11937
11937
  return K.unique(d.map(function(p) {
11938
- var _ = p.item0, v = p.item1, w = K.first(_.knots), A = K.last(_.knots), P = (w + A) / 2, I = K.first(v.knotsU), E = K.last(v.knotsU), M = K.first(v.knotsV), L = K.last(v.knotsV), N = [(I + E) / 2, (M + L) / 2];
11938
+ var _ = p.item0, v = p.item1, w = K.first(_.knots), A = K.last(_.knots), P = (w + A) / 2, I = K.first(v.knotsU), E = K.last(v.knotsU), T = K.first(v.knotsV), L = K.last(v.knotsV), N = [(I + E) / 2, (T + L) / 2];
11939
11939
  return at.curveAndSurfaceWithEstimate(_, v, [P].concat(N), i);
11940
11940
  }).filter(function(p) {
11941
11941
  return m.distSquared(p.curvePoint, p.surfacePoint) < i * i;
@@ -11948,8 +11948,8 @@ var Tl = { exports: {} };
11948
11948
  var w = C.rationalCurvePoint(r, v[0]), A = C.rationalSurfacePoint(n, v[1], v[2]), P = m.sub(w, A);
11949
11949
  return m.dot(P, P);
11950
11950
  }, d = function(v) {
11951
- var w = C.rationalCurveDerivatives(r, v[0], 1), A = C.rationalSurfaceDerivatives(n, v[1], v[2], 1), P = m.sub(A[0][0], w[0]), I = m.mul(-1, w[1]), E = A[1][0], M = A[0][1];
11952
- return [2 * m.dot(I, P), 2 * m.dot(E, P), 2 * m.dot(M, P)];
11951
+ var w = C.rationalCurveDerivatives(r, v[0], 1), A = C.rationalSurfaceDerivatives(n, v[1], v[2], 1), P = m.sub(A[0][0], w[0]), I = m.mul(-1, w[1]), E = A[1][0], T = A[0][1];
11952
+ return [2 * m.dot(I, P), 2 * m.dot(E, P), 2 * m.dot(T, P)];
11953
11953
  }, p = Ge.uncmin(u, i, l * l, d), _ = p.solution;
11954
11954
  return new Mn(_[0], [_[1], _[2]], C.rationalCurvePoint(r, _[0]), C.rationalSurfacePoint(n, _[1], _[2]));
11955
11955
  }, at.polylineAndMesh = function(r, n, i) {
@@ -11999,10 +11999,10 @@ var Tl = { exports: {} };
11999
11999
  });
12000
12000
  }, at.curvesWithEstimate = function(r, n, i, l, u) {
12001
12001
  var d = function(I) {
12002
- var E = C.rationalCurvePoint(r, I[0]), M = C.rationalCurvePoint(n, I[1]), L = m.sub(E, M);
12002
+ var E = C.rationalCurvePoint(r, I[0]), T = C.rationalCurvePoint(n, I[1]), L = m.sub(E, T);
12003
12003
  return m.dot(L, L);
12004
12004
  }, p = function(I) {
12005
- var E = C.rationalCurveDerivatives(r, I[0], 1), M = C.rationalCurveDerivatives(n, I[1], 1), L = m.sub(E[0], M[0]), N = E[1], B = m.mul(-1, M[1]);
12005
+ var E = C.rationalCurveDerivatives(r, I[0], 1), T = C.rationalCurveDerivatives(n, I[1], 1), L = m.sub(E[0], T[0]), N = E[1], B = m.mul(-1, T[1]);
12006
12006
  return [2 * m.dot(N, L), 2 * m.dot(B, L)];
12007
12007
  }, _ = Ge.uncmin(d, [i, l], u * u, p), v = _.solution[0], w = _.solution[1], A = C.rationalCurvePoint(r, v), P = C.rationalCurvePoint(n, w);
12008
12008
  return new Rr(A, P, v, w);
@@ -12017,10 +12017,10 @@ var Tl = { exports: {} };
12017
12017
  return E == null ? null : new we(new wr(E.min.uv0, E.min.uv1, E.min.point, n, l), new wr(E.max.uv0, E.max.uv1, E.max.point, n, l));
12018
12018
  }, at.clipRayInCoplanarTriangle = function(r, n, i) {
12019
12019
  for (var l = n.faces[i], u = [n.points[l[0]], n.points[l[1]], n.points[l[2]]], d = [n.uvs[l[0]], n.uvs[l[1]], n.uvs[l[2]]], p = [m.sub(d[1], d[0]), m.sub(d[2], d[1]), m.sub(d[0], d[2])], _ = [m.sub(u[1], u[0]), m.sub(u[2], u[1]), m.sub(u[0], u[2])], v = _.map(m.normalized), w = _.map(m.norm), A = null, P = null, I = 0; I < 3; ) {
12020
- var E = I++, M = u[E], L = v[E], N = at.rays(M, L, r.origin, r.dir);
12020
+ var E = I++, T = u[E], L = v[E], N = at.rays(T, L, r.origin, r.dir);
12021
12021
  if (N != null) {
12022
- var B = N.u0, z = N.u1;
12023
- B < -rt.EPSILON || B > w[E] + rt.EPSILON || ((A == null || z < A.u) && (A = new nn(z, m.onRay(r.origin, r.dir, z), m.onRay(d[E], p[E], B / w[E]))), (P == null || z > P.u) && (P = new nn(z, m.onRay(r.origin, r.dir, z), m.onRay(d[E], p[E], B / w[E]))));
12022
+ var B = N.u0, O = N.u1;
12023
+ B < -rt.EPSILON || B > w[E] + rt.EPSILON || ((A == null || O < A.u) && (A = new nn(O, m.onRay(r.origin, r.dir, O), m.onRay(d[E], p[E], B / w[E]))), (P == null || O > P.u) && (P = new nn(O, m.onRay(r.origin, r.dir, O), m.onRay(d[E], p[E], B / w[E]))));
12024
12024
  }
12025
12025
  }
12026
12026
  return P == null || A == null ? null : new we(A, P);
@@ -12039,8 +12039,8 @@ var Tl = { exports: {} };
12039
12039
  _ > p && (d = 1, p = _), v > p && (d = 2, p = v);
12040
12040
  var w, A, P, I;
12041
12041
  d == 0 ? (w = n[1], A = n[2], P = l[1], I = l[2]) : d == 1 ? (w = n[0], A = n[2], P = l[0], I = l[2]) : (w = n[0], A = n[1], P = l[0], I = l[1]);
12042
- var E = -m.dot(r, n), M = -m.dot(i, l), L = w * I - A * P, N = (A * M - E * I) / L, B = (E * P - w * M) / L, z;
12043
- return d == 0 ? z = [0, N, B] : d == 1 ? z = [N, 0, B] : z = [N, B, 0], new rn(z, m.normalized(u));
12042
+ var E = -m.dot(r, n), T = -m.dot(i, l), L = w * I - A * P, N = (A * T - E * I) / L, B = (E * P - w * T) / L, O;
12043
+ return d == 0 ? O = [0, N, B] : d == 1 ? O = [N, 0, B] : O = [N, B, 0], new rn(O, m.normalized(u));
12044
12044
  }, at.threePlanes = function(r, n, i, l, u, d) {
12045
12045
  var p = m.cross(i, u), _ = m.dot(r, p);
12046
12046
  if (Math.abs(_) < rt.EPSILON) return null;
@@ -12057,24 +12057,24 @@ var Tl = { exports: {} };
12057
12057
  }, at.segments = function(r, n, i, l, u) {
12058
12058
  var d = m.sub(n, r), p = Math.sqrt(m.dot(d, d)), _ = m.mul(1 / p, d), v = m.sub(l, i), w = Math.sqrt(m.dot(v, v)), A = m.mul(1 / w, v), P = at.rays(r, _, i, A);
12059
12059
  if (P != null) {
12060
- var I = Math.min(Math.max(0, P.u0 / p), 1), E = Math.min(Math.max(0, P.u1 / w), 1), M = m.onRay(r, d, I), L = m.onRay(i, v, E), N = m.distSquared(M, L);
12061
- if (N < u * u) return new Rr(M, L, I, E);
12060
+ var I = Math.min(Math.max(0, P.u0 / p), 1), E = Math.min(Math.max(0, P.u1 / w), 1), T = m.onRay(r, d, I), L = m.onRay(i, v, E), N = m.distSquared(T, L);
12061
+ if (N < u * u) return new Rr(T, L, I, E);
12062
12062
  }
12063
12063
  return null;
12064
12064
  }, at.rays = function(r, n, i, l) {
12065
12065
  var u = m.dot(n, l), d = m.dot(n, i), p = m.dot(n, r), _ = m.dot(l, i), v = m.dot(l, r), w = m.dot(n, n), A = m.dot(l, l), P = w * A - u * u;
12066
12066
  if (Math.abs(P) < rt.EPSILON) return null;
12067
- var I = u * (d - p) - w * (_ - v), E = I / P, M = (d - p + E * u) / w, L = m.onRay(r, n, M), N = m.onRay(i, l, E);
12068
- return new Rr(L, N, M, E);
12067
+ var I = u * (d - p) - w * (_ - v), E = I / P, T = (d - p + E * u) / w, L = m.onRay(r, n, T), N = m.onRay(i, l, E);
12068
+ return new Rr(L, N, T, E);
12069
12069
  }, at.segmentWithTriangle = function(r, n, i, l) {
12070
12070
  var u = i[l[0]], d = i[l[1]], p = i[l[2]], _ = m.sub(d, u), v = m.sub(p, u), w = m.cross(_, v), A = m.sub(n, r), P = m.sub(r, u), I = -m.dot(w, P), E = m.dot(w, A);
12071
12071
  if (Math.abs(E) < rt.EPSILON) return null;
12072
- var M = I / E;
12073
- if (M < 0 || M > 1) return null;
12074
- var L = m.add(r, m.mul(M, A)), N = m.dot(_, v), B = m.dot(_, _), z = m.dot(v, v), F = m.sub(L, u), V = m.dot(F, _), H = m.dot(F, v), J = N * N - B * z;
12072
+ var T = I / E;
12073
+ if (T < 0 || T > 1) return null;
12074
+ var L = m.add(r, m.mul(T, A)), N = m.dot(_, v), B = m.dot(_, _), O = m.dot(v, v), F = m.sub(L, u), V = m.dot(F, _), H = m.dot(F, v), J = N * N - B * O;
12075
12075
  if (Math.abs(J) < rt.EPSILON) return null;
12076
- var G = (N * H - z * V) / J, j = (N * V - B * H) / J;
12077
- return G > 1 + rt.EPSILON || j > 1 + rt.EPSILON || j < -rt.EPSILON || G < -rt.EPSILON || G + j > 1 + rt.EPSILON ? null : new Nn(L, G, j, M);
12076
+ var G = (N * H - O * V) / J, j = (N * V - B * H) / J;
12077
+ return G > 1 + rt.EPSILON || j > 1 + rt.EPSILON || j < -rt.EPSILON || G < -rt.EPSILON || G + j > 1 + rt.EPSILON ? null : new Nn(L, G, j, T);
12078
12078
  }, at.segmentAndPlane = function(r, n, i, l) {
12079
12079
  var u = m.dot(l, m.sub(n, r));
12080
12080
  if (Math.abs(u) < rt.EPSILON) return null;
@@ -12111,11 +12111,11 @@ var Tl = { exports: {} };
12111
12111
  A > 0 ? P = _t.surfaceKnotRefine(r, m.rep(A, n), i) : P = r;
12112
12112
  var I = C.knotSpan(u, n, l);
12113
12113
  return Math.abs(n - K.first(l)) < rt.EPSILON ? I = 0 : Math.abs(n - K.last(l)) < rt.EPSILON && (I = (i ? P.controlPoints[0].length : P.controlPoints.length) - 1), i ? new Ft(P.degreeU, P.knotsU, function(E) {
12114
- for (var M, L = [], N = 0, B = P.controlPoints; N < B.length; ) {
12115
- var z = B[N];
12116
- ++N, L.push(z[I]);
12114
+ for (var T, L = [], N = 0, B = P.controlPoints; N < B.length; ) {
12115
+ var O = B[N];
12116
+ ++N, L.push(O[I]);
12117
12117
  }
12118
- return M = L, M;
12118
+ return T = L, T;
12119
12119
  }()) : new Ft(P.degreeV, P.knotsV, P.controlPoints[I]);
12120
12120
  }, dt.loftedSurface = function(r, n) {
12121
12121
  r = _t.unifyCurveKnotVectors(r);
@@ -12144,22 +12144,22 @@ var Tl = { exports: {} };
12144
12144
  u == null && (u = 3);
12145
12145
  for (var d = u, p = [], _ = 0, v = u + 1; _ < v; ) {
12146
12146
  for (var w = _++, A = [], P = 0, I = u + 1; P < I; ) {
12147
- var E = P++, M = 1 - w / d, L = m.lerp(M, r, n), N = m.lerp(M, l, i), B = m.lerp(1 - E / d, L, N);
12147
+ var E = P++, T = 1 - w / d, L = m.lerp(T, r, n), N = m.lerp(T, l, i), B = m.lerp(1 - E / d, L, N);
12148
12148
  B.push(1), A.push(B);
12149
12149
  }
12150
12150
  p.push(A);
12151
12151
  }
12152
- var z = m.rep(u + 1, 0), F = m.rep(u + 1, 1);
12153
- return new Jt(u, u, z.concat(F), z.concat(F), p);
12152
+ var O = m.rep(u + 1, 0), F = m.rep(u + 1, 1);
12153
+ return new Jt(u, u, O.concat(F), O.concat(F), p);
12154
12154
  }, dt.ellipseArc = function(r, n, i, l, u) {
12155
12155
  var d = m.norm(n), p = m.norm(i);
12156
12156
  n = m.normalized(n), i = m.normalized(i), u < l && (u = 2 * Math.PI + l);
12157
12157
  var _ = u - l, v = 0;
12158
12158
  _ <= Math.PI / 2 ? v = 1 : _ <= Math.PI ? v = 2 : _ <= 3 * Math.PI / 2 ? v = 3 : v = 4;
12159
- var w = _ / v, A = Math.cos(w / 2), P = m.add(r, m.add(m.mul(d * Math.cos(l), n), m.mul(p * Math.sin(l), i))), I = m.sub(m.mul(Math.cos(l), i), m.mul(Math.sin(l), n)), E = [], M = m.zeros1d(2 * v + 3), L = 0, N = l, B = m.zeros1d(v * 2);
12159
+ var w = _ / v, A = Math.cos(w / 2), P = m.add(r, m.add(m.mul(d * Math.cos(l), n), m.mul(p * Math.sin(l), i))), I = m.sub(m.mul(Math.cos(l), i), m.mul(Math.sin(l), n)), E = [], T = m.zeros1d(2 * v + 3), L = 0, N = l, B = m.zeros1d(v * 2);
12160
12160
  E[0] = P, B[0] = 1;
12161
- for (var z = 1, F = v + 1; z < F; ) {
12162
- var V = z++;
12161
+ for (var O = 1, F = v + 1; O < F; ) {
12162
+ var V = O++;
12163
12163
  N += w;
12164
12164
  var H = m.add(r, m.add(m.mul(d * Math.cos(N), n), m.mul(p * Math.sin(N), i)));
12165
12165
  B[L + 2] = 1, E[L + 2] = H;
@@ -12168,20 +12168,20 @@ var Tl = { exports: {} };
12168
12168
  }
12169
12169
  for (var Y = 2 * v + 1, tt = 0; tt < 3; ) {
12170
12170
  var et = tt++;
12171
- M[et] = 0, M[et + Y] = 1;
12171
+ T[et] = 0, T[et + Y] = 1;
12172
12172
  }
12173
12173
  switch (v) {
12174
12174
  case 2:
12175
- M[3] = M[4] = 0.5;
12175
+ T[3] = T[4] = 0.5;
12176
12176
  break;
12177
12177
  case 3:
12178
- M[3] = M[4] = 0.3333333333333333, M[5] = M[6] = 0.6666666666666666;
12178
+ T[3] = T[4] = 0.3333333333333333, T[5] = T[6] = 0.6666666666666666;
12179
12179
  break;
12180
12180
  case 4:
12181
- M[3] = M[4] = 0.25, M[5] = M[6] = 0.5, M[7] = M[8] = 0.75;
12181
+ T[3] = T[4] = 0.25, T[5] = T[6] = 0.5, T[7] = T[8] = 0.75;
12182
12182
  break;
12183
12183
  }
12184
- return new Ft(2, M, C.homogenize1d(E, B));
12184
+ return new Ft(2, T, C.homogenize1d(E, B));
12185
12185
  }, dt.arc = function(r, n, i, l, u, d) {
12186
12186
  return dt.ellipseArc(r, m.mul(l, m.normalized(n)), m.mul(l, m.normalized(i)), u, d);
12187
12187
  }, dt.polyline = function(r) {
@@ -12209,9 +12209,9 @@ var Tl = { exports: {} };
12209
12209
  var P = A++;
12210
12210
  _[P] = 0, _[w + P] = 1;
12211
12211
  }
12212
- for (var I = Math.cos(v / 2), E = 0, M = m.zeros1d(p + 1), L = m.zeros1d(p + 1), N = m.zeros3d(2 * p + 1, u.length, 3), B = m.zeros2d(2 * p + 1, u.length), z = 1, F = p + 1; z < F; ) {
12213
- var V = z++;
12214
- E += v, L[V] = Math.cos(E), M[V] = Math.sin(E);
12212
+ for (var I = Math.cos(v / 2), E = 0, T = m.zeros1d(p + 1), L = m.zeros1d(p + 1), N = m.zeros3d(2 * p + 1, u.length, 3), B = m.zeros2d(2 * p + 1, u.length), O = 1, F = p + 1; O < F; ) {
12213
+ var V = O++;
12214
+ E += v, L[V] = Math.cos(E), T[V] = Math.sin(E);
12215
12215
  }
12216
12216
  for (var H = 0, J = u.length; H < J; ) {
12217
12217
  var G = H++, j = Ee.rayClosestPoint(u[G], n, i), Y = m.sub(u[G], j), tt = m.norm(Y), et = m.cross(i, Y);
@@ -12220,8 +12220,8 @@ var Tl = { exports: {} };
12220
12220
  B[0][G] = d[G];
12221
12221
  for (var ot = et, it = 0, ht = 1, nt = p + 1; ht < nt; ) {
12222
12222
  var ct = ht++, q;
12223
- tt == 0 ? q = j : q = m.add(j, m.add(m.mul(tt * L[ct], Y), m.mul(tt * M[ct], et))), N[it + 2][G] = q, B[it + 2][G] = d[G];
12224
- var pt = m.sub(m.mul(L[ct], et), m.mul(M[ct], Y));
12223
+ tt == 0 ? q = j : q = m.add(j, m.add(m.mul(tt * L[ct], Y), m.mul(tt * T[ct], et))), N[it + 2][G] = q, B[it + 2][G] = d[G];
12224
+ var pt = m.sub(m.mul(L[ct], et), m.mul(T[ct], Y));
12225
12225
  if (tt == 0) N[it + 1][G] = j;
12226
12226
  else {
12227
12227
  var Pt = at.rays(st, m.mul(1 / m.norm(ot), ot), q, m.mul(1 / m.norm(pt), pt)), Vt = m.add(st, m.mul(Pt.u0, ot));
@@ -12244,14 +12244,14 @@ var Tl = { exports: {} };
12244
12244
  d.push(A + w);
12245
12245
  }
12246
12246
  for (var P = d[d.length - 1], I = 0, E = d.length; I < E; ) {
12247
- var M = I++;
12248
- d[M] = d[M] / P;
12247
+ var T = I++;
12248
+ d[T] = d[T] / P;
12249
12249
  }
12250
12250
  var L = m.rep(n + 1, 0), N = l != null && u != null, B;
12251
12251
  N ? B = 0 : B = 1;
12252
- var z;
12253
- N ? z = d.length - n + 1 : z = d.length - n;
12254
- for (var F = B; F < z; ) {
12252
+ var O;
12253
+ N ? O = d.length - n + 1 : O = d.length - n;
12254
+ for (var F = B; F < O; ) {
12255
12255
  for (var V = F++, H = 0, J = 0; J < n; ) {
12256
12256
  var G = J++;
12257
12257
  H += d[V + G];
@@ -12340,15 +12340,15 @@ var Tl = { exports: {} };
12340
12340
  }
12341
12341
  for (var E = d.map(function(j) {
12342
12342
  return j.max - j.min;
12343
- }), M = R.fold(E, function(j, Y) {
12343
+ }), T = R.fold(E, function(j, Y) {
12344
12344
  return Math.max(j, Y);
12345
12345
  }, 0), L = 0, N = r.length; L < N; ) {
12346
- var B = L++, z = [M / E[B]];
12346
+ var B = L++, O = [T / E[B]];
12347
12347
  r[B].knots = r[B].knots.map(/* @__PURE__ */ function(j) {
12348
12348
  return function(Y) {
12349
12349
  return Y * j[0];
12350
12350
  };
12351
- }(z));
12351
+ }(O));
12352
12352
  }
12353
12353
  for (var F = R.fold(r, function(j, Y) {
12354
12354
  return m.sortedSetUnion(j.knots, Y);
@@ -12363,14 +12363,14 @@ var Tl = { exports: {} };
12363
12363
  return r > n ? r : n;
12364
12364
  }, _t.curveElevateDegree = function(r, n) {
12365
12365
  if (n <= r.degree) return r;
12366
- var i = r.knots.length - r.degree - 2, l = r.degree, u = r.knots, d = r.controlPoints, p = n - r.degree, _ = r.controlPoints[0].length, v = m.zeros2d(l + p + 1, l + 1), w = [], A = [], P = [], I = i + l + 1, E = n, M = Math.floor(E / 2), L = [], N = [];
12366
+ var i = r.knots.length - r.degree - 2, l = r.degree, u = r.knots, d = r.controlPoints, p = n - r.degree, _ = r.controlPoints[0].length, v = m.zeros2d(l + p + 1, l + 1), w = [], A = [], P = [], I = i + l + 1, E = n, T = Math.floor(E / 2), L = [], N = [];
12367
12367
  v[0][0] = 1, v[E][l] = 1;
12368
- for (var B = 1, z = M + 1; B < z; )
12368
+ for (var B = 1, O = T + 1; B < O; )
12369
12369
  for (var F = B++, V = 1 / zt.get(E, F), H = _t.imin(l, F), J = _t.imax(0, F - p), G = H + 1; J < G; ) {
12370
12370
  var j = J++;
12371
12371
  v[F][j] = V * zt.get(l, j) * zt.get(p, F - j);
12372
12372
  }
12373
- for (var Y = M + 1; Y < E; )
12373
+ for (var Y = T + 1; Y < E; )
12374
12374
  for (var tt = Y++, et = _t.imin(l, tt), st = _t.imax(0, tt - p), ot = et + 1; st < ot; ) {
12375
12375
  var it = st++;
12376
12376
  v[tt][it] = v[E - tt][l - it];
@@ -12482,22 +12482,22 @@ var Tl = { exports: {} };
12482
12482
  }
12483
12483
  l.length / d - 1;
12484
12484
  for (var A = d * 2, P = [], I = 0; I < i.length; ) {
12485
- var E = l.slice(I, I + A), M = i.slice(I, I + d);
12486
- P.push(new Ft(n, E, M)), I += d;
12485
+ var E = l.slice(I, I + A), T = i.slice(I, I + d);
12486
+ P.push(new Ft(n, E, T)), I += d;
12487
12487
  }
12488
12488
  return P;
12489
12489
  }, _t.curveKnotRefine = function(r, n) {
12490
12490
  if (n.length == 0) return dt.clonedCurve(r);
12491
12491
  for (var i = r.degree, l = r.controlPoints, u = r.knots, d = l.length - 1, p = d + i + 1, _ = n.length - 1, v = C.knotSpan(i, n[0], u), w = C.knotSpan(i, n[_], u), A = [], P = [], I = 0, E = v - i + 1; I < E; ) {
12492
- var M = I++;
12493
- A[M] = l[M];
12492
+ var T = I++;
12493
+ A[T] = l[T];
12494
12494
  }
12495
12495
  for (var L = w - 1, N = d + 1; L < N; ) {
12496
12496
  var B = L++;
12497
12497
  A[B + _ + 1] = l[B];
12498
12498
  }
12499
- for (var z = 0, F = v + 1; z < F; ) {
12500
- var V = z++;
12499
+ for (var O = 0, F = v + 1; O < F; ) {
12500
+ var V = O++;
12501
12501
  P[V] = u[V];
12502
12502
  }
12503
12503
  for (var H = w + i, J = p + 1; H < J; ) {
@@ -12517,15 +12517,15 @@ var Tl = { exports: {} };
12517
12517
  return new Ft(i, P, A);
12518
12518
  }, _t.curveKnotInsert = function(r, n, i) {
12519
12519
  for (var l = r.degree, u = r.controlPoints, d = r.knots, p = 0, _ = u.length, v = C.knotSpan(l, n, d), w = [], A = [], P = [], I = 1, E = v + 1; I < E; ) {
12520
- var M = I++;
12521
- A[M] = d[M];
12520
+ var T = I++;
12521
+ A[T] = d[T];
12522
12522
  }
12523
12523
  for (var L = 1, N = i + 1; L < N; ) {
12524
12524
  var B = L++;
12525
12525
  A[v + B] = n;
12526
12526
  }
12527
- for (var z = v + 1, F = d.length; z < F; ) {
12528
- var V = z++;
12527
+ for (var O = v + 1, F = d.length; O < F; ) {
12528
+ var V = O++;
12529
12529
  A[V + i] = d[V];
12530
12530
  }
12531
12531
  for (var H = 0, J = v - l + 1; H < J; ) {
@@ -12580,16 +12580,16 @@ var Tl = { exports: {} };
12580
12580
  }, Lt.rationalCurveAdaptiveSampleRange = function(r, n, i, l, u) {
12581
12581
  var d = C.rationalCurvePoint(r, n), p = C.rationalCurvePoint(r, i), _ = 0.5 + 0.2 * Math.random(), v = n + (i - n) * _, w = C.rationalCurvePoint(r, v), A = m.sub(d, p), P = m.sub(d, w);
12582
12582
  if (m.dot(A, A) < l && m.dot(P, P) > l || !Ee.threePointsAreFlat(d, w, p, l)) {
12583
- var I = n + (i - n) * 0.5, E = Lt.rationalCurveAdaptiveSampleRange(r, n, I, l, u), M = Lt.rationalCurveAdaptiveSampleRange(r, I, i, l, u);
12584
- return E.slice(0, -1).concat(M);
12583
+ var I = n + (i - n) * 0.5, E = Lt.rationalCurveAdaptiveSampleRange(r, n, I, l, u), T = Lt.rationalCurveAdaptiveSampleRange(r, I, i, l, u);
12584
+ return E.slice(0, -1).concat(T);
12585
12585
  } else return u ? [[n].concat(d), [i].concat(p)] : [d, p];
12586
12586
  }, Lt.rationalSurfaceNaive = function(r, n, i) {
12587
12587
  n < 1 && (n = 1), i < 1 && (i = 1), r.degreeU, r.degreeV, r.controlPoints;
12588
12588
  for (var l = r.knotsU, u = r.knotsV, d = K.last(l) - l[0], p = K.last(u) - u[0], _ = d / n, v = p / i, w = [], A = [], P = [], I = 0, E = n + 1; I < E; )
12589
- for (var M = I++, L = 0, N = i + 1; L < N; ) {
12590
- var B = L++, z = M * _, F = B * v;
12591
- A.push([z, F]);
12592
- var V = C.rationalSurfaceDerivatives(r, z, F, 1), H = V[0][0];
12589
+ for (var T = I++, L = 0, N = i + 1; L < N; ) {
12590
+ var B = L++, O = T * _, F = B * v;
12591
+ A.push([O, F]);
12592
+ var V = C.rationalSurfaceDerivatives(r, O, F, 1), H = V[0][0];
12593
12593
  w.push(H);
12594
12594
  var J = m.normalized(m.cross(V[1][0], V[0][1]));
12595
12595
  P.push(J);
@@ -12606,9 +12606,9 @@ var Tl = { exports: {} };
12606
12606
  n.minDivsU > i ? u = n.minDivsU = n.minDivsU : u = n.minDivsU = i;
12607
12607
  var d;
12608
12608
  n.minDivsV > l ? d = n.minDivsV = n.minDivsV : d = n.minDivsV = l;
12609
- for (var p = K.last(r.knotsU), _ = r.knotsU[0], v = K.last(r.knotsV), w = r.knotsV[0], A = (p - _) / u, P = (v - w) / d, I = [], E = [], M = 0, L = d + 1; M < L; ) {
12610
- for (var N = M++, B = [], z = 0, F = u + 1; z < F; ) {
12611
- var V = z++, H = _ + A * V, J = w + P * N, G = C.rationalSurfaceDerivatives(r, H, J, 1), j = m.normalized(m.cross(G[0][1], G[1][0]));
12609
+ for (var p = K.last(r.knotsU), _ = r.knotsU[0], v = K.last(r.knotsV), w = r.knotsV[0], A = (p - _) / u, P = (v - w) / d, I = [], E = [], T = 0, L = d + 1; T < L; ) {
12610
+ for (var N = T++, B = [], O = 0, F = u + 1; O < F; ) {
12611
+ var V = O++, H = _ + A * V, J = w + P * N, G = C.rationalSurfaceDerivatives(r, H, J, 1), j = m.normalized(m.cross(G[0][1], G[1][0]));
12612
12612
  B.push(new Re(G[0][0], j, [H, J], -1, m.isZero(j)));
12613
12613
  }
12614
12614
  E.push(B);
@@ -12800,8 +12800,8 @@ var Tl = { exports: {} };
12800
12800
  var E = l.length;
12801
12801
  return r.faces.push([l[u], l[(u + 2) % E], l[(u + 1) % E]]), r.faces.push([l[(u + 4) % E], l[(u + 3) % E], l[u]]), r.faces.push([l[u], l[(u + 3) % E], l[(u + 2) % E]]), r;
12802
12802
  }
12803
- var M = this.center();
12804
- r.uvs.push(M.uv), r.points.push(M.point), r.normals.push(M.normal);
12803
+ var T = this.center();
12804
+ r.uvs.push(T.uv), r.points.push(T.point), r.normals.push(T.normal);
12805
12805
  for (var L = r.points.length - 1, N = 0, B = i.length - 1; N < i.length; )
12806
12806
  r.faces.push([L, l[N], l[B]]), B = N++;
12807
12807
  return r;
@@ -12873,7 +12873,7 @@ var Tl = { exports: {} };
12873
12873
  return new kt(new Ft(r, n.slice(), C.homogenize1d(i, l)));
12874
12874
  }, kt.byPoints = function(r, n) {
12875
12875
  return n == null && (n = 3), new kt(dt.rationalInterpCurve(r, n));
12876
- }, kt.__super__ = Xt, kt.prototype = T(Xt.prototype, {
12876
+ }, kt.__super__ = Xt, kt.prototype = M(Xt.prototype, {
12877
12877
  degree: function() {
12878
12878
  return this._data.degree;
12879
12879
  },
@@ -12994,7 +12994,7 @@ var Tl = { exports: {} };
12994
12994
  var kr = f.geom.Arc = function(r, n, i, l, u, d) {
12995
12995
  kt.call(this, dt.arc(r, n, i, l, u, d)), this._center = r, this._xaxis = n, this._yaxis = i, this._radius = l, this._minAngle = u, this._maxAngle = d;
12996
12996
  };
12997
- b["verb.geom.Arc"] = kr, kr.__name__ = ["verb", "geom", "Arc"], kr.__super__ = kt, kr.prototype = T(kt.prototype, {
12997
+ b["verb.geom.Arc"] = kr, kr.__name__ = ["verb", "geom", "Arc"], kr.__super__ = kt, kr.prototype = M(kt.prototype, {
12998
12998
  center: function() {
12999
12999
  return this._center;
13000
13000
  },
@@ -13018,13 +13018,13 @@ var Tl = { exports: {} };
13018
13018
  var Bn = f.geom.BezierCurve = function(r, n) {
13019
13019
  kt.call(this, dt.rationalBezierCurve(r, n));
13020
13020
  };
13021
- b["verb.geom.BezierCurve"] = Bn, Bn.__name__ = ["verb", "geom", "BezierCurve"], Bn.__super__ = kt, Bn.prototype = T(kt.prototype, {
13021
+ b["verb.geom.BezierCurve"] = Bn, Bn.__name__ = ["verb", "geom", "BezierCurve"], Bn.__super__ = kt, Bn.prototype = M(kt.prototype, {
13022
13022
  __class__: Bn
13023
13023
  });
13024
13024
  var Dn = f.geom.Circle = function(r, n, i, l) {
13025
13025
  kr.call(this, r, n, i, l, 0, Math.PI * 2);
13026
13026
  };
13027
- b["verb.geom.Circle"] = Dn, Dn.__name__ = ["verb", "geom", "Circle"], Dn.__super__ = kr, Dn.prototype = T(kr.prototype, {
13027
+ b["verb.geom.Circle"] = Dn, Dn.__name__ = ["verb", "geom", "Circle"], Dn.__super__ = kr, Dn.prototype = M(kr.prototype, {
13028
13028
  __class__: Dn
13029
13029
  });
13030
13030
  var cn = function() {
@@ -13047,7 +13047,7 @@ var Tl = { exports: {} };
13047
13047
  }
13048
13048
  return l = u, l;
13049
13049
  }(), n));
13050
- }, At.__super__ = Xt, At.prototype = T(Xt.prototype, {
13050
+ }, At.__super__ = Xt, At.prototype = M(Xt.prototype, {
13051
13051
  degreeU: function() {
13052
13052
  return this._data.degreeU;
13053
13053
  },
@@ -13167,7 +13167,7 @@ var Tl = { exports: {} };
13167
13167
  var Fn = f.geom.ConicalSurface = function(r, n, i, l, u) {
13168
13168
  At.call(this, dt.conicalSurface(r, n, i, l, u)), this._axis = r, this._xaxis = n, this._base = i, this._height = l, this._radius = u;
13169
13169
  };
13170
- b["verb.geom.ConicalSurface"] = Fn, Fn.__name__ = ["verb", "geom", "ConicalSurface"], Fn.__super__ = At, Fn.prototype = T(At.prototype, {
13170
+ b["verb.geom.ConicalSurface"] = Fn, Fn.__name__ = ["verb", "geom", "ConicalSurface"], Fn.__super__ = At, Fn.prototype = M(At.prototype, {
13171
13171
  axis: function() {
13172
13172
  return this._axis;
13173
13173
  },
@@ -13188,7 +13188,7 @@ var Tl = { exports: {} };
13188
13188
  var Vn = f.geom.CylindricalSurface = function(r, n, i, l, u) {
13189
13189
  At.call(this, dt.cylindricalSurface(r, n, i, l, u)), this._axis = r, this._xaxis = n, this._base = i, this._height = l, this._radius = u;
13190
13190
  };
13191
- b["verb.geom.CylindricalSurface"] = Vn, Vn.__name__ = ["verb", "geom", "CylindricalSurface"], Vn.__super__ = At, Vn.prototype = T(At.prototype, {
13191
+ b["verb.geom.CylindricalSurface"] = Vn, Vn.__name__ = ["verb", "geom", "CylindricalSurface"], Vn.__super__ = At, Vn.prototype = M(At.prototype, {
13192
13192
  axis: function() {
13193
13193
  return this._axis;
13194
13194
  },
@@ -13209,7 +13209,7 @@ var Tl = { exports: {} };
13209
13209
  var Er = f.geom.EllipseArc = function(r, n, i, l, u) {
13210
13210
  kt.call(this, dt.ellipseArc(r, n, i, l, u)), this._center = r, this._xaxis = n, this._yaxis = i, this._minAngle = l, this._maxAngle = u;
13211
13211
  };
13212
- b["verb.geom.EllipseArc"] = Er, Er.__name__ = ["verb", "geom", "EllipseArc"], Er.__super__ = kt, Er.prototype = T(kt.prototype, {
13212
+ b["verb.geom.EllipseArc"] = Er, Er.__name__ = ["verb", "geom", "EllipseArc"], Er.__super__ = kt, Er.prototype = M(kt.prototype, {
13213
13213
  center: function() {
13214
13214
  return this._center;
13215
13215
  },
@@ -13230,13 +13230,13 @@ var Tl = { exports: {} };
13230
13230
  var Un = f.geom.Ellipse = function(r, n, i) {
13231
13231
  Er.call(this, r, n, i, 0, Math.PI * 2);
13232
13232
  };
13233
- b["verb.geom.Ellipse"] = Un, Un.__name__ = ["verb", "geom", "Ellipse"], Un.__super__ = Er, Un.prototype = T(Er.prototype, {
13233
+ b["verb.geom.Ellipse"] = Un, Un.__name__ = ["verb", "geom", "Ellipse"], Un.__super__ = Er, Un.prototype = M(Er.prototype, {
13234
13234
  __class__: Un
13235
13235
  });
13236
13236
  var jn = f.geom.ExtrudedSurface = function(r, n) {
13237
13237
  At.call(this, dt.extrudedSurface(m.normalized(n), m.norm(n), r.asNurbs())), this._profile = r, this._direction = n;
13238
13238
  };
13239
- b["verb.geom.ExtrudedSurface"] = jn, jn.__name__ = ["verb", "geom", "ExtrudedSurface"], jn.__super__ = At, jn.prototype = T(At.prototype, {
13239
+ b["verb.geom.ExtrudedSurface"] = jn, jn.__name__ = ["verb", "geom", "ExtrudedSurface"], jn.__super__ = At, jn.prototype = M(At.prototype, {
13240
13240
  profile: function() {
13241
13241
  return this._profile;
13242
13242
  },
@@ -13269,7 +13269,7 @@ var Tl = { exports: {} };
13269
13269
  var Gn = f.geom.Line = function(r, n) {
13270
13270
  kt.call(this, dt.polyline([r, n])), this._start = r, this._end = n;
13271
13271
  };
13272
- b["verb.geom.Line"] = Gn, Gn.__name__ = ["verb", "geom", "Line"], Gn.__super__ = kt, Gn.prototype = T(kt.prototype, {
13272
+ b["verb.geom.Line"] = Gn, Gn.__name__ = ["verb", "geom", "Line"], Gn.__super__ = kt, Gn.prototype = M(kt.prototype, {
13273
13273
  start: function() {
13274
13274
  return this._start;
13275
13275
  },
@@ -13281,7 +13281,7 @@ var Tl = { exports: {} };
13281
13281
  var Wn = f.geom.RevolvedSurface = function(r, n, i, l) {
13282
13282
  At.call(this, dt.revolvedSurface(r.asNurbs(), n, i, l)), this._profile = r, this._center = n, this._axis = i, this._angle = l;
13283
13283
  };
13284
- b["verb.geom.RevolvedSurface"] = Wn, Wn.__name__ = ["verb", "geom", "RevolvedSurface"], Wn.__super__ = At, Wn.prototype = T(At.prototype, {
13284
+ b["verb.geom.RevolvedSurface"] = Wn, Wn.__name__ = ["verb", "geom", "RevolvedSurface"], Wn.__super__ = At, Wn.prototype = M(At.prototype, {
13285
13285
  profile: function() {
13286
13286
  return this._profile;
13287
13287
  },
@@ -13299,7 +13299,7 @@ var Tl = { exports: {} };
13299
13299
  var Hn = f.geom.SphericalSurface = function(r, n) {
13300
13300
  At.call(this, dt.sphericalSurface(r, [0, 0, 1], [1, 0, 0], n)), this._center = r, this._radius = n;
13301
13301
  };
13302
- b["verb.geom.SphericalSurface"] = Hn, Hn.__name__ = ["verb", "geom", "SphericalSurface"], Hn.__super__ = At, Hn.prototype = T(At.prototype, {
13302
+ b["verb.geom.SphericalSurface"] = Hn, Hn.__name__ = ["verb", "geom", "SphericalSurface"], Hn.__super__ = At, Hn.prototype = M(At.prototype, {
13303
13303
  center: function() {
13304
13304
  return this._center;
13305
13305
  },
@@ -13311,7 +13311,7 @@ var Tl = { exports: {} };
13311
13311
  var qn = f.geom.SweptSurface = function(r, n) {
13312
13312
  At.call(this, dt.rationalTranslationalSurface(r.asNurbs(), n.asNurbs())), this._profile = r, this._rail = n;
13313
13313
  };
13314
- b["verb.geom.SweptSurface"] = qn, qn.__name__ = ["verb", "geom", "SweptSurface"], qn.__super__ = At, qn.prototype = T(At.prototype, {
13314
+ b["verb.geom.SweptSurface"] = qn, qn.__name__ = ["verb", "geom", "SweptSurface"], qn.__super__ = At, qn.prototype = M(At.prototype, {
13315
13315
  profile: function() {
13316
13316
  return this._profile;
13317
13317
  },
@@ -13322,7 +13322,7 @@ var Tl = { exports: {} };
13322
13322
  });
13323
13323
  function We(r) {
13324
13324
  return r instanceof Array ? function() {
13325
- return O.iter(r);
13325
+ return z.iter(r);
13326
13326
  } : typeof r.iterator == "function" ? Me(r, r.iterator) : r.iterator;
13327
13327
  }
13328
13328
  var Ys, Vl = 0;
@@ -13360,83 +13360,83 @@ var Tl = { exports: {} };
13360
13360
  if (r.setImmediate)
13361
13361
  return;
13362
13362
  var i = 1, l = {}, u = !1, d = r.document, p;
13363
- function _(z) {
13364
- return l[i] = v.apply(n, z), i++;
13363
+ function _(O) {
13364
+ return l[i] = v.apply(n, O), i++;
13365
13365
  }
13366
- function v(z) {
13366
+ function v(O) {
13367
13367
  var F = [].slice.call(arguments, 1);
13368
13368
  return function() {
13369
- typeof z == "function" ? z.apply(n, F) : new Function("" + z)();
13369
+ typeof O == "function" ? O.apply(n, F) : new Function("" + O)();
13370
13370
  };
13371
13371
  }
13372
- function w(z) {
13372
+ function w(O) {
13373
13373
  if (u)
13374
- setTimeout(v(w, z), 0);
13374
+ setTimeout(v(w, O), 0);
13375
13375
  else {
13376
- var F = l[z];
13376
+ var F = l[O];
13377
13377
  if (F) {
13378
13378
  u = !0;
13379
13379
  try {
13380
13380
  F();
13381
13381
  } finally {
13382
- A(z), u = !1;
13382
+ A(O), u = !1;
13383
13383
  }
13384
13384
  }
13385
13385
  }
13386
13386
  }
13387
- function A(z) {
13388
- delete l[z];
13387
+ function A(O) {
13388
+ delete l[O];
13389
13389
  }
13390
13390
  function P() {
13391
13391
  p = function() {
13392
- var z = _(arguments);
13393
- return process.nextTick(v(w, z)), z;
13392
+ var O = _(arguments);
13393
+ return process.nextTick(v(w, O)), O;
13394
13394
  };
13395
13395
  }
13396
13396
  function I() {
13397
13397
  if (r.postMessage && !r.importScripts) {
13398
- var z = !0, F = r.onmessage;
13398
+ var O = !0, F = r.onmessage;
13399
13399
  return r.onmessage = function() {
13400
- z = !1;
13401
- }, r.postMessage("", "*"), r.onmessage = F, z;
13400
+ O = !1;
13401
+ }, r.postMessage("", "*"), r.onmessage = F, O;
13402
13402
  }
13403
13403
  }
13404
13404
  function E() {
13405
- var z = "setImmediate$" + Math.random() + "$", F = function(V) {
13406
- V.source === r && typeof V.data == "string" && V.data.indexOf(z) === 0 && w(+V.data.slice(z.length));
13405
+ var O = "setImmediate$" + Math.random() + "$", F = function(V) {
13406
+ V.source === r && typeof V.data == "string" && V.data.indexOf(O) === 0 && w(+V.data.slice(O.length));
13407
13407
  };
13408
13408
  r.addEventListener ? r.addEventListener("message", F, !1) : r.attachEvent("onmessage", F), p = function() {
13409
13409
  var V = _(arguments);
13410
- return r.postMessage(z + V, "*"), V;
13410
+ return r.postMessage(O + V, "*"), V;
13411
13411
  };
13412
13412
  }
13413
- function M() {
13414
- var z = new MessageChannel();
13415
- z.port1.onmessage = function(F) {
13413
+ function T() {
13414
+ var O = new MessageChannel();
13415
+ O.port1.onmessage = function(F) {
13416
13416
  var V = F.data;
13417
13417
  w(V);
13418
13418
  }, p = function() {
13419
13419
  var F = _(arguments);
13420
- return z.port2.postMessage(F), F;
13420
+ return O.port2.postMessage(F), F;
13421
13421
  };
13422
13422
  }
13423
13423
  function L() {
13424
- var z = d.documentElement;
13424
+ var O = d.documentElement;
13425
13425
  p = function() {
13426
13426
  var F = _(arguments), V = d.createElement("script");
13427
13427
  return V.onreadystatechange = function() {
13428
- w(F), V.onreadystatechange = null, z.removeChild(V), V = null;
13429
- }, z.appendChild(V), F;
13428
+ w(F), V.onreadystatechange = null, O.removeChild(V), V = null;
13429
+ }, O.appendChild(V), F;
13430
13430
  };
13431
13431
  }
13432
13432
  function N() {
13433
13433
  p = function() {
13434
- var z = _(arguments);
13435
- return setTimeout(v(w, z), 0), z;
13434
+ var O = _(arguments);
13435
+ return setTimeout(v(w, O), 0), O;
13436
13436
  };
13437
13437
  }
13438
13438
  var B = Object.getPrototypeOf && Object.getPrototypeOf(r);
13439
- B = B && B.setTimeout ? B : r, {}.toString.call(r.process) === "[object process]" ? P() : I() ? E() : r.MessageChannel ? M() : d && "onreadystatechange" in d.createElement("script") ? L() : N(), B.setImmediate = p, B.clearImmediate = A;
13439
+ B = B && B.setTimeout ? B : r, {}.toString.call(r.process) === "[object process]" ? P() : I() ? E() : r.MessageChannel ? T() : d && "onreadystatechange" in d.createElement("script") ? L() : N(), B.setImmediate = p, B.clearImmediate = A;
13440
13440
  })(new Function("return this")()), Ht.USE_CACHE = !1, Ht.USE_ENUM_INDEX = !1, Ht.BASE64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789%:", Ut.DEFAULT_RESOLVER = mt, Ut.BASE64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789%:", Nt.count = 0, ie.i64tmp = function(r) {
13441
13441
  var n, i = new Wt(0, 0);
13442
13442
  return n = i, n;
@@ -13563,9 +13563,9 @@ class xc extends ps {
13563
13563
  this._closed || g > 0 ? f = o[(g - 1) % h] : (this._tmp.subVectors(o[0], o[1]).add(o[0]), f = new X(this._tmp.x, this._tmp.y, this._tmp.z));
13564
13564
  const b = o[g % h], k = o[(g + 1) % h];
13565
13565
  if (this._closed || g + 2 < h ? S = o[(g + 2) % h] : (this._tmp.subVectors(o[h - 1], o[h - 2]).add(o[h - 1]), S = new X(this._tmp.x, this._tmp.y, this._tmp.z)), this._curveType === "centripetal" || this._curveType === "chordal") {
13566
- const T = this._curveType === "chordal" ? 0.5 : 0.25;
13567
- let O = Math.pow(f.distanceToSquared(b), T), R = Math.pow(b.distanceToSquared(k), T), U = Math.pow(k.distanceToSquared(S), T);
13568
- R < 1e-4 && (R = 1), O < 1e-4 && (O = R), U < 1e-4 && (U = R), this._px.initNonuniformCatmullRom(f.x, b.x, k.x, S.x, O, R, U), this._py.initNonuniformCatmullRom(f.y, b.y, k.y, S.y, O, R, U), this._pz.initNonuniformCatmullRom(f.z, b.z, k.z, S.z, O, R, U);
13566
+ const M = this._curveType === "chordal" ? 0.5 : 0.25;
13567
+ let z = Math.pow(f.distanceToSquared(b), M), R = Math.pow(b.distanceToSquared(k), M), U = Math.pow(k.distanceToSquared(S), M);
13568
+ R < 1e-4 && (R = 1), z < 1e-4 && (z = R), U < 1e-4 && (U = R), this._px.initNonuniformCatmullRom(f.x, b.x, k.x, S.x, z, R, U), this._py.initNonuniformCatmullRom(f.y, b.y, k.y, S.y, z, R, U), this._pz.initNonuniformCatmullRom(f.z, b.z, k.z, S.z, z, R, U);
13569
13569
  } else this._curveType === "catmullrom" && (this._px.initCatmullRom(f.x, b.x, k.x, S.x, this._tension), this._py.initCatmullRom(f.y, b.y, k.y, S.y, this._tension), this._pz.initCatmullRom(f.z, b.z, k.z, S.z, this._tension));
13570
13570
  return s.set(
13571
13571
  this._px.calc(x),
@@ -16640,8 +16640,8 @@ const Sc = /* @__PURE__ */ new $(), pa = class pa extends Ds {
16640
16640
  let c = 0;
16641
16641
  for (let k = 0; k <= this.numRows; k++) {
16642
16642
  e -= k > 0 ? this.rowHeight(k - 1) : 0, s = 0;
16643
- for (let T = 0; T <= this.numColumns; T++)
16644
- s += T > 0 ? this.columnWidth(T - 1) : 0, h[c++] = s, h[c++] = e, h[c++] = 0;
16643
+ for (let M = 0; M <= this.numColumns; M++)
16644
+ s += M > 0 ? this.columnWidth(M - 1) : 0, h[c++] = s, h[c++] = e, h[c++] = 0;
16645
16645
  }
16646
16646
  const g = [], x = new Array(this.numRows * this.numColumns).fill(
16647
16647
  !1
@@ -16650,35 +16650,35 @@ const Sc = /* @__PURE__ */ new $(), pa = class pa extends Ds {
16650
16650
  let f = 0;
16651
16651
  for (let k = 0; k < this.numColumns; k++) {
16652
16652
  s += k > 0 ? this.columnWidth(k - 1) : 0, e = 0;
16653
- for (let T = 0; T < this.numRows; T++) {
16654
- e += T > 0 ? this.rowHeight(T - 1) : 0;
16655
- const O = this.cell(T * this.numColumns + k);
16656
- if (f = T * this.numColumns + k, O && !x[f]) {
16657
- const R = O.borderWidth ?? 1, U = O.borderHeight ?? 1;
16653
+ for (let M = 0; M < this.numRows; M++) {
16654
+ e += M > 0 ? this.rowHeight(M - 1) : 0;
16655
+ const z = this.cell(M * this.numColumns + k);
16656
+ if (f = M * this.numColumns + k, z && !x[f]) {
16657
+ const R = z.borderWidth ?? 1, U = z.borderHeight ?? 1;
16658
16658
  this.fillVisited(
16659
16659
  x,
16660
16660
  f,
16661
16661
  this.numColumns,
16662
16662
  R,
16663
16663
  U
16664
- ), o[c++] = k + T * (this.numColumns + 1), o[c++] = k + T * (this.numColumns + 1) + R;
16665
- const D = h[o[c - 1] * 3] - s, gt = k + (T + U) * (this.numColumns + 1) + R;
16666
- k + R == this.numColumns && (o[c++] = k + T * (this.numColumns + 1) + R, o[c++] = gt);
16664
+ ), o[c++] = k + M * (this.numColumns + 1), o[c++] = k + M * (this.numColumns + 1) + R;
16665
+ const D = h[o[c - 1] * 3] - s, gt = k + (M + U) * (this.numColumns + 1) + R;
16666
+ k + R == this.numColumns && (o[c++] = k + M * (this.numColumns + 1) + R, o[c++] = gt);
16667
16667
  const ft = -h[gt * 3 + 1] - e;
16668
- if (T + U == this.numRows && (o[c++] = k + (T + U) * (this.numColumns + 1) + U, o[c++] = k + (T + U) * (this.numColumns + 1)), o[c++] = k + (T + U) * (this.numColumns + 1), o[c++] = k + T * (this.numColumns + 1), O.text) {
16669
- const ut = O.attachmentPoint || this.attachmentPoint || cs.MiddleCenter, W = this.getTableTextOffset(
16668
+ if (M + U == this.numRows && (o[c++] = k + (M + U) * (this.numColumns + 1) + U, o[c++] = k + (M + U) * (this.numColumns + 1)), o[c++] = k + (M + U) * (this.numColumns + 1), o[c++] = k + M * (this.numColumns + 1), z.text) {
16669
+ const ut = z.attachmentPoint || this.attachmentPoint || cs.MiddleCenter, W = this.getTableTextOffset(
16670
16670
  ut,
16671
16671
  D,
16672
16672
  ft
16673
16673
  ), mt = {
16674
- text: O.text,
16675
- height: O.textHeight,
16674
+ text: z.text,
16675
+ height: z.textHeight,
16676
16676
  width: D,
16677
16677
  position: Sc.set(s, -e, 0).clone().add(W),
16678
16678
  rotation: this.rotation,
16679
16679
  attachmentPoint: ut
16680
16680
  }, lt = {
16681
- ...this.getTextStyle(O),
16681
+ ...this.getTextStyle(z),
16682
16682
  color: this.color.color
16683
16683
  };
16684
16684
  g.push(t.mtext(mt, lt));
@@ -19859,15 +19859,15 @@ class uo {
19859
19859
  new $t().subVectors(S.end, S.center);
19860
19860
  const k = Math.sqrt(
19861
19861
  Math.pow(S.end.x, 2) + Math.pow(S.end.y, 2)
19862
- ), T = k * S.lengthOfMinorAxis;
19863
- let O = Ot.degToRad(S.startAngle || 0), R = Ot.degToRad(S.endAngle || 0);
19862
+ ), M = k * S.lengthOfMinorAxis;
19863
+ let z = Ot.degToRad(S.startAngle || 0), R = Ot.degToRad(S.endAngle || 0);
19864
19864
  const U = Math.atan2(S.end.y, S.end.x);
19865
- S.isCCW || (O = Math.PI * 2 - O, R = Math.PI * 2 - R), x.add(
19865
+ S.isCCW || (z = Math.PI * 2 - z, R = Math.PI * 2 - R), x.add(
19866
19866
  new Qi(
19867
19867
  { ...S.center, z: 0 },
19868
19868
  k,
19869
- T,
19870
- O,
19869
+ M,
19870
+ z,
19871
19871
  R,
19872
19872
  !S.isCCW,
19873
19873
  U
@@ -19877,19 +19877,19 @@ class uo {
19877
19877
  const S = f;
19878
19878
  if (S.numberOfControlPoints > 0 && S.numberOfKnots > 0) {
19879
19879
  const b = S.controlPoints.map(
19880
- (O) => ({
19881
- x: O.x,
19882
- y: O.y,
19880
+ (z) => ({
19881
+ x: z.x,
19882
+ y: z.y,
19883
19883
  z: 0
19884
19884
  })
19885
19885
  );
19886
19886
  let k = !0;
19887
- const T = S.controlPoints.map((O) => (O.weight == null && (k = !1), O.weight || 1));
19887
+ const M = S.controlPoints.map((z) => (z.weight == null && (k = !1), z.weight || 1));
19888
19888
  x.add(
19889
19889
  new Qr(
19890
19890
  b,
19891
19891
  S.knots,
19892
- k ? T : void 0
19892
+ k ? M : void 0
19893
19893
  )
19894
19894
  );
19895
19895
  } else if (S.numberOfFitData > 0) {
@@ -20616,13 +20616,13 @@ class zc {
20616
20616
  timeout: x
20617
20617
  });
20618
20618
  const f = (b) => {
20619
- const { id: k, success: T, data: O, error: R } = b.data;
20619
+ const { id: k, success: M, data: z, error: R } = b.data;
20620
20620
  if (k !== t) return;
20621
20621
  this.cleanupTask(t);
20622
20622
  const U = Date.now() - o;
20623
- h(T ? {
20623
+ h(M ? {
20624
20624
  success: !0,
20625
- data: O,
20625
+ data: z,
20626
20626
  duration: U
20627
20627
  } : {
20628
20628
  success: !1,
@@ -20888,18 +20888,16 @@ class Bc extends Fu {
20888
20888
  x,
20889
20889
  100 - o.value,
20890
20890
  s
20891
- ), S = e.tables.blockTable.modelSpace, b = e.tables.blockTable;
20892
- await f.processChunk(async (k, T) => {
20893
- for (let O = k; O < T; O++) {
20894
- const R = g[O], U = c.convert(R);
20895
- if (U) {
20896
- let D = S;
20897
- R.ownerBlockRecordSoftId != null && (D = b.getIdAt(R.ownerBlockRecordSoftId) || D), D.appendEntity(U);
20898
- }
20891
+ ), S = e.tables.blockTable.modelSpace;
20892
+ await f.processChunk(async (b, k) => {
20893
+ const M = [];
20894
+ for (let z = b; z < k; z++) {
20895
+ const R = g[z], U = c.convert(R);
20896
+ U && M.push(U);
20899
20897
  }
20900
- if (h) {
20901
- let O = o.value + T / x * (100 - o.value);
20902
- O > 100 && (O = 100), await h(O, "ENTITY", "IN-PROGRESS");
20898
+ if (S.appendEntity(M), h) {
20899
+ let z = o.value + k / x * (100 - o.value);
20900
+ z > 100 && (z = 100), await h(z, "ENTITY", "IN-PROGRESS");
20903
20901
  }
20904
20902
  });
20905
20903
  }
@@ -20910,23 +20908,20 @@ class Bc extends Fu {
20910
20908
  * block table record.
20911
20909
  *
20912
20910
  * @param entities - Array of DXF entities to process
20913
- * @param defaultBlockTableRecord - Default block table record to use
20914
- * @param blockTable - Block table reference
20911
+ * @param blockTableRecord - The block table record to use
20915
20912
  *
20916
20913
  * @example
20917
20914
  * ```typescript
20918
- * await converter.processEntitiesInBlock(entities, blockRecord, blockTable);
20915
+ * await converter.processEntitiesInBlock(entities, blockRecord);
20919
20916
  * ```
20920
20917
  */
20921
- async processEntitiesInBlock(t, e, s) {
20922
- const o = new uo(), h = t.length;
20923
- for (let c = 0; c < h; c++) {
20924
- const g = t[c], x = o.convert(g);
20925
- if (x) {
20926
- let f = e;
20927
- g.ownerBlockRecordSoftId != null && (f = s.getIdAt(g.ownerBlockRecordSoftId) || f), f.appendEntity(x);
20928
- }
20918
+ async processEntitiesInBlock(t, e) {
20919
+ const s = new uo(), o = t.length, h = [];
20920
+ for (let c = 0; c < o; c++) {
20921
+ const g = t[c], x = s.convert(g);
20922
+ x && h.push(x);
20929
20923
  }
20924
+ e.appendEntity(h);
20930
20925
  }
20931
20926
  /**
20932
20927
  * Processes blocks defined in the DXF file.
@@ -20946,11 +20941,7 @@ class Bc extends Fu {
20946
20941
  const s = t.blocks;
20947
20942
  for (const [o, h] of Object.entries(s)) {
20948
20943
  let c = e.tables.blockTable.getAt(h.name);
20949
- c || (c = new Fe(), c.objectId = h.handle, c.name = o, c.origin.copy(h.position), e.tables.blockTable.add(c)), h.entities && this.processEntitiesInBlock(
20950
- h.entities,
20951
- c,
20952
- e.tables.blockTable
20953
- );
20944
+ c || (c = new Fe(), c.objectId = h.handle, c.name = o, c.origin.copy(h.position), e.tables.blockTable.add(c)), h.entities && this.processEntitiesInBlock(h.entities, c);
20954
20945
  }
20955
20946
  }
20956
20947
  /**
@@ -21510,12 +21501,12 @@ const zr = class zr extends An {
21510
21501
  this._layoutId = t;
21511
21502
  }
21512
21503
  /**
21513
- * Appends the specified entity to this block table record.
21504
+ * Appends the specified entity or entities to this block table record.
21514
21505
  *
21515
21506
  * This method adds an entity to the block and sets up the necessary
21516
21507
  * relationships between the entity and the block table record.
21517
21508
  *
21518
- * @param entity - The entity to append to this block table record
21509
+ * @param entity - The entity or entities to append to this block table record
21519
21510
  *
21520
21511
  * @example
21521
21512
  * ```typescript
@@ -21524,7 +21515,14 @@ const zr = class zr extends An {
21524
21515
  * ```
21525
21516
  */
21526
21517
  appendEntity(t) {
21527
- t.database = this.database, t.ownerId = this.objectId, this._entities.set(t.objectId, t), (this.isModelSapce || this.isPaperSapce) && this.database.events.entityAppended.dispatch({
21518
+ if (Array.isArray(t))
21519
+ for (let e = 0; e < t.length; ++e) {
21520
+ const s = t[e];
21521
+ s.database = this.database, s.ownerId = this.objectId, this._entities.set(s.objectId, s);
21522
+ }
21523
+ else
21524
+ t.database = this.database, t.ownerId = this.objectId, this._entities.set(t.objectId, t);
21525
+ (this.isModelSapce || this.isPaperSapce) && this.database.events.entityAppended.dispatch({
21528
21526
  database: this.database,
21529
21527
  entity: t
21530
21528
  });
@@ -22590,6 +22588,7 @@ class fd extends Jr {
22590
22588
  * @param options Input options to read drawing data
22591
22589
  */
22592
22590
  async openUri(t, e) {
22591
+ var k;
22593
22592
  this.events.openProgress.dispatch({
22594
22593
  database: this,
22595
22594
  percentage: 0,
@@ -22597,22 +22596,51 @@ class fd extends Jr {
22597
22596
  stageStatus: "START"
22598
22597
  });
22599
22598
  const s = await fetch(t);
22600
- if (this.events.openProgress.dispatch({
22599
+ if (!s.ok)
22600
+ throw this.events.openProgress.dispatch({
22601
+ database: this,
22602
+ percentage: 100,
22603
+ stage: "FETCH_FILE",
22604
+ stageStatus: "ERROR"
22605
+ }), new Error(
22606
+ `Failed to fetch file '${t}' with HTTP status code '${s.status}'!`
22607
+ );
22608
+ const o = s.headers.get("content-length"), h = o ? parseInt(o, 10) : null;
22609
+ let c = 0;
22610
+ const g = (k = s.body) == null ? void 0 : k.getReader();
22611
+ if (!g)
22612
+ throw new Error("Failed to get response reader");
22613
+ const x = [];
22614
+ for (; ; ) {
22615
+ const { done: M, value: z } = await g.read();
22616
+ if (M)
22617
+ break;
22618
+ if (x.push(z), c += z.length, h !== null) {
22619
+ const R = Math.round(c / h * 100);
22620
+ this.events.openProgress.dispatch({
22621
+ database: this,
22622
+ percentage: R,
22623
+ stage: "FETCH_FILE",
22624
+ stageStatus: "IN-PROGRESS"
22625
+ });
22626
+ }
22627
+ }
22628
+ const f = new Uint8Array(c);
22629
+ let S = 0;
22630
+ for (const M of x)
22631
+ f.set(M, S), S += M.length;
22632
+ if (t.toLowerCase().split(".").pop() === "dwg")
22633
+ await this.read(f.buffer, e, Rs.DWG);
22634
+ else {
22635
+ const M = new TextDecoder().decode(f);
22636
+ await this.read(M, e, Rs.DXF);
22637
+ }
22638
+ this.events.openProgress.dispatch({
22601
22639
  database: this,
22602
22640
  percentage: 100,
22603
22641
  stage: "FETCH_FILE",
22604
22642
  stageStatus: "END"
22605
- }), !s.ok)
22606
- throw new Error(
22607
- `Failed to fetch file '${t}' with HTTP status codee '${s.status}'!`
22608
- );
22609
- if (t.toLowerCase().split(".").pop() === "dwg") {
22610
- const h = await s.arrayBuffer();
22611
- await this.read(h, e, Rs.DWG);
22612
- } else {
22613
- const h = await s.text();
22614
- await this.read(h, e, Rs.DXF);
22615
- }
22643
+ });
22616
22644
  }
22617
22645
  /**
22618
22646
  * Clears all data from the database.