@mlightcad/geometry-engine 3.0.5 → 3.0.6

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.
@@ -875,8 +875,8 @@ const On = class On {
875
875
  * @param n32 Input element in the third row and the second column
876
876
  * @param n33 Input element in the third row and the third column
877
877
  */
878
- constructor(e, i, a, u, _, g, y, x, f) {
879
- this.elements = [1, 0, 0, 0, 1, 0, 0, 0, 1], e != null && i != null && a != null && u != null && _ != null && g != null && y != null && x != null && f != null && this.set(e, i, a, u, _, g, y, x, f);
878
+ constructor(e, i, a, u, _, g, y, x, d) {
879
+ this.elements = [1, 0, 0, 0, 1, 0, 0, 0, 1], e != null && i != null && a != null && u != null && _ != null && g != null && y != null && x != null && d != null && this.set(e, i, a, u, _, g, y, x, d);
880
880
  }
881
881
  /**
882
882
  * Set the 3x3 matrix values to the given row-major sequence of values.
@@ -892,9 +892,9 @@ const On = class On {
892
892
  * @param n33 Input element in the third row and the third column
893
893
  * @returns Return this matrix
894
894
  */
895
- set(e, i, a, u, _, g, y, x, f) {
895
+ set(e, i, a, u, _, g, y, x, d) {
896
896
  const A = this.elements;
897
- return A[0] = e, A[1] = u, A[2] = y, A[3] = i, A[4] = _, A[5] = x, A[6] = a, A[7] = g, A[8] = f, this;
897
+ return A[0] = e, A[1] = u, A[2] = y, A[3] = i, A[4] = _, A[5] = x, A[6] = a, A[7] = g, A[8] = d, this;
898
898
  }
899
899
  /**
900
900
  * Reset this matrix to the 3x3 identity matrix:
@@ -954,8 +954,8 @@ const On = class On {
954
954
  * @returns Return this matrix
955
955
  */
956
956
  multiplyMatrices(e, i) {
957
- const a = e.elements, u = i.elements, _ = this.elements, g = a[0], y = a[3], x = a[6], f = a[1], A = a[4], p = a[7], N = a[2], k = a[5], U = a[8], K = u[0], Y = u[3], W = u[6], yt = u[1], Mt = u[4], ft = u[7], Z = u[2], ut = u[5], ht = u[8];
958
- return _[0] = g * K + y * yt + x * Z, _[3] = g * Y + y * Mt + x * ut, _[6] = g * W + y * ft + x * ht, _[1] = f * K + A * yt + p * Z, _[4] = f * Y + A * Mt + p * ut, _[7] = f * W + A * ft + p * ht, _[2] = N * K + k * yt + U * Z, _[5] = N * Y + k * Mt + U * ut, _[8] = N * W + k * ft + U * ht, this;
957
+ const a = e.elements, u = i.elements, _ = this.elements, g = a[0], y = a[3], x = a[6], d = a[1], A = a[4], p = a[7], N = a[2], k = a[5], U = a[8], K = u[0], Y = u[3], W = u[6], yt = u[1], Mt = u[4], dt = u[7], Z = u[2], ut = u[5], ht = u[8];
958
+ return _[0] = g * K + y * yt + x * Z, _[3] = g * Y + y * Mt + x * ut, _[6] = g * W + y * dt + x * ht, _[1] = d * K + A * yt + p * Z, _[4] = d * Y + A * Mt + p * ut, _[7] = d * W + A * dt + p * ht, _[2] = N * K + k * yt + U * Z, _[5] = N * Y + k * Mt + U * ut, _[8] = N * W + k * dt + U * ht, this;
959
959
  }
960
960
  /**
961
961
  * Multiply every component of the matrix by the scalar value s.
@@ -971,8 +971,8 @@ const On = class On {
971
971
  * @returns Return the determinant of this matrix
972
972
  */
973
973
  determinant() {
974
- const e = this.elements, i = e[0], a = e[1], u = e[2], _ = e[3], g = e[4], y = e[5], x = e[6], f = e[7], A = e[8];
975
- return i * g * A - i * y * f - a * _ * A + a * y * x + u * _ * f - u * g * x;
974
+ const e = this.elements, i = e[0], a = e[1], u = e[2], _ = e[3], g = e[4], y = e[5], x = e[6], d = e[7], A = e[8];
975
+ return i * g * A - i * y * d - a * _ * A + a * y * x + u * _ * d - u * g * x;
976
976
  }
977
977
  /**
978
978
  * Invert this matrix, using the analytic method. You can not invert with a determinant of zero.
@@ -980,10 +980,10 @@ const On = class On {
980
980
  * @returns Return this matrix
981
981
  */
982
982
  invert() {
983
- const e = this.elements, i = e[0], a = e[1], u = e[2], _ = e[3], g = e[4], y = e[5], x = e[6], f = e[7], A = e[8], p = A * g - y * f, N = y * x - A * _, k = f * _ - g * x, U = i * p + a * N + u * k;
983
+ const e = this.elements, i = e[0], a = e[1], u = e[2], _ = e[3], g = e[4], y = e[5], x = e[6], d = e[7], A = e[8], p = A * g - y * d, N = y * x - A * _, k = d * _ - g * x, U = i * p + a * N + u * k;
984
984
  if (U === 0) return this.set(0, 0, 0, 0, 0, 0, 0, 0, 0);
985
985
  const K = 1 / U;
986
- return e[0] = p * K, e[1] = (u * f - A * a) * K, e[2] = (y * a - u * g) * K, e[3] = N * K, e[4] = (A * i - u * x) * K, e[5] = (u * _ - y * i) * K, e[6] = k * K, e[7] = (a * x - f * i) * K, e[8] = (g * i - a * _) * K, this;
986
+ return e[0] = p * K, e[1] = (u * d - A * a) * K, e[2] = (y * a - u * g) * K, e[3] = N * K, e[4] = (A * i - u * x) * K, e[5] = (u * _ - y * i) * K, e[6] = k * K, e[7] = (a * x - d * i) * K, e[8] = (g * i - a * _) * K, this;
987
987
  }
988
988
  /**
989
989
  * Transpose this matrix in place.
@@ -1025,14 +1025,14 @@ const On = class On {
1025
1025
  * @returns Return this matrix
1026
1026
  */
1027
1027
  setUvTransform(e, i, a, u, _, g, y) {
1028
- const x = Math.cos(_), f = Math.sin(_);
1028
+ const x = Math.cos(_), d = Math.sin(_);
1029
1029
  return this.set(
1030
1030
  a * x,
1031
- a * f,
1032
- -a * (x * g + f * y) + g + e,
1033
- -u * f,
1031
+ a * d,
1032
+ -a * (x * g + d * y) + g + e,
1033
+ -u * d,
1034
1034
  u * x,
1035
- -u * (-f * g + x * y) + y + i,
1035
+ -u * (-d * g + x * y) + y + i,
1036
1036
  0,
1037
1037
  0,
1038
1038
  1
@@ -1045,7 +1045,7 @@ const On = class On {
1045
1045
  * @returns Return this matrix
1046
1046
  */
1047
1047
  scale(e, i) {
1048
- return this.premultiply(dr.makeScale(e, i)), this;
1048
+ return this.premultiply(fr.makeScale(e, i)), this;
1049
1049
  }
1050
1050
  /**
1051
1051
  * Rotate this matrix by the given angle (in radians).
@@ -1053,7 +1053,7 @@ const On = class On {
1053
1053
  * @returns Return this matrix
1054
1054
  */
1055
1055
  rotate(e) {
1056
- return this.premultiply(dr.makeRotation(-e)), this;
1056
+ return this.premultiply(fr.makeRotation(-e)), this;
1057
1057
  }
1058
1058
  /**
1059
1059
  * Translate this matrix by the given scalar values.
@@ -1062,7 +1062,7 @@ const On = class On {
1062
1062
  * @returns Return this matrix
1063
1063
  */
1064
1064
  translate(e, i) {
1065
- return this.premultiply(dr.makeTranslation(e, i)), this;
1065
+ return this.premultiply(fr.makeTranslation(e, i)), this;
1066
1066
  }
1067
1067
  /**
1068
1068
  * Set this matrix as a 2D translation transform:
@@ -1133,7 +1133,7 @@ const On = class On {
1133
1133
  };
1134
1134
  On.IDENTITY = Object.freeze(new On());
1135
1135
  let Kn = On;
1136
- const dr = /* @__PURE__ */ new Kn(), fn = 1e-6, Xt = 2 * Math.PI, ns = {
1136
+ const fr = /* @__PURE__ */ new Kn(), dn = 1e-6, Xt = 2 * Math.PI, ns = {
1137
1137
  x: 0,
1138
1138
  y: 0
1139
1139
  }, Yr = {
@@ -1146,7 +1146,7 @@ class Hr {
1146
1146
  * Create tolerance class with default tolerance values
1147
1147
  */
1148
1148
  constructor() {
1149
- this.equalPointTol = fn, this.equalVectorTol = fn;
1149
+ this.equalPointTol = dn, this.equalVectorTol = dn;
1150
1150
  }
1151
1151
  /**
1152
1152
  * Return true if two points are equal with the specified tolerance.
@@ -1169,7 +1169,7 @@ class Hr {
1169
1169
  /**
1170
1170
  * Return true if the value is equal to zero with the specified tolerance.
1171
1171
  */
1172
- static equalToZero(e, i = fn) {
1172
+ static equalToZero(e, i = dn) {
1173
1173
  return e < i && e > -i;
1174
1174
  }
1175
1175
  /**
@@ -1180,7 +1180,7 @@ class Hr {
1180
1180
  * @param tol Input the tolerance value
1181
1181
  * @returns Return true if two values are equal with the sepcified tolerance
1182
1182
  */
1183
- static equal(e, i, a = fn) {
1183
+ static equal(e, i, a = dn) {
1184
1184
  return Math.abs(e - i) < a;
1185
1185
  }
1186
1186
  /**
@@ -1193,7 +1193,7 @@ class Hr {
1193
1193
  * @returns Return true if the first argument are greater than the second argument with the
1194
1194
  * sepcified tolerance.
1195
1195
  */
1196
- static great(e, i, a = fn) {
1196
+ static great(e, i, a = dn) {
1197
1197
  return e - i > a;
1198
1198
  }
1199
1199
  /**
@@ -1206,7 +1206,7 @@ class Hr {
1206
1206
  * @returns Return *true* if the first argument less than the second argument with the specified
1207
1207
  * tolerance value
1208
1208
  */
1209
- static less(e, i, a = fn) {
1209
+ static less(e, i, a = dn) {
1210
1210
  return e - i < a;
1211
1211
  }
1212
1212
  }
@@ -1216,9 +1216,9 @@ function Jr(E, e, i = !1) {
1216
1216
  let _ = !1;
1217
1217
  const g = e.length;
1218
1218
  for (let y = 0, x = g - 1; y < g; x = y++) {
1219
- const f = e[y].x, A = e[y].y, p = e[x].x, N = e[x].y;
1219
+ const d = e[y].x, A = e[y].y, p = e[x].x, N = e[x].y;
1220
1220
  let k = A > u != N > u;
1221
- i && (k = A >= u != N >= u), k && a < (p - f) * (u - A) / (N - A) + f && (_ = !_);
1221
+ i && (k = A >= u != N >= u), k && a < (p - d) * (u - A) / (N - A) + d && (_ = !_);
1222
1222
  }
1223
1223
  return _;
1224
1224
  }
@@ -1253,7 +1253,7 @@ function Ki(E, e) {
1253
1253
  const i = e.length - 1, a = E, u = [0];
1254
1254
  let _ = 0;
1255
1255
  for (let y = 1; y <= i; y++) {
1256
- const x = e[y][0] - e[y - 1][0], f = e[y][1] - e[y - 1][1], A = e[y][2] - e[y - 1][2], p = Math.sqrt(x * x + f * f + A * A);
1256
+ const x = e[y][0] - e[y - 1][0], d = e[y][1] - e[y - 1][1], A = e[y][2] - e[y - 1][2], p = Math.sqrt(x * x + d * d + A * A);
1257
1257
  _ += p, u.push(_);
1258
1258
  }
1259
1259
  const g = [];
@@ -1271,7 +1271,7 @@ function Xi(E, e) {
1271
1271
  const i = e.length - 1, a = E, u = [0];
1272
1272
  let _ = 0;
1273
1273
  for (let y = 1; y <= i; y++) {
1274
- const x = e[y][0] - e[y - 1][0], f = e[y][1] - e[y - 1][1], A = e[y][2] - e[y - 1][2], p = Math.sqrt(x * x + f * f + A * A), N = Math.sqrt(p);
1274
+ const x = e[y][0] - e[y - 1][0], d = e[y][1] - e[y - 1][1], A = e[y][2] - e[y - 1][2], p = Math.sqrt(x * x + d * d + A * A), N = Math.sqrt(p);
1275
1275
  _ += N, u.push(_);
1276
1276
  }
1277
1277
  const g = [];
@@ -1299,13 +1299,13 @@ function tr(E, e, i, a, u) {
1299
1299
  return [...a[0]];
1300
1300
  const y = [0, 0, 0];
1301
1301
  let x = 0;
1302
- for (let f = 0; f <= _; f++) {
1303
- const A = yr(f, g, E, i), p = u[f] * A;
1304
- y[0] += a[f][0] * p, y[1] += a[f][1] * p, y[2] += a[f][2] * p, x += p;
1302
+ for (let d = 0; d <= _; d++) {
1303
+ const A = yr(d, g, E, i), p = u[d] * A;
1304
+ y[0] += a[d][0] * p, y[1] += a[d][1] * p, y[2] += a[d][2] * p, x += p;
1305
1305
  }
1306
1306
  if (x < 1e-10) {
1307
- const f = i[i.length - g - 1];
1308
- if (Math.abs(E - f) < 1e-8)
1307
+ const d = i[i.length - g - 1];
1308
+ if (Math.abs(E - d) < 1e-8)
1309
1309
  return [...a[_]];
1310
1310
  if (Math.abs(E - i[g]) < 1e-8)
1311
1311
  return [...a[0]];
@@ -1315,7 +1315,7 @@ function tr(E, e, i, a, u) {
1315
1315
  function ji(E, e, i, a) {
1316
1316
  const u = E, _ = e[u], g = e[e.length - u - 1];
1317
1317
  let y = 0;
1318
- const x = 1e3, f = (g - _) / x;
1318
+ const x = 1e3, d = (g - _) / x;
1319
1319
  let A = tr(
1320
1320
  _,
1321
1321
  E,
@@ -1324,8 +1324,8 @@ function ji(E, e, i, a) {
1324
1324
  a
1325
1325
  );
1326
1326
  for (let K = 1; K <= x; K++) {
1327
- const Y = _ + K * f, W = tr(Y, E, e, i, a), yt = W[0] - A[0], Mt = W[1] - A[1], ft = W[2] - A[2];
1328
- y += Math.sqrt(yt * yt + Mt * Mt + ft * ft), A = W;
1327
+ const Y = _ + K * d, W = tr(Y, E, e, i, a), yt = W[0] - A[0], Mt = W[1] - A[1], dt = W[2] - A[2];
1328
+ y += Math.sqrt(yt * yt + Mt * Mt + dt * dt), A = W;
1329
1329
  }
1330
1330
  const p = tr(
1331
1331
  g,
@@ -1361,30 +1361,30 @@ class ir {
1361
1361
  * @param t Input normalized interpolation factor (between 0 and 1).
1362
1362
  */
1363
1363
  static slerpFlat(e, i, a, u, _, g, y) {
1364
- let x = a[u + 0], f = a[u + 1], A = a[u + 2], p = a[u + 3];
1364
+ let x = a[u + 0], d = a[u + 1], A = a[u + 2], p = a[u + 3];
1365
1365
  const N = _[g + 0], k = _[g + 1], U = _[g + 2], K = _[g + 3];
1366
1366
  if (y === 0) {
1367
- e[i + 0] = x, e[i + 1] = f, e[i + 2] = A, e[i + 3] = p;
1367
+ e[i + 0] = x, e[i + 1] = d, e[i + 2] = A, e[i + 3] = p;
1368
1368
  return;
1369
1369
  }
1370
1370
  if (y === 1) {
1371
1371
  e[i + 0] = N, e[i + 1] = k, e[i + 2] = U, e[i + 3] = K;
1372
1372
  return;
1373
1373
  }
1374
- if (p !== K || x !== N || f !== k || A !== U) {
1374
+ if (p !== K || x !== N || d !== k || A !== U) {
1375
1375
  let Y = 1 - y;
1376
- const W = x * N + f * k + A * U + p * K, yt = W >= 0 ? 1 : -1, Mt = 1 - W * W;
1376
+ const W = x * N + d * k + A * U + p * K, yt = W >= 0 ? 1 : -1, Mt = 1 - W * W;
1377
1377
  if (Mt > Number.EPSILON) {
1378
1378
  const Z = Math.sqrt(Mt), ut = Math.atan2(Z, W * yt);
1379
1379
  Y = Math.sin(Y * ut) / Z, y = Math.sin(y * ut) / Z;
1380
1380
  }
1381
- const ft = y * yt;
1382
- if (x = x * Y + N * ft, f = f * Y + k * ft, A = A * Y + U * ft, p = p * Y + K * ft, Y === 1 - y) {
1383
- const Z = 1 / Math.sqrt(x * x + f * f + A * A + p * p);
1384
- x *= Z, f *= Z, A *= Z, p *= Z;
1381
+ const dt = y * yt;
1382
+ if (x = x * Y + N * dt, d = d * Y + k * dt, A = A * Y + U * dt, p = p * Y + K * dt, Y === 1 - y) {
1383
+ const Z = 1 / Math.sqrt(x * x + d * d + A * A + p * p);
1384
+ x *= Z, d *= Z, A *= Z, p *= Z;
1385
1385
  }
1386
1386
  }
1387
- e[i] = x, e[i + 1] = f, e[i + 2] = A, e[i + 3] = p;
1387
+ e[i] = x, e[i + 1] = d, e[i + 2] = A, e[i + 3] = p;
1388
1388
  }
1389
1389
  /**
1390
1390
  * This multiplication implementation assumes the quaternion data are managed in flat arrays.
@@ -1397,8 +1397,8 @@ class ir {
1397
1397
  * @returns Return an array
1398
1398
  */
1399
1399
  static multiplyQuaternionsFlat(e, i, a, u, _, g) {
1400
- const y = a[u], x = a[u + 1], f = a[u + 2], A = a[u + 3], p = _[g], N = _[g + 1], k = _[g + 2], U = _[g + 3];
1401
- return e[i] = y * U + A * p + x * k - f * N, e[i + 1] = x * U + A * N + f * p - y * k, e[i + 2] = f * U + A * k + y * N - x * p, e[i + 3] = A * U - y * p - x * N - f * k, e;
1400
+ const y = a[u], x = a[u + 1], d = a[u + 2], A = a[u + 3], p = _[g], N = _[g + 1], k = _[g + 2], U = _[g + 3];
1401
+ return e[i] = y * U + A * p + x * k - d * N, e[i + 1] = x * U + A * N + d * p - y * k, e[i + 2] = d * U + A * k + y * N - x * p, e[i + 3] = A * U - y * p - x * N - d * k, e;
1402
1402
  }
1403
1403
  /**
1404
1404
  * X cooridinate
@@ -1469,25 +1469,25 @@ class ir {
1469
1469
  * @returns Return this quaternion
1470
1470
  */
1471
1471
  setFromEuler(e, i = !0) {
1472
- const a = e.x, u = e.y, _ = e.z, g = e.order, y = Math.cos, x = Math.sin, f = y(a / 2), A = y(u / 2), p = y(_ / 2), N = x(a / 2), k = x(u / 2), U = x(_ / 2);
1472
+ const a = e.x, u = e.y, _ = e.z, g = e.order, y = Math.cos, x = Math.sin, d = y(a / 2), A = y(u / 2), p = y(_ / 2), N = x(a / 2), k = x(u / 2), U = x(_ / 2);
1473
1473
  switch (g) {
1474
1474
  case "XYZ":
1475
- this._x = N * A * p + f * k * U, this._y = f * k * p - N * A * U, this._z = f * A * U + N * k * p, this._w = f * A * p - N * k * U;
1475
+ this._x = N * A * p + d * k * U, this._y = d * k * p - N * A * U, this._z = d * A * U + N * k * p, this._w = d * A * p - N * k * U;
1476
1476
  break;
1477
1477
  case "YXZ":
1478
- this._x = N * A * p + f * k * U, this._y = f * k * p - N * A * U, this._z = f * A * U - N * k * p, this._w = f * A * p + N * k * U;
1478
+ this._x = N * A * p + d * k * U, this._y = d * k * p - N * A * U, this._z = d * A * U - N * k * p, this._w = d * A * p + N * k * U;
1479
1479
  break;
1480
1480
  case "ZXY":
1481
- this._x = N * A * p - f * k * U, this._y = f * k * p + N * A * U, this._z = f * A * U + N * k * p, this._w = f * A * p - N * k * U;
1481
+ this._x = N * A * p - d * k * U, this._y = d * k * p + N * A * U, this._z = d * A * U + N * k * p, this._w = d * A * p - N * k * U;
1482
1482
  break;
1483
1483
  case "ZYX":
1484
- this._x = N * A * p - f * k * U, this._y = f * k * p + N * A * U, this._z = f * A * U - N * k * p, this._w = f * A * p + N * k * U;
1484
+ this._x = N * A * p - d * k * U, this._y = d * k * p + N * A * U, this._z = d * A * U - N * k * p, this._w = d * A * p + N * k * U;
1485
1485
  break;
1486
1486
  case "YZX":
1487
- this._x = N * A * p + f * k * U, this._y = f * k * p + N * A * U, this._z = f * A * U - N * k * p, this._w = f * A * p - N * k * U;
1487
+ this._x = N * A * p + d * k * U, this._y = d * k * p + N * A * U, this._z = d * A * U - N * k * p, this._w = d * A * p - N * k * U;
1488
1488
  break;
1489
1489
  case "XZY":
1490
- this._x = N * A * p - f * k * U, this._y = f * k * p - N * A * U, this._z = f * A * U + N * k * p, this._w = f * A * p + N * k * U;
1490
+ this._x = N * A * p - d * k * U, this._y = d * k * p - N * A * U, this._z = d * A * U + N * k * p, this._w = d * A * p + N * k * U;
1491
1491
  break;
1492
1492
  default:
1493
1493
  console.warn(
@@ -1513,19 +1513,19 @@ class ir {
1513
1513
  * @returns Return this quaternion
1514
1514
  */
1515
1515
  setFromRotationMatrix(e) {
1516
- const i = e.elements, a = i[0], u = i[4], _ = i[8], g = i[1], y = i[5], x = i[9], f = i[2], A = i[6], p = i[10], N = a + y + p;
1516
+ const i = e.elements, a = i[0], u = i[4], _ = i[8], g = i[1], y = i[5], x = i[9], d = i[2], A = i[6], p = i[10], N = a + y + p;
1517
1517
  if (N > 0) {
1518
1518
  const k = 0.5 / Math.sqrt(N + 1);
1519
- this._w = 0.25 / k, this._x = (A - x) * k, this._y = (_ - f) * k, this._z = (g - u) * k;
1519
+ this._w = 0.25 / k, this._x = (A - x) * k, this._y = (_ - d) * k, this._z = (g - u) * k;
1520
1520
  } else if (a > y && a > p) {
1521
1521
  const k = 2 * Math.sqrt(1 + a - y - p);
1522
- this._w = (A - x) / k, this._x = 0.25 * k, this._y = (u + g) / k, this._z = (_ + f) / k;
1522
+ this._w = (A - x) / k, this._x = 0.25 * k, this._y = (u + g) / k, this._z = (_ + d) / k;
1523
1523
  } else if (y > p) {
1524
1524
  const k = 2 * Math.sqrt(1 + y - a - p);
1525
- this._w = (_ - f) / k, this._x = (u + g) / k, this._y = 0.25 * k, this._z = (x + A) / k;
1525
+ this._w = (_ - d) / k, this._x = (u + g) / k, this._y = 0.25 * k, this._z = (x + A) / k;
1526
1526
  } else {
1527
1527
  const k = 2 * Math.sqrt(1 + p - a - y);
1528
- this._w = (g - u) / k, this._x = (_ + f) / k, this._y = (x + A) / k, this._z = 0.25 * k;
1528
+ this._w = (g - u) / k, this._x = (_ + d) / k, this._y = (x + A) / k, this._z = 0.25 * k;
1529
1529
  }
1530
1530
  return this._onChangeCallback(), this;
1531
1531
  }
@@ -1642,8 +1642,8 @@ class ir {
1642
1642
  * @returns Return this quaternion
1643
1643
  */
1644
1644
  multiplyQuaternions(e, i) {
1645
- const a = e._x, u = e._y, _ = e._z, g = e._w, y = i._x, x = i._y, f = i._z, A = i._w;
1646
- return this._x = a * A + g * y + u * f - _ * x, this._y = u * A + g * x + _ * y - a * f, this._z = _ * A + g * f + a * x - u * y, this._w = g * A - a * y - u * x - _ * f, this._onChangeCallback(), this;
1645
+ const a = e._x, u = e._y, _ = e._z, g = e._w, y = i._x, x = i._y, d = i._z, A = i._w;
1646
+ return this._x = a * A + g * y + u * d - _ * x, this._y = u * A + g * x + _ * y - a * d, this._z = _ * A + g * d + a * x - u * y, this._w = g * A - a * y - u * x - _ * d, this._onChangeCallback(), this;
1647
1647
  }
1648
1648
  /**
1649
1649
  * Handles the spherical linear interpolation between quaternions. t represents the amount of rotation
@@ -1664,7 +1664,7 @@ class ir {
1664
1664
  const k = 1 - i;
1665
1665
  return this._w = k * g + i * this._w, this._x = k * a + i * this._x, this._y = k * u + i * this._y, this._z = k * _ + i * this._z, this.normalize(), this;
1666
1666
  }
1667
- const f = Math.sqrt(x), A = Math.atan2(f, y), p = Math.sin((1 - i) * A) / f, N = Math.sin(i * A) / f;
1667
+ const d = Math.sqrt(x), A = Math.atan2(d, y), p = Math.sin((1 - i) * A) / d, N = Math.sin(i * A) / d;
1668
1668
  return this._w = g * p + this._w * N, this._x = a * p + this._x * N, this._y = u * p + this._y * N, this._z = _ * p + this._z * N, this._onChangeCallback(), this;
1669
1669
  }
1670
1670
  /**
@@ -1980,7 +1980,7 @@ const te = class te {
1980
1980
  * @param m Input one 4x4 matrix
1981
1981
  * @returns Return this vector
1982
1982
  */
1983
- applyMatrix3d(e) {
1983
+ applyMatrix4(e) {
1984
1984
  const i = this.x, a = this.y, u = this.z, _ = e.elements, g = 1 / (_[3] * i + _[7] * a + _[11] * u + _[15]);
1985
1985
  return this.x = (_[0] * i + _[4] * a + _[8] * u + _[12]) * g, this.y = (_[1] * i + _[5] * a + _[9] * u + _[13]) * g, this.z = (_[2] * i + _[6] * a + _[10] * u + _[14]) * g, this;
1986
1986
  }
@@ -1990,8 +1990,8 @@ const te = class te {
1990
1990
  * @returns Return this vector
1991
1991
  */
1992
1992
  applyQuaternion(e) {
1993
- const i = this.x, a = this.y, u = this.z, _ = e.x, g = e.y, y = e.z, x = e.w, f = 2 * (g * u - y * a), A = 2 * (y * i - _ * u), p = 2 * (_ * a - g * i);
1994
- return this.x = i + x * f + g * p - y * A, this.y = a + x * A + y * f - _ * p, this.z = u + x * p + _ * A - g * f, this;
1993
+ const i = this.x, a = this.y, u = this.z, _ = e.x, g = e.y, y = e.z, x = e.w, d = 2 * (g * u - y * a), A = 2 * (y * i - _ * u), p = 2 * (_ * a - g * i);
1994
+ return this.x = i + x * d + g * p - y * A, this.y = a + x * A + y * d - _ * p, this.z = u + x * p + _ * A - g * d, this;
1995
1995
  }
1996
1996
  /**
1997
1997
  * Transforms the direction of this vector by a matrix (the upper left 3 x 3 subset of a m) and
@@ -2223,7 +2223,7 @@ const te = class te {
2223
2223
  * @returns Return this vector
2224
2224
  */
2225
2225
  projectOnPlane(e) {
2226
- return fr.copy(this).projectOnVector(e), this.sub(fr);
2226
+ return dr.copy(this).projectOnVector(e), this.sub(dr);
2227
2227
  }
2228
2228
  /**
2229
2229
  * Reflect this vector off of plane orthogonal to normal. Normal is assumed to have unit length.
@@ -2231,7 +2231,7 @@ const te = class te {
2231
2231
  * @returns Return this vector
2232
2232
  */
2233
2233
  reflect(e) {
2234
- return this.sub(fr.copy(e).multiplyScalar(2 * this.dot(e)));
2234
+ return this.sub(dr.copy(e).multiplyScalar(2 * this.dot(e)));
2235
2235
  }
2236
2236
  /**
2237
2237
  * Return the angle between this vector and vector v in radians.
@@ -2374,7 +2374,7 @@ const te = class te {
2374
2374
  };
2375
2375
  te.X_AXIS = Object.freeze(new te(1, 0, 0)), te.NEGATIVE_X_AXIS = Object.freeze(new te(-1, 0, 0)), te.Y_AXIS = Object.freeze(new te(0, 1, 0)), te.NEGATIVE_Y_AXIS = Object.freeze(new te(0, -1, 0)), te.Z_AXIS = Object.freeze(new te(0, 0, 1)), te.NEGATIVE_Z_AXIS = Object.freeze(new te(0, 0, -1));
2376
2376
  let Q = te;
2377
- const fr = /* @__PURE__ */ new Q(), Rr = /* @__PURE__ */ new ir(), qn = class qn {
2377
+ const dr = /* @__PURE__ */ new Q(), Rr = /* @__PURE__ */ new ir(), qn = class qn {
2378
2378
  /**
2379
2379
  * Create a 4x4 matrix with the given arguments in row-major order. If no arguments are provided,
2380
2380
  * the constructor initializes the Matrix4 to the 4x4 identity matrix.
@@ -2396,8 +2396,8 @@ const fr = /* @__PURE__ */ new Q(), Rr = /* @__PURE__ */ new ir(), qn = class qn
2396
2396
  * @param n43 Input element in the forth row and the third column
2397
2397
  * @param n44 Input element in the forth row and the forth column
2398
2398
  */
2399
- constructor(e, i, a, u, _, g, y, x, f, A, p, N, k, U, K, Y) {
2400
- this.elements = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1], e != null && i != null && a != null && u != null && _ != null && g != null && y != null && x != null && f != null && A != null && p != null && N != null && k != null && U != null && K != null && Y != null && this.set(
2399
+ constructor(e, i, a, u, _, g, y, x, d, A, p, N, k, U, K, Y) {
2400
+ this.elements = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1], e != null && i != null && a != null && u != null && _ != null && g != null && y != null && x != null && d != null && A != null && p != null && N != null && k != null && U != null && K != null && Y != null && this.set(
2401
2401
  e,
2402
2402
  i,
2403
2403
  a,
@@ -2406,7 +2406,7 @@ const fr = /* @__PURE__ */ new Q(), Rr = /* @__PURE__ */ new ir(), qn = class qn
2406
2406
  g,
2407
2407
  y,
2408
2408
  x,
2409
- f,
2409
+ d,
2410
2410
  A,
2411
2411
  p,
2412
2412
  N,
@@ -2437,9 +2437,9 @@ const fr = /* @__PURE__ */ new Q(), Rr = /* @__PURE__ */ new ir(), qn = class qn
2437
2437
  * @param n44 Input element in the forth row and the forth column
2438
2438
  * @returns Return this matrix
2439
2439
  */
2440
- set(e, i, a, u, _, g, y, x, f, A, p, N, k, U, K, Y) {
2440
+ set(e, i, a, u, _, g, y, x, d, A, p, N, k, U, K, Y) {
2441
2441
  const W = this.elements;
2442
- return W[0] = e, W[4] = i, W[8] = a, W[12] = u, W[1] = _, W[5] = g, W[9] = y, W[13] = x, W[2] = f, W[6] = A, W[10] = p, W[14] = N, W[3] = k, W[7] = U, W[11] = K, W[15] = Y, this;
2442
+ return W[0] = e, W[4] = i, W[8] = a, W[12] = u, W[1] = _, W[5] = g, W[9] = y, W[13] = x, W[2] = d, W[6] = A, W[10] = p, W[14] = N, W[3] = k, W[7] = U, W[11] = K, W[15] = Y, this;
2443
2443
  }
2444
2444
  /**
2445
2445
  * Reset this matrix to the identity matrix.
@@ -2723,8 +2723,8 @@ const fr = /* @__PURE__ */ new Q(), Rr = /* @__PURE__ */ new ir(), qn = class qn
2723
2723
  * @returns Return this matrix
2724
2724
  */
2725
2725
  multiplyMatrices(e, i) {
2726
- const a = e.elements, u = i.elements, _ = this.elements, g = a[0], y = a[4], x = a[8], f = a[12], A = a[1], p = a[5], N = a[9], k = a[13], U = a[2], K = a[6], Y = a[10], W = a[14], yt = a[3], Mt = a[7], ft = a[11], Z = a[15], ut = u[0], ht = u[4], Lt = u[8], Kt = u[12], Tt = u[1], Gt = u[5], Yt = u[9], ie = u[13], se = u[2], ae = u[6], Dt = u[10], jt = u[14], X = u[3], wt = u[7], Wt = u[11], Ae = u[15];
2727
- return _[0] = g * ut + y * Tt + x * se + f * X, _[4] = g * ht + y * Gt + x * ae + f * wt, _[8] = g * Lt + y * Yt + x * Dt + f * Wt, _[12] = g * Kt + y * ie + x * jt + f * Ae, _[1] = A * ut + p * Tt + N * se + k * X, _[5] = A * ht + p * Gt + N * ae + k * wt, _[9] = A * Lt + p * Yt + N * Dt + k * Wt, _[13] = A * Kt + p * ie + N * jt + k * Ae, _[2] = U * ut + K * Tt + Y * se + W * X, _[6] = U * ht + K * Gt + Y * ae + W * wt, _[10] = U * Lt + K * Yt + Y * Dt + W * Wt, _[14] = U * Kt + K * ie + Y * jt + W * Ae, _[3] = yt * ut + Mt * Tt + ft * se + Z * X, _[7] = yt * ht + Mt * Gt + ft * ae + Z * wt, _[11] = yt * Lt + Mt * Yt + ft * Dt + Z * Wt, _[15] = yt * Kt + Mt * ie + ft * jt + Z * Ae, this;
2726
+ const a = e.elements, u = i.elements, _ = this.elements, g = a[0], y = a[4], x = a[8], d = a[12], A = a[1], p = a[5], N = a[9], k = a[13], U = a[2], K = a[6], Y = a[10], W = a[14], yt = a[3], Mt = a[7], dt = a[11], Z = a[15], ut = u[0], ht = u[4], Lt = u[8], Kt = u[12], Tt = u[1], Gt = u[5], Yt = u[9], ie = u[13], se = u[2], ae = u[6], Dt = u[10], jt = u[14], X = u[3], wt = u[7], Wt = u[11], Ae = u[15];
2727
+ return _[0] = g * ut + y * Tt + x * se + d * X, _[4] = g * ht + y * Gt + x * ae + d * wt, _[8] = g * Lt + y * Yt + x * Dt + d * Wt, _[12] = g * Kt + y * ie + x * jt + d * Ae, _[1] = A * ut + p * Tt + N * se + k * X, _[5] = A * ht + p * Gt + N * ae + k * wt, _[9] = A * Lt + p * Yt + N * Dt + k * Wt, _[13] = A * Kt + p * ie + N * jt + k * Ae, _[2] = U * ut + K * Tt + Y * se + W * X, _[6] = U * ht + K * Gt + Y * ae + W * wt, _[10] = U * Lt + K * Yt + Y * Dt + W * Wt, _[14] = U * Kt + K * ie + Y * jt + W * Ae, _[3] = yt * ut + Mt * Tt + dt * se + Z * X, _[7] = yt * ht + Mt * Gt + dt * ae + Z * wt, _[11] = yt * Lt + Mt * Yt + dt * Dt + Z * Wt, _[15] = yt * Kt + Mt * ie + dt * jt + Z * Ae, this;
2728
2728
  }
2729
2729
  /**
2730
2730
  * Multiply every component of the matrix by a scalar value s.
@@ -2740,8 +2740,8 @@ const fr = /* @__PURE__ */ new Q(), Rr = /* @__PURE__ */ new ir(), qn = class qn
2740
2740
  * @returns Return the determinant of this matrix.
2741
2741
  */
2742
2742
  determinant() {
2743
- const e = this.elements, i = e[0], a = e[4], u = e[8], _ = e[12], g = e[1], y = e[5], x = e[9], f = e[13], A = e[2], p = e[6], N = e[10], k = e[14], U = e[3], K = e[7], Y = e[11], W = e[15];
2744
- return U * (+_ * x * p - u * f * p - _ * y * N + a * f * N + u * y * k - a * x * k) + K * (+i * x * k - i * f * N + _ * g * N - u * g * k + u * f * A - _ * x * A) + Y * (+i * f * p - i * y * k - _ * g * p + a * g * k + _ * y * A - a * f * A) + W * (-u * y * A - i * x * p + i * y * N + u * g * p - a * g * N + a * x * A);
2743
+ const e = this.elements, i = e[0], a = e[4], u = e[8], _ = e[12], g = e[1], y = e[5], x = e[9], d = e[13], A = e[2], p = e[6], N = e[10], k = e[14], U = e[3], K = e[7], Y = e[11], W = e[15];
2744
+ return U * (+_ * x * p - u * d * p - _ * y * N + a * d * N + u * y * k - a * x * k) + K * (+i * x * k - i * d * N + _ * g * N - u * g * k + u * d * A - _ * x * A) + Y * (+i * d * p - i * y * k - _ * g * p + a * g * k + _ * y * A - a * d * A) + W * (-u * y * A - i * x * p + i * y * N + u * g * p - a * g * N + a * x * A);
2745
2745
  }
2746
2746
  /**
2747
2747
  * Transposes this matrix.
@@ -2769,11 +2769,11 @@ const fr = /* @__PURE__ */ new Q(), Rr = /* @__PURE__ */ new ir(), qn = class qn
2769
2769
  * @returns Return this matrix
2770
2770
  */
2771
2771
  invert() {
2772
- const e = this.elements, i = e[0], a = e[1], u = e[2], _ = e[3], g = e[4], y = e[5], x = e[6], f = e[7], A = e[8], p = e[9], N = e[10], k = e[11], U = e[12], K = e[13], Y = e[14], W = e[15], yt = p * Y * f - K * N * f + K * x * k - y * Y * k - p * x * W + y * N * W, Mt = U * N * f - A * Y * f - U * x * k + g * Y * k + A * x * W - g * N * W, ft = A * K * f - U * p * f + U * y * k - g * K * k - A * y * W + g * p * W, Z = U * p * x - A * K * x - U * y * N + g * K * N + A * y * Y - g * p * Y, ut = i * yt + a * Mt + u * ft + _ * Z;
2772
+ const e = this.elements, i = e[0], a = e[1], u = e[2], _ = e[3], g = e[4], y = e[5], x = e[6], d = e[7], A = e[8], p = e[9], N = e[10], k = e[11], U = e[12], K = e[13], Y = e[14], W = e[15], yt = p * Y * d - K * N * d + K * x * k - y * Y * k - p * x * W + y * N * W, Mt = U * N * d - A * Y * d - U * x * k + g * Y * k + A * x * W - g * N * W, dt = A * K * d - U * p * d + U * y * k - g * K * k - A * y * W + g * p * W, Z = U * p * x - A * K * x - U * y * N + g * K * N + A * y * Y - g * p * Y, ut = i * yt + a * Mt + u * dt + _ * Z;
2773
2773
  if (ut === 0)
2774
2774
  return this.set(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
2775
2775
  const ht = 1 / ut;
2776
- return e[0] = yt * ht, e[1] = (K * N * _ - p * Y * _ - K * u * k + a * Y * k + p * u * W - a * N * W) * ht, e[2] = (y * Y * _ - K * x * _ + K * u * f - a * Y * f - y * u * W + a * x * W) * ht, e[3] = (p * x * _ - y * N * _ - p * u * f + a * N * f + y * u * k - a * x * k) * ht, e[4] = Mt * ht, e[5] = (A * Y * _ - U * N * _ + U * u * k - i * Y * k - A * u * W + i * N * W) * ht, e[6] = (U * x * _ - g * Y * _ - U * u * f + i * Y * f + g * u * W - i * x * W) * ht, e[7] = (g * N * _ - A * x * _ + A * u * f - i * N * f - g * u * k + i * x * k) * ht, e[8] = ft * ht, e[9] = (U * p * _ - A * K * _ - U * a * k + i * K * k + A * a * W - i * p * W) * ht, e[10] = (g * K * _ - U * y * _ + U * a * f - i * K * f - g * a * W + i * y * W) * ht, e[11] = (A * y * _ - g * p * _ - A * a * f + i * p * f + g * a * k - i * y * k) * ht, e[12] = Z * ht, e[13] = (A * K * u - U * p * u + U * a * N - i * K * N - A * a * Y + i * p * Y) * ht, e[14] = (U * y * u - g * K * u - U * a * x + i * K * x + g * a * Y - i * y * Y) * ht, e[15] = (g * p * u - A * y * u + A * a * x - i * p * x - g * a * N + i * y * N) * ht, this;
2776
+ return e[0] = yt * ht, e[1] = (K * N * _ - p * Y * _ - K * u * k + a * Y * k + p * u * W - a * N * W) * ht, e[2] = (y * Y * _ - K * x * _ + K * u * d - a * Y * d - y * u * W + a * x * W) * ht, e[3] = (p * x * _ - y * N * _ - p * u * d + a * N * d + y * u * k - a * x * k) * ht, e[4] = Mt * ht, e[5] = (A * Y * _ - U * N * _ + U * u * k - i * Y * k - A * u * W + i * N * W) * ht, e[6] = (U * x * _ - g * Y * _ - U * u * d + i * Y * d + g * u * W - i * x * W) * ht, e[7] = (g * N * _ - A * x * _ + A * u * d - i * N * d - g * u * k + i * x * k) * ht, e[8] = dt * ht, e[9] = (U * p * _ - A * K * _ - U * a * k + i * K * k + A * a * W - i * p * W) * ht, e[10] = (g * K * _ - U * y * _ + U * a * d - i * K * d - g * a * W + i * y * W) * ht, e[11] = (A * y * _ - g * p * _ - A * a * d + i * p * d + g * a * k - i * y * k) * ht, e[12] = Z * ht, e[13] = (A * K * u - U * p * u + U * a * N - i * K * N - A * a * Y + i * p * Y) * ht, e[14] = (U * y * u - g * K * u - U * a * x + i * K * x + g * a * Y - i * y * Y) * ht, e[15] = (g * p * u - A * y * u + A * a * x - i * p * x - g * a * N + i * y * N) * ht, this;
2777
2777
  }
2778
2778
  /**
2779
2779
  * Multiply the columns of this matrix by vector v.
@@ -2836,17 +2836,17 @@ const fr = /* @__PURE__ */ new Q(), Rr = /* @__PURE__ */ new ir(), qn = class qn
2836
2836
  * @returns Return this matrix
2837
2837
  */
2838
2838
  makeRotationAxis(e, i) {
2839
- const a = Math.cos(i), u = Math.sin(i), _ = 1 - a, g = e.x, y = e.y, x = e.z, f = _ * g, A = _ * y;
2839
+ const a = Math.cos(i), u = Math.sin(i), _ = 1 - a, g = e.x, y = e.y, x = e.z, d = _ * g, A = _ * y;
2840
2840
  return this.set(
2841
- f * g + a,
2842
- f * y - u * x,
2843
- f * x + u * y,
2841
+ d * g + a,
2842
+ d * y - u * x,
2843
+ d * x + u * y,
2844
2844
  0,
2845
- f * y + u * x,
2845
+ d * y + u * x,
2846
2846
  A * y + a,
2847
2847
  A * x - u * g,
2848
2848
  0,
2849
- f * x - u * y,
2849
+ d * x - u * y,
2850
2850
  A * x + u * g,
2851
2851
  _ * x * x + a,
2852
2852
  0,
@@ -2887,8 +2887,8 @@ const fr = /* @__PURE__ */ new Q(), Rr = /* @__PURE__ */ new ir(), qn = class qn
2887
2887
  * @returns Return this matrix
2888
2888
  */
2889
2889
  compose(e, i, a) {
2890
- const u = this.elements, _ = i.x, g = i.y, y = i.z, x = i.w, f = _ + _, A = g + g, p = y + y, N = _ * f, k = _ * A, U = _ * p, K = g * A, Y = g * p, W = y * p, yt = x * f, Mt = x * A, ft = x * p, Z = a.x, ut = a.y, ht = a.z;
2891
- return u[0] = (1 - (K + W)) * Z, u[1] = (k + ft) * Z, u[2] = (U - Mt) * Z, u[3] = 0, u[4] = (k - ft) * ut, u[5] = (1 - (N + W)) * ut, u[6] = (Y + yt) * ut, u[7] = 0, u[8] = (U + Mt) * ht, u[9] = (Y - yt) * ht, u[10] = (1 - (N + K)) * ht, u[11] = 0, u[12] = e.x, u[13] = e.y, u[14] = e.z, u[15] = 1, this;
2890
+ const u = this.elements, _ = i.x, g = i.y, y = i.z, x = i.w, d = _ + _, A = g + g, p = y + y, N = _ * d, k = _ * A, U = _ * p, K = g * A, Y = g * p, W = y * p, yt = x * d, Mt = x * A, dt = x * p, Z = a.x, ut = a.y, ht = a.z;
2891
+ return u[0] = (1 - (K + W)) * Z, u[1] = (k + dt) * Z, u[2] = (U - Mt) * Z, u[3] = 0, u[4] = (k - dt) * ut, u[5] = (1 - (N + W)) * ut, u[6] = (Y + yt) * ut, u[7] = 0, u[8] = (U + Mt) * ht, u[9] = (Y - yt) * ht, u[10] = (1 - (N + K)) * ht, u[11] = 0, u[12] = e.x, u[13] = e.y, u[14] = e.z, u[15] = 1, this;
2892
2892
  }
2893
2893
  /**
2894
2894
  * Decompose this matrix into its position, quaternion and scale components.
@@ -2906,8 +2906,8 @@ const fr = /* @__PURE__ */ new Q(), Rr = /* @__PURE__ */ new ir(), qn = class qn
2906
2906
  let _ = mn.set(u[0], u[1], u[2]).length();
2907
2907
  const g = mn.set(u[4], u[5], u[6]).length(), y = mn.set(u[8], u[9], u[10]).length();
2908
2908
  this.determinant() < 0 && (_ = -_), e.x = u[12], e.y = u[13], e.z = u[14], xe.copy(this);
2909
- const f = 1 / _, A = 1 / g, p = 1 / y;
2910
- return xe.elements[0] *= f, xe.elements[1] *= f, xe.elements[2] *= f, xe.elements[4] *= A, xe.elements[5] *= A, xe.elements[6] *= A, xe.elements[8] *= p, xe.elements[9] *= p, xe.elements[10] *= p, i.setFromRotationMatrix(xe), a.x = _, a.y = g, a.z = y, this;
2909
+ const d = 1 / _, A = 1 / g, p = 1 / y;
2910
+ return xe.elements[0] *= d, xe.elements[1] *= d, xe.elements[2] *= d, xe.elements[4] *= A, xe.elements[5] *= A, xe.elements[6] *= A, xe.elements[8] *= p, xe.elements[9] *= p, xe.elements[10] *= p, i.setFromRotationMatrix(xe), a.x = _, a.y = g, a.z = y, this;
2911
2911
  }
2912
2912
  // makePerspective(
2913
2913
  // left,
@@ -3264,7 +3264,7 @@ class Ue {
3264
3264
  * @returns Return this box
3265
3265
  */
3266
3266
  applyMatrix4(e) {
3267
- return this.isEmpty() ? this : (Te[0].set(this.min.x, this.min.y, this.min.z).applyMatrix3d(e), Te[1].set(this.min.x, this.min.y, this.max.z).applyMatrix3d(e), Te[2].set(this.min.x, this.max.y, this.min.z).applyMatrix3d(e), Te[3].set(this.min.x, this.max.y, this.max.z).applyMatrix3d(e), Te[4].set(this.max.x, this.min.y, this.min.z).applyMatrix3d(e), Te[5].set(this.max.x, this.min.y, this.max.z).applyMatrix3d(e), Te[6].set(this.max.x, this.max.y, this.min.z).applyMatrix3d(e), Te[7].set(this.max.x, this.max.y, this.max.z).applyMatrix3d(e), this.setFromPoints(Te), this);
3267
+ return this.isEmpty() ? this : (Te[0].set(this.min.x, this.min.y, this.min.z).applyMatrix4(e), Te[1].set(this.min.x, this.min.y, this.max.z).applyMatrix4(e), Te[2].set(this.min.x, this.max.y, this.min.z).applyMatrix4(e), Te[3].set(this.min.x, this.max.y, this.max.z).applyMatrix4(e), Te[4].set(this.max.x, this.min.y, this.min.z).applyMatrix4(e), Te[5].set(this.max.x, this.min.y, this.max.z).applyMatrix4(e), Te[6].set(this.max.x, this.max.y, this.min.z).applyMatrix4(e), Te[7].set(this.max.x, this.max.y, this.max.z).applyMatrix4(e), this.setFromPoints(Te), this);
3268
3268
  }
3269
3269
  /**
3270
3270
  * Add offset to both the upper and lower bounds of this box, effectively moving this box offset units
@@ -3662,7 +3662,7 @@ class sr {
3662
3662
  * @returns Return this plane
3663
3663
  */
3664
3664
  applyMatrix4(e, i) {
3665
- const a = i || Hi.getNormalMatrix(e), u = this.coplanarPoint(Dr).applyMatrix3d(e), _ = this.normal.applyMatrix3(a).normalize();
3665
+ const a = i || Hi.getNormalMatrix(e), u = this.coplanarPoint(Dr).applyMatrix4(e), _ = this.normal.applyMatrix3(a).normalize();
3666
3666
  return this.constant = -u.dot(_), this;
3667
3667
  }
3668
3668
  /**
@@ -3809,25 +3809,25 @@ const Fr = /* @__PURE__ */ new Xn(), Or = /* @__PURE__ */ new ir(), Gn = class G
3809
3809
  * @returns Return this euler
3810
3810
  */
3811
3811
  setFromRotationMatrix(e, i = this._order, a = !0) {
3812
- const u = e.elements, _ = u[0], g = u[4], y = u[8], x = u[1], f = u[5], A = u[9], p = u[2], N = u[6], k = u[10];
3812
+ const u = e.elements, _ = u[0], g = u[4], y = u[8], x = u[1], d = u[5], A = u[9], p = u[2], N = u[6], k = u[10];
3813
3813
  switch (i) {
3814
3814
  case "XYZ":
3815
- this._y = Math.asin(Ze(y, -1, 1)), Math.abs(y) < 0.9999999 ? (this._x = Math.atan2(-A, k), this._z = Math.atan2(-g, _)) : (this._x = Math.atan2(N, f), this._z = 0);
3815
+ this._y = Math.asin(Ze(y, -1, 1)), Math.abs(y) < 0.9999999 ? (this._x = Math.atan2(-A, k), this._z = Math.atan2(-g, _)) : (this._x = Math.atan2(N, d), this._z = 0);
3816
3816
  break;
3817
3817
  case "YXZ":
3818
- this._x = Math.asin(-Ze(A, -1, 1)), Math.abs(A) < 0.9999999 ? (this._y = Math.atan2(y, k), this._z = Math.atan2(x, f)) : (this._y = Math.atan2(-p, _), this._z = 0);
3818
+ this._x = Math.asin(-Ze(A, -1, 1)), Math.abs(A) < 0.9999999 ? (this._y = Math.atan2(y, k), this._z = Math.atan2(x, d)) : (this._y = Math.atan2(-p, _), this._z = 0);
3819
3819
  break;
3820
3820
  case "ZXY":
3821
- this._x = Math.asin(Ze(N, -1, 1)), Math.abs(N) < 0.9999999 ? (this._y = Math.atan2(-p, k), this._z = Math.atan2(-g, f)) : (this._y = 0, this._z = Math.atan2(x, _));
3821
+ this._x = Math.asin(Ze(N, -1, 1)), Math.abs(N) < 0.9999999 ? (this._y = Math.atan2(-p, k), this._z = Math.atan2(-g, d)) : (this._y = 0, this._z = Math.atan2(x, _));
3822
3822
  break;
3823
3823
  case "ZYX":
3824
- this._y = Math.asin(-Ze(p, -1, 1)), Math.abs(p) < 0.9999999 ? (this._x = Math.atan2(N, k), this._z = Math.atan2(x, _)) : (this._x = 0, this._z = Math.atan2(-g, f));
3824
+ this._y = Math.asin(-Ze(p, -1, 1)), Math.abs(p) < 0.9999999 ? (this._x = Math.atan2(N, k), this._z = Math.atan2(x, _)) : (this._x = 0, this._z = Math.atan2(-g, d));
3825
3825
  break;
3826
3826
  case "YZX":
3827
- this._z = Math.asin(Ze(x, -1, 1)), Math.abs(x) < 0.9999999 ? (this._x = Math.atan2(-A, f), this._y = Math.atan2(-p, _)) : (this._x = 0, this._y = Math.atan2(y, k));
3827
+ this._z = Math.asin(Ze(x, -1, 1)), Math.abs(x) < 0.9999999 ? (this._x = Math.atan2(-A, d), this._y = Math.atan2(-p, _)) : (this._x = 0, this._y = Math.atan2(y, k));
3828
3828
  break;
3829
3829
  case "XZY":
3830
- this._z = Math.asin(-Ze(g, -1, 1)), Math.abs(g) < 0.9999999 ? (this._x = Math.atan2(N, f), this._y = Math.atan2(y, _)) : (this._x = Math.atan2(-A, k), this._y = 0);
3830
+ this._z = Math.asin(-Ze(g, -1, 1)), Math.abs(g) < 0.9999999 ? (this._x = Math.atan2(N, d), this._y = Math.atan2(y, _)) : (this._x = Math.atan2(-A, k), this._y = 0);
3831
3831
  break;
3832
3832
  default:
3833
3833
  console.warn(
@@ -4003,7 +4003,7 @@ class is extends ti {
4003
4003
  });
4004
4004
  const g = { index: -1, children: [] };
4005
4005
  for (let x = 0; x < _; x++) {
4006
- const f = a[x], A = e[f], p = i[f];
4006
+ const d = a[x], A = e[d], p = i[d];
4007
4007
  let N = x + 1;
4008
4008
  for (; N < _; N++) {
4009
4009
  const k = a[N], U = e[k];
@@ -4011,11 +4011,11 @@ class is extends ti {
4011
4011
  A[It.randInt(0, A.length - 1)],
4012
4012
  U
4013
4013
  )) {
4014
- (y = u.get(k)) == null || y.children.push(u.get(f));
4014
+ (y = u.get(k)) == null || y.children.push(u.get(d));
4015
4015
  break;
4016
4016
  }
4017
4017
  }
4018
- N === _ && g.children.push(u.get(f));
4018
+ N === _ && g.children.push(u.get(d));
4019
4019
  }
4020
4020
  return g;
4021
4021
  }
@@ -4144,11 +4144,11 @@ class jn extends ti {
4144
4144
  const _ = a.length;
4145
4145
  let g;
4146
4146
  i ? g = i : g = e * a[_ - 1];
4147
- let y = 0, x = _ - 1, f;
4147
+ let y = 0, x = _ - 1, d;
4148
4148
  for (; y <= x; )
4149
- if (u = Math.floor(y + (x - y) / 2), f = a[u] - g, f < 0)
4149
+ if (u = Math.floor(y + (x - y) / 2), d = a[u] - g, d < 0)
4150
4150
  y = u + 1;
4151
- else if (f > 0)
4151
+ else if (d > 0)
4152
4152
  x = u - 1;
4153
4153
  else {
4154
4154
  x = u;
@@ -4214,12 +4214,12 @@ class nr extends jn {
4214
4214
  const u = (ht, Lt) => ({
4215
4215
  x: (ht.x + Lt.x) / 2,
4216
4216
  y: (ht.y + Lt.y) / 2
4217
- }), _ = (ht, Lt) => (Lt.y - ht.y) / (Lt.x - ht.x), g = (ht) => -1 / ht, y = u(e, i), x = u(i, a), f = _(e, i), A = _(i, a), p = g(f), N = g(A), k = (ht, Lt, Kt, Tt) => {
4217
+ }), _ = (ht, Lt) => (Lt.y - ht.y) / (Lt.x - ht.x), g = (ht) => -1 / ht, y = u(e, i), x = u(i, a), d = _(e, i), A = _(i, a), p = g(d), N = g(A), k = (ht, Lt, Kt, Tt) => {
4218
4218
  const Gt = (Tt - Lt) / (ht - Kt), Yt = ht * Gt + Lt;
4219
4219
  return { x: Gt, y: Yt };
4220
4220
  }, U = y.y - p * y.x, K = x.y - N * x.x, Y = k(p, U, N, K), W = Math.sqrt(
4221
4221
  Math.pow(e.x - Y.x, 2) + Math.pow(e.y - Y.y, 2)
4222
- ), yt = (ht, Lt) => Math.atan2(ht.y - Lt.y, ht.x - Lt.x), Mt = yt(e, Y), ft = yt(i, Y), Z = yt(a, Y), ut = Z > Mt && Z < ft || Mt > Z && Mt < ft || ft > Z && ft < Mt;
4222
+ ), yt = (ht, Lt) => Math.atan2(ht.y - Lt.y, ht.x - Lt.x), Mt = yt(e, Y), dt = yt(i, Y), Z = yt(a, Y), ut = Z > Mt && Z < dt || Mt > Z && Mt < dt || dt > Z && dt < Mt;
4223
4223
  this.center = Y, this.radius = W, this._clockwise = !ut, this._startAngle = Mt, this._endAngle = Z;
4224
4224
  }
4225
4225
  /**
@@ -4236,20 +4236,20 @@ class nr extends jn {
4236
4236
  createByStartEndPointsAndBulge(e, i, a) {
4237
4237
  let u, _, g;
4238
4238
  a < 0 ? (u = Math.atan(-a) * 4, _ = new Rt(e), g = new Rt(i)) : (u = Math.atan(a) * 4, _ = new Rt(i), g = new Rt(e));
4239
- const y = new Rt().subVectors(g, _), x = y.length(), f = new Rt().addVectors(_, y.multiplyScalar(0.5)), A = Math.abs(x / 2 / Math.tan(u / 2)), p = y.normalize();
4239
+ const y = new Rt().subVectors(g, _), x = y.length(), d = new Rt().addVectors(_, y.multiplyScalar(0.5)), A = Math.abs(x / 2 / Math.tan(u / 2)), p = y.normalize();
4240
4240
  let N;
4241
4241
  if (u < Math.PI) {
4242
4242
  const k = new Rt(
4243
4243
  p.x * Math.cos(Math.PI / 2) - p.y * Math.sin(Math.PI / 2),
4244
4244
  p.y * Math.cos(Math.PI / 2) + p.x * Math.sin(Math.PI / 2)
4245
4245
  );
4246
- N = f.add(k.multiplyScalar(-A));
4246
+ N = d.add(k.multiplyScalar(-A));
4247
4247
  } else {
4248
4248
  const k = new Rt(
4249
4249
  p.x * Math.cos(Math.PI / 2) - p.y * Math.sin(Math.PI / 2),
4250
4250
  p.y * Math.cos(Math.PI / 2) + p.x * Math.sin(Math.PI / 2)
4251
4251
  );
4252
- N = f.add(k.multiplyScalar(A));
4252
+ N = d.add(k.multiplyScalar(A));
4253
4253
  }
4254
4254
  a < 0 ? (this._startAngle = Math.atan2(_.y - N.y, _.x - N.x), this._endAngle = Math.atan2(g.y - N.y, g.x - N.x)) : (this._startAngle = Math.atan2(g.y - N.y, g.x - N.x), this._endAngle = Math.atan2(_.y - N.y, _.x - N.x)), this._clockwise = a < 0, this.center = N, this.radius = g.sub(N).length();
4255
4255
  }
@@ -4635,7 +4635,7 @@ class rr extends Wn {
4635
4635
  * @inheritdoc
4636
4636
  */
4637
4637
  transform(e) {
4638
- return this._start.applyMatrix3d(e), this._end.applyMatrix3d(e), this._boundingBoxNeedsUpdate = !0, this;
4638
+ return this._start.applyMatrix4(e), this._end.applyMatrix4(e), this._boundingBoxNeedsUpdate = !0, this;
4639
4639
  }
4640
4640
  /**
4641
4641
  * @inheritdoc
@@ -4669,7 +4669,7 @@ class er extends Wn {
4669
4669
  const u = new Q().addVectors(e, i).multiplyScalar(0.5), _ = new Q().addVectors(e, a).multiplyScalar(0.5), g = new Q().subVectors(i, e), y = new Q().subVectors(a, e), x = new Q().crossVectors(g, y).normalize();
4670
4670
  if (x.lengthSq() === 0)
4671
4671
  return console.error("Points are collinear and cannot form a valid arc."), null;
4672
- const f = new Q().crossVectors(g, x).normalize(), A = new Q().crossVectors(y, x).normalize(), p = f.clone().multiplyScalar(Number.MAX_SAFE_INTEGER), N = A.clone().multiplyScalar(Number.MAX_SAFE_INTEGER), k = new rr(u, u.clone().add(p)), U = new rr(_, _.clone().add(N)), K = new Q();
4672
+ const d = new Q().crossVectors(g, x).normalize(), A = new Q().crossVectors(y, x).normalize(), p = d.clone().multiplyScalar(Number.MAX_SAFE_INTEGER), N = A.clone().multiplyScalar(Number.MAX_SAFE_INTEGER), k = new rr(u, u.clone().add(p)), U = new rr(_, _.clone().add(N)), K = new Q();
4673
4673
  return k.closestPointToPoint(U.startPoint, !0, K) ? K : (console.error("Cannot find a valid center for the arc."), null);
4674
4674
  }
4675
4675
  /**
@@ -4685,12 +4685,12 @@ class er extends Wn {
4685
4685
  a
4686
4686
  );
4687
4687
  if (u) {
4688
- const _ = u.distanceTo(e), g = new Q().subVectors(e, u), y = new Q().subVectors(i, u), x = Math.atan2(g.y, g.x), f = Math.atan2(y.y, y.x);
4688
+ const _ = u.distanceTo(e), g = new Q().subVectors(e, u), y = new Q().subVectors(i, u), x = Math.atan2(g.y, g.x), d = Math.atan2(y.y, y.x);
4689
4689
  return new er(
4690
4690
  u,
4691
4691
  _,
4692
4692
  x,
4693
- f,
4693
+ d,
4694
4694
  Q.Z_AXIS
4695
4695
  );
4696
4696
  }
@@ -4807,8 +4807,8 @@ class er extends Wn {
4807
4807
  It.isBetweenAngle(x, this.startAngle, this.endAngle) && e.push(x);
4808
4808
  let i = 1 / 0, a = 1 / 0, u = 1 / 0, _ = -1 / 0, g = -1 / 0, y = -1 / 0;
4809
4809
  for (const x of e) {
4810
- const f = this.getPointAtAngle(x);
4811
- f.x < i && (i = f.x), f.y < a && (a = f.y), f.z < u && (u = f.z), f.x > _ && (_ = f.x), f.y > g && (g = f.y), f.z > y && (y = f.z);
4810
+ const d = this.getPointAtAngle(x);
4811
+ d.x < i && (i = d.x), d.y < a && (a = d.y), d.z < u && (u = d.z), d.x > _ && (_ = d.x), d.y > g && (g = d.y), d.z > y && (y = d.z);
4812
4812
  }
4813
4813
  return new Ue(
4814
4814
  { x: i, y: a, z: u },
@@ -4842,7 +4842,7 @@ class er extends Wn {
4842
4842
  */
4843
4843
  transform(e) {
4844
4844
  const i = gr.copy(this.refVec).applyAxisAngle(this.normal, this.startAngle).multiplyScalar(this.radius), a = gr.copy(this.refVec).applyAxisAngle(this.normal, this.endAngle).multiplyScalar(this.radius);
4845
- return this.center.applyMatrix3d(e), i.applyMatrix3d(e), a.applyMatrix3d(e), this.normal.applyMatrix3d(e).normalize(), this.refVec.applyMatrix3d(e).normalize(), this.startAngle = this.getAngle(i), this.endAngle = this.getAngle(a), this._boundingBoxNeedsUpdate = !0, this;
4845
+ return this.center.applyMatrix4(e), i.applyMatrix4(e), a.applyMatrix4(e), this.normal.applyMatrix4(e).normalize(), this.refVec.applyMatrix4(e).normalize(), this.startAngle = this.getAngle(i), this.endAngle = this.getAngle(a), this._boundingBoxNeedsUpdate = !0, this;
4846
4846
  }
4847
4847
  /**
4848
4848
  * @inheritdoc
@@ -5026,8 +5026,8 @@ class ei extends jn {
5026
5026
  const _ = this.startAngle + e * a;
5027
5027
  let g = this.center.x + this.majorAxisRadius * Math.cos(_), y = this.center.y + this.minorAxisRadius * Math.sin(_);
5028
5028
  if (this.rotation !== 0) {
5029
- const x = Math.cos(this.rotation), f = Math.sin(this.rotation), A = g - this.center.x, p = y - this.center.y;
5030
- g = A * x - p * f + this.center.x, y = A * f + p * x + this.center.y;
5029
+ const x = Math.cos(this.rotation), d = Math.sin(this.rotation), A = g - this.center.x, p = y - this.center.y;
5030
+ g = A * x - p * d + this.center.x, y = A * d + p * x + this.center.y;
5031
5031
  }
5032
5032
  return new Vt(g, y);
5033
5033
  }
@@ -5195,8 +5195,8 @@ class ni extends Wn {
5195
5195
  const e = 1e3, i = this.deltaAngle / e;
5196
5196
  let a = 0, u = this.getPointAtAngle(this.startAngle);
5197
5197
  for (let _ = 1; _ <= e; _++) {
5198
- const g = this.startAngle + _ * i, y = this.getPointAtAngle(g), x = y.x - u.x, f = y.y - u.y, A = y.z - u.z;
5199
- a += Math.sqrt(x * x + f * f + A * A), u = y;
5198
+ const g = this.startAngle + _ * i, y = this.getPointAtAngle(g), x = y.x - u.x, d = y.y - u.y, A = y.z - u.z;
5199
+ a += Math.sqrt(x * x + d * d + A * A), u = y;
5200
5200
  }
5201
5201
  return a;
5202
5202
  }
@@ -5212,8 +5212,8 @@ class ni extends Wn {
5212
5212
  It.isBetweenAngle(x, this.startAngle, this.endAngle) && e.push(x);
5213
5213
  let i = 1 / 0, a = 1 / 0, u = 1 / 0, _ = -1 / 0, g = -1 / 0, y = -1 / 0;
5214
5214
  for (const x of e) {
5215
- const f = this.getPointAtAngle(x);
5216
- f.x < i && (i = f.x), f.y < a && (a = f.y), f.z < u && (u = f.z), f.x > _ && (_ = f.x), f.y > g && (g = f.y), f.z > y && (y = f.z);
5215
+ const d = this.getPointAtAngle(x);
5216
+ d.x < i && (i = d.x), d.y < a && (a = d.y), d.z < u && (u = d.z), d.x > _ && (_ = d.x), d.y > g && (g = d.y), d.z > y && (y = d.z);
5217
5217
  }
5218
5218
  return new Ue(
5219
5219
  { x: i, y: a, z: u },
@@ -5222,7 +5222,7 @@ class ni extends Wn {
5222
5222
  } else {
5223
5223
  let i = 1 / 0, a = 1 / 0, u = 1 / 0, _ = -1 / 0, g = -1 / 0, y = -1 / 0;
5224
5224
  for (let x = 0; x <= 100; x++) {
5225
- const f = this.startAngle + this.deltaAngle * (x / 100), A = this.getPointAtAngle(f);
5225
+ const d = this.startAngle + this.deltaAngle * (x / 100), A = this.getPointAtAngle(d);
5226
5226
  i = Math.min(i, A.x), a = Math.min(a, A.y), u = Math.min(u, A.z), _ = Math.max(_, A.x), g = Math.max(g, A.y), y = Math.max(y, A.z);
5227
5227
  }
5228
5228
  return new Ue(
@@ -5428,8 +5428,8 @@ class ss extends jn {
5428
5428
  if (_.bulge) {
5429
5429
  let g = null;
5430
5430
  if (u < a - 1 ? g = this._vertices[u + 1] : u == a - 1 && this.closed && (g = this._vertices[0]), g) {
5431
- const x = new nr(_, g, _.bulge).getPoints(e), f = x.length;
5432
- for (let A = 0; A < f; ++A) {
5431
+ const x = new nr(_, g, _.bulge).getPoints(e), d = x.length;
5432
+ for (let A = 0; A < d; ++A) {
5433
5433
  const p = x[A];
5434
5434
  i.push(new Vt(p.x, p.y));
5435
5435
  }
@@ -5615,24 +5615,24 @@ var ii = { exports: {} };
5615
5615
  if (u() && _(), u() || _()) {
5616
5616
  var g = a;
5617
5617
  if (_()) {
5618
- var y = function(x, f) {
5618
+ var y = function(x, d) {
5619
5619
  var A = a;
5620
5620
  return x.split(".").forEach(function(p) {
5621
5621
  A && (A = A[p]);
5622
- }), A ? A[f] : null;
5622
+ }), A ? A[d] : null;
5623
5623
  };
5624
5624
  onmessage = function(x) {
5625
5625
  if (!(!x.data.className || !x.data.methodName)) {
5626
- var f = y(x.data.className, x.data.methodName);
5627
- if (!f)
5626
+ var d = y(x.data.className, x.data.methodName);
5627
+ if (!d)
5628
5628
  return console.error("could not find " + x.data.className + "." + x.data.methodName);
5629
- postMessage({ result: f.apply(null, x.data.args), id: x.data.id });
5629
+ postMessage({ result: d.apply(null, x.data.args), id: x.data.id });
5630
5630
  }
5631
5631
  };
5632
5632
  }
5633
5633
  }
5634
- return function(x, f, A) {
5635
- f.geom = f.geom || {}, f.exe = f.exe || {}, f.eval = f.eval || {}, f.core = f.core || {}, f.promhx = f.promhx || {};
5634
+ return function(x, d, A) {
5635
+ d.geom = d.geom || {}, d.exe = d.exe || {}, d.eval = d.eval || {}, d.core = d.core || {}, d.promhx = d.promhx || {};
5636
5636
  var p = {}, N = function() {
5637
5637
  return wt.__string_rec(this, "");
5638
5638
  };
@@ -5745,9 +5745,9 @@ var ii = { exports: {} };
5745
5745
  },
5746
5746
  __class__: Mt
5747
5747
  };
5748
- var ft = function() {
5748
+ var dt = function() {
5749
5749
  };
5750
- p.StringTools = ft, ft.__name__ = ["StringTools"], ft.fastCodeAt = function(t, n) {
5750
+ p.StringTools = dt, dt.__name__ = ["StringTools"], dt.fastCodeAt = function(t, n) {
5751
5751
  return t.charCodeAt(n);
5752
5752
  };
5753
5753
  var Z = p.ValueType = { __ename__: ["ValueType"], __constructs__: ["TNull", "TInt", "TFloat", "TBool", "TObject", "TFunction", "TClass", "TEnum", "TUnknown"] };
@@ -5884,8 +5884,8 @@ var ii = { exports: {} };
5884
5884
  var h = 0;
5885
5885
  this.buf.b += "a";
5886
5886
  for (var c = t.length, v = 0; v < c; ) {
5887
- var d = v++;
5888
- t[d] == null ? h++ : (h > 0 && (h == 1 ? this.buf.b += "n" : (this.buf.b += "u", h == null ? this.buf.b += "null" : this.buf.b += "" + h), h = 0), this.serialize(t[d]));
5887
+ var f = v++;
5888
+ t[f] == null ? h++ : (h > 0 && (h == 1 ? this.buf.b += "n" : (this.buf.b += "u", h == null ? this.buf.b += "null" : this.buf.b += "" + h), h = 0), this.serialize(t[f]));
5889
5889
  }
5890
5890
  h > 0 && (h == 1 ? this.buf.b += "n" : (this.buf.b += "u", h == null ? this.buf.b += "null" : this.buf.b += "" + h)), this.buf.b += "h";
5891
5891
  break;
@@ -6094,9 +6094,9 @@ var ii = { exports: {} };
6094
6094
  if (v < 0 || v >= this.cache.length) throw new X("Invalid reference");
6095
6095
  return this.cache[v];
6096
6096
  case 82:
6097
- var d = this.readDigits();
6098
- if (d < 0 || d >= this.scache.length) throw new X("Invalid string reference");
6099
- return this.scache[d];
6097
+ var f = this.readDigits();
6098
+ if (f < 0 || f >= this.scache.length) throw new X("Invalid string reference");
6099
+ return this.scache[f];
6100
6100
  case 120:
6101
6101
  throw new X(this.unserialize());
6102
6102
  case 99:
@@ -6162,17 +6162,17 @@ var ii = { exports: {} };
6162
6162
  var lt = this.pos, mt = tt & 3, kt;
6163
6163
  kt = (tt >> 2) * 3 + (mt >= 2 ? mt - 1 : 0);
6164
6164
  for (var Et = lt + (tt - mt), zt = ae.alloc(kt), Bt = 0; lt < Et; ) {
6165
- var ne = O[ft.fastCodeAt(at, lt++)], de = O[ft.fastCodeAt(at, lt++)];
6166
- zt.set(Bt++, ne << 2 | de >> 4);
6167
- var $t = O[ft.fastCodeAt(at, lt++)];
6168
- zt.set(Bt++, de << 4 | $t >> 2);
6169
- var Qt = O[ft.fastCodeAt(at, lt++)];
6165
+ var ne = O[dt.fastCodeAt(at, lt++)], fe = O[dt.fastCodeAt(at, lt++)];
6166
+ zt.set(Bt++, ne << 2 | fe >> 4);
6167
+ var $t = O[dt.fastCodeAt(at, lt++)];
6168
+ zt.set(Bt++, fe << 4 | $t >> 2);
6169
+ var Qt = O[dt.fastCodeAt(at, lt++)];
6170
6170
  zt.set(Bt++, $t << 6 | Qt);
6171
6171
  }
6172
6172
  if (mt >= 2) {
6173
- var re = O[ft.fastCodeAt(at, lt++)], ue = O[ft.fastCodeAt(at, lt++)];
6173
+ var re = O[dt.fastCodeAt(at, lt++)], ue = O[dt.fastCodeAt(at, lt++)];
6174
6174
  if (zt.set(Bt++, re << 2 | ue >> 4), mt == 3) {
6175
- var pe = O[ft.fastCodeAt(at, lt++)];
6175
+ var pe = O[dt.fastCodeAt(at, lt++)];
6176
6176
  zt.set(Bt++, ue << 4 | pe >> 2);
6177
6177
  }
6178
6178
  }
@@ -6346,13 +6346,13 @@ var ii = { exports: {} };
6346
6346
  }
6347
6347
  return s + ")";
6348
6348
  }
6349
- var v = t.length, d = "[";
6349
+ var v = t.length, f = "[";
6350
6350
  n += " ";
6351
6351
  for (var m = 0; m < v; ) {
6352
6352
  var b = m++;
6353
- d += (b > 0 ? "," : "") + wt.__string_rec(t[b], n);
6353
+ f += (b > 0 ? "," : "") + wt.__string_rec(t[b], n);
6354
6354
  }
6355
- return d += "]", d;
6355
+ return f += "]", f;
6356
6356
  }
6357
6357
  var w;
6358
6358
  try {
@@ -6536,8 +6536,8 @@ var ii = { exports: {} };
6536
6536
  } else if (t instanceof Array && t.__enum__ == null) {
6537
6537
  var v = t;
6538
6538
  if (v.length + n > r.byteLength) throw new X("set() outside of range");
6539
- for (var d = 0, m = v.length; d < m; ) {
6540
- var b = d++;
6539
+ for (var f = 0, m = v.length; f < m; ) {
6540
+ var b = f++;
6541
6541
  r[b + n] = v[b];
6542
6542
  }
6543
6543
  } else throw new X("TODO");
@@ -6566,23 +6566,23 @@ var ii = { exports: {} };
6566
6566
  }, pt.linkAll = function(t, n) {
6567
6567
  for (var r = function(h, c, v) {
6568
6568
  if (h.length == 0 || pt.allFulfilled(h)) {
6569
- for (var d, m = [], b = ge(t)(); b.hasNext(); ) {
6569
+ for (var f, m = [], b = ge(t)(); b.hasNext(); ) {
6570
6570
  var w = b.next();
6571
6571
  m.push(w == c ? v : w._val);
6572
6572
  }
6573
- d = m, n.handleResolve(d);
6573
+ f = m, n.handleResolve(f);
6574
6574
  }
6575
6575
  }, s = ge(t)(); s.hasNext(); ) {
6576
6576
  var o = s.next();
6577
6577
  o._update.push({
6578
6578
  async: n,
6579
6579
  linkf: /* @__PURE__ */ function(h, c, v) {
6580
- return function(d) {
6581
- h(c, v, d);
6580
+ return function(f) {
6581
+ h(c, v, f);
6582
6582
  };
6583
6583
  }(r, function(h) {
6584
- for (var c, v = [], d = ge(t)(); d.hasNext(); ) {
6585
- var m = d.next();
6584
+ for (var c, v = [], f = ge(t)(); f.hasNext(); ) {
6585
+ var m = f.next();
6586
6586
  m != o && v.push(m);
6587
6587
  }
6588
6588
  return c = v, c;
@@ -6590,8 +6590,8 @@ var ii = { exports: {} };
6590
6590
  });
6591
6591
  }
6592
6592
  pt.allFulfilled(t) && n.handleResolve(function(h) {
6593
- for (var c, v = [], d = ge(t)(); d.hasNext(); ) {
6594
- var m = d.next();
6593
+ for (var c, v = [], f = ge(t)(); f.hasNext(); ) {
6594
+ var m = f.next();
6595
6595
  v.push(m._val);
6596
6596
  }
6597
6597
  return c = v, c;
@@ -6653,11 +6653,11 @@ var ii = { exports: {} };
6653
6653
  },
6654
6654
  _resolve: function(t) {
6655
6655
  var n = this;
6656
- this._pending ? dt.enqueue(/* @__PURE__ */ function(r, s) {
6656
+ this._pending ? ft.enqueue(/* @__PURE__ */ function(r, s) {
6657
6657
  return function() {
6658
6658
  r(s);
6659
6659
  };
6660
- }(le(this, this._resolve), t)) : (this._resolved = !0, this._pending = !0, dt.queue.add(function() {
6660
+ }(le(this, this._resolve), t)) : (this._resolved = !0, this._pending = !0, ft.queue.add(function() {
6661
6661
  n._val = t;
6662
6662
  for (var r = 0, s = n._update; r < s.length; ) {
6663
6663
  var o = s[r];
@@ -6669,7 +6669,7 @@ var ii = { exports: {} };
6669
6669
  }
6670
6670
  }
6671
6671
  n._fulfilled = !0, n._pending = !1;
6672
- }), dt.continueOnNextLoop());
6672
+ }), ft.continueOnNextLoop());
6673
6673
  },
6674
6674
  handleError: function(t) {
6675
6675
  this._handleError(t);
@@ -6682,21 +6682,21 @@ var ii = { exports: {} };
6682
6682
  ++o, c(s);
6683
6683
  }
6684
6684
  else if (n._update.length > 0)
6685
- for (var v = 0, d = n._update; v < d.length; ) {
6686
- var m = d[v];
6685
+ for (var v = 0, f = n._update; v < f.length; ) {
6686
+ var m = f[v];
6687
6687
  ++v, m.async.handleError(s);
6688
6688
  }
6689
6689
  else throw new X(s);
6690
6690
  n._errorPending = !1;
6691
6691
  };
6692
- this._errorPending || (this._errorPending = !0, this._errored = !0, this._errorVal = t, dt.queue.add(function() {
6692
+ this._errorPending || (this._errorPending = !0, this._errored = !0, this._errorVal = t, ft.queue.add(function() {
6693
6693
  if (n._errorMap != null) try {
6694
6694
  n._resolve(n._errorMap(t));
6695
6695
  } catch (s) {
6696
6696
  s instanceof X && (s = s.val), r(s);
6697
6697
  }
6698
6698
  else r(t);
6699
- }), dt.continueOnNextLoop());
6699
+ }), ft.continueOnNextLoop());
6700
6700
  },
6701
6701
  then: function(t) {
6702
6702
  var n = new pt(null);
@@ -6704,11 +6704,11 @@ var ii = { exports: {} };
6704
6704
  },
6705
6705
  unlink: function(t) {
6706
6706
  var n = this;
6707
- dt.queue.add(function() {
6707
+ ft.queue.add(function() {
6708
6708
  n._update = n._update.filter(function(r) {
6709
6709
  return r.async != t;
6710
6710
  });
6711
- }), dt.continueOnNextLoop();
6711
+ }), ft.continueOnNextLoop();
6712
6712
  },
6713
6713
  isLinked: function(t) {
6714
6714
  for (var n = !1, r = 0, s = this._update; r < s.length; ) {
@@ -6719,7 +6719,7 @@ var ii = { exports: {} };
6719
6719
  },
6720
6720
  __class__: pt
6721
6721
  };
6722
- var en = f.promhx.Deferred = function() {
6722
+ var en = d.promhx.Deferred = function() {
6723
6723
  pt.call(this);
6724
6724
  };
6725
6725
  p["promhx.Deferred"] = en, en.__name__ = ["promhx", "Deferred"], en.__super__ = pt, en.prototype = k(pt.prototype, {
@@ -6740,7 +6740,7 @@ var ii = { exports: {} };
6740
6740
  },
6741
6741
  __class__: en
6742
6742
  });
6743
- var Ht = f.promhx.Promise = function(t) {
6743
+ var Ht = d.promhx.Promise = function(t) {
6744
6744
  pt.call(this, t), this._rejected = !1;
6745
6745
  };
6746
6746
  p["promhx.Promise"] = Ht, Ht.__name__ = ["promhx", "Promise"], Ht.whenAll = function(t) {
@@ -6769,7 +6769,7 @@ var ii = { exports: {} };
6769
6769
  },
6770
6770
  unlink: function(t) {
6771
6771
  var n = this;
6772
- dt.queue.add(function() {
6772
+ ft.queue.add(function() {
6773
6773
  if (n._fulfilled)
6774
6774
  n._update = n._update.filter(function(s) {
6775
6775
  return s.async != t;
@@ -6778,7 +6778,7 @@ var ii = { exports: {} };
6778
6778
  var r = "Downstream Promise is not fullfilled";
6779
6779
  n.handleError(nn.DownstreamNotFullfilled(r));
6780
6780
  }
6781
- }), dt.continueOnNextLoop();
6781
+ }), ft.continueOnNextLoop();
6782
6782
  },
6783
6783
  handleError: function(t) {
6784
6784
  this._rejected = !0, this._handleError(t);
@@ -6796,7 +6796,7 @@ var ii = { exports: {} };
6796
6796
  },
6797
6797
  __class__: Ht
6798
6798
  });
6799
- var Nt = f.promhx.Stream = function(t) {
6799
+ var Nt = d.promhx.Stream = function(t) {
6800
6800
  pt.call(this, t), this._end_promise = new Ht();
6801
6801
  };
6802
6802
  p["promhx.Stream"] = Nt, Nt.__name__ = ["promhx", "Stream"], Nt.foreach = function(t) {
@@ -6871,7 +6871,7 @@ var ii = { exports: {} };
6871
6871
  },
6872
6872
  handleEnd: function() {
6873
6873
  if (this._pending)
6874
- dt.queue.add(le(this, this.handleEnd)), dt.continueOnNextLoop();
6874
+ ft.queue.add(le(this, this.handleEnd)), ft.continueOnNextLoop();
6875
6875
  else {
6876
6876
  if (this._end_promise._resolved) return;
6877
6877
  this._end = !0;
@@ -6880,7 +6880,7 @@ var ii = { exports: {} };
6880
6880
  }
6881
6881
  },
6882
6882
  end: function() {
6883
- return dt.queue.add(le(this, this.handleEnd)), dt.continueOnNextLoop(), this;
6883
+ return ft.queue.add(le(this, this.handleEnd)), ft.continueOnNextLoop(), this;
6884
6884
  },
6885
6885
  endThen: function(t) {
6886
6886
  return this._end_promise.then(t);
@@ -6918,7 +6918,7 @@ var ii = { exports: {} };
6918
6918
  },
6919
6919
  __class__: Nt
6920
6920
  });
6921
- var Re = f.promhx.PublicStream = function(t) {
6921
+ var Re = d.promhx.PublicStream = function(t) {
6922
6922
  Nt.call(this, t);
6923
6923
  };
6924
6924
  p["promhx.PublicStream"] = Re, Re.__name__ = ["promhx", "PublicStream"], Re.publicstream = function(t) {
@@ -6936,26 +6936,26 @@ var ii = { exports: {} };
6936
6936
  },
6937
6937
  __class__: Re
6938
6938
  });
6939
- var dt = function() {
6939
+ var ft = function() {
6940
6940
  };
6941
- p["promhx.base.EventLoop"] = dt, dt.__name__ = ["promhx", "base", "EventLoop"], dt.enqueue = function(t) {
6942
- dt.queue.add(t), dt.continueOnNextLoop();
6943
- }, dt.set_nextLoop = function(t) {
6944
- if (dt.nextLoop != null) throw new X("nextLoop has already been set");
6945
- return dt.nextLoop = t, dt.nextLoop;
6946
- }, dt.queueEmpty = function() {
6947
- return dt.queue.isEmpty();
6948
- }, dt.finish = function(t) {
6941
+ p["promhx.base.EventLoop"] = ft, ft.__name__ = ["promhx", "base", "EventLoop"], ft.enqueue = function(t) {
6942
+ ft.queue.add(t), ft.continueOnNextLoop();
6943
+ }, ft.set_nextLoop = function(t) {
6944
+ if (ft.nextLoop != null) throw new X("nextLoop has already been set");
6945
+ return ft.nextLoop = t, ft.nextLoop;
6946
+ }, ft.queueEmpty = function() {
6947
+ return ft.queue.isEmpty();
6948
+ }, ft.finish = function(t) {
6949
6949
  t == null && (t = 1e3);
6950
- for (var n = null; t-- > 0 && (n = dt.queue.pop()) != null; ) n();
6951
- return dt.queue.isEmpty();
6952
- }, dt.clear = function() {
6953
- dt.queue = new Y();
6954
- }, dt.f = function() {
6955
- var t = dt.queue.pop();
6956
- t != null && t(), dt.queue.isEmpty() || dt.continueOnNextLoop();
6957
- }, dt.continueOnNextLoop = function() {
6958
- dt.nextLoop != null ? dt.nextLoop(dt.f) : setImmediate(dt.f);
6950
+ for (var n = null; t-- > 0 && (n = ft.queue.pop()) != null; ) n();
6951
+ return ft.queue.isEmpty();
6952
+ }, ft.clear = function() {
6953
+ ft.queue = new Y();
6954
+ }, ft.f = function() {
6955
+ var t = ft.queue.pop();
6956
+ t != null && t(), ft.queue.isEmpty() || ft.continueOnNextLoop();
6957
+ }, ft.continueOnNextLoop = function() {
6958
+ ft.nextLoop != null ? ft.nextLoop(ft.f) : setImmediate(ft.f);
6959
6959
  };
6960
6960
  var nn = p["promhx.error.PromiseError"] = { __ename__: ["promhx", "error", "PromiseError"], __constructs__: ["AlreadyResolved", "DownstreamNotFullfilled"] };
6961
6961
  nn.AlreadyResolved = function(t) {
@@ -7041,15 +7041,15 @@ var ii = { exports: {} };
7041
7041
  }, At.memoize = function(t, n, r) {
7042
7042
  At.memo.h.hasOwnProperty(t) || At.memo.set(t, new Gt()), At.memo.h[t].h[n] = r;
7043
7043
  };
7044
- var oe = f.core.BoundingBox = function(t) {
7044
+ var oe = d.core.BoundingBox = function(t) {
7045
7045
  this.max = null, this.min = null, this.dim = 3, this.initialized = !1, t != null && this.addRange(t);
7046
7046
  };
7047
7047
  p["verb.core.BoundingBox"] = oe, oe.__name__ = ["verb", "core", "BoundingBox"], oe.intervalsOverlap = function(t, n, r, s, o) {
7048
7048
  o == null && (o = -1);
7049
7049
  var h;
7050
7050
  o < -0.5 ? h = $.TOLERANCE : h = o;
7051
- var c = Math.min(t, n) - h, v = Math.max(t, n) + h, d = Math.min(r, s) - h, m = Math.max(r, s) + h;
7052
- return c >= d && c <= m || v >= d && v <= m || d >= c && d <= v || m >= c && m <= v;
7051
+ var c = Math.min(t, n) - h, v = Math.max(t, n) + h, f = Math.min(r, s) - h, m = Math.max(r, s) + h;
7052
+ return c >= f && c <= m || v >= f && v <= m || f >= c && f <= v || m >= c && m <= v;
7053
7053
  }, oe.prototype = {
7054
7054
  fromPoint: function(t) {
7055
7055
  return new oe([t]);
@@ -7076,8 +7076,8 @@ var ii = { exports: {} };
7076
7076
  intersects: function(t, n) {
7077
7077
  if (n == null && (n = -1), !this.initialized || !t.initialized) return !1;
7078
7078
  for (var r = this.min, s = this.max, o = t.min, h = t.max, c = 0, v = this.dim; c < v; ) {
7079
- var d = c++;
7080
- if (!oe.intervalsOverlap(r[d], s[d], o[d], h[d], n)) return !1;
7079
+ var f = c++;
7080
+ if (!oe.intervalsOverlap(r[f], s[f], o[f], h[f], n)) return !1;
7081
7081
  }
7082
7082
  return !0;
7083
7083
  },
@@ -7098,18 +7098,18 @@ var ii = { exports: {} };
7098
7098
  if (!this.initialized) return null;
7099
7099
  var r = this.min, s = this.max, o = t.min, h = t.max;
7100
7100
  if (!this.intersects(t, n)) return null;
7101
- for (var c = [], v = [], d = 0, m = this.dim; d < m; ) {
7102
- var b = d++;
7101
+ for (var c = [], v = [], f = 0, m = this.dim; f < m; ) {
7102
+ var b = f++;
7103
7103
  c.push(Math.min(s[b], h[b])), v.push(Math.max(r[b], o[b]));
7104
7104
  }
7105
7105
  return new oe([v, c]);
7106
7106
  },
7107
7107
  __class__: oe
7108
7108
  };
7109
- var $ = f.core.Constants = function() {
7109
+ var $ = d.core.Constants = function() {
7110
7110
  };
7111
7111
  p["verb.core.Constants"] = $, $.__name__ = ["verb", "core", "Constants"];
7112
- var Ut = f.core.SerializableBase = function() {
7112
+ var Ut = d.core.SerializableBase = function() {
7113
7113
  };
7114
7114
  p["verb.core.SerializableBase"] = Ut, Ut.__name__ = ["verb", "core", "SerializableBase"], Ut.prototype = {
7115
7115
  serialize: function() {
@@ -7118,99 +7118,99 @@ var ii = { exports: {} };
7118
7118
  },
7119
7119
  __class__: Ut
7120
7120
  };
7121
- var yn = f.core.Plane = function(t, n) {
7121
+ var yn = d.core.Plane = function(t, n) {
7122
7122
  this.origin = t, this.normal = n;
7123
7123
  };
7124
7124
  p["verb.core.Plane"] = yn, yn.__name__ = ["verb", "core", "Plane"], yn.__super__ = Ut, yn.prototype = k(Ut.prototype, {
7125
7125
  __class__: yn
7126
7126
  });
7127
- var rn = f.core.Ray = function(t, n) {
7127
+ var rn = d.core.Ray = function(t, n) {
7128
7128
  this.origin = t, this.dir = n;
7129
7129
  };
7130
7130
  p["verb.core.Ray"] = rn, rn.__name__ = ["verb", "core", "Ray"], rn.__super__ = Ut, rn.prototype = k(Ut.prototype, {
7131
7131
  __class__: rn
7132
7132
  });
7133
- var Ct = f.core.NurbsCurveData = function(t, n, r) {
7133
+ var Ct = d.core.NurbsCurveData = function(t, n, r) {
7134
7134
  this.degree = t, this.controlPoints = r, this.knots = n;
7135
7135
  };
7136
7136
  p["verb.core.NurbsCurveData"] = Ct, Ct.__name__ = ["verb", "core", "NurbsCurveData"], Ct.__super__ = Ut, Ct.prototype = k(Ut.prototype, {
7137
7137
  __class__: Ct
7138
7138
  });
7139
- var Ft = f.core.NurbsSurfaceData = function(t, n, r, s, o) {
7139
+ var Ft = d.core.NurbsSurfaceData = function(t, n, r, s, o) {
7140
7140
  this.degreeU = t, this.degreeV = n, this.knotsU = r, this.knotsV = s, this.controlPoints = o;
7141
7141
  };
7142
7142
  p["verb.core.NurbsSurfaceData"] = Ft, Ft.__name__ = ["verb", "core", "NurbsSurfaceData"], Ft.__super__ = Ut, Ft.prototype = k(Ut.prototype, {
7143
7143
  __class__: Ft
7144
7144
  });
7145
- var fe = f.core.MeshData = function(t, n, r, s) {
7145
+ var de = d.core.MeshData = function(t, n, r, s) {
7146
7146
  this.faces = t, this.points = n, this.normals = r, this.uvs = s;
7147
7147
  };
7148
- p["verb.core.MeshData"] = fe, fe.__name__ = ["verb", "core", "MeshData"], fe.empty = function() {
7149
- return new fe([], [], [], []);
7150
- }, fe.__super__ = Ut, fe.prototype = k(Ut.prototype, {
7151
- __class__: fe
7148
+ p["verb.core.MeshData"] = de, de.__name__ = ["verb", "core", "MeshData"], de.empty = function() {
7149
+ return new de([], [], [], []);
7150
+ }, de.__super__ = Ut, de.prototype = k(Ut.prototype, {
7151
+ __class__: de
7152
7152
  });
7153
- var wn = f.core.PolylineData = function(t, n) {
7153
+ var wn = d.core.PolylineData = function(t, n) {
7154
7154
  this.points = t, this.params = n;
7155
7155
  };
7156
7156
  p["verb.core.PolylineData"] = wn, wn.__name__ = ["verb", "core", "PolylineData"], wn.__super__ = Ut, wn.prototype = k(Ut.prototype, {
7157
7157
  __class__: wn
7158
7158
  });
7159
- var bn = f.core.VolumeData = function(t, n, r, s, o, h, c) {
7159
+ var bn = d.core.VolumeData = function(t, n, r, s, o, h, c) {
7160
7160
  this.degreeU = t, this.degreeV = n, this.degreeW = r, this.knotsU = s, this.knotsV = o, this.knotsW = h, this.controlPoints = c;
7161
7161
  };
7162
7162
  p["verb.core.VolumeData"] = bn, bn.__name__ = ["verb", "core", "VolumeData"], bn.__super__ = Ut, bn.prototype = k(Ut.prototype, {
7163
7163
  __class__: bn
7164
7164
  });
7165
- var Ot = f.core.Pair = function(t, n) {
7165
+ var Ot = d.core.Pair = function(t, n) {
7166
7166
  this.item0 = t, this.item1 = n;
7167
7167
  };
7168
7168
  p["verb.core.Pair"] = Ot, Ot.__name__ = ["verb", "core", "Pair"], Ot.prototype = {
7169
7169
  __class__: Ot
7170
7170
  };
7171
- var ee = f.core.Interval = function(t, n) {
7171
+ var ee = d.core.Interval = function(t, n) {
7172
7172
  this.min = t, this.max = n;
7173
7173
  };
7174
7174
  p["verb.core.Interval"] = ee, ee.__name__ = ["verb", "core", "Interval"], ee.prototype = {
7175
7175
  __class__: ee
7176
7176
  };
7177
- var Ye = f.core.CurveCurveIntersection = function(t, n, r, s) {
7177
+ var Ye = d.core.CurveCurveIntersection = function(t, n, r, s) {
7178
7178
  this.point0 = t, this.point1 = n, this.u0 = r, this.u1 = s;
7179
7179
  };
7180
7180
  p["verb.core.CurveCurveIntersection"] = Ye, Ye.__name__ = ["verb", "core", "CurveCurveIntersection"], Ye.prototype = {
7181
7181
  __class__: Ye
7182
7182
  };
7183
- var xn = f.core.CurveSurfaceIntersection = function(t, n, r, s) {
7183
+ var xn = d.core.CurveSurfaceIntersection = function(t, n, r, s) {
7184
7184
  this.u = t, this.uv = n, this.curvePoint = r, this.surfacePoint = s;
7185
7185
  };
7186
7186
  p["verb.core.CurveSurfaceIntersection"] = xn, xn.__name__ = ["verb", "core", "CurveSurfaceIntersection"], xn.prototype = {
7187
7187
  __class__: xn
7188
7188
  };
7189
- var Ve = f.core.MeshIntersectionPoint = function(t, n, r, s, o) {
7189
+ var Ve = d.core.MeshIntersectionPoint = function(t, n, r, s, o) {
7190
7190
  this.visited = !1, this.adj = null, this.opp = null, this.uv0 = t, this.uv1 = n, this.point = r, this.faceIndex0, this.faceIndex1;
7191
7191
  };
7192
7192
  p["verb.core.MeshIntersectionPoint"] = Ve, Ve.__name__ = ["verb", "core", "MeshIntersectionPoint"], Ve.prototype = {
7193
7193
  __class__: Ve
7194
7194
  };
7195
- var Mn = f.core.PolylineMeshIntersection = function(t, n, r, s, o) {
7195
+ var Mn = d.core.PolylineMeshIntersection = function(t, n, r, s, o) {
7196
7196
  this.point = t, this.u = n, this.uv = r, this.polylineIndex = s, this.faceIndex = o;
7197
7197
  };
7198
7198
  p["verb.core.PolylineMeshIntersection"] = Mn, Mn.__name__ = ["verb", "core", "PolylineMeshIntersection"], Mn.prototype = {
7199
7199
  __class__: Mn
7200
7200
  };
7201
- var Pn = f.core.SurfaceSurfaceIntersectionPoint = function(t, n, r, s) {
7201
+ var Pn = d.core.SurfaceSurfaceIntersectionPoint = function(t, n, r, s) {
7202
7202
  this.uv0 = t, this.uv1 = n, this.point = r, this.dist = s;
7203
7203
  };
7204
7204
  p["verb.core.SurfaceSurfaceIntersectionPoint"] = Pn, Pn.__name__ = ["verb", "core", "SurfaceSurfaceIntersectionPoint"], Pn.prototype = {
7205
7205
  __class__: Pn
7206
7206
  };
7207
- var An = f.core.TriSegmentIntersection = function(t, n, r, s) {
7207
+ var An = d.core.TriSegmentIntersection = function(t, n, r, s) {
7208
7208
  this.point = t, this.s = n, this.t = r, this.p = s;
7209
7209
  };
7210
7210
  p["verb.core.TriSegmentIntersection"] = An, An.__name__ = ["verb", "core", "TriSegmentIntersection"], An.prototype = {
7211
7211
  __class__: An
7212
7212
  };
7213
- var sn = f.core.CurveTriPoint = function(t, n, r) {
7213
+ var sn = d.core.CurveTriPoint = function(t, n, r) {
7214
7214
  this.u = t, this.point = n, this.uv = r;
7215
7215
  };
7216
7216
  p["verb.core.CurveTriPoint"] = sn, sn.__name__ = ["verb", "core", "CurveTriPoint"], sn.prototype = {
@@ -7224,21 +7224,21 @@ var ii = { exports: {} };
7224
7224
  }, ve.prototype = {
7225
7225
  __class__: ve
7226
7226
  };
7227
- var Yn = f.core.CurvePoint = function(t, n) {
7227
+ var Yn = d.core.CurvePoint = function(t, n) {
7228
7228
  this.u = t, this.pt = n;
7229
7229
  };
7230
7230
  p["verb.core.CurvePoint"] = Yn, Yn.__name__ = ["verb", "core", "CurvePoint"], Yn.prototype = {
7231
7231
  __class__: Yn
7232
7232
  };
7233
- var zn = f.core.KdTree = function(t, n) {
7233
+ var zn = d.core.KdTree = function(t, n) {
7234
7234
  this.dim = 3, this.points = t, this.distanceFunction = n, this.dim = t[0].point.length, this.root = this.buildTree(t, 0, null);
7235
7235
  };
7236
7236
  p["verb.core.KdTree"] = zn, zn.__name__ = ["verb", "core", "KdTree"], zn.prototype = {
7237
7237
  buildTree: function(t, n, r) {
7238
7238
  var s = n % this.dim, o, h;
7239
7239
  return t.length == 0 ? null : t.length == 1 ? new on(t[0], s, r) : (t.sort(function(c, v) {
7240
- var d = c.point[s] - v.point[s];
7241
- return d == 0 ? 0 : d > 0 ? 1 : -1;
7240
+ var f = c.point[s] - v.point[s];
7241
+ return f == 0 ? 0 : f > 0 ? 1 : -1;
7242
7242
  }), o = Math.floor(t.length / 2), h = new on(t[o], s, r), h.left = this.buildTree(t.slice(0, o), n + 1, h), h.right = this.buildTree(t.slice(o + 1), n + 1, h), h);
7243
7243
  },
7244
7244
  nearest: function(t, n, r) {
@@ -7264,11 +7264,11 @@ var ii = { exports: {} };
7264
7264
  for (var v = 0; v < n; )
7265
7265
  v++, o.push(new Ot(null, r));
7266
7266
  h(this.root);
7267
- for (var d = [], m = 0; m < n; ) {
7267
+ for (var f = [], m = 0; m < n; ) {
7268
7268
  var b = m++;
7269
- o.content[b].item0 != null && d.push(new Ot(o.content[b].item0.kdPoint, o.content[b].item1));
7269
+ o.content[b].item0 != null && f.push(new Ot(o.content[b].item0.kdPoint, o.content[b].item1));
7270
7270
  }
7271
- return d;
7271
+ return f;
7272
7272
  },
7273
7273
  __class__: zn
7274
7274
  };
@@ -7312,8 +7312,8 @@ var ii = { exports: {} };
7312
7312
  for (var n = this.content.length, r = this.content[t], s = this.scoreFunction(r); ; ) {
7313
7313
  var o = (t + 1) * 2, h = o - 1, c = -1, v = 0;
7314
7314
  if (h < n) {
7315
- var d = this.content[h];
7316
- v = this.scoreFunction(d), v < s && (c = h);
7315
+ var f = this.content[h];
7316
+ v = this.scoreFunction(f), v < s && (c = h);
7317
7317
  }
7318
7318
  if (o < n) {
7319
7319
  var m = this.content[o], b = this.scoreFunction(m);
@@ -7326,13 +7326,13 @@ var ii = { exports: {} };
7326
7326
  },
7327
7327
  __class__: Sn
7328
7328
  };
7329
- var an = f.core.KdPoint = function(t, n) {
7329
+ var an = d.core.KdPoint = function(t, n) {
7330
7330
  this.point = t, this.obj = n;
7331
7331
  };
7332
7332
  p["verb.core.KdPoint"] = an, an.__name__ = ["verb", "core", "KdPoint"], an.prototype = {
7333
7333
  __class__: an
7334
7334
  };
7335
- var on = f.core.KdNode = function(t, n, r) {
7335
+ var on = d.core.KdNode = function(t, n, r) {
7336
7336
  this.kdPoint = t, this.left = null, this.right = null, this.parent = r, this.dimension = n;
7337
7337
  };
7338
7338
  p["verb.core.KdNode"] = on, on.__name__ = ["verb", "core", "KdNode"], on.prototype = {
@@ -7447,7 +7447,7 @@ var ii = { exports: {} };
7447
7447
  },
7448
7448
  __class__: De
7449
7449
  };
7450
- var xt = f.core.Mat = function() {
7450
+ var xt = d.core.Mat = function() {
7451
7451
  };
7452
7452
  p["verb.core.Mat"] = xt, xt.__name__ = ["verb", "core", "Mat"], xt.mul = function(t, n) {
7453
7453
  for (var r = [], s = 0, o = n.length; s < o; ) {
@@ -7456,13 +7456,13 @@ var ii = { exports: {} };
7456
7456
  }
7457
7457
  return r;
7458
7458
  }, xt.mult = function(t, n) {
7459
- var r, s, o, h, c, v, d, m;
7459
+ var r, s, o, h, c, v, f, m;
7460
7460
  r = t.length, s = n.length, o = n[0].length, h = [];
7461
7461
  for (var b = r - 1, w = 0, M = 0; b >= 0; ) {
7462
7462
  for (c = [], v = t[b], M = o - 1; M >= 0; ) {
7463
- for (d = v[s - 1] * n[s - 1][M], w = s - 2; w >= 1; )
7464
- m = w - 1, d += v[w] * n[w][M] + v[m] * n[m][M], w -= 2;
7465
- w == 0 && (d += v[0] * n[0][M]), c[M] = d, M--;
7463
+ for (f = v[s - 1] * n[s - 1][M], w = s - 2; w >= 1; )
7464
+ m = w - 1, f += v[w] * n[w][M] + v[m] * n[m][M], w -= 2;
7465
+ w == 0 && (f += v[0] * n[0][M]), c[M] = f, M--;
7466
7466
  }
7467
7467
  h[b] = c, b--;
7468
7468
  }
@@ -7502,8 +7502,8 @@ var ii = { exports: {} };
7502
7502
  for (var n = [], r = 0, s = t[0].length; r < s; ) {
7503
7503
  var o = r++;
7504
7504
  n.push(function(h) {
7505
- for (var c, v = [], d = 0, m = t.length; d < m; ) {
7506
- var b = d++;
7505
+ for (var c, v = [], f = 0, m = t.length; f < m; ) {
7506
+ var b = f++;
7507
7507
  v.push(t[b][o]);
7508
7508
  }
7509
7509
  return c = v, c;
@@ -7513,11 +7513,11 @@ var ii = { exports: {} };
7513
7513
  }, xt.solve = function(t, n) {
7514
7514
  return xt.LUsolve(xt.LU(t), n);
7515
7515
  }, xt.LUsolve = function(t, n) {
7516
- var r, s, o = t.LU, h = o.length, c = n.slice(), v = t.P, d, m, b;
7516
+ var r, s, o = t.LU, h = o.length, c = n.slice(), v = t.P, f, m, b;
7517
7517
  for (r = h - 1; r != -1; )
7518
7518
  c[r] = n[r], --r;
7519
7519
  for (r = 0; r < h; ) {
7520
- for (d = v[r], v[r] != r && (b = c[r], c[r] = c[d], c[d] = b), m = o[r], s = 0; s < r; )
7520
+ for (f = v[r], v[r] != r && (b = c[r], c[r] = c[f], c[f] = b), m = o[r], s = 0; s < r; )
7521
7521
  c[r] -= c[s] * m[s], ++s;
7522
7522
  ++r;
7523
7523
  }
@@ -7528,7 +7528,7 @@ var ii = { exports: {} };
7528
7528
  }
7529
7529
  return c;
7530
7530
  }, xt.LU = function(t) {
7531
- for (var n, r, s, o, h, c, v, d, m, b = [], w = 0, M = t.length; w < M; ) {
7531
+ for (var n, r, s, o, h, c, v, f, m, b = [], w = 0, M = t.length; w < M; ) {
7532
7532
  var P = w++;
7533
7533
  b.push(t[P].slice());
7534
7534
  }
@@ -7540,9 +7540,9 @@ var ii = { exports: {} };
7540
7540
  for (C[s] = v, v != s && (t[s] = t[v], t[v] = c, c = t[s]), h = c[s], n = s + 1; n < z; )
7541
7541
  t[n][s] /= h, ++n;
7542
7542
  for (n = s + 1; n < z; ) {
7543
- for (d = t[n], r = s + 1; r < I; )
7544
- d[r] -= d[s] * c[r], ++r, d[r] -= d[s] * c[r], ++r;
7545
- r == I && (d[r] -= d[s] * c[r]), ++n;
7543
+ for (f = t[n], r = s + 1; r < I; )
7544
+ f[r] -= f[s] * c[r], ++r, f[r] -= f[s] * c[r], ++r;
7545
+ r == I && (f[r] -= f[s] * c[r]), ++n;
7546
7546
  }
7547
7547
  ++s;
7548
7548
  }
@@ -7554,7 +7554,7 @@ var ii = { exports: {} };
7554
7554
  p["verb.core._Mat.LUDecomp"] = Cn, Cn.__name__ = ["verb", "core", "_Mat", "LUDecomp"], Cn.prototype = {
7555
7555
  __class__: Cn
7556
7556
  };
7557
- var qt = f.core.Mesh = function() {
7557
+ var qt = d.core.Mesh = function() {
7558
7558
  };
7559
7559
  p["verb.core.Mesh"] = qt, qt.__name__ = ["verb", "core", "Mesh"], qt.getTriangleNorm = function(t, n) {
7560
7560
  var r = t[n[0]], s = t[n[1]], o = t[n[2]], h = l.sub(s, r), c = l.sub(o, r), v = l.cross(h, c);
@@ -7576,11 +7576,11 @@ var ii = { exports: {} };
7576
7576
  var z = M.item0, I = P.item0;
7577
7577
  return z == I ? 0 : z > I ? 1 : -1;
7578
7578
  });
7579
- for (var d = [], m = 0, b = o.length; m < b; ) {
7579
+ for (var f = [], m = 0, b = o.length; m < b; ) {
7580
7580
  var w = m++;
7581
- d.push(o[w].item1);
7581
+ f.push(o[w].item1);
7582
7582
  }
7583
- return d;
7583
+ return f;
7584
7584
  }, qt.getMinCoordOnAxis = function(t, n, r) {
7585
7585
  for (var s = 1 / 0, o = 0; o < 3; ) {
7586
7586
  var h = o++, c = t[n[h]][r];
@@ -7594,13 +7594,13 @@ var ii = { exports: {} };
7594
7594
  r[c] += t[n[o]][c];
7595
7595
  }
7596
7596
  for (var v = 0; v < 3; ) {
7597
- var d = v++;
7598
- r[d] /= 3;
7597
+ var f = v++;
7598
+ r[f] /= 3;
7599
7599
  }
7600
7600
  return r;
7601
7601
  }, qt.triangleUVFromPoint = function(t, n, r) {
7602
- var s = t.faces[n], o = t.points[s[0]], h = t.points[s[1]], c = t.points[s[2]], v = t.uvs[s[0]], d = t.uvs[s[1]], m = t.uvs[s[2]], b = l.sub(o, r), w = l.sub(h, r), M = l.sub(c, r), P = l.norm(l.cross(l.sub(o, h), l.sub(o, c))), z = l.norm(l.cross(w, M)) / P, I = l.norm(l.cross(M, b)) / P, C = l.norm(l.cross(b, w)) / P;
7603
- return l.add(l.mul(z, v), l.add(l.mul(I, d), l.mul(C, m)));
7602
+ var s = t.faces[n], o = t.points[s[0]], h = t.points[s[1]], c = t.points[s[2]], v = t.uvs[s[0]], f = t.uvs[s[1]], m = t.uvs[s[2]], b = l.sub(o, r), w = l.sub(h, r), M = l.sub(c, r), P = l.norm(l.cross(l.sub(o, h), l.sub(o, c))), z = l.norm(l.cross(w, M)) / P, I = l.norm(l.cross(M, b)) / P, C = l.norm(l.cross(b, w)) / P;
7603
+ return l.add(l.mul(z, v), l.add(l.mul(I, f), l.mul(C, m)));
7604
7604
  };
7605
7605
  var Fe = function(t, n) {
7606
7606
  if (this._empty = !1, this._face = -1, n == null) {
@@ -7617,8 +7617,8 @@ var ii = { exports: {} };
7617
7617
  this._face = n[0];
7618
7618
  return;
7619
7619
  }
7620
- var c = qt.sortTrianglesOnLongestAxis(this._boundingBox, t, n), v = G.left(c), d = G.right(c);
7621
- this._children = new Ot(new Fe(t, v), new Fe(t, d));
7620
+ var c = qt.sortTrianglesOnLongestAxis(this._boundingBox, t, n), v = G.left(c), f = G.right(c);
7621
+ this._children = new Ot(new Fe(t, v), new Fe(t, f));
7622
7622
  };
7623
7623
  p["verb.core.MeshBoundingBoxTree"] = Fe, Fe.__name__ = ["verb", "core", "MeshBoundingBoxTree"], Fe.__interfaces__ = [Ne], Fe.prototype = {
7624
7624
  split: function() {
@@ -7638,13 +7638,13 @@ var ii = { exports: {} };
7638
7638
  },
7639
7639
  __class__: Fe
7640
7640
  };
7641
- var me = f.core.Minimizer = function() {
7641
+ var me = d.core.Minimizer = function() {
7642
7642
  };
7643
7643
  p["verb.core.Minimizer"] = me, me.__name__ = ["verb", "core", "Minimizer"], me.uncmin = function(t, n, r, s, o) {
7644
7644
  r == null && (r = 1e-8), s == null && (s = function(j) {
7645
7645
  return me.numericalGradient(t, j);
7646
7646
  }), o == null && (o = 1e3), n = n.slice(0);
7647
- var h = n.length, c = t(n), v = c, d;
7647
+ var h = n.length, c = t(n), v = c, f;
7648
7648
  if (isNaN(c)) throw new X("uncmin: f(x0) is a NaN!");
7649
7649
  r = Math.max(r, $.EPSILON);
7650
7650
  var m, b, w, M = xt.identity(h), P = 0, z = [], I, C, L, B, T, R, F = "";
@@ -7661,8 +7661,8 @@ var ii = { exports: {} };
7661
7661
  F = "Newton step smaller than tol";
7662
7662
  break;
7663
7663
  }
7664
- for (T = 1, d = l.dot(b, m), I = n; P < o && !(T * R < r); ) {
7665
- if (z = l.mul(T, m), I = l.add(n, z), v = t(I), v - c >= 0.1 * T * d || isNaN(v)) {
7664
+ for (T = 1, f = l.dot(b, m), I = n; P < o && !(T * R < r); ) {
7665
+ if (z = l.mul(T, m), I = l.add(n, z), v = t(I), v - c >= 0.1 * T * f || isNaN(v)) {
7666
7666
  T *= 0.5, ++P;
7667
7667
  continue;
7668
7668
  }
@@ -7682,24 +7682,24 @@ var ii = { exports: {} };
7682
7682
  }, me.numericalGradient = function(t, n) {
7683
7683
  var r = n.length, s = t(n);
7684
7684
  if (s == NaN) throw new X("gradient: f(x) is a NaN!");
7685
- for (var o = n.slice(0), h, c, v = [], d, m = 1e-3, b, w, M, P = 0, z, I, C, L = 0; L < r; )
7685
+ for (var o = n.slice(0), h, c, v = [], f, m = 1e-3, b, w, M, P = 0, z, I, C, L = 0; L < r; )
7686
7686
  for (var B = L++, T = Math.max(1e-6 * s, 1e-8); ; ) {
7687
7687
  if (++P, P > 20) throw new X("Numerical gradient fails");
7688
7688
  if (o[B] = n[B] + T, h = t(o), o[B] = n[B] - T, c = t(o), o[B] = n[B], isNaN(h) || isNaN(c)) {
7689
7689
  T /= 16;
7690
7690
  continue;
7691
7691
  }
7692
- if (v[B] = (h - c) / (2 * T), b = n[B] - T, w = n[B], M = n[B] + T, z = (h - s) / T, I = (s - c) / T, C = l.max([Math.abs(v[B]), Math.abs(s), Math.abs(h), Math.abs(c), Math.abs(b), Math.abs(w), Math.abs(M), 1e-8]), d = Math.min(l.max([Math.abs(z - v[B]), Math.abs(I - v[B]), Math.abs(z - I)]) / C, T / C), d > m) T /= 16;
7692
+ if (v[B] = (h - c) / (2 * T), b = n[B] - T, w = n[B], M = n[B] + T, z = (h - s) / T, I = (s - c) / T, C = l.max([Math.abs(v[B]), Math.abs(s), Math.abs(h), Math.abs(c), Math.abs(b), Math.abs(w), Math.abs(M), 1e-8]), f = Math.min(l.max([Math.abs(z - v[B]), Math.abs(I - v[B]), Math.abs(z - I)]) / C, T / C), f > m) T /= 16;
7693
7693
  else break;
7694
7694
  }
7695
7695
  return v;
7696
7696
  }, me.tensor = function(t, n) {
7697
7697
  for (var r = t.length, s = n.length, o = [], h, c, v = r - 1; v >= 0; ) {
7698
7698
  h = [], c = t[v];
7699
- for (var d = s - 1; d >= 3; )
7700
- h[d] = c * n[d], --d, h[d] = c * n[d], --d, h[d] = c * n[d], --d, h[d] = c * n[d], --d;
7701
- for (; d >= 0; )
7702
- h[d] = c * n[d], --d;
7699
+ for (var f = s - 1; f >= 3; )
7700
+ h[f] = c * n[f], --f, h[f] = c * n[f], --f, h[f] = c * n[f], --f, h[f] = c * n[f], --f;
7701
+ for (; f >= 0; )
7702
+ h[f] = c * n[f], --f;
7703
7703
  o[v] = h, v--;
7704
7704
  }
7705
7705
  return o;
@@ -7715,13 +7715,13 @@ var ii = { exports: {} };
7715
7715
  p["verb.core.ISerializable"] = hn, hn.__name__ = ["verb", "core", "ISerializable"], hn.prototype = {
7716
7716
  __class__: hn
7717
7717
  };
7718
- var ar = f.core.Deserializer = function() {
7718
+ var ar = d.core.Deserializer = function() {
7719
7719
  };
7720
7720
  p["verb.core.Deserializer"] = ar, ar.__name__ = ["verb", "core", "Deserializer"], ar.deserialize = function(t) {
7721
7721
  var n = new Tt(t), r = n.unserialize();
7722
7722
  return r;
7723
7723
  };
7724
- var he = f.core.Trig = function() {
7724
+ var he = d.core.Trig = function() {
7725
7725
  };
7726
7726
  p["verb.core.Trig"] = he, he.__name__ = ["verb", "core", "Trig"], he.isPointInPlane = function(t, n, r) {
7727
7727
  return Math.abs(l.dot(l.sub(t, n.origin), n.normal)) < r;
@@ -7740,18 +7740,18 @@ var ii = { exports: {} };
7740
7740
  }, he.segmentClosestPoint = function(t, n, r, s, o) {
7741
7741
  var h = l.sub(r, n), c = l.norm(h);
7742
7742
  if (c < $.EPSILON) return { u: s, pt: n };
7743
- var v = n, d = l.mul(1 / c, h), m = l.sub(t, v), b = l.dot(m, d);
7744
- return b < 0 ? { u: s, pt: n } : b > c ? { u: o, pt: r } : { u: s + (o - s) * b / c, pt: l.add(v, l.mul(b, d)) };
7743
+ var v = n, f = l.mul(1 / c, h), m = l.sub(t, v), b = l.dot(m, f);
7744
+ return b < 0 ? { u: s, pt: n } : b > c ? { u: o, pt: r } : { u: s + (o - s) * b / c, pt: l.add(v, l.mul(b, f)) };
7745
7745
  };
7746
- var l = f.core.Vec = function() {
7746
+ var l = d.core.Vec = function() {
7747
7747
  };
7748
7748
  p["verb.core.Vec"] = l, l.__name__ = ["verb", "core", "Vec"], l.angleBetween = function(t, n) {
7749
7749
  return Math.acos(l.dot(t, n) / (l.norm(t) * l.norm(n)));
7750
7750
  }, l.positiveAngleBetween = function(t, n, r) {
7751
- var s = l.cross(t, n), o = l.norm(t), h = l.norm(n), c = o * h, v = l.dot(t, n), d = l.norm(s) / c, m = v / c, b = Math.atan2(d, m), w = l.dot(r, s);
7751
+ var s = l.cross(t, n), o = l.norm(t), h = l.norm(n), c = o * h, v = l.dot(t, n), f = l.norm(s) / c, m = v / c, b = Math.atan2(f, m), w = l.dot(r, s);
7752
7752
  return Math.abs(w) < $.EPSILON || w > 0 ? b : -b;
7753
7753
  }, l.signedAngleBetween = function(t, n, r) {
7754
- var s = l.cross(t, n), o = l.norm(t), h = l.norm(n), c = o * h, v = l.dot(t, n), d = l.norm(s) / c, m = v / c, b = Math.atan2(d, m), w = l.dot(r, s);
7754
+ var s = l.cross(t, n), o = l.norm(t), h = l.norm(n), c = o * h, v = l.dot(t, n), f = l.norm(s) / c, m = v / c, b = Math.atan2(f, m), w = l.dot(r, s);
7755
7755
  return w > 0 ? b : 2 * Math.PI - b;
7756
7756
  }, l.angleBetweenNormalized2d = function(t, n) {
7757
7757
  var r = t[0] * n[1] - t[1] * n[0];
@@ -7937,7 +7937,7 @@ var ii = { exports: {} };
7937
7937
  }
7938
7938
  return r;
7939
7939
  };
7940
- var vt = f.eval.Analyze = function() {
7940
+ var vt = d.eval.Analyze = function() {
7941
7941
  };
7942
7942
  p["verb.eval.Analyze"] = vt, vt.__name__ = ["verb", "eval", "Analyze"], vt.knotMultiplicities = function(t) {
7943
7943
  for (var n = [new ln(t[0], 0)], r = n[0], s = 0; s < t.length; ) {
@@ -7958,21 +7958,21 @@ var ii = { exports: {} };
7958
7958
  var r = vt.rationalSurfaceClosestParam(t, n);
7959
7959
  return S.rationalSurfacePoint(t, r[0], r[1]);
7960
7960
  }, vt.rationalSurfaceClosestParam = function(t, n) {
7961
- for (var r = 5, s = 0, o, h = 1e-4, c = 5e-4, v, d = t.knotsU[0], m = G.last(t.knotsU), b = t.knotsV[0], w = G.last(t.knotsV), M = vt.isRationalSurfaceClosed(t), P = vt.isRationalSurfaceClosed(t, !1), z, I = Pt.rationalSurfaceAdaptive(t, new Oe()), C = 1 / 0, L = 0, B = I.points.length; L < B; ) {
7961
+ for (var r = 5, s = 0, o, h = 1e-4, c = 5e-4, v, f = t.knotsU[0], m = G.last(t.knotsU), b = t.knotsV[0], w = G.last(t.knotsV), M = vt.isRationalSurfaceClosed(t), P = vt.isRationalSurfaceClosed(t, !1), z, I = Pt.rationalSurfaceAdaptive(t, new Oe()), C = 1 / 0, L = 0, B = I.points.length; L < B; ) {
7962
7962
  var T = L++, R = I.points[T], F = l.normSquared(l.sub(n, R));
7963
7963
  F < C && (C = F, z = I.uvs[T]);
7964
7964
  }
7965
7965
  for (var j = function(kt) {
7966
7966
  return S.rationalSurfaceDerivatives(t, kt[0], kt[1], 2);
7967
7967
  }, D = function(kt, Et, zt) {
7968
- var Bt = Et[1][0], ne = Et[0][1], de = Et[2][0], $t = Et[0][2], Qt = Et[1][1], re = Et[1][1], ue = l.dot(Bt, zt), pe = l.dot(ne, zt), Ie = [-ue, -pe], ye = l.dot(Bt, Bt) + l.dot(de, zt), we = l.dot(Bt, ne) + l.dot(Qt, zt), be = l.dot(Bt, ne) + l.dot(re, zt), Be = l.dot(ne, ne) + l.dot($t, zt), _n = [[ye, we], [be, Be]], Qe = xt.solve(_n, Ie);
7968
+ var Bt = Et[1][0], ne = Et[0][1], fe = Et[2][0], $t = Et[0][2], Qt = Et[1][1], re = Et[1][1], ue = l.dot(Bt, zt), pe = l.dot(ne, zt), Ie = [-ue, -pe], ye = l.dot(Bt, Bt) + l.dot(fe, zt), we = l.dot(Bt, ne) + l.dot(Qt, zt), be = l.dot(Bt, ne) + l.dot(re, zt), Be = l.dot(ne, ne) + l.dot($t, zt), _n = [[ye, we], [be, Be]], Qe = xt.solve(_n, Ie);
7969
7969
  return l.add(Qe, kt);
7970
7970
  }; s < r; ) {
7971
7971
  o = j(z), v = l.sub(o[0][0], n);
7972
7972
  var V = l.norm(v), q = l.dot(o[1][0], v), H = l.norm(o[1][0]) * V, J = l.dot(o[0][1], v), et = l.norm(o[0][1]) * V, it = q / H, nt = J / et, st = V < h, tt = it < c, at = nt < c;
7973
7973
  if (st && tt && at) return z;
7974
7974
  var O = D(z, o, v);
7975
- O[0] < d ? M ? O = [m - (O[0] - d), O[1]] : O = [d + $.EPSILON, O[1]] : O[0] > m && (M ? O = [d + (O[0] - m), O[1]] : O = [m - $.EPSILON, O[1]]), O[1] < b ? P ? O = [O[0], w - (O[1] - b)] : O = [O[0], b + $.EPSILON] : O[1] > w && (P ? O = [O[0], b + (O[0] - w)] : O = [O[0], w - $.EPSILON]);
7975
+ O[0] < f ? M ? O = [m - (O[0] - f), O[1]] : O = [f + $.EPSILON, O[1]] : O[0] > m && (M ? O = [f + (O[0] - m), O[1]] : O = [m - $.EPSILON, O[1]]), O[1] < b ? P ? O = [O[0], w - (O[1] - b)] : O = [O[0], b + $.EPSILON] : O[1] > w && (P ? O = [O[0], b + (O[0] - w)] : O = [O[0], w - $.EPSILON]);
7976
7976
  var lt = l.norm(l.mul(O[0] - z[0], o[1][0])), mt = l.norm(l.mul(O[1] - z[1], o[0][1]));
7977
7977
  if (lt + mt < h) return z;
7978
7978
  z = O, s++;
@@ -7982,7 +7982,7 @@ var ii = { exports: {} };
7982
7982
  return S.rationalCurvePoint(t, vt.rationalCurveClosestParam(t, n));
7983
7983
  }, vt.rationalCurveClosestParam = function(t, n) {
7984
7984
  for (var r = 1 / 0, s = 0, o = Pt.rationalCurveRegularSample(t, t.controlPoints.length * t.degree, !0), h = 0, c = o.length - 1; h < c; ) {
7985
- var v = h++, d = o[v][0], m = o[v + 1][0], b = o[v].slice(1), w = o[v + 1].slice(1), M = he.segmentClosestPoint(n, b, w, d, m), P = l.norm(l.sub(n, M.pt));
7985
+ var v = h++, f = o[v][0], m = o[v + 1][0], b = o[v].slice(1), w = o[v + 1].slice(1), M = he.segmentClosestPoint(n, b, w, f, m), P = l.norm(l.sub(n, M.pt));
7986
7986
  P < r && (r = P, s = M.u);
7987
7987
  }
7988
7988
  for (var z = 5, I = 0, C, L = 1e-4, B = 5e-4, T, R = t.knots[0], F = G.last(t.knots), j = l.normSquared(l.sub(t.controlPoints[0], G.last(t.controlPoints))) < $.EPSILON, D = s, V = function(O) {
@@ -8007,9 +8007,9 @@ var ii = { exports: {} };
8007
8007
  s != null ? h = s : h = ct.decomposeCurveIntoBeziers(t);
8008
8008
  var c = 0;
8009
8009
  h[c];
8010
- var v = -$.EPSILON, d;
8011
- for (o != null ? d = o : d = []; v < n && c < h.length; ) {
8012
- if (c < d.length ? d[c] = d[c] : d[c] = vt.rationalBezierCurveArcLength(t), v += d[c], n < v + $.EPSILON) return vt.rationalBezierCurveParamAtArcLength(t, n, r, d[c]);
8010
+ var v = -$.EPSILON, f;
8011
+ for (o != null ? f = o : f = []; v < n && c < h.length; ) {
8012
+ if (c < f.length ? f[c] = f[c] : f[c] = vt.rationalBezierCurveArcLength(t), v += f[c], n < v + $.EPSILON) return vt.rationalBezierCurveParamAtArcLength(t, n, r, f[c]);
8013
8013
  c++;
8014
8014
  }
8015
8015
  return -1;
@@ -8017,9 +8017,9 @@ var ii = { exports: {} };
8017
8017
  if (n < 0) return t.knots[0];
8018
8018
  var o;
8019
8019
  if (s != null ? o = s : o = vt.rationalBezierCurveArcLength(t), n > o) return G.last(t.knots);
8020
- var h = t.knots[0], c = 0, v = G.last(t.knots), d = o, m = 0, b = 0, w;
8021
- for (r != null ? w = r : w = $.TOLERANCE * 2; d - c > w; )
8022
- m = (h + v) / 2, b = vt.rationalBezierCurveArcLength(t, m), b > n ? (v = m, d = b) : (h = m, c = b);
8020
+ var h = t.knots[0], c = 0, v = G.last(t.knots), f = o, m = 0, b = 0, w;
8021
+ for (r != null ? w = r : w = $.TOLERANCE * 2; f - c > w; )
8022
+ m = (h + v) / 2, b = vt.rationalBezierCurveArcLength(t, m), b > n ? (v = m, f = b) : (h = m, c = b);
8023
8023
  return (h + v) / 2;
8024
8024
  }, vt.rationalCurveArcLength = function(t, n, r) {
8025
8025
  r == null && (r = 16), n == null ? n = G.last(t.knots) : n = n;
@@ -8032,13 +8032,13 @@ var ii = { exports: {} };
8032
8032
  r == null && (r = 16);
8033
8033
  var s;
8034
8034
  n == null ? s = G.last(t.knots) : s = n;
8035
- for (var o = (s - t.knots[0]) / 2, h = 0, c = t.degree + r, v, d, m = 0; m < c; ) {
8035
+ for (var o = (s - t.knots[0]) / 2, h = 0, c = t.degree + r, v, f, m = 0; m < c; ) {
8036
8036
  var b = m++;
8037
- v = o * vt.Tvalues[c][b] + o + t.knots[0], d = S.rationalCurveDerivatives(t, v, 1), h += vt.Cvalues[c][b] * l.norm(d[1]);
8037
+ v = o * vt.Tvalues[c][b] + o + t.knots[0], f = S.rationalCurveDerivatives(t, v, 1), h += vt.Cvalues[c][b] * l.norm(f[1]);
8038
8038
  }
8039
8039
  return o * h;
8040
8040
  };
8041
- var ln = f.eval.KnotMultiplicity = function(t, n) {
8041
+ var ln = d.eval.KnotMultiplicity = function(t, n) {
8042
8042
  this.knot = t, this.mult = n;
8043
8043
  };
8044
8044
  p["verb.eval.KnotMultiplicity"] = ln, ln.__name__ = ["verb", "eval", "KnotMultiplicity"], ln.prototype = {
@@ -8047,7 +8047,7 @@ var ii = { exports: {} };
8047
8047
  },
8048
8048
  __class__: ln
8049
8049
  };
8050
- var _e = f.eval.Check = function() {
8050
+ var _e = d.eval.Check = function() {
8051
8051
  };
8052
8052
  p["verb.eval.Check"] = _e, _e.__name__ = ["verb", "eval", "Check"], _e.isValidKnotVector = function(t, n) {
8053
8053
  if (t.length == 0 || t.length < (n + 1) * 2) return !1;
@@ -8057,8 +8057,8 @@ var ii = { exports: {} };
8057
8057
  }
8058
8058
  r = G.last(t);
8059
8059
  for (var c = t.length - n - 1, v = t.length; c < v; ) {
8060
- var d = c++;
8061
- if (Math.abs(t[d] - r) > $.EPSILON) return !1;
8060
+ var f = c++;
8061
+ if (Math.abs(t[f] - r) > $.EPSILON) return !1;
8062
8062
  }
8063
8063
  return _e.isNonDecreasing(t);
8064
8064
  }, _e.isNonDecreasing = function(t) {
@@ -8089,14 +8089,14 @@ var ii = { exports: {} };
8089
8089
  if (!_e.isValidKnotVector(t.knotsU, t.degreeU) || !_e.isValidKnotVector(t.knotsV, t.degreeV)) throw new X("Invalid knot vector format! Should begin with degree + 1 repeats and end with degree + 1 repeats!");
8090
8090
  return t;
8091
8091
  };
8092
- var Zt = f.eval.Divide = function() {
8092
+ var Zt = d.eval.Divide = function() {
8093
8093
  };
8094
8094
  p["verb.eval.Divide"] = Zt, Zt.__name__ = ["verb", "eval", "Divide"], Zt.surfaceSplit = function(t, n, r) {
8095
8095
  r == null && (r = !1);
8096
8096
  var s, o, h;
8097
8097
  r ? (h = t.controlPoints, s = t.knotsV, o = t.degreeV) : (h = xt.transpose(t.controlPoints), s = t.knotsU, o = t.degreeU);
8098
- for (var c, v = [], d = 0, m = o + 1; d < m; )
8099
- d++, v.push(n);
8098
+ for (var c, v = [], f = 0, m = o + 1; f < m; )
8099
+ f++, v.push(n);
8100
8100
  c = v;
8101
8101
  for (var b = [], w = [], M = S.knotSpan(o, n, s), P = null, z = 0; z < h.length; ) {
8102
8102
  var I = h[z];
@@ -8110,7 +8110,7 @@ var ii = { exports: {} };
8110
8110
  for (var s = t.knots, o, h = [], c = 0, v = r + 1; c < v; )
8111
8111
  c++, h.push(n);
8112
8112
  o = h;
8113
- var d = ct.curveKnotRefine(t, o), m = S.knotSpan(r, n, s), b = d.knots.slice(0, m + r + 2), w = d.knots.slice(m + 1), M = d.controlPoints.slice(0, m + 1), P = d.controlPoints.slice(m + 1);
8113
+ var f = ct.curveKnotRefine(t, o), m = S.knotSpan(r, n, s), b = f.knots.slice(0, m + r + 2), w = f.knots.slice(m + 1), M = f.controlPoints.slice(0, m + 1), P = f.controlPoints.slice(m + 1);
8114
8114
  return [new Ct(r, b, M), new Ct(r, w, P)];
8115
8115
  }, Zt.rationalCurveByEqualArcLength = function(t, n) {
8116
8116
  var r = vt.rationalCurveArcLength(t), s = r / n;
@@ -8120,20 +8120,20 @@ var ii = { exports: {} };
8120
8120
  return vt.rationalBezierCurveArcLength(M);
8121
8121
  }), o = l.sum(s), h = [new un(t.knots[0], 0)];
8122
8122
  if (n > o) return h;
8123
- for (var c = n, v = 0, d = c, m = 0, b = 0, w; v < r.length; ) {
8124
- for (m += s[v]; d < m + $.EPSILON; )
8125
- w = vt.rationalBezierCurveParamAtArcLength(r[v], d - b, $.TOLERANCE, s[v]), h.push(new un(w, d)), d += c;
8123
+ for (var c = n, v = 0, f = c, m = 0, b = 0, w; v < r.length; ) {
8124
+ for (m += s[v]; f < m + $.EPSILON; )
8125
+ w = vt.rationalBezierCurveParamAtArcLength(r[v], f - b, $.TOLERANCE, s[v]), h.push(new un(w, f)), f += c;
8126
8126
  b += s[v], v++;
8127
8127
  }
8128
8128
  return h;
8129
8129
  };
8130
- var un = f.eval.CurveLengthSample = function(t, n) {
8130
+ var un = d.eval.CurveLengthSample = function(t, n) {
8131
8131
  this.u = t, this.len = n;
8132
8132
  };
8133
8133
  p["verb.eval.CurveLengthSample"] = un, un.__name__ = ["verb", "eval", "CurveLengthSample"], un.prototype = {
8134
8134
  __class__: un
8135
8135
  };
8136
- var S = f.eval.Eval = function() {
8136
+ var S = d.eval.Eval = function() {
8137
8137
  };
8138
8138
  p["verb.eval.Eval"] = S, S.__name__ = ["verb", "eval", "Eval"], S.rationalCurveTangent = function(t, n) {
8139
8139
  var r = S.rationalCurveDerivatives(t, n, 1);
@@ -8143,7 +8143,7 @@ var ii = { exports: {} };
8143
8143
  return l.cross(s[1][0], s[0][1]);
8144
8144
  }, S.rationalSurfaceDerivatives = function(t, n, r, s) {
8145
8145
  s == null && (s = 1);
8146
- for (var o = S.surfaceDerivatives(t, n, r, s), h = S.rational2d(o), c = S.weight2d(o), v = [], d = h[0][0].length, m = 0, b = s + 1; m < b; ) {
8146
+ for (var o = S.surfaceDerivatives(t, n, r, s), h = S.rational2d(o), c = S.weight2d(o), v = [], f = h[0][0].length, m = 0, b = s + 1; m < b; ) {
8147
8147
  var w = m++;
8148
8148
  v.push([]);
8149
8149
  for (var M = 0, P = s - w + 1; M < P; ) {
@@ -8154,7 +8154,7 @@ var ii = { exports: {} };
8154
8154
  for (var T = 1, R = w + 1; T < R; ) {
8155
8155
  var F = T++;
8156
8156
  l.subMulMutate(I, At.get(w, F) * c[F][0], v[w - F][z]);
8157
- for (var j = l.zeros1d(d), D = 1, V = z + 1; D < V; ) {
8157
+ for (var j = l.zeros1d(f), D = 1, V = z + 1; D < V; ) {
8158
8158
  var q = D++;
8159
8159
  l.addMulMutate(j, At.get(z, q) * c[F][q], v[w - F][z - q]);
8160
8160
  }
@@ -8168,7 +8168,7 @@ var ii = { exports: {} };
8168
8168
  return S.dehomogenize(S.surfacePoint(t, n, r));
8169
8169
  }, S.rationalCurveDerivatives = function(t, n, r) {
8170
8170
  r == null && (r = 1);
8171
- for (var s = S.curveDerivatives(t, n, r), o = S.rational1d(s), h = S.weight1d(s), c = [], v = 0, d = r + 1; v < d; ) {
8171
+ for (var s = S.curveDerivatives(t, n, r), o = S.rational1d(s), h = S.weight1d(s), c = [], v = 0, f = r + 1; v < f; ) {
8172
8172
  for (var m = v++, b = o[m], w = 1, M = m + 1; w < M; ) {
8173
8173
  var P = w++;
8174
8174
  l.subMulMutate(b, At.get(m, P) * h[P], c[m - P]);
@@ -8182,9 +8182,9 @@ var ii = { exports: {} };
8182
8182
  var o = t.knotsU.length - t.degreeU - 2, h = t.knotsV.length - t.degreeV - 2;
8183
8183
  return S.surfaceDerivativesGivenNM(o, h, t, n, r, s);
8184
8184
  }, S.surfaceDerivativesGivenNM = function(t, n, r, s, o, h) {
8185
- var c = r.degreeU, v = r.degreeV, d = r.controlPoints, m = r.knotsU, b = r.knotsV;
8186
- if (!S.areValidRelations(c, d.length, m.length) || !S.areValidRelations(v, d[0].length, b.length)) throw new X("Invalid relations between control points, knot vector, and n");
8187
- var w = d[0][0].length, M;
8185
+ var c = r.degreeU, v = r.degreeV, f = r.controlPoints, m = r.knotsU, b = r.knotsV;
8186
+ if (!S.areValidRelations(c, f.length, m.length) || !S.areValidRelations(v, f[0].length, b.length)) throw new X("Invalid relations between control points, knot vector, and n");
8187
+ var w = f[0][0].length, M;
8188
8188
  h < c ? M = h : M = c;
8189
8189
  var P;
8190
8190
  h < v ? P = h : P = v;
@@ -8194,7 +8194,7 @@ var ii = { exports: {} };
8194
8194
  T[H] = l.zeros1d(w);
8195
8195
  for (var J = 0, et = c + 1; J < et; ) {
8196
8196
  var it = J++;
8197
- l.addMulMutate(T[H], L[D][it], d[I - c + it][C - v + H]);
8197
+ l.addMulMutate(T[H], L[D][it], f[I - c + it][C - v + H]);
8198
8198
  }
8199
8199
  }
8200
8200
  var nt = h - D;
@@ -8213,9 +8213,9 @@ var ii = { exports: {} };
8213
8213
  var s = t.knotsU.length - t.degreeU - 2, o = t.knotsV.length - t.degreeV - 2;
8214
8214
  return S.surfacePointGivenNM(s, o, t, n, r);
8215
8215
  }, S.surfacePointGivenNM = function(t, n, r, s, o) {
8216
- var h = r.degreeU, c = r.degreeV, v = r.controlPoints, d = r.knotsU, m = r.knotsV;
8217
- if (!S.areValidRelations(h, v.length, d.length) || !S.areValidRelations(c, v[0].length, m.length)) throw new X("Invalid relations between control points, knot vector, and n");
8218
- for (var b = v[0][0].length, w = S.knotSpanGivenN(t, h, s, d), M = S.knotSpanGivenN(n, c, o, m), P = S.basisFunctionsGivenKnotSpanIndex(w, s, h, d), z = S.basisFunctionsGivenKnotSpanIndex(M, o, c, m), I = w - h, C = M, L = l.zeros1d(b), B = l.zeros1d(b), T = 0, R = c + 1; T < R; ) {
8216
+ var h = r.degreeU, c = r.degreeV, v = r.controlPoints, f = r.knotsU, m = r.knotsV;
8217
+ if (!S.areValidRelations(h, v.length, f.length) || !S.areValidRelations(c, v[0].length, m.length)) throw new X("Invalid relations between control points, knot vector, and n");
8218
+ for (var b = v[0][0].length, w = S.knotSpanGivenN(t, h, s, f), M = S.knotSpanGivenN(n, c, o, m), P = S.basisFunctionsGivenKnotSpanIndex(w, s, h, f), z = S.basisFunctionsGivenKnotSpanIndex(M, o, c, m), I = w - h, C = M, L = l.zeros1d(b), B = l.zeros1d(b), T = 0, R = c + 1; T < R; ) {
8219
8219
  var F = T++;
8220
8220
  B = l.zeros1d(b), C = M - c + F;
8221
8221
  for (var j = 0, D = h + 1; j < D; ) {
@@ -8226,22 +8226,22 @@ var ii = { exports: {} };
8226
8226
  }
8227
8227
  return L;
8228
8228
  }, S.curveRegularSamplePoints = function(t, n) {
8229
- for (var r = S.curveDerivatives(t, t.knots[0], t.degree), s = 1 / n, o = s * s, h = r[0], c = l.mul(s, r[1]), v = l.mul(o * 0.5, r[2]), d = l.mul(o * s * 0.5, r[3]), m = l.add(v, v), b = l.add(d, d), w = l.mul(0.3333333333333333, d), M = [], P = 0, z = n + 1; P < z; )
8230
- P++, M.push(S.dehomogenize(h)), l.addAllMutate([h, c, v, w]), l.addAllMutate([c, m, d]), l.addAllMutate([m, b]), l.addAllMutate([v, d]);
8229
+ for (var r = S.curveDerivatives(t, t.knots[0], t.degree), s = 1 / n, o = s * s, h = r[0], c = l.mul(s, r[1]), v = l.mul(o * 0.5, r[2]), f = l.mul(o * s * 0.5, r[3]), m = l.add(v, v), b = l.add(f, f), w = l.mul(0.3333333333333333, f), M = [], P = 0, z = n + 1; P < z; )
8230
+ P++, M.push(S.dehomogenize(h)), l.addAllMutate([h, c, v, w]), l.addAllMutate([c, m, f]), l.addAllMutate([m, b]), l.addAllMutate([v, f]);
8231
8231
  return M;
8232
8232
  }, S.curveRegularSamplePoints2 = function(t, n) {
8233
- for (var r = S.curveDerivatives(t, t.knots[0], t.degree), s = 1 / n, o = s * s, h = r[0], c = l.mul(s, r[1]), v = l.mul(o * 0.5, r[2]), d = l.mul(o * s * 0.5, r[3]), m = l.add(v, v), b = l.add(d, d), w = l.mul(0.3333333333333333, d), M = [], P = 0, z = n + 1; P < z; )
8234
- P++, M.push(S.dehomogenize(h)), l.addAllMutate([h, c, v, w]), l.addAllMutate([c, m, d]), l.addAllMutate([m, b]), l.addAllMutate([v, d]);
8233
+ for (var r = S.curveDerivatives(t, t.knots[0], t.degree), s = 1 / n, o = s * s, h = r[0], c = l.mul(s, r[1]), v = l.mul(o * 0.5, r[2]), f = l.mul(o * s * 0.5, r[3]), m = l.add(v, v), b = l.add(f, f), w = l.mul(0.3333333333333333, f), M = [], P = 0, z = n + 1; P < z; )
8234
+ P++, M.push(S.dehomogenize(h)), l.addAllMutate([h, c, v, w]), l.addAllMutate([c, m, f]), l.addAllMutate([m, b]), l.addAllMutate([v, f]);
8235
8235
  return M;
8236
8236
  }, S.rationalSurfaceRegularSampleDerivatives = function(t, n, r, s) {
8237
- for (var o = S.surfaceRegularSampleDerivatives(t, n, r, s), h = [], c = n + 1, v = r + 1, d = s + 1, m = 0; m < c; ) {
8237
+ for (var o = S.surfaceRegularSampleDerivatives(t, n, r, s), h = [], c = n + 1, v = r + 1, f = s + 1, m = 0; m < c; ) {
8238
8238
  var b = m++, w = [];
8239
8239
  h.push(w);
8240
8240
  for (var M = 0; M < v; ) {
8241
- for (var P = M++, z = o[b][P], I = S.rational2d(z), C = S.weight2d(z), L = [], B = I[0][0].length, T = 0; T < d; ) {
8241
+ for (var P = M++, z = o[b][P], I = S.rational2d(z), C = S.weight2d(z), L = [], B = I[0][0].length, T = 0; T < f; ) {
8242
8242
  var R = T++;
8243
8243
  L.push([]);
8244
- for (var F = 0, j = d - R; F < j; ) {
8244
+ for (var F = 0, j = f - R; F < j; ) {
8245
8245
  for (var D = F++, V = I[R][D], q = 1, H = D + 1; q < H; ) {
8246
8246
  var J = q++;
8247
8247
  l.subMulMutate(V, At.get(D, J) * C[0][J], L[R][D - J]);
@@ -8263,9 +8263,9 @@ var ii = { exports: {} };
8263
8263
  }
8264
8264
  return h;
8265
8265
  }, S.surfaceRegularSampleDerivatives = function(t, n, r, s) {
8266
- var o = t.degreeU, h = t.degreeV, c = t.controlPoints, v = t.knotsU, d = t.knotsV, m = c[0][0].length;
8267
- (G.last(v) - v[0]) / n, (G.last(d) - d[0]) / r;
8268
- for (var b = S.regularlySpacedDerivativeBasisFunctions(o, v, n), w = b.item0, M = b.item1, P = S.regularlySpacedDerivativeBasisFunctions(h, d, r), z = P.item0, I = P.item1, C = [], L = n + 1, B = r + 1, T = 0; T < L; ) {
8266
+ var o = t.degreeU, h = t.degreeV, c = t.controlPoints, v = t.knotsU, f = t.knotsV, m = c[0][0].length;
8267
+ (G.last(v) - v[0]) / n, (G.last(f) - f[0]) / r;
8268
+ for (var b = S.regularlySpacedDerivativeBasisFunctions(o, v, n), w = b.item0, M = b.item1, P = S.regularlySpacedDerivativeBasisFunctions(h, f, r), z = P.item0, I = P.item1, C = [], L = n + 1, B = r + 1, T = 0; T < L; ) {
8269
8269
  var R = T++, F = [];
8270
8270
  C.push(F);
8271
8271
  for (var j = 0; j < B; ) {
@@ -8277,45 +8277,45 @@ var ii = { exports: {} };
8277
8277
  }, S.rationalSurfaceRegularSamplePoints = function(t, n, r) {
8278
8278
  return S.dehomogenize2d(S.surfaceRegularSamplePoints(t, n, r));
8279
8279
  }, S.surfaceRegularSamplePoints = function(t, n, r) {
8280
- var s = t.degreeU, o = t.degreeV, h = t.controlPoints, c = t.knotsU, v = t.knotsV, d = h[0][0].length;
8280
+ var s = t.degreeU, o = t.degreeV, h = t.controlPoints, c = t.knotsU, v = t.knotsV, f = h[0][0].length;
8281
8281
  (G.last(c) - c[0]) / n, (G.last(v) - v[0]) / r;
8282
8282
  for (var m = S.regularlySpacedBasisFunctions(s, c, n), b = m.item0, w = m.item1, M = S.regularlySpacedBasisFunctions(o, v, r), P = M.item0, z = M.item1, I = [], C = n + 1, L = r + 1, B = 0; B < C; ) {
8283
8283
  var T = B++, R = [];
8284
8284
  I.push(R);
8285
8285
  for (var F = 0; F < L; ) {
8286
8286
  var j = F++;
8287
- R.push(S.surfacePointGivenBasesKnotSpans(s, o, h, b[T], P[j], w[T], z[j], d));
8287
+ R.push(S.surfacePointGivenBasesKnotSpans(s, o, h, b[T], P[j], w[T], z[j], f));
8288
8288
  }
8289
8289
  }
8290
8290
  return I;
8291
8291
  }, S.regularlySpacedBasisFunctions = function(t, n, r) {
8292
- for (var s = n.length - t - 2, o = (G.last(n) - n[0]) / r, h = [], c = [], v = n[0], d = S.knotSpanGivenN(s, t, v, n), m = r + 1, b = 0; b < m; ) {
8293
- for (b++; v >= n[d + 1]; ) d++;
8294
- c.push(d), h.push(S.basisFunctionsGivenKnotSpanIndex(d, v, t, n)), v += o;
8292
+ for (var s = n.length - t - 2, o = (G.last(n) - n[0]) / r, h = [], c = [], v = n[0], f = S.knotSpanGivenN(s, t, v, n), m = r + 1, b = 0; b < m; ) {
8293
+ for (b++; v >= n[f + 1]; ) f++;
8294
+ c.push(f), h.push(S.basisFunctionsGivenKnotSpanIndex(f, v, t, n)), v += o;
8295
8295
  }
8296
8296
  return new Ot(c, h);
8297
8297
  }, S.regularlySpacedDerivativeBasisFunctions = function(t, n, r) {
8298
- for (var s = n.length - t - 2, o = (G.last(n) - n[0]) / r, h = [], c = [], v = n[0], d = S.knotSpanGivenN(s, t, v, n), m = r + 1, b = 0; b < m; ) {
8299
- for (b++; v >= n[d + 1]; ) d++;
8300
- c.push(d), h.push(S.derivativeBasisFunctionsGivenNI(d, v, t, s, n)), v += o;
8298
+ for (var s = n.length - t - 2, o = (G.last(n) - n[0]) / r, h = [], c = [], v = n[0], f = S.knotSpanGivenN(s, t, v, n), m = r + 1, b = 0; b < m; ) {
8299
+ for (b++; v >= n[f + 1]; ) f++;
8300
+ c.push(f), h.push(S.derivativeBasisFunctionsGivenNI(f, v, t, s, n)), v += o;
8301
8301
  }
8302
8302
  return new Ot(c, h);
8303
8303
  }, S.surfacePointGivenBasesKnotSpans = function(t, n, r, s, o, h, c, v) {
8304
- for (var d = l.zeros1d(v), m, b = s - t, w = o - n, M = 0, P = n + 1; M < P; ) {
8304
+ for (var f = l.zeros1d(v), m, b = s - t, w = o - n, M = 0, P = n + 1; M < P; ) {
8305
8305
  var z = M++;
8306
8306
  m = l.zeros1d(v);
8307
8307
  for (var I = 0, C = t + 1; I < C; ) {
8308
8308
  var L = I++;
8309
8309
  l.addMulMutate(m, h[L], r[b + L][w]);
8310
8310
  }
8311
- w++, l.addMulMutate(d, c[z], m);
8311
+ w++, l.addMulMutate(f, c[z], m);
8312
8312
  }
8313
- return d;
8314
- }, S.surfaceDerivativesGivenBasesKnotSpans = function(t, n, r, s, o, h, c, v, d) {
8313
+ return f;
8314
+ }, S.surfaceDerivativesGivenBasesKnotSpans = function(t, n, r, s, o, h, c, v, f) {
8315
8315
  var m = r[0][0].length, b;
8316
- d < t ? b = d : b = t;
8316
+ f < t ? b = f : b = t;
8317
8317
  var w;
8318
- d < n ? w = d : w = n;
8318
+ f < n ? w = f : w = n;
8319
8319
  for (var M = l.zeros3d(b + 1, w + 1, m), P = l.zeros2d(n + 1, m), z = 0, I = 0, C = b + 1; I < C; ) {
8320
8320
  for (var L = I++, B = 0, T = n + 1; B < T; ) {
8321
8321
  var R = B++;
@@ -8325,7 +8325,7 @@ var ii = { exports: {} };
8325
8325
  l.addMulMutate(P[R], h[L][D], r[s - t + D][o - n + R]);
8326
8326
  }
8327
8327
  }
8328
- var V = d - L;
8328
+ var V = f - L;
8329
8329
  V < w ? z = V : z = w;
8330
8330
  for (var q = 0, H = z + 1; q < H; ) {
8331
8331
  var J = q++;
@@ -8343,9 +8343,9 @@ var ii = { exports: {} };
8343
8343
  }, S.curveDerivativesGivenN = function(t, n, r, s) {
8344
8344
  var o = n.degree, h = n.controlPoints, c = n.knots;
8345
8345
  if (!S.areValidRelations(o, h.length, c.length)) throw new X("Invalid relations between control points, knot vector, and n");
8346
- var v = h[0].length, d;
8347
- s < o ? d = s : d = o;
8348
- for (var m = l.zeros2d(s + 1, v), b = S.knotSpanGivenN(t, o, r, c), w = S.derivativeBasisFunctionsGivenNI(b, r, o, d, c), M = 0, P = d + 1; M < P; )
8346
+ var v = h[0].length, f;
8347
+ s < o ? f = s : f = o;
8348
+ for (var m = l.zeros2d(s + 1, v), b = S.knotSpanGivenN(t, o, r, c), w = S.derivativeBasisFunctionsGivenNI(b, r, o, f, c), M = 0, P = f + 1; M < P; )
8349
8349
  for (var z = M++, I = 0, C = o + 1; I < C; ) {
8350
8350
  var L = I++;
8351
8351
  l.addMulMutate(m[z], w[z][L], h[b - o + L]);
@@ -8360,23 +8360,23 @@ var ii = { exports: {} };
8360
8360
  var s = n.degree, o = n.controlPoints, h = n.knots;
8361
8361
  if (!S.areValidRelations(s, o.length, h.length))
8362
8362
  throw new X("Invalid relations between control points, knot Array, and n");
8363
- for (var c = S.knotSpanGivenN(t, s, r, h), v = S.basisFunctionsGivenKnotSpanIndex(c, r, s, h), d = l.zeros1d(o[0].length), m = 0, b = s + 1; m < b; ) {
8363
+ for (var c = S.knotSpanGivenN(t, s, r, h), v = S.basisFunctionsGivenKnotSpanIndex(c, r, s, h), f = l.zeros1d(o[0].length), m = 0, b = s + 1; m < b; ) {
8364
8364
  var w = m++;
8365
- l.addMulMutate(d, v[w], o[c - s + w]);
8365
+ l.addMulMutate(f, v[w], o[c - s + w]);
8366
8366
  }
8367
- return d;
8367
+ return f;
8368
8368
  }, S.volumePoint = function(t, n, r, s) {
8369
8369
  var o = t.knotsU.length - t.degreeU - 2, h = t.knotsV.length - t.degreeV - 2, c = t.knotsW.length - t.degreeW - 2;
8370
8370
  return S.volumePointGivenNML(t, o, h, c, n, r, s);
8371
8371
  }, S.volumePointGivenNML = function(t, n, r, s, o, h, c) {
8372
8372
  if (!S.areValidRelations(t.degreeU, t.controlPoints.length, t.knotsU.length) || !S.areValidRelations(t.degreeV, t.controlPoints[0].length, t.knotsV.length) || !S.areValidRelations(t.degreeW, t.controlPoints[0][0].length, t.knotsW.length)) throw new X("Invalid relations between control points and knot vector");
8373
- for (var v = t.controlPoints, d = t.degreeU, m = t.degreeV, b = t.degreeW, w = t.knotsU, M = t.knotsV, P = t.knotsW, z = v[0][0][0].length, I = S.knotSpanGivenN(n, d, o, w), C = S.knotSpanGivenN(r, m, h, M), L = S.knotSpanGivenN(s, b, c, P), B = S.basisFunctionsGivenKnotSpanIndex(I, o, d, w), T = S.basisFunctionsGivenKnotSpanIndex(C, h, m, M), R = S.basisFunctionsGivenKnotSpanIndex(L, c, b, P), F = I - d, j = l.zeros1d(z), D = l.zeros1d(z), V = l.zeros1d(z), q = 0, H = b + 1; q < H; ) {
8373
+ for (var v = t.controlPoints, f = t.degreeU, m = t.degreeV, b = t.degreeW, w = t.knotsU, M = t.knotsV, P = t.knotsW, z = v[0][0][0].length, I = S.knotSpanGivenN(n, f, o, w), C = S.knotSpanGivenN(r, m, h, M), L = S.knotSpanGivenN(s, b, c, P), B = S.basisFunctionsGivenKnotSpanIndex(I, o, f, w), T = S.basisFunctionsGivenKnotSpanIndex(C, h, m, M), R = S.basisFunctionsGivenKnotSpanIndex(L, c, b, P), F = I - f, j = l.zeros1d(z), D = l.zeros1d(z), V = l.zeros1d(z), q = 0, H = b + 1; q < H; ) {
8374
8374
  var J = q++;
8375
8375
  V = l.zeros1d(z);
8376
8376
  for (var et = L - b + J, it = 0, nt = m + 1; it < nt; ) {
8377
8377
  var st = it++;
8378
8378
  D = l.zeros1d(z);
8379
- for (var tt = C - m + st, at = 0, O = d + 1; at < O; ) {
8379
+ for (var tt = C - m + st, at = 0, O = f + 1; at < O; ) {
8380
8380
  var lt = at++;
8381
8381
  l.addMulMutate(D, B[lt], v[F + lt][tt][et]);
8382
8382
  }
@@ -8389,16 +8389,16 @@ var ii = { exports: {} };
8389
8389
  var s = S.knotSpan(n, t, r), o = r.length - 1, h = o - n - 1;
8390
8390
  return S.derivativeBasisFunctionsGivenNI(s, t, n, h, r);
8391
8391
  }, S.derivativeBasisFunctionsGivenNI = function(t, n, r, s, o) {
8392
- var h = l.zeros2d(r + 1, r + 1), c = l.zeros1d(r + 1), v = l.zeros1d(r + 1), d = 0, m = 0;
8392
+ var h = l.zeros2d(r + 1, r + 1), c = l.zeros1d(r + 1), v = l.zeros1d(r + 1), f = 0, m = 0;
8393
8393
  h[0][0] = 1;
8394
8394
  for (var b = 1, w = r + 1; b < w; ) {
8395
8395
  var M = b++;
8396
- c[M] = n - o[t + 1 - M], v[M] = o[t + M] - n, d = 0;
8396
+ c[M] = n - o[t + 1 - M], v[M] = o[t + M] - n, f = 0;
8397
8397
  for (var P = 0; P < M; ) {
8398
8398
  var z = P++;
8399
- h[M][z] = v[z + 1] + c[M - z], m = h[z][M - 1] / h[M][z], h[z][M] = d + v[z + 1] * m, d = c[M - z] * m;
8399
+ h[M][z] = v[z + 1] + c[M - z], m = h[z][M - 1] / h[M][z], h[z][M] = f + v[z + 1] * m, f = c[M - z] * m;
8400
8400
  }
8401
- h[M][M] = d;
8401
+ h[M][M] = f;
8402
8402
  }
8403
8403
  for (var I = l.zeros2d(s + 1, r + 1), C = l.zeros2d(2, r + 1), L = 0, B = 1, T = 0, R = 0, F = 0, j = 0, D = 0, V = 0, q = r + 1; V < q; ) {
8404
8404
  var H = V++;
@@ -8420,7 +8420,7 @@ var ii = { exports: {} };
8420
8420
  }
8421
8421
  }
8422
8422
  for (var kt = r, Et = 1, zt = s + 1; Et < zt; ) {
8423
- for (var Bt = Et++, ne = 0, de = r + 1; ne < de; ) {
8423
+ for (var Bt = Et++, ne = 0, fe = r + 1; ne < fe; ) {
8424
8424
  var $t = ne++;
8425
8425
  I[Bt][$t] *= kt;
8426
8426
  }
@@ -8431,14 +8431,14 @@ var ii = { exports: {} };
8431
8431
  var s = S.knotSpan(n, t, r);
8432
8432
  return S.basisFunctionsGivenKnotSpanIndex(s, t, n, r);
8433
8433
  }, S.basisFunctionsGivenKnotSpanIndex = function(t, n, r, s) {
8434
- var o = l.zeros1d(r + 1), h = l.zeros1d(r + 1), c = l.zeros1d(r + 1), v = 0, d = 0;
8434
+ var o = l.zeros1d(r + 1), h = l.zeros1d(r + 1), c = l.zeros1d(r + 1), v = 0, f = 0;
8435
8435
  o[0] = 1;
8436
8436
  for (var m = 1, b = r + 1; m < b; ) {
8437
8437
  var w = m++;
8438
8438
  h[w] = n - s[t + 1 - w], c[w] = s[t + w] - n, v = 0;
8439
8439
  for (var M = 0; M < w; ) {
8440
8440
  var P = M++;
8441
- d = o[P] / (c[P + 1] + h[w - P]), o[P] = v + c[P + 1] * d, v = h[w - P] * d;
8441
+ f = o[P] / (c[P + 1] + h[w - P]), o[P] = v + c[P + 1] * f, v = h[w - P] * f;
8442
8442
  }
8443
8443
  o[w] = v;
8444
8444
  }
@@ -8478,8 +8478,8 @@ var ii = { exports: {} };
8478
8478
  }, S.homogenize1d = function(t, n) {
8479
8479
  var r = t.length, s = t[0].length, o = [], h = 0, c = [], v;
8480
8480
  n != null ? v = n : v = l.rep(t.length, 1);
8481
- for (var d = 0; d < r; ) {
8482
- var m = d++, b = [];
8481
+ for (var f = 0; f < r; ) {
8482
+ var m = f++, b = [];
8483
8483
  c = t[m], h = v[m];
8484
8484
  for (var w = 0; w < s; ) {
8485
8485
  var M = w++;
@@ -8497,31 +8497,31 @@ var ii = { exports: {} };
8497
8497
  o = h;
8498
8498
  }
8499
8499
  for (var v = 0; v < r; ) {
8500
- var d = v++;
8501
- s.push(S.homogenize1d(t[d], o[d]));
8500
+ var f = v++;
8501
+ s.push(S.homogenize1d(t[f], o[f]));
8502
8502
  }
8503
8503
  return s;
8504
8504
  };
8505
- var rt = f.eval.Intersect = function() {
8505
+ var rt = d.eval.Intersect = function() {
8506
8506
  };
8507
8507
  p["verb.eval.Intersect"] = rt, rt.__name__ = ["verb", "eval", "Intersect"], rt.surfaces = function(t, n, r) {
8508
8508
  var s = Pt.rationalSurfaceAdaptive(t), o = Pt.rationalSurfaceAdaptive(n), h = rt.meshes(s, o), c = h.map(function(v) {
8509
- return v.map(function(d) {
8510
- return rt.surfacesAtPointWithEstimate(t, n, d.uv0, d.uv1, r);
8509
+ return v.map(function(f) {
8510
+ return rt.surfacesAtPointWithEstimate(t, n, f.uv0, f.uv1, r);
8511
8511
  });
8512
8512
  });
8513
8513
  return c.map(function(v) {
8514
- return ot.rationalInterpCurve(v.map(function(d) {
8515
- return d.point;
8514
+ return ot.rationalInterpCurve(v.map(function(f) {
8515
+ return f.point;
8516
8516
  }), 3);
8517
8517
  });
8518
8518
  }, rt.surfacesAtPointWithEstimate = function(t, n, r, s, o) {
8519
- var h, c, v, d, m, b, w, M, P, z, I, C, L, B = 5, T = 0;
8519
+ var h, c, v, f, m, b, w, M, P, z, I, C, L, B = 5, T = 0;
8520
8520
  do {
8521
- if (h = S.rationalSurfaceDerivatives(t, r[0], r[1], 1), c = h[0][0], d = h[1][0], m = h[0][1], v = l.normalized(l.cross(d, m)), b = l.dot(v, c), w = S.rationalSurfaceDerivatives(n, s[0], s[1], 1), M = w[0][0], z = w[1][0], I = w[0][1], P = l.normalized(l.cross(z, I)), C = l.dot(P, M), L = l.distSquared(c, M), L < o * o) break;
8521
+ if (h = S.rationalSurfaceDerivatives(t, r[0], r[1], 1), c = h[0][0], f = h[1][0], m = h[0][1], v = l.normalized(l.cross(f, m)), b = l.dot(v, c), w = S.rationalSurfaceDerivatives(n, s[0], s[1], 1), M = w[0][0], z = w[1][0], I = w[0][1], P = l.normalized(l.cross(z, I)), C = l.dot(P, M), L = l.distSquared(c, M), L < o * o) break;
8522
8522
  var R = l.normalized(l.cross(v, P)), F = l.dot(R, c), j = rt.threePlanes(v, b, P, C, R, F);
8523
8523
  if (j == null) throw new X("panic!");
8524
- var D = l.sub(j, c), V = l.sub(j, M), q = l.cross(d, v), H = l.cross(m, v), J = l.cross(z, P), et = l.cross(I, P), it = l.dot(H, D) / l.dot(H, d), nt = l.dot(q, D) / l.dot(q, m), st = l.dot(et, V) / l.dot(et, z), tt = l.dot(J, V) / l.dot(J, I);
8524
+ var D = l.sub(j, c), V = l.sub(j, M), q = l.cross(f, v), H = l.cross(m, v), J = l.cross(z, P), et = l.cross(I, P), it = l.dot(H, D) / l.dot(H, f), nt = l.dot(q, D) / l.dot(q, m), st = l.dot(et, V) / l.dot(et, z), tt = l.dot(J, V) / l.dot(J, I);
8525
8525
  r = l.add([it, nt], r), s = l.add([st, tt], s), T++;
8526
8526
  } while (T < B);
8527
8527
  return new Pn(r, s, c, L);
@@ -8534,15 +8534,15 @@ var ii = { exports: {} };
8534
8534
  }).filter(function(c) {
8535
8535
  return l.distSquared(c.min.point, c.max.point) > $.EPSILON;
8536
8536
  }), function(c, v) {
8537
- var d = l.sub(c.min.uv0, v.min.uv0), m = l.dot(d, d), b = l.sub(c.max.uv0, v.max.uv0), w = l.dot(b, b), M = l.sub(c.min.uv0, v.max.uv0), P = l.dot(M, M), z = l.sub(c.max.uv0, v.min.uv0), I = l.dot(z, z);
8537
+ var f = l.sub(c.min.uv0, v.min.uv0), m = l.dot(f, f), b = l.sub(c.max.uv0, v.max.uv0), w = l.dot(b, b), M = l.sub(c.min.uv0, v.max.uv0), P = l.dot(M, M), z = l.sub(c.max.uv0, v.min.uv0), I = l.dot(z, z);
8538
8538
  return m < $.EPSILON && w < $.EPSILON || P < $.EPSILON && I < $.EPSILON;
8539
8539
  });
8540
8540
  return rt.makeMeshIntersectionPolylines(h);
8541
8541
  }, rt.meshSlices = function(t, n, r, s) {
8542
- for (var o = new Fe(t), h = o.boundingBox(), c = h.min[0], v = h.min[1], d = h.max[0], m = h.max[1], b = l.span(n, r, s), w = [], M = 0; M < b.length; ) {
8542
+ for (var o = new Fe(t), h = o.boundingBox(), c = h.min[0], v = h.min[1], f = h.max[0], m = h.max[1], b = l.span(n, r, s), w = [], M = 0; M < b.length; ) {
8543
8543
  var P = b[M];
8544
8544
  ++M;
8545
- var z = [[c, v, P], [d, v, P], [d, m, P], [c, m, P]], I = [[0, 0], [1, 0], [1, 1], [0, 1]], C = [[0, 1, 2], [0, 2, 3]], L = new fe(C, z, null, I);
8545
+ var z = [[c, v, P], [f, v, P], [f, m, P], [c, m, P]], I = [[0, 0], [1, 0], [1, 1], [0, 1]], C = [[0, 1, 2], [0, 2, 3]], L = new de(C, z, null, I);
8546
8546
  w.push(rt.meshes(t, L, o));
8547
8547
  }
8548
8548
  return w;
@@ -8557,10 +8557,10 @@ var ii = { exports: {} };
8557
8557
  ++h, o.push(c.min), o.push(c.max);
8558
8558
  }
8559
8559
  for (var v = 0; v < o.length; ) {
8560
- var d = o[v];
8561
- if (++v, d.adj == null) {
8562
- var m = rt.lookupAdjacentSegment(d, s, t.length);
8563
- m != null && m.adj == null && (d.adj = m, m.adj = d);
8560
+ var f = o[v];
8561
+ if (++v, f.adj == null) {
8562
+ var m = rt.lookupAdjacentSegment(f, s, t.length);
8563
+ m != null && m.adj == null && (f.adj = m, m.adj = f);
8564
8564
  }
8565
8565
  }
8566
8566
  var b = o.filter(function(B) {
@@ -8598,8 +8598,8 @@ var ii = { exports: {} };
8598
8598
  r == null && (r = 1e-3), s != null ? s = s : s = new Se(t), o != null ? o = o : o = new De(n);
8599
8599
  var h = rt.boundingBoxTrees(s, o, r);
8600
8600
  return G.unique(h.map(function(c) {
8601
- var v = c.item0, d = c.item1, m = G.first(v.knots), b = G.last(v.knots), w = (m + b) / 2, M = G.first(d.knotsU), P = G.last(d.knotsU), z = G.first(d.knotsV), I = G.last(d.knotsV), C = [(M + P) / 2, (z + I) / 2];
8602
- return rt.curveAndSurfaceWithEstimate(v, d, [w].concat(C), r);
8601
+ var v = c.item0, f = c.item1, m = G.first(v.knots), b = G.last(v.knots), w = (m + b) / 2, M = G.first(f.knotsU), P = G.last(f.knotsU), z = G.first(f.knotsV), I = G.last(f.knotsV), C = [(M + P) / 2, (z + I) / 2];
8602
+ return rt.curveAndSurfaceWithEstimate(v, f, [w].concat(C), r);
8603
8603
  }).filter(function(c) {
8604
8604
  return l.distSquared(c.curvePoint, c.surfacePoint) < r * r;
8605
8605
  }), function(c, v) {
@@ -8607,11 +8607,11 @@ var ii = { exports: {} };
8607
8607
  });
8608
8608
  }, rt.curveAndSurfaceWithEstimate = function(t, n, r, s) {
8609
8609
  s == null && (s = 1e-3);
8610
- var o = function(d) {
8611
- var m = S.rationalCurvePoint(t, d[0]), b = S.rationalSurfacePoint(n, d[1], d[2]), w = l.sub(m, b);
8610
+ var o = function(f) {
8611
+ var m = S.rationalCurvePoint(t, f[0]), b = S.rationalSurfacePoint(n, f[1], f[2]), w = l.sub(m, b);
8612
8612
  return l.dot(w, w);
8613
- }, h = function(d) {
8614
- var m = S.rationalCurveDerivatives(t, d[0], 1), b = S.rationalSurfaceDerivatives(n, d[1], d[2], 1), w = l.sub(b[0][0], m[0]), M = l.mul(-1, m[1]), P = b[1][0], z = b[0][1];
8613
+ }, h = function(f) {
8614
+ var m = S.rationalCurveDerivatives(t, f[0], 1), b = S.rationalSurfaceDerivatives(n, f[1], f[2], 1), w = l.sub(b[0][0], m[0]), M = l.mul(-1, m[1]), P = b[1][0], z = b[0][1];
8615
8615
  return [2 * l.dot(M, w), 2 * l.dot(P, w), 2 * l.dot(z, w)];
8616
8616
  }, c = me.uncmin(o, r, s * s, h), v = c.solution;
8617
8617
  return new xn(v[0], [v[1], v[2]], S.rationalCurvePoint(t, v[0]), S.rationalSurfacePoint(n, v[1], v[2]));
@@ -8619,10 +8619,10 @@ var ii = { exports: {} };
8619
8619
  for (var s = rt.boundingBoxTrees(new ke(t), new Ce(n), r), o = [], h = 0; h < s.length; ) {
8620
8620
  var c = s[h];
8621
8621
  ++h;
8622
- var v = c.item0, d = c.item1, m = rt.segmentWithTriangle(t.points[v], t.points[v + 1], n.points, n.faces[d]);
8622
+ var v = c.item0, f = c.item1, m = rt.segmentWithTriangle(t.points[v], t.points[v + 1], n.points, n.faces[f]);
8623
8623
  if (m != null) {
8624
- var b = m.point, w = l.lerp(m.p, [t.params[v]], [t.params[v + 1]])[0], M = qt.triangleUVFromPoint(n, d, b);
8625
- o.push(new Mn(b, w, M, v, d));
8624
+ var b = m.point, w = l.lerp(m.p, [t.params[v]], [t.params[v + 1]])[0], M = qt.triangleUVFromPoint(n, f, b);
8625
+ o.push(new Mn(b, w, M, v, f));
8626
8626
  }
8627
8627
  }
8628
8628
  return o;
@@ -8633,15 +8633,15 @@ var ii = { exports: {} };
8633
8633
  for (var h = []; s.length > 0; ) {
8634
8634
  var c = s.pop(), v = o.pop();
8635
8635
  if (!(c.empty() || v.empty()) && c.boundingBox().intersects(v.boundingBox(), r)) {
8636
- var d = c.indivisible(r), m = v.indivisible(r);
8637
- if (d && m) {
8636
+ var f = c.indivisible(r), m = v.indivisible(r);
8637
+ if (f && m) {
8638
8638
  h.push(new Ot(c.yield(), v.yield()));
8639
8639
  continue;
8640
- } else if (d && !m) {
8640
+ } else if (f && !m) {
8641
8641
  var b = v.split();
8642
8642
  s.push(c), o.push(b.item1), s.push(c), o.push(b.item0);
8643
8643
  continue;
8644
- } else if (!d && m) {
8644
+ } else if (!f && m) {
8645
8645
  var w = c.split();
8646
8646
  s.push(w.item1), o.push(v), s.push(w.item0), o.push(v);
8647
8647
  continue;
@@ -8667,10 +8667,10 @@ var ii = { exports: {} };
8667
8667
  }, c = function(M) {
8668
8668
  var P = S.rationalCurveDerivatives(t, M[0], 1), z = S.rationalCurveDerivatives(n, M[1], 1), I = l.sub(P[0], z[0]), C = P[1], L = l.mul(-1, z[1]);
8669
8669
  return [2 * l.dot(C, I), 2 * l.dot(L, I)];
8670
- }, v = me.uncmin(h, [r, s], o * o, c), d = v.solution[0], m = v.solution[1], b = S.rationalCurvePoint(t, d), w = S.rationalCurvePoint(n, m);
8671
- return new Ye(b, w, d, m);
8670
+ }, v = me.uncmin(h, [r, s], o * o, c), f = v.solution[0], m = v.solution[1], b = S.rationalCurvePoint(t, f), w = S.rationalCurvePoint(n, m);
8671
+ return new Ye(b, w, f, m);
8672
8672
  }, rt.triangles = function(t, n, r, s) {
8673
- var o = t.faces[n], h = r.faces[s], c = qt.getTriangleNorm(t.points, o), v = qt.getTriangleNorm(r.points, h), d = t.points[o[0]], m = r.points[h[0]], b = rt.planes(d, c, m, v);
8673
+ var o = t.faces[n], h = r.faces[s], c = qt.getTriangleNorm(t.points, o), v = qt.getTriangleNorm(r.points, h), f = t.points[o[0]], m = r.points[h[0]], b = rt.planes(f, c, m, v);
8674
8674
  if (b == null) return null;
8675
8675
  var w = rt.clipRayInCoplanarTriangle(b, t, n);
8676
8676
  if (w == null) return null;
@@ -8679,8 +8679,8 @@ var ii = { exports: {} };
8679
8679
  var P = rt.mergeTriangleClipIntervals(w, M, t, n, r, s);
8680
8680
  return P == null ? null : new ee(new Ve(P.min.uv0, P.min.uv1, P.min.point, n, s), new Ve(P.max.uv0, P.max.uv1, P.max.point, n, s));
8681
8681
  }, rt.clipRayInCoplanarTriangle = function(t, n, r) {
8682
- for (var s = n.faces[r], o = [n.points[s[0]], n.points[s[1]], n.points[s[2]]], h = [n.uvs[s[0]], n.uvs[s[1]], n.uvs[s[2]]], c = [l.sub(h[1], h[0]), l.sub(h[2], h[1]), l.sub(h[0], h[2])], v = [l.sub(o[1], o[0]), l.sub(o[2], o[1]), l.sub(o[0], o[2])], d = v.map(l.normalized), m = v.map(l.norm), b = null, w = null, M = 0; M < 3; ) {
8683
- var P = M++, z = o[P], I = d[P], C = rt.rays(z, I, t.origin, t.dir);
8682
+ for (var s = n.faces[r], o = [n.points[s[0]], n.points[s[1]], n.points[s[2]]], h = [n.uvs[s[0]], n.uvs[s[1]], n.uvs[s[2]]], c = [l.sub(h[1], h[0]), l.sub(h[2], h[1]), l.sub(h[0], h[2])], v = [l.sub(o[1], o[0]), l.sub(o[2], o[1]), l.sub(o[0], o[2])], f = v.map(l.normalized), m = v.map(l.norm), b = null, w = null, M = 0; M < 3; ) {
8683
+ var P = M++, z = o[P], I = f[P], C = rt.rays(z, I, t.origin, t.dir);
8684
8684
  if (C != null) {
8685
8685
  var L = C.u0, B = C.u1;
8686
8686
  L < -$.EPSILON || L > m[P] + $.EPSILON || ((b == null || B < b.u) && (b = new sn(B, l.onRay(t.origin, t.dir, B), l.onRay(h[P], c[P], L / m[P]))), (w == null || B > w.u) && (w = new sn(B, l.onRay(t.origin, t.dir, B), l.onRay(h[P], c[P], L / m[P]))));
@@ -8693,13 +8693,13 @@ var ii = { exports: {} };
8693
8693
  t.min.u > n.min.u ? c = new Ot(t.min, 0) : c = new Ot(n.min, 1);
8694
8694
  var v;
8695
8695
  t.max.u < n.max.u ? v = new Ot(t.max, 0) : v = new Ot(n.max, 1);
8696
- var d = new ee(new Ve(null, null, c.item0.point, s, h), new Ve(null, null, v.item0.point, s, h));
8697
- return c.item1 == 0 ? (d.min.uv0 = c.item0.uv, d.min.uv1 = qt.triangleUVFromPoint(o, h, c.item0.point)) : (d.min.uv0 = qt.triangleUVFromPoint(r, s, c.item0.point), d.min.uv1 = c.item0.uv), v.item1 == 0 ? (d.max.uv0 = v.item0.uv, d.max.uv1 = qt.triangleUVFromPoint(o, h, v.item0.point)) : (d.max.uv0 = qt.triangleUVFromPoint(r, s, v.item0.point), d.max.uv1 = v.item0.uv), d;
8696
+ var f = new ee(new Ve(null, null, c.item0.point, s, h), new Ve(null, null, v.item0.point, s, h));
8697
+ return c.item1 == 0 ? (f.min.uv0 = c.item0.uv, f.min.uv1 = qt.triangleUVFromPoint(o, h, c.item0.point)) : (f.min.uv0 = qt.triangleUVFromPoint(r, s, c.item0.point), f.min.uv1 = c.item0.uv), v.item1 == 0 ? (f.max.uv0 = v.item0.uv, f.max.uv1 = qt.triangleUVFromPoint(o, h, v.item0.point)) : (f.max.uv0 = qt.triangleUVFromPoint(r, s, v.item0.point), f.max.uv1 = v.item0.uv), f;
8698
8698
  }, rt.planes = function(t, n, r, s) {
8699
8699
  var o = l.cross(n, s);
8700
8700
  if (l.dot(o, o) < $.EPSILON) return null;
8701
- var h = 0, c = Math.abs(o[0]), v = Math.abs(o[1]), d = Math.abs(o[2]);
8702
- v > c && (h = 1, c = v), d > c && (h = 2, c = d);
8701
+ var h = 0, c = Math.abs(o[0]), v = Math.abs(o[1]), f = Math.abs(o[2]);
8702
+ v > c && (h = 1, c = v), f > c && (h = 2, c = f);
8703
8703
  var m, b, w, M;
8704
8704
  h == 0 ? (m = n[1], b = n[2], w = s[1], M = s[2]) : h == 1 ? (m = n[0], b = n[2], w = s[0], M = s[2]) : (m = n[0], b = n[1], w = s[0], M = s[1]);
8705
8705
  var P = -l.dot(t, n), z = -l.dot(r, s), I = m * M - b * w, C = (b * z - P * M) / I, L = (P * w - m * z) / I, B;
@@ -8707,34 +8707,34 @@ var ii = { exports: {} };
8707
8707
  }, rt.threePlanes = function(t, n, r, s, o, h) {
8708
8708
  var c = l.cross(r, o), v = l.dot(t, c);
8709
8709
  if (Math.abs(v) < $.EPSILON) return null;
8710
- var d = l.sub(l.mul(h, r), l.mul(s, o)), m = l.add(l.mul(n, c), l.cross(t, d));
8710
+ var f = l.sub(l.mul(h, r), l.mul(s, o)), m = l.add(l.mul(n, c), l.cross(t, f));
8711
8711
  return l.mul(1 / v, m);
8712
8712
  }, rt.polylines = function(t, n, r) {
8713
8713
  for (var s = rt.boundingBoxTrees(new ke(t), new ke(n), r), o = [], h = 0; h < s.length; ) {
8714
8714
  var c = s[h];
8715
8715
  ++h;
8716
- var v = c.item0, d = c.item1, m = rt.segments(t.points[v], t.points[v + 1], n.points[d], n.points[d + 1], r);
8717
- m != null && (m.u0 = l.lerp(m.u0, [t.params[v]], [t.params[v + 1]])[0], m.u1 = l.lerp(m.u1, [n.params[d]], [n.params[d + 1]])[0], o.push(m));
8716
+ var v = c.item0, f = c.item1, m = rt.segments(t.points[v], t.points[v + 1], n.points[f], n.points[f + 1], r);
8717
+ m != null && (m.u0 = l.lerp(m.u0, [t.params[v]], [t.params[v + 1]])[0], m.u1 = l.lerp(m.u1, [n.params[f]], [n.params[f + 1]])[0], o.push(m));
8718
8718
  }
8719
8719
  return o;
8720
8720
  }, rt.segments = function(t, n, r, s, o) {
8721
- var h = l.sub(n, t), c = Math.sqrt(l.dot(h, h)), v = l.mul(1 / c, h), d = l.sub(s, r), m = Math.sqrt(l.dot(d, d)), b = l.mul(1 / m, d), w = rt.rays(t, v, r, b);
8721
+ var h = l.sub(n, t), c = Math.sqrt(l.dot(h, h)), v = l.mul(1 / c, h), f = l.sub(s, r), m = Math.sqrt(l.dot(f, f)), b = l.mul(1 / m, f), w = rt.rays(t, v, r, b);
8722
8722
  if (w != null) {
8723
- var M = Math.min(Math.max(0, w.u0 / c), 1), P = Math.min(Math.max(0, w.u1 / m), 1), z = l.onRay(t, h, M), I = l.onRay(r, d, P), C = l.distSquared(z, I);
8723
+ var M = Math.min(Math.max(0, w.u0 / c), 1), P = Math.min(Math.max(0, w.u1 / m), 1), z = l.onRay(t, h, M), I = l.onRay(r, f, P), C = l.distSquared(z, I);
8724
8724
  if (C < o * o) return new Ye(z, I, M, P);
8725
8725
  }
8726
8726
  return null;
8727
8727
  }, rt.rays = function(t, n, r, s) {
8728
- var o = l.dot(n, s), h = l.dot(n, r), c = l.dot(n, t), v = l.dot(s, r), d = l.dot(s, t), m = l.dot(n, n), b = l.dot(s, s), w = m * b - o * o;
8728
+ var o = l.dot(n, s), h = l.dot(n, r), c = l.dot(n, t), v = l.dot(s, r), f = l.dot(s, t), m = l.dot(n, n), b = l.dot(s, s), w = m * b - o * o;
8729
8729
  if (Math.abs(w) < $.EPSILON) return null;
8730
- var M = o * (h - c) - m * (v - d), P = M / w, z = (h - c + P * o) / m, I = l.onRay(t, n, z), C = l.onRay(r, s, P);
8730
+ var M = o * (h - c) - m * (v - f), P = M / w, z = (h - c + P * o) / m, I = l.onRay(t, n, z), C = l.onRay(r, s, P);
8731
8731
  return new Ye(I, C, z, P);
8732
8732
  }, rt.segmentWithTriangle = function(t, n, r, s) {
8733
- var o = r[s[0]], h = r[s[1]], c = r[s[2]], v = l.sub(h, o), d = l.sub(c, o), m = l.cross(v, d), b = l.sub(n, t), w = l.sub(t, o), M = -l.dot(m, w), P = l.dot(m, b);
8733
+ var o = r[s[0]], h = r[s[1]], c = r[s[2]], v = l.sub(h, o), f = l.sub(c, o), m = l.cross(v, f), b = l.sub(n, t), w = l.sub(t, o), M = -l.dot(m, w), P = l.dot(m, b);
8734
8734
  if (Math.abs(P) < $.EPSILON) return null;
8735
8735
  var z = M / P;
8736
8736
  if (z < 0 || z > 1) return null;
8737
- var I = l.add(t, l.mul(z, b)), C = l.dot(v, d), L = l.dot(v, v), B = l.dot(d, d), T = l.sub(I, o), R = l.dot(T, v), F = l.dot(T, d), j = C * C - L * B;
8737
+ var I = l.add(t, l.mul(z, b)), C = l.dot(v, f), L = l.dot(v, v), B = l.dot(f, f), T = l.sub(I, o), R = l.dot(T, v), F = l.dot(T, f), j = C * C - L * B;
8738
8738
  if (Math.abs(j) < $.EPSILON) return null;
8739
8739
  var D = (C * F - B * R) / j, V = (C * R - L * F) / j;
8740
8740
  return D > 1 + $.EPSILON || V > 1 + $.EPSILON || V < -$.EPSILON || D < -$.EPSILON || D + V > 1 + $.EPSILON ? null : new An(I, D, V, z);
@@ -8744,11 +8744,11 @@ var ii = { exports: {} };
8744
8744
  var h = l.dot(s, l.sub(r, t)), c = h / o;
8745
8745
  return c > 1 + $.EPSILON || c < -$.EPSILON ? null : { p: c };
8746
8746
  };
8747
- var ot = f.eval.Make = function() {
8747
+ var ot = d.eval.Make = function() {
8748
8748
  };
8749
8749
  p["verb.eval.Make"] = ot, ot.__name__ = ["verb", "eval", "Make"], ot.rationalTranslationalSurface = function(t, n) {
8750
- for (var r = S.rationalCurvePoint(n, G.first(n.knots)), s = G.first(n.knots), o = G.last(n.knots), h = 2 * n.controlPoints.length, c = (o - s) / (h - 1), v = [], d = 0; d < h; ) {
8751
- var m = d++, b = l.sub(S.rationalCurvePoint(n, s + m * c), r), w = ct.rationalCurveTransform(t, [[1, 0, 0, b[0]], [0, 1, 0, b[1]], [0, 0, 1, b[2]], [0, 0, 0, 1]]);
8750
+ for (var r = S.rationalCurvePoint(n, G.first(n.knots)), s = G.first(n.knots), o = G.last(n.knots), h = 2 * n.controlPoints.length, c = (o - s) / (h - 1), v = [], f = 0; f < h; ) {
8751
+ var m = f++, b = l.sub(S.rationalCurvePoint(n, s + m * c), r), w = ct.rationalCurveTransform(t, [[1, 0, 0, b[0]], [0, 1, 0, b[1]], [0, 0, 1, b[2]], [0, 0, 0, 1]]);
8752
8752
  v.push(w);
8753
8753
  }
8754
8754
  return ot.loftedSurface(v);
@@ -8761,7 +8761,7 @@ var ii = { exports: {} };
8761
8761
  r ? s = t.knotsV : s = t.knotsU;
8762
8762
  var o;
8763
8763
  r ? o = t.degreeV : o = t.degreeU;
8764
- for (var h = vt.knotMultiplicities(s), c = -1, v = 0, d = h.length; v < d; ) {
8764
+ for (var h = vt.knotMultiplicities(s), c = -1, v = 0, f = h.length; v < f; ) {
8765
8765
  var m = v++;
8766
8766
  if (Math.abs(n - h[m].knot) < $.EPSILON) {
8767
8767
  c = m;
@@ -8785,11 +8785,11 @@ var ii = { exports: {} };
8785
8785
  var r = t[0].degree;
8786
8786
  n == null && (n = 3), n > t.length - 1 && (n = t.length - 1);
8787
8787
  for (var s = t[0].knots, o = [], h = [], c = 0, v = t[0].controlPoints.length; c < v; ) {
8788
- var d = [c++], m = t.map(/* @__PURE__ */ function(w) {
8788
+ var f = [c++], m = t.map(/* @__PURE__ */ function(w) {
8789
8789
  return function(M) {
8790
8790
  return M.controlPoints[w[0]];
8791
8791
  };
8792
- }(d)), b = ot.rationalInterpCurve(m, n, !0);
8792
+ }(f)), b = ot.rationalInterpCurve(m, n, !0);
8793
8793
  h.push(b.controlPoints), o = b.knots;
8794
8794
  }
8795
8795
  return new Ft(r, n, s, o, h);
@@ -8805,7 +8805,7 @@ var ii = { exports: {} };
8805
8805
  return n == null && (n = l.rep(t.length, 1)), new Ct(r, s, S.homogenize1d(t, n));
8806
8806
  }, ot.fourPointSurface = function(t, n, r, s, o) {
8807
8807
  o == null && (o = 3);
8808
- for (var h = o, c = [], v = 0, d = o + 1; v < d; ) {
8808
+ for (var h = o, c = [], v = 0, f = o + 1; v < f; ) {
8809
8809
  for (var m = v++, b = [], w = 0, M = o + 1; w < M; ) {
8810
8810
  var P = w++, z = 1 - m / h, I = l.lerp(z, t, n), C = l.lerp(z, s, r), L = l.lerp(1 - P / h, I, C);
8811
8811
  L.push(1), b.push(L);
@@ -8817,23 +8817,23 @@ var ii = { exports: {} };
8817
8817
  }, ot.ellipseArc = function(t, n, r, s, o) {
8818
8818
  var h = l.norm(n), c = l.norm(r);
8819
8819
  n = l.normalized(n), r = l.normalized(r), o < s && (o = 2 * Math.PI + s);
8820
- var v = o - s, d = 0;
8821
- v <= Math.PI / 2 ? d = 1 : v <= Math.PI ? d = 2 : v <= 3 * Math.PI / 2 ? d = 3 : d = 4;
8822
- var m = v / d, b = Math.cos(m / 2), w = l.add(t, l.add(l.mul(h * Math.cos(s), n), l.mul(c * Math.sin(s), r))), M = l.sub(l.mul(Math.cos(s), r), l.mul(Math.sin(s), n)), P = [], z = l.zeros1d(2 * d + 3), I = 0, C = s, L = l.zeros1d(d * 2);
8820
+ var v = o - s, f = 0;
8821
+ v <= Math.PI / 2 ? f = 1 : v <= Math.PI ? f = 2 : v <= 3 * Math.PI / 2 ? f = 3 : f = 4;
8822
+ var m = v / f, b = Math.cos(m / 2), w = l.add(t, l.add(l.mul(h * Math.cos(s), n), l.mul(c * Math.sin(s), r))), M = l.sub(l.mul(Math.cos(s), r), l.mul(Math.sin(s), n)), P = [], z = l.zeros1d(2 * f + 3), I = 0, C = s, L = l.zeros1d(f * 2);
8823
8823
  P[0] = w, L[0] = 1;
8824
- for (var B = 1, T = d + 1; B < T; ) {
8824
+ for (var B = 1, T = f + 1; B < T; ) {
8825
8825
  var R = B++;
8826
8826
  C += m;
8827
8827
  var F = l.add(t, l.add(l.mul(h * Math.cos(C), n), l.mul(c * Math.sin(C), r)));
8828
8828
  L[I + 2] = 1, P[I + 2] = F;
8829
8829
  var j = l.sub(l.mul(Math.cos(C), r), l.mul(Math.sin(C), n)), D = rt.rays(w, l.mul(1 / l.norm(M), M), F, l.mul(1 / l.norm(j), j)), V = l.add(w, l.mul(D.u0, M));
8830
- L[I + 1] = b, P[I + 1] = V, I += 2, R < d && (w = F, M = j);
8830
+ L[I + 1] = b, P[I + 1] = V, I += 2, R < f && (w = F, M = j);
8831
8831
  }
8832
- for (var q = 2 * d + 1, H = 0; H < 3; ) {
8832
+ for (var q = 2 * f + 1, H = 0; H < 3; ) {
8833
8833
  var J = H++;
8834
8834
  z[J] = 0, z[J + q] = 1;
8835
8835
  }
8836
- switch (d) {
8836
+ switch (f) {
8837
8837
  case 2:
8838
8838
  z[3] = z[4] = 0.5;
8839
8839
  break;
@@ -8853,13 +8853,13 @@ var ii = { exports: {} };
8853
8853
  r += l.dist(t[h], t[h + 1]), n.push(r);
8854
8854
  }
8855
8855
  n.push(r), n = l.mul(1 / r, n);
8856
- for (var c, v = [], d = 0, m = t.length; d < m; )
8857
- d++, v.push(1);
8856
+ for (var c, v = [], f = 0, m = t.length; f < m; )
8857
+ f++, v.push(1);
8858
8858
  return c = v, new Ct(1, n, S.homogenize1d(t.slice(0), c));
8859
8859
  }, ot.extrudedSurface = function(t, n, r) {
8860
- for (var s = [[], [], []], o = [[], [], []], h = S.dehomogenize1d(r.controlPoints), c = S.weight1d(r.controlPoints), v = l.mul(n, t), d = l.mul(0.5 * n, t), m = 0, b = h.length; m < b; ) {
8860
+ for (var s = [[], [], []], o = [[], [], []], h = S.dehomogenize1d(r.controlPoints), c = S.weight1d(r.controlPoints), v = l.mul(n, t), f = l.mul(0.5 * n, t), m = 0, b = h.length; m < b; ) {
8861
8861
  var w = m++;
8862
- s[2][w] = h[w], s[1][w] = l.add(d, h[w]), s[0][w] = l.add(v, h[w]), o[0][w] = c[w], o[1][w] = c[w], o[2][w] = c[w];
8862
+ s[2][w] = h[w], s[1][w] = l.add(f, h[w]), s[0][w] = l.add(v, h[w]), o[0][w] = c[w], o[1][w] = c[w], o[2][w] = c[w];
8863
8863
  }
8864
8864
  return new Ft(2, r.degree, [0, 0, 0, 1, 1, 1], r.knots, S.homogenize2d(s, o));
8865
8865
  }, ot.cylindricalSurface = function(t, n, r, s, o) {
@@ -8868,13 +8868,13 @@ var ii = { exports: {} };
8868
8868
  }, ot.revolvedSurface = function(t, n, r, s) {
8869
8869
  var o = S.dehomogenize1d(t.controlPoints), h = S.weight1d(t.controlPoints), c, v;
8870
8870
  s <= Math.PI / 2 ? (c = 1, v = l.zeros1d(6 + 2 * (c - 1))) : s <= Math.PI ? (c = 2, v = l.zeros1d(6 + 2 * (c - 1)), v[3] = v[4] = 0.5) : s <= 3 * Math.PI / 2 ? (c = 3, v = l.zeros1d(6 + 2 * (c - 1)), v[3] = v[4] = 0.3333333333333333, v[5] = v[6] = 0.6666666666666666) : (c = 4, v = l.zeros1d(6 + 2 * (c - 1)), v[3] = v[4] = 0.25, v[5] = v[6] = 0.5, v[7] = v[8] = 0.75);
8871
- for (var d = s / c, m = 3 + 2 * (c - 1), b = 0; b < 3; ) {
8871
+ for (var f = s / c, m = 3 + 2 * (c - 1), b = 0; b < 3; ) {
8872
8872
  var w = b++;
8873
8873
  v[w] = 0, v[m + w] = 1;
8874
8874
  }
8875
- for (var M = Math.cos(d / 2), P = 0, z = l.zeros1d(c + 1), I = l.zeros1d(c + 1), C = l.zeros3d(2 * c + 1, o.length, 3), L = l.zeros2d(2 * c + 1, o.length), B = 1, T = c + 1; B < T; ) {
8875
+ for (var M = Math.cos(f / 2), P = 0, z = l.zeros1d(c + 1), I = l.zeros1d(c + 1), C = l.zeros3d(2 * c + 1, o.length, 3), L = l.zeros2d(2 * c + 1, o.length), B = 1, T = c + 1; B < T; ) {
8876
8876
  var R = B++;
8877
- P += d, I[R] = Math.cos(P), z[R] = Math.sin(P);
8877
+ P += f, I[R] = Math.cos(P), z[R] = Math.sin(P);
8878
8878
  }
8879
8879
  for (var F = 0, j = o.length; F < j; ) {
8880
8880
  var D = F++, V = he.rayClosestPoint(o[D], n, r), q = l.sub(o[D], V), H = l.norm(q), J = l.cross(r, q);
@@ -8898,12 +8898,12 @@ var ii = { exports: {} };
8898
8898
  var o = ot.arc(t, l.mul(-1, n), r, s, 0, Math.PI);
8899
8899
  return ot.revolvedSurface(o, t, n, 2 * Math.PI);
8900
8900
  }, ot.conicalSurface = function(t, n, r, s, o) {
8901
- var h = 2 * Math.PI, c = 1, v = [l.add(r, l.mul(s, t)), l.add(r, l.mul(o, n))], d = [0, 0, 1, 1], m = [1, 1], b = new Ct(c, d, S.homogenize1d(v, m));
8901
+ var h = 2 * Math.PI, c = 1, v = [l.add(r, l.mul(s, t)), l.add(r, l.mul(o, n))], f = [0, 0, 1, 1], m = [1, 1], b = new Ct(c, f, S.homogenize1d(v, m));
8902
8902
  return ot.revolvedSurface(b, r, t, h);
8903
8903
  }, ot.rationalInterpCurve = function(t, n, r, s, o) {
8904
8904
  if (r == null && (r = !1), n == null && (n = 3), t.length < n + 1) throw new X("You need to supply at least degree + 1 points! You only supplied " + t.length + " points.");
8905
8905
  for (var h = [0], c = 1, v = t.length; c < v; ) {
8906
- var d = c++, m = l.norm(l.sub(t[d], t[d - 1])), b = h[h.length - 1];
8906
+ var f = c++, m = l.norm(l.sub(t[f], t[f - 1])), b = h[h.length - 1];
8907
8907
  h.push(b + m);
8908
8908
  }
8909
8909
  for (var w = h[h.length - 1], M = 0, P = h.length; M < P; ) {
@@ -8935,8 +8935,8 @@ var ii = { exports: {} };
8935
8935
  var lt = q[0].length - 2, mt = [-1, 1].concat(l.zeros1d(lt)), kt = l.zeros1d(lt).concat([-1, 1]);
8936
8936
  G.spliceAndInsert(q, 1, 0, mt), G.spliceAndInsert(q, q.length - 1, 0, kt);
8937
8937
  }
8938
- for (var Et = t[0].length, zt = [], Bt = (1 - V[V.length - n - 2]) / n, ne = V[n + 1] / n, de = 0; de < Et; ) {
8939
- var $t = [de++], Qt;
8938
+ for (var Et = t[0].length, zt = [], Bt = (1 - V[V.length - n - 2]) / n, ne = V[n + 1] / n, fe = 0; fe < Et; ) {
8939
+ var $t = [fe++], Qt;
8940
8940
  if (!C) Qt = t.map(/* @__PURE__ */ function(be) {
8941
8941
  return function(Be) {
8942
8942
  return Be[be[0]];
@@ -8960,7 +8960,7 @@ var ii = { exports: {} };
8960
8960
  }
8961
8961
  return new Ct(n, V, ye);
8962
8962
  };
8963
- var ct = f.eval.Modify = function() {
8963
+ var ct = d.eval.Modify = function() {
8964
8964
  };
8965
8965
  p["verb.eval.Modify"] = ct, ct.__name__ = ["verb", "eval", "Modify"], ct.curveReverse = function(t) {
8966
8966
  return new Ct(t.degree, ct.knotsReverse(t.knots), G.reversed(t.controlPoints));
@@ -8989,8 +8989,8 @@ var ii = { exports: {} };
8989
8989
  t[o].degree < n && (t[o] = ct.curveElevateDegree(t[o], n));
8990
8990
  }
8991
8991
  for (var h, c = [], v = 0; v < t.length; ) {
8992
- var d = t[v];
8993
- ++v, c.push(new ee(G.first(d.knots), G.last(d.knots)));
8992
+ var f = t[v];
8993
+ ++v, c.push(new ee(G.first(f.knots), G.last(f.knots)));
8994
8994
  }
8995
8995
  h = c;
8996
8996
  for (var m = 0, b = t.length; m < b; ) {
@@ -9026,17 +9026,17 @@ var ii = { exports: {} };
9026
9026
  return t > n ? t : n;
9027
9027
  }, ct.curveElevateDegree = function(t, n) {
9028
9028
  if (n <= t.degree) return t;
9029
- var r = t.knots.length - t.degree - 2, s = t.degree, o = t.knots, h = t.controlPoints, c = n - t.degree, v = t.controlPoints[0].length, d = l.zeros2d(s + c + 1, s + 1), m = [], b = [], w = [], M = r + s + 1, P = n, z = Math.floor(P / 2), I = [], C = [];
9030
- d[0][0] = 1, d[P][s] = 1;
9029
+ var r = t.knots.length - t.degree - 2, s = t.degree, o = t.knots, h = t.controlPoints, c = n - t.degree, v = t.controlPoints[0].length, f = l.zeros2d(s + c + 1, s + 1), m = [], b = [], w = [], M = r + s + 1, P = n, z = Math.floor(P / 2), I = [], C = [];
9030
+ f[0][0] = 1, f[P][s] = 1;
9031
9031
  for (var L = 1, B = z + 1; L < B; )
9032
9032
  for (var T = L++, R = 1 / At.get(P, T), F = ct.imin(s, T), j = ct.imax(0, T - c), D = F + 1; j < D; ) {
9033
9033
  var V = j++;
9034
- d[T][V] = R * At.get(s, V) * At.get(c, T - V);
9034
+ f[T][V] = R * At.get(s, V) * At.get(c, T - V);
9035
9035
  }
9036
9036
  for (var q = z + 1; q < P; )
9037
9037
  for (var H = q++, J = ct.imin(s, H), et = ct.imax(0, H - c), it = J + 1; et < it; ) {
9038
9038
  var nt = et++;
9039
- d[H][nt] = d[P - H][s - nt];
9039
+ f[H][nt] = f[P - H][s - nt];
9040
9040
  }
9041
9041
  var st = P + 1, tt = -1, at = s, O = s + 1, lt = 1, mt = o[0];
9042
9042
  I[0] = h[0];
@@ -9045,8 +9045,8 @@ var ii = { exports: {} };
9045
9045
  C[zt] = mt;
9046
9046
  }
9047
9047
  for (var Bt = 0, ne = s + 1; Bt < ne; ) {
9048
- var de = Bt++;
9049
- m[de] = h[de];
9048
+ var fe = Bt++;
9049
+ m[fe] = h[fe];
9050
9050
  }
9051
9051
  for (; O < M; ) {
9052
9052
  for (var $t = O; O < M && o[O] == o[O + 1]; ) O = O + 1;
@@ -9065,24 +9065,24 @@ var ii = { exports: {} };
9065
9065
  }
9066
9066
  }
9067
9067
  for (var Pr = pe, ui = P + 1; Pr < ui; ) {
9068
- var dn = Pr++;
9069
- b[dn] = l.zeros1d(v);
9070
- for (var ci = ct.imin(s, dn), Ar = ct.imax(0, dn - c), vi = ci + 1; Ar < vi; ) {
9068
+ var fn = Pr++;
9069
+ b[fn] = l.zeros1d(v);
9070
+ for (var ci = ct.imin(s, fn), Ar = ct.imax(0, fn - c), vi = ci + 1; Ar < vi; ) {
9071
9071
  var zr = Ar++;
9072
- b[dn] = l.add(b[dn], l.mul(d[dn][zr], m[zr]));
9072
+ b[fn] = l.add(b[fn], l.mul(f[fn][zr], m[zr]));
9073
9073
  }
9074
9074
  }
9075
9075
  if (ue > 1)
9076
9076
  for (var cr = st - 2, vr = st, Sr = re - mt, _i = (re - C[st - 1]) / Sr, Cr = 1; Cr < ue; ) {
9077
9077
  for (var _r = Cr++, Le = cr, $e = vr, je = $e - st + 1; $e - Le > _r; ) {
9078
9078
  if (Le < lt) {
9079
- var di = (re - C[Le]) / (mt - C[Le]);
9080
- I[Le] = l.lerp(di, I[Le], I[Le - 1]);
9079
+ var fi = (re - C[Le]) / (mt - C[Le]);
9080
+ I[Le] = l.lerp(fi, I[Le], I[Le - 1]);
9081
9081
  }
9082
9082
  if ($e >= pe) {
9083
9083
  if ($e - _r <= st - P + ue) {
9084
- var fi = (re - C[$e - _r]) / Sr;
9085
- b[je] = l.lerp(fi, b[je], b[je + 1]);
9084
+ var di = (re - C[$e - _r]) / Sr;
9085
+ b[je] = l.lerp(di, b[je], b[je + 1]);
9086
9086
  }
9087
9087
  } else b[je] = l.lerp(_i, b[je], b[je + 1]);
9088
9088
  Le = Le + 1, $e = $e - 1, je = je - 1;
@@ -9116,8 +9116,8 @@ var ii = { exports: {} };
9116
9116
  }, ct.rationalSurfaceTransform = function(t, n) {
9117
9117
  for (var r = S.dehomogenize2d(t.controlPoints), s = 0, o = r.length; s < o; )
9118
9118
  for (var h = s++, c = 0, v = r[h].length; c < v; ) {
9119
- var d = c++, m = r[h][d];
9120
- m.push(1), r[h][d] = xt.dot(n, m).slice(0, m.length - 1);
9119
+ var f = c++, m = r[h][f];
9120
+ m.push(1), r[h][f] = xt.dot(n, m).slice(0, m.length - 1);
9121
9121
  }
9122
9122
  return new Ft(t.degreeU, t.degreeV, t.knotsU.slice(), t.knotsV.slice(), S.homogenize2d(r, S.weight2d(t.controlPoints)));
9123
9123
  }, ct.rationalCurveTransform = function(t, n) {
@@ -9129,9 +9129,9 @@ var ii = { exports: {} };
9129
9129
  }, ct.surfaceKnotRefine = function(t, n, r) {
9130
9130
  var s = [], o, h, c;
9131
9131
  r ? (c = t.controlPoints, o = t.knotsV, h = t.degreeV) : (c = xt.transpose(t.controlPoints), o = t.knotsU, h = t.degreeU);
9132
- for (var v = null, d = 0; d < c.length; ) {
9133
- var m = c[d];
9134
- ++d, v = ct.curveKnotRefine(new Ct(h, o, m), n), s.push(v.controlPoints);
9132
+ for (var v = null, f = 0; f < c.length; ) {
9133
+ var m = c[f];
9134
+ ++f, v = ct.curveKnotRefine(new Ct(h, o, m), n), s.push(v.controlPoints);
9135
9135
  }
9136
9136
  var b = v.knots;
9137
9137
  return r ? new Ft(t.degreeU, t.degreeV, t.knotsU.slice(), b, s) : (s = xt.transpose(s), new Ft(t.degreeU, t.degreeV, b, t.knotsV.slice(), s));
@@ -9139,7 +9139,7 @@ var ii = { exports: {} };
9139
9139
  for (var n = t.degree, r = t.controlPoints, s = t.knots, o = vt.knotMultiplicities(s), h = n + 1, c = 0; c < o.length; ) {
9140
9140
  var v = o[c];
9141
9141
  if (++c, v.mult < h) {
9142
- var d = l.rep(h - v.mult, v.knot), m = ct.curveKnotRefine(new Ct(n, s, r), d);
9142
+ var f = l.rep(h - v.mult, v.knot), m = ct.curveKnotRefine(new Ct(n, s, r), f);
9143
9143
  s = m.knots, r = m.controlPoints;
9144
9144
  }
9145
9145
  }
@@ -9151,7 +9151,7 @@ var ii = { exports: {} };
9151
9151
  return w;
9152
9152
  }, ct.curveKnotRefine = function(t, n) {
9153
9153
  if (n.length == 0) return ot.clonedCurve(t);
9154
- for (var r = t.degree, s = t.controlPoints, o = t.knots, h = s.length - 1, c = h + r + 1, v = n.length - 1, d = S.knotSpan(r, n[0], o), m = S.knotSpan(r, n[v], o), b = [], w = [], M = 0, P = d - r + 1; M < P; ) {
9154
+ for (var r = t.degree, s = t.controlPoints, o = t.knots, h = s.length - 1, c = h + r + 1, v = n.length - 1, f = S.knotSpan(r, n[0], o), m = S.knotSpan(r, n[v], o), b = [], w = [], M = 0, P = f - r + 1; M < P; ) {
9155
9155
  var z = M++;
9156
9156
  b[z] = s[z];
9157
9157
  }
@@ -9159,7 +9159,7 @@ var ii = { exports: {} };
9159
9159
  var L = I++;
9160
9160
  b[L + v + 1] = s[L];
9161
9161
  }
9162
- for (var B = 0, T = d + 1; B < T; ) {
9162
+ for (var B = 0, T = f + 1; B < T; ) {
9163
9163
  var R = B++;
9164
9164
  w[R] = o[R];
9165
9165
  }
@@ -9168,7 +9168,7 @@ var ii = { exports: {} };
9168
9168
  w[D + v + 1] = o[D];
9169
9169
  }
9170
9170
  for (var V = m + r - 1, q = m + r + v, H = v; H >= 0; ) {
9171
- for (; n[H] <= o[V] && V > d; )
9171
+ for (; n[H] <= o[V] && V > f; )
9172
9172
  b[q - r - 1] = s[V - r - 1], w[q] = o[V], q = q - 1, V = V - 1;
9173
9173
  b[q - r - 1] = b[q - r];
9174
9174
  for (var J = 1, et = r + 1; J < et; ) {
@@ -9179,53 +9179,53 @@ var ii = { exports: {} };
9179
9179
  }
9180
9180
  return new Ct(r, w, b);
9181
9181
  }, ct.curveKnotInsert = function(t, n, r) {
9182
- for (var s = t.degree, o = t.controlPoints, h = t.knots, c = 0, v = o.length, d = S.knotSpan(s, n, h), m = [], b = [], w = [], M = 1, P = d + 1; M < P; ) {
9182
+ for (var s = t.degree, o = t.controlPoints, h = t.knots, c = 0, v = o.length, f = S.knotSpan(s, n, h), m = [], b = [], w = [], M = 1, P = f + 1; M < P; ) {
9183
9183
  var z = M++;
9184
9184
  b[z] = h[z];
9185
9185
  }
9186
9186
  for (var I = 1, C = r + 1; I < C; ) {
9187
9187
  var L = I++;
9188
- b[d + L] = n;
9188
+ b[f + L] = n;
9189
9189
  }
9190
- for (var B = d + 1, T = h.length; B < T; ) {
9190
+ for (var B = f + 1, T = h.length; B < T; ) {
9191
9191
  var R = B++;
9192
9192
  b[R + r] = h[R];
9193
9193
  }
9194
- for (var F = 0, j = d - s + 1; F < j; ) {
9194
+ for (var F = 0, j = f - s + 1; F < j; ) {
9195
9195
  var D = F++;
9196
9196
  w[D] = o[D];
9197
9197
  }
9198
- for (var V = d - c; V < v; ) {
9198
+ for (var V = f - c; V < v; ) {
9199
9199
  var q = V++;
9200
9200
  w[q + r] = o[q];
9201
9201
  }
9202
9202
  for (var H = 0, J = s - c + 1; H < J; ) {
9203
9203
  var et = H++;
9204
- m[et] = o[d - s + et];
9204
+ m[et] = o[f - s + et];
9205
9205
  }
9206
9206
  for (var it = 0, nt = 0, st = 1, tt = r + 1; st < tt; ) {
9207
9207
  var at = st++;
9208
- it = d - s + at;
9208
+ it = f - s + at;
9209
9209
  for (var O = 0, lt = s - at - c + 1; O < lt; ) {
9210
9210
  var mt = O++;
9211
- nt = (n - h[it + mt]) / (h[mt + d + 1] - h[it + mt]), m[mt] = l.add(l.mul(nt, m[mt + 1]), l.mul(1 - nt, m[mt]));
9211
+ nt = (n - h[it + mt]) / (h[mt + f + 1] - h[it + mt]), m[mt] = l.add(l.mul(nt, m[mt + 1]), l.mul(1 - nt, m[mt]));
9212
9212
  }
9213
- w[it] = m[0], w[d + r - at - c] = m[s - at - c];
9213
+ w[it] = m[0], w[f + r - at - c] = m[s - at - c];
9214
9214
  }
9215
- for (var kt = it + 1, Et = d - c; kt < Et; ) {
9215
+ for (var kt = it + 1, Et = f - c; kt < Et; ) {
9216
9216
  var zt = kt++;
9217
9217
  w[zt] = m[zt - it];
9218
9218
  }
9219
9219
  return new Ct(s, b, w);
9220
9220
  };
9221
- var Pt = f.eval.Tess = function() {
9221
+ var Pt = d.eval.Tess = function() {
9222
9222
  };
9223
9223
  p["verb.eval.Tess"] = Pt, Pt.__name__ = ["verb", "eval", "Tess"], Pt.rationalCurveRegularSample = function(t, n, r) {
9224
9224
  return Pt.rationalCurveRegularSampleRange(t, t.knots[0], G.last(t.knots), n, r);
9225
9225
  }, Pt.rationalCurveRegularSampleRange = function(t, n, r, s, o) {
9226
9226
  s < 1 && (s = 2);
9227
- for (var h = [], c = (r - n) / (s - 1), v = 0, d = 0; d < s; ) {
9228
- var m = d++;
9227
+ for (var h = [], c = (r - n) / (s - 1), v = 0, f = 0; f < s; ) {
9228
+ var m = f++;
9229
9229
  v = n + c * m, o ? h.push([v].concat(S.rationalCurvePoint(t, v))) : h.push(S.rationalCurvePoint(t, v));
9230
9230
  }
9231
9231
  return h;
@@ -9241,16 +9241,16 @@ var ii = { exports: {} };
9241
9241
  return t.controlPoints.map(S.dehomogenize);
9242
9242
  return Pt.rationalCurveAdaptiveSampleRange(t, t.knots[0], G.last(t.knots), n, r);
9243
9243
  }, Pt.rationalCurveAdaptiveSampleRange = function(t, n, r, s, o) {
9244
- var h = S.rationalCurvePoint(t, n), c = S.rationalCurvePoint(t, r), v = 0.5 + 0.2 * Math.random(), d = n + (r - n) * v, m = S.rationalCurvePoint(t, d), b = l.sub(h, c), w = l.sub(h, m);
9244
+ var h = S.rationalCurvePoint(t, n), c = S.rationalCurvePoint(t, r), v = 0.5 + 0.2 * Math.random(), f = n + (r - n) * v, m = S.rationalCurvePoint(t, f), b = l.sub(h, c), w = l.sub(h, m);
9245
9245
  if (l.dot(b, b) < s && l.dot(w, w) > s || !he.threePointsAreFlat(h, m, c, s)) {
9246
9246
  var M = n + (r - n) * 0.5, P = Pt.rationalCurveAdaptiveSampleRange(t, n, M, s, o), z = Pt.rationalCurveAdaptiveSampleRange(t, M, r, s, o);
9247
9247
  return P.slice(0, -1).concat(z);
9248
9248
  } else return o ? [[n].concat(h), [r].concat(c)] : [h, c];
9249
9249
  }, Pt.rationalSurfaceNaive = function(t, n, r) {
9250
9250
  n < 1 && (n = 1), r < 1 && (r = 1), t.degreeU, t.degreeV, t.controlPoints;
9251
- for (var s = t.knotsU, o = t.knotsV, h = G.last(s) - s[0], c = G.last(o) - o[0], v = h / n, d = c / r, m = [], b = [], w = [], M = 0, P = n + 1; M < P; )
9251
+ for (var s = t.knotsU, o = t.knotsV, h = G.last(s) - s[0], c = G.last(o) - o[0], v = h / n, f = c / r, m = [], b = [], w = [], M = 0, P = n + 1; M < P; )
9252
9252
  for (var z = M++, I = 0, C = r + 1; I < C; ) {
9253
- var L = I++, B = z * v, T = L * d;
9253
+ var L = I++, B = z * v, T = L * f;
9254
9254
  b.push([B, T]);
9255
9255
  var R = S.rationalSurfaceDerivatives(t, B, T, 1), F = R[0][0];
9256
9256
  m.push(F);
@@ -9262,14 +9262,14 @@ var ii = { exports: {} };
9262
9262
  var J = H++, et = q * (r + 1) + J, it = (q + 1) * (r + 1) + J, nt = it + 1, st = et + 1, tt = [et, it, nt], at = [et, nt, st];
9263
9263
  D.push(tt), D.push(at);
9264
9264
  }
9265
- return new fe(D, m, w, b);
9265
+ return new de(D, m, w, b);
9266
9266
  }, Pt.divideRationalSurfaceAdaptive = function(t, n) {
9267
9267
  n == null && (n = new Oe()), n.minDivsU != null ? n.minDivsU = n.minDivsU : n.minDivsU = 1, n.minDivsV != null ? n.minDivsU = n.minDivsV : n.minDivsU = 1, n.refine != null ? n.refine = n.refine : n.refine = !0;
9268
9268
  var r = (t.controlPoints.length - 1) * 2, s = (t.controlPoints[0].length - 1) * 2, o;
9269
9269
  n.minDivsU > r ? o = n.minDivsU = n.minDivsU : o = n.minDivsU = r;
9270
9270
  var h;
9271
9271
  n.minDivsV > s ? h = n.minDivsV = n.minDivsV : h = n.minDivsV = s;
9272
- for (var c = G.last(t.knotsU), v = t.knotsU[0], d = G.last(t.knotsV), m = t.knotsV[0], b = (c - v) / o, w = (d - m) / h, M = [], P = [], z = 0, I = h + 1; z < I; ) {
9272
+ for (var c = G.last(t.knotsU), v = t.knotsU[0], f = G.last(t.knotsV), m = t.knotsV[0], b = (c - v) / o, w = (f - m) / h, M = [], P = [], z = 0, I = h + 1; z < I; ) {
9273
9273
  for (var C = z++, L = [], B = 0, T = o + 1; B < T; ) {
9274
9274
  var R = B++, F = v + b * R, j = m + w * C, D = S.rationalSurfaceDerivatives(t, F, j, 1), V = l.normalized(l.cross(D[0][1], D[1][0]));
9275
9275
  L.push(new ve(D[0][0], V, [F, j], -1, l.isZero(V)));
@@ -9297,7 +9297,7 @@ var ii = { exports: {} };
9297
9297
  }, Pt.west = function(t, n, r, s, o, h) {
9298
9298
  return r == 0 ? null : h[t - 1];
9299
9299
  }, Pt.triangulateAdaptiveRefinementNodeTree = function(t) {
9300
- for (var n = fe.empty(), r = 0; r < t.length; ) {
9300
+ for (var n = de.empty(), r = 0; r < t.length; ) {
9301
9301
  var s = t[r];
9302
9302
  ++r, s.triangulate(n);
9303
9303
  }
@@ -9307,13 +9307,13 @@ var ii = { exports: {} };
9307
9307
  var r = Pt.divideRationalSurfaceAdaptive(t, n);
9308
9308
  return Pt.triangulateAdaptiveRefinementNodeTree(r);
9309
9309
  };
9310
- var Oe = f.core.AdaptiveRefinementOptions = function() {
9310
+ var Oe = d.core.AdaptiveRefinementOptions = function() {
9311
9311
  this.minDivsV = 1, this.minDivsU = 1, this.refine = !0, this.maxDepth = 10, this.minDepth = 0, this.normTol = 0.025;
9312
9312
  };
9313
9313
  p["verb.eval.AdaptiveRefinementOptions"] = Oe, Oe.__name__ = ["verb", "eval", "AdaptiveRefinementOptions"], Oe.prototype = {
9314
9314
  __class__: Oe
9315
9315
  };
9316
- var Ee = f.core.AdaptiveRefinementNode = function(t, n, r) {
9316
+ var Ee = d.core.AdaptiveRefinementNode = function(t, n, r) {
9317
9317
  if (this.srf = t, r == null ? this.neighbors = [null, null, null, null] : this.neighbors = r, this.corners = n, this.corners == null) {
9318
9318
  var s = t.knotsU[0], o = G.last(t.knotsU), h = t.knotsV[0], c = G.last(t.knotsV);
9319
9319
  this.corners = [ve.fromUv(s, h), ve.fromUv(o, h), ve.fromUv(o, c), ve.fromUv(s, c)];
@@ -9367,10 +9367,10 @@ var ii = { exports: {} };
9367
9367
  getAllCorners: function(t) {
9368
9368
  var n = [this.corners[t]];
9369
9369
  if (this.neighbors[t] == null) return n;
9370
- var r = this.neighbors[t].getEdgeCorners((t + 2) % 4), s = t % 2, o = $.EPSILON, h = this, c = [function(d) {
9371
- return d.uv[0] > h.corners[0].uv[0] + o && d.uv[0] < h.corners[2].uv[0] - o;
9372
- }, function(d) {
9373
- return d.uv[1] > h.corners[0].uv[1] + o && d.uv[1] < h.corners[2].uv[1] - o;
9370
+ var r = this.neighbors[t].getEdgeCorners((t + 2) % 4), s = t % 2, o = $.EPSILON, h = this, c = [function(f) {
9371
+ return f.uv[0] > h.corners[0].uv[0] + o && f.uv[0] < h.corners[2].uv[0] - o;
9372
+ }, function(f) {
9373
+ return f.uv[1] > h.corners[0].uv[1] + o && f.uv[1] < h.corners[2].uv[1] - o;
9374
9374
  }], v = r.filter(c[s]);
9375
9375
  return v.reverse(), n.concat(v);
9376
9376
  },
@@ -9425,14 +9425,14 @@ var ii = { exports: {} };
9425
9425
  var h = [this.corners[0], this.midpoint(0), this.midpoint(2), this.corners[3]], c = [this.midpoint(0), this.corners[1], this.corners[2], this.midpoint(2)];
9426
9426
  this.children = [new Ee(this.srf, h), new Ee(this.srf, c)], this.children[0].neighbors = [this.neighbors[0], this.children[1], this.neighbors[2], this.neighbors[3]], this.children[1].neighbors = [this.neighbors[0], this.neighbors[1], this.neighbors[2], this.children[0]];
9427
9427
  }
9428
- for (var v = 0, d = this.children; v < d.length; ) {
9429
- var m = d[v];
9428
+ for (var v = 0, f = this.children; v < f.length; ) {
9429
+ var m = f[v];
9430
9430
  ++v, m._divide(t, n, !r);
9431
9431
  }
9432
9432
  }
9433
9433
  },
9434
9434
  triangulate: function(t) {
9435
- if (t == null && (t = fe.empty()), this.isLeaf()) return this.triangulateLeaf(t);
9435
+ if (t == null && (t = de.empty()), this.isLeaf()) return this.triangulateLeaf(t);
9436
9436
  for (var n = 0, r = this.children; n < r.length; ) {
9437
9437
  var s = r[n];
9438
9438
  if (++n, s == null) break;
@@ -9444,8 +9444,8 @@ var ii = { exports: {} };
9444
9444
  for (var n = t.points.length, r = [], s = [], o = 0, h = 0; h < 4; ) {
9445
9445
  var c = h++, v = this.getAllCorners(c);
9446
9446
  v.length == 2 && (o = c + 1);
9447
- for (var d = 0, m = v.length; d < m; ) {
9448
- var b = d++;
9447
+ for (var f = 0, m = v.length; f < m; ) {
9448
+ var b = f++;
9449
9449
  r.push(v[b]);
9450
9450
  }
9451
9451
  }
@@ -9471,7 +9471,7 @@ var ii = { exports: {} };
9471
9471
  },
9472
9472
  __class__: Ee
9473
9473
  };
9474
- var _t = f.exe.Dispatcher = function() {
9474
+ var _t = d.exe.Dispatcher = function() {
9475
9475
  };
9476
9476
  p["verb.exe.Dispatcher"] = _t, _t.__name__ = ["verb", "exe", "Dispatcher"], _t.init = function() {
9477
9477
  _t._init || (_t._workerPool = new qe(_t.THREADS), _t._init = !0);
@@ -9482,7 +9482,7 @@ var ii = { exports: {} };
9482
9482
  };
9483
9483
  return _t._workerPool.addWork(ut.getClassName(t), n, r, o), new Ht(s);
9484
9484
  };
9485
- var qe = f.exe.WorkerPool = function(t, n) {
9485
+ var qe = d.exe.WorkerPool = function(t, n) {
9486
9486
  n == null && (n = "verb.js"), t == null && (t = 1), this._callbacks = new Gt(), this._working = new Gt(), this._pool = [], this._queue = [];
9487
9487
  for (var r = 0; r < t; ) {
9488
9488
  r++;
@@ -9529,7 +9529,7 @@ var ii = { exports: {} };
9529
9529
  p["verb.geom.ICurve"] = cn, cn.__name__ = ["verb", "geom", "ICurve"], cn.__interfaces__ = [hn], cn.prototype = {
9530
9530
  __class__: cn
9531
9531
  };
9532
- var bt = f.geom.NurbsCurve = function(t) {
9532
+ var bt = d.geom.NurbsCurve = function(t) {
9533
9533
  this._data = _e.isValidNurbsCurveData(t);
9534
9534
  };
9535
9535
  p["verb.geom.NurbsCurve"] = bt, bt.__name__ = ["verb", "geom", "NurbsCurve"], bt.__interfaces__ = [cn], bt.byKnotsControlPointsWeights = function(t, n, r, s) {
@@ -9654,7 +9654,7 @@ var ii = { exports: {} };
9654
9654
  },
9655
9655
  __class__: bt
9656
9656
  });
9657
- var Ge = f.geom.Arc = function(t, n, r, s, o, h) {
9657
+ var Ge = d.geom.Arc = function(t, n, r, s, o, h) {
9658
9658
  bt.call(this, ot.arc(t, n, r, s, o, h)), this._center = t, this._xaxis = n, this._yaxis = r, this._radius = s, this._minAngle = o, this._maxAngle = h;
9659
9659
  };
9660
9660
  p["verb.geom.Arc"] = Ge, Ge.__name__ = ["verb", "geom", "Arc"], Ge.__super__ = bt, Ge.prototype = k(bt.prototype, {
@@ -9678,13 +9678,13 @@ var ii = { exports: {} };
9678
9678
  },
9679
9679
  __class__: Ge
9680
9680
  });
9681
- var In = f.geom.BezierCurve = function(t, n) {
9681
+ var In = d.geom.BezierCurve = function(t, n) {
9682
9682
  bt.call(this, ot.rationalBezierCurve(t, n));
9683
9683
  };
9684
9684
  p["verb.geom.BezierCurve"] = In, In.__name__ = ["verb", "geom", "BezierCurve"], In.__super__ = bt, In.prototype = k(bt.prototype, {
9685
9685
  __class__: In
9686
9686
  });
9687
- var Nn = f.geom.Circle = function(t, n, r, s) {
9687
+ var Nn = d.geom.Circle = function(t, n, r, s) {
9688
9688
  Ge.call(this, t, n, r, s, 0, Math.PI * 2);
9689
9689
  };
9690
9690
  p["verb.geom.Circle"] = Nn, Nn.__name__ = ["verb", "geom", "Circle"], Nn.__super__ = Ge, Nn.prototype = k(Ge.prototype, {
@@ -9695,7 +9695,7 @@ var ii = { exports: {} };
9695
9695
  p["verb.geom.ISurface"] = vn, vn.__name__ = ["verb", "geom", "ISurface"], vn.__interfaces__ = [hn], vn.prototype = {
9696
9696
  __class__: vn
9697
9697
  };
9698
- var gt = f.geom.NurbsSurface = function(t) {
9698
+ var gt = d.geom.NurbsSurface = function(t) {
9699
9699
  this._data = _e.isValidNurbsSurfaceData(t);
9700
9700
  };
9701
9701
  p["verb.geom.NurbsSurface"] = gt, gt.__name__ = ["verb", "geom", "NurbsSurface"], gt.__interfaces__ = [vn], gt.byKnotsControlPointsWeights = function(t, n, r, s, o, h) {
@@ -9827,7 +9827,7 @@ var ii = { exports: {} };
9827
9827
  },
9828
9828
  __class__: gt
9829
9829
  });
9830
- var En = f.geom.ConicalSurface = function(t, n, r, s, o) {
9830
+ var En = d.geom.ConicalSurface = function(t, n, r, s, o) {
9831
9831
  gt.call(this, ot.conicalSurface(t, n, r, s, o)), this._axis = t, this._xaxis = n, this._base = r, this._height = s, this._radius = o;
9832
9832
  };
9833
9833
  p["verb.geom.ConicalSurface"] = En, En.__name__ = ["verb", "geom", "ConicalSurface"], En.__super__ = gt, En.prototype = k(gt.prototype, {
@@ -9848,7 +9848,7 @@ var ii = { exports: {} };
9848
9848
  },
9849
9849
  __class__: En
9850
9850
  });
9851
- var Bn = f.geom.CylindricalSurface = function(t, n, r, s, o) {
9851
+ var Bn = d.geom.CylindricalSurface = function(t, n, r, s, o) {
9852
9852
  gt.call(this, ot.cylindricalSurface(t, n, r, s, o)), this._axis = t, this._xaxis = n, this._base = r, this._height = s, this._radius = o;
9853
9853
  };
9854
9854
  p["verb.geom.CylindricalSurface"] = Bn, Bn.__name__ = ["verb", "geom", "CylindricalSurface"], Bn.__super__ = gt, Bn.prototype = k(gt.prototype, {
@@ -9869,7 +9869,7 @@ var ii = { exports: {} };
9869
9869
  },
9870
9870
  __class__: Bn
9871
9871
  });
9872
- var Ke = f.geom.EllipseArc = function(t, n, r, s, o) {
9872
+ var Ke = d.geom.EllipseArc = function(t, n, r, s, o) {
9873
9873
  bt.call(this, ot.ellipseArc(t, n, r, s, o)), this._center = t, this._xaxis = n, this._yaxis = r, this._minAngle = s, this._maxAngle = o;
9874
9874
  };
9875
9875
  p["verb.geom.EllipseArc"] = Ke, Ke.__name__ = ["verb", "geom", "EllipseArc"], Ke.__super__ = bt, Ke.prototype = k(bt.prototype, {
@@ -9890,13 +9890,13 @@ var ii = { exports: {} };
9890
9890
  },
9891
9891
  __class__: Ke
9892
9892
  });
9893
- var Ln = f.geom.Ellipse = function(t, n, r) {
9893
+ var Ln = d.geom.Ellipse = function(t, n, r) {
9894
9894
  Ke.call(this, t, n, r, 0, Math.PI * 2);
9895
9895
  };
9896
9896
  p["verb.geom.Ellipse"] = Ln, Ln.__name__ = ["verb", "geom", "Ellipse"], Ln.__super__ = Ke, Ln.prototype = k(Ke.prototype, {
9897
9897
  __class__: Ln
9898
9898
  });
9899
- var Tn = f.geom.ExtrudedSurface = function(t, n) {
9899
+ var Tn = d.geom.ExtrudedSurface = function(t, n) {
9900
9900
  gt.call(this, ot.extrudedSurface(l.normalized(n), l.norm(n), t.asNurbs())), this._profile = t, this._direction = n;
9901
9901
  };
9902
9902
  p["verb.geom.ExtrudedSurface"] = Tn, Tn.__name__ = ["verb", "geom", "ExtrudedSurface"], Tn.__super__ = gt, Tn.prototype = k(gt.prototype, {
@@ -9908,7 +9908,7 @@ var ii = { exports: {} };
9908
9908
  },
9909
9909
  __class__: Tn
9910
9910
  });
9911
- var Xe = f.geom.Intersect = function() {
9911
+ var Xe = d.geom.Intersect = function() {
9912
9912
  };
9913
9913
  p["verb.geom.Intersect"] = Xe, Xe.__name__ = ["verb", "geom", "Intersect"], Xe.curves = function(t, n, r) {
9914
9914
  return r == null && (r = 1e-3), rt.curves(t.asNurbs(), n.asNurbs(), r);
@@ -9929,7 +9929,7 @@ var ii = { exports: {} };
9929
9929
  });
9930
9930
  });
9931
9931
  };
9932
- var Un = f.geom.Line = function(t, n) {
9932
+ var Un = d.geom.Line = function(t, n) {
9933
9933
  bt.call(this, ot.polyline([t, n])), this._start = t, this._end = n;
9934
9934
  };
9935
9935
  p["verb.geom.Line"] = Un, Un.__name__ = ["verb", "geom", "Line"], Un.__super__ = bt, Un.prototype = k(bt.prototype, {
@@ -9941,7 +9941,7 @@ var ii = { exports: {} };
9941
9941
  },
9942
9942
  __class__: Un
9943
9943
  });
9944
- var Rn = f.geom.RevolvedSurface = function(t, n, r, s) {
9944
+ var Rn = d.geom.RevolvedSurface = function(t, n, r, s) {
9945
9945
  gt.call(this, ot.revolvedSurface(t.asNurbs(), n, r, s)), this._profile = t, this._center = n, this._axis = r, this._angle = s;
9946
9946
  };
9947
9947
  p["verb.geom.RevolvedSurface"] = Rn, Rn.__name__ = ["verb", "geom", "RevolvedSurface"], Rn.__super__ = gt, Rn.prototype = k(gt.prototype, {
@@ -9959,7 +9959,7 @@ var ii = { exports: {} };
9959
9959
  },
9960
9960
  __class__: Rn
9961
9961
  });
9962
- var Vn = f.geom.SphericalSurface = function(t, n) {
9962
+ var Vn = d.geom.SphericalSurface = function(t, n) {
9963
9963
  gt.call(this, ot.sphericalSurface(t, [0, 0, 1], [1, 0, 0], n)), this._center = t, this._radius = n;
9964
9964
  };
9965
9965
  p["verb.geom.SphericalSurface"] = Vn, Vn.__name__ = ["verb", "geom", "SphericalSurface"], Vn.__super__ = gt, Vn.prototype = k(gt.prototype, {
@@ -9971,7 +9971,7 @@ var ii = { exports: {} };
9971
9971
  },
9972
9972
  __class__: Vn
9973
9973
  });
9974
- var Dn = f.geom.SweptSurface = function(t, n) {
9974
+ var Dn = d.geom.SweptSurface = function(t, n) {
9975
9975
  gt.call(this, ot.rationalTranslationalSurface(t.asNurbs(), n.asNurbs())), this._profile = t, this._rail = n;
9976
9976
  };
9977
9977
  p["verb.geom.SweptSurface"] = Dn, Dn.__name__ = ["verb", "geom", "SweptSurface"], Dn.__super__ = gt, Dn.prototype = k(gt.prototype, {
@@ -10024,9 +10024,9 @@ var ii = { exports: {} };
10024
10024
  return;
10025
10025
  var r = 1, s = {}, o = !1, h = t.document, c;
10026
10026
  function v(B) {
10027
- return s[r] = d.apply(n, B), r++;
10027
+ return s[r] = f.apply(n, B), r++;
10028
10028
  }
10029
- function d(B) {
10029
+ function f(B) {
10030
10030
  var T = [].slice.call(arguments, 1);
10031
10031
  return function() {
10032
10032
  typeof B == "function" ? B.apply(n, T) : new Function("" + B)();
@@ -10034,7 +10034,7 @@ var ii = { exports: {} };
10034
10034
  }
10035
10035
  function m(B) {
10036
10036
  if (o)
10037
- setTimeout(d(m, B), 0);
10037
+ setTimeout(f(m, B), 0);
10038
10038
  else {
10039
10039
  var T = s[B];
10040
10040
  if (T) {
@@ -10053,7 +10053,7 @@ var ii = { exports: {} };
10053
10053
  function w() {
10054
10054
  c = function() {
10055
10055
  var B = v(arguments);
10056
- return process.nextTick(d(m, B)), B;
10056
+ return process.nextTick(f(m, B)), B;
10057
10057
  };
10058
10058
  }
10059
10059
  function M() {
@@ -10095,7 +10095,7 @@ var ii = { exports: {} };
10095
10095
  function C() {
10096
10096
  c = function() {
10097
10097
  var B = v(arguments);
10098
- return setTimeout(d(m, B), 0), B;
10098
+ return setTimeout(f(m, B), 0), B;
10099
10099
  };
10100
10100
  }
10101
10101
  var L = Object.getPrototypeOf && Object.getPrototypeOf(t);
@@ -10103,7 +10103,7 @@ var ii = { exports: {} };
10103
10103
  })(new Function("return this")()), Kt.USE_CACHE = !1, Kt.USE_ENUM_INDEX = !1, Kt.BASE64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789%:", Tt.DEFAULT_RESOLVER = ut, Tt.BASE64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789%:", Yt.count = 0, jt.i64tmp = function(t) {
10104
10104
  var n, r = new Lt(0, 0);
10105
10105
  return n = r, n;
10106
- }(), wt.__toStr = {}.toString, ze.BYTES_PER_ELEMENT = 1, dt.queue = new Y(), At.memo = new Gt(), $.TOLERANCE = 1e-6, $.EPSILON = 1e-10, $.VERSION = "2.0.0", vt.Tvalues = [[], [], [-0.5773502691896257, 0.5773502691896257], [0, -0.7745966692414834, 0.7745966692414834], [-0.33998104358485626, 0.33998104358485626, -0.8611363115940526, 0.8611363115940526], [0, -0.5384693101056831, 0.5384693101056831, -0.906179845938664, 0.906179845938664], [0.6612093864662645, -0.6612093864662645, -0.2386191860831969, 0.2386191860831969, -0.932469514203152, 0.932469514203152], [0, 0.4058451513773972, -0.4058451513773972, -0.7415311855993945, 0.7415311855993945, -0.9491079123427585, 0.9491079123427585], [-0.1834346424956498, 0.1834346424956498, -0.525532409916329, 0.525532409916329, -0.7966664774136267, 0.7966664774136267, -0.9602898564975363, 0.9602898564975363], [0, -0.8360311073266358, 0.8360311073266358, -0.9681602395076261, 0.9681602395076261, -0.3242534234038089, 0.3242534234038089, -0.6133714327005904, 0.6133714327005904], [-0.14887433898163122, 0.14887433898163122, -0.4333953941292472, 0.4333953941292472, -0.6794095682990244, 0.6794095682990244, -0.8650633666889845, 0.8650633666889845, -0.9739065285171717, 0.9739065285171717], [0, -0.26954315595234496, 0.26954315595234496, -0.5190961292068118, 0.5190961292068118, -0.7301520055740494, 0.7301520055740494, -0.8870625997680953, 0.8870625997680953, -0.978228658146057, 0.978228658146057], [-0.1252334085114689, 0.1252334085114689, -0.3678314989981802, 0.3678314989981802, -0.5873179542866175, 0.5873179542866175, -0.7699026741943047, 0.7699026741943047, -0.9041172563704749, 0.9041172563704749, -0.9815606342467192, 0.9815606342467192], [0, -0.2304583159551348, 0.2304583159551348, -0.44849275103644687, 0.44849275103644687, -0.6423493394403402, 0.6423493394403402, -0.8015780907333099, 0.8015780907333099, -0.9175983992229779, 0.9175983992229779, -0.9841830547185881, 0.9841830547185881], [-0.10805494870734367, 0.10805494870734367, -0.31911236892788974, 0.31911236892788974, -0.5152486363581541, 0.5152486363581541, -0.6872929048116855, 0.6872929048116855, -0.827201315069765, 0.827201315069765, -0.9284348836635735, 0.9284348836635735, -0.9862838086968123, 0.9862838086968123], [0, -0.20119409399743451, 0.20119409399743451, -0.3941513470775634, 0.3941513470775634, -0.5709721726085388, 0.5709721726085388, -0.7244177313601701, 0.7244177313601701, -0.8482065834104272, 0.8482065834104272, -0.937273392400706, 0.937273392400706, -0.9879925180204854, 0.9879925180204854], [-0.09501250983763744, 0.09501250983763744, -0.2816035507792589, 0.2816035507792589, -0.45801677765722737, 0.45801677765722737, -0.6178762444026438, 0.6178762444026438, -0.755404408355003, 0.755404408355003, -0.8656312023878318, 0.8656312023878318, -0.9445750230732326, 0.9445750230732326, -0.9894009349916499, 0.9894009349916499], [0, -0.17848418149584785, 0.17848418149584785, -0.3512317634538763, 0.3512317634538763, -0.5126905370864769, 0.5126905370864769, -0.6576711592166907, 0.6576711592166907, -0.7815140038968014, 0.7815140038968014, -0.8802391537269859, 0.8802391537269859, -0.9506755217687678, 0.9506755217687678, -0.9905754753144174, 0.9905754753144174], [-0.0847750130417353, 0.0847750130417353, -0.2518862256915055, 0.2518862256915055, -0.41175116146284263, 0.41175116146284263, -0.5597708310739475, 0.5597708310739475, -0.6916870430603532, 0.6916870430603532, -0.8037049589725231, 0.8037049589725231, -0.8926024664975557, 0.8926024664975557, -0.9558239495713977, 0.9558239495713977, -0.9915651684209309, 0.9915651684209309], [0, -0.16035864564022537, 0.16035864564022537, -0.31656409996362983, 0.31656409996362983, -0.46457074137596094, 0.46457074137596094, -0.600545304661681, 0.600545304661681, -0.7209661773352294, 0.7209661773352294, -0.8227146565371428, 0.8227146565371428, -0.9031559036148179, 0.9031559036148179, -0.96020815213483, 0.96020815213483, -0.9924068438435844, 0.9924068438435844], [-0.07652652113349734, 0.07652652113349734, -0.22778585114164507, 0.22778585114164507, -0.37370608871541955, 0.37370608871541955, -0.5108670019508271, 0.5108670019508271, -0.636053680726515, 0.636053680726515, -0.7463319064601508, 0.7463319064601508, -0.8391169718222188, 0.8391169718222188, -0.912234428251326, 0.912234428251326, -0.9639719272779138, 0.9639719272779138, -0.9931285991850949, 0.9931285991850949], [0, -0.1455618541608951, 0.1455618541608951, -0.2880213168024011, 0.2880213168024011, -0.4243421202074388, 0.4243421202074388, -0.5516188358872198, 0.5516188358872198, -0.6671388041974123, 0.6671388041974123, -0.7684399634756779, 0.7684399634756779, -0.8533633645833173, 0.8533633645833173, -0.9200993341504008, 0.9200993341504008, -0.9672268385663063, 0.9672268385663063, -0.9937521706203895, 0.9937521706203895], [-0.06973927331972223, 0.06973927331972223, -0.20786042668822127, 0.20786042668822127, -0.34193582089208424, 0.34193582089208424, -0.469355837986757, 0.469355837986757, -0.5876404035069116, 0.5876404035069116, -0.6944872631866827, 0.6944872631866827, -0.7878168059792081, 0.7878168059792081, -0.8658125777203002, 0.8658125777203002, -0.926956772187174, 0.926956772187174, -0.9700604978354287, 0.9700604978354287, -0.9942945854823992, 0.9942945854823992], [0, -0.1332568242984661, 0.1332568242984661, -0.26413568097034495, 0.26413568097034495, -0.3903010380302908, 0.3903010380302908, -0.5095014778460075, 0.5095014778460075, -0.6196098757636461, 0.6196098757636461, -0.7186613631319502, 0.7186613631319502, -0.8048884016188399, 0.8048884016188399, -0.8767523582704416, 0.8767523582704416, -0.9329710868260161, 0.9329710868260161, -0.9725424712181152, 0.9725424712181152, -0.9947693349975522, 0.9947693349975522], [-0.06405689286260563, 0.06405689286260563, -0.1911188674736163, 0.1911188674736163, -0.3150426796961634, 0.3150426796961634, -0.4337935076260451, 0.4337935076260451, -0.5454214713888396, 0.5454214713888396, -0.6480936519369755, 0.6480936519369755, -0.7401241915785544, 0.7401241915785544, -0.820001985973903, 0.820001985973903, -0.8864155270044011, 0.8864155270044011, -0.9382745520027328, 0.9382745520027328, -0.9747285559713095, 0.9747285559713095, -0.9951872199970213, 0.9951872199970213]], vt.Cvalues = [[], [], [1, 1], [0.8888888888888888, 0.5555555555555556, 0.5555555555555556], [0.6521451548625461, 0.6521451548625461, 0.34785484513745385, 0.34785484513745385], [0.5688888888888889, 0.47862867049936647, 0.47862867049936647, 0.23692688505618908, 0.23692688505618908], [0.3607615730481386, 0.3607615730481386, 0.46791393457269104, 0.46791393457269104, 0.17132449237917036, 0.17132449237917036], [0.4179591836734694, 0.3818300505051189, 0.3818300505051189, 0.27970539148927664, 0.27970539148927664, 0.1294849661688697, 0.1294849661688697], [0.362683783378362, 0.362683783378362, 0.31370664587788727, 0.31370664587788727, 0.22238103445337448, 0.22238103445337448, 0.10122853629037626, 0.10122853629037626], [0.3302393550012598, 0.1806481606948574, 0.1806481606948574, 0.08127438836157441, 0.08127438836157441, 0.31234707704000286, 0.31234707704000286, 0.26061069640293544, 0.26061069640293544], [0.29552422471475287, 0.29552422471475287, 0.26926671930999635, 0.26926671930999635, 0.21908636251598204, 0.21908636251598204, 0.1494513491505806, 0.1494513491505806, 0.06667134430868814, 0.06667134430868814], [0.2729250867779006, 0.26280454451024665, 0.26280454451024665, 0.23319376459199048, 0.23319376459199048, 0.18629021092773426, 0.18629021092773426, 0.1255803694649046, 0.1255803694649046, 0.05566856711617366, 0.05566856711617366], [0.24914704581340277, 0.24914704581340277, 0.2334925365383548, 0.2334925365383548, 0.20316742672306592, 0.20316742672306592, 0.16007832854334622, 0.16007832854334622, 0.10693932599531843, 0.10693932599531843, 0.04717533638651183, 0.04717533638651183], [0.2325515532308739, 0.22628318026289723, 0.22628318026289723, 0.2078160475368885, 0.2078160475368885, 0.17814598076194574, 0.17814598076194574, 0.13887351021978725, 0.13887351021978725, 0.09212149983772845, 0.09212149983772845, 0.04048400476531588, 0.04048400476531588], [0.2152638534631578, 0.2152638534631578, 0.2051984637212956, 0.2051984637212956, 0.18553839747793782, 0.18553839747793782, 0.15720316715819355, 0.15720316715819355, 0.12151857068790319, 0.12151857068790319, 0.08015808715976021, 0.08015808715976021, 0.03511946033175186, 0.03511946033175186], [0.2025782419255613, 0.19843148532711158, 0.19843148532711158, 0.1861610000155622, 0.1861610000155622, 0.16626920581699392, 0.16626920581699392, 0.13957067792615432, 0.13957067792615432, 0.10715922046717194, 0.10715922046717194, 0.07036604748810812, 0.07036604748810812, 0.03075324199611727, 0.03075324199611727], [0.1894506104550685, 0.1894506104550685, 0.18260341504492358, 0.18260341504492358, 0.16915651939500254, 0.16915651939500254, 0.14959598881657674, 0.14959598881657674, 0.12462897125553388, 0.12462897125553388, 0.09515851168249279, 0.09515851168249279, 0.062253523938647894, 0.062253523938647894, 0.027152459411754096, 0.027152459411754096], [0.17944647035620653, 0.17656270536699264, 0.17656270536699264, 0.16800410215645004, 0.16800410215645004, 0.15404576107681028, 0.15404576107681028, 0.13513636846852548, 0.13513636846852548, 0.11188384719340397, 0.11188384719340397, 0.08503614831717918, 0.08503614831717918, 0.0554595293739872, 0.0554595293739872, 0.02414830286854793, 0.02414830286854793], [0.1691423829631436, 0.1691423829631436, 0.16427648374583273, 0.16427648374583273, 0.15468467512626524, 0.15468467512626524, 0.14064291467065065, 0.14064291467065065, 0.12255520671147846, 0.12255520671147846, 0.10094204410628717, 0.10094204410628717, 0.07642573025488905, 0.07642573025488905, 0.0497145488949698, 0.0497145488949698, 0.02161601352648331, 0.02161601352648331], [0.1610544498487837, 0.15896884339395434, 0.15896884339395434, 0.15276604206585967, 0.15276604206585967, 0.1426067021736066, 0.1426067021736066, 0.12875396253933621, 0.12875396253933621, 0.11156664554733399, 0.11156664554733399, 0.09149002162245, 0.09149002162245, 0.06904454273764123, 0.06904454273764123, 0.0448142267656996, 0.0448142267656996, 0.019461788229726478, 0.019461788229726478], [0.15275338713072584, 0.15275338713072584, 0.14917298647260374, 0.14917298647260374, 0.14209610931838204, 0.14209610931838204, 0.13168863844917664, 0.13168863844917664, 0.11819453196151841, 0.11819453196151841, 0.10193011981724044, 0.10193011981724044, 0.08327674157670475, 0.08327674157670475, 0.06267204833410907, 0.06267204833410907, 0.04060142980038694, 0.04060142980038694, 0.017614007139152118, 0.017614007139152118], [0.14608113364969041, 0.14452440398997005, 0.14452440398997005, 0.13988739479107315, 0.13988739479107315, 0.13226893863333747, 0.13226893863333747, 0.12183141605372853, 0.12183141605372853, 0.10879729916714838, 0.10879729916714838, 0.09344442345603386, 0.09344442345603386, 0.0761001136283793, 0.0761001136283793, 0.057134425426857205, 0.057134425426857205, 0.036953789770852494, 0.036953789770852494, 0.016017228257774335, 0.016017228257774335], [0.13925187285563198, 0.13925187285563198, 0.13654149834601517, 0.13654149834601517, 0.13117350478706238, 0.13117350478706238, 0.12325237681051242, 0.12325237681051242, 0.11293229608053922, 0.11293229608053922, 0.10041414444288096, 0.10041414444288096, 0.08594160621706773, 0.08594160621706773, 0.06979646842452049, 0.06979646842452049, 0.052293335152683286, 0.052293335152683286, 0.03377490158481415, 0.03377490158481415, 0.0146279952982722, 0.0146279952982722], [0.13365457218610619, 0.1324620394046966, 0.1324620394046966, 0.12890572218808216, 0.12890572218808216, 0.12304908430672953, 0.12304908430672953, 0.11499664022241136, 0.11499664022241136, 0.10489209146454141, 0.10489209146454141, 0.09291576606003515, 0.09291576606003515, 0.07928141177671895, 0.07928141177671895, 0.06423242140852585, 0.06423242140852585, 0.04803767173108467, 0.04803767173108467, 0.030988005856979445, 0.030988005856979445, 0.013411859487141771, 0.013411859487141771], [0.12793819534675216, 0.12793819534675216, 0.1258374563468283, 0.1258374563468283, 0.12167047292780339, 0.12167047292780339, 0.1155056680537256, 0.1155056680537256, 0.10744427011596563, 0.10744427011596563, 0.09761865210411388, 0.09761865210411388, 0.08619016153195327, 0.08619016153195327, 0.0733464814110803, 0.0733464814110803, 0.05929858491543678, 0.05929858491543678, 0.04427743881741981, 0.04427743881741981, 0.028531388628933663, 0.028531388628933663, 0.0123412297999872, 0.0123412297999872]], _t.THREADS = 1, _t._init = !1, qe.basePath = "", He.uuid = 0, Zn.main();
10106
+ }(), wt.__toStr = {}.toString, ze.BYTES_PER_ELEMENT = 1, ft.queue = new Y(), At.memo = new Gt(), $.TOLERANCE = 1e-6, $.EPSILON = 1e-10, $.VERSION = "2.0.0", vt.Tvalues = [[], [], [-0.5773502691896257, 0.5773502691896257], [0, -0.7745966692414834, 0.7745966692414834], [-0.33998104358485626, 0.33998104358485626, -0.8611363115940526, 0.8611363115940526], [0, -0.5384693101056831, 0.5384693101056831, -0.906179845938664, 0.906179845938664], [0.6612093864662645, -0.6612093864662645, -0.2386191860831969, 0.2386191860831969, -0.932469514203152, 0.932469514203152], [0, 0.4058451513773972, -0.4058451513773972, -0.7415311855993945, 0.7415311855993945, -0.9491079123427585, 0.9491079123427585], [-0.1834346424956498, 0.1834346424956498, -0.525532409916329, 0.525532409916329, -0.7966664774136267, 0.7966664774136267, -0.9602898564975363, 0.9602898564975363], [0, -0.8360311073266358, 0.8360311073266358, -0.9681602395076261, 0.9681602395076261, -0.3242534234038089, 0.3242534234038089, -0.6133714327005904, 0.6133714327005904], [-0.14887433898163122, 0.14887433898163122, -0.4333953941292472, 0.4333953941292472, -0.6794095682990244, 0.6794095682990244, -0.8650633666889845, 0.8650633666889845, -0.9739065285171717, 0.9739065285171717], [0, -0.26954315595234496, 0.26954315595234496, -0.5190961292068118, 0.5190961292068118, -0.7301520055740494, 0.7301520055740494, -0.8870625997680953, 0.8870625997680953, -0.978228658146057, 0.978228658146057], [-0.1252334085114689, 0.1252334085114689, -0.3678314989981802, 0.3678314989981802, -0.5873179542866175, 0.5873179542866175, -0.7699026741943047, 0.7699026741943047, -0.9041172563704749, 0.9041172563704749, -0.9815606342467192, 0.9815606342467192], [0, -0.2304583159551348, 0.2304583159551348, -0.44849275103644687, 0.44849275103644687, -0.6423493394403402, 0.6423493394403402, -0.8015780907333099, 0.8015780907333099, -0.9175983992229779, 0.9175983992229779, -0.9841830547185881, 0.9841830547185881], [-0.10805494870734367, 0.10805494870734367, -0.31911236892788974, 0.31911236892788974, -0.5152486363581541, 0.5152486363581541, -0.6872929048116855, 0.6872929048116855, -0.827201315069765, 0.827201315069765, -0.9284348836635735, 0.9284348836635735, -0.9862838086968123, 0.9862838086968123], [0, -0.20119409399743451, 0.20119409399743451, -0.3941513470775634, 0.3941513470775634, -0.5709721726085388, 0.5709721726085388, -0.7244177313601701, 0.7244177313601701, -0.8482065834104272, 0.8482065834104272, -0.937273392400706, 0.937273392400706, -0.9879925180204854, 0.9879925180204854], [-0.09501250983763744, 0.09501250983763744, -0.2816035507792589, 0.2816035507792589, -0.45801677765722737, 0.45801677765722737, -0.6178762444026438, 0.6178762444026438, -0.755404408355003, 0.755404408355003, -0.8656312023878318, 0.8656312023878318, -0.9445750230732326, 0.9445750230732326, -0.9894009349916499, 0.9894009349916499], [0, -0.17848418149584785, 0.17848418149584785, -0.3512317634538763, 0.3512317634538763, -0.5126905370864769, 0.5126905370864769, -0.6576711592166907, 0.6576711592166907, -0.7815140038968014, 0.7815140038968014, -0.8802391537269859, 0.8802391537269859, -0.9506755217687678, 0.9506755217687678, -0.9905754753144174, 0.9905754753144174], [-0.0847750130417353, 0.0847750130417353, -0.2518862256915055, 0.2518862256915055, -0.41175116146284263, 0.41175116146284263, -0.5597708310739475, 0.5597708310739475, -0.6916870430603532, 0.6916870430603532, -0.8037049589725231, 0.8037049589725231, -0.8926024664975557, 0.8926024664975557, -0.9558239495713977, 0.9558239495713977, -0.9915651684209309, 0.9915651684209309], [0, -0.16035864564022537, 0.16035864564022537, -0.31656409996362983, 0.31656409996362983, -0.46457074137596094, 0.46457074137596094, -0.600545304661681, 0.600545304661681, -0.7209661773352294, 0.7209661773352294, -0.8227146565371428, 0.8227146565371428, -0.9031559036148179, 0.9031559036148179, -0.96020815213483, 0.96020815213483, -0.9924068438435844, 0.9924068438435844], [-0.07652652113349734, 0.07652652113349734, -0.22778585114164507, 0.22778585114164507, -0.37370608871541955, 0.37370608871541955, -0.5108670019508271, 0.5108670019508271, -0.636053680726515, 0.636053680726515, -0.7463319064601508, 0.7463319064601508, -0.8391169718222188, 0.8391169718222188, -0.912234428251326, 0.912234428251326, -0.9639719272779138, 0.9639719272779138, -0.9931285991850949, 0.9931285991850949], [0, -0.1455618541608951, 0.1455618541608951, -0.2880213168024011, 0.2880213168024011, -0.4243421202074388, 0.4243421202074388, -0.5516188358872198, 0.5516188358872198, -0.6671388041974123, 0.6671388041974123, -0.7684399634756779, 0.7684399634756779, -0.8533633645833173, 0.8533633645833173, -0.9200993341504008, 0.9200993341504008, -0.9672268385663063, 0.9672268385663063, -0.9937521706203895, 0.9937521706203895], [-0.06973927331972223, 0.06973927331972223, -0.20786042668822127, 0.20786042668822127, -0.34193582089208424, 0.34193582089208424, -0.469355837986757, 0.469355837986757, -0.5876404035069116, 0.5876404035069116, -0.6944872631866827, 0.6944872631866827, -0.7878168059792081, 0.7878168059792081, -0.8658125777203002, 0.8658125777203002, -0.926956772187174, 0.926956772187174, -0.9700604978354287, 0.9700604978354287, -0.9942945854823992, 0.9942945854823992], [0, -0.1332568242984661, 0.1332568242984661, -0.26413568097034495, 0.26413568097034495, -0.3903010380302908, 0.3903010380302908, -0.5095014778460075, 0.5095014778460075, -0.6196098757636461, 0.6196098757636461, -0.7186613631319502, 0.7186613631319502, -0.8048884016188399, 0.8048884016188399, -0.8767523582704416, 0.8767523582704416, -0.9329710868260161, 0.9329710868260161, -0.9725424712181152, 0.9725424712181152, -0.9947693349975522, 0.9947693349975522], [-0.06405689286260563, 0.06405689286260563, -0.1911188674736163, 0.1911188674736163, -0.3150426796961634, 0.3150426796961634, -0.4337935076260451, 0.4337935076260451, -0.5454214713888396, 0.5454214713888396, -0.6480936519369755, 0.6480936519369755, -0.7401241915785544, 0.7401241915785544, -0.820001985973903, 0.820001985973903, -0.8864155270044011, 0.8864155270044011, -0.9382745520027328, 0.9382745520027328, -0.9747285559713095, 0.9747285559713095, -0.9951872199970213, 0.9951872199970213]], vt.Cvalues = [[], [], [1, 1], [0.8888888888888888, 0.5555555555555556, 0.5555555555555556], [0.6521451548625461, 0.6521451548625461, 0.34785484513745385, 0.34785484513745385], [0.5688888888888889, 0.47862867049936647, 0.47862867049936647, 0.23692688505618908, 0.23692688505618908], [0.3607615730481386, 0.3607615730481386, 0.46791393457269104, 0.46791393457269104, 0.17132449237917036, 0.17132449237917036], [0.4179591836734694, 0.3818300505051189, 0.3818300505051189, 0.27970539148927664, 0.27970539148927664, 0.1294849661688697, 0.1294849661688697], [0.362683783378362, 0.362683783378362, 0.31370664587788727, 0.31370664587788727, 0.22238103445337448, 0.22238103445337448, 0.10122853629037626, 0.10122853629037626], [0.3302393550012598, 0.1806481606948574, 0.1806481606948574, 0.08127438836157441, 0.08127438836157441, 0.31234707704000286, 0.31234707704000286, 0.26061069640293544, 0.26061069640293544], [0.29552422471475287, 0.29552422471475287, 0.26926671930999635, 0.26926671930999635, 0.21908636251598204, 0.21908636251598204, 0.1494513491505806, 0.1494513491505806, 0.06667134430868814, 0.06667134430868814], [0.2729250867779006, 0.26280454451024665, 0.26280454451024665, 0.23319376459199048, 0.23319376459199048, 0.18629021092773426, 0.18629021092773426, 0.1255803694649046, 0.1255803694649046, 0.05566856711617366, 0.05566856711617366], [0.24914704581340277, 0.24914704581340277, 0.2334925365383548, 0.2334925365383548, 0.20316742672306592, 0.20316742672306592, 0.16007832854334622, 0.16007832854334622, 0.10693932599531843, 0.10693932599531843, 0.04717533638651183, 0.04717533638651183], [0.2325515532308739, 0.22628318026289723, 0.22628318026289723, 0.2078160475368885, 0.2078160475368885, 0.17814598076194574, 0.17814598076194574, 0.13887351021978725, 0.13887351021978725, 0.09212149983772845, 0.09212149983772845, 0.04048400476531588, 0.04048400476531588], [0.2152638534631578, 0.2152638534631578, 0.2051984637212956, 0.2051984637212956, 0.18553839747793782, 0.18553839747793782, 0.15720316715819355, 0.15720316715819355, 0.12151857068790319, 0.12151857068790319, 0.08015808715976021, 0.08015808715976021, 0.03511946033175186, 0.03511946033175186], [0.2025782419255613, 0.19843148532711158, 0.19843148532711158, 0.1861610000155622, 0.1861610000155622, 0.16626920581699392, 0.16626920581699392, 0.13957067792615432, 0.13957067792615432, 0.10715922046717194, 0.10715922046717194, 0.07036604748810812, 0.07036604748810812, 0.03075324199611727, 0.03075324199611727], [0.1894506104550685, 0.1894506104550685, 0.18260341504492358, 0.18260341504492358, 0.16915651939500254, 0.16915651939500254, 0.14959598881657674, 0.14959598881657674, 0.12462897125553388, 0.12462897125553388, 0.09515851168249279, 0.09515851168249279, 0.062253523938647894, 0.062253523938647894, 0.027152459411754096, 0.027152459411754096], [0.17944647035620653, 0.17656270536699264, 0.17656270536699264, 0.16800410215645004, 0.16800410215645004, 0.15404576107681028, 0.15404576107681028, 0.13513636846852548, 0.13513636846852548, 0.11188384719340397, 0.11188384719340397, 0.08503614831717918, 0.08503614831717918, 0.0554595293739872, 0.0554595293739872, 0.02414830286854793, 0.02414830286854793], [0.1691423829631436, 0.1691423829631436, 0.16427648374583273, 0.16427648374583273, 0.15468467512626524, 0.15468467512626524, 0.14064291467065065, 0.14064291467065065, 0.12255520671147846, 0.12255520671147846, 0.10094204410628717, 0.10094204410628717, 0.07642573025488905, 0.07642573025488905, 0.0497145488949698, 0.0497145488949698, 0.02161601352648331, 0.02161601352648331], [0.1610544498487837, 0.15896884339395434, 0.15896884339395434, 0.15276604206585967, 0.15276604206585967, 0.1426067021736066, 0.1426067021736066, 0.12875396253933621, 0.12875396253933621, 0.11156664554733399, 0.11156664554733399, 0.09149002162245, 0.09149002162245, 0.06904454273764123, 0.06904454273764123, 0.0448142267656996, 0.0448142267656996, 0.019461788229726478, 0.019461788229726478], [0.15275338713072584, 0.15275338713072584, 0.14917298647260374, 0.14917298647260374, 0.14209610931838204, 0.14209610931838204, 0.13168863844917664, 0.13168863844917664, 0.11819453196151841, 0.11819453196151841, 0.10193011981724044, 0.10193011981724044, 0.08327674157670475, 0.08327674157670475, 0.06267204833410907, 0.06267204833410907, 0.04060142980038694, 0.04060142980038694, 0.017614007139152118, 0.017614007139152118], [0.14608113364969041, 0.14452440398997005, 0.14452440398997005, 0.13988739479107315, 0.13988739479107315, 0.13226893863333747, 0.13226893863333747, 0.12183141605372853, 0.12183141605372853, 0.10879729916714838, 0.10879729916714838, 0.09344442345603386, 0.09344442345603386, 0.0761001136283793, 0.0761001136283793, 0.057134425426857205, 0.057134425426857205, 0.036953789770852494, 0.036953789770852494, 0.016017228257774335, 0.016017228257774335], [0.13925187285563198, 0.13925187285563198, 0.13654149834601517, 0.13654149834601517, 0.13117350478706238, 0.13117350478706238, 0.12325237681051242, 0.12325237681051242, 0.11293229608053922, 0.11293229608053922, 0.10041414444288096, 0.10041414444288096, 0.08594160621706773, 0.08594160621706773, 0.06979646842452049, 0.06979646842452049, 0.052293335152683286, 0.052293335152683286, 0.03377490158481415, 0.03377490158481415, 0.0146279952982722, 0.0146279952982722], [0.13365457218610619, 0.1324620394046966, 0.1324620394046966, 0.12890572218808216, 0.12890572218808216, 0.12304908430672953, 0.12304908430672953, 0.11499664022241136, 0.11499664022241136, 0.10489209146454141, 0.10489209146454141, 0.09291576606003515, 0.09291576606003515, 0.07928141177671895, 0.07928141177671895, 0.06423242140852585, 0.06423242140852585, 0.04803767173108467, 0.04803767173108467, 0.030988005856979445, 0.030988005856979445, 0.013411859487141771, 0.013411859487141771], [0.12793819534675216, 0.12793819534675216, 0.1258374563468283, 0.1258374563468283, 0.12167047292780339, 0.12167047292780339, 0.1155056680537256, 0.1155056680537256, 0.10744427011596563, 0.10744427011596563, 0.09761865210411388, 0.09761865210411388, 0.08619016153195327, 0.08619016153195327, 0.0733464814110803, 0.0733464814110803, 0.05929858491543678, 0.05929858491543678, 0.04427743881741981, 0.04427743881741981, 0.028531388628933663, 0.028531388628933663, 0.0123412297999872, 0.0123412297999872]], _t.THREADS = 1, _t._init = !1, qe.basePath = "", He.uuid = 0, Zn.main();
10107
10107
  }(typeof console < "u" ? console : { log: function() {
10108
10108
  } }, i, typeof g < "u" ? g : typeof a < "u" ? a : typeof self < "u" ? self : this), i;
10109
10109
  });
@@ -10135,8 +10135,8 @@ class pr {
10135
10135
  * Initialize for non-uniform Catmull-Rom interpolation
10136
10136
  */
10137
10137
  initNonuniformCatmullRom(e, i, a, u, _, g, y) {
10138
- let x = (i - e) / _ - (a - e) / (_ + g) + (a - i) / g, f = (a - i) / g - (u - i) / (g + y) + (u - a) / y;
10139
- x *= g, f *= g, this.init(i, a, x, f);
10138
+ let x = (i - e) / _ - (a - e) / (_ + g) + (a - i) / g, d = (a - i) / g - (u - i) / (g + y) + (u - a) / y;
10139
+ x *= g, d *= g, this.init(i, a, x, d);
10140
10140
  }
10141
10141
  /**
10142
10142
  * Calculate the polynomial value at parameter t
@@ -10222,14 +10222,14 @@ class ts extends Wn {
10222
10222
  const g = (_ - (this._closed ? 0 : 1)) * e;
10223
10223
  let y = Math.floor(g), x = g - y;
10224
10224
  this._closed ? y += y > 0 ? 0 : (Math.floor(Math.abs(y) / _) + 1) * _ : x === 0 && y === _ - 1 && (y = _ - 2, x = 1);
10225
- let f, A;
10226
- this._closed || y > 0 ? f = u[(y - 1) % _] : (this._tmp.subVectors(u[0], u[1]).add(u[0]), f = new St(this._tmp.x, this._tmp.y, this._tmp.z));
10225
+ let d, A;
10226
+ this._closed || y > 0 ? d = u[(y - 1) % _] : (this._tmp.subVectors(u[0], u[1]).add(u[0]), d = new St(this._tmp.x, this._tmp.y, this._tmp.z));
10227
10227
  const p = u[y % _], N = u[(y + 1) % _];
10228
10228
  if (this._closed || y + 2 < _ ? A = u[(y + 2) % _] : (this._tmp.subVectors(u[_ - 1], u[_ - 2]).add(u[_ - 1]), A = new St(this._tmp.x, this._tmp.y, this._tmp.z)), this._curveType === "centripetal" || this._curveType === "chordal") {
10229
10229
  const k = this._curveType === "chordal" ? 0.5 : 0.25;
10230
- let U = Math.pow(f.distanceToSquared(p), k), K = Math.pow(p.distanceToSquared(N), k), Y = Math.pow(N.distanceToSquared(A), k);
10231
- K < 1e-4 && (K = 1), U < 1e-4 && (U = K), Y < 1e-4 && (Y = K), this._px.initNonuniformCatmullRom(f.x, p.x, N.x, A.x, U, K, Y), this._py.initNonuniformCatmullRom(f.y, p.y, N.y, A.y, U, K, Y), this._pz.initNonuniformCatmullRom(f.z, p.z, N.z, A.z, U, K, Y);
10232
- } else this._curveType === "catmullrom" && (this._px.initCatmullRom(f.x, p.x, N.x, A.x, this._tension), this._py.initCatmullRom(f.y, p.y, N.y, A.y, this._tension), this._pz.initCatmullRom(f.z, p.z, N.z, A.z, this._tension));
10230
+ let U = Math.pow(d.distanceToSquared(p), k), K = Math.pow(p.distanceToSquared(N), k), Y = Math.pow(N.distanceToSquared(A), k);
10231
+ K < 1e-4 && (K = 1), U < 1e-4 && (U = K), Y < 1e-4 && (Y = K), this._px.initNonuniformCatmullRom(d.x, p.x, N.x, A.x, U, K, Y), this._py.initNonuniformCatmullRom(d.y, p.y, N.y, A.y, U, K, Y), this._pz.initNonuniformCatmullRom(d.z, p.z, N.z, A.z, U, K, Y);
10232
+ } else this._curveType === "catmullrom" && (this._px.initCatmullRom(d.x, p.x, N.x, A.x, this._tension), this._py.initCatmullRom(d.y, p.y, N.y, A.y, this._tension), this._pz.initCatmullRom(d.z, p.z, N.z, A.z, this._tension));
10233
10233
  return a.set(
10234
10234
  this._px.calc(x),
10235
10235
  this._py.calc(x),
@@ -10283,7 +10283,7 @@ class ts extends Wn {
10283
10283
  transform(e) {
10284
10284
  return this._points = this._points.map((i) => {
10285
10285
  const a = new St();
10286
- return a.copy(i), a.applyMatrix3d(e), a;
10286
+ return a.copy(i), a.applyMatrix4(e), a;
10287
10287
  }), this._boundingBoxNeedsUpdate = !0, this;
10288
10288
  }
10289
10289
  /**
@@ -10434,8 +10434,8 @@ class si extends Wn {
10434
10434
  throw Me.ILLEGAL_PARAMETERS;
10435
10435
  if (this._degree = 3, this._closed = !1, Array.isArray(i)) {
10436
10436
  this._controlPoints = e;
10437
- let y, x = 3, f = !1;
10438
- if (g >= 3 && (Array.isArray(a) ? (y = a, g >= 4 && (x = u || 3), g >= 5 && (f = _)) : a !== void 0 && (x = a || 3, g >= 4 && (f = u))), a === void 0 && g >= 4 && (x = u || 3, g >= 5 && (f = _)), this._degree = x, this._closed = f, this._controlPoints.length < this._degree + 1)
10437
+ let y, x = 3, d = !1;
10438
+ if (g >= 3 && (Array.isArray(a) ? (y = a, g >= 4 && (x = u || 3), g >= 5 && (d = _)) : a !== void 0 && (x = a || 3, g >= 4 && (d = u))), a === void 0 && g >= 4 && (x = u || 3, g >= 5 && (d = _)), this._degree = x, this._closed = d, this._controlPoints.length < this._degree + 1)
10439
10439
  throw Me.ILLEGAL_PARAMETERS;
10440
10440
  const A = this.toVerbPoints(this._controlPoints);
10441
10441
  this._nurbsCurve = gn.geom.NurbsCurve.byKnotsControlPointsWeights(
@@ -10549,8 +10549,8 @@ class si extends Wn {
10549
10549
  */
10550
10550
  getPoints(e = 100) {
10551
10551
  const i = this._nurbsCurve, a = [], u = i.knots(), _ = this._nurbsCurve.degree(), g = u[_], y = u[u.length - _ - 1], x = (y - g) / (e - 1);
10552
- for (let f = 0; f < e; f++) {
10553
- const A = f === e - 1 ? y : g + f * x, p = i.point(A);
10552
+ for (let d = 0; d < e; d++) {
10553
+ const A = d === e - 1 ? y : g + d * x, p = i.point(A);
10554
10554
  a.push(new St(p[0], p[1], p[2]));
10555
10555
  }
10556
10556
  return a;
@@ -10558,8 +10558,8 @@ class si extends Wn {
10558
10558
  getCurvePoints(e, i) {
10559
10559
  const a = [], u = e.knots(), _ = u[3], y = (u[u.length - 4] - _) / (i - 1);
10560
10560
  for (let x = 0; x < i; x++) {
10561
- const f = _ + x * y;
10562
- a.push(e.point(f));
10561
+ const d = _ + x * y;
10562
+ a.push(e.point(d));
10563
10563
  }
10564
10564
  return a;
10565
10565
  }
@@ -10661,7 +10661,7 @@ export {
10661
10661
  Q as AcGeVector3d,
10662
10662
  Qr as DEFAULT_TOL,
10663
10663
  Kr as DEG2RAD,
10664
- fn as FLOAT_TOL,
10664
+ dn as FLOAT_TOL,
10665
10665
  ns as ORIGIN_POINT_2D,
10666
10666
  Yr as ORIGIN_POINT_3D,
10667
10667
  Xr as RAD2DEG,