@realsee/five 6.8.0-alpha.30 → 6.8.0-alpha.31

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.
Files changed (81) hide show
  1. package/docs/assets/hierarchy.js +1 -1
  2. package/docs/assets/navigation.js +1 -1
  3. package/docs/assets/search.js +1 -1
  4. package/docs/classes/gltf-loader.DDSLoader.html +1 -1
  5. package/docs/classes/gltf-loader.DRACOLoader.html +1 -1
  6. package/docs/classes/gltf-loader.GLTFObject.html +1 -1
  7. package/docs/classes/gltf-loader.THREEGLTFLoader.html +1 -1
  8. package/docs/classes/line.LineGeometry.html +1 -1
  9. package/docs/classes/line.LineMaterial.html +1 -1
  10. package/docs/classes/line.LineSegmentsGeometry.html +1 -1
  11. package/docs/classes/line.THREE_Line2.html +1 -1
  12. package/docs/classes/line.THREE_LineSegments2.html +1 -1
  13. package/docs/classes/plugins.CSS3DObject.html +6 -4
  14. package/docs/classes/plugins.CSS3DRenderer.html +4 -2
  15. package/docs/classes/plugins.CSS3DSprite.html +8 -4
  16. package/docs/classes/plugins.RoundedBoxGeometry.html +1 -1
  17. package/docs/classes/vfx.Airflow.html +1 -1
  18. package/docs/classes/vfx.Flame.html +1 -1
  19. package/docs/classes/vfx.Particle.html +1 -1
  20. package/docs/classes/vfx.ParticleGPU.html +1 -1
  21. package/docs/classes/vfx.SpotLight.html +1 -1
  22. package/docs/hierarchy.html +1 -1
  23. package/docs/interfaces/plugins.BackgroundPluginController.html +1 -1
  24. package/docs/interfaces/plugins.BackgroundPluginType.EventMap.html +1 -1
  25. package/docs/interfaces/plugins.CSS3DPluginController.html +13 -11
  26. package/docs/interfaces/plugins.CSS3DPluginType.EventMap.html +1 -1
  27. package/docs/interfaces/plugins.CSS3DPluginType.State.html +1 -1
  28. package/docs/interfaces/plugins.CSS3DRendererParameters.html +2 -0
  29. package/docs/interfaces/plugins.DynamicPathLinePluginController.html +1 -1
  30. package/docs/interfaces/plugins.DynamicPathLinePluginType.EventMap.html +1 -1
  31. package/docs/interfaces/plugins.DynamicPathLinePluginType.State.html +1 -1
  32. package/docs/interfaces/plugins.GaussianSplattingEntranceAnimationController.html +1 -1
  33. package/docs/interfaces/plugins.GaussianSplattingEntranceAnimationPluginType.EventMap.html +1 -1
  34. package/docs/interfaces/plugins.GaussianSplattingEntranceAnimationPluginType.State.html +1 -1
  35. package/docs/interfaces/plugins.ItemMaskController.html +1 -1
  36. package/docs/interfaces/plugins.ItemMaskPluginType.EventMap.html +1 -1
  37. package/docs/interfaces/plugins.ItemMaskPluginType.State.html +1 -1
  38. package/docs/interfaces/plugins.OrientationPluginController.html +6 -6
  39. package/docs/interfaces/plugins.OrientationPluginType.EventMap.html +1 -1
  40. package/docs/interfaces/plugins.OrientationPluginType.State.html +1 -1
  41. package/docs/interfaces/plugins.PanoAnimeController.html +1 -1
  42. package/docs/interfaces/plugins.PanoAnimePluginType.EventMap.html +1 -1
  43. package/docs/interfaces/plugins.PanoAnimePluginType.State.html +1 -1
  44. package/docs/interfaces/plugins.PluginTemplateType.EventMap.html +1 -1
  45. package/docs/interfaces/plugins.PluginTemplateType.State.html +1 -1
  46. package/docs/interfaces/plugins.TrajectoryController.html +1 -1
  47. package/docs/interfaces/react.FiveInjectionTypes.html +1 -1
  48. package/docs/modules/plugins.html +1 -1
  49. package/five/index.js +5 -5
  50. package/five/index.mjs +70 -66
  51. package/gltf-loader/index.js +3 -3
  52. package/gltf-loader/index.mjs +3 -3
  53. package/line/index.js +3 -3
  54. package/line/index.mjs +3 -3
  55. package/package.json +1 -1
  56. package/plugins/CSS3DPlugin/Controller.d.ts +4 -0
  57. package/plugins/index.d.ts +1 -1
  58. package/plugins/index.js +14 -16
  59. package/plugins/index.mjs +249 -211
  60. package/plugins/thirdParty/CSS3DRenderer.d.ts +16 -3
  61. package/react/index.js +2 -2
  62. package/react/index.mjs +2 -2
  63. package/shader-lib/index.js +2 -2
  64. package/shader-lib/index.mjs +2 -2
  65. package/sticker/index.js +3 -3
  66. package/sticker/index.mjs +3 -3
  67. package/umd/five-gltf-loader.js +3 -3
  68. package/umd/five-line.js +3 -3
  69. package/umd/five-plugins.js +14 -16
  70. package/umd/five-react.js +2 -2
  71. package/umd/five-shader-lib.js +2 -2
  72. package/umd/five-sticker.js +3 -3
  73. package/umd/five-vfx.js +2 -2
  74. package/umd/five-vue.js +2 -2
  75. package/umd/five.js +5 -5
  76. package/vfx/index.js +2 -2
  77. package/vfx/index.mjs +2 -2
  78. package/vue/index.js +2 -2
  79. package/vue/index.mjs +2 -2
  80. package/work-downloader/index.js +3 -3
  81. package/work-downloader/index.mjs +33 -11
package/plugins/index.mjs CHANGED
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * @license
3
3
  * @realsee/five
4
- * Generated: 4/9/2026
5
- * Version: 6.8.0-alpha.30
4
+ * Generated: 4/10/2026
5
+ * Version: 6.8.0-alpha.31
6
6
  * Terms:
7
7
  * Realsee SDK License Agreement
8
8
  * Update: July 28, 2021
@@ -738,14 +738,14 @@ var O = class {
738
738
  var n = t.ownerDocument || t;
739
739
  return n.defaultView || n.parentWindow || e;
740
740
  }
