@realsee/dnalogel 2.3.7-3 → 2.3.7-5

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 (232) hide show
  1. package/dist/PanoMeasurePlugin/Controller/MixedController.d.ts +1 -0
  2. package/dist/PanoMeasurePlugin/Controller/ViewController.d.ts +0 -7
  3. package/dist/PanoMeasurePlugin/Modules/Magnifier.d.ts +29 -16
  4. package/dist/index.cjs.js +28 -28
  5. package/dist/index.js +1068 -1056
  6. package/dist/index.umd.js +22 -22
  7. package/docs/assets/search.js +1 -1
  8. package/docs/classes/CSS3DRender.html +31 -31
  9. package/docs/classes/CruisePluginController.html +24 -24
  10. package/docs/classes/Magnifier.html +90 -40
  11. package/docs/classes/ModelRoomLabelController.html +11 -11
  12. package/docs/classes/Object3DHelperController.html +24 -24
  13. package/docs/classes/PaintBrush.html +15 -15
  14. package/docs/classes/PanoMeasurePluginLine.html +23 -23
  15. package/docs/classes/PanoMeasurePluginModel.html +22 -22
  16. package/docs/classes/PanoMeasurePluginPoint.html +14 -14
  17. package/docs/classes/PanoMeasurePluginPolyline.html +26 -26
  18. package/docs/classes/PanoTagPluginController.html +39 -39
  19. package/docs/classes/Util.BetterTween.html +8 -8
  20. package/docs/classes/Util.FivePointSelector.html +12 -12
  21. package/docs/classes/Util.Interval.html +12 -12
  22. package/docs/classes/Util.Magnifier.html +17 -17
  23. package/docs/classes/Util.PointDomHelper.html +11 -11
  24. package/docs/classes/Util.PointHelper.html +11 -11
  25. package/docs/classes/Util.Rectangle.html +13 -13
  26. package/docs/enums/CameraMovementEffect.html +7 -7
  27. package/docs/enums/ContentType.html +12 -12
  28. package/docs/enums/DIRECTION.html +9 -9
  29. package/docs/enums/DISPLAY_STRATEGY_TYPE.html +9 -9
  30. package/docs/enums/DimensionType.html +7 -7
  31. package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +8 -8
  32. package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +9 -9
  33. package/docs/enums/LinkType.html +7 -7
  34. package/docs/enums/PaintBrushTypeEnum.html +8 -8
  35. package/docs/enums/PointType.html +7 -7
  36. package/docs/enums/Rotation.html +8 -8
  37. package/docs/functions/CSS3DRenderPlugin.html +4 -4
  38. package/docs/functions/CameraMovementPlugin.html +4 -4
  39. package/docs/functions/CruisePlugin.html +4 -4
  40. package/docs/functions/GuideLinePlugin.html +5 -5
  41. package/docs/functions/ItemLabelPlugin.html +4 -4
  42. package/docs/functions/MapviewFloorplanPlugin.html +4 -4
  43. package/docs/functions/ModelChassisCompassPlugin.html +4 -4
  44. package/docs/functions/ModelEntryDoorGuidePlugin.html +4 -4
  45. package/docs/functions/ModelFloorplanPlugin.html +4 -4
  46. package/docs/functions/ModelItemLabelPlugin.html +4 -4
  47. package/docs/functions/ModelRoomLabelPlugin.html +4 -4
  48. package/docs/functions/ModelTVVideoPlugin.html +4 -4
  49. package/docs/functions/ModelViewPlugin.html +4 -4
  50. package/docs/functions/Object3DHelperPlugin.html +4 -4
  51. package/docs/functions/PanoCompassPlugin.html +4 -4
  52. package/docs/functions/PanoCursorRaycasterPlugin.html +4 -4
  53. package/docs/functions/PanoDoorLabelPlugin.html +4 -4
  54. package/docs/functions/PanoFloorplanRadarPlugin.html +4 -4
  55. package/docs/functions/PanoMeasurePlugin.html +4 -4
  56. package/docs/functions/PanoRulerPlugin.html +4 -4
  57. package/docs/functions/PanoRulerProPlugin.html +4 -4
  58. package/docs/functions/PanoSpatialTagPlugin.html +4 -4
  59. package/docs/functions/PanoTagPlugin.html +4 -4
  60. package/docs/functions/TopviewFloorplanPlugin.html +4 -4
  61. package/docs/functions/Util.getCoordsFromClient.html +5 -5
  62. package/docs/functions/Util.getCoordsFromElement.html +5 -5
  63. package/docs/functions/Util.getFrameTime.html +5 -5
  64. package/docs/functions/Util.getIntersectFromRelativePosition.html +5 -5
  65. package/docs/functions/Util.getRaycasterFromFivePointer.html +5 -5
  66. package/docs/functions/Util.isNil.html +5 -5
  67. package/docs/functions/Util.nextFrame.html +5 -5
  68. package/docs/functions/Util.notNil.html +5 -5
  69. package/docs/functions/Util.requestAnimationFrameInterval.html +5 -5
  70. package/docs/functions/Util.tweenProgress.html +5 -5
  71. package/docs/functions/pluginFlag.html +5 -5
  72. package/docs/index.html +4 -4
  73. package/docs/interfaces/CSS3DRenderPluginEventMap.html +11 -11
  74. package/docs/interfaces/CSS3DRenderPluginState.html +8 -8
  75. package/docs/interfaces/CameraMovementPluginExportType.html +7 -7
  76. package/docs/interfaces/ContentTypeMap.html +12 -12
  77. package/docs/interfaces/FloorplanBounding.html +8 -8
  78. package/docs/interfaces/FloorplanData.html +10 -10
  79. package/docs/interfaces/FloorplanEntrance.html +11 -11
  80. package/docs/interfaces/FloorplanExtraObject.html +10 -10
  81. package/docs/interfaces/FloorplanExtraObject3D.html +8 -8
  82. package/docs/interfaces/FloorplanFloorData.html +9 -9
  83. package/docs/interfaces/FloorplanImagePosition.html +7 -7
  84. package/docs/interfaces/FloorplanObserver.html +9 -9
  85. package/docs/interfaces/FloorplanOutlineItem.html +9 -9
  86. package/docs/interfaces/FloorplanPosition.html +7 -7
  87. package/docs/interfaces/FloorplanRoomItem.html +13 -13
  88. package/docs/interfaces/FloorplanRoomLabelItem.html +7 -7
  89. package/docs/interfaces/FloorplanServerBounding.html +8 -8
  90. package/docs/interfaces/FloorplanServerComputedData.html +10 -10
  91. package/docs/interfaces/FloorplanServerData.html +7 -7
  92. package/docs/interfaces/FloorplanServerDoorItem.html +10 -10
  93. package/docs/interfaces/FloorplanServerDoorPosition.html +8 -8
  94. package/docs/interfaces/FloorplanServerEntrance.html +11 -11
  95. package/docs/interfaces/FloorplanServerFloorData.html +9 -9
  96. package/docs/interfaces/FloorplanServerImagePosition.html +7 -7
  97. package/docs/interfaces/FloorplanServerObserver.html +9 -9
  98. package/docs/interfaces/FloorplanServerOutlineItem.html +9 -9
  99. package/docs/interfaces/FloorplanServerPosition.html +7 -7
  100. package/docs/interfaces/FloorplanServerRoomItem.html +14 -14
  101. package/docs/interfaces/FloorplanServerRoomLabelItem.html +7 -7
  102. package/docs/interfaces/ItemLabelPluginData.html +6 -6
  103. package/docs/interfaces/ItemLabelPluginExportReturnsType.html +11 -11
  104. package/docs/interfaces/ItemLabelPluginParametersType.html +9 -9
  105. package/docs/interfaces/ModelChassisCompassPluginData.html +7 -7
  106. package/docs/interfaces/ModelChassisCompassPluginExportType.html +8 -8
  107. package/docs/interfaces/ModelChassisCompassPluginParameterType.html +7 -7
  108. package/docs/interfaces/ModelEntryDoorGuidePluginData.html +8 -8
  109. package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +8 -8
  110. package/docs/interfaces/ModelItemLabelPluginData.html +6 -6
  111. package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +11 -11
  112. package/docs/interfaces/ModelItemLabelPluginParametersType.html +7 -7
  113. package/docs/interfaces/ModelRoomLabelPluginData.html +6 -6
  114. package/docs/interfaces/ModelTVVideoPluginData.html +9 -9
  115. package/docs/interfaces/ModelTVVideoPluginExportType.html +8 -8
  116. package/docs/interfaces/ModelTVVideoPluginParameterType.html +6 -6
  117. package/docs/interfaces/ModelViewPluginExportType.html +11 -11
  118. package/docs/interfaces/Object3DHelperState.html +8 -8
  119. package/docs/interfaces/PaintBrushAction.html +12 -12
  120. package/docs/interfaces/PaintBrushConfigs.html +12 -12
  121. package/docs/interfaces/PaintBrushState.html +10 -10
  122. package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +10 -10
  123. package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +5 -5
  124. package/docs/interfaces/PanoMeasureParameterType.html +12 -12
  125. package/docs/interfaces/PanoMeasurePluginLineJson.html +8 -8
  126. package/docs/interfaces/PanoMeasurePluginOpenParameter.html +7 -7
  127. package/docs/interfaces/PanoMeasurePluginPointJson.html +7 -7
  128. package/docs/interfaces/PanoMeasurePluginPolylineJson.html +8 -8
  129. package/docs/interfaces/PanoRulerPluginExportType.html +10 -10
  130. package/docs/interfaces/PanoRulerPluginOptions.html +7 -7
  131. package/docs/interfaces/PanoRulerPluginParameterType.html +8 -8
  132. package/docs/interfaces/PanoRulerProPluginExportType.html +9 -9
  133. package/docs/interfaces/PanoRulerProPluginOptions.html +7 -7
  134. package/docs/interfaces/PanoRulerProPluginParameterType.html +7 -7
  135. package/docs/interfaces/PanoRulerProPluginState.html +8 -8
  136. package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +5 -5
  137. package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +5 -5
  138. package/docs/interfaces/PanoSpatialTagPluginData.html +11 -11
  139. package/docs/interfaces/PanoSpatialTagPluginDataElement.html +10 -10
  140. package/docs/interfaces/PanoSpatialTagPluginExportType.html +13 -13
  141. package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +10 -10
  142. package/docs/interfaces/PanoSpatialTagPluginParameterType.html +13 -13
  143. package/docs/interfaces/PanoSpatialTagPluginPointElement.html +11 -11
  144. package/docs/interfaces/PanoSpatialTagPluginTagElement.html +10 -10
  145. package/docs/interfaces/Point.html +8 -8
  146. package/docs/interfaces/Room.html +9 -9
  147. package/docs/interfaces/RoomInfo.html +7 -7
  148. package/docs/interfaces/RoomLabel.html +14 -14
  149. package/docs/interfaces/RoomRules.html +5 -5
  150. package/docs/interfaces/Rooms.html +5 -5
  151. package/docs/interfaces/Scissor.html +9 -9
  152. package/docs/interfaces/TagConfig.html +10 -10
  153. package/docs/interfaces/Tags.html +9 -9
  154. package/docs/interfaces/Util.MagnifierParameter.html +11 -11
  155. package/docs/interfaces/Util.MouseGroupParameter.html +8 -8
  156. package/docs/modules/Util.html +5 -5
  157. package/docs/modules.html +4 -4
  158. package/docs/types/ArrayPosition.html +5 -5
  159. package/docs/types/CSS3DRenderExportType.html +5 -5
  160. package/docs/types/CSS3DRenderPluginExportType.html +5 -5
  161. package/docs/types/CSS3DRenderPluginParameterType.html +5 -5
  162. package/docs/types/Color.html +5 -5
  163. package/docs/types/ContentTypeConfigKey.html +5 -5
  164. package/docs/types/ContentTypeConfigKeyArray.html +5 -5
  165. package/docs/types/Create3DDomContainerReturnType.html +5 -5
  166. package/docs/types/Create3DElementReturnType.html +5 -5
  167. package/docs/types/CruisePluginExportType.html +5 -5
  168. package/docs/types/Direction-1.html +5 -5
  169. package/docs/types/Direction4.html +5 -5
  170. package/docs/types/FloorplanRuleLabels.html +5 -5
  171. package/docs/types/FloorplanServerRuleLabels.html +5 -5
  172. package/docs/types/GuideLinePluginExportType.html +5 -5
  173. package/docs/types/HelperEventMap.html +5 -5
  174. package/docs/types/MapviewFloorplanPluginParameterType.html +5 -5
  175. package/docs/types/MapviewFloorplanPluginReturnType.html +5 -5
  176. package/docs/types/MediaData.html +5 -5
  177. package/docs/types/ModelEntryDoorGuidePluginParameterType.html +5 -5
  178. package/docs/types/ModelFloorplanPluginParameterType.html +5 -5
  179. package/docs/types/ModelFloorplanPluginReturnType.html +5 -5
  180. package/docs/types/ModelRoomLabelPluginParameters.html +5 -5
  181. package/docs/types/ModelRoomLabelPluginReturnType.html +5 -5
  182. package/docs/types/MoveArgs.html +5 -5
  183. package/docs/types/MoveOpts.html +5 -5
  184. package/docs/types/Object3DHelperEventMap.html +5 -5
  185. package/docs/types/ObjectFit.html +5 -5
  186. package/docs/types/PaintBrushEventMap.html +5 -5
  187. package/docs/types/PanoCompassPluginData.html +5 -5
  188. package/docs/types/PanoCompassPluginExportType.html +5 -5
  189. package/docs/types/PanoCompassPluginParameterType.html +5 -5
  190. package/docs/types/PanoFloorplanRadarPluginParameterType.html +5 -5
  191. package/docs/types/PanoFloorplanRadarPluginReturnType.html +5 -5
  192. package/docs/types/PanoMeasurePluginEvent.html +5 -5
  193. package/docs/types/PanoMeasureReturnType.html +5 -5
  194. package/docs/types/PanoSpatialTagPluginId.html +5 -5
  195. package/docs/types/PanoTagPluginExportInterface.html +5 -5
  196. package/docs/types/PanoTagPluginParamsInterface.html +5 -5
  197. package/docs/types/PlaneTag.html +5 -5
  198. package/docs/types/PointTag.html +5 -5
  199. package/docs/types/Position.html +5 -5
  200. package/docs/types/RotateArgs.html +5 -5
  201. package/docs/types/RotateOpts.html +5 -5
  202. package/docs/types/RuleLabelsKey.html +5 -5
  203. package/docs/types/RuleLabelsValue.html +5 -5
  204. package/docs/types/Tag.html +5 -5
  205. package/docs/types/Tag2D.html +5 -5
  206. package/docs/types/Tag3D.html +5 -5
  207. package/docs/types/TagId.html +5 -5
  208. package/docs/types/TopviewFloorplanPluginParameterType.html +5 -5
  209. package/docs/types/TopviewFloorplanPluginReturnType.html +5 -5
  210. package/docs/variables/FLOOR_TYPE_MAP.html +5 -5
  211. package/docs/variables/PLUGIN.html +5 -5
  212. package/docs/variables/ROOM_FETILE_TYPE_MAP.html +5 -5
  213. package/docs/variables/ROOM_TYPE_MAP.html +5 -5
  214. package/docs/variables/VERSION.html +5 -5
  215. package/docs/variables/itemLabelPluginServerParams.html +5 -5
  216. package/docs/variables/modelItemLabelPluginServerParams.html +5 -5
  217. package/docs/variables/modelRoomLabelPluginServerParams.html +5 -5
  218. package/libs/PanoMeasurePlugin/Controller/BaseController.js +5 -5
  219. package/libs/PanoMeasurePlugin/Controller/EditController.js +4 -4
  220. package/libs/PanoMeasurePlugin/Controller/MixedController.d.ts +1 -0
  221. package/libs/PanoMeasurePlugin/Controller/MixedController.js +18 -17
  222. package/libs/PanoMeasurePlugin/Controller/ViewController.d.ts +0 -7
  223. package/libs/PanoMeasurePlugin/Controller/ViewController.js +32 -78
  224. package/libs/PanoMeasurePlugin/Controller/WatchController.js +2 -2
  225. package/libs/PanoMeasurePlugin/Modules/DeleteDom/index.js +1 -1
  226. package/libs/PanoMeasurePlugin/Modules/Magnifier.d.ts +29 -16
  227. package/libs/PanoMeasurePlugin/Modules/Magnifier.js +113 -62
  228. package/libs/PanoMeasurePlugin/Modules/UIController/mobileMainBtnController.js +3 -3
  229. package/libs/PanoMeasurePlugin/index.js +3 -3
  230. package/libs/PanoMeasurePlugin/utils/distanceDom.js +14 -11
  231. package/libs/index.js +3 -3
  232. package/package.json +1 -1
