@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.
- package/dist/components/Dualsee.vue.d.ts +6 -2
- package/dist/index.d.ts +7 -11
- package/dist/index.mjs +190 -190
- package/dist/index.umd.js +1 -1
- package/dist/settings/index.d.ts +2 -0
- package/dist/types/dualsee.d.ts +13 -9
- package/dist/types/lock.d.ts +13 -10
- package/package.json +7 -7
|
@@ -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 {
|
|
4
|
-
|
|
5
|
-
ReferRealseeProps
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
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
|
|
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,
|
|
18
|
-
const e = q(me(ge)),
|
|
19
|
-
|
|
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
|
|
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 }),
|
|
31
|
+
d({ distance: n }), I("distance-updated", n);
|
|
32
32
|
}
|
|
33
|
-
function
|
|
34
|
-
d({ locked: 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
|
|
39
|
+
function h() {
|
|
40
40
|
d({ showDistance: !1 });
|
|
41
41
|
}
|
|
42
42
|
return {
|
|
43
|
-
getProps:
|
|
43
|
+
getProps: B,
|
|
44
44
|
lockAction: {
|
|
45
45
|
getState: c,
|
|
46
46
|
setState: d,
|
|
47
47
|
setDistance: C,
|
|
48
|
-
setLocked:
|
|
48
|
+
setLocked: b,
|
|
49
49
|
showDistance: u,
|
|
50
|
-
hideDistance:
|
|
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:
|
|
67
|
-
const
|
|
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
|
-
),
|
|
69
|
+
), b = N(() => {
|
|
70
70
|
const { locked: k = !1, distance: n = 0, maxMatchDistance: v } = w(c);
|
|
71
|
-
return
|
|
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
|
|
77
|
+
function h(k, n, v) {
|
|
78
78
|
if (k) {
|
|
79
79
|
const m = v / 5;
|
|
80
|
-
let
|
|
81
|
-
return n <= m ?
|
|
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
|
|
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(
|
|
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
|
-
])) :
|
|
105
|
+
])) : ee("", !0)
|
|
106
106
|
], !0)
|
|
107
107
|
], !0)
|
|
108
108
|
]));
|
|
109
109
|
}
|
|
110
|
-
}), ke = (f,
|
|
110
|
+
}), ke = (f, I) => {
|
|
111
111
|
const e = f.__vccOpts || f;
|
|
112
|
-
for (const [
|
|
113
|
-
e[
|
|
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,
|
|
116
|
+
function Te(f, I, e, B, i) {
|
|
117
117
|
const c = q(ye(Ue)), d = N(() => c.value);
|
|
118
|
-
|
|
119
|
-
function C(m,
|
|
120
|
-
const E = qe(m,
|
|
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
|
|
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
|
|
130
|
-
return
|
|
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
|
|
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:
|
|
143
|
+
getState: b,
|
|
144
144
|
setState: u,
|
|
145
|
-
getDualseeLock:
|
|
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,
|
|
154
|
-
const { getState:
|
|
155
|
-
function
|
|
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
|
|
158
|
-
if (
|
|
157
|
+
const R = d()?.getStore();
|
|
158
|
+
if (R) {
|
|
159
159
|
const s = c()?.getViewer();
|
|
160
160
|
if (s) {
|
|
161
|
-
const { yaw:
|
|
162
|
-
|
|
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
|
|
169
|
-
if (
|
|
168
|
+
const R = C()?.getStore();
|
|
169
|
+
if (R) {
|
|
170
170
|
const s = c()?.getViewer();
|
|
171
171
|
if (s) {
|
|
172
|
-
const { yaw:
|
|
173
|
-
|
|
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:
|
|
181
|
-
S && (S.pause(), S.setState({ showPlay: !1, showSpeed: !1 })),
|
|
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 })),
|
|
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
|
|
198
|
+
async function Q() {
|
|
199
199
|
try {
|
|
200
200
|
const l = c();
|
|
201
201
|
if (!l) return;
|
|
202
|
-
const { mappedCoordinateTree:
|
|
203
|
-
if (!
|
|
204
|
-
const { searchInfo: o } =
|
|
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为${
|
|
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:
|
|
213
|
-
|
|
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 })),
|
|
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() :
|
|
230
|
+
f.value.referBimseeVisible ? E() : Q();
|
|
231
231
|
}
|
|
232
232
|
return {
|
|
233
233
|
getBindValue: u,
|
|
234
234
|
dualseeAction: {
|
|
235
|
-
getState:
|
|
236
|
-
setState:
|
|
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:
|
|
245
|
+
showReferBimsee: Q,
|
|
246
246
|
hideReferBimsee: E,
|
|
247
|
-
setReferRealseePoint:
|
|
247
|
+
setReferRealseePoint: h,
|
|
248
248
|
setReferBimseePoint: k
|
|
249
249
|
}
|
|
250
250
|
};
|
|
251
251
|
}
|
|
252
252
|
const { debounce: je } = ae;
|
|
253
|
-
function We(f,
|
|
254
|
-
const { getBasicRealsee:
|
|
255
|
-
|
|
256
|
-
() =>
|
|
257
|
-
() =>
|
|
258
|
-
),
|
|
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
|
-
() =>
|
|
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
|
-
|
|
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
|
|
278
|
-
if (!
|
|
279
|
-
D =
|
|
280
|
-
const
|
|
281
|
-
if (!
|
|
282
|
-
const
|
|
283
|
-
|
|
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,
|
|
293
|
+
function $e(f, I, e) {
|
|
294
294
|
const {
|
|
295
|
-
getDualseeLock:
|
|
295
|
+
getDualseeLock: B,
|
|
296
296
|
getBasicRealsee: i,
|
|
297
297
|
getReferRealsee: c,
|
|
298
298
|
getReferBimsee: d,
|
|
299
299
|
setReferRealseePoint: C,
|
|
300
|
-
setReferBimseePoint:
|
|
301
|
-
} =
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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),
|
|
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 } =
|
|
403
|
+
const { locked: a } = B()?.getState() || {};
|
|
404
404
|
if (!a) return;
|
|
405
|
-
const
|
|
406
|
-
if (
|
|
407
|
-
const P =
|
|
408
|
-
P && !
|
|
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(),
|
|
413
|
-
P && !
|
|
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:
|
|
418
|
-
if (!
|
|
417
|
+
const { locked: L } = B()?.getState() || {};
|
|
418
|
+
if (!L) return;
|
|
419
419
|
const Y = c?.();
|
|
420
420
|
if (Y) {
|
|
421
|
-
const
|
|
422
|
-
if (
|
|
423
|
-
const Z =
|
|
424
|
-
|
|
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
|
|
430
|
-
|
|
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:
|
|
436
|
+
ready: h,
|
|
437
437
|
reload: k,
|
|
438
438
|
destroy: n,
|
|
439
439
|
changeModel: v,
|
|
440
440
|
changeRecord: m,
|
|
441
|
-
changePoint:
|
|
441
|
+
changePoint: Q,
|
|
442
442
|
mapReady: E,
|
|
443
443
|
mapResize: D,
|
|
444
|
-
mapCollapse:
|
|
444
|
+
mapCollapse: J,
|
|
445
445
|
mapDragger: l,
|
|
446
|
-
mapSelectPoint:
|
|
446
|
+
mapSelectPoint: R,
|
|
447
447
|
mapAngleUpdated: s,
|
|
448
|
-
viewerReady:
|
|
448
|
+
viewerReady: M,
|
|
449
449
|
viewerClick: o,
|
|
450
|
-
viewerMousedown:
|
|
450
|
+
viewerMousedown: U,
|
|
451
451
|
viewerZoomUpdated: r,
|
|
452
452
|
viewerPositionUpdated: S,
|
|
453
453
|
viewerPanoramaLoaded: G,
|
|
454
|
-
viewerSelectPoint:
|
|
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,
|
|
470
|
-
const { getDualseeLock:
|
|
471
|
-
const { appSetting: a, referRealsee:
|
|
472
|
-
return { ...
|
|
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
|
|
474
|
+
function b() {
|
|
475
475
|
e("refer-ready");
|
|
476
476
|
}
|
|
477
477
|
function u() {
|
|
478
478
|
ne(), e("refer-reload");
|
|
479
479
|
}
|
|
480
|
-
function
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
523
|
-
be(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
|
|
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
|
-
|
|
569
|
+
I?.setState({ dualseeLockVisible: !1 });
|
|
570
570
|
}
|
|
571
571
|
async function ce(a) {
|
|
572
|
-
const { currentPoint:
|
|
573
|
-
d?.(
|
|
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),
|
|
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:
|
|
587
|
-
if (!
|
|
586
|
+
const { locked: L } = B()?.getState() || {};
|
|
587
|
+
if (!L) return;
|
|
588
588
|
const Y = i?.();
|
|
589
589
|
if (Y) {
|
|
590
|
-
const P = Y?.getViewer(),
|
|
591
|
-
P && !
|
|
590
|
+
const P = Y?.getViewer(), V = P?.isMouseover();
|
|
591
|
+
P && !V && P.zoom(a.zoomLevel);
|
|
592
592
|
}
|
|
593
593
|
}
|
|
594
|
-
function be(a,
|
|
595
|
-
const { locked: Y } =
|
|
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
|
|
600
|
-
if (
|
|
601
|
-
const Z =
|
|
602
|
-
|
|
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:
|
|
609
|
+
ready: b,
|
|
610
610
|
reload: u,
|
|
611
|
-
destroy:
|
|
611
|
+
destroy: h,
|
|
612
612
|
changeModel: k,
|
|
613
613
|
changeRecord: n,
|
|
614
614
|
changePoint: v,
|
|
615
615
|
mapReady: m,
|
|
616
|
-
mapResize:
|
|
616
|
+
mapResize: Q,
|
|
617
617
|
mapCollapse: E,
|
|
618
618
|
mapDragger: D,
|
|
619
|
-
mapSelectPoint:
|
|
619
|
+
mapSelectPoint: J,
|
|
620
620
|
mapAngleUpdated: l,
|
|
621
|
-
viewerReady:
|
|
621
|
+
viewerReady: R,
|
|
622
622
|
viewerClick: s,
|
|
623
|
-
viewerMousedown:
|
|
623
|
+
viewerMousedown: M,
|
|
624
624
|
viewerZoomUpdated: o,
|
|
625
|
-
viewerPositionUpdated:
|
|
625
|
+
viewerPositionUpdated: U,
|
|
626
626
|
viewerPanoramaLoaded: r,
|
|
627
627
|
viewerSelectPoint: S,
|
|
628
628
|
viewerSelectMarker: G,
|
|
629
|
-
playbarReady:
|
|
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,
|
|
643
|
-
const { getDualseeLock:
|
|
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
|
|
647
|
+
function b() {
|
|
648
648
|
e("bimsee-ready");
|
|
649
649
|
}
|
|
650
650
|
function u() {
|
|
651
|
-
|
|
651
|
+
J(), e("bimsee-reload");
|
|
652
652
|
}
|
|
653
|
-
function
|
|
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
|
-
|
|
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
|
|
668
|
+
function Q(r) {
|
|
669
669
|
s(), e("bimsee-masker-mousedown", r);
|
|
670
670
|
}
|
|
671
671
|
function E(r) {
|
|
672
|
-
|
|
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
|
|
677
|
+
function J() {
|
|
678
678
|
const { currentPoint: r } = i()?.getStore() || {};
|
|
679
679
|
d?.(r);
|
|
680
680
|
}
|
|
681
681
|
function l() {
|
|
682
|
-
|
|
682
|
+
I?.setState({ dualseeLockVisible: !1 });
|
|
683
683
|
}
|
|
684
|
-
function
|
|
684
|
+
function R() {
|
|
685
685
|
const { currentPoint: r } = i()?.getStore() || {};
|
|
686
|
-
d?.(r),
|
|
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
|
|
695
|
-
const { locked: S } =
|
|
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
|
|
700
|
-
|
|
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 } =
|
|
704
|
+
const { locked: G } = B()?.getState() || {};
|
|
705
705
|
if (!G) return;
|
|
706
|
-
const
|
|
707
|
-
if (
|
|
708
|
-
const K =
|
|
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:
|
|
718
|
+
ready: b,
|
|
719
719
|
reload: u,
|
|
720
|
-
destroy:
|
|
720
|
+
destroy: h,
|
|
721
721
|
changeModel: k,
|
|
722
722
|
changePoint: n,
|
|
723
723
|
maskerReady: v,
|
|
724
724
|
maskerClick: m,
|
|
725
|
-
maskerMousedown:
|
|
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:
|
|
820
|
-
const
|
|
821
|
-
|
|
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
|
-
|
|
826
|
-
), { getBindValue: k, dualseeAction: n } = Ze(u,
|
|
827
|
-
return
|
|
828
|
-
w(u).dualseeLockVisible ? (z(), Ae(xe,
|
|
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),
|
|
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)) :
|
|
841
|
-
ve(w(Be),
|
|
840
|
+
}, 16)) : ee("", !0),
|
|
841
|
+
ve(w(Be), $({
|
|
842
842
|
ref_key: "basicRealseeElRef",
|
|
843
843
|
ref: d
|
|
844
|
-
}, w(
|
|
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),
|
|
877
|
+
w(u).referRealseeVisible ? (z(), Ae(w(Be), $({
|
|
878
878
|
key: 1,
|
|
879
879
|
ref_key: "referRealseeElRef",
|
|
880
880
|
ref: C
|
|
881
|
-
}, w(D),
|
|
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)) :
|
|
914
|
-
w(u).referBimseeVisible ? (z(), Ae(w(Se),
|
|
913
|
+
}, 16)) : ee("", !0),
|
|
914
|
+
w(u).referBimseeVisible ? (z(), Ae(w(Se), $({
|
|
915
915
|
key: 2,
|
|
916
916
|
ref_key: "referBimseeElRef",
|
|
917
|
-
ref:
|
|
918
|
-
}, w(l),
|
|
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)) :
|
|
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"}})}));
|
package/dist/settings/index.d.ts
CHANGED
package/dist/types/dualsee.d.ts
CHANGED
|
@@ -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 /** 设置配置选项 */;
|
package/dist/types/lock.d.ts
CHANGED
|
@@ -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.
|
|
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.
|
|
17
|
-
"@vsleem-realsee-viewer/bimsee-plugin": "2.0.
|
|
18
|
-
"@vsleem-realsee-viewer/shared": "2.0.
|
|
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.
|
|
23
|
-
"@vsleem-realsee-viewer/bimsee-plugin": "2.0.
|
|
24
|
-
"@vsleem-realsee-viewer/shared": "2.0.
|
|
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": {
|