!function(e){var t={};function o(i){if(t[i])return t[i].exports;var n=t[i]={i:i,l:!1,exports:{}};return e[i].call(n.exports,n,n.exports,o),n.l=!0,n.exports}o.m=e,o.c=t,o.d=function(e,t,i){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(e,t){if(1&t&&(e=o(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(o.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)o.d(i,n,function(t){return e[t]}.bind(null,n));return i},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="",o(o.s=307)}([function(e,t,o){"use strict";var i=o(118),n=window.publicObjectSet={automation:i.a,player:null,gui:null,guider:null,loaders:null,playGuider:null,recordGuider:null,tagManager:null,modelManager:null,displayController:null,container:null,camera:null,controls:null,sceneRenderer:null,tileDownloader:null,panoRenderer:null,qualityManager:null,director:null,miniMap:null,rebuild:!1};t.a=n},function(e,t,o){"use strict";o(90);var i=o(11),n=o.n(i),a=o(8);a.HorizontalBlurShader={uniforms:{tDiffuse:{type:"t",value:null},h:{type:"f",value:1/512}},vertexShader:["varying vec2 vUv;","void main() {","vUv = uv;","gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );","}"].join("\n"),fragmentShader:["uniform sampler2D tDiffuse;","uniform float h;","varying vec2 vUv;","void main() {","vec4 sum = vec4( 0.0 );","sum += texture2D( tDiffuse, vec2( vUv.x - 4.0 * h, vUv.y ) ) * 0.051;","sum += texture2D( tDiffuse, vec2( vUv.x - 3.0 * h, vUv.y ) ) * 0.0918;","sum += texture2D( tDiffuse, vec2( vUv.x - 2.0 * h, vUv.y ) ) * 0.12245;","sum += texture2D( tDiffuse, vec2( vUv.x - 1.0 * h, vUv.y ) ) * 0.1531;","sum += texture2D( tDiffuse, vec2( vUv.x, vUv.y ) ) * 0.1633;","sum += texture2D( tDiffuse, vec2( vUv.x + 1.0 * h, vUv.y ) ) * 0.1531;","sum += texture2D( tDiffuse, vec2( vUv.x + 2.0 * h, vUv.y ) ) * 0.12245;","sum += texture2D( tDiffuse, vec2( vUv.x + 3.0 * h, vUv.y ) ) * 0.0918;","sum += texture2D( tDiffuse, vec2( vUv.x + 4.0 * h, vUv.y ) ) * 0.051;","gl_FragColor = sum;","}"].join("\n")},a.VerticalBlurShader={uniforms:{tDiffuse:{type:"t",value:null},v:{type:"f",value:1/512}},vertexShader:["varying vec2 vUv;","void main() {","vUv = uv;","gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );","}"].join("\n"),fragmentShader:["uniform sampler2D tDiffuse;","uniform float v;","varying vec2 vUv;","void main() {","vec4 sum = vec4( 0.0 );","sum += texture2D( tDiffuse, vec2( vUv.x, vUv.y - 4.0 * v ) ) * 0.051;","sum += texture2D( tDiffuse, vec2( vUv.x, vUv.y - 3.0 * v ) ) * 0.0918;","sum += texture2D( tDiffuse, vec2( vUv.x, vUv.y - 2.0 * v ) ) * 0.12245;","sum += texture2D( tDiffuse, vec2( vUv.x, vUv.y - 1.0 * v ) ) * 0.1531;","sum += texture2D( tDiffuse, vec2( vUv.x, vUv.y ) ) * 0.1633;","sum += texture2D( tDiffuse, vec2( vUv.x, vUv.y + 1.0 * v ) ) * 0.1531;","sum += texture2D( tDiffuse, vec2( vUv.x, vUv.y + 2.0 * v ) ) * 0.12245;","sum += texture2D( tDiffuse, vec2( vUv.x, vUv.y + 3.0 * v ) ) * 0.0918;","sum += texture2D( tDiffuse, vec2( vUv.x, vUv.y + 4.0 * v ) ) * 0.051;","gl_FragColor = sum;","}"].join("\n")},a.ShaderPass=function(e,t){this.textureID=void 0!==t?t:"tDiffuse",e instanceof a.ShaderMaterial?(this.uniforms=e.uniforms,this.material=e):e&&(this.uniforms=a.UniformsUtils.clone(e.uniforms),this.material=new a.ShaderMaterial({defines:e.defines||{},uniforms:this.uniforms,vertexShader:e.vertexShader,fragmentShader:e.fragmentShader})),this.renderToScreen=!1,this.enabled=!0,this.needsSwap=!0,this.clear=!1,this.camera=new a.OrthographicCamera(-1,1,1,-1,0,1),this.scene=new a.Scene,this.quad=new a.Mesh(new a.PlaneBufferGeometry(2,2),null),this.scene.add(this.quad)},a.ShaderPass.prototype={render:function(e,t,o,i){this.uniforms[this.textureID]&&(this.uniforms[this.textureID].value=o),this.quad.material=this.material,this.renderToScreen?e.render(this.scene,this.camera):e.render(this.scene,this.camera,t,this.clear)}},a.CopyShader={uniforms:{tDiffuse:{type:"t",value:null},opacity:{type:"f",value:1}},vertexShader:["varying vec2 vUv;","void main() {","vUv = uv;","gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );","}"].join("\n"),fragmentShader:["uniform float opacity;","uniform sampler2D tDiffuse;","varying vec2 vUv;","void main() {","vec4 texel = texture2D( tDiffuse, vUv );","gl_FragColor = opacity * texel;","}"].join("\n")},a.EffectComposer=function(e,t){if(this.renderer=e,void 0===t){var o={minFilter:a.LinearFilter,magFilter:a.LinearFilter,format:a.RGBAFormat,stencilBuffer:!1},i=e.getSize();t=new a.WebGLRenderTarget(i.width,i.height,o)}this.renderTarget1=t,this.renderTarget2=t.clone(),this.writeBuffer=this.renderTarget1,this.readBuffer=this.renderTarget2,this.passes=[],void 0===a.CopyShader&&console.error("THREE.EffectComposer relies on THREE.CopyShader"),this.copyPass=new a.ShaderPass(a.CopyShader)},a.EffectComposer.prototype={swapBuffers:function(){var e=this.readBuffer;this.readBuffer=this.writeBuffer,this.writeBuffer=e},addPass:function(e){this.passes.push(e)},insertPass:function(e,t){this.passes.splice(t,0,e)},render:function(e){this.writeBuffer=this.renderTarget1,this.readBuffer=this.renderTarget2;var t,o,i=!1,n=this.passes.length;for(o=0;o Privacy -> Authorizations. Also ensure proper functioning of the recording equipment.","当前不支持录音":"Recording is not supported currently.","可在微信或电脑端录音":"Record on WeChat or a computer.","请填写":"Please fill out.","密码需要四位数字或字母":"The password requests 4 characters.","请退出后重新登录该场景的账户":"Please log out and log in with the matching account again.","若一直无法登录,请联系客服。":"If you have troubles to log in, please contact our customer service.","登录验证出错":"Login verification error","若一直无法登陆,请联系客服":"If you have troubles to log in, please contact our customer service.","您未登录该场景的账户":"You are not logged in to the right account. Please log out","图片文件过大":"The picture file is too large.","不能大于":"Cannot be larger than","兆":"MB","请输入4位数的密码":"Please enter a 4-digit password.","重新载入模型":"Reload the model","确定回退?":"Are you sure you want to reload the model?","将会重置为展示页的状态":"Reset and go back to the display page.","无法设置热点可视":"Unable to set hotspot visibility.","当前无热点,请先创建热点再设置":"Currently no hotspots set up. Please create one.","logo替换成功!":"Logo replaced successfully.","二维码":"QR code","复制失败,请直接点击链接以复制展示页面的地址栏":"Copy failed, please click and copy the link address directly.","请点击选择":"Please click to select.","不是浏览器支持的音频文件":"Audio file format not supported by this browser.","文件。 文件可能损坏,或者浏览器不支持,或者后缀与文件不匹配。建议在IE以外的浏览器上传":"The file may be damaged, not supported by your browser or the format does not match. Please use other browsers than IE.","预览":"Preview","录制时长限制为2分钟,已自动结束":"Recording duration is limited to 2 minutes. Recording has been stopped automatically.","是否重新录制?":"Do you want to rerecord?","已有语音讲解将会被替换":"Existing audio commentary will be replaced.","已录制配音将会被删除":"Recorded dubbing will be deleted.","是否删除":"Delete?","录制时长限制为2分钟,当前已达上限":"Recording duration is limited to 2 minutes. This limit has been reached.","开启录屏同步录音,已有音频将会被替换":"Turn on screen and voice recording. Existing audio will be replaced.","是否替换?":"Replace?","平滑过渡":"Smooth transition","原始过渡":"Standard transition","点击保存按钮保存当前镜头方向":"Click Save to save the current camera position.","镜头保存成功":"Shot saved successfully.","手机扫一扫分享":"Scan with your phone to share.","还可体验VR模式":"Experience VR mode","请上传":"Please upload ","热点保存":"Save hotspot","点击确定热点位置":"Click to choose the hotspot location.","未设置":"Not set","已设置":"Already set","确定删除":"Delete","点击一下即可上传":"Click to upload","还差一步":"Proceed","您当前上传的语音讲解将会被删除":"Your currently recorded audio commentary will be deleted.","删除语音讲解":"Delete audio commentary","Safari不支持录音":"Safari does not support recording.","可在其他浏览器中录音,或稍后上传讲解音频":"Record in other browsers or upload audio later speratly. ","此浏览器不支持录音":"This browser does not support recording.","建议更换其他主流浏览器,体验更佳":"Please use another mainstream browser for a better experience.","抱歉,录音保存失败":"Sorry, failed to save recording.","您当前录制的语音讲解将会被删除":"Your current audio commentary will be deleted.","失败":"Fail","成功":"successfully","登录完毕,重新保存":"Save again after login. ","您没有登录,请登录后再编辑":"Not logged in. Please log in before editing.","注释":"Comment","照片":"Photo","声音":"Audio","链接":"Link","此房间没有漫游点,无法进入":"No shooting point found in this room. It therby cannot be entered.","热点位置计算在房间或模型外,已矫正位置 。":"The calculated hotspot position was outside the room or model and is corrected.","超出字数限制":"Word limit exceeded","无法添加热点":"Unable to add hotspot","热点数目已达最大:":"Max. number of hotspots reached:","无法在此添加热点":"Unable to add hotspot here.","由于当前位置没有邻近位置,无法添加热点。请在别的位置添加":"Unable to add hotspot because nearby location missing. Please add it elsewhere.","是否删除?":"Delete?","场景?":"Scenes?","请先在上方点击":"Please click above.","获取贴图失败,可能网络状态不佳,请重新尝试":"Failed to get maps. Check your network connection and try again.","该点暂时无法设置":"Unable to set this point temporarily.","该点是相机协助点,正常情况不会走到该点。请走到其他点设置热点。":"This point is a camera assisting point. Please choose another one to set a hotspot.","点击下一步编辑热点内容":"Click Next to edit content of the hotspot.","请选择一个图像文件!":"Please select an image file.","裁剪地面标志":"Crop ground logo.","房间":"Room","请先走到一个房间才能设置":"Please walk into a room before setting.","当前房间无法进入":"Room inaccessible","确定计算地面高度":"Determine floor height","请将左右分屏中的线条都移动到相同位置,例如墙角边缘":"Move the lines in both screens to the edges of the room. ","地面高度校准完毕,请继续修改其他墙壁位置":"Floor height calibration completed. Continue to modify other wall positions.","房间相机点数为0":"No shooting points found in the room. ","柱宽度":"Width","柱厚度":"Depth","柱属性":"Parameters","厚度":"Depth","门宽度":"Width","门高度":"Height","窗宽度":"Width","窗高度":"Height","门属性":"Parameters","窗属性":"Parameters","高度":"Height","基础设置":"Basic Setting","场景信息":"Scene Info","初始画面":"Scene Cover","自动导览":"Tour Guide","地面Logo":"Spot Logo","修整模型":"Model Edit","已添加的热点":"Added hotspots","必填,限15字":"Mandatory, up to 30 characters.","填写标题":"Enter a title","暂停":"Pause","场景标题":"Please name your scene","限15字内":"Up to 30 characters","场景简介":"Scene Description","限200字内":"Up to 200 characters","四维看看 让空间讲故事":"4DKanKan Let space tell the story.","添加链接文本":"Add a description of the link","添加链接地址":"Add the link address","漫游":"Roaming","移动屏幕,点击保存您的初始画面。(注:视频采集点无法保存)":"Drag the screen, click and save your scene cover.(Video point cannot be set)","选择音乐":"Choose a BGM","无音乐":"Mute","测量工具":"Ruler","标志样式":"Logo style","将上下分屏热点对准同一个所标记目标":"Target the same spot on the split screens.","确定热点位置,点击下一步编辑内容":"Confirm hotspot location, click Next to edit.","选择样式":"Choose hotspot style","请输入您的标题":"Enter a title","内容简介":"Description","上一步":"Go back","仅支持腾讯、爱奇艺、优酷":"Only Tencent, iQiyi and Youku external links are supported.","点击开始录制导览":"Click Start to record the tour.","房间地面":"Ground","房间屋顶":"Roof","删除片段":"Delete the clip","请选择分类":"Please choose a category.","4位数字或字母":"4 digits or letters","编辑模式下无法使用测距功能,请在展示页面操作。":"Please use the measuring function on the page.","录屏成功":"Screen recorded successfully","当前位置已存在建筑部件。":"There is already a structure on the selected spot. ","当前位置无法添加建筑部件。":"The selected spot cannot add more structure elements.","暂无项目描述":"No content yet","宽度":"Width","完成录制":"Finish","文本热点。您可根据场景内容填写热点的标题、内容以及链接内容。":"Text hotspot. Fill in a title, description and link based on the content of the scene.","移动屏幕,点击保存选择您的初始画面":"Drag the screen, click and save your scene cover.","下一步":"Next","开始":"Start","删除此部件":"Delete","导览":"Tour Guide","限定15字以内":"Up to 30 characters","删除测量线":"Delete","音乐":"Music","外链":"External link","输入密码:":"Password","请输入观看密码":"Enter password","观看场景":"GO!","解锁成功!":"Unlocked","密码错误,请再输一次":"Incorrect password,try again.","密码错误":"Incorrect password","分享链接给好友":"Share the link","一键复制":"Copy the link","浏览器未能检测到转动":"Browser failed to detect rotation.","请在手机或浏览器设置中开启了运动和方向访问等设置,然后刷新此页面。":"Please turn on the access to the motion and orientation sensors in your phone or browser settings, then refresh this page.","为完整体验VR效果,请打开 “设置” > “Safari” > “隐私和安全” 下的 “运动和方向访问” 开关,然后刷新此页面。":"For a better VR experience, permit the Motion & Orientation Access under Settings> Safari> Privacy & Security and then refresh this page.","请点击“允许”":"Please click Allow","运动和方向访问失败":"Motion and direction access denied.","这会导致画面视角一直固定。您需要完全关闭当前应用,然后再次打开,并允许访问运动与方向。":"This will result in a fixed perspective. You need to close the current App and then restart. Please allow the access to motion and direction.","复制失败。请直接复制地址栏连接。":"Copy failed. Please copy the link address manually.","数据不正常":"Abnormal data","上传文件为空":"No file uploaded yet.","无权操作该场景":"You have no access to edit the scene.","修改":"Modify","微信":"WeChat","朋友圈":"Moments","辅助校准位置可能不准确,请检查并拖动到与上侧相同位置":"The auxiliary alignment position may not be accurate, please check and drag to the same position as the upper side.","原始模型下载":"Original model download","修改模型上传":"Modified model upload","模型下载/上传功能教程":"Model download/upload tutorial","1.下载场景模型的压缩包后,使用三维软件打开解压后文件“output.house.obj”,即可开展编辑;":"1.After downloading the ZIP package of the scene model, open the decompressed file”output.house.obj” to edit it.","2.编辑完成后,建议将模型贴图进行烘焙,烘焙贴图需控制在1.5M以内,同时,保存的obj文件需要控制在3M以内;":"2.After the edit is completed, it is recommended to render the model texture. The render texture should be controlled within 1.5M while the saved obj files should be controlled within 3M.","3.完成1、2步骤后,将obj,mtl,贴图打包为zip压缩包上传即可。":"3.After completing steps 1 and 2, package the obj, mtl, and texture into a zip package and upload it.","注:":"Notes:","1.请尽量控制文件大小,以免浏览的时候卡顿,影响体验。":"1.Please control the file size, in order not to freeze when you are browsing which will affect your experience.","2.请将obj及压缩包的名称保持一致,否则会替换失败。":"2.Please use the same name in both obj and ZIP package, otherwise the replacement will fail.","*上传模型失败,请参照右侧教程。":"Failed to upload model, please refer the tutorial on the right.","zip文件只能有一层目录或无目录":"There should be only one layer or no directory in zip files.","必须有且仅有一个obj和mtl文件":"There must be one and the only one obj and mtl file.","贴图需控制在1.5M以内,obj文件需要控制在3M以内。":"The texture should be controlled within 1.5M, obj file should be controlled within 3M.","上传下载":"Upload Download","上传中":"Uploading","等待上传...":"Wait...","上传出错":"Error","文件上传":"Upload File","添加文件":"Add","开始上传":"Start","已上传":"Uploaded"}};a||(a=window.navigator.language||window.navigator.userLanguage||null)&&!/^zh/.test(a)&&(console.log("自动获取浏览器语言:"+a),n.a.lang=a="en");var r={get:function(e){if(!a||"zh"===a||!g[a])return e;var t=g[a][e];return void 0===t?e:t},set:function(e){a=e}};"en"==a?$("i.icondkkr").removeClass("icondkkr").addClass("iconhengbiaoEN"):$("i.icondkkr").removeClass("icondkkr").addClass("iconhengbiaoCN"),$("body").find("[data-lang]").each((function(){var e=$(this);e.html(r.get(e.text()))})),$("body").find("[placeholder]").each((function(){var e=$(this),t=e.attr("placeholder");t&&e.attr("placeholder",r.get(t))}));t.a=r},function(e,t,o){"use strict";var i=function(){};i.info=function(e){console.log(e)},i.debug=function(e){console.debug(e)},i.error=function(e){console.error(e)},i.warn=function(e){console.warn(e)},i.time=function(e){console.time(e)},i.timeEnd=function(e){console.timeEnd(e)},i.message=function(e){alert(e)},t.a=i},function(e,t,o){"use strict";var i={PANORAMA:"panorama",DOLLHOUSE:"dollhouse",FLOORPLAN:"floorplan",TRANSITIONING:"transitioning",toInt:function(e){switch(e){case this.PANORAMA:return 1;case this.DOLLHOUSE:return 2;case this.FLOORPLAN:return 3;case this.TRANSITIONING:return-1}throw new Error("未知模式: "+c)},fromInt:function(e){switch(e){case"1":case 1:return this.PANORAMA;case"2":case 2:return this.DOLLHOUSE;case"3":case 3:return this.FLOORPLAN}throw new Error("未知模式: "+c)},convertWorkshopModeInt:function(e){switch(e){case"0":case 0:return this.PANORAMA;case"1":case 1:return this.FLOORPLAN;case"2":case 2:return this.DOLLHOUSE;case"3":case 3:return this.MESH}throw new ViewmodeConvertException("No known conversion for Workshop int to viewmode for int: "+e)}};t.a=i},function(e,t,o){"use strict";o(191);var i=o(7),n=o(3);Math.sign=function(e){return e<0?-1:1};var a={signedUrlDefaultExpireTime:24e4,signedUrlCheckInterval:1e4,signedUrlRefreshBuffer:15e3,dollhouseFOV:70,dollhouseNear:1,dollhouseFar:5e3,insideFOV:70,insideFOVMax:120,insideNear:.1,insideFar:5e3,insideLookSpeed:.12,insideLookLimitUp:40,insideLookLimitDown:-40,orthoNear:1,orthoFar:5e3,orthoBase:10,narrowLandscapeHeight:290,reallyNarrowLandscapeHeight:250,visionTilingStartDate:new Date("8/26/2016"),visionTilingStartVersion:"1.1.407.13667",windowHeightHighQualityThreshold:900,tourStepDelayDefault:3500,tourStepDelaySlideShow:5e3,workshopApsect:9/16,highQualityMaxZoom:2,ultraHighQualityMaxZoom:3,fish:{insideFOV:80,insideLookLimitUp:20,insideLookLimitDown:-20},MAX_SPOT_COUNT:30,LOADPIC:"thumbBigImg.jpg",LOADPIC_FISH:"thumbFishBigImg.jpg",THUMBPIC:"thumbSmallImg.jpg",Mobile_Login:"mobile.html#/login",SCENETYPE:[n.a.get("文博"),n.a.get("地产"),n.a.get("电商"),n.a.get("餐饮"),n.a.get("家居"),n.a.get("其他")],SCENETYPE2:[n.a.get("其他"),n.a.get("文博"),n.a.get("地产"),n.a.get("电商"),n.a.get("餐饮"),n.a.get("家居")],SCENETYPE_index:[[n.a.get("其他"),"icon_logo"],[n.a.get("文博"),"icon_wenbo"],[n.a.get("地产"),"icon_zhuye"],[n.a.get("电商"),"icon_dianshang"],[n.a.get("餐饮"),"icon_canyin"],[n.a.get("家居"),"icon_jiaju"]],FishCam_BackDist:4/11,FishCam_BackDist2:.2,skyRadius:.6,BGM_LIST:[{name:n.a.get("欢快"),ch:"欢快",file:"01.mp3"},{name:n.a.get("空灵"),ch:"空灵",file:"02.mp3"},{name:n.a.get("节奏"),ch:"节奏",file:"03.mp3"},{name:n.a.get("怀旧"),ch:"怀旧",file:"04.mp3"},{name:n.a.get("想念"),ch:"想念",file:"05.mp3"},{name:n.a.get("复古"),ch:"复古",file:"06.mp3"},{name:n.a.get("琴弦"),ch:"琴弦",file:"07.mp3"},{name:n.a.get("愉快"),ch:"愉快",file:"08.mp3"}],bigScenePrefix:"https://4dscene.4dage.com/",imgRoot:"images/",FloorLogoUser:"floorLogoImg.png",HotChinese:{note:n.a.get("注释"),photo:n.a.get("照片"),video:n.a.get("视频"),voice:n.a.get("声音"),link:n.a.get("链接")},styleRemarks:{note:n.a.get("文本热点。您可根据场景内容填写热点的标题、内容以及链接内容。"),photo:n.a.get("图片热点。您可添加图片以丰富的热点内容,图片过大将被系统压缩。"),video:n.a.get("视频热点。您可上传本地视频内容进行更多的展示。"),voice:n.a.get("音频热点。您可上传本地音频内容进行热点讲解。"),link:n.a.get("超链接热点。您可添加超链接视频,视频将在热点里播放。")},Circle:"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",PngdataPre:"data:image/png;base64,",TOURFile_prefix:"data/data**/tour/screenCap{index}.json",TOURimg_prefix:"images/images**/tour/guide",guideSoundFile:"201810-sound",guideMediaFile:"201810-media",setPrefix:function(e){a.prefix=2==e?"https://4dkk.4dage.com/":"https://scene3d.4dage.com/"}};i.a.urlHasValue("oldPrefix")?a.setPrefix():a.setPrefix(2),t.a=a},function(e,t,o){"use strict";o(72),o(166),o(39),o(63),o(86),o(192);var i=o(201),n=o.n(i);if(window.location.search.indexOf("vlog")>-1)new n.a;function a(e,t){var o=window.navigator.userAgent.match(e);return o=o?o[1].split(t):[],{major:parseInt(o[0])||0,minor:parseInt(o[1])||0,patch:parseInt(o[2])||0}}var g={isFullscreen:function(){return document.fullscreenElement||document.mozFullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement},supportsFullscreen:function(){return document.fullscreenEnabled||document.mozFullscreenEnabled||document.mozFullScreenEnabled||document.webkitFullscreenEnabled||document.msFullscreenEnabled},isPointerLocked:function(){return document.pointerLockElement||document.mozPointerLockElement||document.webkitPointerLockElement},requestFullscreen:function(e,t){e.requestFullscreen?e.requestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.webkitRequestFullscreen?e.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT):e.msRequestFullscreen&&e.msRequestFullscreen(),t&&$(document).on("fullscreenchange webkitfullscreenchange mozfullscreenchange MSFullscreenChange",g.requestPointerLock)},requestPointerLock:function(){var e;if(document.fullscreenElement)e=document.fullscreenElement();else if(document.mozFullscreenElement)e=document.mozFullscreenElement();else if(document.mozFullScreenElement)e=document.mozFullScreenElement();else{if(!document.webkitFullscreenElement)return;e=document.webkitFullscreenElement()}e.requestPointerLock=e.requestPointerLock||e.mozRequestPointerLock||e.webkitRequestPointerLock,e.requestPointerLock(),$(document).off("fullscreenchange webkitfullscreenchange mozfullscreenchange MSFullscreenChange",this)},exitPointerLock:function(){document.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock,document.exitPointerLock()},exitFullscreen:function(){document.exitFullscreen?document.exitFullscreen():document.msExitFullscreen?document.msExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.webkitExitFullscreen&&document.webkitExitFullscreen()},details:function(){var e=navigator.userAgent.match("(Firefox|Chrome|Safari)/([\\d]+)");return e?{name:e[1],version:parseInt(e[2]),platform:navigator.platform}:{}},is:function(e){return this.details()&&this.details().name===e},inIframe:function(){return window.parent!==window},aspectRatio:function(e){var t=(e=e||$("#player")).width()/e.height();return isFinite(t)?t:0},userAgent:function(){return window.navigator.userAgent},isMobile:function(){var e=navigator.userAgent||navigator.vendor||window.opera;return/(android|bb\d+|meego).+mobile|android|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od|ad)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(e)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(e.substr(0,4))},isLandscape:function(){return this.isMobile&&this.aspectRatio()>1},isSmallScreen:function(){return screen.width/window.devicePixelRatio<240},detectIE:function(){return-1!==window.navigator.userAgent.indexOf("MSIE ")||!!navigator.userAgent.match(/Trident.*rv\:11\./)},detectSafari:function(){return-1!==window.navigator.userAgent.indexOf("Safari")&&!this.detectOpera()&&!this.detectChrome()},detectFirefox:function(){return-1!==window.navigator.userAgent.indexOf("Firefox")},detectChrome:function(){return-1!==window.navigator.userAgent.indexOf("Chrome")&&!this.detectOpera()},detectOpera:function(){return-1!==window.navigator.userAgent.indexOf("OPR")},detectIOS:function(){return this.detectIPhone()||this.detectIPad()||this.detectIPod()},detectIPad:function(){var e=window.navigator.userAgent;return/iPad/.test(e)},detectIPod:function(){var e=window.navigator.userAgent;return/iPod/.test(e)},detectIPhone:function(){var e=window.navigator.userAgent;return/iPhone/.test(e)},detectAndroid:function(){return-1!==window.navigator.userAgent.indexOf("Android")},detectAndroidMobile:function(){var e=window.navigator.userAgent;return this.detectAndroid()&&-1!==e.indexOf("Mobile")},detectSamsungNative:function(){var e=window.navigator.userAgent;return-1!==e.indexOf("SM-G900H")||-1!==e.indexOf("GT-I9500")||-1!==e.indexOf("SM-N900")},detectSamsungS6:function(){return-1!==window.navigator.userAgent.indexOf("SM-G92")},detectHUAWEI5X:function(){return-1!==window.navigator.userAgent.indexOf("KIW-TL00H")},detectWebVR:function(){return!(!window.navigator.getVRDisplays||!window.VRDisplay)},getVRDisplay:function(){var e=$.Deferred();return this.detectWebVR()?(navigator.getVRDisplays().then((function(t){t.length>=1&&e.resolve(t[0]),e.reject(null)})),e):e.reject(null)},iosVersion:function(){if(!this.detectIOS())throw new DeviceMismatchException("Did not detect an iDevice");return a(/((?:\d+\_?){1,3}) like Mac OS/,"_")},androidVersion:function(){if(!this.detectAndroid())throw new DeviceMismatchException("Did not detect an Android based device");return a(/Android ((?:\d+\.?){1,3})/,".")},valueFromCookie:function(e,t){var o=new RegExp(e+"=([0-9a-f]+)(; ?|$)").exec(document.cookie);if(!o)return t;var i=o[1];return"boolean"==typeof t?"true"===i||"1"===i:"number"==typeof t?parseFloat(i):i},valueFromHash:function(e,t){var o=new RegExp("[#&?]"+e+"=([^#&?]*)").exec(window.location.href);if(!o)return t;var i=o[1];return"boolean"==typeof t?"true"===i||"1"===i:"number"==typeof t?parseFloat(i):window.decodeURIComponent(i)},getProjectNum:function(){var e=window.location.href.substring(window.location.href.indexOf("?")+1);-1!=(e=e.replace(/&/gi,"&")).indexOf("#")&&(e=e.substring(0,e.indexOf("#")));for(var t=e.split("&"),o=0;o-1){var n=o.substring(i+("&"+e+"=").length);return n.indexOf("&")>-1&&(n=n.substring(0,n.indexOf("&"))),n.indexOf("#")>-1&&(n=n.substring(0,n.indexOf("#"))),n}return!1}return window.location.href.substring(window.location.href.indexOf("?")+1).indexOf("&"+e)>-1},islongPhone:function(){var e=screen.height/screen.width;return this.isMobile()&&(e>1.99||e<.502512)},detectWeixin:function(){return"micromessenger"==window.navigator.userAgent.toLowerCase().match(/MicroMessenger/i)},detectEdge:function(){return window.navigator.userAgent.indexOf("Edge")>-1},getQueryValue:function(e){var t=window.location.search.substr(1);if(!t)return"";var o={};return t.split("&").forEach((function(e){var t=e.split("=");2==t.length&&(o[t[0]]=t[1])})),e?o[e]||"":o},isTabHidden:function(){var e=["webkit","moz","ms","o"];if("hidden"in document)return document.hidden;for(var t=0;t=t.duration&&!t.cycling){var o=t.easing(1,0,1,1);t.func(o,1e3*e),t.done&&t.done(),t.running=!1}else{var i=t.easing(t.current%t.duration/t.duration,0,1,1);(t.func(i,1e3*e)||!1)&&(t.done&&t.done(),t.running=!1)}}));var t=this.funcs.length;this.funcs=this.funcs.filter((function(e){return e.running}));var o=this.funcs.length;if(t>0&&0===o&&this.globalDone){var i=this.globalDone;this.globalDone=null,i()}},adjustSpeed:function(e,t){for(var o=this.getById(e),i=0;i>t/4).toString(16):([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e)},nth:function(e){return 1===(e%=10)?e+"st":2===e?e+"nd":3===e?e+"rd":e+"th"},extendObject:function(e,t){return Object.keys(t).forEach((function(o){e[o]=t[o]})),e},deepExtend:function e(t){t=t||{};for(var o=1;o1&&void 0!==arguments[1]&&arguments[1];if(!e||!e.value)return e;if(1==e.type){var t=e.value[e.value.length-1];return{pos:t.pos,mode:t.mode,type:t.type,eTime:t.eTime,startTime:e.value[0].eTime,transType:e.transType}}return 2==e.type?{pos:e.value.pos,mode:e.value.mode,type:e.value.type,eTime:e.value.eTime,startTime:e.value.startTime,speed:e.value.speed,transType:e.transType,transForHot:e.value.transForHot,catchTransForHotSid:e.value.catchTransForHotSid}:void 0},s.getWordsLength=function(e,t){for(var o=0,i="",n=0;n=0&&a<=128){if(t){if(o>t-.5)break;i+=e[n]}o+=.5}else{if(t){if(o>t-1)break;i+=e[n]}o+=1}}return{len:o,words:i}},t.default=s},function(e,t){e.exports=function(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}},function(e,t,o){"use strict";o(38);var i=o(16),n=(o(10),o(170)),a=o(0),g=o(41),r=o(4),A=(o(5),{tranString:function(e){return{pa:"panorama",panorama:"pa",doll:"dollhouse",dollhouse:"doll",fplan:"floorplan",floorplan:"fplan",newM:"flyToNewMode",fly:"flyToPano",pos:"position",qua:"quaternion"}[e]},toObject:function(e){var t=["x","y","z","w"],o={};return e.forEach((function(e,i){o[t[i]]=e})),o},convert:function(e){for(var t=0;t1&&void 0!==arguments[1]?arguments[1]:0,o=null;if(g.a.playData[e]&&1==g.a.playData[e].type)if(0==t||1==t)o=this.getCapItem(e,0);else{var i=g.a.frameData[e].length;o=this.getCapItem(e,i-1)}else g.a.playData[e]&&2==g.a.playData[e].type&&(o=this.getCapItem(e));return o},getCapItem:function(e,t){var o=null;if(void 0===t?0==g.a.playData.length?((o=g.a.capData[e].value).speed=g.a.capData[e].speed,o.transType=g.a.capData[e].transType):((o=g.a.playData[e].value).speed=g.a.playData[e].speed,o.transType=g.a.playData[e].transType):0==g.a.playData.length?g.a.frameData[e]&&(o=g.a.frameData[e][t]):o=g.a.playData[e].value[t],!o)return null;var i,n={};for(var a in o)if(o[a]instanceof Array){var r=this.tranString(a),A=this.toObject(o[a]);r?n[r]=A:n[a]="tags"==a?o[a]:A}else(i=this.tranString(o[a]))?n[a]=i:n[a]=o[a];return n},convertHighlight:function(e){var t={};return t.cameraMode=e.mode,t.floorVisibility=[],t.name=this.destinationItem,t.orthoZoom=-1,t.panoId=e.pano,t.position=new THREE.Vector3(e.position.x,e.position.y,e.position.z),t.quaternion=(new THREE.Quaternion).copy(e.quaternion),t},calcNodeTime:function(e){var t=!1,o=0,i=0,n=0;e.forEach((function(a,g){if(a.time={},!a.value)return a.time.sTime=0,a.time.eTime=0,void(a.time.diff=0);1==a.type?(a.time.sTime=a.value[0].eTime,a.time.eTime=a.value[a.value.length-1].eTime):(a.time.sTime=a.value.startTime,a.time.eTime=a.value.eTime),t&&(1==a.type?(n=1==e[g-1].type?e[g-1].value[e[g-1].value.length-1].eTime:e[g-1].value.eTime,o=e[g-1].time.eTime+(a.value[0].eTime-n),i=o+(a.value[a.value.length-1].eTime-a.value[0].eTime)):(n=1==e[g-1].type?e[g-1].value[e[g-1].value.length-1].eTime:e[g-1].value.eTime,o=e[g-1].time.eTime+(a.value.startTime-n),i=o+(a.value.eTime-a.value.startTime)),a.time.sTime=o,a.time.eTime=i),a.time.diff=a.time.eTime-a.time.sTime,2==a.type&&a.speed&&1!=a.speed&&(a.time.diff=a.time.diff/a.speed,a.time.eTime=a.time.sTime+a.time.diff,t=!0)}));var a=0;e.forEach((function(e,t){1==e.type?e.value[e.value.length-1].wTime?(e.time.sTime+=a,e.time.eTime=a+e.time.eTime+e.value[e.value.length-1].wTime,e.time.diff=e.time.eTime-e.time.sTime,a+=e.value[e.value.length-1].wTime):(e.time.sTime+=a,e.time.eTime+=a):e.value.wTime?(e.time.sTime+=a,e.time.eTime=a+e.time.eTime+e.value.wTime,e.time.diff=e.time.eTime-e.time.sTime,a+=e.value.wTime):(e.time.sTime+=a,e.time.eTime+=a)}))}});t.a=A},function(e,t,o){"use strict";o(72);var i=o(44),n=o.n(i),a=(o(63),o(0)),g=o(4),r=o(2),A=o(3),C={done:function(e,t,o){d.savingInfo[e]&&(d.savingInfo[e].done++,d.saveCallBack.check(e,t,o))},fail:function(e,t,o){d.savingInfo[e]&&(setTimeout((function(){a.a.gui.showWaiting(!1,e),a.a.gui.showInfo({result:!1,title:t?t+("en"==r.a.lang?" ":"")+A.a.get("失败"):A.a.get("保存失败")})}),600),o&&o(),delete d.savingInfo[e])},check:function(e,t,o){var i=d.savingInfo;if(i[e]){var n=d.count[e.split("@")[0]]||1;if(i[e].waitAjax&&i[e].done==n-1){if(i[e].waitAjax instanceof Function)var g=i[e].waitAjax();else g=i[e].waitAjax;I(g.url,g.data,g.dataDeal)}else i[e].done==n&&(a.a.gui.showWaiting(!1,e),a.a.gui.showInfo({result:!0,title:o?o+("en"==r.a.lang?" ":"")+A.a.get("成功"):A.a.get("保存成功")}),t&&t(),delete i[e])}}};function s(e,t,o,i,n){var r={url:e,name_t:t,group:{3001:function(){g.a.info("传递的参数为空"),C.fail(t,i,n)},3004:function(o,i){if(window.ifTest)return console.log("没有登录 测试 假设成功"),void r.group[0]();window.appLoginToken="",a.a.gui.showAskBox("",A.a.get("您没有登录,请于主页登录后再编辑"),{btns:[{text:A.a.get("去登录"),type:"submit",wait:!0,fuc:function(){window.open(isMobile?CONSTANT.Mobile_Login:"index.html","blank")}},{text:A.a.get("登录完毕,重新保存"),type:"cancel",fuc:function(){I(e,i,r)}}],donClose:!0}),a.a.gui.showWaiting(!1,t)},202:function(e,o){a.a.gui.showAskBox("",A.a.get("您没有登录,请登录后再编辑"),{btns:[{text:A.a.get("退出去登录"),type:"submit",wait:!0,fuc:function(){$("#back").click()}}],donClose:!0}),a.a.gui.showWaiting(!1,t)},5005:function(){g.a.info("场景为空"),i||n||a.a.gui.showAskBox("",A.a.get("场景为空"),{btns:[{text:A.a.get("确定"),type:"submit"}]}),C.fail(t,i,n)},5012:function(){g.a.info("数据不正常"),i||n||a.a.gui.showAskBox("",A.a.get("数据不正常"),{btns:[{text:A.a.get("确定"),type:"submit"}]}),C.fail(t,i,n)},5014:function(){g.a.info("无权操作该场景"),i||n||a.a.gui.showAskBox(A.a.get("无权操作该场景"),A.a.get("您未登录该场景的账户")+", "+A.a.get("请退出后重新登录该场景的账户"),{btns:[{text:A.a.get("确定"),type:"submit"}]}),C.fail(t,i,n)},"-1":function(){g.a.info("异常错误"),i||n||a.a.gui.showAskBox("",A.a.get("异常错误"),{btns:[{text:A.a.get("确定"),type:"submit"}]}),C.fail(t,i,n)},0:function(){C.done(t,o,i)}},error:function(){C.fail(t,i,n)},done:function(){C.done(t,o,i)},fail:function(){C.done(t,i,n)}};return r}function I(e,t,o){a.a.gui.showWaiting(!0,o.name_t);var i=new FormData;for(var n in t)i.append(n,t[n]);window.appLoginToken||(window.appLoginToken=localStorage.getItem("token")||""),$.ajax({type:"POST",url:e,headers:{token:window.appLoginToken},cache:!1,processData:!1,contentType:!1,data:i,success:function(e){c({dataDeal:o,oriData:t,data:e.code,msg:e.msg})},error:function(e,t,i){window.ifTest?o.group[0]():c({dataDeal:o,arguments:arguments,type:"error"})}})}var l=function(e,t){console.log("%c"+e+" 的返回值:"+t,"color:#36f")},c=function(e){var t,o=e.data,i=e.dataDeal;if("error"==e.type){l(i.url," error 出错了");var a=e.arguments;a&&g.a.info("错误信息:"+[a[0],a[1],a[2]].join(";")),t=i.error}else"object"==n()(o)?t=i.other:(o=(o+"").replace(/\n/g,""),l(i.url,o),t=i.group[o]||i.other||i.error);t&&(t instanceof Function?t(o,e.oriData,e.response):g.a.info("%c"+t,"color:#78f"))},d={savingInfo:{},count:{screen:5},saveCallBack:C,getDataDeal:s,saveFucforPC:function(e){d.savingInfo[e.name_t]={done:0};var t=s(e.url,e.name_t,e.f,e.dialog,e.fail);return e.data.sceneNum=r.a.projectNum,I(e.url,e.data,t),t},saveAjax:I,dealAjax:c};window.uploadsSaving=d,t.a=d},,function(e,t,o){"use strict";t.a={vector:function(e,t,o){var i=e.clone();return t=t.clone(),function(n){e.set(i.x*(1-n)+t.x*n,i.y*(1-n)+t.y*n,i.z*(1-n)+t.z*n),o&&o(e,n)}},quaternion:function(e,t,o){var i=e.clone();return function(n){e.copy(i).slerp(t,n),o&&o(e,n)}},property:function(e,t,o,i){var n=e[t];return function(a){e[t]=n*(1-a)+o*a,i&&i(e[t])}},uniform:function(e,t,o){var i=e.material.uniforms[t].value;return function(n){e.material.uniforms[t]&&(e.material.uniforms[t].value=i*(1-n)+o*n)}},matrix4:function(e,t,o){var i=e.clone();return function(n){for(var a=e.elements,g=i.elements,r=t.elements,A=0;A<16;A++)a[A]=g[A]*(1-n)+r[A]*n;o&&o(e)}},allUniforms:function(e,t,o){var i=e.map(function(e){return this.uniform(e,t,o)}.bind(this));return function(e){i.forEach((function(t){t(e)}))}}}},function(e,t,o){"use strict";o(52);function i(e,t,o){return!(Math.abs(e-t)<1e-6||Math.abs(t-o)<1e-6)&&(e<=t&&t<=o||o<=t&&t<=e)}var a,g,r,A={convertVisionVector:function(e){return new THREE.Vector3(e.x,e.z,-e.y)},convertVisionQuaternion:function(e){return new THREE.Quaternion(e.x,e.z,-e.y,e.w).multiply((new THREE.Quaternion).setFromAxisAngle(new THREE.Vector3(0,1,0),THREE.Math.degToRad(90)))},convertWorkshopVector:function(e){return new THREE.Vector3(-e.x,e.y,e.z)},convertWorkshopQuaternion:function(e){return new THREE.Quaternion(-e.x,e.y,e.z,-e.w).multiply(new THREE.Quaternion(Math.sqrt(2)/2,Math.sqrt(2)/2,0,0))},convertWorkshopPanoramaQuaternion:function(e){return new THREE.Quaternion(e.x,-e.y,-e.z,e.w).normalize().multiply((new THREE.Quaternion).setFromAxisAngle(new THREE.Vector3(0,1,0),THREE.Math.degToRad(270)))},convertWorkshopOrthoZoom:function(e){return-1===e?-1:e*($("#player").width()/$("#player").height())},toPrecision:function(e,t){var o=function(e,t){var o=Math.pow(10,t);return Math.round(e*o)/o};if(e instanceof Array){for(var i=0;iMath.PI?t-=2*Math.PI:t<-Math.PI?t+=2*Math.PI:t},getFOVDotThreshold:function(e){return Math.cos(THREE.Math.degToRad(e/2))},transform2DForwardVectorByCubeFace:function(e,t,o,i){switch(e){case GLCubeFaces.GL_TEXTURE_CUBE_MAP_POSITIVE_X:o.set(1,t.y,t.x);break;case GLCubeFaces.GL_TEXTURE_CUBE_MAP_NEGATIVE_X:o.set(-1,t.y,-t.x);break;case GLCubeFaces.GL_TEXTURE_CUBE_MAP_POSITIVE_Y:o.set(-t.x,1,-t.y);break;case GLCubeFaces.GL_TEXTURE_CUBE_MAP_NEGATIVE_Y:o.set(-t.x,-1,t.y);break;case GLCubeFaces.GL_TEXTURE_CUBE_MAP_POSITIVE_Z:o.set(-t.x,t.y,1);break;case GLCubeFaces.GL_TEXTURE_CUBE_MAP_NEGATIVE_Z:o.set(t.x,t.y,-1)}i&&o.normalize()},getFootPoint:function(e,t,o,i){var n=e.clone().sub(t),a=t.clone().sub(o),g=a.length(),r=n.dot(a)/g;return t.clone().add(a.multiplyScalar(r/g))},getCenterOfGravityPoint:function(e){for(var t=0,o=0,i=0,n=1;n<=e.length;n++){var a=e[n%e.length].x,g=e[n%e.length].y,r=e[n-1].x,A=e[n-1].y,C=(a*A-g*r)/2;t+=C,o+=C*(a+r)/3,i+=C*(g+A)/3}return{x:o/=t,y:i/=t}},getBound:function(e){for(var t=new THREE.Box2,o=0,i=e.length;o=o.max.x||t.y<=o.min.y||t.y>=o.max.y)return!1;for(var i=!1,n=t.x,a=t.y,g=0,r=e.length-1;ga!=I>a&&n<(s-A)*(a-C)/(I-C)+A&&(i=!i)}return i},getArea:function(e){for(var t=e.length,o=0,i=t-1,n=0;n0&&(t*=-1,o*=-1),new THREE.Vector2(t,o).normalize()}};t.a=A},function(e,t,o){"use strict";o(72);var i,n=o(11),a=o.n(n),g=(o(38),o(52),o(39),o(0)),r=o(2),A=o(6),C=o(4),s=o(10),I=o(13),l=o(79),c=o(89),d=o(16),u=o(32),h=o(3);function p(e){i||(i=g.a.player),this.domParent=e.domParent||$("#hotspot"),this.pos3d=e.pos3d,this.state="static",this.clickFuc=!1,e.elem?this.elem=e.elem:(this.elem=$('
'),this.domParent.append(this.elem)),this.elem.belongSpot=this,this.title=e.title||"",this.content=e.content||"",this.type=e.type||"hotspot",this.style=e.style,this.camera=e.camera,this.enable=!1,e.src&&this.elem.find(".inside").css("background-image","url("+e.src+")"),"label"==this.type?(this.text=e.text,this.elem.innerText=this.text,dom.addClass(this.elem,"label")):this.elem.addClass("markspot"),e.imgSrc&&(this.img=new Image,this.img.src=e.imgSrc),e.index&&(this.index=e.index)}p.prototype.becomeReal=function(e){s.default.getRandomSid();var t=g.a.editor.markTag;return e&&"static"==e||(t.state=""),t.rePos(this.pos3d),g.a.editor.hotRePos||(t.bindEvents(),i.tagManager.getTag(t)),t.style!=this.style&&t.setElemType(this.style),t.snapInfo={standPos:i.position.clone()},t.setVisiblePanos(),t},p.prototype.hotspotDragBegin=function(e){this.belongSpot.player.flying||(this.belongSpot.player.hotspotDrag.mouseinitX=e.clientX,this.belongSpot.player.hotspotDrag.mouseinitY=e.clientY,this.belongSpot.player.hotspotDrag.transformX=this.belongSpot.transformX,this.belongSpot.player.hotspotDrag.transformY=this.belongSpot.transformY,this.belongSpot.state="drag",this.belongSpot.player.dragSpot=this.belongSpot,dom.addClass(this,"drag"))},p.prototype.enlarge=function(){var e=new Image;e.src=this.img?this.img.src:"images/default.jpg";var t=dom.id("spotLarge"),o=dom.cla("inner",t)[0];o.appendChild(e);var n=dom.cla("replaceImg",this.elem)[0],a=i.imgRect=n.getBoundingClientRect();dom.removeClass(t,"hide"),o.style.left=a.left+"px",o.style.top=a.top-(window.innerHeight-i.domElement.clientHeight)+"px",o.style.width=a.width+"px",o.style.height=a.height+"px",setTimeout(function(){var n=o.clientWidth/o.clientHeight;if(n>=i.domElement.clientWidth/i.domElement.clientHeight){var a=Math.min(.95*i.domElement.clientWidth,1.5*e.naturalWidth);o.style.width=a+"px",o.style.height=a/n+"px"}else{var g=Math.min(.95*i.domElement.clientHeight,1.5*e.naturalHeight);o.style.height=g+"px",o.style.width=g*n+"px"}o.style.left="50%",o.style.top="50%",dom.addClass(t,"center")}.bind(this),50)},p.prototype.setPosGets=function(e){for(var t in this.posGets={list:[],length:2},e)this.posGets[t]=(new THREE.Vector3).fromArray(e[t]),this.posGets.list.push(t)};var f=function(e,t){return Math.abs(e-t)<1e-7};p.prototype.computeHotPos=function(){var e="hotspot"==this.type?"posGets":"posGetsMs",t=i.model.panos.index[i[e].list[0]].origin,o=i.model.panos.index[i[e].list[1]].origin;if("hotspot"==this.type)var n=i[e][i[e].list[0]],a=i[e][i[e].list[1]];else n=i[e][i[e].list[0]][this.index],a=i[e][i[e].list[1]][this.index];var g=n.x-t.x,r=n.y-t.y,A=n.z-t.z,C=a.x-o.x,s=a.y-o.y,I=a.z-o.z,l=t.x-o.x,c=t.y-o.y,d=t.z-o.z,u=g*g+r*r+A*A,h=g*C+r*s+A*I,p=C*C+s*s+I*I,m=g*l+r*c+A*d,v=C*l+s*c+I*d,y=u*p-h*h,b=y,w=y,E=0,T=0,P=function(e){this.pos3d=(1==e?n:a).clone(),console.log(this.pos3d+" 在后方交点,使用点"+e)}.bind(this);if(f(y,0))E=0,b=1,T=v,w=p;else if(T=u*v-h*m,(E=h*v-p*m)<0)return void P(1);if(T<0)P(2);else{sc=0,tc=0,f(E,0)?sc=0:sc=E/b,f(T,0)?tc=0:tc=T/w;var S=new THREE.Vector3(t.x+sc*g,t.y+sc*r,t.z+sc*A),D=new THREE.Vector3(o.x+tc*C,o.y+tc*s,o.z+tc*I);this.pos3d=S.clone().add(D).multiplyScalar(.5)}},p.prototype.computeHotPos2=function(e){if(0==r.a.setSpotType)var t=g.a.editor.spotPosInfo.panoA.position.clone(),o=g.a.editor.spotPosInfo.panoB.position.clone(),i=g.a.editor.spotPosInfo.posA.clone(),n=g.a.editor.spotPosInfo.posB.clone();else if(edit&&g.a.editor.mainDesign.floorExamingStep)t=e.A,o=e.B,i=e.p1,n=e.p2;else t=g.a.editor.spotPosInfo.panoA.position.clone(),o=g.a.editor.spotPosInfo.panoB.position.clone(),i=g.a.editor.spotPosInfo.clickA,n=g.a.editor.spotPosInfo.clickB;var a,A=i.clone().sub(t).normalize(),C=n.clone().sub(o).normalize(),s=Math.abs(A.dot(C));console.log("真实两线夹角: "+(a=s,180*Math.acos(a)/Math.PI+"(")+s+")");var I=function(){var e,a=i.x-t.x,g=i.y-t.y,r=i.z-t.z,A=n.x-o.x,C=n.y-o.y,s=n.z-o.z,I=t.x-o.x,l=t.y-o.y,c=t.z-o.z,d=a*a+g*g+r*r,u=a*A+g*C+r*s,h=A*A+C*C+s*s,p=a*I+g*l+r*c,m=A*I+C*l+s*c,v=d*h-u*u,y=v,b=v,w=0,E=0,T=function(t){e=(1==t?i:n).clone(),console.log(e+" 在后方交点,使用点"+t)}.bind(this);if(f(v,0))w=0,y=1,E=m,b=h;else if(E=d*m-u*p,(w=u*m-h*p)<0)return T(1),e;if(E<0)return T(2),e;var P=0,S=0;P=f(w,0)?0:w/y,S=f(E,0)?0:E/b;var D=new THREE.Vector3(t.x+P*a,t.y+P*g,t.z+P*r),x=new THREE.Vector3(o.x+S*A,o.y+S*C,o.z+S*s);return D.clone().add(x).multiplyScalar(.5)}();return e&&e.dontRestric||(I=this.restricPosAtRoom(I)),e&&e.dontRestric?console.log("dontRestric"):console.log("restricPosAtRoom"),e&&e.onlyGetPos||(this.pos3d=I),I},p.prototype.restricPosAtRoom=function(e){var t=g.a.player.currentPano.position,o=g.a.editor.oriRoomData;if(o){for(var i=0;i-1){var n=e;if((r=new THREE.Raycaster(t,n.clone().sub(t).normalize(),0,t.distanceTo(n)).intersectObjects(o[i].wallMeshes))&&r.length){console.log("热点飘出房间"+o[i].id+" 外,矫正:"+e.toArray()+" --\x3e "+r[0].point.toArray());var a=r[0].point.clone().setY(r[0].point.y+.001);e.copy(a)}break}}else{var r;n=e;(r=new THREE.Raycaster(t,n.clone().sub(t).normalize(),0,t.distanceTo(n)).intersectObjects(g.a.player.model.chunks.concat([g.a.player.model.skybox])))&&r.length&&(console.log("热点飘出房间或模型外,矫正:"+e.toArray()+" --\x3e "+r[0].point.toArray()),e.copy(r[0].point))}return e},p.prototype.updateHotspot2dPos=function(){if(this.pos3d&&"drag"!=this.state&&"none"!=this.elem[0].display&&this.enable){var e=this.pos3d.clone().applyMatrix4(i.model.matrixWorld),t=i.position.distanceTo(e),o=u.a.getPos2d(e,this.camera,this.domParent[0]);if(o.trueSide){if(this.elem.removeClass("hide"),this.transformX=o.pos.x-this.domParent.width()/2,this.transformY=o.pos.y-this.domParent.height()/2,"real"===this.state)var n=this.scale1*i.k/t;else if("hover"===this.state||"pin"===this.state)n=this.scale1*this.scale2*i.k/t;this.elem.css({transform:"translate("+this.transformX+"px,"+this.transformY+"px)"+("real"===this.state||("hover"===this.state||"pin"===this.state)&&n>this.scale1?" scale("+n+","+n+")":"")})}else this.elem.addClass("hide")}};var m=p,v=o(1),y=o(138),b=o(76),w=o(144),E=o(51),T=o(7),P=o(36);if(!isMobile&&T.a.detectIE())var S=o(199).default,D=S[32],x=S[64];else D=o(136).default;if(edit)var M=o(101).default;var R={editType:"tag",IfLabelBlank:function(e){return 0==s.default.replaceAll(e.billboard.label," ","").length}};R.init=function(e,t){var o,i=e.spotPosInfo={},n=$('
\x3c!--???--\x3e
'),p=$("#playerB");p.on("pointerup touchend",(function(t){if(R.playerBmousedown=!1,o&&o.moving)return;var n=H(t);if(Math.abs(N.x-n.x)>3||Math.abs(N.y-n.y)>3)return;if("designWall"==R.editType)return void(e.mainDesign.hoverLine&&!e.mainDesign.hoverPull&&e.mainDesign.floorLineB.movePullMesh(e.mainDesign.lineHoverPoint));if(!i.clickA&&!e.hotRePos)return void g.a.gui.showInfo(isMobile?h.a.get("请先在上方点击"):h.a.get("请先在左侧点击"));var a=new THREE.Vector2;d.a.convertScreenPositionToNDC(n.x,n.y,a,p[0]),z(a)})),p.on("pointerdown touchstart",(function(t){if(R.playerBmousedown=!0,N=H(t),edit&&2==e.mainDesign.floorExamingStep)return void(e.mainDesign.hoverPull&&e.mainDesign.dragLineBegin(R))})),p.on("pointermove",(function(t){edit&&2==e.mainDesign.floorExamingStep&&(R.mouseB=H(t),e.mainDesign.handleDragging(R))})),p.on("mouseover",(function(e){R.BcontainsMouse=!0,!R.playerBmousedown||0!==e.which&&0!==e.buttons||(R.mouseDown=!1)})),p.on("mouseout",(function(e){R.BcontainsMouse=!1})),R.renderSpotArea=function(){g.a.editor.enterSplitView&&(t.tagManager.tagDiscs.forEach((function(e){e.visible&&0!=e.material.uniforms.opacity.value&&(e.canvasA_Qua=e.quaternion.clone(),e.canvasA_Scale=e.scale.clone(),e.tag.update(t.mode,k,t.currentPano,t.flying))})),f.render(g.a.sceneRenderer.scene,k),t.tagManager.tagDiscs.forEach((function(e){e.visible&&0!=e.material.uniforms.opacity.value&&(e.quaternion.copy(e.canvasA_Qua),e.scale.copy(e.canvasA_Scale))})))},R.setPlayerBSize=function(){g.a.editor.enterSplitView&&(f.setSize(p.width(),p.height(),!1,Math.min(window.devicePixelRatio,2)),k.aspect=p.width()/p.height(),k.updateProjectionMatrix())};var f=new THREE.WebGLRenderer({antialias:!isMobile});f.setPixelRatio(window.devicePixelRatio),f.setSize(300,300,!1),p.append(f.domElement);var S=new y.a;S.init(p[0],null,"spotPlayer"),S.activateControls("panorama");var k=S.activeControl.camera,B=S.activeControl;k.fov=50,k.updateProjectionMatrix();var O=new THREE.Mesh(new THREE.BoxGeometry(10,10,10),new b.a({side:THREE.BackSide,transparent:!1,name:"spotAddCubeMat",not_Cube:!0},"fishSky"));O.layers.set(P.a.SubScreen),g.a.sceneRenderer.scene.add(O),k.layers.toggle(P.a.DEFAULT),k.layers.enable(P.a.TAG),k.layers.enable(P.a.BothAtMainAndSubScreen),k.layers.enable(P.a.SubScreen);var L=new m({src:D.note,style:"note",elem:$("#hotspot .staticSpot")}),F=new m({domParent:p,camera:k,src:D.note,style:"note"});L.elem.addClass("hide"),F.elem.addClass("hide"),L.name="markSpotA",F.name="markSpotB",i.renderer=f,i.camera=k,i.control=B,i.cube=O,i.markSpotA=L,i.markSpotB=F;var N=new THREE.Vector2,H=function(e){var t=(e=e.originalEvent||e).type.indexOf("touch")>-1;return{x:t?e.changedTouches[0].clientX:e.offsetX,y:t?isMobile?e.changedTouches[0].clientY-$("#player").height():e.changedTouches[0].clientY:e.offsetY}};function z(o){var n=new THREE.Raycaster,a=new THREE.Vector3(o.x,o.y,-1).unproject(k),g=new THREE.Vector3(o.x,o.y,1).unproject(k).sub(a).normalize();n.set(a,g);var A=n.intersectObjects([O])[0],C=(new THREE.Matrix4).getInverse(t.model.matrixWorld.clone());if(i.clickB=A.point.clone().applyMatrix4(C),F.pos3d=i.clickB,F.updateHotspot2dPos(),3==r.a.setSpotType){try{e.markTag.rePos(L.computeHotPos2({onlyGetPos:!0,dontRestric:"measure"==R.editType}))}catch(e){console.log(e)}console.log("远近:"+e.markTag.position.distanceTo(t.position))}}function j(){i.panoA=t.currentPano;var o=i.panoB;if(edit&&2==e.mainDesign.floorExamingStep){e.markTag.obj3d.updateMatrixWorld(),e.markTag.visiblePanos=e.mainDesign.examGoodSightPanos;var n=e.markTag.closestPanoTowardTag("panorama",t.currentPano,null,!0);if(n&&n.length>0)if(n[0].pano==t.currentPano)n[1]?i.panoB=n[1].pano:i.panoB=t.currentPano.subPano;else{i.panoB=n[0].pano;var a=t.position.distanceTo(e.markTag.position);a>4&&(console.log("距离"+a),n[1]&&n[1].pano.position.distanceTo(e.markTag.position)div").addClass("hide"):$(".hotpointDetail li.audio , .hotpointDetail li.photo , .hotpointDetail li.video , .hotpointDetail li.outLink").addClass("dontShow");var o={link:".outer-chain",voice:".audio-waveBtn",photo:".tag-image",video:".tag-media"},i=e.markTag.billboard.div,n=e.markTag.billboard,a=this;if(this.__style=t,n.loadingMedia){var C=n.onMediaLoadFinished;n.onMediaLoadFinished=function(){for(var e=arguments.length,t=new Array(e),g=0;g *").addClass("hide"),$(i).find(o[a.__style]).removeClass("hide"))}}if($(i).find(".tag-media-content > *").addClass("hide"),$(i).find(".audio-waveBtn").addClass("hide"),$(i).find(o[t]).removeClass("hide"),$(i).removeClass("has-"+Q[e.markTag.style]),$(i).addClass("has-"+Q[t]),"video"!==t){var s=$(i).find(".tag-media-content video")[0];s&&s.pause()}if("voice"!==t&&e.markTag.billboard.mediaObject.audioPlayer&&g.a.gui.playAudio(e.markTag.billboard.mediaObject.audioPlayer,!1),e.markTag.billboard.closeImage&&e.markTag.billboard.closeImage(),e.markTag.billboard.applyOrientation(e.markTag.billboard.orientation),isMobile?$(".tmpl-hotpoint.step-3 [data-type="+Q[t]+"]").removeClass("hide"):$(".hotpointDetail li."+Q[t]).removeClass("dontShow"),isMobile){$(".swiper-slide.active").removeClass("active"),$(".swiper-slide[data-name="+t+"]").addClass("active");try{g.a.appEditExt.jroll.destroy()}catch(e){}g.a.appEditExt.jroll=new JRoll("footer",{scrollBarY:!0})}else $(".hotpointDetail .style .remark").text(A.a.styleRemarks[t])}e.markTag.setElemType(t)}console.log("切换风格"+t+": "+D[t])},edit)if(isMobile)Y=$('.tmpl-hotpoint.step-1 button[type="submit"]');else{Y=$(".toolRight .hotpointDetail .setPos button.submit");var W=$(".toolRight .hotpointDetail .setPos button.cancel")}else var Y=isMobile?$(".bottomOverlay [data-name='measure'] button[type='submit']"):$(".confirmSnap");if(2==r.a.setSpotType||3==r.a.setSpotType){var Z=function o(n){if(!t.flying&&e.setSpotPos){if(3==r.a.setSpotType&&t.currentPano.subPano!=i.panoB){if(g.a.editor.spotPosInfo.clickA){i.panoA=t.currentPano;var a=(new THREE.Matrix4).getInverse(t.model.matrixWorld.clone());return i.clickA=n.point.clone().applyMatrix4(a),L.pos3d=i.clickA,L.updateHotspot2dPos(),e.markTag.rePos(L.computeHotPos2({onlyGetPos:!0,dontRestric:"measure"==R.editType})),void console.log("远近:"+e.markTag.position.distanceTo(t.position))}j(),i.pauseCameraBind=!1}if(!ie()){g.a.gui.showWaiting(!0,"getMatchData");var A=i.panoA.id+"_"+i.panoB.id;if(oe[A]=(oe[A]||0)+1,!(oe[A]>5))return void setTimeout((function(){o(n)}),200);console.error("获取不到matchdata 放弃使用: "+A)}g.a.gui.showWaiting(!1,"getMatchData");a=(new THREE.Matrix4).getInverse(t.model.matrixWorld.clone());if(i.clickA=n.point.clone().applyMatrix4(a),i.dirA=K(i.clickA),i.UVa=X(i.dirA),i.UVb=ee(),i.UVb)i.UVb.x=i.UVb.x.toFixed(3)-0,i.UVb.y=i.UVb.y.toFixed(3)-0;else{C.a.info("找不到UVb,假设一个");i.UVb={x:i.UVa.x,y:i.UVa.y+-.02}}if(i.dirB=J(i.UVb),i.clickB=te(i.dirB),$("#IMGparent > div").eq(0).find(".cursor1").css({display:"block",left:100*i.UVa.x+"100%",top:100*i.UVa.y+"100%"}),$("#IMGparent > div").eq(1).find(".cursor1").css({display:"block",left:100*i.UVb.x+"100%",top:100*i.UVb.y+"100%"}),L.pos3d=i.clickA,F.pos3d=i.clickB,L.elem.removeClass("hide"),F.elem.removeClass("hide"),L.enable=!0,F.enable=!0,L.updateHotspot2dPos(),F.updateHotspot2dPos(),e.markTag.rePos(L.computeHotPos2({onlyGetPos:!0,dontRestric:"measure"==R.editType})),3==r.a.setSpotType);Y.removeClass("unable"),$("#player").css("cursor",""),t.reticule.visible=!0}},X=function(e){return(e=e.clone()).x*=-1,{x:Math.atan2(e.x,e.z)/(2*Math.PI)+.5,y:Math.acos(e.y)/Math.PI}},J=function(e){var t,o,i=Math.cos(e.y*Math.PI),n=2*Math.PI*e.x-Math.PI;t=-Math.PI<=n&&n<0?-1:1,o=-Math.PI/2<=n&&ng)&&(e.dis=g,e.pair=t)}e["view pair"].uv.forEach((function(e){e[0]=n&&e[1]<=a?l(r,e):e[0]=a?l(A,e):l(C,e)}));var c=0;for(var d in s)s[d].pair&&c++;var u={};function h(e){var t;I.indexOf(e)>-1||((t=$('
')).css({left:100*e.pair[0]+"%",top:100*e.pair[1]+"%"}),$("#IMGparent>div").eq(0).append(t),(t=$('
')).css({left:100*e.pair[2]+"%",top:100*e.pair[3]+"%"}),$("#IMGparent>div").eq(1).append(t),I.push(e))}function p(e,t){return e.pair?t.pair?e.dis=3||2==c&&(g.pair&&C.pair||A.pair&&r.pair))&&(o=f()),o},te=function(e){e=e.clone();var t=i.panoB.skyboxMesh.matrixWorld.clone();return t.getInverse(t),e=_(e,t),i.panoB.position.clone().add(e)},oe={},ie=function(){var e=i.panoA.id+"_"+i.panoB.id;if(q[e])return q[e];E.a.getChain(r.a.getHotMapping(e),null,(function(t){q[e]=t}))}}else if(1==r.a.setSpotType&&!isMobile){var ne=function(o,i){if(1==i){e.setSpotPos=!0,ge(1);var n=$("#hotspot .staticSpot");(e.hotRePos||2==o)&&(t.lookAtPos(e.markTag.position,null,{speed:.1,time:500}),e.markTag.billboard.closeImage&&e.markTag.billboard.closeImage(),!e.tempPosData&&(e.tempPosData=e.markTag.getTempData()),e.markTag.markGroup&&(e.markTag.markGroup.remove(),e.markTag.markGroup=null),e.markTag.remove(),e.markTag=null,C.a.info("删除editor.markTag")),n.removeClass("hide"),e.markMoveCtrl.recover()}else if(2==i){ge(2),e.snapInfo={pano:t.currentPano,quaternion:t.quaternion,style:re.find(".active").data("name")},e.tagMoveCtrl.setPathWidth(),C.a.info("开始新建热点");var a=e.markMoveCtrl.reportPos();if(t.handleInputStart(a.x,a.y,!0,!0),e.createTag(),e.markTag.edit=!0,e.tempPosData){var g=e.tempPosData;e.markTag.sid=g.sid,e.openLi&&(e.openLi[0].tag=e.markTag,e.markTag.listElem=e.openLi),e.markTag.billboard.changeLabel(g.label),e.markTag.billboard.changeDesc(g.description),e.markTag.media=g.media,e.markTag.fileSrc=g.fileSrc,e.markTag.fileName=g.fileName,e.markTag.recoverFromTemp(g,"builded"),g.media.forEach((function(t){e.markTag.billboard.changeMedia(t)})),e.tempPosData=null}$("#hotspot .staticSpot").addClass("hide"),Y.text(h.a.get("确定热点位置")+"B(2/2)")}else 3==i&&(ge(3),e.markTag.markGroup.hide(),e.markTag.state="normal",e.markTag.setVisiblePanos(),e.setSpotPos=!1)};$(".hotpointDetail .setPos ul").removeClass("hide"),e.atHotStep=0,Y.on("click",(function(){1==e.atHotStep?ne(1,2):2==e.atHotStep&&ne(2,3)})),$(".toolRight .hotpointDetail .setPos li").eq(0).on("click",(function(){2==e.atHotStep&&ne(2,1)})),R.addSpot=function(){e.checkSpotCount({max:A.a.MAX_SPOT_COUNT})?g.a.gui.showAskBox(h.a.get("无法添加热点"),h.a.get("热点数目已达最大:")+A.a.MAX_SPOT_COUNT):e.checkNoNeighbour()?g.a.gui.showAskBox(h.a.get("无法在此添加热点"),h.a.get("由于当前位置没有邻近位置,无法添加热点。请在别的位置添加")):t.FlyToMode("panorama",(function(){ne(0,1),R.updatePanelForTag()}))},W.on("click",t.FlyToMode.bind(t,"panorama",(function(){e.hotRePos=!0,e.setSpotPos=!0,ne(0,1)})))}function ae(){e.hotRePos=!1,e.reEditHot=!1}function ge(t){e.atHotStep=t;var o=$(".hotpointDetail .buttons.tail .submit");if($(".toolRight .hotpointDetail").removeClass("atRight"),$(".slideCtrl").addClass("hide"),3==t?(Y.addClass("hide"),"tag"==R.editType&&(o.removeClass("unable"),2!=r.a.setSpotType&&3!=r.a.setSpotType&&$(".toolRight .hotpointDetail .setPos ul").addClass("hide"),W.removeClass("hide"),$(".toolRight .hotpointDetail .style").removeClass("hide"),$(".toolRight .hotpointDetail .info").removeClass("hide"),$(".hotpointDetail li."+Q[e.markTag.style]).removeClass("hide"),$(".hotpointDetail .style").removeClass("unable"),$(".hotpointDetail .info").removeClass("unable"),$(".hotpointDetail .photo, .hotpointDetail .video, .hotpointDetail .audio, .hotpointDetail .outLink").removeClass("hide"),$(".hotpointDetail .mediaUpload").removeClass("unable"),$(".toolRight .hotpointDetail .setPos .remark").eq(0).removeClass("hide"),$(".toolRight .hotpointDetail .setPos .remark").eq(1).addClass("hide"),$(".toolRight .hotpointDetail .setPos .remark").eq(2).addClass("hide")),g.a.gui.permitTranMode(!0)):(o.addClass("unable"),1==t?("tag"==R.editType&&(W.addClass("hide"),(2==r.a.setSpotType||3==r.a.setSpotType)&&!i.clickA&&$("#player").css("cursor","crosshair"),2!=r.a.setSpotType&&3!=r.a.setSpotType&&$(".toolRight .hotpointDetail .setPos ul").removeClass("hide"),$(".toolRight .hotpointDetail .setPos .remark").eq(0).addClass("hide"),$(".toolRight .hotpointDetail .setPos .remark").eq(1).removeClass("hide"),$(".hotpointDetail .style").addClass("unable"),$(".hotpointDetail .info").addClass("unable"),$(".hotpointDetail .mediaUpload").addClass("unable"),$(".hotpointDetail .photo, .hotpointDetail .video, .hotpointDetail .audio, .hotpointDetail .outLink").addClass("hide"),Y.text(2!=r.a.setSpotType&&3!=r.a.setSpotType?h.a.get("确定热点位置")+"A(1/2)":h.a.get("确定热点位置"))),Y.removeClass("hide"),g.a.gui.permitTranMode(!1)):2==t?($(".toolRight .hotpointDetail .setPos .remark").eq(1).addClass("hide"),$(".toolRight .hotpointDetail .setPos .remark").eq(2).removeClass("hide"),$(".slideCtrl").removeClass("hide"),Y.removeClass("hide"),Y.text(h.a.get("点击确定热点位置")+"B(2/2)")):0==t&&($(".hotpointDetail .style").addClass("hide"),$(".toolRight .hotpointDetail .info").addClass("hide"),$(".toolRight .hotpointDetail .photo").addClass("hide"),$(".toolRight .hotpointDetail .mediaUpload").addClass("hide"),$(".toolRight .hotpointDetail .setPos").addClass("noBorderbott"),$(".toolRight .hotpointDetail").addClass("atRight"),$("#project-intro1").hasClass("sizeWaring")&&$("#project-intro1").removeClass("sizeWaring").attr("data-size","0"),Y.addClass("hide"),e.warnLabel.spotTitle.ifWarn(0),g.a.gui.permitTranMode(!0))),2!=r.a.setSpotType&&3!=r.a.setSpotType){var n=$(".hotpointDetail .setPos ul li");n.removeClass("finish"),n.find(".state").text(h.a.get("未设置")),n.removeClass("active");for(var a=1;a<=t;a++)a-2>=0&&n.eq(a-2).addClass("finish"),a-2>=0&&n.eq(a-2).find(".state").text(h.a.get("已设置"));n.eq(t-1).addClass("active")}}R.exitHotEdit=function(){if(R.exitHotPosEdit(),t.flyingToTag=!1,e.markTag&&(e.reEditHot&&R.selectStyle(e.tempTagData.style),e.markTag.markGroup&&(e.markTag.markGroup.remove(),e.markTag.markGroup=null),e.markTag.remove(),e.markTag=null),e.reEditHot){var o=e.tempTagData,i=new c.a(t.model,o.sid,o);isMobile||(i.listElem=e.openLi,e.openLi[0].tag=i),i.recoverFromTemp(o),s.default.destroyNoUseBlob(i),i.hide(0),setTimeout((function(){t.tagManager.updateVisible(t.mode,null,i),i.show(200)}),50)}else s.default.destroyNoUseBlob();isMobile||ge(0),ae()},R.saveSpot=function(o){function i(){var i=e.markTag;if(2==r.a.setSpotType||3==r.a.setSpotType);else if(1==r.a.setSpotType&&!isMobile&&3!=e.atHotStep)return void C.a.info("还没完成热点");var n={voice:"audio",link:"outLink",photo:"photo",video:"video"};if(R.IfLabelBlank(i))isMobile?(g.a.appEditExt.jroll.scrollTo(0,0),$(".tmpl-hotpoint.step-3 .warn").removeClass("hide")):e.warnLabel.spotTitle.ifWarn(1);else if(!n[i.style]||i.billboard.mediaData[n[i.style]]){C.a.info("准备保存热点"),I.a.savingInfo.hotspot={done:0};var A={count:0},c={photo:".jpg",video:".mp4",audio:".mp3"},d=i.billboard.mediaData,u=$(".hotpointDetail .style li.active").attr("data-name");for(var p in n[u]&&(d=a()({},n[u],d[n[u]])),n)p!=i.style&&e.deleteMediaType(n[p]);for(var p in console.log(d),d)d[p].needSave&&(A.file||(A.file={}),A.file[p]={name:"hot"+i.sid+c[p],file:d[p].file?d[p].file:d[p].media.base64Src,needTransfer:!d[p].file,type:p},A.count++);var f=i.billboard.description.replace(/<(\/)?div>/g,(function(e){return 0==e.indexOf("":"

"}));if(A.hotData={label:i.billboard.label,description:0===i.billboard.description.indexOf("

")?f:"

"+f+"

",style:i.style,sid:i.sid,media:i.billboard.media,position:i.position,visiblePanos:i.getVisiPanoData(),fileName:i.fileName,fileSrc:i.fileSrc,outLink:i.billboard.mediaData.outLink||""},i.snapInfo&&i.snapInfo.nodeEnd&&(A.hotData.snapInfo={nodeEnd:i.snapInfo.nodeEnd,panoId:i.snapInfo.panoId}),i.posGets&&(A.hotData.posGets=i.posGets),A.count++,A.file)for(var p in A.file)if(r.a.use7niu&&"photo"!=p&&(A.file[p].Config.use7niu=!0),"video"===p){g.a.gui.showWaiting(!0,"uploadVideo");var m=new FormData;m.append("sceneNum",r.a.projectNum),m.append("file",A.file[p].file),m.append("sid",A.hotData.sid),$.ajax({headers:{token:window.appLoginToken},type:"post",url:"/api/scene/edit/uploadHotMedia",data:m,cache:!1,processData:!1,contentType:!1,success:function(t){g.a.gui.showWaiting(!1,"uploadVideo");var o=p;e.markTag.billboard.mediaData[o].needSave=!1,e.markTag.billboard.mediaData[o].file=null,I.a.saveCallBack.done("hotspot",ae,h.a.get("热点保存")),i.billboard.body.querySelector("video").setAttribute("poster","scene/images/images".concat(r.a.projectNum,"/hot").concat(A.hotData.sid,"-cut.jpg"))}})}else Object(l.a)((isMobile?r.a.prefixEditProMobileApi:r.a.prefixEditProPCApi)+"/uploadPic",A.file[p],{sceneNum:r.a.projectNum},(function(t,o){C.a.info(t+" media saveDone"),r.a.use7niu&&"photo"!=t&&(e.markTag.fileSrc[t]=o),e.markTag.billboard.mediaData[t].needSave=!1,e.markTag.billboard.mediaData[t].file=null,I.a.saveCallBack.done("hotspot",ae,h.a.get("热点保存"))}),I.a.saveCallBack.fail.bind(this,"hotspot",h.a.get("热点保存"),ae));if(I.a.count.hotspot=A.count,A.hotData){var v=(isMobile?r.a.prefixEditProMobileApi:r.a.prefixEditProPCApi)+"/saveHot",y=I.a.getDataDeal(v,"hotspot",ae);y.group[0]=function(){var o=e.markTag;isMobile||t.tagManager.activateTag(o),o.markGroup&&(o.markGroup.remove(),o.markGroup=null),isMobile||(ge(0),e.reEditHot?(o.listElem.find(".icon").css("background-image",'url("'+D[o.style]+'")'),o.listElem.find(".title").text(o.billboard.label||h.a.get("未命名"))):e.addList(o)),o.edit=!1,s.default.destroyNoUseBlob(o),o.billboard.resizeImg(),t.tagManager.updateVisible(t.mode,null,o),e.markTag=null,isMobile||o.billboard.changeDesc(o.billboard.description),e.hotJsonChanged=!0,C.a.info("热点保存完毕"),I.a.saveCallBack.done("hotspot",ae),isMobile&&g.a.appEditExt.exitEvent("hotpoint.step-3"),setTimeout((function(){isMobile&&t.tagManager.activeTag&&t.tagManager.dismissActiveTag()}),100)},A.file?I.a.savingInfo.hotspot.waitAjax=function(){return A.hotData.fileSrc=i.fileSrc,C.a.info(A.hotData),{url:v,dataDeal:y,data:{sceneNum:r.a.projectNum,hotData:JSON.stringify(A.hotData),type:e.reEditHot?0:1}}}:(C.a.info(A.hotData),I.a.saveAjax(v,{sceneNum:r.a.projectNum,hotData:JSON.stringify(A.hotData),type:e.reEditHot?0:1},y))}A.file||A.hotData||I.a.saveCallBack.done("hotspot",ae),isMobile&&o()}else{var b={video:h.a.get("视频"),voice:h.a.get("音频"),photo:h.a.get("图片"),link:h.a.get("外链")};g.a.gui.showInfo(h.a.get("请上传")+b[i.style])}}window.__ajaxing?window.__cbs=i:i()},$(".hotpointDetail .buttons.tail .submit").on("click",R.saveSpot),$(".toolRight .hotpoint .addSpot button").on("click",R.addSpot),$(".hotpointDetail .buttons.tail .cancel, .hotpointDetail .itemTitle.head a.close").on("click",R.exitHotEdit),R.updatePanelForTag=function(){var t=e.markTag;if(isMobile){var o=$("footer .tmpl-hotpoint.step-3");t?(R.selectStyle(t.style),o.find("input").eq(0).val(t.billboard.label),g.a.editor.hotsEditor.txt.html(t.billboard.description)):(o.find("input").val(""),g.a.editor.hotsEditor.txt.html(""))}else{se(),$(".toolRight .hotpointDetail").find(".info .name input").val(t?t.billboard.label:""),t&&""!=t.billboard.description?M.editor1.txt.html(t.billboard.description):M.editor1.txt.html(""),e.updateTextCount.HotLabel()}!function(e){g.a.gui.changeMediaPreview(e,"photo"),g.a.gui.changeMediaPreview(e,"audio"),g.a.gui.changeMediaPreview(e,"video"),g.a.gui.changeMediaPreview(e,"outLink")}(t)};var re=$(".toolRight .hotpointDetail .style>ul");for(var Ae in A.a.HotChinese){var Ce=$('
  • ');Ce.css("background-image",'url("'+D[Ae]+'")'),re.append(Ce)}re.children().first().addClass("active"),re.children().on("click",(function(){re.find(".active").removeClass("active"),$(this).addClass("active");var e=$(this).data("name");R.selectStyle(e)}));re=$(".toolRight .hotpointDetail .style>ul");var se=function(){if(e.reEditHot)var t='.toolRight .hotpointDetail .style li[data-name="'+e.markTag.style+'"]';else t=re.children().first();$(t).click()};if(e.openList=function(o){R.editType="tag";var i=o[0].tag;return!t.flying&&!t.flyingToTag&&(C.a.info("修改热点"),e.reEditHot=!0,e.openLi=o,e.markTag=i,i.edit=!0,i.disc.visible=!0,i.billboard.closeImage&&i.billboard.closeImage(),ge(3),R.updatePanelForTag(),t.flytoTag(i,"force"),e.tempTagData=i.getTempData(),!0)},e.spotNumUpdate=function(){var e=$(".toolRight .spotList li").length;$(".toolRight .spotList .itemTitle span").text(h.a.get("已添加的热点")+"("+e+")"),e>0?($(".toolRight .hotpoint .describ").addClass("hide"),$(".toolRight .hotpoint .spotList").removeClass("hide")):($(".toolRight .hotpoint .describ").removeClass("hide"),$(".toolRight .hotpoint .spotList").addClass("hide"))},e.cancelToDelSpot=function(t){e.sureToDel&&(t&&t.stopPropagation(),e.sureToDel.find(".DelConfirm").removeClass("open"),e.sureToDel=null)},e.addList=function(o){var i=$('
  • '+(o.billboard.label||h.a.get("未命名"))+'
    '+h.a.get("确定删除")+'
  • ');$(".toolRight .spotList ul").prepend(i),i.find(".icon").css("background-image",'url("'+D[o.style]+'")'),o.listElem=i,i[0].tag=o,i[0].player=this.player,e.spotNumUpdate();var n=i.find(".DelConfirm");i.on("click",function(o){if(setTimeout((function(){})),$(o.target).hasClass("DelConfirm")){o.stopPropagation();var a=r.a.prefixEditProPCApi+"/saveHot";I.a.savingInfo.deleteSpot={done:0};var A=I.a.getDataDeal(a,"deleteSpot",null,h.a.get("删除")),C=i[0].tag,l=g.a.recordGuider.deleteHotInfo(C.sid);g.a.gui.showWaiting(!0,"deleteSpot"),A.group[0]=function(){C.billboard.deleteMedia("photo"),C.billboard.deleteMedia("audio"),C.billboard.deleteMedia("video"),C.remove(),C.billboard.mediaData={},s.default.destroyNoUseBlob(C),C===e.chosenSpot&&(e.chosenSpot=null),i.remove(),e.sureToDel=null,e.spotNumUpdate(),I.a.saveCallBack.done("deleteSpot",null,h.a.get("删除"))};var c={sceneNum:r.a.projectNum,sid:C.sid,type:-1};l&&(g.a.recordGuider._is_modify=!0,c.capData=JSON.stringify(Store.capData),c.frameData=JSON.stringify(Store.frameData),c.playData=JSON.stringify(Store.playData),g.a.recordGuider.checkModify()),I.a.saveAjax(a,c,A)}else if($(o.target).hasClass("del"))o.stopPropagation(),e.cancelToDelSpot(),n.addClass("open"),e.sureToDel=i;else{if("transitioning"==t.mode)return;e.openList(this)}}.bind(i))},$(document).on("click",e.cancelToDelSpot),!isMobile){for(var Ae in t.model.tags)"videoPanoFlag"!=t.model.tags[Ae].state&&e.addList(t.model.tags[Ae]);e.spotNumUpdate()}$(".hotpointDetail .video .playBox>div:first-child").on("click",(function(){g.a.gui.playVideo(e.markTag.billboard.mediaObject.videoPlayer,!0)})),$(".hotpointDetail .audio .playBox>div:first-child").on("click",(function(){var t=e.markTag.billboard.mediaObject.audioPlayer;g.a.gui.playAudio(t,t.paused)}))};t.a=R},function(e,t,o){"use strict";var i={linearTween:function(e,t,o,i){return o*e/i+t},easeInQuad:function(e,t,o,i){return o*(e/=i)*e+t},easeOutQuad:function(e,t,o,i){return-o*(e/=i)*(e-2)+t},easeInOutQuad:function(e,t,o,i){return(e/=i/2)<1?o/2*e*e+t:-o/2*(--e*(e-2)-1)+t},easeInCubic:function(e,t,o,i){return o*(e/=i)*e*e+t},easeOutCubic:function(e,t,o,i){return e/=i,o*(--e*e*e+1)+t},easeInOutCubic:function(e,t,o,i){return(e/=i/2)<1?o/2*e*e*e+t:o/2*((e-=2)*e*e+2)+t},easeInQuart:function(e,t,o,i){return o*(e/=i)*e*e*e+t},easeOutQuart:function(e,t,o,i){return e/=i,-o*(--e*e*e*e-1)+t},easeInOutQuart:function(e,t,o,i){return(e/=i/2)<1?o/2*e*e*e*e+t:-o/2*((e-=2)*e*e*e-2)+t},easeInQuint:function(e,t,o,i){return o*(e/=i)*e*e*e*e+t},easeOutQuint:function(e,t,o,i){return e/=i,o*(--e*e*e*e*e+1)+t},easeInOutQuint:function(e,t,o,i){return(e/=i/2)<1?o/2*e*e*e*e*e+t:o/2*((e-=2)*e*e*e*e+2)+t},easeInSine:function(e,t,o,i){return-o*Math.cos(e/i*(Math.PI/2))+o+t},easeOutSine:function(e,t,o,i){return o*Math.sin(e/i*(Math.PI/2))+t},easeInOutSine:function(e,t,o,i){return-o/2*(Math.cos(Math.PI*e/i)-1)+t},easeInExpo:function(e,t,o,i){return o*Math.pow(2,10*(e/i-1))+t},easeOutExpo:function(e,t,o,i){return o*(1-Math.pow(2,-10*e/i))+t},easeInOutExpo:function(e,t,o,i){return(e/=i/2)<1?o/2*Math.pow(2,10*(e-1))+t:(e--,o/2*(2-Math.pow(2,-10*e))+t)},easeInCirc:function(e,t,o,i){return e/=i,-o*(Math.sqrt(1-e*e)-1)+t},easeOutCirc:function(e,t,o,i){return e/=i,e--,o*Math.sqrt(1-e*e)+t},easeInOutCirc:function(e,t,o,i){return(e/=i/2)<1?-o/2*(Math.sqrt(1-e*e)-1)+t:(e-=2,o/2*(Math.sqrt(1-e*e)+1)+t)},easeInElastic:function(e,t,o,i){var n=1.70158,a=0,g=o;return 0===e?t:1==(e/=i)?t+o:(a||(a=.3*i),g0?this.floorPosition.setY(t[0].point.y):this.floorPosition.setY(c.a.player.model.boundingBox.min.y),this.height=this.position.distanceTo(this.floorPosition),this.marker.position.copy(this.floorPosition),this.marker.position.y+=.01,this.marker.lookAt(new THREE.Vector3(0,1,0).add(this.marker.position))}},v.prototype.attachToPanoRenderer=function(e){this.panoRenderer=e,this.panoRenderer.on(i.a.TileRenderSuccess,this.onTileRendered.bind(this)),this.panoRenderer.on(i.a.PanoRenderComplete,this.onPanoRendered.bind(this)),this.panoRenderer.on(i.a.TileRenderFailure,this.onTileRenderFail.bind(this)),this.panoRenderer.on(i.a.UploadAttemptedForAllTiles,this.onUploadAttemptedForAllTiles.bind(this))};var E={};v.prototype.getWaitDeferred=function(e){var t=E[this.id];t||(t={},E[this.id]=t);var o=t[e];return o||(o={deferred:$.Deferred(),active:!1},t[e]=o),o},v.prototype.resetWaitDeferred=function(e){var t=this.getWaitDeferred(e);t.active=!1,t.deferred=$.Deferred()},v.prototype.clearWaitDeferreds=function(){var e=E[this.id];for(var t in e||(e={},E[this.id]=e),e)if(e.hasOwnProperty(t)){var o=e[t];o.active=!1,o.deferred=$.Deferred()}},v.prototype.loadTiledPano=function(){var e=(new THREE.Vector3,[]),t=[];return function(o,i,a,g,r,A){null!=g||(g=!0),null!=r||(r=!0);var C=this.getWaitDeferred(o),s=C.deferred,I=null,l=null;if(a&&("number"==typeof a?I=a:(I=a.hFov,l=a.vFov)),!this.isLoaded(o)){if(!C.active){if(C.active=!0,a){var c=m.a.matchingTilesInDirection(this,o,i,I,l);e[this.id+":"+o]={tileCount:0,targetTileCount:c},u.a.info("Loading partial pano: "+this.id+" with "+c+" tiles")}t[this.id]||(t[this.id]=!0,this.on(n.LoadComplete,function(e,t){var o=this.getWaitDeferred(e).deferred;o&&"pending"===o.state()&&this.highestPartialTileRenderOpCompleted>=e&&(o.resolve(e,t),this.resetWaitDeferred(e))}.bind(this)),this.on(n.LoadFailed,function(e){var t=this.getWaitDeferred(e).deferred;t&&"pending"===t.state()&&this.highestPartialTileRenderOpCompleted>=e&&(t.reject(e),this.resetWaitDeferred(e))}.bind(this)),this.on(n.TileLoaded,function(t,o,i){var n=this.getWaitDeferred(t).deferred;if(n&&"pending"===n.state()){n.notify(t,o,i);var a=e[this.id+":"+t];a&&(a.tileCount++,a.tileCount===a.targetTileCount&&(this.onPanoRendered(this.id,t,i,!0),n.resolve(t,i),this.resetWaitDeferred(t)))}}.bind(this)))}this.tileDownloader.clearForceQueue(),this.tileDownloader.forceQueueTilesForPano(this,o,i,I,l,A),this.tiledPanoRenderTarget=this.panoRenderer.activateTiledPano(this,this.qualityManager.getMaxNavPanoSize(),g),this.panoRenderer.renderPanoTiles(this.id,i,r)}return s.promise()}}(),v.prototype.onUploadAttemptedForAllTiles=function(e,t,o){e===this.id&&(t===this.qualityManager.getPanoSize(p.a.BASE)&&this.shouldRedrawOnBaseLoaded&&(this.shouldRedrawOnBaseLoaded=!1,this.panoRenderer.resetRenderStatus(this.id,!0,!1),this.panoRenderer.renderPanoTiles(this.id,null,!0,!0)))},v.prototype.onTileRendered=function(e,t,o,i){e===this.id&&this.emit(n.TileLoaded,t,o,i)},v.prototype.onPanoRendered=function(e,t,o,i){e===this.id&&(this.minimumTiledPanoLoaded=!0,this.updateSkyboxForZoomLevel(),t>this.highestPartialTileRenderOpCompleted&&(this.highestPartialTileRenderOpCompleted=t),!i&&t>this.highestFullTileRenderOpCompleted&&(this.highestFullTileRenderOpCompleted=t),this.emit("load",t),this.model.emit("load",this),this.emit(n.LoadComplete,t,o))},v.prototype.setZoomed=function(e){this.zoomed=e,this.updateSkyboxForZoomLevel()},v.prototype.ensureSkyboxReadyForRender=function(){this.tiled||(this.solidSkybox.loaded||(this.solidSkybox.needsUpdate=!0),this.solidSkybox.loaded=!0)},v.prototype.updateSkyboxForZoomLevel=function(){this.minimumTiledPanoLoaded&&this.model.updateProjectedPanos()},v.prototype.getSkyboxTexture=function(){return this.tiled?this.minimumTiledPanoLoaded?this.zoomed?this.panoRenderer.zoomRenderTarget.texture:this.tiledPanoRenderTarget.texture:null:this.solidSkybox},v.prototype.onTileRenderFail=function(e,t,o){e===this.id&&this.emit(n.LoadFailed,t)},v.prototype.isLoaded=function(e){if(this.tiled){if(e&&"string"==typeof e)throw new f.a("Wrong panoSize given to Panorama.isLoaded(); a tiled pano uses PanoSizeClass");return!!this.minimumTiledPanoLoaded&&(!e||this.highestPartialTileRenderOpCompleted>=e)}if(e&&"number"==typeof e)throw new f.a("Wrong panoSize given to Panorama.isLoaded(); a non-tiled pano uses high/low.");return!!this.solidSkybox.high||e in this.solidSkybox},v.prototype.loadCube=function(e){if(this.isLoaded(e))return u.a.info("Skipping load of pano, already loaded"),$.when();this.emit("loading",e),this.model.emit("loading",this);var t=this.getCubemapUrls(this.id,e);return $.when(h.a.loadImg(t)).then(function(t){return this.solidSkybox[e]=t,this.solidSkybox.minFilter=THREE.LinearFilter,"high"!==e&&this.solidSkybox.high||(this.solidSkybox.image=this.solidSkybox[e],this.solidSkybox.low=null),this.solidSkybox.needsUpdate=!0,this.emit("load",e),this.model.emit("load",this),this}.bind(this),function(){u.a.error("Downloading cubemap for pano",this.id,"failed"),this.failedLoadingAt=Date.now()}.bind(this),(function(){console.log("load cubeTex 出现问题?")}))},v.prototype.getCubemapUrls=function(e,t){return d.a.prefix+"images/images"+I.a.projectNum+"/pan/"+t+"/"+e+".jpg"},v.raycastsSkipped=0,v.raycastsDone=0,v.prototype.findNeighourPanos=function(){return this.model.panos.setNeighbour(this.id,this.id,!1),this.model.panos.forEach(function(e){if(e!==this&&(!this.model.panos.neighbourMap[this.id]||void 0===this.model.panos.neighbourMap[this.id][e.id])){var t=this.position.distanceTo(e.position);if(t>a.a.panoramaNeighbourMaxDistance)return this.model.panos.setNeighbour(this,e,!1),void v.raycastsSkipped++;var o=e.position.clone().sub(this.position).normalize(),i=new THREE.Raycaster(this.position,o.clone(),0,t).intersectObjects(this.model.colliders);v.raycastsDone++,this.model.panos.setNeighbour(this,e,0===i.length),a.a.showNeighbourRaycasts&&(i.length?this.floor.model.add(new THREE.ArrowHelper(o,this.position,i[0].distance,16711680)):this.floor.model.add(new THREE.ArrowHelper(o,this.position,t,16777215,0,0)))}}.bind(this)),this.model.panos.neighbourMap[this.id]},v.prototype.worldPosition=function(){return this.position},v.prototype.isAligned=function(){return!0},v.filters={inDirection:function(e,t,o){return function(i){return i.position.clone().sub(e).normalize().dot(t)>o}},inFloorDirection:function(e,t,o){return function(i){if(i.floorPosition2)var n=i.floorPosition2.clone().sub(e).setY(0).normalize();else n=i.floorPosition.clone().sub(e).setY(0).normalize();return n.dot(t)>o}},inPanoDirection:function(e,t,o){return o=a.a.navigation.panoScores?a.a.navigation.filterStrictness:o,function(i){var n=i.floorPosition.clone().sub(e).setY(0).normalize(),a=i.position.clone().sub(e).normalize();return n.dot(t.clone().setY(0).normalize())>o||a.dot(t)>o}},atFloor:function(e){return function(t){return!e||t.floor===e}},not:function(e){return function(t){return t!==e}},notIn:function(e){return function(t){return-1===e.indexOf(t)}},isLoaded:function(){return function(e){return e.isLoaded()}},isNotLoaded:function(){return function(e){return!e.isLoaded()}},isCloseEnoughTo:function(e,t){return function(o){return e.distanceTo(o.floorPosition2||o.floorPosition)t}},isNotBehindNormal:function(e,t){var o=new THREE.Vector3;return t=t.clone(),function(i){return o.copy(i.position).sub(e).normalize().dot(t)>0}},isNeighbourPanoTo:function(e){return function(t){return!e||!e.neighbourPanos||!!e.neighbourPanos[t.id]}},isNeighbourOfNeighbourTo:function(e){return function(t){return!!e.neighbourPanos[t.id]||e.neighbourUUIDs.some((function(o){var i=e.model.panos.get(o);return!!i&&i.neighbourPanos[t.id]}))}},isNotRecentlyFailed:function(e){return function(t){return Date.now()-t.failedLoadingAt>e}},isOnVisibleFloor:function(){return function(e){return!e.floor.hidden}},isPanoAligned:function(){return function(e){return e.isAligned()}},hasVideo:function(){return function(e){return!0===e.hasVideo}},isInFanAngle:function(e,t,o){return function(i){var n=t.setY(0),a=i.position.clone().sub(e).setY(0);return n.angleTo(a)<=o}}},v.sortFunctions={distanceToPoint:function(e){return function(t,o){return t.position.distanceTo(e)-o.position.distanceTo(e)}},floorDistanceToPoint:function(e){return function(t,o){return I.a.ifFish?t.floorPosition2.distanceTo(e)-o.floorPosition2.distanceTo(e):t.floorPosition.distanceTo(e)-o.floorPosition.distanceTo(e)}},choose:function(e){return function(t,o){return e.id===t.id?-1:e.id===o.id?1:0}}},v.scoreFunctions={distance:function(e,t){return t=t||a.a.navigation.distanceFactor,function(o){return e?e.position.distanceTo(o.position)*t:0}},distanceSquared:function(e,t){return t=t||a.a.navigation.distanceFactor,function(o){return I.a.ifFish?e?e.origin.distanceToSquared(o.origin)*t:0:e?e.position.distanceToSquared(o.position)*t:0}},direction:function(e,t){return function(o){return o.position.clone().sub(e).normalize().dot(t)*a.a.navigation.directionFactor}},angle:function(e,t){return function(o){return o.position.clone().sub(e).normalize().angleTo(t)*a.a.navigation.angleFactor}},inFieldOfView:function(e,t){return function(o){return o.position.clone().sub(e).normalize().dot(t)>.75?10:-1}},optionality:function(e){return function(t){return t.neighbourUUIDs.filter((function(t){return!(t in e.neighbourUUIDs)&&t!==e.id})).length*a.a.navigation.optionalityFactor}},penalizeHeightDifferenceUnder:function(e,t){return function(o){return e.y-o.position.y=0.0){float k1=(-b+sqrt(below))/(2.0*a);float k2=(-b-sqrt(below))/(2.0*a);float X1=k1*(x2-x1)+x1;float X2=k2*(x2-x1)+x1;float Y1=k1*(y2-y1)+y1;float Y2=k2*(y2-y1)+y1;if(X1<=max(x1,x2)&&X1>=min(x1,x2)&&Y1<=max(y1,y2)&&Y2>=min(y1,y2)){worldPosition0=vec3(X1,Y1,k1*(z2-z1)+z1);}else{worldPosition0=vec3(X2,Y2,k2*(z2-z1)+z1);}}vec3 positionLocalToPanoCenter0=worldPosition0.xyz-pano0Position;vec3 vWorldPosition0=(vec4(positionLocalToPanoCenter0,1.0)*pano0Matrix).xyz;vWorldPosition0.x*=-1.0;vec3 worldPosition1=worldPosition.xyz;x1=worldPosition.x,x2=cameraPos1.x,y1=worldPosition.y,y2=cameraPos1.y,z1=worldPosition.z,z2=cameraPos1.z;px=pano1Position.x,py=pano1Position.y,pz=pano1Position.z;a=(x2-x1)*(x2-x1)+(y2-y1)*(y2-y1)+(z2-z1)*(z2-z1);b=2.0*((x2-x1)*(x1-px)+(y2-y1)*(y1-py)+(z2-z1)*(z1-pz));c=(x1-px)*(x1-px)+(y1-py)*(y1-py)+(z1-pz)*(z1-pz)-radius*radius;below=b*b-4.0*a*c;if(below>=0.0){float k1=(-b+sqrt(below))/(2.0*a);float k2=(-b-sqrt(below))/(2.0*a);float X1=k1*(x2-x1)+x1;float X2=k2*(x2-x1)+x1;float Y1=k1*(y2-y1)+y1;float Y2=k2*(y2-y1)+y1;if(X1<=max(x1,x2)&&X1>=min(x1,x2)&&Y1<=max(y1,y2)&&Y2>=min(y1,y2)){worldPosition1=vec3(X1,Y1,k1*(z2-z1)+z1);}else{worldPosition1=vec3(X2,Y2,k2*(z2-z1)+z1);}}vec3 positionLocalToPanoCenter1=worldPosition1-pano1Position;vec3 vWorldPosition1=(vec4(positionLocalToPanoCenter1,1.0)*pano1Matrix).xyz;vWorldPosition1.x*=-1.0;\n#if defined(Not_Cube)\nvec4 colorFromPano0=texCubemapWith2D(pano0Map,vWorldPosition0);vec4 colorFromPano1=texCubemapWith2D(pano1Map,vWorldPosition1);\n#else\nvec4 colorFromPano0=textureCube(pano0Map,vWorldPosition0.xyz);vec4 colorFromPano1=textureCube(pano1Map,vWorldPosition1.xyz);\n#endif\n\tvec4 colorFromPanos;\tif(blackout==0){\t\tcolorFromPanos=mix(colorFromPano0,colorFromPano1,progress);\t}else if(blackout==1){\t\tcolorFromPanos=mix(colorFromPano0,BLACK,min(1.0,progress*2.0));\t\tcolorFromPanos=mix(colorFromPanos,colorFromPano1,max(0.0,progress*2.0-1.0));\t}else if(blackout==2){\t\tcolorFromPanos=mix(colorFromPano0,BLACK,progress);\t}else if(blackout==3){\t\tcolorFromPanos=mix(BLACK,colorFromPano1,max(0.0,progress*2.0-1.0));\t}vec4 colorFromTexture=texture2D(map,vUv);colorFromPanos=mix(colorFromPanos,colorFromTexture,modelAlpha);float whiteness=1.0-smoothstep(0.1,0.2,opacity);colorFromPanos=mix(colorFromPanos,vec4(0.5,0.5,0.5,1.0),whiteness);gl_FragColor=vec4(colorFromPanos.rgb,opacity);}"},fishSky:{uniforms:{opacity:{type:"f",value:1},pano1Map:{type:"t",value:null},pano1Matrix:{type:"m4",value:new THREE.Matrix4}},vertexShader:n+"uniform mat4 pano1Matrix;varying vec3 vWorldPosition;void main(){vWorldPosition=(vec4(position,1.0)*pano1Matrix).xyz;gl_Position=projectionMatrix*modelViewMatrix*vec4(position,1.0);}",fragmentShader:a+"uniform float opacity;varying vec3 vWorldPosition;\n#define PI 3.141592653 \n\n#if defined(Not_Cube)\nuniform sampler2D pano1Map;vec4 texCubemapWith2D(sampler2D t,vec3 dir){dir=normalize(dir);float tx=atan(dir.x,dir.z)/(PI*2.0)+0.5;float ty=acos(dir.y)/PI;vec4 color=texture2D(t,vec2(tx,ty));return color;}\n#else\nuniform samplerCube pano1Map;\n#endif\nvoid main(){\n#if defined(Not_Cube)\nvec4 colorFromPanos=texCubemapWith2D(pano1Map,vec3(-1.0*vWorldPosition.x,vWorldPosition.yz));\n#else\nvec4 colorFromPanos=textureCube(pano1Map,vec3(-1.0*vWorldPosition.x,vWorldPosition.yz));\n#endif\ngl_FragColor=vec4(colorFromPanos.rgb,opacity);}"},SkyVideo:{uniforms:{videoMap:{type:"t",value:null},pano1Matrix:{type:"m4",value:new THREE.Matrix4},u1:{type:"f",value:0},u2:{type:"f",value:1}},vertexShader:n+"uniform mat4 pano1Matrix;varying vec3 vWorldPosition;void main(){vWorldPosition=(vec4(position,1.0)*pano1Matrix).xyz;gl_Position=projectionMatrix*modelViewMatrix*vec4(position,1.0);}",fragmentShader:a+"varying vec3 vWorldPosition;\n#define PI 3.141592653\n uniform float u1;uniform float u2;uniform sampler2D videoMap;vec4 texCubemapWith2D(vec3 dir){dir=normalize(dir);float tx=atan(dir.x,dir.z)/(PI*2.0)+0.5;if(tx>u1&&tx oh ? vy : oh;\n\t\n\t\t\tfloat camx, camy;\n\t\n\t\t\tcamx = (ptIn_x - vy / 2.0) / size;\n\t\t\tcamy = (ptIn_y - oh / 2.0) / size;\n\t\n\t\t\tfloat lon, lat;\n\t\n\t\t\tlon = camx * 2.0 * 3.1415926;\n\t\t\tlat = -1.0 * camy * 2.0 * 3.1415926;\n\t\n\t\t\tfloat zq, zw, zr;\n\t\n\t\t\tzq = 0.33 * tx + cos(lat) * sin(lon);\n\t\t\tzw = 0.33 * ty - sin(lat);\n\t\t\tzr = 0.33 * tz + cos(lat) * cos(lon); \n\t\n\t\n\t\t\tfloat theta = atan(-zw, zq);\n\t\n\t\t\tfloat al = atan( sqrt(zq * zq + zw * zw), zr);\n\t\n\t\t\tfloat x12, x13;\n\t\n\t\t\tfloat wea = f42(al);\n\t\t\tfloat r = focal_final * tan(wea);\n\t\n\t\t\tx12 = cx + r * cos(theta);\n\t\t\tx13 = cy - r * sin(theta);\n\t\n\t\t\tptOut_x = x13 / vm;\n\t\t\tptOut_y = x12 / vb;\n\t\t\t\n\t\t\t\n\t\t\tvec2 samplerCoord = vec2(ptOut_x, ptOut_y);\n\n\t\t\t#if Mapping == 1\n\t\t\t\tsamplerCoord = uv2CameraCoord(samplerCoord);\n\t\t\t#endif\n\t\n\t\t\treturn texture2D(texture, samplerCoord);\n\t\n\t\t}\n\t\n\t\n\t\n\t\tvoid main() \n\t\t{\n\t\t\tvec2 dc = f12(qg);\n\t\n\t\t\tvec4 ft = f44(videoMap, dc);\n\t\t\tvec4 fb = texture2D(pano1Map, dc);\n\t\n\t\t\tvec4 color = vec4(0.0);\n\n\t\t\t#if Mapping == 0\n\t\t\t\tfloat alpha = smoothstep(0.3, 0.33, dc.x) * 1.0 - smoothstep(0.66, 0.7, dc.x);\n\t\t\t\tcolor = mix(fb, ft, alpha * float(videoReady));\n\t\t\t#elif Mapping == 1\n\t\t\t\tfloat alphaX = smoothstep( 0.416, 0.426, dc.x) * 1.0 - smoothstep(0.573, 0.583, dc.x);\n\t\t\t\tfloat alphaY = smoothstep( 0.283, 0.293, dc.y) * 1.0 - smoothstep(0.706, 0.716, dc.y);\n\t\t\t\tcolor = mix(fb, ft, alphaX * alphaY * float(videoReady));\t\t\n\t\t\t#endif\n\n\t\t\n\t\t\tgl_FragColor = vec4(color.xyz, 1.0);\n\t\n\t\t}\n\t\t"},floorLogo:{uniforms:{map:{type:"t",value:null},opacity:{type:"f",value:0},opaRadius:{type:"f",value:.2}},vertexShader:"varying vec2 vUv;void main() { vUv = uv; gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );}",fragmentShader:"uniform sampler2D map; uniform float opacity;uniform float opaRadius;varying vec2 vUv; void main() { vec2 vUv2 = vec2(vUv.x*2.0 - 1.0, vUv.y*2.0 - 1.0); vec4 colorFromTexture = texture2D( map, vUv ); float opa = 1.0; float r = vUv2.x*vUv2.x + vUv2.y*vUv2.y; if(r > 1.0) opa = 0.0; else if(r < opaRadius)opa = 1.0; else{\tfloat a = -1.0 / ((opaRadius - 1.0)*(opaRadius - 1.0));\tfloat b = -2.0 * a * opaRadius;\tfloat c = 1.0 + a * opaRadius * opaRadius; opa = a * r*r + b * r + c; } gl_FragColor = vec4(colorFromTexture.rgb, opacity * min(colorFromTexture.a, opa) );}"},basicTextured:{uniforms:{tDiffuse:{type:"t",value:null},alpha:{type:"f",value:1}},vertexShader:"varying vec2 vUv;\nvoid main() {\n vUv = uv;\n gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\n}",fragmentShader:"varying vec2 vUv;\nuniform float alpha;\nuniform sampler2D tDiffuse;\nvoid main() {\n vec4 texColor = texture2D(tDiffuse, vUv);\n gl_FragColor = vec4(texColor.rgb, texColor.a * alpha);\n}"},cube:{uniforms:{map:{type:"t",value:null},opacity:{type:"f",value:1}},vertexShader:n+"varying vec3 vWorldPosition;\n\nvoid main() {\n vWorldPosition = position;\n gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n}\n",fragmentShader:a+"uniform samplerCube map;\nuniform float opacity;\n\nvarying vec3 vWorldPosition;\n\nvoid main() {\n vec4 color = textureCube( map, vec3( -vWorldPosition.x, vWorldPosition.yz ) );\n gl_FragColor = vec4(color.rgb, opacity);\n}\n"},copyCubeMap:{uniforms:{tDiffuse:{type:"t",value:null},alpha:{type:"f",value:1}},vertexShader:"varying vec3 vWorldPos;\nvoid main() {\n vWorldPos = vec3(-position.x, -position.y, position.z);\n gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\n}",fragmentShader:"varying vec3 vWorldPos;\nuniform float alpha;\nuniform samplerCube tDiffuse;\nvoid main() {\n vec4 texColor = textureCube(tDiffuse, vWorldPos);\n gl_FragColor = vec4(texColor.rgb, texColor.a * alpha);\n}"},modelOutside:{uniforms:{map:{type:"t",value:null},opacity:{type:"f",value:1}},vertexShader:n+"varying vec2 vUv;\n\nvoid main() {\n\n vUv = uv;\n gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n\n}\n",fragmentShader:a+"uniform sampler2D map;\nuniform float opacity;\nvarying vec2 vUv;\n\nvec4 white = vec4(0.5, 0.5, 0.5, 1.0);\n\nvoid main() {\n\n vec4 colorFromTexture = texture2D( map, vUv );\n float whiteness = 1.0 - smoothstep(0.1, 0.2, opacity);\n colorFromTexture = mix(colorFromTexture, white, whiteness);\n gl_FragColor = vec4(colorFromTexture.rgb, opacity);\n\n}\n"},ribbon:{uniforms:{map:{type:"t",value:null},opacity:{type:"f",value:1},color:{type:"c",value:new THREE.Color(i.a.path.color)}},vertexShader:n+"varying vec2 vUv;\nvarying vec3 vN;\nvarying vec4 vP;\n\nvoid main() {\n\n vUv = uv;\n vN= normalMatrix * normal;\n vP = modelViewMatrix * vec4( position, 1.0 );\n gl_Position = projectionMatrix * vP;\n}\n",fragmentShader:a+"uniform sampler2D map;\nuniform float opacity;\nvarying vec2 vUv;\nuniform vec3 color;\nvarying vec3 vN; // show-1182\nvarying vec4 vP; // show-1182\n\nvoid main() {\n\t// TODO add scroll-in and pulsing behaviors\n\tvec3 vNn = normalize(vN);\n\tvec3 vPn = normalize(vP.xyz);\n\tfloat f = pow(1.0-abs(dot(vNn,vPn)),0.2);\n vec4 colorFromTexture = texture2D( map, vUv );\n colorFromTexture.a *= f;\n gl_FragColor = vec4((color.rgb*colorFromTexture.rgb),\n \t\t\t\t\t\t(opacity*colorFromTexture.a));\n}\n"},waypoint:{uniforms:{map:{type:"t",value:null},opacity:{type:"f",value:1},pulse:{type:"f",value:1},nearFade:{type:"v2",value:new THREE.Vector2(2*i.a.insideNear,2*i.a.path.waypointIndoorRadius)},color:{type:"c",value:new THREE.Color(i.a.reticuleColor)}},vertexShader:n+"varying vec2 vUv;\nvarying vec4 vPointView;\n\nvoid main() {\n\n vUv = uv;\n vPointView = modelViewMatrix * vec4( position, 1.0 );\n gl_Position = projectionMatrix * vPointView;\n\n}\n",fragmentShader:a+"uniform sampler2D map;\nuniform float opacity;\nuniform float pulse; // another opacity, with a different clock\nuniform vec2 nearFade;\nvarying vec2 vUv;\nvarying vec4 vPointView;\nuniform vec3 color;\n\nvoid main() {\n\t// TODO add scroll-in and pulsing behaviors\n\tfloat depthFade = min(1.0, (abs(vPointView.z)-nearFade.x)/(nearFade.y-nearFade.x));\n vec4 colorFromTexture = texture2D( map, vUv );\t\t// we only use the alpha!\n gl_FragColor = vec4(color.rgb,\n \t\t\t\t\t\t(pulse*opacity*colorFromTexture.a * depthFade));\n}\n"},modelDebug:{uniforms:{map:{type:"t",value:null},modelAlpha:{type:"f",value:i.a.modelAlpha},depthmapRatio:{type:"f",value:0},opacity:{type:"f",value:1},progress:{type:"f",value:0},considerOcclusion:{type:"i",value:i.a.fancierTransition},highlightPanoSelection:{type:"i",value:0},useThirdPano:{type:"i",value:i.a.useThirdPano},pano0Map:{type:"t",value:null},pano0Depth:{type:"t",value:null},pano0Position:{type:"v3",value:new THREE.Vector3},pano0Matrix:{type:"m4",value:new THREE.Matrix4},pano0Weight:{type:"f",value:i.a.transition.pano0Weight},pano1Map:{type:"t",value:null},pano1Depth:{type:"t",value:null},pano1Position:{type:"v3",value:new THREE.Vector3},pano1Matrix:{type:"m4",value:new THREE.Matrix4},pano1Weight:{type:"f",value:i.a.transition.pano1Weight},pano2Map:{type:"t",value:null},pano2Depth:{type:"t",value:null},pano2Position:{type:"v3",value:new THREE.Vector3},pano2Matrix:{type:"m4",value:new THREE.Matrix4},pano2Weight:{type:"f",value:i.a.transition.pano2Weight}},vertexShader:n+"uniform vec3 pano0Position;\nuniform mat4 pano0Matrix;\n\nuniform vec3 pano1Position;\nuniform mat4 pano1Matrix;\n\nuniform vec3 pano2Position;\nuniform mat4 pano2Matrix;\n\nvarying vec2 vUv;\nvarying vec3 vWorldPosition0;\nvarying vec3 vWorldPosition1;\nvarying vec3 vWorldPosition2;\n\nvarying vec4 worldPosition;\n\nvoid main() {\n\n vUv = uv;\n worldPosition = modelMatrix * vec4(position, 1.0);\n\n vec3 positionLocalToPanoCenter0 = worldPosition.xyz - pano0Position;\n vWorldPosition0 = (vec4(positionLocalToPanoCenter0, 1.0) * pano0Matrix).xyz;\n vWorldPosition0.x *= -1.0;\n\n vec3 positionLocalToPanoCenter1 = worldPosition.xyz - pano1Position;\n vWorldPosition1 = (vec4(positionLocalToPanoCenter1, 1.0) * pano1Matrix).xyz;\n vWorldPosition1.x *= -1.0;\n\n vec3 positionLocalToPanoCenter2 = worldPosition.xyz - pano2Position;\n vWorldPosition2 = (vec4(positionLocalToPanoCenter2, 2.0) * pano2Matrix).xyz;\n vWorldPosition2.x *= -1.0;\n\n gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n\n}\n",fragmentShader:a+"uniform sampler2D map;\nuniform float depthmapRatio;\nuniform float modelAlpha;\nuniform float opacity;\nuniform float progress;\nuniform int considerOcclusion;\nuniform int highlightPanoSelection;\nuniform int useThirdPano;\n\nuniform vec3 pano0Position;\nuniform samplerCube pano0Map;\nuniform samplerCube pano0Depth;\nuniform float pano0Weight;\n\nuniform vec3 pano1Position;\nuniform samplerCube pano1Map;\nuniform samplerCube pano1Depth;\nuniform float pano1Weight;\n\nuniform vec3 pano2Position;\nuniform samplerCube pano2Map;\nuniform samplerCube pano2Depth;\nuniform float pano2Weight;\n\nvarying vec2 vUv;\nvarying vec3 vWorldPosition0;\nvarying vec3 vWorldPosition1;\nvarying vec3 vWorldPosition2;\n\nvarying vec4 worldPosition;\n\nvoid main() {\n\n vec4 depthFromPano0 = textureCube( pano0Depth, vWorldPosition0.xyz );\n vec4 depthFromPano1 = textureCube( pano1Depth, vWorldPosition1.xyz );\n vec4 depthFromPano2 = textureCube( pano2Depth, vWorldPosition2.xyz );\n\n vec4 colorFromPano0 = textureCube( pano0Map, vWorldPosition0.xyz );\n vec4 colorFromPano1 = textureCube( pano1Map, vWorldPosition1.xyz );\n vec4 colorFromPano2 = textureCube( pano2Map, vWorldPosition2.xyz );\n\n float distanceToPano0 = distance(worldPosition.xyz, pano0Position);\n float distanceToPano1 = distance(worldPosition.xyz, pano1Position);\n float distanceToPano2 = distance(worldPosition.xyz, pano2Position);\n\n float cameraToPano0 = distance(cameraPosition.xyz, pano0Position);\n float cameraToPano1 = distance(cameraPosition.xyz, pano1Position);\n float cameraToPano2 = distance(cameraPosition.xyz, pano2Position);\n\n float contributionFromPano0 = cameraToPano0 == 0.0 ? 1000.0 : pano0Weight / cameraToPano0;\n float contributionFromPano1 = cameraToPano1 == 0.0 ? 1000.0 : pano1Weight / cameraToPano1;\n float contributionFromPano2 = cameraToPano2 == 0.0 ? 1000.0 : pano2Weight / cameraToPano2;\n\n contributionFromPano0 *= 1.0 / distanceToPano0;\n contributionFromPano1 *= 1.0 / distanceToPano1;\n contributionFromPano2 *= 1.0 / distanceToPano2;\n\n if(considerOcclusion == 1) {\n bool occludedFromPano0 = distanceToPano0 / 10.0 > 1.01 - depthFromPano0.x;\n bool occludedFromPano1 = distanceToPano1 / 10.0 > 1.01 - depthFromPano1.x;\n bool occludedFromPano2 = distanceToPano2 / 10.0 > 1.01 - depthFromPano2.x;\n\n if(occludedFromPano0){contributionFromPano0 *= 0.1;}\n if(occludedFromPano1){contributionFromPano1 *= 0.1;}\n if(occludedFromPano2){contributionFromPano2 *= 0.1;}\n //if(occludedFromPano0 && occludedFromPano1 && !occludedFromPano2) { contributionFromPano2 += 0.5; }\n }\n\n float contributionSum = contributionFromPano0 + contributionFromPano1 + contributionFromPano2;\n contributionFromPano0 /= contributionSum;\n contributionFromPano1 /= contributionSum;\n contributionFromPano2 /= contributionSum;\n\n vec4 colorFromPanos = colorFromPano0 * contributionFromPano0;\n colorFromPanos += colorFromPano1 * contributionFromPano1;\n colorFromPanos += colorFromPano2 * contributionFromPano2;\n\n vec4 depthFromPanos = depthFromPano0 * contributionFromPano0;\n depthFromPanos += depthFromPano1 * contributionFromPano1;\n depthFromPanos += depthFromPano2 * contributionFromPano2;\n\n vec4 colorFromTexture = texture2D( map, vUv );\n colorFromPanos = mix(colorFromPanos, colorFromTexture, modelAlpha);\n\n if(highlightPanoSelection == 1) {\n colorFromPanos.r = contributionFromPano0;\n colorFromPanos.g = contributionFromPano1;\n colorFromPanos.b = contributionFromPano2;\n }\n\n gl_FragColor = vec4(mix(colorFromPanos, depthFromPanos, depthmapRatio).rgb, opacity);\n\n}\n"},customDepth:{uniforms:{panoPosition:{type:"v3",value:new THREE.Vector3}},vertexShader:n+"varying vec4 worldPosition;\n\nvoid main() {\n\n worldPosition = modelMatrix * vec4(position, 1.0);\n gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n\n}\n",fragmentShader:a+"uniform vec3 panoPosition;\nvarying vec4 worldPosition;\n\nvoid main() {\n\n float depth = distance(worldPosition.xyz, panoPosition);\n float color = 1.0 - depth / 10.0;\n gl_FragColor = vec4(color, color, color, 1.0);\n\n}\n"},skysphere:{uniforms:{radius:{type:"f",value:2500}},vertexShader:n+"varying vec4 worldPosition;\n\nvoid main() {\n\n worldPosition = modelMatrix * vec4(position, 1.0);\n gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n\n}\n",fragmentShader:a+"varying vec4 worldPosition;\nuniform float radius;\n\nvoid main() {\n\n vec4 topColor = vec4(0.4, 0.4, 0.4, 1.0);\n vec4 bottomColor = vec4(0.2, 0.2, 0.2, 1.0);\n float normalizedHeight = (worldPosition.y + radius) / (radius * 2.0);\n float ratio = smoothstep(0.0, 0.5, normalizedHeight);\n gl_FragColor = mix(bottomColor, topColor, ratio);\n\n}\n"},tagDisc:{uniforms:{opacity:{type:"f",value:1},dark:{type:"i",value:0},map:{type:"t",value:null}},vertexShader:n+"varying vec2 vUv;\nvoid main() {\n vUv = uv;\n gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\n}",fragmentShader:a+"uniform float opacity;\nuniform int dark;\nuniform sampler2D map;\n \n\nvarying vec2 vUv;\n\nvoid main() {\n vec4 color = texture2D(map, vUv); \n if(dark == 1 && (color.r + color.g + color.b < 240.0*3.0/255.0)){\n\t color.rgb *= 0.9;\n } \n gl_FragColor = vec4(color.rgb, color.a * opacity);\n}\n"},videoPanoMarker:{uniforms:{progress:{type:"f",value:0},map0:{type:"t",value:null},map1:{type:"t",value:null},map2:{type:"t",value:null},opacity:{type:"f",value:1}},vertexShader:n+"\n\t\t\tuniform float progress;\n\t\t\tvarying vec2 vUv0; varying vec2 vUv1; varying vec2 vUv2;\n\t\t\t vec2 Scale(vec2 vuv, float scale){\n\t\t\t\tscale = 1.0/scale; \n\t\t\t \tvuv.x=(uv.x-0.5) * scale + 0.5; \n\t\t \t \tvuv.y=(uv.y-0.5) * scale + 0.5 ; \n\t \t\t \treturn vuv ; \t\t\t\t\t \t\t\n\t\t\t }\t\n\n\t\t\t void main(){\n\t\t\t \tfloat baseScale = 0.78;\n\t\t\t \tfloat s1 = 1.0; float s2 = 1.28;\n\t\t\t\tfloat scale1 = progress * (s2 - s1) + s1;\n\t\t\t\tvUv1 = Scale(uv, scale1 * baseScale);\n\t\t\t\tfloat scale2;\n\t\t\t\tif(progress < 0.5){\n\t\t\t\t\tfloat s1 = 1.0; float s2 = 1.16; \n\t\t\t\t\tscale2 = 2.0 * progress * (s2 - s1) + s1;\n\t\t\t\t}else{\n\t\t\t\t\tfloat s1 = 1.16; float s2 = 1.27;\n\t\t\t\t\tscale2 = 2.0 *(progress - 0.5) * (s2 - s1) + s1;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tvUv2 = Scale(uv, scale2 * baseScale);\n \t\t\t\tvUv0 = Scale(uv, baseScale);\n\n \t\t\t\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n\n\n\n\t\t\t}\n\n\t\t",fragmentShader:a+"\n\t\t\tuniform sampler2D map0;uniform sampler2D map1; uniform sampler2D map2;\n\t\t\tuniform float opacity;\n\t\t\tuniform float progress;\n\t\t\tvec4 noRepeat(sampler2D sampler, vec2 uv){\t\t\t\t\t \n\t\t \t vec4 color;\n\t\t \t\t if(uv.x<0.0) \t color = vec4(0.0, 0.0, 0.0, 0.0) ;\n\t\t \t\t else if(uv.x>1.0) color = vec4(0.0, 0.0, 0.0, 0.0) ;\n\t\t \t\t else if(uv.y<0.0) color = vec4(0.0, 0.0, 0.0, 0.0) ;\n\t\t\t\t else if(uv.y>1.0) color = vec4(0.0, 0.0, 0.0, 0.0) ;\t\n\t\t\t\t else color = texture2D(sampler, uv);\n\t\t \t\t return color ;\t\t\n\t\t\t }\n\t\t\t vec4 mixColor(vec4 downColor,vec4 upColor){\n\t\t\t \treturn vec4(upColor.rgb * upColor.a + (1.0 - upColor.a) * downColor.rgb, upColor.a+downColor.a);//下层的分量通过上层的a来决定,暂时这么设置\n\t\t\t\t//vec4 sum = downColor + upColor; \n\t\t\t\t//if(sum.a == 0.0){\n\t\t\t\t//\treturn sum;\n\t\t\t\t//}\n\t\t\t\t//float upPct = upColor.a / sum.a;\n\t\t\t\t//float downPct = downColor.a / sum.a; \n\t\t\t\t//return vec4(upColor.rgb * upPct + downColor.rgb * downPct , sum.a );\n\t\t\t }\n\t\t\t varying vec2 vUv0; varying vec2 vUv1; varying vec2 vUv2; \n\t\t\t void main(){\n\t\t\t \tfloat op1, op2;\n\t\t\t \tif(progress<0.5){\n\t\t\t \t\top1 = 0.49; \n\t\t\t \t\top2 = 2.0 * progress * (0.48 - 1.0) + 1.0;\n\t\t\t \t}else{\n\t\t\t\t\top1 = 2.0 * (progress - 0.5) * (0.0 - 0.49) + 0.49;\n\t\t\t\t\top2 = 2.0 * (progress - 0.5) * (0.0 - 0.48) + 0.48;\n\t\t\t \t}\n\n\t\t\t \tvec4 color0 = noRepeat(map0, vUv0);\n\t\t\t \tvec4 color1 = noRepeat(map1, vUv1);\n\t\t\t \tvec4 color2 = noRepeat(map2, vUv2);\n\t\t\t \tcolor1.a *= op1;\n\t\t\t \tcolor2.a *= op2;\n\t\t\t\t \n\t\t\t\t\n\t\t\t\t#if defined(useColor2) \n\t\t\t\t\tgl_FragColor = mixColor(mixColor(color0 , color1), color2); //为什么苹果渲染的发黑//这样稍微柔和一些\n\t\t\t\t#else\t\n\t\t\t\t\tgl_FragColor = mixColor(mixColor(color2 , color0), color1 ); //这个叠放顺序也是试出来比较好的一种。color0基底由于外框部分都是0,0,0,0作为下层会被取一部分黑色,所以只能放上层,而内层的color1也要放上层,所以color2就是最下层。\n \t\t\t\t#endif \n\t\t\t\tgl_FragColor.a *= opacity;\n\t\t\t }\n\n\t\t"}};t.a=g},function(e,t,o){"use strict";t.a={Move:"move",MoveComplete:"move.complete",ModeChanged:"mode.changed",ModeChanging:"mode.changing",PanoChosen:"pano.chosen",ClosestPanoChanging:"closest.pano.changing",WarpStarted:"warp.started",WarpInterrupted:"warp.interrupted",WarpEnded:"warp.ended",FlyinFinished:"flyin.finished",FlyingStarted:"flying.started",FlyingInterrupted:"flying.interrupted",FlyingEnded:"flying.ended",Ready:"ready",StartInside:"start.inside",StartOutside:"start.outside",ViewChanged:"view.changed",WarpInterruptedWithFlyTo:"warp.interrupted.flyto",InputStart:"input.start"}},function(e,t,o){e.exports=o(95)},function(e,t,o){"use strict";var i={ZERO:48,ONE:49,TWO:50,THREE:51,FOUR:52,FIVE:53,SIX:54,SEVEN:55,EIGHT:56,NINE:57,LEFTARROW:37,UPARROW:38,RIGHTARROW:39,DOWNARROW:40,A:65,B:66,C:67,D:68,E:69,F:70,G:71,H:72,I:73,J:74,K:75,L:76,M:77,N:78,O:79,P:80,Q:81,R:82,S:83,T:84,U:85,V:86,W:87,X:88,Y:89,Z:90,SPACE:32,RETURN:13,SEMICOLON:186,PLUSEQUALS:187,DASHUNDERSCORE:189,OPENBRACKET:219};o(7).a.detectFirefox()&&(i.SEMICOLON=59,i.PLUSEQUALS=61,i.DASHUNDERSCORE=173),t.a=i},function(e,t){e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}},function(e,t,o){"use strict";t.a={Move:"move",InteractionDirect:"interaction.direct",InteractionKey:"interaction.key",InteractionGui:"interaction.gui",FlyInDirection:"fly.direction",InputStart:"input.start",Pinch:"input.pinch",Scroll:"input.scroll",AutoPanInterrupt:"autopan.interrupt",AutoPanComplete:"autopan.complete",AutoPanClamped:"autopan.clamped",LongTap:"longtap"}},function(e,t,o){"use strict";o(124);var i,n,a={};a.RADIANS_PER_DEGREE=Math.PI/180,a.DEGREES_PER_RADIAN=180/Math.PI,a.Vector3=function(e,t,o){this.x=e||0,this.y=t||0,this.z=o||0},a.Matrix4=function(){this.elements=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),arguments.length>0&&console.error("MathLight.Matrix4: the constructor no longer reads arguments. use .set() instead.")},a.Matrix4.prototype={identity:function(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this},copy:function(e){return this.elements.set(e.elements),this},applyToVector3:function(e){var t=e.x,o=e.y,i=e.z,n=this.elements;return e.x=n[0]*t+n[4]*o+n[8]*i+n[12],e.y=n[1]*t+n[5]*o+n[9]*i+n[13],e.z=n[2]*t+n[6]*o+n[10]*i+n[14],this},getInverse:function(e,t){var o=this.elements,i=e.elements,n=i[0],a=i[1],g=i[2],r=i[3],A=i[4],C=i[5],s=i[6],I=i[7],l=i[8],c=i[9],d=i[10],u=i[11],h=i[12],p=i[13],f=i[14],m=i[15],v=c*f*I-p*d*I+p*s*u-C*f*u-c*s*m+C*d*m,y=h*d*I-l*f*I-h*s*u+A*f*u+l*s*m-A*d*m,b=l*p*I-h*c*I+h*C*u-A*p*u-l*C*m+A*c*m,w=h*c*s-l*p*s-h*C*d+A*p*d+l*C*f-A*c*f,E=n*v+a*y+g*b+r*w;if(0===E){var T="MathLight.Matrix4.getInverse(): can't invert matrix, determinant is 0";if(t)throw new Error(T);return console.warn(T),this.identity()}var P=1/E;return o[0]=v*P,o[1]=(p*d*r-c*f*r-p*g*u+a*f*u+c*g*m-a*d*m)*P,o[2]=(C*f*r-p*s*r+p*g*I-a*f*I-C*g*m+a*s*m)*P,o[3]=(c*s*r-C*d*r-c*g*I+a*d*I+C*g*u-a*s*u)*P,o[4]=y*P,o[5]=(l*f*r-h*d*r+h*g*u-n*f*u-l*g*m+n*d*m)*P,o[6]=(h*s*r-A*f*r-h*g*I+n*f*I+A*g*m-n*s*m)*P,o[7]=(A*d*r-l*s*r+l*g*I-n*d*I-A*g*u+n*s*u)*P,o[8]=b*P,o[9]=(h*c*r-l*p*r-h*a*u+n*p*u+l*a*m-n*c*m)*P,o[10]=(A*p*r-h*C*r+h*a*I-n*p*I-A*a*m+n*C*m)*P,o[11]=(l*C*r-A*c*r-l*a*I+n*c*I+A*a*u-n*C*u)*P,o[12]=w*P,o[13]=(l*p*g-h*c*g+h*a*d-n*p*d-l*a*f+n*c*f)*P,o[14]=(h*C*g-A*p*g-h*a*s+n*p*s+A*a*f-n*C*f)*P,o[15]=(A*c*g-l*C*g+l*a*s-n*c*s-A*a*d+n*C*d)*P,this},makeRotationFromQuaternion:function(e){var t=this.elements,o=e.x,i=e.y,n=e.z,a=e.w,g=o+o,r=i+i,A=n+n,C=o*g,s=o*r,I=o*A,l=i*r,c=i*A,d=n*A,u=a*g,h=a*r,p=a*A;return t[0]=1-(l+d),t[4]=s-p,t[8]=I+h,t[1]=s+p,t[5]=1-(C+d),t[9]=c-u,t[2]=I-h,t[6]=c+u,t[10]=1-(C+l),t[3]=0,t[7]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,this}},a.Quaternion=function(e,t,o,i){this._x=e||0,this._y=t||0,this._z=o||0,this._w=void 0!==i?i:1},a.Quaternion.prototype={get x(){return this._x},set x(e){this._x=e},get y(){return this._y},set y(e){this._y=e},get z(){return this._z},set z(e){this._z=e},get w(){return this._w},set w(e){this._w=e},copy:function(e){this._x=e.x,this._y=e.y,this._z=e.z,this._w=e.w},inverse:function(){return this.conjugate().normalize()},conjugate:function(){return this._x*=-1,this._y*=-1,this._z*=-1,this},length:function(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)},normalize:function(){var e=this.length();return 0===e?(this._x=0,this._y=0,this._z=0,this._w=1):(e=1/e,this._x=this._x*e,this._y=this._y*e,this._z=this._z*e,this._w=this._w*e),this},setFromAxisAngle:function(e,t){var o=t/2,i=Math.sin(o);return this._x=e.x*i,this._y=e.y*i,this._z=e.z*i,this._w=Math.cos(o),this},setFromUnitVectors:function(e,t){return void 0===i&&(i=new a.Vector3),(n=a.dot(e,t)+1)<1e-6?(n=0,Math.abs(e.x)>Math.abs(e.z)?a.setVector(i,-e.y,e.x,0):a.setVector(i,0,-e.z,e.y)):a.cross(e,t,i),this._x=i.x,this._y=i.y,this._z=i.z,this._w=n,this.normalize()},multiply:function(e){return this.multiplyQuaternions(this,e)},premultiply:function(e){return this.multiplyQuaternions(e,this)},multiplyQuaternions:function(e,t){var o=e._x,i=e._y,n=e._z,a=e._w,g=t._x,r=t._y,A=t._z,C=t._w;return this._x=o*C+a*g+i*A-n*r,this._y=i*C+a*r+n*g-o*A,this._z=n*C+a*A+o*r-i*g,this._w=a*C-o*g-i*r-n*A,this}},a.convertWorkshopVector=function(e){return new a.Vector3(-e.x,e.y,e.z)},a.convertWorkshopQuaternion=function(e){return new a.Quaternion(-e.x,e.y,e.z,-e.w).multiply(new a.Quaternion(Math.sqrt(2)/2,Math.sqrt(2)/2,0,0))},a.convertWorkshopOrthoZoom=function(e){return-1===e?-1:e*($("#player").width()/$("#player").height())},a.convertWorkshopPanoramaQuaternion=function(e){return new a.Quaternion(e.x,-e.y,-e.z,e.w).normalize().multiply((new a.Quaternion).setFromAxisAngle(new a.Vector3(0,1,0),270*a.RADIANS_PER_DEGREE))},a.normalize=function(e){var t=e.x*e.x+e.y*e.y+e.z*e.z,o=Math.sqrt(t);e.x/=o,e.y/=o,e.z/=o},a.dot=function(e,t){return e.x*t.x+e.y*t.y+e.z*t.z},a.cross=function(e,t,o){var i=e.x,n=e.y,a=e.z;o.x=n*t.z-a*t.y,o.y=a*t.x-i*t.z,o.z=i*t.y-n*t.x},a.setVector=function(e,t,o,i){e.x=t,e.y=o,e.z=i},a.copyVector=function(e,t){t.x=e.x,t.y=e.y,t.z=e.z},a.addVector=function(e,t){e.x+=t.x,e.y+=t.y,e.z+=t.z},a.subVector=function(e,t){e.x-=t.x,e.y-=t.y,e.z-=t.z},a.applyQuaternionToVector=function(e,t){var o=t.x,i=t.y,n=t.z,a=e.x,g=e.y,r=e.z,A=e.w,C=A*o+g*n-r*i,s=A*i+r*o-a*n,I=A*n+a*i-g*o,l=-a*o-g*i-r*n;t.x=C*A+l*-a+s*-r-I*-g,t.y=s*A+l*-g+I*-a-C*-r,t.z=I*A+l*-r+C*-g-s*-a},a.angleBetweenVectors=function(e,t){return Math.acos(a.dot(e,t))},t.a=a},function(e,t){function o(e,t){for(var o=0;o=-1e-5)0;else{var b=-1/e.z,w=e.x*b,E=e.y*b;E>I?h++:Ec?f++:w=C}}(),r.mapFaceToCubemapFace=function(){var e={0:a.a.GL_TEXTURE_CUBE_MAP_POSITIVE_Y,1:a.a.GL_TEXTURE_CUBE_MAP_POSITIVE_Z,2:a.a.GL_TEXTURE_CUBE_MAP_POSITIVE_X,3:a.a.GL_TEXTURE_CUBE_MAP_NEGATIVE_Z,4:a.a.GL_TEXTURE_CUBE_MAP_NEGATIVE_X,5:a.a.GL_TEXTURE_CUBE_MAP_NEGATIVE_Y};return function(t){return e[t]}}(),t.a=r},function(e,t,o){"use strict";o(52);var i=o(0),n=o(6),a=new THREE.Raycaster,g={getPos2d:function(e,t,o){t=t||i.a.player.camera,o=o||i.a.player.domElement;var n,a,g=e.clone().project(t);n=(g.x+1)/2*o.clientWidth,a=(1-(g.y+1)/2)*o.clientHeight;var r=n<=o.clientWidth&&n>=0&&a<=o.clientHeight&&a>=0;return{pos:new THREE.Vector2(n,a),vector:g,trueSide:g.z<1,inSight:r}},ifShelter:function(e,t){t||(t=this.getPos2d(e));var o=i.a.player,n=new THREE.Vector3(t.x,t.y,-1).unproject(o.camera),g=e.clone().sub(n).normalize();if(a.set(n,g),edit&&i.a.editor.mainDesign.editing)var r=a.intersectObjects(i.a.editor.mainDesign.wallMeshes);else r=a.intersectObjects(o.model.chunks);var A=e.distanceTo(n);if(r&&r.length)for(var C=0;C1?arguments[1]:void 0)}}),o(120)("find")},function(e,t,o){var i=o(73).f,n=Function.prototype,a=/^\s*function ([^ (]*)/;"name"in n||o(70)&&i(n,"name",{configurable:!0,get:function(){try{return(""+this).match(a)[1]}catch(e){return""}}})},function(e,t){function o(e,t,o,i,n,a,g){try{var r=e[a](g),A=r.value}catch(e){return void o(e)}r.done?t(A):Promise.resolve(A).then(i,n)}e.exports=function(e){return function(){var t=this,i=arguments;return new Promise((function(n,a){var g=e.apply(t,i);function r(e){o(g,n,a,r,A,"next",e)}function A(e){o(g,n,a,r,A,"throw",e)}r(void 0)}))}}},function(e,t,o){"use strict";o(49),o(29),o(69);var i=o(25),n=o.n(i),a=o(28),g=o.n(a),r=o(34),A=o.n(r),C=o(35),s=o.n(C),I=o(19),l=o.n(I),c=o(10),d=o(91);function u(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var h=window.Store=new(function(e){A()(i,e);var t,o=(t=i,function(){var e,o=l()(t);if(u()){var i=l()(this).constructor;e=Reflect.construct(o,arguments,i)}else e=o.apply(this,arguments);return s()(this,e)});function i(){var e;return n()(this,i),(e=o.call(this)).metadata=null,e.metaModel=null,e.floorJson=null,e.hot=null,e.frameData=[],e.capData=[],e.playData=[],e.thumbs=[],e.capTime=0,e.recordType=2,e.isGuiderLoaded=!1,e.isResourceLoaded=!1,e.soundType=null,e}return g()(i,[{key:"set",value:function(e,t){return void 0!==this[e]&&(this[e]=t,this.emit(e,t)),this}}]),i}(d.a));h.FootIcon=c.default.getBlobSrc("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",!0),h.FootIcon_unable=c.default.getBlobSrc("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",!0),t.a=h},,function(e,t,o){"use strict";t.a={GL_TEXTURE_CUBE_MAP_POSITIVE_X:0,GL_TEXTURE_CUBE_MAP_NEGATIVE_X:1,GL_TEXTURE_CUBE_MAP_POSITIVE_Y:2,GL_TEXTURE_CUBE_MAP_NEGATIVE_Y:3,GL_TEXTURE_CUBE_MAP_POSITIVE_Z:4,GL_TEXTURE_CUBE_MAP_NEGATIVE_Z:5}},function(e,t){function o(t){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?e.exports=o=function(e){return typeof e}:e.exports=o=function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(t)}e.exports=o},function(e,t,o){"use strict";t.a={BLACK:"black",STD:"std",WALK:"walk"}},,,function(e,t,o){"use strict";o(52),o(124);var i=o(54),n=o(2),a=o(16),g="zhiHouse"==n.a.applicationName?i.a.zhiBlue:i.a.lightGreen,r={createLine:function(e,t){var o=new THREE.BufferGeometry,i=new Float32Array(6);o.addAttribute("position",new THREE.BufferAttribute(i,3));i=o.attributes.position.array;for(var n=0;n<2;n++)i[3*n]=e[n].x,i[3*n+1]=e[n].y,i[3*n+2]=e[n].z;var a=new THREE[t.deshed?"LineDashedMaterial":"LineBasicMaterial"]({linewidth:t.width||1,color:t.color||g,transparent:!t.dontAlwaysSeen,depthTest:!!t.dontAlwaysSeen}),r=new THREE.Line(o,a);return r.renderOrder=t.renderOrder||4,r},moveLine:function(e,t){for(var o=e.geometry.attributes.position.array,i=0;i<2;i++)null!=t[i]&&(o[3*i]=t[i].x,o[3*i+1]=t[i].y,o[3*i+2]=t[i].z);e.geometry.attributes.position.needsUpdate=!0,e.geometry.computeBoundingSphere()},createBoldLine:function(e,t){var o=t&&t.cylinder,i=e[1].clone().sub(e[0]),g=function(){o.lastVector=i;var e=new THREE.Vector3(0,-1,0),t=e.clone().cross(i).normalize(),n=e.angleTo(i);o.quaternion.setFromAxisAngle(t,n)};if(t&&"init"==t.type){if((o=new THREE.Mesh).material=t.mat,0==i.length())return o;g()}if(0==i.length())return o;if("update"!=t.type){var r=e[0].clone().add(e[1]).multiplyScalar(.5);if(o.position.copy(r),o.lastVector&&"moveAndRotate"!=t.type?o.lastVector&&i.angleTo(o.lastVector)>0&&g():g(),edit&&!publicObjectSet.editor.mainDesign.editing)return o}var A=e[0].distanceTo(e[1]),C=t&&t.standPos||(n.a.ifFish?publicObjectSet.player.currentPano.position:publicObjectSet.player.position),s=isMobile?20:40,I=e[0].distanceTo(C),l=e[1].distanceTo(C),c=a.a.getFootPoint(C,e[0],e[1]);if(c.clone().sub(e[0]).dot(c.clone().sub(e[1]))>0)var d=[new THREE.Vector2(I/s,A/2),new THREE.Vector2(l/s,-A/2)];else{var u=c.distanceTo(C),h=c.distanceTo(e[0]);d=[new THREE.Vector2(I/s,A/2),new THREE.Vector2(u/s,A/2-h),new THREE.Vector2(l/s,-A/2)]}return o.geometry&&o.geometry.dispose(),o.geometry=new THREE.LatheBufferGeometry(d,4),o.renderOrder=2,o},updateBoldLine:function(e,t,o,i){this.createBoldLine(t,{type:o,cylinder:e,standPos:i})},createFatLineMat:function(e){var t=new THREE.LineMaterial({color:e.color||16777215,linewidth:e.width||5,resolution:new THREE.Vector2($("#player").width(),$("#player").height()),dashed:!1,transparent:!e.dontAlwaysSeen,depthTest:!!e.dontAlwaysSeen});return t.uniforms.opacity.value=null!=e.opacity?e.opacity:1,t},createFatLine:function(e,t){var o=new THREE.LineGeometry;o.setPositions(e),o.setColors(t.color||[1,1,1]);var i=t.material||this.createFatLineMat(t),n=new THREE.Fatline(o,i);return n.computeLineDistances(),n.scale.set(1,1,1),n.renderOrder=2,n},moveFatLine:function(e,t){e.geometry.setPositions(t)}};t.a=r},function(e,t,o){"use strict";o(226);var i=o(67),n=o(130),a=o(70),g=/./.toString,r=function(e){o(84)(RegExp.prototype,"toString",e,!0)};o(65)((function(){return"/a/b"!=g.call({source:"a",flags:"b"})}))?r((function(){var e=i(this);return"/".concat(e.source,"/","flags"in e?e.flags:!a&&e instanceof RegExp?n.call(e):void 0)})):"toString"!=g.name&&r((function(){return g.call(this)}))},function(e,t,o){"use strict";t.a={visibleFloor:1,ghostFloor:3,boundingSkybox:1,panoMarker:2,floorlogo:3,reticule:4,tagStem:5,tagDisc:6,pullMesh:6,ribbon:100}},function(e,t,o){"use strict";var i=o(4),n={get:function(e,t,o,i){$.ajax({url:e,type:"GET",crossDomain:!0,contentType:"application/json",async:!0,dataType:"json",data:{num:window.number},success:function(e){o(e)},error:function(e){i(e)}})},getChain:function(e,t,o,i){var n=$.Deferred();return $.ajax({url:e,type:"GET",crossDomain:!0,contentType:"application/json",async:!0,data:t,dataType:"json",success:function(e){o&&o(e),n.resolve(e)},error:function(e){i?i():n.reject("加载失败")}}),n.promise()},_xhr:function(e,t,o){var i=new XMLHttpRequest;if(o&&"withCredentials"in i)i.open("GET",t,o);else if("undefined"!=typeof XDomainRequest)(i=new XDomainRequest).open(e,t);else{if(o)throw"Browser does not support CORS!";i.open("GET",t)}return i}};n.loadImg=function(e,t){var o=$.Deferred(),a=new Image;function g(){i.a.warn("Retrying: "+e),this.loadImg(e,t-1).done(o.resolve.bind(o)).progress(o.notify.bind(o)).fail(o.reject.bind(o))}return null!=t||(t=3),a.onerror=function(){t>0?setTimeout(g.bind(n),1e3):o.reject()},a.onload=function(){o.resolve(a)},a.crossOrigin="anonymous",a.src=e,o},t.a=n},function(e,t,o){"use strict";o(159)("sub",(function(e){return function(){return e(this,"sub","","")}}))},function(e,t,o){"use strict";var i=o(120),n=o(209),a=o(113),g=o(117);e.exports=o(176)(Array,"Array",(function(e,t){this._t=g(e),this._i=0,this._k=t}),(function(){var e=this._t,t=this._k,o=this._i++;return!e||o>=e.length?(this._t=void 0,n(1)):n(0,"keys"==t?o:"values"==t?e[o]:[o,e[o]])}),"values"),a.Arguments=a.Array,i("keys"),i("values"),i("entries")},function(e,t,o){"use strict";var i={green:new THREE.Color("#00c8ae"),lightGreen:new THREE.Color("#09e1c0"),zhiBlue:new THREE.Color(0,.458,.862),newBlue:new THREE.Color(4967932),altBlue:new THREE.Color(47355),tagDefault:new THREE.Color(223357),classicBlue:new THREE.Color(53759),mpYellow:new THREE.Color(16502016),mpOrange:new THREE.Color(16428055),mpBlue:new THREE.Color(12096),mpLtGrey:new THREE.Color(13751252),mpDkGrey:new THREE.Color(10000019),mpRed:new THREE.Color(12525854),mpOrangeDesat:new THREE.Color(16764529),mpBlueDesat:new THREE.Color(4034734),mpRedDesat:new THREE.Color(14705505),white:new THREE.Color(16777215),black:new THREE.Color(0),_desat:function(e,t){var o=t||.3,i=(new THREE.Color).copy(e).getHSL({h:0,s:0,l:0});return(new THREE.Color).setHSL(i.h,i.s*(1-o),i.l)},_darken:function(e,t){var o=t||.2,i=e.getHSL({h:0,s:0,l:0});return(new THREE.Color).setHSL(i.h,i.s,i.l*(1-o))}};t.a=i},function(e,t){var o=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=o)},function(e,t,o){var i=o(145)("wks"),n=o(111),a=o(55).Symbol,g="function"==typeof a;(e.exports=function(e){return i[e]||(i[e]=g&&a[e]||(g?a:n)("Symbol."+e))}).store=i},function(e,t,o){"use strict";var i=o(1),n=o(51),a=o(0),g=o(7),r=o(4),A={data:{},load:function(e,t,o,C){a.a.rebuild&&(A.data=[],a.a.rebuild=!1);var s=A.data[e];return s?(t&&setTimeout((function(){t(s)}),1),s):(s=new THREE.Texture,C&&C.antialias&&!g.a.isMobile()?(s.minFilter=THREE.LinearMipMapLinearFilter,s.magFilter=THREE.LinearMipMapLinearFilter):(s.minFilter=THREE.LinearFilter,s.magFilter=THREE.LinearFilter),i.a.minimalMemoryMode&&(s.generateMipmaps=!1),s.sourceFile=e,A.data[e]=s,n.a.loadImg(e).then((function(o){r.a.info("加载贴图成功:"+e),s.image=o,s.needsUpdate=!0,t&&t(s)})).fail((function(t){r.a.error("加载贴图失败:"+e),console.error(t)})),s)},loadBase64:function(e,t){t=t||"png";var o=new THREE.Texture;return o.image=document.createElement("img"),o.image.setAttribute("src","data:image/"+t+";base64,"+e),i.a.minimalMemoryMode&&(o.minFilter=THREE.LinearFilter,o.magFilter=THREE.LinearFilter,o.generateMipmaps=!1),o.needsUpdate=!0,o},isLoaded:function(e){return!!A.data[e]}};t.a=A},function(e,t,o){var i=o(55),n=o(110),a=o(81),g=o(84),r=o(94),A=function(e,t,o){var C,s,I,l,c=e&A.F,d=e&A.G,u=e&A.S,h=e&A.P,p=e&A.B,f=d?i:u?i[t]||(i[t]={}):(i[t]||{}).prototype,m=d?n:n[t]||(n[t]={}),v=m.prototype||(m.prototype={});for(C in d&&(o=t),o)I=((s=!c&&f&&void 0!==f[C])?f:o)[C],l=p&&s?r(I,i):h&&"function"==typeof I?r(Function.call,I):I,f&&g(f,C,I,e&A.U),m[C]!=I&&a(m,C,l),h&&v[C]!=I&&(v[C]=I)};i.core=n,A.F=1,A.G=2,A.S=4,A.P=8,A.B=16,A.W=32,A.U=64,A.R=128,e.exports=A},function(e,t,o){for(var i=o(53),n=o(128),a=o(84),g=o(55),r=o(81),A=o(113),C=o(56),s=C("iterator"),I=C("toStringTag"),l=A.Array,c={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},d=n(c),u=0;u1||"".split(/.?/)[c]?function(e,t){var n=String(this);if(void 0===e&&0===t)return[];if(!i(e))return o.call(n,e,t);for(var a,g,r,A=[],s=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),I=0,d=void 0===t?4294967295:t>>>0,u=new RegExp(e.source,s+"g");(a=C.call(u,n))&&!((g=u.lastIndex)>I&&(A.push(n.slice(I,a.index)),a[c]>1&&a.index=d));)u.lastIndex===a.index&&u.lastIndex++;return I===n[c]?!r&&u.test("")||A.push(""):A.push(n.slice(I)),A[c]>d?A.slice(0,d):A}:"0".split(void 0,0)[c]?function(e,t){return void 0===e&&0===t?[]:o.call(this,e,t)}:o,[function(o,i){var n=e(this),a=null==o?void 0:o[t];return void 0!==a?a.call(o,n,i):u.call(String(n),o,i)},function(e,t){var i=s(u,e,this,t,u!==o);if(i.done)return i.value;var C=n(e),l=String(this),c=a(C,RegExp),h=C.unicode,p=(C.ignoreCase?"i":"")+(C.multiline?"m":"")+(C.unicode?"u":"")+(d?"y":"g"),f=new c(d?C:"^(?:"+C.source+")",p),m=void 0===t?4294967295:t>>>0;if(0===m)return[];if(0===l.length)return null===A(f,l)?[l]:[];for(var v=0,y=0,b=[];y]*>)/g,c=/\$([$&`']|\d\d?)/g;o(131)("replace",2,(function(e,t,o,d){return[function(i,n){var a=e(this),g=null==i?void 0:i[t];return void 0!==g?g.call(i,a,n):o.call(String(a),i,n)},function(e,t){var n=d(o,e,this,t);if(n.done)return n.value;var I=i(e),l=String(this),c="function"==typeof t;c||(t=String(t));var h=I.global;if(h){var p=I.unicode;I.lastIndex=0}for(var f=[];;){var m=A(I,l);if(null===m)break;if(f.push(m),!h)break;""===String(m[0])&&(I.lastIndex=r(l,a(I.lastIndex),p))}for(var v,y="",b=0,w=0;w=b&&(y+=l.slice(b,T)+M,b=T+E.length)}return y+l.slice(b)}];function u(e,t,i,a,g,r){var A=i+e.length,C=a.length,s=c;return void 0!==g&&(g=n(g),s=l),o.call(r,s,(function(o,n){var r;switch(n.charAt(0)){case"$":return"$";case"&":return e;case"`":return t.slice(0,i);case"'":return t.slice(A);case"<":r=g[n.slice(1,-1)];break;default:var s=+n;if(0===s)return o;if(s>C){var l=I(s/10);return 0===l?o:l<=C?void 0===a[l-1]?n.charAt(1):a[l-1]+n.charAt(1):o}r=a[s-1]}return void 0===r?"":r}))}}))},function(e,t,o){var i=o(67),n=o(183),a=o(127),g=Object.defineProperty;t.f=o(70)?Object.defineProperty:function(e,t,o){if(i(e),t=a(t,!0),i(o),n)try{return g(e,t,o)}catch(e){}if("get"in o||"set"in o)throw TypeError("Accessors not supported!");return"value"in o&&(e[t]=o.value),e}},function(e,t,o){var i=o(97),n=Math.min;e.exports=function(e){return e>0?n(i(e),9007199254740991):0}},function(e,t,o){"use strict";var i=o(58),n=o(103),a=o(85),g=o(65),r=[].sort,A=[1,2,3];i(i.P+i.F*(g((function(){A.sort(void 0)}))||!g((function(){A.sort(null)}))||!o(220)(r)),"Array",{sort:function(e){return void 0===e?r.call(a(this)):r.call(a(this),n(e))}})},function(e,t,o){"use strict";o(39);var i=o(10),n=o(21),a=o(2);function g(e,t){if(e=e||{},!publicObjectSet.player.model.supportsTiles||e.not_Cube){var o=e.defines||{};o.Not_Cube="",e.defines=o}t=t||(a.a.ifFish?"fishModel":"model");THREE.RawShaderMaterial.call(this,i.default.extendObject({fragmentShader:n.a[t].fragmentShader,vertexShader:n.a[t].vertexShader,uniforms:THREE.UniformsUtils.clone(n.a[t].uniforms),name:"ModelTextureMaterial"},e))}g.prototype=Object.create(THREE.RawShaderMaterial.prototype),g.prototype.constructor=g,g.prototype.setProjectedPanos=function(e,t,o,i,n,g){"fishSphereMat"==this.name?(t.ensureSkyboxReadyForRender(),this.uniforms.pano1Map.value=t.getSkyboxTexture(),this.uniforms.pano1Matrix.value.copy(t.skyboxMesh.matrixWorld)):(o&&(this.uniforms.progress.value=0),e.ensureSkyboxReadyForRender(),this.uniforms.pano0Map.value=e.getSkyboxTexture(),this.uniforms.pano0Position.value.copy(e.position),this.uniforms.pano0Matrix.value.copy(e.skyboxMesh.matrixWorld),t.ensureSkyboxReadyForRender(),this.uniforms.pano1Map.value=t.getSkyboxTexture(),this.uniforms.pano1Position.value.copy(t.position),this.uniforms.pano1Matrix.value.copy(t.skyboxMesh.matrixWorld)),a.a.ifFish&&(i&&this.uniforms.cameraPos0&&this.uniforms.cameraPos0.value.copy(i),n&&this.uniforms.cameraPos1&&this.uniforms.cameraPos1.value.copy(n),g&&this.uniforms.radius&&(this.uniforms.radius.value=g))},g.prototype.setCameraEndPos=function(e,t){this.uniforms.cameraPos1&&this.uniforms.cameraPos1.value.copy(e),this.uniforms.cameraPos0&&this.uniforms.cameraPos0.value.copy(t)},t.a=g},function(e,t,o){"use strict";t.a=function(e){this.message=e}},function(e,t,o){"use strict";t.a={PanoRenderComplete:"panorama.render.complete",TileRenderFailure:"panorama.tile.render.failed",TileRenderSuccess:"panorama.tile.render.success",TileUploadAttempted:"panorama.tile.upload.attempted",UploadAttemptedForAllTiles:"panorama.upload.attempted.all.tiles",ZoomLevelRenderStarted:"panorama.zoom.render.started"}},function(e,t,o){"use strict";o(39),o(2),o(7);var i=o(0),n=o(13),a=(o(6),o(4)),g=o(10),r=o(3);t.a=function e(t,o,A,C,s,I){window.appLoginToken||(window.appLoginToken=localStorage.getItem("token")||"");var l=$.Deferred(),c=function(e,i,n){l.resolve(),console.log("%c"+t+": uploadFile成功。","color:#78f"),C&&C(o.type,n)},d=function(e){s&&s(),console.log("%c"+t+": uploadFile失败。status"+h.status+(null!=e?e:""),"color:#78f"),l.reject()},u={url:t,group:{3001:d.bind(this,"缺少必要参数"),3004:function(n){if(window.ifTest)return console.log("没有登录 测试 假设成功"),void c();window.appLoginToken="",i.a.gui.showAskBox("",r.a.get("您没有登录,请于主页登录后再编辑"),{btns:[{text:r.a.get("去登录"),type:"submit",wait:!0,fuc:function(){window.open(isMobile?CONSTANT.Mobile_Login:"index.html","blank")}},{text:r.a.get("登录完毕,继续"),type:"cancel",fuc:function(){I&&I.resaveFuc?I.resaveFuc():e(t,o,A,C,s,I)}}],donClose:!0})},3017:d.bind(this,r.a.get("上传文件为空")),5005:d.bind(this,r.a.get("场景为空")),5012:d.bind(this,r.a.get("数据不正常")),5014:d.bind(this,r.a.get("无权操作该场景")),"-1":d.bind(this,r.a.get("异常错误")),0:function(e,t,o){c(0,0,o)}},other:function(e){I&&I.checkCallback?I.checkCallback(e)?c():d("得到的返回值不对:"+e):e==o.name?c():d("得到的文件名不对:"+e)},error:d.bind(this,"error")};if(o.use7niu)return window.uploadChange(o.file),window.upload7niuError=function(e){saveBeDone?C&&C(e,"saveBeDoneNOlink"):s&&s(e)},void(window.upload7niuDone=function(e,t){C&&C(e,t)});var h=new XMLHttpRequest;h.open("post",t,!0),h.setRequestHeader("token",window.appLoginToken);var p=new FormData;if(o.needTransfer){var f=g.default.dataURLtoBlob(o.file);p.append("file",f,o.name)}else if(o.isBlob)a.a.info("上传的文件:"+o.name),p.append("file",o.file,o.name);else{var m=o.file;p.append("file",m,o.name)}for(var v in A)p.append(v,A[v]);h.onreadystatechange=function(){if(4==h.readyState){var e="";try{e=JSON.parse(h.responseText)}catch(t){e=h.responseText}h.status>=200&&h.status<300||304==h.status?n.a.dealAjax({dataDeal:u,data:e.code,response:e}):n.a.dealAjax({dataDeal:u,arguments:[e],type:"error"}),I&&I.otherFuc&&I.otherFuc()}},h.send(p)}},,function(e,t,o){var i=o(73),n=o(115);e.exports=o(70)?function(e,t,o){return i.f(e,t,n(1,o))}:function(e,t,o){return e[t]=o,e}},,function(e,t,o){"use strict";var i=o(27),n={clampVFOV:function(e,t,o,i){return n.getHFOVFromVFOV(e,o,i)>t?n.getVFOVFromHFOV(t,o,i):e},getHFOVForCamera:function(e,t,o){return n.getHFOVFromVFOV(e.fov,t,o)},getHFOVFromVFOV:function(e,t,o){var n=t,a=o;return 2*Math.atan(Math.tan(e*i.a.RADIANS_PER_DEGREE/2)*(n/a))*i.a.DEGREES_PER_RADIAN},getVFOVFromHFOV:function(e,t,o){var n=t,a=o;return 2*Math.atan(Math.tan(e*i.a.RADIANS_PER_DEGREE/2)*(a/n))*i.a.DEGREES_PER_RADIAN}};t.a=n},function(e,t,o){var i=o(55),n=o(81),a=o(93),g=o(111)("src"),r=o(216),A=(""+r).split("toString");o(110).inspectSource=function(e){return r.call(e)},(e.exports=function(e,t,o,r){var C="function"==typeof o;C&&(a(o,"name")||n(o,"name",t)),e[t]!==o&&(C&&(a(o,g)||n(o,g,e[t]?""+e[t]:A.join(String(t)))),e===i?e[t]=o:r?e[t]?e[t]=o:n(e,t,o):(delete e[t],n(e,t,o)))})(Function.prototype,"toString",(function(){return"function"==typeof this&&this[g]||r.call(this)}))},function(e,t,o){var i=o(96);e.exports=function(e){return Object(i(e))}},function(e,t,o){"use strict";var i=o(67),n=o(74),a=o(157),g=o(129);o(131)("match",1,(function(e,t,o,r){return[function(o){var i=e(this),n=null==o?void 0:o[t];return void 0!==n?n.call(o,i):new RegExp(o)[t](String(i))},function(e){var t=r(o,e,this);if(t.done)return t.value;var A=i(e),C=String(this);if(!A.global)return g(A,C);var s=A.unicode;A.lastIndex=0;for(var I,l=[],c=0;null!==(I=g(A,C));){var d=String(I[0]);l[c]=d,""===d&&(A.lastIndex=a(C,n(A.lastIndex),s)),c++}return 0===c?null:l}]}))},function(e,t,o){"use strict";o(75);function i(){this.list=[],this.index={},Object.defineProperty(this,"length",{get:function(){return this.list.length}})}i.prototype.forEach=function(e){this.list.forEach(e)},i.prototype.add=function(e){this.list.push(e),this.index[this.getIndex(e)]=e},i.prototype.getIndex=function(e){throw new Error("IndexedCollection.getIndex not implemented in subclass.")},i.prototype.extend=function(e){for(var t=0;t ')[0],n='
    '):(n="
    ",this.player=new Audio),this.embedWrapper.innerHTML=n,this.embedElement=this.embedWrapper.firstChild,this.player.load(),this.embedElement.classList.add("hidden"),this.embedWrapper.classList.remove("hidden"),this.player.addEventListener("loadeddata",function(){if("video"==t){var o=getVideoPoster(this.player,300),i=getBlobSrc(o);$(this.embedElement).find("img").attr("src",i),$(this.embedElement).on("click",(function(){b.a.gui.playVideo(this.player,!0)}))}e()}.bind(this)),this.player.onerror=i}.bind(this))},w.prototype.show=function(){this.embedElement&&this.embedElement.classList.remove("hidden")},w.prototype.hide=function(){this.embedElement&&this.embedElement.classList.add("hidden")};var E,T=w,P=(i(90),Object.freeze({NOT_READY:"player.not.ready",CUED:"player.cued",PLAYING:"player.playing",PAUSED:"player.paused"}));function S(e){T.call(this),this.options=e,this.playerControls=null,this.state=P.NOT_READY}S.prototype=Object.create(EventEmitter.prototype),S.prototype.createDomElement=function(e){if("video"==e){var t=$('');return this.embedWrapper=t[0],this.embedWrapper}t=$('');return this.embedWrapper},S.prototype.load=function(e,t){return o.prototype.load.call(this,e,t)},S.prototype.play=(E=n.a.isMobile(),function(){this.playerState!==P.NOT_READY&&this.playerControls&&!E&&(this.state===P.CUED&&this.options.autoPlay||this.options.autoResume)&&this.playerControls.play()}),S.prototype.pause=function(){this.playerState!==P.NOT_READY&&this.playerControls&&this.playerControls.pause()};var D=i(12);i(86);function x(e){e.play(),"micromessenger"==navigator.userAgent.toLowerCase().match(/MicroMessenger/i)?window.WeixinJSBridge?WeixinJSBridge.invoke("getNetworkType",{},(function(t){e.play()}),!1):document.addEventListener("WeixinJSBridgeReady",(function(){WeixinJSBridge.invoke("getNetworkType",{},(function(t){e.play()}))}),!1):e.play()}var M=i(3);i(8);if(isMobile&&edit)var R=i(181).default;function k(e,t,o,i,n){this.div=null,this.body=null,this.label=null!=e?e:"",this.description=null!=t?t:"",this.parsedDescription=[],this.loadingSpinner=null,this.state=O.CLOSED,this.orientation="",this.initialTransform="",this.hovering=!1,this.openTransition=null,this.closeTransition=null,this.openPromise=null,this.closePromise=null,this.animationTransition=null,this.animationScale=0,this.tag=n,this.dealMedia(o,i),this.examTimes=0,this.mediaDivs={}}var B=document.getElementById("tag-billboards");B.addEventListener("touchend",(function(e){B.style.pointerEvents="none"})),B.addEventListener("touchcancel",(function(e){B.style.pointerEvents="none"}));var O={CLOSED:"closed",OPENING:"opening",OPEN:"open",CLOSING:"closing",ACTIVE:"active"};k.prototype=Object.create(EventEmitter.prototype),k.prototype.build=function(e){var t=document.createElement("div");t.className="tag-container has-hotzone",this.div=t,this.body=document.createElement("div"),this.body.className="tag-body";var o=document.createElement("div");o.classList.add("tag-content");var i=document.createElement("div");i.classList.add("tag-text-content");var n=document.createElement("div");n.className="tag-title";var a=document.createElement("div");a.className="tag-label",a.textContent=this.label,!this.label&&edit&&this.tag==publicObjectSet.editor.markTag&&(isMobile?a.textContent=M.a.get("点击下一步编辑热点内容"):a.textContent=M.a.get("请填写标题")),i.appendChild(n),n.appendChild(a);var g=document.createElement("div");g.className="tag-desc",i.appendChild(g),o.appendChild(i),this.body.appendChild(o),t.appendChild(this.body);var r=document.createElement("div");r.className="closeTag",t.appendChild(r),r.addEventListener("mousedown",(function(e){e.stopPropagation()})),r.addEventListener("click",function(e){publicObjectSet.tagManager.activeTag&&publicObjectSet.tagManager.dismissActiveTag(),e.stopPropagation()}.bind(this),!1),B.appendChild(t),this.changeDesc(this.description),this.mediaObject={},this.appendMedia(),this.bindEvents(t,this.body)},k.prototype.dealMedia=function(e,t){var o={photo:".jpg",audio:".mp3",video:".mp4"};this.mediaData={},this.media=e||[],e&&e.type&&"photo"==e.type&&(this.media=["photo"]);var i="";this.tag.pages&&(i="_"+this.tag.pages[0].sid);for(var n=0;n

    "!=e||isMobile||(e=M.a.get("请填写内容简介")),""!=e&&"

    "!=e?$(this.div).addClass("has-text"):$(this.div).removeClass("has-text"),t.innerHTML=e,this.applyOrientation(this.orientation)},k.prototype.changeMedia=function(e){this.loadingMedia=!0,-1==this.media.indexOf(e)&&this.media.push(e),this.appendMediaContent(e)},k.prototype.deleteMedia=function(e){var t=this.mediaDivs[e];if(t){switch(e){case"photo":this.div.classList.remove("has-photo"),this.div.classList.remove("image-portrait");var o=$(this.div).find(".tag-image");o.length&&f.default.waitDestroyBlob.push(o.attr("src"));break;case"video":this.div.classList.remove("has-video"),(i=this.mediaObject.videoPlayer)&&($(i).attr("poster")&&f.default.waitDestroyBlob.push($(i).attr("poster")),f.default.waitDestroyBlob.push(i.src),this.mediaObject.videoPlayer=null);break;case"audio":var i;this.div.classList.remove("has-audio"),(i=this.mediaObject.audioPlayer)&&(publicObjectSet.gui.playAudio(i,!1),f.default.waitDestroyBlob.push(i.src),this.mediaObject.audioPlayer=null);break;case"outLink":this.div.classList.remove("hasLink")}t.parentElement.removeChild(t),this.onMediaLoadFinished(e),delete this.mediaDivs[e],delete this.mediaData[e],this.applyOrientation(this.orientation)}},k.prototype.reBuildMedia=function(e){e&&(this.media=e);for(var t=["photo","video","audio"],o=0;o<3;o++)-1==this.media.indexOf(t[o])?this.deleteMedia(t[o]):this.changeMedia(t[o])},k.prototype.bindEvents=function(e,t){var o=function(e){return function(t){if(!this.div.classList.contains("overlay")&&!t.target.classList.contains("closeTag")){var o,i=document.getElementById("player");try{o=new MouseEvent(e,t)}catch(i){(o=document.createEvent("MouseEvents")).initMouseEvent(e,t.bubbles,t.cancelable,t.view,t.detail,t.screenX,t.screenY,t.clientX,t.clientY,t.ctrlKey,t.altKey,t.shiftKey,t.metaKey,t.button,t.relatedTarget)}i.dispatchEvent(o)}}};t.addEventListener("mousedown",(function(e){e.stopPropagation()})),t.addEventListener("mouseup",function(e){e.stopPropagation()}.bind(this)),e.addEventListener("mousedown",o("mousedown").bind(this)),e.addEventListener("mouseup",o("mouseup").bind(this)),e.addEventListener("touchstart",(function(e){B.style.pointerEvents="auto"})),t.addEventListener("mouseover",function(t){publicObjectSet.playGuider.isPlaying||this.state===O.OPEN&&e.classList.remove("has-hotzone")}.bind(this)),e.addEventListener("mouseenter",function(e){publicObjectSet.playGuider.isPlaying||this.state!==O.CLOSING&&(this.hovering=!0,this.emit(A.a.BillboardEvent.ENTER))}.bind(this)),e.addEventListener("mouseleave",function(e){publicObjectSet.playGuider.isPlaying||(this.hovering=!1,this.emit(A.a.BillboardEvent.LEAVE))}.bind(this)),e.addEventListener("gesturestart",(function(e){publicObjectSet.playGuider.isPlaying||e.preventDefault()}));var i,n=e.querySelector(".tag-text-content"),a=0;n.addEventListener("touchstart",(function(e){a=e.changedTouches[0].clientY})),e.addEventListener("touchstart",(function(e){i=e.changedTouches[0].clientY})),e.addEventListener("touchmove",(function(o){function n(e,t){return e&&(0===e.scrollTop&&o.changedTouches[0].clientY>t||e.scrollTop+e.clientHeight-e.scrollHeight==0&&o.changedTouches[0].clientY-1&&e.length&&e[0].src,n=this.media.indexOf("video")>-1&&t.find("video").length,a=this.media.indexOf("outLink")>-1&&$(this.div).find(".outer-chain");if(!(i||n||a.length&&o))return!1;var g,r=$(this.div).find(".tag-label").height()+12,A=window.horizontal&&(o||i&&n),C=(this.div.children[0].children[0].clientHeight,A?.32*$("#player").width():$("#player").width()<340?280:$("#player").width()<420?300:350),s=(window.horizontal?.85*$("#player").height():$("#player").height()>700?.65*$("#player").height():.7*$("#player").height())-36,I=$(this.div).find(".tag-desc");if(a.length){var l=Math.min(s-a.height()-18,260);I.css("max-height",Math.max(l,60)+"px")}else{if(window.horizontal)g=s-r,I.css("max-height",Math.max(g,60)+"px");else if(o){l=.3*s-r;I.css("max-height",Math.max(l,60)+"px"),g=r+I[0].scrollHeight>.3*s?.7*s-18:s-r-I[0].scrollHeight-10}else g=s-r;var c=function e(o){var i=t.find("video")[0],n=i.videoWidth,a=i.videoHeight,g=C/n,r=o/a,A=Math.min(g,r);if(!n&&!a){var s=i.muted;i.addEventListener("loadeddata",(function t(){i.removeEventListener("loadeddata",t),i.pause(),i.muted=s,e(o)})),i.muted=!0,i.play()}if(n>a)if(window.horizontal)t[0].style.width=n*A<320?n*A+"px":"320px",t[0].style.height=a*A<180?a*A+"px":"180px";else{var I=Math.max(C,320);t[0].style.width=I+"px",t[0].style.height=o<180?o+"px":"180px"}else if(window.horizontal)t[0].style.width=n*A<270?n*A+"px":"270px",t[0].style.height=a*A<360?a*A+"px":"360px";else{I=Math.max(C,270);t[0].style.width=I+"px",t[0].style.height=o<360?o+"px":"360px"}};if(n)i?(e[0].style["max-width"]=C+"px",A?(I.css("max-height",.3*g+"px"),e[0].style["max-height"]=Math.min(e[0].naturalHeight/e[0].naturalWidth*C,.7*g)+"px",c(.7*g)):(e[0].style["max-height"]=.6*g+"px",c(.4*g))):c(g);else e[0].style["max-width"]=C+"px",e[0].style["max-height"]=g+"px"}return this.closeImage&&this.closeImage(),this.applyOrientation(this.orientation),!0},k.prototype.appendLoadingSpinner=function(e){this.loadingSpinner||(this.loadingSpinner={});var t=document.createElement("div");t.classList.add("loading-spinner");var o=document.createElement("div");o.classList.add("gui-spinner-icon"),t.appendChild(o),this.body.appendChild(t),this.loadingSpinner[e]=t},k.prototype.onMediaLoadFinished=function(e){this.loadingMedia&&(this.loadingSpinner[e]&&this.loadingSpinner[e].parentNode.removeChild(this.loadingSpinner[e]),this.resizeImg(),setTimeout(function(){this.applyOrientation(this.orientation),this.needExam&&(this.tag.examine(this.tag.tagManager.player,"currPano"),this.needExam=!1)}.bind(this),80),delete this.loadingSpinner[e],this.loadingMedia=!1)},k.prototype.appendMedia=function(){this.media.forEach(function(e){this.appendMediaContent(e)}.bind(this))},k.prototype.appendMediaContent=function(e){if(this.appendLoadingSpinner(e),!this.mediaDiv){this.mediaDiv=document.createElement("div"),this.mediaDiv.classList.add("tag-media-content");var t=document.createElement("i");["icon","icon-close-thin","close"].forEach((function(e){t.classList.add(e)})),this.body.appendChild(t),this.body.appendChild(this.mediaDiv)}switch(console.log(e),e){case"photo":this.createImageElement(this.mediaData[e],this.body);break;case"video":this.addMediaInOrder(this.createMediaElement(this.mediaData[e],this.body,e),"video");break;case"audio":this.addMediaInOrder(this.createMediaElement(this.mediaData[e],this.body,e),"audio");break;case"outLink":this.addOuterChain(this.mediaData[e])}},k.prototype.addOuterChain=function(e){if(e&&e.indexOf&&("http://"==(e=e.trim()).slice(0,7)?e="https://"+e.slice(7):"https://"!=e.slice(0,8)&&(e="https://"+e)),["https://v.qq.com/txp/iframe/player.html","https://open.iqiyi.com/developer/player_js/coopPlayerIndex.html","https://player.youku.com/embed/"].find((function(t){return 0===e.indexOf(t)}))){var t=$("\n\t\t
    \">\n\t\t
    \n\t"));this.state!==O.OPEN&&this.state!==O.ACTIVE&&this.state!==O.OPENING||t.append(t.attr("outerHTML")),this.imgNeedResize=!0,this.div.classList.add("hasLink"),this.mediaDiv.appendChild(t[0]),this.mediaDivs.outLink=t[0],this.onMediaLoadFinished("outLink")}},k.prototype.addMediaInOrder=function(e,t){this.mediaDivs[t]&&this.mediaDivs[t].parentElement.removeChild(this.mediaDivs[t]),this.mediaDivs[t]=null,"audio"==t?$(this.div).find(".tag-title")[0].appendChild(e):this.mediaDiv.appendChild(e),this.mediaDivs[t]=e},k.prototype.createImageElement=function(e,t){function o(){function e(){console.error("aa"),d||(i.imageWrapper.classList.remove("view-image"),C.classList.add("overlay"),i.descMaxH=h.style["max-height"],h.style["max-height"]="none",o(),window.addEventListener("resize",p),C.addEventListener("click",a),c.addEventListener("click",r),l.addEventListener("click",g),d=!0,n.emit(A.a.MediaEvent.IMAGE_OPENED))}function o(){return t.classList.add("show-info"),s.classList.remove("collapsible"),s.style.height="",n.description.length>0&&s.classList.add("collapsible"),$.when(this)}function a(e){e.target===C&&g()}function g(){d&&(d=!1,i.imageWrapper.classList.add("view-image"),C.classList.remove("overlay"),i.descMaxH&&(h.style["max-height"]=i.descMaxH),s.style.height="",I.style.paddingTop="",t.style.width="",t.style.height="",window.removeEventListener("resize",p),C.removeEventListener("click",a),c.removeEventListener("click",r),l.removeEventListener("click",g),n.emit(A.a.MediaEvent.IMAGE_CLOSED))}function r(e){t.classList.toggle("show-info")}var C=n.div,s=C.getElementsByClassName("tag-content")[0],I=C.getElementsByClassName("tag-media-content")[0],l=t.getElementsByClassName("close")[0],c=s.getElementsByClassName("tag-label")[0];C.classList.add("has-photo");try{}catch(e){console.error(e)}n.addMediaInOrder(i.imageWrapper,"photo"),i.imageWrapper.classList.add("view-image"),i.imageWrapper.draggable=!1,i.imageWrapper.ondragstart=function(){return!1},C.classList.add(i.aspect>=1?"image-landscape":"image-portrait");var d=!1,u=getComputedStyle(s),h=(parseFloat(u.paddingTop),parseFloat(u.paddingBottom),parseFloat(getComputedStyle(I).paddingLeft),s.querySelector(".tag-label"),s.querySelector(".tag-desc")),p=function(){var e,t,i=0;return function(){clearInterval(e),clearTimeout(t),e=setInterval((function(){var e=C.clientHeight;i!==e&&(o(),i=e)}),100),t=setTimeout(clearInterval.bind(this,e),1e3)}}();i.on(A.a.MediaEvent.IMAGE_OPENING,(function(){console.error("aa"),d||(i.imageWrapper.classList.remove("view-image"),C.classList.add("overlay"),i.descMaxH=h.style["max-height"],h.style["max-height"]="none",o(),window.addEventListener("resize",p),C.addEventListener("click",a),c.addEventListener("click",r),l.addEventListener("click",g),d=!0,n.emit(A.a.MediaEvent.IMAGE_OPENED))})),n.on(A.a.MediaEvent.IMAGE_CLOSED,i.onClosed.bind(i)),n.closeImage=g}var i=new y,n=this;e=e.media?e.media:e.src;var g=function(){i.load(e,this.div).then(o).catch((function(e){a.a.warn("Failed to load image:"),a.a.warn("with error:",e)})).then(this.onMediaLoadFinished.bind(this,"photo"))}.bind(this);e instanceof Image?g():(e||(e=h.a.getResourceUrl(p.a.sceneImgRoot+"hot/hot"+this.tag.sid+".jpg")),this.state==O.CLOSING||this.state==O.CLOSED?this.once(A.a.BillboardEvent.OPENED,g):g())},k.prototype.createMediaElement=function(e,t,o){var i,g,r=this,A=e.poster;e=e.media?e.media:e.src,$(this.mediaDiv).removeClass("hidden");var C="";if("video"===o&&(C="\n\t\t\t".concat(A?'
    ':"",'\n\t\t\t\n\t\t')),edit){var s=!1;"video"==o?(g=$('\n\t\t\t\t\n\t\t\t")),this.mediaObject.videoPlayer&&(i=this.mediaObject.videoPlayer,s=!0)):(g=$(''),this.mediaObject.audioPlayer&&(i=this.mediaObject.audioPlayer,s=!0))}else"video"==o?g=$('\n\t\t\t\t\n\t\t\t")):(g=$(''),i=this.audioPlayer=new Audio);var I,l=function(){!0,console.log("addCover"),edit?s?this.mediaObject.videoCanvas&&this.mediaObject.videoCanvas instanceof Node&&g.find(".videoThumb")[0].appendChild(this.mediaObject.videoCanvas):(this.mediaObject.videoCanvas=document.createElement("canvas"),g.find(".videoThumb")[0].appendChild(this.mediaObject.videoCanvas),i.pause(),publicObjectSet.gui.getVideoPoster(i,this.mediaObject.videoCanvas,"loadFail"),this.mediaObject.videominiCanvas=document.createElement("canvas"),publicObjectSet.gui.getVideoPoster(i,this.mediaObject.videominiCanvas),publicObjectSet.gui.changeMediaPreview(this.tag,"video"),setTimeout((function(){I.resolve()}),30)):setTimeout((function(){I.resolve()}),30),g.find(".videoThumb").on("click",function(){publicObjectSet.gui.playVideo(i,!0)}.bind(this)),i.removeEventListener("loadeddata",l),g.removeClass("hidden")}.bind(this),c=0,d=function(e,t){c++,"soon"!=t&&"video"==o&&2!=c||("video"==o?n.a.detectEdge()?setTimeout(l,600):l():(e&&e.resolve(),g.on("click",function(e){publicObjectSet.gui.playAudio(i,i.paused),e.stopPropagation()}.bind(this)),s||i.addEventListener("ended",(function(e){publicObjectSet.gui.playAudio(i,!1)})),i.billboard=this,g.removeClass("hidden")))}.bind(this),u=function(e){if(I=$.Deferred(),edit)if(e instanceof HTMLVideoElement||e instanceof Audio)i=e,"audio"==o?this.mediaObject.audioPlayer=e:this.mediaObject.videoPlayer=e,d(I,"soon");else{"video"==o?((i=this.mediaObject.videoPlayer=$('')[0]).setAttribute("crossOrigin","Anonymous"),$(i).on("contextmenu",(function(){return!1}))):i=this.mediaObject.audioPlayer=new Audio,$(i).attr("src",e),console.log("load2"),i.load();var t=function(){d(I)};i.addEventListener("loadeddata",t),"video"==o&&i.addEventListener("loadedmetadata",t),setTimeout((function(){a||(console.log("timeout load fail"),i.removeEventListener("loadeddata",t),i.removeEventListener("loadedmetadata",t),I.reject())}),5e3)}else{$(i).attr("src",e),"video"==o||i.load();var a=0,r=function(){a++,console.log(a),"video"==o&&2!=a||("video"==o?n.a.detectEdge()?setTimeout(l,600):l():(I.resolve(),$(i).addClass("hide"),g.append($(i)),g.on("click",function(e){publicObjectSet.gui.playAudio(i,i.paused),e.stopPropagation()}.bind(this)),i.addEventListener("ended",(function(){publicObjectSet.gui.playAudio(i,!1)})),i.billboard=this,g.removeClass("hidden")))}.bind(this);"video"!==o?r():I.reject()}return I.promise()}.bind(this),h=function(){-1!=!this.media.indexOf(o)&&u(e).done(function(){this.div.classList.add("has-"+o),this.resizeImg(),this.onMediaLoadFinished(o),"video"==o&&this.tag.videoReadyCallBack&&this.tag.videoReadyCallBack()}.bind(this)).fail(function(){try{a.a.warn("Failed to embed video"),a.a.warn("with error:",t)}catch(e){console.log(e)}console.log("加载失败了"),"video"==o&&this.tag.videoReadyCallBack&&this.tag.videoReadyCallBack(),this.onMediaLoadFinished(o)}.bind(this))}.bind(this);function p(e,t,o){t.muted=!0;var i=t.parentNode.querySelector(".video-cover");return console.log(i),i&&(t.addEventListener("canplay",(function(){i.style.display="none"})),i.addEventListener("click",(function(){console.log("----------------------333"),t.play()}))),new Promise((function(e){if(!edit)return e();function o(e){x(t)}setTimeout(o),document.documentElement.addEventListener("click",o,!0),document.documentElement.addEventListener("touchstart",o,!0),t.addEventListener("canplay",(function(){if(clearTimeout(o),document.documentElement.removeEventListener("click",o,!0),document.documentElement.removeEventListener("touchstart",o,!0),t.pause(),edit){var i=document.createElement("canvas");if(0==t.videoWidth)i.width=97,i.height=97;else{var n=97/t.videoWidth,a=97/t.videoHeight,g=Math.max(n,a);i.width=t.videoWidth*g,i.height=t.videoHeight*g}i.getContext("2d").drawImage(t,0,0,t.videoWidth,t.videoHeight,0,0,i.width,i.height);var r=i.toDataURL("image/jpeg",.8);e(r),console.log("-----play",r)}})),setTimeout((function(){e(),clearTimeout(o),document.documentElement.removeEventListener("click",o,!0),document.documentElement.removeEventListener("touchstart",o,!0)}),1e4)}))}return s?("video"==o?this.mediaObject.videoCanvas&&this.mediaObject.videoCanvas instanceof Node?(d(null,"soon"),this.div.classList.add("has-"+o),this.imgNeedResize=!0):console.log("no videoCanvas"+this.mediaObject.videoCanvas):(d(null,"soon"),this.div.classList.add("has-"+o),this.imgNeedResize=!0),this.onMediaLoadFinished(o)):e instanceof HTMLVideoElement?setTimeout((function(){if(r.div.classList.add("has-"+o),g.removeClass("hidden"),A)edit&&(r.mediaObject.videominiCanvas=A,publicObjectSet.gui.changeMediaPreview(r.tag,"video"));else{var e=g.find(".videoThumb");e.append(e.attr("outerHTML")),p(r.tag,e.find("video")[0]).then((function(e){edit&&(r.mediaObject.videominiCanvas=e,publicObjectSet.gui.changeMediaPreview(r.tag,"video"))}));var t=e[0],i=e.find("video")[0];t.loadSuccess||i.addEventListener("loadeddata",(function(){r.onMediaLoadFinished("video"),t.loadSuccess=!0})),i.play()}edit&&e.find("video").addClass("loadsuccess")})):e instanceof Audio||"blob:"==e.slice(0,5)?h():g.find(".videoThumb").attr("outerHTML")&&~g.find(".videoThumb").attr("outerHTML").indexOf("video")?setTimeout((function(){if(r.div.classList.add("has-"+o),g.removeClass("hidden"),r.state===O.OPEN||r.state===O.ACTIVE||r.state===O.OPENING){var e=g.find(".videoThumb");e.append(e.attr("outerHTML")),p(r.tag,e.find("video")[0]).then((function(e){edit&&(r.mediaObject.videominiCanvas=e,publicObjectSet.gui.changeMediaPreview(r.tag,"video"))}));var t=e[0],i=e.find("video")[0];t.loadSuccess||i.addEventListener("loadeddata",(function(){r.onMediaLoadFinished("video"),t.loadSuccess=!0})),i.play()}else edit&&(r.mediaObject.videominiCanvas=A,publicObjectSet.gui.changeMediaPreview(r.tag,"video"))})):this.once("loadMedia",h),g[0]},k.prototype.createEmbedElement=function(e,t){var o=new l,i=o.createDomElement();return this.once(A.a.BillboardEvent.OPENED,function(){o.load(e.src).then(function(){this.div.classList.add("has-embed"),this.state!==O.OPEN&&this.state!==O.ACTIVE||o.show(),this.applyOrientation(this.orientation),this.on(A.a.BillboardEvent.OPENING,o.show.bind(o)),this.on(A.a.BillboardEvent.CLOSED,o.hide.bind(o))}.bind(this)).catch((function(t){a.a.warn("Failed to embed:",e.src),a.a.warn("with error:",t)})).then(this.onMediaLoadFinished.bind(this,"rich"))}.bind(this)),i},k.prototype.screenCap=function(e){if(console.log("screenCap "+e),publicObjectSet.recordGuider.onRecording&&(!publicObjectSet.player.flyingToTag||!publicObjectSet.player.flying)){var t={};t.eTime=D.a.getTime(publicObjectSet.recordGuider.startCapTime),t.type="spot",t.state=e,t.sid=this.tag.sid,t.pos=publicObjectSet.player.position.toArray(),t.qua=publicObjectSet.player.quaternion.toArray(),t.mode=D.a.tranString(publicObjectSet.player.model.mode),D.a.capItemDeal(t);var o=Store.frameData.length-1;void 0===Store.frameData[o]&&(Store.frameData[o]=[]),Store.frameData[o].push(t);var i=Store.capData,n=i[i.length-1];n.tags||(n.tags=[]);var a={type:"spot"};a.state=e,a.eTime=D.a.getTime(publicObjectSet.recordGuider.startCapTime),a.sid=this.tag.sid,a.position=publicObjectSet.player.position.toArray(),a.quaternion=publicObjectSet.player.quaternion.toArray(),publicObjectSet.player.mode==s.a.FLOORPLAN&&(a.zoom=publicObjectSet.player.cameraControls.activeControl.currentScale/($("#player").width()/$("#player").height())),n.tags.length>0&&n.tags[n.tags.length-1].sid==this.tag.sid?"close"==e&&(n.tags[n.tags.length-1].state==e?n.tags[n.tags.length-1].eTime=a.eTime:n.tags.push(a)):n.tags.push(a)}},k.prototype.open=function(e){var t=this;if(console.log("------------------------"),edit&&(publicObjectSet.editor.chosenSpot=this.tag),isMobile&&edit&&R.onSwichEditor("hotEdit"),this.emit("loadMedia"),this.imgNeedResize&&this.resizeImg(),this.tag.listElem&&$(this.tag.listElem).addClass("active"),this.div.classList.add("active"),this.openPromise=$.Deferred(),this.state===O.ACTIVE)return 1==this.animationScale?this.openPromise.resolve().promise():this.openPromise;if(this.hovering||this.div.classList.add("has-hotzone"),this.openTransition?(console.log("setActive 1"),e&&this.setActiveState()):(this.screenCap("open"),this.openTransition=C.a.setTimeout(function(){this.state!==O.OPEN&&(console.log("2222222222222"),this.emit(A.a.BillboardEvent.OPENING),e&&this.emit(A.a.BillboardEvent.ACTIVATING),this.state=O.OPENING,this.animateOpen(function(){console.log("setActive 2"),e&&this.setActiveState(),this.openPromise.resolve(),this.examOpenPromise&&"resolved"!=this.examOpenPromise.state()&&this.examOpenPromise.resolve()}.bind(this)))}.bind(this),A.a.billboardSettings.animation.openDelay)),C.a.cancel(this.closeTransition),this.closePromise&&this.closePromise.reject(),this.closeTransition=void 0,g=this.mediaDivs.video&&this.mediaDivs.video.querySelector(".videoThumb")){var o=g.querySelector("video");if(o&&!o.reload&&(o.pause(),o.parentNode.removeChild(o)),!o||!o.reload){g.innerHTML=g.getAttribute("outerHTML"),g.style.visibility="hidden",clearTimeout(this.__video_time),this.__video_time=setTimeout((function(){g.style.visibility="visible"}),700);var i=g.querySelector("video");if(i.reload=!0,!i)return;var a=i.parentNode.querySelector(".video-cover");a?(i.addEventListener("play",(function e(){n.a.detectWeixin()&&n.a.detectAndroid()&&(publicObjectSet.playGuider.isPlaying||publicObjectSet.recordGuider.onRecording)||(a.style.display="none",a.removeEventListener("play",e),i.classList.add("loadsuccess"))})),console.log(i),a.addEventListener("click",(function(){i.play()}))):i.classList.add("loadsuccess"),g.loadSuccess||i.addEventListener("loadeddata",(function(){t.onMediaLoadFinished("video"),g.loadSuccess=!0})),setTimeout((function(){g.querySelector("video")===i&&(i.muted=publicObjectSet.playGuider.isPlaying||publicObjectSet.recordGuider.onRecording,x(i))}),50)}}var g,r=this.mediaDivs.outLink;r&&!r.querySelector("iframe")&&(r.innerHTML=r.getAttribute("outerHTML")),r&&(r.querySelector("iframe").style.visibility="hidden",clearTimeout(this.__iframe_time),this.__iframe_time=setTimeout((function(){r.querySelector("iframe").style.visibility="visible"}),700)),((g=this.mediaDivs.video&&this.mediaDivs.video.querySelector(".videoThumb"))||r)&&publicObjectSet.playGuider.musicPlayer.isPlaying&&(publicObjectSet.playGuider.musicPlayer.pause(),this._pauseMiusic=!0);var s=this.mediaDivs.audio&&this.mediaDivs.audio.querySelector("audio")||this.mediaObject&&this.mediaObject.audioPlayer;return s&&(s.billboard=this,publicObjectSet.playGuider.isPlaying||publicObjectSet.recordGuider.onRecording||publicObjectSet.gui.playAudio(s,!0)),publicObjectSet.guider.isPlaying||publicObjectSet.recordGuider.onRecording,this.openPromise},k.prototype.close=function(e){if(this.tag.listElem&&$(this.tag.listElem).removeClass("active"),this.tag.edit)return $.Deferred().reject();publicObjectSet.tagManager.tagNeedClose[this.tag.sid]&&delete publicObjectSet.tagManager.tagNeedClose[this.tag.sid],this.closeImage&&this.closeImage(),this.tag.flyingToTag=!1,isMobile&&edit&&R.cancelTagEdit();var t=this.mediaDivs[this.media];if(t){var o=t.querySelector("video"),i=t.querySelector("audio"),n=t.querySelector("iframe");"audio"==this.media[0]&&this.mediaObject.audioPlayer?publicObjectSet.gui.playAudio(this.mediaObject.audioPlayer,!1):i&&publicObjectSet.gui.playAudio(i,!1),o&&(o.pause(),o.parentNode.innerHTML=""),n&&n.parentNode.removeChild(n),(o||n)&&this._pauseMiusic&&(publicObjectSet.playGuider.musicPlayer.play(),this._pauseMiusic=!1),(i=this.mediaDivs.audio&&this.mediaDivs.audio.querySelector("audio")||this.mediaObject&&this.mediaObject.audioPlayer)&&(i.billboard=this,publicObjectSet.gui.playAudio(i,!1))}return this.div.classList.remove("active"),this.closePromise=$.Deferred(),this.outOfScreen=!1,e||!this.hovering||publicObjectSet.playGuider.isPlaying?(console.log("close 222222"),this.closeTransition||(this.closeTransition=C.a.setTimeout(function(){this.state!==O.CLOSED&&(this.emit(A.a.BillboardEvent.CLOSING),console.log("state closing "),this.state=O.CLOSING,this.animateClose())}.bind(this),A.a.billboardSettings.animation.closeDelay),this.screenCap("close")),C.a.cancel(this.openTransition),this.openPromise&&this.openPromise.reject(),this.openTransition=void 0,this.closePromise.resolve(),this.closePromise.promise()):(console.log("reject??"),this.closePromise.reject().promise())},k.prototype.setActiveState=function(){this.state!==O.CLOSED&&(this.state=O.ACTIVE,this.emit(A.a.BillboardEvent.ACTIVATE),this.div.classList.remove("has-hotzone"))},k.prototype.animateOpen=function(e){if(this.state===O.OPENING){if(C.a.cancel(this.animationTransition),n.a.detectSamsungNative())return this.boardOrientation=null,this.div.style.visibility="visible",this.emit(A.a.BillboardEvent.OPENED),this.state!=O.ACTIVE&&(this.state=O.OPEN),void(e&&e());if(this.div.style.webkitTransform="scale(0)",this.div.style.transform="scale(0)",this.div.style.visibility="visible",this.div.screenTransform){var t=this.div.screenTransform.indexOf("scale");if(t>-1){var o=this.div.screenTransform.slice(0,t);this.div.screenTransform=o+"scale(0)",this.div.style.webkitTransform=this.div.screenTransform,this.div.style.transform=this.div.screenTransform}}this.animationTransition=C.a.start(g.a.property(this,"animationScale",1),A.a.billboardSettings.animation.openDuration,function(){this.emit(A.a.BillboardEvent.OPENED),this.state!=O.ACTIVE&&(this.state=O.OPEN),e&&e()}.bind(this))}},k.prototype.animateClose=function(e){this.state===O.CLOSING&&(C.a.cancel(this.animationTransition),this.animationTransition=C.a.start(g.a.property(this,"animationScale",0),A.a.billboardSettings.animation.closeDuration,function(){this.emit(A.a.BillboardEvent.CLOSED),this.state=O.CLOSED,this.div.style.visibility="hidden",this.div.classList.contains("has-hotzone")||this.div.classList.add("has-hotzone"),e&&e()}.bind(this)))},k.prototype.needsUpdate=function(){return this.state!==O.CLOSED},k.prototype.update=function(e,t){if(this.needsUpdate()){var o=this.calcScale(t),i={x:(e.x+1)*$("#player").width()/2,y:(e.y+1)*$("#player").height()/2};if("center"==this.orientation&&(this.tag.examing||this.outOfScreen||"opening"==this.state)){var n=this.getDimensions(),a=$("#player").height(),g=isMobile?publicObjectSet.recordGuider.onRecording?$(".tmpl-snapTour.step-2").height()+70:120:55;if((i.y-n.height/2<0||i.y+n.height/2+g*o*this.animationScale>a)&&(this.outOfScreen=!0,i.y-n.height/2<0?i.y=n.height/2:i.y=a-n.height/2-g*o*this.animationScale,($(this.div).height()+g)*o*this.animationScale>a))return this.updateOrientation(e),this.div.screenTransform=this.initialTransform+" translate("+i.x+"px, "+i.y+"px) scale("+a/($(this.div).height()+g)+")",this.div.style.webkitTransform=this.div.screenTransform,void(this.div.style.transform=this.div.screenTransform)}this.updateOrientation(e),this.div.screenTransform=this.initialTransform+" translate("+i.x+"px, "+i.y+"px) scale("+o*this.animationScale+")",this.div.style.webkitTransform=this.div.screenTransform,this.div.style.transform=this.div.screenTransform}},k.prototype.getDimensions=function(){return this.div.getBoundingClientRect()},k.prototype.ifOutOfScreen=function(){var e=this.getDimensions(),t=$("#player")[0].getBoundingClientRect(),o=isMobile?50:0;return e.leftt.right+3||e.topt.bottom-o+3},k.prototype.calcScale=function(e){if($("#player").width()<=320&&$("#player").height()<=520)var t=.86;else t=1;return Math.sqrt(e/40)*A.a.billboardSettings.boardToDiscRatio*t},k.prototype.updateOrientation=function(e){if(isMobile||publicObjectSet.recordGuider.onRecording||publicObjectSet.playGuider.isPlaying)"center"!=this.orientation&&this.applyOrientation("center");else if(!this.tag.examing&&this.state!==O.ACTIVE&&!this.tag.edit||!this.orientation||"center"==this.orientation){var t=1/3,o=e.y<-t?0:e.y$("#player").height()?e.x<0?"right":"left":e.y<0?"bottom":"top")),n===this.orientation||this.applyOrientation(n)}},k.prototype.applyOrientation=function(e){if(e){this.div.style.transform=this.div.style.webkitTransform="",this.div.classList.remove("tag-container-"+this.orientation),this.div.classList.add("tag-container-"+e);var t=window.getComputedStyle(this.div),o=t.transform.slice(7,-1).split(","),i=-o[4],n=-o[5];if(!isNaN(i)&&!isNaN(n)&&(this.initialTransform=t.transform||t.webkitTransform,"none"===this.initialTransform&&(this.initialTransform=""),this.div.style.webkitTransformOrigin=i+"px "+n+"px",this.div.style.transformOrigin=i+"px "+n+"px",this.orientation=e,this.div.screenTransform)){var a=this.div.screenTransform.indexOf("translate");if(a>-1){var g=" "+this.div.screenTransform.slice(a);this.div.screenTransform=this.initialTransform+g,this.div.style.webkitTransform=this.div.screenTransform,this.div.style.transform=this.div.screenTransform}}}},k.prototype.getCenterPos=function(){var e=this.getDimensions(),t=new THREE.Vector3,o=publicObjectSet.player,i=m.a.handelPadding(e.left,e.top);if(m.a.convertScreenPositionToNDC(i.x+e.width/2,i.y+e.height/2,t),o.flying&&o.camera.updateProjectionMatrix(),t.unproject(o.camera),h.a.ifFish){var n=o.camera.position.distanceTo(this.tag.position);t=t.sub(o.camera.position).normalize().multiplyScalar(n).add(o.camera.position)}return t};var L=k,F=i(21),N=i(57),H={};if(!isMobile&&n.a.detectIE()){var z=i(199).default;for(var j in z[32])H[j]=N.a.load(z[32][j],null,null,{antialias:!0})}else{var G=i(136).default;for(var j in G)H[j]=N.a.load(G[j],null,null,{antialias:!0})}if(edit&&2!=h.a.setSpotType||!edit)var V=i(245).default;function U(e,t,o){this.model=e,this.sid=t,this.color=(new THREE.Color).set(o.color||I.a.tagDefault),this.hoverColor=I.a._darken(this.color,.2),this.floor=null,this.floorIndex=o.floor,this.mode=s.a.PANORAMA,this.obj3d=null,this.disc=null,this.position=(new THREE.Vector3).copy(o.position),h.a.ifFish&&(this.origin=this.position.clone()),this.discWorldPosition=null,this.discScale=.06,this.fileName=o.fileName||{},this.fileSrc=o.fileSrc||{},o.style&&o.style.includes("animate")?(this.pages=o.pages,this.billboard=new L(o.pages[0].label,o.pages[0].description,o.pages[0].media,o.outLink,this)):(this.billboard=new L(o.label,o.description,o.media,o.outLink,this),this.visibleTransition=null,this.hoveringDisc=!1),this.state=o.state,this.snapInfo=o.snapInfo,this.snapInfo&&(this.snapInfo.nodeEnd=(new THREE.Vector3).copy(o.snapInfo.nodeEnd)),this.visiblePanos=[],"mark"!=this.state&&this.setVisiblePanos(o.visiblePanos),this.style=H[o.style]?o.style:o.style&&o.style.includes("animate")?"photo":"note",this.model.tags[t]=this}var Q=isMobile?new THREE.PlaneBufferGeometry(1.4,1.4):new THREE.PlaneBufferGeometry(1,1);U.prototype=Object.create(EventEmitter.prototype),U.raycaster=new THREE.Raycaster,U.prototype.bindEvents=function(){this.billboard.on(A.a.BillboardEvent.ENTER,this.setHoverState.bind(this)),this.billboard.on(A.a.BillboardEvent.LEAVE,this.setFreeState.bind(this))},U.prototype.unbindEvent=function(){this.billboard.removeListener(A.a.BillboardEvent.ENTER,this.setHoverState.bind(this)),this.billboard.removeListener(A.a.BillboardEvent.LEAVE,this.setFreeState.bind(this))},U.prototype.remove=function(){this.unbindEvent(),b.a.gui.playAudio(this.billboard.mediaObject.audioPlayer,!1),this.obj3d.remove(this.disc),this.floor.remove(this.obj3d),this.markGroup&&this.markGroup.remove();try{this.billboard.div.parentElement.removeChild(this.billboard.div)}catch(e){console.log(e)}this.tagManager&&(this==this.tagManager.activeTag&&this.tagManager.dismissActiveTag(),this.tagManager.removeTag(this)),delete this.model.tags[this.sid]};var W,Y=function(e){var t={};for(var o in e)t[o]="outLink"==o?e[o]:{file:e[o].file,media:e[o].media,src:e[o].src,needSave:e[o].needSave};return t};U.prototype.getTempData=function(){var e={sid:this.sid,position:this.position.clone(),label:this.billboard.label,description:this.billboard.description,style:this.style,media:this.billboard.media.slice(0),mediaData:Y(this.billboard.mediaData),fileSrc:f.default.CloneObject(this.fileSrc),fileName:f.default.CloneObject(this.fileName),visiblePanos:this.getVisiPanoData(),mediaObject:this.billboard.mediaObject};return this.snapInfo?2==h.a.setSpotType||1==h.a.setSpotType&&(e.snapInfo={panoId:this.snapInfo.panoId,nodeEnd:this.snapInfo.nodeEnd.clone()}):e.posGets=this.posGets,e},U.prototype.recoverFromTemp=function(e,t){var o=this.billboard.mediaData.video?this.billboard.mediaData.video.poster:void 0;this.billboard.mediaData=e.mediaData,this.billboard.mediaData.video&&(this.billboard.mediaData.video.poster=o),this.billboard.mediaObject=e.mediaObject,"builded"!=t&&(this.build(),this.bindEvents(),b.a.player.model.tags[e.sid]=this,b.a.player.tagManager.getTag(this)),this.visiblePanos=e.visiblePanos},U.prototype.rePos=function(e,t,o){this.position.copy(e),this.obj3d.position.copy(e),this.markGroup&&t&&this.markGroup.rePosAtSphere(t,o)},U.prototype.shineSpot=function(e){if("end"==e)return C.a.cancelById(A.a.freeze.spotShine+this.sid),void(this.disc.material.uniforms.opacity.value=1);this.model.tags[this.sid]&&C.a.start(g.a.uniform(this.disc,"opacity",1==this.disc.material.uniforms.opacity.value?.4:1,(function(e){})),700,this.shineSpot.bind(this),0,r.a[A.a.transition.blendEasing],"wallLineShine",A.a.freeze.spotShine+this.sid)},U.prototype.setVisiblePanos=function(e){this.visiblePanos=[];var t=function(){var e=this.model.panos.index,t=this.position.clone();for(var o in this.snapInfo&&(this.snapInfo.standPos?this.snapInfo.standPos.clone():this.model.panos.index[this.snapInfo.panoId].position.clone()),e){var i=e[o].position.clone(),n=new THREE.Raycaster(i,t.clone().sub(i).normalize(),0,i.distanceTo(t)-this.discScale/2-.075).intersectObjects(this.model.chunks);n&&n.length||this.visiblePanos.push(e[o].id)}}.bind(this);if(e)if("string"==typeof e[0])this.visiblePanos=e;else for(var o=0;o-1}));var I=new THREE.Vector3;n.push((function(e){return Math.abs(e.position.x-r.x)>A.a.tags.visibility.cameraClearance||Math.abs(e.position.z-r.z)>A.a.tags.visibility.cameraClearance}),(function(e){I.copy(r).sub(e.position);var t=THREE.Math.radToDeg(Math.atan(I.y/Math.sqrt(I.x*I.x+I.z*I.z)));if(b.a.recordGuider.onRecording)return-460&&l[0].pano},U.prototype.getAngle=function(e,t){var o=e.camera.quaternion.clone(),i=(new THREE.Matrix4).lookAt(e.currentPano.position,t,new THREE.Vector3(0,1,0)),n=(new THREE.Quaternion).setFromRotationMatrix(i),a=new THREE.Vector3(0,0,-1).clone().applyQuaternion(o),g=new THREE.Vector3(0,0,-1).clone().applyQuaternion(n);return a.angleTo(g)/Math.PI*180},U.prototype.examine=function(e,t,o){var i=e.mode,n=A.a.tags.navigate.nearestPano&&this.closestPanoTowardTag(i,e.currentPano,t)||e.currentPano,g=h.a.ifFish?this.origin.clone():this.disc.getWorldPosition();this.billboard.setActiveState(),this.examing=!0,e.flyingToTag=!0,console.log("examing");var r=function(){if(e.flyingToTag=!1,e.waitFlytoItemFuc){var t=e.waitFlytoItemFuc;e.waitFlytoItemFuc=null,t()}b.a.tagManager.navigatingViaTag=!1}.bind(this),C=function(){this.examing=!1,this.billboard.examTimes=0,!o||window.cancelReExam?r():o((function(){r()})),window.cancelReExam=!1,console.log("ex done ")}.bind(this),I=function(t){if(window.cancelReExam||"panorama"!=e.mode)C();else{if(!this.disc.visible)return b.a.tagManager.dismissActiveTag(),void C();var o=function(){var o=this.billboard.getCenterPos();console.log("ff"),e.flyToPano({pano:n,lookAtPoint:o,examTag:this,constantMoveSpeed:"constant"==t,cancelLookFun:C},function(){if(console.log("ff11111"),isMobile||b.a.recordGuider.onRecording||b.a.playGuider.isPlaying)C();else if(window.cancelReExam||b.a.tagManager.activeTag!=this)C();else{var e=this.billboard.getDimensions();if(0==e.height&&0==e.width)C();else if(this.billboard.ifOutOfScreen())if(b.a.recordGuider.onRecording)C();else{if(this.billboard.examTimes>0)return console.log("exam>1次仍未校准,已放弃"),void C();console.log("准备重新校准"),I("constant"),this.billboard.examTimes++}else C();this.billboard.loadingMedia&&(this.billboard.needExam=!0)}}.bind(this))}.bind(this);this.billboard.ifOutOfScreen()?isMobile||b.a.recordGuider.onRecording||b.a.playGuider.isPlaying||(e.cameraControls.activeControl.lat<=A.a.insideLookLimitDown+5?(this.billboard.setActiveState(),this.billboard.applyOrientation("top"),setTimeout(o,60)):e.cameraControls.activeControl.lat>=A.a.insideLookLimitUp-5?(this.billboard.setActiveState(),this.billboard.applyOrientation("bottom"),setTimeout(o,60)):o()):o(),this.billboard.loadingMedia&&(this.billboard.needExam=!0)}}.bind(this);if(i===s.a.PANORAMA)if("currPano"!=t&&(n!==e.currentPano||"force"===t&&this.getAngle(e,g)>60)||isMobile||b.a.recordGuider.onRecording||b.a.playGuider.isPlaying){var l={pano:n,lookAtPoint:g,duration:null,maxDistanceOverride:null,skipWarpingCheck:!1,examTag:this,force:"force"==t,cancelLookFun:C};if(b.a.recordGuider.onRecording&&n==e.currentPano){var c=o;o=function(e){if(b.a.recordGuider.onRecording&&Store.capData.length>0&&Store.capData[Store.capData.length-1].tags.length>0){var t=Store.capData[Store.capData.length-1].tags.length;Store.capData[Store.capData.length-1].tags[t-1].quaternion=b.a.player.quaternion.toArray();var o=D.a.getTime(b.a.recordGuider.startCapTime);if(Store.capData[Store.capData.length-1].tags[t-1].eTime=o,t=Store.frameData.length-1,void 0===Store.frameData[t])return void a.a.error("原生模式录屏数据里热点缺了!");for(var i=Store.frameData[t].length-1;i>0;--i)if("spot"==Store.frameData[t][i].type){Store.frameData[t][i].endqua=b.a.player.quaternion.toArray(),Store.frameData[t][i].endTime=o;break}}c&&c(),e&&e()}}isMobile||b.a.recordGuider.onRecording||b.a.playGuider.isPlaying?e.flyToPano(l,C):e.flyToPano(l,I)}else{var d=!1,u=this.billboard.open();this.billboard.examOpenPromise=u,u.done(function(){d=!0,void 0===b.a.tagManager.tagNeedClose[this.sid]&&(b.a.tagManager.tagNeedClose[this.sid]=this),I()}.bind(this)).fail((function(){d=!0,C()})),setTimeout(function(){d||(console.log("setTimeout 1100"),"open"==this.billboard.state||"active"==this.billboard.state?I():(console.log("state "+this.billboard.state),C()))}.bind(this),900)}else{var p={pano:n,examTag:this};if(g){var f=(new THREE.Matrix4).lookAt(n.position,g,new THREE.Vector3(0,1,0));p.quaternion=(new THREE.Quaternion).setFromRotationMatrix(f)}p.callback=I,p.duration=1500,p.mode=s.a.PANORAMA,e.flyToNewMode(p)}},U.prototype.update=(W=new THREE.Vector3,function(e,t){!this.disc||"mark"==this.state&&b.a.editor.enterSplitView&&!this.isMeasurePoint||(h.a.ifFish?(this.obj3d.updateMatrixWorld(),this.discWorldPosition=this.obj3d.position.clone(),W.copy(this.discWorldPosition).project(t),(W.z<1||this.tagManager.forceUpdateDisc)&&(this.tagManager.forceUpdateDisc=!1,this.disc.visible&&this.updateDisc(e,t),this.billboard.needsUpdate()&&(W.y*=-1,this.billboard.update(W,this.getDiscRadius(W,t))))):(this.discWorldPosition=this.disc.getWorldPosition(new THREE.Vector3),this.updateDisc(e,t),this.billboard.needsUpdate()&&(W.copy(this.discWorldPosition).project(t),W.z<1||this.updateBoardOrient?(W.y*=-1,this.updateBoardOrient=!1,this.billboard.div.style.opacity="1",this.billboard.update(W,this.getDiscRadius(W,t))):this.billboard.div.style.opacity="0")))}),U.prototype.updateDisc=function(e,t){var o=new THREE.Vector3,i=new THREE.Vector3,n=new THREE.Vector3,a=new THREE.Vector3,g=new THREE.Vector3;return function(e,t){var r=A.a.tags.visibility,C=A.a.tags.disc.scale,I=e===s.a.DOLLHOUSE||e===s.a.FLOORPLAN?A.a.tags.visibility.visibleDistance:t.position.distanceTo(h.a.ifFish?this.origin:this.discWorldPosition);if(this.obj3d.visible=0!==this.disc.material.opacity&&(r.anyDistance||I<=r.visibleDistance||e===s.a.TRANSITIONING)&&(!r.hideViaFloor||this.tagVisibleOnCurrentFloor(e))&&(!r.hideOffScreenDisc||!this.offScreen(this.disc,t))&&(!r.hideOffScreenObject||!this.offScreen(this.obj3d,t)),this.obj3d.visible&&this.disc.visible){this.disc.quaternion.copy(t.quaternion);var l=C.maxSize-(C.maxSize-C.minSize)*THREE.Math.smoothstep(I,C.nearBound,C.farBound);o.copy(this.discWorldPosition).project(t),i.set($("#player").width()/2,$("#player").height()/2,1).multiply(o),n.set(l/2,0,0).add(i),a.set(2/$("#player").width(),2/$("#player").height(),1).multiply(n),g.copy(a).unproject(t);var c=g.distanceTo(this.discWorldPosition),d=1+A.a.tags.disc.scale.responsiveness/100*(U.viewportScale()-1);this.discScale=c*d;try{b.a.player.setTagVisible?this.discScale*=isMobile?2:1.5:this.isMeasurePoint&&(this.discScale*=.9)}catch(e){}this.disc.scale.set(this.discScale,this.discScale,this.discScale)}}}(),U.prototype.getDiscRadius=function(e,t){var o=new THREE.Vector3;return function(e,t){return o.set(-this.discScale/2,0,0).applyQuaternion(t.quaternion).add(this.discWorldPosition).project(t),Math.abs(e.x-o.x)*$("#player").width()}}(),U.prototype.tagVisibleOnCurrentFloor=function(e){return!(e===s.a.DOLLHOUSE||e===s.a.FLOORPLAN)||this.model.allFloorsVisible||!this.floor.hidden},U.prototype.offScreen=function(e,t){var o=e.getWorldPosition().project(t);return!(-11?t-1:0),i=1;i=0;--n){var a=this.tryEntries[n],g=a.completion;if("root"===a.tryLoc)return i("end");if(a.tryLoc<=this.prev){var r=o.call(a,"catchLoc"),A=o.call(a,"finallyLoc");if(r&&A){if(this.prev=0;--i){var n=this.tryEntries[i];if(n.tryLoc<=this.prev&&o.call(n,"finallyLoc")&&this.prev=0;--t){var o=this.tryEntries[t];if(o.finallyLoc===e)return this.complete(o.completion,o.afterLoc),y(o),C}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var o=this.tryEntries[t];if(o.tryLoc===e){var i=o.completion;if("throw"===i.type){var n=i.arg;y(o)}return n}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,o){return this.delegate={iterator:w(e),resultName:t,nextLoc:o},"next"===this.method&&(this.arg=void 0),C}},e}(e.exports);try{regeneratorRuntime=i}catch(e){Function("r","regeneratorRuntime = r")(i)}},function(e,t){e.exports=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e}},function(e,t){var o=Math.ceil,i=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?i:o)(e)}},,,function(e,t,o){"use strict";var i,n,a,g,r=o(112),A=o(55),C=o(94),s=o(121),I=o(58),l=o(68),c=o(103),d=o(133),u=o(195),h=o(156),p=o(197).set,f=o(237)(),m=o(198),v=o(238),y=o(239),b=o(240),w=A.TypeError,E=A.process,T=E&&E.versions,P=T&&T.v8||"",S=A.Promise,D="process"==s(E),x=function(){},M=n=m.f,R=!!function(){try{var e=S.resolve(1),t=(e.constructor={})[o(56)("species")]=function(e){e(x,x)};return(D||"function"==typeof PromiseRejectionEvent)&&e.then(x)instanceof t&&0!==P.indexOf("6.6")&&-1===y.indexOf("Chrome/66")}catch(e){}}(),k=function(e){var t;return!(!l(e)||"function"!=typeof(t=e.then))&&t},B=function(e,t){if(!e._n){e._n=!0;var o=e._c;f((function(){for(var i=e._v,n=1==e._s,a=0,g=function(t){var o,a,g,r=n?t.ok:t.fail,A=t.resolve,C=t.reject,s=t.domain;try{r?(n||(2==e._h&&F(e),e._h=1),!0===r?o=i:(s&&s.enter(),o=r(i),s&&(s.exit(),g=!0)),o===t.promise?C(w("Promise-chain cycle")):(a=k(o))?a.call(o,A,C):A(o)):C(i)}catch(e){s&&!g&&s.exit(),C(e)}};o.length>a;)g(o[a++]);e._c=[],e._n=!1,t&&!e._h&&O(e)}))}},O=function(e){p.call(A,(function(){var t,o,i,n=e._v,a=L(e);if(a&&(t=v((function(){D?E.emit("unhandledRejection",n,e):(o=A.onunhandledrejection)?o({promise:e,reason:n}):(i=A.console)&&i.error&&i.error("Unhandled promise rejection",n)})),e._h=D||L(e)?2:1),e._a=void 0,a&&t.e)throw t.v}))},L=function(e){return 1!==e._h&&0===(e._a||e._c).length},F=function(e){p.call(A,(function(){var t;D?E.emit("rejectionHandled",e):(t=A.onrejectionhandled)&&t({promise:e,reason:e._v})}))},N=function(e){var t=this;t._d||(t._d=!0,(t=t._w||t)._v=e,t._s=2,t._a||(t._a=t._c.slice()),B(t,!0))},H=function(e){var t,o=this;if(!o._d){o._d=!0,o=o._w||o;try{if(o===e)throw w("Promise can't be resolved itself");(t=k(e))?f((function(){var i={_w:o,_d:!1};try{t.call(e,C(H,i,1),C(N,i,1))}catch(e){N.call(i,e)}})):(o._v=e,o._s=1,B(o,!1))}catch(e){N.call({_w:o,_d:!1},e)}}};R||(S=function(e){d(this,S,"Promise","_h"),c(e),i.call(this);try{e(C(H,this,1),C(N,this,1))}catch(e){N.call(this,e)}},(i=function(e){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=o(132)(S.prototype,{then:function(e,t){var o=M(h(this,S));return o.ok="function"!=typeof e||e,o.fail="function"==typeof t&&t,o.domain=D?E.domain:void 0,this._c.push(o),this._a&&this._a.push(o),this._s&&B(this,!1),o.promise},catch:function(e){return this.then(void 0,e)}}),a=function(){var e=new i;this.promise=e,this.resolve=C(H,e,1),this.reject=C(N,e,1)},m.f=M=function(e){return e===S||e===g?new a(e):n(e)}),I(I.G+I.W+I.F*!R,{Promise:S}),o(122)(S,"Promise"),o(149)("Promise"),g=o(110).Promise,I(I.S+I.F*!R,"Promise",{reject:function(e){var t=M(this);return(0,t.reject)(e),t.promise}}),I(I.S+I.F*(r||!R),"Promise",{resolve:function(e){return b(r&&this===g?S:this,e)}}),I(I.S+I.F*!(R&&o(148)((function(e){S.all(e).catch(x)}))),"Promise",{all:function(e){var t=this,o=M(t),i=o.resolve,n=o.reject,a=v((function(){var o=[],a=0,g=1;u(e,!1,(function(e){var r=a++,A=!1;o.push(void 0),g++,t.resolve(e).then((function(e){A||(A=!0,o[r]=e,--g||i(o))}),n)})),--g||i(o)}));return a.e&&n(a.v),o.promise},race:function(e){var t=this,o=M(t),i=o.reject,n=v((function(){u(e,!1,(function(e){t.resolve(e).then(o.resolve,i)}))}));return n.e&&i(n.v),o.promise}})},function(e,t,o){"use strict";o.r(t);o(38),o(49),o(29),o(69),o(72);var i=o(25),n=o.n(i),a=o(28),g=o.n(a),r=o(34),A=o.n(r),C=o(35),s=o.n(C),I=o(19),l=o.n(I),c=o(0),d=o(3),u=o(10);function h(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var p,f,m=Quill.import("parchment"),v=Quill.import("modules/clipboard"),y=Quill.import("delta"),b=function(e){A()(i,e);var t,o=(t=i,function(){var e,o=l()(t);if(h()){var i=l()(this).constructor;e=Reflect.construct(o,arguments,i)}else e=o.apply(this,arguments);return s()(this,e)});function i(){return n()(this,i),o.apply(this,arguments)}return g()(i,[{key:"onPaste",value:function(e){e.preventDefault();var t=this.quill.getSelection(),o=e.clipboardData.getData("text/plain").replace(/\r\n|\n|\t/g,""),i=(new y).retain(t.index).delete(t.length).insert(o),n=o.length+t.index;this.quill.updateContents(i),this.quill.setSelection(n,0),this.quill.scrollIntoView()}}]),i}(v);Quill.register("modules/clipboard",b,!0);var w={project_name_normal:function(e,t,o){var i=e.val().length;return t.attr("data-size",(o||15)-i),i},project_name:function(e,t,o,i){var n=u.default.getWordsLength(e.val(),i&&(o||15)),a=Math.floor((o||15)-n.len);return t.attr("data-size",a),i&&e.val(n.words),a},editor:function(e,t){var o=200,i=P(e).length,n=$("#project-intro"+t);return""==e&&(o=200),i>o?n.addClass("sizeWaring").attr("data-size",d.a.get("超出字数限制")):n.removeClass("sizeWaring").attr("data-size",o-i),o-i}};if(!isMobile){var E=function(e,t,o,i){var n=new Quill(t,{modules:{toolbar:!1},placeholder:d.a.get("请填写简介")});return $(t).on("click","a",(function(e){var t=m.find(e.target).offset(n.scroll),o=$(this).text().length;n.__range={index:t,length:o}})),n.txt={html:function(e){if(void 0===e)return n.root.innerHTML;n.root.innerHTML=e}},n.on("text-change",(function(){o(n.root.innerHTML,n.getText())})),n.on("selection-change",(function(){n.__init_focus=!0})),n.__setLink=function(e,t){if(!t||!e)return!1;/http(s)?:\/\//.test(t)||(t="https://"+t),n.__init_focus&&n.focus();var o=(n.getSelection()||{}).index;return void 0===o&&(o=n.getLength()-1),n.insertText(o,e,"link",t),!0},n};window.editor1=p=E(0,"#edit1",(function(e){var t=p.getLength()-1,o=$("#project-intro1");t>200?(e=S(e,200),o.hasClass("sizeWaring")||o.addClass("sizeWaring").attr("data-size",d.a.get("超出字数限制"))):(o.hasClass("sizeWaring")&&o.removeClass("sizeWaring"),o.attr("data-size",200-t)),c.a.editor.markTag&&("


    "==e?c.a.editor.markTag.billboard.changeDesc(""):c.a.editor.markTag.billboard.changeDesc(e))})),window.editor2=f=E(0,"#edit2",(function(e){var t=f.getLength()-1,o=$("#project-intro2");t>200?(e=S(e,200),o.hasClass("sizeWaring")||o.addClass("sizeWaring").attr("data-size",d.a.get("超出字数限制"))):(o.hasClass("sizeWaring")&&o.removeClass("sizeWaring"),o.attr("data-size",200-t)),"


    "==e||"

    "==e?($("#j-header-arrow").hasClass("down")&&$("#j-header-dropdown").click(),$("#j-header-dropdown .desc #j-header-scenedesc").html(""),$("#j-header-dropdown").addClass("noTouch")):($("#j-header-dropdown .desc #j-header-scenedesc").html(e),$("#j-header-dropdown").removeClass("noTouch"))}))}function T(e,t){this.tempDiv=document.createElement("div"),this.tempDiv.id="TempNodeForTest",this.tempDiv.innerHTML=e,this.charCount=0,this.limit=t}function P(e){var t=P.__textarea;return t||(t=P.__textarea=document.createElement("textarea")),t.innerHTML=e,t.value}function S(e,t){return new T(e,t).cut()}T.prototype.cut=function(){var e=document.createElement("div");return this.searchEnd(this.tempDiv,e),e.innerHTML},T.prototype.searchEnd=function(e,t){for(var o,i,n=0;n=this.limit)return(i=o.cloneNode(!0)).nodeValue=o.nodeValue.substr(0,this.limit-this.charCount),t.appendChild(i),!0;i=o.cloneNode(!0),t.appendChild(i),this.charCount+=o.nodeValue.length}else{if(i=o.cloneNode(!0),t.appendChild(i),0===o.childNodes.length)continue;i.innerHTML="";var a=this.searchEnd(o,i);if(a)return a}return!1};var D={editor1:p,editor2:f,linkChange:function(e,t,o,i,n){if(e.hasClass("submit")){var a=t.val().trim(),g=o.val().trim();if(!a)return c.a.gui.showInfo(d.a.get("链接文本不能为空"));if(!g)return c.a.gui.showInfo(d.a.get("链接地址不能为空"));i.__setLink(a,g)}t.val(""),o.val(""),n.attr("data-size","40")},checkLen:w,cutHtmlString:S};t.default=D},function(e,t,o){"use strict";t.a={ContextCreated:"scene-renderer-context-created",AfterRender:"after-render",MemoryUsageUpdated:"scene-renderer-memory-usage-updated"}},function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(e+" is not a function!");return e}},function(e,t){var o={}.toString;e.exports=function(e){return o.call(e).slice(8,-1)}},function(e,t,o){"use strict";var i=o(58),n=o(154)(6),a="findIndex",g=!0;a in[]&&Array(1)[a]((function(){g=!1})),i(i.P+i.F*g,"Array",{findIndex:function(e){return n(this,e,arguments.length>1?arguments[1]:void 0)}}),o(120)(a)},,,function(e,t,o){"use strict";o(39);var i=o(109),n=function(e){i.a.call(this,e),this.panoId=e.panoId,this.orthoZoom=e.orthoZoom,this.floorVisibility=e.floorVisibility,this.thumbUrl=e.thumbUrl,this.name=e.name};(n.prototype=Object.create(i.a.prototype)).isPano=function(){return this.panoId&&""!==this.panoId},t.a=n},function(e,t,o){"use strict";function i(e){e=e||{},this.position=new THREE.Vector3,this.quaternion=new THREE.Quaternion,this.update(e)}i.prototype=Object.create(EventEmitter.prototype),i.prototype.isValid=function(){return!!this.cameraMode},i.prototype.update=function(e){return this.cameraMode=e.cameraMode||this.cameraMode,this.pano=e.pano||this.pano,e.position&&this.position.copy(e.position),e.quaternion&&this.quaternion.copy(e.quaternion),this},t.a=i},function(e,t){var o=e.exports={version:"2.6.11"};"number"==typeof __e&&(__e=o)},function(e,t){var o=0,i=Math.random();e.exports=function(e){return"Symbol(".concat(void 0===e?"":e,")_",(++o+i).toString(36))}},function(e,t){e.exports=!1},function(e,t){e.exports={}},function(e,t,o){"use strict";o.d(t,"b",(function(){return p})),o.d(t,"a",(function(){return f})),o.d(t,"c",(function(){return m}));o(49),o(69),o(100),o(29);var i=o(25),n=o.n(i),a=o(28),g=o.n(a),r=o(34),A=o.n(r),C=o(35),s=o.n(C),I=o(19),l=o.n(I),c=o(91),d=(o(10),o(7)),u=o(2);o(0);function h(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}function p(e){function t(){window.removeEventListener("click",t),document.removeEventListener("touchstart",t),document.removeEventListener("mousedown",t),$("#player")[0].removeEventListener("click",t),$("#player")[0].removeEventListener("touchstart",t),e()}if(isMobile)if(isMobile&&d.a.detectWeixin()){var o=function(){WeixinJSBridge.invoke("getNetworkType",{},(function(e){t()}),!1)};"undefined"!=typeof WeixinJSBridge?o():document.addEventListener("WeixinJSBridgeReady",o)}else u.a.app&&d.a.detectAndroid()?(window.addEventListener("click",t),$("#player")[0].addEventListener("click",t)):(document.addEventListener("touchstart",t),document.addEventListener("mousedown",t),$("#player")[0].addEventListener("touchstart",t));else t()}function f(e){var t=d.a.detectWeixin()||!isMobile;e&&e((function(e){if(isMobile&&d.a.detectWeixin()){var o=function(){WeixinJSBridge.invoke("getNetworkType",{},(function(o){e&&e(t)}),!1)};"undefined"!=typeof WeixinJSBridge?o():document.addEventListener("WeixinJSBridgeReady",o)}else e&&e(t)}))}var m=function(e){A()(i,e);var t,o=(t=i,function(){var e,o=l()(t);if(h()){var i=l()(this).constructor;e=Reflect.construct(o,arguments,i)}else e=o.apply(this,arguments);return s()(this,e)});function i(){var e;return n()(this,i),(e=o.call(this))._url="",e._loaded=!1,e._config={loop:!1,autoplay:!1},e._isByOther=!1,e._isPause=!1,e._isAutoplay=!1,e}return g()(i,[{key:"url",value:function(e,t){var o=this;return this.remove(),this._url=e,this._sound=new Howl({src:[e],format:["mp3","webm"]}),this._sound.once("load",(function(){o.emit("loaded",o._sound.duration()),o._loaded=!0,t&&t()})),this._sound.on("end",(function(){return o.emit("end")})),this._sound.on("loaderror",(function(e){o.emit("error",e)})),this}},{key:"config",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};for(var t in e)this._config[t]=e[t]}},{key:"play",value:function(){this._url&&!this.isPlaying&&(this._sound.play(),this._isPause=!1,this._isByOther=!1,this.emit("playing"))}},{key:"pause",value:function(e){this.isPlaying&&!0===e&&(this._isByOther=!0),this._url&&this.isPlaying&&(this._sound.pause(),this._isPause=!0),this.emit("paused")}},{key:"stop",value:function(){return this._loaded&&this._sound.stop(),this._isByOther=!1,this._isPause=!1,this.emit("stop"),this}},{key:"time",value:function(e){this._loaded&&this._sound.seek(e)}},{key:"mute",value:function(e){this._loaded&&this._sound.mute(e)}},{key:"setLoop",value:function(e){return this._sound.loop(e),this}},{key:"setAutoplay",value:function(e){return this._isAutoplay=e,this}},{key:"remove",value:function(){this._sound&&(this._sound.stop(),this._sound.unload()),this._url="",this._loaded=!1}},{key:"isReady",value:function(){return this._loaded}},{key:"canPlay",value:function(){return!!this._url}},{key:"resume",value:function(){(this._isAutoplay||this._isPause)&&this._isByOther&&this.play()}},{key:"checkLoaded",value:function(){return this._loaded&&this.emit("loaded",this._sound.duration()),this}},{key:"buffer",value:function(){return this._buffer}},{key:"request",value:function(){var e=this;return new Promise((function(t,o){var i=new XMLHttpRequest;i.open("GET",e._url,!0),i.responseType="arraybuffer",i.onload=function(){var n=(i.status+"")[0];if("0"!==n&&"2"!==n&&"3"!==n)return o();e._buffer=i.response,t(URL.createObjectURL(new Blob([e._buffer])))},i.onerror=function(){o()},i.send()}))}},{key:"isPlaying",get:function(){return!!this._loaded&&(this._sound.playing&&this._sound.playing())}},{key:"isPause",get:function(){return!!this._loaded&&this._isPause}}]),i}(c.a)},function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},function(e,t,o){var i=o(187),n=o(162).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return i(e,n)}},function(e,t,o){var i=o(175),n=o(96);e.exports=function(e){return i(n(e))}},function(e,t,o){"use strict";o(146);var i=o(36),n=o(10),a=o(202),g=o.n(a),r=o(4);function C(e,t,o){e&&(e=e.toLowerCase().trim());var i=new I.UP.clone,n=Math.PI/3,a=Math.PI/2;switch(e){case"left":o.copy(t),o.applyAxisAngle(i,a);break;case"right":o.copy(t),o.applyAxisAngle(i,-a);break;case"forwardleft":o.copy(t),o.applyAxisAngle(i,n);break;case"forwardright":o.copy(t),o.applyAxisAngle(i,-n);break;case"forward":default:o.copy(t)}return o}function s(e,t){if(e){var o={pano:e,lookAtPoint:null,duration:null,maxDistanceOverride:null,skipWarpingCheck:!1};this.player.flyToPano(o,(function(){t&&t({success:!0,message:"Transition complete."})}))}else R.warn("Showcase -> clickPanoObject: Unable to find pano."),t&&t({success:!1,error:"Unable to find pano."})}function l(e,t){var o=this.findRankedPano(e,t);return o>=0?this.handleToObject[o]:(R.warn("Showcase -> findRankedPanoObject: Unable to find nearby pano."),null)}function d(e,t){var o=this.findRankedtag(e,t);return o>=0?this.handleToObject[o]:(R.warn("Showcase -> findRankedtagObject: Unable to find nearby tag."),null)}function u(e,t){t.copy(I.FORWARD),e.getDirection(t)}var h,p,f,m,y={director:null,player:null,controls:null,sceneRenderer:null,model:null,init:function(e,t,o,i){this.director=e,this.player=o,this.controls=t,this.sceneRenderer=i},handleToObject:{},objectToHandle:{},handleCount:0,onMessageReceive:function(e){if(e){var t=e.targetFunction,o=e.params,i=e.onDone;t&&this[t]&&this[t](o,i)}},waitForInit:function(e,t){F.then(t.bind({success:!0,message:"Init complete."}))},moveToPano:function(e,t){var o=new THREE.Euler(0,0,0,"YXZ"),i=new THREE.Quaternion;return function(e,t){var n=e.pano,a=e.rotation,g=e.transition;if(!this.model)return t({success:!1,error:"The model has not been loaded yet"});var C=this.model.panos.get(n);if(!C)return t({success:!1,error:n+" does not exist in this model"});if(!a)return t({sucess:!1,erorr:a+" is not a valid rotation"});o.set(c.Math.degToRad(a.x||0),c.Math.degToRad(a.y||0),c.Math.degToRad(a.z||0),"YXZ"),r.a.info(a.z);var s={success:!0,message:n};if(g===A.FADEOUT)i.setFromEuler(o),this.player.warpToPano(C,i,null,null,b.BLACK,null,null,t.bind(this,s));else{var l,d;g===A.INSTANT&&(l=0,d=0);var u=I.FORWARD.clone().applyEuler(o).add(C.position);this.player.flyToPano({pano:C,lookAtPoint:u,duration:l,aimDuration:d},t.bind(this,s))}}}(),moveInDirection:function(e,t){var o=e.direction;return void 0===v[o]?(R.warn("Showcase -> moveInDirection: Cannot move in invalid direction."),void(t&&t({success:!1,error:"Invalid direction."}))):void this.player.flyLocalDirection(I[o].clone()).then((function(e){t(e?{success:!0,message:"moved "+o}:{success:!1,error:"Cannot move in direction: "+o})}))},getPose:function(e,t){return this.player.camera.position,(new THREE.Euler).setFromQuaternion(this.player.camera.quaternion,"YXZ"),t({success:!0,message:B(this.player)})},takeScreenShot:(f=new THREE.PerspectiveCamera,m=new THREE.WebGLRenderTarget,function(e,t){if(!e.resolution)return t({success:!1,error:"An invalid resolution was specified"});if(-1===e.resolution.width||-1===e.resolution.height){var o=this.sceneRenderer.renderer.getSize();e.resolution.width=o.width,e.resolution.height=o.height}f.layers.set(i.a.DEFAULT),e.visibleObjects&&(e.visibleObjects.showtags&&f.layers.enable(i.a.TAG),e.visibleObjects.showPucks&&f.layers.enable(i.a.PANOMARKERS),e.visibleObjects.showReticule&&f.layers.enable(i.a.RETICULE));var a=e.resolution.width,r=e.resolution.height,A=a/r;f.position.copy(this.sceneRenderer.camera.position),f.quaternion.copy(this.sceneRenderer.camera.quaternion),f.projectionMatrix.copy(this.player.camera.projectionMatrix),f.projectionMatrix.elements[0]=this.player.camera.projectionMatrix.elements[5]/A,f.projectionMatrix.elements[5]=-f.projectionMatrix.elements[5],m.setSize(a,r),this.sceneRenderer.renderer.render(this.sceneRenderer.scene,f,m);var C=new Uint8Array(a*r*4);this.sceneRenderer.renderer.readRenderTargetPixels(m,0,0,a,r,C);var s=g.a.encode({data:C,width:a,height:r,heading:180,pitch:0},e.quality);t({success:!0,message:"data:image/jpg;base64,"+n.default.uint8ToBase64(s.data)})}),findRankedPano:function(e,t){var o=new THREE.Vector3,i=new THREE.Vector3;return function(e,t){u(this.player,i),C(t,i,o);var n=this.player.rankedPanoInDirection(e,o);if(n){var a=this.objectToHandle[n.id];return a||(this.objectToHandle[n.id]=a=this.handleCount++,this.handleToObject[a]=n),a}return R.warn("Showcase -> findRankedPano: Unable to find nearby pano."),-1}}(),findRankedtag:function(e,t){var o=new THREE.Vector3,i=new THREE.Vector3;return function(e,t){u(this.player,i),C(t,i,o);var n=this.player.rankedtagInDirection(e,o);if(n){var a=this.objectToHandle[n.sid];return a||(this.objectToHandle[n.sid]=a=this.handleCount++,this.handleToObject[a]=n),a}return R.warn("Showcase -> findRankedtag: Unable to find nearby tag."),-1}}(),clickNearesttag:function(e){this.clickRankedtag(0,e)},clickRankedtag:function(e,t){var o=d.call(this,e,t);o&&O.call(this,o)},clickNearestPano:function(e,t){this.clickRankedPano(0,e,t)},clickRankedPano:function(e,t,o){var i=l.call(this,e,t);i?s.call(this,i,o):o(null)},clickPano:function(e,t){var o=this.handleTable[e];o?s.call(this,o,t):t(null)},rotateDirection:function(e,t){var o=e.direction,i=e.angle;if(!P.active){var n=0,a=0,g=0,r=0;if(!i||isNaN(i))return R.warn("Showcase -> rotateDirection: Invalid rotation angle."),void(t&&t({success:!1,error:"Invalid rotation angle."}));if(this.player.mode===E.TRANSITIONING)return R.warn("Automation -> rotateDirection: Cannot rotate while transitioning"),void(t&&t({success:!1,error:"Cannot rotate while transitioning"}));if(o===v.RIGHT||o===v.LEFT)o===v.RIGHT&&(i=-i),n=i>0?-1:1,g=i;else{if(o!==v.UP&&o!==v.DOWN)return R.warn("Showcase -> rotateDirection: Invalid direction for rotation: "+o),void(t&&t({success:!1,error:"Invalid direction for rotation."}));if(this.player.mode===E.FLOORPLAN)return R.warn("Showcase -> rotateDirection: Cannot rotate "+o+" in floorplan mode"),void(t&&t({success:!1,error:"Cannot rotate "+o+" in floorplan mode"}));if(o===v.DOWN&&(i=-i),0===(i=N.call(this,i)))return R.warn("Showcase -> rotateDirection: Already at maximum rotation in direction: "+o),void(t&&t({success:!1,error:"Already at maximum rotation in direction: "+o}));a=i>0?1:-1,r=i}var A=i;i=c.Math.degToRad(i),g=c.Math.degToRad(g),r=c.Math.degToRad(r);var C=this.controls.activeControl;C.startRotating(n,a),P.start(g,r,this.player,(function(){C.stopRotating(!0),t&&t({success:!0,message:"Rotated "+A.toFixed(2)+"° in direction: "+e.direction})}))}},rotate:(h=new THREE.Vector3,p=new THREE.Vector3,function(e,t){var o=e.xAngle,i=e.yAngle;if(!P.active){if(o=o||0,i=i||0,isNaN(o)||isNaN(i))return R.warn("Showcase -> rotate: Invalid rotation angle."),void(t&&t({success:!1,error:"Invalid rotation angle."}));if(this.player.mode===E.TRANSITIONING)return R.warn("Automation -> rotate: Cannot rotate while transitioning"),void(t&&t({success:!1,error:"Cannot rotate while transitioning"}));Math.abs(o)<.01&&(o=0),Math.abs(i)<.01&&(i=0);var n=i;i=N.call(this,i);var a=n>0?"UP":"DOWN";if(!(o=-o)&&n&&!i)return R.warn("Showcase -> rotate: Already at maximum rotation in direction: "+a),void(t&&t({success:!1,error:"Already at maximum rotation in direction: "+a}));n>i&&R.warn("Showcase -> rotate: Reached maximum rotation in direction: "+a);var g=i;i=c.Math.degToRad(i),o=c.Math.degToRad(o),h.copy(this.player.mode===E.FLOORPLAN?I.UP:I.FORWARD),this.player.getDirection(h),p.copy(h).applyAxisAngle(I.UP,o),p.applyAxisAngle(I.RIGHT,i);var r=(h.angleTo(p),o>0?-1:o<0?1:0),A=i>0?1:i<0?-1:0;Math.abs(o)>Math.abs(i)?A*=Math.abs(i/o):Math.abs(i)>Math.abs(o)&&(r*=Math.abs(o/i));var C=this.controls.activeControl;C.startRotating(r,A),P.start(o,i,this.player,(function(){C.stopRotating(!0),t&&t({success:!0,message:"Rotated "+e.xAngle.toFixed(2)+"° horizontally, "+g.toFixed(2)+"° vertically"})}))}}),panCamera:function(e,t){function o(e){switch(n.removeAllListeners(T.AutoPanComplete),n.removeAllListeners(T.AutoPanInterrupt),n.removeAllListeners(T.AutoPanClamped),e){case T.AutoPanInterrupt:t({success:!0,message:"Camera panning interrupted."});break;case T.AutoPanClamped:if(n.autoPanPosition.x!==i.x||n.autoPanPosition.z!==i.z){if(Math.abs(this.player.position.x-n.autoPanPosition.x)<.01&&Math.abs(this.player.position.z-n.autoPanPosition.z)<.01)return void t({success:!1,error:"Already at edge of current model bounds."});var o="The view point is outside the bounds for the current model. ";o+="The view point was clamped to "+a(n.target.x,n.target.z),console.warn(o)}case T.AutoPanComplete:t({success:!0,message:"Panned camera to position "+a(n.autoPanPosition.x,n.autoPanPosition.z)})}}if(this.player.mode!==E.DOLLHOUSE&&this.player.mode!==E.FLOORPLAN)return t({success:!1,error:"Camera panning is not available in the current mode: "+this.player.mode});var i=e.position,n=this.player.control;n.setAutoPanPosition(i.x,i.z),n.autoPan=!0;var a=function(e,t){return"("+e.toFixed(2)+", "+t.toFixed(2)+")"};n.on(T.AutoPanComplete,o.bind(this,T.AutoPanComplete)),n.on(T.AutoPanInterrupt,o.bind(this,T.AutoPanInterrupt)),n.on(T.AutoPanClamped,o.bind(this,T.AutoPanClamped))},click:function(e,t){var o=e.x,i=e.y;!0===e.percentage&&(o=o/100*$("#player").width(),i=i/100*$("#player").height()),this.player.handleInputStart(o,i),this.player.updateIntersect(),this.player.handleInputEnd(o,i)},mouseOver:function(e,t){var o=e.x,i=e.y;!0===e.percentage&&(o=o/100*$("#player").width(),i=i/100*$("#player").height()),this.player.handleInputMove(o,i),this.player.updateIntersect()},moveToMode:function(e,t){function o(e){t(e?{success:!1,error:"Failed to load new mode: "+e}:{success:!0,message:"Moved to new mode: "+i})}var i=e.mode;i===E.PANORAMA||i===E.DOLLHOUSE||i===E.FLOORPLAN?this.director.changeMode(i).then((function(){o()}),(function(e){o(e)})):t({success:!1,error:"Invalid mode selection"})}},w={init:function(e,t,o,i,n){y.init(e,t,o,n)},takeScreenShot:function(e,t){y.takeScreenShot(e,t)}};t.a=w},function(e,t,o){"use strict";var i=o(55),n=o(93),a=o(104),g=o(178),r=o(127),A=o(65),C=o(116).f,s=o(135).f,I=o(73).f,l=o(241).trim,c=i.Number,d=c,u=c.prototype,h="Number"==a(o(123)(u)),p="trim"in String.prototype,f=function(e){var t=r(e,!1);if("string"==typeof t&&t.length>2){var o,i,n,a=(t=p?t.trim():l(t,3)).charCodeAt(0);if(43===a||45===a){if(88===(o=t.charCodeAt(2))||120===o)return NaN}else if(48===a){switch(t.charCodeAt(1)){case 66:case 98:i=2,n=49;break;case 79:case 111:i=8,n=55;break;default:return+t}for(var g,A=t.slice(2),C=0,s=A.length;Cn)return NaN;return parseInt(A,i)}}return+t};if(!c(" 0o1")||!c("0b1")||c("+0x1")){c=function(e){var t=arguments.length<1?0:e,o=this;return o instanceof c&&(h?A((function(){u.valueOf.call(o)})):"Number"!=a(o))?g(new d(f(t)),o,c):f(t)};for(var m,v=o(70)?C(d):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),y=0;v.length>y;y++)n(d,m=v[y])&&!n(c,m)&&I(c,m,s(d,m));c.prototype=u,u.constructor=c,o(84)(i,"Number",c)}},function(e,t,o){var i=o(56)("unscopables"),n=Array.prototype;null==n[i]&&o(81)(n,i,{}),e.exports=function(e){n[i][e]=!0}},function(e,t,o){var i=o(104),n=o(56)("toStringTag"),a="Arguments"==i(function(){return arguments}());e.exports=function(e){var t,o,g;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(o=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),n))?o:a?i(t):"Object"==(g=i(t))&&"function"==typeof t.callee?"Arguments":g}},function(e,t,o){var i=o(73).f,n=o(93),a=o(56)("toStringTag");e.exports=function(e,t,o){e&&!n(e=o?e:e.prototype,a)&&i(e,a,{configurable:!0,value:t})}},function(e,t,o){var i=o(67),n=o(222),a=o(162),g=o(161)("IE_PROTO"),r=function(){},A=function(){var e,t=o(153)("iframe"),i=a.length;for(t.style.display="none",o(188).appendChild(t),t.src="javascript:",(e=t.contentWindow.document).open(),e.write("