@vsleem-realsee-viewer/dualsee-plugin 2.0.4 → 2.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.umd.js CHANGED
@@ -1 +1 @@
1
- (function(P,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):(P=typeof globalThis<"u"?globalThis:P||self,e(P.DualseePlugin={},P.Vue,P.VSLeemRealseePlugin,P.VSLeemBimseePlugin,P.VSLeemShared))})(this,(function(P,e,te,be,z){"use strict";const X={locked:!0,distance:0,showDistance:!0},W={enableMatchPoint:!0,maxMatchDistance:5e3},ie={appSetting:z.APP_SETTING,dualseeSetting:W,dualseeLock:X,dualseeLockVisible:!1,referRealseeVisible:!1,referBimseeVisible:!1},{cloneDeep:Ie,deepMergeProps:me}=z.utils;function Be(l,S){const a=e.ref(Ie(X)),b=e.computed(()=>a.value);e.watch(()=>l,i,{immediate:!0,deep:!0});function s(){return b.value}function i(d){d&&me(a.value,d)}function B(d){i({distance:d}),S("distance-updated",d)}function w(d){i({locked:d}),S("locked-updated",d)}return{getProps:b,lockAction:{getState:s,setState:i,setDistance:B,setLocked:w}}}const we="data:image/png;base64,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",Ce="data:image/png;base64,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",Ee={class:"vsleem-dualsee-lock"},ye=["src"],Qe=["src"],Se={key:0,class:"dualsee-lock-distance"},ke=e.defineComponent({__name:"Lock",props:{locked:{type:Boolean},distance:{},showDistance:{type:Boolean},enableMatchPoint:{type:Boolean},maxMatchDistance:{}},emits:["locked-updated","distance-updated"],setup(l,{expose:S,emit:a}){const b=l,s=a,{getProps:i,lockAction:B}=Be(b,s),w=e.computed(()=>{var g;return Math.floor((((g=e.unref(i))==null?void 0:g.distance)||0)/1e3*10)/10}),C=e.computed(()=>{const{locked:g=!1,distance:I=0}=e.unref(i);return R(g,I)});function d(){const{locked:g=!1}=e.unref(i);B.setLocked(!g)}function R(g,I){if(g){const c=(b.maxMatchDistance??5e3)/5;let k;return I<=c?k="#54b168":I<=c*2?k="#CBDE3C":I<=c*3?k="#DEC53C":I<=c*4?k="#DE5B3C":I<=c*5?k="#FA1212":k="#666",{backgroundColor:k,color:"#fff"}}return{color:"#333"}}return S({...B}),(g,I)=>(e.openBlock(),e.createElementBlock("div",Ee,[e.renderSlot(g.$slots,"button",e.normalizeProps(e.guardReactiveProps(e.unref(i))),()=>[e.createElementVNode("div",{class:"dualsee-lock-button",style:e.normalizeStyle(C.value),onClick:d},[e.unref(i).locked?(e.openBlock(),e.createElementBlock("img",{key:0,class:"dualsee-lock-icon",src:e.unref(we)},null,8,ye)):(e.openBlock(),e.createElementBlock("img",{key:1,class:"dualsee-lock-icon",src:e.unref(Ce)},null,8,Qe))],4),e.renderSlot(g.$slots,"distance",e.normalizeProps(e.guardReactiveProps(e.unref(i))),()=>[g.showDistance?(e.openBlock(),e.createElementBlock("div",Se,[e.createElementVNode("span",null,"相距 "+e.toDisplayString(w.value)+" m",1)])):e.createCommentVNode("",!0)],!0)],!0)]))}}),ne=(l,S)=>{const a=l.__vccOpts||l;for(const[b,s]of S)a[b]=s;return a},Re=ne(ke,[["__scopeId","data-v-a0aed78b"]]),{cloneDeep:Pe,deepMergeProps:he}=z.utils;function Me(l,S,a,b,s){const i=e.ref(Pe(ie)),B=e.computed(()=>i.value);e.watch(()=>l,C,{immediate:!0,deep:!0});function w(){return B.value}function C(c){c&&he(i.value,c)}function d(){return S.value}function R(){return a.value}function g(){return b.value}function I(){return s.value}return{getProps:B,getState:w,setState:C,getDualseeLock:d,getBasicRealsee:R,getReferRealsee:g,getReferBimsee:I}}var se=(l=>(l[l.DualseeNoBIMModel=12e3]="DualseeNoBIMModel",l))(se||{});const{deepMerge:De}=z.utils;function Ue(l,S,a){const{getState:b,getDualseeLock:s,getBasicRealsee:i,getReferRealsee:B,getReferBimsee:w,setState:C}=S,d=e.computed(()=>l.value);function R(m){var D,n,U,o;const{enableMatchPoint:E}=((D=l.value)==null?void 0:D.dualseeSetting)||{};if(E){const Q=(n=B())==null?void 0:n.getStore(),V=(U=Q==null?void 0:Q.findClosestPoint)==null?void 0:U.call(Q,m);V&&((o=Q==null?void 0:Q.selectPoint)==null||o.call(Q,V),a("find-refer-closest-point",V))}}function g(){var E;const m=i();if(m){const{searchInfo:D,...n}=m.getOptions(),{searchInfo:U,...o}=((E=l.value)==null?void 0:E.referRealsee)||{},Q=U??D,V={...De(n,o),searchInfo:Q},h=m==null?void 0:m.getPlaybar();h==null||h.pause(),h==null||h.setState({showPlay:!1,showSpeed:!1}),C({referRealsee:V,dualseeLockVisible:!0,referRealseeVisible:!0,referBimseeVisible:!1})}}function I(){var E;const m=(E=i())==null?void 0:E.getPlaybar();m&&(m.pause(),m.setState({showPlay:!0,showSpeed:!0})),C({dualseeLockVisible:!1,referRealseeVisible:!1,referBimseeVisible:!1})}function c(){l.value.referRealseeVisible?I():g()}async function k(){var m,E,D;try{const n=i();if(!n)return;const{mappedCoordinateTree:U,currentModel:o}=n.getStore(),{referBimsee:Q}=l.value,{searchInfo:V,handleCheckedFn:h}=Q||{},{modelCsId:K}=V||{},x=K?U==null?void 0:U.findCsById(K):o==null?void 0:o.findClosestModel(z.CoordinateModelType.BIMModel);if(!x)throw new z.AppError(se.DualseeNoBIMModel,`未找到ID为${K}的BIM模型坐标系`);if(!(await(h==null?void 0:h(x))??!0))return;const N=n.getPlaybar();N==null||N.pause(),N==null||N.setState({showPlay:!1,showSpeed:!1});const T={...Q,searchInfo:{projectId:x.projectId||0,modelCsId:x.id}};C({referBimsee:T,dualseeLockVisible:!0,referBimseeVisible:!0,referRealseeVisible:!1})}catch(n){console.error("显示BIMSEE参考模型失败:",n),(D=(E=(m=l.value)==null?void 0:m.referBimsee)==null?void 0:E.fetchError)==null||D.call(E,n)}}function F(){var E;const m=(E=i())==null?void 0:E.getPlaybar();m&&(m.pause(),m.setState({showPlay:!0,showSpeed:!0})),C({dualseeLockVisible:!1,referRealseeVisible:!1,referBimseeVisible:!1})}function J(){l.value.referBimseeVisible?F():k()}return{getBindValue:d,dualseeAction:{getState:b,setState:C,getDualseeLock:s,getBasicRealsee:i,getReferRealsee:B,getReferBimsee:w,toggleReferRealsee:c,showReferRealsee:g,hideReferRealsee:I,toggleReferBimsee:J,showReferBimsee:k,hideReferBimsee:F,setReferClosestPoint:R}}}function Ve(l,S,a){const b=e.computed(()=>{const{dualseeLock:w,dualseeSetting:C}=l.value,{maxMatchDistance:d,enableMatchPoint:R}=C||{};return{...w,maxMatchDistance:d,enableMatchPoint:R}});function s(w){a("lock-locked-updated",w)}function i(w){a("lock-distance-updated",w)}return{getLockProps:b,lockEvents:{lockedUpdated:s,distanceUpdated:i}}}function Ne(l,S,a){const{getDualseeLock:b,getBasicRealsee:s,getReferRealsee:i,setReferClosestPoint:B}=S||{},w=e.computed(()=>{const{appSetting:r,basicRealsee:p}=l.value;return{...p,appSetting:r}});function C(){a("basic-ready")}function d(r){a("basic-change-model",r)}function R(r){a("basic-change-record",r)}function g(r){ae(),a("basic-change-point",r)}function I(){a("basic-map-ready")}function c(){a("basic-map-resize")}function k(r){a("basic-map-collapse",r)}function F(){a("basic-map-dragger")}function J(r){a("basic-map-select-point",r)}function Y(r){a("basic-map-angle-updated",r)}function m(){a("basic-viewer-ready")}function E(r){a("basic-viewer-click",r)}function D(r){re(),a("basic-viewer-mousedown",r)}function n(r){oe(r),a("basic-viewer-zoom-updated",r)}function U(r,p){le(r,p),a("basic-viewer-position-updated",r)}function o(r){a("basic-viewer-panorama-loaded",r)}function Q(r){a("basic-viewer-select-point",r)}function V(r){a("basic-viewer-select-marker",r)}function h(){a("basic-playbar-ready")}function K(r){a("basic-playbar-backward",r)}function x(r){a("basic-playbar-pause",r)}function j(r){a("basic-playbar-play",r)}function N(r){a("basic-playbar-forward",r)}function T(r){a("basic-playbar-slider",r)}function v(r){a("basic-playbar-select-point",r)}function $(r){a("basic-playbar-speed-updated",r)}function _(r){a("basic-playbar-delay-updated",r)}function ee(r){a("basic-playbar-step-updated",r)}function ae(){var p;const{currentPoint:r}=((p=s())==null?void 0:p.getStore())||{};r&&(B==null||B(r))}function re(r){var p,y,u,A,f,M;(u=(y=(p=s==null?void 0:s())==null?void 0:p.getViewer)==null?void 0:y.call(p))==null||u.setMousedown(!0),(M=(f=(A=i==null?void 0:i())==null?void 0:A.getViewer)==null?void 0:f.call(A))==null||M.setMousedown(!1)}function oe(r){var y,u,A;const p=i==null?void 0:i();if(p){const f=(y=p==null?void 0:p.getViewer)==null?void 0:y.call(p),M=f==null?void 0:f.isMouseover(),L=(A=(u=b())==null?void 0:u.getState())==null?void 0:A.locked;!M&&L&&(f==null||f.zoom(r.zoomLevel))}}function le(r,p){var A,f,M,L;if(!((f=(A=b())==null?void 0:A.getState())==null?void 0:f.locked))return;const u=i==null?void 0:i();if(u){const G=u==null?void 0:u.getViewer(),q=(L=(M=s())==null?void 0:M.getViewer())==null?void 0:L.isMousedown();if(G&&q){const H=G.getPosition(),O=H.yaw+p.yaw,Z=H.pitch+p.pitch;G.rotate({yaw:O,pitch:Z})}}}return{getBasicProps:w,basicEvents:{ready:C,changeModel:d,changeRecord:R,changePoint:g,mapReady:I,mapResize:c,mapCollapse:k,mapDragger:F,mapSelectPoint:J,mapAngleUpdated:Y,viewerReady:m,viewerClick:E,viewerMousedown:D,viewerZoomUpdated:n,viewerPositionUpdated:U,viewerPanoramaLoaded:o,viewerSelectPoint:Q,viewerSelectMarker:V,playbarReady:h,playbarBackward:K,playbarPause:x,playbarPlay:j,playbarForward:N,playbarSlider:T,playbarSelectPoint:v,playbarSpeedUpdated:$,playbarDelayUpdated:_,playbarStepUpdated:ee}}}function Le(l,S,a){const{getDualseeLock:b,getBasicRealsee:s,getReferRealsee:i}=S||{},B=e.computed(()=>{const{appSetting:t,referRealsee:r}=l.value;return{...r,appSetting:t}});function w(){a("refer-ready")}function C(t){a("refer-change-model",t)}function d(t){a("refer-change-record",t)}function R(t){a("refer-change-point",t)}function g(){a("refer-map-ready")}function I(){a("refer-map-resize")}function c(t){a("refer-map-collapse",t)}function k(){a("refer-map-dragger")}function F(t){a("refer-map-select-point",t)}function J(t){a("refer-map-angle-updated",t)}function Y(){a("refer-viewer-ready")}function m(t){a("refer-viewer-click",t)}function E(t){ee(),a("refer-viewer-mousedown",t)}function D(t){ae(t),a("refer-viewer-zoom-updated",t)}function n(t,r){re(t,r),a("refer-viewer-position-updated",t)}function U(t){oe(),a("basic-viewer-panorama-loaded",t)}function o(t){a("refer-viewer-select-point",t)}function Q(t){a("refer-viewer-select-marker",t)}function V(){a("refer-playbar-ready")}function h(t){a("refer-playbar-backward",t)}function K(t){a("refer-playbar-pause",t)}function x(t){a("refer-playbar-play",t)}function j(t){a("refer-playbar-forward",t)}function N(t){a("refer-playbar-slider",t)}function T(t){a("refer-playbar-select-point",t)}function v(t){a("refer-playbar-speed-updated",t)}function $(t){a("refer-playbar-delay-updated",t)}function _(t){a("refer-playbar-step-updated",t)}function ee(t){var r,p,y,u,A,f;(y=(p=(r=s==null?void 0:s())==null?void 0:r.getViewer)==null?void 0:p.call(r))==null||y.setMousedown(!1),(f=(A=(u=i==null?void 0:i())==null?void 0:u.getViewer)==null?void 0:A.call(u))==null||f.setMousedown(!0)}function ae(t){var p,y,u;const r=s==null?void 0:s();if(r){const A=(p=r==null?void 0:r.getViewer)==null?void 0:p.call(r),f=A==null?void 0:A.isMouseover(),M=(u=(y=b())==null?void 0:y.getState())==null?void 0:u.locked;!f&&M&&(A==null||A.zoom(t.zoomLevel))}}function re(t,r){var u,A,f,M;if(!((A=(u=b())==null?void 0:u.getState())==null?void 0:A.locked))return;const y=s==null?void 0:s();if(y){const L=y==null?void 0:y.getViewer(),G=(M=(f=i())==null?void 0:f.getViewer())==null?void 0:M.isMousedown();if(L&&G){const q=L.getPosition(),H=q.yaw+r.yaw,O=q.pitch+r.pitch;L.rotate({yaw:H,pitch:O})}}}function oe(){var O,Z,de,pe,fe,Ae,ge,ue;const t=s(),r=i();if(!t||!r)return;const p=(O=r.getStore())==null?void 0:O.currentPoint;if(!p)return;const y=(de=(Z=t.getStore())==null?void 0:Z.currentPoint)==null?void 0:de.position,u=(fe=(pe=t.getStore())==null?void 0:pe.normalizeToModelSpace(p))==null?void 0:fe.position;if(!y||!u)return;const A=z.Point.distXY(y,u),f=b();f==null||f.setDistance(A);const{enableMatchPoint:M=!1,maxMatchDistance:L=5e3}=l.value.dualseeSetting||{};if(!M||A>L){f==null||f.setState({locked:!1,distance:A});return}const{yaw:G=0,pitch:q=0}=((Ae=t.getViewer())==null?void 0:Ae.getPosition())||{},H={yaw:(Number(y.yaw)||0)-(Number(u.yaw)||0)+G,pitch:q};(ge=r.getViewer())==null||ge.rotate(H),(ue=r.getMap())==null||ue.setRadarYaw(H.yaw),f==null||f.setState({locked:!0,distance:A})}return{getReferProps:B,referEvents:{ready:w,changeModel:C,changeRecord:d,changePoint:R,mapReady:g,mapResize:I,mapCollapse:c,mapDragger:k,mapSelectPoint:F,mapAngleUpdated:J,viewerReady:Y,viewerClick:m,viewerMousedown:E,viewerZoomUpdated:D,viewerPositionUpdated:n,viewerPanoramaLoaded:U,viewerSelectPoint:o,viewerSelectMarker:Q,playbarReady:V,playbarBackward:h,playbarPause:K,playbarPlay:x,playbarForward:j,playbarSlider:N,playbarSelectPoint:T,playbarSpeedUpdated:v,playbarDelayUpdated:$,playbarStepUpdated:_}}}function ze(l,S,a){const b=e.computed(()=>{const{appSetting:c,referBimsee:k}=l.value;return{...k,appSetting:c}});function s(){a("bimsee-ready")}function i(c){a("bimsee-change-model",c)}function B(c){a("bimsee-viewer-ready",c)}function w(c){a("bimsee-viewer-click",c)}function C(c){a("bimsee-viewer-mousedown",c)}function d(c){a("bimsee-viewer-zoom-updated",c)}function R(c){a("bimsee-viewer-position-updated",c)}function g(c){a("bimsee-viewer-point-updated",c)}return{getBimseeProps:b,bimseeEvents:{ready:s,changeModel:i,viewerReady:B,viewerClick:w,viewerMousedown:C,viewerZoomUpdated:d,viewerPositionUpdated:R,viewerPointUpdated:g}}}const Fe={class:"vsleem-dualsee"},ce=ne(e.defineComponent({name:"Dualsee",__name:"Dualsee",props:{appSetting:{default:()=>z.APP_SETTING},dualseeSetting:{default:()=>W},dualseeLock:{default:()=>X},basicRealsee:{},referRealsee:{},referBimsee:{},dualseeLockVisible:{type:Boolean},referRealseeVisible:{type:Boolean},referBimseeVisible:{type:Boolean}},emits:["find-refer-closest-point","basic-ready","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-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-change-model","bimsee-viewer-ready","bimsee-viewer-click","bimsee-viewer-mousedown","bimsee-viewer-zoom-updated","bimsee-viewer-position-updated","bimsee-viewer-point-updated"],setup(l,{expose:S,emit:a}){const b=l,s=a,i=e.ref(),B=e.ref(),w=e.ref(),C=e.ref(),{getProps:d,...R}=Me(b,i,B,w,C),{getBindValue:g,dualseeAction:I}=Ue(d,R,s),{getLockProps:c,lockEvents:k}=Ve(d,I,s),{getBasicProps:F,basicEvents:J}=Ne(d,I,s),{getReferProps:Y,referEvents:m}=Le(d,I,s),{getBimseeProps:E,bimseeEvents:D}=ze(d,I,s);return S({...I}),(n,U)=>(e.openBlock(),e.createElementBlock("div",Fe,[e.unref(d).dualseeLockVisible?(e.openBlock(),e.createBlock(Re,e.mergeProps({key:0,ref_key:"dualseeLockElRef",ref:i},e.unref(c),e.toHandlers(e.unref(k))),{button:e.withCtx(o=>[e.renderSlot(n.$slots,"lockButton",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),distance:e.withCtx(o=>[e.renderSlot(n.$slots,"lockDistance",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),_:3},16)):e.createCommentVNode("",!0),e.createVNode(e.unref(te.RealseePlugin),e.mergeProps({ref_key:"basicRealseeElRef",ref:B},e.unref(F),e.toHandlers(e.unref(J))),{default:e.withCtx(o=>[e.renderSlot(n.$slots,"basicDefault",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),mapDefault:e.withCtx(o=>[e.renderSlot(n.$slots,"basicMapDefault",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),mapExtra:e.withCtx(o=>[e.renderSlot(n.$slots,"basicMapExtra",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),mapLeft:e.withCtx(o=>[e.renderSlot(n.$slots,"basicMapLeft",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),mapRight:e.withCtx(o=>[e.renderSlot(n.$slots,"basicMapRight",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),playbarDefault:e.withCtx(o=>[e.renderSlot(n.$slots,"basicPlaybarDefault",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),playbarBox:e.withCtx(o=>[e.renderSlot(n.$slots,"basicPlaybarBox",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),playbarButton:e.withCtx(o=>[e.renderSlot(n.$slots,"basicPlaybarButton",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),playbarCaption:e.withCtx(o=>[e.renderSlot(n.$slots,"basicPlaybarCaption",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),playbarSlider:e.withCtx(o=>[e.renderSlot(n.$slots,"basicPlaybarSlider",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),_:3},16),e.unref(d).referRealseeVisible?(e.openBlock(),e.createBlock(e.unref(te.RealseePlugin),e.mergeProps({key:1,ref_key:"referRealseeElRef",ref:w},e.unref(Y),e.toHandlers(e.unref(m))),{default:e.withCtx(o=>[e.renderSlot(n.$slots,"referDefault",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),mapDefault:e.withCtx(o=>[e.renderSlot(n.$slots,"referMapDefault",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),mapExtra:e.withCtx(o=>[e.renderSlot(n.$slots,"referMapExtra",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),mapLeft:e.withCtx(o=>[e.renderSlot(n.$slots,"referMapLeft",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),mapRight:e.withCtx(o=>[e.renderSlot(n.$slots,"referMapRight",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),playbarDefault:e.withCtx(o=>[e.renderSlot(n.$slots,"referPlaybarDefault",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),playbarBox:e.withCtx(o=>[e.renderSlot(n.$slots,"referPlaybarBox",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),playbarButton:e.withCtx(o=>[e.renderSlot(n.$slots,"referPlaybarButton",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),playbarCaption:e.withCtx(o=>[e.renderSlot(n.$slots,"referPlaybarCaption",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),playbarSlider:e.withCtx(o=>[e.renderSlot(n.$slots,"referPlaybarSlider",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),_:3},16)):e.createCommentVNode("",!0),e.unref(d).referBimseeVisible?(e.openBlock(),e.createBlock(e.unref(be.BimseePlugin),e.mergeProps({key:2,ref_key:"referBimseeElRef",ref:C},e.unref(E),e.toHandlers(e.unref(D))),{default:e.withCtx(o=>[e.renderSlot(n.$slots,"bimseeDefault",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),_:3},16)):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"default",e.normalizeProps(e.guardReactiveProps(e.unref(g))),void 0,!0)]))}}),[["__scopeId","data-v-fae965e4"]]);P.DUALSEE_CONFIG=ie,P.DUALSEE_SETTING=W,P.DualseePlugin=ce,P.LOCK_CONFIG=X,P.default=ce,Object.defineProperties(P,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
1
+ (function(y,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):(y=typeof globalThis<"u"?globalThis:y||self,e(y.DualseePlugin={},y.Vue,y.VSLeemRealseePlugin,y.VSLeemBimseePlugin,y.VSLeemShared))})(this,(function(y,e,oe,le,F){"use strict";const j={locked:!0,distance:0,showDistance:!0},v={enableMatchPoint:!0,maxMatchDistance:5e3},te={appSetting:F.APP_SETTING,dualseeSetting:v,dualseeLock:j,dualseeLockVisible:!1,referRealseeVisible:!1,referBimseeVisible:!1},{cloneDeep:de,deepMergeProps:fe}=F.utils;function pe(l,b){const r=e.ref(de(j)),p=e.computed(()=>r.value);e.watch(()=>l,c,{immediate:!0,deep:!0});function d(){return p.value}function c(i){i&&fe(r.value,i)}function u(i){c({distance:i}),b("distance-updated",i)}function B(i){c({locked:i}),b("locked-updated",i)}return{getProps:p,lockAction:{getState:d,setState:c,setDistance:u,setLocked:B}}}const ge="data:image/png;base64,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",Ae="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAAAXNSR0IArs4c6QAACYVJREFUeF7tnQGS1DYTRs1JEk4CnAQ4SdiTQE4SOAm5CdnOjmuHzbJRf+6xutXPVan8f0UtS6/11pIte15tHBCAwC8JvIINBCDwawIIwuiAwAsEEIThAQEEYQxAQCPAFUTjRlQTAgjSJNF0UyOAIBo3opoQQJAmiaabGgEE0bgR1YQAgjRJNN3UCCCIxo2oJgQQpEmi6aZGAEE0bkQ1IYAgTRJNNzUCCKJxI6oJAQRpkmi6qRFAEI0bUU0IIEiTRNNNjQCCaNyIakIAQZokmm5qBBDEx+13X/G0pf9O27JkDUOQ5xNiIrzftu3t5T/v/06WvkPN2SX5eqnlz/v+7v/7UMUrBSPIYzZNgjf3//fTSgl29sWkMUm+bdv2xRm7ZHEEebhKfL4fEKtMn6IGqsly112UzoKYECbGitOnKEmsHhPlY9fpV1dB/mg+lVIEsqmnXVFaHd0E4apxbHjb1eTd5apyrKYi0Z0EMTn+Yq1xeGS2kqSLILbOMDk4Ygi0WZd0EIQrR4wUT2tpcSXpIIhdObhTdTtJXt+m6hy1ri4Ictx+nNkDRbsNvOSxsiCsO84bsnZna8ltKisLwtXjPEFsPbLkVGtVQT5cnpLfYohU3wl7qy01Ns1abv/WqoJ8D3reYTLsSbcNfCtMI3ZB9s2Z9u8IaZa8iqwoSNTVo8vWin1rf8Qu5uXWIisKYhsQTRL1aPMQ7AmgiOdFdoU1SZY5VhTkx4HsLJdgJ4uje9WWm2atJsjR6dVyUwSnIFbcJLE1nHosxXA1QY5Mr7qsOUYG/pE/NEs9OFxNEPXZR/ep1VNpjky1lmK5miDq7d2l/uqNXCIGyqgvlS21DllNEHWBvuRDrgEJXiqibtVBkIPgbxmuCmLbJKo/IY/memSxvgzPla4gRxK6EodIUdQp6zJ3slYaGEwJItV4qAtB4plOqxFB4tEjSDzTaTUiSDx6BIlnOq1GBIlHjyDxTKfViCDx6BEknum0GhEkHj2CxDOdViOCxKNHkHim02pEkHj0CBLPdFqNCBKPHkHimU6rEUHi0SNIPNNpNSJIPHoEiWc6rUYEiUePIPFMp9WIIPHoESSe6bQaESQevfqGJtvd43NxuEYEOYzwPxXYKwT2ZqHnw3L2c9LLfGGR7e4PL0ot+V3ZeF/61YggCNJv1Dt6jCAI4hgu/YoiCIL0G/WOHiMIgjiGS7+iCIIg/Ua9o8cIgiCO4dKvKIIgSL9R7+gxgiCIY7j0K4ogCNJv1Dt6jCAI4hgu/YoiCIL0G/WOHiMIgjiGS7+iCIIg/Ua9o8cIgiCO4dKvKIIgSL9R7+gxgiCIY7j0K4ogCNJv1Dt6jCAI4hgu/YoiCIL0G/WOHiMIgjiGS7+iCIIg/Ua9o8cIgiCO4dKvKIIgSL9R7+gxgiCIY7j0K4ogCNJv1Dt6jCAI4hgu/YoiCIL0G/WOHmcUxD6UbB+i9h5vtm374A26j7Fv894JcYTEE7BcfI2vVq8xkyD2FfFPeleIXISASWJfh0/xRyuLIOrvUCwyJujGMwRSfHU/gyDIgR+/ImBXko8z8cwWRP3Rm5nMOPe5BN7NXJfMFsQW1Z/P5c3ZihGwdem09chsQUwO5c5TsRzT3AME7K6WXUWmHLMFYf0xJe2lToogpdJFY88mgCBnE+d8pQggSKl00dizCSDI2cQ5XykCCFIqXTT2bAIIcjZxzleKAIII6TJotleHow4BdZc2ggg5nrr9QGgvIQ8PhJVdEwgijB4EEaBNDkEQIQHqk3QEEWBPDkEQIQEIIkArGoIgQuIQRIBWNARBhMQhiACtaAiCCIlDEAFa0RAEERKHIAK0oiEIIiQOQQRoRUMQREgcggjQioYgiJA4BBGgFQ1BECFxCCJAKxqCIELiEESAVjQEQYTEIYgArWgIggiJQxABWtEQBBEShyAP28B/u3zR3r40ub/nYtu8v10+5CygTReCIEJKOgtiLxDZ+xH/91MPJoztXq7+ghiCIMgwAe9gSfWTAMO9/Lmgt897NC9MCcArvw+ifrDbJLEvnaf6gRlH7hDEAWsv2nGKpfbZmKX4zQwhzxaCIAI4dbBUvYJE/IrW9N/MEPKMICK0boJ8v78rZYvzI0fVqwhXECHr3QT5ITB6GoIgARBHq6j68wcVp1jq4vy5XFbsP1eQUSuvynW6gkQKYnezbC1S6UAQIVsIIkC7PDisdrsXQYRcdxLEFue2SI84Xhd8so4gQuY7CWJ41P5eo+U2rzDQ1BAW6So5LS5iHVJx/cFzEG28yH9RK97F2REduYpM3Zck5ngPY4olAFQHS2VBbC1i/fY+MKy+qxdBEGSYgFeSqg8Hr4EgyPDweCzY8Qqy996zL+vTtm13At9MIQgiZANBxqAhyBin8FLcxQpHOlwhV5AxVFNvTCDIWJJuUQpBxqgiyBinn0pVvovFGsSXcATx8fq3NIII0CaHsEgXEsAifQwai/QxTuGlWIOEIx2ukDXIGCqmWGOcWIMInDKFMMUSssEUawwaU6wxTuGlmGKFIx2u0PMXteoO3msYnv5exzHFGh5SjwVXuItl+7HeX74X9RICe/+j+jYT6x+CCAO98xRLwFU6BEGE9CGIAK1oCIIIiUMQAVrREAQREocgArSiIQgiJA5BBGhFQxBESByCCNCKhiCIkDgEEaAVDUEQIXEIIkArGoIgQuIQRIBWNARBhMQhiACtaAiCCIlDEAFa0RAEERKHIAK0oiEIIiQOQQRoRUMQREgcggjQioYgiJA4BBGgFQ1BECFxqiDCqQgpSoAXpoomjmafQwBBzuHMWYoSQJCiiaPZ5xBAkHM4c5aiBBCkaOJo9jkEEOQczpylKAEEKZo4mn0OgdaCfB74LtQ5aeAsWQlM/V342V9W9HzAOWsCaddtCUz9quRsQezrgt9vy5faixN4fT/LsF/5nXLMFsQ6re7RmQKMk55KYPpHuzMIsn+j1mBwQGAnMF0Oa0gGQXYgJoot2t8yRtoSsKmU/WMf67a7V9OPTIJcwzBZOHoRmLbOeAlzVkF6DQ16m5YAgqRNDQ3LQABBMmSBNqQlgCBpU0PDMhBAkAxZoA1pCSBI2tTQsAwEECRDFmhDWgIIkjY1NCwDAQTJkAXakJYAgqRNDQ3LQABBMmSBNqQlgCBpU0PDMhBAkAxZoA1pCSBI2tTQsAwEECRDFmhDWgIIkjY1NCwDAQTJkAXakJYAgqRNDQ3LQABBMmSBNqQlgCBpU0PDMhBAkAxZoA1pCfwDd/M45xG2N8AAAAAASUVORK5CYII=",ue={class:"vsleem-dualsee-lock"},me=["src"],be=["src"],Be={key:0,class:"dualsee-lock-distance"},Ie=e.defineComponent({__name:"Lock",props:{locked:{type:Boolean},distance:{},showDistance:{type:Boolean},enableMatchPoint:{type:Boolean},maxMatchDistance:{}},emits:["locked-updated","distance-updated"],setup(l,{expose:b,emit:r}){const p=l,d=r,{getProps:c,lockAction:u}=pe(p,d),B=e.computed(()=>Math.floor((e.unref(c)?.distance||0)/1e3*10)/10),m=e.computed(()=>{const{locked:A=!1,distance:g=0}=e.unref(c);return k(A,g)});function i(){const{locked:A=!1}=e.unref(c);u.setLocked(!A)}function k(A,g){if(A){const I=(p.maxMatchDistance??5e3)/5;let R;return g<=I?R="#54b168":g<=I*2?R="#CBDE3C":g<=I*3?R="#DEC53C":g<=I*4?R="#DE5B3C":g<=I*5?R="#FA1212":R="#666",{backgroundColor:R,color:"#fff"}}return{color:"#333"}}return b({...u}),(A,g)=>(e.openBlock(),e.createElementBlock("div",ue,[e.renderSlot(A.$slots,"button",e.normalizeProps(e.guardReactiveProps(e.unref(c))),()=>[e.createElementVNode("div",{class:"dualsee-lock-button",style:e.normalizeStyle(m.value),onClick:i},[e.unref(c).locked?(e.openBlock(),e.createElementBlock("img",{key:0,class:"dualsee-lock-icon",src:e.unref(ge)},null,8,me)):(e.openBlock(),e.createElementBlock("img",{key:1,class:"dualsee-lock-icon",src:e.unref(Ae)},null,8,be))],4),e.renderSlot(A.$slots,"distance",e.normalizeProps(e.guardReactiveProps(e.unref(c))),()=>[e.unref(c).showDistance?(e.openBlock(),e.createElementBlock("div",Be,[e.createElementVNode("span",null,"相距 "+e.toDisplayString(B.value)+" m",1)])):e.createCommentVNode("",!0)],!0)],!0)]))}}),se=(l,b)=>{const r=l.__vccOpts||l;for(const[p,d]of b)r[p]=d;return r},we=se(Ie,[["__scopeId","data-v-9ce35999"]]),{cloneDeep:ke,deepMergeProps:Ce}=F.utils;function Re(l,b,r,p,d){const c=e.ref(ke(te)),u=e.computed(()=>c.value);e.watch(()=>l,m,{immediate:!0,deep:!0});function B(){return u.value}function m(I){I&&Ce(c.value,I)}function i(){return b.value}function k(){return r.value}function A(){return p.value}function g(){return d.value}return{getProps:u,getState:B,setState:m,getDualseeLock:i,getBasicRealsee:k,getReferRealsee:A,getReferBimsee:g}}var ne=(l=>(l[l.DualseeNoBIMModel=12e3]="DualseeNoBIMModel",l))(ne||{});const{deepMerge:Ee}=F.utils;function ye(l,b,r){const{getState:p,getDualseeLock:d,getBasicRealsee:c,getReferRealsee:u,getReferBimsee:B,setState:m}=b,i=e.computed(()=>l.value);function k(f){const{enableMatchPoint:n}=l.value?.dualseeSetting||{};if(n){const s=u()?.getStore(),w=s?.findClosestPoint?.(f);w&&(s?.selectPoint?.(w),r("find-refer-realsee-point",w))}}function A(f){const{point:n,coordinate:s}=f,w=B()?.getMasker();w&&n&&(w.setReferPoint(n,s),r("find-refer-bimsee-point",n))}function g(){const f=c();if(f){const{searchInfo:n,...s}=f.getOptions(),{searchInfo:w,...o}=l.value?.referRealsee||{},P=w??n,N={...Ee(s,o),searchInfo:P},Q=f?.getPlaybar();Q&&(Q.pause(),Q.setState({showPlay:!1,showSpeed:!1})),m({referRealsee:N,dualseeLockVisible:!0,referRealseeVisible:!0,referBimseeVisible:!1})}}function I(){const f=c()?.getPlaybar();f&&(f.pause(),f.setState({showPlay:!0,showSpeed:!0})),m({dualseeLockVisible:!1,referRealseeVisible:!1,referBimseeVisible:!1})}function R(){l.value.referRealseeVisible?I():g()}async function U(){try{const f=c();if(!f)return;const{mappedCoordinateTree:n,currentModel:s,currentPoint:w}=f.getStore(),{referBimsee:o}=l.value,{searchInfo:P,handleCheckedFn:N}=o||{},{modelCsId:Q}=P||{},L=Q?n?.findCsById(Q):s?.findClosestModel(F.CoordinateModelType.BIMModel);if(!L)throw new F.AppError(ne.DualseeNoBIMModel,`未找到ID为${Q}的BIM模型坐标系`);if(!(await N?.(L)??!0))return;const J=f.getPlaybar();J&&(J.pause(),J.setState({showPlay:!1,showSpeed:!1}));const{defaultYaw:O,defaultPitch:q,defaultZoomLvl:T}=f.getOptions().viewer||{},{point:H,coordinate:Y}=w||{};if(!H||!Y)return;const X={...o,masker:{defaultYaw:O,defaultPitch:q,defaultZoomLvl:T,referPoint:H,referCoordinate:Y},searchInfo:{projectId:L.projectId||0,modelCsId:L.id}};m({referBimsee:X,dualseeLockVisible:!0,referBimseeVisible:!0,referRealseeVisible:!1})}catch(f){console.error("显示BIMSEE参考模型失败:",f),l.value?.referBimsee?.fetchError?.(f)}}function V(){const f=c()?.getPlaybar();f&&(f.pause(),f.setState({showPlay:!0,showSpeed:!0})),m({dualseeLockVisible:!1,referRealseeVisible:!1,referBimseeVisible:!1})}function z(){l.value.referBimseeVisible?V():U()}return{getBindValue:i,dualseeAction:{getState:p,setState:m,getDualseeLock:d,getBasicRealsee:c,getReferRealsee:u,getReferBimsee:B,toggleReferRealsee:R,showReferRealsee:g,hideReferRealsee:I,toggleReferBimsee:z,showReferBimsee:U,hideReferBimsee:V,setReferRealseePoint:k,setReferBimseePoint:A}}}function Qe(l,b,r){const{getReferBimsee:p}=b,d=e.computed(()=>{const{dualseeLock:i,dualseeSetting:k}=l.value,{maxMatchDistance:A,enableMatchPoint:g}=k||{};return{...i,maxMatchDistance:A,enableMatchPoint:g}});function c(i){B(i),r("lock-locked-updated",i)}function u(i){r("lock-distance-updated",i)}function B(i){const k=p();if(k){const A=k?.getMasker?.();A&&A.setState({visible:i})}}return{getLockProps:d,lockEvents:{lockedUpdated:c,distanceUpdated:u}}}function Se(l,b,r){const{getDualseeLock:p,getBasicRealsee:d,getReferRealsee:c,getReferBimsee:u,setReferRealseePoint:B,setReferBimseePoint:m}=b||{},i=e.computed(()=>{const{appSetting:a,basicRealsee:C}=l.value;return{...C,appSetting:a}});function k(){r("basic-ready")}function A(a){r("basic-change-model",a)}function g(a){r("basic-change-record",a)}function I(a){ee(),r("basic-change-point",a)}function R(){r("basic-map-ready")}function U(){r("basic-map-resize")}function V(a){r("basic-map-collapse",a)}function z(){r("basic-map-dragger")}function x(a){r("basic-map-select-point",a)}function f(a){r("basic-map-angle-updated",a)}function n(){r("basic-viewer-ready")}function s(a){r("basic-viewer-click",a)}function w(a){re(),r("basic-viewer-mousedown",a)}function o(a){ce(a),r("basic-viewer-zoom-updated",a)}function P(a,C){t(a,C),r("basic-viewer-position-updated",a)}function N(a){r("basic-viewer-panorama-loaded",a)}function Q(a){r("basic-viewer-select-point",a)}function L(a){r("basic-viewer-select-marker",a)}function G(){r("basic-playbar-ready")}function J(a){r("basic-playbar-backward",a)}function O(a){r("basic-playbar-pause",a)}function q(a){r("basic-playbar-play",a)}function T(a){r("basic-playbar-forward",a)}function H(a){r("basic-playbar-slider",a)}function Y(a){r("basic-playbar-select-point",a)}function X(a){r("basic-playbar-speed-updated",a)}function $(a){r("basic-playbar-delay-updated",a)}function _(a){r("basic-playbar-step-updated",a)}function ee(){const{currentPoint:a}=d()?.getStore()||{};a&&(B?.(a),m?.(a))}function re(a){d?.()?.getViewer?.()?.setMousedown(!0),c?.()?.getViewer?.()?.setMousedown(!1),u?.()?.getMasker?.()?.setMousedown(!1)}function ce(a){if(!p()?.getState()?.locked)return;const M=c?.();if(M){const E=M?.getViewer?.(),S=E?.isMouseover();E&&!S&&E?.zoom(a.zoomLevel)}const D=u?.();if(D){const E=D?.getMasker(),S=E?.isMouseover();E&&!S&&E.zoom(a.zoomLevel)}}function t(a,C){if(!p()?.getState()?.locked)return;const D=c?.();if(D){const S=D?.getViewer(),K=d()?.getViewer()?.isMousedown();if(S&&K){const Z=S.getPosition(),ae=Z.yaw+C.yaw,W=Z.pitch+C.pitch;S.rotate({yaw:ae,pitch:W})}}const E=u?.();if(E){const S=E?.getMasker(),K=d()?.getViewer()?.isMousedown();S&&K&&S.rotate(a.position)}}return{getBasicProps:i,basicEvents:{ready:k,changeModel:A,changeRecord:g,changePoint:I,mapReady:R,mapResize:U,mapCollapse:V,mapDragger:z,mapSelectPoint:x,mapAngleUpdated:f,viewerReady:n,viewerClick:s,viewerMousedown:w,viewerZoomUpdated:o,viewerPositionUpdated:P,viewerPanoramaLoaded:N,viewerSelectPoint:Q,viewerSelectMarker:L,playbarReady:G,playbarBackward:J,playbarPause:O,playbarPlay:q,playbarForward:T,playbarSlider:H,playbarSelectPoint:Y,playbarSpeedUpdated:X,playbarDelayUpdated:$,playbarStepUpdated:_}}}function Pe(l,b,r){const{getDualseeLock:p,getBasicRealsee:d,getReferRealsee:c}=b||{},u=e.computed(()=>{const{appSetting:t,referRealsee:h}=l.value;return{...h,appSetting:t}});function B(){X(),r("refer-ready")}function m(t){r("refer-change-model",t)}function i(t){r("refer-change-record",t)}function k(t){r("refer-change-point",t)}function A(){r("refer-map-ready")}function g(){r("refer-map-resize")}function I(t){r("refer-map-collapse",t)}function R(){r("refer-map-dragger")}function U(t){r("refer-map-select-point",t)}function V(t){r("refer-map-angle-updated",t)}function z(){r("refer-viewer-ready")}function x(t){r("refer-viewer-click",t)}function f(t){$(),r("refer-viewer-mousedown",t)}function n(t){_(t),r("refer-viewer-zoom-updated",t)}function s(t,h){ee(t,h),r("refer-viewer-position-updated",t)}function w(t){re(),r("basic-viewer-panorama-loaded",t)}function o(t){r("refer-viewer-select-point",t)}function P(t){r("refer-viewer-select-marker",t)}function N(){r("refer-playbar-ready")}function Q(t){r("refer-playbar-backward",t)}function L(t){r("refer-playbar-pause",t)}function G(t){r("refer-playbar-play",t)}function J(t){r("refer-playbar-forward",t)}function O(t){r("refer-playbar-slider",t)}function q(t){r("refer-playbar-select-point",t)}function T(t){r("refer-playbar-speed-updated",t)}function H(t){r("refer-playbar-delay-updated",t)}function Y(t){r("refer-playbar-step-updated",t)}function X(){const t=p();t&&t.setState({showDistance:!0})}function $(t){d?.()?.getViewer?.()?.setMousedown(!1),c?.()?.getViewer?.()?.setMousedown(!0)}function _(t){if(!p()?.getState()?.locked)return;const a=d?.();if(a){const C=a?.getViewer(),M=C?.isMouseover();C&&!M&&C.zoom(t.zoomLevel)}}function ee(t,h){if(!p()?.getState()?.locked)return;const C=d?.();if(C){const M=C?.getViewer(),D=c()?.getViewer()?.isMousedown();if(M&&D){const E=M.getPosition(),S=E.yaw+h.yaw,K=E.pitch+h.pitch;M.rotate({yaw:S,pitch:K})}}}function re(){const t=d(),h=c();if(!t||!h)return;const a=h.getStore()?.currentPoint;if(!a)return;const C=t.getStore()?.currentPoint?.position,M=t.getStore()?.normalizeToModelSpace(a)?.position;if(!C||!M)return;const D=F.Point.distXY(C,M),E=p();E?.setDistance(D);const{enableMatchPoint:S=!1,maxMatchDistance:K=5e3}=l.value.dualseeSetting||{};if(!S||D>K){E?.setState({locked:!1,distance:D});return}const{yaw:Z=0,pitch:ae=0}=t.getViewer()?.getPosition()||{},W={yaw:(Number(C.yaw)||0)-(Number(M.yaw)||0)+Z,pitch:ae};h.getViewer()?.rotate(W),h.getMap()?.setRadarYaw(W.yaw),E?.setState({locked:!0,distance:D})}return{getReferProps:u,referEvents:{ready:B,changeModel:m,changeRecord:i,changePoint:k,mapReady:A,mapResize:g,mapCollapse:I,mapDragger:R,mapSelectPoint:U,mapAngleUpdated:V,viewerReady:z,viewerClick:x,viewerMousedown:f,viewerZoomUpdated:n,viewerPositionUpdated:s,viewerPanoramaLoaded:w,viewerSelectPoint:o,viewerSelectMarker:P,playbarReady:N,playbarBackward:Q,playbarPause:L,playbarPlay:G,playbarForward:J,playbarSlider:O,playbarSelectPoint:q,playbarSpeedUpdated:T,playbarDelayUpdated:H,playbarStepUpdated:Y}}}function he(l,b,r){const{getDualseeLock:p,getBasicRealsee:d,getReferBimsee:c}=b||{},u=e.computed(()=>{const{appSetting:n,referBimsee:s}=l.value;return{...s,appSetting:n}});function B(){U(),r("bimsee-ready")}function m(n){r("bimsee-change-model",n)}function i(n){r("bimsee-masker-ready",n)}function k(n){r("bimsee-masker-click",n)}function A(n){V(),r("bimsee-masker-mousedown",n)}function g(n){z(n),r("bimsee-masker-zoom-updated",n)}function I(n,s){x(n,s),r("bimsee-masker-position-updated",n)}function R(n){console.info("111111",n),r("bimsee-masker-point-loaded",n)}function U(){const n=p();n&&n.setState({showDistance:!1})}function V(n){d?.()?.getViewer?.()?.setMousedown(!1),c?.()?.getMasker?.()?.setMousedown(!0)}function z(n){if(!p()?.getState()?.locked)return;const w=d?.();if(w){const o=w?.getViewer?.(),P=o?.isMouseover();o&&!P&&o?.zoom(n.zoomLevel)}}function x(n,s){if(!p()?.getState()?.locked)return;const o=d?.();if(o){const P=o?.getViewer(),N=c()?.getMasker()?.isMousedown();if(P&&N){const Q=P.getPosition(),L=Q.yaw+s.yaw,G=Q.pitch+s.pitch;P.rotate({yaw:L,pitch:G})}}}return{getBimseeProps:u,bimseeEvents:{ready:B,changeModel:m,maskerReady:i,maskerClick:k,maskerMousedown:A,maskerZoomUpdated:g,maskerPositionUpdated:I,maskerPointLoaded:R}}}const Me={class:"vsleem-dualsee"},ie=se(e.defineComponent({name:"Dualsee",__name:"Dualsee",props:{appSetting:{default:()=>F.APP_SETTING},dualseeSetting:{default:()=>v},dualseeLock:{default:()=>j},basicRealsee:{},referRealsee:{},referBimsee:{},dualseeLockVisible:{type:Boolean},referRealseeVisible:{type:Boolean},referBimseeVisible:{type:Boolean}},emits:["find-refer-realsee-point","find-refer-bimsee-point","basic-ready","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-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-change-model","bimsee-masker-ready","bimsee-masker-click","bimsee-masker-mousedown","bimsee-masker-zoom-updated","bimsee-masker-position-updated","bimsee-masker-point-loaded"],setup(l,{expose:b,emit:r}){const p=l,d=r,c=e.ref(),u=e.ref(),B=e.ref(),m=e.ref(),{getProps:i,...k}=Re(p,c,u,B,m),{getBindValue:A,dualseeAction:g}=ye(i,k,d),{getLockProps:I,lockEvents:R}=Qe(i,g,d),{getBasicProps:U,basicEvents:V}=Se(i,g,d),{getReferProps:z,referEvents:x}=Pe(i,g,d),{getBimseeProps:f,bimseeEvents:n}=he(i,g,d);return b({...g}),(s,w)=>(e.openBlock(),e.createElementBlock("div",Me,[e.unref(i).dualseeLockVisible?(e.openBlock(),e.createBlock(we,e.mergeProps({key:0,ref_key:"dualseeLockElRef",ref:c},e.unref(I),e.toHandlers(e.unref(R))),{button:e.withCtx(o=>[e.renderSlot(s.$slots,"lockButton",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),distance:e.withCtx(o=>[e.renderSlot(s.$slots,"lockDistance",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),_:3},16)):e.createCommentVNode("",!0),e.createVNode(e.unref(oe.RealseePlugin),e.mergeProps({ref_key:"basicRealseeElRef",ref:u},e.unref(U),e.toHandlers(e.unref(V))),{default:e.withCtx(o=>[e.renderSlot(s.$slots,"basicDefault",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),mapDefault:e.withCtx(o=>[e.renderSlot(s.$slots,"basicMapDefault",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),mapExtra:e.withCtx(o=>[e.renderSlot(s.$slots,"basicMapExtra",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),mapLeft:e.withCtx(o=>[e.renderSlot(s.$slots,"basicMapLeft",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),mapRight:e.withCtx(o=>[e.renderSlot(s.$slots,"basicMapRight",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),playbarDefault:e.withCtx(o=>[e.renderSlot(s.$slots,"basicPlaybarDefault",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),playbarBox:e.withCtx(o=>[e.renderSlot(s.$slots,"basicPlaybarBox",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),playbarButton:e.withCtx(o=>[e.renderSlot(s.$slots,"basicPlaybarButton",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),playbarCaption:e.withCtx(o=>[e.renderSlot(s.$slots,"basicPlaybarCaption",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),playbarSlider:e.withCtx(o=>[e.renderSlot(s.$slots,"basicPlaybarSlider",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),_:3},16),e.unref(i).referRealseeVisible?(e.openBlock(),e.createBlock(e.unref(oe.RealseePlugin),e.mergeProps({key:1,ref_key:"referRealseeElRef",ref:B},e.unref(z),e.toHandlers(e.unref(x))),{default:e.withCtx(o=>[e.renderSlot(s.$slots,"referDefault",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),mapDefault:e.withCtx(o=>[e.renderSlot(s.$slots,"referMapDefault",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),mapExtra:e.withCtx(o=>[e.renderSlot(s.$slots,"referMapExtra",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),mapLeft:e.withCtx(o=>[e.renderSlot(s.$slots,"referMapLeft",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),mapRight:e.withCtx(o=>[e.renderSlot(s.$slots,"referMapRight",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),playbarDefault:e.withCtx(o=>[e.renderSlot(s.$slots,"referPlaybarDefault",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),playbarBox:e.withCtx(o=>[e.renderSlot(s.$slots,"referPlaybarBox",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),playbarButton:e.withCtx(o=>[e.renderSlot(s.$slots,"referPlaybarButton",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),playbarCaption:e.withCtx(o=>[e.renderSlot(s.$slots,"referPlaybarCaption",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),playbarSlider:e.withCtx(o=>[e.renderSlot(s.$slots,"referPlaybarSlider",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),_:3},16)):e.createCommentVNode("",!0),e.unref(i).referBimseeVisible?(e.openBlock(),e.createBlock(e.unref(le.BimseePlugin),e.mergeProps({key:2,ref_key:"referBimseeElRef",ref:m},e.unref(f),e.toHandlers(e.unref(n))),{default:e.withCtx(o=>[e.renderSlot(s.$slots,"bimseeDefault",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),masker:e.withCtx(o=>[e.renderSlot(s.$slots,"bimseeMasker",e.normalizeProps(e.guardReactiveProps(o)),void 0,!0)]),_:3},16)):e.createCommentVNode("",!0),e.renderSlot(s.$slots,"default",e.normalizeProps(e.guardReactiveProps(e.unref(A))),void 0,!0)]))}}),[["__scopeId","data-v-7fa0dee6"]]);y.DUALSEE_CONFIG=te,y.DUALSEE_SETTING=v,y.DualseePlugin=ie,y.LOCK_CONFIG=j,y.default=ie,Object.defineProperties(y,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
@@ -0,0 +1,27 @@
1
+ export declare const LOCK_CONFIG: {
2
+ locked: boolean;
3
+ distance: number;
4
+ showDistance: boolean;
5
+ };
6
+ export declare const DUALSEE_SETTING: {
7
+ enableMatchPoint: boolean;
8
+ maxMatchDistance: number;
9
+ };
10
+ export declare const DUALSEE_CONFIG: {
11
+ appSetting: {
12
+ baseUrl: string;
13
+ obsType: string;
14
+ };
15
+ dualseeSetting: {
16
+ enableMatchPoint: boolean;
17
+ maxMatchDistance: number;
18
+ };
19
+ dualseeLock: {
20
+ locked: boolean;
21
+ distance: number;
22
+ showDistance: boolean;
23
+ };
24
+ dualseeLockVisible: boolean;
25
+ referRealseeVisible: boolean;
26
+ referBimseeVisible: boolean;
27
+ };
@@ -0,0 +1,36 @@
1
+ import { AppSetting } from '@vsleem-realsee-viewer/shared';
2
+ import { TrackPoint, RealseeProps, RealseeElement } from '@vsleem-realsee-viewer/realsee-plugin';
3
+ import { BimseeProps, BimseeElement } from '@vsleem-realsee-viewer/bimsee-plugin';
4
+ import { LockProps, LockElement } from './lock';
5
+ export type DualseeSetting = {
6
+ enableMatchPoint?: boolean;
7
+ maxMatchDistance?: number;
8
+ };
9
+ export type UpdatableDualseeProps = Partial<DualseeProps>;
10
+ export type DualseeProps = {
11
+ appSetting?: AppSetting;
12
+ dualseeSetting?: DualseeSetting;
13
+ dualseeLock?: LockProps;
14
+ basicRealsee: RealseeProps;
15
+ referRealsee?: RealseeProps;
16
+ referBimsee?: BimseeProps;
17
+ dualseeLockVisible?: boolean;
18
+ referRealseeVisible?: boolean;
19
+ referBimseeVisible?: boolean;
20
+ };
21
+ export type DualseeElement = {
22
+ getState: () => UpdatableDualseeProps /** 获取当前配置选项 */;
23
+ setState: (options: Partial<UpdatableDualseeProps>) => void /** 设置配置选项 */;
24
+ getDualseeLock: () => LockElement | undefined /** 获取锁元素引用 */;
25
+ getBasicRealsee: () => RealseeElement | undefined /** 获取基础全景元素引用 */;
26
+ getReferRealsee: () => RealseeElement | undefined /** 获取对比全景元素引用 */;
27
+ getReferBimsee: () => BimseeElement | undefined /** 获取对比BIM元素引用 */;
28
+ toggleReferRealsee: () => void /** 切换对比全景显示状态 */;
29
+ showReferRealsee: () => void /** 显示对比全景 */;
30
+ hideReferRealsee: () => void /** 隐藏对比全景 */;
31
+ toggleReferBimsee: () => void /** 切换Bimsee面全景显示状态 */;
32
+ showReferBimsee: () => Promise<void> /** 显示Bimsee面全景 */;
33
+ hideReferBimsee: () => void /** 隐藏Bimsee面全景 */;
34
+ setReferRealseePoint: (current: TrackPoint) => void /** 设置对比视图的点 */;
35
+ setReferBimseePoint: (current: TrackPoint) => void /** 设置对比BIM的点 */;
36
+ };
@@ -0,0 +1,2 @@
1
+ export * from './dualsee';
2
+ export * from './lock';
@@ -0,0 +1,14 @@
1
+ export type LockProps = {
2
+ locked?: boolean;
3
+ distance?: number;
4
+ showDistance?: boolean;
5
+ readonly enableMatchPoint?: boolean;
6
+ readonly maxMatchDistance?: number;
7
+ };
8
+ export type UpdatableLockProps = Partial<LockProps>;
9
+ export type LockElement = {
10
+ getState: () => LockProps;
11
+ setState: (options: UpdatableLockProps) => void;
12
+ setDistance: (distance: number) => void;
13
+ setLocked: (locked: boolean) => void;
14
+ };
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vsleem-realsee-viewer/dualsee-plugin",
3
- "version": "2.0.4",
3
+ "version": "2.0.6",
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.4",
17
- "@vsleem-realsee-viewer/bimsee-plugin": "2.0.3",
18
- "@vsleem-realsee-viewer/shared": "2.0.4"
16
+ "@vsleem-realsee-viewer/realsee-plugin": "2.0.6",
17
+ "@vsleem-realsee-viewer/bimsee-plugin": "2.0.5",
18
+ "@vsleem-realsee-viewer/shared": "2.0.6"
19
19
  },
20
20
  "peerDependencies": {
21
21
  "vue": "^3.0.0",
22
- "@vsleem-realsee-viewer/realsee-plugin": "2.0.4",
23
- "@vsleem-realsee-viewer/bimsee-plugin": "2.0.3",
24
- "@vsleem-realsee-viewer/shared": "2.0.4"
22
+ "@vsleem-realsee-viewer/realsee-plugin": "2.0.6",
23
+ "@vsleem-realsee-viewer/bimsee-plugin": "2.0.5",
24
+ "@vsleem-realsee-viewer/shared": "2.0.6"
25
25
  },
26
26
  "peerDependenciesMeta": {
27
27
  "vue": {