@abi-software/scaffoldvuer 0.1.5-1.beta.0 → 0.1.5-1.beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/scaffoldvuer.common.js +71 -85
- package/dist/scaffoldvuer.common.js.map +1 -1
- package/dist/scaffoldvuer.css +1 -1
- package/dist/scaffoldvuer.umd.js +71 -85
- package/dist/scaffoldvuer.umd.js.map +1 -1
- package/dist/scaffoldvuer.umd.min.js +1 -1
- package/dist/scaffoldvuer.umd.min.js.map +1 -1
- package/package.json +1 -1
- package/src/components/ScaffoldVuer.vue +18 -16
- package/src/components/TraditionalControls.vue +15 -25
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(function(e,t){"object"===typeof exports&&"object"===typeof module?module.exports=t():"function"===typeof define&&define.amd?define([],t):"object"===typeof exports?exports["scaffoldvuer"]=t():e["scaffoldvuer"]=t()})("undefined"!==typeof self?self:this,(function(){return function(e){var t={};function i(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,i),r.l=!0,r.exports}return i.m=e,i.c=t,i.d=function(e,t,n){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},i.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)i.d(n,r,function(t){return e[t]}.bind(null,r));return n},i.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="",i(i.s="fae3")}({"022d":function(e,t,i){"use strict";i("21c9")},"02ac":function(e,t){e.exports=require("core-js/modules/es.symbol.iterator")},"0607":function(e,t){e.exports=require("element-ui/lib/checkbox-group")},"0cf4":function(e,t){e.exports=require("element-ui/lib/theme-chalk/checkbox-group.css")},"0de2":function(e,t){e.exports=require("element-ui/lib/select")},"0fe2":function(e,t){e.exports=require("element-ui/lib/theme-chalk/select.css")},"10c9":function(e,t){t.WEBGL={isWebGLAvailable:function(){try{var e=document.createElement("canvas");return!(!window.WebGLRenderingContext||!e.getContext("webgl")&&!e.getContext("experimental-webgl"))}catch(t){return!1}},isWebGL2Available:function(){try{var e=document.createElement("canvas");return!(!window.WebGL2RenderingContext||!e.getContext("webgl2"))}catch(t){return!1}},getWebGLErrorMessage:function(){return this.getErrorMessage(1)},getWebGL2ErrorMessage:function(){return this.getErrorMessage(2)},getErrorMessage:function(e){var t={1:"WebGL",2:"WebGL 2"},i={1:window.WebGLRenderingContext,2:window.WebGL2RenderingContext},n='This module requires <a href="http://khronos.org/webgl/wiki/Getting_a_WebGL_Implementation" style="color:#008">$1</a> support but your $0 does not seem to support it.',r=document.createElement("div");return r.id="webglmessage",r.style.fontFamily="monospace",r.style.fontSize="20px",r.style.fontWeight="normal",r.style.textAlign="center",r.style.background="#fff",r.style.color="#000",r.style.padding="1.5em",r.style.width="400px",r.style.margin="5em auto 0",n=i[e]?n.replace("$0","graphics card"):n.replace("$0","browser"),n=n.replace("$1",t[e]),r.innerHTML=n,r}}},"139f":function(e,t){e.exports=require("core-js/modules/es.array.for-each")},1823:function(e,t){e.exports="precision highp float;\n\nuniform mat4 modelViewMatrix;\nuniform mat4 projectionMatrix;\n\nattribute vec3 position;\nattribute vec3 normal;\nattribute vec3 color;\nattribute vec2 uv;\nattribute vec3 position_1;\nattribute vec3 position_2;\nattribute vec2 uv_1;\nattribute vec2 uv_2;\n\nuniform float time;\nuniform float slide_pos;\nvarying vec2 vUv;\n\nvoid main() {\n\tvUv = uv;\n\t\n\tvec3 transformed_xi1 = position * vec3(1.0 - time) + position_1 * vec3(time);\n\t\n\tvec3 xi0_time_1 = vec3(position_1.x, position_1.y, 0.0);\n\tvec3 transformed_xi0 = position_2 * vec3(1.0 - time) + xi0_time_1 * vec3(time);\n\n\tvec3 transformed = vec3(transformed_xi0) * vec3(1.0 - slide_pos) + vec3(transformed_xi1) * vec3(slide_pos);\n\t\n\tvec4 mvPosition = modelViewMatrix * vec4( transformed, 1.0 );\n\tgl_Position = projectionMatrix * mvPosition;\n\n}\n"},"18d2":function(e,t){e.exports=require("core-js/modules/es.array.concat")},"1ac9":function(e,t){e.exports=require("element-ui/lib/container")},"1ce0":function(e,t){e.exports=require("core-js/modules/web.dom-collections.iterator")},"1fe8":function(e,t){e.exports=require("element-ui/lib/main")},2175:function(e,t){e.exports=require("core-js/modules/es.object.keys")},"21a1":function(e,t,i){"use strict";i("5810")},"21c9":function(e,t,i){},"2a6f":function(e,t){e.exports=require("core-js/modules/web.url")},"2c1b":function(e,t){e.exports=require("element-ui/lib/theme-chalk/loading.css")},"2de2":function(e,t){e.exports=require("element-ui/lib/header")},3170:function(e,t){e.exports=require("element-ui/lib/theme-chalk/tabs.css")},"319f":function(e,t){e.exports=require("core-js/modules/es.number.to-fixed")},"31fb":function(e,t){e.exports=require("element-ui/lib/tab-pane")},3666:function(e,t){e.exports=require("element-ui/lib/theme-chalk/color-picker.css")},"373b":function(e,t){e.exports=require("element-ui/lib/drawer")},3966:function(e,t,i){var n={ALL:0,DESTROYED:1,NAME_CHANGED:2,SETTINGS_CHANGED:3},r=function(){this.typeName="Base Module",this.instanceName="default",this.onChangedCallbacks=[],this.messageFunction=void 0,this.eventNotifiers=[],this.broadcastChannels={}};r.prototype.setName=function(e){if(e&&this.instanceName!==e){this.instanceName=e;for(var t=this.onChangedCallbacks.slice(),i=0;i<t.length;i++)t[i](this,n.NAME_CHANGED)}},r.prototype.addBroadcastChannels=function(e){if(e in this.broadcastChannels)return!1;var t=new(i("c45a").default)(e);return this.broadcastChannels[e]=t,!0},r.prototype.removeBroadcastChannels=function(e){e in this.broadcastChannels&&(this.broadcastChannels[e].close(),delete broadcastChannels[e])},r.prototype.settingsChanged=function(){for(var e=this.onChangedCallbacks.slice(),t=0;t<e.length;t++)e[t](this,n.SETTINGS_CHANGED)},r.prototype.exportSettings=function(){var e={};return e.dialog=this.typeName,e.name=this.instanceName,e},r.prototype.importSettings=function(e){return e.dialog==this.typeName&&(this.setName(e.name),!0)},r.prototype.publishChanges=function(e,t){for(var n=0;n<this.eventNotifiers.length;n++)this.eventNotifiers[n].publish(this,t,e);if(t===i("549c").EVENT_TYPE.SELECTED&&e&&e[0]){var r=e[0],o={action:"query-data",resource:r.data.id,data:r.data,sender:this.instanceName};for(var a in this.broadcastChannels)this.broadcastChannels[a].postMessage(o)}},r.prototype.setMessageFunction=function(e){this.messageFunction=e},r.prototype.displayMessage=function(e){this.messageFunction&&this.messageFunction(e)},r.prototype.getName=function(){return this.instanceName},r.prototype.destroy=function(){for(var e=this.onChangedCallbacks.slice(),t=0;t<e.length;t++)e[t](this,n.DESTROYED)},r.prototype.addChangedCallback=function(e){0==this.onChangedCallbacks.includes(e)&&this.onChangedCallbacks.push(e)},r.prototype.removeChangedCallback=function(e){var t=this.onChangedCallbacks.indexOf(e);t>-1&&this.onChangedCallbacks.splice(t,1)},r.prototype.addNotifier=function(e){this.eventNotifiers.push(e)},t.BaseModule=r,t.MODULE_CHANGE=n},"429c":function(e,t){e.exports=require("@abi-software/svg-sprite")},4914:function(e,t){e.exports=require("element-ui/lib/color-picker")},"4c89":function(e,t){e.exports=require("element-ui/lib/theme-chalk/drawer.css")},"4e2d":function(e,t){e.exports=require("lodash/uniq")},"4e8a":function(e,t){e.exports="precision highp float;\nuniform sampler2D myTex;\nvarying vec2 vUv;\n\nvoid main() {\n\tgl_FragColor = texture2D( myTex, vUv );\n\n}\n"},"51c7":function(e,t){e.exports=require("element-ui/lib/theme-chalk/header.css")},"51e9":function(e,t){e.exports=require("core-js/modules/es.symbol.description")},"51f7":function(e,t){e.exports=require("core-js/modules/es.regexp.exec")},"549c":function(e,t){var i={ALL:0,SELECTED:1,HIGHLIGHTED:2},n=function(e,t){this.eventType=e,this.identifiers=t},r=function(e,t,r){this.targetedID=[];var o=e;this.targetEventType=void 0===r?i.ALL:r;var a=t,s=this;this.getEventType=function(){return r},this.notify=function(e,t,r){if(e!==o&&(s.targetEventType===i.ALL||s.targetEventType===t)){var c=new n(t,r);a(c)}}};t.EventNotifier=function(){var e=[];this.publish=function(t,i,n){for(var r=0;r<e.length;r++)e[r].notify(t,i,n)},this.subscribe=function(t,i,n){if("function"===typeof i){var o=new r(t,i,n);return e.push(o),o}},this.unsubscribe=function(t){for(var i=0;i<e.length;i++)if(t===e[i])return void e.splice(i,1)}},t.EVENT_TYPE=i},"55ee":function(e,t){e.exports=require("element-ui/lib/theme-chalk/checkbox.css")},5810:function(e,t,i){},"5fef":function(e,t){e.exports=require("core-js/modules/es.regexp.to-string")},6049:function(e,t){e.exports=require("core-js/modules/es.symbol")},"642d":function(e,t,i){"use strict";i("7d9b")},6579:function(e,t){e.exports=require("core-js/modules/es.array.slice")},"67b6":function(e,t,i){var n=i("9206").THREE,r=function(){this.currentName="",this.currentSystem="",this.currentPart="",this.currentSpecies="",this.metaURL="",this.viewURL="",this.geometries=[],this.lines=[],this.glyphsets=[],this.pointsets=[],this.currentTime=0,this.timeVarying=!1,this.nerveMap=void 0,this.nerveMapIsActive=!1},o=function(e){i("7a89").RendererModule.call(this);var t=void 0,o=void 0;this.sceneData=new r;var a=new Array,s=new Array,c=new Array,l=void 0,u=new Array,d=e,h=this;h.typeName="Organ Viewer",this.getSceneData=function(){return h.sceneData},this.updateTime=function(e){let i=6e3;h.scene&&(i=h.scene.getDuration());var n=e/100*i;h.sceneData.nerveMapIsActive?o&&(o.setMorphsTime(n),h.sceneData.nerveMap&&h.sceneData.nerveMap.additionalReader&&h.sceneData.nerveMap.additionalReader.setTime(e/100)):(t&&t.setMorphsTime(n),h.scene&&h.scene.setMorphsTime(n)),h.sceneData.currentTime=e};var p=function(){let e=3e3;h.scene&&(e=h.scene.getDuration());for(var i=h.zincRenderer.getCurrentTime(),n=0;n<a.length;n++)a[n](i);!h.sceneData.nerveMapIsActive&&t&&t.setMorphsTime(i),h.sceneData.nerveMap&&h.sceneData.nerveMap.additionalReader&&h.sceneData.nerveMap.additionalReader.setTime(i/e),h.sceneData.currentTime=i/e*100},f=function(){if(h.selectedCenter){const t=new n.Vector3;t.copy(h.selectedCenter);var e=h.scene.vectorToScreenXY(t);h.selectedScreenCoordinates.x=e.x,h.selectedScreenCoordinates.y=e.y}},m=function(){return function(){p()}},v=function(){return function(){f()}};this.addTimeChangedCallback=function(e){a.push(e)},this.setTexturePos=function(e){h.sceneData.nerveMap&&h.sceneData.nerveMap.additionalReader&&h.sceneData.nerveMap.additionalReader.setSliderPos(e)},this.addLayoutUpdateRequiredCallback=function(e){u.push(e)},this.addSceneChangedCallback=function(e){s.push(e)},this.addOrganPartAddedCallback=function(e){c.push(e)},this.setFinishDownloadCallback=function(e){l=e},this.unsetFinishDownloadCallback=function(){l=void 0},this.getNamedObjectsToScreenCoordinates=function(e,t){var i=new n.Vector3;i.setFromMatrixPosition(obj.matrixWorld);var r=width/2,o=height/2;return i.project(t),i.x=i.x*r+r,i.y=-i.y*o+o,i};var g=function(e){var t=void 0,i=void 0;if(void 0!==e&&(i=e.object.userData&&e.object.userData.isMarker?e.object.userData.parent.morph:e.object,i))if(i.name)t=i.name;else{var n=h.getAnnotationsFromObjects([i]);n&&n[0]&&(t=n[0].data.group)}return{id:t,object:i}},b=function(){return function(e,t,i){var n=h.getIntersectedObject(e),r=g(n);if(r.id)return void 0!==h.toolTip&&(h.toolTip.setText(r.id),h.toolTip.show(t,i)),h.displayMessage(r.object.name+" selected."),void(r.object.userData.isGlyph?r.object.name?h.setSelectedByObjects([r.object],!0):h.setSelectedByZincObject(r.object.userData.getGlyphset(),!0):h.setSelectedByObjects([r.object],!0));void 0!==h.toolTip&&h.toolTip.hide(),h.setSelectedByObjects([],!0)}},y=function(){return function(e,t,i){var n=h.getIntersectedObject(e),r=g(n);if(r.id)return h.displayArea.style.cursor="pointer",void 0!==h.toolTip&&(h.toolTip.setText(r.id),h.toolTip.show(t,i)),void h.setHighlightedByObjects([r.object],!0);void 0!==h.toolTip&&h.toolTip.hide(),h.displayArea.style.cursor="auto",h.setHighlightedByObjects([],!0)}},C=function(e,t,i,n){if("all"==n||"geometries"==n)for(var r=e.findGeometriesWithGroupName(t),o=0;o<r.length;o++)r[o].setVisibility(i);if("all"==n||"glyphsets"==n){var a=e.findGlyphsetsWithGroupName(t);for(o=0;o<a.length;o++)a[o].setVisibility(i)}if("all"==n||"pointsets"==n){var s=e.findPointsetsWithGroupName(t);for(o=0;o<s.length;o++)s[o].setVisibility(i)}if("all"==n||"lines"==n){var c=e.findLinesWithGroupName(t);for(o=0;o<c.length;o++)c[o].setVisibility(i)}};this.changeGeometriesVisibility=function(e,i){C(h.scene,e,i,"geometries"),t&&C(t,e,i,"geometries")},this.changeGlyphsetsVisibility=function(e,i){C(h.scene,e,i,"glyphsets"),t&&C(t,e,i,"glyphsets")},this.changeLinesVisibility=function(e,i){C(h.scene,e,i,"lines"),t&&C(t,e,i,"lines")},this.changePointsetsVisibility=function(e,i){C(h.scene,e,i,"pointsets"),t&&C(t,e,i,"pointsets")},this.changeOrganPartsVisibility=function(e,i,n){var r="all";void 0!==n&&(r=n),C(h.scene,e,i,r),t&&C(t,e,i,r)},this.changeOrganPartsVisibilityCallback=function(e){return function(t){h.changeOrganPartsVisibility(e,t)}};var w=function(e){return function(t){t.groupName=e,imageCombiner&&t.morph&&t.morph.material.map&&(t.morph.material.map=new n.Texture(imageCombiner.getCombinedImage()),t.morph.material.map.needsUpdate=!0,t.morph.material.needsUpdate=!0)}},x=function(){var e=h.sceneData.currentName+"_nervemap";if(o=h.zincRenderer.getSceneByName(e),void 0==o){var t=d.getOrgansDirectoryPrefix()+"/"+h.sceneData.nerveMap.threed.meta;o=h.zincRenderer.createScene(e),o.loadMetadataURL(t,w("threed")),void 0!==h.sceneData.nerveMap.threed.view?o.loadViewURL(d.getOrgansDirectoryPrefix()+"/"+h.sceneData.nerveMap.threed.view):o.loadViewURL(d.getBodyDirectoryPrefix()+"/body_view.json"),o.ambient.intensity=8,o.directionalLight.intensity=0;var n=o.getZincCameraControls();n.setMouseButtonAction("AUXILIARY","ZOOM"),n.setMouseButtonAction("SECONDARY","PAN"),h.sceneData.nerveMap.additionalReader=new(i("6fd2").VaryingTexCoordsReader)(o);var r=[d.getOrgansDirectoryPrefix()+"/digestive/stomach/nerve_map/3d/xi1_time_0.json",d.getOrgansDirectoryPrefix()+"/digestive/stomach/nerve_map/3d/xi1_time_1.json",d.getOrgansDirectoryPrefix()+"/digestive/stomach/nerve_map/3d/xi0_time_0.json"];h.sceneData.nerveMap.additionalReader.loadURLsIntoBufferGeometry(r)}h.zincRenderer.setCurrentScene(o),h.graphicsHighlight.reset()},R=function(){for(var e=0;e<u.length;e++)u[e](!1,!0)};this.changeNerveMapVisibility=function(){h.sceneData.nerveMapIsActive=!h.sceneData.nerveMapIsActive,h.sceneData.nerveMapIsActive?x():(h.zincRenderer.setCurrentScene(h.scene),h.graphicsHighlight.reset()),R()},this.changeBackgroundColour=function(e){var t=new n.Color(e);if(h.zincRenderer){var i=h.zincRenderer.getThreeJSRenderer();i.setClearColor(t,1)}};var k=function(e){e.groupName&&(e.isGeometry?h.sceneData.geometries.includes(e.groupName)||h.sceneData.geometries.push(e.groupName):e.isGlyphset?h.sceneData.glyphsets.includes(e.groupName)||h.sceneData.glyphsets.push(e.groupName):e.isLines?h.sceneData.lines.includes(e.groupName)||h.sceneData.lines.push(e.groupName):e.isPointset&&(h.sceneData.pointsets.includes(e.groupName)||h.sceneData.pointsets.push(e.groupName)))},S=function(e,t,n,r){for(var o=0;o<c.length;o++)c[o](r.groupName,h.scene.isTimeVarying(),r);n&&d.setGeometryColour(r,e,t),k(r),r.groupName?h.displayMessage(r.groupName+" loaded."):h.displayMessage("Resource loaded.");var a=new(i("a0d7").annotation);a.data={species:h.sceneData.currentSpecies,system:e,part:t,group:r.groupName},r.userData=[a]},D=function(e,t,i){return function(n){S(e,t,i,n)}},O=function(){return function(){h.settingsChanged(),h.sceneData.timeVarying=h.scene.isTimeVarying(),h.displayMessage("All resources loaded."),l&&l()}};this.updateFieldvisibility=function(e,t){for(var i=0;i<e.length;i++)if(t!=i){var n=e[i].PartName;h.changeOrganPartsVisibility(n,!1)}if(t>-1){var r=e[t].PartName;if(h.scene.findGeometriesWithGroupName(r).length>0||h.scene.findGlyphsetsWithGroupName(r).length>0)h.changeOrganPartsVisibility(r,!0);else{var o=getOrganDetails(e[t].SystemName,r);void 0!=o&&h.scene.loadMetadataURL(d.getOrgansDirectoryPrefix()+"/"+o.meta)}}},this.getAvailableSpecies=function(e,t,i){var n=new Array;n.push("none");var r=Object.keys(organsFileMap);for(index in r){var o=r[index];o!=e&&organsFileMap[o].hasOwnProperty(t)&&organsFileMap[o][t].hasOwnProperty(i)&&n.push(o)}return n};var T=function(e,t,i,n){h.sceneData.nerveMapIsActive=!1,h.sceneData.nerveMap=void 0,h.sceneData.metaURL="",h.sceneData.viewURL="",h.sceneData.currentSpecies=e,h.sceneData.currentSystem=t,h.sceneData.currentPart=i,h.sceneData.currentTime=0,h.sceneData.geometries.splice(0),h.sceneData.lines.splice(0),h.sceneData.glyphsets.splice(0),h.sceneData.pointsets.splice(0),h.sceneData.timeVarying=!1;var r="";e&&(r=e+"/"),t&&(r=t+"/"),i&&(r=i),h.sceneData.currentName=r};this.loadOrgansFromURL=function(e,t,i,n,r){if(h.zincRenderer&&n&&h.sceneData.metaURL!==e){T(t,i,n,void 0);var o=h.sceneData.currentName,a=h.zincRenderer.getSceneByName(o);a?a.clearAll():a=h.zincRenderer.createScene(o);for(var c=0;c<s.length;c++)s[c](h.sceneData);r&&""!=r?(h.sceneData.viewURL=r,a.loadViewURL(h.sceneData.viewURL)):h.sceneData.viewURL=void 0,h.sceneData.metaURL=e,h.displayMessage("Downloading..."),a.loadMetadataURL(e,D(i,n,!1),O()),h.scene=a,h.zincRenderer.setCurrentScene(a),h.graphicsHighlight.reset();var l=a.getZincCameraControls();l.enableRaycaster(a,b(),y()),l.setMouseButtonAction("AUXILIARY","ZOOM"),l.setMouseButtonAction("SECONDARY","PAN")}},this.alignCameraWithSelectedObject=function(e){var t=h.graphicsHighlight.getSelected();t&&t[0]&&t[0].userData&&h.scene.alignObjectToCameraView(t[0].userData,e)},this.exportSettings=function(){var e={};return e.name=h.instanceName,h.sceneData.currentSystem&&(e.system=h.sceneData.currentSystem),h.sceneData.currentSpecies&&(e.species=h.sceneData.currentSpecies),h.sceneData.currentPart&&(e.part=h.sceneData.currentPart),e.metaURL=h.sceneData.metaURL,h.sceneData.viewURL&&(e.viewURL=h.sceneData.viewURL),e.dialog="Organ Viewer",e},this.importSettings=function(e){return!(!e||e.dialog!=this.typeName)&&(h.setName(e.name),void 0!==e.metaURL&&""!=e.metaURL?h.loadOrgansFromURL(e.metaURL,e.species,e.system,e.part,e.viewURL):h.loadOrgans(e.species,e.system,e.part),!0)};var j=function(){h.initialiseRenderer(void 0),h.zincRenderer&&(h.zincRenderer.addPreRenderCallbackFunction(m()),h.zincRenderer.addPostRenderCallbackFunction(v()))};j()};o.prototype=Object.create(i("7a89").RendererModule.prototype),t.OrgansViewer=o},6814:function(e,t){e.exports=require("lodash/orderBy")},"6bb1":function(e,t){e.exports=require("core-js/modules/es.array.index-of")},"6bfd":function(e,t){e.exports=require("element-ui/lib/locale/lang/en")},"6ea3":function(e,t){e.exports=require("element-ui/lib/row")},"6fd2":function(e,t,i){var n=i("9206").THREE;t.VaryingTexCoordsReader=function(e){var t=void 0,r=void 0,o=void 0,a=0,s=0,c=e,l=new n.TextureLoader,u=new l.load("models/organsViewerModels/digestive/stomach/nerve_map/texture/ratstomach_innervation_square.png");u.wrapS=n.RepeatWrapping,u.wrapT=n.RepeatWrapping,u.format=n.RGBFormat;var d=n.UniformsUtils.merge([{ambient:{type:"c",value:new n.Color(0)},diffuse:{type:"c",value:new n.Color(16777215)},emissive:{type:"c",value:new n.Color(12303291)},specular:{type:"c",value:new n.Color(1118481)},shininess:{type:"f",value:100},opacity:{type:"f",value:1},ambientLightColor:{type:"c",value:new n.Color(15790320)},directionalLightColor:{type:"c",value:new n.Color(5592405)},directionalLightDirection:{type:"v3",value:new n.Vector3},offsetRepeat:{value:new n.Vector4(0,0,1,1)},time:{type:"f",value:0},slide_pos:{type:"f",value:1},myTex:{type:"t",value:null}}]),h=function(e,t){var i=3*t.faces.length*3,o=new Float32Array(i),a=(new Float32Array(i),new Float32Array(i)),s=new Float32Array(3*t.faces.length*2);if(void 0===r&&(r=new n.BufferGeometry),t.faces.forEach((function(e,i){o[9*i+0]=t.vertices[e.a].x,o[9*i+1]=t.vertices[e.a].y,o[9*i+2]=t.vertices[e.a].z,o[9*i+3]=t.vertices[e.b].x,o[9*i+4]=t.vertices[e.b].y,o[9*i+5]=t.vertices[e.b].z,o[9*i+6]=t.vertices[e.c].x,o[9*i+7]=t.vertices[e.c].y,o[9*i+8]=t.vertices[e.c].z,a[9*i+0]=e.vertexNormals[0].x,a[9*i+1]=e.vertexNormals[0].y,a[9*i+2]=e.vertexNormals[0].z,a[9*i+3]=e.vertexNormals[1].x,a[9*i+4]=e.vertexNormals[1].y,a[9*i+5]=e.vertexNormals[1].z,a[9*i+6]=e.vertexNormals[2].x,a[9*i+7]=e.vertexNormals[2].y,a[9*i+8]=e.vertexNormals[2].z,s[6*i+0]=t.faceVertexUvs[0][i][0].x,s[6*i+1]=t.faceVertexUvs[0][i][0].y,s[6*i+2]=t.faceVertexUvs[0][i][1].x,s[6*i+3]=t.faceVertexUvs[0][i][1].y,s[6*i+4]=t.faceVertexUvs[0][i][2].x,s[6*i+5]=t.faceVertexUvs[0][i][2].y})),0==e)r.addAttribute("position",new n.BufferAttribute(o,3)),r.addAttribute("normal",new n.BufferAttribute(a,3)),r.addAttribute("uv",new n.BufferAttribute(s,2));else{var c="position_"+e,l="normal_"+e,u="uv_"+e;r.addAttribute(c,new n.BufferAttribute(o,3)),r.addAttribute(l,new n.BufferAttribute(a,3)),r.addAttribute(u,new n.BufferAttribute(s,2))}},p=function(e,t,i){var r=new n.RawShaderMaterial({vertexShader:t[0],fragmentShader:t[1],uniforms:d});r.uniforms.myTex.value=u,r.side=n.DoubleSide,r.depthTest=!0,r.needsUpdate=!0,r.map=u,r.uniforms.myTex.value.needsUpdate=!0,r.opacity=1,o=c.addZincGeometry(e,30001,void 0,void 0,!1,!1,!0,void 0,r),o.groupName="varyingTexture"},f=function(e,i){return function(n,o){var c=0;h(e,n),s++,s==a&&(p(r,i,c),void 0!=t&&"function"==typeof t&&t(r))}};this.setSliderPos=function(e){o&&(o.morph.material.uniforms.slide_pos.value=e)},this.setTime=function(e){o&&(o.morph.material.uniforms.time.value=e)},this.setTexture=function(e){o&&(o.morph.material.uniforms.myTex.value=e,o.morph.material.uniforms.myTex.value.needsUpdate=!0)},this.loadURLsIntoBufferGeometry=function(e,r,o,s){var c=new n.JSONLoader(!0);a=e.length,t=r;for(var l=[i("1823"),i("4e8a")],u=0;u<a;u++)c.load(e[u],f(u,l),o,s)}}},"703d":function(e,t){e.exports=require("element-ui/lib/theme-chalk/col.css")},"73ef":function(e,t){e.exports=require("element-ui/lib/theme-chalk/main.css")},"76bf":function(e,t,i){i("b723"),t.ToolTip=function(e){var t=void 0,i=void 0,n=void 0,r='<div class="mptooltip" id="tip"><span class="mptooltiptext" id="tiptext"> Tooltip text</span></div>';this.show=function(e,r){t.style.left=e+"px",t.style.top=r-20+"px",i.style.visibility="visible",i.style.opacity=1,n.style.visibility="visible",n.style.opacity=1},this.hide=function(){i.style.visibility="hidden",i.style.opacity=0,n.style.visibility="hidden",n.style.opacity=0},this.setText=function(e){n.innerHTML=e};var o=function(){t=document.createElement("div"),t.id="tooltipcontainer",t.innerHTML=r,i=t.querySelector("#tip"),n=t.querySelector("#tiptext"),e.appendChild(t)};o()}},"7a89":function(e,t,i){var n=i("9206").THREE,r=function(){var e=i("10c9").WEBGL,t=document.createElement("div"),n=void 0;if(t.style.height="100%",e.isWebGLAvailable()){var r=i("9206");n=new r.Renderer(t,window);r.defaultMaterialColor=16777116,n.initialiseVisualisation(),n.playAnimation=!1}else{var o=e.getWebGLErrorMessage();t.appendChild(o)}return{renderer:n,container:t}},o=function(){i("3966").BaseModule.call(this),this.scene=void 0,this.toolTip=void 0,this.rendererContainer=void 0,this.displayArea=void 0,this.graphicsHighlight=new(i("8cec").GraphicsHighlight),this.zincRenderer=null,this.selectedScreenCoordinates=new n.Vector3,this.selectedCenter=void 0};o.prototype=Object.create(i("3966").BaseModule.prototype),o.prototype.getIntersectedObject=function(e){if(e)for(var t=0;t<e.length;t++)if(void 0!==e[t]&&e[t].object&&e[t].object.userData&&e[t].object.userData.isZincObject&&(e[t].object.name||e[t].object.userData.isMarker))return e[t]},o.prototype.getAnnotationsFromObjects=function(e){for(var t=[],i=0;i<e.length;i++){var n=e[i].userData,r=void 0;if(n)if(n.isGlyph||n.isGlyphset){var o=n;n.isGlyph&&(o=n.getGlyphset()),r=o.userData?o.userData[0]:void 0,r&&r.data&&(e[i].name&&""!=e[i].name?r.data.id=e[i].name:r.data.id=o.groupName)}else r=n.userData?n.userData[0]:void 0,r&&r.data&&(r.data.id=e[i].name);t[i]=r}return t},o.prototype.setHighlightedByObjects=function(e,t){var n=this.graphicsHighlight.setHighlighted(e);if(n&&t){var r=i("549c").EVENT_TYPE.HIGHLIGHTED,o=this.getAnnotationsFromObjects(e);this.publishChanges(o,r)}return n},o.prototype.setHighlightedByZincObject=function(e,t){return this.setHighlightedByObjects([e?e.morph:void 0],t)},o.prototype.setupLiveCoordinates=function(e){if(e&&e.length>0){var t=this.scene.getBoundingBoxOfZincObjects(e);let i=new n.Vector3;t.getCenter(i),void 0==this.selectedCenter?this.selectedCenter=i:(this.selectedCenter.x=i.x,this.selectedCenter.y=i.y)}else this.selectedCenter=void 0},o.prototype.objectsToZincObjects=function(e){for(var t=[],i=0;i<e.length;i++){var n=e[i].userData;if(n)if(n.isGlyph||n.isGlyphset){var r=n;n.isGlyph&&(r=n.getGlyphset()),t.push(r)}else t.push(n)}return t},o.prototype.setSelectedByObjects=function(e,t){var n=this.graphicsHighlight.setSelected(e);if(n){var r=this.objectsToZincObjects(e);if(this.setupLiveCoordinates(r),t){var o=i("549c").EVENT_TYPE.SELECTED,a=this.getAnnotationsFromObjects(e);this.publishChanges(a,o)}}return n},o.prototype.setSelectedByZincObject=function(e,t){return this.setSelectedByObjects([e?e.morph:void 0],t)};var a=function(e){return function(t){e.push(t.getMesh())}};o.prototype.findObjectsByGroupName=function(e){for(var t=this.scene.findGeometriesWithGroupName(e),i=[],n=0;n<t.length;n++)i.push(t[n].morph);var r=this.scene.findGlyphsetsWithGroupName(e);for(n=0;n<r.length;n++)r[n].forEachGlyph(a(i));return i},o.prototype.setHighlightedByGroupName=function(e,t){var i=this.findObjectsByGroupName(e);return this.setHighlightedByObjects(i,t)},o.prototype.setSelectedByGroupName=function(e,t){var i=this.findObjectsByGroupName(e);return this.setSelectedByObjects(i,t)},o.prototype.changeBackgroundColour=function(e){var t=new n.Color(e);if(this.zincRenderer){var i=this.zincRenderer.getThreeJSRenderer();i.setClearColor(t,1)}},o.prototype.resetView=function(){this.zincRenderer&&this.zincRenderer.resetView()},o.prototype.viewAll=function(){this.zincRenderer&&this.zincRenderer.viewAll()},o.prototype.playAnimation=function(e){this.zincRenderer&&(this.zincRenderer.playAnimation=e)},o.prototype.setPlayRate=function(e){this.zincRenderer&&this.zincRenderer.setPlayRate(e)},o.prototype.getPlayRate=function(e){return this.zincRenderer?this.zincRenderer.getPlayRate():0},o.prototype.initialiseRenderer=function(e){if(void 0===this.zincRenderer||void 0===this.rendererContainer){var t=r();this.zincRenderer=t["renderer"],this.rendererContainer=t["container"]}e&&(this.displayArea=e,this.displayArea.appendChild(this.rendererContainer),this.zincRenderer&&(this.zincRenderer.animate(),void 0===this.toolTip&&(this.toolTip=new(i("76bf").ToolTip)(this.displayArea))))},o.prototype.destroy=function(){this.zincRenderer&&(this.zincRenderer.dispose(),this.zincRenderer.getThreeJSRenderer().dispose(),this.zincRenderer=void 0),i("3966").BaseModule.prototype.destroy.call(this)},t.RendererModule=o},"7c81":function(e,t){e.exports=require("core-js/modules/es.array.splice")},"7d9b":function(e,t,i){},"7f9f":function(e,t){e.exports=require("element-ui/lib/locale")},"80c4":function(e,t){e.exports=require("element-ui/lib/theme-chalk/option.css")},"850c":function(e,t){e.exports=require("core-js/modules/es.object.to-string")},"8bbf":function(e,t){e.exports=require("vue")},"8c29":function(e,t){e.exports=require("element-ui/lib/tabs")},"8c84":function(e,t){e.exports=require("core-js/modules/es.array.iterator")},"8cec":function(e,t,i){var n=i("9206").THREE;t.GraphicsHighlight=function(){var e=[],t=[];this.highlightColour=255,this.selectColour=65280,this.originalColour=0;var i=this,r=function(e,t){if(0==e.length&&0==t.length)return!1;for(var i=0;i<e.length;i++){for(var n=!1,r=0;r<t.length;r++)e[i]===t[r]&&(n=!0);if(!n)return!0}for(i=0;i<t.length;i++){for(n=!1,r=0;r<e.length;r++)t[i]===e[r]&&(n=!0);if(!n)return!0}return!1},o=function(e,t){var i=[];if(0==t.length)return e;for(var n=0;n<e.length;n++){for(var r=!1,o=0;o<t.length;o++)e[n]===t[o]&&(r=!0);r||i.push(e[n])}return i};this.setHighlighted=function(n){var s=e;i.resetHighlighted();for(var c=o(n,t),l=a(c),u=0;u<l.length;u++)l[u]&&l[u].material&&l[u].material.emissive&&l[u].material.emissive.setHex(i.highlightColour);return e=c,r(e,s)},this.setSelected=function(n){var s=t,c=o(e,n);e=c,i.resetSelected();for(var l=a(n),u=0;u<l.length;u++)l[u]&&l[u].material&&l[u].material.emissive&&l[u].material.emissive.setHex(i.selectColour);return t=n,r(t,s)};var a=function(e){let t=[];for(var i=0;i<e.length;i++)e[i].material&&t.push(e[i]);return t};this.resetHighlighted=function(){let t=a(e);for(var r=0;r<t.length;r++)t[r]&&t[r].material&&(t[r].material.emissive&&t[r].material.emissive.setHex(i.originalColour),t[r].material.depthFunc&&(t[r].material.depthFunc=n.LessEqualDepth));e=[]},this.resetSelected=function(){let e=a(t);for(var r=0;r<e.length;r++)e[r]&&e[r].material&&(e[r].material.emissive&&e[r].material.emissive.setHex(i.originalColour),e[r].material.depthFunc&&(e[r].material.depthFunc=n.LessEqualDepth));t=[]},this.getSelected=function(){return t},this.reset=function(){i.resetSelected(),i.resetHighlighted()}}},"8f11":function(e,t){e.exports=require("element-ui/lib/theme-chalk/icon.css")},"907b":function(e,t){e.exports=require("core-js/modules/es.string.iterator")},9206:function(e,t){e.exports=require("zincjs")},"93e6":function(e,t){e.exports=require("element-ui/lib/popover")},9776:function(e,t){e.exports=require("element-ui/lib/theme-chalk/slider.css")},9985:function(e,t){e.exports=require("element-ui/lib/theme-chalk/tab-pane.css")},"9a25":function(e,t){e.exports=require("element-ui/lib/theme-chalk/base.css")},"9bb0":function(e,t){e.exports=require("@soda/get-current-script")},a0d7:function(e,t){t.annotation=function(){this.type="anatomical",this.data=void 0,this.isAnnotation=!0}},a497:function(e,t){e.exports=require("element-ui/lib/col")},a525:function(e,t){e.exports=require("element-ui/lib/theme-chalk/popover.css")},a7bf:function(e,t){e.exports=require("element-ui/lib/slider")},ab7e:function(e,t){e.exports=require("core-js/modules/es.array.includes")},ab87:function(e,t){e.exports=require("element-ui/lib/loading")},add8:function(e,t,i){"use strict";i("e8d1")},b0e3:function(e,t){e.exports=require("element-ui/lib/theme-chalk/container.css")},b2f4:function(e,t){e.exports=require("element-ui/lib/icon")},b723:function(e,t,i){},b777:function(e,t){e.exports=require("element-ui/lib/checkbox")},bcd8:function(e,t){e.exports=require("core-js/modules/es.function.name")},bcda:function(e,t){e.exports=require("core-js/modules/web.dom-collections.for-each")},bfab:function(e,t){e.exports=require("core-js/modules/es.string.replace")},c11a:function(e,t){e.exports=require("element-ui/lib/option")},c45a:function(e,t){e.exports=require("broadcast-channel")},d7e1:function(e,t,i){},e42b:function(e,t){e.exports=require("core-js/modules/es.array.from")},e8d1:function(e,t,i){},fae3:function(e,t,i){"use strict";if(i.r(t),i.d(t,"ScaffoldVuer",(function(){return we})),"undefined"!==typeof window){var n=window.document.currentScript,r=i("9bb0");n=r(),"currentScript"in document||Object.defineProperty(document,"currentScript",{get:r});var o=n&&n.src.match(/(.+\/)[^/]+\.js(\?.*)?$/);o&&(i.p=o[1])}var a=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{directives:[{name:"loading",rawName:"v-loading",value:e.loading,expression:"loading"}],ref:"scaffoldContainer",staticClass:"scaffold-container",attrs:{"element-loading-text":"Loading...","element-loading-spinner":"el-icon-loading","element-loading-background":"rgba(0, 0, 0, 0.3)"}},[i("SvgSpriteColor"),i("div",{ref:"display",staticStyle:{height:"100%",width:"100%"},attrs:{id:"organsDisplayArea",tabindex:"-1"},on:{keydown:function(t){return t.type.indexOf("key")||66===t.keyCode?e.backgroundChangeCallback(t):null}}}),i("div",{directives:[{name:"show",rawName:"v-show",value:e.displayUI&&!e.isTransitioning,expression:"displayUI && !isTransitioning"}]},[e.displayWarning?i("el-popover",{ref:"warningPopover",attrs:{content:e.warningMessage,placement:"right","append-to-body":!1,trigger:"manual","popper-class":"warning-popper right-popper non-selectable"},model:{value:e.hoverVisabilities[6].value,callback:function(t){e.$set(e.hoverVisabilities[6],"value",t)},expression:"hoverVisabilities[6].value"}}):e._e(),e.displayWarning?i("i",{directives:[{name:"popover",rawName:"v-popover:warningPopover",arg:"warningPopover"}],staticClass:"el-icon-warning warning-icon",on:{mouseover:function(t){return e.showToolitip(6)},mouseout:function(t){return e.hideToolitip(6)}}},[i("span",{staticClass:"warning-text"},[e._v("Beta")])]):e._e(),i("el-popover",{ref:"checkBoxPopover",attrs:{content:"Change region visibility",placement:"right","append-to-body":!1,trigger:"manual","popper-class":"scaffold-popper right-popper non-selectable"},model:{value:e.hoverVisabilities[5].value,callback:function(t){e.$set(e.hoverVisabilities[5],"value",t)},expression:"hoverVisabilities[5].value"}}),i("TraditionalControls",{directives:[{name:"popover",rawName:"v-popover:checkBoxPopover",arg:"checkBoxPopover"}],ref:"traditionalControl",attrs:{"help-mode":e.helpMode,module:e.$module,"show-colour-picker":e.showColourPicker},on:{"object-selected":e.objectSelected,"object-hovered":e.objectHovered,"drawer-toggled":e.drawerToggled}}),i("div",{staticClass:"opacity-box"},[i("OpacityControls",{ref:"opacityControl"})],1),e.sceneData.timeVarying?i("el-popover",{ref:"sliderPopover",attrs:{content:"Move the slider to animate the region",placement:"top","append-to-body":!1,trigger:"manual","popper-class":"scaffold-popper top-popper non-selectable"},model:{value:e.hoverVisabilities[4].value,callback:function(t){e.$set(e.hoverVisabilities[4],"value",t)},expression:"hoverVisabilities[4].value"}}):e._e(),e.sceneData.timeVarying?i("div",{directives:[{name:"popover",rawName:"v-popover:sliderPopover",arg:"sliderPopover"}],staticClass:"time-slider-container",class:[e.minimisedSlider?"minimised":"",e.sliderPosition]},[i("el-tabs",{attrs:{type:"card"}},[i("el-tab-pane",{attrs:{label:"Animate scaffold"}},[i("el-row",{staticClass:"tab-content"},[e.isPlaying?i("SvgIcon",{staticClass:"icon-button video-button",attrs:{icon:"pause"},nativeOn:{click:function(t){return e.play(!1)}}}):i("SvgIcon",{staticClass:"video-button icon-button",attrs:{icon:"play"},nativeOn:{click:function(t){return e.play(!0)}}}),i("el-slider",{staticClass:"slider",attrs:{min:0,max:e.timeMax,value:e.sceneData.currentTime/100*e.timeMax,step:.1,"tooltip-class":"time-slider-tooltip","format-tooltip":e.formatTooltip,marks:e.timeStamps},on:{input:function(t){return e.timeChange(t)}}})],1)],1),i("el-tab-pane",{attrs:{label:"Animation data"}},[i("el-row",{staticClass:"tab-content"},[i("div",{staticClass:"animation-data"},[e._v(" Original duration: "),i("div",{staticClass:"purple"},[e._v(" "+e._s(e.orginalDuration)+" ")])]),i("div",{staticClass:"animation-data"},[e._v(" Animation duration: "),i("div",{staticClass:"purple"},[e._v(" "+e._s(e.animateDuration)+" ")])]),i("div",{staticClass:"animation-data"},[e._v(" Playback speed "),i("el-select",{staticClass:"select-box",attrs:{"popper-append-to-body":!0,value:e.currentSpeed,placeholder:"Select","popper-class":"scaffold_viewer_dropdown"},on:{change:function(t){return e.speedChanged(t)}}},e._l(e.playSpeed,(function(e){return i("el-option",{key:e.value,attrs:{label:e.label,value:e.value}})})),1)],1)])],1)],1)],1):e._e(),i("div",{staticClass:"bottom-right-control"},[i("el-popover",{attrs:{content:"Zoom in",placement:"left","append-to-body":!1,trigger:"manual","popper-class":"scaffold-popper left-popper non-selectable"},model:{value:e.hoverVisabilities[0].value,callback:function(t){e.$set(e.hoverVisabilities[0],"value",t)},expression:"hoverVisabilities[0].value"}},[i("SvgIcon",{staticClass:"icon-button zoomIn",attrs:{slot:"reference",icon:"zoomIn"},nativeOn:{click:function(t){return e.zoomIn()},mouseover:function(t){return e.showToolitip(0)},mouseout:function(t){return e.hideToolitip(0)}},slot:"reference"})],1),i("el-popover",{attrs:{content:"Zoom out",placement:"top-end","append-to-body":!1,trigger:"manual","popper-class":"scaffold-popper popper-zoomout non-selectable"},model:{value:e.hoverVisabilities[1].value,callback:function(t){e.$set(e.hoverVisabilities[1],"value",t)},expression:"hoverVisabilities[1].value"}},[i("SvgIcon",{staticClass:"icon-button zoomOut",attrs:{slot:"reference",icon:"zoomOut"},nativeOn:{click:function(t){return e.zoomOut()},mouseover:function(t){return e.showToolitip(1)},mouseout:function(t){return e.hideToolitip(1)}},slot:"reference"})],1),i("el-popover",{attrs:{placement:"top","append-to-body":!1,trigger:"manual","popper-class":"scaffold-popper non-selectable"},model:{value:e.hoverVisabilities[2].value,callback:function(t){e.$set(e.hoverVisabilities[2],"value",t)},expression:"hoverVisabilities[2].value"}},[i("div",[e._v(" Fit to "),i("br"),e._v(" window ")]),i("SvgIcon",{staticClass:"icon-button fitWindow",attrs:{slot:"reference",icon:"fitWindow"},nativeOn:{click:function(t){return e.fitWindow()},mouseover:function(t){return e.showToolitip(2)},mouseout:function(t){return e.hideToolitip(2)}},slot:"reference"})],1)],1),i("el-popover",{ref:"backgroundPopover",attrs:{placement:"top-start",width:"128","append-to-body":!1,trigger:"click","popper-class":"background-popper non-selectable"}},[i("el-row",{staticClass:"backgroundText"},[e._v(" Change background ")]),i("el-row",{staticClass:"backgroundChooser"},e._l(e.availableBackground,(function(t){return i("div",{key:t,class:["backgroundChoice",t,t==e.currentBackground?"active":""],on:{click:function(i){return e.backgroundChangeCallback(t)}}})})),0)],1),i("el-popover",{attrs:{content:"Change background color",placement:"right","append-to-body":!1,trigger:"manual","popper-class":"scaffold-popper right-popper non-selectable"},model:{value:e.hoverVisabilities[3].value,callback:function(t){e.$set(e.hoverVisabilities[3],"value",t)},expression:"hoverVisabilities[3].value"}},[i("SvgIcon",{directives:[{name:"popover",rawName:"v-popover:backgroundPopover",arg:"backgroundPopover"}],staticClass:"icon-button background-colour",class:{open:e.drawerOpen,close:!e.drawerOpen},attrs:{slot:"reference",icon:"changeBckgd"},nativeOn:{mouseover:function(t){return e.showToolitip(3)},mouseout:function(t){return e.hideToolitip(3)}},slot:"reference"})],1)],1)],1)},s=[],c=(i("139f"),i("8c84"),i("319f"),i("2175"),i("850c"),i("907b"),i("bcda"),i("1ce0"),i("2a6f"),i("3170"),i("9a25"),i("8c29")),l=i.n(c),u=(i("9985"),i("31fb")),d=i.n(u),h=(i("9776"),i("a7bf")),p=i.n(h),f=(i("0fe2"),i("0de2")),m=i.n(f),v=(i("fd9c"),i("6ea3")),g=i.n(v),b=(i("a525"),i("93e6")),y=i.n(b),C=(i("80c4"),i("c11a")),w=i.n(C),x=(i("2c1b"),i("ab87")),R=i.n(x),k=(i("703d"),i("a497")),S=i.n(k),D=i("8bbf"),O=i.n(D),T=function(){var e=this,t=e.$createElement,i=e._self._c||t;return void 0!=e.material?i("div",{ref:"control",staticClass:"opacity-control"},[i("el-drawer",{staticClass:"drawer-content",attrs:{"custom-class":"my-drawer",visible:e.drawerOpen,"append-to-body":!1,"modal-append-to-body":!1,size:"300","with-header":!1,"wrapper-closable":!1,modal:!1},on:{"update:visible":function(t){e.drawerOpen=t}}},[e.drawerOpen?i("div",{staticClass:"tab-button close",on:{click:e.toggleDrawer}},[i("i",{staticClass:"el-icon-arrow-right"})]):e._e(),i("el-container",{staticClass:"opacity-container"},[i("el-header",{staticClass:"header",attrs:{height:"37px"}},[i("div",[e._v("Opacity")])]),i("el-main",{staticClass:"main"},[i("div",{staticClass:"block"},[i("span",{staticClass:"display"},[e._v(e._s(e.displayString))]),i("el-slider",{staticClass:"my-slider",attrs:{step:.01,min:0,max:1,"format-tooltip":e.formatTooltip,"show-tooltip":!1},model:{value:e.material.opacity,callback:function(t){e.$set(e.material,"opacity",t)},expression:"material.opacity"}})],1)])],1)],1),e.drawerOpen?e._e():i("div",{staticClass:"tab-button open",on:{click:e.toggleDrawer}},[i("i",{staticClass:"el-icon-arrow-left"})])],1):e._e()},j=[],A=(i("73ef"),i("1fe8")),_=i.n(A),$=(i("8f11"),i("b2f4")),N=i.n($),L=(i("51c7"),i("2de2")),M=i.n(L),P=(i("4c89"),i("373b")),G=i.n(P),B=(i("b0e3"),i("1ac9")),V=i.n(B),U=i("6bfd"),E=i.n(U),q=i("7f9f"),I=i.n(q);I.a.use(E.a),O.a.use(V.a),O.a.use(G.a),O.a.use(M.a),O.a.use(N.a),O.a.use(_.a),O.a.use(p.a);var z={name:"OpacityControls",data:function(){return{displayString:"100%",material:void 0,drawerOpen:!0}},watch:{"material.opacity":function(){this.material&&this._zincobject.setAlpha(this.material.opacity)}},mounted:function(){this._zincobject=void 0},methods:{formatTooltip:function(e){return this.displayString=Math.floor(100*e+.5)+"%",this.displayString},toggleDrawer:function(){this.drawerOpen=!this.drawerOpen},setObject:function(e){this.material=e?e.morph.material:void 0,this._zincobject=e}}},H=z;i("21a1");function F(e,t,i,n,r,o,a,s){var c,l="function"===typeof e?e.options:e;if(t&&(l.render=t,l.staticRenderFns=i,l._compiled=!0),n&&(l.functional=!0),o&&(l._scopeId="data-v-"+o),a?(c=function(e){e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,e||"undefined"===typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),r&&r.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(a)},l._ssrRegister=c):r&&(c=s?function(){r.call(this,(l.functional?this.parent:this).$root.$options.shadowRoot)}:r),c)if(l.functional){l._injectStyles=c;var u=l.render;l.render=function(e,t){return c.call(t),u(e,t)}}else{var d=l.beforeCreate;l.beforeCreate=d?[].concat(d,c):[c]}return{exports:e,options:l}}var W=F(H,T,j,!1,null,"4c00a30f",null),Z=W.exports,Y=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"traditional-location",class:{open:e.drawerOpen,close:!e.drawerOpen}},[i("div",{staticClass:"traditional-container"},[i("el-row",[i("el-col",{attrs:{span:12}},[i("div",{staticClass:"regions-display-text"},[e._v(" Regions ")])]),i("el-col",{attrs:{span:12}},[i("el-checkbox",{staticClass:"all-checkbox",attrs:{indeterminate:e.isIndeterminate},on:{change:e.handleCheckAllChange},model:{value:e.checkAll,callback:function(t){e.checkAll=t},expression:"checkAll"}},[e._v(" Display all ")])],1)],1),i("el-checkbox-group",{staticClass:"checkbox-group",attrs:{size:"small"},on:{change:e.handleCheckedItemsChange},model:{value:e.checkedItems,callback:function(t){e.checkedItems=t},expression:"checkedItems"}},[i("div",{staticClass:"checkbox-group-inner"},e._l(e.sortedPrimitiveGroups,(function(t){return i("el-row",{key:t,attrs:{label:t}},[i("div",{staticClass:"checkbox-container"},[i("el-checkbox",{staticClass:"my-checkbox",class:{activeItem:e.activeRegion===t,hoverItem:e.hoverRegion===t},attrs:{label:t,checked:!0},on:{change:function(i){return e.visibilityToggle(t,i)}},nativeOn:{click:function(i){return e.itemClicked(t,i)},mouseover:function(i){return e.checkboxHover(t)}}},[i("el-color-picker",{class:{"show-picker":e.showColourPicker},attrs:{value:e.getColour(t),size:"small","popper-class":e.myPopperClass},on:{change:function(i){return e.setColour(t,i)}}}),e._v(" "+e._s(t)+" ")],1)],1)])})),1)])],1),i("div",{staticClass:"drawer-button",class:{open:e.drawerOpen,close:!e.drawerOpen},on:{click:e.toggleDrawer}},[i("i",{staticClass:"el-icon-arrow-left"})])])},J=[];i("18d2"),i("ab7e"),i("6bb1"),i("7c81"),i("51f7"),i("fd48"),i("bfab");function X(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,n=new Array(t);i<t;i++)n[i]=e[i];return n}function K(e){if(Array.isArray(e))return X(e)}i("6049"),i("51e9"),i("02ac"),i("e42b");function Q(e){if("undefined"!==typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}i("6579"),i("bcd8"),i("5fef");function ee(e,t){if(e){if("string"===typeof e)return X(e,t);var i=Object.prototype.toString.call(e).slice(8,-1);return"Object"===i&&e.constructor&&(i=e.constructor.name),"Map"===i||"Set"===i?Array.from(i):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?X(e,t):void 0}}function te(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function ie(e){return K(e)||Q(e)||ee(e)||te()}i("3666");var ne=i("4914"),re=i.n(ne),oe=(i("0cf4"),i("0607")),ae=i.n(oe),se=(i("55ee"),i("b777")),ce=i.n(se),le=i("6814"),ue=i("4e2d");I.a.use(E.a),O.a.use(ce.a),O.a.use(ae.a),O.a.use(re.a),O.a.use(g.a);var de={name:"TraditionalControls",props:{module:{type:Object,default:void 0},showColourPicker:Boolean},data:function(){return{checkAll:!0,isIndeterminate:!1,checkedItems:[],sortedPrimitiveGroups:[],activeRegion:"",hoverRegion:"",myPopperClass:"hide-scaffold-colour-popup",drawerOpen:!0}},watch:{showColourPicker:{immediate:!0,handler:function(){this.showColourPicker?this.myPopperClass="showPicker":this.myPopperClass="hide-scaffold-colour-popup"}}},created:function(){var e=this.module.sceneData.geometries.concat(this.module.sceneData.lines);e=e.concat(this.module.sceneData.glyphsets),e=ue(e.concat(this.module.sceneData.pointset)),this.sortedPrimitiveGroups=le(e),this.module.addOrganPartAddedCallback(this.organsAdded),this.module.graphicsHighlight.selectColour=4473924},destroyed:function(){this.sortedPrimitiveGroups=void 0},methods:{organsAdded:function(e){if(e&&""!=e){var t=ue(this.sortedPrimitiveGroups.concat([e]));t=le(t);var i=t.indexOf(void 0);i>-1&&t.splice(i,1),this.sortedPrimitiveGroups=t}},changeActiveByName:function(e){var t=this.getFirstZincObjectWithGroupName(e);t&&t.getVisibility()?(this.activeRegion=e,this.$emit("object-selected",t)):this.removeActive(),this.removeHover()},changeHoverByName:function(e){var t=this.getFirstZincObjectWithGroupName(e);t?(this.hoverRegion=e,this.$emit("object-hovered",t)):this.removeHover()},removeActive:function(){this.activeRegion="",this.$emit("object-selected",void 0)},removeHover:function(){this.hoverRegion="",this.$emit("object-hovered",void 0)},clear:function(){this.sortedPrimitiveGroups=[],this.checkedItems=[],this.checkAll=!0,this.isIndeterminate=!1,this.activeRegion="",this.hoverRegion="",this.$emit("object-selected",void 0)},getFirstZincObjectWithGroupName:function(e){if(this.module&&this.module.scene){var t=this.module.scene.findGeometriesWithGroupName(e);if(t.length>0)return t[0];if(t=this.module.scene.findGlyphsetsWithGroupName(e),t.length>0)return t[0];if(t=this.module.scene.findLinesWithGroupName(e),t.length>0)return t[0];if(t=this.module.scene.findPointsetsWithGroupName(e),t.length>0)return t[0]}},getColour:function(e){var t=this.getFirstZincObjectWithGroupName(e);if(t){var i=t.getColourHex();if(i)return"#"+i}return"#FFFFFF"},setColour:function(e,t){var i=this.getFirstZincObjectWithGroupName(e);if(i){var n=t.replace("#","0x");i.setColourHex(n)}},checkboxHover:function(e){this.changeHoverByName(e)},itemClicked:function(e,t){t.target.classList.contains("el-checkbox__inner")||t.target.classList.contains("el-checkbox__original")||(this.changeActiveByName(e),t.preventDefault())},handleCheckedItemsChange:function(){var e=!!this.checkedItems.includes(void 0),t=this.checkedItems.length;e&&t--,this.checkAll=t===this.sortedPrimitiveGroups.length,this.isIndeterminate=t>0&&t<this.sortedPrimitiveGroups.length},handleCheckAllChange:function(e){this.checkedItems=e?ie(this.sortedPrimitiveGroups):[],this.isIndeterminate=!1;for(var t=0;t<this.sortedPrimitiveGroups.length;t++)this.visibilityToggle(this.sortedPrimitiveGroups[t],this.checkAll)},viewAll:function(){this.module.viewAll()},visibilityToggle:function(e,t){this.module.changeOrganPartsVisibility(e,t),0==t&&(this.activeRegion===e&&this.removeActive(),this.hoverRegion===e&&this.removeHover())},toggleDrawer:function(){this.drawerOpen=!this.drawerOpen,this.$emit("drawer-toggled",this.drawerOpen)},getState:function(){if(this.checkAll)return{checkAll:!0};var e=ie(this.checkedItems),t=e.indexOf(void 0);return t>-1&&e.splice(t,1),{checkedItems:e}},setState:function(e){if(e)if(e.checkAll){this.checkedItems=ie(this.sortedPrimitiveGroups);for(var t=0;t<this.sortedPrimitiveGroups.length;t++)this.module.changeOrganPartsVisibility(this.sortedPrimitiveGroups[t],!0)}else if(e.checkedItems){this.checkedItems=ie(e.checkedItems);for(var i=0;i<this.sortedPrimitiveGroups.length;i++){var n=this.checkedItems.includes(this.sortedPrimitiveGroups[i]);this.module.changeOrganPartsVisibility(this.sortedPrimitiveGroups[i],n)}}this.handleCheckedItemsChange()}}},he=de,pe=(i("022d"),i("add8"),F(he,Y,J,!1,null,"b034523c",null)),fe=pe.exports,me=i("429c");I.a.use(E.a),O.a.use(S.a),O.a.use(R.a.directive),O.a.use(w.a),O.a.use(y.a),O.a.use(g.a),O.a.use(m.a),O.a.use(p.a),O.a.use(d.a),O.a.use(l.a);var ve=i("67b6").OrgansViewer,ge=i("549c").EventNotifier,be={name:"ScaffoldVuer",components:{OpacityControls:Z,SvgIcon:me["SvgIcon"],SvgSpriteColor:me["SvgSpriteColor"],TraditionalControls:fe},props:{url:{type:String,default:""},showColourPicker:{type:Boolean,default:!1},displayUI:{type:Boolean,default:!0},displayAtStartUp:{type:Boolean,default:!0},helpMode:{type:Boolean,default:!1},displayWarning:{type:Boolean,default:!0},warningMessage:{type:String,default:"Beta feature - under active development"},displayMarkers:{type:Boolean,default:!0},displayMinimap:{type:Boolean,default:!1},minimapSettings:{type:Object,default:function(){return{x_offset:16,y_offset:16,width:128,height:128,align:"top-right"}}},state:{type:Object,default:void 0},region:{type:String,default:""},viewURL:{type:String,default:""},render:{type:Boolean,default:!0}},data:function(){return{sceneData:this.$module.sceneData,isPlaying:!1,isTransitioning:!1,tooltipAppendToBody:!1,hoverVisabilities:[{value:!1},{value:!1},{value:!1},{value:!1},{value:!1},{value:!1},{value:!1}],inHelp:!1,loading:!1,duration:3e3,drawerOpen:!0,currentBackground:"white",availableBackground:["white","lightskyblue","black"],minimisedSlider:!1,sliderPosition:"",timeMax:100,orginalDuration:"",animateDuration:"6secs",playSpeed:[{value:.1,label:"0.1x"},{value:.5,label:"0.5x"},{value:1,label:"1x"},{value:2,label:"2x"},{value:5,label:"5x"},{value:10,label:"10x"}],currentSpeed:1,timeStamps:{}}},watch:{url:{handler:function(e){void 0!==this.state&&void 0!==this.state.url||this.setURL(e)},immediate:!0},region:{handler:function(e){this.state||this.viewURL||this.setFocusedRegion(e)},immediate:!0},state:{handler:function(e){this.setState(e)},immediate:!0,deep:!0},viewURL:{handler:function(e){this.updateViewURL(e)},immediate:!0},helpMode:function(e){this.setHelpMode(e)},displayMarkers:function(e){this.$module.scene.displayMarkers=e},displayMinimap:function(e){this.$module.scene.displayMinimap=e},"sceneData.currentTime":function(){this.$emit("timeChanged",this.sceneData.currentTime)},duration:function(){this.$module.scene.setDuration(this.duration)},minimapSettings:{deep:!0,handler:"updateMinimapScissor"},render:function(e){this.toggleRendering(e)}},beforeCreate:function(){this.$module=new ve,this.isReady=!1,this.selectedObject=void 0,this.hoveredObject=void 0,this.currentBackground="white",this._currentURL=void 0,this.availableBackground=["white","black","lightskyblue"]},mounted:function(){var e=new ge;e.subscribe(this,this.eventNotifierCallback),this.$module.addNotifier(e),this.$module.addOrganPartAddedCallback(this.organsAdded),this.$module.initialiseRenderer(this.$refs.display),this.toggleRendering(this.render),this.$module.toolTip=void 0,this.ro=new ResizeObserver(this.adjustLayout).observe(this.$refs.scaffoldContainer),this.defaultRate=this.$module.getPlayRate()},beforeDestroy:function(){this.ro&&this.ro.disconnect(),this.$module.destroy(),this.$module=void 0},methods:{organsAdded:function(){this.loading=!1},backgroundChangeCallback:function(e){this.currentBackground=e,this.$module.zincRenderer.getThreeJSRenderer().setClearColor(this.currentBackground,1)},captureScreenshotCallback:function(){this.$module.zincRenderer.removePostRenderCallbackFunction(this.captureID);var e=this.$module.zincRenderer.getThreeJSRenderer().domElement.toDataURL("image/png"),t=document.createElement("a");document.body.append(t),this.captureFilename?t.download=this.captureFilename:t.download="screenshot.png",t.href=e,t.click(),t.remove()},captureScreenshot:function(e){this.captureFilename=e,this.captureID=this.$module.zincRenderer.addPostRenderCallbackFunction(this.captureScreenshotCallback)},formatTooltip:function(e){if(this.timeMax>=1e3&&e){var t=(e%6e4/1e3).toFixed(2)+"s",i=e>6e4?(e/6e4).toFixed(0)+"m ":"";return i+t}return e?e.toFixed(2)+" ms":"0 ms"},fitWindow:function(){this.$module.scene&&this.$module.scene.viewAll()},zoomIn:function(){this.$module.scene&&this.$module.scene.changeZoomByScrollRateUnit(-1)},zoomOut:function(){this.$module.scene&&this.$module.scene.changeZoomByScrollRateUnit(1)},speedChanged:function(e){this.currentSpeed=e,this.$module.setPlayRate(this.defaultRate*this.currentSpeed)},stopFreeSpin:function(){var e=this.$module.scene.getZincCameraControls();e.stopAutoTumble(),this.isTransitioning=!1},viewRegion:function(e){if(e&&""!=e&&this.$module.scene){var t=this.$module.scene.findObjectsWithGroupName(e),i=this.$module.scene.getBoundingBoxOfZincObjects(t);i&&this.$module.scene.viewAllWithBoundingBox(i)}},setFocusedRegion:function(e){e&&(this.isReady?this.viewRegion(e):this.$module.setFinishDownloadCallback(this.setURLFinishCallback({region:e})))},updateViewURL:function(e){if(e)if(this.isReady){var t=new URL(e,this.url);this.$module.scene.loadViewURL(t)}else this.$module.setFinishDownloadCallback(this.setURLFinishCallback({viewURL:e}))},freeSpin:function(){if(this.$module.scene){var e=this.$module.scene.getZincCameraControls();this.isTransitioning=!0,e.enableAutoTumble(),e.autoTumble([1,0],Math.PI,!0),setTimeout(this.stopFreeSpin,4e3)}},eventNotifierCallback:function(e){if(1==e.eventType){if(this.$refs.traditionalControl)if(e.identifiers[0]){var t=e.identifiers[0].data.id?e.identifiers[0].data.id:e.identifiers[0].data.group;this.$refs.traditionalControl.changeActiveByName(t)}else this.$refs.traditionalControl.removeActive();this.$emit("scaffold-selected",e.identifiers)}else if(2==e.eventType){if(this.$refs.traditionalControl)if(e.identifiers[0]){var i=e.identifiers[0].data.id?e.identifiers[0].data.id:e.identifiers[0].data.group;this.$refs.traditionalControl.changeHoverByName(i)}else this.$refs.traditionalControl.removeHover();this.$emit("scaffold-highlighted",e.identifiers)}},getCoordinatesOfSelected:function(){if(this.selectedObject)return this.$module.scene.getObjectsScreenXY([this.selectedObject])},getDynamicSelectedCoordinates:function(){return this.$module.selectedScreenCoordinates},timeChange:function(e){var t=e/this.timeMax*100;t!=this.sceneData.currentTime&&this.$module.updateTime(t)},objectSelected:function(e){e!==this.selectedObject&&(this.selectedObject=e,this.$refs.opacityControl.setObject(this.selectedObject),e?this.$module.setSelectedByZincObject(e,!0):this.$module.setSelectedByObjects([],!0))},objectHovered:function(e){e!==this.hoveredObject&&(this.hoveredObject=e,e?this.$module.setHighlightedByZincObject(e,!0):this.$module.setHighlightedByObjects([],!0))},changeActiveByName:function(e){this.$refs.traditionalControl.changeActiveByName(e),void 0===e&&this.$refs.traditionalControl.removeActive()},changeHighlightedByName:function(e){this.$refs.traditionalControl.changeHoverByName(e),void 0===e&&this.$refs.traditionalControl.removeHover()},play:function(e){this.$module.playAnimation(e),this.isPlaying=e},setHelpMode:function(e){e?(this.inHelp=!0,this.hoverVisabilities.forEach((function(e){e.value=!0}))):(this.inHelp=!1,this.hoverVisabilities.forEach((function(e){e.value=!1})))},showToolitip:function(e){var t=this;this.inHelp||(this.tooltipWait=setTimeout((function(){t.hoverVisabilities[e].value=!0}),500))},hideToolitip:function(e){this.inHelp||(this.hoverVisabilities[e].value=!1,clearTimeout(this.tooltipWait))},updateMinimapScissor:function(){var e=this;Object.keys(this.minimapSettings).forEach((function(t){e.$module.scene.minimapScissor[t]=e.minimapSettings[t]})),this.$module.scene.minimapScissor.updateRequired=!0},updateSettingsfromScene:function(){this.currentSpeed=1,this.$module.setPlayRate(this.defaultRate),this.orginalDuration=this.$module.scene.getMetadataTag("OriginalDuration"),this.animateDuration=this.$module.scene.getMetadataTag("Duration");var e=this.$module.scene.getMetadataTag("TimeStamps");for(var t in this.timeStamps={},e)this.timeStamps[e[t]]=t;this.timeMax=this.$module.scene.getDuration()},setURLFinishCallback:function(e){var t=this;return function(){if(e){if(e.viewport)t.$module.scene.getZincCameraControls().setCurrentCameraSettings(e.viewport);else if(e.viewURL&&""!==e.viewURL){var i=new URL(e.viewURL,t.url);t.$module.scene.loadViewURL(i)}else e.region&&""!==e.region&&t.viewRegion(e.region);e.visibility&&t.$nextTick((function(){t.$refs.traditionalControl.setState(e.visibility)}))}t.updateSettingsfromScene(),t.$module.updateTime(.01),t.$module.updateTime(0),t.$module.unsetFinishDownloadCallback(),t.isReady=!0}},getState:function(){var e={url:this._currentURL,viewport:void 0,visibility:void 0};if(this.$refs.traditionalControl&&(e.visibility=this.$refs.traditionalControl.getState()),this.$module.scene){var t=this.$module.scene.getZincCameraControls();e.viewport=t.getCurrentViewport()}return e},setState:function(e){e&&(e.url&&e.url!==this._currentURL?this.setURLAndState(e.url,{viewport:e.viewport,visibility:e.visibility}):(e.viewport||e.visibility)&&(this.isReady&&this.$module.scene?(e.viewport&&this.$module.scene.getZincCameraControls().setCurrentCameraSettings(e.viewport),e.visibility&&this.$refs.traditionalControl.setState(e.visibility)):this.$module.setFinishDownloadCallback(this.setURLFinishCallback({viewport:e.viewport,visibility:e.visibility}))))},exportGLTF:function(e){return this.$module.scene.exportGLTF(e)},setURLAndState:function(e,t){if(e!=this._currentURL){var i=t&&t.viewport?t.viewport:void 0,n=t&&t.visibility?t.visibility:void 0;this._currentURL=e,this.$refs.traditionalControl&&this.$refs.traditionalControl.clear(),this.loading=!0,this.isReady=!1,this.$module.setFinishDownloadCallback(this.setURLFinishCallback({viewport:i,region:this.region,viewURL:this.viewURL,visibility:n})),this.$module.loadOrgansFromURL(e,void 0,void 0,"scene",void 0),this.$module.scene.displayMarkers=this.displayMarkers,this.$module.scene.displayMinimap=this.displayMinimap,this.updateMinimapScissor()}},setURL:function(e){this.setURLAndState(e,void 0)},drawerToggled:function(e){this.drawerOpen=e,this.adjustLayout()},adjustLayout:function(){var e=this.$refs.scaffoldContainer.clientWidth;this.minimisedSlider=e<812,this.minimisedSlider?this.sliderPosition=this.drawerOpen?"right":"left":this.sliderPosition=""},toggleRendering:function(e){this.$module.zincRenderer&&(e?this.$module.zincRenderer.animate():this.$module.zincRenderer.stopAnimate())},forceResize:function(){this.$module.zincRenderer&&this.$module.zincRenderer.onWindowResize()}}},ye=be,Ce=(i("fb06"),i("642d"),F(ye,a,s,!1,null,"1b66f0b7",null)),we=Ce.exports},fb06:function(e,t,i){"use strict";i("d7e1")},fd48:function(e,t){e.exports=require("core-js/modules/es.string.includes")},fd9c:function(e,t){e.exports=require("element-ui/lib/theme-chalk/row.css")}})}));
|
|
1
|
+
(function(e,t){"object"===typeof exports&&"object"===typeof module?module.exports=t():"function"===typeof define&&define.amd?define([],t):"object"===typeof exports?exports["scaffoldvuer"]=t():e["scaffoldvuer"]=t()})("undefined"!==typeof self?self:this,(function(){return function(e){var t={};function i(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,i),r.l=!0,r.exports}return i.m=e,i.c=t,i.d=function(e,t,n){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},i.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)i.d(n,r,function(t){return e[t]}.bind(null,r));return n},i.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="",i(i.s="fae3")}({"02ac":function(e,t){e.exports=require("core-js/modules/es.symbol.iterator")},"0607":function(e,t){e.exports=require("element-ui/lib/checkbox-group")},"0cf4":function(e,t){e.exports=require("element-ui/lib/theme-chalk/checkbox-group.css")},"0de2":function(e,t){e.exports=require("element-ui/lib/select")},"0fe2":function(e,t){e.exports=require("element-ui/lib/theme-chalk/select.css")},"10c9":function(e,t){t.WEBGL={isWebGLAvailable:function(){try{var e=document.createElement("canvas");return!(!window.WebGLRenderingContext||!e.getContext("webgl")&&!e.getContext("experimental-webgl"))}catch(t){return!1}},isWebGL2Available:function(){try{var e=document.createElement("canvas");return!(!window.WebGL2RenderingContext||!e.getContext("webgl2"))}catch(t){return!1}},getWebGLErrorMessage:function(){return this.getErrorMessage(1)},getWebGL2ErrorMessage:function(){return this.getErrorMessage(2)},getErrorMessage:function(e){var t={1:"WebGL",2:"WebGL 2"},i={1:window.WebGLRenderingContext,2:window.WebGL2RenderingContext},n='This module requires <a href="http://khronos.org/webgl/wiki/Getting_a_WebGL_Implementation" style="color:#008">$1</a> support but your $0 does not seem to support it.',r=document.createElement("div");return r.id="webglmessage",r.style.fontFamily="monospace",r.style.fontSize="20px",r.style.fontWeight="normal",r.style.textAlign="center",r.style.background="#fff",r.style.color="#000",r.style.padding="1.5em",r.style.width="400px",r.style.margin="5em auto 0",n=i[e]?n.replace("$0","graphics card"):n.replace("$0","browser"),n=n.replace("$1",t[e]),r.innerHTML=n,r}}},"139f":function(e,t){e.exports=require("core-js/modules/es.array.for-each")},1823:function(e,t){e.exports="precision highp float;\n\nuniform mat4 modelViewMatrix;\nuniform mat4 projectionMatrix;\n\nattribute vec3 position;\nattribute vec3 normal;\nattribute vec3 color;\nattribute vec2 uv;\nattribute vec3 position_1;\nattribute vec3 position_2;\nattribute vec2 uv_1;\nattribute vec2 uv_2;\n\nuniform float time;\nuniform float slide_pos;\nvarying vec2 vUv;\n\nvoid main() {\n\tvUv = uv;\n\t\n\tvec3 transformed_xi1 = position * vec3(1.0 - time) + position_1 * vec3(time);\n\t\n\tvec3 xi0_time_1 = vec3(position_1.x, position_1.y, 0.0);\n\tvec3 transformed_xi0 = position_2 * vec3(1.0 - time) + xi0_time_1 * vec3(time);\n\n\tvec3 transformed = vec3(transformed_xi0) * vec3(1.0 - slide_pos) + vec3(transformed_xi1) * vec3(slide_pos);\n\t\n\tvec4 mvPosition = modelViewMatrix * vec4( transformed, 1.0 );\n\tgl_Position = projectionMatrix * mvPosition;\n\n}\n"},"18d2":function(e,t){e.exports=require("core-js/modules/es.array.concat")},"1ac9":function(e,t){e.exports=require("element-ui/lib/container")},"1ce0":function(e,t){e.exports=require("core-js/modules/web.dom-collections.iterator")},"1fe8":function(e,t){e.exports=require("element-ui/lib/main")},2175:function(e,t){e.exports=require("core-js/modules/es.object.keys")},"21a1":function(e,t,i){"use strict";i("5810")},"2a6f":function(e,t){e.exports=require("core-js/modules/web.url")},"2c1b":function(e,t){e.exports=require("element-ui/lib/theme-chalk/loading.css")},"2de2":function(e,t){e.exports=require("element-ui/lib/header")},3170:function(e,t){e.exports=require("element-ui/lib/theme-chalk/tabs.css")},"319f":function(e,t){e.exports=require("core-js/modules/es.number.to-fixed")},"31fb":function(e,t){e.exports=require("element-ui/lib/tab-pane")},3666:function(e,t){e.exports=require("element-ui/lib/theme-chalk/color-picker.css")},"373b":function(e,t){e.exports=require("element-ui/lib/drawer")},3966:function(e,t,i){var n={ALL:0,DESTROYED:1,NAME_CHANGED:2,SETTINGS_CHANGED:3},r=function(){this.typeName="Base Module",this.instanceName="default",this.onChangedCallbacks=[],this.messageFunction=void 0,this.eventNotifiers=[],this.broadcastChannels={}};r.prototype.setName=function(e){if(e&&this.instanceName!==e){this.instanceName=e;for(var t=this.onChangedCallbacks.slice(),i=0;i<t.length;i++)t[i](this,n.NAME_CHANGED)}},r.prototype.addBroadcastChannels=function(e){if(e in this.broadcastChannels)return!1;var t=new(i("c45a").default)(e);return this.broadcastChannels[e]=t,!0},r.prototype.removeBroadcastChannels=function(e){e in this.broadcastChannels&&(this.broadcastChannels[e].close(),delete broadcastChannels[e])},r.prototype.settingsChanged=function(){for(var e=this.onChangedCallbacks.slice(),t=0;t<e.length;t++)e[t](this,n.SETTINGS_CHANGED)},r.prototype.exportSettings=function(){var e={};return e.dialog=this.typeName,e.name=this.instanceName,e},r.prototype.importSettings=function(e){return e.dialog==this.typeName&&(this.setName(e.name),!0)},r.prototype.publishChanges=function(e,t){for(var n=0;n<this.eventNotifiers.length;n++)this.eventNotifiers[n].publish(this,t,e);if(t===i("549c").EVENT_TYPE.SELECTED&&e&&e[0]){var r=e[0],o={action:"query-data",resource:r.data.id,data:r.data,sender:this.instanceName};for(var a in this.broadcastChannels)this.broadcastChannels[a].postMessage(o)}},r.prototype.setMessageFunction=function(e){this.messageFunction=e},r.prototype.displayMessage=function(e){this.messageFunction&&this.messageFunction(e)},r.prototype.getName=function(){return this.instanceName},r.prototype.destroy=function(){for(var e=this.onChangedCallbacks.slice(),t=0;t<e.length;t++)e[t](this,n.DESTROYED)},r.prototype.addChangedCallback=function(e){0==this.onChangedCallbacks.includes(e)&&this.onChangedCallbacks.push(e)},r.prototype.removeChangedCallback=function(e){var t=this.onChangedCallbacks.indexOf(e);t>-1&&this.onChangedCallbacks.splice(t,1)},r.prototype.addNotifier=function(e){this.eventNotifiers.push(e)},t.BaseModule=r,t.MODULE_CHANGE=n},"429c":function(e,t){e.exports=require("@abi-software/svg-sprite")},4914:function(e,t){e.exports=require("element-ui/lib/color-picker")},"4c89":function(e,t){e.exports=require("element-ui/lib/theme-chalk/drawer.css")},"4e2d":function(e,t){e.exports=require("lodash/uniq")},"4e8a":function(e,t){e.exports="precision highp float;\nuniform sampler2D myTex;\nvarying vec2 vUv;\n\nvoid main() {\n\tgl_FragColor = texture2D( myTex, vUv );\n\n}\n"},"4ed7":function(e,t,i){"use strict";i("98e2")},"51c7":function(e,t){e.exports=require("element-ui/lib/theme-chalk/header.css")},"51e9":function(e,t){e.exports=require("core-js/modules/es.symbol.description")},"51f7":function(e,t){e.exports=require("core-js/modules/es.regexp.exec")},"549c":function(e,t){var i={ALL:0,SELECTED:1,HIGHLIGHTED:2},n=function(e,t){this.eventType=e,this.identifiers=t},r=function(e,t,r){this.targetedID=[];var o=e;this.targetEventType=void 0===r?i.ALL:r;var a=t,s=this;this.getEventType=function(){return r},this.notify=function(e,t,r){if(e!==o&&(s.targetEventType===i.ALL||s.targetEventType===t)){var c=new n(t,r);a(c)}}};t.EventNotifier=function(){var e=[];this.publish=function(t,i,n){for(var r=0;r<e.length;r++)e[r].notify(t,i,n)},this.subscribe=function(t,i,n){if("function"===typeof i){var o=new r(t,i,n);return e.push(o),o}},this.unsubscribe=function(t){for(var i=0;i<e.length;i++)if(t===e[i])return void e.splice(i,1)}},t.EVENT_TYPE=i},"55ee":function(e,t){e.exports=require("element-ui/lib/theme-chalk/checkbox.css")},5810:function(e,t,i){},"5fef":function(e,t){e.exports=require("core-js/modules/es.regexp.to-string")},6049:function(e,t){e.exports=require("core-js/modules/es.symbol")},"642d":function(e,t,i){"use strict";i("7d9b")},6579:function(e,t){e.exports=require("core-js/modules/es.array.slice")},"67b6":function(e,t,i){var n=i("9206").THREE,r=function(){this.currentName="",this.currentSystem="",this.currentPart="",this.currentSpecies="",this.metaURL="",this.viewURL="",this.geometries=[],this.lines=[],this.glyphsets=[],this.pointsets=[],this.currentTime=0,this.timeVarying=!1,this.nerveMap=void 0,this.nerveMapIsActive=!1},o=function(e){i("7a89").RendererModule.call(this);var t=void 0,o=void 0;this.sceneData=new r;var a=new Array,s=new Array,c=new Array,l=void 0,u=new Array,d=e,h=this;h.typeName="Organ Viewer",this.getSceneData=function(){return h.sceneData},this.updateTime=function(e){let i=6e3;h.scene&&(i=h.scene.getDuration());var n=e/100*i;h.sceneData.nerveMapIsActive?o&&(o.setMorphsTime(n),h.sceneData.nerveMap&&h.sceneData.nerveMap.additionalReader&&h.sceneData.nerveMap.additionalReader.setTime(e/100)):(t&&t.setMorphsTime(n),h.scene&&h.scene.setMorphsTime(n)),h.sceneData.currentTime=e};var p=function(){let e=3e3;h.scene&&(e=h.scene.getDuration());for(var i=h.zincRenderer.getCurrentTime(),n=0;n<a.length;n++)a[n](i);!h.sceneData.nerveMapIsActive&&t&&t.setMorphsTime(i),h.sceneData.nerveMap&&h.sceneData.nerveMap.additionalReader&&h.sceneData.nerveMap.additionalReader.setTime(i/e),h.sceneData.currentTime=i/e*100},f=function(){if(h.selectedCenter){const t=new n.Vector3;t.copy(h.selectedCenter);var e=h.scene.vectorToScreenXY(t);h.selectedScreenCoordinates.x=e.x,h.selectedScreenCoordinates.y=e.y}},m=function(){return function(){p()}},v=function(){return function(){f()}};this.addTimeChangedCallback=function(e){a.push(e)},this.setTexturePos=function(e){h.sceneData.nerveMap&&h.sceneData.nerveMap.additionalReader&&h.sceneData.nerveMap.additionalReader.setSliderPos(e)},this.addLayoutUpdateRequiredCallback=function(e){u.push(e)},this.addSceneChangedCallback=function(e){s.push(e)},this.addOrganPartAddedCallback=function(e){c.push(e)},this.setFinishDownloadCallback=function(e){l=e},this.unsetFinishDownloadCallback=function(){l=void 0},this.getNamedObjectsToScreenCoordinates=function(e,t){var i=new n.Vector3;i.setFromMatrixPosition(obj.matrixWorld);var r=width/2,o=height/2;return i.project(t),i.x=i.x*r+r,i.y=-i.y*o+o,i};var g=function(e){var t=void 0,i=void 0;if(void 0!==e&&(i=e.object.userData&&e.object.userData.isMarker?e.object.userData.parent.morph:e.object,i))if(i.name)t=i.name;else{var n=h.getAnnotationsFromObjects([i]);n&&n[0]&&(t=n[0].data.group)}return{id:t,object:i}},b=function(){return function(e,t,i){var n=h.getIntersectedObject(e),r=g(n);if(r.id)return void 0!==h.toolTip&&(h.toolTip.setText(r.id),h.toolTip.show(t,i)),h.displayMessage(r.object.name+" selected."),void(r.object.userData.isGlyph?r.object.name?h.setSelectedByObjects([r.object],!0):h.setSelectedByZincObject(r.object.userData.getGlyphset(),!0):h.setSelectedByObjects([r.object],!0));void 0!==h.toolTip&&h.toolTip.hide(),h.setSelectedByObjects([],!0)}},y=function(){return function(e,t,i){var n=h.getIntersectedObject(e),r=g(n);if(r.id)return h.displayArea.style.cursor="pointer",void 0!==h.toolTip&&(h.toolTip.setText(r.id),h.toolTip.show(t,i)),void h.setHighlightedByObjects([r.object],!0);void 0!==h.toolTip&&h.toolTip.hide(),h.displayArea.style.cursor="auto",h.setHighlightedByObjects([],!0)}},C=function(e,t,i,n){if("all"==n||"geometries"==n)for(var r=e.findGeometriesWithGroupName(t),o=0;o<r.length;o++)r[o].setVisibility(i);if("all"==n||"glyphsets"==n){var a=e.findGlyphsetsWithGroupName(t);for(o=0;o<a.length;o++)a[o].setVisibility(i)}if("all"==n||"pointsets"==n){var s=e.findPointsetsWithGroupName(t);for(o=0;o<s.length;o++)s[o].setVisibility(i)}if("all"==n||"lines"==n){var c=e.findLinesWithGroupName(t);for(o=0;o<c.length;o++)c[o].setVisibility(i)}};this.changeGeometriesVisibility=function(e,i){C(h.scene,e,i,"geometries"),t&&C(t,e,i,"geometries")},this.changeGlyphsetsVisibility=function(e,i){C(h.scene,e,i,"glyphsets"),t&&C(t,e,i,"glyphsets")},this.changeLinesVisibility=function(e,i){C(h.scene,e,i,"lines"),t&&C(t,e,i,"lines")},this.changePointsetsVisibility=function(e,i){C(h.scene,e,i,"pointsets"),t&&C(t,e,i,"pointsets")},this.changeOrganPartsVisibility=function(e,i,n){var r="all";void 0!==n&&(r=n),C(h.scene,e,i,r),t&&C(t,e,i,r)},this.changeOrganPartsVisibilityCallback=function(e){return function(t){h.changeOrganPartsVisibility(e,t)}};var w=function(e){return function(t){t.groupName=e,imageCombiner&&t.morph&&t.morph.material.map&&(t.morph.material.map=new n.Texture(imageCombiner.getCombinedImage()),t.morph.material.map.needsUpdate=!0,t.morph.material.needsUpdate=!0)}},x=function(){var e=h.sceneData.currentName+"_nervemap";if(o=h.zincRenderer.getSceneByName(e),void 0==o){var t=d.getOrgansDirectoryPrefix()+"/"+h.sceneData.nerveMap.threed.meta;o=h.zincRenderer.createScene(e),o.loadMetadataURL(t,w("threed")),void 0!==h.sceneData.nerveMap.threed.view?o.loadViewURL(d.getOrgansDirectoryPrefix()+"/"+h.sceneData.nerveMap.threed.view):o.loadViewURL(d.getBodyDirectoryPrefix()+"/body_view.json"),o.ambient.intensity=8,o.directionalLight.intensity=0;var n=o.getZincCameraControls();n.setMouseButtonAction("AUXILIARY","ZOOM"),n.setMouseButtonAction("SECONDARY","PAN"),h.sceneData.nerveMap.additionalReader=new(i("6fd2").VaryingTexCoordsReader)(o);var r=[d.getOrgansDirectoryPrefix()+"/digestive/stomach/nerve_map/3d/xi1_time_0.json",d.getOrgansDirectoryPrefix()+"/digestive/stomach/nerve_map/3d/xi1_time_1.json",d.getOrgansDirectoryPrefix()+"/digestive/stomach/nerve_map/3d/xi0_time_0.json"];h.sceneData.nerveMap.additionalReader.loadURLsIntoBufferGeometry(r)}h.zincRenderer.setCurrentScene(o),h.graphicsHighlight.reset()},R=function(){for(var e=0;e<u.length;e++)u[e](!1,!0)};this.changeNerveMapVisibility=function(){h.sceneData.nerveMapIsActive=!h.sceneData.nerveMapIsActive,h.sceneData.nerveMapIsActive?x():(h.zincRenderer.setCurrentScene(h.scene),h.graphicsHighlight.reset()),R()},this.changeBackgroundColour=function(e){var t=new n.Color(e);if(h.zincRenderer){var i=h.zincRenderer.getThreeJSRenderer();i.setClearColor(t,1)}};var k=function(e){e.groupName&&(e.isGeometry?h.sceneData.geometries.includes(e.groupName)||h.sceneData.geometries.push(e.groupName):e.isGlyphset?h.sceneData.glyphsets.includes(e.groupName)||h.sceneData.glyphsets.push(e.groupName):e.isLines?h.sceneData.lines.includes(e.groupName)||h.sceneData.lines.push(e.groupName):e.isPointset&&(h.sceneData.pointsets.includes(e.groupName)||h.sceneData.pointsets.push(e.groupName)))},S=function(e,t,n,r){for(var o=0;o<c.length;o++)c[o](r.groupName,h.scene.isTimeVarying(),r);n&&d.setGeometryColour(r,e,t),k(r),r.groupName?h.displayMessage(r.groupName+" loaded."):h.displayMessage("Resource loaded.");var a=new(i("a0d7").annotation);a.data={species:h.sceneData.currentSpecies,system:e,part:t,group:r.groupName},r.userData=[a]},D=function(e,t,i){return function(n){S(e,t,i,n)}},O=function(){return function(){h.settingsChanged(),h.sceneData.timeVarying=h.scene.isTimeVarying(),h.displayMessage("All resources loaded."),l&&l()}};this.updateFieldvisibility=function(e,t){for(var i=0;i<e.length;i++)if(t!=i){var n=e[i].PartName;h.changeOrganPartsVisibility(n,!1)}if(t>-1){var r=e[t].PartName;if(h.scene.findGeometriesWithGroupName(r).length>0||h.scene.findGlyphsetsWithGroupName(r).length>0)h.changeOrganPartsVisibility(r,!0);else{var o=getOrganDetails(e[t].SystemName,r);void 0!=o&&h.scene.loadMetadataURL(d.getOrgansDirectoryPrefix()+"/"+o.meta)}}},this.getAvailableSpecies=function(e,t,i){var n=new Array;n.push("none");var r=Object.keys(organsFileMap);for(index in r){var o=r[index];o!=e&&organsFileMap[o].hasOwnProperty(t)&&organsFileMap[o][t].hasOwnProperty(i)&&n.push(o)}return n};var T=function(e,t,i,n){h.sceneData.nerveMapIsActive=!1,h.sceneData.nerveMap=void 0,h.sceneData.metaURL="",h.sceneData.viewURL="",h.sceneData.currentSpecies=e,h.sceneData.currentSystem=t,h.sceneData.currentPart=i,h.sceneData.currentTime=0,h.sceneData.geometries.splice(0),h.sceneData.lines.splice(0),h.sceneData.glyphsets.splice(0),h.sceneData.pointsets.splice(0),h.sceneData.timeVarying=!1;var r="";e&&(r=e+"/"),t&&(r=t+"/"),i&&(r=i),h.sceneData.currentName=r};this.loadOrgansFromURL=function(e,t,i,n,r){if(h.zincRenderer&&n&&h.sceneData.metaURL!==e){T(t,i,n,void 0);var o=h.sceneData.currentName,a=h.zincRenderer.getSceneByName(o);a?a.clearAll():a=h.zincRenderer.createScene(o);for(var c=0;c<s.length;c++)s[c](h.sceneData);r&&""!=r?(h.sceneData.viewURL=r,a.loadViewURL(h.sceneData.viewURL)):h.sceneData.viewURL=void 0,h.sceneData.metaURL=e,h.displayMessage("Downloading..."),a.loadMetadataURL(e,D(i,n,!1),O()),h.scene=a,h.zincRenderer.setCurrentScene(a),h.graphicsHighlight.reset();var l=a.getZincCameraControls();l.enableRaycaster(a,b(),y()),l.setMouseButtonAction("AUXILIARY","ZOOM"),l.setMouseButtonAction("SECONDARY","PAN")}},this.alignCameraWithSelectedObject=function(e){var t=h.graphicsHighlight.getSelected();t&&t[0]&&t[0].userData&&h.scene.alignObjectToCameraView(t[0].userData,e)},this.exportSettings=function(){var e={};return e.name=h.instanceName,h.sceneData.currentSystem&&(e.system=h.sceneData.currentSystem),h.sceneData.currentSpecies&&(e.species=h.sceneData.currentSpecies),h.sceneData.currentPart&&(e.part=h.sceneData.currentPart),e.metaURL=h.sceneData.metaURL,h.sceneData.viewURL&&(e.viewURL=h.sceneData.viewURL),e.dialog="Organ Viewer",e},this.importSettings=function(e){return!(!e||e.dialog!=this.typeName)&&(h.setName(e.name),void 0!==e.metaURL&&""!=e.metaURL?h.loadOrgansFromURL(e.metaURL,e.species,e.system,e.part,e.viewURL):h.loadOrgans(e.species,e.system,e.part),!0)};var j=function(){h.initialiseRenderer(void 0),h.zincRenderer&&(h.zincRenderer.addPreRenderCallbackFunction(m()),h.zincRenderer.addPostRenderCallbackFunction(v()))};j()};o.prototype=Object.create(i("7a89").RendererModule.prototype),t.OrgansViewer=o},6814:function(e,t){e.exports=require("lodash/orderBy")},"6bb1":function(e,t){e.exports=require("core-js/modules/es.array.index-of")},"6bfd":function(e,t){e.exports=require("element-ui/lib/locale/lang/en")},"6ea3":function(e,t){e.exports=require("element-ui/lib/row")},"6fd2":function(e,t,i){var n=i("9206").THREE;t.VaryingTexCoordsReader=function(e){var t=void 0,r=void 0,o=void 0,a=0,s=0,c=e,l=new n.TextureLoader,u=new l.load("models/organsViewerModels/digestive/stomach/nerve_map/texture/ratstomach_innervation_square.png");u.wrapS=n.RepeatWrapping,u.wrapT=n.RepeatWrapping,u.format=n.RGBFormat;var d=n.UniformsUtils.merge([{ambient:{type:"c",value:new n.Color(0)},diffuse:{type:"c",value:new n.Color(16777215)},emissive:{type:"c",value:new n.Color(12303291)},specular:{type:"c",value:new n.Color(1118481)},shininess:{type:"f",value:100},opacity:{type:"f",value:1},ambientLightColor:{type:"c",value:new n.Color(15790320)},directionalLightColor:{type:"c",value:new n.Color(5592405)},directionalLightDirection:{type:"v3",value:new n.Vector3},offsetRepeat:{value:new n.Vector4(0,0,1,1)},time:{type:"f",value:0},slide_pos:{type:"f",value:1},myTex:{type:"t",value:null}}]),h=function(e,t){var i=3*t.faces.length*3,o=new Float32Array(i),a=(new Float32Array(i),new Float32Array(i)),s=new Float32Array(3*t.faces.length*2);if(void 0===r&&(r=new n.BufferGeometry),t.faces.forEach((function(e,i){o[9*i+0]=t.vertices[e.a].x,o[9*i+1]=t.vertices[e.a].y,o[9*i+2]=t.vertices[e.a].z,o[9*i+3]=t.vertices[e.b].x,o[9*i+4]=t.vertices[e.b].y,o[9*i+5]=t.vertices[e.b].z,o[9*i+6]=t.vertices[e.c].x,o[9*i+7]=t.vertices[e.c].y,o[9*i+8]=t.vertices[e.c].z,a[9*i+0]=e.vertexNormals[0].x,a[9*i+1]=e.vertexNormals[0].y,a[9*i+2]=e.vertexNormals[0].z,a[9*i+3]=e.vertexNormals[1].x,a[9*i+4]=e.vertexNormals[1].y,a[9*i+5]=e.vertexNormals[1].z,a[9*i+6]=e.vertexNormals[2].x,a[9*i+7]=e.vertexNormals[2].y,a[9*i+8]=e.vertexNormals[2].z,s[6*i+0]=t.faceVertexUvs[0][i][0].x,s[6*i+1]=t.faceVertexUvs[0][i][0].y,s[6*i+2]=t.faceVertexUvs[0][i][1].x,s[6*i+3]=t.faceVertexUvs[0][i][1].y,s[6*i+4]=t.faceVertexUvs[0][i][2].x,s[6*i+5]=t.faceVertexUvs[0][i][2].y})),0==e)r.addAttribute("position",new n.BufferAttribute(o,3)),r.addAttribute("normal",new n.BufferAttribute(a,3)),r.addAttribute("uv",new n.BufferAttribute(s,2));else{var c="position_"+e,l="normal_"+e,u="uv_"+e;r.addAttribute(c,new n.BufferAttribute(o,3)),r.addAttribute(l,new n.BufferAttribute(a,3)),r.addAttribute(u,new n.BufferAttribute(s,2))}},p=function(e,t,i){var r=new n.RawShaderMaterial({vertexShader:t[0],fragmentShader:t[1],uniforms:d});r.uniforms.myTex.value=u,r.side=n.DoubleSide,r.depthTest=!0,r.needsUpdate=!0,r.map=u,r.uniforms.myTex.value.needsUpdate=!0,r.opacity=1,o=c.addZincGeometry(e,30001,void 0,void 0,!1,!1,!0,void 0,r),o.groupName="varyingTexture"},f=function(e,i){return function(n,o){var c=0;h(e,n),s++,s==a&&(p(r,i,c),void 0!=t&&"function"==typeof t&&t(r))}};this.setSliderPos=function(e){o&&(o.morph.material.uniforms.slide_pos.value=e)},this.setTime=function(e){o&&(o.morph.material.uniforms.time.value=e)},this.setTexture=function(e){o&&(o.morph.material.uniforms.myTex.value=e,o.morph.material.uniforms.myTex.value.needsUpdate=!0)},this.loadURLsIntoBufferGeometry=function(e,r,o,s){var c=new n.JSONLoader(!0);a=e.length,t=r;for(var l=[i("1823"),i("4e8a")],u=0;u<a;u++)c.load(e[u],f(u,l),o,s)}}},"703d":function(e,t){e.exports=require("element-ui/lib/theme-chalk/col.css")},"73ef":function(e,t){e.exports=require("element-ui/lib/theme-chalk/main.css")},"76bf":function(e,t,i){i("b723"),t.ToolTip=function(e){var t=void 0,i=void 0,n=void 0,r='<div class="mptooltip" id="tip"><span class="mptooltiptext" id="tiptext"> Tooltip text</span></div>';this.show=function(e,r){t.style.left=e+"px",t.style.top=r-20+"px",i.style.visibility="visible",i.style.opacity=1,n.style.visibility="visible",n.style.opacity=1},this.hide=function(){i.style.visibility="hidden",i.style.opacity=0,n.style.visibility="hidden",n.style.opacity=0},this.setText=function(e){n.innerHTML=e};var o=function(){t=document.createElement("div"),t.id="tooltipcontainer",t.innerHTML=r,i=t.querySelector("#tip"),n=t.querySelector("#tiptext"),e.appendChild(t)};o()}},"7a89":function(e,t,i){var n=i("9206").THREE,r=function(){var e=i("10c9").WEBGL,t=document.createElement("div"),n=void 0;if(t.style.height="100%",e.isWebGLAvailable()){var r=i("9206");n=new r.Renderer(t,window);r.defaultMaterialColor=16777116,n.initialiseVisualisation(),n.playAnimation=!1}else{var o=e.getWebGLErrorMessage();t.appendChild(o)}return{renderer:n,container:t}},o=function(){i("3966").BaseModule.call(this),this.scene=void 0,this.toolTip=void 0,this.rendererContainer=void 0,this.displayArea=void 0,this.graphicsHighlight=new(i("8cec").GraphicsHighlight),this.zincRenderer=null,this.selectedScreenCoordinates=new n.Vector3,this.selectedCenter=void 0};o.prototype=Object.create(i("3966").BaseModule.prototype),o.prototype.getIntersectedObject=function(e){if(e)for(var t=0;t<e.length;t++)if(void 0!==e[t]&&e[t].object&&e[t].object.userData&&e[t].object.userData.isZincObject&&(e[t].object.name||e[t].object.userData.isMarker))return e[t]},o.prototype.getAnnotationsFromObjects=function(e){for(var t=[],i=0;i<e.length;i++){var n=e[i].userData,r=void 0;if(n)if(n.isGlyph||n.isGlyphset){var o=n;n.isGlyph&&(o=n.getGlyphset()),r=o.userData?o.userData[0]:void 0,r&&r.data&&(e[i].name&&""!=e[i].name?r.data.id=e[i].name:r.data.id=o.groupName)}else r=n.userData?n.userData[0]:void 0,r&&r.data&&(r.data.id=e[i].name);t[i]=r}return t},o.prototype.setHighlightedByObjects=function(e,t){var n=this.graphicsHighlight.setHighlighted(e);if(n&&t){var r=i("549c").EVENT_TYPE.HIGHLIGHTED,o=this.getAnnotationsFromObjects(e);this.publishChanges(o,r)}return n},o.prototype.setHighlightedByZincObject=function(e,t){return this.setHighlightedByObjects([e?e.morph:void 0],t)},o.prototype.setupLiveCoordinates=function(e){if(e&&e.length>0){var t=this.scene.getBoundingBoxOfZincObjects(e);let i=new n.Vector3;t.getCenter(i),void 0==this.selectedCenter?this.selectedCenter=i:(this.selectedCenter.x=i.x,this.selectedCenter.y=i.y)}else this.selectedCenter=void 0},o.prototype.objectsToZincObjects=function(e){for(var t=[],i=0;i<e.length;i++){var n=e[i].userData;if(n)if(n.isGlyph||n.isGlyphset){var r=n;n.isGlyph&&(r=n.getGlyphset()),t.push(r)}else t.push(n)}return t},o.prototype.setSelectedByObjects=function(e,t){var n=this.graphicsHighlight.setSelected(e);if(n){var r=this.objectsToZincObjects(e);if(this.setupLiveCoordinates(r),t){var o=i("549c").EVENT_TYPE.SELECTED,a=this.getAnnotationsFromObjects(e);this.publishChanges(a,o)}}return n},o.prototype.setSelectedByZincObject=function(e,t){return this.setSelectedByObjects([e?e.morph:void 0],t)};var a=function(e){return function(t){e.push(t.getMesh())}};o.prototype.findObjectsByGroupName=function(e){for(var t=this.scene.findGeometriesWithGroupName(e),i=[],n=0;n<t.length;n++)i.push(t[n].morph);var r=this.scene.findGlyphsetsWithGroupName(e);for(n=0;n<r.length;n++)r[n].forEachGlyph(a(i));return i},o.prototype.setHighlightedByGroupName=function(e,t){var i=this.findObjectsByGroupName(e);return this.setHighlightedByObjects(i,t)},o.prototype.setSelectedByGroupName=function(e,t){var i=this.findObjectsByGroupName(e);return this.setSelectedByObjects(i,t)},o.prototype.changeBackgroundColour=function(e){var t=new n.Color(e);if(this.zincRenderer){var i=this.zincRenderer.getThreeJSRenderer();i.setClearColor(t,1)}},o.prototype.resetView=function(){this.zincRenderer&&this.zincRenderer.resetView()},o.prototype.viewAll=function(){this.zincRenderer&&this.zincRenderer.viewAll()},o.prototype.playAnimation=function(e){this.zincRenderer&&(this.zincRenderer.playAnimation=e)},o.prototype.setPlayRate=function(e){this.zincRenderer&&this.zincRenderer.setPlayRate(e)},o.prototype.getPlayRate=function(e){return this.zincRenderer?this.zincRenderer.getPlayRate():0},o.prototype.initialiseRenderer=function(e){if(void 0===this.zincRenderer||void 0===this.rendererContainer){var t=r();this.zincRenderer=t["renderer"],this.rendererContainer=t["container"]}e&&(this.displayArea=e,this.displayArea.appendChild(this.rendererContainer),this.zincRenderer&&(this.zincRenderer.animate(),void 0===this.toolTip&&(this.toolTip=new(i("76bf").ToolTip)(this.displayArea))))},o.prototype.destroy=function(){this.zincRenderer&&(this.zincRenderer.dispose(),this.zincRenderer.getThreeJSRenderer().dispose(),this.zincRenderer=void 0),i("3966").BaseModule.prototype.destroy.call(this)},t.RendererModule=o},"7c81":function(e,t){e.exports=require("core-js/modules/es.array.splice")},"7d9b":function(e,t,i){},"7f9f":function(e,t){e.exports=require("element-ui/lib/locale")},"80c4":function(e,t){e.exports=require("element-ui/lib/theme-chalk/option.css")},"850c":function(e,t){e.exports=require("core-js/modules/es.object.to-string")},"8bbf":function(e,t){e.exports=require("vue")},"8c29":function(e,t){e.exports=require("element-ui/lib/tabs")},"8c84":function(e,t){e.exports=require("core-js/modules/es.array.iterator")},"8cec":function(e,t,i){var n=i("9206").THREE;t.GraphicsHighlight=function(){var e=[],t=[];this.highlightColour=255,this.selectColour=65280,this.originalColour=0;var i=this,r=function(e,t){if(0==e.length&&0==t.length)return!1;for(var i=0;i<e.length;i++){for(var n=!1,r=0;r<t.length;r++)e[i]===t[r]&&(n=!0);if(!n)return!0}for(i=0;i<t.length;i++){for(n=!1,r=0;r<e.length;r++)t[i]===e[r]&&(n=!0);if(!n)return!0}return!1},o=function(e,t){var i=[];if(0==t.length)return e;for(var n=0;n<e.length;n++){for(var r=!1,o=0;o<t.length;o++)e[n]===t[o]&&(r=!0);r||i.push(e[n])}return i};this.setHighlighted=function(n){var s=e;i.resetHighlighted();for(var c=o(n,t),l=a(c),u=0;u<l.length;u++)l[u]&&l[u].material&&l[u].material.emissive&&l[u].material.emissive.setHex(i.highlightColour);return e=c,r(e,s)},this.setSelected=function(n){var s=t,c=o(e,n);e=c,i.resetSelected();for(var l=a(n),u=0;u<l.length;u++)l[u]&&l[u].material&&l[u].material.emissive&&l[u].material.emissive.setHex(i.selectColour);return t=n,r(t,s)};var a=function(e){let t=[];for(var i=0;i<e.length;i++)e[i].material&&t.push(e[i]);return t};this.resetHighlighted=function(){let t=a(e);for(var r=0;r<t.length;r++)t[r]&&t[r].material&&(t[r].material.emissive&&t[r].material.emissive.setHex(i.originalColour),t[r].material.depthFunc&&(t[r].material.depthFunc=n.LessEqualDepth));e=[]},this.resetSelected=function(){let e=a(t);for(var r=0;r<e.length;r++)e[r]&&e[r].material&&(e[r].material.emissive&&e[r].material.emissive.setHex(i.originalColour),e[r].material.depthFunc&&(e[r].material.depthFunc=n.LessEqualDepth));t=[]},this.getSelected=function(){return t},this.reset=function(){i.resetSelected(),i.resetHighlighted()}}},"8f11":function(e,t){e.exports=require("element-ui/lib/theme-chalk/icon.css")},"907b":function(e,t){e.exports=require("core-js/modules/es.string.iterator")},9206:function(e,t){e.exports=require("zincjs")},"920c":function(e,t,i){"use strict";i("dd89")},"93e6":function(e,t){e.exports=require("element-ui/lib/popover")},9776:function(e,t){e.exports=require("element-ui/lib/theme-chalk/slider.css")},"98e2":function(e,t,i){},9985:function(e,t){e.exports=require("element-ui/lib/theme-chalk/tab-pane.css")},"9a25":function(e,t){e.exports=require("element-ui/lib/theme-chalk/base.css")},"9bb0":function(e,t){e.exports=require("@soda/get-current-script")},a0d7:function(e,t){t.annotation=function(){this.type="anatomical",this.data=void 0,this.isAnnotation=!0}},a497:function(e,t){e.exports=require("element-ui/lib/col")},a525:function(e,t){e.exports=require("element-ui/lib/theme-chalk/popover.css")},a7bf:function(e,t){e.exports=require("element-ui/lib/slider")},ab7e:function(e,t){e.exports=require("core-js/modules/es.array.includes")},ab87:function(e,t){e.exports=require("element-ui/lib/loading")},add8:function(e,t,i){"use strict";i("e8d1")},b0e3:function(e,t){e.exports=require("element-ui/lib/theme-chalk/container.css")},b2f4:function(e,t){e.exports=require("element-ui/lib/icon")},b723:function(e,t,i){},b777:function(e,t){e.exports=require("element-ui/lib/checkbox")},bcd8:function(e,t){e.exports=require("core-js/modules/es.function.name")},bcda:function(e,t){e.exports=require("core-js/modules/web.dom-collections.for-each")},bfab:function(e,t){e.exports=require("core-js/modules/es.string.replace")},c11a:function(e,t){e.exports=require("element-ui/lib/option")},c45a:function(e,t){e.exports=require("broadcast-channel")},dd89:function(e,t,i){},e42b:function(e,t){e.exports=require("core-js/modules/es.array.from")},e8d1:function(e,t,i){},fae3:function(e,t,i){"use strict";if(i.r(t),i.d(t,"ScaffoldVuer",(function(){return we})),"undefined"!==typeof window){var n=window.document.currentScript,r=i("9bb0");n=r(),"currentScript"in document||Object.defineProperty(document,"currentScript",{get:r});var o=n&&n.src.match(/(.+\/)[^/]+\.js(\?.*)?$/);o&&(i.p=o[1])}var a=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{directives:[{name:"loading",rawName:"v-loading",value:e.loading,expression:"loading"}],ref:"scaffoldContainer",staticClass:"scaffold-container",attrs:{"element-loading-text":"Loading...","element-loading-spinner":"el-icon-loading","element-loading-background":"rgba(0, 0, 0, 0.3)"}},[i("SvgSpriteColor"),i("div",{ref:"display",staticStyle:{height:"100%",width:"100%"},attrs:{id:"organsDisplayArea",tabindex:"-1"},on:{keydown:function(t){return t.type.indexOf("key")||66===t.keyCode?e.backgroundChangeCallback(t):null}}}),i("div",{directives:[{name:"show",rawName:"v-show",value:e.displayUI&&!e.isTransitioning,expression:"displayUI && !isTransitioning"}]},[e.displayWarning?i("el-popover",{ref:"warningPopover",attrs:{content:e.warningMessage,placement:"right","append-to-body":!1,trigger:"manual","popper-class":"warning-popper right-popper non-selectable"},model:{value:e.hoverVisabilities[6].value,callback:function(t){e.$set(e.hoverVisabilities[6],"value",t)},expression:"hoverVisabilities[6].value"}}):e._e(),e.displayWarning?i("i",{directives:[{name:"popover",rawName:"v-popover:warningPopover",arg:"warningPopover"}],staticClass:"el-icon-warning warning-icon",on:{mouseover:function(t){return e.showToolitip(6)},mouseout:function(t){return e.hideToolitip(6)}}},[i("span",{staticClass:"warning-text"},[e._v("Beta")])]):e._e(),i("el-popover",{ref:"checkBoxPopover",attrs:{content:"Change region visibility",placement:"right","append-to-body":!1,trigger:"manual","popper-class":"scaffold-popper right-popper non-selectable"},model:{value:e.hoverVisabilities[5].value,callback:function(t){e.$set(e.hoverVisabilities[5],"value",t)},expression:"hoverVisabilities[5].value"}}),i("TraditionalControls",{directives:[{name:"popover",rawName:"v-popover:checkBoxPopover",arg:"checkBoxPopover"}],ref:"traditionalControl",attrs:{"help-mode":e.helpMode,module:e.$module,"show-colour-picker":e.showColourPicker},on:{"object-selected":e.objectSelected,"object-hovered":e.objectHovered,"drawer-toggled":e.drawerToggled}}),i("div",{staticClass:"opacity-box"},[i("OpacityControls",{ref:"opacityControl"})],1),e.sceneData.timeVarying?i("el-popover",{ref:"sliderPopover",attrs:{content:"Move the slider to animate the region",placement:"top","append-to-body":!1,trigger:"manual","popper-class":"scaffold-popper top-popper non-selectable"},model:{value:e.hoverVisabilities[4].value,callback:function(t){e.$set(e.hoverVisabilities[4],"value",t)},expression:"hoverVisabilities[4].value"}}):e._e(),e.sceneData.timeVarying?i("div",{directives:[{name:"popover",rawName:"v-popover:sliderPopover",arg:"sliderPopover"}],staticClass:"time-slider-container",class:[e.minimisedSlider?"minimised":"",e.sliderPosition]},[i("el-tabs",{attrs:{type:"card"}},[i("el-tab-pane",{attrs:{label:"Animate scaffold"}},[i("el-row",{staticClass:"tab-content"},[e.isPlaying?i("SvgIcon",{staticClass:"icon-button video-button",attrs:{icon:"pause"},nativeOn:{click:function(t){return e.play(!1)}}}):i("SvgIcon",{staticClass:"video-button icon-button",attrs:{icon:"play"},nativeOn:{click:function(t){return e.play(!0)}}}),i("el-slider",{staticClass:"slider",attrs:{min:0,max:e.timeMax,value:e.sceneData.currentTime/100*e.timeMax,step:.1,"tooltip-class":"time-slider-tooltip","format-tooltip":e.formatTooltip,marks:e.timeStamps},on:{input:function(t){return e.timeChange(t)}}})],1)],1),i("el-tab-pane",{attrs:{label:"Animation data"}},[i("el-row",{staticClass:"tab-content"},[i("div",{staticClass:"animation-data"},[e._v(" Original duration: "),i("div",{staticClass:"purple"},[e._v(" "+e._s(e.orginalDuration)+" ")])]),i("div",{staticClass:"animation-data"},[e._v(" Animation duration: "),i("div",{staticClass:"purple"},[e._v(" "+e._s(e.animateDuration)+" ")])]),i("div",{staticClass:"animation-data"},[e._v(" Playback speed "),i("el-select",{staticClass:"select-box",attrs:{"popper-append-to-body":!0,value:e.currentSpeed,placeholder:"Select","popper-class":"scaffold_viewer_dropdown"},on:{change:function(t){return e.speedChanged(t)}}},e._l(e.playSpeed,(function(e){return i("el-option",{key:e.value,attrs:{label:e.label,value:e.value}})})),1)],1)])],1)],1)],1):e._e(),i("div",{staticClass:"bottom-right-control"},[i("el-popover",{attrs:{content:"Zoom in",placement:"left","append-to-body":!1,trigger:"manual","popper-class":"scaffold-popper left-popper non-selectable"},model:{value:e.hoverVisabilities[0].value,callback:function(t){e.$set(e.hoverVisabilities[0],"value",t)},expression:"hoverVisabilities[0].value"}},[i("SvgIcon",{staticClass:"icon-button zoomIn",attrs:{slot:"reference",icon:"zoomIn"},nativeOn:{click:function(t){return e.zoomIn()},mouseover:function(t){return e.showToolitip(0)},mouseout:function(t){return e.hideToolitip(0)}},slot:"reference"})],1),i("el-popover",{attrs:{content:"Zoom out",placement:"top-end","append-to-body":!1,trigger:"manual","popper-class":"scaffold-popper popper-zoomout non-selectable"},model:{value:e.hoverVisabilities[1].value,callback:function(t){e.$set(e.hoverVisabilities[1],"value",t)},expression:"hoverVisabilities[1].value"}},[i("SvgIcon",{staticClass:"icon-button zoomOut",attrs:{slot:"reference",icon:"zoomOut"},nativeOn:{click:function(t){return e.zoomOut()},mouseover:function(t){return e.showToolitip(1)},mouseout:function(t){return e.hideToolitip(1)}},slot:"reference"})],1),i("el-popover",{attrs:{placement:"top","append-to-body":!1,trigger:"manual","popper-class":"scaffold-popper non-selectable"},model:{value:e.hoverVisabilities[2].value,callback:function(t){e.$set(e.hoverVisabilities[2],"value",t)},expression:"hoverVisabilities[2].value"}},[i("div",[e._v(" Fit to "),i("br"),e._v(" window ")]),i("SvgIcon",{staticClass:"icon-button fitWindow",attrs:{slot:"reference",icon:"fitWindow"},nativeOn:{click:function(t){return e.fitWindow()},mouseover:function(t){return e.showToolitip(2)},mouseout:function(t){return e.hideToolitip(2)}},slot:"reference"})],1)],1),i("el-popover",{ref:"backgroundPopover",attrs:{placement:"top-start",width:"128","append-to-body":!1,trigger:"click","popper-class":"background-popper non-selectable"}},[i("el-row",{staticClass:"backgroundText"},[e._v(" Change background ")]),i("el-row",{staticClass:"backgroundChooser"},e._l(e.availableBackground,(function(t){return i("div",{key:t,class:["backgroundChoice",t,t==e.currentBackground?"active":""],on:{click:function(i){return e.backgroundChangeCallback(t)}}})})),0)],1),i("el-popover",{attrs:{content:"Change background color",placement:"right","append-to-body":!1,trigger:"manual","popper-class":"scaffold-popper right-popper non-selectable"},model:{value:e.hoverVisabilities[3].value,callback:function(t){e.$set(e.hoverVisabilities[3],"value",t)},expression:"hoverVisabilities[3].value"}},[i("SvgIcon",{directives:[{name:"popover",rawName:"v-popover:backgroundPopover",arg:"backgroundPopover"}],staticClass:"icon-button background-colour",class:{open:e.drawerOpen,close:!e.drawerOpen},attrs:{slot:"reference",icon:"changeBckgd"},nativeOn:{mouseover:function(t){return e.showToolitip(3)},mouseout:function(t){return e.hideToolitip(3)}},slot:"reference"})],1)],1)],1)},s=[],c=(i("139f"),i("8c84"),i("319f"),i("2175"),i("850c"),i("907b"),i("bcda"),i("1ce0"),i("2a6f"),i("3170"),i("9a25"),i("8c29")),l=i.n(c),u=(i("9985"),i("31fb")),d=i.n(u),h=(i("9776"),i("a7bf")),p=i.n(h),f=(i("0fe2"),i("0de2")),m=i.n(f),v=(i("fd9c"),i("6ea3")),g=i.n(v),b=(i("a525"),i("93e6")),y=i.n(b),C=(i("80c4"),i("c11a")),w=i.n(C),x=(i("2c1b"),i("ab87")),R=i.n(x),k=(i("703d"),i("a497")),S=i.n(k),D=i("8bbf"),O=i.n(D),T=function(){var e=this,t=e.$createElement,i=e._self._c||t;return void 0!=e.material?i("div",{ref:"control",staticClass:"opacity-control"},[i("el-drawer",{staticClass:"drawer-content",attrs:{"custom-class":"my-drawer",visible:e.drawerOpen,"append-to-body":!1,"modal-append-to-body":!1,size:"300","with-header":!1,"wrapper-closable":!1,modal:!1},on:{"update:visible":function(t){e.drawerOpen=t}}},[e.drawerOpen?i("div",{staticClass:"tab-button close",on:{click:e.toggleDrawer}},[i("i",{staticClass:"el-icon-arrow-right"})]):e._e(),i("el-container",{staticClass:"opacity-container"},[i("el-header",{staticClass:"header",attrs:{height:"37px"}},[i("div",[e._v("Opacity")])]),i("el-main",{staticClass:"main"},[i("div",{staticClass:"block"},[i("span",{staticClass:"display"},[e._v(e._s(e.displayString))]),i("el-slider",{staticClass:"my-slider",attrs:{step:.01,min:0,max:1,"format-tooltip":e.formatTooltip,"show-tooltip":!1},model:{value:e.material.opacity,callback:function(t){e.$set(e.material,"opacity",t)},expression:"material.opacity"}})],1)])],1)],1),e.drawerOpen?e._e():i("div",{staticClass:"tab-button open",on:{click:e.toggleDrawer}},[i("i",{staticClass:"el-icon-arrow-left"})])],1):e._e()},j=[],A=(i("73ef"),i("1fe8")),_=i.n(A),$=(i("8f11"),i("b2f4")),N=i.n($),L=(i("51c7"),i("2de2")),M=i.n(L),P=(i("4c89"),i("373b")),G=i.n(P),B=(i("b0e3"),i("1ac9")),V=i.n(B),U=i("6bfd"),E=i.n(U),q=i("7f9f"),I=i.n(q);I.a.use(E.a),O.a.use(V.a),O.a.use(G.a),O.a.use(M.a),O.a.use(N.a),O.a.use(_.a),O.a.use(p.a);var z={name:"OpacityControls",data:function(){return{displayString:"100%",material:void 0,drawerOpen:!0}},watch:{"material.opacity":function(){this.material&&this._zincobject.setAlpha(this.material.opacity)}},mounted:function(){this._zincobject=void 0},methods:{formatTooltip:function(e){return this.displayString=Math.floor(100*e+.5)+"%",this.displayString},toggleDrawer:function(){this.drawerOpen=!this.drawerOpen},setObject:function(e){this.material=e?e.morph.material:void 0,this._zincobject=e}}},H=z;i("21a1");function F(e,t,i,n,r,o,a,s){var c,l="function"===typeof e?e.options:e;if(t&&(l.render=t,l.staticRenderFns=i,l._compiled=!0),n&&(l.functional=!0),o&&(l._scopeId="data-v-"+o),a?(c=function(e){e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,e||"undefined"===typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),r&&r.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(a)},l._ssrRegister=c):r&&(c=s?function(){r.call(this,(l.functional?this.parent:this).$root.$options.shadowRoot)}:r),c)if(l.functional){l._injectStyles=c;var u=l.render;l.render=function(e,t){return c.call(t),u(e,t)}}else{var d=l.beforeCreate;l.beforeCreate=d?[].concat(d,c):[c]}return{exports:e,options:l}}var W=F(H,T,j,!1,null,"4c00a30f",null),Z=W.exports,Y=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"traditional-location",class:{open:e.drawerOpen,close:!e.drawerOpen}},[i("div",{staticClass:"traditional-container"},[i("el-row",[i("el-col",{attrs:{span:12}},[i("div",{staticClass:"regions-display-text"},[e._v(" Regions ")])]),i("el-col",{attrs:{span:12}},[i("el-checkbox",{staticClass:"all-checkbox",attrs:{indeterminate:e.isIndeterminate},on:{change:e.handleCheckAllChange},model:{value:e.checkAll,callback:function(t){e.checkAll=t},expression:"checkAll"}},[e._v(" Display all ")])],1)],1),i("el-checkbox-group",{staticClass:"checkbox-group",attrs:{size:"small"},on:{change:e.handleCheckedItemsChange},model:{value:e.checkedItems,callback:function(t){e.checkedItems=t},expression:"checkedItems"}},[i("div",{staticClass:"checkbox-group-inner"},e._l(e.sortedPrimitiveGroups,(function(t){return i("el-row",{key:t,attrs:{label:t}},[i("div",{staticClass:"checkbox-container"},[i("el-checkbox",{staticClass:"my-checkbox",class:{activeItem:e.activeRegion===t,hoverItem:e.hoverRegion===t},attrs:{label:t,checked:!0},on:{change:function(i){return e.visibilityToggle(t,i)}},nativeOn:{click:function(i){return e.itemClicked(t,i)},mouseover:function(i){return e.checkboxHover(t)}}},[i("el-color-picker",{class:{"show-picker":e.showColourPicker},attrs:{value:e.getColour(t),size:"small","popper-class":e.myPopperClass},on:{change:function(i){return e.setColour(t,i)}}}),e._v(" "+e._s(t)+" ")],1)],1)])})),1)])],1),i("div",{staticClass:"drawer-button",class:{open:e.drawerOpen,close:!e.drawerOpen},on:{click:e.toggleDrawer}},[i("i",{staticClass:"el-icon-arrow-left"})])])},J=[];i("18d2"),i("ab7e"),i("6bb1"),i("7c81"),i("51f7"),i("fd48"),i("bfab");function X(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,n=new Array(t);i<t;i++)n[i]=e[i];return n}function K(e){if(Array.isArray(e))return X(e)}i("6049"),i("51e9"),i("02ac"),i("e42b");function Q(e){if("undefined"!==typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}i("6579"),i("bcd8"),i("5fef");function ee(e,t){if(e){if("string"===typeof e)return X(e,t);var i=Object.prototype.toString.call(e).slice(8,-1);return"Object"===i&&e.constructor&&(i=e.constructor.name),"Map"===i||"Set"===i?Array.from(i):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?X(e,t):void 0}}function te(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function ie(e){return K(e)||Q(e)||ee(e)||te()}i("3666");var ne=i("4914"),re=i.n(ne),oe=(i("0cf4"),i("0607")),ae=i.n(oe),se=(i("55ee"),i("b777")),ce=i.n(se),le=i("6814"),ue=i("4e2d");I.a.use(E.a),O.a.use(ce.a),O.a.use(ae.a),O.a.use(re.a),O.a.use(g.a);var de={name:"TraditionalControls",props:{module:{type:Object,default:void 0},showColourPicker:Boolean},data:function(){return{checkAll:!0,isIndeterminate:!1,checkedItems:[],sortedPrimitiveGroups:[],activeRegion:"",hoverRegion:"",myPopperClass:"hide-scaffold-colour-popup",drawerOpen:!0}},watch:{showColourPicker:{immediate:!0,handler:function(){this.showColourPicker?this.myPopperClass="showPicker":this.myPopperClass="hide-scaffold-colour-popup"}}},created:function(){var e=this.module.sceneData.geometries.concat(this.module.sceneData.lines);e=e.concat(this.module.sceneData.glyphsets),e=ue(e.concat(this.module.sceneData.pointset)),this.sortedPrimitiveGroups=le(e),this.module.addOrganPartAddedCallback(this.organsAdded),this.module.graphicsHighlight.selectColour=4473924},destroyed:function(){this.sortedPrimitiveGroups=void 0},methods:{organsAdded:function(e){if(e&&""!=e){var t=ue(this.sortedPrimitiveGroups.concat([e]));t=le(t);var i=t.indexOf(void 0);i>-1&&t.splice(i,1),this.sortedPrimitiveGroups=t}},changeActiveByName:function(e,t){var i=this.getFirstZincObjectWithGroupName(e);i&&i.getVisibility()?(this.activeRegion=e,this.$emit("object-selected",i,t)):this.removeActive(t),this.removeHover(t)},changeHoverByName:function(e,t){var i=this.getFirstZincObjectWithGroupName(e);i?(this.hoverRegion=e,this.$emit("object-hovered",i,t)):this.removeHover(t)},removeActive:function(e){this.activeRegion="",this.$emit("object-selected",void 0,e)},removeHover:function(e){this.hoverRegion="",this.$emit("object-hovered",void 0,e)},clear:function(){this.sortedPrimitiveGroups=[],this.checkedItems=[],this.checkAll=!0,this.isIndeterminate=!1,this.activeRegion="",this.hoverRegion="",this.$emit("object-selected",void 0)},getFirstZincObjectWithGroupName:function(e){if(this.module&&this.module.scene){var t=this.module.scene.findGeometriesWithGroupName(e);if(t.length>0)return t[0];if(t=this.module.scene.findGlyphsetsWithGroupName(e),t.length>0)return t[0];if(t=this.module.scene.findLinesWithGroupName(e),t.length>0)return t[0];if(t=this.module.scene.findPointsetsWithGroupName(e),t.length>0)return t[0]}},getColour:function(e){var t=this.getFirstZincObjectWithGroupName(e);if(t){var i=t.getColourHex();if(i)return"#"+i}return"#FFFFFF"},setColour:function(e,t){var i=this.getFirstZincObjectWithGroupName(e);if(i){var n=t.replace("#","0x");i.setColourHex(n)}},checkboxHover:function(e){this.changeHoverByName(e,!0)},itemClicked:function(e,t){t.target.classList.contains("el-checkbox__inner")||t.target.classList.contains("el-checkbox__original")||(this.changeActiveByName(e,!0),t.preventDefault())},handleCheckedItemsChange:function(){var e=!!this.checkedItems.includes(void 0),t=this.checkedItems.length;e&&t--,this.checkAll=t===this.sortedPrimitiveGroups.length,this.isIndeterminate=t>0&&t<this.sortedPrimitiveGroups.length},handleCheckAllChange:function(e){this.checkedItems=e?ie(this.sortedPrimitiveGroups):[],this.isIndeterminate=!1;for(var t=0;t<this.sortedPrimitiveGroups.length;t++)this.visibilityToggle(this.sortedPrimitiveGroups[t],this.checkAll)},viewAll:function(){this.module.viewAll()},visibilityToggle:function(e,t){this.module.changeOrganPartsVisibility(e,t),0==t&&(this.activeRegion===e&&this.removeActive(!0),this.hoverRegion===e&&this.removeHover(!0))},toggleDrawer:function(){this.drawerOpen=!this.drawerOpen,this.$emit("drawer-toggled",this.drawerOpen)},getState:function(){if(this.checkAll)return{checkAll:!0};var e=ie(this.checkedItems),t=e.indexOf(void 0);return t>-1&&e.splice(t,1),{checkedItems:e}},setState:function(e){if(e)if(e.checkAll){this.checkedItems=ie(this.sortedPrimitiveGroups);for(var t=0;t<this.sortedPrimitiveGroups.length;t++)this.module.changeOrganPartsVisibility(this.sortedPrimitiveGroups[t],!0)}else if(e.checkedItems){this.checkedItems=ie(e.checkedItems);for(var i=0;i<this.sortedPrimitiveGroups.length;i++){var n=this.checkedItems.includes(this.sortedPrimitiveGroups[i]);this.module.changeOrganPartsVisibility(this.sortedPrimitiveGroups[i],n)}}this.handleCheckedItemsChange()}}},he=de,pe=(i("920c"),i("add8"),F(he,Y,J,!1,null,"b0ace276",null)),fe=pe.exports,me=i("429c");I.a.use(E.a),O.a.use(S.a),O.a.use(R.a.directive),O.a.use(w.a),O.a.use(y.a),O.a.use(g.a),O.a.use(m.a),O.a.use(p.a),O.a.use(d.a),O.a.use(l.a);var ve=i("67b6").OrgansViewer,ge=i("549c").EventNotifier,be={name:"ScaffoldVuer",components:{OpacityControls:Z,SvgIcon:me["SvgIcon"],SvgSpriteColor:me["SvgSpriteColor"],TraditionalControls:fe},props:{url:{type:String,default:""},showColourPicker:{type:Boolean,default:!1},displayUI:{type:Boolean,default:!0},displayAtStartUp:{type:Boolean,default:!0},helpMode:{type:Boolean,default:!1},displayWarning:{type:Boolean,default:!0},warningMessage:{type:String,default:"Beta feature - under active development"},displayMarkers:{type:Boolean,default:!0},displayMinimap:{type:Boolean,default:!1},minimapSettings:{type:Object,default:function(){return{x_offset:16,y_offset:16,width:128,height:128,align:"top-right"}}},state:{type:Object,default:void 0},region:{type:String,default:""},viewURL:{type:String,default:""},render:{type:Boolean,default:!0}},data:function(){return{sceneData:this.$module.sceneData,isPlaying:!1,isTransitioning:!1,tooltipAppendToBody:!1,hoverVisabilities:[{value:!1},{value:!1},{value:!1},{value:!1},{value:!1},{value:!1},{value:!1}],inHelp:!1,loading:!1,duration:3e3,drawerOpen:!0,currentBackground:"white",availableBackground:["white","lightskyblue","black"],minimisedSlider:!1,sliderPosition:"",timeMax:100,orginalDuration:"",animateDuration:"6secs",playSpeed:[{value:.1,label:"0.1x"},{value:.5,label:"0.5x"},{value:1,label:"1x"},{value:2,label:"2x"},{value:5,label:"5x"},{value:10,label:"10x"}],currentSpeed:1,timeStamps:{}}},watch:{url:{handler:function(e){void 0!==this.state&&void 0!==this.state.url||this.setURL(e)},immediate:!0},region:{handler:function(e){this.state||this.viewURL||this.setFocusedRegion(e)},immediate:!0},state:{handler:function(e){this.setState(e)},immediate:!0,deep:!0},viewURL:{handler:function(e){this.updateViewURL(e)},immediate:!0},helpMode:function(e){this.setHelpMode(e)},displayMarkers:function(e){this.$module.scene.displayMarkers=e},displayMinimap:function(e){this.$module.scene.displayMinimap=e},"sceneData.currentTime":function(){this.$emit("timeChanged",this.sceneData.currentTime)},duration:function(){this.$module.scene.setDuration(this.duration)},minimapSettings:{deep:!0,handler:"updateMinimapScissor"},render:function(e){this.toggleRendering(e)}},beforeCreate:function(){this.$module=new ve,this.isReady=!1,this.selectedObject=void 0,this.hoveredObject=void 0,this.currentBackground="white",this._currentURL=void 0,this.availableBackground=["white","black","lightskyblue"]},mounted:function(){var e=new ge;e.subscribe(this,this.eventNotifierCallback),this.$module.addNotifier(e),this.$module.addOrganPartAddedCallback(this.organsAdded),this.$module.initialiseRenderer(this.$refs.display),this.toggleRendering(this.render),this.$module.toolTip=void 0,this.ro=new ResizeObserver(this.adjustLayout).observe(this.$refs.scaffoldContainer),this.defaultRate=this.$module.getPlayRate()},beforeDestroy:function(){this.ro&&this.ro.disconnect(),this.$module.destroy(),this.$module=void 0},methods:{organsAdded:function(){this.loading=!1},backgroundChangeCallback:function(e){this.currentBackground=e,this.$module.zincRenderer.getThreeJSRenderer().setClearColor(this.currentBackground,1)},captureScreenshotCallback:function(){this.$module.zincRenderer.removePostRenderCallbackFunction(this.captureID);var e=this.$module.zincRenderer.getThreeJSRenderer().domElement.toDataURL("image/png"),t=document.createElement("a");document.body.append(t),this.captureFilename?t.download=this.captureFilename:t.download="screenshot.png",t.href=e,t.click(),t.remove()},captureScreenshot:function(e){this.captureFilename=e,this.captureID=this.$module.zincRenderer.addPostRenderCallbackFunction(this.captureScreenshotCallback)},formatTooltip:function(e){if(this.timeMax>=1e3&&e){var t=(e%6e4/1e3).toFixed(2)+"s",i=e>6e4?(e/6e4).toFixed(0)+"m ":"";return i+t}return e?e.toFixed(2)+" ms":"0 ms"},fitWindow:function(){this.$module.scene&&this.$module.scene.viewAll()},zoomIn:function(){this.$module.scene&&this.$module.scene.changeZoomByScrollRateUnit(-1)},zoomOut:function(){this.$module.scene&&this.$module.scene.changeZoomByScrollRateUnit(1)},speedChanged:function(e){this.currentSpeed=e,this.$module.setPlayRate(this.defaultRate*this.currentSpeed)},stopFreeSpin:function(){var e=this.$module.scene.getZincCameraControls();e.stopAutoTumble(),this.isTransitioning=!1},viewRegion:function(e){if(e&&""!=e&&this.$module.scene){var t=this.$module.scene.findObjectsWithGroupName(e),i=this.$module.scene.getBoundingBoxOfZincObjects(t);i&&this.$module.scene.viewAllWithBoundingBox(i)}},setFocusedRegion:function(e){e&&(this.isReady?this.viewRegion(e):this.$module.setFinishDownloadCallback(this.setURLFinishCallback({region:e})))},updateViewURL:function(e){if(e)if(this.isReady){var t=new URL(e,this.url);this.$module.scene.loadViewURL(t)}else this.$module.setFinishDownloadCallback(this.setURLFinishCallback({viewURL:e}))},freeSpin:function(){if(this.$module.scene){var e=this.$module.scene.getZincCameraControls();this.isTransitioning=!0,e.enableAutoTumble(),e.autoTumble([1,0],Math.PI,!0),setTimeout(this.stopFreeSpin,4e3)}},eventNotifierCallback:function(e){if(1==e.eventType){if(this.$refs.traditionalControl)if(e.identifiers[0]){var t=e.identifiers[0].data.id?e.identifiers[0].data.id:e.identifiers[0].data.group;this.$refs.traditionalControl.changeActiveByName(t,!0)}else this.$refs.traditionalControl.removeActive(!0);this.$emit("scaffold-selected",e.identifiers)}else if(2==e.eventType){if(this.$refs.traditionalControl)if(e.identifiers[0]){var i=e.identifiers[0].data.id?e.identifiers[0].data.id:e.identifiers[0].data.group;this.$refs.traditionalControl.changeHoverByName(i,!0)}else this.$refs.traditionalControl.removeHover(!0);this.$emit("scaffold-highlighted",e.identifiers)}},getCoordinatesOfSelected:function(){if(this.selectedObject)return this.$module.scene.getObjectsScreenXY([this.selectedObject])},getDynamicSelectedCoordinates:function(){return this.$module.selectedScreenCoordinates},timeChange:function(e){var t=e/this.timeMax*100;t!=this.sceneData.currentTime&&this.$module.updateTime(t)},objectSelected:function(e,t){e!==this.selectedObject&&(this.selectedObject=e,this.$refs.opacityControl.setObject(this.selectedObject),e?this.$module.setSelectedByZincObject(e,t):this.$module.setSelectedByObjects([],t))},objectHovered:function(e,t){e!==this.hoveredObject&&(this.hoveredObject=e,e?this.$module.setHighlightedByZincObject(e,t):this.$module.setHighlightedByObjects([],t))},changeActiveByName:function(e,t){void 0===e?this.$refs.traditionalControl.removeActive(t):this.$refs.traditionalControl.changeActiveByName(e,t)},changeHighlightedByName:function(e,t){void 0===e?this.$refs.traditionalControl.removeHover(t):this.$refs.traditionalControl.changeHoverByName(e,t)},play:function(e){this.$module.playAnimation(e),this.isPlaying=e},setHelpMode:function(e){e?(this.inHelp=!0,this.hoverVisabilities.forEach((function(e){e.value=!0}))):(this.inHelp=!1,this.hoverVisabilities.forEach((function(e){e.value=!1})))},showToolitip:function(e){var t=this;this.inHelp||(this.tooltipWait=setTimeout((function(){t.hoverVisabilities[e].value=!0}),500))},hideToolitip:function(e){this.inHelp||(this.hoverVisabilities[e].value=!1,clearTimeout(this.tooltipWait))},updateMinimapScissor:function(){var e=this;Object.keys(this.minimapSettings).forEach((function(t){e.$module.scene.minimapScissor[t]=e.minimapSettings[t]})),this.$module.scene.minimapScissor.updateRequired=!0},updateSettingsfromScene:function(){this.currentSpeed=1,this.$module.setPlayRate(this.defaultRate),this.orginalDuration=this.$module.scene.getMetadataTag("OriginalDuration"),this.animateDuration=this.$module.scene.getMetadataTag("Duration");var e=this.$module.scene.getMetadataTag("TimeStamps");for(var t in this.timeStamps={},e)this.timeStamps[e[t]]=t;this.timeMax=this.$module.scene.getDuration()},setURLFinishCallback:function(e){var t=this;return function(){if(e){if(e.viewport)t.$module.scene.getZincCameraControls().setCurrentCameraSettings(e.viewport);else if(e.viewURL&&""!==e.viewURL){var i=new URL(e.viewURL,t.url);t.$module.scene.loadViewURL(i)}else e.region&&""!==e.region&&t.viewRegion(e.region);e.visibility&&t.$nextTick((function(){t.$refs.traditionalControl.setState(e.visibility)}))}t.updateSettingsfromScene(),t.$module.updateTime(.01),t.$module.updateTime(0),t.$module.unsetFinishDownloadCallback(),t.isReady=!0}},getState:function(){var e={url:this._currentURL,viewport:void 0,visibility:void 0};if(this.$refs.traditionalControl&&(e.visibility=this.$refs.traditionalControl.getState()),this.$module.scene){var t=this.$module.scene.getZincCameraControls();e.viewport=t.getCurrentViewport()}return e},setState:function(e){e&&(e.url&&e.url!==this._currentURL?this.setURLAndState(e.url,{viewport:e.viewport,visibility:e.visibility}):(e.viewport||e.visibility)&&(this.isReady&&this.$module.scene?(e.viewport&&this.$module.scene.getZincCameraControls().setCurrentCameraSettings(e.viewport),e.visibility&&this.$refs.traditionalControl.setState(e.visibility)):this.$module.setFinishDownloadCallback(this.setURLFinishCallback({viewport:e.viewport,visibility:e.visibility}))))},exportGLTF:function(e){return this.$module.scene.exportGLTF(e)},setURLAndState:function(e,t){if(e!=this._currentURL){var i=t&&t.viewport?t.viewport:void 0,n=t&&t.visibility?t.visibility:void 0;this._currentURL=e,this.$refs.traditionalControl&&this.$refs.traditionalControl.clear(),this.loading=!0,this.isReady=!1,this.$module.setFinishDownloadCallback(this.setURLFinishCallback({viewport:i,region:this.region,viewURL:this.viewURL,visibility:n})),this.$module.loadOrgansFromURL(e,void 0,void 0,"scene",void 0),this.$module.scene.displayMarkers=this.displayMarkers,this.$module.scene.displayMinimap=this.displayMinimap,this.updateMinimapScissor()}},setURL:function(e){this.setURLAndState(e,void 0)},drawerToggled:function(e){this.drawerOpen=e,this.adjustLayout()},adjustLayout:function(){var e=this.$refs.scaffoldContainer.clientWidth;this.minimisedSlider=e<812,this.minimisedSlider?this.sliderPosition=this.drawerOpen?"right":"left":this.sliderPosition=""},toggleRendering:function(e){this.$module.zincRenderer&&(e?this.$module.zincRenderer.animate():this.$module.zincRenderer.stopAnimate())},forceResize:function(){this.$module.zincRenderer&&this.$module.zincRenderer.onWindowResize()}}},ye=be,Ce=(i("4ed7"),i("642d"),F(ye,a,s,!1,null,"cc8106d6",null)),we=Ce.exports},fd48:function(e,t){e.exports=require("core-js/modules/es.string.includes")},fd9c:function(e,t){e.exports=require("element-ui/lib/theme-chalk/row.css")}})}));
|
|
2
2
|
//# sourceMappingURL=scaffoldvuer.umd.min.js.map
|