741
- var re = /mobile|tablet|ip(ad|hone|od)|android/i, ie = "ontouchstart" in e, A = k(e, "PointerEvent") !== r, j = ie && re.test(navigator.userAgent), M = "touch", ae = "pen", oe = "mouse", se = "kinect", N = 25, P = 1, F = 2, I = 4, L = 8, R = 1, z = 2, B = 4, V = 8, H = 16, U = z | B, W = V | H, G = U | W, ce = ["x", "y"], le = ["clientX", "clientY"];
742
- function K(e, t) {
741
+ var re = /mobile|tablet|ip(ad|hone|od)|android/i, ie = "ontouchstart" in e, A = k(e, "PointerEvent") !== r, j = ie && re.test(navigator.userAgent), M = "touch", N = "pen", ae = "mouse", oe = "kinect", P = 25, F = 1, I = 2, L = 4, R = 8, z = 1, B = 2, V = 4, H = 8, U = 16, W = B | V, G = H | U, K = W | G, se = ["x", "y"], ce = ["clientX", "clientY"];
742
+ function q(e, t) {
743
743
  var n = this;
744
744
  this.manager = e, this.callback = t, this.element = e.element, this.target = e.options.inputTarget, this.domHandler = function(t) {
745
745
  y(e.options.enable, [e]) && n.handler(t);
746
746
  }, this.init();
747
747
  }
748
- K.prototype = {
748
+ q.prototype = {
749
749
  handler: function() {},
750
750
  init: function() {
751
751
  this.evEl && x(this.element, this.evEl, this.domHandler), this.evTarget && x(this.target, this.evTarget, this.domHandler), this.evWin && x(ne(this.element), this.evWin, this.domHandler);
@@ -754,12 +754,12 @@ var O = class {
754
754
  this.evEl && S(this.element, this.evEl, this.domHandler), this.evTarget && S(this.target, this.evTarget, this.domHandler), this.evWin && S(ne(this.element), this.evWin, this.domHandler);
755
755
  }
756
756
  };
757
- function ue(e) {
757
+ function le(e) {
758
758
  var t;
759
- return t = e.options.inputClass || (A ? Ae : j ? Re : ie ? He : Te), new t(e, q);
759
+ return t = e.options.inputClass || (A ? Ae : j ? Re : ie ? He : Te), new t(e, ue);
760
760
  }
761
- function q(e, t, n) {
762
- var r = n.pointers.length, i = n.changedPointers.length, a = t & P && r - i === 0, o = t & (I | L) && r - i === 0;
761
+ function ue(e, t, n) {
762
+ var r = n.pointers.length, i = n.changedPointers.length, a = t & F && r - i === 0, o = t & (L | R) && r - i === 0;
763
763
  n.isFirst = !!a, n.isFinal = !!o, a && (e.session = {}), n.eventType = t, de(e, n), e.emit("hammer.input", n), e.recognize(n), e.session.prevInput = n;
764
764
  }
765
765
  function de(e, t) {
@@ -774,7 +774,7 @@ var O = class {
774
774
  }
775
775
  function fe(e, t) {
776
776
  var n = t.center, r = e.offsetDelta || {}, i = e.prevDelta || {}, a = e.prevInput || {};
777
- (t.eventType === P || a.eventType === I) && (i = e.prevDelta = {
777
+ (t.eventType === F || a.eventType === L) && (i = e.prevDelta = {
778
778
  x: a.deltaX || 0,
779
779
  y: a.deltaY || 0
780
780
  }, r = e.offsetDelta = {
@@ -784,7 +784,7 @@ var O = class {
784
784
  }
785
785
  function pe(e, t) {
786
786
  var n = e.lastInterval || t, i = t.timeStamp - n.timeStamp, a, o, s, l;
787
- if (t.eventType != L && (i > N || n.velocity === r)) {
787
+ if (t.eventType != R && (i > P || n.velocity === r)) {
788
788
  var u = t.deltaX - n.deltaX, d = t.deltaY - n.deltaY, f = ge(i, u, d);
789
789
  o = f.x, s = f.y, a = c(f.x) > c(f.y) ? f.x : f.y, l = _e(u, d), e.lastInterval = t;
790
790
  } else a = n.velocity, o = n.velocityX, s = n.velocityY, l = n.direction;
@@ -822,60 +822,60 @@ var O = class {
822
822
  };
823
823
  }
824
824
  function _e(e, t) {
825
- return e === t ? R : c(e) >= c(t) ? e < 0 ? z : B : t < 0 ? V : H;
825
+ return e === t ? z : c(e) >= c(t) ? e < 0 ? B : V : t < 0 ? H : U;
826
826
  }
827
827
  function ve(e, t, n) {
828
- n || (n = ce);
828
+ n || (n = se);
829
829
  var r = t[n[0]] - e[n[0]], i = t[n[1]] - e[n[1]];
830
830
  return Math.sqrt(r * r + i * i);
831
831
  }
832
832
  function ye(e, t, n) {
833
- n || (n = ce);
833
+ n || (n = se);
834
834
  var r = t[n[0]] - e[n[0]], i = t[n[1]] - e[n[1]];
835
835
  return Math.atan2(i, r) * 180 / Math.PI;
836
836
  }
837
837
  function be(e, t) {
838
- return ye(t[1], t[0], le) + ye(e[1], e[0], le);
838
+ return ye(t[1], t[0], ce) + ye(e[1], e[0], ce);
839
839
  }
840
840
  function xe(e, t) {
841
- return ve(t[0], t[1], le) / ve(e[0], e[1], le);
841
+ return ve(t[0], t[1], ce) / ve(e[0], e[1], ce);
842
842
  }
843
843
  var Se = {
844
- mousedown: P,
845
- mousemove: F,
846
- mouseup: I
844
+ mousedown: F,
845
+ mousemove: I,
846
+ mouseup: L
847
847
  }, Ce = "mousedown", we = "mousemove mouseup";
848
848
  function Te() {
849
- this.evEl = Ce, this.evWin = we, this.pressed = !1, K.apply(this, arguments);
849
+ this.evEl = Ce, this.evWin = we, this.pressed = !1, q.apply(this, arguments);
850
850
  }
851
- _(Te, K, { handler: function(e) {
851
+ _(Te, q, { handler: function(e) {
852
852
  var t = Se[e.type];
853
- t & P && (e.button === 0 || e.button === 2) && (this.pressed = !0), t & F && e.which !== 1 && (t = I), this.pressed && (t & I && (this.pressed = !1), this.callback(this.manager, t, {
853
+ t & F && (e.button === 0 || e.button === 2) && (this.pressed = !0), t & I && e.which !== 1 && (t = L), this.pressed && (t & L && (this.pressed = !1), this.callback(this.manager, t, {
854
854
  pointers: [e],
855
855
  changedPointers: [e],
856
- pointerType: oe,
856
+ pointerType: ae,
857
857
  srcEvent: e
858
858
  }));
859
859
  } });
860
860
  var Ee = {
861
- pointerdown: P,
862
- pointermove: F,
863
- pointerup: I,
864
- pointercancel: L,
865
- pointerout: L
861
+ pointerdown: F,
862
+ pointermove: I,
863
+ pointerup: L,
864
+ pointercancel: R,
865
+ pointerout: R
866
866
  }, De = {
867
867
  2: M,
868
- 3: ae,
869
- 4: oe,
870
- 5: se
868
+ 3: N,
869
+ 4: ae,
870
+ 5: oe
871
871
  }, Oe = "pointerdown", ke = "pointermove pointerup pointercancel";
872
872
  e.MSPointerEvent && !e.PointerEvent && (Oe = "MSPointerDown", ke = "MSPointerMove MSPointerUp MSPointerCancel");
873
873
  function Ae() {
874
- this.evEl = Oe, this.evWin = ke, K.apply(this, arguments), this.store = this.manager.session.pointerEvents = [];
874
+ this.evEl = Oe, this.evWin = ke, q.apply(this, arguments), this.store = this.manager.session.pointerEvents = [];
875
875
  }
876
- _(Ae, K, { handler: function(e) {
876
+ _(Ae, q, { handler: function(e) {
877
877
  var t = this.store, n = !1, r = !1, i = Ee[e.type.toLowerCase().replace("ms", "")], a = De[e.pointerType] || e.pointerType, o = a == M, s = E(t, e.pointerId, "pointerId");
878
- i & P && (e.button === 0 || e.button === 2 || o) ? s < 0 && (t.push(e), s = t.length - 1) : i & (I | L) ? n = !0 : !o && e.buttons === 0 && (n = !0, r = !0, i = Ee.pointerup), !(s < 0) && (r || (t[s] = e), this.callback(this.manager, i, {
878
+ i & F && (e.button === 0 || e.button === 2 || o) ? s < 0 && (t.push(e), s = t.length - 1) : i & (L | R) ? n = !0 : !o && e.buttons === 0 && (n = !0, r = !0, i = Ee.pointerup), !(s < 0) && (r || (t[s] = e), this.callback(this.manager, i, {
879
879
  pointers: t,
880
880
  changedPointers: [e],
881
881
  pointerType: a,
@@ -883,19 +883,19 @@ var O = class {
883
883
  }), n && t.splice(s, 1));
884
884
  } });
885
885
  var je = {
886
- touchstart: P,
887
- touchmove: F,
888
- touchend: I,
889
- touchcancel: L
886
+ touchstart: F,
887
+ touchmove: I,
888
+ touchend: L,
889
+ touchcancel: R
890
890
  }, Me = "touchstart", Ne = "touchstart touchmove touchend touchcancel";
891
891
  function Pe() {
892
- this.evTarget = Me, this.evWin = Ne, this.started = !1, K.apply(this, arguments);
892
+ this.evTarget = Me, this.evWin = Ne, this.started = !1, q.apply(this, arguments);
893
893
  }
894
- _(Pe, K, { handler: function(e) {
894
+ _(Pe, q, { handler: function(e) {
895
895
  var t = je[e.type];
896
- if (t === P && (this.started = !0), this.started) {
896
+ if (t === F && (this.started = !0), this.started) {
897
897
  var n = Fe.call(this, e, t);
898
- t & (I | L) && n[0].length - n[1].length === 0 && (this.started = !1), this.callback(this.manager, t, {
898
+ t & (L | R) && n[0].length - n[1].length === 0 && (this.started = !1), this.callback(this.manager, t, {
899
899
  pointers: n[0],
900
900
  changedPointers: n[1],
901
901
  pointerType: M,
@@ -905,18 +905,18 @@ var O = class {
905
905
  } });
906
906
  function Fe(e, t) {
907
907
  var n = D(e.touches), r = D(e.changedTouches);
908
- return t & (I | L) && (n = O(n.concat(r), "identifier", !0)), [n, r];
908
+ return t & (L | R) && (n = O(n.concat(r), "identifier", !0)), [n, r];
909
909
  }
910
910
  var Ie = {
911
- touchstart: P,
912
- touchmove: F,
913
- touchend: I,
914
- touchcancel: L
911
+ touchstart: F,
912
+ touchmove: I,
913
+ touchend: L,
914
+ touchcancel: R
915
915
  }, Le = "touchstart touchmove touchend touchcancel";
916
916
  function Re() {
917
- this.evTarget = Le, this.targetIds = {}, K.apply(this, arguments);
917
+ this.evTarget = Le, this.targetIds = {}, q.apply(this, arguments);
918
918
  }
919
- _(Re, K, { handler: function(e) {
919
+ _(Re, q, { handler: function(e) {
920
920
  var t = Ie[e.type], n = ze.call(this, e, t);
921
921
  n && this.callback(this.manager, t, {
922
922
  pointers: n[0],
@@ -927,23 +927,23 @@ var O = class {
927
927
  } });
928
928
  function ze(e, t) {
929
929
  var n = D(e.touches), r = this.targetIds;
930
- if (t & (P | F) && n.length === 1) return r[n[0].identifier] = !0, [n, n];
930
+ if (t & (F | I) && n.length === 1) return r[n[0].identifier] = !0, [n, n];
931
931
  var i, a, o = D(e.changedTouches), s = [], c = this.target;
932
932
  if (a = n.filter(function(e) {
933
933
  return C(e.target, c);
934
- }), t === P) for (i = 0; i < a.length;) r[a[i].identifier] = !0, i++;
935
- for (i = 0; i < o.length;) r[o[i].identifier] && s.push(o[i]), t & (I | L) && delete r[o[i].identifier], i++;
934
+ }), t === F) for (i = 0; i < a.length;) r[a[i].identifier] = !0, i++;
935
+ for (i = 0; i < o.length;) r[o[i].identifier] && s.push(o[i]), t & (L | R) && delete r[o[i].identifier], i++;
936
936
  if (s.length) return [O(a.concat(s), "identifier", !0), s];
937
937
  }
938
938
  var Be = 2500, Ve = 25;
939
939
  function He() {
940
- K.apply(this, arguments);
940
+ q.apply(this, arguments);
941
941
  var e = v(this.handler, this);
942
942
  this.touch = new Re(this.manager, e), this.mouse = new Te(this.manager, e), this.primaryTouch = null, this.lastTouches = [];
943
943
  }
944
- _(He, K, {
944
+ _(He, q, {
945
945
  handler: function(e, t, n) {
946
- var r = n.pointerType == M, i = n.pointerType == oe;
946
+ var r = n.pointerType == M, i = n.pointerType == ae;
947
947
  if (!(i && n.sourceCapabilities && n.sourceCapabilities.firesTouchEvents)) {
948
948
  if (r) Ue.call(this, t, n);
949
949
  else if (i && Ge.call(this, n)) return;
@@ -955,7 +955,7 @@ var O = class {
955
955
  }
956
956
  });
957
957
  function Ue(e, t) {
958
- e & P ? (this.primaryTouch = t.changedPointers[0].identifier, We.call(this, t)) : e & (I | L) && We.call(this, t);
958
+ e & F ? (this.primaryTouch = t.changedPointers[0].identifier, We.call(this, t)) : e & (L | R) && We.call(this, t);
959
959
  }
960
960
  function We(e) {
961
961
  var t = e.changedPointers[0];
@@ -1007,7 +1007,7 @@ var O = class {
1007
1007
  var s = e.pointers.length === 1, c = e.distance < 2, l = e.deltaTime < 250;
1008
1008
  if (s && c && l) return;
1009
1009
  }
1010
- if (!(o && a) && (i || a && n & U || o && n & W)) return this.preventSrc(t);
1010
+ if (!(o && a) && (i || a && n & W || o && n & G)) return this.preventSrc(t);
1011
1011
  },
1012
1012
  preventSrc: function(e) {
1013
1013
  this.manager.session.prevented = !0, e.preventDefault();
@@ -1100,7 +1100,7 @@ var O = class {
1100
1100
  return e & ot ? "cancel" : e & Y ? "end" : e & at ? "move" : e & J ? "start" : "";
1101
1101
  }
1102
1102
  function ct(e) {
1103
- return e == H ? "down" : e == V ? "up" : e == z ? "left" : e == B ? "right" : "";
1103
+ return e == U ? "down" : e == H ? "up" : e == B ? "left" : e == V ? "right" : "";
1104
1104
  }
1105
1105
  function lt(e, t) {
1106
1106
  var n = t.manager;
@@ -1117,7 +1117,7 @@ var O = class {
1117
1117
  },
1118
1118
  process: function(e) {
1119
1119
  var t = this.state, n = e.eventType, r = t & (J | at), i = this.attrTest(e);
1120
- return r && (n & L || !i) ? t | ot : r || i ? n & I ? t | Y : t & J ? t | at : J : Z;
1120
+ return r && (n & R || !i) ? t | ot : r || i ? n & L ? t | Y : t & J ? t | at : J : Z;
1121
1121
  }
1122
1122
  });
1123
1123
  function ut() {
@@ -1128,15 +1128,15 @@ var O = class {
1128
1128
  event: "pan",
1129
1129
  threshold: 10,
1130
1130
  pointers: 1,
1131
- direction: G
1131
+ direction: K
1132
1132
  },
1133
1133
  getTouchAction: function() {
1134
1134
  var e = this.options.direction, t = [];
1135
- return e & U && t.push($e), e & W && t.push(Qe), t;
1135
+ return e & W && t.push($e), e & G && t.push(Qe), t;
1136
1136
  },
1137
1137
  directionTest: function(e) {
1138
1138
  var t = this.options, n = !0, r = e.distance, i = e.direction, a = e.deltaX, o = e.deltaY;
1139
- return i & t.direction || (t.direction & U ? (i = a === 0 ? R : a < 0 ? z : B, n = a != this.pX, r = Math.abs(e.deltaX)) : (i = o === 0 ? R : o < 0 ? V : H, n = o != this.pY, r = Math.abs(e.deltaY))), e.direction = i, n && r > t.threshold && i & t.direction;
1139
+ return i & t.direction || (t.direction & W ? (i = a === 0 ? z : a < 0 ? B : V, n = a != this.pX, r = Math.abs(e.deltaX)) : (i = o === 0 ? z : o < 0 ? H : U, n = o != this.pY, r = Math.abs(e.deltaY))), e.direction = i, n && r > t.threshold && i & t.direction;
1140
1140
  },
1141
1141
  attrTest: function(e) {
1142
1142
  return $.prototype.attrTest.call(this, e) && (this.state & J || !(this.state & J) && this.directionTest(e));
@@ -1185,18 +1185,18 @@ var O = class {
1185
1185
  },
1186
1186
  process: function(e) {
1187
1187
  var t = this.options, n = e.pointers.length === t.pointers, r = e.distance < t.threshold, i = e.deltaTime > t.time;
1188
- if (this._input = e, !r || !n || e.eventType & (I | L) && !i) this.reset();
1189
- else if (e.eventType & P) this.reset(), this._timer = u(function() {
1188
+ if (this._input = e, !r || !n || e.eventType & (L | R) && !i) this.reset();
1189
+ else if (e.eventType & F) this.reset(), this._timer = u(function() {
1190
1190
  this.state = X, this.tryEmit();
1191
1191
  }, t.time, this);
1192
- else if (e.eventType & I) return X;
1192
+ else if (e.eventType & L) return X;
1193
1193
  return Z;
1194
1194
  },
1195
1195
  reset: function() {
1196
1196
  clearTimeout(this._timer);
1197
1197
  },
1198
1198
  emit: function(e) {
1199
- this.state === X && (e && e.eventType & I ? this.manager.emit(this.options.event + "up", e) : (this._input.timeStamp = l(), this.manager.emit(this.options.event, this._input)));
1199
+ this.state === X && (e && e.eventType & L ? this.manager.emit(this.options.event + "up", e) : (this._input.timeStamp = l(), this.manager.emit(this.options.event, this._input)));
1200
1200
  }
1201
1201
  });
1202
1202
  function pt() {
@@ -1223,7 +1223,7 @@ var O = class {
1223
1223
  event: "swipe",
1224
1224
  threshold: 10,
1225
1225
  velocity: .3,
1226
- direction: U | W,
1226
+ direction: W | G,
1227
1227
  pointers: 1
1228
1228
  },
1229
1229
  getTouchAction: function() {
@@ -1231,7 +1231,7 @@ var O = class {
1231
1231
  },
1232
1232
  attrTest: function(e) {
1233
1233
  var t = this.options.direction, n;
1234
- return t & (U | W) ? n = e.overallVelocity : t & U ? n = e.overallVelocityX : t & W && (n = e.overallVelocityY), this._super.attrTest.call(this, e) && t & e.offsetDirection && e.distance > this.options.threshold && e.maxPointers == this.options.pointers && c(n) > this.options.velocity && e.eventType & I;
1234
+ return t & (W | G) ? n = e.overallVelocity : t & W ? n = e.overallVelocityX : t & G && (n = e.overallVelocityY), this._super.attrTest.call(this, e) && t & e.offsetDirection && e.distance > this.options.threshold && e.maxPointers == this.options.pointers && c(n) > this.options.velocity && e.eventType & L;
1235
1235
  },
1236
1236
  emit: function(e) {
1237
1237
  var t = ct(e.offsetDirection);
@@ -1256,9 +1256,9 @@ var O = class {
1256
1256
  },
1257
1257
  process: function(e) {
1258
1258
  var t = this.options, n = e.pointers.length === t.pointers, r = e.distance < t.threshold, i = e.deltaTime < t.time;
1259
- if (this.reset(), e.eventType & P && this.count === 0) return this.failTimeout();
1259
+ if (this.reset(), e.eventType & F && this.count === 0) return this.failTimeout();
1260
1260
  if (r && i && n) {
1261
- if (e.eventType != I) return this.failTimeout();
1261
+ if (e.eventType != L) return this.failTimeout();
1262
1262
  var a = this.pTime ? e.timeStamp - this.pTime < t.interval : !0, o = !this.pCenter || ve(this.pCenter, e.center) < t.posThreshold;
1263
1263
  if (this.pTime = e.timeStamp, this.pCenter = e.center, !o || !a ? this.count = 1 : this.count += 1, this._input = e, this.count % t.taps === 0) return this.hasRequireFailures() ? (this._timer = u(function() {
1264
1264
  this.state = X, this.tryEmit();
@@ -1294,10 +1294,10 @@ var O = class {
1294
1294
  { enable: !1 },
1295
1295
  ["rotate"]
1296
1296
  ],
1297
- [mt, { direction: U }],
1297
+ [mt, { direction: W }],
1298
1298
  [
1299
1299
  ut,
1300
- { direction: U },
1300
+ { direction: W },
1301
1301
  ["swipe"]
1302
1302
  ],
1303
1303
  [ht],
@@ -1322,7 +1322,7 @@ var O = class {
1322
1322
  };
1323
1323
  var _t = 1, vt = 2;
1324
1324
  function yt(e, t) {
1325
- this.options = m({}, gt.defaults, t || {}), this.options.inputTarget = this.options.inputTarget || e, this.handlers = {}, this.session = {}, this.recognizers = [], this.oldCssProps = {}, this.element = e, this.input = ue(this), this.touchAction = new tt(this, this.options.touchAction), bt(this, !0), f(this.options.recognizers, function(e) {
1325
+ this.options = m({}, gt.defaults, t || {}), this.options.inputTarget = this.options.inputTarget || e, this.handlers = {}, this.session = {}, this.recognizers = [], this.oldCssProps = {}, this.element = e, this.input = le(this), this.touchAction = new tt(this, this.options.touchAction), bt(this, !0), f(this.options.recognizers, function(e) {
1326
1326
  var t = this.add(new e[0](e[1]));
1327
1327
  e[2] && t.recognizeWith(e[2]), e[3] && t.requireFailure(e[3]);
1328
1328
  }, this);
@@ -1405,10 +1405,10 @@ var O = class {
1405
1405
  r.initEvent(e, !0, !0), r.gesture = n, n.target.dispatchEvent(r);
1406
1406
  }
1407
1407
  return m(gt, {
1408
- INPUT_START: P,
1409
- INPUT_MOVE: F,
1410
- INPUT_END: I,
1411
- INPUT_CANCEL: L,
1408
+ INPUT_START: F,
1409
+ INPUT_MOVE: I,
1410
+ INPUT_END: L,
1411
+ INPUT_CANCEL: R,
1412
1412
  STATE_POSSIBLE: it,
1413
1413
  STATE_BEGAN: J,
1414
1414
  STATE_CHANGED: at,
@@ -1416,16 +1416,16 @@ var O = class {
1416
1416
  STATE_RECOGNIZED: X,
1417
1417
  STATE_CANCELLED: ot,
1418
1418
  STATE_FAILED: Z,
1419
- DIRECTION_NONE: R,
1420
- DIRECTION_LEFT: z,
1421
- DIRECTION_RIGHT: B,
1422
- DIRECTION_UP: V,
1423
- DIRECTION_DOWN: H,
1424
- DIRECTION_HORIZONTAL: U,
1425
- DIRECTION_VERTICAL: W,
1426
- DIRECTION_ALL: G,
1419
+ DIRECTION_NONE: z,
1420
+ DIRECTION_LEFT: B,
1421
+ DIRECTION_RIGHT: V,
1422
+ DIRECTION_UP: H,
1423
+ DIRECTION_DOWN: U,
1424
+ DIRECTION_HORIZONTAL: W,
1425
+ DIRECTION_VERTICAL: G,
1426
+ DIRECTION_ALL: K,
1427
1427
  Manager: yt,
1428
- Input: K,
1428
+ Input: q,
1429
1429
  TouchAction: tt,
1430
1430
  TouchInput: Re,
1431
1431
  MouseInput: Te,
@@ -1478,7 +1478,7 @@ var O = class {
1478
1478
  return t.copy(e).sub(n.target), t.applyQuaternion(i), h.setFromVector3(t), n.autoRotate && c === s.NONE && te(k()), n.enableDamping ? (h.theta += g.theta * n.dampingFactor, h.phi += g.phi * n.dampingFactor) : (h.theta += g.theta, h.phi += g.phi), h.theta = Math.max(n.minAzimuthAngle, Math.min(n.maxAzimuthAngle, h.theta)), h.phi = Math.max(n.minPolarAngle, Math.min(n.maxPolarAngle, h.phi)), h.makeSafe(), h.radius *= _, h.radius = Math.max(n.minDistance, Math.min(n.maxDistance, h.radius)), n.enableDamping === !0 ? n.target.addScaledVector(v, n.dampingFactor) : n.target.add(v), t.setFromSpherical(h), t.applyQuaternion(a), e.copy(n.target).add(t), n.object.lookAt(n.target), n.enableDamping === !0 ? (g.theta *= 1 - n.dampingFactor, g.phi *= 1 - n.dampingFactor, v.multiplyScalar(1 - n.dampingFactor)) : (g.set(0, 0, 0), v.set(0, 0, 0)), _ = 1, y || o.distanceToSquared(n.object.position) > m || 8 * (1 - u.dot(n.object.quaternion)) > m ? (n.dispatchEvent(r), o.copy(n.object.position), u.copy(n.object.quaternion), y = !1, !0) : !1;
1479
1479
  };
1480
1480
  }(), this.dispose = function() {
1481
- n.domElement.removeEventListener("contextmenu", ge, !1), n.domElement.removeEventListener("mousedown", K, !1), n.domElement.removeEventListener("wheel", de, !1), n.domElement.removeEventListener("touchstart", pe, !1), n.domElement.removeEventListener("touchend", he, !1), n.domElement.removeEventListener("touchmove", me, !1), document.removeEventListener("mousemove", ue, !1), document.removeEventListener("mouseup", q, !1), n.domElement.removeEventListener("keydown", fe, !1);
1481
+ n.domElement.removeEventListener("contextmenu", ge, !1), n.domElement.removeEventListener("mousedown", q, !1), n.domElement.removeEventListener("wheel", de, !1), n.domElement.removeEventListener("touchstart", pe, !1), n.domElement.removeEventListener("touchend", he, !1), n.domElement.removeEventListener("touchmove", me, !1), document.removeEventListener("mousemove", le, !1), document.removeEventListener("mouseup", ue, !1), n.domElement.removeEventListener("keydown", fe, !1);
1482
1482
  };
1483
1483
  var n = this, r = { type: "change" }, i = { type: "start" }, a = { type: "end" }, s = {
1484
1484
  NONE: -1,
@@ -1530,30 +1530,30 @@ var O = class {
1530
1530
  function M(e) {
1531
1531
  n.object.isPerspectiveCamera ? _ *= e : n.object.isOrthographicCamera ? (n.object.zoom = Math.max(n.minZoom, Math.min(n.maxZoom, n.object.zoom / e)), n.object.updateProjectionMatrix(), y = !0) : (console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled."), n.enableZoom = !1);
1532
1532
  }
1533
- function ae(e) {
1533
+ function N(e) {
1534
1534
  b.set(e.clientX, e.clientY);
1535
1535
  }
1536
- function oe(e) {
1536
+ function ae(e) {
1537
1537
  E.set(e.clientX, e.clientY);
1538
1538
  }
1539
- function se(e) {
1539
+ function oe(e) {
1540
1540
  C.set(e.clientX, e.clientY);
1541
1541
  }
1542
- function N(e) {
1542
+ function P(e) {
1543
1543
  x.set(e.clientX, e.clientY), S.subVectors(x, b).multiplyScalar(n.rotateSpeed);
1544
1544
  var t = n.domElement;
1545
1545
  te(2 * Math.PI * S.x / t.clientHeight), ne(2 * Math.PI * S.y / t.clientHeight), b.copy(x), n.update();
1546
1546
  }
1547
- function P(e) {
1547
+ function F(e) {
1548
1548
  D.set(e.clientX, e.clientY), O.subVectors(D, E), O.y > 0 ? j(ee()) : O.y < 0 && M(ee()), E.copy(D), n.update();
1549
1549
  }
1550
- function F(e) {
1550
+ function I(e) {
1551
1551
  w.set(e.clientX, e.clientY), T.subVectors(w, C).multiplyScalar(n.panSpeed), A(T.x, T.y), C.copy(w), n.update();
1552
1552
  }
1553
- function I(e) {
1553
+ function L(e) {
1554
1554
  e.deltaY < 0 ? M(ee()) : e.deltaY > 0 && j(ee()), n.update();
1555
1555
  }
1556
- function L(e) {
1556
+ function R(e) {
1557
1557
  var t = !1;
1558
1558
  switch (e.keyCode) {
1559
1559
  case n.keys.UP:
@@ -1571,31 +1571,31 @@ var O = class {
1571
1571
  }
1572
1572
  t && (e.preventDefault(), n.update());
1573
1573
  }
1574
- function R(e) {
1574
+ function z(e) {
1575
1575
  if (e.touches.length == 1) b.set(e.touches[0].pageX, e.touches[0].pageY);
1576
1576
  else {
1577
1577
  var t = .5 * (e.touches[0].pageX + e.touches[1].pageX), n = .5 * (e.touches[0].pageY + e.touches[1].pageY);
1578
1578
  b.set(t, n);
1579
1579
  }
1580
1580
  }
1581
- function z(e) {
1581
+ function B(e) {
1582
1582
  if (e.touches.length == 1) C.set(e.touches[0].pageX, e.touches[0].pageY);
1583
1583
  else {
1584
1584
  var t = .5 * (e.touches[0].pageX + e.touches[1].pageX), n = .5 * (e.touches[0].pageY + e.touches[1].pageY);
1585
1585
  C.set(t, n);
1586
1586
  }
1587
1587
  }
1588
- function B(e) {
1588
+ function V(e) {
1589
1589
  var t = e.touches[0].pageX - e.touches[1].pageX, n = e.touches[0].pageY - e.touches[1].pageY, r = Math.sqrt(t * t + n * n);
1590
1590
  E.set(0, r);
1591
1591
  }
1592
- function V(e) {
1593
- n.enableZoom && B(e), n.enablePan && z(e);
1594
- }
1595
1592
  function H(e) {
1596
- n.enableZoom && B(e), n.enableRotate && R(e);
1593
+ n.enableZoom && V(e), n.enablePan && B(e);
1597
1594
  }
1598
1595
  function U(e) {
1596
+ n.enableZoom && V(e), n.enableRotate && z(e);
1597
+ }
1598
+ function W(e) {
1599
1599
  if (e.touches.length == 1) x.set(e.touches[0].pageX, e.touches[0].pageY);
1600
1600
  else {
1601
1601
  var t = .5 * (e.touches[0].pageX + e.touches[1].pageX), r = .5 * (e.touches[0].pageY + e.touches[1].pageY);
@@ -1605,7 +1605,7 @@ var O = class {
1605
1605
  var i = n.domElement;
1606
1606
  te(2 * Math.PI * S.x / i.clientHeight), ne(2 * Math.PI * S.y / i.clientHeight), b.copy(x);
1607
1607
  }
1608
- function W(e) {
1608
+ function G(e) {
1609
1609
  if (e.touches.length == 1) w.set(e.touches[0].pageX, e.touches[0].pageY);
1610
1610
  else {
1611
1611
  var t = .5 * (e.touches[0].pageX + e.touches[1].pageX), r = .5 * (e.touches[0].pageY + e.touches[1].pageY);
@@ -1613,17 +1613,17 @@ var O = class {
1613
1613
  }
1614
1614
  T.subVectors(w, C).multiplyScalar(n.panSpeed), A(T.x, T.y), C.copy(w);
1615
1615
  }
1616
- function G(e) {
1616
+ function K(e) {
1617
1617
  var t = e.touches[0].pageX - e.touches[1].pageX, r = e.touches[0].pageY - e.touches[1].pageY, i = Math.sqrt(t * t + r * r);
1618
1618
  D.set(0, i), O.set(0, Math.pow(D.y / E.y, n.zoomSpeed)), j(O.y), E.copy(D);
1619
1619
  }
1620
- function ce(e) {
1621
- n.enableZoom && G(e), n.enablePan && W(e);
1620
+ function se(e) {
1621
+ n.enableZoom && K(e), n.enablePan && G(e);
1622
1622
  }
1623
- function le(e) {
1624
- n.enableZoom && G(e), n.enableRotate && U(e);
1623
+ function ce(e) {
1624
+ n.enableZoom && K(e), n.enableRotate && W(e);
1625
1625
  }
1626
- function K(e) {
1626
+ function q(e) {
1627
1627
  if (n.enabled !== !1) {
1628
1628
  e.preventDefault(), n.domElement.focus ? n.domElement.focus() : window.focus();
1629
1629
  var t;
@@ -1642,55 +1642,55 @@ var O = class {
1642
1642
  switch (t) {
1643
1643
  case o.DOLLY:
1644
1644
  if (n.enableZoom === !1) return;
1645
- oe(e), c = s.DOLLY;
1645
+ ae(e), c = s.DOLLY;
1646
1646
  break;
1647
1647
  case o.ROTATE:
1648
1648
  if (e.ctrlKey || e.metaKey || e.shiftKey) {
1649
1649
  if (n.enablePan === !1) return;
1650
- se(e), c = s.PAN;
1650
+ oe(e), c = s.PAN;
1651
1651
  } else {
1652
1652
  if (n.enableRotate === !1) return;
1653
- ae(e), c = s.ROTATE;
1653
+ N(e), c = s.ROTATE;
1654
1654
  }
1655
1655
  break;
1656
1656
  case o.PAN:
1657
1657
  if (e.ctrlKey || e.metaKey || e.shiftKey) {
1658
1658
  if (n.enableRotate === !1) return;
1659
- ae(e), c = s.ROTATE;
1659
+ N(e), c = s.ROTATE;
1660
1660
  } else {
1661
1661
  if (n.enablePan === !1) return;
1662
- se(e), c = s.PAN;
1662
+ oe(e), c = s.PAN;
1663
1663
  }
1664
1664
  break;
1665
1665
  default: c = s.NONE;
1666
1666
  }
1667
- c !== s.NONE && (document.addEventListener("mousemove", ue, !1), document.addEventListener("mouseup", q, !1), n.dispatchEvent(i));
1667
+ c !== s.NONE && (document.addEventListener("mousemove", le, !1), document.addEventListener("mouseup", ue, !1), n.dispatchEvent(i));
1668
1668
  }
1669
1669
  }
1670
- function ue(e) {
1670
+ function le(e) {
1671
1671
  if (n.enabled !== !1) switch (e.preventDefault(), c) {
1672
1672
  case s.ROTATE:
1673
1673
  if (n.enableRotate === !1) return;
1674
- N(e);
1674
+ P(e);
1675
1675
  break;
1676
1676
  case s.DOLLY:
1677
1677
  if (n.enableZoom === !1) return;
1678
- P(e);
1678
+ F(e);
1679
1679
  break;
1680
1680
  case s.PAN:
1681
1681
  if (n.enablePan === !1) return;
1682
- F(e);
1682
+ I(e);
1683
1683
  break;
1684
1684
  }
1685
1685
  }
1686
- function q(e) {
1687
- n.enabled !== !1 && (document.removeEventListener("mousemove", ue, !1), document.removeEventListener("mouseup", q, !1), n.dispatchEvent(a), c = s.NONE);
1686
+ function ue(e) {
1687
+ n.enabled !== !1 && (document.removeEventListener("mousemove", le, !1), document.removeEventListener("mouseup", ue, !1), n.dispatchEvent(a), c = s.NONE);
1688
1688
  }
1689
1689
  function de(e) {
1690
- n.enabled === !1 || n.enableZoom === !1 || c !== s.NONE && c !== s.ROTATE || (e.preventDefault(), e.stopPropagation(), n.dispatchEvent(i), I(e), n.dispatchEvent(a));
1690
+ n.enabled === !1 || n.enableZoom === !1 || c !== s.NONE && c !== s.ROTATE || (e.preventDefault(), e.stopPropagation(), n.dispatchEvent(i), L(e), n.dispatchEvent(a));
1691
1691
  }
1692
1692
  function fe(e) {
1693
- n.enabled === !1 || n.enableKeys === !1 || n.enablePan === !1 || L(e);
1693
+ n.enabled === !1 || n.enableKeys === !1 || n.enablePan === !1 || R(e);
1694
1694
  }
1695
1695
  function pe(e) {
1696
1696
  if (n.enabled !== !1) {
@@ -1699,11 +1699,11 @@ var O = class {
1699
1699
  switch (n.touches.ONE) {
1700
1700
  case d.ROTATE:
1701
1701
  if (n.enableRotate === !1) return;
1702
- R(e), c = s.TOUCH_ROTATE;
1702
+ z(e), c = s.TOUCH_ROTATE;
1703
1703
  break;
1704
1704
  case d.PAN:
1705
1705
  if (n.enablePan === !1) return;
1706
- z(e), c = s.TOUCH_PAN;
1706
+ B(e), c = s.TOUCH_PAN;
1707
1707
  break;
1708
1708
  default: c = s.NONE;
1709
1709
  }
@@ -1712,11 +1712,11 @@ var O = class {
1712
1712
  switch (n.touches.TWO) {
1713
1713
  case d.DOLLY_PAN:
1714
1714
  if (n.enableZoom === !1 && n.enablePan === !1) return;
1715
- V(e), c = s.TOUCH_DOLLY_PAN;
1715
+ H(e), c = s.TOUCH_DOLLY_PAN;
1716
1716
  break;
1717
1717
  case d.DOLLY_ROTATE:
1718
1718
  if (n.enableZoom === !1 && n.enableRotate === !1) return;
1719
- H(e), c = s.TOUCH_DOLLY_ROTATE;
1719
+ U(e), c = s.TOUCH_DOLLY_ROTATE;
1720
1720
  break;
1721
1721
  default: c = s.NONE;
1722
1722
  }
@@ -1730,19 +1730,19 @@ var O = class {
1730
1730
  if (n.enabled !== !1) switch (e.preventDefault(), e.stopPropagation(), c) {
1731
1731
  case s.TOUCH_ROTATE:
1732
1732
  if (n.enableRotate === !1) return;
1733
- U(e), n.update();
1733
+ W(e), n.update();
1734
1734
  break;
1735
1735
  case s.TOUCH_PAN:
1736
1736
  if (n.enablePan === !1) return;
1737
- W(e), n.update();
1737
+ G(e), n.update();
1738
1738
  break;
1739
1739
  case s.TOUCH_DOLLY_PAN:
1740
1740
  if (n.enableZoom === !1 && n.enablePan === !1) return;
1741
- ce(e), n.update();
1741
+ se(e), n.update();
1742
1742
  break;
1743
1743
  case s.TOUCH_DOLLY_ROTATE:
1744
1744
  if (n.enableZoom === !1 && n.enableRotate === !1) return;
1745
- le(e), n.update();
1745
+ ce(e), n.update();
1746
1746
  break;
1747
1747
  default: c = s.NONE;
1748
1748
  }
@@ -1753,7 +1753,7 @@ var O = class {
1753
1753
  function ge(e) {
1754
1754
  n.enabled !== !1 && e.preventDefault();
1755
1755
  }
1756
- n.domElement.addEventListener("contextmenu", ge, !1), n.domElement.addEventListener("mousedown", K, !1), n.domElement.addEventListener("wheel", de, !1), n.domElement.addEventListener("touchstart", pe, !1), n.domElement.addEventListener("touchend", he, !1), n.domElement.addEventListener("touchmove", me, !1), n.domElement.addEventListener("keydown", fe, !1), n.domElement.tabIndex === -1 && (n.domElement.tabIndex = 0), this.update();
1756
+ n.domElement.addEventListener("contextmenu", ge, !1), n.domElement.addEventListener("mousedown", q, !1), n.domElement.addEventListener("wheel", de, !1), n.domElement.addEventListener("touchstart", pe, !1), n.domElement.addEventListener("touchend", he, !1), n.domElement.addEventListener("touchmove", me, !1), n.domElement.addEventListener("keydown", fe, !1), n.domElement.tabIndex === -1 && (n.domElement.tabIndex = 0), this.update();
1757
1757
  };
1758
1758
  j.prototype = Object.create(a.prototype), j.prototype.constructor = j;
1759
1759
  var M = function(e, t) {
@@ -1762,7 +1762,7 @@ var M = function(e, t) {
1762
1762
  M.prototype = Object.create(a.prototype), M.prototype.constructor = M;
1763
1763
  //#endregion
1764
1764
  //#region build/plugins/thirdParty/CSS3DRenderer.js
1765
- var ae = new p(), oe = new l(), se = new p(), N = class extends c {
1765
+ var N = new p(), ae = new l(), oe = new p(), P = class extends c {
1766
1766
  constructor(e = document.createElement("div")) {
1767
1767
  super(), this.isCSS3DObject = !0, this.element = e, this.element.style.position = "absolute", this.element.style.userSelect = "none", this.element.setAttribute("draggable", !1), this.addEventListener("removed", function() {
1768
1768
  this.traverse(function(e) {
@@ -1773,14 +1773,14 @@ var ae = new p(), oe = new l(), se = new p(), N = class extends c {
1773
1773
  copy(e, t) {
1774
1774
  return super.copy(e, t), this.element = e.element.cloneNode(!0), this;
1775
1775
  }
1776
- }, P = class extends N {
1776
+ }, F = class extends P {
1777
1777
  constructor(e) {
1778
1778
  super(e), this.isCSS3DSprite = !0, this.rotation2D = 0;
1779
1779
  }
1780
1780
  copy(e, t) {
1781
1781
  return super.copy(e, t), this.rotation2D = e.rotation2D, this;
1782
1782
  }
1783
- }, F = new s(), I = new s(), L = class {
1783
+ }, I = new s(), L = new s(), R = class {
1784
1784
  constructor(e = {}) {
1785
1785
  let t = this, n, r, i, a, o = {
1786
1786
  camera: { style: "" },
@@ -1795,34 +1795,70 @@ var ae = new p(), oe = new l(), se = new p(), N = class extends c {
1795
1795
  width: n,
1796
1796
  height: r
1797
1797
  };
1798
- }, this.render = function(e, t) {
1798
+ };
1799
+ let u = !0, d = /* @__PURE__ */ new Set();
1800
+ this.markDirty = function() {
1801
+ u = !0;
1802
+ }, this.updateSpriteSet = function(e) {
1803
+ d.clear(), e.traverse(function(e) {
1804
+ e.isCSS3DSprite && d.add(e);
1805
+ });
1806
+ };
1807
+ function f(e, n, r) {
1808
+ if (e.visible === !1) return;
1809
+ let i = e.layers.test(r.layers) === !0, a = e.element;
1810
+ if (a.style.display = i === !0 ? "" : "none", i === !0) {
1811
+ e.onBeforeRender(t, n, r), I.copy(r.matrixWorldInverse), I.transpose(), e.rotation2D !== 0 && I.multiply(L.makeRotationZ(e.rotation2D)), e.matrixWorld.decompose(N, ae, oe), I.setPosition(N), I.scale(oe), I.elements[3] = 0, I.elements[7] = 0, I.elements[11] = 0, I.elements[15] = 1;
1812
+ let i = h(I), s = o.objects.get(e);
1813
+ (s === void 0 || s.style !== i) && (a.style.transform = i, o.objects.set(e, { style: i })), a.parentNode !== l && l.appendChild(a), e.onAfterRender(t, n, r);
1814
+ }
1815
+ }
1816
+ this.render = function(e, t) {
1799
1817
  let n = t.projectionMatrix.elements[5] * a;
1800
1818
  e.autoUpdate === !0 && e.updateMatrixWorld(), t.parent === null && t.updateMatrixWorld();
1801
1819
  let r, s;
1802
1820
  t.isOrthographicCamera && (r = -(t.right + t.left) / 2, s = (t.top + t.bottom) / 2);
1803
- let c = t.isOrthographicCamera ? "scale(" + n + ")translate(" + u(r) + "px," + u(s) + "px)" + d(t.matrixWorldInverse) : "translateZ(" + n + "px)" + d(t.matrixWorldInverse), f = (t.isPerspectiveCamera ? "perspective(" + n + "px) " : "") + c + "translate(" + i + "px," + a + "px)";
1804
- o.camera.style !== f && (l.style.transform = f, o.camera.style = f), m(e, e, t, c);
1821
+ let c = t.isOrthographicCamera ? "scale(" + n + ")translate(" + p(r) + "px," + p(s) + "px)" + m(t.matrixWorldInverse) : "translateZ(" + n + "px)" + m(t.matrixWorldInverse), h = (t.isPerspectiveCamera ? "perspective(" + n + "px) " : "") + c + " translate(" + i + "px," + a + "px)";
1822
+ if (o.camera.style !== h && (l.style.transform = h, o.camera.style = h), u) _(e, e, t, c), u = !1;
1823
+ else if (d.size > 0) for (let n of d) f(n, e, t);
1805
1824
  }, this.setSize = function(e, t) {
1806
1825
  n = e, r = t, i = n / 2, a = r / 2, s.style.width = e + "px", s.style.height = t + "px", c.style.width = e + "px", c.style.height = t + "px", l.style.width = e + "px", l.style.height = t + "px";
1807
1826
  };
1808
- function u(e) {
1827
+ function p(e) {
1809
1828
  return Math.abs(e) < 1e-10 ? 0 : e;
1810
1829
  }
1811
- function d(e) {
1830
+ function m(e) {
1812
1831
  let t = e.elements;
1813
- return "matrix3d(" + u(t[0]) + "," + u(-t[1]) + "," + u(t[2]) + "," + u(t[3]) + "," + u(t[4]) + "," + u(-t[5]) + "," + u(t[6]) + "," + u(t[7]) + "," + u(t[8]) + "," + u(-t[9]) + "," + u(t[10]) + "," + u(t[11]) + "," + u(t[12]) + "," + u(-t[13]) + "," + u(t[14]) + "," + u(t[15]) + ")";
1832
+ return "matrix3d(" + p(t[0]) + "," + p(-t[1]) + "," + p(t[2]) + "," + p(t[3]) + "," + p(t[4]) + "," + p(-t[5]) + "," + p(t[6]) + "," + p(t[7]) + "," + p(t[8]) + "," + p(-t[9]) + "," + p(t[10]) + "," + p(t[11]) + "," + p(t[12]) + "," + p(-t[13]) + "," + p(t[14]) + "," + p(t[15]) + ")";
1814
1833
  }
1815
- function f(e) {
1834
+ function h(e) {
1816
1835
  let t = e.elements;
1817
- return "translate(-50%,-50%)" + ("matrix3d(" + u(t[0]) + "," + u(t[1]) + "," + u(t[2]) + "," + u(t[3]) + "," + u(-t[4]) + "," + u(-t[5]) + "," + u(-t[6]) + "," + u(-t[7]) + "," + u(t[8]) + "," + u(t[9]) + "," + u(t[10]) + "," + u(t[11]) + "," + u(t[12]) + "," + u(t[13]) + "," + u(t[14]) + "," + u(t[15]) + ")");
1818
- }
1819
- function p(e) {
1836
+ return `translate(-50%,-50%) matrix3d(${[
1837
+ t[0],
1838
+ t[1],
1839
+ t[2],
1840
+ t[3],
1841
+ -t[4],
1842
+ -t[5],
1843
+ -t[6],
1844
+ -t[7],
1845
+ t[8],
1846
+ t[9],
1847
+ t[10],
1848
+ t[11],
1849
+ t[12],
1850
+ t[13],
1851
+ t[14],
1852
+ t[15]
1853
+ ].map((e) => Math.abs(e) < 1e-10 ? 0 : e).join(",")})`;
1854
+ }
1855
+ function g(e) {
1820
1856
  e.isCSS3DObject && (e.element.style.display = "none");
1821
- for (let t = 0, n = e.children.length; t < n; t++) p(e.children[t]);
1857
+ for (let t = 0, n = e.children.length; t < n; t++) g(e.children[t]);
1822
1858
  }
1823
- function m(e, n, r, i) {
1859
+ function _(e, n, r, i) {
1824
1860
  if (e.visible === !1) {
1825
- p(e);
1861
+ g(e);
1826
1862
  return;
1827
1863
  }
1828
1864
  if (e.isCSS3DObject) {
@@ -1830,7 +1866,7 @@ var ae = new p(), oe = new l(), se = new p(), N = class extends c {
1830
1866
  if (a.style.display = i === !0 ? "" : "none", i === !0) {
1831
1867
  e.onBeforeRender(t, n, r);
1832
1868
  let i;
1833
- e.isCSS3DSprite ? (F.copy(r.matrixWorldInverse), F.transpose(), e.rotation2D !== 0 && F.multiply(I.makeRotationZ(e.rotation2D)), e.matrixWorld.decompose(ae, oe, se), F.setPosition(ae), F.scale(se), F.elements[3] = 0, F.elements[7] = 0, F.elements[11] = 0, F.elements[15] = 1, i = f(F)) : i = f(e.matrixWorld);
1869
+ e.isCSS3DSprite ? (I.copy(r.matrixWorldInverse), I.transpose(), e.rotation2D !== 0 && I.multiply(L.makeRotationZ(e.rotation2D)), e.matrixWorld.decompose(N, ae, oe), I.setPosition(N), I.scale(oe), I.elements[3] = 0, I.elements[7] = 0, I.elements[11] = 0, I.elements[15] = 1, i = h(I)) : i = h(e.matrixWorld);
1834
1870
  let s = o.objects.get(e);
1835
1871
  if (s === void 0 || s.style !== i) {
1836
1872
  a.style.transform = i;
@@ -1840,19 +1876,19 @@ var ae = new p(), oe = new l(), se = new p(), N = class extends c {
1840
1876
  a.parentNode !== l && l.appendChild(a), e.onAfterRender(t, n, r);
1841
1877
  }
1842
1878
  }
1843
- for (let t = 0, a = e.children.length; t < a; t++) m(e.children[t], n, r, i);
1879
+ for (let t = 0, a = e.children.length; t < a; t++) _(e.children[t], n, r, i);
1844
1880
  }
1845
1881
  }
1846
1882
  };
1847
1883
  //#endregion
1848
1884
  //#region build/five/utils/calculateThreeMouse.js
1849
- function R(e, t, n) {
1885
+ function z(e, t, n) {
1850
1886
  let { top: r, left: a, width: o, height: s } = t.getBoundingClientRect();
1851
1887
  return n && (a += o * n.left, r += s * (1 - n.bottom - n.height), o *= n.width, s *= n.height), new i.Vector2((e.x - a) / o * 2 - 1, -(e.y - r) / s * 2 + 1);
1852
1888
  }
1853
1889
  //#endregion
1854
1890
  //#region build/plugins/OrientationPlugin/RoundedBoxGeometry.js
1855
- var z = class extends i.BufferGeometry {
1891
+ var B = class extends i.BufferGeometry {
1856
1892
  constructor(e, t, n, r, a) {
1857
1893
  super(), this.type = "RoundedBoxGeometry", a = isNaN(a) ? 1 : Math.max(1, Math.floor(a)), e = isNaN(e) ? 1 : e, t = isNaN(t) ? 1 : t, n = isNaN(n) ? 1 : n, r = isNaN(r) ? .15 : r, r = Math.min(r, Math.min(e, Math.min(t, Math.min(n))) / 2);
1858
1894
  let o = e / 2 - r, s = t / 2 - r, c = n / 2 - r;
@@ -1997,32 +2033,32 @@ var z = class extends i.BufferGeometry {
1997
2033
  };
1998
2034
  //#endregion
1999
2035
  //#region build/plugins/OrientationPlugin/Controller.js
2000
- function B(e, t) {
2036
+ function V(e, t) {
2001
2037
  return typeof e != "number" || typeof t != "number" ? !1 : Math.abs(e - t) < .001;
2002
2038
  }
2003
- function V(e, t, n, r = (e) => e) {
2039
+ function H(e, t, n, r = (e) => e) {
2004
2040
  let i = r(n);
2005
2041
  return e * (1 - i) + t * i;
2006
2042
  }
2007
- var H = Number((Math.PI / 2).toFixed(5));
2008
- function U(e, t, n) {
2043
+ var U = Number((Math.PI / 2).toFixed(5));
2044
+ function W(e, t, n) {
2009
2045
  let r = new i.Shape();
2010
- return r.moveTo(n, 0), r.lineTo(e - n, 0), r.absarc(e - n, n, n, -H, 0, !1), r.lineTo(e, t - n), r.absarc(e - n, t - n, n, 0, H, !1), r.lineTo(n, t), r.absarc(n, t - n, n, H, Math.PI, !1), r.lineTo(0, n), r.absarc(n, n, n, Math.PI, Math.PI * 1.5, !1), r;
2046
+ return r.moveTo(n, 0), r.lineTo(e - n, 0), r.absarc(e - n, n, n, -U, 0, !1), r.lineTo(e, t - n), r.absarc(e - n, t - n, n, 0, U, !1), r.lineTo(n, t), r.absarc(n, t - n, n, U, Math.PI, !1), r.lineTo(0, n), r.absarc(n, n, n, Math.PI, Math.PI * 1.5, !1), r;
2011
2047
  }
2012
- var W = (e) => {
2048
+ var G = (e) => {
2013
2049
  let t = document.createElement("div");
2014
2050
  t.innerText = e;
2015
- let n = new N(t);
2051
+ let n = new P(t);
2016
2052
  return n.name = e, n.scale.set(.3, .3, .3), t.style.pointerEvents = "none", t.style.backfaceVisibility = "hidden", n;
2017
- }, G = (e) => {
2053
+ }, K = (e) => {
2018
2054
  let t = new i.PlaneGeometry(5, 5), n = new i.MeshBasicMaterial({
2019
2055
  transparent: !0,
2020
2056
  opacity: 0
2021
2057
  }), r = new i.Mesh(t, n), a = document.createElement("div");
2022
2058
  a.innerText = e;
2023
- let o = new N(a);
2024
- return o.name = e, o.scale.set(.3, .3, .3), a.style.color = "#ffffff", a.style.opacity = "0.5", a.style.pointerEvents = "none", a.style.backfaceVisibility = "hidden", r.rotateX(-H), r.add(o), r;
2025
- }, ce = class extends _.Controller {
2059
+ let o = new P(a);
2060
+ return o.name = e, o.scale.set(.3, .3, .3), a.style.color = "#ffffff", a.style.opacity = "0.5", a.style.pointerEvents = "none", a.style.backfaceVisibility = "hidden", r.rotateX(-U), r.add(o), r;
2061
+ }, se = class extends _.Controller {
2026
2062
  get config() {
2027
2063
  return Object.assign({}, this._config);
2028
2064
  }
@@ -2038,7 +2074,7 @@ var W = (e) => {
2038
2074
  super(e), this.camera = new t(90), this.scene = new i.Scene(), this.renderer = new i.WebGLRenderer({
2039
2075
  antialias: !0,
2040
2076
  alpha: !0
2041
- }), this.css3drenderer = new L(), this.ambientLight = new i.AmbientLight(16777215, .7), this.wrapper = document.createElement("div"), this.arrows = document.createElement("div"), this.arrowLeft = document.createElement("div"), this.arrowRight = document.createElement("div"), this.arrowFront = document.createElement("div"), this.arrowBack = document.createElement("div"), this.arrowTop = document.createElement("div"), this.arrowBottom = document.createElement("div"), this.spherical = null, this.dragging = !1, this.style = document.createElement("style"), this.directionalLight = new i.DirectionalLight(16777215, .2), this.box = new i.Mesh(new z(8, 8, 8, .5, 20), new i.MeshPhongMaterial({ color: 16777215 })), this.faces = new i.Group(), this.orient = ({ longitude: e, latitude: t }) => {
2077
+ }), this.css3drenderer = new R(), this.ambientLight = new i.AmbientLight(16777215, .7), this.wrapper = document.createElement("div"), this.arrows = document.createElement("div"), this.arrowLeft = document.createElement("div"), this.arrowRight = document.createElement("div"), this.arrowFront = document.createElement("div"), this.arrowBack = document.createElement("div"), this.arrowTop = document.createElement("div"), this.arrowBottom = document.createElement("div"), this.spherical = null, this.dragging = !1, this.style = document.createElement("style"), this.directionalLight = new i.DirectionalLight(16777215, .2), this.box = new i.Mesh(new B(8, 8, 8, .5, 20), new i.MeshPhongMaterial({ color: 16777215 })), this.faces = new i.Group(), this.orient = ({ longitude: e, latitude: t }) => {
2042
2078
  this.dragging = !1, this.spherical = null, this.controls.enableDamping = !1, this.five.setState(Object.assign({ latitude: t }, e === void 0 ? {} : { longitude: e + this.config.fixedLongitude })), this.five.ready().then(() => {
2043
2079
  this.controls.enableDamping = !0, this.setState({ arrowsVisible: !0 });
2044
2080
  });
@@ -2054,7 +2090,7 @@ var W = (e) => {
2054
2090
  longitude: e,
2055
2091
  latitude: t
2056
2092
  });
2057
- } else if (this.spherical && (!B(this.spherical.pi, (t = this.controls) == null ? void 0 : t.getPolarAngle()) || !B(this.spherical.theta, (n = this.controls) == null ? void 0 : n.getAzimuthalAngle()))) {
2093
+ } else if (this.spherical && (!V(this.spherical.pi, (t = this.controls) == null ? void 0 : t.getPolarAngle()) || !V(this.spherical.theta, (n = this.controls) == null ? void 0 : n.getAzimuthalAngle()))) {
2058
2094
  this.spherical = {
2059
2095
  pi: (r = this.controls) == null ? void 0 : r.getPolarAngle(),
2060
2096
  theta: (i = this.controls) == null ? void 0 : i.getAzimuthalAngle()
@@ -2069,7 +2105,7 @@ var W = (e) => {
2069
2105
  });
2070
2106
  } else this.spherical = null;
2071
2107
  }, this.onTapGesture = (e) => {
2072
- let t = e.pointers[0].clientX, n = e.pointers[0].clientY, r = R({
2108
+ let t = e.pointers[0].clientX, n = e.pointers[0].clientY, r = z({
2073
2109
  x: t,
2074
2110
  y: n
2075
2111
  }, this.wrapper), a = new i.Raycaster();
@@ -2085,7 +2121,7 @@ var W = (e) => {
2085
2121
  }, this.onFiveWantsGesture = () => {
2086
2122
  if (this.spherical) return !1;
2087
2123
  }, this.onFiveModeChange = (e) => {
2088
- this.controls && (this.controls.maxPolarAngle = e === "Topview" ? 0 : H);
2124
+ this.controls && (this.controls.maxPolarAngle = e === "Topview" ? 0 : U);
2089
2125
  }, this.onCameraUpdate = ({ state: e }) => {
2090
2126
  if (this.dragging || this.spherical) return;
2091
2127
  let { longitude: t, latitude: n } = e;
@@ -2102,7 +2138,7 @@ var W = (e) => {
2102
2138
  this.dragging = !0, this.spherical = {};
2103
2139
  }, this.onMouseMove = (e) => {
2104
2140
  if (this.dragging) return;
2105
- let t = R({
2141
+ let t = z({
2106
2142
  x: e.clientX,
2107
2143
  y: e.clientY
2108
2144
  }, this.wrapper), n = new i.Raycaster();
@@ -2154,13 +2190,13 @@ var W = (e) => {
2154
2190
  this.renderer.setClearAlpha(0), this.renderer.domElement.style.outline = "none", this.initDom(), this.initFaces(), this.initControls(), this.initLights();
2155
2191
  let e = this.cylinder;
2156
2192
  e.position.y = -3;
2157
- let t = G("西");
2193
+ let t = K("西");
2158
2194
  t.position.set(-19, 0, 0), e.add(t);
2159
- let n = G("东");
2195
+ let n = K("东");
2160
2196
  n.position.set(19, 0, 0), e.add(n);
2161
- let r = G("北");
2197
+ let r = K("北");
2162
2198
  r.position.set(0, 0, -19), e.add(r);
2163
- let i = G("南");
2199
+ let i = K("南");
2164
2200
  i.position.set(0, 0, 19), e.add(i), this.updateByCamera(), this.scene.add(e, this.box, this.faces), this.scene.rotation.y = this.config.fixedLongitude;
2165
2201
  }
2166
2202
  initDom() {
@@ -2169,12 +2205,12 @@ var W = (e) => {
2169
2205
  bindEvents() {
2170
2206
  this.five.on("renderFrame", this.onRenderFrame), this.five.on("camera.update", this.onCameraUpdate), this.five.on("wantsGesture", this.onFiveWantsGesture), this.five.on("modeChange", this.onFiveModeChange), this.mc.on("tap", this.onTapGesture), this.mc.on("panstart", this.onPanStart), this.mc.on("panend", this.onPanEnd), this.wrapper.addEventListener("mousemove", this.onMouseMove), this.arrowTop.onclick = () => this.orient({
2171
2207
  longitude: 0,
2172
- latitude: H
2208
+ latitude: U
2173
2209
  }), this.arrowLeft.onclick = () => this.orient({
2174
- longitude: -H,
2210
+ longitude: -U,
2175
2211
  latitude: 0
2176
2212
  }), this.arrowRight.onclick = () => this.orient({
2177
- longitude: H,
2213
+ longitude: U,
2178
2214
  latitude: 0
2179
2215
  }), this.arrowFront.onclick = () => this.orient({
2180
2216
  longitude: 0,
@@ -2188,32 +2224,32 @@ var W = (e) => {
2188
2224
  this.five.off("renderFrame", this.onRenderFrame), this.five.off("camera.update", this.onCameraUpdate), this.five.off("wantsGesture", this.onFiveWantsGesture), this.five.off("modeChange", this.onFiveModeChange), this.mc.off("tap", this.onTapGesture), this.mc.off("panstart", this.onPanStart), this.mc.off("panend", this.onPanEnd), this.wrapper.removeEventListener("mousemove", this.onMouseMove), this.arrowTop.onclick = null, this.arrowLeft.onclick = null, this.arrowRight.onclick = null, this.arrowFront.onclick = null, this.arrowBack.onclick = null;
2189
2225
  }
2190
2226
  updateByCamera() {
2191
- let e = V(.2, 1, this.camera.pose.latitude / Math.PI * 2, (e) => e * e), t = V(11, 13, this.camera.pose.latitude / Math.PI * 2, (e) => e * e), n = V(12, 15, this.camera.pose.latitude / Math.PI * 2, (e) => e * e), r = V(13, 19, this.camera.pose.latitude / Math.PI * 2, (e) => e * e), a = V(-.2, .5, this.camera.pose.latitude / Math.PI * 2, (e) => e * e);
2227
+ let e = H(.2, 1, this.camera.pose.latitude / Math.PI * 2, (e) => e * e), t = H(11, 13, this.camera.pose.latitude / Math.PI * 2, (e) => e * e), n = H(12, 15, this.camera.pose.latitude / Math.PI * 2, (e) => e * e), r = H(13, 19, this.camera.pose.latitude / Math.PI * 2, (e) => e * e), a = H(-.2, .5, this.camera.pose.latitude / Math.PI * 2, (e) => e * e);
2192
2228
  this.cylinder.geometry = new i.CylinderGeometry(t, n, .01, 50, 1, !0), this.cylinder.material.uniforms.radiusTop.value = t, this.cylinder.material.uniforms.radiusBottom.value = n, this.cylinder.material.needsUpdate = !0, this.cylinder.children.forEach((t) => {
2193
2229
  t.position.normalize().multiplyScalar(r), t.scale.set(e, e, e);
2194
2230
  let n = t.children[0];
2195
2231
  n && (n.element.style.opacity = a.toString());
2196
- });
2232
+ }), this.css3drenderer.markDirty();
2197
2233
  }
2198
2234
  updateArrows({ longitude: e, latitude: t }) {
2199
- let n = H - t < .02;
2235
+ let n = U - t < .02;
2200
2236
  this.setState({ arrowsVisible: n });
2201
2237
  }
2202
2238
  handleArrowsVisible(e) {
2203
2239
  if (this.state.enabled) if (this.cylinder.material.uniforms.opacity.value = e ? .4 : 1, this.cylinder.material.needsUpdate = !0, e) {
2204
2240
  let { longitude: e, latitude: t } = this.five.getCurrentState();
2205
- if (H - t < .03) this.five.state.mode === "Topview" || this.five.state.mode === "Mapview" ? (this.faces.getObjectByName("上").element.className = "active", this.arrows.innerHTML = "", this.arrows.appendChild(this.arrowBack), this.arrows.appendChild(this.arrowLeft), this.arrows.appendChild(this.arrowRight), this.arrows.appendChild(this.arrowFront), this.arrows.style.transform = `rotate(${(e - this.config.fixedLongitude) / Math.PI * 180}deg)`) : (this.arrows.innerHTML = "", this.faces.getObjectByName("上").element.className = "");
2241
+ if (U - t < .03) this.five.state.mode === "Topview" || this.five.state.mode === "Mapview" ? (this.faces.getObjectByName("上").element.className = "active", this.arrows.innerHTML = "", this.arrows.appendChild(this.arrowBack), this.arrows.appendChild(this.arrowLeft), this.arrows.appendChild(this.arrowRight), this.arrows.appendChild(this.arrowFront), this.arrows.style.transform = `rotate(${(e - this.config.fixedLongitude) / Math.PI * 180}deg)`) : (this.arrows.innerHTML = "", this.faces.getObjectByName("上").element.className = "");
2206
2242
  else {
2207
2243
  switch (this.arrows.innerHTML = "", this.arrows.appendChild(this.arrowTop), this.config.orthoView && this.five.ready().then(() => {
2208
2244
  this.five.controller.cameraType = "orthographic", this.five.ready().then(() => this.five.controller.cameraMotion.ended = !1);
2209
2245
  }), !0) {
2210
- case B(0, e - this.config.fixedLongitude):
2246
+ case V(0, e - this.config.fixedLongitude):
2211
2247
  this.arrows.appendChild(this.arrowLeft), this.arrows.appendChild(this.arrowRight), this.arrows.appendChild(this.arrowBottom), this.faces.getObjectByName("前").element.className = "active";
2212
2248
  break;
2213
- case B(H, e - this.config.fixedLongitude):
2249
+ case V(U, e - this.config.fixedLongitude):
2214
2250
  this.arrows.appendChild(this.arrowFront), this.arrows.appendChild(this.arrowBack), this.arrows.appendChild(this.arrowBottom), this.faces.getObjectByName("右").element.className = "active";
2215
2251
  break;
2216
- case B(Math.PI, e - this.config.fixedLongitude):
2252
+ case V(Math.PI, e - this.config.fixedLongitude):
2217
2253
  this.arrows.appendChild(this.arrowRight), this.arrows.appendChild(this.arrowLeft), this.arrows.appendChild(this.arrowBottom), this.faces.getObjectByName("后").element.className = "active";
2218
2254
  break;
2219
2255
  default:
@@ -2238,7 +2274,7 @@ var W = (e) => {
2238
2274
  this.directionalLight.target = this.box, this.scene.add(this.ambientLight, this.directionalLight);
2239
2275
  }
2240
2276
  initFaces() {
2241
- let e = U(7, 7, .5), t = new i.ShapeGeometry(e);
2277
+ let e = W(7, 7, .5), t = new i.ShapeGeometry(e);
2242
2278
  t.translate(-3.5, -3.5, 0);
2243
2279
  let n = new i.Mesh(t, new i.MeshBasicMaterial({
2244
2280
  transparent: !0,
@@ -2248,13 +2284,13 @@ var W = (e) => {
2248
2284
  n.userData = {
2249
2285
  longitude: 0,
2250
2286
  latitude: 0
2251
- }, n.position.z = 4.1, n.add(W("前"));
2287
+ }, n.position.z = 4.1, n.add(G("前"));
2252
2288
  let r = new i.Mesh(t, new i.MeshBasicMaterial({
2253
2289
  transparent: !0,
2254
2290
  color: 3370495,
2255
2291
  opacity: 0
2256
2292
  }));
2257
- r.rotateY(Math.PI), r.position.z = -4.1, r.add(W("后")), r.userData = {
2293
+ r.rotateY(Math.PI), r.position.z = -4.1, r.add(G("后")), r.userData = {
2258
2294
  longitude: Math.PI,
2259
2295
  latitude: 0
2260
2296
  };
@@ -2263,8 +2299,8 @@ var W = (e) => {
2263
2299
  color: 3370495,
2264
2300
  opacity: 0
2265
2301
  }));
2266
- a.rotateY(H), a.position.x = 4.1, a.add(W("右")), a.userData = {
2267
- longitude: H,
2302
+ a.rotateY(U), a.position.x = 4.1, a.add(G("右")), a.userData = {
2303
+ longitude: U,
2268
2304
  latitude: 0
2269
2305
  };
2270
2306
  let o = new i.Mesh(t, new i.MeshBasicMaterial({
@@ -2272,8 +2308,8 @@ var W = (e) => {
2272
2308
  color: 3370495,
2273
2309
  opacity: 0
2274
2310
  }));
2275
- o.rotateY(-H), o.position.x = -4.1, o.add(W("左")), o.userData = {
2276
- longitude: -H,
2311
+ o.rotateY(-U), o.position.x = -4.1, o.add(G("左")), o.userData = {
2312
+ longitude: -U,
2277
2313
  latitude: 0
2278
2314
  };
2279
2315
  let s = new i.Mesh(t, new i.MeshBasicMaterial({
@@ -2281,14 +2317,14 @@ var W = (e) => {
2281
2317
  color: 3370495,
2282
2318
  opacity: 0
2283
2319
  }));
2284
- s.rotateX(-H), s.position.y = 4.1, s.add(W("上")), s.userData = {
2320
+ s.rotateX(-U), s.position.y = 4.1, s.add(G("上")), s.userData = {
2285
2321
  longitude: 0,
2286
- latitude: H
2322
+ latitude: U
2287
2323
  }, this.faces.add(n, r, o, a, s);
2288
2324
  }
2289
2325
  initControls() {
2290
2326
  let e = this.controls = new j(this.camera, this.renderer.domElement);
2291
- e.enableZoom = !1, e.enableDamping = !0, e.enablePan = !1, e.maxPolarAngle = H, e.dampingFactor = .15, e.rotateSpeed = .25;
2327
+ e.enableZoom = !1, e.enableDamping = !0, e.enablePan = !1, e.maxPolarAngle = U, e.dampingFactor = .15, e.rotateSpeed = .25;
2292
2328
  }
2293
2329
  load(e) {
2294
2330
  return v(this, void 0, void 0, function* () {});
@@ -2317,7 +2353,7 @@ var W = (e) => {
2317
2353
  let n = (t = e == null ? void 0 : e.userAction) == null ? !0 : t;
2318
2354
  this.updateState({ enabled: !1 }, n), this._disable({ userAction: n }), document.head.removeChild(this.style);
2319
2355
  }
2320
- }, le = (e, t) => new ce(e, t), K = class extends m.Controller {
2356
+ }, ce = (e, t) => new se(e, t), q = class extends m.Controller {
2321
2357
  constructor(e, t) {
2322
2358
  super(e), this.data = {}, this.pluginName = "BackgroundPlugin", this._onFiveCameraUpdate = (e) => {
2323
2359
  let t = (Math.PI / 2 - Math.max(e.latitude, 0)) / (Math.PI / 2), n = Math.max(.2 - t, 0) * 10;
@@ -2341,7 +2377,7 @@ var W = (e) => {
2341
2377
  this._removeEventListener(), this.hooks.emit("disable", { userAction: !0 }), this.state.enabled = !1;
2342
2378
  }, this.state = { enabled: !1 }, !(typeof document > "u") && (this.gradientBg = document.createElement("div"), this.groundBg = document.createElement("div"), this.style = document.createElement("style"), this.gradientBg.className = "BackgroundPluginBg", this.groundBg.className = "BackgroundPluginGroundBg", this.style.innerHTML = "\n .BackgroundPluginBg {\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n height: 200%;\n background: linear-gradient(#0A0B0D, #2E3033);\n z-index: -1;\n pointerEvents: none;\n }\n .BackgroundPluginGroundBg {\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n bottom: 0;\n background-image: radial-gradient(circle, #2E303350 0, transparent 0);\n z-index: -1;\n pointerEvents: none;\n }\n ", this.enable());
2343
2379
  }
2344
- }, ue = (e, t) => new K(e, t);
2380
+ }, le = (e, t) => new q(e, t);
2345
2381
  //#endregion
2346
2382
  //#region build/plugins/TrajectoryPlugin/Controller.js
2347
2383
  new i.Matrix4().fromArray([
@@ -2362,7 +2398,7 @@ new i.Matrix4().fromArray([
2362
2398
  0,
2363
2399
  1
2364
2400
  ]);
2365
- var q = class {
2401
+ var ue = class {
2366
2402
  constructor(e, t, n, r, i) {
2367
2403
  this.R = e, this.Q = t, this.A = n, this.B = r, this.C = i, this.cov = NaN, this.x = NaN;
2368
2404
  }
@@ -2409,7 +2445,7 @@ var q = class {
2409
2445
  }
2410
2446
  loadTrajectory(e) {
2411
2447
  this.trajectory = e, this.cancelAnimation && this.cancelAnimation(), this.playingState.keyframeIndex = null, this.playingState.progress = null;
2412
- let t = .01, n = .1, r = new q(t, n, 1, 0, 1), a = new q(t, n, 1, 0, 1), o = new q(t, n, 1, 0, 1);
2448
+ let t = .01, n = .1, r = new ue(t, n, 1, 0, 1), a = new ue(t, n, 1, 0, 1), o = new ue(t, n, 1, 0, 1);
2413
2449
  if (this.trajectory && this.trajectory.content.loadState === "READY") {
2414
2450
  let t = this.trajectory.content.data.positionArray;
2415
2451
  this.timeArray = this.trajectory.content.data.timeArray;
@@ -3613,7 +3649,7 @@ var Oe = class extends m.Controller {
3613
3649
  dispose() {
3614
3650
  this.pause(), this.clearAllPaths(), this.hooks.emit("dispose");
3615
3651
  }
3616
- }, ke = (e, t) => new Oe(e, t), Ae = "#five-CSS3DPlugin {\n position: absolute;\n pointer-events: none;\n user-select: none;\n}\n\n#five-CSS3DPlugin * {\n transform-style: preserve-3d;\n}\n\n.five-CSS3DPlugin-X {\n transition: opacity ease-in-out var(--timeout);\n}\n\n.five-CSS3DPlugin-hidden {\n opacity: 0;\n}\n\n#five-CSS3DPlugin .five-CSS3DPlugin-hidden * {\n pointer-events: none;\n}";
3652
+ }, ke = (e, t) => new Oe(e, t), Ae = "#five-CSS3DPlugin {\n position: absolute;\n pointer-events: none;\n user-select: none;\n transform-origin: left top;\n}\n\n.five-CSS3DPlugin-X {\n --timeout: 300ms;\n transition: opacity ease-in-out var(--timeout);\n}\n\n.five-CSS3DPlugin-hidden {\n opacity: 0;\n}\n\n#five-CSS3DPlugin .five-CSS3DPlugin-hidden * {\n pointer-events: none;\n}";
3617
3653
  //#endregion
3618
3654
  //#region build/plugins/utils/uuid.js
3619
3655
  function je() {
@@ -3639,10 +3675,10 @@ var Ne = class extends _.Controller {
3639
3675
  });
3640
3676
  }
3641
3677
  constructor(e, t) {
3642
- super(e), this.scene = new i.Scene(), this.styleSheet = new CSSStyleSheet(), this.camera = new i.PerspectiveCamera(), this.cacheMap = /* @__PURE__ */ new WeakMap(), this.createCSS3DObject = ({ id: e = Me(), name: t, innerHTML: n, sprite: r, normal: a, position: o, scalar: s, visible: c = !0, timeout: l = 300 }) => {
3678
+ super(e), this.scene = new i.Scene(), this.styleSheet = new CSSStyleSheet(), this.camera = new i.PerspectiveCamera(), this.cacheMap = /* @__PURE__ */ new WeakMap(), this.createCSS3DObject = ({ id: e = Me(), name: t, innerHTML: n, sprite: r, normal: a, position: o, scalar: s, visible: c = !0, timeout: l }) => {
3643
3679
  let u = document.createElement("div");
3644
- u.className = "five-CSS3DPlugin-X", c || u.classList.add("five-CSS3DPlugin-hidden"), u.style.setProperty("--timeout", l + "ms"), u.innerHTML = n;
3645
- let d = r ? new P(u) : new N(u);
3680
+ u.className = "five-CSS3DPlugin-X", c || u.classList.add("five-CSS3DPlugin-hidden"), l && u.style.setProperty("--timeout", l + "ms"), u.innerHTML = n;
3681
+ let d = r ? new F(u) : new P(u);
3646
3682
  if (d.userData = {
3647
3683
  id: e,
3648
3684
  _visible: c,
@@ -3665,7 +3701,9 @@ var Ne = class extends _.Controller {
3665
3701
  }
3666
3702
  return o && d.position.copy(o), s && d.scale.setScalar(s), t && (d.name = t), d;
3667
3703
  }, this.render = () => {
3668
- this.camera.fov = this.five.camera.fov, this.camera.near = this.five.camera.near, this.camera.far = this.five.camera.far, this.camera.aspect = this.five.camera.aspect, this.camera.position.copy(this.five.camera.position), this.camera.rotation.copy(this.five.camera.rotation), this.camera.updateProjectionMatrix(), this.renderer.render(this.scene, this.camera);
3704
+ this.camera.fov = this.five.camera.fov, this.camera.position.copy(this.five.camera.position), this.camera.rotation.copy(this.five.camera.rotation), this.camera.updateProjectionMatrix(), this.renderer.render(this.scene, this.camera);
3705
+ }, this.forceRender = () => {
3706
+ this.renderer.markDirty(), this.render();
3669
3707
  }, this._addEventListener = () => {
3670
3708
  this.five.on("render.prepare", this.render), this.appendToFiveContainer();
3671
3709
  }, this._removeEventListener = () => {
@@ -3673,7 +3711,7 @@ var Ne = class extends _.Controller {
3673
3711
  this.five.off("render.prepare", this.render), (e = this.resizeObserver) == null || e.disconnect(), this.resizeObserver = void 0;
3674
3712
  }, this.dispose = () => {
3675
3713
  this.removeAll(), this._disable({ userAction: !1 });
3676
- }, this.five = e, this.renderer = new L(), this.renderer.domElement.id = "five-CSS3DPlugin", this.styleSheet.replaceSync(Ae), document && document.adoptedStyleSheets.push(this.styleSheet), this.state = Object.assign({
3714
+ }, this.five = e, this.renderer = new R(), this.renderer.domElement.id = "five-CSS3DPlugin", this.styleSheet.replaceSync(Ae), document && document.adoptedStyleSheets.push(this.styleSheet), this.state = Object.assign({
3677
3715
  enabled: !0,
3678
3716
  visible: !0
3679
3717
  }, t == null ? void 0 : t.initialState), this.state.enabled ? this._enable({ userAction: !1 }) : this.styleSheet.disabled = !0;
@@ -3687,25 +3725,25 @@ var Ne = class extends _.Controller {
3687
3725
  let t = this.five.getElement();
3688
3726
  if (!(t != null && t.parentElement)) return;
3689
3727
  let { x: n, y: r } = this.five.renderer.getSize(new i.Vector2());
3690
- t.parentElement.appendChild(this.renderer.domElement), this.renderer.setSize(n, r), (e = this.resizeObserver) == null || e.disconnect(), this.resizeObserver = new ResizeObserver(() => {
3728
+ t.parentElement.appendChild(this.renderer.domElement), this.renderer.setSize(n * 2, r * 2), this.renderer.domElement.style.width = n * 2 + "px", this.renderer.domElement.style.height = r * 2 + "px", this.renderer.domElement.style.transform = "scale(0.5)", (e = this.resizeObserver) == null || e.disconnect(), this.resizeObserver = new ResizeObserver(() => {
3691
3729
  var e;
3692
3730
  if (!this.five.renderer) return;
3693
3731
  let t = (e = this.five.getElement()) == null ? void 0 : e.getBoundingClientRect();
3694
3732
  if (!t) return;
3695
3733
  let { x: n, y: r, width: i, height: a } = t;
3696
- this.renderer.setSize(i, a), this.renderer.domElement.style.left = n + "px", this.renderer.domElement.style.top = r + "px", this.renderer.domElement.style.width = i + "px", this.renderer.domElement.style.height = a + "px", this.render();
3734
+ this.renderer.setSize(i * 2, a * 2), this.renderer.domElement.style.left = n + "px", this.renderer.domElement.style.top = r + "px", this.renderer.domElement.style.width = i * 2 + "px", this.renderer.domElement.style.height = a * 2 + "px", this.render();
3697
3735
  }), this.resizeObserver.observe(t);
3698
3736
  }
3699
3737
  add(...e) {
3700
- this.scene.add(...e), this.render();
3738
+ this.scene.add(...e), this.renderer.updateSpriteSet(this.scene), this.forceRender();
3701
3739
  }
3702
3740
  remove(e) {
3703
3741
  this.scene.remove(e), e.traverse((e) => {
3704
- e instanceof N && e.element.remove();
3705
- }), this.render();
3742
+ e instanceof P && e.element.remove();
3743
+ }), this.renderer.updateSpriteSet(this.scene), this.forceRender();
3706
3744
  }
3707
3745
  removeAll() {
3708
- this.scene.remove(...this.scene.children), this.render();
3746
+ this.scene.remove(...this.scene.children), this.renderer.updateSpriteSet(this.scene), this.forceRender();
3709
3747
  }
3710
3748
  fadeInObjects(...e) {
3711
3749
  for (let t of e) t.userData.visible = !0;
@@ -3734,10 +3772,10 @@ var Ne = class extends _.Controller {
3734
3772
  this._disable({ userAction: n });
3735
3773
  }
3736
3774
  show(e) {
3737
- this.renderer.domElement.style.display = "block", this.updateState({ visible: !0 }, !0), this.render();
3775
+ this.renderer.domElement.style.display = "block", this.updateState({ visible: !0 }, !0), this.forceRender();
3738
3776
  }
3739
3777
  hide(e) {
3740
- this.renderer.domElement.style.display = "none", this.updateState({ visible: !1 }, !0), this.render();
3778
+ this.renderer.domElement.style.display = "none", this.updateState({ visible: !1 }, !0);
3741
3779
  }
3742
3780
  }, Pe = (e, t) => new Ne(e, t), Fe = class {
3743
3781
  constructor(e, t, n, r, i) {
@@ -3901,4 +3939,4 @@ var Ne = class extends _.Controller {
3901
3939
  }
3902
3940
  }, Le = (e, t) => new Ie(e, t);
3903
3941
  //#endregion
3904
- export { ue as BackgroundPlugin, _ as BasePlugin, N as CSS3DObject, Pe as CSS3DPlugin, L as CSS3DRenderer, P as CSS3DSprite, ke as DynamicPathLinePlugin, Le as GaussianSplattingEntranceAnimationPlugin, ie as ItemMaskPlugin, j as OrbitControls, le as OrientationPlugin, xe as PanoAnimePlugin, z as RoundedBoxGeometry, fe as TrajectoryPlugin };
3942
+ export { le as BackgroundPlugin, _ as BasePlugin, P as CSS3DObject, Pe as CSS3DPlugin, R as CSS3DRenderer, F as CSS3DSprite, ke as DynamicPathLinePlugin, Le as GaussianSplattingEntranceAnimationPlugin, ie as ItemMaskPlugin, j as OrbitControls, ce as OrientationPlugin, xe as PanoAnimePlugin, B as RoundedBoxGeometry, fe as TrajectoryPlugin };