vis-core 0.28.1 → 0.28.3

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.
@@ -11,7 +11,7 @@ var Mn = (g, t) => (t = Symbol[g]) ? t : Symbol.for("Symbol." + g), Hn = (g) =>
11
11
  for (var r of Vn(t))
12
12
  kn.call(t, r) && wn(g, r, t[r]);
13
13
  return g;
14
- }, Di = (g, t) => zn(g, Nn(t));
14
+ }, Oi = (g, t) => zn(g, Nn(t));
15
15
  var C0 = (g, t, r) => wn(g, typeof t != "symbol" ? t + "" : t, r);
16
16
  var bn = (g, t, r) => Fn(Kn(g), r, t);
17
17
  var B0 = (g, t, r) => new Promise((m, v) => {
@@ -88,7 +88,7 @@ const publicKeyPEM = "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUlJQklqQU5CZ2txaGtpRz
88
88
  ).toString(CryptoJS.enc.Utf8), ke = JSON.parse(Ae), He = Date.now();
89
89
  return !ke.s || ke.s > He ? (this.token = void 0, "") : ke.e && ke.e < He ? (this.token = void 0, "") : (ke.isValid = Pe, ke);
90
90
  }
91
- }, version = "0.28.1";
91
+ }, version = "0.28.3";
92
92
  /**
93
93
  * @license
94
94
  * Copyright 2010-2025 Three.js Authors
@@ -6367,7 +6367,7 @@ class Object3D extends EventDispatcher {
6367
6367
  generator: "Object3D.toJSON"
6368
6368
  });
6369
6369
  const v = {};
6370
- v.uuid = this.uuid, v.type = this.type, this.name !== "" && (v.name = this.name), this.castShadow === !0 && (v.castShadow = !0), this.receiveShadow === !0 && (v.receiveShadow = !0), this.visible === !1 && (v.visible = !1), this.frustumCulled === !1 && (v.frustumCulled = !1), this.renderOrder !== 0 && (v.renderOrder = this.renderOrder), Object.keys(this.userData).length > 0 && (v.userData = this.userData), v.layers = this.layers.mask, v.matrix = this.matrix.toArray(), v.up = this.up.toArray(), this.matrixAutoUpdate === !1 && (v.matrixAutoUpdate = !1), this.isInstancedMesh && (v.type = "InstancedMesh", v.count = this.count, v.instanceMatrix = this.instanceMatrix.toJSON(), this.instanceColor !== null && (v.instanceColor = this.instanceColor.toJSON())), this.isBatchedMesh && (v.type = "BatchedMesh", v.perObjectFrustumCulled = this.perObjectFrustumCulled, v.sortObjects = this.sortObjects, v.drawRanges = this._drawRanges, v.reservedRanges = this._reservedRanges, v.geometryInfo = this._geometryInfo.map((O) => Di(bi({}, O), {
6370
+ v.uuid = this.uuid, v.type = this.type, this.name !== "" && (v.name = this.name), this.castShadow === !0 && (v.castShadow = !0), this.receiveShadow === !0 && (v.receiveShadow = !0), this.visible === !1 && (v.visible = !1), this.frustumCulled === !1 && (v.frustumCulled = !1), this.renderOrder !== 0 && (v.renderOrder = this.renderOrder), Object.keys(this.userData).length > 0 && (v.userData = this.userData), v.layers = this.layers.mask, v.matrix = this.matrix.toArray(), v.up = this.up.toArray(), this.matrixAutoUpdate === !1 && (v.matrixAutoUpdate = !1), this.isInstancedMesh && (v.type = "InstancedMesh", v.count = this.count, v.instanceMatrix = this.instanceMatrix.toJSON(), this.instanceColor !== null && (v.instanceColor = this.instanceColor.toJSON())), this.isBatchedMesh && (v.type = "BatchedMesh", v.perObjectFrustumCulled = this.perObjectFrustumCulled, v.sortObjects = this.sortObjects, v.drawRanges = this._drawRanges, v.reservedRanges = this._reservedRanges, v.geometryInfo = this._geometryInfo.map((O) => Oi(bi({}, O), {
6371
6371
  boundingBox: O.boundingBox ? O.boundingBox.toJSON() : void 0,
6372
6372
  boundingSphere: O.boundingSphere ? O.boundingSphere.toJSON() : void 0
6373
6373
  })), v.instanceInfo = this._instanceInfo.map((O) => bi({}, O)), v.availableInstanceIds = this._availableInstanceIds.slice(), v.availableGeometryIds = this._availableGeometryIds.slice(), v.nextIndexStart = this._nextIndexStart, v.nextVertexStart = this._nextVertexStart, v.geometryCount = this._geometryCount, v.maxInstanceCount = this._maxInstanceCount, v.maxVertexCount = this._maxVertexCount, v.maxIndexCount = this._maxIndexCount, v.geometryInitialized = this._geometryInitialized, v.matricesTexture = this._matricesTexture.toJSON(t), v.indirectTexture = this._indirectTexture.toJSON(t), this._colorsTexture !== null && (v.colorsTexture = this._colorsTexture.toJSON(t)), this.boundingSphere !== null && (v.boundingSphere = this.boundingSphere.toJSON()), this.boundingBox !== null && (v.boundingBox = this.boundingBox.toJSON()));
@@ -11572,7 +11572,7 @@ class BatchedMesh extends Mesh {
11572
11572
  _mesh.material = null, _mesh.geometry.index = null, _mesh.geometry.attributes = {}, _mesh.geometry.setDrawRange(0, 1 / 0);
11573
11573
  }
11574
11574
  copy(t) {
11575
- return super.copy(t), this.geometry = t.geometry.clone(), this.perObjectFrustumCulled = t.perObjectFrustumCulled, this.sortObjects = t.sortObjects, this.boundingBox = t.boundingBox !== null ? t.boundingBox.clone() : null, this.boundingSphere = t.boundingSphere !== null ? t.boundingSphere.clone() : null, this._geometryInfo = t._geometryInfo.map((r) => Di(bi({}, r), {
11575
+ return super.copy(t), this.geometry = t.geometry.clone(), this.perObjectFrustumCulled = t.perObjectFrustumCulled, this.sortObjects = t.sortObjects, this.boundingBox = t.boundingBox !== null ? t.boundingBox.clone() : null, this.boundingSphere = t.boundingSphere !== null ? t.boundingSphere.clone() : null, this._geometryInfo = t._geometryInfo.map((r) => Oi(bi({}, r), {
11576
11576
  boundingBox: r.boundingBox !== null ? r.boundingBox.clone() : null,
11577
11577
  boundingSphere: r.boundingSphere !== null ? r.boundingSphere.clone() : null
11578
11578
  })), this._instanceInfo = t._instanceInfo.map((r) => bi({}, r)), this._availableInstanceIds = t._availableInstanceIds.slice(), this._availableGeometryIds = t._availableGeometryIds.slice(), this._nextIndexStart = t._nextIndexStart, this._nextVertexStart = t._nextVertexStart, this._geometryCount = t._geometryCount, this._maxInstanceCount = t._maxInstanceCount, this._maxVertexCount = t._maxVertexCount, this._maxIndexCount = t._maxIndexCount, this._geometryInitialized = t._geometryInitialized, this._multiDrawCounts = t._multiDrawCounts.slice(), this._multiDrawStarts = t._multiDrawStarts.slice(), this._indirectTexture = t._indirectTexture.clone(), this._indirectTexture.image.data = this._indirectTexture.image.data.slice(), this._matricesTexture = t._matricesTexture.clone(), this._matricesTexture.image.data = this._matricesTexture.image.data.slice(), this._colorsTexture !== null && (this._colorsTexture = t._colorsTexture.clone(), this._colorsTexture.image.data = this._colorsTexture.image.data.slice()), this;
@@ -14111,10 +14111,10 @@ class ExtrudeGeometry extends BufferGeometry {
14111
14111
  if (Math.abs(G0) > Number.EPSILON) {
14112
14112
  const w0 = Math.sqrt(o0), F0 = Math.sqrt(ui * ui + c0 * c0), E0 = vi.x - N0 / w0, _i = vi.y + _0 / w0, Xi = $0.x - c0 / F0, Zi = $0.y + ui / F0, Ei = ((Xi - E0) * c0 - (Zi - _i) * ui) / (_0 * c0 - N0 * ui);
14113
14113
  xi = E0 + _0 * Ei - h0.x, H0 = _i + N0 * Ei - h0.y;
14114
- const D0 = xi * xi + H0 * H0;
14115
- if (D0 <= 2)
14114
+ const O0 = xi * xi + H0 * H0;
14115
+ if (O0 <= 2)
14116
14116
  return new Vector2(xi, H0);
14117
- I0 = Math.sqrt(D0 / 2);
14117
+ I0 = Math.sqrt(O0 / 2);
14118
14118
  } else {
14119
14119
  let w0 = !1;
14120
14120
  _0 > Number.EPSILON ? ui > Number.EPSILON && (w0 = !0) : _0 < -Number.EPSILON ? ui < -Number.EPSILON && (w0 = !0) : Math.sign(N0) === Math.sign(c0) && (w0 = !0), w0 ? (xi = -N0, H0 = _0, I0 = Math.sqrt(o0)) : (xi = _0, H0 = N0, I0 = Math.sqrt(o0 / 2));
@@ -14236,17 +14236,17 @@ class ExtrudeGeometry extends BufferGeometry {
14236
14236
  function Ti(h0, vi, $0) {
14237
14237
  ki(h0), ki(vi), ki($0);
14238
14238
  const xi = v.length / 3, H0 = ct.generateTopUV(m, v, xi - 3, xi - 2, xi - 1);
14239
- O0(H0[0]), O0(H0[1]), O0(H0[2]);
14239
+ D0(H0[0]), D0(H0[1]), D0(H0[2]);
14240
14240
  }
14241
14241
  function Fi(h0, vi, $0, xi) {
14242
14242
  ki(h0), ki(vi), ki(xi), ki(vi), ki($0), ki(xi);
14243
14243
  const H0 = v.length / 3, I0 = ct.generateSideWallUV(m, v, H0 - 6, H0 - 3, H0 - 2, H0 - 1);
14244
- O0(I0[0]), O0(I0[1]), O0(I0[3]), O0(I0[1]), O0(I0[2]), O0(I0[3]);
14244
+ D0(I0[0]), D0(I0[1]), D0(I0[3]), D0(I0[1]), D0(I0[2]), D0(I0[3]);
14245
14245
  }
14246
14246
  function ki(h0) {
14247
14247
  v.push(ve[h0 * 3 + 0]), v.push(ve[h0 * 3 + 1]), v.push(ve[h0 * 3 + 2]);
14248
14248
  }
14249
- function O0(h0) {
14249
+ function D0(h0) {
14250
14250
  C.push(h0.x), C.push(h0.y);
14251
14251
  }
14252
14252
  }
@@ -18223,7 +18223,7 @@ class ObjectLoader extends Loader {
18223
18223
  case "BatchedMesh":
18224
18224
  Ne = O(t.geometry), Ae = ve(t.material), w = new BatchedMesh(t.maxInstanceCount, t.maxVertexCount, t.maxIndexCount, Ae), w.geometry = Ne, w.perObjectFrustumCulled = t.perObjectFrustumCulled, w.sortObjects = t.sortObjects, w._drawRanges = t.drawRanges, w._reservedRanges = t.reservedRanges, w._geometryInfo = t.geometryInfo.map((xt) => {
18225
18225
  let at = null, Fe = null;
18226
- return xt.boundingBox !== void 0 && (at = new Box3().fromJSON(xt.boundingBox)), xt.boundingSphere !== void 0 && (Fe = new Sphere$1().fromJSON(xt.boundingSphere)), Di(bi({}, xt), {
18226
+ return xt.boundingBox !== void 0 && (at = new Box3().fromJSON(xt.boundingBox)), xt.boundingSphere !== void 0 && (Fe = new Sphere$1().fromJSON(xt.boundingSphere)), Oi(bi({}, xt), {
18227
18227
  boundingBox: at,
18228
18228
  boundingSphere: Fe
18229
18229
  });
@@ -28654,9 +28654,9 @@ function WebGLPrograms(g, t, r, m, v, C, w) {
28654
28654
  q0 = $i.vertexShader, M0 = $i.fragmentShader;
28655
28655
  } else
28656
28656
  q0 = kt.vertexShader, M0 = kt.fragmentShader, ve.update(kt), K0 = ve.getVertexShaderID(kt), k0 = ve.getFragmentShaderID(kt);
28657
- const J0 = g.getRenderTarget(), Si = g.state.buffers.depth.getReversed(), Vi = r0.isInstancedMesh === !0, Ti = r0.isBatchedMesh === !0, Fi = !!kt.map, ki = !!kt.matcap, O0 = !!t0, h0 = !!kt.aoMap, vi = !!kt.lightMap, $0 = !!kt.bumpMap, xi = !!kt.normalMap, H0 = !!kt.displacementMap, I0 = !!kt.emissiveMap, _0 = !!kt.metalnessMap, N0 = !!kt.roughnessMap, ui = kt.anisotropy > 0, c0 = kt.clearcoat > 0, o0 = kt.dispersion > 0, G0 = kt.iridescence > 0, w0 = kt.sheen > 0, F0 = kt.transmission > 0, E0 = ui && !!kt.anisotropyMap, _i = c0 && !!kt.clearcoatMap, Xi = c0 && !!kt.clearcoatNormalMap, Zi = c0 && !!kt.clearcoatRoughnessMap, Ei = G0 && !!kt.iridescenceMap, D0 = G0 && !!kt.iridescenceThicknessMap, wi = w0 && !!kt.sheenColorMap, Yi = w0 && !!kt.sheenRoughnessMap, Ki = !!kt.specularMap, Li = !!kt.specularColorMap, Wi = !!kt.specularIntensityMap, L0 = F0 && !!kt.transmissionMap, A0 = F0 && !!kt.thicknessMap, gi = !!kt.gradientMap, Ii = !!kt.alphaMap, Ci = kt.alphaTest > 0, fi = !!kt.alphaHash, Ai = !!kt.extensions;
28658
- let Oi = NoToneMapping;
28659
- kt.toneMapped && (J0 === null || J0.isXRRenderTarget === !0) && (Oi = g.toneMapping);
28657
+ const J0 = g.getRenderTarget(), Si = g.state.buffers.depth.getReversed(), Vi = r0.isInstancedMesh === !0, Ti = r0.isBatchedMesh === !0, Fi = !!kt.map, ki = !!kt.matcap, D0 = !!t0, h0 = !!kt.aoMap, vi = !!kt.lightMap, $0 = !!kt.bumpMap, xi = !!kt.normalMap, H0 = !!kt.displacementMap, I0 = !!kt.emissiveMap, _0 = !!kt.metalnessMap, N0 = !!kt.roughnessMap, ui = kt.anisotropy > 0, c0 = kt.clearcoat > 0, o0 = kt.dispersion > 0, G0 = kt.iridescence > 0, w0 = kt.sheen > 0, F0 = kt.transmission > 0, E0 = ui && !!kt.anisotropyMap, _i = c0 && !!kt.clearcoatMap, Xi = c0 && !!kt.clearcoatNormalMap, Zi = c0 && !!kt.clearcoatRoughnessMap, Ei = G0 && !!kt.iridescenceMap, O0 = G0 && !!kt.iridescenceThicknessMap, wi = w0 && !!kt.sheenColorMap, Yi = w0 && !!kt.sheenRoughnessMap, Ki = !!kt.specularMap, Li = !!kt.specularColorMap, Wi = !!kt.specularIntensityMap, L0 = F0 && !!kt.transmissionMap, A0 = F0 && !!kt.thicknessMap, gi = !!kt.gradientMap, Ii = !!kt.alphaMap, Ci = kt.alphaTest > 0, fi = !!kt.alphaHash, Ai = !!kt.extensions;
28658
+ let Di = NoToneMapping;
28659
+ kt.toneMapped && (J0 === null || J0.isXRRenderTarget === !0) && (Di = g.toneMapping);
28660
28660
  const en = {
28661
28661
  shaderID: a0,
28662
28662
  shaderType: kt.type,
@@ -28679,8 +28679,8 @@ function WebGLPrograms(g, t, r, m, v, C, w) {
28679
28679
  alphaToCoverage: !!kt.alphaToCoverage,
28680
28680
  map: Fi,
28681
28681
  matcap: ki,
28682
- envMap: O0,
28683
- envMapMode: O0 && t0.mapping,
28682
+ envMap: D0,
28683
+ envMapMode: D0 && t0.mapping,
28684
28684
  envMapCubeUVHeight: Ut,
28685
28685
  aoMap: h0,
28686
28686
  lightMap: vi,
@@ -28701,7 +28701,7 @@ function WebGLPrograms(g, t, r, m, v, C, w) {
28701
28701
  dispersion: o0,
28702
28702
  iridescence: G0,
28703
28703
  iridescenceMap: Ei,
28704
- iridescenceThicknessMap: D0,
28704
+ iridescenceThicknessMap: O0,
28705
28705
  sheen: w0,
28706
28706
  sheenColorMap: wi,
28707
28707
  sheenRoughnessMap: Yi,
@@ -28732,7 +28732,7 @@ function WebGLPrograms(g, t, r, m, v, C, w) {
28732
28732
  clearcoatNormalMapUv: Xi && xt(kt.clearcoatNormalMap.channel),
28733
28733
  clearcoatRoughnessMapUv: Zi && xt(kt.clearcoatRoughnessMap.channel),
28734
28734
  iridescenceMapUv: Ei && xt(kt.iridescenceMap.channel),
28735
- iridescenceThicknessMapUv: D0 && xt(kt.iridescenceThicknessMap.channel),
28735
+ iridescenceThicknessMapUv: O0 && xt(kt.iridescenceThicknessMap.channel),
28736
28736
  sheenColorMapUv: wi && xt(kt.sheenColorMap.channel),
28737
28737
  sheenRoughnessMapUv: Yi && xt(kt.sheenRoughnessMap.channel),
28738
28738
  specularMapUv: Ki && xt(kt.specularMap.channel),
@@ -28775,7 +28775,7 @@ function WebGLPrograms(g, t, r, m, v, C, w) {
28775
28775
  dithering: kt.dithering,
28776
28776
  shadowMapEnabled: g.shadowMap.enabled && Yt.length > 0,
28777
28777
  shadowMapType: g.shadowMap.type,
28778
- toneMapping: Oi,
28778
+ toneMapping: Di,
28779
28779
  decodeVideoTexture: Fi && kt.map.isVideoTexture === !0 && ColorManagement.getTransfer(kt.map.colorSpace) === SRGBTransfer,
28780
28780
  decodeVideoTextureEmissive: I0 && kt.emissiveMap.isVideoTexture === !0 && ColorManagement.getTransfer(kt.emissiveMap.colorSpace) === SRGBTransfer,
28781
28781
  premultipliedAlpha: kt.premultipliedAlpha,
@@ -29372,8 +29372,8 @@ function WebGLState(g, t) {
29372
29372
  setLocked: function(Ci) {
29373
29373
  L0 = Ci;
29374
29374
  },
29375
- setClear: function(Ci, fi, Ai, Oi, en) {
29376
- en === !0 && (Ci *= Oi, fi *= Oi, Ai *= Oi), A0.set(Ci, fi, Ai, Oi), Ii.equals(A0) === !1 && (g.clearColor(Ci, fi, Ai, Oi), Ii.copy(A0));
29375
+ setClear: function(Ci, fi, Ai, Di, en) {
29376
+ en === !0 && (Ci *= Di, fi *= Di, Ai *= Di), A0.set(Ci, fi, Ai, Di), Ii.equals(A0) === !1 && (g.clearColor(Ci, fi, Ai, Di), Ii.copy(A0));
29377
29377
  },
29378
29378
  reset: function() {
29379
29379
  L0 = !1, gi = null, Ii.set(-1, 0, 0, 0);
@@ -29387,8 +29387,8 @@ function WebGLState(g, t) {
29387
29387
  if (A0 !== fi) {
29388
29388
  const Ai = t.get("EXT_clip_control");
29389
29389
  fi ? Ai.clipControlEXT(Ai.LOWER_LEFT_EXT, Ai.ZERO_TO_ONE_EXT) : Ai.clipControlEXT(Ai.LOWER_LEFT_EXT, Ai.NEGATIVE_ONE_TO_ONE_EXT), A0 = fi;
29390
- const Oi = Ci;
29391
- Ci = null, this.setClear(Oi);
29390
+ const Di = Ci;
29391
+ Ci = null, this.setClear(Di);
29392
29392
  }
29393
29393
  },
29394
29394
  getReversed: function() {
@@ -29445,7 +29445,7 @@ function WebGLState(g, t) {
29445
29445
  };
29446
29446
  }
29447
29447
  function v() {
29448
- let L0 = !1, A0 = null, gi = null, Ii = null, Ci = null, fi = null, Ai = null, Oi = null, en = null;
29448
+ let L0 = !1, A0 = null, gi = null, Ii = null, Ci = null, fi = null, Ai = null, Di = null, en = null;
29449
29449
  return {
29450
29450
  setTest: function($i) {
29451
29451
  L0 || ($i ? J0(g.STENCIL_TEST) : Si(g.STENCIL_TEST));
@@ -29457,7 +29457,7 @@ function WebGLState(g, t) {
29457
29457
  (gi !== $i || Ii !== an || Ci !== ln) && (g.stencilFunc($i, an, ln), gi = $i, Ii = an, Ci = ln);
29458
29458
  },
29459
29459
  setOp: function($i, an, ln) {
29460
- (fi !== $i || Ai !== an || Oi !== ln) && (g.stencilOp($i, an, ln), fi = $i, Ai = an, Oi = ln);
29460
+ (fi !== $i || Ai !== an || Di !== ln) && (g.stencilOp($i, an, ln), fi = $i, Ai = an, Di = ln);
29461
29461
  },
29462
29462
  setLocked: function($i) {
29463
29463
  L0 = $i;
@@ -29466,7 +29466,7 @@ function WebGLState(g, t) {
29466
29466
  en !== $i && (g.clearStencil($i), en = $i);
29467
29467
  },
29468
29468
  reset: function() {
29469
- L0 = !1, A0 = null, gi = null, Ii = null, Ci = null, fi = null, Ai = null, Oi = null, en = null;
29469
+ L0 = !1, A0 = null, gi = null, Ii = null, Ci = null, fi = null, Ai = null, Di = null, en = null;
29470
29470
  }
29471
29471
  };
29472
29472
  }
@@ -29519,7 +29519,7 @@ function WebGLState(g, t) {
29519
29519
  [ReverseSubtractEquation]: g.FUNC_REVERSE_SUBTRACT
29520
29520
  };
29521
29521
  ki[MinEquation] = g.MIN, ki[MaxEquation] = g.MAX;
29522
- const O0 = {
29522
+ const D0 = {
29523
29523
  [ZeroFactor]: g.ZERO,
29524
29524
  [OneFactor]: g.ONE,
29525
29525
  [SrcColorFactor]: g.SRC_COLOR,
@@ -29536,7 +29536,7 @@ function WebGLState(g, t) {
29536
29536
  [ConstantAlphaFactor]: g.CONSTANT_ALPHA,
29537
29537
  [OneMinusConstantAlphaFactor]: g.ONE_MINUS_CONSTANT_ALPHA
29538
29538
  };
29539
- function h0(L0, A0, gi, Ii, Ci, fi, Ai, Oi, en, $i) {
29539
+ function h0(L0, A0, gi, Ii, Ci, fi, Ai, Di, en, $i) {
29540
29540
  if (L0 === NoBlending) {
29541
29541
  xt === !0 && (Si(g.BLEND), xt = !1);
29542
29542
  return;
@@ -29583,7 +29583,7 @@ function WebGLState(g, t) {
29583
29583
  }
29584
29584
  return;
29585
29585
  }
29586
- Ci = Ci || A0, fi = fi || gi, Ai = Ai || Ii, (A0 !== Fe || Ci !== Gt) && (g.blendEquationSeparate(ki[A0], ki[Ci]), Fe = A0, Gt = Ci), (gi !== ct || Ii !== ht || fi !== Lt || Ai !== Wt) && (g.blendFuncSeparate(O0[gi], O0[Ii], O0[fi], O0[Ai]), ct = gi, ht = Ii, Lt = fi, Wt = Ai), (Oi.equals(Pt) === !1 || en !== Kt) && (g.blendColor(Oi.r, Oi.g, Oi.b, en), Pt.copy(Oi), Kt = en), at = L0, kt = !1;
29586
+ Ci = Ci || A0, fi = fi || gi, Ai = Ai || Ii, (A0 !== Fe || Ci !== Gt) && (g.blendEquationSeparate(ki[A0], ki[Ci]), Fe = A0, Gt = Ci), (gi !== ct || Ii !== ht || fi !== Lt || Ai !== Wt) && (g.blendFuncSeparate(D0[gi], D0[Ii], D0[fi], D0[Ai]), ct = gi, ht = Ii, Lt = fi, Wt = Ai), (Di.equals(Pt) === !1 || en !== Kt) && (g.blendColor(Di.r, Di.g, Di.b, en), Pt.copy(Di), Kt = en), at = L0, kt = !1;
29587
29587
  }
29588
29588
  function vi(L0, A0) {
29589
29589
  L0.side === DoubleSide ? Si(g.CULL_FACE) : J0(g.CULL_FACE);
@@ -29682,7 +29682,7 @@ function WebGLState(g, t) {
29682
29682
  console.error("THREE.WebGLState:", L0);
29683
29683
  }
29684
29684
  }
29685
- function D0() {
29685
+ function O0() {
29686
29686
  try {
29687
29687
  g.texImage3D(...arguments);
29688
29688
  } catch (L0) {
@@ -29732,7 +29732,7 @@ function WebGLState(g, t) {
29732
29732
  compressedTexImage2D: o0,
29733
29733
  compressedTexImage3D: G0,
29734
29734
  texImage2D: Ei,
29735
- texImage3D: D0,
29735
+ texImage3D: O0,
29736
29736
  updateUBOMapping: Ki,
29737
29737
  uniformBlockBinding: Li,
29738
29738
  texStorage2D: Xi,
@@ -29959,10 +29959,10 @@ function WebGLTextures(g, t, r, m, v, C, w) {
29959
29959
  if (E0.length === 0)
29960
29960
  r.texSubImage2D(g.TEXTURE_2D, 0, 0, 0, o0.width, o0.height, G0, w0, o0.data);
29961
29961
  else {
29962
- E0.sort((D0, wi) => D0.start - wi.start);
29962
+ E0.sort((O0, wi) => O0.start - wi.start);
29963
29963
  let _i = 0;
29964
- for (let D0 = 1; D0 < E0.length; D0++) {
29965
- const wi = E0[_i], Yi = E0[D0], Ki = wi.start + wi.count, Li = M0(Yi.start, o0.width, 4), Wi = M0(wi.start, o0.width, 4);
29964
+ for (let O0 = 1; O0 < E0.length; O0++) {
29965
+ const wi = E0[_i], Yi = E0[O0], Ki = wi.start + wi.count, Li = M0(Yi.start, o0.width, 4), Wi = M0(wi.start, o0.width, 4);
29966
29966
  Yi.start <= Ki + 1 && Li === Wi && M0(Yi.start + Yi.count - 1, o0.width, 4) === Li ? wi.count = Math.max(
29967
29967
  wi.count,
29968
29968
  Yi.start + Yi.count - wi.start
@@ -29971,8 +29971,8 @@ function WebGLTextures(g, t, r, m, v, C, w) {
29971
29971
  E0.length = _i + 1;
29972
29972
  const Xi = g.getParameter(g.UNPACK_ROW_LENGTH), Zi = g.getParameter(g.UNPACK_SKIP_PIXELS), Ei = g.getParameter(g.UNPACK_SKIP_ROWS);
29973
29973
  g.pixelStorei(g.UNPACK_ROW_LENGTH, o0.width);
29974
- for (let D0 = 0, wi = E0.length; D0 < wi; D0++) {
29975
- const Yi = E0[D0], Ki = Math.floor(Yi.start / 4), Li = Math.ceil(Yi.count / 4), Wi = Ki % o0.width, L0 = Math.floor(Ki / o0.width), A0 = Li, gi = 1;
29974
+ for (let O0 = 0, wi = E0.length; O0 < wi; O0++) {
29975
+ const Yi = E0[O0], Ki = Math.floor(Yi.start / 4), Li = Math.ceil(Yi.count / 4), Wi = Ki % o0.width, L0 = Math.floor(Ki / o0.width), A0 = Li, gi = 1;
29976
29976
  g.pixelStorei(g.UNPACK_SKIP_PIXELS, Wi), g.pixelStorei(g.UNPACK_SKIP_ROWS, L0), r.texSubImage2D(g.TEXTURE_2D, 0, Wi, L0, A0, gi, G0, w0, o0.data);
29977
29977
  }
29978
29978
  c0.clearUpdateRanges(), g.pixelStorei(g.UNPACK_ROW_LENGTH, Xi), g.pixelStorei(g.UNPACK_SKIP_PIXELS, Zi), g.pixelStorei(g.UNPACK_SKIP_ROWS, Ei);
@@ -29988,15 +29988,15 @@ function WebGLTextures(g, t, r, m, v, C, w) {
29988
29988
  r.activeTexture(g.TEXTURE0 + G0);
29989
29989
  const Xi = ColorManagement.getPrimaries(ColorManagement.workingColorSpace), Zi = o0.colorSpace === NoColorSpace ? null : ColorManagement.getPrimaries(o0.colorSpace), Ei = o0.colorSpace === NoColorSpace || Xi === Zi ? g.NONE : g.BROWSER_DEFAULT_WEBGL;
29990
29990
  g.pixelStorei(g.UNPACK_FLIP_Y_WEBGL, o0.flipY), g.pixelStorei(g.UNPACK_PREMULTIPLY_ALPHA_WEBGL, o0.premultiplyAlpha), g.pixelStorei(g.UNPACK_ALIGNMENT, o0.unpackAlignment), g.pixelStorei(g.UNPACK_COLORSPACE_CONVERSION_WEBGL, Ei);
29991
- let D0 = xt(o0.image, !1, v.maxTextureSize);
29992
- D0 = N0(o0, D0);
29991
+ let O0 = xt(o0.image, !1, v.maxTextureSize);
29992
+ O0 = N0(o0, O0);
29993
29993
  const wi = C.convert(o0.format, o0.colorSpace), Yi = C.convert(o0.type);
29994
29994
  let Ki = ht(o0.internalFormat, wi, Yi, o0.colorSpace, o0.isVideoTexture);
29995
29995
  P0(w0, o0);
29996
29996
  let Li;
29997
- const Wi = o0.mipmaps, L0 = o0.isVideoTexture !== !0, A0 = _i.__version === void 0 || F0 === !0, gi = E0.dataReady, Ii = Lt(o0, D0);
29997
+ const Wi = o0.mipmaps, L0 = o0.isVideoTexture !== !0, A0 = _i.__version === void 0 || F0 === !0, gi = E0.dataReady, Ii = Lt(o0, O0);
29998
29998
  if (o0.isDepthTexture)
29999
- Ki = Gt(o0.format === DepthStencilFormat, o0.type), A0 && (L0 ? r.texStorage2D(g.TEXTURE_2D, 1, Ki, D0.width, D0.height) : r.texImage2D(g.TEXTURE_2D, 0, Ki, D0.width, D0.height, 0, wi, Yi, null));
29999
+ Ki = Gt(o0.format === DepthStencilFormat, o0.type), A0 && (L0 ? r.texStorage2D(g.TEXTURE_2D, 1, Ki, O0.width, O0.height) : r.texImage2D(g.TEXTURE_2D, 0, Ki, O0.width, O0.height, 0, wi, Yi, null));
30000
30000
  else if (o0.isDataTexture)
30001
30001
  if (Wi.length > 0) {
30002
30002
  L0 && A0 && r.texStorage2D(g.TEXTURE_2D, Ii, Ki, Wi[0].width, Wi[0].height);
@@ -30004,10 +30004,10 @@ function WebGLTextures(g, t, r, m, v, C, w) {
30004
30004
  Li = Wi[Ci], L0 ? gi && r.texSubImage2D(g.TEXTURE_2D, Ci, 0, 0, Li.width, Li.height, wi, Yi, Li.data) : r.texImage2D(g.TEXTURE_2D, Ci, Ki, Li.width, Li.height, 0, wi, Yi, Li.data);
30005
30005
  o0.generateMipmaps = !1;
30006
30006
  } else
30007
- L0 ? (A0 && r.texStorage2D(g.TEXTURE_2D, Ii, Ki, D0.width, D0.height), gi && K0(o0, D0, wi, Yi)) : r.texImage2D(g.TEXTURE_2D, 0, Ki, D0.width, D0.height, 0, wi, Yi, D0.data);
30007
+ L0 ? (A0 && r.texStorage2D(g.TEXTURE_2D, Ii, Ki, O0.width, O0.height), gi && K0(o0, O0, wi, Yi)) : r.texImage2D(g.TEXTURE_2D, 0, Ki, O0.width, O0.height, 0, wi, Yi, O0.data);
30008
30008
  else if (o0.isCompressedTexture)
30009
30009
  if (o0.isCompressedArrayTexture) {
30010
- L0 && A0 && r.texStorage3D(g.TEXTURE_2D_ARRAY, Ii, Ki, Wi[0].width, Wi[0].height, D0.depth);
30010
+ L0 && A0 && r.texStorage3D(g.TEXTURE_2D_ARRAY, Ii, Ki, Wi[0].width, Wi[0].height, O0.depth);
30011
30011
  for (let Ci = 0, fi = Wi.length; Ci < fi; Ci++)
30012
30012
  if (Li = Wi[Ci], o0.format !== RGBAFormat)
30013
30013
  if (wi !== null)
@@ -30015,22 +30015,22 @@ function WebGLTextures(g, t, r, m, v, C, w) {
30015
30015
  if (gi)
30016
30016
  if (o0.layerUpdates.size > 0) {
30017
30017
  const Ai = getByteLength(Li.width, Li.height, o0.format, o0.type);
30018
- for (const Oi of o0.layerUpdates) {
30018
+ for (const Di of o0.layerUpdates) {
30019
30019
  const en = Li.data.subarray(
30020
- Oi * Ai / Li.data.BYTES_PER_ELEMENT,
30021
- (Oi + 1) * Ai / Li.data.BYTES_PER_ELEMENT
30020
+ Di * Ai / Li.data.BYTES_PER_ELEMENT,
30021
+ (Di + 1) * Ai / Li.data.BYTES_PER_ELEMENT
30022
30022
  );
30023
- r.compressedTexSubImage3D(g.TEXTURE_2D_ARRAY, Ci, 0, 0, Oi, Li.width, Li.height, 1, wi, en);
30023
+ r.compressedTexSubImage3D(g.TEXTURE_2D_ARRAY, Ci, 0, 0, Di, Li.width, Li.height, 1, wi, en);
30024
30024
  }
30025
30025
  o0.clearLayerUpdates();
30026
30026
  } else
30027
- r.compressedTexSubImage3D(g.TEXTURE_2D_ARRAY, Ci, 0, 0, 0, Li.width, Li.height, D0.depth, wi, Li.data);
30027
+ r.compressedTexSubImage3D(g.TEXTURE_2D_ARRAY, Ci, 0, 0, 0, Li.width, Li.height, O0.depth, wi, Li.data);
30028
30028
  } else
30029
- r.compressedTexImage3D(g.TEXTURE_2D_ARRAY, Ci, Ki, Li.width, Li.height, D0.depth, 0, Li.data, 0, 0);
30029
+ r.compressedTexImage3D(g.TEXTURE_2D_ARRAY, Ci, Ki, Li.width, Li.height, O0.depth, 0, Li.data, 0, 0);
30030
30030
  else
30031
30031
  console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()");
30032
30032
  else
30033
- L0 ? gi && r.texSubImage3D(g.TEXTURE_2D_ARRAY, Ci, 0, 0, 0, Li.width, Li.height, D0.depth, wi, Yi, Li.data) : r.texImage3D(g.TEXTURE_2D_ARRAY, Ci, Ki, Li.width, Li.height, D0.depth, 0, wi, Yi, Li.data);
30033
+ L0 ? gi && r.texSubImage3D(g.TEXTURE_2D_ARRAY, Ci, 0, 0, 0, Li.width, Li.height, O0.depth, wi, Yi, Li.data) : r.texImage3D(g.TEXTURE_2D_ARRAY, Ci, Ki, Li.width, Li.height, O0.depth, 0, wi, Yi, Li.data);
30034
30034
  } else {
30035
30035
  L0 && A0 && r.texStorage2D(g.TEXTURE_2D, Ii, Ki, Wi[0].width, Wi[0].height);
30036
30036
  for (let Ci = 0, fi = Wi.length; Ci < fi; Ci++)
@@ -30038,29 +30038,29 @@ function WebGLTextures(g, t, r, m, v, C, w) {
30038
30038
  }
30039
30039
  else if (o0.isDataArrayTexture)
30040
30040
  if (L0) {
30041
- if (A0 && r.texStorage3D(g.TEXTURE_2D_ARRAY, Ii, Ki, D0.width, D0.height, D0.depth), gi)
30041
+ if (A0 && r.texStorage3D(g.TEXTURE_2D_ARRAY, Ii, Ki, O0.width, O0.height, O0.depth), gi)
30042
30042
  if (o0.layerUpdates.size > 0) {
30043
- const Ci = getByteLength(D0.width, D0.height, o0.format, o0.type);
30043
+ const Ci = getByteLength(O0.width, O0.height, o0.format, o0.type);
30044
30044
  for (const fi of o0.layerUpdates) {
30045
- const Ai = D0.data.subarray(
30046
- fi * Ci / D0.data.BYTES_PER_ELEMENT,
30047
- (fi + 1) * Ci / D0.data.BYTES_PER_ELEMENT
30045
+ const Ai = O0.data.subarray(
30046
+ fi * Ci / O0.data.BYTES_PER_ELEMENT,
30047
+ (fi + 1) * Ci / O0.data.BYTES_PER_ELEMENT
30048
30048
  );
30049
- r.texSubImage3D(g.TEXTURE_2D_ARRAY, 0, 0, 0, fi, D0.width, D0.height, 1, wi, Yi, Ai);
30049
+ r.texSubImage3D(g.TEXTURE_2D_ARRAY, 0, 0, 0, fi, O0.width, O0.height, 1, wi, Yi, Ai);
30050
30050
  }
30051
30051
  o0.clearLayerUpdates();
30052
30052
  } else
30053
- r.texSubImage3D(g.TEXTURE_2D_ARRAY, 0, 0, 0, 0, D0.width, D0.height, D0.depth, wi, Yi, D0.data);
30053
+ r.texSubImage3D(g.TEXTURE_2D_ARRAY, 0, 0, 0, 0, O0.width, O0.height, O0.depth, wi, Yi, O0.data);
30054
30054
  } else
30055
- r.texImage3D(g.TEXTURE_2D_ARRAY, 0, Ki, D0.width, D0.height, D0.depth, 0, wi, Yi, D0.data);
30055
+ r.texImage3D(g.TEXTURE_2D_ARRAY, 0, Ki, O0.width, O0.height, O0.depth, 0, wi, Yi, O0.data);
30056
30056
  else if (o0.isData3DTexture)
30057
- L0 ? (A0 && r.texStorage3D(g.TEXTURE_3D, Ii, Ki, D0.width, D0.height, D0.depth), gi && r.texSubImage3D(g.TEXTURE_3D, 0, 0, 0, 0, D0.width, D0.height, D0.depth, wi, Yi, D0.data)) : r.texImage3D(g.TEXTURE_3D, 0, Ki, D0.width, D0.height, D0.depth, 0, wi, Yi, D0.data);
30057
+ L0 ? (A0 && r.texStorage3D(g.TEXTURE_3D, Ii, Ki, O0.width, O0.height, O0.depth), gi && r.texSubImage3D(g.TEXTURE_3D, 0, 0, 0, 0, O0.width, O0.height, O0.depth, wi, Yi, O0.data)) : r.texImage3D(g.TEXTURE_3D, 0, Ki, O0.width, O0.height, O0.depth, 0, wi, Yi, O0.data);
30058
30058
  else if (o0.isFramebufferTexture) {
30059
30059
  if (A0)
30060
30060
  if (L0)
30061
- r.texStorage2D(g.TEXTURE_2D, Ii, Ki, D0.width, D0.height);
30061
+ r.texStorage2D(g.TEXTURE_2D, Ii, Ki, O0.width, O0.height);
30062
30062
  else {
30063
- let Ci = D0.width, fi = D0.height;
30063
+ let Ci = O0.width, fi = O0.height;
30064
30064
  for (let Ai = 0; Ai < Ii; Ai++)
30065
30065
  r.texImage2D(g.TEXTURE_2D, Ai, Ki, Ci, fi, 0, wi, Yi, null), Ci >>= 1, fi >>= 1;
30066
30066
  }
@@ -30074,12 +30074,12 @@ function WebGLTextures(g, t, r, m, v, C, w) {
30074
30074
  o0.generateMipmaps = !1;
30075
30075
  } else if (L0) {
30076
30076
  if (A0) {
30077
- const Ci = ui(D0);
30077
+ const Ci = ui(O0);
30078
30078
  r.texStorage2D(g.TEXTURE_2D, Ii, Ki, Ci.width, Ci.height);
30079
30079
  }
30080
- gi && r.texSubImage2D(g.TEXTURE_2D, 0, 0, 0, wi, Yi, D0);
30080
+ gi && r.texSubImage2D(g.TEXTURE_2D, 0, 0, 0, wi, Yi, O0);
30081
30081
  } else
30082
- r.texImage2D(g.TEXTURE_2D, 0, Ki, wi, Yi, D0);
30082
+ r.texImage2D(g.TEXTURE_2D, 0, Ki, wi, Yi, O0);
30083
30083
  at(o0) && Fe(w0), _i.__version = E0.version, o0.onUpdate && o0.onUpdate(o0);
30084
30084
  }
30085
30085
  c0.__version = o0.version;
@@ -30093,9 +30093,9 @@ function WebGLTextures(g, t, r, m, v, C, w) {
30093
30093
  r.activeTexture(g.TEXTURE0 + G0);
30094
30094
  const _i = ColorManagement.getPrimaries(ColorManagement.workingColorSpace), Xi = o0.colorSpace === NoColorSpace ? null : ColorManagement.getPrimaries(o0.colorSpace), Zi = o0.colorSpace === NoColorSpace || _i === Xi ? g.NONE : g.BROWSER_DEFAULT_WEBGL;
30095
30095
  g.pixelStorei(g.UNPACK_FLIP_Y_WEBGL, o0.flipY), g.pixelStorei(g.UNPACK_PREMULTIPLY_ALPHA_WEBGL, o0.premultiplyAlpha), g.pixelStorei(g.UNPACK_ALIGNMENT, o0.unpackAlignment), g.pixelStorei(g.UNPACK_COLORSPACE_CONVERSION_WEBGL, Zi);
30096
- const Ei = o0.isCompressedTexture || o0.image[0].isCompressedTexture, D0 = o0.image[0] && o0.image[0].isDataTexture, wi = [];
30096
+ const Ei = o0.isCompressedTexture || o0.image[0].isCompressedTexture, O0 = o0.image[0] && o0.image[0].isDataTexture, wi = [];
30097
30097
  for (let fi = 0; fi < 6; fi++)
30098
- !Ei && !D0 ? wi[fi] = xt(o0.image[fi], !0, v.maxCubemapSize) : wi[fi] = D0 ? o0.image[fi].image : o0.image[fi], wi[fi] = N0(o0, wi[fi]);
30098
+ !Ei && !O0 ? wi[fi] = xt(o0.image[fi], !0, v.maxCubemapSize) : wi[fi] = O0 ? o0.image[fi].image : o0.image[fi], wi[fi] = N0(o0, wi[fi]);
30099
30099
  const Yi = wi[0], Ki = C.convert(o0.format, o0.colorSpace), Li = C.convert(o0.type), Wi = ht(o0.internalFormat, Ki, Li, o0.colorSpace), L0 = o0.isVideoTexture !== !0, A0 = E0.__version === void 0 || w0 === !0, gi = F0.dataReady;
30100
30100
  let Ii = Lt(o0, Yi);
30101
30101
  P0(g.TEXTURE_CUBE_MAP, o0);
@@ -30105,8 +30105,8 @@ function WebGLTextures(g, t, r, m, v, C, w) {
30105
30105
  for (let fi = 0; fi < 6; fi++) {
30106
30106
  Ci = wi[fi].mipmaps;
30107
30107
  for (let Ai = 0; Ai < Ci.length; Ai++) {
30108
- const Oi = Ci[Ai];
30109
- o0.format !== RGBAFormat ? Ki !== null ? L0 ? gi && r.compressedTexSubImage2D(g.TEXTURE_CUBE_MAP_POSITIVE_X + fi, Ai, 0, 0, Oi.width, Oi.height, Ki, Oi.data) : r.compressedTexImage2D(g.TEXTURE_CUBE_MAP_POSITIVE_X + fi, Ai, Wi, Oi.width, Oi.height, 0, Oi.data) : console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()") : L0 ? gi && r.texSubImage2D(g.TEXTURE_CUBE_MAP_POSITIVE_X + fi, Ai, 0, 0, Oi.width, Oi.height, Ki, Li, Oi.data) : r.texImage2D(g.TEXTURE_CUBE_MAP_POSITIVE_X + fi, Ai, Wi, Oi.width, Oi.height, 0, Ki, Li, Oi.data);
30108
+ const Di = Ci[Ai];
30109
+ o0.format !== RGBAFormat ? Ki !== null ? L0 ? gi && r.compressedTexSubImage2D(g.TEXTURE_CUBE_MAP_POSITIVE_X + fi, Ai, 0, 0, Di.width, Di.height, Ki, Di.data) : r.compressedTexImage2D(g.TEXTURE_CUBE_MAP_POSITIVE_X + fi, Ai, Wi, Di.width, Di.height, 0, Di.data) : console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()") : L0 ? gi && r.texSubImage2D(g.TEXTURE_CUBE_MAP_POSITIVE_X + fi, Ai, 0, 0, Di.width, Di.height, Ki, Li, Di.data) : r.texImage2D(g.TEXTURE_CUBE_MAP_POSITIVE_X + fi, Ai, Wi, Di.width, Di.height, 0, Ki, Li, Di.data);
30110
30110
  }
30111
30111
  }
30112
30112
  } else {
@@ -30116,7 +30116,7 @@ function WebGLTextures(g, t, r, m, v, C, w) {
30116
30116
  r.texStorage2D(g.TEXTURE_CUBE_MAP, Ii, Wi, fi.width, fi.height);
30117
30117
  }
30118
30118
  for (let fi = 0; fi < 6; fi++)
30119
- if (D0) {
30119
+ if (O0) {
30120
30120
  L0 ? gi && r.texSubImage2D(g.TEXTURE_CUBE_MAP_POSITIVE_X + fi, 0, 0, 0, wi[fi].width, wi[fi].height, Ki, Li, wi[fi].data) : r.texImage2D(g.TEXTURE_CUBE_MAP_POSITIVE_X + fi, 0, Wi, wi[fi].width, wi[fi].height, 0, Ki, Li, wi[fi].data);
30121
30121
  for (let Ai = 0; Ai < Ci.length; Ai++) {
30122
30122
  const en = Ci[Ai].image[fi].image;
@@ -30125,8 +30125,8 @@ function WebGLTextures(g, t, r, m, v, C, w) {
30125
30125
  } else {
30126
30126
  L0 ? gi && r.texSubImage2D(g.TEXTURE_CUBE_MAP_POSITIVE_X + fi, 0, 0, 0, Ki, Li, wi[fi]) : r.texImage2D(g.TEXTURE_CUBE_MAP_POSITIVE_X + fi, 0, Wi, Ki, Li, wi[fi]);
30127
30127
  for (let Ai = 0; Ai < Ci.length; Ai++) {
30128
- const Oi = Ci[Ai];
30129
- L0 ? gi && r.texSubImage2D(g.TEXTURE_CUBE_MAP_POSITIVE_X + fi, Ai + 1, 0, 0, Ki, Li, Oi.image[fi]) : r.texImage2D(g.TEXTURE_CUBE_MAP_POSITIVE_X + fi, Ai + 1, Wi, Ki, Li, Oi.image[fi]);
30128
+ const Di = Ci[Ai];
30129
+ L0 ? gi && r.texSubImage2D(g.TEXTURE_CUBE_MAP_POSITIVE_X + fi, Ai + 1, 0, 0, Ki, Li, Di.image[fi]) : r.texImage2D(g.TEXTURE_CUBE_MAP_POSITIVE_X + fi, Ai + 1, Wi, Ki, Li, Di.image[fi]);
30130
30130
  }
30131
30131
  }
30132
30132
  }
@@ -30135,12 +30135,12 @@ function WebGLTextures(g, t, r, m, v, C, w) {
30135
30135
  c0.__version = o0.version;
30136
30136
  }
30137
30137
  function Si(c0, o0, G0, w0, F0, E0) {
30138
- const _i = C.convert(G0.format, G0.colorSpace), Xi = C.convert(G0.type), Zi = ht(G0.internalFormat, _i, Xi, G0.colorSpace), Ei = m.get(o0), D0 = m.get(G0);
30139
- if (D0.__renderTarget = o0, !Ei.__hasExternalTextures) {
30138
+ const _i = C.convert(G0.format, G0.colorSpace), Xi = C.convert(G0.type), Zi = ht(G0.internalFormat, _i, Xi, G0.colorSpace), Ei = m.get(o0), O0 = m.get(G0);
30139
+ if (O0.__renderTarget = o0, !Ei.__hasExternalTextures) {
30140
30140
  const wi = Math.max(1, o0.width >> E0), Yi = Math.max(1, o0.height >> E0);
30141
30141
  F0 === g.TEXTURE_3D || F0 === g.TEXTURE_2D_ARRAY ? r.texImage3D(F0, E0, Zi, wi, Yi, o0.depth, 0, _i, Xi, null) : r.texImage2D(F0, E0, Zi, wi, Yi, 0, _i, Xi, null);
30142
30142
  }
30143
- r.bindFramebuffer(g.FRAMEBUFFER, c0), I0(o0) ? O.framebufferTexture2DMultisampleEXT(g.FRAMEBUFFER, w0, F0, D0.__webglTexture, 0, H0(o0)) : (F0 === g.TEXTURE_2D || F0 >= g.TEXTURE_CUBE_MAP_POSITIVE_X && F0 <= g.TEXTURE_CUBE_MAP_NEGATIVE_Z) && g.framebufferTexture2D(g.FRAMEBUFFER, w0, F0, D0.__webglTexture, E0), r.bindFramebuffer(g.FRAMEBUFFER, null);
30143
+ r.bindFramebuffer(g.FRAMEBUFFER, c0), I0(o0) ? O.framebufferTexture2DMultisampleEXT(g.FRAMEBUFFER, w0, F0, O0.__webglTexture, 0, H0(o0)) : (F0 === g.TEXTURE_2D || F0 >= g.TEXTURE_CUBE_MAP_POSITIVE_X && F0 <= g.TEXTURE_CUBE_MAP_NEGATIVE_Z) && g.framebufferTexture2D(g.FRAMEBUFFER, w0, F0, O0.__webglTexture, E0), r.bindFramebuffer(g.FRAMEBUFFER, null);
30144
30144
  }
30145
30145
  function Vi(c0, o0, G0) {
30146
30146
  if (g.bindRenderbuffer(g.RENDERBUFFER, c0), o0.depthBuffer) {
@@ -30209,7 +30209,7 @@ function WebGLTextures(g, t, r, m, v, C, w) {
30209
30209
  const w0 = m.get(c0);
30210
30210
  o0 !== void 0 && Si(w0.__webglFramebuffer, c0, c0.texture, g.COLOR_ATTACHMENT0, g.TEXTURE_2D, 0), G0 !== void 0 && Fi(c0);
30211
30211
  }
30212
- function O0(c0) {
30212
+ function D0(c0) {
30213
30213
  const o0 = c0.texture, G0 = m.get(c0), w0 = m.get(o0);
30214
30214
  c0.addEventListener("dispose", Pt);
30215
30215
  const F0 = c0.textures, E0 = c0.isWebGLCubeRenderTarget === !0, _i = F0.length > 1;
@@ -30239,7 +30239,7 @@ function WebGLTextures(g, t, r, m, v, C, w) {
30239
30239
  for (let Xi = 0; Xi < F0.length; Xi++) {
30240
30240
  const Zi = F0[Xi];
30241
30241
  G0.__webglColorRenderbuffer[Xi] = g.createRenderbuffer(), g.bindRenderbuffer(g.RENDERBUFFER, G0.__webglColorRenderbuffer[Xi]);
30242
- const Ei = C.convert(Zi.format, Zi.colorSpace), D0 = C.convert(Zi.type), wi = ht(Zi.internalFormat, Ei, D0, Zi.colorSpace, c0.isXRRenderTarget === !0), Yi = H0(c0);
30242
+ const Ei = C.convert(Zi.format, Zi.colorSpace), O0 = C.convert(Zi.type), wi = ht(Zi.internalFormat, Ei, O0, Zi.colorSpace, c0.isXRRenderTarget === !0), Yi = H0(c0);
30243
30243
  g.renderbufferStorageMultisample(g.RENDERBUFFER, Yi, wi, c0.width, c0.height), g.framebufferRenderbuffer(g.FRAMEBUFFER, g.COLOR_ATTACHMENT0 + Xi, g.RENDERBUFFER, G0.__webglColorRenderbuffer[Xi]);
30244
30244
  }
30245
30245
  g.bindRenderbuffer(g.RENDERBUFFER, null), c0.depthBuffer && (G0.__webglDepthRenderbuffer = g.createRenderbuffer(), Vi(G0.__webglDepthRenderbuffer, c0, !0)), r.bindFramebuffer(g.FRAMEBUFFER, null);
@@ -30256,8 +30256,8 @@ function WebGLTextures(g, t, r, m, v, C, w) {
30256
30256
  at(o0) && Fe(g.TEXTURE_CUBE_MAP), r.unbindTexture();
30257
30257
  } else if (_i) {
30258
30258
  for (let Xi = 0, Zi = F0.length; Xi < Zi; Xi++) {
30259
- const Ei = F0[Xi], D0 = m.get(Ei);
30260
- r.bindTexture(g.TEXTURE_2D, D0.__webglTexture), P0(g.TEXTURE_2D, Ei), Si(G0.__webglFramebuffer, c0, Ei, g.COLOR_ATTACHMENT0 + Xi, g.TEXTURE_2D, 0), at(Ei) && Fe(g.TEXTURE_2D);
30259
+ const Ei = F0[Xi], O0 = m.get(Ei);
30260
+ r.bindTexture(g.TEXTURE_2D, O0.__webglTexture), P0(g.TEXTURE_2D, Ei), Si(G0.__webglFramebuffer, c0, Ei, g.COLOR_ATTACHMENT0 + Xi, g.TEXTURE_2D, 0), at(Ei) && Fe(g.TEXTURE_2D);
30261
30261
  }
30262
30262
  r.unbindTexture();
30263
30263
  } else {
@@ -30297,16 +30297,16 @@ function WebGLTextures(g, t, r, m, v, C, w) {
30297
30297
  for (let Ei = 0; Ei < o0.length; Ei++) {
30298
30298
  if (c0.resolveDepthBuffer && (c0.depthBuffer && (F0 |= g.DEPTH_BUFFER_BIT), c0.stencilBuffer && c0.resolveStencilBuffer && (F0 |= g.STENCIL_BUFFER_BIT)), Xi) {
30299
30299
  g.framebufferRenderbuffer(g.READ_FRAMEBUFFER, g.COLOR_ATTACHMENT0, g.RENDERBUFFER, _i.__webglColorRenderbuffer[Ei]);
30300
- const D0 = m.get(o0[Ei]).__webglTexture;
30301
- g.framebufferTexture2D(g.DRAW_FRAMEBUFFER, g.COLOR_ATTACHMENT0, g.TEXTURE_2D, D0, 0);
30300
+ const O0 = m.get(o0[Ei]).__webglTexture;
30301
+ g.framebufferTexture2D(g.DRAW_FRAMEBUFFER, g.COLOR_ATTACHMENT0, g.TEXTURE_2D, O0, 0);
30302
30302
  }
30303
30303
  g.blitFramebuffer(0, 0, G0, w0, 0, 0, G0, w0, F0, g.NEAREST), ve === !0 && (vi.length = 0, $0.length = 0, vi.push(g.COLOR_ATTACHMENT0 + Ei), c0.depthBuffer && c0.resolveDepthBuffer === !1 && (vi.push(E0), $0.push(E0), g.invalidateFramebuffer(g.DRAW_FRAMEBUFFER, $0)), g.invalidateFramebuffer(g.READ_FRAMEBUFFER, vi));
30304
30304
  }
30305
30305
  if (r.bindFramebuffer(g.READ_FRAMEBUFFER, null), r.bindFramebuffer(g.DRAW_FRAMEBUFFER, null), Xi)
30306
30306
  for (let Ei = 0; Ei < o0.length; Ei++) {
30307
30307
  r.bindFramebuffer(g.FRAMEBUFFER, _i.__webglMultisampledFramebuffer), g.framebufferRenderbuffer(g.FRAMEBUFFER, g.COLOR_ATTACHMENT0 + Ei, g.RENDERBUFFER, _i.__webglColorRenderbuffer[Ei]);
30308
- const D0 = m.get(o0[Ei]).__webglTexture;
30309
- r.bindFramebuffer(g.FRAMEBUFFER, _i.__webglFramebuffer), g.framebufferTexture2D(g.DRAW_FRAMEBUFFER, g.COLOR_ATTACHMENT0 + Ei, g.TEXTURE_2D, D0, 0);
30308
+ const O0 = m.get(o0[Ei]).__webglTexture;
30309
+ r.bindFramebuffer(g.FRAMEBUFFER, _i.__webglFramebuffer), g.framebufferTexture2D(g.DRAW_FRAMEBUFFER, g.COLOR_ATTACHMENT0 + Ei, g.TEXTURE_2D, O0, 0);
30310
30310
  }
30311
30311
  r.bindFramebuffer(g.DRAW_FRAMEBUFFER, _i.__webglMultisampledFramebuffer);
30312
30312
  } else if (c0.depthBuffer && c0.resolveDepthBuffer === !1 && ve) {
@@ -30333,7 +30333,7 @@ function WebGLTextures(g, t, r, m, v, C, w) {
30333
30333
  function ui(c0) {
30334
30334
  return typeof HTMLImageElement != "undefined" && c0 instanceof HTMLImageElement ? (Pe.width = c0.naturalWidth || c0.width, Pe.height = c0.naturalHeight || c0.height) : typeof VideoFrame != "undefined" && c0 instanceof VideoFrame ? (Pe.width = c0.displayWidth, Pe.height = c0.displayHeight) : (Pe.width = c0.width, Pe.height = c0.height), Pe;
30335
30335
  }
30336
- this.allocateTextureUnit = r0, this.resetTextureUnits = n0, this.setTexture2D = s0, this.setTexture2DArray = qt, this.setTexture3D = t0, this.setTextureCube = Ut, this.rebindTextures = ki, this.setupRenderTarget = O0, this.updateRenderTargetMipmap = h0, this.updateMultisampleRenderTarget = xi, this.setupDepthRenderbuffer = Fi, this.setupFrameBufferTexture = Si, this.useMultisampledRTT = I0;
30336
+ this.allocateTextureUnit = r0, this.resetTextureUnits = n0, this.setTexture2D = s0, this.setTexture2DArray = qt, this.setTexture3D = t0, this.setTextureCube = Ut, this.rebindTextures = ki, this.setupRenderTarget = D0, this.updateRenderTargetMipmap = h0, this.updateMultisampleRenderTarget = xi, this.setupDepthRenderbuffer = Fi, this.setupFrameBufferTexture = Si, this.useMultisampledRTT = I0;
30337
30337
  }
30338
30338
  function WebGLUtils(g, t) {
30339
30339
  function r(m, v = NoColorSpace) {
@@ -30651,11 +30651,11 @@ class WebXRManager extends EventDispatcher {
30651
30651
  const qt = new Vector3(), t0 = new Vector3();
30652
30652
  function Ut(M0, K0, k0) {
30653
30653
  qt.setFromMatrixPosition(K0.matrixWorld), t0.setFromMatrixPosition(k0.matrixWorld);
30654
- const J0 = qt.distanceTo(t0), Si = K0.projectionMatrix.elements, Vi = k0.projectionMatrix.elements, Ti = Si[14] / (Si[10] - 1), Fi = Si[14] / (Si[10] + 1), ki = (Si[9] + 1) / Si[5], O0 = (Si[9] - 1) / Si[5], h0 = (Si[8] - 1) / Si[0], vi = (Vi[8] + 1) / Vi[0], $0 = Ti * h0, xi = Ti * vi, H0 = J0 / (-h0 + vi), I0 = H0 * -h0;
30654
+ const J0 = qt.distanceTo(t0), Si = K0.projectionMatrix.elements, Vi = k0.projectionMatrix.elements, Ti = Si[14] / (Si[10] - 1), Fi = Si[14] / (Si[10] + 1), ki = (Si[9] + 1) / Si[5], D0 = (Si[9] - 1) / Si[5], h0 = (Si[8] - 1) / Si[0], vi = (Vi[8] + 1) / Vi[0], $0 = Ti * h0, xi = Ti * vi, H0 = J0 / (-h0 + vi), I0 = H0 * -h0;
30655
30655
  if (K0.matrixWorld.decompose(M0.position, M0.quaternion, M0.scale), M0.translateX(I0), M0.translateZ(H0), M0.matrixWorld.compose(M0.position, M0.quaternion, M0.scale), M0.matrixWorldInverse.copy(M0.matrixWorld).invert(), Si[10] === -1)
30656
30656
  M0.projectionMatrix.copy(K0.projectionMatrix), M0.projectionMatrixInverse.copy(K0.projectionMatrixInverse);
30657
30657
  else {
30658
- const _0 = Ti + H0, N0 = Fi + H0, ui = $0 - I0, c0 = xi + (J0 - I0), o0 = ki * Fi / N0 * _0, G0 = O0 * Fi / N0 * _0;
30658
+ const _0 = Ti + H0, N0 = Fi + H0, ui = $0 - I0, c0 = xi + (J0 - I0), o0 = ki * Fi / N0 * _0, G0 = D0 * Fi / N0 * _0;
30659
30659
  M0.projectionMatrix.makePerspective(ui, c0, o0, G0, _0, N0), M0.projectionMatrixInverse.copy(M0.projectionMatrix).invert();
30660
30660
  }
30661
30661
  }
@@ -30710,8 +30710,8 @@ class WebXRManager extends EventDispatcher {
30710
30710
  h0.depthStencilTexture
30711
30711
  ), t.setRenderTarget(ct));
30712
30712
  }
30713
- let O0 = kt[Ti];
30714
- O0 === void 0 && (O0 = new PerspectiveCamera(), O0.layers.enable(Ti), O0.viewport = new Vector4(), kt[Ti] = O0), O0.matrix.fromArray(Fi.transform.matrix), O0.matrix.decompose(O0.position, O0.quaternion, O0.scale), O0.projectionMatrix.fromArray(Fi.projectionMatrix), O0.projectionMatrixInverse.copy(O0.projectionMatrix).invert(), O0.viewport.set(ki.x, ki.y, ki.width, ki.height), Ti === 0 && (Ft.matrix.copy(O0.matrix), Ft.matrix.decompose(Ft.position, Ft.quaternion, Ft.scale)), J0 === !0 && Ft.cameras.push(O0);
30713
+ let D0 = kt[Ti];
30714
+ D0 === void 0 && (D0 = new PerspectiveCamera(), D0.layers.enable(Ti), D0.viewport = new Vector4(), kt[Ti] = D0), D0.matrix.fromArray(Fi.transform.matrix), D0.matrix.decompose(D0.position, D0.quaternion, D0.scale), D0.projectionMatrix.fromArray(Fi.projectionMatrix), D0.projectionMatrixInverse.copy(D0.projectionMatrix).invert(), D0.viewport.set(ki.x, ki.y, ki.width, ki.height), Ti === 0 && (Ft.matrix.copy(D0.matrix), Ft.matrix.decompose(Ft.position, Ft.quaternion, Ft.scale)), J0 === !0 && Ft.cameras.push(D0);
30715
30715
  }
30716
30716
  const Si = v.enabledFeatures;
30717
30717
  if (Si && Si.includes("depth-sensing") && v.depthUsage == "gpu-optimized" && Ae) {
@@ -30945,7 +30945,7 @@ class WebGLRenderer {
30945
30945
  let K0 = !1, k0 = !1;
30946
30946
  const J0 = new Matrix4(), Si = new Matrix4(), Vi = new Vector3(), Ti = new Vector4(), Fi = { background: null, fog: null, environment: null, overrideMaterial: null, isScene: !0 };
30947
30947
  let ki = !1;
30948
- function O0() {
30948
+ function D0() {
30949
30949
  return Kt === null ? Ut : 1;
30950
30950
  }
30951
30951
  let h0 = m;
@@ -30971,9 +30971,9 @@ class WebGLRenderer {
30971
30971
  } catch (i0) {
30972
30972
  throw console.error("THREE.WebGLRenderer: " + i0.message), i0;
30973
30973
  }
30974
- let $0, xi, H0, I0, _0, N0, ui, c0, o0, G0, w0, F0, E0, _i, Xi, Zi, Ei, D0, wi, Yi, Ki, Li, Wi, L0;
30974
+ let $0, xi, H0, I0, _0, N0, ui, c0, o0, G0, w0, F0, E0, _i, Xi, Zi, Ei, O0, wi, Yi, Ki, Li, Wi, L0;
30975
30975
  function A0() {
30976
- $0 = new WebGLExtensions(h0), $0.init(), Li = new WebGLUtils(h0, $0), xi = new WebGLCapabilities(h0, $0, t, Li), H0 = new WebGLState(h0, $0), xi.reverseDepthBuffer && ke && H0.buffers.depth.setReversed(!0), I0 = new WebGLInfo(h0), _0 = new WebGLProperties(), N0 = new WebGLTextures(h0, $0, H0, _0, xi, Li, I0), ui = new WebGLCubeMaps(Gt), c0 = new WebGLCubeUVMaps(Gt), o0 = new WebGLAttributes(h0), Wi = new WebGLBindingStates(h0, o0), G0 = new WebGLGeometries(h0, o0, I0, Wi), w0 = new WebGLObjects(h0, G0, o0, I0), wi = new WebGLMorphtargets(h0, xi, N0), Zi = new WebGLClipping(_0), F0 = new WebGLPrograms(Gt, ui, c0, $0, xi, Wi, Zi), E0 = new WebGLMaterials(Gt, _0), _i = new WebGLRenderLists(), Xi = new WebGLRenderStates($0), D0 = new WebGLBackground(Gt, ui, c0, H0, w0, He, ve), Ei = new WebGLShadowMap(Gt, w0, xi), L0 = new WebGLUniformsGroups(h0, I0, xi, H0), Yi = new WebGLBufferRenderer(h0, $0, I0), Ki = new WebGLIndexedBufferRenderer(h0, $0, I0), I0.programs = F0.programs, Gt.capabilities = xi, Gt.extensions = $0, Gt.properties = _0, Gt.renderLists = _i, Gt.shadowMap = Ei, Gt.state = H0, Gt.info = I0;
30976
+ $0 = new WebGLExtensions(h0), $0.init(), Li = new WebGLUtils(h0, $0), xi = new WebGLCapabilities(h0, $0, t, Li), H0 = new WebGLState(h0, $0), xi.reverseDepthBuffer && ke && H0.buffers.depth.setReversed(!0), I0 = new WebGLInfo(h0), _0 = new WebGLProperties(), N0 = new WebGLTextures(h0, $0, H0, _0, xi, Li, I0), ui = new WebGLCubeMaps(Gt), c0 = new WebGLCubeUVMaps(Gt), o0 = new WebGLAttributes(h0), Wi = new WebGLBindingStates(h0, o0), G0 = new WebGLGeometries(h0, o0, I0, Wi), w0 = new WebGLObjects(h0, G0, o0, I0), wi = new WebGLMorphtargets(h0, xi, N0), Zi = new WebGLClipping(_0), F0 = new WebGLPrograms(Gt, ui, c0, $0, xi, Wi, Zi), E0 = new WebGLMaterials(Gt, _0), _i = new WebGLRenderLists(), Xi = new WebGLRenderStates($0), O0 = new WebGLBackground(Gt, ui, c0, H0, w0, He, ve), Ei = new WebGLShadowMap(Gt, w0, xi), L0 = new WebGLUniformsGroups(h0, I0, xi, H0), Yi = new WebGLBufferRenderer(h0, $0, I0), Ki = new WebGLIndexedBufferRenderer(h0, $0, I0), I0.programs = F0.programs, Gt.capabilities = xi, Gt.extensions = $0, Gt.properties = _0, Gt.renderLists = _i, Gt.shadowMap = Ei, Gt.state = H0, Gt.info = I0;
30977
30977
  }
30978
30978
  A0();
30979
30979
  const gi = new WebXRManager(Gt, h0);
@@ -31022,13 +31022,13 @@ class WebGLRenderer {
31022
31022
  }, this.setTransparentSort = function(i0) {
31023
31023
  g0 = i0;
31024
31024
  }, this.getClearColor = function(i0) {
31025
- return i0.copy(D0.getClearColor());
31025
+ return i0.copy(O0.getClearColor());
31026
31026
  }, this.setClearColor = function() {
31027
- D0.setClearColor(...arguments);
31027
+ O0.setClearColor(...arguments);
31028
31028
  }, this.getClearAlpha = function() {
31029
- return D0.getClearAlpha();
31029
+ return O0.getClearAlpha();
31030
31030
  }, this.setClearAlpha = function() {
31031
- D0.setClearAlpha(...arguments);
31031
+ O0.setClearAlpha(...arguments);
31032
31032
  }, this.clear = function(i0 = !0, u0 = !0, m0 = !0) {
31033
31033
  let v0 = 0;
31034
31034
  if (i0) {
@@ -31038,7 +31038,7 @@ class WebGLRenderer {
31038
31038
  f0 = T0 === RGBAIntegerFormat || T0 === RGIntegerFormat || T0 === RedIntegerFormat;
31039
31039
  }
31040
31040
  if (f0) {
31041
- const T0 = Kt.texture.type, R0 = T0 === UnsignedByteType || T0 === UnsignedIntType || T0 === UnsignedShortType || T0 === UnsignedInt248Type || T0 === UnsignedShort4444Type || T0 === UnsignedShort5551Type, V0 = D0.getClearColor(), U0 = D0.getClearAlpha(), j0 = V0.r, Q0 = V0.g, yi = V0.b;
31041
+ const T0 = Kt.texture.type, R0 = T0 === UnsignedByteType || T0 === UnsignedIntType || T0 === UnsignedShortType || T0 === UnsignedInt248Type || T0 === UnsignedShort4444Type || T0 === UnsignedShort5551Type, V0 = O0.getClearColor(), U0 = O0.getClearAlpha(), j0 = V0.r, Q0 = V0.g, yi = V0.b;
31042
31042
  R0 ? (De[0] = j0, De[1] = Q0, De[2] = yi, De[3] = U0, h0.clearBufferuiv(h0.COLOR, 0, De)) : (xt[0] = j0, xt[1] = Q0, xt[2] = yi, xt[3] = U0, h0.clearBufferiv(h0.COLOR, 0, xt));
31043
31043
  } else
31044
31044
  v0 |= h0.COLOR_BUFFER_BIT;
@@ -31051,7 +31051,7 @@ class WebGLRenderer {
31051
31051
  }, this.clearStencil = function() {
31052
31052
  this.clear(!1, !1, !0);
31053
31053
  }, this.dispose = function() {
31054
- r.removeEventListener("webglcontextlost", Ii, !1), r.removeEventListener("webglcontextrestored", Ci, !1), r.removeEventListener("webglcontextcreationerror", fi, !1), D0.dispose(), _i.dispose(), Xi.dispose(), _0.dispose(), ui.dispose(), c0.dispose(), w0.dispose(), Wi.dispose(), L0.dispose(), F0.dispose(), gi.dispose(), gi.removeEventListener("sessionstart", Ln), gi.removeEventListener("sessionend", Tn), cn.stop();
31054
+ r.removeEventListener("webglcontextlost", Ii, !1), r.removeEventListener("webglcontextrestored", Ci, !1), r.removeEventListener("webglcontextcreationerror", fi, !1), O0.dispose(), _i.dispose(), Xi.dispose(), _0.dispose(), ui.dispose(), c0.dispose(), w0.dispose(), Wi.dispose(), L0.dispose(), F0.dispose(), gi.dispose(), gi.removeEventListener("sessionstart", Ln), gi.removeEventListener("sessionend", Tn), cn.stop();
31055
31055
  };
31056
31056
  function Ii(i0) {
31057
31057
  i0.preventDefault(), console.log("THREE.WebGLRenderer: Context Lost."), Lt = !0;
@@ -31066,9 +31066,9 @@ class WebGLRenderer {
31066
31066
  }
31067
31067
  function Ai(i0) {
31068
31068
  const u0 = i0.target;
31069
- u0.removeEventListener("dispose", Ai), Oi(u0);
31069
+ u0.removeEventListener("dispose", Ai), Di(u0);
31070
31070
  }
31071
- function Oi(i0) {
31071
+ function Di(i0) {
31072
31072
  en(i0), _0.remove(i0);
31073
31073
  }
31074
31074
  function en(i0) {
@@ -31094,10 +31094,10 @@ class WebGLRenderer {
31094
31094
  Wi.setup(f0, v0, V0, m0, U0);
31095
31095
  let Ui, Hi = Yi;
31096
31096
  if (U0 !== null && (Ui = o0.get(U0), Hi = Ki, Hi.setIndex(Ui)), f0.isMesh)
31097
- v0.wireframe === !0 ? (H0.setLineWidth(v0.wireframeLinewidth * O0()), Hi.setMode(h0.LINES)) : Hi.setMode(h0.TRIANGLES);
31097
+ v0.wireframe === !0 ? (H0.setLineWidth(v0.wireframeLinewidth * D0()), Hi.setMode(h0.LINES)) : Hi.setMode(h0.TRIANGLES);
31098
31098
  else if (f0.isLine) {
31099
31099
  let zi = v0.linewidth;
31100
- zi === void 0 && (zi = 1), H0.setLineWidth(zi * O0()), f0.isLineSegments ? Hi.setMode(h0.LINES) : f0.isLineLoop ? Hi.setMode(h0.LINE_LOOP) : Hi.setMode(h0.LINE_STRIP);
31100
+ zi === void 0 && (zi = 1), H0.setLineWidth(zi * D0()), f0.isLineSegments ? Hi.setMode(h0.LINES) : f0.isLineLoop ? Hi.setMode(h0.LINE_LOOP) : Hi.setMode(h0.LINE_STRIP);
31101
31101
  } else f0.isPoints ? Hi.setMode(h0.POINTS) : f0.isSprite && Hi.setMode(h0.TRIANGLES);
31102
31102
  if (f0.isBatchedMesh)
31103
31103
  if (f0._multiDrawInstances !== null)
@@ -31178,7 +31178,7 @@ class WebGLRenderer {
31178
31178
  const T0 = Gt.xr.getDepthSensingMesh();
31179
31179
  T0 !== null && xn(T0, u0, -1 / 0, Gt.sortObjects);
31180
31180
  }
31181
- xn(i0, u0, 0, Gt.sortObjects), at.finish(), Gt.sortObjects === !0 && at.sort(a0, g0), ki = gi.enabled === !1 || gi.isPresenting === !1 || gi.hasDepthSensing() === !1, ki && D0.addToRenderList(at, i0), this.info.render.frame++, K0 === !0 && Zi.beginShadows();
31181
+ xn(i0, u0, 0, Gt.sortObjects), at.finish(), Gt.sortObjects === !0 && at.sort(a0, g0), ki = gi.enabled === !1 || gi.isPresenting === !1 || gi.hasDepthSensing() === !1, ki && O0.addToRenderList(at, i0), this.info.render.frame++, K0 === !0 && Zi.beginShadows();
31182
31182
  const m0 = Fe.state.shadowsArray;
31183
31183
  Ei.render(m0, i0, u0), K0 === !0 && Zi.endShadows(), this.info.autoReset === !0 && this.info.reset();
31184
31184
  const v0 = at.opaque, f0 = at.transmissive;
@@ -31189,13 +31189,13 @@ class WebGLRenderer {
31189
31189
  const U0 = T0[R0];
31190
31190
  Cn(v0, f0, i0, U0);
31191
31191
  }
31192
- ki && D0.render(i0);
31192
+ ki && O0.render(i0);
31193
31193
  for (let R0 = 0, V0 = T0.length; R0 < V0; R0++) {
31194
31194
  const U0 = T0[R0];
31195
31195
  Sn(at, i0, U0, U0.viewport);
31196
31196
  }
31197
31197
  } else
31198
- f0.length > 0 && Cn(v0, f0, i0, u0), ki && D0.render(i0), Sn(at, i0, u0);
31198
+ f0.length > 0 && Cn(v0, f0, i0, u0), ki && O0.render(i0), Sn(at, i0, u0);
31199
31199
  Kt !== null && Pt === 0 && (N0.updateMultisampleRenderTarget(Kt), N0.updateRenderTargetMipmap(Kt)), i0.isScene === !0 && i0.onAfterRender(Gt, i0, u0), Wi.resetDefaultState(), kt = -1, Ft = null, ht.pop(), ht.length > 0 ? (Fe = ht[ht.length - 1], K0 === !0 && Zi.setGlobalState(Gt.clippingPlanes, Fe.state.camera)) : Fe = null, ct.pop(), ct.length > 0 ? at = ct[ct.length - 1] : at = null;
31200
31200
  };
31201
31201
  function xn(i0, u0, m0, v0) {
@@ -31248,7 +31248,7 @@ class WebGLRenderer {
31248
31248
  const T0 = Fe.state.transmissionRenderTarget[v0.id], R0 = v0.viewport || Yt;
31249
31249
  T0.setSize(R0.z * Gt.transmissionResolutionScale, R0.w * Gt.transmissionResolutionScale);
31250
31250
  const V0 = Gt.getRenderTarget();
31251
- Gt.setRenderTarget(T0), Gt.getClearColor(l0), s0 = Gt.getClearAlpha(), s0 < 1 && Gt.setClearColor(16777215, 0.5), Gt.clear(), ki && D0.render(m0);
31251
+ Gt.setRenderTarget(T0), Gt.getClearColor(l0), s0 = Gt.getClearAlpha(), s0 < 1 && Gt.setClearColor(16777215, 0.5), Gt.clear(), ki && O0.render(m0);
31252
31252
  const U0 = Gt.toneMapping;
31253
31253
  Gt.toneMapping = NoToneMapping;
31254
31254
  const j0 = v0.viewport;
@@ -36601,11 +36601,17 @@ let ft$1 = class {
36601
36601
  get scale() {
36602
36602
  return this.object3d.scale;
36603
36603
  }
36604
- get add() {
36605
- return this.object3d.add.bind(this.object3d);
36604
+ add(...t) {
36605
+ [...t].forEach((r) => {
36606
+ this.lead.objMap.get(r) ? this.object3d.add(r) : this.lead.createBaseObject(r, {
36607
+ target: this
36608
+ });
36609
+ });
36606
36610
  }
36607
- get remove() {
36608
- return this.object3d.remove.bind(this.object3d);
36611
+ remove(...t) {
36612
+ [...t].forEach((r) => {
36613
+ this.lead.objMap.get(r) ? this.lead.objMap.get(r).erase() : this.object3d.remove(r);
36614
+ });
36609
36615
  }
36610
36616
  get visible() {
36611
36617
  return this.object3d.visible;
@@ -36847,7 +36853,7 @@ let ft$1 = class {
36847
36853
  }), t.length = 0, this.resources.clear();
36848
36854
  }
36849
36855
  };
36850
- const $$1 = new Vector4(), dt = new Vector3(), pt = new Vector3(), b$2 = new Vector4(), y = new Vector4(), B = new Vector4(), q$1 = new Vector3(), K$1 = new Matrix4(), M$1 = new Line3(), mt = new Vector3(), U$1 = new Box3(), E = new Sphere$1(), L$1 = new Vector4();
36856
+ const $$1 = new Vector4(), dt = new Vector3(), pt = new Vector3(), b$2 = new Vector4(), y = new Vector4(), B = new Vector4(), q$1 = new Vector3(), K$1 = new Matrix4(), M$1 = new Line3(), mt = new Vector3(), E = new Box3(), U$1 = new Sphere$1(), L$1 = new Vector4();
36851
36857
  let D$1, _;
36852
36858
  function vt$1(g, t, r) {
36853
36859
  return L$1.set(0, 0, -t, 1).applyMatrix4(g.projectionMatrix), L$1.multiplyScalar(1 / L$1.w), L$1.x = _ / r.width, L$1.y = _ / r.height, L$1.applyMatrix4(g.projectionMatrixInverse), L$1.multiplyScalar(1 / L$1.w), Math.abs(Math.max(L$1.x, L$1.y));
@@ -36932,14 +36938,14 @@ let ze$1 = class extends Mesh {
36932
36938
  const C = t.params.Line2 !== void 0 && t.params.Line2.threshold || 0;
36933
36939
  D$1 = t.ray;
36934
36940
  const w = this.matrixWorld, O = this.geometry, ve = this.material;
36935
- _ = ve.linewidth + C, O.boundingSphere === null && O.computeBoundingSphere(), E.copy(O.boundingSphere).applyMatrix4(w);
36941
+ _ = ve.linewidth + C, O.boundingSphere === null && O.computeBoundingSphere(), U$1.copy(O.boundingSphere).applyMatrix4(w);
36936
36942
  let Pe;
36937
36943
  if (m)
36938
36944
  Pe = _ * 0.5;
36939
36945
  else {
36940
36946
  const Ae = Math.max(
36941
36947
  v.near,
36942
- E.distanceToPoint(D$1.origin)
36948
+ U$1.distanceToPoint(D$1.origin)
36943
36949
  );
36944
36950
  Pe = vt$1(
36945
36951
  v,
@@ -36947,16 +36953,16 @@ let ze$1 = class extends Mesh {
36947
36953
  ve.resolution
36948
36954
  );
36949
36955
  }
36950
- if (E.radius += Pe, D$1.intersectsSphere(E) === !1)
36956
+ if (U$1.radius += Pe, D$1.intersectsSphere(U$1) === !1)
36951
36957
  return;
36952
- O.boundingBox === null && O.computeBoundingBox(), U$1.copy(O.boundingBox).applyMatrix4(w);
36958
+ O.boundingBox === null && O.computeBoundingBox(), E.copy(O.boundingBox).applyMatrix4(w);
36953
36959
  let Ne;
36954
36960
  if (m)
36955
36961
  Ne = _ * 0.5;
36956
36962
  else {
36957
36963
  const Ae = Math.max(
36958
36964
  v.near,
36959
- U$1.distanceToPoint(D$1.origin)
36965
+ E.distanceToPoint(D$1.origin)
36960
36966
  );
36961
36967
  Ne = vt$1(
36962
36968
  v,
@@ -36964,7 +36970,7 @@ let ze$1 = class extends Mesh {
36964
36970
  ve.resolution
36965
36971
  );
36966
36972
  }
36967
- U$1.expandByScalar(Ne), D$1.intersectsBox(U$1) !== !1 && (m ? se$1(this, r) : ne$1(this, v, r));
36973
+ E.expandByScalar(Ne), D$1.intersectsBox(E) !== !1 && (m ? se$1(this, r) : ne$1(this, v, r));
36968
36974
  }
36969
36975
  onBeforeRender(t) {
36970
36976
  const r = this.material.uniforms;
@@ -38847,11 +38853,11 @@ class SimplexNoise {
38847
38853
  noise4d(t, r, m, v) {
38848
38854
  const C = this.grad4, w = this.simplex, O = this.perm, ve = (Math.sqrt(5) - 1) / 4, Pe = (5 - Math.sqrt(5)) / 20;
38849
38855
  let Ne, Ae, ke, He, De;
38850
- const xt = (t + r + m + v) * ve, at = Math.floor(t + xt), Fe = Math.floor(r + xt), ct = Math.floor(m + xt), ht = Math.floor(v + xt), Gt = (at + Fe + ct + ht) * Pe, Lt = at - Gt, Wt = Fe - Gt, Pt = ct - Gt, Kt = ht - Gt, kt = t - Lt, Ft = r - Wt, Yt = m - Pt, n0 = v - Kt, r0 = kt > Ft ? 32 : 0, l0 = kt > Yt ? 16 : 0, s0 = Ft > Yt ? 8 : 0, qt = kt > n0 ? 4 : 0, t0 = Ft > n0 ? 2 : 0, Ut = Yt > n0 ? 1 : 0, a0 = r0 + l0 + s0 + qt + t0 + Ut, g0 = w[a0][0] >= 3 ? 1 : 0, b0 = w[a0][1] >= 3 ? 1 : 0, P0 = w[a0][2] >= 3 ? 1 : 0, q0 = w[a0][3] >= 3 ? 1 : 0, M0 = w[a0][0] >= 2 ? 1 : 0, K0 = w[a0][1] >= 2 ? 1 : 0, k0 = w[a0][2] >= 2 ? 1 : 0, J0 = w[a0][3] >= 2 ? 1 : 0, Si = w[a0][0] >= 1 ? 1 : 0, Vi = w[a0][1] >= 1 ? 1 : 0, Ti = w[a0][2] >= 1 ? 1 : 0, Fi = w[a0][3] >= 1 ? 1 : 0, ki = kt - g0 + Pe, O0 = Ft - b0 + Pe, h0 = Yt - P0 + Pe, vi = n0 - q0 + Pe, $0 = kt - M0 + 2 * Pe, xi = Ft - K0 + 2 * Pe, H0 = Yt - k0 + 2 * Pe, I0 = n0 - J0 + 2 * Pe, _0 = kt - Si + 3 * Pe, N0 = Ft - Vi + 3 * Pe, ui = Yt - Ti + 3 * Pe, c0 = n0 - Fi + 3 * Pe, o0 = kt - 1 + 4 * Pe, G0 = Ft - 1 + 4 * Pe, w0 = Yt - 1 + 4 * Pe, F0 = n0 - 1 + 4 * Pe, E0 = at & 255, _i = Fe & 255, Xi = ct & 255, Zi = ht & 255, Ei = O[E0 + O[_i + O[Xi + O[Zi]]]] % 32, D0 = O[E0 + g0 + O[_i + b0 + O[Xi + P0 + O[Zi + q0]]]] % 32, wi = O[E0 + M0 + O[_i + K0 + O[Xi + k0 + O[Zi + J0]]]] % 32, Yi = O[E0 + Si + O[_i + Vi + O[Xi + Ti + O[Zi + Fi]]]] % 32, Ki = O[E0 + 1 + O[_i + 1 + O[Xi + 1 + O[Zi + 1]]]] % 32;
38856
+ const xt = (t + r + m + v) * ve, at = Math.floor(t + xt), Fe = Math.floor(r + xt), ct = Math.floor(m + xt), ht = Math.floor(v + xt), Gt = (at + Fe + ct + ht) * Pe, Lt = at - Gt, Wt = Fe - Gt, Pt = ct - Gt, Kt = ht - Gt, kt = t - Lt, Ft = r - Wt, Yt = m - Pt, n0 = v - Kt, r0 = kt > Ft ? 32 : 0, l0 = kt > Yt ? 16 : 0, s0 = Ft > Yt ? 8 : 0, qt = kt > n0 ? 4 : 0, t0 = Ft > n0 ? 2 : 0, Ut = Yt > n0 ? 1 : 0, a0 = r0 + l0 + s0 + qt + t0 + Ut, g0 = w[a0][0] >= 3 ? 1 : 0, b0 = w[a0][1] >= 3 ? 1 : 0, P0 = w[a0][2] >= 3 ? 1 : 0, q0 = w[a0][3] >= 3 ? 1 : 0, M0 = w[a0][0] >= 2 ? 1 : 0, K0 = w[a0][1] >= 2 ? 1 : 0, k0 = w[a0][2] >= 2 ? 1 : 0, J0 = w[a0][3] >= 2 ? 1 : 0, Si = w[a0][0] >= 1 ? 1 : 0, Vi = w[a0][1] >= 1 ? 1 : 0, Ti = w[a0][2] >= 1 ? 1 : 0, Fi = w[a0][3] >= 1 ? 1 : 0, ki = kt - g0 + Pe, D0 = Ft - b0 + Pe, h0 = Yt - P0 + Pe, vi = n0 - q0 + Pe, $0 = kt - M0 + 2 * Pe, xi = Ft - K0 + 2 * Pe, H0 = Yt - k0 + 2 * Pe, I0 = n0 - J0 + 2 * Pe, _0 = kt - Si + 3 * Pe, N0 = Ft - Vi + 3 * Pe, ui = Yt - Ti + 3 * Pe, c0 = n0 - Fi + 3 * Pe, o0 = kt - 1 + 4 * Pe, G0 = Ft - 1 + 4 * Pe, w0 = Yt - 1 + 4 * Pe, F0 = n0 - 1 + 4 * Pe, E0 = at & 255, _i = Fe & 255, Xi = ct & 255, Zi = ht & 255, Ei = O[E0 + O[_i + O[Xi + O[Zi]]]] % 32, O0 = O[E0 + g0 + O[_i + b0 + O[Xi + P0 + O[Zi + q0]]]] % 32, wi = O[E0 + M0 + O[_i + K0 + O[Xi + k0 + O[Zi + J0]]]] % 32, Yi = O[E0 + Si + O[_i + Vi + O[Xi + Ti + O[Zi + Fi]]]] % 32, Ki = O[E0 + 1 + O[_i + 1 + O[Xi + 1 + O[Zi + 1]]]] % 32;
38851
38857
  let Li = 0.6 - kt * kt - Ft * Ft - Yt * Yt - n0 * n0;
38852
38858
  Li < 0 ? Ne = 0 : (Li *= Li, Ne = Li * Li * this._dot4(C[Ei], kt, Ft, Yt, n0));
38853
- let Wi = 0.6 - ki * ki - O0 * O0 - h0 * h0 - vi * vi;
38854
- Wi < 0 ? Ae = 0 : (Wi *= Wi, Ae = Wi * Wi * this._dot4(C[D0], ki, O0, h0, vi));
38859
+ let Wi = 0.6 - ki * ki - D0 * D0 - h0 * h0 - vi * vi;
38860
+ Wi < 0 ? Ae = 0 : (Wi *= Wi, Ae = Wi * Wi * this._dot4(C[O0], ki, D0, h0, vi));
38855
38861
  let L0 = 0.6 - $0 * $0 - xi * xi - H0 * H0 - I0 * I0;
38856
38862
  L0 < 0 ? ke = 0 : (L0 *= L0, ke = L0 * L0 * this._dot4(C[wi], $0, xi, H0, I0));
38857
38863
  let A0 = 0.6 - _0 * _0 - N0 * N0 - ui * ui - c0 * c0;
@@ -41922,7 +41928,7 @@ class MeshBVH {
41922
41928
  setIndex: !0,
41923
41929
  indirect: !!t.indirectBuffer
41924
41930
  }, m);
41925
- const { index: v, roots: C, indirectBuffer: w } = t, O = new MeshBVH(r, Di(bi({}, m), { [SKIP_GENERATION]: !0 }));
41931
+ const { index: v, roots: C, indirectBuffer: w } = t, O = new MeshBVH(r, Oi(bi({}, m), { [SKIP_GENERATION]: !0 }));
41926
41932
  if (O._roots = C, O._indirectBuffer = w || null, m.setIndex) {
41927
41933
  const ve = r.getIndex();
41928
41934
  if (ve === null) {
@@ -41940,7 +41946,7 @@ class MeshBVH {
41940
41946
  if (t.index && t.index.isInterleavedBufferAttribute)
41941
41947
  throw new Error("MeshBVH: InterleavedBufferAttribute is not supported for the index attribute.");
41942
41948
  } else throw new Error("MeshBVH: Only BufferGeometries are supported.");
41943
- if (r = Object.assign(Di(bi({}, DEFAULT_OPTIONS), {
41949
+ if (r = Object.assign(Oi(bi({}, DEFAULT_OPTIONS), {
41944
41950
  // undocumented options
41945
41951
  // Whether to skip generating the tree. Used for deserialization.
41946
41952
  [SKIP_GENERATION]: !1
@@ -42982,7 +42988,7 @@ class Evaluator {
42982
42988
  }), Ae.init(), performOperation(t, r, m, w, O, { useGroups: Pe }), Ae.complete();
42983
42989
  const ke = this.getGroupRanges(t.geometry), He = getMaterialList(ke, t.material), De = this.getGroupRanges(r.geometry), xt = getMaterialList(De, r.material);
42984
42990
  De.forEach((Fe) => Fe.materialIndex += He.length);
42985
- let at = [...ke, ...De].map((Fe, ct) => Di(bi({}, Fe), { index: ct }));
42991
+ let at = [...ke, ...De].map((Fe, ct) => Oi(bi({}, Fe), { index: ct }));
42986
42992
  if (Pe) {
42987
42993
  const Fe = [...He, ...xt];
42988
42994
  Ne && (at = at.map((ht) => {
@@ -45173,8 +45179,8 @@ var flrm = /* @__PURE__ */ hMap(flt, 9, 1), fdrm = /* @__PURE__ */ hMap(fdt, 5,
45173
45179
  var Pe = function(Fi) {
45174
45180
  var ki = r.length;
45175
45181
  if (Fi > ki) {
45176
- var O0 = new u8(Math.max(ki * 2, Fi));
45177
- O0.set(r), r = O0;
45182
+ var D0 = new u8(Math.max(ki * 2, Fi));
45183
+ D0.set(r), r = D0;
45178
45184
  }
45179
45185
  }, Ne = t.f || 0, Ae = t.p || 0, ke = t.b || 0, He = t.l, De = t.d, xt = t.m, at = t.n, Fe = v * 8;
45180
45186
  do {
@@ -45504,7 +45510,7 @@ class EXRLoader extends DataTextureLoader {
45504
45510
  for (let i0 = 0; i0 < S0; ++i0)
45505
45511
  d0[i0] = e0[d0[i0]];
45506
45512
  }
45507
- function O0(e0) {
45513
+ function D0(e0) {
45508
45514
  for (let d0 = 1; d0 < e0.length; d0++) {
45509
45515
  const S0 = e0[d0 - 1] + e0[d0] - 128;
45510
45516
  e0[d0] = S0;
@@ -45623,11 +45629,11 @@ class EXRLoader extends DataTextureLoader {
45623
45629
  }
45624
45630
  function o0(e0) {
45625
45631
  const d0 = e0.viewer.buffer.slice(e0.offset.value, e0.offset.value + e0.size), S0 = new Uint8Array(vi(d0)), i0 = new Uint8Array(S0.length);
45626
- return O0(S0), h0(S0, i0), new DataView(i0.buffer);
45632
+ return D0(S0), h0(S0, i0), new DataView(i0.buffer);
45627
45633
  }
45628
45634
  function G0(e0) {
45629
45635
  const d0 = e0.array.slice(e0.offset.value, e0.offset.value + e0.size), S0 = unzlibSync(d0), i0 = new Uint8Array(S0.length);
45630
- return O0(S0), h0(S0, i0), new DataView(i0.buffer);
45636
+ return D0(S0), h0(S0, i0), new DataView(i0.buffer);
45631
45637
  }
45632
45638
  function w0(e0) {
45633
45639
  const d0 = e0.viewer, S0 = { value: e0.offset.value }, i0 = new Uint16Array(e0.columns * e0.lines * (e0.inputChannels.length * e0.type)), u0 = new Uint8Array(8192);
@@ -45805,14 +45811,14 @@ class EXRLoader extends DataTextureLoader {
45805
45811
  return d0.value = d0.value + S0, i0;
45806
45812
  }
45807
45813
  function Zi(e0, d0) {
45808
- const S0 = D0(e0, d0), i0 = wi(e0, d0);
45814
+ const S0 = O0(e0, d0), i0 = wi(e0, d0);
45809
45815
  return [S0, i0];
45810
45816
  }
45811
45817
  function Ei(e0, d0) {
45812
45818
  const S0 = wi(e0, d0), i0 = wi(e0, d0);
45813
45819
  return [S0, i0];
45814
45820
  }
45815
- function D0(e0, d0) {
45821
+ function O0(e0, d0) {
45816
45822
  const S0 = e0.getInt32(d0.value, !0);
45817
45823
  return d0.value = d0.value + 4, S0;
45818
45824
  }
@@ -45853,9 +45859,9 @@ class EXRLoader extends DataTextureLoader {
45853
45859
  function Ci(e0, d0, S0, i0) {
45854
45860
  const u0 = S0.value, m0 = [];
45855
45861
  for (; S0.value < u0 + i0 - 1; ) {
45856
- const v0 = _i(d0, S0), f0 = D0(e0, S0), T0 = Ki(e0, S0);
45862
+ const v0 = _i(d0, S0), f0 = O0(e0, S0), T0 = Ki(e0, S0);
45857
45863
  S0.value += 3;
45858
- const R0 = D0(e0, S0), V0 = D0(e0, S0);
45864
+ const R0 = O0(e0, S0), V0 = O0(e0, S0);
45859
45865
  m0.push({
45860
45866
  name: v0,
45861
45867
  pixelType: f0,
@@ -45885,8 +45891,8 @@ class EXRLoader extends DataTextureLoader {
45885
45891
  ], i0 = Ki(e0, d0);
45886
45892
  return S0[i0];
45887
45893
  }
45888
- function Oi(e0, d0) {
45889
- const S0 = D0(e0, d0), i0 = D0(e0, d0), u0 = D0(e0, d0), m0 = D0(e0, d0);
45894
+ function Di(e0, d0) {
45895
+ const S0 = O0(e0, d0), i0 = O0(e0, d0), u0 = O0(e0, d0), m0 = O0(e0, d0);
45890
45896
  return { xMin: S0, yMin: i0, xMax: u0, yMax: m0 };
45891
45897
  }
45892
45898
  function en(e0, d0) {
@@ -45938,7 +45944,7 @@ class EXRLoader extends DataTextureLoader {
45938
45944
  if (i0 === "compression")
45939
45945
  return Ai(e0, S0);
45940
45946
  if (i0 === "box2i")
45941
- return Oi(e0, S0);
45947
+ return Di(e0, S0);
45942
45948
  if (i0 === "envmap")
45943
45949
  return $i(e0, S0);
45944
45950
  if (i0 === "tiledesc")
@@ -45952,7 +45958,7 @@ class EXRLoader extends DataTextureLoader {
45952
45958
  if (i0 === "v3f")
45953
45959
  return Ln(e0, S0);
45954
45960
  if (i0 === "int")
45955
- return D0(e0, S0);
45961
+ return O0(e0, S0);
45956
45962
  if (i0 === "rational")
45957
45963
  return Zi(e0, S0);
45958
45964
  if (i0 === "timecode")
@@ -45993,7 +45999,7 @@ class EXRLoader extends DataTextureLoader {
45993
45999
  function Cn() {
45994
46000
  const e0 = this, d0 = e0.offset, S0 = { value: 0 };
45995
46001
  for (let i0 = 0; i0 < e0.tileCount; i0++) {
45996
- const u0 = D0(e0.viewer, d0), m0 = D0(e0.viewer, d0);
46002
+ const u0 = O0(e0.viewer, d0), m0 = O0(e0.viewer, d0);
45997
46003
  d0.value += 8, e0.size = wi(e0.viewer, d0);
45998
46004
  const v0 = u0 * e0.blockWidth, f0 = m0 * e0.blockHeight;
45999
46005
  e0.columns = v0 + e0.blockWidth > e0.width ? e0.width - v0 : e0.blockWidth, e0.lines = f0 + e0.blockHeight > e0.height ? e0.height - f0 : e0.blockHeight;
@@ -46017,7 +46023,7 @@ class EXRLoader extends DataTextureLoader {
46017
46023
  function mn() {
46018
46024
  const e0 = this, d0 = e0.offset, S0 = { value: 0 };
46019
46025
  for (let i0 = 0; i0 < e0.height / e0.blockHeight; i0++) {
46020
- const u0 = D0(e0.viewer, d0) - hn.dataWindow.yMin;
46026
+ const u0 = O0(e0.viewer, d0) - hn.dataWindow.yMin;
46021
46027
  e0.size = wi(e0.viewer, d0), e0.lines = u0 + e0.blockHeight > e0.height ? e0.height - u0 : e0.blockHeight;
46022
46028
  const m0 = e0.columns * e0.totalBytes, f0 = e0.size < e0.lines * m0 ? e0.uncompress(e0) : c0(e0);
46023
46029
  d0.value += e0.size;
@@ -48869,11 +48875,11 @@ if (typeof document != "undefined") {
48869
48875
  return a0 = a0 || 0, t0 !== 0 || Ut !== 0 || a0 !== 0 ? this._t(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, t0, Ut, a0, 1) : this;
48870
48876
  }
48871
48877
  function xt(t0, Ut, a0, g0, b0, P0, q0, M0, K0, k0, J0, Si, Vi, Ti, Fi, ki) {
48872
- var O0 = this.props;
48878
+ var D0 = this.props;
48873
48879
  if (t0 === 1 && Ut === 0 && a0 === 0 && g0 === 0 && b0 === 0 && P0 === 1 && q0 === 0 && M0 === 0 && K0 === 0 && k0 === 0 && J0 === 1 && Si === 0)
48874
- return O0[12] = O0[12] * t0 + O0[15] * Vi, O0[13] = O0[13] * P0 + O0[15] * Ti, O0[14] = O0[14] * J0 + O0[15] * Fi, O0[15] *= ki, this._identityCalculated = !1, this;
48875
- var h0 = O0[0], vi = O0[1], $0 = O0[2], xi = O0[3], H0 = O0[4], I0 = O0[5], _0 = O0[6], N0 = O0[7], ui = O0[8], c0 = O0[9], o0 = O0[10], G0 = O0[11], w0 = O0[12], F0 = O0[13], E0 = O0[14], _i = O0[15];
48876
- return O0[0] = h0 * t0 + vi * b0 + $0 * K0 + xi * Vi, O0[1] = h0 * Ut + vi * P0 + $0 * k0 + xi * Ti, O0[2] = h0 * a0 + vi * q0 + $0 * J0 + xi * Fi, O0[3] = h0 * g0 + vi * M0 + $0 * Si + xi * ki, O0[4] = H0 * t0 + I0 * b0 + _0 * K0 + N0 * Vi, O0[5] = H0 * Ut + I0 * P0 + _0 * k0 + N0 * Ti, O0[6] = H0 * a0 + I0 * q0 + _0 * J0 + N0 * Fi, O0[7] = H0 * g0 + I0 * M0 + _0 * Si + N0 * ki, O0[8] = ui * t0 + c0 * b0 + o0 * K0 + G0 * Vi, O0[9] = ui * Ut + c0 * P0 + o0 * k0 + G0 * Ti, O0[10] = ui * a0 + c0 * q0 + o0 * J0 + G0 * Fi, O0[11] = ui * g0 + c0 * M0 + o0 * Si + G0 * ki, O0[12] = w0 * t0 + F0 * b0 + E0 * K0 + _i * Vi, O0[13] = w0 * Ut + F0 * P0 + E0 * k0 + _i * Ti, O0[14] = w0 * a0 + F0 * q0 + E0 * J0 + _i * Fi, O0[15] = w0 * g0 + F0 * M0 + E0 * Si + _i * ki, this._identityCalculated = !1, this;
48880
+ return D0[12] = D0[12] * t0 + D0[15] * Vi, D0[13] = D0[13] * P0 + D0[15] * Ti, D0[14] = D0[14] * J0 + D0[15] * Fi, D0[15] *= ki, this._identityCalculated = !1, this;
48881
+ var h0 = D0[0], vi = D0[1], $0 = D0[2], xi = D0[3], H0 = D0[4], I0 = D0[5], _0 = D0[6], N0 = D0[7], ui = D0[8], c0 = D0[9], o0 = D0[10], G0 = D0[11], w0 = D0[12], F0 = D0[13], E0 = D0[14], _i = D0[15];
48882
+ return D0[0] = h0 * t0 + vi * b0 + $0 * K0 + xi * Vi, D0[1] = h0 * Ut + vi * P0 + $0 * k0 + xi * Ti, D0[2] = h0 * a0 + vi * q0 + $0 * J0 + xi * Fi, D0[3] = h0 * g0 + vi * M0 + $0 * Si + xi * ki, D0[4] = H0 * t0 + I0 * b0 + _0 * K0 + N0 * Vi, D0[5] = H0 * Ut + I0 * P0 + _0 * k0 + N0 * Ti, D0[6] = H0 * a0 + I0 * q0 + _0 * J0 + N0 * Fi, D0[7] = H0 * g0 + I0 * M0 + _0 * Si + N0 * ki, D0[8] = ui * t0 + c0 * b0 + o0 * K0 + G0 * Vi, D0[9] = ui * Ut + c0 * P0 + o0 * k0 + G0 * Ti, D0[10] = ui * a0 + c0 * q0 + o0 * J0 + G0 * Fi, D0[11] = ui * g0 + c0 * M0 + o0 * Si + G0 * ki, D0[12] = w0 * t0 + F0 * b0 + E0 * K0 + _i * Vi, D0[13] = w0 * Ut + F0 * P0 + E0 * k0 + _i * Ti, D0[14] = w0 * a0 + F0 * q0 + E0 * J0 + _i * Fi, D0[15] = w0 * g0 + F0 * M0 + E0 * Si + _i * ki, this._identityCalculated = !1, this;
48877
48883
  }
48878
48884
  function at() {
48879
48885
  return this._identityCalculated || (this._identity = !(this.props[0] !== 1 || this.props[1] !== 0 || this.props[2] !== 0 || this.props[3] !== 0 || this.props[4] !== 0 || this.props[5] !== 1 || this.props[6] !== 0 || this.props[7] !== 0 || this.props[8] !== 0 || this.props[9] !== 0 || this.props[10] !== 1 || this.props[11] !== 0 || this.props[12] !== 0 || this.props[13] !== 0 || this.props[14] !== 0 || this.props[15] !== 1), this._identityCalculated = !0), this._identity;
@@ -51253,7 +51259,7 @@ if (typeof document != "undefined") {
51253
51259
  Ae = ke.length, ve = 0, Pe = 0;
51254
51260
  var l0 = g.finalSize * 1.2 * 0.714, s0 = !0, qt, t0, Ut, a0, g0;
51255
51261
  a0 = m.length;
51256
- var b0, P0 = -1, q0, M0, K0, k0 = De, J0 = ht, Si = ct, Vi = -1, Ti, Fi, ki, O0, h0, vi, $0, xi, H0 = "", I0 = this.defaultPropsArray, _0;
51262
+ var b0, P0 = -1, q0, M0, K0, k0 = De, J0 = ht, Si = ct, Vi = -1, Ti, Fi, ki, D0, h0, vi, $0, xi, H0 = "", I0 = this.defaultPropsArray, _0;
51257
51263
  if (g.j === 2 || g.j === 1) {
51258
51264
  var N0 = 0, ui = 0, c0 = g.j === 2 ? -0.5 : -1, o0 = 0, G0 = !0;
51259
51265
  for (Ne = 0; Ne < Ae; Ne += 1)
@@ -51296,7 +51302,7 @@ if (typeof document != "undefined") {
51296
51302
  q0 = ke[Ne].an / 2 - ke[Ne].add, C.translate(-q0, 0, 0), C.translate(-r[0] * ke[Ne].an * 5e-3, -r[1] * l0 * 0.01, 0);
51297
51303
  for (Ut = 0; Ut < a0; Ut += 1)
51298
51304
  qt = m[Ut].a, qt.t.propType && (t0 = m[Ut].s, b0 = t0.getMult(ke[Ne].anIndexes[Ut], v.a[Ut].s.totalChars), (ve !== 0 || g.j !== 0) && (this._hasMaskedPath ? b0.length ? De += qt.t.v * b0[0] : De += qt.t.v * b0 : b0.length ? ve += qt.t.v * b0[0] : ve += qt.t.v * b0));
51299
- for (g.strokeWidthAnim && (ki = g.sw || 0), g.strokeColorAnim && (g.sc ? Fi = [g.sc[0], g.sc[1], g.sc[2]] : Fi = [0, 0, 0]), g.fillColorAnim && g.fc && (O0 = [g.fc[0], g.fc[1], g.fc[2]]), Ut = 0; Ut < a0; Ut += 1)
51305
+ for (g.strokeWidthAnim && (ki = g.sw || 0), g.strokeColorAnim && (g.sc ? Fi = [g.sc[0], g.sc[1], g.sc[2]] : Fi = [0, 0, 0]), g.fillColorAnim && g.fc && (D0 = [g.fc[0], g.fc[1], g.fc[2]]), Ut = 0; Ut < a0; Ut += 1)
51300
51306
  qt = m[Ut].a, qt.a.propType && (t0 = m[Ut].s, b0 = t0.getMult(ke[Ne].anIndexes[Ut], v.a[Ut].s.totalChars), b0.length ? C.translate(-qt.a.v[0] * b0[0], -qt.a.v[1] * b0[1], qt.a.v[2] * b0[2]) : C.translate(-qt.a.v[0] * b0, -qt.a.v[1] * b0, qt.a.v[2] * b0));
51301
51307
  for (Ut = 0; Ut < a0; Ut += 1)
51302
51308
  qt = m[Ut].a, qt.s.propType && (t0 = m[Ut].s, b0 = t0.getMult(ke[Ne].anIndexes[Ut], v.a[Ut].s.totalChars), b0.length ? C.scale(1 + (qt.s.v[0] - 1) * b0[0], 1 + (qt.s.v[1] - 1) * b0[1], 1) : C.scale(1 + (qt.s.v[0] - 1) * b0, 1 + (qt.s.v[1] - 1) * b0, 1));
@@ -51307,13 +51313,13 @@ if (typeof document != "undefined") {
51307
51313
  if (g.fillColorAnim && g.fc) {
51308
51314
  if (qt.fc.propType)
51309
51315
  for (h0 = 0; h0 < 3; h0 += 1)
51310
- b0.length ? O0[h0] += (qt.fc.v[h0] - O0[h0]) * b0[0] : O0[h0] += (qt.fc.v[h0] - O0[h0]) * b0;
51311
- qt.fh.propType && (b0.length ? O0 = addHueToRGB(O0, qt.fh.v * b0[0]) : O0 = addHueToRGB(O0, qt.fh.v * b0)), qt.fs.propType && (b0.length ? O0 = addSaturationToRGB(O0, qt.fs.v * b0[0]) : O0 = addSaturationToRGB(O0, qt.fs.v * b0)), qt.fb.propType && (b0.length ? O0 = addBrightnessToRGB(O0, qt.fb.v * b0[0]) : O0 = addBrightnessToRGB(O0, qt.fb.v * b0));
51316
+ b0.length ? D0[h0] += (qt.fc.v[h0] - D0[h0]) * b0[0] : D0[h0] += (qt.fc.v[h0] - D0[h0]) * b0;
51317
+ qt.fh.propType && (b0.length ? D0 = addHueToRGB(D0, qt.fh.v * b0[0]) : D0 = addHueToRGB(D0, qt.fh.v * b0)), qt.fs.propType && (b0.length ? D0 = addSaturationToRGB(D0, qt.fs.v * b0[0]) : D0 = addSaturationToRGB(D0, qt.fs.v * b0)), qt.fb.propType && (b0.length ? D0 = addBrightnessToRGB(D0, qt.fb.v * b0[0]) : D0 = addBrightnessToRGB(D0, qt.fb.v * b0));
51312
51318
  }
51313
51319
  }
51314
51320
  for (Ut = 0; Ut < a0; Ut += 1)
51315
51321
  qt = m[Ut].a, qt.p.propType && (t0 = m[Ut].s, b0 = t0.getMult(ke[Ne].anIndexes[Ut], v.a[Ut].s.totalChars), this._hasMaskedPath ? b0.length ? C.translate(0, qt.p.v[1] * b0[0], -qt.p.v[2] * b0[1]) : C.translate(0, qt.p.v[1] * b0, -qt.p.v[2] * b0) : b0.length ? C.translate(qt.p.v[0] * b0[0], qt.p.v[1] * b0[1], -qt.p.v[2] * b0[2]) : C.translate(qt.p.v[0] * b0, qt.p.v[1] * b0, -qt.p.v[2] * b0));
51316
- if (g.strokeWidthAnim && (vi = ki < 0 ? 0 : ki), g.strokeColorAnim && ($0 = "rgb(" + Math.round(Fi[0] * 255) + "," + Math.round(Fi[1] * 255) + "," + Math.round(Fi[2] * 255) + ")"), g.fillColorAnim && g.fc && (xi = "rgb(" + Math.round(O0[0] * 255) + "," + Math.round(O0[1] * 255) + "," + Math.round(O0[2] * 255) + ")"), this._hasMaskedPath) {
51322
+ if (g.strokeWidthAnim && (vi = ki < 0 ? 0 : ki), g.strokeColorAnim && ($0 = "rgb(" + Math.round(Fi[0] * 255) + "," + Math.round(Fi[1] * 255) + "," + Math.round(Fi[2] * 255) + ")"), g.fillColorAnim && g.fc && (xi = "rgb(" + Math.round(D0[0] * 255) + "," + Math.round(D0[1] * 255) + "," + Math.round(D0[2] * 255) + ")"), this._hasMaskedPath) {
51317
51323
  if (C.translate(0, -g.ls), C.translate(0, r[1] * l0 * 0.01 + Pe, 0), this._pathData.p.v) {
51318
51324
  Ft = (xt.point[1] - Gt.point[1]) / (xt.point[0] - Gt.point[0]);
51319
51325
  var F0 = Math.atan(Ft) * 180 / Math.PI;
@@ -55717,23 +55723,28 @@ class ci extends hi {
55717
55723
  constructor(t, r) {
55718
55724
  super(t), this.objMap = /* @__PURE__ */ new Map(), this.objects = /* @__PURE__ */ new Map(), this.objectsPm = /* @__PURE__ */ new Map(), this.objectNamesToFactories = /* @__PURE__ */ new Map(), this.mList = r.mList, this.scene = this.createBaseObject(r.scene || new Scene(), {
55719
55725
  key: "@Scene",
55720
- name: "场景"
55726
+ name: "场景",
55727
+ mList: !1
55721
55728
  }), this.group = this.createBaseObject(new Group$1(), {
55722
55729
  key: "@Group",
55723
55730
  name: "物体组",
55724
- target: this.scene
55731
+ target: this.scene,
55732
+ mList: !1
55725
55733
  }), this.prefabGroup = this.createBaseObject(new Group$1(), {
55726
55734
  key: "@PrefabGroup",
55727
55735
  name: "预制组",
55728
- target: this.scene
55736
+ target: this.scene,
55737
+ mList: !1
55729
55738
  });
55730
55739
  }
55731
55740
  get objectsPromise() {
55732
55741
  return this.objectsPm.values();
55733
55742
  }
55734
- createBaseObject(t, r) {
55735
- const m = new ft$1();
55736
- return m.object3d = t, m.pencil = this.pencil, m.lead = this, m.mList = this.mList, r != null && r.key && (m.key = r.key), r != null && r.name && (t.name = r.name), r != null && r.target && (r == null || r.target.add(m.object3d)), this.objects.set(m.key, m), this.objMap.set(m.object3d, m), m;
55743
+ createBaseObject(t, r = {}) {
55744
+ const m = U({
55745
+ mList: !0
55746
+ }, r), v = new ft$1();
55747
+ return v.object3d = t, v.pencil = this.pencil, v.lead = this, v.mList = this.mList, m.key && (v.key = m.key), m.name && (t.name = m.name), m.target && m.target.object3d.add(v.object3d), this.objects.set(v.key, v), this.objMap.set(v.object3d, v), this.pencil.options.mList && m.mList && (this.mList.proxyBaseObject(v), this.mList.addBaseObjectMap(v)), v;
55737
55748
  }
55738
55749
  init(t) {
55739
55750
  return Object.keys(t).forEach((r) => {
@@ -55798,15 +55809,19 @@ class ci extends hi {
55798
55809
  break;
55799
55810
  }
55800
55811
  const C = (m = t.parent) == null ? void 0 : m.key, w = this.setBaseObjectKey(t, r, C);
55801
- return v && this.objects.delete(v), this.pencil.event.emit("updateKey", t, w, v), w;
55812
+ return v && this.objects.delete(v), this.pencil.event.emit("lead.updateKey", { baseObject: t, key: w, oldKey: v }), w;
55802
55813
  }
55803
55814
  addBaseObject(t, r, m) {
55804
55815
  return se(this, null, function* () {
55805
55816
  if (yield t.create(), t.object3d) {
55806
55817
  const v = t.object3d;
55807
- v.material && Array.isArray(v.material) && (v.material = v.material.slice()), this.pencil.options.mList && (this.mList.proxyBaseObject(t), this.mList.addBaseObjectMap(t)), m && t.setTop(m), r !== null && (r.add(t.object3d), this.objMap.set(t.object3d, t));
55818
+ v.traverse((C) => {
55819
+ C !== v && !this.objMap.get(C) && this.createBaseObject(C, {
55820
+ target: t
55821
+ });
55822
+ }), v.material && Array.isArray(v.material) && (v.material = v.material.slice()), this.pencil.options.mList && (this.mList.proxyBaseObject(t), this.mList.addBaseObjectMap(t)), m && t.setTop(m), r !== null && (r.object3d.add(t.object3d), this.objMap.set(t.object3d, t));
55808
55823
  }
55809
- t.render(), this.pencil.event.emit("draw", t);
55824
+ t.render(), this.pencil.event.emit("lead.draw", { baseObject: t });
55810
55825
  });
55811
55826
  }
55812
55827
  erase(...t) {
@@ -55826,7 +55841,7 @@ class ci extends hi {
55826
55841
  v.forEach((C) => {
55827
55842
  C.disposeMaterialIfNotUsed = t, C.dispose();
55828
55843
  });
55829
- }), this.pencil.event.emit("erase", ...r);
55844
+ }), this.pencil.event.emit("lead.erase");
55830
55845
  }
55831
55846
  update(t, r) {
55832
55847
  this.objects.forEach((m) => {
@@ -55902,7 +55917,11 @@ class mi {
55902
55917
  }
55903
55918
  )
55904
55919
  };
55905
- this.fixBaseObjects.set(t, m);
55920
+ this.fixBaseObjects.set(t, m), this.pencil.event.emit("mList.add", {
55921
+ key: t,
55922
+ material: r,
55923
+ baseObject: m
55924
+ });
55906
55925
  }
55907
55926
  get(t) {
55908
55927
  const r = this.materials.get(t);
@@ -55944,12 +55963,12 @@ class mi {
55944
55963
  }
55945
55964
  return v ? r : null;
55946
55965
  }
55947
- copy(t, r) {
55948
- const m = this.get(t);
55949
- if (!m)
55966
+ copy(t, r, m = {}) {
55967
+ const v = this.get(t);
55968
+ if (!v)
55950
55969
  return console.warn(`Material with key "${t}" not found.`), null;
55951
- const v = m.clone();
55952
- return this.add(r, v), v;
55970
+ const C = v.clone();
55971
+ return m.name && (C.name = m.name), this.add(r, C), C;
55953
55972
  }
55954
55973
  copyMultiple(t, r) {
55955
55974
  const m = {}, v = `${t}#`;
@@ -55969,7 +55988,7 @@ class mi {
55969
55988
  }
55970
55989
  remove(t) {
55971
55990
  const r = this.materials.get(t);
55972
- r && this.disposeMaterial(r), this.materials.delete(t), this.fixBaseObjects.delete(t);
55991
+ r && this.disposeMaterial(r), this.materials.delete(t), this.fixBaseObjects.delete(t), this.pencil.event.emit("mList.remove", { key: t, material: r });
55973
55992
  }
55974
55993
  removeByMaterial(t) {
55975
55994
  [...this.materials.entries()].some(([r, m]) => m === t ? (this.remove(r), !0) : !1);
@@ -56069,6 +56088,9 @@ class mi {
56069
56088
  v && !v.includes(w) || C.has(t) && (C.delete(t), C.size === 0 && m && (this.materialBaseObjectMap.delete(w), this.disposeMaterial(w)));
56070
56089
  });
56071
56090
  }
56091
+ getBaseObjectMap(t) {
56092
+ return this.materialBaseObjectMap.get(t) || /* @__PURE__ */ new Set();
56093
+ }
56072
56094
  syncChangeMaterial(t, r) {
56073
56095
  const m = this.materialBaseObjectMap.get(t);
56074
56096
  m && m.forEach((v) => {
@@ -56657,8 +56679,8 @@ class Z extends BufferGeometry {
56657
56679
  if (Math.abs(Xi) > Number.EPSILON) {
56658
56680
  const Zi = Math.sqrt(_i), Ei = Math.sqrt(
56659
56681
  F0 * F0 + E0 * E0
56660
- ), D0 = _0.x - w0 / Zi, wi = _0.y + G0 / Zi, Yi = N0.x - E0 / Ei, Ki = N0.y + F0 / Ei, Li = ((Yi - D0) * E0 - (Ki - wi) * F0) / (G0 * E0 - w0 * F0);
56661
- ui = D0 + G0 * Li - I0.x, c0 = wi + w0 * Li - I0.y;
56682
+ ), O0 = _0.x - w0 / Zi, wi = _0.y + G0 / Zi, Yi = N0.x - E0 / Ei, Ki = N0.y + F0 / Ei, Li = ((Yi - O0) * E0 - (Ki - wi) * F0) / (G0 * E0 - w0 * F0);
56683
+ ui = O0 + G0 * Li - I0.x, c0 = wi + w0 * Li - I0.y;
56662
56684
  const Wi = ui * ui + c0 * c0;
56663
56685
  if (Wi <= 2)
56664
56686
  return new Vector2(ui, c0);
@@ -56773,14 +56795,14 @@ class Z extends BufferGeometry {
56773
56795
  function ki() {
56774
56796
  const I0 = v.length / 3;
56775
56797
  let _0 = 0;
56776
- O0(g0, _0), _0 += g0.length;
56798
+ D0(g0, _0), _0 += g0.length;
56777
56799
  for (let N0 = 0, ui = t0.length; N0 < ui; N0++) {
56778
56800
  const c0 = t0[N0];
56779
- O0(c0, _0), _0 += c0.length;
56801
+ D0(c0, _0), _0 += c0.length;
56780
56802
  }
56781
56803
  m.addGroup(I0, v.length / 3 - I0, 1);
56782
56804
  }
56783
- function O0(I0, _0) {
56805
+ function D0(I0, _0) {
56784
56806
  let N0 = I0.length;
56785
56807
  for (; --N0 >= 0; ) {
56786
56808
  const ui = N0;
@@ -57980,7 +58002,7 @@ const baseObjs = {
57980
58002
  Icosahedron,
57981
58003
  Lathe,
57982
58004
  Octahedron
57983
- }, prefabType = Object.keys(Di(bi({}, expObjs), { Arc, Model })).map(
58005
+ }, prefabType = Object.keys(Oi(bi({}, expObjs), { Arc, Model })).map(
57984
58006
  (g) => g
57985
58007
  ), objs$3 = bi(bi({}, baseObjs), expObjs);
57986
58008
  function promisifyRequest(g) {
@@ -58546,12 +58568,12 @@ class SetMaterialValue extends Command {
58546
58568
  }
58547
58569
  execute() {
58548
58570
  this.material !== void 0 && (this.material[this.attributeName] = this.newValue, needsUpdateAttributeName.includes(this.attributeName) && (this.material.needsUpdate = !0), this.editor.emit("materialChanged", this.material), setTimeout(() => {
58549
- this.attributeName === "name" && this.editor.emit("baseObjectListChange");
58571
+ this.attributeName === "name" && this.editor.emit("mListChange");
58550
58572
  }));
58551
58573
  }
58552
58574
  undo() {
58553
58575
  this.material[this.attributeName] = this.oldValue, needsUpdateAttributeName.includes(this.attributeName) && (this.material.needsUpdate = !0), this.editor.emit("materialChanged", this.material), setTimeout(() => {
58554
- this.attributeName === "name" && this.editor.emit("baseObjectListChange");
58576
+ this.attributeName === "name" && this.editor.emit("mListChange");
58555
58577
  });
58556
58578
  }
58557
58579
  update(t) {
@@ -58799,7 +58821,7 @@ class AddObject extends Command {
58799
58821
  return B0(this, null, function* () {
58800
58822
  var m;
58801
58823
  const r = this.editor.viewport.vis;
58802
- this.obj = yield r.lead.draw(this.objectType, Di(bi({}, this.objectOptions), {
58824
+ this.obj = yield r.lead.draw(this.objectType, Oi(bi({}, this.objectOptions), {
58803
58825
  key: `${this.id}`
58804
58826
  })), this.obj.userData.updateKey !== !1 && r.lead.updateBaseObjectKey(this.obj, `$t:_${this.id}`), this.addObjectUuid = this.obj.key, this.editor.select(this.obj.key), (m = this.editor.viewport.vis) == null || m.initBaseObjectUserData(this.obj);
58805
58827
  });
@@ -58880,26 +58902,55 @@ class CopyObject extends Command {
58880
58902
  class CopyMaterial extends Command {
58881
58903
  constructor(r, m) {
58882
58904
  super(r);
58883
- C0(this, "materialKey");
58884
- C0(this, "copyKey");
58885
- this.type = "CopyMaterial", this.name = "Copy Material", this.materialKey = m;
58905
+ C0(this, "objectUuid");
58906
+ C0(this, "copyObjectUuid");
58907
+ this.type = "CopyMaterial", this.name = "Copy Material", this.objectUuid = m;
58908
+ }
58909
+ execute() {
58910
+ return B0(this, null, function* () {
58911
+ this.copyObjectUuid = `material_${this.id}`, this.editor.pencil.mList.copy(this.objectUuid, this.copyObjectUuid, {
58912
+ name: `材质_${this.id}`
58913
+ });
58914
+ });
58915
+ }
58916
+ undo() {
58917
+ return B0(this, null, function* () {
58918
+ this.editor.pencil.mList.remove(this.copyObjectUuid);
58919
+ });
58920
+ }
58921
+ toJSON() {
58922
+ const r = super.toJSON();
58923
+ return r.objectUuid = this.objectUuid, r.copyObjectUuid = this.copyObjectUuid, r;
58924
+ }
58925
+ fromJSON(r) {
58926
+ super.fromJSON(r), this.objectUuid = r.objectUuid || r.materialKey || r.originKey, this.copyObjectUuid = r.copyObjectUuid || r.copyKey;
58927
+ }
58928
+ }
58929
+ class RemoveMaterial extends Command {
58930
+ constructor(r, m) {
58931
+ super(r);
58932
+ C0(this, "objectUuid");
58933
+ C0(this, "material");
58934
+ this.type = "RemoveMaterial", this.name = "Remove Material", this.objectUuid = m;
58886
58935
  }
58887
58936
  execute() {
58888
58937
  return B0(this, null, function* () {
58889
- this.copyKey = `material_${this.id}`, this.editor.pencil.mList.copy(this.materialKey, this.copyKey);
58938
+ const r = this.editor.pencil.mList;
58939
+ this.material = r.get(this.objectUuid), r.remove(this.objectUuid);
58890
58940
  });
58891
58941
  }
58892
58942
  undo() {
58893
58943
  return B0(this, null, function* () {
58894
- this.editor.pencil.mList.remove(this.copyKey);
58944
+ const r = this.editor.pencil.mList;
58945
+ this.material && r.add(this.objectUuid, this.material);
58895
58946
  });
58896
58947
  }
58897
58948
  toJSON() {
58898
58949
  const r = super.toJSON();
58899
- return r.materialKey = this.materialKey, r.copyKey = this.copyKey, r;
58950
+ return r.objectUuid = this.objectUuid, r;
58900
58951
  }
58901
58952
  fromJSON(r) {
58902
- super.fromJSON(r), this.materialKey = r.materialKey || r.originKey, this.copyKey = r.copyKey;
58953
+ super.fromJSON(r), this.objectUuid = r.objectUuid || r.materialKey;
58903
58954
  }
58904
58955
  }
58905
58956
  class SetObjectMaterial extends Command {
@@ -59060,6 +59111,7 @@ const Commands = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProp
59060
59111
  AddVis,
59061
59112
  CopyMaterial,
59062
59113
  CopyObject,
59114
+ RemoveMaterial,
59063
59115
  RemoveObject,
59064
59116
  SetColor,
59065
59117
  SetGeometry,
@@ -59092,7 +59144,7 @@ class History {
59092
59144
  execute(t, r) {
59093
59145
  return B0(this, null, function* () {
59094
59146
  const m = this.undos[this.undos.length - 1], v = Date.now() - this.lastCmdTime;
59095
- m && m.updatable && t.updatable && m.object === t.object && m.type === t.type && m.attributeName === t.attributeName && m.attributeName2 === t.attributeName2 && m.name === t.name && m.objectUuid === t.objectUuid && m.materialSlot === t.materialSlot && v < 500 ? (m.update(t), t = m) : (this.undos.push(t), t.id = ++this.idCounter), t.name = r !== void 0 ? r : t.name;
59147
+ m && m.updatable && t.updatable && m.object === t.object && m.objectUuid === t.objectUuid && m.type === t.type && m.attributeName === t.attributeName && m.attributeName2 === t.attributeName2 && m.name === t.name && m.materialSlot === t.materialSlot && v < 500 ? (m.update(t), t = m) : (this.undos.push(t), t.id = ++this.idCounter), t.name = r !== void 0 ? r : t.name;
59096
59148
  try {
59097
59149
  yield t.execute();
59098
59150
  } catch (w) {
@@ -59131,14 +59183,14 @@ class History {
59131
59183
  const w = this.undos[C].json;
59132
59184
  if ((r = w.newMap) != null && r.images || (m = w.newMaterial) != null && m.images) {
59133
59185
  const O = (v = w.newMap) != null && v.images ? "newMap" : "newMaterial";
59134
- t.u.push(Di(bi({}, w), {
59135
- [O]: Di(bi({}, w[O]), {
59186
+ t.u.push(Oi(bi({}, w), {
59187
+ [O]: Oi(bi({}, w[O]), {
59136
59188
  images: w[O].images.map((ve) => {
59137
59189
  if (typeof ve.url != "string")
59138
59190
  return bi({}, ve);
59139
59191
  const Pe = t.i.findIndex((Ae) => Ae === ve.url);
59140
59192
  let Ne = ve.url;
59141
- return Pe === -1 ? (t.i.push(ve.url), Ne = `$rp-${t.i.length - 1}`) : Ne = `$rp-${Pe}`, Di(bi({}, ve), {
59193
+ return Pe === -1 ? (t.i.push(ve.url), Ne = `$rp-${t.i.length - 1}`) : Ne = `$rp-${Pe}`, Oi(bi({}, ve), {
59142
59194
  url: Ne
59143
59195
  });
59144
59196
  })
@@ -59203,7 +59255,7 @@ class History {
59203
59255
  return B0(this, null, function* () {
59204
59256
  t.fromJSON(t.json);
59205
59257
  try {
59206
- t.json.type !== "AddObject" && t.json.objectUuid && !t.object || (yield t.execute(), t.fixJSON());
59258
+ !["AddObject", "CopyMaterial", "RemoveMaterial"].includes(t.json.type) && t.json.objectUuid && !t.object || (yield t.execute(), t.fixJSON());
59207
59259
  } catch (r) {
59208
59260
  console.error(r, t);
59209
59261
  }
@@ -59259,14 +59311,20 @@ class Viewport {
59259
59311
  this.editor.changeSelectOption(), this.editor.emit("visShow", !0);
59260
59312
  }), yield this.vis.init();
59261
59313
  const { pencil: C } = this.vis;
59262
- C.userData.EditorEnv = !this.editor.playing, this.editor.pencil = C, this.editor.changeSelectOption(), this.editor.playing || (this.initEvent(), this.editor.emit("visChanged", this.vis)), this.editor.on("baseObjectListChange", () => {
59314
+ C.userData.EditorEnv = !this.editor.playing, this.editor.pencil = C, this.editor.changeSelectOption(), this.editor.changeMListOptions(), this.editor.playing || (this.initEvent(), this.editor.emit("visChanged", this.vis)), this.editor.on("baseObjectListChange", () => {
59263
59315
  this.editor.changeSelectOption();
59264
- }), C.event.on("updateKey", () => {
59316
+ }), this.editor.on("mListChange", () => {
59317
+ this.editor.changeMListOptions();
59318
+ }), C.event.on("lead.updateKey", () => {
59265
59319
  this.editor.emit("baseObjectListChange");
59266
- }), C.event.on("draw", () => {
59320
+ }), C.event.on("lead.draw", () => {
59267
59321
  this.editor.emit("baseObjectListChange");
59268
- }), C.event.on("erase", () => {
59322
+ }), C.event.on("lead.erase", () => {
59269
59323
  this.editor.emit("baseObjectListChange");
59324
+ }), C.event.on("mList.add", () => {
59325
+ this.editor.emit("mListChange");
59326
+ }), C.event.on("mList.remove", () => {
59327
+ this.editor.emit("mListChange");
59270
59328
  });
59271
59329
  });
59272
59330
  }
@@ -59314,14 +59372,18 @@ class Viewport {
59314
59372
  this.editor.execute(new CopyObject(this.editor, m));
59315
59373
  });
59316
59374
  }
59317
- // async setObjectMaterialType(uuid: string, type: string) {
59318
- // const {vis} = this;
59319
- // if (!vis) {
59320
- // return;
59321
- // }
59322
- // const obj = this.editor.baseObjectByUuid(uuid);
59323
- // this.editor.execute(new SetObjectMaterialType(this.editor, obj!, type));
59324
- // }
59375
+ removeMListMaterial(t) {
59376
+ return B0(this, null, function* () {
59377
+ const { vis: r } = this;
59378
+ r && this.editor.execute(new RemoveMaterial(this.editor, t));
59379
+ });
59380
+ }
59381
+ copyMListMaterial(t) {
59382
+ return B0(this, null, function* () {
59383
+ const { vis: r } = this;
59384
+ r && this.editor.execute(new CopyMaterial(this.editor, t));
59385
+ });
59386
+ }
59325
59387
  setExtendsOptions(t, r) {
59326
59388
  this.extendsOptions[t] = r, this.vis.extendsOptions[t] = r, this.editor.emit("optionsChanged"), setTimeout(() => {
59327
59389
  const m = this.editor.toJSON();
@@ -59410,7 +59472,7 @@ function applyFixes(g, t) {
59410
59472
  if (t.h.u[0] && t.h.u[0].visType === "city" && (t.h.u[0].visOptions.jsonName || (t.h.u = [])), t.h.u[0] && t.h.u[0].visType === "map") {
59411
59473
  if (t.h.u[0].visOptions.geojson) {
59412
59474
  const { geojson: w, adcode: O, geojsonLite: ve } = t.h.u[0].visOptions;
59413
- t.h.u[0].visOptions = Di(bi({}, t.h.u[0].visOptions), {
59475
+ t.h.u[0].visOptions = Oi(bi({}, t.h.u[0].visOptions), {
59414
59476
  geojsonMap: {
59415
59477
  [O]: w
59416
59478
  },
@@ -59421,7 +59483,7 @@ function applyFixes(g, t) {
59421
59483
  }
59422
59484
  if (t.h.u[0].visOptions.bbox) {
59423
59485
  const { bbox: w, bboxMap: O, adcode: ve } = t.h.u[0].visOptions;
59424
- t.h.u[0].visOptions = Di(bi({}, t.h.u[0].visOptions), {
59486
+ t.h.u[0].visOptions = Oi(bi({}, t.h.u[0].visOptions), {
59425
59487
  bboxMap: O || {
59426
59488
  [ve]: w
59427
59489
  }
@@ -59429,7 +59491,7 @@ function applyFixes(g, t) {
59429
59491
  }
59430
59492
  if (t.h.u[0].visOptions.worldBg) {
59431
59493
  const { worldBg: w } = t.h.u[0].visOptions;
59432
- t.h.u[0].visOptions = Di(bi({}, t.h.u[0].visOptions), {
59494
+ t.h.u[0].visOptions = Oi(bi({}, t.h.u[0].visOptions), {
59433
59495
  parentBg: w
59434
59496
  }), delete t.h.u[0].visOptions.worldBg;
59435
59497
  }
@@ -59597,7 +59659,7 @@ function applyFixes(g, t) {
59597
59659
  }
59598
59660
  },
59599
59661
  {
59600
- version: "0.28.1",
59662
+ version: "0.28.3",
59601
59663
  fix: () => !1
59602
59664
  }
59603
59665
  ];
@@ -59756,6 +59818,7 @@ class Editor {
59756
59818
  C0(this, "emit", this.events.emit.bind(this.events));
59757
59819
  C0(this, "options");
59758
59820
  C0(this, "selectOption", []);
59821
+ C0(this, "mListOptions", []);
59759
59822
  C0(this, "_dispose", !1);
59760
59823
  this.options = bi({
59761
59824
  assetsPrefix: "",
@@ -59770,7 +59833,7 @@ class Editor {
59770
59833
  let m = t.material;
59771
59834
  return Array.isArray(m) && r !== void 0 && (m = m[r]), m;
59772
59835
  }
59773
- getMaterialObjectByObject(t, r) {
59836
+ getMListFixBaseObjectByObject(t, r) {
59774
59837
  const m = this.getObjectMaterial(t, r);
59775
59838
  if (m) {
59776
59839
  const v = this.pencil.mList.getKey(m);
@@ -59779,18 +59842,18 @@ class Editor {
59779
59842
  return null;
59780
59843
  }
59781
59844
  materialObjectByUuid(t) {
59782
- const r = this.pencil.mList.getFixBaseObject(t);
59783
- return r ? r.object3d : this.objectByUuid(t);
59845
+ var m;
59846
+ const r = (m = this.mListOptions.find((v) => v.key === t)) == null ? void 0 : m.object;
59847
+ return r || this.objectByUuid(t);
59784
59848
  }
59785
59849
  uuidByMaterialObject(t) {
59786
- const r = this.pencil.mList.getKey(
59787
- t.material
59788
- );
59850
+ var m;
59851
+ const r = (m = this.mListOptions.find((v) => v.object === t)) == null ? void 0 : m.key;
59789
59852
  return r || this.uuidByObject(t);
59790
59853
  }
59791
59854
  setObjectMaterial(t, r, m) {
59792
59855
  let v = t.material;
59793
- Array.isArray(t.material) && r !== void 0 ? (v = t.material[r], t.material[r] = m) : t.material = m, v != null && v.onBeforeCompile && !m.onBeforeCompile && (m.onBeforeCompile = v.onBeforeCompile), v != null && v.name && !m.name && (m.name = v.name);
59856
+ Array.isArray(t.material) && r !== void 0 ? (v = t.material[r], t.material[r] = m) : t.material = m, v != null && v.onBeforeCompile && (m.onBeforeCompile = v.onBeforeCompile), v != null && v.name && !m.name && (m.name = v.name);
59794
59857
  }
59795
59858
  uuidByObject(t) {
59796
59859
  var r;
@@ -59876,6 +59939,23 @@ class Editor {
59876
59939
  }).filter((v) => v !== null);
59877
59940
  this.selectOption = r([t.lead.scene]), this.emit("sceneGraphChanged");
59878
59941
  }
59942
+ changeMListOptions() {
59943
+ if (!this.pencil)
59944
+ return [];
59945
+ this.mListOptions = Array.from(
59946
+ this.pencil.mList.fixBaseObjects.entries()
59947
+ ).map(([t, r]) => {
59948
+ const m = this.pencil.mList.get(t);
59949
+ return {
59950
+ key: t.replace(t[0], t[0].toLowerCase()),
59951
+ name: m.name,
59952
+ type: m.type,
59953
+ object: r.object3d,
59954
+ baseObject: r,
59955
+ use: !!this.pencil.mList.getBaseObjectMap(m).size
59956
+ };
59957
+ }), this.emit("mListGraphChanged");
59958
+ }
59879
59959
  execute(t, r) {
59880
59960
  return B0(this, null, function* () {
59881
59961
  yield this.history.execute(t, r);
@@ -60557,7 +60637,7 @@ class Base extends Camera {
60557
60637
  "vis-core:detect",
60558
60638
  version,
60559
60639
  JSON.stringify(
60560
- Di(bi({}, v), {
60640
+ Oi(bi({}, v), {
60561
60641
  ldb: this.options.logarithmicDepthBuffer,
60562
60642
  tier0: this.tier0
60563
60643
  }),
@@ -60629,7 +60709,7 @@ class Base extends Camera {
60629
60709
  this.pencil = this.options.pencil2, this.lead = this.pencil.lead.init(this.leadObjs), this.mList = this.pencil.mList, this.sceneActive = this.pencil.pageActiveIndex;
60630
60710
  return;
60631
60711
  } else {
60632
- const ke = new ot(bi(Di(bi({
60712
+ const ke = new ot(bi(Oi(bi({
60633
60713
  container: this.container,
60634
60714
  stats: !this.playing && IS_DEV,
60635
60715
  helper: !this.playing,
@@ -60741,7 +60821,7 @@ class Base extends Camera {
60741
60821
  );
60742
60822
  }
60743
60823
  initBaseObjectUserData(r) {
60744
- const m = Di(bi({}, r.object3d.userData), {
60824
+ const m = Oi(bi({}, r.object3d.userData), {
60745
60825
  bloom: !1
60746
60826
  });
60747
60827
  if (r.objectType === "BaseObject#Light")
@@ -60771,7 +60851,7 @@ class Base extends Camera {
60771
60851
  mouseWheel: this.pencil.controls.mouseButtons.wheel
60772
60852
  };
60773
60853
  this.settings = new Proxy(
60774
- Di(bi(bi({}, this.initSettingsObj), r), {
60854
+ Oi(bi(bi({}, this.initSettingsObj), r), {
60775
60855
  mouseNone: !1,
60776
60856
  viewportPadding: [0, 0, 0, 0]
60777
60857
  }),
@@ -61075,8 +61155,8 @@ class Road extends ft$1 {
61075
61155
  const Wt = [
61076
61156
  at.geometry.coordinates[0].filter((Pt) => booleanPointInPolygon$1(Pt, ht))
61077
61157
  ];
61078
- return Wt[0].length && He[Fe].push(Di(bi({}, at), {
61079
- geometry: Di(bi({}, at.geometry), {
61158
+ return Wt[0].length && He[Fe].push(Oi(bi({}, at), {
61159
+ geometry: Oi(bi({}, at.geometry), {
61080
61160
  coordinates: Wt
61081
61161
  })
61082
61162
  })), !0;
@@ -61155,8 +61235,8 @@ class Area extends ft$1 {
61155
61235
  const Lt = lineString(xt.geometry.coordinates[0]);
61156
61236
  if (booleanCrosses(ct, Lt)) {
61157
61237
  const Pt = clipGeojson(ct, xt);
61158
- Pt.features[0] && ke[at].push(Di(bi({}, xt), {
61159
- geometry: Di(bi({}, xt.geometry), {
61238
+ Pt.features[0] && ke[at].push(Oi(bi({}, xt), {
61239
+ geometry: Oi(bi({}, xt.geometry), {
61160
61240
  coordinates: Pt.features[0].geometry.coordinates
61161
61241
  })
61162
61242
  }));
@@ -61830,7 +61910,7 @@ class Target extends ft$1 {
61830
61910
  this.time.value += 0.01, this.offset.y -= 0.02;
61831
61911
  }
61832
61912
  }
61833
- const objs$2 = Di(bi({}, objs$3), {
61913
+ const objs$2 = Oi(bi({}, objs$3), {
61834
61914
  Building,
61835
61915
  Road,
61836
61916
  Area,
@@ -103887,12 +103967,12 @@ const objs$2 = Di(bi({}, objs$3), {
103887
103967
  ], worldExclATALite = {
103888
103968
  type,
103889
103969
  features
103890
- }, chinaJson = json100000, chinaLiteJson = json100000Lite, chinaBbox = adcodeAll[1e5].b, worldJson = Di(bi({}, world$1), {
103970
+ }, chinaJson = json100000, chinaLiteJson = json100000Lite, chinaBbox = adcodeAll[1e5].b, worldJson = Oi(bi({}, world$1), {
103891
103971
  features: world$1.features.map((g) => {
103892
103972
  if (g.properties.name === "索马里兰" || g.properties.full_name.endsWith(")") || g.properties.full_name.includes("美属") || g.properties.full_name.includes("英属") || g.properties.full_name.includes("法属") || g.properties.full_name.includes("荷属") || g.properties.full_name.includes("本土外"))
103893
103973
  return null;
103894
103974
  if (g.properties.name === "索马里")
103895
- return Di(bi({}, g), {
103975
+ return Oi(bi({}, g), {
103896
103976
  geometry: {
103897
103977
  type: "Polygon",
103898
103978
  coordinates: [
@@ -103933,7 +104013,7 @@ const objs$2 = Di(bi({}, objs$3), {
103933
104013
  }
103934
104014
  });
103935
104015
  if (g.properties.name === "西撒哈拉")
103936
- return Di(bi({}, g), {
104016
+ return Oi(bi({}, g), {
103937
104017
  geometry: {
103938
104018
  type: "Polygon",
103939
104019
  coordinates: [
@@ -103983,7 +104063,7 @@ const objs$2 = Di(bi({}, objs$3), {
103983
104063
  }
103984
104064
  });
103985
104065
  if (g.properties.name === "摩洛哥")
103986
- return Di(bi({}, g), {
104066
+ return Oi(bi({}, g), {
103987
104067
  geometry: {
103988
104068
  type: "Polygon",
103989
104069
  coordinates: [
@@ -104061,8 +104141,8 @@ const objs$2 = Di(bi({}, objs$3), {
104061
104141
  }
104062
104142
  });
104063
104143
  if (g.properties.name === "挪威")
104064
- return Di(bi({}, g), {
104065
- geometry: Di(bi({}, g.geometry), {
104144
+ return Oi(bi({}, g), {
104145
+ geometry: Oi(bi({}, g.geometry), {
104066
104146
  coordinates: g.geometry.coordinates.filter((t, r) => r !== 10)
104067
104147
  })
104068
104148
  });
@@ -104076,17 +104156,17 @@ const objs$2 = Di(bi({}, objs$3), {
104076
104156
  //start 广西
104077
104157
  t[0][0][73]
104078
104158
  ]
104079
- ], Di(bi({}, g), {
104080
- geometry: Di(bi({}, g.geometry), {
104159
+ ], Oi(bi({}, g), {
104160
+ geometry: Oi(bi({}, g.geometry), {
104081
104161
  coordinates: r
104082
104162
  })
104083
104163
  });
104084
- } else return g.properties.iso_a2 === "RU" ? Di(bi({}, g), {
104085
- geometry: Di(bi({}, g.geometry), {
104164
+ } else return g.properties.iso_a2 === "RU" ? Oi(bi({}, g), {
104165
+ geometry: Oi(bi({}, g.geometry), {
104086
104166
  coordinates: g.geometry.coordinates.filter((t, r) => r !== 45)
104087
104167
  })
104088
- }) : g.properties.iso_a2 === "UA" ? Di(bi({}, g), {
104089
- geometry: Di(bi({}, g.geometry), {
104168
+ }) : g.properties.iso_a2 === "UA" ? Oi(bi({}, g), {
104169
+ geometry: Oi(bi({}, g.geometry), {
104090
104170
  coordinates: [
104091
104171
  [
104092
104172
  [22.131836, 48.405322],
@@ -104166,7 +104246,7 @@ const objs$2 = Di(bi({}, objs$3), {
104166
104246
  })
104167
104247
  }) : g;
104168
104248
  }).filter((g) => g)
104169
- }), worldExclATAJson = Di(bi({}, worldJson), {
104249
+ }), worldExclATAJson = Oi(bi({}, worldJson), {
104170
104250
  features: worldJson.features.filter(
104171
104251
  (g) => g.properties.iso_a3 !== "ATA"
104172
104252
  )
@@ -140049,8 +140129,8 @@ const continentsBbox = continentsBboxObj, continentsM49 = {
140049
140129
  return g;
140050
140130
  const r = g.properties.iso_a2 === "FR", m = g.properties.iso_a2 === "RU", v = r ? 20 : 10;
140051
140131
  let C = g.geometry.type === "Polygon" ? [g.geometry.coordinates] : g.geometry.coordinates;
140052
- return C = C.filter((w, O) => w.length === 1 && w[0].length < v ? !1 : !(m && O === 0)), C.length ? Di(bi({}, g), {
140053
- geometry: Di(bi({}, g.geometry), {
140132
+ return C = C.filter((w, O) => w.length === 1 && w[0].length < v ? !1 : !(m && O === 0)), C.length ? Oi(bi({}, g), {
140133
+ geometry: Oi(bi({}, g.geometry), {
140054
140134
  coordinates: g.geometry.type === "Polygon" ? C[0] : C
140055
140135
  })
140056
140136
  }) : null;
@@ -141021,7 +141101,7 @@ class PlaneMap extends ft$1 {
141021
141101
  this.extrudePolygon.dispose(), super.dispose();
141022
141102
  }
141023
141103
  }
141024
- const objs$1 = Di(bi({}, objs$3), {
141104
+ const objs$1 = Oi(bi({}, objs$3), {
141025
141105
  PlaneMap: PlaneMap$1,
141026
141106
  CityPlane,
141027
141107
  ContinentsBg,
@@ -141418,10 +141498,6 @@ const objs$1 = Di(bi({}, objs$3), {
141418
141498
  label: !1,
141419
141499
  labelLite: !1,
141420
141500
  shadowMap: !1
141421
- // '测试板块颜色.color:::caId': 'ffffff',
141422
- // '测试边框颜色.color:::caId': 'ffffff',
141423
- // '测试边框宽度:::caId': 0,
141424
- // '测试添加面.btn:::caId': 0,
141425
141501
  });
141426
141502
  C0(this, "caId");
141427
141503
  C0(this, "shadowMapLight");
@@ -141467,7 +141543,7 @@ const objs$1 = Di(bi({}, objs$3), {
141467
141543
  features: [O]
141468
141544
  };
141469
141545
  });
141470
- }), v = bi(bi({}, v), r == null ? void 0 : r.extrudeLineGeojsonMap), super.setOptions(Di(bi({
141546
+ }), v = bi(bi({}, v), r == null ? void 0 : r.extrudeLineGeojsonMap), super.setOptions(Oi(bi({
141471
141547
  parentBg: !1,
141472
141548
  continents: "",
141473
141549
  continentsBg: !1,
@@ -141637,7 +141713,7 @@ const objs$1 = Di(bi({}, objs$3), {
141637
141713
  "PlaneMap",
141638
141714
  bi({
141639
141715
  key: "bg-0",
141640
- geojson: Di(bi({}, ve), {
141716
+ geojson: Oi(bi({}, ve), {
141641
141717
  features: [
141642
141718
  ...ve.features.filter((He) => w ? He.properties.iso_a3 !== "CHN" : !0)
141643
141719
  ]
@@ -142102,7 +142178,7 @@ const objs$1 = Di(bi({}, objs$3), {
142102
142178
  if (!this.options.showDistrict && this.getAdcodeShowLevel(r) === "city" && (at = Fe, Fe = void 0), [at, Fe].filter(Boolean).forEach((ht) => {
142103
142179
  if (!ht.features[0].properties.adcode && /^\d{6}$/.test(`${r}`)) {
142104
142180
  const Gt = findAdcodeInfo(r);
142105
- ht.features[0].properties = Di(bi(bi({}, ht.features[0].properties), Gt), {
142181
+ ht.features[0].properties = Oi(bi(bi({}, ht.features[0].properties), Gt), {
142106
142182
  center: [Gt.lng, Gt.lat]
142107
142183
  });
142108
142184
  }
@@ -142277,6 +142353,8 @@ const objs$1 = Di(bi({}, objs$3), {
142277
142353
  at.userData.selectHide = !0;
142278
142354
  })), De.extrudelineArr && De.extrudelineArr.forEach((at) => {
142279
142355
  at.object3d.name = "板块边线", this.lead.updateBaseObjectKey(at, "extrudeLine"), this.initBaseObjectUserData(at), w && (at.object3d.userData.bloom = !0);
142356
+ }), De.lineArr && De.lineArr.forEach((at) => {
142357
+ this.initBaseObjectUserData(at);
142280
142358
  }), De;
142281
142359
  });
142282
142360
  }
@@ -142532,7 +142610,7 @@ class SphereShadow extends ft$1 {
142532
142610
  });
142533
142611
  }
142534
142612
  }
142535
- const objs = Di(bi({}, objs$3), {
142613
+ const objs = Oi(bi({}, objs$3), {
142536
142614
  Earth,
142537
142615
  Countries,
142538
142616
  SphereShadow
@@ -142574,7 +142652,7 @@ const objs = Di(bi({}, objs$3), {
142574
142652
  });
142575
142653
  };
142576
142654
  }, chinaPlate = (g) => {
142577
- g.extendsOptions = Di(bi({}, g.extendsOptions), {
142655
+ g.extendsOptions = Oi(bi({}, g.extendsOptions), {
142578
142656
  copyChinaPlane: g.options.copyChinaPlane
142579
142657
  }), g.loaderAdd = function() {
142580
142658
  const { loader: t } = this;
@@ -142786,8 +142864,6 @@ const objs = Di(bi({}, objs$3), {
142786
142864
  style: "chinaPlate",
142787
142865
  copyChinaPlane: !1
142788
142866
  }, r)), this.initSettingsObj = {
142789
- // '测试板块颜色.color': '#000000',
142790
- // '测试边框颜色.color': '#ffffff',
142791
142867
  autoRotate: !1
142792
142868
  }, styles[this.options.style](this);
142793
142869
  }
@@ -142989,7 +143065,7 @@ const getMapConfig = (v, ...C) => B0(void 0, [v, ...C], function* (g, t = b, r,
142989
143065
  );
142990
143066
  const { res: ke } = yield jsonFetch(
142991
143067
  t + `/geojson/${Ne || "json-lite"}/${w}.json`
142992
- ), He = Di(bi({}, g), {
143068
+ ), He = Oi(bi({}, g), {
142993
143069
  geojsonMap: {
142994
143070
  [w]: Ae
142995
143071
  },