@@ -1,95 +1,139 @@
1
- var P = Object.defineProperty;
2
- var w = (a, t, e) => t in a ? P(a, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : a[t] = e;
3
- var i = (a, t, e) => (w(a, typeof t != "symbol" ? t + "" : t, e), e);
4
- import E from "hammerjs";
5
- import * as y from "three";
6
- import { Subscribe as b } from "@realsee/five";
7
- function g(a, t, e) {
8
- const n = a[t];
9
- a[t] = a[e], a[e] = n;
1
+ var p = Object.defineProperty;
2
+ var C = (r, t, e) => t in r ? p(r, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : r[t] = e;
3
+ var n = (r, t, e) => (C(r, typeof t != "symbol" ? t + "" : t, e), e);
4
+ import b from "hammerjs";
5
+ import * as l from "three";
6
+ import { Subscribe as w } from "@realsee/five";
7
+ function d(r, t, e) {
8
+ const i = r[t], s = r[e];
9
+ i === void 0 || s === void 0 || (r[t] = s, r[e] = i);
10
10
  }
11
- function C(a, t, e) {
12
- const n = e / 2;
13
- for (let s = 1; s <= n; s++) {
11
+ function R(r, t, e) {
12
+ const i = e / 2;
13
+ for (let s = 1; s <= i; s++) {
14
14
  const h = e - (s - 1);
15
- for (let r = 1; r <= t; r++) {
16
- const l = (s - 1) * t + r - 1, o = (h - 1) * t + r - 1;
17
- g(a, l * 4 + 0, o * 4 + 0), g(a, l * 4 + 1, o * 4 + 1), g(a, l * 4 + 2, o * 4 + 2), g(a, l * 4 + 3, o * 4 + 3);
15
+ for (let a = 1; a <= t; a++) {
16
+ const o = (s - 1) * t + a - 1, f = (h - 1) * t + a - 1;
17
+ d(r, o * 4 + 0, f * 4 + 0), d(r, o * 4 + 1, f * 4 + 1), d(r, o * 4 + 2, f * 4 + 2), d(r, o * 4 + 3, f * 4 + 3);
18
18
  }
19
19
  }
20
20
  }
21
- class H {
21
+ class S {
22
22
  constructor(t, e) {
23
- i(this, "width");
24
- i(this, "height");
25
- i(this, "visible", !1);
26
- i(this, "hooks", new b());
27
- i(this, "contentDom", document.createElement("canvas"));
28
- i(this, "five");
29
- i(this, "scale");
30
- i(this, "wrapper");
31
- i(this, "config");
32
- i(this, "offset", { x: 0, y: 0 });
33
- i(this, "canvas", this.contentDom);
34
- i(this, "context");
35
- i(this, "renderCenter", new y.Vector3());
36
- i(this, "lastPanEvent");
37
- i(this, "hammer");
38
- i(this, "onPan", (t) => {
39
- var c, d, f, x;
40
- if (!this.wrapper)
41
- return;
42
- const e = (d = (c = this.lastPanEvent) == null ? void 0 : c.deltaX) != null ? d : 0, n = (x = (f = this.lastPanEvent) == null ? void 0 : f.deltaY) != null ? x : 0, s = t.deltaX - e, h = t.deltaY - n;
43
- if (this.lastPanEvent = t, this.hooks.emit("wantsPanGesture", { srcEvent: t, deltaX: s, deltaY: h }))
23
+ n(this, "width");
24
+ n(this, "height");
25
+ n(this, "containerDom");
26
+ n(this, "hooks", new w());
27
+ n(this, "canvas", document.createElement("canvas"));
28
+ n(this, "five");
29
+ n(this, "scale");
30
+ n(this, "config");
31
+ n(this, "offset", { x: 0, y: 0 });
32
+ n(this, "context");
33
+ n(this, "renderCenter", new l.Vector3());
34
+ n(this, "hammer");
35
+ n(this, "state", { enabled: !1 });
36
+ n(this, "offsetRange");
37
+ n(this, "isPanning", !1);
38
+ n(this, "onPanstart", () => {
39
+ this.isPanning = !0, this.canvas.style.boxShadow = "0 2px 30px 0 rgba(0,0,0,0.20)";
40
+ });
41
+ n(this, "onPan", (t) => {
42
+ if (!this.isPanning || !this.offsetRange || this.hooks.emit("wantsPanGesture", t))
44
43
  return;
45
- const l = this.offset.x + s, o = this.offset.y + h;
46
- this.contentDom.style.boxShadow = "0 2px 30px 0 rgba(0,0,0,0.20)", this.canvas.style.transform = `translate3d(${l}px, ${o}px, 100px)`, this.offset = { x: l, y: o };
44
+ const { translateX: i, translateY: s } = this.getPanOffset(t, this.offsetRange);
45
+ this.canvas.style.transform = `translate3d(${i}px, ${s}px, 100px)`;
47
46
  });
48
- i(this, "onPanEnd", (t) => {
49
- this.lastPanEvent = void 0, this.contentDom.style.boxShadow = "none";
47
+ n(this, "onPanend", (t) => {
48
+ if (this.isPanning = !1, this.canvas.style.boxShadow = "none", !this.offsetRange)
49
+ return;
50
+ const { translateX: e, translateY: i } = this.getPanOffset(t, this.offsetRange);
51
+ this.canvas.style.transform = `translate3d(${e}px, ${i}px, 100px)`, this.offset = { x: e, y: i };
50
52
  });
51
- var s, h, r;
53
+ var s, h, a;
52
54
  if (!t.renderer)
53
55
  throw new Error("Five Render \u672A\u521D\u59CB\u5316");
54
- this.five = t, this.scale = (s = e == null ? void 0 : e.scale) != null ? s : 2, this.width = (h = e == null ? void 0 : e.width) != null ? h : 190, this.height = (r = e == null ? void 0 : e.height) != null ? r : 190, this.config = {
56
+ this.five = t, this.scale = (s = e == null ? void 0 : e.scale) != null ? s : 2, this.width = (h = e == null ? void 0 : e.width) != null ? h : 190, this.height = (a = e == null ? void 0 : e.height) != null ? a : 190, this.config = {
55
57
  dragEnabled: (e == null ? void 0 : e.dragEnabled) || !1,
56
58
  autoFixPCPosition: (e == null ? void 0 : e.autoFixPCPosition) || !1,
57
59
  initialPosition: (e == null ? void 0 : e.initialPosition) || { left: "0", top: "0" }
58
60
  };
59
- const n = this.canvas.getContext("2d");
60
- if (!n)
61
+ const i = this.canvas.getContext("2d");
62
+ if (!i)
61
63
  throw new Error("CANNOT CREATE CONTEXT2D");
62
- this.context = n, this.config.dragEnabled && (this.hammer = new E(this.canvas), this.hammer.on("pan", this.onPan), this.hammer.on("panend", this.onPanEnd));
64
+ this.context = i, this.config.dragEnabled && (this.hammer = new b(this.canvas), this.hammer.on("pan", this.onPan), this.hammer.on("panstart", this.onPanstart), this.hammer.on("panend", this.onPanend)), this.initStyle();
63
65
  }
64
66
  dispose() {
65
67
  var t;
66
- this.clear(), this.remove(), (t = this.hammer) == null || t.destroy();
68
+ this.clear(), this.disable(), (t = this.hammer) == null || t.destroy();
67
69
  }
68
- remove() {
69
- this.canvas.remove(), this.visible = !1;
70
+ enable() {
71
+ if (!this.state.enabled)
72
+ return this.state.enabled = !0, this.containerDom && this._appendTo(this.containerDom), this;
70
73
  }
71
- clear() {
72
- this.context.clearRect(0, 0, this.canvas.width, this.canvas.height);
74
+ disable() {
75
+ if (!!this.state.enabled)
76
+ return this.state.enabled = !1, this.canvas.remove(), this;
73
77
  }
74
78
  appendTo(t) {
75
- this.wrapper = t, this.initStyle(), t.append(this.canvas), this.visible = !0;
79
+ return this.containerDom = t, this.state.enabled && this._appendTo(t), this;
80
+ }
81
+ clear() {
82
+ return this.context.clearRect(0, 0, this.canvas.width, this.canvas.height), this;
76
83
  }
77
84
  renderWithPoint(t) {
78
- !this.wrapper || (this.renderCenter = t, this.render(), this.config.autoFixPCPosition && this.autoFixPCPosition());
85
+ !this.containerDom || !this.state.enabled || (this.renderCenter = t, this.render(), this.config.autoFixPCPosition && this.autoFixPCPosition());
86
+ }
87
+ renderWithScreenPoint(t) {
88
+ !this.containerDom || !this.state.enabled || (this.renderCenter = t, this.render(), this.config.autoFixPCPosition && this.autoFixPCPosition());
89
+ }
90
+ resetOffset() {
91
+ this.offset = { x: 0, y: 0 }, this.canvas.style.transform = `translate3d(${0}px, ${0}px, 100px)`;
92
+ }
93
+ getCurrentState() {
94
+ return { enabled: this.state.enabled };
95
+ }
96
+ getRenderCenter() {
97
+ return this.renderCenter;
98
+ }
99
+ _appendTo(t) {
100
+ if (this.resetOffset(), t.appendChild(this.canvas), !this.offsetRange) {
101
+ const e = this.canvas.getBoundingClientRect(), i = t.getBoundingClientRect(), s = i.right - e.right, h = i.bottom - e.bottom, a = i.left - e.left, o = i.top - e.top;
102
+ this.offsetRange = {
103
+ min: { x: a, y: o },
104
+ max: { x: s, y: h }
105
+ };
106
+ }
79
107
  }
80
108
  autoFixPCPosition() {
81
- if (!this.wrapper)
109
+ if (!this.containerDom)
82
110
  return;
83
- const { width: t, height: e } = this, n = this.renderCenter.clone().project(this.five.camera), s = (n.x + 1) / 2 * this.wrapper.clientWidth, h = -(n.x - 1) / 2 * this.wrapper.clientWidth, r = -(n.y - 1) / 2 * this.wrapper.clientHeight;
84
- s < 183 ? (this.canvas.style.top = -e / 2 + "px", this.canvas.style.left = 90 + "px") : r < 183 ? (this.canvas.style.top = 90 + "px", this.canvas.style.left = -t / 2 + "px") : h < 183 ? (this.canvas.style.top = -e / 2 + "px", this.canvas.style.left = -t - 90 + "px") : (this.canvas.style.left = -t / 2 + "px", this.canvas.style.top = -e - 90 + "px"), this.canvas.style.transform = `translate3d(${s}px, ${r}px, 10px)`, this.offset = { x: s, y: r };
111
+ const { width: t, height: e } = this, [i, s, h] = (() => {
112
+ if (this.renderCenter instanceof l.Vector3) {
113
+ const a = this.renderCenter.clone().project(this.five.camera);
114
+ return [
115
+ (a.x + 1) / 2 * this.containerDom.clientWidth,
116
+ -(a.x - 1) / 2 * this.containerDom.clientWidth,
117
+ -(a.y - 1) / 2 * this.containerDom.clientHeight
118
+ ];
119
+ } else
120
+ return [this.renderCenter.x, this.containerDom.clientWidth - this.renderCenter.x, this.renderCenter.y];
121
+ })();
122
+ i < 183 ? (this.canvas.style.top = -e / 2 + "px", this.canvas.style.left = 90 + "px") : h < 183 ? (this.canvas.style.top = 90 + "px", this.canvas.style.left = -t / 2 + "px") : s < 183 ? (this.canvas.style.top = -e / 2 + "px", this.canvas.style.left = -t - 90 + "px") : (this.canvas.style.left = -t / 2 + "px", this.canvas.style.top = -e - 90 + "px"), this.canvas.style.transform = `translate3d(${i}px, ${h}px, 10px)`, this.offset = { x: i, y: h };
85
123
  }
86
124
  render() {
87
- if (!this.five.renderer || !this.wrapper)
125
+ if (!this.five.renderer || !this.containerDom)
88
126
  return;
89
- const { scale: t, context: e, width: n, height: s } = this, h = this.renderCenter.clone().project(this.five.camera), r = this.five.renderer.getSize(new y.Vector2()), l = 1, o = n / t, c = s / t, d = l * t, f = (h.x + 1) / 2 * r.x, x = (h.y + 1) / 2 * r.y, v = this.five.getPixels(f - o / 2, x - o / 2, o, c, d), p = Math.floor(n * l), m = Math.floor(s * l);
90
- C(v, p, m);
91
- const u = new ImageData(p, m);
92
- u.data.set(v), e.putImageData(u, 0, 0);
127
+ const { scale: t, context: e, width: i, height: s } = this, h = this.five.renderer.getSize(new l.Vector2()), [a, o] = (() => {
128
+ if (this.renderCenter instanceof l.Vector3) {
129
+ const y = this.renderCenter.clone().project(this.five.camera);
130
+ return [(y.x + 1) / 2 * h.x, (y.y + 1) / 2 * h.y];
131
+ } else
132
+ return [this.renderCenter.x, h.y - this.renderCenter.y];
133
+ })(), f = 1, c = i / t, x = s / t, P = f * t, g = this.five.getPixels(a - c / 2, o - c / 2, c, x, P), m = Math.floor(i * f), u = Math.floor(s * f);
134
+ R(g, m, u);
135
+ const v = new ImageData(m, u);
136
+ v.data.set(g), e.putImageData(v, 0, 0);
93
137
  }
94
138
  initStyle() {
95
139
  const t = this.canvas;
@@ -97,7 +141,14 @@ class H {
97
141
  const e = 1;
98
142
  t.setAttribute("width", (this.width * e).toString()), t.setAttribute("height", (this.height * e).toString()), t.style.border = "2px solid rgba(255,255,255,0.20)", t.style.width = this.width + "px", t.style.height = this.height + "px", t.style.top = this.config.initialPosition.top, t.style.left = this.config.initialPosition.left, t.style.transform = "translate(0,0,100px)", this.config.dragEnabled && (this.canvas.style.cursor = "pointer");
99
143
  }
144
+ getPanOffset(t, e) {
145
+ const {
146
+ min: { x: i, y: s },
147
+ max: { x: h, y: a }
148
+ } = e, o = this.offset.x + t.deltaX, f = this.offset.y + t.deltaY, c = Math.min(Math.max(o, i), h), x = Math.min(Math.max(f, s), a);
149
+ return { translateX: c, translateY: x };
150
+ }
100
151
  }
101
152
  export {
102
- H as Magnifier
153
+ S as Magnifier
103
154
  };
@@ -3,7 +3,7 @@ var r = (i, t, e) => t in i ? _(i, t, { enumerable: !0, configurable: !0, writab
3
3
  var n = (i, t, e) => (r(i, typeof t != "symbol" ? t + "" : t, e), e);
4
4
  import { mainIconStyle as l, mainItemStyle as o } from "./style.js";
5
5
  import "three";
6
- class f {
6
+ class p {
7
7
  constructor(t, e, s) {
8
8
  n(this, "container");
9
9
  n(this, "measureController");
@@ -21,7 +21,7 @@ class f {
21
21
  this._params = s, this._btnTexts = {
22
22
  start: (a = this._params.startButtonText) != null ? a : this._btnTexts.start,
23
23
  end: (m = this._params.endButtonText) != null ? m : this._btnTexts.end
24
- }, this.measureController = t, this.container = e, this.mainElement = this.getMainElement(), Object.assign(this.mainElement.mainIcon.style, l), Object.assign(this.mainElement.mainItem.style, o), this.change2Add(), this.mainElement.mainItem.addEventListener("click", this.onClick);
24
+ }, this.measureController = t, this.container = e, this.mainElement = this.getMainElement(), this.mainElement.mainIcon.setAttribute("style", "-webkit-tap-highlight-color: rgba(0,0,0,0);"), Object.assign(this.mainElement.mainIcon.style, l), Object.assign(this.mainElement.mainItem.style, o), this.change2Add(), this.mainElement.mainItem.addEventListener("click", this.onClick);
25
25
  }
26
26
  dispose() {
27
27
  this.mainElement.mainItem.removeEventListener("click", this.onClick);
@@ -50,5 +50,5 @@ class f {
50
50
  }
51
51
  }
52
52
  export {
53
- f as MobileMainBtnController
53
+ p as MobileMainBtnController
54
54
  };
@@ -14,9 +14,6 @@ import "./utils/ironbox.js";
14
14
  import "./utils/getIntersectionFromEvent.js";
15
15
  import "./utils/getPointFromHammerEvent.js";
16
16
  import "./Controller/ViewController.js";
17
- import "./utils/math.js";
18
- import "./utils/isNDCPointInScreen.js";
19
- import "./utils/findAssociatedLines.js";
20
17
  import "@realsee/five/line";
21
18
  import "./utils/constants.js";
22
19
  import "@realsee/five";
@@ -25,8 +22,11 @@ import "./Modules/DeleteDom/index.js";
25
22
  import "./Modules/DeleteDom/_Assets/delete.svg.js";
26
23
  import "./Modules/DeleteDom/_Assets/delete_bg.png.js";
27
24
  import "./Modules/DeleteDom/_Assets/delete_hover_bg.png.js";
25
+ import "./utils/isNDCPointInScreen.js";
26
+ import "./utils/math.js";
28
27
  import "./utils/findClosestPoint.js";
29
28
  import "./utils/ndc2Screen.js";
29
+ import "./utils/findAssociatedLines.js";
30
30
  import "./Controller/MixedController.js";
31
31
  import "./Modules/rangePiece/index.js";
32
32
  import "@tweenjs/tween.js";
@@ -5,7 +5,10 @@ import "./constants.js";
5
5
  import "@realsee/five";
6
6
  function j() {
7
7
  const t = document.createElement("div");
8
- return t.setAttribute("style", "backdrop-filter: blur(4px);-webkit-backdrop-filter: blur(4px);"), t.style.width = "max-content", t.style.padding = "3px 6px", t.style.lineHeight = "1", t.style.textAlign = "center", t.style.transform = "translate(-50%, -50%)", t.style.borderRadius = "100px", t.style.fontSize = "14px", t.style.color = "#fff", t.style.background = "rgba(195,195,195,0.70)", t.style.border = "0.5px solid rgba(255,255,255,0.6)", t.style.cursor = "pointer", t;
8
+ return t.setAttribute(
9
+ "style",
10
+ "backdrop-filter: blur(4px);-webkit-backdrop-filter: blur(4px);-webkit-tap-highlight-color: rgba(0,0,0,0);"
11
+ ), t.style.width = "max-content", t.style.padding = "3px 6px", t.style.lineHeight = "1", t.style.textAlign = "center", t.style.transform = "translate(-50%, -50%)", t.style.borderRadius = "100px", t.style.fontSize = "14px", t.style.color = "#fff", t.style.background = "rgba(195,195,195,0.70)", t.style.border = "0.5px solid rgba(255,255,255,0.6)", t.style.cursor = "pointer", t;
9
12
  }
10
13
  function V(t) {
11
14
  const e = document.createElement("div");
@@ -19,8 +22,8 @@ function J(t) {
19
22
  update: H,
20
23
  appendTo: I,
21
24
  remove: T,
22
- highlight: F,
23
- unHighlight: w,
25
+ highlight: w,
26
+ unHighlight: F,
24
27
  getCurrentContent: P,
25
28
  setItemSelectable: A
26
29
  };
@@ -29,12 +32,12 @@ function J(t) {
29
32
  var i;
30
33
  (i = t.clickCallback) == null || i.call(t, E);
31
34
  }
32
- function F() {
35
+ function w() {
33
36
  if (o)
34
37
  return o.highlight();
35
38
  r.style.border = "0.5px solid #95AEFF", r.style.background = "linear-gradient(90deg, #95AEFF 0%, #6386FF 100%)";
36
39
  }
37
- function w() {
40
+ function F() {
38
41
  if (o)
39
42
  return o.unHighlight();
40
43
  r.style.border = "0.5px solid rgba(255,255,255,0.6)", r.style.background = "rgba(195,195,195,0.70)";
@@ -47,15 +50,15 @@ function J(t) {
47
50
  const f = i.getElement();
48
51
  if (!f)
49
52
  return;
50
- const u = f.clientWidth, l = f.clientHeight, m = u / 2, a = l / 2;
53
+ const u = f.clientWidth, l = f.clientHeight, p = u / 2, a = l / 2;
51
54
  if (s.points.length < 2)
52
55
  return;
53
- const [p, d] = s.points, c = p.position.clone().project(i.camera), y = d.position.clone().project(i.camera), g = c.clone().lerp(y, 0.5), h = new D(c.x * m, c.y * a), b = new D(y.x * m, y.y * a), k = h.distanceTo(b);
54
- if ((() => !(Math.abs(c.z) > 1 || Math.abs(y.z) > 1 || !x(c) && !x(y) || !x(g) || k === 0))() === !1) {
56
+ const [g, d] = s.points, c = g.position.clone().project(i.camera), y = d.position.clone().project(i.camera), m = c.clone().lerp(y, 0.5), h = new D(c.x * p, c.y * a), b = new D(y.x * p, y.y * a), k = h.distanceTo(b);
57
+ if ((() => !(Math.abs(c.z) > 1 || Math.abs(y.z) > 1 || !x(c) && !x(y) || !x(m) || k === 0))() === !1) {
55
58
  n.style.opacity = "0", n.style.pointerEvents = "none";
56
59
  return;
57
60
  }
58
- const L = (g.x + 1) / 2 * u, M = -(g.y - 1) / 2 * l, W = -(Math.atan((h.y - b.y) / (h.x - b.x)) * 180) / Math.PI, $ = n.parentElement && r.clientWidth > k ? -20 : 0;
61
+ const L = (m.x + 1) / 2 * u, M = -(m.y - 1) / 2 * l, W = -(Math.atan((h.y - b.y) / (h.x - b.x)) * 180) / Math.PI, $ = n.parentElement && r.clientWidth > k ? -20 : 0;
59
62
  n.style.transform = `translate(${L}px, ${M}px) rotate(${W}deg) translateY(${$}px)`, n.style.opacity = "1", n.style.pointerEvents = e ? "all" : "none", o && o.update({ line: s, polyline: s.getPolyline() });
60
63
  const z = P();
61
64
  r.innerText = z;
@@ -67,10 +70,10 @@ function J(t) {
67
70
  r.removeEventListener("click", v), n.remove();
68
71
  }
69
72
  function P() {
70
- var p, d, c;
73
+ var g, d, c;
71
74
  if (s.points.length < 2)
72
75
  return "";
73
- const [i, f] = s.points, u = i.position.clone().distanceTo(f.position), l = (p = t.line.text) != null ? p : t.line.model.config.defaultText, m = (c = (d = t.line.model.config) == null ? void 0 : d.getDistanceText) == null ? void 0 : c.call(d, u), a = l != null ? l : m;
76
+ const [i, f] = s.points, u = i.position.clone().distanceTo(f.position), l = (g = t.line.text) != null ? g : t.line.model.config.defaultText, p = (c = (d = t.line.model.config) == null ? void 0 : d.getDistanceText) == null ? void 0 : c.call(d, u), a = l != null ? l : p;
74
77
  return a != null ? a : u.toFixed(2) + "m";
75
78
  }
76
79
  function A(i) {
package/libs/index.js CHANGED
@@ -152,17 +152,17 @@ import "./PanoMeasurePlugin/utils/ironbox.js";
152
152
  import "./PanoMeasurePlugin/utils/getIntersectionFromEvent.js";
153
153
  import "./PanoMeasurePlugin/utils/getPointFromHammerEvent.js";
154
154
  import "./PanoMeasurePlugin/Controller/ViewController.js";
155
- import "./PanoMeasurePlugin/utils/math.js";
156
- import "./PanoMeasurePlugin/utils/isNDCPointInScreen.js";
157
- import "./PanoMeasurePlugin/utils/findAssociatedLines.js";
158
155
  import "./PanoMeasurePlugin/utils/constants.js";
159
156
  import "./PanoMeasurePlugin/Controller/WatchController.js";
160
157
  import "./PanoMeasurePlugin/Modules/DeleteDom/index.js";
161
158
  import "./PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete.svg.js";
162
159
  import "./PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_bg.png.js";
163
160
  import "./PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_hover_bg.png.js";
161
+ import "./PanoMeasurePlugin/utils/isNDCPointInScreen.js";
162
+ import "./PanoMeasurePlugin/utils/math.js";
164
163
  import "./PanoMeasurePlugin/utils/findClosestPoint.js";
165
164
  import "./PanoMeasurePlugin/utils/ndc2Screen.js";
165
+ import "./PanoMeasurePlugin/utils/findAssociatedLines.js";
166
166
  import "./PanoMeasurePlugin/Controller/MixedController.js";
167
167
  import "./PanoMeasurePlugin/Modules/rangePiece/index.js";
168
168
  import "./PanoMeasurePlugin/Modules/rangePiece/html.js";
package/package.json CHANGED
@@ -7,7 +7,7 @@
7
7
  "repository": "https://github.com/realsee-developer/dnalogel.git",
8
8
  "description": "如视 VR 看房插件合集",
9
9
  "private": false,
10
- "version": "2.3.7-3",
10
+ "version": "2.3.7-5",
11
11
  "license": "SEE LICENSE IN TERMS.txt",
12
12
  "scripts": {
13
13
  "clean": "rm -rf components dist docs libs types ./vite.config.js.timestamp*",