@wemap/viewer 14.8.0-beta.5 → 14.8.0-beta.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -8795,15 +8795,231 @@ var yo = class extends Kt {
8795
8795
  let t = super.toJSON(e);
8796
8796
  return this.fog !== null && (t.object.fog = this.fog.toJSON()), this.backgroundBlurriness > 0 && (t.object.backgroundBlurriness = this.backgroundBlurriness), this.backgroundIntensity !== 1 && (t.object.backgroundIntensity = this.backgroundIntensity), t;
8797
8797
  }
8798
- }, bo = class extends fn {
8798
+ }, bo = class {
8799
+ constructor(e, t) {
8800
+ this.isInterleavedBuffer = !0, this.array = e, this.stride = t, this.count = e === void 0 ? 0 : e.length / t, this.usage = F, this._updateRange = {
8801
+ offset: 0,
8802
+ count: -1
8803
+ }, this.updateRanges = [], this.version = 0, this.uuid = L();
8804
+ }
8805
+ onUploadCallback() {}
8806
+ set needsUpdate(e) {
8807
+ e === !0 && this.version++;
8808
+ }
8809
+ get updateRange() {
8810
+ return console.warn("THREE.InterleavedBuffer: \"updateRange\" is deprecated and removed in r169. Use \"addUpdateRange()\" instead."), this._updateRange;
8811
+ }
8812
+ setUsage(e) {
8813
+ return this.usage = e, this;
8814
+ }
8815
+ addUpdateRange(e, t) {
8816
+ this.updateRanges.push({
8817
+ start: e,
8818
+ count: t
8819
+ });
8820
+ }
8821
+ clearUpdateRanges() {
8822
+ this.updateRanges.length = 0;
8823
+ }
8824
+ copy(e) {
8825
+ return this.array = new e.array.constructor(e.array), this.count = e.count, this.stride = e.stride, this.usage = e.usage, this;
8826
+ }
8827
+ copyAt(e, t, n) {
8828
+ e *= this.stride, n *= t.stride;
8829
+ for (let r = 0, i = this.stride; r < i; r++) this.array[e + r] = t.array[n + r];
8830
+ return this;
8831
+ }
8832
+ set(e, t = 0) {
8833
+ return this.array.set(e, t), this;
8834
+ }
8835
+ clone(e) {
8836
+ e.arrayBuffers === void 0 && (e.arrayBuffers = {}), this.array.buffer._uuid === void 0 && (this.array.buffer._uuid = L()), e.arrayBuffers[this.array.buffer._uuid] === void 0 && (e.arrayBuffers[this.array.buffer._uuid] = this.array.slice(0).buffer);
8837
+ let t = new this.array.constructor(e.arrayBuffers[this.array.buffer._uuid]), n = new this.constructor(t, this.stride);
8838
+ return n.setUsage(this.usage), n;
8839
+ }
8840
+ onUpload(e) {
8841
+ return this.onUploadCallback = e, this;
8842
+ }
8843
+ toJSON(e) {
8844
+ return e.arrayBuffers === void 0 && (e.arrayBuffers = {}), this.array.buffer._uuid === void 0 && (this.array.buffer._uuid = L()), e.arrayBuffers[this.array.buffer._uuid] === void 0 && (e.arrayBuffers[this.array.buffer._uuid] = Array.from(new Uint32Array(this.array.buffer))), {
8845
+ uuid: this.uuid,
8846
+ buffer: this.array.buffer._uuid,
8847
+ type: this.array.constructor.name,
8848
+ stride: this.stride
8849
+ };
8850
+ }
8851
+ }, xo = /*@__PURE__*/ new X(), So = class e {
8852
+ constructor(e, t, n, r = !1) {
8853
+ this.isInterleavedBufferAttribute = !0, this.name = "", this.data = e, this.itemSize = t, this.offset = n, this.normalized = r;
8854
+ }
8855
+ get count() {
8856
+ return this.data.count;
8857
+ }
8858
+ get array() {
8859
+ return this.data.array;
8860
+ }
8861
+ set needsUpdate(e) {
8862
+ this.data.needsUpdate = e;
8863
+ }
8864
+ applyMatrix4(e) {
8865
+ for (let t = 0, n = this.data.count; t < n; t++) xo.fromBufferAttribute(this, t), xo.applyMatrix4(e), this.setXYZ(t, xo.x, xo.y, xo.z);
8866
+ return this;
8867
+ }
8868
+ applyNormalMatrix(e) {
8869
+ for (let t = 0, n = this.count; t < n; t++) xo.fromBufferAttribute(this, t), xo.applyNormalMatrix(e), this.setXYZ(t, xo.x, xo.y, xo.z);
8870
+ return this;
8871
+ }
8872
+ transformDirection(e) {
8873
+ for (let t = 0, n = this.count; t < n; t++) xo.fromBufferAttribute(this, t), xo.transformDirection(e), this.setXYZ(t, xo.x, xo.y, xo.z);
8874
+ return this;
8875
+ }
8876
+ setX(e, t) {
8877
+ return this.normalized && (t = G(t, this.array)), this.data.array[e * this.data.stride + this.offset] = t, this;
8878
+ }
8879
+ setY(e, t) {
8880
+ return this.normalized && (t = G(t, this.array)), this.data.array[e * this.data.stride + this.offset + 1] = t, this;
8881
+ }
8882
+ setZ(e, t) {
8883
+ return this.normalized && (t = G(t, this.array)), this.data.array[e * this.data.stride + this.offset + 2] = t, this;
8884
+ }
8885
+ setW(e, t) {
8886
+ return this.normalized && (t = G(t, this.array)), this.data.array[e * this.data.stride + this.offset + 3] = t, this;
8887
+ }
8888
+ getX(e) {
8889
+ let t = this.data.array[e * this.data.stride + this.offset];
8890
+ return this.normalized && (t = be(t, this.array)), t;
8891
+ }
8892
+ getY(e) {
8893
+ let t = this.data.array[e * this.data.stride + this.offset + 1];
8894
+ return this.normalized && (t = be(t, this.array)), t;
8895
+ }
8896
+ getZ(e) {
8897
+ let t = this.data.array[e * this.data.stride + this.offset + 2];
8898
+ return this.normalized && (t = be(t, this.array)), t;
8899
+ }
8900
+ getW(e) {
8901
+ let t = this.data.array[e * this.data.stride + this.offset + 3];
8902
+ return this.normalized && (t = be(t, this.array)), t;
8903
+ }
8904
+ setXY(e, t, n) {
8905
+ return e = e * this.data.stride + this.offset, this.normalized && (t = G(t, this.array), n = G(n, this.array)), this.data.array[e + 0] = t, this.data.array[e + 1] = n, this;
8906
+ }
8907
+ setXYZ(e, t, n, r) {
8908
+ return e = e * this.data.stride + this.offset, this.normalized && (t = G(t, this.array), n = G(n, this.array), r = G(r, this.array)), this.data.array[e + 0] = t, this.data.array[e + 1] = n, this.data.array[e + 2] = r, this;
8909
+ }
8910
+ setXYZW(e, t, n, r, i) {
8911
+ return e = e * this.data.stride + this.offset, this.normalized && (t = G(t, this.array), n = G(n, this.array), r = G(r, this.array), i = G(i, this.array)), this.data.array[e + 0] = t, this.data.array[e + 1] = n, this.data.array[e + 2] = r, this.data.array[e + 3] = i, this;
8912
+ }
8913
+ clone(t) {
8914
+ if (t === void 0) {
8915
+ console.log("THREE.InterleavedBufferAttribute.clone(): Cloning an interleaved buffer attribute will de-interleave buffer data.");
8916
+ let e = [];
8917
+ for (let t = 0; t < this.count; t++) {
8918
+ let n = t * this.data.stride + this.offset;
8919
+ for (let t = 0; t < this.itemSize; t++) e.push(this.data.array[n + t]);
8920
+ }
8921
+ return new gn(new this.array.constructor(e), this.itemSize, this.normalized);
8922
+ } else return t.interleavedBuffers === void 0 && (t.interleavedBuffers = {}), t.interleavedBuffers[this.data.uuid] === void 0 && (t.interleavedBuffers[this.data.uuid] = this.data.clone(t)), new e(t.interleavedBuffers[this.data.uuid], this.itemSize, this.offset, this.normalized);
8923
+ }
8924
+ toJSON(e) {
8925
+ if (e === void 0) {
8926
+ console.log("THREE.InterleavedBufferAttribute.toJSON(): Serializing an interleaved buffer attribute will de-interleave buffer data.");
8927
+ let e = [];
8928
+ for (let t = 0; t < this.count; t++) {
8929
+ let n = t * this.data.stride + this.offset;
8930
+ for (let t = 0; t < this.itemSize; t++) e.push(this.data.array[n + t]);
8931
+ }
8932
+ return {
8933
+ itemSize: this.itemSize,
8934
+ type: this.array.constructor.name,
8935
+ array: e,
8936
+ normalized: this.normalized
8937
+ };
8938
+ } else return e.interleavedBuffers === void 0 && (e.interleavedBuffers = {}), e.interleavedBuffers[this.data.uuid] === void 0 && (e.interleavedBuffers[this.data.uuid] = this.data.toJSON(e)), {
8939
+ isInterleavedBufferAttribute: !0,
8940
+ itemSize: this.itemSize,
8941
+ data: this.data.uuid,
8942
+ offset: this.offset,
8943
+ normalized: this.normalized
8944
+ };
8945
+ }
8946
+ }, Co = class extends fn {
8947
+ constructor(e) {
8948
+ super(), this.isSpriteMaterial = !0, this.type = "SpriteMaterial", this.color = new Z(16777215), this.map = null, this.alphaMap = null, this.rotation = 0, this.sizeAttenuation = !0, this.transparent = !0, this.fog = !0, this.setValues(e);
8949
+ }
8950
+ copy(e) {
8951
+ return super.copy(e), this.color.copy(e.color), this.map = e.map, this.alphaMap = e.alphaMap, this.rotation = e.rotation, this.sizeAttenuation = e.sizeAttenuation, this.fog = e.fog, this;
8952
+ }
8953
+ }, wo, To = /*@__PURE__*/ new X(), Eo = /*@__PURE__*/ new X(), Do = /*@__PURE__*/ new X(), Oo = /*@__PURE__*/ new K(), ko = /*@__PURE__*/ new K(), Ao = /*@__PURE__*/ new xt(), jo = /*@__PURE__*/ new X(), Mo = /*@__PURE__*/ new X(), No = /*@__PURE__*/ new X(), Po = /*@__PURE__*/ new K(), Fo = /*@__PURE__*/ new K(), Io = /*@__PURE__*/ new K(), Lo = class extends Kt {
8954
+ constructor(e = new Co()) {
8955
+ if (super(), this.isSprite = !0, this.type = "Sprite", wo === void 0) {
8956
+ wo = new Dn();
8957
+ let e = new bo(new Float32Array([
8958
+ -.5,
8959
+ -.5,
8960
+ 0,
8961
+ 0,
8962
+ 0,
8963
+ .5,
8964
+ -.5,
8965
+ 0,
8966
+ 1,
8967
+ 0,
8968
+ .5,
8969
+ .5,
8970
+ 0,
8971
+ 1,
8972
+ 1,
8973
+ -.5,
8974
+ .5,
8975
+ 0,
8976
+ 0,
8977
+ 1
8978
+ ]), 5);
8979
+ wo.setIndex([
8980
+ 0,
8981
+ 1,
8982
+ 2,
8983
+ 0,
8984
+ 2,
8985
+ 3
8986
+ ]), wo.setAttribute("position", new So(e, 3, 0, !1)), wo.setAttribute("uv", new So(e, 2, 3, !1));
8987
+ }
8988
+ this.geometry = wo, this.material = e, this.center = new K(.5, .5);
8989
+ }
8990
+ raycast(e, t) {
8991
+ e.camera === null && console.error("THREE.Sprite: \"Raycaster.camera\" needs to be set in order to raycast against sprites."), Eo.setFromMatrixScale(this.matrixWorld), Ao.copy(e.camera.matrixWorld), this.modelViewMatrix.multiplyMatrices(e.camera.matrixWorldInverse, this.matrixWorld), Do.setFromMatrixPosition(this.modelViewMatrix), e.camera.isPerspectiveCamera && this.material.sizeAttenuation === !1 && Eo.multiplyScalar(-Do.z);
8992
+ let n = this.material.rotation, r, i;
8993
+ n !== 0 && (i = Math.cos(n), r = Math.sin(n));
8994
+ let a = this.center;
8995
+ Ro(jo.set(-.5, -.5, 0), Do, a, Eo, r, i), Ro(Mo.set(.5, -.5, 0), Do, a, Eo, r, i), Ro(No.set(.5, .5, 0), Do, a, Eo, r, i), Po.set(0, 0), Fo.set(1, 0), Io.set(1, 1);
8996
+ let o = e.ray.intersectTriangle(jo, Mo, No, !1, To);
8997
+ if (o === null && (Ro(Mo.set(-.5, .5, 0), Do, a, Eo, r, i), Fo.set(0, 1), o = e.ray.intersectTriangle(jo, No, Mo, !1, To), o === null)) return;
8998
+ let s = e.ray.origin.distanceTo(To);
8999
+ s < e.near || s > e.far || t.push({
9000
+ distance: s,
9001
+ point: To.clone(),
9002
+ uv: an.getInterpolation(To, jo, Mo, No, Po, Fo, Io, new K()),
9003
+ face: null,
9004
+ object: this
9005
+ });
9006
+ }
9007
+ copy(e, t) {
9008
+ return super.copy(e, t), e.center !== void 0 && this.center.copy(e.center), this.material = e.material, this;
9009
+ }
9010
+ };
9011
+ function Ro(e, t, n, r, i, a) {
9012
+ Oo.subVectors(e, n).addScalar(.5).multiply(r), i === void 0 ? ko.copy(Oo) : (ko.x = a * Oo.x - i * Oo.y, ko.y = i * Oo.x + a * Oo.y), e.copy(t), e.x += ko.x, e.y += ko.y, e.applyMatrix4(Ao);
9013
+ }
9014
+ var zo = class extends fn {
8799
9015
  constructor(e) {
8800
9016
  super(), this.isLineBasicMaterial = !0, this.type = "LineBasicMaterial", this.color = new Z(16777215), this.map = null, this.linewidth = 1, this.linecap = "round", this.linejoin = "round", this.fog = !0, this.setValues(e);
8801
9017
  }
8802
9018
  copy(e) {
8803
9019
  return super.copy(e), this.color.copy(e.color), this.map = e.map, this.linewidth = e.linewidth, this.linecap = e.linecap, this.linejoin = e.linejoin, this.fog = e.fog, this;
8804
9020
  }
8805
- }, xo = /*@__PURE__*/ new X(), So = /*@__PURE__*/ new X(), Co = /*@__PURE__*/ new xt(), wo = /*@__PURE__*/ new bt(), To = /*@__PURE__*/ new ft(), Eo = class extends Kt {
8806
- constructor(e = new Dn(), t = new bo()) {
9021
+ }, Bo = /*@__PURE__*/ new X(), Vo = /*@__PURE__*/ new X(), Ho = /*@__PURE__*/ new xt(), Uo = /*@__PURE__*/ new bt(), Wo = /*@__PURE__*/ new ft(), Go = class extends Kt {
9022
+ constructor(e = new Dn(), t = new zo()) {
8807
9023
  super(), this.isLine = !0, this.type = "Line", this.geometry = e, this.material = t, this.updateMorphTargets();
8808
9024
  }
8809
9025
  copy(e, t) {
@@ -8813,21 +9029,21 @@ var yo = class extends Kt {
8813
9029
  let e = this.geometry;
8814
9030
  if (e.index === null) {
8815
9031
  let t = e.attributes.position, n = [0];
8816
- for (let e = 1, r = t.count; e < r; e++) xo.fromBufferAttribute(t, e - 1), So.fromBufferAttribute(t, e), n[e] = n[e - 1], n[e] += xo.distanceTo(So);
9032
+ for (let e = 1, r = t.count; e < r; e++) Bo.fromBufferAttribute(t, e - 1), Vo.fromBufferAttribute(t, e), n[e] = n[e - 1], n[e] += Bo.distanceTo(Vo);
8817
9033
  e.setAttribute("lineDistance", new yn(n, 1));
8818
9034
  } else console.warn("THREE.Line.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.");
8819
9035
  return this;
8820
9036
  }
8821
9037
  raycast(e, t) {
8822
9038
  let n = this.geometry, r = this.matrixWorld, i = e.params.Line.threshold, a = n.drawRange;
8823
- if (n.boundingSphere === null && n.computeBoundingSphere(), To.copy(n.boundingSphere), To.applyMatrix4(r), To.radius += i, e.ray.intersectsSphere(To) === !1) return;
8824
- Co.copy(r).invert(), wo.copy(e.ray).applyMatrix4(Co);
9039
+ if (n.boundingSphere === null && n.computeBoundingSphere(), Wo.copy(n.boundingSphere), Wo.applyMatrix4(r), Wo.radius += i, e.ray.intersectsSphere(Wo) === !1) return;
9040
+ Ho.copy(r).invert(), Uo.copy(e.ray).applyMatrix4(Ho);
8825
9041
  let o = i / ((this.scale.x + this.scale.y + this.scale.z) / 3), s = o * o, c = new X(), l = new X(), u = new X(), d = new X(), f = this.isLineSegments ? 2 : 1, p = n.index, m = n.attributes.position;
8826
9042
  if (p !== null) {
8827
9043
  let n = Math.max(0, a.start), r = Math.min(p.count, a.start + a.count);
8828
9044
  for (let i = n, a = r - 1; i < a; i += f) {
8829
9045
  let n = p.getX(i), r = p.getX(i + 1);
8830
- if (c.fromBufferAttribute(m, n), l.fromBufferAttribute(m, r), wo.distanceSqToSegment(c, l, d, u) > s) continue;
9046
+ if (c.fromBufferAttribute(m, n), l.fromBufferAttribute(m, r), Uo.distanceSqToSegment(c, l, d, u) > s) continue;
8831
9047
  d.applyMatrix4(this.matrixWorld);
8832
9048
  let a = e.ray.origin.distanceTo(d);
8833
9049
  a < e.near || a > e.far || t.push({
@@ -8842,7 +9058,7 @@ var yo = class extends Kt {
8842
9058
  } else {
8843
9059
  let n = Math.max(0, a.start), r = Math.min(m.count, a.start + a.count);
8844
9060
  for (let i = n, a = r - 1; i < a; i += f) {
8845
- if (c.fromBufferAttribute(m, i), l.fromBufferAttribute(m, i + 1), wo.distanceSqToSegment(c, l, d, u) > s) continue;
9061
+ if (c.fromBufferAttribute(m, i), l.fromBufferAttribute(m, i + 1), Uo.distanceSqToSegment(c, l, d, u) > s) continue;
8846
9062
  d.applyMatrix4(this.matrixWorld);
8847
9063
  let n = e.ray.origin.distanceTo(d);
8848
9064
  n < e.near || n > e.far || t.push({
@@ -8869,11 +9085,15 @@ var yo = class extends Kt {
8869
9085
  }
8870
9086
  }
8871
9087
  }
8872
- }, Do = class extends Eo {
9088
+ }, Ko = class extends Go {
8873
9089
  constructor(e, t) {
8874
9090
  super(e, t), this.isLineLoop = !0, this.type = "LineLoop";
8875
9091
  }
8876
- }, Oo = class {
9092
+ }, qo = class extends ze {
9093
+ constructor(e, t, n, r, i, a, o, s, c) {
9094
+ super(e, t, n, r, i, a, o, s, c), this.isCanvasTexture = !0, this.needsUpdate = !0;
9095
+ }
9096
+ }, Jo = class {
8877
9097
  constructor() {
8878
9098
  this.type = "Curve", this.arcLengthDivisions = 200;
8879
9099
  }
@@ -8978,7 +9198,7 @@ var yo = class extends Kt {
8978
9198
  fromJSON(e) {
8979
9199
  return this.arcLengthDivisions = e.arcLengthDivisions, this;
8980
9200
  }
8981
- }, ko = class extends Oo {
9201
+ }, Yo = class extends Jo {
8982
9202
  constructor(e = 0, t = 0, n = 1, r = 1, i = 0, a = Math.PI * 2, o = !1, s = 0) {
8983
9203
  super(), this.isEllipseCurve = !0, this.type = "EllipseCurve", this.aX = e, this.aY = t, this.xRadius = n, this.yRadius = r, this.aStartAngle = i, this.aEndAngle = a, this.aClockwise = o, this.aRotation = s;
8984
9204
  }
@@ -9004,12 +9224,12 @@ var yo = class extends Kt {
9004
9224
  fromJSON(e) {
9005
9225
  return super.fromJSON(e), this.aX = e.aX, this.aY = e.aY, this.xRadius = e.xRadius, this.yRadius = e.yRadius, this.aStartAngle = e.aStartAngle, this.aEndAngle = e.aEndAngle, this.aClockwise = e.aClockwise, this.aRotation = e.aRotation, this;
9006
9226
  }
9007
- }, Ao = class extends ko {
9227
+ }, Xo = class extends Yo {
9008
9228
  constructor(e, t, n, r, i, a) {
9009
9229
  super(e, t, n, n, r, i, a), this.isArcCurve = !0, this.type = "ArcCurve";
9010
9230
  }
9011
9231
  };
9012
- function jo() {
9232
+ function Zo() {
9013
9233
  let e = 0, t = 0, n = 0, r = 0;
9014
9234
  function i(i, a, o, s) {
9015
9235
  e = i, t = o, n = -3 * i + 3 * a - 2 * o - s, r = 2 * i - 2 * a + o + s;
@@ -9028,7 +9248,7 @@ function jo() {
9028
9248
  }
9029
9249
  };
9030
9250
  }
9031
- var Mo = /*@__PURE__*/ new X(), No = /*@__PURE__*/ new jo(), Po = /*@__PURE__*/ new jo(), Fo = /*@__PURE__*/ new jo(), Io = class extends Oo {
9251
+ var Qo = /*@__PURE__*/ new X(), $o = /*@__PURE__*/ new Zo(), es = /*@__PURE__*/ new Zo(), ts = /*@__PURE__*/ new Zo(), ns = class extends Jo {
9032
9252
  constructor(e = [], t = !1, n = "centripetal", r = .5) {
9033
9253
  super(), this.isCatmullRomCurve3 = !0, this.type = "CatmullRomCurve3", this.points = e, this.closed = t, this.curveType = n, this.tension = r;
9034
9254
  }
@@ -9036,13 +9256,13 @@ var Mo = /*@__PURE__*/ new X(), No = /*@__PURE__*/ new jo(), Po = /*@__PURE__*/
9036
9256
  let n = t, r = this.points, i = r.length, a = (i - +!this.closed) * e, o = Math.floor(a), s = a - o;
9037
9257
  this.closed ? o += o > 0 ? 0 : (Math.floor(Math.abs(o) / i) + 1) * i : s === 0 && o === i - 1 && (o = i - 2, s = 1);
9038
9258
  let c, l;
9039
- this.closed || o > 0 ? c = r[(o - 1) % i] : (Mo.subVectors(r[0], r[1]).add(r[0]), c = Mo);
9259
+ this.closed || o > 0 ? c = r[(o - 1) % i] : (Qo.subVectors(r[0], r[1]).add(r[0]), c = Qo);
9040
9260
  let u = r[o % i], d = r[(o + 1) % i];
9041
- if (this.closed || o + 2 < i ? l = r[(o + 2) % i] : (Mo.subVectors(r[i - 1], r[i - 2]).add(r[i - 1]), l = Mo), this.curveType === "centripetal" || this.curveType === "chordal") {
9261
+ if (this.closed || o + 2 < i ? l = r[(o + 2) % i] : (Qo.subVectors(r[i - 1], r[i - 2]).add(r[i - 1]), l = Qo), this.curveType === "centripetal" || this.curveType === "chordal") {
9042
9262
  let e = this.curveType === "chordal" ? .5 : .25, t = c.distanceToSquared(u) ** +e, n = u.distanceToSquared(d) ** +e, r = d.distanceToSquared(l) ** +e;
9043
- n < 1e-4 && (n = 1), t < 1e-4 && (t = n), r < 1e-4 && (r = n), No.initNonuniformCatmullRom(c.x, u.x, d.x, l.x, t, n, r), Po.initNonuniformCatmullRom(c.y, u.y, d.y, l.y, t, n, r), Fo.initNonuniformCatmullRom(c.z, u.z, d.z, l.z, t, n, r);
9044
- } else this.curveType === "catmullrom" && (No.initCatmullRom(c.x, u.x, d.x, l.x, this.tension), Po.initCatmullRom(c.y, u.y, d.y, l.y, this.tension), Fo.initCatmullRom(c.z, u.z, d.z, l.z, this.tension));
9045
- return n.set(No.calc(s), Po.calc(s), Fo.calc(s)), n;
9263
+ n < 1e-4 && (n = 1), t < 1e-4 && (t = n), r < 1e-4 && (r = n), $o.initNonuniformCatmullRom(c.x, u.x, d.x, l.x, t, n, r), es.initNonuniformCatmullRom(c.y, u.y, d.y, l.y, t, n, r), ts.initNonuniformCatmullRom(c.z, u.z, d.z, l.z, t, n, r);
9264
+ } else this.curveType === "catmullrom" && ($o.initCatmullRom(c.x, u.x, d.x, l.x, this.tension), es.initCatmullRom(c.y, u.y, d.y, l.y, this.tension), ts.initCatmullRom(c.z, u.z, d.z, l.z, this.tension));
9265
+ return n.set($o.calc(s), es.calc(s), ts.calc(s)), n;
9046
9266
  }
9047
9267
  copy(e) {
9048
9268
  super.copy(e), this.points = [];
@@ -9070,47 +9290,47 @@ var Mo = /*@__PURE__*/ new X(), No = /*@__PURE__*/ new jo(), Po = /*@__PURE__*/
9070
9290
  return this.closed = e.closed, this.curveType = e.curveType, this.tension = e.tension, this;
9071
9291
  }
9072
9292
  };
9073
- function Lo(e, t, n, r, i) {
9293
+ function rs(e, t, n, r, i) {
9074
9294
  let a = (r - t) * .5, o = (i - n) * .5, s = e * e, c = e * s;
9075
9295
  return (2 * n - 2 * r + a + o) * c + (-3 * n + 3 * r - 2 * a - o) * s + a * e + n;
9076
9296
  }
9077
- function Ro(e, t) {
9297
+ function is(e, t) {
9078
9298
  let n = 1 - e;
9079
9299
  return n * n * t;
9080
9300
  }
9081
- function zo(e, t) {
9301
+ function as(e, t) {
9082
9302
  return 2 * (1 - e) * e * t;
9083
9303
  }
9084
- function Bo(e, t) {
9304
+ function os(e, t) {
9085
9305
  return e * e * t;
9086
9306
  }
9087
- function Vo(e, t, n, r) {
9088
- return Ro(e, t) + zo(e, n) + Bo(e, r);
9307
+ function ss(e, t, n, r) {
9308
+ return is(e, t) + as(e, n) + os(e, r);
9089
9309
  }
9090
- function Ho(e, t) {
9310
+ function cs(e, t) {
9091
9311
  let n = 1 - e;
9092
9312
  return n * n * n * t;
9093
9313
  }
9094
- function Uo(e, t) {
9314
+ function ls(e, t) {
9095
9315
  let n = 1 - e;
9096
9316
  return 3 * n * n * e * t;
9097
9317
  }
9098
- function Wo(e, t) {
9318
+ function us(e, t) {
9099
9319
  return 3 * (1 - e) * e * e * t;
9100
9320
  }
9101
- function Go(e, t) {
9321
+ function ds(e, t) {
9102
9322
  return e * e * e * t;
9103
9323
  }
9104
- function Ko(e, t, n, r, i) {
9105
- return Ho(e, t) + Uo(e, n) + Wo(e, r) + Go(e, i);
9324
+ function fs(e, t, n, r, i) {
9325
+ return cs(e, t) + ls(e, n) + us(e, r) + ds(e, i);
9106
9326
  }
9107
- var qo = class extends Oo {
9327
+ var ps = class extends Jo {
9108
9328
  constructor(e = new K(), t = new K(), n = new K(), r = new K()) {
9109
9329
  super(), this.isCubicBezierCurve = !0, this.type = "CubicBezierCurve", this.v0 = e, this.v1 = t, this.v2 = n, this.v3 = r;
9110
9330
  }
9111
9331
  getPoint(e, t = new K()) {
9112
9332
  let n = t, r = this.v0, i = this.v1, a = this.v2, o = this.v3;
9113
- return n.set(Ko(e, r.x, i.x, a.x, o.x), Ko(e, r.y, i.y, a.y, o.y)), n;
9333
+ return n.set(fs(e, r.x, i.x, a.x, o.x), fs(e, r.y, i.y, a.y, o.y)), n;
9114
9334
  }
9115
9335
  copy(e) {
9116
9336
  return super.copy(e), this.v0.copy(e.v0), this.v1.copy(e.v1), this.v2.copy(e.v2), this.v3.copy(e.v3), this;
@@ -9122,13 +9342,13 @@ var qo = class extends Oo {
9122
9342
  fromJSON(e) {
9123
9343
  return super.fromJSON(e), this.v0.fromArray(e.v0), this.v1.fromArray(e.v1), this.v2.fromArray(e.v2), this.v3.fromArray(e.v3), this;
9124
9344
  }
9125
- }, Jo = class extends Oo {
9345
+ }, ms = class extends Jo {
9126
9346
  constructor(e = new X(), t = new X(), n = new X(), r = new X()) {
9127
9347
  super(), this.isCubicBezierCurve3 = !0, this.type = "CubicBezierCurve3", this.v0 = e, this.v1 = t, this.v2 = n, this.v3 = r;
9128
9348
  }
9129
9349
  getPoint(e, t = new X()) {
9130
9350
  let n = t, r = this.v0, i = this.v1, a = this.v2, o = this.v3;
9131
- return n.set(Ko(e, r.x, i.x, a.x, o.x), Ko(e, r.y, i.y, a.y, o.y), Ko(e, r.z, i.z, a.z, o.z)), n;
9351
+ return n.set(fs(e, r.x, i.x, a.x, o.x), fs(e, r.y, i.y, a.y, o.y), fs(e, r.z, i.z, a.z, o.z)), n;
9132
9352
  }
9133
9353
  copy(e) {
9134
9354
  return super.copy(e), this.v0.copy(e.v0), this.v1.copy(e.v1), this.v2.copy(e.v2), this.v3.copy(e.v3), this;
@@ -9140,7 +9360,7 @@ var qo = class extends Oo {
9140
9360
  fromJSON(e) {
9141
9361
  return super.fromJSON(e), this.v0.fromArray(e.v0), this.v1.fromArray(e.v1), this.v2.fromArray(e.v2), this.v3.fromArray(e.v3), this;
9142
9362
  }
9143
- }, Yo = class extends Oo {
9363
+ }, hs = class extends Jo {
9144
9364
  constructor(e = new K(), t = new K()) {
9145
9365
  super(), this.isLineCurve = !0, this.type = "LineCurve", this.v1 = e, this.v2 = t;
9146
9366
  }
@@ -9167,7 +9387,7 @@ var qo = class extends Oo {
9167
9387
  fromJSON(e) {
9168
9388
  return super.fromJSON(e), this.v1.fromArray(e.v1), this.v2.fromArray(e.v2), this;
9169
9389
  }
9170
- }, Xo = class extends Oo {
9390
+ }, gs = class extends Jo {
9171
9391
  constructor(e = new X(), t = new X()) {
9172
9392
  super(), this.isLineCurve3 = !0, this.type = "LineCurve3", this.v1 = e, this.v2 = t;
9173
9393
  }
@@ -9194,13 +9414,13 @@ var qo = class extends Oo {
9194
9414
  fromJSON(e) {
9195
9415
  return super.fromJSON(e), this.v1.fromArray(e.v1), this.v2.fromArray(e.v2), this;
9196
9416
  }
9197
- }, Zo = class extends Oo {
9417
+ }, _s = class extends Jo {
9198
9418
  constructor(e = new K(), t = new K(), n = new K()) {
9199
9419
  super(), this.isQuadraticBezierCurve = !0, this.type = "QuadraticBezierCurve", this.v0 = e, this.v1 = t, this.v2 = n;
9200
9420
  }
9201
9421
  getPoint(e, t = new K()) {
9202
9422
  let n = t, r = this.v0, i = this.v1, a = this.v2;
9203
- return n.set(Vo(e, r.x, i.x, a.x), Vo(e, r.y, i.y, a.y)), n;
9423
+ return n.set(ss(e, r.x, i.x, a.x), ss(e, r.y, i.y, a.y)), n;
9204
9424
  }
9205
9425
  copy(e) {
9206
9426
  return super.copy(e), this.v0.copy(e.v0), this.v1.copy(e.v1), this.v2.copy(e.v2), this;
@@ -9212,13 +9432,13 @@ var qo = class extends Oo {
9212
9432
  fromJSON(e) {
9213
9433
  return super.fromJSON(e), this.v0.fromArray(e.v0), this.v1.fromArray(e.v1), this.v2.fromArray(e.v2), this;
9214
9434
  }
9215
- }, Qo = class extends Oo {
9435
+ }, vs = class extends Jo {
9216
9436
  constructor(e = new X(), t = new X(), n = new X()) {
9217
9437
  super(), this.isQuadraticBezierCurve3 = !0, this.type = "QuadraticBezierCurve3", this.v0 = e, this.v1 = t, this.v2 = n;
9218
9438
  }
9219
9439
  getPoint(e, t = new X()) {
9220
9440
  let n = t, r = this.v0, i = this.v1, a = this.v2;
9221
- return n.set(Vo(e, r.x, i.x, a.x), Vo(e, r.y, i.y, a.y), Vo(e, r.z, i.z, a.z)), n;
9441
+ return n.set(ss(e, r.x, i.x, a.x), ss(e, r.y, i.y, a.y), ss(e, r.z, i.z, a.z)), n;
9222
9442
  }
9223
9443
  copy(e) {
9224
9444
  return super.copy(e), this.v0.copy(e.v0), this.v1.copy(e.v1), this.v2.copy(e.v2), this;
@@ -9230,13 +9450,13 @@ var qo = class extends Oo {
9230
9450
  fromJSON(e) {
9231
9451
  return super.fromJSON(e), this.v0.fromArray(e.v0), this.v1.fromArray(e.v1), this.v2.fromArray(e.v2), this;
9232
9452
  }
9233
- }, $o = class extends Oo {
9453
+ }, ys = class extends Jo {
9234
9454
  constructor(e = []) {
9235
9455
  super(), this.isSplineCurve = !0, this.type = "SplineCurve", this.points = e;
9236
9456
  }
9237
9457
  getPoint(e, t = new K()) {
9238
9458
  let n = t, r = this.points, i = (r.length - 1) * e, a = Math.floor(i), o = i - a, s = r[a === 0 ? a : a - 1], c = r[a], l = r[a > r.length - 2 ? r.length - 1 : a + 1], u = r[a > r.length - 3 ? r.length - 1 : a + 2];
9239
- return n.set(Lo(o, s.x, c.x, l.x, u.x), Lo(o, s.y, c.y, l.y, u.y)), n;
9459
+ return n.set(rs(o, s.x, c.x, l.x, u.x), rs(o, s.y, c.y, l.y, u.y)), n;
9240
9460
  }
9241
9461
  copy(e) {
9242
9462
  super.copy(e), this.points = [];
@@ -9263,19 +9483,19 @@ var qo = class extends Oo {
9263
9483
  }
9264
9484
  return this;
9265
9485
  }
9266
- }, es = /*#__PURE__*/ Object.freeze({
9486
+ }, bs = /*#__PURE__*/ Object.freeze({
9267
9487
  __proto__: null,
9268
- ArcCurve: Ao,
9269
- CatmullRomCurve3: Io,
9270
- CubicBezierCurve: qo,
9271
- CubicBezierCurve3: Jo,
9272
- EllipseCurve: ko,
9273
- LineCurve: Yo,
9274
- LineCurve3: Xo,
9275
- QuadraticBezierCurve: Zo,
9276
- QuadraticBezierCurve3: Qo,
9277
- SplineCurve: $o
9278
- }), ts = class extends Oo {
9488
+ ArcCurve: Xo,
9489
+ CatmullRomCurve3: ns,
9490
+ CubicBezierCurve: ps,
9491
+ CubicBezierCurve3: ms,
9492
+ EllipseCurve: Yo,
9493
+ LineCurve: hs,
9494
+ LineCurve3: gs,
9495
+ QuadraticBezierCurve: _s,
9496
+ QuadraticBezierCurve3: vs,
9497
+ SplineCurve: ys
9498
+ }), xs = class extends Jo {
9279
9499
  constructor() {
9280
9500
  super(), this.type = "CurvePath", this.curves = [], this.autoClose = !1;
9281
9501
  }
@@ -9286,7 +9506,7 @@ var qo = class extends Oo {
9286
9506
  let e = this.curves[0].getPoint(0), t = this.curves[this.curves.length - 1].getPoint(1);
9287
9507
  if (!e.equals(t)) {
9288
9508
  let n = e.isVector2 === !0 ? "LineCurve" : "LineCurve3";
9289
- this.curves.push(new es[n](t, e));
9509
+ this.curves.push(new bs[n](t, e));
9290
9510
  }
9291
9511
  return this;
9292
9512
  }
@@ -9351,11 +9571,11 @@ var qo = class extends Oo {
9351
9571
  super.fromJSON(e), this.autoClose = e.autoClose, this.curves = [];
9352
9572
  for (let t = 0, n = e.curves.length; t < n; t++) {
9353
9573
  let n = e.curves[t];
9354
- this.curves.push(new es[n.type]().fromJSON(n));
9574
+ this.curves.push(new bs[n.type]().fromJSON(n));
9355
9575
  }
9356
9576
  return this;
9357
9577
  }
9358
- }, ns = class extends ts {
9578
+ }, Ss = class extends xs {
9359
9579
  constructor(e) {
9360
9580
  super(), this.type = "Path", this.currentPoint = new K(), e && this.setFromPoints(e);
9361
9581
  }
@@ -9368,19 +9588,19 @@ var qo = class extends Oo {
9368
9588
  return this.currentPoint.set(e, t), this;
9369
9589
  }
9370
9590
  lineTo(e, t) {
9371
- let n = new Yo(this.currentPoint.clone(), new K(e, t));
9591
+ let n = new hs(this.currentPoint.clone(), new K(e, t));
9372
9592
  return this.curves.push(n), this.currentPoint.set(e, t), this;
9373
9593
  }
9374
9594
  quadraticCurveTo(e, t, n, r) {
9375
- let i = new Zo(this.currentPoint.clone(), new K(e, t), new K(n, r));
9595
+ let i = new _s(this.currentPoint.clone(), new K(e, t), new K(n, r));
9376
9596
  return this.curves.push(i), this.currentPoint.set(n, r), this;
9377
9597
  }
9378
9598
  bezierCurveTo(e, t, n, r, i, a) {
9379
- let o = new qo(this.currentPoint.clone(), new K(e, t), new K(n, r), new K(i, a));
9599
+ let o = new ps(this.currentPoint.clone(), new K(e, t), new K(n, r), new K(i, a));
9380
9600
  return this.curves.push(o), this.currentPoint.set(i, a), this;
9381
9601
  }
9382
9602
  splineThru(e) {
9383
- let t = new $o([this.currentPoint.clone()].concat(e));
9603
+ let t = new ys([this.currentPoint.clone()].concat(e));
9384
9604
  return this.curves.push(t), this.currentPoint.copy(e[e.length - 1]), this;
9385
9605
  }
9386
9606
  arc(e, t, n, r, i, a) {
@@ -9395,7 +9615,7 @@ var qo = class extends Oo {
9395
9615
  return this.absellipse(e + c, t + l, n, r, i, a, o, s), this;
9396
9616
  }
9397
9617
  absellipse(e, t, n, r, i, a, o, s) {
9398
- let c = new ko(e, t, n, r, i, a, o, s);
9618
+ let c = new Yo(e, t, n, r, i, a, o, s);
9399
9619
  if (this.curves.length > 0) {
9400
9620
  let e = c.getPoint(0);
9401
9621
  e.equals(this.currentPoint) || this.lineTo(e.x, e.y);
@@ -9414,7 +9634,7 @@ var qo = class extends Oo {
9414
9634
  fromJSON(e) {
9415
9635
  return super.fromJSON(e), this.currentPoint.fromArray(e.currentPoint), this;
9416
9636
  }
9417
- }, rs = class e extends Dn {
9637
+ }, Cs = class e extends Dn {
9418
9638
  constructor(e = 1, t = 32, n = 0, r = Math.PI * 2) {
9419
9639
  super(), this.type = "CircleGeometry", this.parameters = {
9420
9640
  radius: e,
@@ -9437,7 +9657,7 @@ var qo = class extends Oo {
9437
9657
  static fromJSON(t) {
9438
9658
  return new e(t.radius, t.segments, t.thetaStart, t.thetaLength);
9439
9659
  }
9440
- }, is = class extends ns {
9660
+ }, ws = class extends Ss {
9441
9661
  constructor(e) {
9442
9662
  super(e), this.uuid = L(), this.type = "Shape", this.holes = [];
9443
9663
  }
@@ -9473,98 +9693,98 @@ var qo = class extends Oo {
9473
9693
  super.fromJSON(e), this.uuid = e.uuid, this.holes = [];
9474
9694
  for (let t = 0, n = e.holes.length; t < n; t++) {
9475
9695
  let n = e.holes[t];
9476
- this.holes.push(new ns().fromJSON(n));
9696
+ this.holes.push(new Ss().fromJSON(n));
9477
9697
  }
9478
9698
  return this;
9479
9699
  }
9480
- }, as = { triangulate: function(e, t, n = 2) {
9481
- let r = t && t.length, i = r ? t[0] * n : e.length, a = os(e, 0, i, n, !0), o = [];
9700
+ }, Ts = { triangulate: function(e, t, n = 2) {
9701
+ let r = t && t.length, i = r ? t[0] * n : e.length, a = Es(e, 0, i, n, !0), o = [];
9482
9702
  if (!a || a.next === a.prev) return o;
9483
9703
  let s, c, l, u, d, f, p;
9484
- if (r && (a = ps(e, t, a, n)), e.length > 80 * n) {
9704
+ if (r && (a = Ns(e, t, a, n)), e.length > 80 * n) {
9485
9705
  s = l = e[0], c = u = e[1];
9486
9706
  for (let t = n; t < i; t += n) d = e[t], f = e[t + 1], d < s && (s = d), f < c && (c = f), d > l && (l = d), f > u && (u = f);
9487
9707
  p = Math.max(l - s, u - c), p = p === 0 ? 0 : 32767 / p;
9488
9708
  }
9489
- return cs(a, o, n, s, c, p, 0), o;
9709
+ return Os(a, o, n, s, c, p, 0), o;
9490
9710
  } };
9491
- function os(e, t, n, r, i) {
9711
+ function Es(e, t, n, r, i) {
9492
9712
  let a, o;
9493
- if (i === Is(e, t, n, r) > 0) for (a = t; a < n; a += r) o = Ns(a, e[a], e[a + 1], o);
9494
- else for (a = n - r; a >= t; a -= r) o = Ns(a, e[a], e[a + 1], o);
9495
- return o && Ts(o, o.next) && (Ps(o), o = o.next), o;
9713
+ if (i === nc(e, t, n, r) > 0) for (a = t; a < n; a += r) o = $s(a, e[a], e[a + 1], o);
9714
+ else for (a = n - r; a >= t; a -= r) o = $s(a, e[a], e[a + 1], o);
9715
+ return o && Gs(o, o.next) && (ec(o), o = o.next), o;
9496
9716
  }
9497
- function ss(e, t) {
9717
+ function Ds(e, t) {
9498
9718
  if (!e) return e;
9499
9719
  t ||= e;
9500
9720
  let n = e, r;
9501
9721
  do
9502
- if (r = !1, !n.steiner && (Ts(n, n.next) || ws(n.prev, n, n.next) === 0)) {
9503
- if (Ps(n), n = t = n.prev, n === n.next) break;
9722
+ if (r = !1, !n.steiner && (Gs(n, n.next) || Ws(n.prev, n, n.next) === 0)) {
9723
+ if (ec(n), n = t = n.prev, n === n.next) break;
9504
9724
  r = !0;
9505
9725
  } else n = n.next;
9506
9726
  while (r || n !== t);
9507
9727
  return t;
9508
9728
  }
9509
- function cs(e, t, n, r, i, a, o) {
9729
+ function Os(e, t, n, r, i, a, o) {
9510
9730
  if (!e) return;
9511
- !o && a && vs(e, r, i, a);
9731
+ !o && a && Rs(e, r, i, a);
9512
9732
  let s = e, c, l;
9513
9733
  for (; e.prev !== e.next;) {
9514
- if (c = e.prev, l = e.next, a ? us(e, r, i, a) : ls(e)) {
9515
- t.push(c.i / n | 0), t.push(e.i / n | 0), t.push(l.i / n | 0), Ps(e), e = l.next, s = l.next;
9734
+ if (c = e.prev, l = e.next, a ? As(e, r, i, a) : ks(e)) {
9735
+ t.push(c.i / n | 0), t.push(e.i / n | 0), t.push(l.i / n | 0), ec(e), e = l.next, s = l.next;
9516
9736
  continue;
9517
9737
  }
9518
9738
  if (e = l, e === s) {
9519
- o ? o === 1 ? (e = ds(ss(e), t, n), cs(e, t, n, r, i, a, 2)) : o === 2 && fs(e, t, n, r, i, a) : cs(ss(e), t, n, r, i, a, 1);
9739
+ o ? o === 1 ? (e = js(Ds(e), t, n), Os(e, t, n, r, i, a, 2)) : o === 2 && Ms(e, t, n, r, i, a) : Os(Ds(e), t, n, r, i, a, 1);
9520
9740
  break;
9521
9741
  }
9522
9742
  }
9523
9743
  }
9524
- function ls(e) {
9744
+ function ks(e) {
9525
9745
  let t = e.prev, n = e, r = e.next;
9526
- if (ws(t, n, r) >= 0) return !1;
9746
+ if (Ws(t, n, r) >= 0) return !1;
9527
9747
  let i = t.x, a = n.x, o = r.x, s = t.y, c = n.y, l = r.y, u = i < a ? i < o ? i : o : a < o ? a : o, d = s < c ? s < l ? s : l : c < l ? c : l, f = i > a ? i > o ? i : o : a > o ? a : o, p = s > c ? s > l ? s : l : c > l ? c : l, m = r.next;
9528
9748
  for (; m !== t;) {
9529
- if (m.x >= u && m.x <= f && m.y >= d && m.y <= p && Ss(i, s, a, c, o, l, m.x, m.y) && ws(m.prev, m, m.next) >= 0) return !1;
9749
+ if (m.x >= u && m.x <= f && m.y >= d && m.y <= p && Hs(i, s, a, c, o, l, m.x, m.y) && Ws(m.prev, m, m.next) >= 0) return !1;
9530
9750
  m = m.next;
9531
9751
  }
9532
9752
  return !0;
9533
9753
  }
9534
- function us(e, t, n, r) {
9754
+ function As(e, t, n, r) {
9535
9755
  let i = e.prev, a = e, o = e.next;
9536
- if (ws(i, a, o) >= 0) return !1;
9537
- let s = i.x, c = a.x, l = o.x, u = i.y, d = a.y, f = o.y, p = s < c ? s < l ? s : l : c < l ? c : l, m = u < d ? u < f ? u : f : d < f ? d : f, h = s > c ? s > l ? s : l : c > l ? c : l, g = u > d ? u > f ? u : f : d > f ? d : f, _ = bs(p, m, t, n, r), v = bs(h, g, t, n, r), y = e.prevZ, b = e.nextZ;
9756
+ if (Ws(i, a, o) >= 0) return !1;
9757
+ let s = i.x, c = a.x, l = o.x, u = i.y, d = a.y, f = o.y, p = s < c ? s < l ? s : l : c < l ? c : l, m = u < d ? u < f ? u : f : d < f ? d : f, h = s > c ? s > l ? s : l : c > l ? c : l, g = u > d ? u > f ? u : f : d > f ? d : f, _ = Bs(p, m, t, n, r), v = Bs(h, g, t, n, r), y = e.prevZ, b = e.nextZ;
9538
9758
  for (; y && y.z >= _ && b && b.z <= v;) {
9539
- if (y.x >= p && y.x <= h && y.y >= m && y.y <= g && y !== i && y !== o && Ss(s, u, c, d, l, f, y.x, y.y) && ws(y.prev, y, y.next) >= 0 || (y = y.prevZ, b.x >= p && b.x <= h && b.y >= m && b.y <= g && b !== i && b !== o && Ss(s, u, c, d, l, f, b.x, b.y) && ws(b.prev, b, b.next) >= 0)) return !1;
9759
+ if (y.x >= p && y.x <= h && y.y >= m && y.y <= g && y !== i && y !== o && Hs(s, u, c, d, l, f, y.x, y.y) && Ws(y.prev, y, y.next) >= 0 || (y = y.prevZ, b.x >= p && b.x <= h && b.y >= m && b.y <= g && b !== i && b !== o && Hs(s, u, c, d, l, f, b.x, b.y) && Ws(b.prev, b, b.next) >= 0)) return !1;
9540
9760
  b = b.nextZ;
9541
9761
  }
9542
9762
  for (; y && y.z >= _;) {
9543
- if (y.x >= p && y.x <= h && y.y >= m && y.y <= g && y !== i && y !== o && Ss(s, u, c, d, l, f, y.x, y.y) && ws(y.prev, y, y.next) >= 0) return !1;
9763
+ if (y.x >= p && y.x <= h && y.y >= m && y.y <= g && y !== i && y !== o && Hs(s, u, c, d, l, f, y.x, y.y) && Ws(y.prev, y, y.next) >= 0) return !1;
9544
9764
  y = y.prevZ;
9545
9765
  }
9546
9766
  for (; b && b.z <= v;) {
9547
- if (b.x >= p && b.x <= h && b.y >= m && b.y <= g && b !== i && b !== o && Ss(s, u, c, d, l, f, b.x, b.y) && ws(b.prev, b, b.next) >= 0) return !1;
9767
+ if (b.x >= p && b.x <= h && b.y >= m && b.y <= g && b !== i && b !== o && Hs(s, u, c, d, l, f, b.x, b.y) && Ws(b.prev, b, b.next) >= 0) return !1;
9548
9768
  b = b.nextZ;
9549
9769
  }
9550
9770
  return !0;
9551
9771
  }
9552
- function ds(e, t, n) {
9772
+ function js(e, t, n) {
9553
9773
  let r = e;
9554
9774
  do {
9555
9775
  let i = r.prev, a = r.next.next;
9556
- !Ts(i, a) && Es(i, r, r.next, a) && As(i, a) && As(a, i) && (t.push(i.i / n | 0), t.push(r.i / n | 0), t.push(a.i / n | 0), Ps(r), Ps(r.next), r = e = a), r = r.next;
9776
+ !Gs(i, a) && Ks(i, r, r.next, a) && Xs(i, a) && Xs(a, i) && (t.push(i.i / n | 0), t.push(r.i / n | 0), t.push(a.i / n | 0), ec(r), ec(r.next), r = e = a), r = r.next;
9557
9777
  } while (r !== e);
9558
- return ss(r);
9778
+ return Ds(r);
9559
9779
  }
9560
- function fs(e, t, n, r, i, a) {
9780
+ function Ms(e, t, n, r, i, a) {
9561
9781
  let o = e;
9562
9782
  do {
9563
9783
  let e = o.next.next;
9564
9784
  for (; e !== o.prev;) {
9565
- if (o.i !== e.i && Cs(o, e)) {
9566
- let s = Ms(o, e);
9567
- o = ss(o, o.next), s = ss(s, s.next), cs(o, t, n, r, i, a, 0), cs(s, t, n, r, i, a, 0);
9785
+ if (o.i !== e.i && Us(o, e)) {
9786
+ let s = Qs(o, e);
9787
+ o = Ds(o, o.next), s = Ds(s, s.next), Os(o, t, n, r, i, a, 0), Os(s, t, n, r, i, a, 0);
9568
9788
  return;
9569
9789
  }
9570
9790
  e = e.next;
@@ -9572,22 +9792,22 @@ function fs(e, t, n, r, i, a) {
9572
9792
  o = o.next;
9573
9793
  } while (o !== e);
9574
9794
  }
9575
- function ps(e, t, n, r) {
9795
+ function Ns(e, t, n, r) {
9576
9796
  let i = [], a, o, s, c, l;
9577
- for (a = 0, o = t.length; a < o; a++) s = t[a] * r, c = a < o - 1 ? t[a + 1] * r : e.length, l = os(e, s, c, r, !1), l === l.next && (l.steiner = !0), i.push(xs(l));
9578
- for (i.sort(ms), a = 0; a < i.length; a++) n = hs(i[a], n);
9797
+ for (a = 0, o = t.length; a < o; a++) s = t[a] * r, c = a < o - 1 ? t[a + 1] * r : e.length, l = Es(e, s, c, r, !1), l === l.next && (l.steiner = !0), i.push(Vs(l));
9798
+ for (i.sort(Ps), a = 0; a < i.length; a++) n = Fs(i[a], n);
9579
9799
  return n;
9580
9800
  }
9581
- function ms(e, t) {
9801
+ function Ps(e, t) {
9582
9802
  return e.x - t.x;
9583
9803
  }
9584
- function hs(e, t) {
9585
- let n = gs(e, t);
9804
+ function Fs(e, t) {
9805
+ let n = Is(e, t);
9586
9806
  if (!n) return t;
9587
- let r = Ms(n, e);
9588
- return ss(r, r.next), ss(n, n.next);
9807
+ let r = Qs(n, e);
9808
+ return Ds(r, r.next), Ds(n, n.next);
9589
9809
  }
9590
- function gs(e, t) {
9810
+ function Is(e, t) {
9591
9811
  let n = t, r = -Infinity, i, a = e.x, o = e.y;
9592
9812
  do {
9593
9813
  if (o <= n.y && o >= n.next.y && n.next.y !== n.y) {
@@ -9600,21 +9820,21 @@ function gs(e, t) {
9600
9820
  let s = i, c = i.x, l = i.y, u = Infinity, d;
9601
9821
  n = i;
9602
9822
  do
9603
- a >= n.x && n.x >= c && a !== n.x && Ss(o < l ? a : r, o, c, l, o < l ? r : a, o, n.x, n.y) && (d = Math.abs(o - n.y) / (a - n.x), As(n, e) && (d < u || d === u && (n.x > i.x || n.x === i.x && _s(i, n))) && (i = n, u = d)), n = n.next;
9823
+ a >= n.x && n.x >= c && a !== n.x && Hs(o < l ? a : r, o, c, l, o < l ? r : a, o, n.x, n.y) && (d = Math.abs(o - n.y) / (a - n.x), Xs(n, e) && (d < u || d === u && (n.x > i.x || n.x === i.x && Ls(i, n))) && (i = n, u = d)), n = n.next;
9604
9824
  while (n !== s);
9605
9825
  return i;
9606
9826
  }
9607
- function _s(e, t) {
9608
- return ws(e.prev, e, t.prev) < 0 && ws(t.next, e, e.next) < 0;
9827
+ function Ls(e, t) {
9828
+ return Ws(e.prev, e, t.prev) < 0 && Ws(t.next, e, e.next) < 0;
9609
9829
  }
9610
- function vs(e, t, n, r) {
9830
+ function Rs(e, t, n, r) {
9611
9831
  let i = e;
9612
9832
  do
9613
- i.z === 0 && (i.z = bs(i.x, i.y, t, n, r)), i.prevZ = i.prev, i.nextZ = i.next, i = i.next;
9833
+ i.z === 0 && (i.z = Bs(i.x, i.y, t, n, r)), i.prevZ = i.prev, i.nextZ = i.next, i = i.next;
9614
9834
  while (i !== e);
9615
- i.prevZ.nextZ = null, i.prevZ = null, ys(i);
9835
+ i.prevZ.nextZ = null, i.prevZ = null, zs(i);
9616
9836
  }
9617
- function ys(e) {
9837
+ function zs(e) {
9618
9838
  let t, n, r, i, a, o, s, c, l = 1;
9619
9839
  do {
9620
9840
  for (n = e, e = null, a = null, o = 0; n;) {
@@ -9626,76 +9846,76 @@ function ys(e) {
9626
9846
  } while (o > 1);
9627
9847
  return e;
9628
9848
  }
9629
- function bs(e, t, n, r, i) {
9849
+ function Bs(e, t, n, r, i) {
9630
9850
  return e = (e - n) * i | 0, t = (t - r) * i | 0, e = (e | e << 8) & 16711935, e = (e | e << 4) & 252645135, e = (e | e << 2) & 858993459, e = (e | e << 1) & 1431655765, t = (t | t << 8) & 16711935, t = (t | t << 4) & 252645135, t = (t | t << 2) & 858993459, t = (t | t << 1) & 1431655765, e | t << 1;
9631
9851
  }
9632
- function xs(e) {
9852
+ function Vs(e) {
9633
9853
  let t = e, n = e;
9634
9854
  do
9635
9855
  (t.x < n.x || t.x === n.x && t.y < n.y) && (n = t), t = t.next;
9636
9856
  while (t !== e);
9637
9857
  return n;
9638
9858
  }
9639
- function Ss(e, t, n, r, i, a, o, s) {
9859
+ function Hs(e, t, n, r, i, a, o, s) {
9640
9860
  return (i - o) * (t - s) >= (e - o) * (a - s) && (e - o) * (r - s) >= (n - o) * (t - s) && (n - o) * (a - s) >= (i - o) * (r - s);
9641
9861
  }
9642
- function Cs(e, t) {
9643
- return e.next.i !== t.i && e.prev.i !== t.i && !ks(e, t) && (As(e, t) && As(t, e) && js(e, t) && (ws(e.prev, e, t.prev) || ws(e, t.prev, t)) || Ts(e, t) && ws(e.prev, e, e.next) > 0 && ws(t.prev, t, t.next) > 0);
9862
+ function Us(e, t) {
9863
+ return e.next.i !== t.i && e.prev.i !== t.i && !Ys(e, t) && (Xs(e, t) && Xs(t, e) && Zs(e, t) && (Ws(e.prev, e, t.prev) || Ws(e, t.prev, t)) || Gs(e, t) && Ws(e.prev, e, e.next) > 0 && Ws(t.prev, t, t.next) > 0);
9644
9864
  }
9645
- function ws(e, t, n) {
9865
+ function Ws(e, t, n) {
9646
9866
  return (t.y - e.y) * (n.x - t.x) - (t.x - e.x) * (n.y - t.y);
9647
9867
  }
9648
- function Ts(e, t) {
9868
+ function Gs(e, t) {
9649
9869
  return e.x === t.x && e.y === t.y;
9650
9870
  }
9651
- function Es(e, t, n, r) {
9652
- let i = Os(ws(e, t, n)), a = Os(ws(e, t, r)), o = Os(ws(n, r, e)), s = Os(ws(n, r, t));
9653
- return !!(i !== a && o !== s || i === 0 && Ds(e, n, t) || a === 0 && Ds(e, r, t) || o === 0 && Ds(n, e, r) || s === 0 && Ds(n, t, r));
9871
+ function Ks(e, t, n, r) {
9872
+ let i = Js(Ws(e, t, n)), a = Js(Ws(e, t, r)), o = Js(Ws(n, r, e)), s = Js(Ws(n, r, t));
9873
+ return !!(i !== a && o !== s || i === 0 && qs(e, n, t) || a === 0 && qs(e, r, t) || o === 0 && qs(n, e, r) || s === 0 && qs(n, t, r));
9654
9874
  }
9655
- function Ds(e, t, n) {
9875
+ function qs(e, t, n) {
9656
9876
  return t.x <= Math.max(e.x, n.x) && t.x >= Math.min(e.x, n.x) && t.y <= Math.max(e.y, n.y) && t.y >= Math.min(e.y, n.y);
9657
9877
  }
9658
- function Os(e) {
9878
+ function Js(e) {
9659
9879
  return e > 0 ? 1 : e < 0 ? -1 : 0;
9660
9880
  }
9661
- function ks(e, t) {
9881
+ function Ys(e, t) {
9662
9882
  let n = e;
9663
9883
  do {
9664
- if (n.i !== e.i && n.next.i !== e.i && n.i !== t.i && n.next.i !== t.i && Es(n, n.next, e, t)) return !0;
9884
+ if (n.i !== e.i && n.next.i !== e.i && n.i !== t.i && n.next.i !== t.i && Ks(n, n.next, e, t)) return !0;
9665
9885
  n = n.next;
9666
9886
  } while (n !== e);
9667
9887
  return !1;
9668
9888
  }
9669
- function As(e, t) {
9670
- return ws(e.prev, e, e.next) < 0 ? ws(e, t, e.next) >= 0 && ws(e, e.prev, t) >= 0 : ws(e, t, e.prev) < 0 || ws(e, e.next, t) < 0;
9889
+ function Xs(e, t) {
9890
+ return Ws(e.prev, e, e.next) < 0 ? Ws(e, t, e.next) >= 0 && Ws(e, e.prev, t) >= 0 : Ws(e, t, e.prev) < 0 || Ws(e, e.next, t) < 0;
9671
9891
  }
9672
- function js(e, t) {
9892
+ function Zs(e, t) {
9673
9893
  let n = e, r = !1, i = (e.x + t.x) / 2, a = (e.y + t.y) / 2;
9674
9894
  do
9675
9895
  n.y > a != n.next.y > a && n.next.y !== n.y && i < (n.next.x - n.x) * (a - n.y) / (n.next.y - n.y) + n.x && (r = !r), n = n.next;
9676
9896
  while (n !== e);
9677
9897
  return r;
9678
9898
  }
9679
- function Ms(e, t) {
9680
- let n = new Fs(e.i, e.x, e.y), r = new Fs(t.i, t.x, t.y), i = e.next, a = t.prev;
9899
+ function Qs(e, t) {
9900
+ let n = new tc(e.i, e.x, e.y), r = new tc(t.i, t.x, t.y), i = e.next, a = t.prev;
9681
9901
  return e.next = t, t.prev = e, n.next = i, i.prev = n, r.next = n, n.prev = r, a.next = r, r.prev = a, r;
9682
9902
  }
9683
- function Ns(e, t, n, r) {
9684
- let i = new Fs(e, t, n);
9903
+ function $s(e, t, n, r) {
9904
+ let i = new tc(e, t, n);
9685
9905
  return r ? (i.next = r.next, i.prev = r, r.next.prev = i, r.next = i) : (i.prev = i, i.next = i), i;
9686
9906
  }
9687
- function Ps(e) {
9907
+ function ec(e) {
9688
9908
  e.next.prev = e.prev, e.prev.next = e.next, e.prevZ && (e.prevZ.nextZ = e.nextZ), e.nextZ && (e.nextZ.prevZ = e.prevZ);
9689
9909
  }
9690
- function Fs(e, t, n) {
9910
+ function tc(e, t, n) {
9691
9911
  this.i = e, this.x = t, this.y = n, this.prev = null, this.next = null, this.z = 0, this.prevZ = null, this.nextZ = null, this.steiner = !1;
9692
9912
  }
9693
- function Is(e, t, n, r) {
9913
+ function nc(e, t, n, r) {
9694
9914
  let i = 0;
9695
9915
  for (let a = t, o = n - r; a < n; a += r) i += (e[o] - e[a]) * (e[a + 1] + e[o + 1]), o = a;
9696
9916
  return i;
9697
9917
  }
9698
- var Ls = class e {
9918
+ var rc = class e {
9699
9919
  static area(e) {
9700
9920
  let t = e.length, n = 0;
9701
9921
  for (let r = t - 1, i = 0; i < t; r = i++) n += e[r].x * e[i].y - e[i].x * e[r].y;
@@ -9706,23 +9926,23 @@ var Ls = class e {
9706
9926
  }
9707
9927
  static triangulateShape(e, t) {
9708
9928
  let n = [], r = [], i = [];
9709
- Rs(e), zs(n, e);
9929
+ ic(e), ac(n, e);
9710
9930
  let a = e.length;
9711
- t.forEach(Rs);
9712
- for (let e = 0; e < t.length; e++) r.push(a), a += t[e].length, zs(n, t[e]);
9713
- let o = as.triangulate(n, r);
9931
+ t.forEach(ic);
9932
+ for (let e = 0; e < t.length; e++) r.push(a), a += t[e].length, ac(n, t[e]);
9933
+ let o = Ts.triangulate(n, r);
9714
9934
  for (let e = 0; e < o.length; e += 3) i.push(o.slice(e, e + 3));
9715
9935
  return i;
9716
9936
  }
9717
9937
  };
9718
- function Rs(e) {
9938
+ function ic(e) {
9719
9939
  let t = e.length;
9720
9940
  t > 2 && e[t - 1].equals(e[0]) && e.pop();
9721
9941
  }
9722
- function zs(e, t) {
9942
+ function ac(e, t) {
9723
9943
  for (let n = 0; n < t.length; n++) e.push(t[n].x), e.push(t[n].y);
9724
9944
  }
9725
- var Bs = class e extends Dn {
9945
+ var oc = class e extends Dn {
9726
9946
  constructor(e = .5, t = 1, n = 32, r = 1, i = 0, a = Math.PI * 2) {
9727
9947
  super(), this.type = "RingGeometry", this.parameters = {
9728
9948
  innerRadius: e,
@@ -9755,8 +9975,8 @@ var Bs = class e extends Dn {
9755
9975
  static fromJSON(t) {
9756
9976
  return new e(t.innerRadius, t.outerRadius, t.thetaSegments, t.phiSegments, t.thetaStart, t.thetaLength);
9757
9977
  }
9758
- }, Vs = class e extends Dn {
9759
- constructor(e = new is([
9978
+ }, sc = class e extends Dn {
9979
+ constructor(e = new ws([
9760
9980
  new K(0, .5),
9761
9981
  new K(-.5, -.5),
9762
9982
  new K(.5, -.5)
@@ -9771,12 +9991,12 @@ var Bs = class e extends Dn {
9771
9991
  this.setIndex(n), this.setAttribute("position", new yn(r, 3)), this.setAttribute("normal", new yn(i, 3)), this.setAttribute("uv", new yn(a, 2));
9772
9992
  function c(e) {
9773
9993
  let o = r.length / 3, c = e.extractPoints(t), l = c.shape, u = c.holes;
9774
- Ls.isClockWise(l) === !1 && (l = l.reverse());
9994
+ rc.isClockWise(l) === !1 && (l = l.reverse());
9775
9995
  for (let e = 0, t = u.length; e < t; e++) {
9776
9996
  let t = u[e];
9777
- Ls.isClockWise(t) === !0 && (u[e] = t.reverse());
9997
+ rc.isClockWise(t) === !0 && (u[e] = t.reverse());
9778
9998
  }
9779
- let d = Ls.triangulateShape(l, u);
9999
+ let d = rc.triangulateShape(l, u);
9780
10000
  for (let e = 0, t = u.length; e < t; e++) {
9781
10001
  let t = u[e];
9782
10002
  l = l.concat(t);
@@ -9796,7 +10016,7 @@ var Bs = class e extends Dn {
9796
10016
  }
9797
10017
  toJSON() {
9798
10018
  let e = super.toJSON(), t = this.parameters.shapes;
9799
- return Hs(t, e);
10019
+ return cc(t, e);
9800
10020
  }
9801
10021
  static fromJSON(t, n) {
9802
10022
  let r = [];
@@ -9807,7 +10027,7 @@ var Bs = class e extends Dn {
9807
10027
  return new e(r, t.curveSegments);
9808
10028
  }
9809
10029
  };
9810
- function Hs(e, t) {
10030
+ function cc(e, t) {
9811
10031
  if (t.shapes = [], Array.isArray(e)) for (let n = 0, r = e.length; n < r; n++) {
9812
10032
  let r = e[n];
9813
10033
  t.shapes.push(r.uuid);
@@ -9815,7 +10035,7 @@ function Hs(e, t) {
9815
10035
  else t.shapes.push(e.uuid);
9816
10036
  return t;
9817
10037
  }
9818
- var Us = class e extends Dn {
10038
+ var lc = class e extends Dn {
9819
10039
  constructor(e = 1, t = 32, n = 16, r = 0, i = Math.PI * 2, a = 0, o = Math.PI) {
9820
10040
  super(), this.type = "SphereGeometry", this.parameters = {
9821
10041
  radius: e,
@@ -9848,7 +10068,7 @@ var Us = class e extends Dn {
9848
10068
  static fromJSON(t) {
9849
10069
  return new e(t.radius, t.widthSegments, t.heightSegments, t.phiStart, t.phiLength, t.thetaStart, t.thetaLength);
9850
10070
  }
9851
- }, Ws = class extends bo {
10071
+ }, uc = class extends zo {
9852
10072
  constructor(e) {
9853
10073
  super(), this.isLineDashedMaterial = !0, this.type = "LineDashedMaterial", this.scale = 1, this.dashSize = 3, this.gapSize = 1, this.setValues(e);
9854
10074
  }
@@ -9856,13 +10076,13 @@ var Us = class e extends Dn {
9856
10076
  return super.copy(e), this.scale = e.scale, this.dashSize = e.dashSize, this.gapSize = e.gapSize, this;
9857
10077
  }
9858
10078
  };
9859
- function Gs(e, t, n) {
10079
+ function dc(e, t, n) {
9860
10080
  return !e || !n && e.constructor === t ? e : typeof t.BYTES_PER_ELEMENT == "number" ? new t(e) : Array.prototype.slice.call(e);
9861
10081
  }
9862
- function Ks(e) {
10082
+ function fc(e) {
9863
10083
  return ArrayBuffer.isView(e) && !(e instanceof DataView);
9864
10084
  }
9865
- var qs = class {
10085
+ var pc = class {
9866
10086
  constructor(e, t, n, r) {
9867
10087
  this.parameterPositions = e, this._cachedIndex = 0, this.resultBuffer = r === void 0 ? new t.constructor(n) : r, this.sampleValues = t, this.valueSize = n, this.settings = null, this.DefaultSettings_ = {};
9868
10088
  }
@@ -9920,7 +10140,7 @@ var qs = class {
9920
10140
  throw Error("call to abstract method");
9921
10141
  }
9922
10142
  intervalChanged_() {}
9923
- }, Js = class extends qs {
10143
+ }, mc = class extends pc {
9924
10144
  constructor(e, t, n, r) {
9925
10145
  super(e, t, n, r), this._weightPrev = -0, this._offsetPrev = -0, this._weightNext = -0, this._offsetNext = -0, this.DefaultSettings_ = {
9926
10146
  endingStart: S,
@@ -9955,7 +10175,7 @@ var qs = class {
9955
10175
  for (let e = 0; e !== o; ++e) i[e] = g * a[l + e] + _ * a[c + e] + v * a[s + e] + y * a[u + e];
9956
10176
  return i;
9957
10177
  }
9958
- }, Ys = class extends qs {
10178
+ }, hc = class extends pc {
9959
10179
  constructor(e, t, n, r) {
9960
10180
  super(e, t, n, r);
9961
10181
  }
@@ -9964,18 +10184,18 @@ var qs = class {
9964
10184
  for (let e = 0; e !== o; ++e) i[e] = a[c + e] * u + a[s + e] * l;
9965
10185
  return i;
9966
10186
  }
9967
- }, Xs = class extends qs {
10187
+ }, gc = class extends pc {
9968
10188
  constructor(e, t, n, r) {
9969
10189
  super(e, t, n, r);
9970
10190
  }
9971
10191
  interpolate_(e) {
9972
10192
  return this.copySampleValue_(e - 1);
9973
10193
  }
9974
- }, Zs = class {
10194
+ }, _c = class {
9975
10195
  constructor(e, t, n, r) {
9976
10196
  if (e === void 0) throw Error("THREE.KeyframeTrack: track name is undefined");
9977
10197
  if (t === void 0 || t.length === 0) throw Error("THREE.KeyframeTrack: no keyframes in track named " + e);
9978
- this.name = e, this.times = Gs(t, this.TimeBufferType), this.values = Gs(n, this.ValueBufferType), this.setInterpolation(r || this.DefaultInterpolation);
10198
+ this.name = e, this.times = dc(t, this.TimeBufferType), this.values = dc(n, this.ValueBufferType), this.setInterpolation(r || this.DefaultInterpolation);
9979
10199
  }
9980
10200
  static toJSON(e) {
9981
10201
  let t = e.constructor, n;
@@ -9983,8 +10203,8 @@ var qs = class {
9983
10203
  else {
9984
10204
  n = {
9985
10205
  name: e.name,
9986
- times: Gs(e.times, Array),
9987
- values: Gs(e.values, Array)
10206
+ times: dc(e.times, Array),
10207
+ values: dc(e.values, Array)
9988
10208
  };
9989
10209
  let t = e.getInterpolation();
9990
10210
  t !== e.DefaultInterpolation && (n.interpolation = t);
@@ -9992,13 +10212,13 @@ var qs = class {
9992
10212
  return n.type = e.ValueTypeName, n;
9993
10213
  }
9994
10214
  InterpolantFactoryMethodDiscrete(e) {
9995
- return new Xs(this.times, this.values, this.getValueSize(), e);
10215
+ return new gc(this.times, this.values, this.getValueSize(), e);
9996
10216
  }
9997
10217
  InterpolantFactoryMethodLinear(e) {
9998
- return new Ys(this.times, this.values, this.getValueSize(), e);
10218
+ return new hc(this.times, this.values, this.getValueSize(), e);
9999
10219
  }
10000
10220
  InterpolantFactoryMethodSmooth(e) {
10001
- return new Js(this.times, this.values, this.getValueSize(), e);
10221
+ return new mc(this.times, this.values, this.getValueSize(), e);
10002
10222
  }
10003
10223
  setInterpolation(e) {
10004
10224
  let t;
@@ -10074,7 +10294,7 @@ var qs = class {
10074
10294
  }
10075
10295
  a = r;
10076
10296
  }
10077
- if (r !== void 0 && Ks(r)) for (let t = 0, n = r.length; t !== n; ++t) {
10297
+ if (r !== void 0 && fc(r)) for (let t = 0, n = r.length; t !== n; ++t) {
10078
10298
  let n = r[t];
10079
10299
  if (isNaN(n)) {
10080
10300
  console.error("THREE.KeyframeTrack: Value is not a valid number.", this, t, n), e = !1;
@@ -10119,14 +10339,14 @@ var qs = class {
10119
10339
  return r.createInterpolant = this.createInterpolant, r;
10120
10340
  }
10121
10341
  };
10122
- Zs.prototype.TimeBufferType = Float32Array, Zs.prototype.ValueBufferType = Float32Array, Zs.prototype.DefaultInterpolation = b;
10123
- var Qs = class extends Zs {};
10124
- Qs.prototype.ValueTypeName = "bool", Qs.prototype.ValueBufferType = Array, Qs.prototype.DefaultInterpolation = y, Qs.prototype.InterpolantFactoryMethodLinear = void 0, Qs.prototype.InterpolantFactoryMethodSmooth = void 0;
10125
- var $s = class extends Zs {};
10126
- $s.prototype.ValueTypeName = "color";
10127
- var ec = class extends Zs {};
10128
- ec.prototype.ValueTypeName = "number";
10129
- var tc = class extends qs {
10342
+ _c.prototype.TimeBufferType = Float32Array, _c.prototype.ValueBufferType = Float32Array, _c.prototype.DefaultInterpolation = b;
10343
+ var vc = class extends _c {};
10344
+ vc.prototype.ValueTypeName = "bool", vc.prototype.ValueBufferType = Array, vc.prototype.DefaultInterpolation = y, vc.prototype.InterpolantFactoryMethodLinear = void 0, vc.prototype.InterpolantFactoryMethodSmooth = void 0;
10345
+ var yc = class extends _c {};
10346
+ yc.prototype.ValueTypeName = "color";
10347
+ var bc = class extends _c {};
10348
+ bc.prototype.ValueTypeName = "number";
10349
+ var xc = class extends pc {
10130
10350
  constructor(e, t, n, r) {
10131
10351
  super(e, t, n, r);
10132
10352
  }
@@ -10135,17 +10355,17 @@ var tc = class extends qs {
10135
10355
  for (let e = c + o; c !== e; c += 4) Ge.slerpFlat(i, 0, a, c - o, a, c, s);
10136
10356
  return i;
10137
10357
  }
10138
- }, nc = class extends Zs {
10358
+ }, Sc = class extends _c {
10139
10359
  InterpolantFactoryMethodLinear(e) {
10140
- return new tc(this.times, this.values, this.getValueSize(), e);
10360
+ return new xc(this.times, this.values, this.getValueSize(), e);
10141
10361
  }
10142
10362
  };
10143
- nc.prototype.ValueTypeName = "quaternion", nc.prototype.DefaultInterpolation = b, nc.prototype.InterpolantFactoryMethodSmooth = void 0;
10144
- var rc = class extends Zs {};
10145
- rc.prototype.ValueTypeName = "string", rc.prototype.ValueBufferType = Array, rc.prototype.DefaultInterpolation = y, rc.prototype.InterpolantFactoryMethodLinear = void 0, rc.prototype.InterpolantFactoryMethodSmooth = void 0;
10146
- var ic = class extends Zs {};
10147
- ic.prototype.ValueTypeName = "vector";
10148
- var ac = {
10363
+ Sc.prototype.ValueTypeName = "quaternion", Sc.prototype.DefaultInterpolation = b, Sc.prototype.InterpolantFactoryMethodSmooth = void 0;
10364
+ var Cc = class extends _c {};
10365
+ Cc.prototype.ValueTypeName = "string", Cc.prototype.ValueBufferType = Array, Cc.prototype.DefaultInterpolation = y, Cc.prototype.InterpolantFactoryMethodLinear = void 0, Cc.prototype.InterpolantFactoryMethodSmooth = void 0;
10366
+ var wc = class extends _c {};
10367
+ wc.prototype.ValueTypeName = "vector";
10368
+ var Tc = {
10149
10369
  enabled: !1,
10150
10370
  files: {},
10151
10371
  add: function(e, t) {
@@ -10160,7 +10380,7 @@ var ac = {
10160
10380
  clear: function() {
10161
10381
  this.files = {};
10162
10382
  }
10163
- }, oc = /*@__PURE__*/ new class {
10383
+ }, Ec = /*@__PURE__*/ new class {
10164
10384
  constructor(e, t, n) {
10165
10385
  let r = this, i = !1, a = 0, o = 0, s, c = [];
10166
10386
  this.onStart = void 0, this.onLoad = e, this.onProgress = t, this.onError = n, this.itemStart = function(e) {
@@ -10186,9 +10406,9 @@ var ac = {
10186
10406
  return null;
10187
10407
  };
10188
10408
  }
10189
- }(), sc = class {
10409
+ }(), Dc = class {
10190
10410
  constructor(e) {
10191
- this.manager = e === void 0 ? oc : e, this.crossOrigin = "anonymous", this.withCredentials = !1, this.path = "", this.resourcePath = "", this.requestHeader = {};
10411
+ this.manager = e === void 0 ? Ec : e, this.crossOrigin = "anonymous", this.withCredentials = !1, this.path = "", this.resourcePath = "", this.requestHeader = {};
10192
10412
  }
10193
10413
  load() {}
10194
10414
  loadAsync(e, t) {
@@ -10214,20 +10434,20 @@ var ac = {
10214
10434
  return this.requestHeader = e, this;
10215
10435
  }
10216
10436
  };
10217
- sc.DEFAULT_MATERIAL_NAME = "__DEFAULT";
10218
- var cc = class extends sc {
10437
+ Dc.DEFAULT_MATERIAL_NAME = "__DEFAULT";
10438
+ var Oc = class extends Dc {
10219
10439
  constructor(e) {
10220
10440
  super(e);
10221
10441
  }
10222
10442
  load(e, t, n, r) {
10223
10443
  this.path !== void 0 && (e = this.path + e), e = this.manager.resolveURL(e);
10224
- let i = this, a = ac.get(e);
10444
+ let i = this, a = Tc.get(e);
10225
10445
  if (a !== void 0) return i.manager.itemStart(e), setTimeout(function() {
10226
10446
  t && t(a), i.manager.itemEnd(e);
10227
10447
  }, 0), a;
10228
10448
  let o = Ce("img");
10229
10449
  function s() {
10230
- l(), ac.add(e, this), t && t(this), i.manager.itemEnd(e);
10450
+ l(), Tc.add(e, this), t && t(this), i.manager.itemEnd(e);
10231
10451
  }
10232
10452
  function c(t) {
10233
10453
  l(), r && r(t), i.manager.itemError(e), i.manager.itemEnd(e);
@@ -10237,24 +10457,24 @@ var cc = class extends sc {
10237
10457
  }
10238
10458
  return o.addEventListener("load", s, !1), o.addEventListener("error", c, !1), e.slice(0, 5) !== "data:" && this.crossOrigin !== void 0 && (o.crossOrigin = this.crossOrigin), i.manager.itemStart(e), o.src = e, o;
10239
10459
  }
10240
- }, lc = class extends sc {
10460
+ }, kc = class extends Dc {
10241
10461
  constructor(e) {
10242
10462
  super(e);
10243
10463
  }
10244
10464
  load(e, t, n, r) {
10245
- let i = new ze(), a = new cc(this.manager);
10465
+ let i = new ze(), a = new Oc(this.manager);
10246
10466
  return a.setCrossOrigin(this.crossOrigin), a.setPath(this.path), a.load(e, function(e) {
10247
10467
  i.image = e, i.needsUpdate = !0, t !== void 0 && t(i);
10248
10468
  }, n, r), i;
10249
10469
  }
10250
- }, uc = "\\[\\]\\.:\\/", dc = /* @__PURE__ */ RegExp("[\\[\\]\\.:\\/]", "g"), fc = "[^\\[\\]\\.:\\/]", pc = "[^" + uc.replace("\\.", "") + "]", mc = /*@__PURE__*/ "((?:WC+[\\/:])*)".replace("WC", fc), hc = /*@__PURE__*/ "(WCOD+)?".replace("WCOD", pc), gc = /*@__PURE__*/ "(?:\\.(WC+)(?:\\[(.+)\\])?)?".replace("WC", fc), _c = /*@__PURE__*/ "\\.(WC+)(?:\\[(.+)\\])?".replace("WC", fc), vc = RegExp("^" + mc + hc + gc + _c + "$"), yc = [
10470
+ }, Ac = "\\[\\]\\.:\\/", jc = /* @__PURE__ */ RegExp("[\\[\\]\\.:\\/]", "g"), Mc = "[^\\[\\]\\.:\\/]", Nc = "[^" + Ac.replace("\\.", "") + "]", Pc = /*@__PURE__*/ "((?:WC+[\\/:])*)".replace("WC", Mc), Fc = /*@__PURE__*/ "(WCOD+)?".replace("WCOD", Nc), Ic = /*@__PURE__*/ "(?:\\.(WC+)(?:\\[(.+)\\])?)?".replace("WC", Mc), Lc = /*@__PURE__*/ "\\.(WC+)(?:\\[(.+)\\])?".replace("WC", Mc), Rc = RegExp("^" + Pc + Fc + Ic + Lc + "$"), zc = [
10251
10471
  "material",
10252
10472
  "materials",
10253
10473
  "bones",
10254
10474
  "map"
10255
- ], bc = class {
10475
+ ], Bc = class {
10256
10476
  constructor(e, t, n) {
10257
- let r = n || xc.parseTrackName(t);
10477
+ let r = n || Vc.parseTrackName(t);
10258
10478
  this._targetGroup = e, this._bindings = e.subscribe_(t, r);
10259
10479
  }
10260
10480
  getValue(e, t) {
@@ -10274,7 +10494,7 @@ var cc = class extends sc {
10274
10494
  let e = this._bindings;
10275
10495
  for (let t = this._targetGroup.nCachedObjects_, n = e.length; t !== n; ++t) e[t].unbind();
10276
10496
  }
10277
- }, xc = class e {
10497
+ }, Vc = class e {
10278
10498
  constructor(t, n, r) {
10279
10499
  this.path = n, this.parsedPath = r || e.parseTrackName(n), this.node = e.findNode(t, this.parsedPath.nodeName), this.rootNode = t, this.getValue = this._getValue_unbound, this.setValue = this._setValue_unbound;
10280
10500
  }
@@ -10282,10 +10502,10 @@ var cc = class extends sc {
10282
10502
  return t && t.isAnimationObjectGroup ? new e.Composite(t, n, r) : new e(t, n, r);
10283
10503
  }
10284
10504
  static sanitizeNodeName(e) {
10285
- return e.replace(/\s/g, "_").replace(dc, "");
10505
+ return e.replace(/\s/g, "_").replace(jc, "");
10286
10506
  }
10287
10507
  static parseTrackName(e) {
10288
- let t = vc.exec(e);
10508
+ let t = Rc.exec(e);
10289
10509
  if (t === null) throw Error("PropertyBinding: Cannot parse trackName: " + e);
10290
10510
  let n = {
10291
10511
  nodeName: t[2],
@@ -10296,7 +10516,7 @@ var cc = class extends sc {
10296
10516
  }, r = n.nodeName && n.nodeName.lastIndexOf(".");
10297
10517
  if (r !== void 0 && r !== -1) {
10298
10518
  let e = n.nodeName.substring(r + 1);
10299
- yc.indexOf(e) !== -1 && (n.nodeName = n.nodeName.substring(0, r), n.objectName = e);
10519
+ zc.indexOf(e) !== -1 && (n.nodeName = n.nodeName.substring(0, r), n.objectName = e);
10300
10520
  }
10301
10521
  if (n.propertyName === null || n.propertyName.length === 0) throw Error("PropertyBinding: can not parse propertyName from trackName: " + e);
10302
10522
  return n;
@@ -10473,43 +10693,43 @@ var cc = class extends sc {
10473
10693
  this.node = null, this.getValue = this._getValue_unbound, this.setValue = this._setValue_unbound;
10474
10694
  }
10475
10695
  };
10476
- xc.Composite = bc, xc.prototype.BindingType = {
10696
+ Vc.Composite = Bc, Vc.prototype.BindingType = {
10477
10697
  Direct: 0,
10478
10698
  EntireArray: 1,
10479
10699
  ArrayElement: 2,
10480
10700
  HasFromToArray: 3
10481
- }, xc.prototype.Versioning = {
10701
+ }, Vc.prototype.Versioning = {
10482
10702
  None: 0,
10483
10703
  NeedsUpdate: 1,
10484
10704
  MatrixWorldNeedsUpdate: 2
10485
- }, xc.prototype.GetterByBindingType = [
10486
- xc.prototype._getValue_direct,
10487
- xc.prototype._getValue_array,
10488
- xc.prototype._getValue_arrayElement,
10489
- xc.prototype._getValue_toArray
10490
- ], xc.prototype.SetterByBindingTypeAndVersioning = [
10705
+ }, Vc.prototype.GetterByBindingType = [
10706
+ Vc.prototype._getValue_direct,
10707
+ Vc.prototype._getValue_array,
10708
+ Vc.prototype._getValue_arrayElement,
10709
+ Vc.prototype._getValue_toArray
10710
+ ], Vc.prototype.SetterByBindingTypeAndVersioning = [
10491
10711
  [
10492
- xc.prototype._setValue_direct,
10493
- xc.prototype._setValue_direct_setNeedsUpdate,
10494
- xc.prototype._setValue_direct_setMatrixWorldNeedsUpdate
10712
+ Vc.prototype._setValue_direct,
10713
+ Vc.prototype._setValue_direct_setNeedsUpdate,
10714
+ Vc.prototype._setValue_direct_setMatrixWorldNeedsUpdate
10495
10715
  ],
10496
10716
  [
10497
- xc.prototype._setValue_array,
10498
- xc.prototype._setValue_array_setNeedsUpdate,
10499
- xc.prototype._setValue_array_setMatrixWorldNeedsUpdate
10717
+ Vc.prototype._setValue_array,
10718
+ Vc.prototype._setValue_array_setNeedsUpdate,
10719
+ Vc.prototype._setValue_array_setMatrixWorldNeedsUpdate
10500
10720
  ],
10501
10721
  [
10502
- xc.prototype._setValue_arrayElement,
10503
- xc.prototype._setValue_arrayElement_setNeedsUpdate,
10504
- xc.prototype._setValue_arrayElement_setMatrixWorldNeedsUpdate
10722
+ Vc.prototype._setValue_arrayElement,
10723
+ Vc.prototype._setValue_arrayElement_setNeedsUpdate,
10724
+ Vc.prototype._setValue_arrayElement_setMatrixWorldNeedsUpdate
10505
10725
  ],
10506
10726
  [
10507
- xc.prototype._setValue_fromArray,
10508
- xc.prototype._setValue_fromArray_setNeedsUpdate,
10509
- xc.prototype._setValue_fromArray_setMatrixWorldNeedsUpdate
10727
+ Vc.prototype._setValue_fromArray,
10728
+ Vc.prototype._setValue_fromArray_setNeedsUpdate,
10729
+ Vc.prototype._setValue_fromArray_setMatrixWorldNeedsUpdate
10510
10730
  ]
10511
10731
  ];
10512
- var Sc = class {
10732
+ var Hc = class {
10513
10733
  constructor(e, t, n = 0, r = Infinity) {
10514
10734
  this.ray = new bt(e, t), this.near = n, this.far = r, this.camera = null, this.layers = new Mt(), this.params = {
10515
10735
  Mesh: {},
@@ -10526,26 +10746,26 @@ var Sc = class {
10526
10746
  t.isPerspectiveCamera ? (this.ray.origin.setFromMatrixPosition(t.matrixWorld), this.ray.direction.set(e.x, e.y, .5).unproject(t).sub(this.ray.origin).normalize(), this.camera = t) : t.isOrthographicCamera ? (this.ray.origin.set(e.x, e.y, (t.near + t.far) / (t.near - t.far)).unproject(t), this.ray.direction.set(0, 0, -1).transformDirection(t.matrixWorld), this.camera = t) : console.error("THREE.Raycaster: Unsupported camera type: " + t.type);
10527
10747
  }
10528
10748
  intersectObject(e, t = !0, n = []) {
10529
- return wc(e, this, n, t), n.sort(Cc), n;
10749
+ return Wc(e, this, n, t), n.sort(Uc), n;
10530
10750
  }
10531
10751
  intersectObjects(e, t = !0, n = []) {
10532
- for (let r = 0, i = e.length; r < i; r++) wc(e[r], this, n, t);
10533
- return n.sort(Cc), n;
10752
+ for (let r = 0, i = e.length; r < i; r++) Wc(e[r], this, n, t);
10753
+ return n.sort(Uc), n;
10534
10754
  }
10535
10755
  };
10536
- function Cc(e, t) {
10756
+ function Uc(e, t) {
10537
10757
  return e.distance - t.distance;
10538
10758
  }
10539
- function wc(e, t, n, r) {
10759
+ function Wc(e, t, n, r) {
10540
10760
  if (e.layers.test(t.layers) && e.raycast(t, n), r === !0) {
10541
10761
  let r = e.children;
10542
- for (let e = 0, i = r.length; e < i; e++) wc(r[e], t, n, !0);
10762
+ for (let e = 0, i = r.length; e < i; e++) Wc(r[e], t, n, !0);
10543
10763
  }
10544
10764
  }
10545
10765
  typeof __THREE_DEVTOOLS__ < "u" && __THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("register", { detail: { revision: "159" } })), typeof window < "u" && (window.__THREE__ ? console.warn("WARNING: Multiple instances of Three.js being imported.") : window.__THREE__ = "159");
10546
10766
  //#endregion
10547
10767
  //#region ../../node_modules/@tweenjs/tween.js/dist/tween.esm.js
10548
- var Tc = {
10768
+ var Gc = {
10549
10769
  Linear: { None: function(e) {
10550
10770
  return e;
10551
10771
  } },
@@ -10653,21 +10873,21 @@ var Tc = {
10653
10873
  },
10654
10874
  Bounce: {
10655
10875
  In: function(e) {
10656
- return 1 - Tc.Bounce.Out(1 - e);
10876
+ return 1 - Gc.Bounce.Out(1 - e);
10657
10877
  },
10658
10878
  Out: function(e) {
10659
10879
  return e < 1 / 2.75 ? 7.5625 * e * e : e < 2 / 2.75 ? 7.5625 * (e -= 1.5 / 2.75) * e + .75 : e < 2.5 / 2.75 ? 7.5625 * (e -= 2.25 / 2.75) * e + .9375 : 7.5625 * (e -= 2.625 / 2.75) * e + .984375;
10660
10880
  },
10661
10881
  InOut: function(e) {
10662
- return e < .5 ? Tc.Bounce.In(e * 2) * .5 : Tc.Bounce.Out(e * 2 - 1) * .5 + .5;
10882
+ return e < .5 ? Gc.Bounce.In(e * 2) * .5 : Gc.Bounce.Out(e * 2 - 1) * .5 + .5;
10663
10883
  }
10664
10884
  }
10665
- }, Ec = typeof self > "u" && typeof process < "u" && process.hrtime ? function() {
10885
+ }, Kc = typeof self > "u" && typeof process < "u" && process.hrtime ? function() {
10666
10886
  var e = process.hrtime();
10667
10887
  return e[0] * 1e3 + e[1] / 1e6;
10668
10888
  } : typeof self < "u" && self.performance !== void 0 && self.performance.now !== void 0 ? self.performance.now.bind(self.performance) : Date.now === void 0 ? function() {
10669
10889
  return (/* @__PURE__ */ new Date()).getTime();
10670
- } : Date.now, Dc = function() {
10890
+ } : Date.now, qc = function() {
10671
10891
  function e() {
10672
10892
  this._tweens = {}, this._tweensAddedDuringUpdate = {};
10673
10893
  }
@@ -10683,7 +10903,7 @@ var Tc = {
10683
10903
  }, e.prototype.remove = function(e) {
10684
10904
  delete this._tweens[e.getId()], delete this._tweensAddedDuringUpdate[e.getId()];
10685
10905
  }, e.prototype.update = function(e, t) {
10686
- e === void 0 && (e = Ec()), t === void 0 && (t = !1);
10906
+ e === void 0 && (e = Kc()), t === void 0 && (t = !1);
10687
10907
  var n = Object.keys(this._tweens);
10688
10908
  if (n.length === 0) return !1;
10689
10909
  for (; n.length > 0;) {
@@ -10696,17 +10916,17 @@ var Tc = {
10696
10916
  }
10697
10917
  return !0;
10698
10918
  }, e;
10699
- }(), Oc = {
10919
+ }(), Jc = {
10700
10920
  Linear: function(e, t) {
10701
- var n = e.length - 1, r = n * t, i = Math.floor(r), a = Oc.Utils.Linear;
10921
+ var n = e.length - 1, r = n * t, i = Math.floor(r), a = Jc.Utils.Linear;
10702
10922
  return t < 0 ? a(e[0], e[1], r) : t > 1 ? a(e[n], e[n - 1], n - r) : a(e[i], e[i + 1 > n ? n : i + 1], r - i);
10703
10923
  },
10704
10924
  Bezier: function(e, t) {
10705
- for (var n = 0, r = e.length - 1, i = Math.pow, a = Oc.Utils.Bernstein, o = 0; o <= r; o++) n += i(1 - t, r - o) * i(t, o) * e[o] * a(r, o);
10925
+ for (var n = 0, r = e.length - 1, i = Math.pow, a = Jc.Utils.Bernstein, o = 0; o <= r; o++) n += i(1 - t, r - o) * i(t, o) * e[o] * a(r, o);
10706
10926
  return n;
10707
10927
  },
10708
10928
  CatmullRom: function(e, t) {
10709
- var n = e.length - 1, r = n * t, i = Math.floor(r), a = Oc.Utils.CatmullRom;
10929
+ var n = e.length - 1, r = n * t, i = Math.floor(r), a = Jc.Utils.CatmullRom;
10710
10930
  return e[0] === e[n] ? (t < 0 && (i = Math.floor(r = n * (1 + t))), a(e[(i - 1 + n) % n], e[i], e[(i + 1) % n], e[(i + 2) % n], r - i)) : t < 0 ? e[0] - (a(e[0], e[0], e[1], e[1], -r) - e[0]) : t > 1 ? e[n] - (a(e[n], e[n], e[n - 1], e[n - 1], r - n) - e[n]) : a(e[i ? i - 1 : 0], e[i], e[n < i + 1 ? n : i + 1], e[n < i + 2 ? n : i + 2], r - i);
10711
10931
  },
10712
10932
  Utils: {
@@ -10714,7 +10934,7 @@ var Tc = {
10714
10934
  return (t - e) * n + e;
10715
10935
  },
10716
10936
  Bernstein: function(e, t) {
10717
- var n = Oc.Utils.Factorial;
10937
+ var n = Jc.Utils.Factorial;
10718
10938
  return n(e) / n(t) / n(e - t);
10719
10939
  },
10720
10940
  Factorial: (function() {
@@ -10731,14 +10951,14 @@ var Tc = {
10731
10951
  return (2 * t - 2 * n + a + o) * c + (-3 * t + 3 * n - 2 * a - o) * s + a * i + t;
10732
10952
  }
10733
10953
  }
10734
- }, kc = function() {
10954
+ }, Yc = function() {
10735
10955
  function e() {}
10736
10956
  return e.nextId = function() {
10737
10957
  return e._nextId++;
10738
10958
  }, e._nextId = 0, e;
10739
- }(), Ac = new Dc(), jc = function() {
10959
+ }(), Xc = new qc(), Zc = function() {
10740
10960
  function e(e, t) {
10741
- t === void 0 && (t = Ac), this._object = e, this._group = t, this._isPaused = !1, this._pauseStart = 0, this._valuesStart = {}, this._valuesEnd = {}, this._valuesStartRepeat = {}, this._duration = 1e3, this._initialRepeat = 0, this._repeat = 0, this._yoyo = !1, this._isPlaying = !1, this._reversed = !1, this._delayTime = 0, this._startTime = 0, this._easingFunction = Tc.Linear.None, this._interpolationFunction = Oc.Linear, this._chainedTweens = [], this._onStartCallbackFired = !1, this._id = kc.nextId(), this._isChainStopped = !1, this._goToEnd = !1;
10961
+ t === void 0 && (t = Xc), this._object = e, this._group = t, this._isPaused = !1, this._pauseStart = 0, this._valuesStart = {}, this._valuesEnd = {}, this._valuesStartRepeat = {}, this._duration = 1e3, this._initialRepeat = 0, this._repeat = 0, this._yoyo = !1, this._isPlaying = !1, this._reversed = !1, this._delayTime = 0, this._startTime = 0, this._easingFunction = Gc.Linear.None, this._interpolationFunction = Jc.Linear, this._chainedTweens = [], this._onStartCallbackFired = !1, this._id = Yc.nextId(), this._isChainStopped = !1, this._goToEnd = !1;
10742
10962
  }
10743
10963
  return e.prototype.getId = function() {
10744
10964
  return this._id;
@@ -10753,7 +10973,7 @@ var Tc = {
10753
10973
  }, e.prototype.start = function(e) {
10754
10974
  if (this._isPlaying) return this;
10755
10975
  if (this._group && this._group.add(this), this._repeat = this._initialRepeat, this._reversed) for (var t in this._reversed = !1, this._valuesStartRepeat) this._swapEndStartRepeatValues(t), this._valuesStart[t] = this._valuesStartRepeat[t];
10756
- return this._isPlaying = !0, this._isPaused = !1, this._onStartCallbackFired = !1, this._isChainStopped = !1, this._startTime = e === void 0 ? Ec() : typeof e == "string" ? Ec() + parseFloat(e) : e, this._startTime += this._delayTime, this._setupProperties(this._object, this._valuesStart, this._valuesEnd, this._valuesStartRepeat), this;
10976
+ return this._isPlaying = !0, this._isPaused = !1, this._onStartCallbackFired = !1, this._isChainStopped = !1, this._startTime = e === void 0 ? Kc() : typeof e == "string" ? Kc() + parseFloat(e) : e, this._startTime += this._delayTime, this._setupProperties(this._object, this._valuesStart, this._valuesEnd, this._valuesStartRepeat), this;
10757
10977
  }, e.prototype._setupProperties = function(e, t, n, r) {
10758
10978
  for (var i in n) {
10759
10979
  var a = e[i], o = Array.isArray(a), s = o ? "array" : typeof a, c = !o && Array.isArray(n[i]);
@@ -10774,9 +10994,9 @@ var Tc = {
10774
10994
  }, e.prototype.end = function() {
10775
10995
  return this._goToEnd = !0, this.update(Infinity), this;
10776
10996
  }, e.prototype.pause = function(e) {
10777
- return e === void 0 && (e = Ec()), this._isPaused || !this._isPlaying ? this : (this._isPaused = !0, this._pauseStart = e, this._group && this._group.remove(this), this);
10997
+ return e === void 0 && (e = Kc()), this._isPaused || !this._isPlaying ? this : (this._isPaused = !0, this._pauseStart = e, this._group && this._group.remove(this), this);
10778
10998
  }, e.prototype.resume = function(e) {
10779
- return e === void 0 && (e = Ec()), !this._isPaused || !this._isPlaying ? this : (this._isPaused = !1, this._startTime += e - this._pauseStart, this._pauseStart = 0, this._group && this._group.add(this), this);
10999
+ return e === void 0 && (e = Kc()), !this._isPaused || !this._isPlaying ? this : (this._isPaused = !1, this._startTime += e - this._pauseStart, this._pauseStart = 0, this._group && this._group.add(this), this);
10780
11000
  }, e.prototype.stopChainedTweens = function() {
10781
11001
  for (var e = 0, t = this._chainedTweens.length; e < t; e++) this._chainedTweens[e].stop();
10782
11002
  return this;
@@ -10808,7 +11028,7 @@ var Tc = {
10808
11028
  }, e.prototype.onStop = function(e) {
10809
11029
  return this._onStopCallback = e, this;
10810
11030
  }, e.prototype.update = function(e, t) {
10811
- if (e === void 0 && (e = Ec()), t === void 0 && (t = !0), this._isPaused) return !0;
11031
+ if (e === void 0 && (e = Kc()), t === void 0 && (t = !0), this._isPaused) return !0;
10812
11032
  var n, r, i = this._startTime + this._duration;
10813
11033
  if (!this._goToEnd && !this._isPlaying) {
10814
11034
  if (e > i) return !1;
@@ -10838,56 +11058,56 @@ var Tc = {
10838
11058
  typeof n == "string" ? this._valuesStartRepeat[e] = this._valuesStartRepeat[e] + parseFloat(n) : this._valuesStartRepeat[e] = this._valuesEnd[e], this._valuesEnd[e] = t;
10839
11059
  }, e;
10840
11060
  }();
10841
- kc.nextId;
10842
- var Mc = Ac;
10843
- Mc.getAll.bind(Mc), Mc.removeAll.bind(Mc), Mc.add.bind(Mc), Mc.remove.bind(Mc), Mc.update.bind(Mc);
11061
+ Yc.nextId;
11062
+ var Qc = Xc;
11063
+ Qc.getAll.bind(Qc), Qc.removeAll.bind(Qc), Qc.add.bind(Qc), Qc.remove.bind(Qc), Qc.update.bind(Qc);
10844
11064
  //#endregion
10845
11065
  //#region src/tweens.ts
10846
- var Nc = new Dc(), Pc = new X(0, -1, 0), Fc = new X(1, 0, 0), Ic = new X(0, 0, -1), Lc = 8, Rc = (e) => (e % 1 + 1) % 1, zc = (e) => (e % 360 + 360) % 360;
10847
- function Bc(e) {
10848
- return Rc(.75 - e / 360);
11066
+ var $c = new qc(), el = new X(0, -1, 0), tl = new X(1, 0, 0), nl = new X(0, 0, -1), rl = 8, il = (e) => (e % 1 + 1) % 1, al = (e) => (e % 360 + 360) % 360;
11067
+ function ol(e) {
11068
+ return il(.75 - e / 360);
10849
11069
  }
10850
- function Vc(e, t) {
11070
+ function sl(e, t) {
10851
11071
  let n = e.clone().normalize();
10852
- return [Rc(Math.atan2(n.z, n.x) / (2 * Math.PI) + Bc(t)), 1 - Math.acos(xe.clamp(n.y, -1, 1)) / Math.PI];
11072
+ return [il(Math.atan2(n.z, n.x) / (2 * Math.PI) + ol(t)), 1 - Math.acos(xe.clamp(n.y, -1, 1)) / Math.PI];
10853
11073
  }
10854
- function Hc(e, t, n, r) {
10855
- let [i, a] = Vc(e, t);
11074
+ function cl(e, t, n, r) {
11075
+ let [i, a] = sl(e, t);
10856
11076
  return [Math.min(n - 1, Math.floor(i * n)), Math.min(r - 1, Math.floor((1 - a) * r))];
10857
11077
  }
10858
- function Uc(e, t = 0, n = new Ge()) {
10859
- return n.setFromAxisAngle(Pc, xe.degToRad(e)).multiply(new Ge().setFromAxisAngle(Fc, xe.degToRad(t)));
11078
+ function ll(e, t = 0, n = new Ge()) {
11079
+ return n.setFromAxisAngle(el, xe.degToRad(e)).multiply(new Ge().setFromAxisAngle(tl, xe.degToRad(t)));
10860
11080
  }
10861
- function Wc(e) {
11081
+ function ul(e) {
10862
11082
  let t = e.clone().normalize();
10863
11083
  return {
10864
- heading: zc(xe.radToDeg(Math.atan2(t.x, -t.z))),
11084
+ heading: al(xe.radToDeg(Math.atan2(t.x, -t.z))),
10865
11085
  pitch: xe.radToDeg(Math.asin(xe.clamp(t.y, -1, 1)))
10866
11086
  };
10867
11087
  }
10868
- function Gc(e) {
10869
- let t = Ic.clone().applyQuaternion(e);
10870
- return zc(xe.radToDeg(Math.atan2(t.x, -t.z)));
11088
+ function dl(e) {
11089
+ let t = nl.clone().applyQuaternion(e);
11090
+ return al(xe.radToDeg(Math.atan2(t.x, -t.z)));
10871
11091
  }
10872
- function Kc(e, t, n = new X()) {
11092
+ function fl(e, t, n = new X()) {
10873
11093
  let r = e.distanceTo(t), i = e.bearingTo(t);
10874
11094
  return n.set(r * Math.sin(i), 0, -r * Math.cos(i));
10875
11095
  }
10876
- function qc(e, t, n = new X()) {
11096
+ function pl(e, t, n = new X()) {
10877
11097
  if (e.alt === null || t.alt === null) throw Error("Placing a point in the panorama needs its altitude and the node's.");
10878
- return Kc(e, t, n).setY(t.alt - e.alt);
11098
+ return fl(e, t, n).setY(t.alt - e.alt);
10879
11099
  }
10880
- function Jc(e, t) {
11100
+ function ml(e, t) {
10881
11101
  let n = t.x, r = -t.z;
10882
11102
  return e.destinationPoint(Math.hypot(n, r), Math.atan2(n, r));
10883
11103
  }
10884
- function Yc(e, t) {
11104
+ function hl(e, t) {
10885
11105
  let n = new X();
10886
- return e && e.level === t.level && Kc(e.coordinates, t.coordinates, n), n.length() > Lc ? n.set(0, 0, 0) : n;
11106
+ return e && e.level === t.level && fl(e.coordinates, t.coordinates, n), n.length() > rl ? n.set(0, 0, 0) : n;
10887
11107
  }
10888
11108
  //#endregion
10889
11109
  //#region src/controls/SphereControls.ts
10890
- var Xc = 4, Zc = .95, Qc = .01, $c = .3, el = { type: "change" }, tl = { type: "start" }, nl = { type: "end" }, rl = class extends ie {
11110
+ var gl = 4, _l = .95, vl = .01, yl = .3, bl = { type: "change" }, xl = { type: "start" }, Sl = { type: "end" }, Cl = class extends ie {
10891
11111
  config;
10892
11112
  minFov = 20;
10893
11113
  maxFov = 100;
@@ -10941,12 +11161,12 @@ var Xc = 4, Zc = .95, Qc = .01, $c = .3, el = { type: "change" }, tl = { type: "
10941
11161
  }
10942
11162
  updateFov(e) {
10943
11163
  if (this.config.zoomEnable) {
10944
- let t = { fov: this.camera.fov }, n = { fov: e }, r = new jc(t).to(n, 400).easing(Tc.Cubic.InOut).onUpdate((e) => {
11164
+ let t = { fov: this.camera.fov }, n = { fov: e }, r = new Zc(t).to(n, 400).easing(Gc.Cubic.InOut).onUpdate((e) => {
10945
11165
  this.camera.fov = e.fov, this.camera.updateProjectionMatrix();
10946
11166
  }).onComplete(() => {
10947
- Nc.remove(r);
11167
+ $c.remove(r);
10948
11168
  });
10949
- Nc.add(r), r.start();
11169
+ $c.add(r), r.start();
10950
11170
  }
10951
11171
  }
10952
11172
  retrieveLatLonFromCamera() {
@@ -10956,20 +11176,20 @@ var Xc = 4, Zc = .95, Qc = .01, $c = .3, el = { type: "change" }, tl = { type: "
10956
11176
  onPointerStart = (e) => {
10957
11177
  e.preventDefault(), this.element.focus({ preventScroll: !0 }), this.isUserInteracting = !0;
10958
11178
  let t = e instanceof MouseEvent ? e.clientX : e.touches[0].screenX, n = e instanceof MouseEvent ? e.clientY : e.touches[0].screenY;
10959
- this.onMouseDownMouseX = t, this.onMouseDownMouseY = n, this.retrieveLatLonFromCamera(), this.onMouseDownLon = this._lon, this.onMouseDownLat = this._lat, this.animationFrameId !== null && (cancelAnimationFrame(this.animationFrameId), this.animationFrameId = null), this.velocityLon = 0, this.velocityLat = 0, this.dispatchEvent(tl);
11179
+ this.onMouseDownMouseX = t, this.onMouseDownMouseY = n, this.retrieveLatLonFromCamera(), this.onMouseDownLon = this._lon, this.onMouseDownLat = this._lat, this.animationFrameId !== null && (cancelAnimationFrame(this.animationFrameId), this.animationFrameId = null), this.velocityLon = 0, this.velocityLat = 0, this.dispatchEvent(xl);
10960
11180
  };
10961
11181
  onPointerMove = (e) => {
10962
11182
  if (e.preventDefault(), e.stopPropagation(), this.isUserInteracting) {
10963
11183
  let t = e instanceof MouseEvent ? e.clientX : e.touches[0].screenX, n = e instanceof MouseEvent ? e.clientY : e.touches[0].screenY, r = performance.now(), i = r - this.lastUpdateTime;
10964
11184
  if (i > 0) {
10965
11185
  let e = t - this.lastMouseX, r = n - this.lastMouseY;
10966
- this.velocityLon = -e / i * $c, this.velocityLat = r / i * $c;
11186
+ this.velocityLon = -e / i * yl, this.velocityLat = r / i * yl;
10967
11187
  }
10968
- this._lon = (this.onMouseDownMouseX - t) * this.sensibility + this.onMouseDownLon, this._lat = (n - this.onMouseDownMouseY) * this.sensibility + this.onMouseDownLat, this.lastMouseX = t, this.lastMouseY = n, this.lastUpdateTime = r, this.update(), this.dispatchEvent(el);
11188
+ this._lon = (this.onMouseDownMouseX - t) * this.sensibility + this.onMouseDownLon, this._lat = (n - this.onMouseDownMouseY) * this.sensibility + this.onMouseDownLat, this.lastMouseX = t, this.lastMouseY = n, this.lastUpdateTime = r, this.update(), this.dispatchEvent(bl);
10969
11189
  }
10970
11190
  };
10971
11191
  onPointerUp = (e) => {
10972
- e.preventDefault(), this.isUserInteracting = !1, (Math.abs(this.velocityLon) > Qc || Math.abs(this.velocityLat) > Qc) && (this.animationFrameId = requestAnimationFrame(this.updateVelocity)), this.dispatchEvent(nl);
11192
+ e.preventDefault(), this.isUserInteracting = !1, (Math.abs(this.velocityLon) > vl || Math.abs(this.velocityLat) > vl) && (this.animationFrameId = requestAnimationFrame(this.updateVelocity)), this.dispatchEvent(Sl);
10973
11193
  };
10974
11194
  onDocumentMouseWheel = (e) => {
10975
11195
  e.preventDefault();
@@ -10980,20 +11200,20 @@ var Xc = 4, Zc = .95, Qc = .01, $c = .3, el = { type: "change" }, tl = { type: "
10980
11200
  let t = !0;
10981
11201
  switch (e.key) {
10982
11202
  case "ArrowLeft":
10983
- this._lon = (this._lon - Xc) % 360;
11203
+ this._lon = (this._lon - gl) % 360;
10984
11204
  break;
10985
11205
  case "ArrowRight":
10986
- this._lon = (this._lon + Xc) % 360;
11206
+ this._lon = (this._lon + gl) % 360;
10987
11207
  break;
10988
11208
  case "ArrowUp":
10989
- this._lat = Math.max(-85, Math.min(85, this._lat + Xc));
11209
+ this._lat = Math.max(-85, Math.min(85, this._lat + gl));
10990
11210
  break;
10991
11211
  case "ArrowDown":
10992
- this._lat = Math.max(-85, Math.min(85, this._lat - Xc));
11212
+ this._lat = Math.max(-85, Math.min(85, this._lat - gl));
10993
11213
  break;
10994
11214
  default: t = !1;
10995
11215
  }
10996
- t && (e.preventDefault(), this.isArrowKeyPressed = !0, this.update(), this.dispatchEvent(el));
11216
+ t && (e.preventDefault(), this.isArrowKeyPressed = !0, this.update(), this.dispatchEvent(bl));
10997
11217
  };
10998
11218
  update() {
10999
11219
  if (this._autoRotate && !this.isUserInteracting && !this.isArrowKeyPressed) {
@@ -11003,29 +11223,29 @@ var Xc = 4, Zc = .95, Qc = .01, $c = .3, el = { type: "change" }, tl = { type: "
11003
11223
  this._lon = (this._lon + this.autoRotateSpeed * 360 * t) % 360;
11004
11224
  }
11005
11225
  }
11006
- let e = Uc(this._lon, this._lat);
11226
+ let e = ll(this._lon, this._lat);
11007
11227
  if (this.isArrowKeyPressed) {
11008
11228
  this.isArrowKeyPressed = !1;
11009
11229
  let t = this.camera.quaternion.clone(), n = this.sphere.quaternion.clone().multiply(e), r = { t: 0 };
11010
11230
  this.currentTween && this.currentTween.stop();
11011
- let i = new Ge(), a = new jc(r).to({ t: 1 }, 400).easing(Tc.Cubic.Out).onUpdate(() => {
11231
+ let i = new Ge(), a = new Zc(r).to({ t: 1 }, 400).easing(Gc.Cubic.Out).onUpdate(() => {
11012
11232
  i.slerpQuaternions(t, n, r.t), this.camera.quaternion.set(i.x, i.y, i.z, i.w);
11013
11233
  }).start().onStop(() => {
11014
- Nc.remove(a);
11234
+ $c.remove(a);
11015
11235
  }).onComplete(() => {
11016
- Nc.remove(a);
11236
+ $c.remove(a);
11017
11237
  });
11018
- Nc.add(a), this.currentTween = a;
11238
+ $c.add(a), this.currentTween = a;
11019
11239
  } else this.camera.quaternion.copy(this.sphere.quaternion.clone().multiply(e));
11020
11240
  }
11021
11241
  updateVelocity = () => {
11022
- Math.abs(this.velocityLon) > Qc || Math.abs(this.velocityLat) > Qc ? (this._lon = (this._lon + this.velocityLon) % 360, this._lat = Math.max(-85, Math.min(85, this._lat + this.velocityLat)), this.velocityLon *= Zc, this.velocityLat *= Zc, Math.abs(this.velocityLon) < Qc && (this.velocityLon = 0), Math.abs(this.velocityLat) < Qc && (this.velocityLat = 0), this.update(), this.dispatchEvent(el), this.animationFrameId = requestAnimationFrame(this.updateVelocity)) : this.animationFrameId = null;
11242
+ Math.abs(this.velocityLon) > vl || Math.abs(this.velocityLat) > vl ? (this._lon = (this._lon + this.velocityLon) % 360, this._lat = Math.max(-85, Math.min(85, this._lat + this.velocityLat)), this.velocityLon *= _l, this.velocityLat *= _l, Math.abs(this.velocityLon) < vl && (this.velocityLon = 0), Math.abs(this.velocityLat) < vl && (this.velocityLat = 0), this.update(), this.dispatchEvent(bl), this.animationFrameId = requestAnimationFrame(this.updateVelocity)) : this.animationFrameId = null;
11023
11243
  };
11024
- }, il = 1.5, al = 50, ol = 5, sl = .01;
11025
- function cl(e, t) {
11026
- return new is().moveTo(-t, -e).lineTo(t, -e).lineTo(t, -t).lineTo(e, -t).lineTo(e, t).lineTo(t, t).lineTo(t, e).lineTo(-t, e).lineTo(-t, t).lineTo(-e, t).lineTo(-e, -t).lineTo(-t, -t).lineTo(-t, -e);
11244
+ }, wl = 1.5, Tl = 50, El = 5, Dl = .01;
11245
+ function Ol(e, t) {
11246
+ return new ws().moveTo(-t, -e).lineTo(t, -e).lineTo(t, -t).lineTo(e, -t).lineTo(e, t).lineTo(t, t).lineTo(t, e).lineTo(-t, e).lineTo(-t, t).lineTo(-e, t).lineTo(-e, -t).lineTo(-t, -t).lineTo(-t, -e);
11027
11247
  }
11028
- function ll(e, t) {
11248
+ function kl(e, t) {
11029
11249
  return new pn({
11030
11250
  color: e,
11031
11251
  transparent: !0,
@@ -11034,15 +11254,15 @@ function ll(e, t) {
11034
11254
  depthTest: !1
11035
11255
  });
11036
11256
  }
11037
- var ul = class {
11257
+ var Al = class {
11038
11258
  mode = "navigate";
11039
11259
  scene;
11040
11260
  camera;
11041
11261
  element;
11042
11262
  callbacks;
11043
11263
  walk;
11044
- raycaster = new Sc();
11045
- floor = new pr(new X(0, 1, 0), il);
11264
+ raycaster = new Hc();
11265
+ floor = new pr(new X(0, 1, 0), wl);
11046
11266
  pointer = new K();
11047
11267
  hit = new X();
11048
11268
  disc;
@@ -11050,10 +11270,10 @@ var ul = class {
11050
11270
  pressedAt = null;
11051
11271
  target = null;
11052
11272
  constructor(e, t, n, r, i = !0) {
11053
- this.scene = e, this.camera = t, this.element = n, this.callbacks = r, this.walk = i, this.disc = new Gn(new rs(.2, 48), ll(5096447, .55)), this.disc.rotation.x = -Math.PI / 2, this.disc.renderOrder = 999;
11054
- let a = new Gn(new Vs(cl(.17, .03)), ll(16777215, .5));
11273
+ this.scene = e, this.camera = t, this.element = n, this.callbacks = r, this.walk = i, this.disc = new Gn(new Cs(.2, 48), kl(5096447, .55)), this.disc.rotation.x = -Math.PI / 2, this.disc.renderOrder = 999;
11274
+ let a = new Gn(new sc(Ol(.17, .03)), kl(16777215, .5));
11055
11275
  a.renderOrder = 999;
11056
- let o = new Gn(new Vs(cl(.16, .02)), ll(7105644, .75));
11276
+ let o = new Gn(new sc(Ol(.16, .02)), kl(7105644, .75));
11057
11277
  o.renderOrder = 1e3, this.cross = new Kt(), this.cross.add(a, o), this.cross.rotation.x = -Math.PI / 2, this.hide(), e.add(this.disc, this.cross), n.addEventListener("pointermove", this.onPointerMove), n.addEventListener("pointerdown", this.onPointerDown), n.addEventListener("pointerup", this.onPointerUp), n.addEventListener("pointerleave", this.onPointerLeave);
11058
11278
  }
11059
11279
  hide() {
@@ -11074,7 +11294,7 @@ var ul = class {
11074
11294
  };
11075
11295
  onPointerUp = (e) => {
11076
11296
  let t = this.pressedAt;
11077
- if (this.pressedAt = null, !(!t || Math.abs(e.clientX - t.x) > ol || Math.abs(e.clientY - t.y) > ol)) {
11297
+ if (this.pressedAt = null, !(!t || Math.abs(e.clientX - t.x) > El || Math.abs(e.clientY - t.y) > El)) {
11078
11298
  if (this.mode !== "navigate") {
11079
11299
  this.callbacks.current() && (this.aim(e), this.callbacks.pick(this.raycaster.ray.direction.clone()));
11080
11300
  return;
@@ -11083,7 +11303,7 @@ var ul = class {
11083
11303
  }
11084
11304
  };
11085
11305
  onPointerLeave = () => {
11086
- this.hide();
11306
+ this.hide(), this.callbacks.hover(null);
11087
11307
  };
11088
11308
  aim(e) {
11089
11309
  let t = this.element.getBoundingClientRect();
@@ -11099,21 +11319,27 @@ var ul = class {
11099
11319
  this.hide();
11100
11320
  return;
11101
11321
  }
11102
- this.aim(e);
11322
+ if (this.aim(e), t) {
11323
+ let e = this.raycaster.ray.direction.clone();
11324
+ if (this.callbacks.hover(e), this.callbacks.claims(e)) {
11325
+ this.hide(), this.element.style.cursor = "pointer";
11326
+ return;
11327
+ }
11328
+ }
11103
11329
  let n = this.raycaster.ray.intersectPlane(this.floor, this.hit);
11104
- if (!t || !n || n.length() > al) {
11330
+ if (!t || !n || n.length() > Tl) {
11105
11331
  this.hide();
11106
11332
  return;
11107
11333
  }
11108
- this.disc.position.set(n.x, n.y + sl, n.z), this.disc.visible = !0;
11109
- let r = this.callbacks.nearest(Jc(t.coordinates, n));
11334
+ this.disc.position.set(n.x, n.y + Dl, n.z), this.disc.visible = !0;
11335
+ let r = this.callbacks.nearest(ml(t.coordinates, n));
11110
11336
  if (this.target = r, !r) {
11111
11337
  this.cross.visible = !1, this.element.style.cursor = "";
11112
11338
  return;
11113
11339
  }
11114
- Kc(t.coordinates, r.coordinates, this.cross.position).y = -1.49, this.cross.visible = !0, this.element.style.cursor = "pointer";
11340
+ fl(t.coordinates, r.coordinates, this.cross.position).y = -1.49, this.cross.visible = !0, this.element.style.cursor = "pointer";
11115
11341
  }
11116
- }, dl = 4, fl = .065, pl = .075, ml = 1e3, hl = (e) => (e.depthTest = !1, e.transparent = !0, e), gl = class {
11342
+ }, jl = 4, Ml = .065, Nl = .075, Pl = 1e3, Fl = (e) => (e.depthTest = !1, e.transparent = !0, e), Il = class {
11117
11343
  scene;
11118
11344
  group = new uo();
11119
11345
  constructor(e) {
@@ -11123,35 +11349,35 @@ var ul = class {
11123
11349
  return this.group.children.filter((e) => e instanceof uo).length;
11124
11350
  }
11125
11351
  add(e) {
11126
- let t = e.clone().normalize().multiplyScalar(dl), n = new uo(), r = new Gn(new Bs(fl, pl, 48), hl(new pn({
11352
+ let t = e.clone().normalize().multiplyScalar(jl), n = new uo(), r = new Gn(new oc(Ml, Nl, 48), Fl(new pn({
11127
11353
  color: 16777215,
11128
11354
  opacity: .8,
11129
11355
  side: 2
11130
- }))), i = new Gn(new rs(fl, 48), hl(new pn({
11356
+ }))), i = new Gn(new Cs(Ml, 48), Fl(new pn({
11131
11357
  color: 16711680,
11132
11358
  side: 2
11133
11359
  })));
11134
- r.renderOrder = ml, i.renderOrder = ml, n.add(r, i), n.position.copy(t), n.lookAt(0, 0, 0), this.group.add(n);
11360
+ r.renderOrder = Pl, i.renderOrder = Pl, n.add(r, i), n.position.copy(t), n.lookAt(0, 0, 0), this.group.add(n);
11135
11361
  let a = this.group.children.filter((e) => e instanceof uo);
11136
11362
  if (a.length === 2) {
11137
- let e = new Eo(new Dn().setFromPoints([a[0].position, a[1].position]), hl(new Ws({
11363
+ let e = new Go(new Dn().setFromPoints([a[0].position, a[1].position]), Fl(new uc({
11138
11364
  color: 16711680,
11139
11365
  dashSize: .06,
11140
11366
  gapSize: .04
11141
11367
  })));
11142
- e.computeLineDistances(), e.renderOrder = ml - 1, this.group.add(e);
11368
+ e.computeLineDistances(), e.renderOrder = Pl - 1, this.group.add(e);
11143
11369
  }
11144
11370
  }
11145
11371
  clear() {
11146
11372
  for (let e of [...this.group.children]) e.traverse((e) => {
11147
- (e instanceof Gn || e instanceof Eo) && (e.geometry.dispose(), e.material.dispose());
11373
+ (e instanceof Gn || e instanceof Go) && (e.geometry.dispose(), e.material.dispose());
11148
11374
  }), this.group.remove(e);
11149
11375
  }
11150
11376
  dispose() {
11151
11377
  this.clear(), this.scene.remove(this.group);
11152
11378
  }
11153
- }, _l = "#2F7DE1", vl = .25, yl = 1001;
11154
- function bl(e) {
11379
+ }, Ll = "#2F7DE1", Rl = .25, zl = 1001;
11380
+ function Bl(e) {
11155
11381
  let t = new X();
11156
11382
  e.forEach((n, r) => {
11157
11383
  let i = e[(r + 1) % e.length];
@@ -11163,7 +11389,7 @@ function bl(e) {
11163
11389
  return new K(i.dot(n), i.dot(r));
11164
11390
  });
11165
11391
  }
11166
- var xl = class {
11392
+ var Vl = class {
11167
11393
  scene;
11168
11394
  group = new uo();
11169
11395
  polygons = [];
@@ -11174,6 +11400,9 @@ var xl = class {
11174
11400
  set(e) {
11175
11401
  this.polygons = e, this.build();
11176
11402
  }
11403
+ setVisible(e) {
11404
+ this.group.visible = e;
11405
+ }
11177
11406
  placeAt(e) {
11178
11407
  e !== this.origin && (this.origin = e, this.build());
11179
11408
  }
@@ -11182,30 +11411,78 @@ var xl = class {
11182
11411
  let e = this.origin;
11183
11412
  if (e) for (let t of this.polygons) {
11184
11413
  if (t.coordinates.length < 3) continue;
11185
- let n = t.coordinates.map((t) => qc(e.coordinates, t)), r = new Z(t.color ?? _l), i = Ls.triangulateShape(bl(n), []), a = new Gn(new Dn().setFromPoints(i.flat().map((e) => n[e])), new pn({
11414
+ let n = t.coordinates.map((t) => pl(e.coordinates, t)), r = new Z(t.color ?? Ll), i = rc.triangulateShape(Bl(n), []), a = new Gn(new Dn().setFromPoints(i.flat().map((e) => n[e])), new pn({
11186
11415
  color: r,
11187
- opacity: t.fillOpacity ?? vl,
11416
+ opacity: t.fillOpacity ?? Rl,
11188
11417
  transparent: !0,
11189
11418
  side: 2,
11190
11419
  depthTest: !1
11191
- })), o = new Do(new Dn().setFromPoints(n), new bo({
11192
- color: new Z(t.outlineColor ?? t.color ?? _l),
11420
+ })), o = new Ko(new Dn().setFromPoints(n), new zo({
11421
+ color: new Z(t.outlineColor ?? t.color ?? Ll),
11193
11422
  transparent: !0,
11194
11423
  depthTest: !1
11195
11424
  }));
11196
- a.renderOrder = yl, o.renderOrder = yl, this.group.add(a, o);
11425
+ a.renderOrder = zl, o.renderOrder = zl, this.group.add(a, o);
11197
11426
  }
11198
11427
  }
11199
11428
  clear() {
11200
- for (let e of [...this.group.children]) (e instanceof Gn || e instanceof Do) && (e.geometry.dispose(), e.material.dispose()), this.group.remove(e);
11429
+ for (let e of [...this.group.children]) (e instanceof Gn || e instanceof Ko) && (e.geometry.dispose(), e.material.dispose()), this.group.remove(e);
11201
11430
  }
11202
11431
  dispose() {
11203
11432
  this.clear(), this.scene.remove(this.group);
11204
11433
  }
11205
- }, Sl = 700, Cl = 300, wl = 5, Tl = (e) => new lc().loadAsync(e).catch(() => {
11434
+ }, Hl = "#0D2126", Ul = "#ffffff", Wl = 64, Gl = .07, Kl = 1002;
11435
+ function ql(e) {
11436
+ let t = document.createElement("canvas"), n = t.getContext("2d"), r = `700 ${Wl}px system-ui, -apple-system, 'Segoe UI', sans-serif`;
11437
+ n.font = r;
11438
+ let i = Wl / 6;
11439
+ t.width = Math.ceil(n.measureText(e.text).width + 2 * i), t.height = 105, n.font = r, n.textAlign = "center", n.textBaseline = "middle", n.lineJoin = "round", n.lineWidth = i, n.strokeStyle = e.haloColor ?? Ul, n.strokeText(e.text, t.width / 2, t.height / 2), n.fillStyle = e.color ?? Hl, n.fillText(e.text, t.width / 2, t.height / 2);
11440
+ let a = new qo(t);
11441
+ return a.minFilter = c, {
11442
+ map: a,
11443
+ aspect: t.width / t.height
11444
+ };
11445
+ }
11446
+ var Jl = class {
11447
+ scene;
11448
+ group = new uo();
11449
+ labels = [];
11450
+ origin = null;
11451
+ constructor(e) {
11452
+ this.scene = e, e.add(this.group);
11453
+ }
11454
+ set(e) {
11455
+ this.labels = e, this.build();
11456
+ }
11457
+ setVisible(e) {
11458
+ this.group.visible = e;
11459
+ }
11460
+ placeAt(e) {
11461
+ e !== this.origin && (this.origin = e, this.build());
11462
+ }
11463
+ build() {
11464
+ this.clear();
11465
+ let e = this.origin;
11466
+ if (e) for (let t of this.labels) {
11467
+ let { map: n, aspect: r } = ql(t), i = new Lo(new Co({
11468
+ map: n,
11469
+ transparent: !0,
11470
+ depthTest: !1,
11471
+ sizeAttenuation: !1
11472
+ }));
11473
+ i.position.copy(pl(e.coordinates, t.coordinates)), i.scale.set(Gl * r, Gl, 1), i.renderOrder = Kl, this.group.add(i);
11474
+ }
11475
+ }
11476
+ clear() {
11477
+ for (let e of [...this.group.children]) e instanceof Lo && (e.material.map?.dispose(), e.material.dispose()), this.group.remove(e);
11478
+ }
11479
+ dispose() {
11480
+ this.clear(), this.scene.remove(this.group);
11481
+ }
11482
+ }, Yl = 700, Xl = 300, Zl = 5, Ql = (e) => new kc().loadAsync(e).catch(() => {
11206
11483
  throw Error(`Failed to load panorama image: ${e}`);
11207
- }), El = (e) => e < .5 ? 2 * e * e : 1 - (-2 * e + 2) ** 2 / 2;
11208
- function Dl() {
11484
+ }), $l = (e) => e < .5 ? 2 * e * e : 1 - (-2 * e + 2) ** 2 / 2;
11485
+ function eu() {
11209
11486
  return new nr({
11210
11487
  uniforms: {
11211
11488
  t1: { value: null },
@@ -11213,7 +11490,7 @@ function Dl() {
11213
11490
  o1: { value: 0 },
11214
11491
  o2: { value: 0 },
11215
11492
  c2: { value: new X() },
11216
- radius: { value: wl },
11493
+ radius: { value: Zl },
11217
11494
  transition: { value: 0 }
11218
11495
  },
11219
11496
  depthWrite: !1,
@@ -11222,15 +11499,15 @@ function Dl() {
11222
11499
  fragmentShader: "\n const float PI = 3.141592653589793;\n uniform sampler2D t1;\n uniform sampler2D t2;\n uniform float o1;\n uniform float o2;\n uniform vec3 c2;\n uniform float radius;\n uniform float transition;\n varying vec3 vWorld;\n\n // Where the view ray hits the proxy sphere around `center`, as a direction from it.\n vec3 proxyDirection(vec3 ray, vec3 center) {\n vec3 p = cameraPosition - center;\n float b = dot(p, ray);\n return normalize(p + (-b + sqrt(b * b - dot(p, p) + radius * radius)) * ray);\n }\n\n // Shader twin of SceneFrame.imageUv(): keep the two in step.\n vec2 equirect(vec3 d, float offset) {\n return vec2(atan(d.z, d.x) / (2.0 * PI) + offset, 1.0 - acos(clamp(d.y, -1.0, 1.0)) / PI);\n }\n\n void main() {\n vec3 ray = normalize(vWorld - cameraPosition);\n vec4 tex1 = texture2D(t1, equirect(proxyDirection(ray, vec3(0.0)), o1));\n vec4 tex2 = texture2D(t2, equirect(proxyDirection(ray, c2), o2));\n gl_FragColor = mix(tex1, tex2, transition);\n }\n "
11223
11500
  });
11224
11501
  }
11225
- var Ol = class {
11226
- material = Dl();
11502
+ var tu = class {
11503
+ material = eu();
11227
11504
  shownNode = null;
11228
11505
  pending = null;
11229
11506
  fade = null;
11230
11507
  disposed = !1;
11231
11508
  cameraOffset = new X();
11232
11509
  loadImage;
11233
- constructor(e = Tl) {
11510
+ constructor(e = Ql) {
11234
11511
  this.loadImage = e;
11235
11512
  }
11236
11513
  get shown() {
@@ -11257,12 +11534,12 @@ var Ol = class {
11257
11534
  }
11258
11535
  if (this.pending !== e || this.disposed) return t.dispose(), !1;
11259
11536
  this.fade && this.settle(), t.wrapS = n, t.generateMipmaps = !1, t.minFilter = c;
11260
- let r = Yc(this.shownNode, e), i = this.material.uniforms;
11261
- return i.t2.value = t, i.o2.value = Bc(e.heading), i.c2.value.copy(r), i.radius.value = Math.max(wl, r.length() * 1.5), i.transition.value = 0, this.fade = {
11537
+ let r = hl(this.shownNode, e), i = this.material.uniforms;
11538
+ return i.t2.value = t, i.o2.value = ol(e.heading), i.c2.value.copy(r), i.radius.value = Math.max(Zl, r.length() * 1.5), i.transition.value = 0, this.fade = {
11262
11539
  node: e,
11263
11540
  texture: t,
11264
11541
  move: r,
11265
- duration: this.shownNode ? Sl : Cl,
11542
+ duration: this.shownNode ? Yl : Xl,
11266
11543
  start: null
11267
11544
  }, !0;
11268
11545
  }
@@ -11272,7 +11549,7 @@ var Ol = class {
11272
11549
  t.start ??= e;
11273
11550
  let n = Math.min(1, (e - t.start) / t.duration);
11274
11551
  if (n >= 1) return this.settle(), this.cameraOffset.set(0, 0, 0);
11275
- let r = El(n);
11552
+ let r = $l(n);
11276
11553
  return this.material.uniforms.transition.value = r, this.cameraOffset.copy(t.move).multiplyScalar(r);
11277
11554
  }
11278
11555
  dispose() {
@@ -11289,12 +11566,12 @@ var Ol = class {
11289
11566
  };
11290
11567
  //#endregion
11291
11568
  //#region src/data/ViewerDataClient.ts
11292
- async function kl(e, t) {
11569
+ async function nu(e, t) {
11293
11570
  let n = await fetch(e, t);
11294
11571
  if (!n.ok) throw Error(`Request failed (${n.status}): ${e}`);
11295
11572
  return n.json();
11296
11573
  }
11297
- function Al(t, n) {
11574
+ function ru(t, n) {
11298
11575
  return t.images.map((t) => ({
11299
11576
  id: t.id,
11300
11577
  coordinates: new e(t.coords.lat, t.coords.lng, t.coords.alt ?? null, t.coords.level),
@@ -11303,7 +11580,7 @@ function Al(t, n) {
11303
11580
  heading: t.heading
11304
11581
  }));
11305
11582
  }
11306
- var jl = class {
11583
+ var iu = class {
11307
11584
  endpoint;
11308
11585
  constructor(e) {
11309
11586
  let n = e ?? t.getViewerOptions().vpsEndpoint;
@@ -11314,16 +11591,16 @@ var jl = class {
11314
11591
  return `${this.endpoint}360-viewer/image/${e}`;
11315
11592
  }
11316
11593
  getGraph() {
11317
- return kl(`${this.endpoint}360-viewer/graph.json`);
11594
+ return nu(`${this.endpoint}360-viewer/graph.json`);
11318
11595
  }
11319
11596
  getGraphGeojson() {
11320
- return kl(`${this.endpoint}360-viewer/graph.geojson`);
11597
+ return nu(`${this.endpoint}360-viewer/graph.geojson`);
11321
11598
  }
11322
11599
  async getNodes() {
11323
- return Al(await this.getGraph(), (e) => this.imageUrl(e));
11600
+ return ru(await this.getGraph(), (e) => this.imageUrl(e));
11324
11601
  }
11325
11602
  async locate(t, n, r) {
11326
- let i = await kl(`${this.endpoint}360-viewer/image/${t.id}/coordinates`, {
11603
+ let i = await nu(`${this.endpoint}360-viewer/image/${t.id}/coordinates`, {
11327
11604
  method: "POST",
11328
11605
  headers: { "Content-Type": "application/json" },
11329
11606
  body: JSON.stringify({
@@ -11334,7 +11611,7 @@ var jl = class {
11334
11611
  return new e(i.lat, i.lng, i.alt ?? null, i.level ?? t.level);
11335
11612
  }
11336
11613
  async measure(e, t, n) {
11337
- let r = await kl(`${this.endpoint}360-viewer/image/${e.id}/measure`, {
11614
+ let r = await nu(`${this.endpoint}360-viewer/image/${e.id}/measure`, {
11338
11615
  method: "POST",
11339
11616
  headers: { "Content-Type": "application/json" },
11340
11617
  body: JSON.stringify({
@@ -11347,7 +11624,7 @@ var jl = class {
11347
11624
  if (typeof i != "number" || !Number.isFinite(i)) throw Error("The VPS returned no distance for this measurement.");
11348
11625
  return i;
11349
11626
  }
11350
- }, Ml = 1e4, Nl = 65, Pl = 80, Fl = class {
11627
+ }, au = 1e4, ou = 65, su = 80, cu = class {
11351
11628
  container;
11352
11629
  options;
11353
11630
  scene = new yo();
@@ -11360,6 +11637,7 @@ var jl = class {
11360
11637
  pointer;
11361
11638
  measureOverlay;
11362
11639
  polygonOverlay;
11640
+ labelOverlay;
11363
11641
  measureStart = null;
11364
11642
  measureRun = 0;
11365
11643
  data = null;
@@ -11374,22 +11652,23 @@ var jl = class {
11374
11652
  ready: /* @__PURE__ */ new Set(),
11375
11653
  locate: /* @__PURE__ */ new Set(),
11376
11654
  measure: /* @__PURE__ */ new Set(),
11377
- click: /* @__PURE__ */ new Set()
11655
+ click: /* @__PURE__ */ new Set(),
11656
+ hover: /* @__PURE__ */ new Set()
11378
11657
  };
11379
11658
  turn = null;
11380
11659
  readyFired = !1;
11381
11660
  rafId = null;
11382
11661
  resizeObserver;
11383
11662
  constructor(e, t = {}) {
11384
- this.container = e, this.options = t, this.transition = new Ol();
11663
+ this.container = e, this.options = t, this.transition = new tu();
11385
11664
  let { clientWidth: n, clientHeight: r } = e;
11386
- this.camera = new ir(Nl, n / Math.max(r, 1), .1, Ml * 2), this.renderer = new _o({ antialias: !0 }), this.renderer.setPixelRatio(window.devicePixelRatio), this.renderer.setSize(n, r), this.renderer.domElement.classList.add("wemap-viewer__canvas"), e.appendChild(this.renderer.domElement), this.sphere = new Gn(new Us(Ml, 64, 64), this.transition.material), this.sphere.geometry.scale(-1, 1, 1), this.sphereObject.add(this.sphere), this.scene.add(this.sphereObject), this.controls = new rl(this.renderer.domElement, this.camera, this.sphereObject, {
11665
+ this.camera = new ir(ou, n / Math.max(r, 1), .1, au * 2), this.renderer = new _o({ antialias: !0 }), this.renderer.setPixelRatio(window.devicePixelRatio), this.renderer.setSize(n, r), this.renderer.domElement.classList.add("wemap-viewer__canvas"), e.appendChild(this.renderer.domElement), this.sphere = new Gn(new lc(au, 64, 64), this.transition.material), this.sphere.geometry.scale(-1, 1, 1), this.sphereObject.add(this.sphere), this.scene.add(this.sphereObject), this.controls = new Cl(this.renderer.domElement, this.camera, this.sphereObject, {
11387
11666
  zoomEnable: t.zoom ?? !0,
11388
11667
  minFov: 10,
11389
- maxFov: t.maxFov ?? Pl
11390
- }), this.controls.addEventListener("change", this.emitHeading), this.controls.addEventListener("end", this.emitHeading), this.controls.addEventListener("start", () => this.turn?.stop()), this.pointer = new ul(this.scene, this.camera, this.renderer.domElement, {
11668
+ maxFov: t.maxFov ?? su
11669
+ }), this.controls.addEventListener("change", this.emitHeading), this.controls.addEventListener("end", this.emitHeading), this.controls.addEventListener("start", () => this.turn?.stop()), this.pointer = new Al(this.scene, this.camera, this.renderer.domElement, {
11391
11670
  current: () => this.transition.busy ? null : this.current,
11392
- nearest: (e) => this.closestNode(e, this.current?.level, this.current),
11671
+ nearest: (e) => this.closestNode(e, this.current?.level, this.current, this.options.walkable),
11393
11672
  select: (e) => this.navigateTo(e.id),
11394
11673
  pick: (e) => {
11395
11674
  this.pointer.mode === "measure" ? this.measureAt(e) : this.locateAt(e);
@@ -11398,19 +11677,33 @@ var jl = class {
11398
11677
  let t = this.transition.shown;
11399
11678
  if (t) {
11400
11679
  let n = {
11401
- ...Wc(e),
11680
+ ...ul(e),
11402
11681
  node: t
11403
11682
  };
11404
11683
  this.options.onClick?.(n), this.emit("click", n);
11405
11684
  }
11685
+ },
11686
+ claims: (e) => {
11687
+ let t = this.transition.shown;
11688
+ return !!t && !!this.options.claimClick?.({
11689
+ ...ul(e),
11690
+ node: t
11691
+ });
11692
+ },
11693
+ hover: (e) => {
11694
+ let t = this.transition.shown;
11695
+ this.emit("hover", e && t ? {
11696
+ ...ul(e),
11697
+ node: t
11698
+ } : null);
11406
11699
  }
11407
- }, t.navigation ?? !0), this.measureOverlay = new gl(this.scene), this.polygonOverlay = new xl(this.scene), this.resizeObserver = new ResizeObserver(() => this.resize()), this.resizeObserver.observe(e), this.rafId = requestAnimationFrame(this.animate);
11700
+ }, t.navigation ?? !0), this.measureOverlay = new Il(this.scene), this.polygonOverlay = new Vl(this.scene), this.labelOverlay = new Jl(this.scene), this.resizeObserver = new ResizeObserver(() => this.resize()), this.resizeObserver.observe(e), this.rafId = requestAnimationFrame(this.animate);
11408
11701
  }
11409
11702
  async open(e, t = {}) {
11410
11703
  try {
11411
11704
  let n = await this.loadGraph(), r = typeof e == "number" ? n.find((t) => t.id === e) : this.closestNode(e, typeof e.level == "number" ? e.level : void 0);
11412
11705
  if (!r) throw Error(`No 360° node ${typeof e == "number" ? e : "near this position"}.`);
11413
- t.heading !== void 0 && this.face(t.heading, t.pitch ?? 0), await this.moveTo(r);
11706
+ t.heading !== void 0 && this.face(t.heading, t.pitch ?? 0), t.fov !== void 0 && this.zoomTo(t.fov), await this.moveTo(r);
11414
11707
  } catch (e) {
11415
11708
  let t = e instanceof Error ? e : Error(String(e));
11416
11709
  throw this.options.onError?.(t), t;
@@ -11418,7 +11711,7 @@ var jl = class {
11418
11711
  }
11419
11712
  loadGraph() {
11420
11713
  return this.graph ??= (async () => {
11421
- this.data ??= new jl();
11714
+ this.data ??= new iu();
11422
11715
  let e = await this.data.getNodes();
11423
11716
  if (!e.length) throw Error("The 360° image graph is empty for this livemap.");
11424
11717
  return this.nodes = e, e;
@@ -11426,6 +11719,14 @@ var jl = class {
11426
11719
  throw this.graph = null, e;
11427
11720
  }), this.graph;
11428
11721
  }
11722
+ zoomTo(e) {
11723
+ let t = xe.clamp(e, this.controls.minFov, this.controls.maxFov);
11724
+ if (this.transition.shown) {
11725
+ this.controls.updateFov(t);
11726
+ return;
11727
+ }
11728
+ this.camera.fov = t, this.camera.updateProjectionMatrix();
11729
+ }
11429
11730
  face(e, t) {
11430
11731
  if (this.transition.shown) {
11431
11732
  this.lookAt(e, t);
@@ -11440,7 +11741,7 @@ var jl = class {
11440
11741
  return this.current;
11441
11742
  }
11442
11743
  async getGraphGeojson() {
11443
- return this.data ??= new jl(), this.geojson ??= await this.data.getGraphGeojson(), this.geojson;
11744
+ return this.data ??= new iu(), this.geojson ??= await this.data.getGraphGeojson(), this.geojson;
11444
11745
  }
11445
11746
  on(e, t) {
11446
11747
  return this.listeners[e].add(t), () => {
@@ -11471,38 +11772,41 @@ var jl = class {
11471
11772
  nearestNode(e, t) {
11472
11773
  return this.closestNode(e, t);
11473
11774
  }
11474
- closestNode(e, t, n) {
11475
- let r = null, i = Infinity;
11476
- for (let a of this.nodes) {
11477
- if (a === n || t !== void 0 && a.level !== t) continue;
11478
- let o = e.distanceTo(a.coordinates);
11479
- o < i && (i = o, r = a);
11775
+ closestNode(e, t, n, r) {
11776
+ let i = null, a = Infinity;
11777
+ for (let o of this.nodes) {
11778
+ if (o === n || t !== void 0 && o.level !== t || n && r && !r(n, o)) continue;
11779
+ let s = e.distanceTo(o.coordinates);
11780
+ s < a && (a = s, i = o);
11480
11781
  }
11481
- return r;
11782
+ return i;
11482
11783
  }
11483
11784
  setPolygons(e) {
11484
11785
  this.polygonOverlay.set(e);
11485
11786
  }
11787
+ setLabels(e) {
11788
+ this.labelOverlay.set(e);
11789
+ }
11486
11790
  lookAt(e, t = 0) {
11487
11791
  let n = this.controls;
11488
11792
  this.turn?.stop();
11489
11793
  let r = {
11490
11794
  lon: n.lon,
11491
11795
  lat: n.lat
11492
- }, i = ((e - r.lon) % 360 + 540) % 360 - 180, a = new jc(r).to({
11796
+ }, i = ((e - r.lon) % 360 + 540) % 360 - 180, a = new Zc(r).to({
11493
11797
  lon: r.lon + i,
11494
11798
  lat: t
11495
- }, 800).easing(Tc.Cubic.InOut).onUpdate(({ lon: e, lat: t }) => {
11799
+ }, 800).easing(Gc.Cubic.InOut).onUpdate(({ lon: e, lat: t }) => {
11496
11800
  n.lon = e, n.lat = t, this.emitHeading();
11497
- }).onStop(() => Nc.remove(a)).onComplete(() => Nc.remove(a)).start();
11498
- Nc.add(a), this.turn = a;
11801
+ }).onStop(() => $c.remove(a)).onComplete(() => $c.remove(a)).start();
11802
+ $c.add(a), this.turn = a;
11499
11803
  }
11500
11804
  resize() {
11501
11805
  let { clientWidth: e, clientHeight: t } = this.container;
11502
11806
  !e || !t || (this.camera.aspect = e / t, this.camera.updateProjectionMatrix(), this.renderer.setSize(e, t));
11503
11807
  }
11504
11808
  destroy() {
11505
- this.rafId !== null && (cancelAnimationFrame(this.rafId), this.rafId = null), this.resizeObserver.disconnect(), this.turn?.stop(), this.controls.dispose(), this.pointer.dispose(), this.measureOverlay.dispose(), this.polygonOverlay.dispose(), this.transition.dispose(), this.sphere.geometry.dispose(), this.renderer.dispose(), this.renderer.domElement.remove();
11809
+ this.rafId !== null && (cancelAnimationFrame(this.rafId), this.rafId = null), this.resizeObserver.disconnect(), this.turn?.stop(), this.controls.dispose(), this.pointer.dispose(), this.measureOverlay.dispose(), this.polygonOverlay.dispose(), this.labelOverlay.dispose(), this.transition.dispose(), this.sphere.geometry.dispose(), this.renderer.dispose(), this.renderer.domElement.remove();
11506
11810
  }
11507
11811
  get clickMode() {
11508
11812
  return this.pointer.mode;
@@ -11517,7 +11821,7 @@ var jl = class {
11517
11821
  this.clearMeasurement();
11518
11822
  return;
11519
11823
  }
11520
- let r = Hc(e, t.heading, n.width, n.height);
11824
+ let r = cl(e, t.heading, n.width, n.height);
11521
11825
  if (this.measureOverlay.add(e), !this.measureStart) {
11522
11826
  this.measureStart = r;
11523
11827
  return;
@@ -11541,7 +11845,7 @@ var jl = class {
11541
11845
  async locateAt(e) {
11542
11846
  let t = this.transition.shown, n = this.transition.shownImageSize;
11543
11847
  if (!(!t || !n || !this.data)) try {
11544
- let [r, i] = Hc(e, t.heading, n.width, n.height), a = {
11848
+ let [r, i] = cl(e, t.heading, n.width, n.height), a = {
11545
11849
  coordinates: await this.data.locate(t, r, i),
11546
11850
  node: t
11547
11851
  };
@@ -11551,15 +11855,15 @@ var jl = class {
11551
11855
  }
11552
11856
  }
11553
11857
  getHeading() {
11554
- return Gc(this.camera.quaternion);
11858
+ return dl(this.camera.quaternion);
11555
11859
  }
11556
11860
  emitHeading = () => {
11557
11861
  let e = this.getHeading();
11558
11862
  this.options.onHeadingChange?.(e), this.emit("heading", e);
11559
11863
  };
11560
11864
  animate = (e) => {
11561
- this.rafId = requestAnimationFrame(this.animate), Nc.update(e), this.camera.position.copy(this.transition.update(e)), this.polygonOverlay.placeAt(this.transition.shown), this.controls.autoRotate && this.controls.update(), this.renderer.render(this.scene, this.camera);
11865
+ this.rafId = requestAnimationFrame(this.animate), $c.update(e), this.camera.position.copy(this.transition.update(e)), this.polygonOverlay.placeAt(this.transition.shown), this.labelOverlay.placeAt(this.transition.shown), this.polygonOverlay.setVisible(!this.transition.busy), this.labelOverlay.setVisible(!this.transition.busy), this.controls.autoRotate && this.controls.update(), this.renderer.render(this.scene, this.camera);
11562
11866
  };
11563
11867
  };
11564
11868
  //#endregion
11565
- export { rl as SphereControls, jl as ViewerDataClient, Fl as WemapViewer, Al as graphToNodes };
11869
+ export { Cl as SphereControls, iu as ViewerDataClient, cu as WemapViewer, ru as graphToNodes };