@vsleem-realsee-viewer/dualsee-plugin 2.0.12 → 2.0.13

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.
@@ -1028,6 +1028,7 @@ declare function __VLS_template(): {
1028
1028
  isMouseover: () => boolean;
1029
1029
  isMousedown: () => boolean;
1030
1030
  setState: (options?: Partial<import('@vsleem-realsee-viewer/bimsee-plugin').MaskerProps>) => void;
1031
+ setVisible: (visible: boolean) => void;
1031
1032
  setMousedown: (mousedown: boolean) => void;
1032
1033
  setMouseover: (mouseover: boolean) => void;
1033
1034
  setMinFov: (minFov: number) => void;
@@ -1077,11 +1078,12 @@ declare function __VLS_template(): {
1077
1078
  "onPosition-updated"?: ((...args: any[]) => any) | undefined;
1078
1079
  "onZoom-updated"?: ((...args: any[]) => any) | undefined;
1079
1080
  onReady?: ((...args: any[]) => any) | undefined;
1080
- }>, "dataHelper" | "isMouseover" | "isMousedown" | "setState" | "setMousedown" | "setMouseover" | "setMinFov" | "setMaxFov" | "setMaskerStatus" | "zoom" | "rotate" | "getState" | "getPosition" | "getZoomLevel" | "getCameraPosition" | "getCameraTarget" | "getCameraHFov" | "getCameraStatus"> & import('vue').ShallowUnwrapRef<{
1081
+ }>, "dataHelper" | "isMouseover" | "isMousedown" | "setState" | "setVisible" | "setMousedown" | "setMouseover" | "setMinFov" | "setMaxFov" | "setMaskerStatus" | "zoom" | "rotate" | "getState" | "getPosition" | "getZoomLevel" | "getCameraPosition" | "getCameraTarget" | "getCameraHFov" | "getCameraStatus"> & import('vue').ShallowUnwrapRef<{
1081
1082
  dataHelper: import('packages/bimsee-plugin/dist/types').DataHelper;
1082
1083
  isMouseover: () => boolean;
1083
1084
  isMousedown: () => boolean;
1084
1085
  setState: (options?: Partial<import('@vsleem-realsee-viewer/bimsee-plugin').MaskerProps>) => void;
1086
+ setVisible: (visible: boolean) => void;
1085
1087
  setMousedown: (mousedown: boolean) => void;
1086
1088
  setMouseover: (mouseover: boolean) => void;
1087
1089
  setMinFov: (minFov: number) => void;
@@ -2154,6 +2156,7 @@ declare const __VLS_component: import('vue').DefineComponent<DualseeProps, {
2154
2156
  isMouseover: () => boolean;
2155
2157
  isMousedown: () => boolean;
2156
2158
  setState: (options?: Partial<import('@vsleem-realsee-viewer/bimsee-plugin').MaskerProps>) => void;
2159
+ setVisible: (visible: boolean) => void;
2157
2160
  setMousedown: (mousedown: boolean) => void;
2158
2161
  setMouseover: (mouseover: boolean) => void;
2159
2162
  setMinFov: (minFov: number) => void;
@@ -2203,11 +2206,12 @@ declare const __VLS_component: import('vue').DefineComponent<DualseeProps, {
2203
2206
  "onPosition-updated"?: ((...args: any[]) => any) | undefined;
2204
2207
  "onZoom-updated"?: ((...args: any[]) => any) | undefined;
2205
2208
  onReady?: ((...args: any[]) => any) | undefined;
2206
- }>, "dataHelper" | "isMouseover" | "isMousedown" | "setState" | "setMousedown" | "setMouseover" | "setMinFov" | "setMaxFov" | "setMaskerStatus" | "zoom" | "rotate" | "getState" | "getPosition" | "getZoomLevel" | "getCameraPosition" | "getCameraTarget" | "getCameraHFov" | "getCameraStatus"> & import('vue').ShallowUnwrapRef<{
2209
+ }>, "dataHelper" | "isMouseover" | "isMousedown" | "setState" | "setVisible" | "setMousedown" | "setMouseover" | "setMinFov" | "setMaxFov" | "setMaskerStatus" | "zoom" | "rotate" | "getState" | "getPosition" | "getZoomLevel" | "getCameraPosition" | "getCameraTarget" | "getCameraHFov" | "getCameraStatus"> & import('vue').ShallowUnwrapRef<{
2207
2210
  dataHelper: import('packages/bimsee-plugin/dist/types').DataHelper;
2208
2211
  isMouseover: () => boolean;
2209
2212
  isMousedown: () => boolean;
2210
2213
  setState: (options?: Partial<import('@vsleem-realsee-viewer/bimsee-plugin').MaskerProps>) => void;
2214
+ setVisible: (visible: boolean) => void;
2211
2215
  setMousedown: (mousedown: boolean) => void;
2212
2216
  setMouseover: (mouseover: boolean) => void;
2213
2217
  setMinFov: (minFov: number) => void;
package/dist/index.d.ts CHANGED
@@ -1,14 +1,10 @@
1
1
  export { Dualsee as DualseePlugin } from './components';
2
2
  export { Dualsee as default } from './components';
3
- export type { DualseeProps, //场景参数
4
- BasicRealseeProps, //基础场景参数
5
- ReferRealseeProps, //对比场景参数
6
- ReferBimseeProps, //对比BIM参数
7
- UpdatableDualseeProps, //场景状态
8
- DualseeElement, //场景对象
9
- LockProps, //锁参数
10
- UpdatableLockProps, //可更新锁参数
11
- LockElement, } from './types';
12
- export { LOCK_CONFIG, // 锁默认配置
13
- DUALSEE_CONFIG, } from './settings';
3
+ export type {
4
+ /** Dualsee相关 */
5
+ DualseeProps /** 场景参数 */, BasicRealseeProps /** 基础场景参数 */, ReferRealseeProps /** 对比场景参数 */, ReferBimseeProps /** 对比BIM参数 */, UpdatableDualseeProps /** 场景状态 */, DualseeElement /** 场景对象 */,
6
+ /** Lock相关 */
7
+ LockProps /** 锁参数 */, UpdatableLockProps /** 可更新锁参数 */, LockElement /** 锁对象 */, } from './types';
8
+ export { LOCK_CONFIG /** 锁默认配置 */, DUALSEE_CONFIG /** 双重场景默认配置 */ } from './settings';
9
+ /** 错误代码code */
14
10
  export { DualseeErrorCode } from './enums';
package/dist/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { ref as q, computed as N, watch as ee, defineComponent as we, unref as w, createElementBlock as j, openBlock as z, renderSlot as p, normalizeProps as A, guardReactiveProps as g, createElementVNode as Ie, normalizeStyle as Re, createCommentVNode as _, toDisplayString as Qe, nextTick as Ce, createBlock as Ae, createVNode as ve, mergeProps as W, toHandlers as $, withCtx as y } from "vue";
1
+ import { ref as q, computed as N, watch as W, defineComponent as we, unref as w, createElementBlock as j, openBlock as z, renderSlot as p, normalizeProps as A, guardReactiveProps as g, createElementVNode as Ie, normalizeStyle as Re, createCommentVNode as ee, toDisplayString as Qe, nextTick as Ce, createBlock as Ae, createVNode as ve, mergeProps as $, toHandlers as _, withCtx as y } from "vue";
2
2
  import { RealseePlugin as Be } from "@vsleem-realsee-viewer/realsee-plugin";
3
3
  import { BimseePlugin as Se } from "@vsleem-realsee-viewer/bimsee-plugin";
4
4
  import { APP_SETTING as he, utils as ae, CoordinateModelType as Me, AppError as De, Point as Pe } from "@vsleem-realsee-viewer/shared";
@@ -14,40 +14,40 @@ const ge = {
14
14
  referRealseeVisible: !1,
15
15
  referBimseeVisible: !1
16
16
  }, { cloneDeep: me, deepMergeProps: Ve, getDiffProps: Le } = ae;
17
- function Fe(f, b) {
18
- const e = q(me(ge)), I = N(() => e.value);
19
- ee(() => me(f), i, { immediate: !0, deep: !0 });
17
+ function Fe(f, I) {
18
+ const e = q(me(ge)), B = N(() => e.value);
19
+ W(() => me(f), i, { immediate: !0, deep: !0 });
20
20
  function i(n, v) {
21
21
  const m = Le(n, v);
22
22
  d(m);
23
23
  }
24
24
  function c() {
25
- return I.value;
25
+ return B.value;
26
26
  }
27
27
  function d(n) {
28
28
  n && Ve(e.value, n);
29
29
  }
30
30
  function C(n) {
31
- d({ distance: n }), b("distance-updated", n);
31
+ d({ distance: n }), I("distance-updated", n);
32
32
  }
33
- function B(n) {
34
- d({ locked: n }), b("locked-updated", n);
33
+ function b(n) {
34
+ d({ locked: n }), I("locked-updated", n);
35
35
  }
36
36
  function u() {
37
37
  d({ showDistance: !0 });
38
38
  }
39
- function M() {
39
+ function h() {
40
40
  d({ showDistance: !1 });
41
41
  }
42
42
  return {
43
- getProps: I,
43
+ getProps: B,
44
44
  lockAction: {
45
45
  getState: c,
46
46
  setState: d,
47
47
  setDistance: C,
48
- setLocked: B,
48
+ setLocked: b,
49
49
  showDistance: u,
50
- hideDistance: M
50
+ hideDistance: h
51
51
  }
52
52
  };
53
53
  }
@@ -63,30 +63,30 @@ const Je = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAA
63
63
  maxMatchDistance: {}
64
64
  },
65
65
  emits: ["locked-updated", "distance-updated"],
66
- setup(f, { expose: b, emit: e }) {
67
- const I = f, i = e, { getProps: c, lockAction: d } = Fe(I, i), C = N(
66
+ setup(f, { expose: I, emit: e }) {
67
+ const B = f, i = e, { getProps: c, lockAction: d } = Fe(B, i), C = N(
68
68
  () => Math.floor((w(c)?.distance || 0) / 1e3 * 10) / 10
69
- ), B = N(() => {
69
+ ), b = N(() => {
70
70
  const { locked: k = !1, distance: n = 0, maxMatchDistance: v } = w(c);
71
- return M(k, n, v);
71
+ return h(k, n, v);
72
72
  });
73
73
  function u() {
74
74
  const { locked: k = !1 } = w(c);
75
75
  d.setLocked(!k);
76
76
  }
77
- function M(k, n, v) {
77
+ function h(k, n, v) {
78
78
  if (k) {
79
79
  const m = v / 5;
80
- let R;
81
- return n <= m ? R = "#54b168" : n <= m * 2 ? R = "#CBDE3C" : n <= m * 3 ? R = "#DEC53C" : n <= m * 4 ? R = "#DE5B3C" : n <= m * 5 ? R = "#FA1212" : R = "#666", { backgroundColor: R, color: "#fff" };
80
+ let Q;
81
+ return n <= m ? Q = "#54b168" : n <= m * 2 ? Q = "#CBDE3C" : n <= m * 3 ? Q = "#DEC53C" : n <= m * 4 ? Q = "#DE5B3C" : n <= m * 5 ? Q = "#FA1212" : Q = "#666", { backgroundColor: Q, color: "#fff" };
82
82
  }
83
83
  return { color: "#333" };
84
84
  }
85
- return b({ ...d }), (k, n) => (z(), j("div", Ne, [
85
+ return I({ ...d }), (k, n) => (z(), j("div", Ne, [
86
86
  p(k.$slots, "button", A(g(w(c))), () => [
87
87
  Ie("div", {
88
88
  class: "dualsee-lock-button",
89
- style: Re(B.value),
89
+ style: Re(b.value),
90
90
  onClick: u
91
91
  }, [
92
92
  w(c).locked ? (z(), j("img", {
@@ -102,47 +102,47 @@ const Je = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAA
102
102
  p(k.$slots, "distance", A(g(w(c))), () => [
103
103
  w(c).showDistance ? (z(), j("div", He, [
104
104
  Ie("span", null, "相距 " + Qe(C.value) + " m", 1)
105
- ])) : _("", !0)
105
+ ])) : ee("", !0)
106
106
  ], !0)
107
107
  ], !0)
108
108
  ]));
109
109
  }
110
- }), ke = (f, b) => {
110
+ }), ke = (f, I) => {
111
111
  const e = f.__vccOpts || f;
112
- for (const [I, i] of b)
113
- e[I] = i;
112
+ for (const [B, i] of I)
113
+ e[B] = i;
114
114
  return e;
115
115
  }, xe = /* @__PURE__ */ ke(ze, [["__scopeId", "data-v-e8eb866f"]]), { cloneDeep: ye, deepMergeProps: Oe, getDiffProps: qe } = ae;
116
- function Te(f, b, e, I, i) {
116
+ function Te(f, I, e, B, i) {
117
117
  const c = q(ye(Ue)), d = N(() => c.value);
118
- ee(() => ye(f), C, { immediate: !0, deep: !0 });
119
- function C(m, R) {
120
- const E = qe(m, R);
118
+ W(() => ye(f), C, { immediate: !0, deep: !0 });
119
+ function C(m, Q) {
120
+ const E = qe(m, Q);
121
121
  u(E);
122
122
  }
123
- function B() {
123
+ function b() {
124
124
  return d.value;
125
125
  }
126
126
  function u(m) {
127
127
  m && Oe(c.value, m);
128
128
  }
129
- function M() {
130
- return b.value;
129
+ function h() {
130
+ return I.value;
131
131
  }
132
132
  function k() {
133
133
  return e.value;
134
134
  }
135
135
  function n() {
136
- return I.value;
136
+ return B.value;
137
137
  }
138
138
  function v() {
139
139
  return i.value;
140
140
  }
141
141
  return {
142
142
  getProps: d,
143
- getState: B,
143
+ getState: b,
144
144
  setState: u,
145
- getDualseeLock: M,
145
+ getDualseeLock: h,
146
146
  getBasicRealsee: k,
147
147
  getReferRealsee: n,
148
148
  getReferBimsee: v
@@ -150,35 +150,35 @@ function Te(f, b, e, I, i) {
150
150
  }
151
151
  var Ee = /* @__PURE__ */ ((f) => (f[f.DualseeNoBIMModel = 12e3] = "DualseeNoBIMModel", f))(Ee || {});
152
152
  const { deepMerge: Xe } = ae;
153
- function Ze(f, b, e) {
154
- const { getState: I, getDualseeLock: i, getBasicRealsee: c, getReferRealsee: d, getReferBimsee: C, setState: B } = b, u = N(() => f.value);
155
- function M(l) {
153
+ function Ze(f, I, e) {
154
+ const { getState: B, getDualseeLock: i, getBasicRealsee: c, getReferRealsee: d, getReferBimsee: C, setState: b } = I, u = N(() => f.value);
155
+ function h(l) {
156
156
  if (!l) return;
157
- const Q = d()?.getStore();
158
- if (Q) {
157
+ const R = d()?.getStore();
158
+ if (R) {
159
159
  const s = c()?.getViewer();
160
160
  if (s) {
161
- const { yaw: h = 0, pitch: o = 0 } = s?.getPosition() || {}, F = s?.getZoomLevel() || 0, r = { yaw: h, pitch: o, zoomLevel: F };
162
- Q.setReferPoint(l, r);
161
+ const { yaw: M = 0, pitch: o = 0 } = s?.getPosition() || {}, U = s?.getZoomLevel() || 0, r = { yaw: M, pitch: o, zoomLevel: U };
162
+ R.setReferPoint(l, r);
163
163
  }
164
164
  }
165
165
  }
166
166
  function k(l) {
167
167
  if (!l) return;
168
- const Q = C()?.getStore();
169
- if (Q) {
168
+ const R = C()?.getStore();
169
+ if (R) {
170
170
  const s = c()?.getViewer();
171
171
  if (s) {
172
- const { yaw: h = 0, pitch: o = 0 } = s?.getPosition() || {}, F = s?.getZoomLevel() || 0, r = { yaw: h, pitch: o, zoomLevel: F };
173
- Q.setReferPoint(l, r);
172
+ const { yaw: M = 0, pitch: o = 0 } = s?.getPosition() || {}, U = s?.getZoomLevel() || 0, r = { yaw: M, pitch: o, zoomLevel: U };
173
+ R.setReferPoint(l, r);
174
174
  }
175
175
  }
176
176
  }
177
177
  function n() {
178
178
  const l = c();
179
179
  if (l) {
180
- const { searchInfo: Q, ...s } = l.getOptions(), { searchInfo: h, ...o } = f.value?.referRealsee || {}, F = h ?? Q, r = { ...Xe(s, o), searchInfo: F }, S = l?.getPlaybar();
181
- S && (S.pause(), S.setState({ showPlay: !1, showSpeed: !1 })), B({
180
+ const { searchInfo: R, ...s } = l.getOptions(), { searchInfo: M, ...o } = f.value?.referRealsee || {}, U = M ?? R, r = { ...Xe(s, o), searchInfo: U }, S = l?.getPlaybar();
181
+ S && (S.pause(), S.setState({ showPlay: !1, showSpeed: !1 })), b({
182
182
  referRealsee: r,
183
183
  referRealseeVisible: !0,
184
184
  referBimseeVisible: !1
@@ -187,7 +187,7 @@ function Ze(f, b, e) {
187
187
  }
188
188
  function v() {
189
189
  const l = c()?.getPlaybar();
190
- l && (l.pause(), l.setState({ showPlay: !0, showSpeed: !0 })), B({
190
+ l && (l.pause(), l.setState({ showPlay: !0, showSpeed: !0 })), b({
191
191
  referRealseeVisible: !1,
192
192
  referBimseeVisible: !1
193
193
  });
@@ -195,22 +195,22 @@ function Ze(f, b, e) {
195
195
  function m() {
196
196
  f.value.referRealseeVisible ? v() : n();
197
197
  }
198
- async function R() {
198
+ async function Q() {
199
199
  try {
200
200
  const l = c();
201
201
  if (!l) return;
202
- const { mappedCoordinateTree: Q, currentModel: s } = l.getStore(), { referBimsee: h } = f.value;
203
- if (!h) return;
204
- const { searchInfo: o } = h || {}, { modelCsId: F } = o || {}, r = F ? Q?.findCsById(F) : Q?.findCsById(s?.id)?.findClosestModel(Me.BIMModel);
202
+ const { mappedCoordinateTree: R, currentModel: s } = l.getStore(), { referBimsee: M } = f.value;
203
+ if (!M) return;
204
+ const { searchInfo: o } = M || {}, { modelCsId: U } = o || {}, r = U ? R?.findCsById(U) : R?.findCsById(s?.id)?.findClosestModel(Me.BIMModel);
205
205
  if (!r)
206
206
  throw new De(
207
207
  Ee.DualseeNoBIMModel,
208
- `未找到ID为${F}的BIM模型坐标系`
208
+ `未找到ID为${U}的BIM模型坐标系`
209
209
  );
210
210
  const S = l.getPlaybar();
211
211
  S && (S.pause(), S.setState({ showPlay: !1, showSpeed: !1 }));
212
- const { defaultYaw: G, defaultPitch: J, defaultZoomLvl: K } = l.getOptions().viewer || {}, x = { defaultYaw: G, defaultPitch: J, defaultZoomLvl: K }, H = { projectId: r.projectId || 0, modelCsId: r.id }, O = { ...h, masker: x, searchInfo: H };
213
- B({
212
+ const { defaultYaw: G, defaultPitch: F, defaultZoomLvl: K } = l.getOptions().viewer || {}, x = { defaultYaw: G, defaultPitch: F, defaultZoomLvl: K }, H = { projectId: r.projectId || 0, modelCsId: r.id }, O = { ...M, masker: x, searchInfo: H };
213
+ b({
214
214
  referBimsee: O,
215
215
  referBimseeVisible: !0,
216
216
  referRealseeVisible: !1
@@ -221,19 +221,19 @@ function Ze(f, b, e) {
221
221
  }
222
222
  function E() {
223
223
  const l = c()?.getPlaybar();
224
- l && (l.pause(), l.setState({ showPlay: !0, showSpeed: !0 })), B({
224
+ l && (l.pause(), l.setState({ showPlay: !0, showSpeed: !0 })), b({
225
225
  referRealseeVisible: !1,
226
226
  referBimseeVisible: !1
227
227
  });
228
228
  }
229
229
  function D() {
230
- f.value.referBimseeVisible ? E() : R();
230
+ f.value.referBimseeVisible ? E() : Q();
231
231
  }
232
232
  return {
233
233
  getBindValue: u,
234
234
  dualseeAction: {
235
- getState: I,
236
- setState: B,
235
+ getState: B,
236
+ setState: b,
237
237
  getDualseeLock: i,
238
238
  getBasicRealsee: c,
239
239
  getReferRealsee: d,
@@ -242,22 +242,25 @@ function Ze(f, b, e) {
242
242
  showReferRealsee: n,
243
243
  hideReferRealsee: v,
244
244
  toggleReferBimsee: D,
245
- showReferBimsee: R,
245
+ showReferBimsee: Q,
246
246
  hideReferBimsee: E,
247
- setReferRealseePoint: M,
247
+ setReferRealseePoint: h,
248
248
  setReferBimseePoint: k
249
249
  }
250
250
  };
251
251
  }
252
252
  const { debounce: je } = ae;
253
- function We(f, b, e) {
254
- const { getBasicRealsee: I, getReferRealsee: i, getReferBimsee: c, getDualseeLock: d } = b, C = N(() => f.value.dualseeLock), B = N(() => I()?.getStore()?.currentPoint), u = N(() => i()?.getStore()?.currentPoint), M = je(m, 50);
255
- ee(
256
- () => B.value?.id,
257
- () => M(B.value, u.value)
258
- ), ee(
253
+ function We(f, I, e) {
254
+ const { getBasicRealsee: B, getReferRealsee: i, getReferBimsee: c, getDualseeLock: d } = I, C = N(() => f.value.dualseeLock), b = N(() => B()?.getStore()?.currentPoint), u = N(() => i()?.getStore()?.currentPoint), h = je(m, 50);
255
+ W(
256
+ () => b.value?.id,
257
+ () => h(b.value, u.value)
258
+ ), W(
259
259
  () => u.value?.id,
260
- () => M(B.value, u.value)
260
+ () => h(b.value, u.value)
261
+ ), W(
262
+ () => f.value.dualseeLockVisible,
263
+ () => h(b.value, u.value)
261
264
  );
262
265
  function k(E) {
263
266
  v(E), e("lock-locked-updated", E);
@@ -267,20 +270,17 @@ function We(f, b, e) {
267
270
  }
268
271
  function v(E) {
269
272
  const D = c();
270
- if (D) {
271
- const L = D?.getMasker?.();
272
- L && L.setState({ visible: E });
273
- }
273
+ D && D?.getMasker?.()?.setVisible(E);
274
274
  }
275
275
  function m(E, D) {
276
276
  if (!E || !D) return;
277
- const L = I(), l = i();
278
- if (!L || !l) return;
279
- D = L.getStore()?.normalizeToModelPoint?.(D);
280
- const Q = E?.position, s = D?.position;
281
- if (!Q || !s) return;
282
- const h = Pe.distXY(Q, s), o = h <= C.value.maxMatchDistance;
283
- d()?.setState({ locked: o, distance: h });
277
+ const J = B(), l = i(), R = d();
278
+ if (!J || !l || !R) return;
279
+ D = J.getStore()?.normalizeToModelPoint?.(D);
280
+ const s = E?.position, M = D?.position;
281
+ if (!s || !M) return;
282
+ const o = Pe.distXY(s, M), U = o <= C.value.maxMatchDistance;
283
+ R.setLocked(U), R.setDistance(o);
284
284
  }
285
285
  return {
286
286
  getLockProps: C,
@@ -290,19 +290,19 @@ function We(f, b, e) {
290
290
  }
291
291
  };
292
292
  }
293
- function $e(f, b, e) {
293
+ function $e(f, I, e) {
294
294
  const {
295
- getDualseeLock: I,
295
+ getDualseeLock: B,
296
296
  getBasicRealsee: i,
297
297
  getReferRealsee: c,
298
298
  getReferBimsee: d,
299
299
  setReferRealseePoint: C,
300
- setReferBimseePoint: B
301
- } = b || {}, u = N(() => {
300
+ setReferBimseePoint: b
301
+ } = I || {}, u = N(() => {
302
302
  const { appSetting: t, basicRealsee: a } = f.value;
303
303
  return { ...a, appSetting: t };
304
304
  });
305
- function M() {
305
+ function h() {
306
306
  e("basic-ready");
307
307
  }
308
308
  function k() {
@@ -317,7 +317,7 @@ function $e(f, b, e) {
317
317
  function m(t) {
318
318
  e("basic-change-record", t);
319
319
  }
320
- function R(t) {
320
+ function Q(t) {
321
321
  ce(), e("basic-change-point", t);
322
322
  }
323
323
  function E() {
@@ -326,25 +326,25 @@ function $e(f, b, e) {
326
326
  function D() {
327
327
  e("basic-map-resize");
328
328
  }
329
- function L(t) {
329
+ function J(t) {
330
330
  e("basic-map-collapse", t);
331
331
  }
332
332
  function l() {
333
333
  e("basic-map-dragger");
334
334
  }
335
- function Q(t) {
335
+ function R(t) {
336
336
  e("basic-map-select-point", t);
337
337
  }
338
338
  function s(t) {
339
339
  e("basic-map-angle-updated", t);
340
340
  }
341
- function h() {
341
+ function M() {
342
342
  e("basic-viewer-ready");
343
343
  }
344
344
  function o(t) {
345
345
  e("basic-viewer-click", t);
346
346
  }
347
- function F(t) {
347
+ function U(t) {
348
348
  le(), e("basic-viewer-mousedown", t);
349
349
  }
350
350
  function r(t) {
@@ -356,7 +356,7 @@ function $e(f, b, e) {
356
356
  function G(t) {
357
357
  e("basic-viewer-panorama-loaded", t);
358
358
  }
359
- function J(t) {
359
+ function F(t) {
360
360
  e("basic-viewer-select-point", t);
361
361
  }
362
362
  function K(t) {
@@ -394,64 +394,64 @@ function $e(f, b, e) {
394
394
  }
395
395
  async function ce(t) {
396
396
  const { currentPoint: a } = i()?.getStore() || {};
397
- a && (await Ce(), C?.(a), B?.(a));
397
+ a && (await Ce(), C?.(a), b?.(a));
398
398
  }
399
399
  function le(t) {
400
400
  i?.()?.getViewer?.()?.setMousedown(!0), c?.()?.getViewer?.()?.setMousedown(!1), d?.()?.getMasker?.()?.setMousedown(!1);
401
401
  }
402
402
  function de(t) {
403
- const { locked: a } = I()?.getState() || {};
403
+ const { locked: a } = B()?.getState() || {};
404
404
  if (!a) return;
405
- const V = c?.();
406
- if (V) {
407
- const P = V?.getViewer?.(), U = P?.isMouseover();
408
- P && !U && P?.zoom(t.zoomLevel);
405
+ const L = c?.();
406
+ if (L) {
407
+ const P = L?.getViewer?.(), V = P?.isMouseover();
408
+ P && !V && P?.zoom(t.zoomLevel);
409
409
  }
410
410
  const Y = d?.();
411
411
  if (Y) {
412
- const P = Y?.getMasker(), U = P?.isMouseover();
413
- P && !U && P.zoom(t.zoomLevel);
412
+ const P = Y?.getMasker(), V = P?.isMouseover();
413
+ P && !V && P.zoom(t.zoomLevel);
414
414
  }
415
415
  }
416
416
  function fe(t, a) {
417
- const { locked: V } = I()?.getState() || {};
418
- if (!V) return;
417
+ const { locked: L } = B()?.getState() || {};
418
+ if (!L) return;
419
419
  const Y = c?.();
420
420
  if (Y) {
421
- const U = Y?.getViewer(), X = i()?.getViewer()?.isMousedown();
422
- if (U && X) {
423
- const Z = U.getPosition(), ue = Z.yaw + a.yaw, pe = Z.pitch + a.pitch;
424
- U.rotate({ yaw: ue, pitch: pe });
421
+ const V = Y?.getViewer(), X = i()?.getViewer()?.isMousedown();
422
+ if (V && X) {
423
+ const Z = V.getPosition(), ue = Z.yaw + a.yaw, pe = Z.pitch + a.pitch;
424
+ V.rotate({ yaw: ue, pitch: pe });
425
425
  }
426
426
  }
427
427
  const P = d?.();
428
428
  if (P) {
429
- const U = P?.getMasker(), X = i()?.getViewer()?.isMousedown();
430
- U && X && U.rotate(t.position);
429
+ const V = P?.getMasker(), X = i()?.getViewer()?.isMousedown();
430
+ V && X && V.rotate(t.position);
431
431
  }
432
432
  }
433
433
  return {
434
434
  getBasicProps: u,
435
435
  basicEvents: {
436
- ready: M,
436
+ ready: h,
437
437
  reload: k,
438
438
  destroy: n,
439
439
  changeModel: v,
440
440
  changeRecord: m,
441
- changePoint: R,
441
+ changePoint: Q,
442
442
  mapReady: E,
443
443
  mapResize: D,
444
- mapCollapse: L,
444
+ mapCollapse: J,
445
445
  mapDragger: l,
446
- mapSelectPoint: Q,
446
+ mapSelectPoint: R,
447
447
  mapAngleUpdated: s,
448
- viewerReady: h,
448
+ viewerReady: M,
449
449
  viewerClick: o,
450
- viewerMousedown: F,
450
+ viewerMousedown: U,
451
451
  viewerZoomUpdated: r,
452
452
  viewerPositionUpdated: S,
453
453
  viewerPanoramaLoaded: G,
454
- viewerSelectPoint: J,
454
+ viewerSelectPoint: F,
455
455
  viewerSelectMarker: K,
456
456
  playbarReady: x,
457
457
  playbarBackward: H,
@@ -466,18 +466,18 @@ function $e(f, b, e) {
466
466
  }
467
467
  };
468
468
  }
469
- function _e(f, b, e) {
470
- const { getDualseeLock: I, getBasicRealsee: i, getReferRealsee: c, setReferRealseePoint: d } = b || {}, C = N(() => {
471
- const { appSetting: a, referRealsee: V } = f.value;
472
- return { ...V, appSetting: a };
469
+ function _e(f, I, e) {
470
+ const { getDualseeLock: B, getBasicRealsee: i, getReferRealsee: c, setReferRealseePoint: d } = I || {}, C = N(() => {
471
+ const { appSetting: a, referRealsee: L } = f.value;
472
+ return { ...L, appSetting: a };
473
473
  });
474
- function B() {
474
+ function b() {
475
475
  e("refer-ready");
476
476
  }
477
477
  function u() {
478
478
  ne(), e("refer-reload");
479
479
  }
480
- function M() {
480
+ function h() {
481
481
  ie(), e("refer-destroy");
482
482
  }
483
483
  function k(a) {
@@ -492,7 +492,7 @@ function _e(f, b, e) {
492
492
  function m() {
493
493
  e("refer-map-ready");
494
494
  }
495
- function R() {
495
+ function Q() {
496
496
  e("refer-map-resize");
497
497
  }
498
498
  function E(a) {
@@ -501,26 +501,26 @@ function _e(f, b, e) {
501
501
  function D() {
502
502
  e("refer-map-dragger");
503
503
  }
504
- function L(a) {
504
+ function J(a) {
505
505
  e("refer-map-select-point", a);
506
506
  }
507
507
  function l(a) {
508
508
  e("refer-map-angle-updated", a);
509
509
  }
510
- function Q() {
510
+ function R() {
511
511
  le(), e("refer-viewer-ready");
512
512
  }
513
513
  function s(a) {
514
514
  e("refer-viewer-click", a);
515
515
  }
516
- function h(a) {
516
+ function M(a) {
517
517
  de(), e("refer-viewer-mousedown", a);
518
518
  }
519
519
  function o(a) {
520
520
  fe(a), e("refer-viewer-zoom-updated", a);
521
521
  }
522
- function F(a, V) {
523
- be(a, V), e("refer-viewer-position-updated", a);
522
+ function U(a, L) {
523
+ be(a, L), e("refer-viewer-position-updated", a);
524
524
  }
525
525
  function r(a) {
526
526
  e("basic-viewer-panorama-loaded", a);
@@ -531,7 +531,7 @@ function _e(f, b, e) {
531
531
  function G(a) {
532
532
  e("refer-viewer-select-marker", a);
533
533
  }
534
- function J() {
534
+ function F() {
535
535
  e("refer-playbar-ready");
536
536
  }
537
537
  function K(a) {
@@ -566,15 +566,15 @@ function _e(f, b, e) {
566
566
  d?.(a);
567
567
  }
568
568
  function ie() {
569
- b?.setState({ dualseeLockVisible: !1 });
569
+ I?.setState({ dualseeLockVisible: !1 });
570
570
  }
571
571
  async function ce(a) {
572
- const { currentPoint: V } = i()?.getStore() || {};
573
- d?.(V);
572
+ const { currentPoint: L } = i()?.getStore() || {};
573
+ d?.(L);
574
574
  }
575
575
  function le() {
576
576
  const { currentPoint: a } = i()?.getStore() || {};
577
- d?.(a), b?.setState({
577
+ d?.(a), I?.setState({
578
578
  dualseeLockVisible: !0,
579
579
  dualseeLock: { showDistance: !0 }
580
580
  });
@@ -583,50 +583,50 @@ function _e(f, b, e) {
583
583
  i?.()?.getViewer?.()?.setMousedown(!1), c?.()?.getViewer?.()?.setMousedown(!0);
584
584
  }
585
585
  function fe(a) {
586
- const { locked: V } = I()?.getState() || {};
587
- if (!V) return;
586
+ const { locked: L } = B()?.getState() || {};
587
+ if (!L) return;
588
588
  const Y = i?.();
589
589
  if (Y) {
590
- const P = Y?.getViewer(), U = P?.isMouseover();
591
- P && !U && P.zoom(a.zoomLevel);
590
+ const P = Y?.getViewer(), V = P?.isMouseover();
591
+ P && !V && P.zoom(a.zoomLevel);
592
592
  }
593
593
  }
594
- function be(a, V) {
595
- const { locked: Y } = I()?.getState() || {};
594
+ function be(a, L) {
595
+ const { locked: Y } = B()?.getState() || {};
596
596
  if (!Y) return;
597
597
  const P = i?.();
598
598
  if (P) {
599
- const U = P?.getViewer(), X = c()?.getViewer()?.isMousedown();
600
- if (U && X) {
601
- const Z = U.getPosition(), ue = Z.yaw + V.yaw, pe = Z.pitch + V.pitch;
602
- U.rotate({ yaw: ue, pitch: pe });
599
+ const V = P?.getViewer(), X = c()?.getViewer()?.isMousedown();
600
+ if (V && X) {
601
+ const Z = V.getPosition(), ue = Z.yaw + L.yaw, pe = Z.pitch + L.pitch;
602
+ V.rotate({ yaw: ue, pitch: pe });
603
603
  }
604
604
  }
605
605
  }
606
606
  return {
607
607
  getReferProps: C,
608
608
  referEvents: {
609
- ready: B,
609
+ ready: b,
610
610
  reload: u,
611
- destroy: M,
611
+ destroy: h,
612
612
  changeModel: k,
613
613
  changeRecord: n,
614
614
  changePoint: v,
615
615
  mapReady: m,
616
- mapResize: R,
616
+ mapResize: Q,
617
617
  mapCollapse: E,
618
618
  mapDragger: D,
619
- mapSelectPoint: L,
619
+ mapSelectPoint: J,
620
620
  mapAngleUpdated: l,
621
- viewerReady: Q,
621
+ viewerReady: R,
622
622
  viewerClick: s,
623
- viewerMousedown: h,
623
+ viewerMousedown: M,
624
624
  viewerZoomUpdated: o,
625
- viewerPositionUpdated: F,
625
+ viewerPositionUpdated: U,
626
626
  viewerPanoramaLoaded: r,
627
627
  viewerSelectPoint: S,
628
628
  viewerSelectMarker: G,
629
- playbarReady: J,
629
+ playbarReady: F,
630
630
  playbarBackward: K,
631
631
  playbarPause: x,
632
632
  playbarPlay: H,
@@ -639,18 +639,18 @@ function _e(f, b, e) {
639
639
  }
640
640
  };
641
641
  }
642
- function ea(f, b, e) {
643
- const { getDualseeLock: I, getBasicRealsee: i, getReferBimsee: c, setReferBimseePoint: d } = b || {}, C = N(() => {
642
+ function ea(f, I, e) {
643
+ const { getDualseeLock: B, getBasicRealsee: i, getReferBimsee: c, setReferBimseePoint: d } = I || {}, C = N(() => {
644
644
  const { appSetting: r, referBimsee: S } = f.value;
645
645
  return { ...S, appSetting: r };
646
646
  });
647
- function B() {
647
+ function b() {
648
648
  e("bimsee-ready");
649
649
  }
650
650
  function u() {
651
- L(), e("bimsee-reload");
651
+ J(), e("bimsee-reload");
652
652
  }
653
- function M() {
653
+ function h() {
654
654
  l(), e("bimsee-destroy");
655
655
  }
656
656
  function k(r) {
@@ -660,30 +660,30 @@ function ea(f, b, e) {
660
660
  e("bimsee-change-point", r);
661
661
  }
662
662
  function v(r) {
663
- Q(), e("bimsee-masker-ready", r);
663
+ R(), e("bimsee-masker-ready", r);
664
664
  }
665
665
  function m(r) {
666
666
  e("bimsee-masker-click", r);
667
667
  }
668
- function R(r) {
668
+ function Q(r) {
669
669
  s(), e("bimsee-masker-mousedown", r);
670
670
  }
671
671
  function E(r) {
672
- h(r), e("bimsee-masker-zoom-updated", r);
672
+ M(r), e("bimsee-masker-zoom-updated", r);
673
673
  }
674
674
  function D(r, S) {
675
675
  o(r, S), e("bimsee-masker-position-updated", r);
676
676
  }
677
- function L() {
677
+ function J() {
678
678
  const { currentPoint: r } = i()?.getStore() || {};
679
679
  d?.(r);
680
680
  }
681
681
  function l() {
682
- b?.setState({ dualseeLockVisible: !1 });
682
+ I?.setState({ dualseeLockVisible: !1 });
683
683
  }
684
- function Q() {
684
+ function R() {
685
685
  const { currentPoint: r } = i()?.getStore() || {};
686
- d?.(r), b?.setState({
686
+ d?.(r), I?.setState({
687
687
  dualseeLockVisible: !0,
688
688
  dualseeLock: { showDistance: !1 }
689
689
  });
@@ -691,21 +691,21 @@ function ea(f, b, e) {
691
691
  function s(r) {
692
692
  i?.()?.getViewer?.()?.setMousedown(!1), c?.()?.getMasker?.()?.setMousedown(!0);
693
693
  }
694
- function h(r) {
695
- const { locked: S } = I()?.getState() || {};
694
+ function M(r) {
695
+ const { locked: S } = B()?.getState() || {};
696
696
  if (!S) return;
697
697
  const G = i?.();
698
698
  if (G) {
699
- const J = G?.getViewer?.(), K = J?.isMouseover();
700
- J && !K && J?.zoom(r.zoomLevel);
699
+ const F = G?.getViewer?.(), K = F?.isMouseover();
700
+ F && !K && F?.zoom(r.zoomLevel);
701
701
  }
702
702
  }
703
703
  function o(r, S) {
704
- const { locked: G } = I()?.getState() || {};
704
+ const { locked: G } = B()?.getState() || {};
705
705
  if (!G) return;
706
- const J = i?.();
707
- if (J) {
708
- const K = J?.getViewer(), x = c()?.getMasker()?.isMousedown();
706
+ const F = i?.();
707
+ if (F) {
708
+ const K = F?.getViewer(), x = c()?.getMasker()?.isMousedown();
709
709
  if (K && x) {
710
710
  const H = K.getPosition(), O = H.yaw + S.yaw, T = H.pitch + S.pitch;
711
711
  K.rotate({ yaw: O, pitch: T });
@@ -715,14 +715,14 @@ function ea(f, b, e) {
715
715
  return {
716
716
  getBimseeProps: C,
717
717
  bimseeEvents: {
718
- ready: B,
718
+ ready: b,
719
719
  reload: u,
720
- destroy: M,
720
+ destroy: h,
721
721
  changeModel: k,
722
722
  changePoint: n,
723
723
  maskerReady: v,
724
724
  maskerClick: m,
725
- maskerMousedown: R,
725
+ maskerMousedown: Q,
726
726
  maskerZoomUpdated: E,
727
727
  maskerPositionUpdated: D
728
728
  }
@@ -816,20 +816,20 @@ const aa = { class: "vsleem-dualsee" }, oa = /* @__PURE__ */ we({
816
816
  "bimsee-masker-zoom-updated",
817
817
  "bimsee-masker-position-updated"
818
818
  ],
819
- setup(f, { expose: b, emit: e }) {
820
- const I = f, i = e, c = q(), d = q(), C = q(), B = q(), { getProps: u, ...M } = Te(
821
- I,
819
+ setup(f, { expose: I, emit: e }) {
820
+ const B = f, i = e, c = q(), d = q(), C = q(), b = q(), { getProps: u, ...h } = Te(
821
+ B,
822
822
  c,
823
823
  d,
824
824
  C,
825
- B
826
- ), { getBindValue: k, dualseeAction: n } = Ze(u, M), { getLockProps: v, lockEvents: m } = We(u, n, i), { getBasicProps: R, basicEvents: E } = $e(u, n, i), { getReferProps: D, referEvents: L } = _e(u, n, i), { getBimseeProps: l, bimseeEvents: Q } = ea(u, n, i);
827
- return b({ ...n }), (s, h) => (z(), j("div", aa, [
828
- w(u).dualseeLockVisible ? (z(), Ae(xe, W({
825
+ b
826
+ ), { getBindValue: k, dualseeAction: n } = Ze(u, h), { getLockProps: v, lockEvents: m } = We(u, n, i), { getBasicProps: Q, basicEvents: E } = $e(u, n, i), { getReferProps: D, referEvents: J } = _e(u, n, i), { getBimseeProps: l, bimseeEvents: R } = ea(u, n, i);
827
+ return I({ ...n }), (s, M) => (z(), j("div", aa, [
828
+ w(u).dualseeLockVisible ? (z(), Ae(xe, $({
829
829
  key: 0,
830
830
  ref_key: "dualseeLockElRef",
831
831
  ref: c
832
- }, w(v), $(w(m))), {
832
+ }, w(v), _(w(m))), {
833
833
  button: y((o) => [
834
834
  p(s.$slots, "lockButton", A(g(o)), void 0, !0)
835
835
  ]),
@@ -837,11 +837,11 @@ const aa = { class: "vsleem-dualsee" }, oa = /* @__PURE__ */ we({
837
837
  p(s.$slots, "lockDistance", A(g(o)), void 0, !0)
838
838
  ]),
839
839
  _: 3
840
- }, 16)) : _("", !0),
841
- ve(w(Be), W({
840
+ }, 16)) : ee("", !0),
841
+ ve(w(Be), $({
842
842
  ref_key: "basicRealseeElRef",
843
843
  ref: d
844
- }, w(R), $(w(E))), {
844
+ }, w(Q), _(w(E))), {
845
845
  default: y((o) => [
846
846
  p(s.$slots, "basicDefault", A(g(o)), void 0, !0)
847
847
  ]),
@@ -874,11 +874,11 @@ const aa = { class: "vsleem-dualsee" }, oa = /* @__PURE__ */ we({
874
874
  ]),
875
875
  _: 3
876
876
  }, 16),
877
- w(u).referRealseeVisible ? (z(), Ae(w(Be), W({
877
+ w(u).referRealseeVisible ? (z(), Ae(w(Be), $({
878
878
  key: 1,
879
879
  ref_key: "referRealseeElRef",
880
880
  ref: C
881
- }, w(D), $(w(L))), {
881
+ }, w(D), _(w(J))), {
882
882
  default: y((o) => [
883
883
  p(s.$slots, "referDefault", A(g(o)), void 0, !0)
884
884
  ]),
@@ -910,12 +910,12 @@ const aa = { class: "vsleem-dualsee" }, oa = /* @__PURE__ */ we({
910
910
  p(s.$slots, "referPlaybarSlider", A(g(o)), void 0, !0)
911
911
  ]),
912
912
  _: 3
913
- }, 16)) : _("", !0),
914
- w(u).referBimseeVisible ? (z(), Ae(w(Se), W({
913
+ }, 16)) : ee("", !0),
914
+ w(u).referBimseeVisible ? (z(), Ae(w(Se), $({
915
915
  key: 2,
916
916
  ref_key: "referBimseeElRef",
917
- ref: B
918
- }, w(l), $(w(Q))), {
917
+ ref: b
918
+ }, w(l), _(w(R))), {
919
919
  default: y((o) => [
920
920
  p(s.$slots, "bimseeDefault", A(g(o)), void 0, !0)
921
921
  ]),
@@ -923,7 +923,7 @@ const aa = { class: "vsleem-dualsee" }, oa = /* @__PURE__ */ we({
923
923
  p(s.$slots, "bimseeMasker", A(g(o)), void 0, !0)
924
924
  ]),
925
925
  _: 3
926
- }, 16)) : _("", !0),
926
+ }, 16)) : ee("", !0),
927
927
  p(s.$slots, "default", A(g(w(k))), void 0, !0)
928
928
  ]));
929
929
  }
package/dist/index.umd.js CHANGED
@@ -1 +1 @@
1
- (function(D,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("@vsleem-realsee-viewer/realsee-plugin"),require("@vsleem-realsee-viewer/bimsee-plugin"),require("@vsleem-realsee-viewer/shared")):typeof define=="function"&&define.amd?define(["exports","vue","@vsleem-realsee-viewer/realsee-plugin","@vsleem-realsee-viewer/bimsee-plugin","@vsleem-realsee-viewer/shared"],e):(D=typeof globalThis<"u"?globalThis:D||self,e(D.DualseePlugin={},D.Vue,D.VSLeemRealseePlugin,D.VSLeemBimseePlugin,D.VSLeemShared))})(this,(function(D,e,se,pe,J){"use strict";const q={locked:!0,distance:0,showDistance:!0,maxMatchDistance:5e3},ne={appSetting:J.APP_SETTING,dualseeLock:q,dualseeLockVisible:!1,referRealseeVisible:!1,referBimseeVisible:!1},{cloneDeep:ie,deepMergeProps:ge,getDiffProps:ue}=J.utils;function Ae(p,u){const r=e.ref(ie(q)),A=e.computed(()=>r.value);e.watch(()=>ie(p),c,{immediate:!0,deep:!0});function c(i,y){const b=ue(i,y);f(b)}function l(){return A.value}function f(i){i&&ge(r.value,i)}function C(i){f({distance:i}),u("distance-updated",i)}function m(i){f({locked:i}),u("locked-updated",i)}function g(){f({showDistance:!0})}function Q(){f({showDistance:!1})}return{getProps:A,lockAction:{getState:l,setState:f,setDistance:C,setLocked:m,showDistance:g,hideDistance:Q}}}const me="data:image/png;base64,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",be="data:image/png;base64,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",Be={class:"vsleem-dualsee-lock"},Ie=["src"],we=["src"],Re={key:0,class:"dualsee-lock-distance"},Ce=e.defineComponent({__name:"Lock",props:{locked:{type:Boolean},distance:{},showDistance:{type:Boolean},maxMatchDistance:{}},emits:["locked-updated","distance-updated"],setup(p,{expose:u,emit:r}){const A=p,c=r,{getProps:l,lockAction:f}=Ae(A,c),C=e.computed(()=>Math.floor((e.unref(l)?.distance||0)/1e3*10)/10),m=e.computed(()=>{const{locked:B=!1,distance:i=0,maxMatchDistance:y}=e.unref(l);return Q(B,i,y)});function g(){const{locked:B=!1}=e.unref(l);f.setLocked(!B)}function Q(B,i,y){if(B){const b=y/5;let w;return i<=b?w="#54b168":i<=b*2?w="#CBDE3C":i<=b*3?w="#DEC53C":i<=b*4?w="#DE5B3C":i<=b*5?w="#FA1212":w="#666",{backgroundColor:w,color:"#fff"}}return{color:"#333"}}return u({...f}),(B,i)=>(e.openBlock(),e.createElementBlock("div",Be,[e.renderSlot(B.$slots,"button",e.normalizeProps(e.guardReactiveProps(e.unref(l))),()=>[e.createElementVNode("div",{class:"dualsee-lock-button",style:e.normalizeStyle(m.value),onClick:g},[e.unref(l).locked?(e.openBlock(),e.createElementBlock("img",{key:0,class:"dualsee-lock-icon",src:e.unref(me)},null,8,Ie)):(e.openBlock(),e.createElementBlock("img",{key:1,class:"dualsee-lock-icon",src:e.unref(be)},null,8,we))],4),e.renderSlot(B.$slots,"distance",e.normalizeProps(e.guardReactiveProps(e.unref(l))),()=>[e.unref(l).showDistance?(e.openBlock(),e.createElementBlock("div",Re,[e.createElementVNode("span",null,"相距 "+e.toDisplayString(C.value)+" m",1)])):e.createCommentVNode("",!0)],!0)],!0)]))}}),ce=(p,u)=>{const r=p.__vccOpts||p;for(const[A,c]of u)r[A]=c;return r},ye=ce(Ce,[["__scopeId","data-v-e8eb866f"]]),{cloneDeep:le,deepMergeProps:ke,getDiffProps:Ee}=J.utils;function Qe(p,u,r,A,c){const l=e.ref(le(ne)),f=e.computed(()=>l.value);e.watch(()=>le(p),C,{immediate:!0,deep:!0});function C(b,w){const I=Ee(b,w);g(I)}function m(){return f.value}function g(b){b&&ke(l.value,b)}function Q(){return u.value}function B(){return r.value}function i(){return A.value}function y(){return c.value}return{getProps:f,getState:m,setState:g,getDualseeLock:Q,getBasicRealsee:B,getReferRealsee:i,getReferBimsee:y}}var T=(p=>(p[p.DualseeNoBIMModel=12e3]="DualseeNoBIMModel",p))(T||{});const{deepMerge:Se}=J.utils;function he(p,u,r){const{getState:A,getDualseeLock:c,getBasicRealsee:l,getReferRealsee:f,getReferBimsee:C,setState:m}=u,g=e.computed(()=>p.value);function Q(d){if(!d)return;const R=f()?.getStore();if(R){const s=l()?.getViewer();if(s){const{yaw:E=0,pitch:t=0}=s?.getPosition()||{},V=s?.getZoomLevel()||0,n={yaw:E,pitch:t,zoomLevel:V};R.setReferPoint(d,n)}}}function B(d){if(!d)return;const R=C()?.getStore();if(R){const s=l()?.getViewer();if(s){const{yaw:E=0,pitch:t=0}=s?.getPosition()||{},V=s?.getZoomLevel()||0,n={yaw:E,pitch:t,zoomLevel:V};R.setReferPoint(d,n)}}}function i(){const d=l();if(d){const{searchInfo:R,...s}=d.getOptions(),{searchInfo:E,...t}=p.value?.referRealsee||{},V=E??R,n={...Se(s,t),searchInfo:V},k=d?.getPlaybar();k&&(k.pause(),k.setState({showPlay:!1,showSpeed:!1})),m({referRealsee:n,referRealseeVisible:!0,referBimseeVisible:!1})}}function y(){const d=l()?.getPlaybar();d&&(d.pause(),d.setState({showPlay:!0,showSpeed:!0})),m({referRealseeVisible:!1,referBimseeVisible:!1})}function b(){p.value.referRealseeVisible?y():i()}async function w(){try{const d=l();if(!d)return;const{mappedCoordinateTree:R,currentModel:s}=d.getStore(),{referBimsee:E}=p.value;if(!E)return;const{searchInfo:t}=E||{},{modelCsId:V}=t||{},n=V?R?.findCsById(V):R?.findCsById(s?.id)?.findClosestModel(J.CoordinateModelType.BIMModel);if(!n)throw new J.AppError(T.DualseeNoBIMModel,`未找到ID为${V}的BIM模型坐标系`);const k=d.getPlaybar();k&&(k.pause(),k.setState({showPlay:!1,showSpeed:!1}));const{defaultYaw:F,defaultPitch:L,defaultZoomLvl:z}=d.getOptions().viewer||{},K={defaultYaw:F,defaultPitch:L,defaultZoomLvl:z},N={projectId:n.projectId||0,modelCsId:n.id},G={...E,masker:K,searchInfo:N};m({referBimsee:G,referBimseeVisible:!0,referRealseeVisible:!1})}catch(d){console.error("显示BIMSEE参考模型失败:",d),p.value?.referBimsee?.fetchError?.(d)}}function I(){const d=l()?.getPlaybar();d&&(d.pause(),d.setState({showPlay:!0,showSpeed:!0})),m({referRealseeVisible:!1,referBimseeVisible:!1})}function S(){p.value.referBimseeVisible?I():w()}return{getBindValue:g,dualseeAction:{getState:A,setState:m,getDualseeLock:c,getBasicRealsee:l,getReferRealsee:f,getReferBimsee:C,toggleReferRealsee:b,showReferRealsee:i,hideReferRealsee:y,toggleReferBimsee:S,showReferBimsee:w,hideReferBimsee:I,setReferRealseePoint:Q,setReferBimseePoint:B}}}const{debounce:Pe}=J.utils;function Me(p,u,r){const{getBasicRealsee:A,getReferRealsee:c,getReferBimsee:l,getDualseeLock:f}=u,C=e.computed(()=>p.value.dualseeLock),m=e.computed(()=>A()?.getStore()?.currentPoint),g=e.computed(()=>c()?.getStore()?.currentPoint),Q=Pe(b,50);e.watch(()=>m.value?.id,()=>Q(m.value,g.value)),e.watch(()=>g.value?.id,()=>Q(m.value,g.value));function B(I){y(I),r("lock-locked-updated",I)}function i(I){r("lock-distance-updated",I)}function y(I){const S=l();if(S){const U=S?.getMasker?.();U&&U.setState({visible:I})}}function b(I,S){if(!I||!S)return;const U=A(),d=c();if(!U||!d)return;S=U.getStore()?.normalizeToModelPoint?.(S);const R=I?.position,s=S?.position;if(!R||!s)return;const E=J.Point.distXY(R,s),t=E<=C.value.maxMatchDistance;f()?.setState({locked:t,distance:E})}return{getLockProps:C,lockEvents:{lockedUpdated:B,distanceUpdated:i}}}function De(p,u,r){const{getDualseeLock:A,getBasicRealsee:c,getReferRealsee:l,getReferBimsee:f,setReferRealseePoint:C,setReferBimseePoint:m}=u||{},g=e.computed(()=>{const{appSetting:a,basicRealsee:o}=p.value;return{...o,appSetting:a}});function Q(){r("basic-ready")}function B(){r("basic-reload")}function i(){r("basic-destroy")}function y(a){r("basic-change-model",a)}function b(a){r("basic-change-record",a)}function w(a){_(),r("basic-change-point",a)}function I(){r("basic-map-ready")}function S(){r("basic-map-resize")}function U(a){r("basic-map-collapse",a)}function d(){r("basic-map-dragger")}function R(a){r("basic-map-select-point",a)}function s(a){r("basic-map-angle-updated",a)}function E(){r("basic-viewer-ready")}function t(a){r("basic-viewer-click",a)}function V(a){ee(),r("basic-viewer-mousedown",a)}function n(a){re(a),r("basic-viewer-zoom-updated",a)}function k(a,o){oe(a,o),r("basic-viewer-position-updated",a)}function F(a){r("basic-viewer-panorama-loaded",a)}function L(a){r("basic-viewer-select-point",a)}function z(a){r("basic-viewer-select-marker",a)}function K(){r("basic-playbar-ready")}function N(a){r("basic-playbar-backward",a)}function G(a){r("basic-playbar-pause",a)}function H(a){r("basic-playbar-play",a)}function X(a){r("basic-playbar-forward",a)}function Z(a){r("basic-playbar-slider",a)}function j(a){r("basic-playbar-select-point",a)}function W(a){r("basic-playbar-speed-updated",a)}function v(a){r("basic-playbar-delay-updated",a)}function $(a){r("basic-playbar-step-updated",a)}async function _(a){const{currentPoint:o}=c()?.getStore()||{};o&&(await e.nextTick(),C?.(o),m?.(o))}function ee(a){c?.()?.getViewer?.()?.setMousedown(!0),l?.()?.getViewer?.()?.setMousedown(!1),f?.()?.getMasker?.()?.setMousedown(!1)}function re(a){const{locked:o}=A()?.getState()||{};if(!o)return;const M=l?.();if(M){const h=M?.getViewer?.(),P=h?.isMouseover();h&&!P&&h?.zoom(a.zoomLevel)}const x=f?.();if(x){const h=x?.getMasker(),P=h?.isMouseover();h&&!P&&h.zoom(a.zoomLevel)}}function oe(a,o){const{locked:M}=A()?.getState()||{};if(!M)return;const x=l?.();if(x){const P=x?.getViewer(),Y=c()?.getViewer()?.isMousedown();if(P&&Y){const O=P.getPosition(),te=O.yaw+o.yaw,ae=O.pitch+o.pitch;P.rotate({yaw:te,pitch:ae})}}const h=f?.();if(h){const P=h?.getMasker(),Y=c()?.getViewer()?.isMousedown();P&&Y&&P.rotate(a.position)}}return{getBasicProps:g,basicEvents:{ready:Q,reload:B,destroy:i,changeModel:y,changeRecord:b,changePoint:w,mapReady:I,mapResize:S,mapCollapse:U,mapDragger:d,mapSelectPoint:R,mapAngleUpdated:s,viewerReady:E,viewerClick:t,viewerMousedown:V,viewerZoomUpdated:n,viewerPositionUpdated:k,viewerPanoramaLoaded:F,viewerSelectPoint:L,viewerSelectMarker:z,playbarReady:K,playbarBackward:N,playbarPause:G,playbarPlay:H,playbarForward:X,playbarSlider:Z,playbarSelectPoint:j,playbarSpeedUpdated:W,playbarDelayUpdated:v,playbarStepUpdated:$}}}function Ue(p,u,r){const{getDualseeLock:A,getBasicRealsee:c,getReferRealsee:l,setReferRealseePoint:f}=u||{},C=e.computed(()=>{const{appSetting:o,referRealsee:M}=p.value;return{...M,appSetting:o}});function m(){r("refer-ready")}function g(){v(),r("refer-reload")}function Q(){$(),r("refer-destroy")}function B(o){r("refer-change-model",o)}function i(o){_(),r("refer-change-record",o)}function y(o){r("refer-change-point",o)}function b(){r("refer-map-ready")}function w(){r("refer-map-resize")}function I(o){r("refer-map-collapse",o)}function S(){r("refer-map-dragger")}function U(o){r("refer-map-select-point",o)}function d(o){r("refer-map-angle-updated",o)}function R(){ee(),r("refer-viewer-ready")}function s(o){r("refer-viewer-click",o)}function E(o){re(),r("refer-viewer-mousedown",o)}function t(o){oe(o),r("refer-viewer-zoom-updated",o)}function V(o,M){fe(o,M),r("refer-viewer-position-updated",o)}function n(o){r("basic-viewer-panorama-loaded",o)}function k(o){r("refer-viewer-select-point",o)}function F(o){r("refer-viewer-select-marker",o)}function L(){r("refer-playbar-ready")}function z(o){r("refer-playbar-backward",o)}function K(o){r("refer-playbar-pause",o)}function N(o){r("refer-playbar-play",o)}function G(o){r("refer-playbar-forward",o)}function H(o){r("refer-playbar-slider",o)}function X(o){r("refer-playbar-select-point",o)}function Z(o){r("refer-playbar-speed-updated",o)}function j(o){r("refer-playbar-delay-updated",o)}function W(o){r("refer-playbar-step-updated",o)}function v(){const{currentPoint:o}=c()?.getStore()||{};f?.(o)}function $(){u?.setState({dualseeLockVisible:!1})}async function _(o){const{currentPoint:M}=c()?.getStore()||{};f?.(M)}function ee(){const{currentPoint:o}=c()?.getStore()||{};f?.(o),u?.setState({dualseeLockVisible:!0,dualseeLock:{showDistance:!0}})}function re(o){c?.()?.getViewer?.()?.setMousedown(!1),l?.()?.getViewer?.()?.setMousedown(!0)}function oe(o){const{locked:M}=A()?.getState()||{};if(!M)return;const x=c?.();if(x){const h=x?.getViewer(),P=h?.isMouseover();h&&!P&&h.zoom(o.zoomLevel)}}function fe(o,M){const{locked:x}=A()?.getState()||{};if(!x)return;const h=c?.();if(h){const P=h?.getViewer(),Y=l()?.getViewer()?.isMousedown();if(P&&Y){const O=P.getPosition(),te=O.yaw+M.yaw,ae=O.pitch+M.pitch;P.rotate({yaw:te,pitch:ae})}}}return{getReferProps:C,referEvents:{ready:m,reload:g,destroy:Q,changeModel:B,changeRecord:i,changePoint:y,mapReady:b,mapResize:w,mapCollapse:I,mapDragger:S,mapSelectPoint:U,mapAngleUpdated:d,viewerReady:R,viewerClick:s,viewerMousedown:E,viewerZoomUpdated:t,viewerPositionUpdated:V,viewerPanoramaLoaded:n,viewerSelectPoint:k,viewerSelectMarker:F,playbarReady:L,playbarBackward:z,playbarPause:K,playbarPlay:N,playbarForward:G,playbarSlider:H,playbarSelectPoint:X,playbarSpeedUpdated:Z,playbarDelayUpdated:j,playbarStepUpdated:W}}}function Ve(p,u,r){const{getDualseeLock:A,getBasicRealsee:c,getReferBimsee:l,setReferBimseePoint:f}=u||{},C=e.computed(()=>{const{appSetting:n,referBimsee:k}=p.value;return{...k,appSetting:n}});function m(){r("bimsee-ready")}function g(){U(),r("bimsee-reload")}function Q(){d(),r("bimsee-destroy")}function B(n){r("bimsee-change-model",n)}function i(n){r("bimsee-change-point",n)}function y(n){R(),r("bimsee-masker-ready",n)}function b(n){r("bimsee-masker-click",n)}function w(n){s(),r("bimsee-masker-mousedown",n)}function I(n){E(n),r("bimsee-masker-zoom-updated",n)}function S(n,k){t(n,k),r("bimsee-masker-position-updated",n)}function U(){const{currentPoint:n}=c()?.getStore()||{};f?.(n)}function d(){u?.setState({dualseeLockVisible:!1})}function R(){const{currentPoint:n}=c()?.getStore()||{};f?.(n),u?.setState({dualseeLockVisible:!0,dualseeLock:{showDistance:!1}})}function s(n){c?.()?.getViewer?.()?.setMousedown(!1),l?.()?.getMasker?.()?.setMousedown(!0)}function E(n){const{locked:k}=A()?.getState()||{};if(!k)return;const F=c?.();if(F){const L=F?.getViewer?.(),z=L?.isMouseover();L&&!z&&L?.zoom(n.zoomLevel)}}function t(n,k){const{locked:F}=A()?.getState()||{};if(!F)return;const L=c?.();if(L){const z=L?.getViewer(),K=l()?.getMasker()?.isMousedown();if(z&&K){const N=z.getPosition(),G=N.yaw+k.yaw,H=N.pitch+k.pitch;z.rotate({yaw:G,pitch:H})}}}return{getBimseeProps:C,bimseeEvents:{ready:m,reload:g,destroy:Q,changeModel:B,changePoint:i,maskerReady:y,maskerClick:b,maskerMousedown:w,maskerZoomUpdated:I,maskerPositionUpdated:S}}}const Le={class:"vsleem-dualsee"},de=ce(e.defineComponent({name:"Dualsee",__name:"Dualsee",props:{appSetting:{},dualseeSetting:{},basicRealsee:{},referRealsee:{},referBimsee:{},dualseeLock:{default:()=>q},dualseeLockVisible:{type:Boolean},referRealseeVisible:{type:Boolean},referBimseeVisible:{type:Boolean}},emits:["basic-ready","basic-reload","basic-destroy","basic-change-model","basic-change-record","basic-change-point","basic-map-ready","basic-map-resize","basic-map-collapse","basic-map-dragger","basic-map-select-point","basic-map-angle-updated","basic-viewer-ready","basic-viewer-click","basic-viewer-mousedown","basic-viewer-zoom-updated","basic-viewer-position-updated","basic-viewer-panorama-loaded","basic-viewer-select-point","basic-viewer-select-marker","basic-playbar-ready","basic-playbar-backward","basic-playbar-pause","basic-playbar-play","basic-playbar-forward","basic-playbar-slider","basic-playbar-select-point","basic-playbar-speed-updated","basic-playbar-delay-updated","basic-playbar-step-updated","refer-ready","refer-reload","refer-destroy","refer-change-model","refer-change-record","refer-change-point","refer-map-ready","refer-map-resize","refer-map-collapse","refer-map-dragger","refer-map-select-point","refer-map-angle-updated","refer-viewer-ready","refer-viewer-click","refer-viewer-mousedown","refer-viewer-zoom-updated","refer-viewer-position-updated","refer-viewer-panorama-loaded","refer-viewer-select-point","refer-viewer-select-marker","refer-playbar-ready","refer-playbar-backward","refer-playbar-pause","refer-playbar-play","refer-playbar-forward","refer-playbar-slider","refer-playbar-select-point","refer-playbar-speed-updated","refer-playbar-delay-updated","refer-playbar-step-updated","lock-locked-updated","lock-distance-updated","bimsee-ready","bimsee-reload","bimsee-destroy","bimsee-change-model","bimsee-change-point","bimsee-masker-ready","bimsee-masker-click","bimsee-masker-mousedown","bimsee-masker-zoom-updated","bimsee-masker-position-updated"],setup(p,{expose:u,emit:r}){const A=p,c=r,l=e.ref(),f=e.ref(),C=e.ref(),m=e.ref(),{getProps:g,...Q}=Qe(A,l,f,C,m),{getBindValue:B,dualseeAction:i}=he(g,Q),{getLockProps:y,lockEvents:b}=Me(g,i,c),{getBasicProps:w,basicEvents:I}=De(g,i,c),{getReferProps:S,referEvents:U}=Ue(g,i,c),{getBimseeProps:d,bimseeEvents:R}=Ve(g,i,c);return u({...i}),(s,E)=>(e.openBlock(),e.createElementBlock("div",Le,[e.unref(g).dualseeLockVisible?(e.openBlock(),e.createBlock(ye,e.mergeProps({key:0,ref_key:"dualseeLockElRef",ref:l},e.unref(y),e.toHandlers(e.unref(b))),{button:e.withCtx(t=>[e.renderSlot(s.$slots,"lockButton",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),distance:e.withCtx(t=>[e.renderSlot(s.$slots,"lockDistance",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),_:3},16)):e.createCommentVNode("",!0),e.createVNode(e.unref(se.RealseePlugin),e.mergeProps({ref_key:"basicRealseeElRef",ref:f},e.unref(w),e.toHandlers(e.unref(I))),{default:e.withCtx(t=>[e.renderSlot(s.$slots,"basicDefault",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),mapDefault:e.withCtx(t=>[e.renderSlot(s.$slots,"basicMapDefault",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),mapExtra:e.withCtx(t=>[e.renderSlot(s.$slots,"basicMapExtra",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),mapLeft:e.withCtx(t=>[e.renderSlot(s.$slots,"basicMapLeft",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),mapRight:e.withCtx(t=>[e.renderSlot(s.$slots,"basicMapRight",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),playbarDefault:e.withCtx(t=>[e.renderSlot(s.$slots,"basicPlaybarDefault",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),playbarBox:e.withCtx(t=>[e.renderSlot(s.$slots,"basicPlaybarBox",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),playbarButton:e.withCtx(t=>[e.renderSlot(s.$slots,"basicPlaybarButton",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),playbarCaption:e.withCtx(t=>[e.renderSlot(s.$slots,"basicPlaybarCaption",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),playbarSlider:e.withCtx(t=>[e.renderSlot(s.$slots,"basicPlaybarSlider",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),_:3},16),e.unref(g).referRealseeVisible?(e.openBlock(),e.createBlock(e.unref(se.RealseePlugin),e.mergeProps({key:1,ref_key:"referRealseeElRef",ref:C},e.unref(S),e.toHandlers(e.unref(U))),{default:e.withCtx(t=>[e.renderSlot(s.$slots,"referDefault",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),mapDefault:e.withCtx(t=>[e.renderSlot(s.$slots,"referMapDefault",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),mapExtra:e.withCtx(t=>[e.renderSlot(s.$slots,"referMapExtra",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),mapLeft:e.withCtx(t=>[e.renderSlot(s.$slots,"referMapLeft",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),mapRight:e.withCtx(t=>[e.renderSlot(s.$slots,"referMapRight",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),playbarDefault:e.withCtx(t=>[e.renderSlot(s.$slots,"referPlaybarDefault",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),playbarBox:e.withCtx(t=>[e.renderSlot(s.$slots,"referPlaybarBox",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),playbarButton:e.withCtx(t=>[e.renderSlot(s.$slots,"referPlaybarButton",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),playbarCaption:e.withCtx(t=>[e.renderSlot(s.$slots,"referPlaybarCaption",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),playbarSlider:e.withCtx(t=>[e.renderSlot(s.$slots,"referPlaybarSlider",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),_:3},16)):e.createCommentVNode("",!0),e.unref(g).referBimseeVisible?(e.openBlock(),e.createBlock(e.unref(pe.BimseePlugin),e.mergeProps({key:2,ref_key:"referBimseeElRef",ref:m},e.unref(d),e.toHandlers(e.unref(R))),{default:e.withCtx(t=>[e.renderSlot(s.$slots,"bimseeDefault",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),masker:e.withCtx(t=>[e.renderSlot(s.$slots,"bimseeMasker",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),_:3},16)):e.createCommentVNode("",!0),e.renderSlot(s.$slots,"default",e.normalizeProps(e.guardReactiveProps(e.unref(B))),void 0,!0)]))}}),[["__scopeId","data-v-f72cd4e4"]]);D.DUALSEE_CONFIG=ne,D.DualseeErrorCode=T,D.DualseePlugin=de,D.LOCK_CONFIG=q,D.default=de,Object.defineProperties(D,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
1
+ (function(U,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("@vsleem-realsee-viewer/realsee-plugin"),require("@vsleem-realsee-viewer/bimsee-plugin"),require("@vsleem-realsee-viewer/shared")):typeof define=="function"&&define.amd?define(["exports","vue","@vsleem-realsee-viewer/realsee-plugin","@vsleem-realsee-viewer/bimsee-plugin","@vsleem-realsee-viewer/shared"],e):(U=typeof globalThis<"u"?globalThis:U||self,e(U.DualseePlugin={},U.Vue,U.VSLeemRealseePlugin,U.VSLeemBimseePlugin,U.VSLeemShared))})(this,(function(U,e,se,pe,J){"use strict";const q={locked:!0,distance:0,showDistance:!0,maxMatchDistance:5e3},ne={appSetting:J.APP_SETTING,dualseeLock:q,dualseeLockVisible:!1,referRealseeVisible:!1,referBimseeVisible:!1},{cloneDeep:ie,deepMergeProps:ge,getDiffProps:ue}=J.utils;function Ae(p,A){const r=e.ref(ie(q)),m=e.computed(()=>r.value);e.watch(()=>ie(p),c,{immediate:!0,deep:!0});function c(i,k){const b=ue(i,k);f(b)}function l(){return m.value}function f(i){i&&ge(r.value,i)}function C(i){f({distance:i}),A("distance-updated",i)}function u(i){f({locked:i}),A("locked-updated",i)}function g(){f({showDistance:!0})}function E(){f({showDistance:!1})}return{getProps:m,lockAction:{getState:l,setState:f,setDistance:C,setLocked:u,showDistance:g,hideDistance:E}}}const me="data:image/png;base64,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",be="data:image/png;base64,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",Be={class:"vsleem-dualsee-lock"},Ie=["src"],we=["src"],Re={key:0,class:"dualsee-lock-distance"},Ce=e.defineComponent({__name:"Lock",props:{locked:{type:Boolean},distance:{},showDistance:{type:Boolean},maxMatchDistance:{}},emits:["locked-updated","distance-updated"],setup(p,{expose:A,emit:r}){const m=p,c=r,{getProps:l,lockAction:f}=Ae(m,c),C=e.computed(()=>Math.floor((e.unref(l)?.distance||0)/1e3*10)/10),u=e.computed(()=>{const{locked:B=!1,distance:i=0,maxMatchDistance:k}=e.unref(l);return E(B,i,k)});function g(){const{locked:B=!1}=e.unref(l);f.setLocked(!B)}function E(B,i,k){if(B){const b=k/5;let R;return i<=b?R="#54b168":i<=b*2?R="#CBDE3C":i<=b*3?R="#DEC53C":i<=b*4?R="#DE5B3C":i<=b*5?R="#FA1212":R="#666",{backgroundColor:R,color:"#fff"}}return{color:"#333"}}return A({...f}),(B,i)=>(e.openBlock(),e.createElementBlock("div",Be,[e.renderSlot(B.$slots,"button",e.normalizeProps(e.guardReactiveProps(e.unref(l))),()=>[e.createElementVNode("div",{class:"dualsee-lock-button",style:e.normalizeStyle(u.value),onClick:g},[e.unref(l).locked?(e.openBlock(),e.createElementBlock("img",{key:0,class:"dualsee-lock-icon",src:e.unref(me)},null,8,Ie)):(e.openBlock(),e.createElementBlock("img",{key:1,class:"dualsee-lock-icon",src:e.unref(be)},null,8,we))],4),e.renderSlot(B.$slots,"distance",e.normalizeProps(e.guardReactiveProps(e.unref(l))),()=>[e.unref(l).showDistance?(e.openBlock(),e.createElementBlock("div",Re,[e.createElementVNode("span",null,"相距 "+e.toDisplayString(C.value)+" m",1)])):e.createCommentVNode("",!0)],!0)],!0)]))}}),ce=(p,A)=>{const r=p.__vccOpts||p;for(const[m,c]of A)r[m]=c;return r},ke=ce(Ce,[["__scopeId","data-v-e8eb866f"]]),{cloneDeep:le,deepMergeProps:ye,getDiffProps:Ee}=J.utils;function Qe(p,A,r,m,c){const l=e.ref(le(ne)),f=e.computed(()=>l.value);e.watch(()=>le(p),C,{immediate:!0,deep:!0});function C(b,R){const I=Ee(b,R);g(I)}function u(){return f.value}function g(b){b&&ye(l.value,b)}function E(){return A.value}function B(){return r.value}function i(){return m.value}function k(){return c.value}return{getProps:f,getState:u,setState:g,getDualseeLock:E,getBasicRealsee:B,getReferRealsee:i,getReferBimsee:k}}var T=(p=>(p[p.DualseeNoBIMModel=12e3]="DualseeNoBIMModel",p))(T||{});const{deepMerge:Se}=J.utils;function he(p,A,r){const{getState:m,getDualseeLock:c,getBasicRealsee:l,getReferRealsee:f,getReferBimsee:C,setState:u}=A,g=e.computed(()=>p.value);function E(d){if(!d)return;const w=f()?.getStore();if(w){const s=l()?.getViewer();if(s){const{yaw:Q=0,pitch:t=0}=s?.getPosition()||{},P=s?.getZoomLevel()||0,n={yaw:Q,pitch:t,zoomLevel:P};w.setReferPoint(d,n)}}}function B(d){if(!d)return;const w=C()?.getStore();if(w){const s=l()?.getViewer();if(s){const{yaw:Q=0,pitch:t=0}=s?.getPosition()||{},P=s?.getZoomLevel()||0,n={yaw:Q,pitch:t,zoomLevel:P};w.setReferPoint(d,n)}}}function i(){const d=l();if(d){const{searchInfo:w,...s}=d.getOptions(),{searchInfo:Q,...t}=p.value?.referRealsee||{},P=Q??w,n={...Se(s,t),searchInfo:P},y=d?.getPlaybar();y&&(y.pause(),y.setState({showPlay:!1,showSpeed:!1})),u({referRealsee:n,referRealseeVisible:!0,referBimseeVisible:!1})}}function k(){const d=l()?.getPlaybar();d&&(d.pause(),d.setState({showPlay:!0,showSpeed:!0})),u({referRealseeVisible:!1,referBimseeVisible:!1})}function b(){p.value.referRealseeVisible?k():i()}async function R(){try{const d=l();if(!d)return;const{mappedCoordinateTree:w,currentModel:s}=d.getStore(),{referBimsee:Q}=p.value;if(!Q)return;const{searchInfo:t}=Q||{},{modelCsId:P}=t||{},n=P?w?.findCsById(P):w?.findCsById(s?.id)?.findClosestModel(J.CoordinateModelType.BIMModel);if(!n)throw new J.AppError(T.DualseeNoBIMModel,`未找到ID为${P}的BIM模型坐标系`);const y=d.getPlaybar();y&&(y.pause(),y.setState({showPlay:!1,showSpeed:!1}));const{defaultYaw:F,defaultPitch:V,defaultZoomLvl:z}=d.getOptions().viewer||{},K={defaultYaw:F,defaultPitch:V,defaultZoomLvl:z},N={projectId:n.projectId||0,modelCsId:n.id},G={...Q,masker:K,searchInfo:N};u({referBimsee:G,referBimseeVisible:!0,referRealseeVisible:!1})}catch(d){console.error("显示BIMSEE参考模型失败:",d),p.value?.referBimsee?.fetchError?.(d)}}function I(){const d=l()?.getPlaybar();d&&(d.pause(),d.setState({showPlay:!0,showSpeed:!0})),u({referRealseeVisible:!1,referBimseeVisible:!1})}function S(){p.value.referBimseeVisible?I():R()}return{getBindValue:g,dualseeAction:{getState:m,setState:u,getDualseeLock:c,getBasicRealsee:l,getReferRealsee:f,getReferBimsee:C,toggleReferRealsee:b,showReferRealsee:i,hideReferRealsee:k,toggleReferBimsee:S,showReferBimsee:R,hideReferBimsee:I,setReferRealseePoint:E,setReferBimseePoint:B}}}const{debounce:Pe}=J.utils;function Me(p,A,r){const{getBasicRealsee:m,getReferRealsee:c,getReferBimsee:l,getDualseeLock:f}=A,C=e.computed(()=>p.value.dualseeLock),u=e.computed(()=>m()?.getStore()?.currentPoint),g=e.computed(()=>c()?.getStore()?.currentPoint),E=Pe(b,50);e.watch(()=>u.value?.id,()=>E(u.value,g.value)),e.watch(()=>g.value?.id,()=>E(u.value,g.value)),e.watch(()=>p.value.dualseeLockVisible,()=>E(u.value,g.value));function B(I){k(I),r("lock-locked-updated",I)}function i(I){r("lock-distance-updated",I)}function k(I){const S=l();S&&S?.getMasker?.()?.setVisible(I)}function b(I,S){if(!I||!S)return;const L=m(),d=c(),w=f();if(!L||!d||!w)return;S=L.getStore()?.normalizeToModelPoint?.(S);const s=I?.position,Q=S?.position;if(!s||!Q)return;const t=J.Point.distXY(s,Q),P=t<=C.value.maxMatchDistance;w.setLocked(P),w.setDistance(t)}return{getLockProps:C,lockEvents:{lockedUpdated:B,distanceUpdated:i}}}function De(p,A,r){const{getDualseeLock:m,getBasicRealsee:c,getReferRealsee:l,getReferBimsee:f,setReferRealseePoint:C,setReferBimseePoint:u}=A||{},g=e.computed(()=>{const{appSetting:a,basicRealsee:o}=p.value;return{...o,appSetting:a}});function E(){r("basic-ready")}function B(){r("basic-reload")}function i(){r("basic-destroy")}function k(a){r("basic-change-model",a)}function b(a){r("basic-change-record",a)}function R(a){_(),r("basic-change-point",a)}function I(){r("basic-map-ready")}function S(){r("basic-map-resize")}function L(a){r("basic-map-collapse",a)}function d(){r("basic-map-dragger")}function w(a){r("basic-map-select-point",a)}function s(a){r("basic-map-angle-updated",a)}function Q(){r("basic-viewer-ready")}function t(a){r("basic-viewer-click",a)}function P(a){ee(),r("basic-viewer-mousedown",a)}function n(a){re(a),r("basic-viewer-zoom-updated",a)}function y(a,o){oe(a,o),r("basic-viewer-position-updated",a)}function F(a){r("basic-viewer-panorama-loaded",a)}function V(a){r("basic-viewer-select-point",a)}function z(a){r("basic-viewer-select-marker",a)}function K(){r("basic-playbar-ready")}function N(a){r("basic-playbar-backward",a)}function G(a){r("basic-playbar-pause",a)}function H(a){r("basic-playbar-play",a)}function X(a){r("basic-playbar-forward",a)}function Z(a){r("basic-playbar-slider",a)}function j(a){r("basic-playbar-select-point",a)}function W(a){r("basic-playbar-speed-updated",a)}function v(a){r("basic-playbar-delay-updated",a)}function $(a){r("basic-playbar-step-updated",a)}async function _(a){const{currentPoint:o}=c()?.getStore()||{};o&&(await e.nextTick(),C?.(o),u?.(o))}function ee(a){c?.()?.getViewer?.()?.setMousedown(!0),l?.()?.getViewer?.()?.setMousedown(!1),f?.()?.getMasker?.()?.setMousedown(!1)}function re(a){const{locked:o}=m()?.getState()||{};if(!o)return;const D=l?.();if(D){const h=D?.getViewer?.(),M=h?.isMouseover();h&&!M&&h?.zoom(a.zoomLevel)}const x=f?.();if(x){const h=x?.getMasker(),M=h?.isMouseover();h&&!M&&h.zoom(a.zoomLevel)}}function oe(a,o){const{locked:D}=m()?.getState()||{};if(!D)return;const x=l?.();if(x){const M=x?.getViewer(),Y=c()?.getViewer()?.isMousedown();if(M&&Y){const O=M.getPosition(),te=O.yaw+o.yaw,ae=O.pitch+o.pitch;M.rotate({yaw:te,pitch:ae})}}const h=f?.();if(h){const M=h?.getMasker(),Y=c()?.getViewer()?.isMousedown();M&&Y&&M.rotate(a.position)}}return{getBasicProps:g,basicEvents:{ready:E,reload:B,destroy:i,changeModel:k,changeRecord:b,changePoint:R,mapReady:I,mapResize:S,mapCollapse:L,mapDragger:d,mapSelectPoint:w,mapAngleUpdated:s,viewerReady:Q,viewerClick:t,viewerMousedown:P,viewerZoomUpdated:n,viewerPositionUpdated:y,viewerPanoramaLoaded:F,viewerSelectPoint:V,viewerSelectMarker:z,playbarReady:K,playbarBackward:N,playbarPause:G,playbarPlay:H,playbarForward:X,playbarSlider:Z,playbarSelectPoint:j,playbarSpeedUpdated:W,playbarDelayUpdated:v,playbarStepUpdated:$}}}function Ue(p,A,r){const{getDualseeLock:m,getBasicRealsee:c,getReferRealsee:l,setReferRealseePoint:f}=A||{},C=e.computed(()=>{const{appSetting:o,referRealsee:D}=p.value;return{...D,appSetting:o}});function u(){r("refer-ready")}function g(){v(),r("refer-reload")}function E(){$(),r("refer-destroy")}function B(o){r("refer-change-model",o)}function i(o){_(),r("refer-change-record",o)}function k(o){r("refer-change-point",o)}function b(){r("refer-map-ready")}function R(){r("refer-map-resize")}function I(o){r("refer-map-collapse",o)}function S(){r("refer-map-dragger")}function L(o){r("refer-map-select-point",o)}function d(o){r("refer-map-angle-updated",o)}function w(){ee(),r("refer-viewer-ready")}function s(o){r("refer-viewer-click",o)}function Q(o){re(),r("refer-viewer-mousedown",o)}function t(o){oe(o),r("refer-viewer-zoom-updated",o)}function P(o,D){fe(o,D),r("refer-viewer-position-updated",o)}function n(o){r("basic-viewer-panorama-loaded",o)}function y(o){r("refer-viewer-select-point",o)}function F(o){r("refer-viewer-select-marker",o)}function V(){r("refer-playbar-ready")}function z(o){r("refer-playbar-backward",o)}function K(o){r("refer-playbar-pause",o)}function N(o){r("refer-playbar-play",o)}function G(o){r("refer-playbar-forward",o)}function H(o){r("refer-playbar-slider",o)}function X(o){r("refer-playbar-select-point",o)}function Z(o){r("refer-playbar-speed-updated",o)}function j(o){r("refer-playbar-delay-updated",o)}function W(o){r("refer-playbar-step-updated",o)}function v(){const{currentPoint:o}=c()?.getStore()||{};f?.(o)}function $(){A?.setState({dualseeLockVisible:!1})}async function _(o){const{currentPoint:D}=c()?.getStore()||{};f?.(D)}function ee(){const{currentPoint:o}=c()?.getStore()||{};f?.(o),A?.setState({dualseeLockVisible:!0,dualseeLock:{showDistance:!0}})}function re(o){c?.()?.getViewer?.()?.setMousedown(!1),l?.()?.getViewer?.()?.setMousedown(!0)}function oe(o){const{locked:D}=m()?.getState()||{};if(!D)return;const x=c?.();if(x){const h=x?.getViewer(),M=h?.isMouseover();h&&!M&&h.zoom(o.zoomLevel)}}function fe(o,D){const{locked:x}=m()?.getState()||{};if(!x)return;const h=c?.();if(h){const M=h?.getViewer(),Y=l()?.getViewer()?.isMousedown();if(M&&Y){const O=M.getPosition(),te=O.yaw+D.yaw,ae=O.pitch+D.pitch;M.rotate({yaw:te,pitch:ae})}}}return{getReferProps:C,referEvents:{ready:u,reload:g,destroy:E,changeModel:B,changeRecord:i,changePoint:k,mapReady:b,mapResize:R,mapCollapse:I,mapDragger:S,mapSelectPoint:L,mapAngleUpdated:d,viewerReady:w,viewerClick:s,viewerMousedown:Q,viewerZoomUpdated:t,viewerPositionUpdated:P,viewerPanoramaLoaded:n,viewerSelectPoint:y,viewerSelectMarker:F,playbarReady:V,playbarBackward:z,playbarPause:K,playbarPlay:N,playbarForward:G,playbarSlider:H,playbarSelectPoint:X,playbarSpeedUpdated:Z,playbarDelayUpdated:j,playbarStepUpdated:W}}}function Ve(p,A,r){const{getDualseeLock:m,getBasicRealsee:c,getReferBimsee:l,setReferBimseePoint:f}=A||{},C=e.computed(()=>{const{appSetting:n,referBimsee:y}=p.value;return{...y,appSetting:n}});function u(){r("bimsee-ready")}function g(){L(),r("bimsee-reload")}function E(){d(),r("bimsee-destroy")}function B(n){r("bimsee-change-model",n)}function i(n){r("bimsee-change-point",n)}function k(n){w(),r("bimsee-masker-ready",n)}function b(n){r("bimsee-masker-click",n)}function R(n){s(),r("bimsee-masker-mousedown",n)}function I(n){Q(n),r("bimsee-masker-zoom-updated",n)}function S(n,y){t(n,y),r("bimsee-masker-position-updated",n)}function L(){const{currentPoint:n}=c()?.getStore()||{};f?.(n)}function d(){A?.setState({dualseeLockVisible:!1})}function w(){const{currentPoint:n}=c()?.getStore()||{};f?.(n),A?.setState({dualseeLockVisible:!0,dualseeLock:{showDistance:!1}})}function s(n){c?.()?.getViewer?.()?.setMousedown(!1),l?.()?.getMasker?.()?.setMousedown(!0)}function Q(n){const{locked:y}=m()?.getState()||{};if(!y)return;const F=c?.();if(F){const V=F?.getViewer?.(),z=V?.isMouseover();V&&!z&&V?.zoom(n.zoomLevel)}}function t(n,y){const{locked:F}=m()?.getState()||{};if(!F)return;const V=c?.();if(V){const z=V?.getViewer(),K=l()?.getMasker()?.isMousedown();if(z&&K){const N=z.getPosition(),G=N.yaw+y.yaw,H=N.pitch+y.pitch;z.rotate({yaw:G,pitch:H})}}}return{getBimseeProps:C,bimseeEvents:{ready:u,reload:g,destroy:E,changeModel:B,changePoint:i,maskerReady:k,maskerClick:b,maskerMousedown:R,maskerZoomUpdated:I,maskerPositionUpdated:S}}}const Le={class:"vsleem-dualsee"},de=ce(e.defineComponent({name:"Dualsee",__name:"Dualsee",props:{appSetting:{},dualseeSetting:{},basicRealsee:{},referRealsee:{},referBimsee:{},dualseeLock:{default:()=>q},dualseeLockVisible:{type:Boolean},referRealseeVisible:{type:Boolean},referBimseeVisible:{type:Boolean}},emits:["basic-ready","basic-reload","basic-destroy","basic-change-model","basic-change-record","basic-change-point","basic-map-ready","basic-map-resize","basic-map-collapse","basic-map-dragger","basic-map-select-point","basic-map-angle-updated","basic-viewer-ready","basic-viewer-click","basic-viewer-mousedown","basic-viewer-zoom-updated","basic-viewer-position-updated","basic-viewer-panorama-loaded","basic-viewer-select-point","basic-viewer-select-marker","basic-playbar-ready","basic-playbar-backward","basic-playbar-pause","basic-playbar-play","basic-playbar-forward","basic-playbar-slider","basic-playbar-select-point","basic-playbar-speed-updated","basic-playbar-delay-updated","basic-playbar-step-updated","refer-ready","refer-reload","refer-destroy","refer-change-model","refer-change-record","refer-change-point","refer-map-ready","refer-map-resize","refer-map-collapse","refer-map-dragger","refer-map-select-point","refer-map-angle-updated","refer-viewer-ready","refer-viewer-click","refer-viewer-mousedown","refer-viewer-zoom-updated","refer-viewer-position-updated","refer-viewer-panorama-loaded","refer-viewer-select-point","refer-viewer-select-marker","refer-playbar-ready","refer-playbar-backward","refer-playbar-pause","refer-playbar-play","refer-playbar-forward","refer-playbar-slider","refer-playbar-select-point","refer-playbar-speed-updated","refer-playbar-delay-updated","refer-playbar-step-updated","lock-locked-updated","lock-distance-updated","bimsee-ready","bimsee-reload","bimsee-destroy","bimsee-change-model","bimsee-change-point","bimsee-masker-ready","bimsee-masker-click","bimsee-masker-mousedown","bimsee-masker-zoom-updated","bimsee-masker-position-updated"],setup(p,{expose:A,emit:r}){const m=p,c=r,l=e.ref(),f=e.ref(),C=e.ref(),u=e.ref(),{getProps:g,...E}=Qe(m,l,f,C,u),{getBindValue:B,dualseeAction:i}=he(g,E),{getLockProps:k,lockEvents:b}=Me(g,i,c),{getBasicProps:R,basicEvents:I}=De(g,i,c),{getReferProps:S,referEvents:L}=Ue(g,i,c),{getBimseeProps:d,bimseeEvents:w}=Ve(g,i,c);return A({...i}),(s,Q)=>(e.openBlock(),e.createElementBlock("div",Le,[e.unref(g).dualseeLockVisible?(e.openBlock(),e.createBlock(ke,e.mergeProps({key:0,ref_key:"dualseeLockElRef",ref:l},e.unref(k),e.toHandlers(e.unref(b))),{button:e.withCtx(t=>[e.renderSlot(s.$slots,"lockButton",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),distance:e.withCtx(t=>[e.renderSlot(s.$slots,"lockDistance",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),_:3},16)):e.createCommentVNode("",!0),e.createVNode(e.unref(se.RealseePlugin),e.mergeProps({ref_key:"basicRealseeElRef",ref:f},e.unref(R),e.toHandlers(e.unref(I))),{default:e.withCtx(t=>[e.renderSlot(s.$slots,"basicDefault",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),mapDefault:e.withCtx(t=>[e.renderSlot(s.$slots,"basicMapDefault",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),mapExtra:e.withCtx(t=>[e.renderSlot(s.$slots,"basicMapExtra",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),mapLeft:e.withCtx(t=>[e.renderSlot(s.$slots,"basicMapLeft",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),mapRight:e.withCtx(t=>[e.renderSlot(s.$slots,"basicMapRight",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),playbarDefault:e.withCtx(t=>[e.renderSlot(s.$slots,"basicPlaybarDefault",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),playbarBox:e.withCtx(t=>[e.renderSlot(s.$slots,"basicPlaybarBox",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),playbarButton:e.withCtx(t=>[e.renderSlot(s.$slots,"basicPlaybarButton",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),playbarCaption:e.withCtx(t=>[e.renderSlot(s.$slots,"basicPlaybarCaption",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),playbarSlider:e.withCtx(t=>[e.renderSlot(s.$slots,"basicPlaybarSlider",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),_:3},16),e.unref(g).referRealseeVisible?(e.openBlock(),e.createBlock(e.unref(se.RealseePlugin),e.mergeProps({key:1,ref_key:"referRealseeElRef",ref:C},e.unref(S),e.toHandlers(e.unref(L))),{default:e.withCtx(t=>[e.renderSlot(s.$slots,"referDefault",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),mapDefault:e.withCtx(t=>[e.renderSlot(s.$slots,"referMapDefault",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),mapExtra:e.withCtx(t=>[e.renderSlot(s.$slots,"referMapExtra",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),mapLeft:e.withCtx(t=>[e.renderSlot(s.$slots,"referMapLeft",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),mapRight:e.withCtx(t=>[e.renderSlot(s.$slots,"referMapRight",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),playbarDefault:e.withCtx(t=>[e.renderSlot(s.$slots,"referPlaybarDefault",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),playbarBox:e.withCtx(t=>[e.renderSlot(s.$slots,"referPlaybarBox",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),playbarButton:e.withCtx(t=>[e.renderSlot(s.$slots,"referPlaybarButton",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),playbarCaption:e.withCtx(t=>[e.renderSlot(s.$slots,"referPlaybarCaption",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),playbarSlider:e.withCtx(t=>[e.renderSlot(s.$slots,"referPlaybarSlider",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),_:3},16)):e.createCommentVNode("",!0),e.unref(g).referBimseeVisible?(e.openBlock(),e.createBlock(e.unref(pe.BimseePlugin),e.mergeProps({key:2,ref_key:"referBimseeElRef",ref:u},e.unref(d),e.toHandlers(e.unref(w))),{default:e.withCtx(t=>[e.renderSlot(s.$slots,"bimseeDefault",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),masker:e.withCtx(t=>[e.renderSlot(s.$slots,"bimseeMasker",e.normalizeProps(e.guardReactiveProps(t)),void 0,!0)]),_:3},16)):e.createCommentVNode("",!0),e.renderSlot(s.$slots,"default",e.normalizeProps(e.guardReactiveProps(e.unref(B))),void 0,!0)]))}}),[["__scopeId","data-v-f72cd4e4"]]);U.DUALSEE_CONFIG=ne,U.DualseeErrorCode=T,U.DualseePlugin=de,U.LOCK_CONFIG=q,U.default=de,Object.defineProperties(U,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
@@ -1,9 +1,11 @@
1
+ /** 锁配置 */
1
2
  export declare const LOCK_CONFIG: {
2
3
  locked: boolean;
3
4
  distance: number;
4
5
  showDistance: boolean;
5
6
  maxMatchDistance: number;
6
7
  };
8
+ /** 双重场景配置 */
7
9
  export declare const DUALSEE_CONFIG: {
8
10
  appSetting: {
9
11
  baseUrl: string;
@@ -2,7 +2,9 @@ import { AppSetting } from '@vsleem-realsee-viewer/shared';
2
2
  import { TrackPoint, RealseeElement, RealseeProps as RealseeOptions, SearchInfo as RealseeSearchInfo } from '@vsleem-realsee-viewer/realsee-plugin';
3
3
  import { BimseeElement, BimseeProps as BimseeOptions, SearchInfo as BimseeSearchInfo } from '@vsleem-realsee-viewer/bimsee-plugin';
4
4
  import { LockProps, LockElement } from './lock';
5
+ /** 场景设置 */
5
6
  export type DualseeSetting = {};
7
+ /** 场景状态 */
6
8
  export type UpdatableDualseeProps = Partial<DualseeProps>;
7
9
  export type BasicRealseeProps = Omit<RealseeOptions, 'appSetting'>;
8
10
  export type ReferRealseeProps = Omit<RealseeOptions, 'appSetting' | 'searchInfo'> & {
@@ -11,17 +13,19 @@ export type ReferRealseeProps = Omit<RealseeOptions, 'appSetting' | 'searchInfo'
11
13
  export type ReferBimseeProps = Omit<BimseeOptions, 'appSetting' | 'searchInfo'> & {
12
14
  searchInfo?: BimseeSearchInfo;
13
15
  };
16
+ /** 场景参数 */
14
17
  export type DualseeProps = {
15
- appSetting: AppSetting;
16
- dualseeSetting?: DualseeSetting;
17
- basicRealsee: BasicRealseeProps;
18
- referRealsee?: ReferRealseeProps;
19
- referBimsee?: ReferBimseeProps;
20
- dualseeLock?: LockProps;
21
- dualseeLockVisible?: boolean;
22
- referRealseeVisible?: boolean;
23
- referBimseeVisible?: boolean;
18
+ appSetting: AppSetting /** 全局设置 */;
19
+ dualseeSetting?: DualseeSetting /** 双重场景配置 */;
20
+ basicRealsee: BasicRealseeProps /** 基础全景 */;
21
+ referRealsee?: ReferRealseeProps /** 对比全景 */;
22
+ referBimsee?: ReferBimseeProps /** 对比bim */;
23
+ dualseeLock?: LockProps /** 双重场景锁配置 */;
24
+ dualseeLockVisible?: boolean /** 锁是否可见 */;
25
+ referRealseeVisible?: boolean /** 对比全景是否可见 */;
26
+ referBimseeVisible?: boolean /** 对比全景是否可见 */;
24
27
  };
28
+ /** 双重场景对象 */
25
29
  export type DualseeElement = {
26
30
  getState: () => UpdatableDualseeProps /** 获取当前配置选项 */;
27
31
  setState: (options: Partial<UpdatableDualseeProps>) => void /** 设置配置选项 */;
@@ -1,15 +1,18 @@
1
+ /** 锁参数 */
1
2
  export type LockProps = {
2
- locked?: boolean;
3
- distance?: number;
4
- showDistance?: boolean;
5
- maxMatchDistance?: number;
3
+ locked?: boolean /** 锁状态 */;
4
+ distance?: number /** 两点之间的距离 */;
5
+ showDistance?: boolean /** 是否显示距离 */;
6
+ maxMatchDistance?: number /** 匹配点最大距离(毫米,默认5000) */;
6
7
  };
8
+ /** 可更新锁参数 */
7
9
  export type UpdatableLockProps = Partial<LockProps>;
10
+ /** 锁对象 */
8
11
  export type LockElement = {
9
- getState: () => LockProps;
10
- setState: (options: UpdatableLockProps) => void;
11
- setDistance: (distance: number) => void;
12
- setLocked: (locked: boolean) => void;
13
- showDistance: () => void;
14
- hideDistance: () => void;
12
+ getState: () => LockProps /** 获取锁参数 */;
13
+ setState: (options: UpdatableLockProps) => void /** 设置锁参数 */;
14
+ setDistance: (distance: number) => void /** 设置距离值 */;
15
+ setLocked: (locked: boolean) => void /** 设置锁状态 */;
16
+ showDistance: () => void /** 显示距离 */;
17
+ hideDistance: () => void /** 隐藏距离 */;
15
18
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vsleem-realsee-viewer/dualsee-plugin",
3
- "version": "2.0.12",
3
+ "version": "2.0.13",
4
4
  "description": "Dualsee plugin for VSLeem RealSee Viewer",
5
5
  "main": "./dist/index.umd.js",
6
6
  "module": "./dist/index.mjs",
@@ -13,15 +13,15 @@
13
13
  "dist"
14
14
  ],
15
15
  "dependencies": {
16
- "@vsleem-realsee-viewer/realsee-plugin": "2.0.12",
17
- "@vsleem-realsee-viewer/bimsee-plugin": "2.0.12",
18
- "@vsleem-realsee-viewer/shared": "2.0.12"
16
+ "@vsleem-realsee-viewer/realsee-plugin": "2.0.13",
17
+ "@vsleem-realsee-viewer/bimsee-plugin": "2.0.13",
18
+ "@vsleem-realsee-viewer/shared": "2.0.13"
19
19
  },
20
20
  "peerDependencies": {
21
21
  "vue": "^3.0.0",
22
- "@vsleem-realsee-viewer/realsee-plugin": "2.0.12",
23
- "@vsleem-realsee-viewer/bimsee-plugin": "2.0.12",
24
- "@vsleem-realsee-viewer/shared": "2.0.12"
22
+ "@vsleem-realsee-viewer/realsee-plugin": "2.0.13",
23
+ "@vsleem-realsee-viewer/bimsee-plugin": "2.0.13",
24
+ "@vsleem-realsee-viewer/shared": "2.0.13"
25
25
  },
26
26
  "peerDependenciesMeta": {
27
27
  "vue": {