@gcode-viewer/plugins 0.3.0
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/README.md +26 -0
- package/dist/index.esm.js +288 -0
- package/dist/types/axis-gizmo/AxisGizmoPlugin.d.ts +25 -0
- package/dist/types/axis-gizmo/CoordinateAxes.d.ts +1 -0
- package/dist/types/axis-gizmo/index.d.ts +2 -0
- package/dist/types/bottom-bar/BottomBarPlugin.d.ts +36 -0
- package/dist/types/bottom-bar/index.d.ts +2 -0
- package/dist/types/context-menu/Constants.d.ts +34 -0
- package/dist/types/context-menu/ContextMenu.config.d.ts +2 -0
- package/dist/types/context-menu/ContextMenuPlugin.d.ts +23 -0
- package/dist/types/context-menu/Locale.d.ts +51 -0
- package/dist/types/context-menu/index.d.ts +4 -0
- package/dist/types/dat-gui/Viewer3dDatGui.d.ts +69 -0
- package/dist/types/dat-gui/index.d.ts +1 -0
- package/dist/types/explode/ExplodePlugin.d.ts +46 -0
- package/dist/types/explode/ObjectExploder.d.ts +48 -0
- package/dist/types/explode/index.d.ts +1 -0
- package/dist/types/export/ExportPlugin.d.ts +57 -0
- package/dist/types/export/Locale.d.ts +41 -0
- package/dist/types/export/gltf/GltfExporter.d.ts +32 -0
- package/dist/types/export/gltf/index.d.ts +1 -0
- package/dist/types/export/index.d.ts +2 -0
- package/dist/types/export/obj/ObjZipExporter.d.ts +14 -0
- package/dist/types/export/obj/index.d.ts +3 -0
- package/dist/types/export/obj/mtl.d.ts +9 -0
- package/dist/types/export/obj/textures.d.ts +15 -0
- package/dist/types/gcode-layer-bar/GCodeLayerBarPlugin.d.ts +66 -0
- package/dist/types/gcode-layer-bar/Locale.d.ts +13 -0
- package/dist/types/gcode-layer-bar/index.d.ts +2 -0
- package/dist/types/gcode-legend/GCodeLegendPlugin.d.ts +58 -0
- package/dist/types/gcode-legend/Locale.d.ts +83 -0
- package/dist/types/gcode-legend/NephogramLegend.d.ts +8 -0
- package/dist/types/gcode-legend/index.d.ts +2 -0
- package/dist/types/gcode-steps-bar/GCodeStepsBarPlugin.d.ts +46 -0
- package/dist/types/gcode-steps-bar/Locale.d.ts +11 -0
- package/dist/types/gcode-steps-bar/index.d.ts +2 -0
- package/dist/types/gcode-text-panel/GCodeTextPanelPlugin.d.ts +54 -0
- package/dist/types/gcode-text-panel/Locale.d.ts +11 -0
- package/dist/types/gcode-text-panel/index.d.ts +2 -0
- package/dist/types/ground-grid/GroundGridPlugin.d.ts +38 -0
- package/dist/types/ground-grid/index.d.ts +1 -0
- package/dist/types/ground-shaow/GroundShadowPlugin.d.ts +58 -0
- package/dist/types/ground-shaow/index.d.ts +1 -0
- package/dist/types/hotpoint/HotpointPlugin.d.ts +92 -0
- package/dist/types/hotpoint/index.d.ts +1 -0
- package/dist/types/index.d.ts +29 -0
- package/dist/types/local-model-uploader/IUploader.d.ts +55 -0
- package/dist/types/local-model-uploader/LocalModelUploader.d.ts +19 -0
- package/dist/types/local-model-uploader/index.d.ts +2 -0
- package/dist/types/measurements/AngleMeasureDrawable.d.ts +12 -0
- package/dist/types/measurements/AngleMeasurement.d.ts +13 -0
- package/dist/types/measurements/AreaMeasureDrawable.d.ts +14 -0
- package/dist/types/measurements/AreaMeasurement.d.ts +24 -0
- package/dist/types/measurements/BaseMeasureDrawable.d.ts +28 -0
- package/dist/types/measurements/BaseMeasurement.d.ts +123 -0
- package/dist/types/measurements/CoordinateMeasureDrawable.d.ts +10 -0
- package/dist/types/measurements/CoordinateMeasurement.d.ts +12 -0
- package/dist/types/measurements/DistanceMeasureDrawable.d.ts +13 -0
- package/dist/types/measurements/DistanceMeasurement.d.ts +21 -0
- package/dist/types/measurements/Locale.d.ts +13 -0
- package/dist/types/measurements/MeasurementPlugin.d.ts +102 -0
- package/dist/types/measurements/index.d.ts +3 -0
- package/dist/types/measurements/undo/AddMeasurementCommand.d.ts +10 -0
- package/dist/types/measurements/undo/RemoveMeasurementCommand.d.ts +10 -0
- package/dist/types/plate/PlatePlugin.d.ts +85 -0
- package/dist/types/plate/index.d.ts +1 -0
- package/dist/types/property/AnimationPanel.d.ts +3 -0
- package/dist/types/property/CameraEditor.d.ts +3 -0
- package/dist/types/property/EnvironmentPanel.d.ts +3 -0
- package/dist/types/property/LightEditor.d.ts +3 -0
- package/dist/types/property/Locale.d.ts +83 -0
- package/dist/types/property/MaterialEditor.d.ts +9 -0
- package/dist/types/property/PropertyPanelUi.d.ts +34 -0
- package/dist/types/property/PropertyPlugin.d.ts +95 -0
- package/dist/types/property/Utils.d.ts +19 -0
- package/dist/types/property/Vec3Field.d.ts +25 -0
- package/dist/types/property/index.d.ts +2 -0
- package/dist/types/rhino-3dm-loader/Rhino3dmLoaderPlugin.d.ts +17 -0
- package/dist/types/rhino-3dm-loader/Rhino3dmModelLoader.d.ts +25 -0
- package/dist/types/rhino-3dm-loader/index.d.ts +1 -0
- package/dist/types/scene-edit/SceneEditActions.d.ts +24 -0
- package/dist/types/scene-edit/SceneEditPlugin.d.ts +26 -0
- package/dist/types/scene-edit/SceneEditRecording.d.ts +11 -0
- package/dist/types/scene-edit/SceneMeshSnapshot.d.ts +23 -0
- package/dist/types/scene-edit/SceneMeshSnapshotUtils.d.ts +11 -0
- package/dist/types/scene-edit/SceneNodeSnapshot.d.ts +7 -0
- package/dist/types/scene-edit/SceneNodeSnapshotUtils.d.ts +11 -0
- package/dist/types/scene-edit/commands/GeometryEditCommand.d.ts +10 -0
- package/dist/types/scene-edit/commands/InsertSceneNodeCommand.d.ts +10 -0
- package/dist/types/scene-edit/commands/MaterialEditCommand.d.ts +10 -0
- package/dist/types/scene-edit/commands/MoveSceneNodeCommand.d.ts +10 -0
- package/dist/types/scene-edit/commands/RemoveSceneObjectCommand.d.ts +9 -0
- package/dist/types/scene-edit/commands/TransformSceneObjectCommand.d.ts +17 -0
- package/dist/types/scene-edit/index.d.ts +13 -0
- package/dist/types/screenshot/ScreenshotPlugin.d.ts +134 -0
- package/dist/types/screenshot/index.d.ts +1 -0
- package/dist/types/sections/AxisPlaneSection.d.ts +65 -0
- package/dist/types/sections/AxisSectionPopPanel.d.ts +18 -0
- package/dist/types/sections/BaseSection.d.ts +64 -0
- package/dist/types/sections/Locale.d.ts +21 -0
- package/dist/types/sections/ObjectsBoxSection.d.ts +29 -0
- package/dist/types/sections/PickPlaneSection.d.ts +48 -0
- package/dist/types/sections/PickSectionPopPanel.d.ts +18 -0
- package/dist/types/sections/Section.constants.d.ts +13 -0
- package/dist/types/sections/SectionGizmo.d.ts +22 -0
- package/dist/types/sections/SectionPlaneMesh.d.ts +23 -0
- package/dist/types/sections/SectionPlugin.d.ts +147 -0
- package/dist/types/sections/index.d.ts +6 -0
- package/dist/types/settings-3d/Locale.d.ts +61 -0
- package/dist/types/settings-3d/Settings3dPlugin.d.ts +46 -0
- package/dist/types/settings-3d/index.d.ts +2 -0
- package/dist/types/skybox/GradientColorSkybox.d.ts +9 -0
- package/dist/types/skybox/SkyboxPlugin.d.ts +48 -0
- package/dist/types/skybox/index.d.ts +1 -0
- package/dist/types/stats/StatsPlugin.d.ts +18 -0
- package/dist/types/stats/index.d.ts +2 -0
- package/dist/types/step-loader/OcctImportScriptLoader.d.ts +22 -0
- package/dist/types/step-loader/StepLoaderPlugin.d.ts +22 -0
- package/dist/types/step-loader/StepModelLoader.d.ts +39 -0
- package/dist/types/step-loader/index.d.ts +3 -0
- package/dist/types/step-loader/occtMeshBuilder.d.ts +35 -0
- package/dist/types/toolbars/Locale.d.ts +57 -0
- package/dist/types/toolbars/Toolbar.config.d.ts +5 -0
- package/dist/types/toolbars/Toolbar.constants.d.ts +71 -0
- package/dist/types/toolbars/Toolbar.d.ts +112 -0
- package/dist/types/toolbars/Viewer3dToolbarPlugin.d.ts +37 -0
- package/dist/types/toolbars/index.d.ts +5 -0
- package/dist/types/transform/Locale.d.ts +21 -0
- package/dist/types/transform/TransformPlugin.d.ts +38 -0
- package/dist/types/transform/index.d.ts +1 -0
- package/dist/types/tree-view/Locale.d.ts +29 -0
- package/dist/types/tree-view/TreeNodeTypeIcons.d.ts +15 -0
- package/dist/types/tree-view/TreeViewDragDrop.d.ts +17 -0
- package/dist/types/tree-view/TreeViewPlugin.d.ts +66 -0
- package/dist/types/tree-view/index.d.ts +2 -0
- package/dist/types/view-cube/Locale.d.ts +21 -0
- package/dist/types/view-cube/ViewCube.d.ts +86 -0
- package/dist/types/view-cube/ViewCubePlugin.d.ts +20 -0
- package/dist/types/view-cube/index.d.ts +2 -0
- package/package.json +73 -0
|
@@ -0,0 +1,288 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @gcode-viewer/plugins v0.3.0 build Fri Aug 28 2026
|
|
3
|
+
* https://dwg.thingraph.site/
|
|
4
|
+
* Copyright 2026 Thingraph
|
|
5
|
+
* @license UNLICENSED
|
|
6
|
+
*/
|
|
7
|
+
import { THREE, THREEAddons, Plugin, ViewerEvent, IconfontClass2, ViewerName, CameraProjection, forEach, setIcon, CommonUtils, VERSION, IconfontClass, registerViewerI18nNamespace, i18n, Viewer3d, DefaultOpacity, Event, log, DeviceUtils, MouseButton, Drawable, ColorUtils, getUnitStr, CanvasRender, showPrecisionValue, MathUtils, PolygonUtils, OSnapType, Command, DrawableList, OSnapHelper, MobileTouchHelperDrawable, map as map$1, LayerForSelectableObjects, CoordinateUtils, PickMarkupHelper, BoxSelectHelper, ViewDirection, GeometryUtils, GCodeLineType, GCodeColorMode, MatrixAutoUpdate, ObjectUtils, LayerForSnapableObjects, CSS2DObjectUtils, isGeometryDrawable, MaterialUtils, MeshEditUtils, UVUtils, OriginUtils, BaseModelLoader, isObjectDescendantOf, get as get$1, forIn, assign, keys, concat, take, takeRight, merge, TransformMode, DefaultGizmoCoordinateSpace, CoordinateSpace, TextTexture, InputManager, PickManager, WorldUp } from '@gcode-viewer/core';
|
|
8
|
+
import { Tooltip, BasePanel, DockPanel, PopPanel } from '@gcode-viewer/ui';
|
|
9
|
+
|
|
10
|
+
function styleInject(_0x125c85,_0x5eca92){if(_0x5eca92===void 0x0)_0x5eca92={};var _0x37d122=_0x5eca92['insertAt'];if(!_0x125c85||typeof document==='undefined')return;var _0x11520c=document['head']||document['getElementsByTagName']('head')[0x0],_0x9ff165=document['createElement']('style');_0x9ff165['type']='text/css',_0x37d122==='top'?_0x11520c['firstChild']?_0x11520c['insertBefore'](_0x9ff165,_0x11520c['firstChild']):_0x11520c['appendChild'](_0x9ff165):_0x11520c['appendChild'](_0x9ff165),_0x9ff165['styleSheet']?_0x9ff165['styleSheet']['cssText']=_0x125c85:_0x9ff165['appendChild'](document['createTextNode'](_0x125c85));}
|
|
11
|
+
|
|
12
|
+
var css_248z$f = "#axisGizmo{background:hsla(0,0%,100%,0);bottom:1px;display:block;height:100px;left:10px;pointer-events:auto;position:absolute;width:100px}";
|
|
13
|
+
styleInject(css_248z$f);
|
|
14
|
+
|
|
15
|
+
class CoordinateAxes extends THREE['Object3D']{constructor(_0x2c597e=!![],_0x7050af=![]){super(),this['name']='COORDINATE_AXES',this['AXIS_LENGTH']=0x1,this['AXIS_COLOR_X']=0xff0000,this['AXIS_COLOR_Y']=0xff00,this['AXIS_COLOR_Z']=0xff;const _0x115e1c=new THREE['Vector3'](0x0,0x0,0x0),_0x37ae09=new THREE['Vector3'](0x1,0x0,0x0),_0x200100=new THREE['Vector3'](0x0,0x1,0x0),_0x2aed71=0x0,_0x43c573=0x0,_0x171d20=new THREE['ArrowHelper'](_0x37ae09,_0x115e1c,this['AXIS_LENGTH'],this['AXIS_COLOR_X'],_0x2aed71,_0x43c573),_0x390f77=new THREE['ArrowHelper'](_0x200100,_0x115e1c,this['AXIS_LENGTH'],this['AXIS_COLOR_Y'],_0x2aed71,_0x43c573);this['add'](_0x171d20,_0x390f77);if(!_0x7050af){const _0xb7afb3=new THREE['Vector3'](0x0,0x0,0x1),_0x21131f=new THREE['ArrowHelper'](_0xb7afb3,_0x115e1c,this['AXIS_LENGTH'],this['AXIS_COLOR_Z'],_0x2aed71,_0x43c573);this['add'](_0x21131f);}_0x2c597e&&this['addTexts'](_0x7050af);}['addTexts'](_0x54c647=![]){const _0x24d553=this['createText']('X','#ff0000'),_0x2e2568=this['createText']('Y','#00ff00');_0x24d553['position']['set'](this['AXIS_LENGTH']+0.1,0x0,0x0),_0x2e2568['position']['set'](0.1,this['AXIS_LENGTH'],0.1),this['add'](_0x24d553,_0x2e2568);if(!_0x54c647){const _0x4cf5a8=this['createText']('Z','#0000ff');_0x4cf5a8['position']['set'](0x0,0x0,this['AXIS_LENGTH']+0.1),this['add'](_0x4cf5a8);}}['createText'](_0x1adb26,_0x55f519,_0x152523=0xe){const _0x26a3d1=document['createElement']('div');_0x26a3d1['innerHTML']=_0x1adb26;const _0x5bc919=_0x26a3d1['style'];return _0x5bc919['color']=_0x55f519,_0x5bc919['width']=_0x152523+'px',_0x5bc919['height']=_0x152523+'px',_0x5bc919['textAlign']='center',_0x5bc919['top']='0px',_0x5bc919['left']='0px',new THREEAddons['CSS2DObject'](_0x26a3d1);}}
|
|
16
|
+
|
|
17
|
+
class AxisGizmoPlugin extends Plugin{constructor(_0x381127,_0x4e4487){const _0x379934=(_0x4e4487===null||_0x4e4487===void 0x0?void 0x0:_0x4e4487['id'])||AxisGizmoPlugin['DEFAULT_ID'];super(_0x381127,{'id':_0x379934}),this['ignoreZAxis']=![],this['cfg']=_0x4e4487||{'id':_0x379934},this['ignoreZAxis']=!!(_0x4e4487===null||_0x4e4487===void 0x0?void 0x0:_0x4e4487['ignoreZAxis']),this['hostCamera']=_0x381127['camera'],this['init']();}['init'](){this['initRenderer'](),this['initScene'](),this['animate'](),this['viewer']['addEventListener'](ViewerEvent['CameraChange'],()=>{this['hostCamera']=this['viewer']['camera'];});}['initRenderer'](){var _0x409608;let _0xb1a76=0x64,_0x239ee7=0x64,_0x480c1a;this['cfg']['containerId']&&(_0x480c1a=document['getElementById'](this['cfg']['containerId']),_0x480c1a&&(_0xb1a76=_0x480c1a['clientWidth'],_0x239ee7=_0x480c1a['clientHeight']));if(!_0x480c1a){const _0x200491='axisGizmo';_0x480c1a=document['createElement']('div'),_0x480c1a['id']=_0x200491,(_0x409608=this['viewer']['widgetContainer'])===null||_0x409608===void 0x0?void 0x0:_0x409608['appendChild'](_0x480c1a);}this['renderer']=new THREE['WebGLRenderer']({'antialias':!![],'alpha':!![]}),this['renderer']['setSize'](_0xb1a76,_0x239ee7),_0x480c1a['appendChild'](this['renderer']['domElement']),this['css2dRenderer']=new THREEAddons['CSS2DRenderer'](),this['css2dRenderer']['setSize'](_0xb1a76,_0x239ee7),this['css2dRenderer']['domElement']['style']['height']='0',this['css2dRenderer']['domElement']['style']['width']='0',_0x480c1a['appendChild'](this['css2dRenderer']['domElement']),this['container']=_0x480c1a;}['initScene'](){this['scene']=new THREE['Scene'](),this['camera']=new THREE['OrthographicCamera'](-0x1,0x1,0x1,-0x1,0.1,0x64),this['scene']['add'](this['camera']),this['coordinateAxes']=new CoordinateAxes(!![],this['ignoreZAxis']),this['scene']['add'](this['coordinateAxes']);}['setHostCamera'](_0x2286a6){this['hostCamera']=_0x2286a6;}['setVisible'](_0x51153b){this['container']&&(this['container']['style']['display']=_0x51153b?'block':'none');}['isVisible'](){if(this['container'])return this['container']['style']['display']!=='none';return ![];}['render'](){var _0x46fc26;if(!this['scene']||!this['camera'])return;this['renderer']&&(this['update'](),this['renderer']['render'](this['scene'],this['camera'])),(_0x46fc26=this['css2dRenderer'])===null||_0x46fc26===void 0x0?void 0x0:_0x46fc26['render'](this['scene'],this['camera']);}['animate'](){requestAnimationFrame(this['animate']['bind'](this)),this['render']();}['update'](){if(!this['hostCamera'])return;const _0x5b4283=this['hostCamera'];if(_0x5b4283){const _0x3b5eeb=new THREE['Vector3']();_0x5b4283['getWorldDirection'](_0x3b5eeb);const _0x103be3=_0x5b4283['up'];this['updateCameraDirection'](_0x3b5eeb,_0x103be3);}}['updateCameraDirection'](_0x3a8d3e,_0x2ef0ea){if(!this['camera']||!_0x3a8d3e)return;_0x3a8d3e['normalize']();const _0x1abff5=0x2,_0x5cb868=0.3;this['camera']['position']['set'](-_0x3a8d3e['x']*_0x1abff5+_0x5cb868,-_0x3a8d3e['y']*_0x1abff5+_0x5cb868,-_0x3a8d3e['z']*_0x1abff5+_0x5cb868),this['camera']['lookAt'](_0x5cb868,_0x5cb868,_0x5cb868),this['camera']['up']=_0x2ef0ea;}['destroy'](){var _0xa5bd2,_0xc16ce;super['destroy']();if(!this['scene']||!this['camera']||!this['coordinateAxes'])return;this['scene']['clear'](),this['scene']=undefined,this['css2dRenderer']&&((_0xa5bd2=this['container'])===null||_0xa5bd2===void 0x0?void 0x0:_0xa5bd2['removeChild'](this['css2dRenderer']['domElement']),this['css2dRenderer']=undefined),this['renderer']&&((_0xc16ce=this['container'])===null||_0xc16ce===void 0x0?void 0x0:_0xc16ce['removeChild'](this['renderer']['domElement']),this['renderer']['dispose'](),this['renderer']['forceContextLoss'](),this['renderer']=undefined),this['hostCamera']=undefined,this['camera']=undefined,this['coordinateAxes']=undefined;}}AxisGizmoPlugin['DEFAULT_ID']='AxisGizmoPlugin';
|
|
18
|
+
|
|
19
|
+
var css_248z$e = ".bottom-bar{bottom:0;color:#666;display:flex;overflow:hidden;pointer-events:auto;position:absolute;right:4px;user-select:none;z-index:2}.bottom-bar i{align-items:center;border-radius:7px;color:rgba(51,51,51,.62);cursor:pointer;display:inline-flex;font-size:17px;height:28px;justify-content:center;line-height:1;transition:color .12s ease,background-color .12s ease,transform .12s ease;width:28px}.bottom-bar i:hover{background:rgba(44,123,229,.12);color:#2c7be5}.bottom-bar i.active{background:rgba(44,123,229,.16);color:#2c7be5}.bottom-bar i:active{transform:scale(.96)}.bottom-bar .fps{width:4rem}.bottom-bar span{align-self:center;color:rgba(51,51,51,.72);font-size:12px;padding:0 4px}#gcode-viewer-threejs-cameraCfg-tooltip,#gcode-viewer-threejs-statistics-tooltip,#gcode-viewer-threejs-tips-tooltip{background:hsla(0,0%,100%,.97);border:1px solid rgba(0,0,0,.1);border-radius:4px;bottom:48px;box-shadow:0 4px 16px rgba(0,0,0,.1);color:#333;font-size:12px;padding:8px 28px 8px 10px;pointer-events:auto;position:absolute;right:12px;user-select:none;z-index:13}#gcode-viewer-threejs-cameraCfg-tooltip p,#gcode-viewer-threejs-statistics-tooltip p,#gcode-viewer-threejs-tips-tooltip p{margin:0 0 4px}#gcode-viewer-threejs-cameraCfg-tooltip p:last-child,#gcode-viewer-threejs-statistics-tooltip p:last-child,#gcode-viewer-threejs-tips-tooltip p:last-child{margin-bottom:0}#gcode-viewer-threejs-cameraCfg-tooltip p span,#gcode-viewer-threejs-statistics-tooltip p span,#gcode-viewer-threejs-tips-tooltip p span{color:rgba(51,51,51,.55);display:inline-block;margin-right:8px;min-width:92px}#gcode-viewer-threejs-cameraCfg-tooltip .bb-close-btn,#gcode-viewer-threejs-statistics-tooltip .bb-close-btn,#gcode-viewer-threejs-tips-tooltip .bb-close-btn{align-items:center;border-radius:4px;color:rgba(51,51,51,.45);cursor:pointer;display:flex;font-size:11px;font-style:normal;height:18px;justify-content:center;line-height:1;position:absolute;right:5px;top:5px;transition:color .12s ease,background-color .12s ease;width:18px}#gcode-viewer-threejs-cameraCfg-tooltip .bb-close-btn:hover,#gcode-viewer-threejs-statistics-tooltip .bb-close-btn:hover,#gcode-viewer-threejs-tips-tooltip .bb-close-btn:hover{background:rgba(0,0,0,.07);color:rgba(51,51,51,.85)}@media screen and (max-width:768px){.bottom-bar{border-radius:4px;bottom:8px;padding:3px;right:8px}.bottom-bar i{border-radius:6px;font-size:15px;height:24px;width:24px}#gcode-viewer-threejs-cameraCfg-tooltip,#gcode-viewer-threejs-statistics-tooltip,#gcode-viewer-threejs-tips-tooltip{bottom:40px;font-size:11px;max-width:min(320px,100vw - 16px);right:8px}#gcode-viewer-threejs-cameraCfg-tooltip p span,#gcode-viewer-threejs-statistics-tooltip p span,#gcode-viewer-threejs-tips-tooltip p span{min-width:80px}}";
|
|
20
|
+
styleInject(css_248z$e);
|
|
21
|
+
|
|
22
|
+
function _0x1daf82(n){return {all:n=n||new Map,on:function(t,e){var i=n.get(t);i?i.push(e):n.set(t,[e]);},off:function(t,e){var i=n.get(t);i&&(e?i.splice(i.indexOf(e)>>>0,1):n.set(t,[]));},emit:function(t,e){var i=n.get(t);i&&i.slice().map(function(n){n(e);}),(i=n.get("*"))&&i.slice().map(function(n){n(t,e);});}}}
|
|
23
|
+
|
|
24
|
+
const BOTTOM_BAR_ID='bottomBar';var BottomBarItemId;(function(_0x53c441){_0x53c441['statistics']='gcode-viewer-threejs-statistics',_0x53c441['cameraCfg']='gcode-viewer-threejs-cameraCfg',_0x53c441['tips']='gcode-viewer-threejs-tips';}(BottomBarItemId||(BottomBarItemId={})));const estimateMemoryUsage=_0x53e435=>{const _0x52e11a=new Set(),_0x8eee76=new Set();let _0x29fd4b=0x0,_0x4cc83e=0x0;return _0x53e435['scene']['traverse'](_0x4fd6be=>{const _0x1b9964=_0x4fd6be;if(_0x1b9964['isMesh']&&_0x1b9964['geometry']){const _0x444f33=_0x1b9964['geometry'];if(!_0x52e11a['has'](_0x444f33['uuid'])){_0x52e11a['add'](_0x444f33['uuid']);for(const _0x3d0f5b of Object['values'](_0x444f33['attributes'])){_0x29fd4b+=_0x3d0f5b['array']['byteLength'];}_0x444f33['index']&&(_0x29fd4b+=_0x444f33['index']['array']['byteLength']);}}if(!_0x1b9964['isMesh'])return;const _0x4d90ac=Array['isArray'](_0x1b9964['material'])?_0x1b9964['material']:[_0x1b9964['material']];for(const _0x361b99 of _0x4d90ac){if(!_0x361b99)continue;for(const _0x2148d6 of Object['values'](_0x361b99)){if(!(_0x2148d6 instanceof THREE['Texture']))continue;if(_0x8eee76['has'](_0x2148d6['uuid']))continue;_0x8eee76['add'](_0x2148d6['uuid']);const _0x403b0f=_0x2148d6['image'];if(!(_0x403b0f===null||_0x403b0f===void 0x0?void 0x0:_0x403b0f['width'])||!(_0x403b0f===null||_0x403b0f===void 0x0?void 0x0:_0x403b0f['height']))continue;const _0x119991=_0x403b0f['width']*_0x403b0f['height']*0x4;_0x4cc83e+=Math['round'](_0x119991*(_0x2148d6['generateMipmaps']?0x4/0x3:0x1));}}}),{'textureSize':CommonUtils['byteCountToString'](_0x4cc83e),'geometrySize':CommonUtils['byteCountToString'](_0x29fd4b)};},getRenderInfoSpan=_0x58c22e=>{const _0x5e6563=document['createElement']('span'),_0x2e8c3e=_0x227aa4=>{var _0x405d0f;const _0x18b29b=(_0x405d0f=_0x227aa4['renderer'])===null||_0x405d0f===void 0x0?void 0x0:_0x405d0f['domElement'];return _0x18b29b===null||_0x18b29b===void 0x0?void 0x0:_0x18b29b['dataset']['engine'];},_0x29f534=_0x58c22e['viewer']['getRenderInfo'](),_0x42cb28=estimateMemoryUsage(_0x58c22e['viewer']),_0x4b67ab=(_0x592d35,_0x31067d)=>{_0x5e6563['innerHTML']+='<p><span>'+_0x592d35+'</span>'+_0x31067d+'</p>';};_0x5e6563['innerHTML']='<p>--\x20Renderer\x20Info\x20--</p>';const _0x3b8fcd=_0x2e8c3e(_0x58c22e['viewer']);if(_0x3b8fcd){const _0x52f8a0=_0x3b8fcd['split']('\x20');_0x52f8a0['length']===0x2&&_0x4b67ab(_0x52f8a0[0x0],_0x52f8a0[0x1]);}return _0x4b67ab('@gcode-viewer/core','v'+VERSION),_0x4b67ab('DrawCalls',_0x29f534['drawCalls']),_0x4b67ab('Points',_0x29f534['points']),_0x4b67ab('Lines',_0x29f534['lines']),_0x4b67ab('Triangles',_0x29f534['triangles']),_0x4b67ab('Materials',_0x29f534['materials']),_0x4b67ab('Textures',_0x29f534['textures']+'\x20('+_0x42cb28['textureSize']+')'),_0x4b67ab('Geometries',_0x29f534['geometries']+'\x20('+_0x42cb28['geometrySize']+')'),_0x5e6563;},getCameraCfgSpan=_0x6b7336=>{const _0x2ed37a=document['createElement']('span'),_0x442365=_0x6b7336['viewer']['getCameraInfo'](),_0x4c3ee1=(_0x5daa7a,_0x2ad4dd)=>{_0x2ed37a['innerHTML']+='<p><span>'+_0x5daa7a+'</span>'+_0x2ad4dd+'</p>';};_0x2ed37a['innerHTML']='';const _0x28e74e=_0x358d85=>CommonUtils['numberToString'](_0x358d85),_0x438ed8=_0x12abbf=>CommonUtils['vectorToString'](_0x12abbf);_0x4c3ee1('Camera\x20type',_0x442365['projection']),_0x4c3ee1('Camera\x20position',_0x438ed8(_0x442365['position'])),_0x4c3ee1('Camera\x20target',_0x438ed8(_0x442365['target'])),_0x4c3ee1('Camera\x20up',_0x438ed8(_0x442365['up'])),_0x4c3ee1('Camera\x20near',_0x28e74e(_0x442365['near']||0x0)),_0x4c3ee1('Camera\x20far',_0x28e74e(_0x442365['far']||0x0));if(_0x442365['projection']===CameraProjection['Perspective'])_0x4c3ee1('Fov',_0x28e74e(_0x442365['fov']||0x0)),_0x4c3ee1('Aspect',_0x28e74e(_0x442365['aspect']||0x0));else _0x442365['projection']===CameraProjection['Orthographic']&&(_0x4c3ee1('Zoom',_0x28e74e(_0x442365['zoom']||0x0)),_0x4c3ee1('Left',_0x28e74e(_0x442365['left']||0x0)),_0x4c3ee1('Right',_0x28e74e(_0x442365['right']||0x0)),_0x4c3ee1('Bottom',_0x28e74e(_0x442365['bottom']||0x0)),_0x4c3ee1('Top',_0x28e74e(_0x442365['top']||0x0)));return _0x2ed37a;},bottomBarItems={[BottomBarItemId['statistics']]:{'icon':{'default':'icon-info','active':'icon-info-filled','iconFont':IconfontClass2},'mutexIds':[BottomBarItemId['cameraCfg'],BottomBarItemId['tips']],'onActive':_0xd7d587=>{_0xd7d587['tooltip']['setContent'](getRenderInfoSpan(_0xd7d587)),_0xd7d587['tooltip']['show']();},'onDeactive':_0x1290c5=>{_0x1290c5['tooltip']['hide']();},'onUpdate':_0x365170=>{_0x365170['tooltip']['setContent'](getRenderInfoSpan(_0x365170));}},[BottomBarItemId['cameraCfg']]:{'icon':{'default':'icon-view','active':'icon-view-filled','iconFont':IconfontClass2},'mutexIds':[BottomBarItemId['statistics'],BottomBarItemId['tips']],'onActive':_0x5e1d75=>{_0x5e1d75['tooltip']['setContent'](getCameraCfgSpan(_0x5e1d75)),_0x5e1d75['tooltip']['show']();},'onDeactive':_0x5d973d=>{_0x5d973d['tooltip']['hide']();},'onUpdate':_0x4b446e=>{_0x4b446e['tooltip']['setContent'](getCameraCfgSpan(_0x4b446e));}},[BottomBarItemId['tips']]:{'icon':{'default':'icon-more','iconFont':IconfontClass2},'mutexIds':[BottomBarItemId['cameraCfg'],BottomBarItemId['cameraCfg']],'onActive':_0x163917=>{const _0x2c18fa=document['createElement']('span'),_0x205be6=_0x163917['viewer']['is3d']();if(_0x163917['viewer']['name']===ViewerName['GCodeViewer'])_0x2c18fa['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>W\x20</span>Move\x20forward</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>A\x20</span>Move\x20backward</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>S\x20</span>Move\x20left</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>D\x20</span>Move\x20right</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>Q\x20</span>Rise\x20up</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>E\x20</span>Lower\x20down</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>↑\x20</span>Next\x20layer</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>↓\x20</span>Previous\x20layer</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>←\x20</span>Previous\x20step</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>→\x20</span>Next\x20step</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20';else _0x205be6?_0x2c18fa['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>W\x20</span>Move\x20forward</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>A\x20</span>Move\x20backward</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>S\x20</span>Move\x20left</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>D\x20</span>Move\x20right</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>Q\x20</span>Rise\x20up</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>E\x20</span>Lower\x20down</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>↑\x20</span>Rotate\x20up</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>↓\x20</span>Rotate\x20down</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>←\x20</span>Rotate\x20to\x20left</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>→\x20</span>Rotate\x20to\x20right</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20':_0x2c18fa['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p>Nothing\x20to\x20show</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20';_0x163917['tooltip']['setContent'](_0x2c18fa),_0x163917['tooltip']['show']();},'onDeactive':_0x1a1e23=>{_0x1a1e23['tooltip']['hide']();}}};class BottomBarPlugin extends Plugin{constructor(_0x530f71){const _0x3de189='BottomBarPlugin';super(_0x530f71,{'id':_0x3de189}),this['itemList']=new Map(),this['init']();}['update'](){this['itemList']['forEach'](_0x4ac751=>{_0x4ac751['update']();});}['init'](){var _0x4ae6b2;const _0x3d6a90=document['createElement']('div');_0x3d6a90['id']=BOTTOM_BAR_ID,_0x3d6a90['classList']['add']('bottom-bar'),forEach(bottomBarItems,(_0x41604a,_0xa14d0d)=>{const _0x281968=this['createItem'](this['viewer'],_0xa14d0d,_0x41604a);_0x3d6a90['appendChild'](_0x281968['element']);}),this['element']=_0x3d6a90,(_0x4ae6b2=this['viewer']['widgetContainer'])===null||_0x4ae6b2===void 0x0?void 0x0:_0x4ae6b2['appendChild'](this['element']),this['viewer']['addEventListener'](ViewerEvent['AfterRender'],()=>{this['update']();});}['createItem'](_0x579282,_0x2c218d,_0xcac417){const _0x2d1524=new BottomBarItem(_0x579282,this,_0x2c218d,_0xcac417);return this['itemList']['set'](_0x2c218d,_0x2d1524),_0x2d1524;}}class BottomBarItem{constructor(_0x512453,_0xe88de7,_0x2ea16e,_0x297538){this['viewer']=_0x512453,this['bottomBar']=_0xe88de7,this['menuId']=_0x2ea16e,this['cfg']=_0x297538,this['eventBus']=_0x1daf82(),this['active']=![],this['itemconfig']=_0x297538,this['element']=this['createButton'](this['menuId'],_0x297538),this['tooltip']=new Tooltip(_0x2ea16e+'-tooltip',null,{'parentNode':_0x512453['widgetContainer']}),this['tooltip']['element']['style']['pointerEvents']='auto';const _0x2d3fc0=document['createElement']('i');_0x2d3fc0['className']='bb-close-btn',_0x2d3fc0['textContent']='✕',_0x2d3fc0['addEventListener']('click',_0x5aba0c=>{_0x5aba0c['stopPropagation'](),this['setActive'](![]);}),this['tooltip']['appendPersistent'](_0x2d3fc0),this['eventBus']['on']('activitychange',_0x1d0811=>{_0x1d0811?(this['element']['classList']['add']('active'),forEach(_0x297538['mutexIds'],_0x5f0500=>{var _0x1bb7c7;const _0x1ec093=(_0x1bb7c7=this['bottomBar'])===null||_0x1bb7c7===void 0x0?void 0x0:_0x1bb7c7['itemList']['get'](_0x5f0500);_0x1ec093&&_0x1ec093['active']&&_0x1ec093['setActive'](![]);}),_0x297538['onActive']&&_0x297538['onActive'](this)):(this['element']['classList']['remove']('active'),_0x297538['onDeactive']&&_0x297538['onDeactive'](this)),this['element']instanceof HTMLElement&&setIcon(this['element']['classList'],_0x297538['icon'],this['active']);});}['createButton'](_0x5db868,_0x337b68){const _0x290ecd=document['createElement']('i');_0x290ecd['id']=_0x5db868;const {default:_0x5270e5='icon-new',iconFont:iconFont=IconfontClass}=_0x337b68['icon'];return _0x290ecd['classList']['add']('icon'),_0x290ecd['classList']['add'](iconFont),_0x290ecd['classList']['add'](_0x5270e5),_0x290ecd['onclick']=()=>{this['active']=!this['active'],_0x337b68['onClick']&&_0x337b68['onClick'](this),this['eventBus']['emit']('activitychange',this['active']);},_0x290ecd;}['setActive'](_0x46f051){this['active']=_0x46f051,this['eventBus']['emit']('activitychange',this['active']);}['update'](){this['active']&&(this['itemconfig']['onUpdate']&&this['itemconfig']['onUpdate'](this));}}
|
|
25
|
+
|
|
26
|
+
var css_248z$d = ".context-menu{background-color:#fff;border-radius:2px;box-shadow:0 4px 8px 0 rgba(0,0,0,.2),0 6px 20px 0 rgba(0,0,0,.19);box-sizing:border-box;cursor:pointer;padding:2px;pointer-events:auto;position:absolute;width:200px;z-index:2}.context-menu ul{list-style:none;padding:0}.context-menu ul:last-child li{border-bottom:0}.context-menu li{box-sizing:border-box;height:2rem;padding:.5rem}.context-menu li:hover{background-color:#d3d3d3}.context-menu li.disabled{color:#ccc;cursor:not-allowed}.context-menu li:last-child{border-bottom:1px solid #000}";
|
|
27
|
+
styleInject(css_248z$d);
|
|
28
|
+
|
|
29
|
+
const en$d={'viewFitAll':'View\x20Fit\x20All','hideAll':'Hide\x20All','showAll':'Show\x20All','xRayAll':'X-Ray','xRayNone':'X-Ray\x20None','selectNone':'Select\x20None','resetView':'Reset\x20View','viewFitEntity':'View\x20Fit','hideEntity':'Hide','hideOthers':'Hide\x20Others','xRayEntity':'X-Ray','xRayOthers':'X-Ray\x20Others','select':'Select','deselect':'Deselect','showSectionPlane':'Show\x20Section\x20Plane','showSectionBox':'Show\x20Section\x20Box','showAxisSection':'Show\x20Axis\x20Section','hideSectionPlane':'Hide\x20Section\x20Plane','hideSectionBox':'Hide\x20Section\x20Box','hideAxisSection':'Hide\x20Axis\x20Section','undoSection':'Undo\x20Section'};const zh$d={'viewFitAll':'缩放视口到所有模型','hideAll':'全部隐藏','showAll':'全部显示','xRayAll':'全部应用\x20X\x20光模式','xRayNone':'清除\x20X\x20光模式','selectNone':'清空选择','resetView':'重置视图','viewFitEntity':'缩放视口到实体','hideEntity':'隐藏','hideOthers':'隐藏其他\x20(隔离)','xRayEntity':'应用\x20X\x20光模式','xRayOthers':'对其他实体应用\x20X\x20光模式','select':'选择','deselect':'取消选择','showSectionPlane':'显示剖切面','showSectionBox':'显示剖切盒','showAxisSection':'显示轴向剖切','hideSectionPlane':'隐藏剖切面','hideSectionBox':'隐藏剖切盒','hideAxisSection':'隐藏轴向剖切','undoSection':'取消剖切'};const CONTEXT_MENU_I18N_NAMESPACE='contextMenu';registerViewerI18nNamespace(CONTEXT_MENU_I18N_NAMESPACE,{'en':en$d,'zh':zh$d});function t$d(_0x4c3971){return i18n['t'](_0x4c3971,{'ns':CONTEXT_MENU_I18N_NAMESPACE});}
|
|
30
|
+
|
|
31
|
+
const translate=_0x3d937a=>()=>{return t$d(_0x3d937a);},hasVisibleObject=_0x242ae0=>{return _0x242ae0['hasVisibleObject']();},hasInvisibleObject=_0xebd4cd=>{return _0xebd4cd['hasInvisibleObject']();},isObjectSelected=(_0x692532,_0xb34198,_0x366b2c,_0x319201)=>{var _0x3e7e28;const _0x5bbcfa=(_0x3e7e28=_0x692532['interaction'])===null||_0x3e7e28===void 0x0?void 0x0:_0x3e7e28['selectedObject'];return !!(_0x5bbcfa&&_0xb34198&&_0x5bbcfa['id']===_0xb34198['id']);},viewFitEntity={'getTitle':translate('viewFitEntity'),'getShown':({hit:_0x2ca27c})=>_0x2ca27c,'doAction':({viewer:_0x21091b,hit:_0xce26a9})=>{_0x21091b instanceof Viewer3d&&((_0xce26a9===null||_0xce26a9===void 0x0?void 0x0:_0xce26a9['object'])&&_0x21091b['flyToObject'](_0xce26a9['object']));}},viewFitAll={'getTitle':translate('viewFitAll'),'getEnabled':({viewer:_0x327ecf})=>hasVisibleObject(_0x327ecf),'doAction':({viewer:_0x3aa097})=>_0x3aa097['viewFitAll']()},hideEntity={'getTitle':translate('hideEntity'),'getShown':({hit:_0xeb2249})=>_0xeb2249,'doAction':({viewer:_0x41b1e9,hit:_0x4ea3fd})=>{_0x41b1e9 instanceof Viewer3d&&(_0x41b1e9['clearSelection'](),(_0x4ea3fd===null||_0x4ea3fd===void 0x0?void 0x0:_0x4ea3fd['object'])&&_0x41b1e9['setObjectVisible'](_0x4ea3fd['object'],![])),_0x41b1e9['enableRender']();}},hideOthers={'getTitle':translate('hideOthers'),'getShown':({hit:_0x2d067e})=>_0x2d067e,'doAction':({viewer:_0x15d594,hit:_0x1dafc1})=>{_0x15d594 instanceof Viewer3d&&(_0x15d594['clearSelection'](),(_0x1dafc1===null||_0x1dafc1===void 0x0?void 0x0:_0x1dafc1['object'])&&_0x15d594['hideOtherObjects'](_0x1dafc1['object'])),_0x15d594['enableRender']();}},hideAll={'getTitle':translate('hideAll'),'getEnabled':({viewer:_0x12b87c})=>hasVisibleObject(_0x12b87c),'doAction':({viewer:_0x3b9fb5})=>{const _0x5e23c9=_0x3b9fb5;_0x5e23c9['clearSelection'](),_0x5e23c9['setModelsVisible'](![]),_0x5e23c9['enableRender']();}},showAll={'getTitle':translate('showAll'),'getEnabled':({viewer:_0x4581df})=>hasInvisibleObject(_0x4581df),'doAction':({viewer:_0x23fbae})=>{const _0x4d58d5=_0x23fbae;_0x4d58d5['setModelsVisible'](!![]),_0x4d58d5['enableRender']();}},selectEntity={'getTitle':({hit:_0x274c5b,viewer:_0x32ff2e,instanceId:_0x20aaa8,batchId:_0x102ec5})=>{const _0x3cfcad=_0x32ff2e;return isObjectSelected(_0x3cfcad,_0x274c5b===null||_0x274c5b===void 0x0?void 0x0:_0x274c5b['object'])?translate('deselect')():translate('select')();},'getShown':({hit:_0x3eac8c,viewer:_0x18122d})=>!!_0x18122d['enableSelection']&&!!_0x3eac8c,'doAction':({hit:_0x13a319,viewer:_0x2e44d4,instanceId:_0x58b08a,batchId:_0xd0969e})=>{const _0x7b8a16=_0x13a319['object'];_0x2e44d4 instanceof Viewer3d&&(isObjectSelected(_0x2e44d4,_0x7b8a16)?_0x2e44d4['clearSelection']():_0x2e44d4['setObjectHighlight'](_0x7b8a16));}},selectNone={'getTitle':translate('selectNone'),'getShown':({viewer:_0x292421})=>!!_0x292421['enableSelection'],'getEnabled':({viewer:_0x635408})=>_0x635408['hasSelectedObject'](),'doAction':({viewer:_0x5a0db4})=>{_0x5a0db4['clearSelection']();}};let enableXRayAll=![];const xRayAll={'getTitle':translate('xRayAll'),'getShown':({viewer:_0x2fac1c})=>!enableXRayAll,'doAction':({viewer:_0x3bd349})=>{const _0x72118d=_0x3bd349;_0x72118d['clearSelection'](),_0x72118d['setModelsOpacity'](DefaultOpacity),_0x72118d['enableRender'](),enableXRayAll=!![];}},xRayNone={'getTitle':translate('xRayNone'),'getEnabled':({viewer:_0x49b66a})=>enableXRayAll,'doAction':({viewer:_0x5606cb})=>{const _0x5f1643=_0x5606cb;_0x5f1643['clearSelection'](),_0x5f1643['clearModelsOpacity'](),_0x5f1643['enableRender'](),enableXRayAll=![];}},xRayEntity={'getTitle':translate('xRayEntity'),'getShown':({hit:_0x80925a})=>_0x80925a,'doAction':({viewer:_0xb7232f,hit:_0x4526a4})=>{_0xb7232f instanceof Viewer3d&&(_0xb7232f['clearSelection'](),(_0x4526a4===null||_0x4526a4===void 0x0?void 0x0:_0x4526a4['object'])&&_0xb7232f['setObjectOpacity'](_0x4526a4['object'],DefaultOpacity)),enableXRayAll=!![];}},xRayOthers={'getTitle':translate('xRayOthers'),'getShown':({hit:_0x5cb45e})=>_0x5cb45e,'doAction':({viewer:_0x13486c,hit:_0x30d8f0})=>{const _0x4f64ce=_0x30d8f0['object'];_0x13486c instanceof Viewer3d&&(_0x13486c['clearSelection'](),_0x13486c['setOtherObjectsOpacity'](_0x4f64ce,DefaultOpacity)),enableXRayAll=!![];}};const ContextMenuItems=[[viewFitEntity,viewFitAll],[hideEntity,hideOthers,hideAll,showAll],[xRayEntity,xRayOthers,xRayAll,xRayNone],[selectEntity,selectNone]];
|
|
32
|
+
|
|
33
|
+
const en$c={'measure':'Pick\x20a\x20point\x20to\x20continue,\x20pressing\x20ESC\x20to\x20exit','areaMeasurement':'Pick\x20a\x20point\x20to\x20continue,\x20pressing\x20ESC\x20to\x20exit,\x20click\x20start\x20point\x20to\x20finish'};const zh$c={'measure':'点击继续测量,\x20ESC\x20取消测量','areaMeasurement':'点击继续测量,\x20ESC\x20取消测量,点击起点完成测量'};const MEASUREMENT_I18N_NAMESPACE='measurement';registerViewerI18nNamespace(MEASUREMENT_I18N_NAMESPACE,{'en':en$c,'zh':zh$c});function t$c(_0x197915){return i18n['t'](_0x197915,{'ns':MEASUREMENT_I18N_NAMESPACE});}
|
|
34
|
+
|
|
35
|
+
var MeasurementType;(function(_0x160094){_0x160094['Distance']='Distance',_0x160094['Area']='Area',_0x160094['Angle']='Angle',_0x160094['Coordinate']='Coordinate';}(MeasurementType||(MeasurementType={})));class BaseMeasurement extends Event{constructor(_0x4ca554,_0x2ed5e6,_0x3fff7e,_0x42a7bc,_0x37e3c2){super(),this['actived']=![],this['mouseMoved']=![],this['mouseDowned']=![],this['touchDowned']=![],this['mouseDownPositionX']=-0x1,this['mouseDownPositionY']=-0x1,this['snapPoint']=undefined,this['touchstart']=_0x3b87ab=>{this['mobileTouchHelper']&&this['mobileTouchHelper']['isIntersect'](_0x3b87ab)&&!this['touchDowned']&&(this['clearClickedDrawable'](),this['viewer']['getCameraManager']()['enableControl'](![]),this['touchDowned']=!![],this['mouseDownPositionX']=_0x3b87ab['x'],this['mouseDownPositionY']=_0x3b87ab['y']);},this['touchmove']=_0x4ad55e=>{if(_0x4ad55e['pointers']&&_0x4ad55e['pointers']['length']>0x1)return;const {width:_0x20a4f8,height:_0x220625}=this['viewer']['viewerContainer']['getBoundingClientRect']();if(_0x4ad55e['x']>_0x20a4f8-0xf||_0x4ad55e['x']<0x23||_0x4ad55e['y']<0xf||_0x4ad55e['y']>_0x220625-0x23)return;if(this['touchDowned']&&this['mobileTouchHelper']){const _0xd2bb62=_0x4ad55e['x']-this['mouseDownPositionX'],_0x2a01ba=_0x4ad55e['y']-this['mouseDownPositionY'];this['mobileTouchHelper']['translate'](_0xd2bb62,_0x2a01ba),this['mouseDownPositionX']=_0x4ad55e['x'],this['mouseDownPositionY']=_0x4ad55e['y'];const _0xd55f33=this['mobileTouchHelper']['getTouchPoint'](),_0x7997e7=this['getIntersections'](_0xd55f33);if(!_0x7997e7['length']){this['osnapHelper']['deactivate']();return;}const _0x247331=Date['now']();this['snapPoint']=this['osnapHelper']['handleSnap'](_0x7997e7,this['viewer']['is3d'](),this['lastMouseDownPosition']),log['debug']('[Measure]\x20handleSnap\x20took\x20'+(Date['now']()-_0x247331)/0x3e8+'s');if(!this['snapPoint']){console['warn']('[Measure]\x20Failed\x20to\x20find\x20a\x20snap\x20point!');return;}this['onMouseMove'](this['snapPoint']);}},this['touchend']=_0x7997b7=>{var _0x12c3e2;this['viewer']['getCameraManager']()['enableControl'](!![]);if(_0x7997b7['pointers']&&_0x7997b7['pointers']['length']>0x1)return;if(this['touchDowned']){this['touchDowned']=![];const _0x5d5786=(_0x12c3e2=this['mobileTouchHelper'])===null||_0x12c3e2===void 0x0?void 0x0:_0x12c3e2['getTouchPoint']();this['onMouseClick'](_0x5d5786);}else this['selectMeasurementByEvent'](_0x7997b7);DeviceUtils['isMobile']&&(this['osnapHelper']['deactivate'](),this['dispatchEvent']('update'));},this['mousedown']=_0x4d77c5=>{this['mouseMoved']=![],this['mouseDowned']=!![],this['mouseDownPositionX']=_0x4d77c5['x'],this['mouseDownPositionY']=_0x4d77c5['y'];},this['mousemove']=_0xfee999=>{this['lastMoveEvent']=_0xfee999;if(this['mouseDownPositionX']>=0x0&&this['mouseDownPositionY']>=0x0){const _0x3ee91e=0x5;(Math['abs'](_0xfee999['x']-this['mouseDownPositionX'])>_0x3ee91e||Math['abs'](_0xfee999['y']-this['mouseDownPositionY'])>_0x3ee91e)&&(this['mouseMoved']=!![]);}if(this['mouseDowned'])return;const _0xb04188=Date['now'](),_0x2dbcb6=this['getIntersections'](_0xfee999);log['debug']('[Measure]\x20getIntersections\x20took\x20'+(Date['now']()-_0xb04188)/0x3e8+'s');if(!_0x2dbcb6['length']){this['osnapHelper']['deactivate']();return;}const _0xddb091=Date['now']();this['snapPoint']=this['osnapHelper']['handleSnap'](_0x2dbcb6,this['viewer']['is3d'](),this['lastMouseDownPosition']),log['debug']('[Measure]\x20OSnapHelper.handleSnap\x20took\x20'+(Date['now']()-_0xddb091)/0x3e8+'s');if(!this['snapPoint']){console['warn']('[Measure]\x20Failed\x20to\x20find\x20a\x20snap\x20point!');return;}this['onMouseMove'](this['snapPoint']);},this['mouseup']=_0x5d8f94=>{this['mouseDowned']=![],!this['mouseMoved']&&this['onMouseClick'](_0x5d8f94);},this['dblclick']=()=>{log['info']('[Measure]\x20Double\x20clicked');},this['keydown']=_0x4558cb=>{if(_0x4558cb['code']==='Enter'){const _0x1ded72={'x':0x0,'y':0x0,'pageX':0x0,'pageY':0x0,'clientX':0x0,'clientY':0x0,'deltaX':0x0,'deltaY':0x0,'button':MouseButton['Right'],'movementX':0x0,'movementY':0x0,'deltaMode':0x0,'pointerId':0x0,'timestamp':0x0,'buttons':0x0,'pointerType':'mouse','altKey':![],'ctrlKey':![],'shiftKey':![],'metaKey':![]};this['onMouseClick'](_0x1ded72);}else _0x4558cb['code']==='Escape'&&this['cancel']();},this['getIntersections']=_0x154a78=>{const _0x5a3536=new THREE['Vector2'](_0x154a78['x'],_0x154a78['y']);return this['viewer']['pickObjects'](_0x5a3536,[]);},this['type']=_0x4ca554,this['viewer']=_0x2ed5e6,this['inputManager']=_0x3fff7e,this['drawList']=_0x42a7bc,this['osnapHelper']=_0x37e3c2;}get['overlayRender'](){return this['viewer']['getOverlayRender']();}get['renderer'](){return this['viewer']['renderer'];}get['isActive'](){return this['actived'];}get['isMeasuring'](){return this['completed']===![];}['setTouchHelper'](_0x4beefc){this['mobileTouchHelper']=_0x4beefc;}['createMobileExitButton'](){const _0x5dbe10=this['viewer']['widgetContainer'],_0x3c917c=document['createElement']('button');return _0x3c917c['innerText']='X',_0x3c917c['style']['cssText']='position:\x20absolute;right:\x205%;\x20top:\x205%;background-color:\x20#000000;color:\x20#ffffff;padding:\x203px\x2010px;font-weight:\x20bolder;',_0x5dbe10===null||_0x5dbe10===void 0x0?void 0x0:_0x5dbe10['appendChild'](_0x3c917c),this['exitButton']=_0x3c917c,this['exitButton']['style']['display']='none',_0x3c917c['addEventListener']('touchstart',()=>{this['exitDrawing'](),this['exitButton']&&(this['exitButton']['style']['display']='none');}),this['addEventListener']('firstpointpicked',this['firstPickedListener']=()=>{this['exitButton']&&(this['exitButton']['style']['display']='inline-block');}),this['addEventListener']('complete',this['completedListener']=()=>{this['exitButton']&&(this['exitButton']['style']['display']='none');}),this['exitButton'];}['activate'](){this['actived']=!![];if(DeviceUtils['isMobile'])this['inputManager']['addEventListener']('touchstart',this['touchstart']),this['inputManager']['addEventListener']('touchmove',this['touchmove']),this['inputManager']['addEventListener']('touchend',this['touchend']);else {this['inputManager']['addEventListener']('pointerdown',this['mousedown']),this['inputManager']['addEventListener']('pointermove',this['mousemove']),this['inputManager']['addEventListener']('pointerup',this['mouseup']),this['tooltip']=new Tooltip('measure-tooltip',t$c('measure'),{'followPointer':!![],'showOnCreate':!![],'parentNode':this['viewer']['widgetContainer'],'target':this['viewer']['viewerContainer']});const _0x2f87a8=document['getElementById']('measure-tooltip');_0x2f87a8&&(_0x2f87a8['style']['pointerEvents']='none'),this['setTooltipContent']();}this['inputManager']['addEventListener']('dblclick',this['dblclick']),this['inputManager']['addEventListener']('keydown',this['keydown']);}['deactivate'](){var _0x45a8dc,_0x13062e;this['actived']=![],DeviceUtils['isMobile']?(this['inputManager']['removeEventListener']('touchstart',this['touchstart']),this['inputManager']['removeEventListener']('touchmove',this['touchmove']),this['inputManager']['removeEventListener']('touchend',this['touchend'])):(this['inputManager']['removeEventListener']('pointerdown',this['mousedown']),this['inputManager']['removeEventListener']('pointermove',this['mousemove']),this['inputManager']['removeEventListener']('pointerup',this['mouseup'])),this['inputManager']['removeEventListener']('dblclick',this['dblclick']),this['inputManager']['removeEventListener']('keydown',this['keydown']),(_0x45a8dc=this['tooltip'])===null||_0x45a8dc===void 0x0?void 0x0:_0x45a8dc['hide'](),(_0x13062e=this['tooltip'])===null||_0x13062e===void 0x0?void 0x0:_0x13062e['destroy'](),this['tooltip']=undefined,this['currentMeasureDrawable']&&this['removeDrawable'](this['currentMeasureDrawable']),this['osnapHelper']['deactivate'](),this['drawingPoints']=undefined,this['currentMeasureDrawable']=undefined,this['lastMouseDownPosition']=undefined;}['removeDrawable'](_0x4d3965){this['dispatchEvent']('beforeremove',_0x4d3965);}['clearClickedDrawable'](){this['clickedOnMeasurementDrawable']&&(this['clickedOnMeasurementDrawable']['selected']=![],this['clickedOnMeasurementDrawable']=undefined);}['onMouseClick'](_0x23746a){if(DeviceUtils['isMobile'])return;const _0x51c10b=Date['now']();if(this['lastClickTime']&&_0x51c10b-this['lastClickTime']<0x1f4)return;this['lastClickTime']=_0x51c10b,this['selectMeasurementByEvent'](_0x23746a);}['selectMeasurementByEvent'](_0x44e767){this['clickedOnMeasurementDrawable']&&(this['clickedOnMeasurementDrawable']['selected']=![],this['clickedOnMeasurementDrawable']=undefined);if(this['completed']==undefined||this['completed']===!![]){const _0x2a5427=this['getIntersections'](_0x44e767)[0x0];if(_0x2a5427){const _0x574c29=this['overlayRender']['getDrawablesByDrawableListAndPosition'](this['drawList'],_0x2a5427['point']);_0x574c29&&(this['dispatchEvent']('onclick',_0x574c29),this['clickedOnMeasurementDrawable']=_0x574c29);}}}['onMouseMove'](_0x4cb9b1){this['createOrUpdateMeasureDrawable'](_0x4cb9b1);}['createOrUpdateMeasureDrawable'](_0x4448a9){if(!this['drawingPoints'])return;if(this['drawingPoints']&&this['drawingPoints']['length']<0x1)return;const _0x331af4=[...this['drawingPoints']];if(!this['currentMeasureDrawable']){this['currentMeasureDrawable']=this['createMeasureDrawable']();this['currentMeasureDrawable']&&(this['currentMeasureDrawable']['selected']=!![]);this['dispatchEvent']('beforeadd',this['currentMeasureDrawable']);return;}_0x4448a9&&_0x331af4['push'](_0x4448a9),this['currentMeasureDrawable']['selected']=!![],this['currentMeasureDrawable']['update'](_0x331af4),this['currentMeasureDrawable']['setDrawingState'](!![]),this['dispatchEvent']('update');}}
|
|
36
|
+
|
|
37
|
+
class BaseMeasureDrawable extends Drawable{constructor(_0x4f6b9e,_0x287584){super(_0x4f6b9e),this['type']=MeasurementType['Distance'],this['labelBounds']=new THREE['Box2'](),this['drawing']=![],this['update'](_0x287584);}['setDrawingState'](_0x291488){this['drawing']=_0x291488;}['drawSelect'](_0x5845ad,_0x228583){const _0x46c69c=this['getVertexes']();this['drawPoints'](_0x5845ad,_0x228583,_0x46c69c);}['drawPoints'](_0x3dfaae,_0x47df5f,_0x387020){_0x3dfaae['save'](),_0x3dfaae['fillStyle']=BaseMeasureDrawable['MAJOR_COLOR'],_0x3dfaae['strokeStyle']=BaseMeasureDrawable['MINOR_COLOR'],_0x3dfaae['lineWidth']=BaseMeasureDrawable['LINE_WIDTH'],_0x3dfaae['beginPath']();const _0x3ca9ad=this['drawing']?_0x387020['slice'](0x0,_0x387020['length']-0x1):_0x387020;_0x3ca9ad['forEach'](_0xf81bc0=>{const _0x1b34e2=this['transToScreenCoord'](_0xf81bc0,_0x47df5f);_0x3dfaae['moveTo'](_0x1b34e2['x']+BaseMeasureDrawable['POINT_RADIUS'],_0x1b34e2['y']),_0x3dfaae['arc'](_0x1b34e2['x'],_0x1b34e2['y'],BaseMeasureDrawable['POINT_RADIUS'],0x0,Math['PI']*0x2);}),_0x3dfaae['closePath'](),_0x3dfaae['fill'](),_0x3dfaae['stroke'](),_0x3dfaae['restore']();}['drawText'](_0x40cfba,_0x53b18c){if(!this['label']||!this['labelPositon'])return;_0x40cfba['font']=BaseMeasureDrawable['LABEL_FONT_SIZE']+'px\x20Arial';const _0x4a40fa=_0x40cfba['measureText'](this['label'])['width']*1.2,_0x345488=BaseMeasureDrawable['LABEL_FONT_SIZE']*1.5;this['labelBounds']['setFromCenterAndSize'](this['labelPositon'],new THREE['Vector2'](_0x4a40fa,_0x345488)),this['drawRoundRect'](_0x40cfba,this['labelPositon']['x']-_0x4a40fa/0x2,this['labelPositon']['y']-_0x345488/0x2,_0x4a40fa,_0x345488,0x4),_0x40cfba['save'](),_0x40cfba['fillStyle']=BaseMeasureDrawable['MINOR_COLOR'],_0x40cfba['textBaseline']='middle',_0x40cfba['textAlign']='center',_0x40cfba['fillText'](this['label'],this['labelPositon']['x'],this['labelPositon']['y']),_0x40cfba['restore']();}['drawRoundRect'](_0x3809a5,_0x1b13cb,_0x142ea2,_0x3f8a7b,_0x2d40ae,_0x48b745){_0x3f8a7b<0x2*_0x48b745&&(_0x48b745=_0x3f8a7b/0x2),_0x2d40ae<0x2*_0x48b745&&(_0x48b745=_0x2d40ae/0x2),_0x3809a5['save'](),_0x3809a5['fillStyle']=BaseMeasureDrawable['MAJOR_COLOR'],_0x3809a5['strokeStyle']=BaseMeasureDrawable['MINOR_COLOR'],_0x3809a5['lineWidth']=BaseMeasureDrawable['LINE_WIDTH'],_0x3809a5['beginPath'](),_0x3809a5['moveTo'](_0x1b13cb+_0x48b745,_0x142ea2),_0x3809a5['arcTo'](_0x1b13cb+_0x3f8a7b,_0x142ea2,_0x1b13cb+_0x3f8a7b,_0x142ea2+_0x2d40ae,_0x48b745),_0x3809a5['arcTo'](_0x1b13cb+_0x3f8a7b,_0x142ea2+_0x2d40ae,_0x1b13cb,_0x142ea2+_0x2d40ae,_0x48b745),_0x3809a5['arcTo'](_0x1b13cb,_0x142ea2+_0x2d40ae,_0x1b13cb,_0x142ea2,_0x48b745),_0x3809a5['arcTo'](_0x1b13cb,_0x142ea2,_0x1b13cb+_0x3f8a7b,_0x142ea2,_0x48b745),_0x3809a5['closePath'](),_0x3809a5['fill'](),this['selected']&&_0x3809a5['stroke'](),_0x3809a5['restore']();}['getVertexes'](){return this['points'];}['update'](_0x4dba18){return this['points']=_0x4dba18,this;}['getData'](){return {'id':this['id'],'type':this['type'],'points':this['points']['map'](_0x50e81a=>[_0x50e81a['x'],_0x50e81a['y'],_0x50e81a['z']])};}['setData'](_0x26b976){super['setData'](_0x26b976),this['setLineColor'](ColorUtils['cssColor2FloatArray'](BaseMeasureDrawable['MAJOR_COLOR'])),this['setFillColor'](ColorUtils['cssColor2FloatArray'](BaseMeasureDrawable['AREA_FILL_COLOR'])),this['setLineWidth'](BaseMeasureDrawable['LINE_WIDTH']);}['isPointInPath'](_0x30eb68,_0x59a57a){const _0x28689c=_0x59a57a===null||_0x59a57a===void 0x0?void 0x0:_0x59a57a['ray'];if(!_0x28689c)return ![];const _0x34ec0d=0x3*this['tolerance'],_0x547107=this['transToScreenCoord'](_0x30eb68,_0x59a57a['camera']);if(this['labelBounds']['containsPoint'](_0x547107))return !![];const _0x1b3646=new THREE['Vector3'](),_0x217b01=new THREE['Vector3'](),_0x2edd28=this['points'];for(let _0x308998=0x0;_0x308998<_0x2edd28['length']-0x1;_0x308998++){const _0x3a2b63=_0x2edd28[_0x308998],_0x353994=_0x2edd28[_0x308998+0x1]||_0x2edd28[0x0],_0x1a4c84=_0x28689c['distanceSqToSegment'](_0x3a2b63,_0x353994,_0x217b01,_0x1b3646);if(_0x1a4c84<_0x34ec0d*_0x34ec0d)return !![];}return ![];}['getUnitString'](){if(this['type']===MeasurementType['Distance'])return getUnitStr('mm');if(this['type']===MeasurementType['Area'])return ''+getUnitStr('m',0x2);if(this['type']===MeasurementType['Angle'])return '°';return '';}}BaseMeasureDrawable['MAJOR_COLOR']='rgba(249,\x20157,\x2011,\x200.9)',BaseMeasureDrawable['MINOR_COLOR']='rgb(255,\x20255,\x20255)',BaseMeasureDrawable['AREA_FILL_COLOR']='rgba(249,\x20157,\x2011,\x200.3)',BaseMeasureDrawable['LINE_WIDTH']=0x2,BaseMeasureDrawable['POINT_RADIUS']=0x5,BaseMeasureDrawable['LABEL_FONT_SIZE']=0xe;
|
|
38
|
+
|
|
39
|
+
class AngleMeasureDrawable extends BaseMeasureDrawable{constructor(_0x1eac03,_0x1526c4){super(_0x1eac03,_0x1526c4),this['type']=MeasurementType['Angle'],this['update'](_0x1526c4);}['draw'](_0x2499a9,_0x3b54d1){_0x2499a9['save'](),_0x2499a9['lineWidth']=BaseMeasureDrawable['LINE_WIDTH'],_0x2499a9['strokeStyle']=BaseMeasureDrawable['MAJOR_COLOR'];const _0x5ec6c6=this['points'];_0x2499a9['beginPath'](),_0x5ec6c6['forEach']((_0x344efa,_0x2eda24)=>{const _0x3315ac=this['transToScreenCoord'](_0x344efa,_0x3b54d1);_0x2eda24===0x0?_0x2499a9['moveTo'](_0x3315ac['x'],_0x3315ac['y']):_0x2499a9['lineTo'](_0x3315ac['x'],_0x3315ac['y']);});if(this['points']['length']===0x3){const [_0xa2d188,_0x177810,_0x18c07e]=this['points']['map'](_0x1c1bb9=>this['transToScreenCoord'](_0x1c1bb9,_0x3b54d1)),_0x9392c1=new THREE['Vector2']()['subVectors'](_0xa2d188,_0x177810)['normalize'](),_0x1fcd15=new THREE['Vector2']()['subVectors'](_0x18c07e,_0x177810)['normalize'](),_0x3198a1=Math['min'](_0xa2d188['distanceTo'](_0x177810),_0x18c07e['distanceTo'](_0x177810)),_0x9abd56=_0x9392c1['angle'](),_0x1f4f79=_0x1fcd15['angle']();_0x2499a9['moveTo'](_0x177810['x'],_0x177810['y']),_0x2499a9['arc'](_0x177810['x'],_0x177810['y'],_0x3198a1/0x5,_0x9abd56,_0x1f4f79,_0x9392c1['cross'](_0x1fcd15)<0x0);}_0x2499a9['stroke'](),_0x2499a9['restore']();if(this['drawing']){const _0x289890=this['points']['length']===0x1?this['points']:this['points']['slice'](0x0,this['points']['length']-0x1);this['drawPoints'](_0x2499a9,_0x3b54d1,_0x289890);}this['drawText'](_0x2499a9,_0x3b54d1);}['drawText'](_0x256a36,_0x48b440){if(this['points']['length']<0x3)return;const [_0x3260d2,_0x25a1ec,_0x1dc251]=this['points'],_0x4cca07=this['getAngleBisector'](_0x3260d2,_0x25a1ec,_0x1dc251),_0x24dfc1=this['calculateAngle'](_0x3260d2,_0x25a1ec,_0x1dc251);this['label']=showPrecisionValue(_0x24dfc1,0x2)+'\x20'+this['getUnitString']();const _0x27057e=Math['min'](_0x3260d2['distanceTo'](_0x25a1ec),_0x1dc251['distanceTo'](_0x25a1ec)),_0x1f7e39=_0x27057e*0.3;this['labelPositon']=this['transToScreenCoord'](_0x25a1ec['clone']()['add'](new THREE['Vector3'](_0x4cca07['x']*_0x1f7e39,_0x4cca07['y']*_0x1f7e39,_0x4cca07['z']*_0x1f7e39)),_0x48b440),super['drawText'](_0x256a36,_0x48b440);}['getAngleBisector'](_0xd4da3d,_0x1c5691,_0x58c6c0){const _0x5217b4=_0xd4da3d,_0x4a18cb=_0x1c5691,_0x14f4b2=_0x58c6c0,_0x4fd99b=new THREE['Vector3'](_0x5217b4['x']-_0x4a18cb['x'],_0x5217b4['y']-_0x4a18cb['y'],_0x5217b4['z']-_0x4a18cb['z'])['normalize'](),_0x20e709=new THREE['Vector3'](_0x14f4b2['x']-_0x4a18cb['x'],_0x14f4b2['y']-_0x4a18cb['y'],_0x14f4b2['z']-_0x4a18cb['z'])['normalize']();return new THREE['Vector3'](_0x4fd99b['x']+_0x20e709['x'],_0x4fd99b['y']+_0x20e709['y'],_0x4fd99b['z']+_0x20e709['z'])['normalize']();}['calculateAngle'](_0x583147,_0x71ad24,_0x1b7bc0){const _0x9989f4=_0x583147,_0x40cad7=_0x71ad24,_0x5e3acb=_0x1b7bc0,_0x4d1942=new THREE['Vector3'](_0x9989f4['x']-_0x40cad7['x'],_0x9989f4['y']-_0x40cad7['y'],_0x9989f4['z']-_0x40cad7['z']),_0x4ab3c4=new THREE['Vector3'](_0x5e3acb['x']-_0x40cad7['x'],_0x5e3acb['y']-_0x40cad7['y'],_0x5e3acb['z']-_0x40cad7['z']),_0x444b73=_0x4d1942['angleTo'](_0x4ab3c4);return _0x444b73*0xb4/Math['PI'];}['getClassType'](){return 'Angle';}}CanvasRender['_registerDrawableClass'](AngleMeasureDrawable);
|
|
40
|
+
|
|
41
|
+
class AngleMeasurement extends BaseMeasurement{constructor(_0x244679,_0x54490c,_0x494b47,_0x5aa04a){super(MeasurementType['Angle'],_0x244679,_0x54490c,_0x494b47,_0x5aa04a);}['createMeasureDrawable'](){if(!this['drawingPoints'])return undefined;return new AngleMeasureDrawable(CommonUtils['guid'](),this['drawingPoints']);}['onMouseClick'](_0x39b822){var _0x2d529e;super['onMouseClick'](_0x39b822);if(this['clickedOnMeasurementDrawable'])return;!this['drawingPoints']&&(this['drawingPoints']=[]);if(_0x39b822['button']===MouseButton['Right']){this['exitDrawing']();return;}const _0x232138=this['getIntersections'](_0x39b822)[0x0];if(!_0x232138)return;const _0x50e25b=(_0x2d529e=this['snapPoint'])!==null&&_0x2d529e!==void 0x0?_0x2d529e:_0x232138===null||_0x232138===void 0x0?void 0x0:_0x232138['point'];if(this['drawingPoints'][0x0]&&MathUtils['areVector3sEqual'](this['drawingPoints'][0x0],_0x50e25b))return;const _0x5dc4f7=this['drawingPoints'];_0x5dc4f7['push'](_0x50e25b),this['lastMouseDownPosition']=_0x50e25b,_0x5dc4f7['length']===0x1&&(this['dispatchEvent']('firstpointpicked'),this['completed']=![]),this['createOrUpdateMeasureDrawable'](),_0x5dc4f7['length']>=0x3&&this['complete']();}['exitDrawing'](){this['drawingPoints']=undefined,this['currentMeasureDrawable']&&(this['removeDrawable'](this['currentMeasureDrawable']),this['currentMeasureDrawable']=undefined),this['completed']=undefined,this['lastMouseDownPosition']=undefined;}['complete'](){var _0x1069dc;if(this['completed']===!![])return;(_0x1069dc=this['currentMeasureDrawable'])===null||_0x1069dc===void 0x0?void 0x0:_0x1069dc['setDrawingState'](![]),this['dispatchEvent']('complete',this['currentMeasureDrawable']),this['completed']=!![],this['currentMeasureDrawable']=undefined,this['drawingPoints']=undefined,this['lastMouseDownPosition']=undefined;}['cancel'](){const _0x9db3c3=this['drawingPoints'];if(_0x9db3c3&&_0x9db3c3['length']>0x0){_0x9db3c3['pop']();_0x9db3c3['length']===0x0&&(this['currentMeasureDrawable']&&(this['removeDrawable'](this['currentMeasureDrawable']),this['currentMeasureDrawable']=undefined),this['completed']=!![]);if(this['lastMoveEvent']){const _0x497716=this['getIntersections'](this['lastMoveEvent'])[0x0];_0x497716&&this['onMouseMove'](_0x497716['point']);}}this['osnapHelper']['deactivate'](),this['lastMouseDownPosition']=undefined;}['deactivate'](){super['deactivate'](),this['currentMeasureDrawable']&&this['removeDrawable'](this['currentMeasureDrawable']);}['setTooltipContent'](){var _0x1c44c3;const _0x5affaa=t$c('measure');_0x5affaa&&this['tooltip']&&((_0x1c44c3=this['tooltip'])===null||_0x1c44c3===void 0x0?void 0x0:_0x1c44c3['setContent'](_0x5affaa));}}
|
|
42
|
+
|
|
43
|
+
class AreaMeasureDrawable extends BaseMeasureDrawable{constructor(_0x3addb6,_0x3fbd3c,_0x599043){super(_0x3addb6,_0x3fbd3c),this['type']=MeasurementType['Area'],this['scale']=_0x599043,this['update'](_0x3fbd3c);}['draw'](_0x5cae72,_0x189922){const _0x91666c=this['points'];_0x5cae72['save'](),_0x5cae72['lineWidth']=BaseMeasureDrawable['LINE_WIDTH'],_0x5cae72['strokeStyle']=BaseMeasureDrawable['MAJOR_COLOR'],_0x5cae72['fillStyle']=BaseMeasureDrawable['AREA_FILL_COLOR'],_0x5cae72['beginPath'](),_0x91666c['forEach']((_0x10890f,_0xc1e630)=>{const _0x3c2355=this['transToScreenCoord'](_0x10890f,_0x189922);_0xc1e630===0x0?_0x5cae72['moveTo'](_0x3c2355['x'],_0x3c2355['y']):_0x5cae72['lineTo'](_0x3c2355['x'],_0x3c2355['y']);}),_0x5cae72['closePath'](),_0x5cae72['fill'](),_0x5cae72['stroke'](),_0x5cae72['restore']();if(this['drawing']){const _0x33c3c2=this['points']['length']===0x1?this['points']:this['points']['slice'](0x0,this['points']['length']-0x1);this['drawPoints'](_0x5cae72,_0x189922,_0x33c3c2);}this['drawText'](_0x5cae72,_0x189922);}['drawText'](_0x5e3a2a,_0x19be20){if(this['points']['length']<0x3)return;const _0x107ae1=this['points'];let _0x80d2f1=this['calculateArea'](_0x107ae1);this['scale']&&(_0x80d2f1*=Math['pow'](this['scale'],0x2)),this['label']=''+showPrecisionValue(_0x80d2f1,0x2),this['labelPositon']=this['transToScreenCoord'](this['getBarycenter'](_0x107ae1),_0x19be20),super['drawText'](_0x5e3a2a,_0x19be20);}['calculateArea'](_0x4ad57d){let _0xeabb68=0x0;const _0x1ababe=PolygonUtils['getFaces'](_0x4ad57d);for(let _0x560e2a=0x0;_0x560e2a<_0x1ababe['length']/0x3;_0x560e2a++){const _0x11b14d=_0x4ad57d[_0x1ababe[0x3*_0x560e2a]],_0x3ccdef=_0x4ad57d[_0x1ababe[0x3*_0x560e2a+0x1]],_0x1bb68f=_0x4ad57d[_0x1ababe[0x3*_0x560e2a+0x2]],_0x3235d0=_0x3ccdef['clone']()['sub'](_0x11b14d),_0x7f1fb2=_0x1bb68f['clone']()['sub'](_0x11b14d);_0xeabb68+=_0x3235d0['cross'](_0x7f1fb2)['length']()/0x2;}return _0xeabb68;}['getBarycenter'](_0x2e0b38){const _0x281a9c=_0x2e0b38['length'];let _0x463581=0x0,_0x597b56=0x0,_0x351c87=0x0;return _0x2e0b38['forEach'](_0x1184dc=>{_0x463581+=_0x1184dc['x'],_0x597b56+=_0x1184dc['y'],_0x351c87+=_0x1184dc['z'];}),new THREE['Vector3'](_0x463581/_0x281a9c,_0x597b56/_0x281a9c,_0x351c87/_0x281a9c);}['isPointInPath'](_0x2652cb,_0x3e90f8){const _0x2b6a30=_0x3e90f8===null||_0x3e90f8===void 0x0?void 0x0:_0x3e90f8['ray'];if(!_0x2b6a30)return ![];const _0x4f9e22=this['transToScreenCoord'](_0x2652cb,_0x3e90f8['camera']);if(this['labelBounds']['containsPoint'](_0x4f9e22))return !![];const _0x4d3ecc=0x3*this['tolerance'],_0x31ce75=new THREE['Vector3'](),_0x2e60d8=new THREE['Vector3'](),_0x35cc20=this['points'];for(let _0x510574=0x0;_0x510574<_0x35cc20['length'];_0x510574++){const _0x2ca0b0=_0x35cc20[_0x510574],_0xe882f6=_0x35cc20[_0x510574+0x1]||_0x35cc20[0x0],_0x511648=_0x2b6a30['distanceSqToSegment'](_0x2ca0b0,_0xe882f6,_0x2e60d8,_0x31ce75);if(_0x511648<_0x4d3ecc*_0x4d3ecc)return !![];}const _0x55d741=PolygonUtils['getFaces'](this['points']);for(let _0x484cce=0x0;_0x484cce<_0x55d741['length']/0x3;_0x484cce++){const _0x1a714e=this['points'][_0x55d741[0x3*_0x484cce]],_0xfaaed5=this['points'][_0x55d741[0x3*_0x484cce+0x1]],_0x1acc10=this['points'][_0x55d741[0x3*_0x484cce+0x2]],_0x549e06=_0x2b6a30['intersectTriangle'](_0x1a714e,_0xfaaed5,_0x1acc10,![],_0x2652cb);if(_0x549e06)return !![];}return ![];}['getClassType'](){return 'Area';}}CanvasRender['_registerDrawableClass'](AreaMeasureDrawable);
|
|
44
|
+
|
|
45
|
+
const tempVec=new THREE['Vector3']();class AreaMeasurement extends BaseMeasurement{constructor(_0x7e9028,_0xc526f5,_0x4a5996,_0x352736){super(MeasurementType['Area'],_0x7e9028,_0xc526f5,_0x4a5996,_0x352736);}['activate'](){super['activate']();}['deactivate'](){super['deactivate'](),this['currentMeasureDrawable']&&this['removeDrawable'](this['currentMeasureDrawable']),this['exitButton']&&(this['exitButton']['style']['display']='none');}['createMeasureDrawable'](){if(!this['drawingPoints'])return undefined;return new AreaMeasureDrawable(CommonUtils['guid'](),this['drawingPoints'],this['scale']);}['onMouseMove'](_0x549c36){super['onMouseMove'](_0x549c36);if(this['drawingPoints']&&this['drawingPoints']['length']>0x2&&this['drawingPoints'][0x0]){const _0x37b75f=this['drawingPoints'][0x0];tempVec['subVectors'](_0x549c36,_0x37b75f)['length']()<this['viewer']['getPixelSizeInWorldCoord']()*0x3&&(this['osnapHelper']['activateMarker'](OSnapType['Vertex'],{'point':_0x37b75f,'type':OSnapType['Vertex'],'distance':0x0}),log['info']('[Measure]\x20auto\x20close\x20area\x20measurement.'));}}['onMouseClick'](_0x10ca1e){var _0x122a86,_0x402d1b;super['onMouseClick'](_0x10ca1e);if(this['clickedOnMeasurementDrawable'])return;!this['drawingPoints']&&(this['drawingPoints']=[]);const _0x5e70d4=this['drawingPoints'];if(_0x10ca1e['button']===MouseButton['Right']){this['exitDrawing']();return;}const _0x5dd31d=this['getIntersections'](_0x10ca1e)[0x0];if(!_0x5dd31d){log['warn']('[Measure]\x20No\x20intersection\x20found!');return;}const _0x5bb442=(_0x402d1b=(_0x122a86=this['snapPoint'])===null||_0x122a86===void 0x0?void 0x0:_0x122a86['clone']())!==null&&_0x402d1b!==void 0x0?_0x402d1b:_0x5dd31d===null||_0x5dd31d===void 0x0?void 0x0:_0x5dd31d['point']['clone']();if(this['drawingPoints']&&this['drawingPoints']['length']>0x2&&this['drawingPoints'][0x0]){const _0x17ed45=this['drawingPoints'][0x0];if(tempVec['subVectors'](_0x5bb442,_0x17ed45)['length']()<this['viewer']['getPixelSizeInWorldCoord']()*0x3){log['info']('[Measure]\x20auto\x20close\x20area\x20measurement.'),this['touchDowned']=![],this['exitDrawing']();return;}}if(this['drawingPoints'][0x0]&&MathUtils['areVector3sEqual'](this['drawingPoints'][0x0],_0x5bb442))return;_0x5e70d4['push'](_0x5bb442),this['lastMouseDownPosition']=_0x5bb442,_0x5e70d4['length']===0x1&&(this['dispatchEvent']('firstpointpicked'),this['completed']=![]),this['createOrUpdateMeasureDrawable']();}['exitDrawing'](){const _0x1ed558=this['drawingPoints']||[];let _0x1beb62=!![];_0x1ed558['length']<0x3&&(log['warn']('[Measure]\x20If\x20the\x20number\x20of\x20points\x20is\x20less\x20than\x203,\x20the\x20measurement\x20area\x20cannot\x20be\x20formed\x20!'),_0x1beb62=![]);_0x1beb62&&PolygonUtils['isSelfIntersecting'](_0x1ed558)&&(log['warn']('[Measure]\x20The\x20area\x20formed\x20by\x20these\x20points\x20intersects\x20itself,\x20so\x20the\x20correct\x20measurement\x20cannot\x20be\x20obtained\x20!'),_0x1beb62=![]);if(!_0x1beb62){this['drawingPoints']=undefined;this['currentMeasureDrawable']&&(this['removeDrawable'](this['currentMeasureDrawable']),this['currentMeasureDrawable']=undefined);this['completed']=undefined,this['lastMouseDownPosition']=undefined;return;}this['createOrUpdateMeasureDrawable'](),this['complete']();}['complete'](){var _0x3718c4;if(this['completed']===!![])return;(_0x3718c4=this['currentMeasureDrawable'])===null||_0x3718c4===void 0x0?void 0x0:_0x3718c4['setDrawingState'](![]),this['dispatchEvent']('complete',this['currentMeasureDrawable']),this['completed']=!![],this['drawingPoints']=undefined,this['currentMeasureDrawable']=undefined,this['lastMouseDownPosition']=undefined;}['cancel'](){const _0x930e98=this['drawingPoints'];if(_0x930e98&&_0x930e98['length']>0x0){_0x930e98['pop']();_0x930e98['length']===0x0&&(this['currentMeasureDrawable']&&(this['removeDrawable'](this['currentMeasureDrawable']),this['currentMeasureDrawable']=undefined),this['completed']=!![]);if(this['lastMoveEvent']){const _0x4fdbd7=this['getIntersections'](this['lastMoveEvent'])[0x0];_0x4fdbd7&&this['onMouseMove'](_0x4fdbd7['point']);}}this['osnapHelper']['deactivate'](),this['lastMouseDownPosition']=undefined;}['setTooltipContent'](){var _0x47b723;const _0x145fc9=t$c('areaMeasurement');_0x145fc9&&this['tooltip']&&((_0x47b723=this['tooltip'])===null||_0x47b723===void 0x0?void 0x0:_0x47b723['setContent'](_0x145fc9));}['getScale'](){return this['scale'];}['setScale'](_0x49ea77){this['scale']=_0x49ea77;const _0x269e61=this['drawList']['getDrawables']();for(const _0x34cbff of _0x269e61){const _0x26a977=_0x34cbff[0x1];_0x26a977 instanceof AreaMeasureDrawable&&(_0x26a977['scale']=_0x49ea77);}}}
|
|
46
|
+
|
|
47
|
+
class CoordinateMeasureDrawable extends BaseMeasureDrawable{constructor(_0x2333bd,_0xf6994a){super(_0x2333bd,_0xf6994a),this['type']=MeasurementType['Coordinate'],this['update'](_0xf6994a);}['draw'](_0x15bfc2,_0x17d81d){this['drawText'](_0x15bfc2,_0x17d81d),_0x15bfc2['save'](),_0x15bfc2['lineWidth']=BaseMeasureDrawable['LINE_WIDTH'],_0x15bfc2['strokeStyle']=BaseMeasureDrawable['MAJOR_COLOR'],_0x15bfc2['fillStyle']=BaseMeasureDrawable['AREA_FILL_COLOR'];const _0x30d73b=this['points'];_0x15bfc2['beginPath'](),_0x30d73b['forEach'](_0x2232eb=>{const _0x4e0f97=this['transToScreenCoord'](_0x2232eb,_0x17d81d);_0x15bfc2['arc'](_0x4e0f97['x'],_0x4e0f97['y'],BaseMeasureDrawable['POINT_RADIUS'],0x0,Math['PI']*0x2);}),_0x15bfc2['fill'](),_0x15bfc2['stroke'](),_0x15bfc2['restore']();}['drawText'](_0x29f197,_0xdca102){const _0x16218a=this['points'][0x0];MathUtils['areNumbersEqual'](_0x16218a['x'],0x0);const _0x3102b1=MathUtils['areNumbersEqual'](_0x16218a['x'],0x0)?0x0:_0x16218a['x'],_0x346f7a=MathUtils['areNumbersEqual'](_0x16218a['y'],0x0)?0x0:_0x16218a['y'],_0x336bf0=MathUtils['areNumbersEqual'](_0x16218a['z'],0x0)?0x0:_0x16218a['z'];this['label']=showPrecisionValue(_0x3102b1,0x2)+',\x20'+showPrecisionValue(_0x346f7a,0x2)+',\x20'+showPrecisionValue(_0x336bf0,0x2),_0x29f197['font']=BaseMeasureDrawable['LABEL_FONT_SIZE']+'px\x20Arial';const _0x2622ee=_0x29f197['measureText'](this['label'])['width']*1.2,_0x12d0f8=BaseMeasureDrawable['LABEL_FONT_SIZE']*1.5;this['labelPositon']=this['transToScreenCoord'](_0x16218a,_0xdca102),this['labelPositon']['y']-=_0x12d0f8/0x2,this['labelBounds']['setFromCenterAndSize'](this['labelPositon'],new THREE['Vector2'](_0x2622ee,_0x12d0f8)),this['drawRoundRect'](_0x29f197,this['labelPositon']['x']-_0x2622ee/0x2,this['labelPositon']['y']-_0x12d0f8/0x2,_0x2622ee,_0x12d0f8,0x4),_0x29f197['save'](),_0x29f197['fillStyle']=BaseMeasureDrawable['MINOR_COLOR'],_0x29f197['textBaseline']='middle',_0x29f197['textAlign']='center',_0x29f197['fillText'](this['label'],this['labelPositon']['x'],this['labelPositon']['y']),_0x29f197['restore']();}['getClassType'](){return 'Coordinate';}}CanvasRender['_registerDrawableClass'](CoordinateMeasureDrawable);
|
|
48
|
+
|
|
49
|
+
class CoordinateMeasurement extends BaseMeasurement{constructor(_0x34c477,_0x3c4765,_0x5ad22b,_0x287963){super(MeasurementType['Coordinate'],_0x34c477,_0x3c4765,_0x5ad22b,_0x287963);}['createMeasureDrawable'](){if(!this['drawingPoints'])return undefined;return new CoordinateMeasureDrawable(CommonUtils['guid'](),this['drawingPoints']);}['onMouseClick'](_0x5bf985){var _0x13e2ac;super['onMouseClick'](_0x5bf985);if(this['clickedOnMeasurementDrawable'])return;!this['drawingPoints']&&(this['drawingPoints']=[]);if(_0x5bf985['button']===MouseButton['Right']){this['exitDrawing']();return;}const _0x54557f=this['getIntersections'](_0x5bf985)[0x0];if(!_0x54557f)return;const _0x176a0e=(_0x13e2ac=this['snapPoint'])!==null&&_0x13e2ac!==void 0x0?_0x13e2ac:_0x54557f===null||_0x54557f===void 0x0?void 0x0:_0x54557f['point'],_0x5df002=this['drawingPoints'];_0x5df002['push'](_0x176a0e),this['lastMouseDownPosition']=_0x176a0e,_0x5df002['length']===0x1&&(this['dispatchEvent']('firstpointpicked'),this['completed']=![]),this['createOrUpdateMeasureDrawable'](_0x176a0e),_0x5df002['length']>=0x1&&this['complete']();}['exitDrawing'](){this['drawingPoints']=undefined,this['currentMeasureDrawable']&&(this['removeDrawable'](this['currentMeasureDrawable']),this['currentMeasureDrawable']=undefined),this['completed']=undefined,this['lastMouseDownPosition']=undefined;}['complete'](){if(this['completed']===!![])return;this['dispatchEvent']('complete',this['currentMeasureDrawable']),this['completed']=!![],this['drawingPoints']=undefined,this['currentMeasureDrawable']=undefined,this['lastMouseDownPosition']=undefined;}['cancel'](){const _0x4e92a8=this['drawingPoints'];if(_0x4e92a8&&_0x4e92a8['length']>0x0){_0x4e92a8['pop']();_0x4e92a8['length']===0x0&&(this['completed']=!![]);if(this['lastMoveEvent']){const _0x574b31=this['getIntersections'](this['lastMoveEvent'])[0x0];_0x574b31&&this['onMouseMove'](_0x574b31['point']);}}this['osnapHelper']['deactivate'](),this['drawingPoints']=undefined,this['currentMeasureDrawable']=undefined,this['lastMouseDownPosition']=undefined;}['setTooltipContent'](){var _0x5e9272;const _0x1fbef2=t$c('measure');_0x1fbef2&&this['tooltip']&&((_0x5e9272=this['tooltip'])===null||_0x5e9272===void 0x0?void 0x0:_0x5e9272['setContent'](_0x1fbef2));}}
|
|
50
|
+
|
|
51
|
+
class DistanceMeasureDrawable extends BaseMeasureDrawable{constructor(_0x58865f,_0x561acd,_0x1b67c3){super(_0x58865f,_0x561acd),this['type']=MeasurementType['Distance'],this['scale']=_0x1b67c3,this['update'](_0x561acd);}['draw'](_0x520b73,_0x364b55){const _0x5c78f1=this['points'];_0x520b73['save'](),_0x520b73['lineWidth']=BaseMeasureDrawable['LINE_WIDTH'],_0x520b73['strokeStyle']=BaseMeasureDrawable['MAJOR_COLOR'],_0x520b73['beginPath'](),_0x5c78f1['forEach']((_0x4bb843,_0x1cbc71)=>{const _0x284f9e=this['transToScreenCoord'](_0x4bb843,_0x364b55);_0x1cbc71===0x0?_0x520b73['moveTo'](_0x284f9e['x'],_0x284f9e['y']):_0x520b73['lineTo'](_0x284f9e['x'],_0x284f9e['y']);}),_0x520b73['closePath'](),_0x520b73['stroke'](),_0x520b73['restore']();if(this['drawing']){const _0xcbe58f=this['points']['length']===0x1?this['points']:this['points']['slice'](0x0,this['points']['length']-0x1);this['drawPoints'](_0x520b73,_0x364b55,_0xcbe58f);}else !this['selected']&&this['drawVerticalLine'](_0x520b73,_0x364b55);this['drawText'](_0x520b73,_0x364b55);}['drawText'](_0x7b2347,_0x41ba72){if(this['points']['length']<0x2)return;const [_0x1370bb,_0x4cd34e]=this['points'];let _0x4e92a4=_0x1370bb['distanceTo'](_0x4cd34e);this['scale']&&(_0x4e92a4*=this['scale']),this['label']=''+showPrecisionValue(_0x4e92a4,0x2),this['labelPositon']=this['transToScreenCoord'](new THREE['Vector3']()['lerpVectors'](_0x1370bb,_0x4cd34e,0.5),_0x41ba72),super['drawText'](_0x7b2347,_0x41ba72);}['drawVerticalLine'](_0x5866d2,_0xef22ec){if(this['points']['length']<0x2)return;const [_0x4c6acc,_0x45ded6]=this['points']['map'](_0x53c4ff=>this['transToScreenCoord'](_0x53c4ff,_0xef22ec)),[_0x4b1642,_0x18c9e1]=this['getShortLineBySegments'](_0x4c6acc,_0x45ded6),[_0x41665f,_0x9e92a1]=this['getShortLineBySegments'](_0x45ded6,_0x4c6acc);_0x5866d2['save'](),_0x5866d2['lineWidth']=BaseMeasureDrawable['LINE_WIDTH'],_0x5866d2['strokeStyle']=BaseMeasureDrawable['MAJOR_COLOR'],_0x5866d2['beginPath'](),_0x5866d2['moveTo'](_0x4b1642['x'],_0x4b1642['y']),_0x5866d2['lineTo'](_0x18c9e1['x'],_0x18c9e1['y']),_0x5866d2['moveTo'](_0x41665f['x'],_0x41665f['y']),_0x5866d2['lineTo'](_0x9e92a1['x'],_0x9e92a1['y']),_0x5866d2['stroke'](),_0x5866d2['restore']();}['getShortLineBySegments'](_0x3592e0,_0xf0ba90){const _0x23828b=new THREE['Vector2']()['subVectors'](_0xf0ba90,_0x3592e0)['normalize'](),_0x57086b=DistanceMeasureDrawable['SHORT_LINE_LENGTH']/0x2,_0x25fdf1=Math['PI']/0x2,_0x51c1fc=_0x23828b['clone']()['rotateAround'](new THREE['Vector2'](),_0x25fdf1)['normalize']()['multiplyScalar'](_0x57086b)['add'](_0x3592e0),_0x11b4e4=_0x23828b['clone']()['rotateAround'](new THREE['Vector2'](),-_0x25fdf1)['normalize']()['multiplyScalar'](_0x57086b)['add'](_0x3592e0);return [_0x51c1fc,_0x11b4e4];}['getClassType'](){return 'Distance';}['setScale'](_0x5eaa36){this['scale']=_0x5eaa36;}}DistanceMeasureDrawable['SHORT_LINE_LENGTH']=0xc,CanvasRender['_registerDrawableClass'](DistanceMeasureDrawable);
|
|
52
|
+
|
|
53
|
+
class DistanceMeasurement extends BaseMeasurement{constructor(_0x2bbe48,_0x4f62ed,_0x1d3591,_0x49bea9){super(MeasurementType['Distance'],_0x2bbe48,_0x4f62ed,_0x1d3591,_0x49bea9);}['createMeasureDrawable'](){if(!this['drawingPoints'])return undefined;return new DistanceMeasureDrawable(CommonUtils['guid'](),this['drawingPoints'],this['scale']);}['onMouseClick'](_0x33ad7b){var _0x115ab4;super['onMouseClick'](_0x33ad7b);if(this['clickedOnMeasurementDrawable'])return;!this['drawingPoints']&&(this['drawingPoints']=[]);if(_0x33ad7b['button']===MouseButton['Right']){this['exitDrawing']();return;}const _0x4ed4a3=this['getIntersections'](_0x33ad7b)[0x0];if(!_0x4ed4a3)return;const _0xd964c5=(_0x115ab4=this['snapPoint'])!==null&&_0x115ab4!==void 0x0?_0x115ab4:_0x4ed4a3===null||_0x4ed4a3===void 0x0?void 0x0:_0x4ed4a3['point'];if(this['drawingPoints'][0x0]&&MathUtils['areVector3sEqual'](this['drawingPoints'][0x0],_0xd964c5))return;const _0x1a71b3=this['drawingPoints'];_0x1a71b3['length']<0x2&&_0x1a71b3['push'](_0xd964c5),this['lastMouseDownPosition']=_0xd964c5,_0x1a71b3['length']===0x1&&(this['dispatchEvent']('firstpointpicked'),this['completed']=![]),this['createOrUpdateMeasureDrawable'](),_0x1a71b3['length']>=0x2&&this['complete']();}['exitDrawing'](){this['drawingPoints']=undefined,this['currentMeasureDrawable']&&(this['removeDrawable'](this['currentMeasureDrawable']),this['currentMeasureDrawable']=undefined),this['completed']=undefined,this['lastMouseDownPosition']=undefined;}['complete'](){var _0x56a0d4;if(this['completed']===!![])return;(_0x56a0d4=this['currentMeasureDrawable'])===null||_0x56a0d4===void 0x0?void 0x0:_0x56a0d4['setDrawingState'](![]),this['dispatchEvent']('complete',this['currentMeasureDrawable']),this['completed']=!![],this['drawingPoints']=undefined,this['currentMeasureDrawable']=undefined,this['lastMouseDownPosition']=undefined;}['cancel'](){const _0x3f329e=this['drawingPoints'];if(_0x3f329e&&_0x3f329e['length']>0x0)_0x3f329e['pop'](),_0x3f329e['length']===0x0&&(this['completed']=!![]),this['currentMeasureDrawable']&&this['removeDrawable'](this['currentMeasureDrawable']);this['osnapHelper']['deactivate'](),this['drawingPoints']=undefined,this['currentMeasureDrawable']=undefined,this['lastMouseDownPosition']=undefined;}['deactivate'](){super['deactivate'](),this['currentMeasureDrawable']&&this['removeDrawable'](this['currentMeasureDrawable']);}['setTooltipContent'](){var _0xda1a77;const _0x4b567b=t$c('measure');_0x4b567b&&this['tooltip']&&((_0xda1a77=this['tooltip'])===null||_0xda1a77===void 0x0?void 0x0:_0xda1a77['setContent'](_0x4b567b));}['getScale'](){return this['scale'];}['setScale'](_0x3544b4){this['scale']=_0x3544b4;const _0x85f0d9=this['drawList']['getDrawables']();for(const _0x5b535f of _0x85f0d9){const _0x4f3dd7=_0x5b535f[0x1];(_0x4f3dd7 instanceof DistanceMeasureDrawable||_0x4f3dd7 instanceof AreaMeasureDrawable)&&(_0x4f3dd7['scale']=_0x3544b4);}}}
|
|
54
|
+
|
|
55
|
+
class AddMeasurementCommand extends Command{constructor(_0x3ea73e,_0x46f6a2){super('AddMeasurement'),this['manager']=_0x3ea73e,this['data']=_0x46f6a2;}['undo'](){const _0x22c19e=this['manager']['getById'](this['data']['id']);return _0x22c19e?(this['manager']['remove'](_0x22c19e),!![]):![];}['redo'](){const _0x1417d5=this['manager']['create'](this['data']);return _0x1417d5?(this['manager']['add'](_0x1417d5),!![]):![];}}
|
|
56
|
+
|
|
57
|
+
class RemoveMeasurementCommand extends Command{constructor(_0x519082,_0x4938af){super('RemoveMeasurement'),this['manager']=_0x519082,this['data']=_0x4938af;}['undo'](){const _0x5dff25=this['manager']['create'](this['data']);return _0x5dff25?(this['manager']['add'](_0x5dff25),!![]):![];}['redo'](){const _0x3fc0d5=this['manager']['getById'](this['data']['id']);return _0x3fc0d5?(this['manager']['remove'](_0x3fc0d5),!![]):![];}}
|
|
58
|
+
|
|
59
|
+
class MeasurementPlugin extends Plugin{constructor(_0x4e3164,_0x1e14d2){var _0x293d38,_0x25f220;const _0x3e45d3=(_0x1e14d2===null||_0x1e14d2===void 0x0?void 0x0:_0x1e14d2['id'])||MeasurementPlugin['DEFAULT_ID'];super(_0x4e3164,{'id':_0x3e45d3}),this['selectedDrawable']=undefined,this['drawableList']=new DrawableList('measure'),this['drawableHelperList']=new DrawableList('touchHelper'),this['snapToleranceInPixel']=0x3,this['measurements']={},this['activeMeasurementType']=undefined,this['keydown']=_0x547992=>{var _0x5a38f7;const _0x5b7f2b=this['getActiveMeasurementType']();let _0x33f32b=undefined;_0x5b7f2b&&(_0x33f32b=this['measurements'][_0x5b7f2b]);const _0x52a6c6=this['selectedDrawable'];_0x52a6c6&&_0x547992['code']==='Delete'&&(this['remove'](_0x52a6c6),(_0x5a38f7=this['viewer']['getUndoManager']())===null||_0x5a38f7===void 0x0?void 0x0:_0x5a38f7['addCommand'](new RemoveMeasurementCommand(this,_0x52a6c6['getData']())),this['activeMeasurementType']&&this['measurements'][this['activeMeasurementType']]['clearClickedDrawable']());if(_0x547992['ctrlKey']&&_0x547992['code']==='KeyZ'){if(_0x33f32b===null||_0x33f32b===void 0x0?void 0x0:_0x33f32b['isMeasuring'])_0x33f32b['cancel']();}if(_0x547992['ctrlKey']&&_0x547992['code']==='KeyY'){if(_0x33f32b===null||_0x33f32b===void 0x0?void 0x0:_0x33f32b['isMeasuring']);}},this['cfg']=_0x1e14d2||{'id':_0x3e45d3};const _0x5bde28=_0x4e3164['getInputManager']();if(!_0x5bde28)throw 'InputManager\x20init\x20error';this['inputManager']=_0x5bde28,this['overlayRender']=this['viewer']['getOverlayRender'](),(_0x293d38=this['overlayRender'])===null||_0x293d38===void 0x0?void 0x0:_0x293d38['addDrawableList'](this['drawableHelperList']),(_0x25f220=this['overlayRender'])===null||_0x25f220===void 0x0?void 0x0:_0x25f220['addDrawableList'](this['drawableList']);const _0x25056f=new OSnapHelper(this['overlayRender']);_0x4e3164['is3d']()&&(_0x25056f['setOSnapTypeEnabled'](OSnapType['Intersection'],![]),_0x25056f['setOSnapTypeEnabled'](OSnapType['CircleCenter'],![])),this['measurements'][MeasurementType['Distance']]=new DistanceMeasurement(_0x4e3164,_0x5bde28,this['drawableList'],_0x25056f),this['measurements'][MeasurementType['Area']]=new AreaMeasurement(_0x4e3164,_0x5bde28,this['drawableList'],_0x25056f),this['measurements'][MeasurementType['Angle']]=new AngleMeasurement(_0x4e3164,_0x5bde28,this['drawableList'],_0x25056f),this['measurements'][MeasurementType['Coordinate']]=new CoordinateMeasurement(_0x4e3164,_0x5bde28,this['drawableList'],_0x25056f),this['osnapHelper']=_0x25056f,this['inputManager']['addEventListener']('wheel',()=>{this['updateSnapTolerance']();}),this['viewer']['addEventListener'](ViewerEvent['LayoutChange'],()=>{this['updateSnapTolerance']();}),this['initEvents']();}['initEvents'](){Object['values'](this['measurements'])['forEach'](_0x55f6b9=>{_0x55f6b9['addEventListener']('complete',_0x208d52=>{this['viewer']['dispatchEvent'](ViewerEvent['MeasurementAdd'],_0x208d52['getData']()),this['viewer']['getUndoManager']()['addCommand'](new AddMeasurementCommand(this,_0x208d52['getData']())),this['select'](_0x208d52);}),_0x55f6b9['addEventListener']('beforeadd',_0x4147bb=>{this['add'](_0x4147bb,![]);}),_0x55f6b9['addEventListener']('update',()=>{this['render']();}),_0x55f6b9['addEventListener']('beforeremove',_0x3efb73=>{this['remove'](_0x3efb73,![]);}),_0x55f6b9['addEventListener']('deactivate',()=>{this['osnapHelper']['deactivate']();}),_0x55f6b9['addEventListener']('firstpointpicked',()=>{this['unselect']();}),_0x55f6b9['addEventListener']('onclick',_0x58d4be=>{this['select'](_0x58d4be);});});}get['canvas'](){var _0x431da2;return (_0x431da2=this['viewer']['renderer'])===null||_0x431da2===void 0x0?void 0x0:_0x431da2['domElement'];}get['raycaster'](){return this['viewer']['getRaycaster']();}['add'](_0x403975,_0x80f566=!![]){this['drawableList']['addDrawable'](_0x403975),this['selectedDrawable']=_0x403975,this['render'](),_0x80f566&&this['viewer']['dispatchEvent'](ViewerEvent['MeasurementAdd'],_0x403975['getData']());}['create'](_0x599f71){return CanvasRender['createDrawable'](_0x599f71);}['remove'](_0x5330d1,_0xaa9b4e=!![]){this['drawableList']['removeDrawable'](_0x5330d1),this['render'](),_0xaa9b4e&&this['viewer']['dispatchEvent'](ViewerEvent['MeasurementRemove'],_0x5330d1['getData']());}['setSnapTolerance'](_0x2780c2){this['snapToleranceInPixel']=_0x2780c2,this['updateSnapTolerance']();}['updateSnapTolerance'](){const _0x21953d=this['viewer']['getPixelSizeInWorldCoord']()*this['snapToleranceInPixel'];this['osnapHelper']['setSnapTolerance'](_0x21953d);}['activate'](_0x42a76f){this['activeMeasurementType']&&this['deactivate']();this['measurements'][_0x42a76f]?(this['measurements'][_0x42a76f]['activate'](),this['activeMeasurementType']=_0x42a76f,this['updateSnapTolerance']()):(this['activeMeasurementType']=undefined,log['error']('[Measure]\x20Failed\x20to\x20activate\x20measurement,\x20type:',_0x42a76f));const {width:_0x1f2380,height:_0x27e1ce}=this['canvas']['getBoundingClientRect']();DeviceUtils['isMobile']&&this['canvas']&&!this['mobileTouchHelper']&&(this['mobileTouchHelper']=new MobileTouchHelperDrawable(new THREE['Vector2'](_0x1f2380/0x2,_0x27e1ce/0x2)),this['drawableHelperList']['addDrawable'](this['mobileTouchHelper'])),this['mobileTouchHelper']&&(this['mobileTouchHelper']['setPosition'](new THREE['Vector2'](_0x1f2380/0x2,_0x27e1ce/0x2)),this['measurements'][_0x42a76f]['setTouchHelper'](this['mobileTouchHelper']),this['mobileTouchHelper']['visible']=!![],this['render']()),this['enableSelection']=this['viewer']['enableSelection'],this['viewer']['enableSelection']=![],this['inputManager']['addEventListener']('keydown',this['keydown']);}['deactivate'](){this['unselect']();const _0x357655=this['activeMeasurementType'];_0x357655&&this['measurements'][_0x357655]['deactivate'](),this['activeMeasurementType']=undefined,this['mobileTouchHelper']&&(this['mobileTouchHelper']['visible']=![],this['render']()),this['enableSelection']!=null&&(this['viewer']['enableSelection']=this['enableSelection']),this['enableSelection']=undefined,this['inputManager']['removeEventListener']('keydown',this['keydown']);}['getActiveMeasurementType'](){return this['activeMeasurementType'];}['isActive'](){const _0x593607=this['activeMeasurementType'];if(_0x593607)return this['measurements'][_0x593607]['isActive'];return !!this['getActiveMeasurementType']();}['isMeasuring'](){const _0x49c607=this['activeMeasurementType'];if(_0x49c607)return this['measurements'][_0x49c607]['isMeasuring'];return ![];}['getData'](){return this['drawableList']['getDrawableDatas']();}['cancel'](){const _0x50e993=this['activeMeasurementType'];_0x50e993&&this['measurements'][_0x50e993]['exitDrawing']();}['setData'](_0x2fab21){this['viewer']['getUndoManager']()['startTransaction'](),_0x2fab21['forEach'](_0x511032=>{const _0x4a648b=this['measurements'][_0x511032['type']];_0x4a648b?_0x511032['points']['length']>=0x2?(this['add'](CanvasRender['createDrawable'](_0x511032)),this['viewer']['getUndoManager']()['addCommand'](new AddMeasurementCommand(this,_0x511032))):log['info']('[Measure]\x20Invalid\x20points\x20found\x20in\x20MeasurementData:',_0x511032):log['warn']('[Measure]\x20Failed\x20to\x20add\x20measurement\x20data\x20for',_0x511032);}),this['viewer']['getUndoManager']()['endTransaction']();}['setVisibleById'](_0xfe9e61,_0x16d916){const _0xbf57b1=this['drawableList']['getDrawables'](),_0x5c4cbe=_0xbf57b1['get'](_0xfe9e61);if(!_0x5c4cbe)return ![];return _0x5c4cbe['visible']!==_0x16d916&&(_0x5c4cbe['visible']=_0x16d916,this['render']()),!![];}['setVisibilities'](_0x3e5cc5){let _0x1e84ed=![];this['drawableList']['getDrawables']()['forEach'](_0x5e735a=>{_0x5e735a['visible']!==_0x3e5cc5&&(_0x5e735a['visible']=_0x3e5cc5,_0x1e84ed=!![]);}),_0x1e84ed&&this['render']();}['clear'](){const _0x4d2778=this['activeMeasurementType'];_0x4d2778&&this['measurements'][_0x4d2778]['exitDrawing'](),this['drawableList']['clear'](),this['render']();}['getById'](_0x24d73b){return this['drawableList']['getDrawableById'](_0x24d73b);}['removeById'](_0x174afa){const _0x4b0e5c=this['drawableList']['getDrawableById'](_0x174afa);if(!_0x4b0e5c){log['warn']('[Measure]\x20Failed\x20to\x20find\x20measurement\x20by\x20id:',_0x174afa);return;}this['remove'](_0x4b0e5c);}['selectById'](_0x283c35){const _0x458d37=this['drawableList']['getDrawableById'](_0x283c35);_0x458d37&&this['select'](_0x458d37);}['select'](_0x17a19d){this['unselect'](![]),_0x17a19d['selected']=!![],this['selectedDrawable']=_0x17a19d,this['render']();}['unselect'](_0x19228a=!![]){this['selectedDrawable']&&(this['selectedDrawable']['selected']=![],_0x19228a&&this['render']()),this['selectedDrawable']=undefined;}['getScale'](){const _0x217ed5=this['measurements'][MeasurementType['Distance']];return _0x217ed5['getScale']();}['setScale'](_0x1c4b35){if(!_0x1c4b35||_0x1c4b35<=0x0){log['error']('[Measure]\x20Invalid\x20scale\x20value:',_0x1c4b35);return;}const _0x17838c=this['measurements'][MeasurementType['Distance']],_0x55beb9=this['measurements'][MeasurementType['Area']];_0x17838c['setScale'](_0x1c4b35),_0x55beb9['setScale'](_0x1c4b35);}['destroy'](){super['destroy'](),this['deactivate'](),this['clear'](),this['drawableHelperList']['clear'](),this['measurements']={},this['osnapHelper']['destroy'](),this['render']();}['render'](_0xaee1e5=![]){var _0x272e44;_0xaee1e5?this['viewer']['enableRender']():(_0x272e44=this['overlayRender'])===null||_0x272e44===void 0x0?void 0x0:_0x272e44['render']();}}MeasurementPlugin['DEFAULT_ID']='MeasurementPlugin';
|
|
60
|
+
|
|
61
|
+
class ContextMenuPlugin extends Plugin{constructor(_0x57a8d1,_0xe3dd3f){const _0x175971=(_0xe3dd3f===null||_0xe3dd3f===void 0x0?void 0x0:_0xe3dd3f['id'])||ContextMenuPlugin['DEFAULT_ID'];super(_0x57a8d1,{'id':_0x175971}),this['itemList']=[],this['handleClick']=()=>{this['hide']();},this['cfg']=_0xe3dd3f||{'id':_0x175971},this['container']=_0x57a8d1['widgetContainer']||document['body'],this['context']={'viewer':_0x57a8d1},this['element']=this['createMenuUI'](ContextMenuItems||[]),window['oncontextmenu']=_0xa5c47a=>_0xa5c47a['preventDefault'](),this['hide'](),this['initEvents']();}['initEvents'](){const _0x45952b=this['viewer']['getInputManager']();if(!_0x45952b)return;let _0x3a2d95=![],_0x207b05=![],_0x54b1e1=0x0,_0x4d808f=0x0;const _0x4bc9ed=_0x5d2e2e=>{const _0x354be8=0x5;if(_0x54b1e1===-0x1||_0x4d808f===-0x1)return ![];return Math['abs'](_0x5d2e2e['x']-_0x54b1e1)<_0x354be8&&Math['abs'](_0x5d2e2e['y']-_0x4d808f)<_0x354be8;};_0x45952b['addEventListener']('pointerdown',()=>{_0x207b05=![],_0x3a2d95=!![],this['hide']();}),_0x45952b['addEventListener']('pointermove',_0x403734=>{_0x3a2d95&&!_0x207b05&&(_0x207b05=!_0x4bc9ed(_0x403734));}),_0x45952b['addEventListener']('pointerup',_0x252e62=>{_0x3a2d95=![];if(_0x207b05){_0x207b05=![],this['hide']();return;}_0x54b1e1=_0x252e62['x'],_0x4d808f=_0x252e62['y'];const _0xba531d=this['viewer']['findPlugin'](MeasurementPlugin['DEFAULT_ID']);_0x252e62['button']===MouseButton['Right']&&!(_0xba531d===null||_0xba531d===void 0x0?void 0x0:_0xba531d['isActive']())?this['showContextMenu'](_0x252e62):this['hide']();}),document['addEventListener']('click',this['handleClick']);}['showContextMenu'](_0x59cefd){const _0x185b22=this['context'],_0x24210f=this['viewer'],_0x343734=new THREE['Vector2'](_0x59cefd['x'],_0x59cefd['y']),_0x8e0e83=_0x24210f['pickObject'](_0x343734);this['context']=Object['assign'](Object['assign']({},_0x185b22),{'hit':_0x8e0e83});const {x:_0x2b60b0,y:_0x2511f3}=_0x59cefd;this['show'](_0x2b60b0,_0x2511f3);}['isEnabled'](_0xc54b7f){if(_0xc54b7f['getEnabled'])return _0xc54b7f['getEnabled'](this['context']);if(_0xc54b7f['enabled']!==undefined)return _0xc54b7f['enabled'];return !![];}['isShown'](_0x1d3455){if(_0x1d3455['getShown'])return _0x1d3455['getShown'](this['context']);if(_0x1d3455['shown']!==undefined)return _0x1d3455['shown'];return !![];}['getTitle'](_0x31b4bc){return _0x31b4bc['title']||_0x31b4bc['getTitle']&&_0x31b4bc['getTitle'](this['context'])||'';}['createMenuUI'](_0x31d5e0){const _0x1f0f3e=document['createElement']('div');_0x1f0f3e['id']=this['id'],_0x1f0f3e['classList']['add']('context-menu');const _0x355daf=this['createMenuGroup'](_0x31d5e0);return _0x1f0f3e['append'](..._0x355daf),this['container']['appendChild'](_0x1f0f3e),_0x1f0f3e;}['createMenuGroup'](_0x42b144){return map$1(_0x42b144,_0x223036=>{const _0xb7969d=document['createElement']('ul');return forEach(_0x223036,_0x58a266=>{const _0x5046a4=this['createMenuItem'](_0x58a266);_0xb7969d['append'](_0x5046a4);}),_0xb7969d;});}['createMenuItem'](_0x1c9a51){const _0x298515=document['createElement']('li');return _0x298515['innerHTML']=this['getTitle'](_0x1c9a51),_0x298515['onclick']=()=>_0x1c9a51['doAction']&&_0x1c9a51['doAction'](this['context']),this['isEnabled'](_0x1c9a51)?_0x298515['classList']['remove']('disabled'):_0x298515['classList']['add']('disabled'),this['isShown'](_0x1c9a51)?_0x298515['removeAttribute']('hidden'):_0x298515['setAttribute']('hidden',''),this['itemList']['push']([_0x1c9a51,_0x298515]),_0x298515;}['updateMenuItems'](){forEach(this['itemList'],([_0x2b11d3,_0x3bcc55])=>{this['isEnabled'](_0x2b11d3)?_0x3bcc55['classList']['remove']('disabled'):_0x3bcc55['classList']['add']('disabled'),this['isShown'](_0x2b11d3)?_0x3bcc55['removeAttribute']('hidden'):_0x3bcc55['setAttribute']('hidden',''),_0x3bcc55['innerHTML']=this['getTitle'](_0x2b11d3);});}['showMenuElement'](_0x1427d3,_0xd02369){const _0x19d7df=this['element']['offsetHeight'],_0x37efb8=this['element']['offsetWidth'];_0xd02369+_0x19d7df>window['innerHeight']&&(_0xd02369=window['innerHeight']-_0x19d7df-0x5),_0x1427d3+_0x37efb8>window['innerWidth']&&(_0x1427d3=window['innerWidth']-_0x37efb8-0x5),this['element']['style']['left']=_0x1427d3+'px',this['element']['style']['top']=_0xd02369+'px';}['show'](_0x51949c,_0x506f6b){this['updateMenuItems'](),this['element']['removeAttribute']('hidden'),this['showMenuElement'](_0x51949c,_0x506f6b);}['hide'](){this['element']['setAttribute']('hidden','');}['destroy'](){document['removeEventListener']('click',this['handleClick']),this['container']['removeChild'](this['element']);}}ContextMenuPlugin['DEFAULT_ID']='ContextMenuPlugin';
|
|
62
|
+
|
|
63
|
+
function ___$insertStyle(_0x5cc07b){if(typeof window==='undefined')return;var _0x23a43e=document['createElement']('style');return _0x23a43e['setAttribute']('type','text/css'),_0x23a43e['innerHTML']=_0x5cc07b,document['head']['appendChild'](_0x23a43e),_0x5cc07b;}function colorToString(_0xc73403,_0x4fba6f){var _0x4ad77a=_0xc73403['__state']['conversionName']['toString'](),_0x3e3617=Math['round'](_0xc73403['r']),_0x20a69f=Math['round'](_0xc73403['g']),_0x311934=Math['round'](_0xc73403['b']),_0x26b604=_0xc73403['a'],_0x1f3b26=Math['round'](_0xc73403['h']),_0x246f24=_0xc73403['s']['toFixed'](0x1),_0x2ab4f0=_0xc73403['v']['toFixed'](0x1);if(_0x4fba6f||_0x4ad77a==='THREE_CHAR_HEX'||_0x4ad77a==='SIX_CHAR_HEX'){var _0x16d51b=_0xc73403['hex']['toString'](0x10);while(_0x16d51b['length']<0x6){_0x16d51b='0'+_0x16d51b;}return '#'+_0x16d51b;}else {if(_0x4ad77a==='CSS_RGB')return 'rgb('+_0x3e3617+','+_0x20a69f+','+_0x311934+')';else {if(_0x4ad77a==='CSS_RGBA')return 'rgba('+_0x3e3617+','+_0x20a69f+','+_0x311934+','+_0x26b604+')';else {if(_0x4ad77a==='HEX')return '0x'+_0xc73403['hex']['toString'](0x10);else {if(_0x4ad77a==='RGB_ARRAY')return '['+_0x3e3617+','+_0x20a69f+','+_0x311934+']';else {if(_0x4ad77a==='RGBA_ARRAY')return '['+_0x3e3617+','+_0x20a69f+','+_0x311934+','+_0x26b604+']';else {if(_0x4ad77a==='RGB_OBJ')return '{r:'+_0x3e3617+',g:'+_0x20a69f+',b:'+_0x311934+'}';else {if(_0x4ad77a==='RGBA_OBJ')return '{r:'+_0x3e3617+',g:'+_0x20a69f+',b:'+_0x311934+',a:'+_0x26b604+'}';else {if(_0x4ad77a==='HSV_OBJ')return '{h:'+_0x1f3b26+',s:'+_0x246f24+',v:'+_0x2ab4f0+'}';else {if(_0x4ad77a==='HSVA_OBJ')return '{h:'+_0x1f3b26+',s:'+_0x246f24+',v:'+_0x2ab4f0+',a:'+_0x26b604+'}';}}}}}}}}}return 'unknown\x20format';}var ARR_EACH=Array['prototype']['forEach'],ARR_SLICE=Array['prototype']['slice'],Common={'BREAK':{},'extend':function extend(_0x327b39){return this['each'](ARR_SLICE['call'](arguments,0x1),function(_0x1138d1){var _0x3b1f18=this['isObject'](_0x1138d1)?Object['keys'](_0x1138d1):[];_0x3b1f18['forEach'](function(_0x394855){!this['isUndefined'](_0x1138d1[_0x394855])&&(_0x327b39[_0x394855]=_0x1138d1[_0x394855]);}['bind'](this));},this),_0x327b39;},'defaults':function defaults(_0x488fcd){return this['each'](ARR_SLICE['call'](arguments,0x1),function(_0x30984b){var _0x3fcebf=this['isObject'](_0x30984b)?Object['keys'](_0x30984b):[];_0x3fcebf['forEach'](function(_0x459194){this['isUndefined'](_0x488fcd[_0x459194])&&(_0x488fcd[_0x459194]=_0x30984b[_0x459194]);}['bind'](this));},this),_0x488fcd;},'compose':function compose(){var _0x3a890c=ARR_SLICE['call'](arguments);return function(){var _0x2f3714=ARR_SLICE['call'](arguments);for(var _0x56480e=_0x3a890c['length']-0x1;_0x56480e>=0x0;_0x56480e--){_0x2f3714=[_0x3a890c[_0x56480e]['apply'](this,_0x2f3714)];}return _0x2f3714[0x0];};},'each':function each(_0x3dc1dd,_0x416c7b,_0x3e3ca3){if(!_0x3dc1dd)return;if(ARR_EACH&&_0x3dc1dd['forEach']&&_0x3dc1dd['forEach']===ARR_EACH)_0x3dc1dd['forEach'](_0x416c7b,_0x3e3ca3);else {if(_0x3dc1dd['length']===_0x3dc1dd['length']+0x0){var _0x202769=void 0x0,_0xd9ee45=void 0x0;for(_0x202769=0x0,_0xd9ee45=_0x3dc1dd['length'];_0x202769<_0xd9ee45;_0x202769++){if(_0x202769 in _0x3dc1dd&&_0x416c7b['call'](_0x3e3ca3,_0x3dc1dd[_0x202769],_0x202769)===this['BREAK'])return;}}else for(var _0x384000 in _0x3dc1dd){if(_0x416c7b['call'](_0x3e3ca3,_0x3dc1dd[_0x384000],_0x384000)===this['BREAK'])return;}}},'defer':function defer(_0x36a1d1){setTimeout(_0x36a1d1,0x0);},'debounce':function debounce(_0x58bbbd,_0x1b4d99,_0x2c34d5){var _0x5e0a75=void 0x0;return function(){var _0x212a84=this,_0xe3a00=arguments;function _0x5d80d3(){_0x5e0a75=null;if(!_0x2c34d5)_0x58bbbd['apply'](_0x212a84,_0xe3a00);}var _0x29cd20=_0x2c34d5||!_0x5e0a75;clearTimeout(_0x5e0a75),_0x5e0a75=setTimeout(_0x5d80d3,_0x1b4d99),_0x29cd20&&_0x58bbbd['apply'](_0x212a84,_0xe3a00);};},'toArray':function toArray(_0x38b2e5){if(_0x38b2e5['toArray'])return _0x38b2e5['toArray']();return ARR_SLICE['call'](_0x38b2e5);},'isUndefined':function isUndefined(_0x1d2070){return _0x1d2070===undefined;},'isNull':function isNull(_0x5bf1ce){return _0x5bf1ce===null;},'isNaN':function(_0x2ea631){function _0xfe3067(_0x15cedc){return _0x2ea631['apply'](this,arguments);}return _0xfe3067['toString']=function(){return _0x2ea631['toString']();},_0xfe3067;}(function(_0x2d6525){return isNaN(_0x2d6525);}),'isArray':Array['isArray']||function(_0xbe2ac0){return _0xbe2ac0['constructor']===Array;},'isObject':function isObject(_0x32b081){return _0x32b081===Object(_0x32b081);},'isNumber':function isNumber(_0x4a9a50){return _0x4a9a50===_0x4a9a50+0x0;},'isString':function isString(_0x4a6efb){return _0x4a6efb===_0x4a6efb+'';},'isBoolean':function isBoolean(_0x54b9bd){return _0x54b9bd===![]||_0x54b9bd===!![];},'isFunction':function isFunction(_0x3086d6){return _0x3086d6 instanceof Function;}},INTERPRETATIONS=[{'litmus':Common['isString'],'conversions':{'THREE_CHAR_HEX':{'read':function read(_0x3fa09f){var _0x1d6e8a=_0x3fa09f['match'](/^#([A-F0-9])([A-F0-9])([A-F0-9])$/i);if(_0x1d6e8a===null)return ![];return {'space':'HEX','hex':parseInt('0x'+_0x1d6e8a[0x1]['toString']()+_0x1d6e8a[0x1]['toString']()+_0x1d6e8a[0x2]['toString']()+_0x1d6e8a[0x2]['toString']()+_0x1d6e8a[0x3]['toString']()+_0x1d6e8a[0x3]['toString'](),0x0)};},'write':colorToString},'SIX_CHAR_HEX':{'read':function read(_0x2390a6){var _0xd14762=_0x2390a6['match'](/^#([A-F0-9]{6})$/i);if(_0xd14762===null)return ![];return {'space':'HEX','hex':parseInt('0x'+_0xd14762[0x1]['toString'](),0x0)};},'write':colorToString},'CSS_RGB':{'read':function read(_0x5fa476){var _0x501197=_0x5fa476['match'](/^rgb\(\s*(\S+)\s*,\s*(\S+)\s*,\s*(\S+)\s*\)/);if(_0x501197===null)return ![];return {'space':'RGB','r':parseFloat(_0x501197[0x1]),'g':parseFloat(_0x501197[0x2]),'b':parseFloat(_0x501197[0x3])};},'write':colorToString},'CSS_RGBA':{'read':function read(_0x1258cc){var _0x5aaacc=_0x1258cc['match'](/^rgba\(\s*(\S+)\s*,\s*(\S+)\s*,\s*(\S+)\s*,\s*(\S+)\s*\)/);if(_0x5aaacc===null)return ![];return {'space':'RGB','r':parseFloat(_0x5aaacc[0x1]),'g':parseFloat(_0x5aaacc[0x2]),'b':parseFloat(_0x5aaacc[0x3]),'a':parseFloat(_0x5aaacc[0x4])};},'write':colorToString}}},{'litmus':Common['isNumber'],'conversions':{'HEX':{'read':function read(_0x204a33){return {'space':'HEX','hex':_0x204a33,'conversionName':'HEX'};},'write':function write(_0x18a489){return _0x18a489['hex'];}}}},{'litmus':Common['isArray'],'conversions':{'RGB_ARRAY':{'read':function read(_0x15322c){if(_0x15322c['length']!==0x3)return ![];return {'space':'RGB','r':_0x15322c[0x0],'g':_0x15322c[0x1],'b':_0x15322c[0x2]};},'write':function write(_0x2de05e){return [_0x2de05e['r'],_0x2de05e['g'],_0x2de05e['b']];}},'RGBA_ARRAY':{'read':function read(_0x166d0e){if(_0x166d0e['length']!==0x4)return ![];return {'space':'RGB','r':_0x166d0e[0x0],'g':_0x166d0e[0x1],'b':_0x166d0e[0x2],'a':_0x166d0e[0x3]};},'write':function write(_0x373e00){return [_0x373e00['r'],_0x373e00['g'],_0x373e00['b'],_0x373e00['a']];}}}},{'litmus':Common['isObject'],'conversions':{'RGBA_OBJ':{'read':function read(_0x25b8be){if(Common['isNumber'](_0x25b8be['r'])&&Common['isNumber'](_0x25b8be['g'])&&Common['isNumber'](_0x25b8be['b'])&&Common['isNumber'](_0x25b8be['a']))return {'space':'RGB','r':_0x25b8be['r'],'g':_0x25b8be['g'],'b':_0x25b8be['b'],'a':_0x25b8be['a']};return ![];},'write':function write(_0x2619ff){return {'r':_0x2619ff['r'],'g':_0x2619ff['g'],'b':_0x2619ff['b'],'a':_0x2619ff['a']};}},'RGB_OBJ':{'read':function read(_0x3a1100){if(Common['isNumber'](_0x3a1100['r'])&&Common['isNumber'](_0x3a1100['g'])&&Common['isNumber'](_0x3a1100['b']))return {'space':'RGB','r':_0x3a1100['r'],'g':_0x3a1100['g'],'b':_0x3a1100['b']};return ![];},'write':function write(_0x3e0570){return {'r':_0x3e0570['r'],'g':_0x3e0570['g'],'b':_0x3e0570['b']};}},'HSVA_OBJ':{'read':function read(_0xba5306){if(Common['isNumber'](_0xba5306['h'])&&Common['isNumber'](_0xba5306['s'])&&Common['isNumber'](_0xba5306['v'])&&Common['isNumber'](_0xba5306['a']))return {'space':'HSV','h':_0xba5306['h'],'s':_0xba5306['s'],'v':_0xba5306['v'],'a':_0xba5306['a']};return ![];},'write':function write(_0x27de6c){return {'h':_0x27de6c['h'],'s':_0x27de6c['s'],'v':_0x27de6c['v'],'a':_0x27de6c['a']};}},'HSV_OBJ':{'read':function read(_0x251f69){if(Common['isNumber'](_0x251f69['h'])&&Common['isNumber'](_0x251f69['s'])&&Common['isNumber'](_0x251f69['v']))return {'space':'HSV','h':_0x251f69['h'],'s':_0x251f69['s'],'v':_0x251f69['v']};return ![];},'write':function write(_0x13423f){return {'h':_0x13423f['h'],'s':_0x13423f['s'],'v':_0x13423f['v']};}}}}],result=void 0x0,toReturn=void 0x0,interpret=function interpret(){toReturn=![];var _0xe2eac7=arguments['length']>0x1?Common['toArray'](arguments):arguments[0x0];return Common['each'](INTERPRETATIONS,function(_0x5c8e59){if(_0x5c8e59['litmus'](_0xe2eac7))return Common['each'](_0x5c8e59['conversions'],function(_0x3e306d,_0x149024){result=_0x3e306d['read'](_0xe2eac7);if(toReturn===![]&&result!==![])return toReturn=result,result['conversionName']=_0x149024,result['conversion']=_0x3e306d,Common['BREAK'];}),Common['BREAK'];}),toReturn;},tmpComponent=void 0x0,ColorMath={'hsv_to_rgb':function hsv_to_rgb(_0x442f8a,_0x5726c9,_0xa267e3){var _0x3591ec=Math['floor'](_0x442f8a/0x3c)%0x6,_0x346c6a=_0x442f8a/0x3c-Math['floor'](_0x442f8a/0x3c),_0xb7bbd2=_0xa267e3*(0x1-_0x5726c9),_0x5e339b=_0xa267e3*(0x1-_0x346c6a*_0x5726c9),_0x4cc0e6=_0xa267e3*(0x1-(0x1-_0x346c6a)*_0x5726c9),_0x477b51=[[_0xa267e3,_0x4cc0e6,_0xb7bbd2],[_0x5e339b,_0xa267e3,_0xb7bbd2],[_0xb7bbd2,_0xa267e3,_0x4cc0e6],[_0xb7bbd2,_0x5e339b,_0xa267e3],[_0x4cc0e6,_0xb7bbd2,_0xa267e3],[_0xa267e3,_0xb7bbd2,_0x5e339b]][_0x3591ec];return {'r':_0x477b51[0x0]*0xff,'g':_0x477b51[0x1]*0xff,'b':_0x477b51[0x2]*0xff};},'rgb_to_hsv':function rgb_to_hsv(_0x31788b,_0x55559c,_0x11e679){var _0x2003f8=Math['min'](_0x31788b,_0x55559c,_0x11e679),_0x516a7e=Math['max'](_0x31788b,_0x55559c,_0x11e679),_0x419ccb=_0x516a7e-_0x2003f8,_0x53ad47=void 0x0,_0x418b93=void 0x0;if(_0x516a7e!==0x0)_0x418b93=_0x419ccb/_0x516a7e;else return {'h':NaN,'s':0x0,'v':0x0};if(_0x31788b===_0x516a7e)_0x53ad47=(_0x55559c-_0x11e679)/_0x419ccb;else _0x55559c===_0x516a7e?_0x53ad47=0x2+(_0x11e679-_0x31788b)/_0x419ccb:_0x53ad47=0x4+(_0x31788b-_0x55559c)/_0x419ccb;return _0x53ad47/=0x6,_0x53ad47<0x0&&(_0x53ad47+=0x1),{'h':_0x53ad47*0x168,'s':_0x418b93,'v':_0x516a7e/0xff};},'rgb_to_hex':function rgb_to_hex(_0x487f15,_0xc264f5,_0x11b72b){var _0x108908=this['hex_with_component'](0x0,0x2,_0x487f15);return _0x108908=this['hex_with_component'](_0x108908,0x1,_0xc264f5),_0x108908=this['hex_with_component'](_0x108908,0x0,_0x11b72b),_0x108908;},'component_from_hex':function component_from_hex(_0x4d0064,_0x3e2485){return _0x4d0064>>_0x3e2485*0x8&0xff;},'hex_with_component':function hex_with_component(_0x3cc7f7,_0x29d0a9,_0x3dd99e){return _0x3dd99e<<(tmpComponent=_0x29d0a9*0x8)|_0x3cc7f7&~(0xff<<tmpComponent);}},_typeof=typeof Symbol==='function'&&typeof Symbol['iterator']==='symbol'?function(_0x1376d1){return typeof _0x1376d1;}:function(_0x4a874c){return _0x4a874c&&typeof Symbol==='function'&&_0x4a874c['constructor']===Symbol&&_0x4a874c!==Symbol['prototype']?'symbol':typeof _0x4a874c;},classCallCheck=function(_0x46fe58,_0x1b1025){if(!(_0x46fe58 instanceof _0x1b1025))throw new TypeError('Cannot\x20call\x20a\x20class\x20as\x20a\x20function');},createClass=(function(){function _0x216615(_0x182e45,_0x52bc55){for(var _0x520692=0x0;_0x520692<_0x52bc55['length'];_0x520692++){var _0x546bc9=_0x52bc55[_0x520692];_0x546bc9['enumerable']=_0x546bc9['enumerable']||![],_0x546bc9['configurable']=!![];if('value'in _0x546bc9)_0x546bc9['writable']=!![];Object['defineProperty'](_0x182e45,_0x546bc9['key'],_0x546bc9);}}return function(_0x4cc04f,_0xc67e4b,_0x5679a3){if(_0xc67e4b)_0x216615(_0x4cc04f['prototype'],_0xc67e4b);if(_0x5679a3)_0x216615(_0x4cc04f,_0x5679a3);return _0x4cc04f;};}()),get=function get(_0x39a2b3,_0x4162d8,_0x271409){if(_0x39a2b3===null)_0x39a2b3=Function['prototype'];var _0xe5a1a5=Object['getOwnPropertyDescriptor'](_0x39a2b3,_0x4162d8);if(_0xe5a1a5===undefined){var _0x584bde=Object['getPrototypeOf'](_0x39a2b3);return _0x584bde===null?undefined:get(_0x584bde,_0x4162d8,_0x271409);}else {if('value'in _0xe5a1a5)return _0xe5a1a5['value'];else {var _0x4c792e=_0xe5a1a5['get'];if(_0x4c792e===undefined)return undefined;return _0x4c792e['call'](_0x271409);}}},inherits=function(_0x19bca2,_0x553064){if(typeof _0x553064!=='function'&&_0x553064!==null)throw new TypeError('Super\x20expression\x20must\x20either\x20be\x20null\x20or\x20a\x20function,\x20not\x20'+typeof _0x553064);_0x19bca2['prototype']=Object['create'](_0x553064&&_0x553064['prototype'],{'constructor':{'value':_0x19bca2,'enumerable':![],'writable':!![],'configurable':!![]}});if(_0x553064)Object['setPrototypeOf']?Object['setPrototypeOf'](_0x19bca2,_0x553064):_0x19bca2['__proto__']=_0x553064;},possibleConstructorReturn=function(_0x311e8b,_0x3cc599){if(!_0x311e8b)throw new ReferenceError('this\x20hasn\x27t\x20been\x20initialised\x20-\x20super()\x20hasn\x27t\x20been\x20called');return _0x3cc599&&(typeof _0x3cc599==='object'||typeof _0x3cc599==='function')?_0x3cc599:_0x311e8b;},Color=(function(){function _0x498bb4(){classCallCheck(this,_0x498bb4),this['__state']=interpret['apply'](this,arguments);if(this['__state']===![])throw new Error('Failed\x20to\x20interpret\x20color\x20arguments');this['__state']['a']=this['__state']['a']||0x1;}return createClass(_0x498bb4,[{'key':'toString','value':function _0x27aa3b(){return colorToString(this);}},{'key':'toHexString','value':function _0x3aa44c(){return colorToString(this,!![]);}},{'key':'toOriginal','value':function _0x3b68e9(){return this['__state']['conversion']['write'](this);}}]),_0x498bb4;}());function defineRGBComponent(_0x30e164,_0x1f88ad,_0x472f2d){Object['defineProperty'](_0x30e164,_0x1f88ad,{'get':function _0x411949(){if(this['__state']['space']==='RGB')return this['__state'][_0x1f88ad];return Color['recalculateRGB'](this,_0x1f88ad,_0x472f2d),this['__state'][_0x1f88ad];},'set':function _0x5582e9(_0x5a99b2){this['__state']['space']!=='RGB'&&(Color['recalculateRGB'](this,_0x1f88ad,_0x472f2d),this['__state']['space']='RGB'),this['__state'][_0x1f88ad]=_0x5a99b2;}});}function defineHSVComponent(_0x35dde3,_0x2dc23b){Object['defineProperty'](_0x35dde3,_0x2dc23b,{'get':function _0x19a1f9(){if(this['__state']['space']==='HSV')return this['__state'][_0x2dc23b];return Color['recalculateHSV'](this),this['__state'][_0x2dc23b];},'set':function _0x5e1c98(_0x2a91b2){this['__state']['space']!=='HSV'&&(Color['recalculateHSV'](this),this['__state']['space']='HSV'),this['__state'][_0x2dc23b]=_0x2a91b2;}});}Color['recalculateRGB']=function(_0x4ce7ed,_0x1cdcb0,_0x3645a8){if(_0x4ce7ed['__state']['space']==='HEX')_0x4ce7ed['__state'][_0x1cdcb0]=ColorMath['component_from_hex'](_0x4ce7ed['__state']['hex'],_0x3645a8);else {if(_0x4ce7ed['__state']['space']==='HSV')Common['extend'](_0x4ce7ed['__state'],ColorMath['hsv_to_rgb'](_0x4ce7ed['__state']['h'],_0x4ce7ed['__state']['s'],_0x4ce7ed['__state']['v']));else throw new Error('Corrupted\x20color\x20state');}},Color['recalculateHSV']=function(_0x398cf5){var _0xa05723=ColorMath['rgb_to_hsv'](_0x398cf5['r'],_0x398cf5['g'],_0x398cf5['b']);Common['extend'](_0x398cf5['__state'],{'s':_0xa05723['s'],'v':_0xa05723['v']});if(!Common['isNaN'](_0xa05723['h']))_0x398cf5['__state']['h']=_0xa05723['h'];else Common['isUndefined'](_0x398cf5['__state']['h'])&&(_0x398cf5['__state']['h']=0x0);},Color['COMPONENTS']=['r','g','b','h','s','v','hex','a'],defineRGBComponent(Color['prototype'],'r',0x2),defineRGBComponent(Color['prototype'],'g',0x1),defineRGBComponent(Color['prototype'],'b',0x0),defineHSVComponent(Color['prototype'],'h'),defineHSVComponent(Color['prototype'],'s'),defineHSVComponent(Color['prototype'],'v'),Object['defineProperty'](Color['prototype'],'a',{'get':function get$$1(){return this['__state']['a'];},'set':function set$$1(_0x87d75b){this['__state']['a']=_0x87d75b;}}),Object['defineProperty'](Color['prototype'],'hex',{'get':function get$$1(){return this['__state']['space']!=='HEX'&&(this['__state']['hex']=ColorMath['rgb_to_hex'](this['r'],this['g'],this['b']),this['__state']['space']='HEX'),this['__state']['hex'];},'set':function set$$1(_0x3d9f44){this['__state']['space']='HEX',this['__state']['hex']=_0x3d9f44;}});var Controller=(function(){function _0x36e9da(_0x520e10,_0x515f78){classCallCheck(this,_0x36e9da),this['initialValue']=_0x520e10[_0x515f78],this['domElement']=document['createElement']('div'),this['object']=_0x520e10,this['property']=_0x515f78,this['__onChange']=undefined,this['__onFinishChange']=undefined;}return createClass(_0x36e9da,[{'key':'onChange','value':function _0x2b5b68(_0x1bdf77){return this['__onChange']=_0x1bdf77,this;}},{'key':'onFinishChange','value':function _0xe89bf5(_0x2ca8c7){return this['__onFinishChange']=_0x2ca8c7,this;}},{'key':'setValue','value':function _0x2a6b79(_0x4410e9){return this['object'][this['property']]=_0x4410e9,this['__onChange']&&this['__onChange']['call'](this,_0x4410e9),this['updateDisplay'](),this;}},{'key':'getValue','value':function _0x34162e(){return this['object'][this['property']];}},{'key':'updateDisplay','value':function _0x52e3c2(){return this;}},{'key':'isModified','value':function _0x50f727(){return this['initialValue']!==this['getValue']();}}]),_0x36e9da;}()),EVENT_MAP={'HTMLEvents':['change'],'MouseEvents':['click','mousemove','mousedown','mouseup','mouseover'],'KeyboardEvents':['keydown']},EVENT_MAP_INV={};Common['each'](EVENT_MAP,function(_0x246487,_0x535dbe){Common['each'](_0x246487,function(_0x5741fc){EVENT_MAP_INV[_0x5741fc]=_0x535dbe;});});var CSS_VALUE_PIXELS=/(\d+(\.\d+)?)px/;function cssValueToPixels(_0x1d3f0c){if(_0x1d3f0c==='0'||Common['isUndefined'](_0x1d3f0c))return 0x0;var _0x1323dd=_0x1d3f0c['match'](CSS_VALUE_PIXELS);if(!Common['isNull'](_0x1323dd))return parseFloat(_0x1323dd[0x1]);return 0x0;}var dom={'makeSelectable':function makeSelectable(_0x2ec61b,_0x5bdd95){if(_0x2ec61b===undefined||_0x2ec61b['style']===undefined)return;_0x2ec61b['onselectstart']=_0x5bdd95?function(){return ![];}:function(){},_0x2ec61b['style']['MozUserSelect']=_0x5bdd95?'auto':'none',_0x2ec61b['style']['KhtmlUserSelect']=_0x5bdd95?'auto':'none',_0x2ec61b['unselectable']=_0x5bdd95?'on':'off';},'makeFullscreen':function makeFullscreen(_0x7eedcb,_0x4c5a83,_0x4d6148){var _0x142402=_0x4d6148,_0x55e7d2=_0x4c5a83;Common['isUndefined'](_0x55e7d2)&&(_0x55e7d2=!![]),Common['isUndefined'](_0x142402)&&(_0x142402=!![]),_0x7eedcb['style']['position']='absolute',_0x55e7d2&&(_0x7eedcb['style']['left']=0x0,_0x7eedcb['style']['right']=0x0),_0x142402&&(_0x7eedcb['style']['top']=0x0,_0x7eedcb['style']['bottom']=0x0);},'fakeEvent':function fakeEvent(_0x4ed3dd,_0x16b46e,_0x4aec37,_0x48073a){var _0x166cec=_0x4aec37||{},_0x311839=EVENT_MAP_INV[_0x16b46e];if(!_0x311839)throw new Error('Event\x20type\x20'+_0x16b46e+'\x20not\x20supported.');var _0x56e044=document['createEvent'](_0x311839);switch(_0x311839){case'MouseEvents':{var _0x55bfb1=_0x166cec['x']||_0x166cec['clientX']||0x0,_0x4f931c=_0x166cec['y']||_0x166cec['clientY']||0x0;_0x56e044['initMouseEvent'](_0x16b46e,_0x166cec['bubbles']||![],_0x166cec['cancelable']||!![],window,_0x166cec['clickCount']||0x1,0x0,0x0,_0x55bfb1,_0x4f931c,![],![],![],![],0x0,null);break;}case'KeyboardEvents':{var _0x1af2bc=_0x56e044['initKeyboardEvent']||_0x56e044['initKeyEvent'];Common['defaults'](_0x166cec,{'cancelable':!![],'ctrlKey':![],'altKey':![],'shiftKey':![],'metaKey':![],'keyCode':undefined,'charCode':undefined}),_0x1af2bc(_0x16b46e,_0x166cec['bubbles']||![],_0x166cec['cancelable'],window,_0x166cec['ctrlKey'],_0x166cec['altKey'],_0x166cec['shiftKey'],_0x166cec['metaKey'],_0x166cec['keyCode'],_0x166cec['charCode']);break;}default:{_0x56e044['initEvent'](_0x16b46e,_0x166cec['bubbles']||![],_0x166cec['cancelable']||!![]);break;}}Common['defaults'](_0x56e044,_0x48073a),_0x4ed3dd['dispatchEvent'](_0x56e044);},'bind':function bind(_0x5d2581,_0x3934e1,_0x1ba4a8,_0x393f01){var _0x43d9fa=_0x393f01||![];if(_0x5d2581['addEventListener'])_0x5d2581['addEventListener'](_0x3934e1,_0x1ba4a8,_0x43d9fa);else _0x5d2581['attachEvent']&&_0x5d2581['attachEvent']('on'+_0x3934e1,_0x1ba4a8);return dom;},'unbind':function unbind(_0x4a5a51,_0x1f28bf,_0x270c7a,_0x551814){var _0x3b3d49=_0x551814||![];if(_0x4a5a51['removeEventListener'])_0x4a5a51['removeEventListener'](_0x1f28bf,_0x270c7a,_0x3b3d49);else _0x4a5a51['detachEvent']&&_0x4a5a51['detachEvent']('on'+_0x1f28bf,_0x270c7a);return dom;},'addClass':function addClass(_0x8bf68d,_0x1199ae){if(_0x8bf68d['className']===undefined)_0x8bf68d['className']=_0x1199ae;else {if(_0x8bf68d['className']!==_0x1199ae){var _0x54fd1a=_0x8bf68d['className']['split'](/ +/);_0x54fd1a['indexOf'](_0x1199ae)===-0x1&&(_0x54fd1a['push'](_0x1199ae),_0x8bf68d['className']=_0x54fd1a['join']('\x20')['replace'](/^\s+/,'')['replace'](/\s+$/,''));}}return dom;},'removeClass':function removeClass(_0x5994ec,_0x1fe1c8){if(_0x1fe1c8){if(_0x5994ec['className']===_0x1fe1c8)_0x5994ec['removeAttribute']('class');else {var _0x40b2f4=_0x5994ec['className']['split'](/ +/),_0x5ad448=_0x40b2f4['indexOf'](_0x1fe1c8);_0x5ad448!==-0x1&&(_0x40b2f4['splice'](_0x5ad448,0x1),_0x5994ec['className']=_0x40b2f4['join']('\x20'));}}else _0x5994ec['className']=undefined;return dom;},'hasClass':function hasClass(_0x2ccd59,_0x4af311){return new RegExp('(?:^|\x5cs+)'+_0x4af311+'(?:\x5cs+|$)')['test'](_0x2ccd59['className'])||![];},'getWidth':function getWidth(_0x1673ea){var _0x4ea61f=getComputedStyle(_0x1673ea);return cssValueToPixels(_0x4ea61f['border-left-width'])+cssValueToPixels(_0x4ea61f['border-right-width'])+cssValueToPixels(_0x4ea61f['padding-left'])+cssValueToPixels(_0x4ea61f['padding-right'])+cssValueToPixels(_0x4ea61f['width']);},'getHeight':function getHeight(_0x42834c){var _0xa4888f=getComputedStyle(_0x42834c);return cssValueToPixels(_0xa4888f['border-top-width'])+cssValueToPixels(_0xa4888f['border-bottom-width'])+cssValueToPixels(_0xa4888f['padding-top'])+cssValueToPixels(_0xa4888f['padding-bottom'])+cssValueToPixels(_0xa4888f['height']);},'getOffset':function getOffset(_0x513a93){var _0x487df8=_0x513a93,_0x2c1f8d={'left':0x0,'top':0x0};if(_0x487df8['offsetParent'])do{_0x2c1f8d['left']+=_0x487df8['offsetLeft'],_0x2c1f8d['top']+=_0x487df8['offsetTop'],_0x487df8=_0x487df8['offsetParent'];}while(_0x487df8);return _0x2c1f8d;},'isActive':function isActive(_0x5d44c9){return _0x5d44c9===document['activeElement']&&(_0x5d44c9['type']||_0x5d44c9['href']);}},BooleanController=function(_0x306d0f){inherits(_0x11013d,_0x306d0f);function _0x11013d(_0x237b8d,_0x57e683){classCallCheck(this,_0x11013d);var _0x2af47b=possibleConstructorReturn(this,(_0x11013d['__proto__']||Object['getPrototypeOf'](_0x11013d))['call'](this,_0x237b8d,_0x57e683)),_0x320e1c=_0x2af47b;_0x2af47b['__prev']=_0x2af47b['getValue'](),_0x2af47b['__checkbox']=document['createElement']('input'),_0x2af47b['__checkbox']['setAttribute']('type','checkbox');function _0x5d6c8f(){_0x320e1c['setValue'](!_0x320e1c['__prev']);}return dom['bind'](_0x2af47b['__checkbox'],'change',_0x5d6c8f,![]),_0x2af47b['domElement']['appendChild'](_0x2af47b['__checkbox']),_0x2af47b['updateDisplay'](),_0x2af47b;}return createClass(_0x11013d,[{'key':'setValue','value':function _0x89fb64(_0x2044ee){var _0xab7d4b=get(_0x11013d['prototype']['__proto__']||Object['getPrototypeOf'](_0x11013d['prototype']),'setValue',this)['call'](this,_0x2044ee);return this['__onFinishChange']&&this['__onFinishChange']['call'](this,this['getValue']()),this['__prev']=this['getValue'](),_0xab7d4b;}},{'key':'updateDisplay','value':function _0x4b02fb(){return this['getValue']()===!![]?(this['__checkbox']['setAttribute']('checked','checked'),this['__checkbox']['checked']=!![],this['__prev']=!![]):(this['__checkbox']['checked']=![],this['__prev']=![]),get(_0x11013d['prototype']['__proto__']||Object['getPrototypeOf'](_0x11013d['prototype']),'updateDisplay',this)['call'](this);}}]),_0x11013d;}(Controller),OptionController=function(_0x5c30ba){inherits(_0x3cfac0,_0x5c30ba);function _0x3cfac0(_0x5f2a18,_0x2bb55d,_0x1a1bc5){classCallCheck(this,_0x3cfac0);var _0x1d9dfc=possibleConstructorReturn(this,(_0x3cfac0['__proto__']||Object['getPrototypeOf'](_0x3cfac0))['call'](this,_0x5f2a18,_0x2bb55d)),_0x3ce513=_0x1a1bc5,_0x283945=_0x1d9dfc;_0x1d9dfc['__select']=document['createElement']('select');if(Common['isArray'](_0x3ce513)){var _0x7bac97={};Common['each'](_0x3ce513,function(_0x38eb08){_0x7bac97[_0x38eb08]=_0x38eb08;}),_0x3ce513=_0x7bac97;}return Common['each'](_0x3ce513,function(_0x7a6226,_0x367682){var _0x383a59=document['createElement']('option');_0x383a59['innerHTML']=_0x367682,_0x383a59['setAttribute']('value',_0x7a6226),_0x283945['__select']['appendChild'](_0x383a59);}),_0x1d9dfc['updateDisplay'](),dom['bind'](_0x1d9dfc['__select'],'change',function(){var _0x4d9e4c=this['options'][this['selectedIndex']]['value'];_0x283945['setValue'](_0x4d9e4c);}),_0x1d9dfc['domElement']['appendChild'](_0x1d9dfc['__select']),_0x1d9dfc;}return createClass(_0x3cfac0,[{'key':'setValue','value':function _0x4c88cc(_0x3d2386){var _0x32d16e=get(_0x3cfac0['prototype']['__proto__']||Object['getPrototypeOf'](_0x3cfac0['prototype']),'setValue',this)['call'](this,_0x3d2386);return this['__onFinishChange']&&this['__onFinishChange']['call'](this,this['getValue']()),_0x32d16e;}},{'key':'updateDisplay','value':function _0x30ab85(){if(dom['isActive'](this['__select']))return this;return this['__select']['value']=this['getValue'](),get(_0x3cfac0['prototype']['__proto__']||Object['getPrototypeOf'](_0x3cfac0['prototype']),'updateDisplay',this)['call'](this);}}]),_0x3cfac0;}(Controller),StringController=function(_0x23649e){inherits(_0x24ccd3,_0x23649e);function _0x24ccd3(_0x357b57,_0x4b373c){classCallCheck(this,_0x24ccd3);var _0x38ef86=possibleConstructorReturn(this,(_0x24ccd3['__proto__']||Object['getPrototypeOf'](_0x24ccd3))['call'](this,_0x357b57,_0x4b373c)),_0x46e336=_0x38ef86;function _0x5cce87(){_0x46e336['setValue'](_0x46e336['__input']['value']);}function _0x50d350(){_0x46e336['__onFinishChange']&&_0x46e336['__onFinishChange']['call'](_0x46e336,_0x46e336['getValue']());}return _0x38ef86['__input']=document['createElement']('input'),_0x38ef86['__input']['setAttribute']('type','text'),dom['bind'](_0x38ef86['__input'],'keyup',_0x5cce87),dom['bind'](_0x38ef86['__input'],'change',_0x5cce87),dom['bind'](_0x38ef86['__input'],'blur',_0x50d350),dom['bind'](_0x38ef86['__input'],'keydown',function(_0x45fd0d){_0x45fd0d['keyCode']===0xd&&this['blur']();}),_0x38ef86['updateDisplay'](),_0x38ef86['domElement']['appendChild'](_0x38ef86['__input']),_0x38ef86;}return createClass(_0x24ccd3,[{'key':'updateDisplay','value':function _0x3e5954(){return !dom['isActive'](this['__input'])&&(this['__input']['value']=this['getValue']()),get(_0x24ccd3['prototype']['__proto__']||Object['getPrototypeOf'](_0x24ccd3['prototype']),'updateDisplay',this)['call'](this);}}]),_0x24ccd3;}(Controller);function numDecimals(_0x42b2e6){var _0x31ae2c=_0x42b2e6['toString']();if(_0x31ae2c['indexOf']('.')>-0x1)return _0x31ae2c['length']-_0x31ae2c['indexOf']('.')-0x1;return 0x0;}var NumberController=function(_0x4218fb){inherits(_0x1c0e78,_0x4218fb);function _0x1c0e78(_0x4327c4,_0x5d0f86,_0x31ebd9){classCallCheck(this,_0x1c0e78);var _0x4532ef=possibleConstructorReturn(this,(_0x1c0e78['__proto__']||Object['getPrototypeOf'](_0x1c0e78))['call'](this,_0x4327c4,_0x5d0f86)),_0x5f190c=_0x31ebd9||{};return _0x4532ef['__min']=_0x5f190c['min'],_0x4532ef['__max']=_0x5f190c['max'],_0x4532ef['__step']=_0x5f190c['step'],Common['isUndefined'](_0x4532ef['__step'])?_0x4532ef['initialValue']===0x0?_0x4532ef['__impliedStep']=0x1:_0x4532ef['__impliedStep']=Math['pow'](0xa,Math['floor'](Math['log'](Math['abs'](_0x4532ef['initialValue']))/Math['LN10']))/0xa:_0x4532ef['__impliedStep']=_0x4532ef['__step'],_0x4532ef['__precision']=numDecimals(_0x4532ef['__impliedStep']),_0x4532ef;}return createClass(_0x1c0e78,[{'key':'setValue','value':function _0x2ca00c(_0x1fc905){var _0x4ff8c0=_0x1fc905;if(this['__min']!==undefined&&_0x4ff8c0<this['__min'])_0x4ff8c0=this['__min'];else this['__max']!==undefined&&_0x4ff8c0>this['__max']&&(_0x4ff8c0=this['__max']);return this['__step']!==undefined&&_0x4ff8c0%this['__step']!==0x0&&(_0x4ff8c0=Math['round'](_0x4ff8c0/this['__step'])*this['__step']),get(_0x1c0e78['prototype']['__proto__']||Object['getPrototypeOf'](_0x1c0e78['prototype']),'setValue',this)['call'](this,_0x4ff8c0);}},{'key':'min','value':function _0x39c623(_0x4b44e8){return this['__min']=_0x4b44e8,this;}},{'key':'max','value':function _0x75ba44(_0x11ef15){return this['__max']=_0x11ef15,this;}},{'key':'step','value':function _0x5a9cc7(_0x415302){return this['__step']=_0x415302,this['__impliedStep']=_0x415302,this['__precision']=numDecimals(_0x415302),this;}}]),_0x1c0e78;}(Controller);function roundToDecimal(_0x2ea1cb,_0x163fb0){var _0x581960=Math['pow'](0xa,_0x163fb0);return Math['round'](_0x2ea1cb*_0x581960)/_0x581960;}var NumberControllerBox=function(_0x576d60){inherits(_0x501524,_0x576d60);function _0x501524(_0x4d4eb5,_0x2cd75b,_0x57c96e){classCallCheck(this,_0x501524);var _0x7fd7b1=possibleConstructorReturn(this,(_0x501524['__proto__']||Object['getPrototypeOf'](_0x501524))['call'](this,_0x4d4eb5,_0x2cd75b,_0x57c96e));_0x7fd7b1['__truncationSuspended']=![];var _0x141150=_0x7fd7b1,_0x503b28=void 0x0;function _0x5859c9(){var _0x541ba2=parseFloat(_0x141150['__input']['value']);!Common['isNaN'](_0x541ba2)&&_0x141150['setValue'](_0x541ba2);}function _0x3d7a19(){_0x141150['__onFinishChange']&&_0x141150['__onFinishChange']['call'](_0x141150,_0x141150['getValue']());}function _0x5da353(){_0x3d7a19();}function _0x4a7697(_0x5dd3b9){var _0x13af86=_0x503b28-_0x5dd3b9['clientY'];_0x141150['setValue'](_0x141150['getValue']()+_0x13af86*_0x141150['__impliedStep']),_0x503b28=_0x5dd3b9['clientY'];}function _0x503338(){dom['unbind'](window,'mousemove',_0x4a7697),dom['unbind'](window,'mouseup',_0x503338),_0x3d7a19();}function _0x41e3b9(_0x28bcdc){dom['bind'](window,'mousemove',_0x4a7697),dom['bind'](window,'mouseup',_0x503338),_0x503b28=_0x28bcdc['clientY'];}return _0x7fd7b1['__input']=document['createElement']('input'),_0x7fd7b1['__input']['setAttribute']('type','text'),dom['bind'](_0x7fd7b1['__input'],'change',_0x5859c9),dom['bind'](_0x7fd7b1['__input'],'blur',_0x5da353),dom['bind'](_0x7fd7b1['__input'],'mousedown',_0x41e3b9),dom['bind'](_0x7fd7b1['__input'],'keydown',function(_0x3a07d5){_0x3a07d5['keyCode']===0xd&&(_0x141150['__truncationSuspended']=!![],this['blur'](),_0x141150['__truncationSuspended']=![],_0x3d7a19());}),_0x7fd7b1['updateDisplay'](),_0x7fd7b1['domElement']['appendChild'](_0x7fd7b1['__input']),_0x7fd7b1;}return createClass(_0x501524,[{'key':'updateDisplay','value':function _0x114a4e(){return this['__input']['value']=this['__truncationSuspended']?this['getValue']():roundToDecimal(this['getValue'](),this['__precision']),get(_0x501524['prototype']['__proto__']||Object['getPrototypeOf'](_0x501524['prototype']),'updateDisplay',this)['call'](this);}}]),_0x501524;}(NumberController);function map(_0x5064dc,_0xe0bda3,_0x7745be,_0x5e2c3c,_0x3443b0){return _0x5e2c3c+(_0x3443b0-_0x5e2c3c)*((_0x5064dc-_0xe0bda3)/(_0x7745be-_0xe0bda3));}var NumberControllerSlider=function(_0x4e80f3){inherits(_0xd8e0f4,_0x4e80f3);function _0xd8e0f4(_0x46a06d,_0x24f458,_0xb6e870,_0x5b9807,_0x589b24){classCallCheck(this,_0xd8e0f4);var _0x1e1ec8=possibleConstructorReturn(this,(_0xd8e0f4['__proto__']||Object['getPrototypeOf'](_0xd8e0f4))['call'](this,_0x46a06d,_0x24f458,{'min':_0xb6e870,'max':_0x5b9807,'step':_0x589b24})),_0x3da73d=_0x1e1ec8;_0x1e1ec8['__background']=document['createElement']('div'),_0x1e1ec8['__foreground']=document['createElement']('div'),dom['bind'](_0x1e1ec8['__background'],'mousedown',_0x3079db),dom['bind'](_0x1e1ec8['__background'],'touchstart',_0xaf648),dom['addClass'](_0x1e1ec8['__background'],'slider'),dom['addClass'](_0x1e1ec8['__foreground'],'slider-fg');function _0x3079db(_0x1f6341){document['activeElement']['blur'](),dom['bind'](window,'mousemove',_0x4c0ad9),dom['bind'](window,'mouseup',_0x54891c),_0x4c0ad9(_0x1f6341);}function _0x4c0ad9(_0xb942dd){_0xb942dd['preventDefault']();var _0x460a95=_0x3da73d['__background']['getBoundingClientRect']();return _0x3da73d['setValue'](map(_0xb942dd['clientX'],_0x460a95['left'],_0x460a95['right'],_0x3da73d['__min'],_0x3da73d['__max'])),![];}function _0x54891c(){dom['unbind'](window,'mousemove',_0x4c0ad9),dom['unbind'](window,'mouseup',_0x54891c),_0x3da73d['__onFinishChange']&&_0x3da73d['__onFinishChange']['call'](_0x3da73d,_0x3da73d['getValue']());}function _0xaf648(_0x1a1291){if(_0x1a1291['touches']['length']!==0x1)return;dom['bind'](window,'touchmove',_0x5b313d),dom['bind'](window,'touchend',_0x3f9062),_0x5b313d(_0x1a1291);}function _0x5b313d(_0x187659){var _0x3828e8=_0x187659['touches'][0x0]['clientX'],_0x3c686f=_0x3da73d['__background']['getBoundingClientRect']();_0x3da73d['setValue'](map(_0x3828e8,_0x3c686f['left'],_0x3c686f['right'],_0x3da73d['__min'],_0x3da73d['__max']));}function _0x3f9062(){dom['unbind'](window,'touchmove',_0x5b313d),dom['unbind'](window,'touchend',_0x3f9062),_0x3da73d['__onFinishChange']&&_0x3da73d['__onFinishChange']['call'](_0x3da73d,_0x3da73d['getValue']());}return _0x1e1ec8['updateDisplay'](),_0x1e1ec8['__background']['appendChild'](_0x1e1ec8['__foreground']),_0x1e1ec8['domElement']['appendChild'](_0x1e1ec8['__background']),_0x1e1ec8;}return createClass(_0xd8e0f4,[{'key':'updateDisplay','value':function _0x37e1bf(){var _0x54fd88=(this['getValue']()-this['__min'])/(this['__max']-this['__min']);return this['__foreground']['style']['width']=_0x54fd88*0x64+'%',get(_0xd8e0f4['prototype']['__proto__']||Object['getPrototypeOf'](_0xd8e0f4['prototype']),'updateDisplay',this)['call'](this);}}]),_0xd8e0f4;}(NumberController),FunctionController=function(_0x47fd9c){inherits(_0x3d3444,_0x47fd9c);function _0x3d3444(_0x2616b9,_0x8db826,_0x5ec857){classCallCheck(this,_0x3d3444);var _0x11c5fb=possibleConstructorReturn(this,(_0x3d3444['__proto__']||Object['getPrototypeOf'](_0x3d3444))['call'](this,_0x2616b9,_0x8db826)),_0x2c95ac=_0x11c5fb;return _0x11c5fb['__button']=document['createElement']('div'),_0x11c5fb['__button']['innerHTML']=_0x5ec857===undefined?'Fire':_0x5ec857,dom['bind'](_0x11c5fb['__button'],'click',function(_0x23f31c){return _0x23f31c['preventDefault'](),_0x2c95ac['fire'](),![];}),dom['addClass'](_0x11c5fb['__button'],'button'),_0x11c5fb['domElement']['appendChild'](_0x11c5fb['__button']),_0x11c5fb;}return createClass(_0x3d3444,[{'key':'fire','value':function _0x1f8515(){this['__onChange']&&this['__onChange']['call'](this),this['getValue']()['call'](this['object']),this['__onFinishChange']&&this['__onFinishChange']['call'](this,this['getValue']());}}]),_0x3d3444;}(Controller),ColorController=function(_0x1a0ffb){inherits(_0x5b08d6,_0x1a0ffb);function _0x5b08d6(_0x22cc19,_0x1b2d88){classCallCheck(this,_0x5b08d6);var _0x323104=possibleConstructorReturn(this,(_0x5b08d6['__proto__']||Object['getPrototypeOf'](_0x5b08d6))['call'](this,_0x22cc19,_0x1b2d88));_0x323104['__color']=new Color(_0x323104['getValue']()),_0x323104['__temp']=new Color(0x0);var _0x4ac2c8=_0x323104;_0x323104['domElement']=document['createElement']('div'),dom['makeSelectable'](_0x323104['domElement'],![]),_0x323104['__selector']=document['createElement']('div'),_0x323104['__selector']['className']='selector',_0x323104['__saturation_field']=document['createElement']('div'),_0x323104['__saturation_field']['className']='saturation-field',_0x323104['__field_knob']=document['createElement']('div'),_0x323104['__field_knob']['className']='field-knob',_0x323104['__field_knob_border']='2px\x20solid\x20',_0x323104['__hue_knob']=document['createElement']('div'),_0x323104['__hue_knob']['className']='hue-knob',_0x323104['__hue_field']=document['createElement']('div'),_0x323104['__hue_field']['className']='hue-field',_0x323104['__input']=document['createElement']('input'),_0x323104['__input']['type']='text',_0x323104['__input_textShadow']='0\x201px\x201px\x20',dom['bind'](_0x323104['__input'],'keydown',function(_0x4acbe7){_0x4acbe7['keyCode']===0xd&&_0x2ec696['call'](this);}),dom['bind'](_0x323104['__input'],'blur',_0x2ec696),dom['bind'](_0x323104['__selector'],'mousedown',function(){dom['addClass'](this,'drag')['bind'](window,'mouseup',function(){dom['removeClass'](_0x4ac2c8['__selector'],'drag');});}),dom['bind'](_0x323104['__selector'],'touchstart',function(){dom['addClass'](this,'drag')['bind'](window,'touchend',function(){dom['removeClass'](_0x4ac2c8['__selector'],'drag');});});var _0x2ca01c=document['createElement']('div');Common['extend'](_0x323104['__selector']['style'],{'width':'122px','height':'102px','padding':'3px','backgroundColor':'#222','boxShadow':'0px\x201px\x203px\x20rgba(0,0,0,0.3)'}),Common['extend'](_0x323104['__field_knob']['style'],{'position':'absolute','width':'12px','height':'12px','border':_0x323104['__field_knob_border']+(_0x323104['__color']['v']<0.5?'#fff':'#000'),'boxShadow':'0px\x201px\x203px\x20rgba(0,0,0,0.5)','borderRadius':'12px','zIndex':0x1}),Common['extend'](_0x323104['__hue_knob']['style'],{'position':'absolute','width':'15px','height':'2px','borderRight':'4px\x20solid\x20#fff','zIndex':0x1}),Common['extend'](_0x323104['__saturation_field']['style'],{'width':'100px','height':'100px','border':'1px\x20solid\x20#555','marginRight':'3px','display':'inline-block','cursor':'pointer'}),Common['extend'](_0x2ca01c['style'],{'width':'100%','height':'100%','background':'none'}),linearGradient(_0x2ca01c,'top','rgba(0,0,0,0)','#000'),Common['extend'](_0x323104['__hue_field']['style'],{'width':'15px','height':'100px','border':'1px\x20solid\x20#555','cursor':'ns-resize','position':'absolute','top':'3px','right':'3px'}),hueGradient(_0x323104['__hue_field']),Common['extend'](_0x323104['__input']['style'],{'outline':'none','textAlign':'center','color':'#fff','border':0x0,'fontWeight':'bold','textShadow':_0x323104['__input_textShadow']+'rgba(0,0,0,0.7)'}),dom['bind'](_0x323104['__saturation_field'],'mousedown',_0x5a529e),dom['bind'](_0x323104['__saturation_field'],'touchstart',_0x5a529e),dom['bind'](_0x323104['__field_knob'],'mousedown',_0x5a529e),dom['bind'](_0x323104['__field_knob'],'touchstart',_0x5a529e),dom['bind'](_0x323104['__hue_field'],'mousedown',_0x55e24d),dom['bind'](_0x323104['__hue_field'],'touchstart',_0x55e24d);function _0x5a529e(_0x108e7f){_0x49399c(_0x108e7f),dom['bind'](window,'mousemove',_0x49399c),dom['bind'](window,'touchmove',_0x49399c),dom['bind'](window,'mouseup',_0x4cb0b8),dom['bind'](window,'touchend',_0x4cb0b8);}function _0x55e24d(_0x520066){_0x567a87(_0x520066),dom['bind'](window,'mousemove',_0x567a87),dom['bind'](window,'touchmove',_0x567a87),dom['bind'](window,'mouseup',_0x5bf790),dom['bind'](window,'touchend',_0x5bf790);}function _0x4cb0b8(){dom['unbind'](window,'mousemove',_0x49399c),dom['unbind'](window,'touchmove',_0x49399c),dom['unbind'](window,'mouseup',_0x4cb0b8),dom['unbind'](window,'touchend',_0x4cb0b8),_0x29146c();}function _0x5bf790(){dom['unbind'](window,'mousemove',_0x567a87),dom['unbind'](window,'touchmove',_0x567a87),dom['unbind'](window,'mouseup',_0x5bf790),dom['unbind'](window,'touchend',_0x5bf790),_0x29146c();}function _0x2ec696(){var _0x4c5a6c=interpret(this['value']);_0x4c5a6c!==![]?(_0x4ac2c8['__color']['__state']=_0x4c5a6c,_0x4ac2c8['setValue'](_0x4ac2c8['__color']['toOriginal']())):this['value']=_0x4ac2c8['__color']['toString']();}function _0x29146c(){_0x4ac2c8['__onFinishChange']&&_0x4ac2c8['__onFinishChange']['call'](_0x4ac2c8,_0x4ac2c8['__color']['toOriginal']());}_0x323104['__saturation_field']['appendChild'](_0x2ca01c),_0x323104['__selector']['appendChild'](_0x323104['__field_knob']),_0x323104['__selector']['appendChild'](_0x323104['__saturation_field']),_0x323104['__selector']['appendChild'](_0x323104['__hue_field']),_0x323104['__hue_field']['appendChild'](_0x323104['__hue_knob']),_0x323104['domElement']['appendChild'](_0x323104['__input']),_0x323104['domElement']['appendChild'](_0x323104['__selector']),_0x323104['updateDisplay']();function _0x49399c(_0x2d8f3){_0x2d8f3['type']['indexOf']('touch')===-0x1&&_0x2d8f3['preventDefault']();var _0x29b911=_0x4ac2c8['__saturation_field']['getBoundingClientRect'](),_0x4535e1=_0x2d8f3['touches']&&_0x2d8f3['touches'][0x0]||_0x2d8f3,_0x5be70d=_0x4535e1['clientX'],_0x711ee7=_0x4535e1['clientY'],_0x2121d7=(_0x5be70d-_0x29b911['left'])/(_0x29b911['right']-_0x29b911['left']),_0x37f1b4=0x1-(_0x711ee7-_0x29b911['top'])/(_0x29b911['bottom']-_0x29b911['top']);if(_0x37f1b4>0x1)_0x37f1b4=0x1;else _0x37f1b4<0x0&&(_0x37f1b4=0x0);if(_0x2121d7>0x1)_0x2121d7=0x1;else _0x2121d7<0x0&&(_0x2121d7=0x0);return _0x4ac2c8['__color']['v']=_0x37f1b4,_0x4ac2c8['__color']['s']=_0x2121d7,_0x4ac2c8['setValue'](_0x4ac2c8['__color']['toOriginal']()),![];}function _0x567a87(_0x525098){_0x525098['type']['indexOf']('touch')===-0x1&&_0x525098['preventDefault']();var _0x506ca8=_0x4ac2c8['__hue_field']['getBoundingClientRect'](),_0xf037=_0x525098['touches']&&_0x525098['touches'][0x0]||_0x525098,_0x56853b=_0xf037['clientY'],_0x14b212=0x1-(_0x56853b-_0x506ca8['top'])/(_0x506ca8['bottom']-_0x506ca8['top']);if(_0x14b212>0x1)_0x14b212=0x1;else _0x14b212<0x0&&(_0x14b212=0x0);return _0x4ac2c8['__color']['h']=_0x14b212*0x168,_0x4ac2c8['setValue'](_0x4ac2c8['__color']['toOriginal']()),![];}return _0x323104;}return createClass(_0x5b08d6,[{'key':'updateDisplay','value':function _0x1ad77f(){var _0x51b5f8=interpret(this['getValue']());if(_0x51b5f8!==![]){var _0xeb21ba=![];Common['each'](Color['COMPONENTS'],function(_0x1a7d3a){if(!Common['isUndefined'](_0x51b5f8[_0x1a7d3a])&&!Common['isUndefined'](this['__color']['__state'][_0x1a7d3a])&&_0x51b5f8[_0x1a7d3a]!==this['__color']['__state'][_0x1a7d3a])return _0xeb21ba=!![],{};},this),_0xeb21ba&&Common['extend'](this['__color']['__state'],_0x51b5f8);}Common['extend'](this['__temp']['__state'],this['__color']['__state']),this['__temp']['a']=0x1;var _0x2b7d84=this['__color']['v']<0.5||this['__color']['s']>0.5?0xff:0x0,_0x4ebd9a=0xff-_0x2b7d84;Common['extend'](this['__field_knob']['style'],{'marginLeft':0x64*this['__color']['s']-0x7+'px','marginTop':0x64*(0x1-this['__color']['v'])-0x7+'px','backgroundColor':this['__temp']['toHexString'](),'border':this['__field_knob_border']+'rgb('+_0x2b7d84+','+_0x2b7d84+','+_0x2b7d84+')'}),this['__hue_knob']['style']['marginTop']=(0x1-this['__color']['h']/0x168)*0x64+'px',this['__temp']['s']=0x1,this['__temp']['v']=0x1,linearGradient(this['__saturation_field'],'left','#fff',this['__temp']['toHexString']()),this['__input']['value']=this['__color']['toString'](),Common['extend'](this['__input']['style'],{'backgroundColor':this['__color']['toHexString'](),'color':'rgb('+_0x2b7d84+','+_0x2b7d84+','+_0x2b7d84+')','textShadow':this['__input_textShadow']+'rgba('+_0x4ebd9a+','+_0x4ebd9a+','+_0x4ebd9a+',.7)'});}}]),_0x5b08d6;}(Controller),vendors=['-moz-','-o-','-webkit-','-ms-',''];function linearGradient(_0x5d92fb,_0x54dde4,_0x510ba2,_0xb91a4e){_0x5d92fb['style']['background']='',Common['each'](vendors,function(_0x12fde6){_0x5d92fb['style']['cssText']+='background:\x20'+_0x12fde6+'linear-gradient('+_0x54dde4+',\x20'+_0x510ba2+'\x200%,\x20'+_0xb91a4e+'\x20100%);\x20';});}function hueGradient(_0x277b37){_0x277b37['style']['background']='',_0x277b37['style']['cssText']+='background:\x20-moz-linear-gradient(top,\x20\x20#ff0000\x200%,\x20#ff00ff\x2017%,\x20#0000ff\x2034%,\x20#00ffff\x2050%,\x20#00ff00\x2067%,\x20#ffff00\x2084%,\x20#ff0000\x20100%);',_0x277b37['style']['cssText']+='background:\x20-webkit-linear-gradient(top,\x20\x20#ff0000\x200%,#ff00ff\x2017%,#0000ff\x2034%,#00ffff\x2050%,#00ff00\x2067%,#ffff00\x2084%,#ff0000\x20100%);',_0x277b37['style']['cssText']+='background:\x20-o-linear-gradient(top,\x20\x20#ff0000\x200%,#ff00ff\x2017%,#0000ff\x2034%,#00ffff\x2050%,#00ff00\x2067%,#ffff00\x2084%,#ff0000\x20100%);',_0x277b37['style']['cssText']+='background:\x20-ms-linear-gradient(top,\x20\x20#ff0000\x200%,#ff00ff\x2017%,#0000ff\x2034%,#00ffff\x2050%,#00ff00\x2067%,#ffff00\x2084%,#ff0000\x20100%);',_0x277b37['style']['cssText']+='background:\x20linear-gradient(top,\x20\x20#ff0000\x200%,#ff00ff\x2017%,#0000ff\x2034%,#00ffff\x2050%,#00ff00\x2067%,#ffff00\x2084%,#ff0000\x20100%);';}var css={'load':function load(_0xf99fc2,_0xa9c06e){var _0x199c70=_0xa9c06e||document,_0x3094d1=_0x199c70['createElement']('link');_0x3094d1['type']='text/css',_0x3094d1['rel']='stylesheet',_0x3094d1['href']=_0xf99fc2,_0x199c70['getElementsByTagName']('head')[0x0]['appendChild'](_0x3094d1);},'inject':function inject(_0x2d9808,_0x953c0c){var _0x1ed95a=_0x953c0c||document,_0x1173df=document['createElement']('style');_0x1173df['type']='text/css',_0x1173df['innerHTML']=_0x2d9808;var _0x26b418=_0x1ed95a['getElementsByTagName']('head')[0x0];try{_0x26b418['appendChild'](_0x1173df);}catch(_0x2639df){}}},saveDialogContents='<div\x20id=\x22dg-save\x22\x20class=\x22dg\x20dialogue\x22>\x0a\x0a\x20\x20Here\x27s\x20the\x20new\x20load\x20parameter\x20for\x20your\x20<code>GUI</code>\x27s\x20constructor:\x0a\x0a\x20\x20<textarea\x20id=\x22dg-new-constructor\x22></textarea>\x0a\x0a\x20\x20<div\x20id=\x22dg-save-locally\x22>\x0a\x0a\x20\x20\x20\x20<input\x20id=\x22dg-local-storage\x22\x20type=\x22checkbox\x22/>\x20Automatically\x20save\x0a\x20\x20\x20\x20values\x20to\x20<code>localStorage</code>\x20on\x20exit.\x0a\x0a\x20\x20\x20\x20<div\x20id=\x22dg-local-explain\x22>The\x20values\x20saved\x20to\x20<code>localStorage</code>\x20will\x0a\x20\x20\x20\x20\x20\x20override\x20those\x20passed\x20to\x20<code>dat.GUI</code>\x27s\x20constructor.\x20This\x20makes\x20it\x0a\x20\x20\x20\x20\x20\x20easier\x20to\x20work\x20incrementally,\x20but\x20<code>localStorage</code>\x20is\x20fragile,\x0a\x20\x20\x20\x20\x20\x20and\x20your\x20friends\x20may\x20not\x20see\x20the\x20same\x20values\x20you\x20do.\x0a\x0a\x20\x20\x20\x20</div>\x0a\x0a\x20\x20</div>\x0a\x0a</div>',ControllerFactory=function ControllerFactory(_0x5c84d4,_0x2bcf51){var _0x5b10f9=_0x5c84d4[_0x2bcf51];if(Common['isArray'](arguments[0x2])||Common['isObject'](arguments[0x2]))return new OptionController(_0x5c84d4,_0x2bcf51,arguments[0x2]);if(Common['isNumber'](_0x5b10f9)){if(Common['isNumber'](arguments[0x2])&&Common['isNumber'](arguments[0x3])){if(Common['isNumber'](arguments[0x4]))return new NumberControllerSlider(_0x5c84d4,_0x2bcf51,arguments[0x2],arguments[0x3],arguments[0x4]);return new NumberControllerSlider(_0x5c84d4,_0x2bcf51,arguments[0x2],arguments[0x3]);}if(Common['isNumber'](arguments[0x4]))return new NumberControllerBox(_0x5c84d4,_0x2bcf51,{'min':arguments[0x2],'max':arguments[0x3],'step':arguments[0x4]});return new NumberControllerBox(_0x5c84d4,_0x2bcf51,{'min':arguments[0x2],'max':arguments[0x3]});}if(Common['isString'](_0x5b10f9))return new StringController(_0x5c84d4,_0x2bcf51);if(Common['isFunction'](_0x5b10f9))return new FunctionController(_0x5c84d4,_0x2bcf51,'');if(Common['isBoolean'](_0x5b10f9))return new BooleanController(_0x5c84d4,_0x2bcf51);return null;};function requestAnimationFrame$1(_0x576cc1){setTimeout(_0x576cc1,0x3e8/0x3c);}var requestAnimationFrame$1$1=window['requestAnimationFrame']||window['webkitRequestAnimationFrame']||window['mozRequestAnimationFrame']||window['oRequestAnimationFrame']||window['msRequestAnimationFrame']||requestAnimationFrame$1,CenteredDiv=(function(){function _0x10ac5e(){classCallCheck(this,_0x10ac5e),this['backgroundElement']=document['createElement']('div'),Common['extend'](this['backgroundElement']['style'],{'backgroundColor':'rgba(0,0,0,0.8)','top':0x0,'left':0x0,'display':'none','zIndex':'1000','opacity':0x0,'WebkitTransition':'opacity\x200.2s\x20linear','transition':'opacity\x200.2s\x20linear'}),dom['makeFullscreen'](this['backgroundElement']),this['backgroundElement']['style']['position']='fixed',this['domElement']=document['createElement']('div'),Common['extend'](this['domElement']['style'],{'position':'fixed','display':'none','zIndex':'1001','opacity':0x0,'WebkitTransition':'-webkit-transform\x200.2s\x20ease-out,\x20opacity\x200.2s\x20linear','transition':'transform\x200.2s\x20ease-out,\x20opacity\x200.2s\x20linear'}),document['body']['appendChild'](this['backgroundElement']),document['body']['appendChild'](this['domElement']);var _0x429397=this;dom['bind'](this['backgroundElement'],'click',function(){_0x429397['hide']();});}return createClass(_0x10ac5e,[{'key':'show','value':function _0x12dc9e(){var _0x5e636c=this;this['backgroundElement']['style']['display']='block',this['domElement']['style']['display']='block',this['domElement']['style']['opacity']=0x0,this['domElement']['style']['webkitTransform']='scale(1.1)',this['layout'](),Common['defer'](function(){_0x5e636c['backgroundElement']['style']['opacity']=0x1,_0x5e636c['domElement']['style']['opacity']=0x1,_0x5e636c['domElement']['style']['webkitTransform']='scale(1)';});}},{'key':'hide','value':function _0x34938e(){var _0x353197=this,_0x3af63c=function _0x39a031(){_0x353197['domElement']['style']['display']='none',_0x353197['backgroundElement']['style']['display']='none',dom['unbind'](_0x353197['domElement'],'webkitTransitionEnd',_0x39a031),dom['unbind'](_0x353197['domElement'],'transitionend',_0x39a031),dom['unbind'](_0x353197['domElement'],'oTransitionEnd',_0x39a031);};dom['bind'](this['domElement'],'webkitTransitionEnd',_0x3af63c),dom['bind'](this['domElement'],'transitionend',_0x3af63c),dom['bind'](this['domElement'],'oTransitionEnd',_0x3af63c),this['backgroundElement']['style']['opacity']=0x0,this['domElement']['style']['opacity']=0x0,this['domElement']['style']['webkitTransform']='scale(1.1)';}},{'key':'layout','value':function _0x180527(){this['domElement']['style']['left']=window['innerWidth']/0x2-dom['getWidth'](this['domElement'])/0x2+'px',this['domElement']['style']['top']=window['innerHeight']/0x2-dom['getHeight'](this['domElement'])/0x2+'px';}}]),_0x10ac5e;}()),styleSheet=___$insertStyle('.dg\x20ul{list-style:none;margin:0;padding:0;width:100%;clear:both}.dg.ac{position:fixed;top:0;left:0;right:0;height:0;z-index:0}.dg:not(.ac)\x20.main{overflow:hidden}.dg.main{-webkit-transition:opacity\x20.1s\x20linear;-o-transition:opacity\x20.1s\x20linear;-moz-transition:opacity\x20.1s\x20linear;transition:opacity\x20.1s\x20linear}.dg.main.taller-than-window{overflow-y:auto}.dg.main.taller-than-window\x20.close-button{opacity:1;margin-top:-1px;border-top:1px\x20solid\x20#2c2c2c}.dg.main\x20ul.closed\x20.close-button{opacity:1\x20!important}.dg.main:hover\x20.close-button,.dg.main\x20.close-button.drag{opacity:1}.dg.main\x20.close-button{-webkit-transition:opacity\x20.1s\x20linear;-o-transition:opacity\x20.1s\x20linear;-moz-transition:opacity\x20.1s\x20linear;transition:opacity\x20.1s\x20linear;border:0;line-height:19px;height:20px;cursor:pointer;text-align:center;background-color:#000}.dg.main\x20.close-button.close-top{position:relative}.dg.main\x20.close-button.close-bottom{position:absolute}.dg.main\x20.close-button:hover{background-color:#111}.dg.a{float:right;margin-right:15px;overflow-y:visible}.dg.a.has-save>ul.close-top{margin-top:0}.dg.a.has-save>ul.close-bottom{margin-top:27px}.dg.a.has-save>ul.closed{margin-top:0}.dg.a\x20.save-row{top:0;z-index:1002}.dg.a\x20.save-row.close-top{position:relative}.dg.a\x20.save-row.close-bottom{position:fixed}.dg\x20li{-webkit-transition:height\x20.1s\x20ease-out;-o-transition:height\x20.1s\x20ease-out;-moz-transition:height\x20.1s\x20ease-out;transition:height\x20.1s\x20ease-out;-webkit-transition:overflow\x20.1s\x20linear;-o-transition:overflow\x20.1s\x20linear;-moz-transition:overflow\x20.1s\x20linear;transition:overflow\x20.1s\x20linear}.dg\x20li:not(.folder){cursor:auto;height:27px;line-height:27px;padding:0\x204px\x200\x205px}.dg\x20li.folder{padding:0;border-left:4px\x20solid\x20rgba(0,0,0,0)}.dg\x20li.title{cursor:pointer;margin-left:-4px}.dg\x20.closed\x20li:not(.title),.dg\x20.closed\x20ul\x20li,.dg\x20.closed\x20ul\x20li>*{height:0;overflow:hidden;border:0}.dg\x20.cr{clear:both;padding-left:3px;height:27px;overflow:hidden}.dg\x20.property-name{cursor:default;float:left;clear:left;width:40%;overflow:hidden;text-overflow:ellipsis}.dg\x20.cr.function\x20.property-name{width:100%}.dg\x20.c{float:left;width:60%;position:relative}.dg\x20.c\x20input[type=text]{border:0;margin-top:4px;padding:3px;width:100%;float:right}.dg\x20.has-slider\x20input[type=text]{width:30%;margin-left:0}.dg\x20.slider{float:left;width:66%;margin-left:-5px;margin-right:0;height:19px;margin-top:4px}.dg\x20.slider-fg{height:100%}.dg\x20.c\x20input[type=checkbox]{margin-top:7px}.dg\x20.c\x20select{margin-top:5px}.dg\x20.cr.function,.dg\x20.cr.function\x20.property-name,.dg\x20.cr.function\x20*,.dg\x20.cr.boolean,.dg\x20.cr.boolean\x20*{cursor:pointer}.dg\x20.cr.color{overflow:visible}.dg\x20.selector{display:none;position:absolute;margin-left:-9px;margin-top:23px;z-index:10}.dg\x20.c:hover\x20.selector,.dg\x20.selector.drag{display:block}.dg\x20li.save-row{padding:0}.dg\x20li.save-row\x20.button{display:inline-block;padding:0px\x206px}.dg.dialogue{background-color:#222;width:460px;padding:15px;font-size:13px;line-height:15px}#dg-new-constructor{padding:10px;color:#222;font-family:Monaco,\x20monospace;font-size:10px;border:0;resize:none;box-shadow:inset\x201px\x201px\x201px\x20#888;word-wrap:break-word;margin:12px\x200;display:block;width:440px;overflow-y:scroll;height:100px;position:relative}#dg-local-explain{display:none;font-size:11px;line-height:17px;border-radius:3px;background-color:#333;padding:8px;margin-top:10px}#dg-local-explain\x20code{font-size:10px}#dat-gui-save-locally{display:none}.dg{color:#eee;font:11px\x20\x27Lucida\x20Grande\x27,\x20sans-serif;text-shadow:0\x20-1px\x200\x20#111}.dg.main::-webkit-scrollbar{width:5px;background:#1a1a1a}.dg.main::-webkit-scrollbar-corner{height:0;display:none}.dg.main::-webkit-scrollbar-thumb{border-radius:5px;background:#676767}.dg\x20li:not(.folder){background:#1a1a1a;border-bottom:1px\x20solid\x20#2c2c2c}.dg\x20li.save-row{line-height:25px;background:#dad5cb;border:0}.dg\x20li.save-row\x20select{margin-left:5px;width:108px}.dg\x20li.save-row\x20.button{margin-left:5px;margin-top:1px;border-radius:2px;font-size:9px;line-height:7px;padding:4px\x204px\x205px\x204px;background:#c5bdad;color:#fff;text-shadow:0\x201px\x200\x20#b0a58f;box-shadow:0\x20-1px\x200\x20#b0a58f;cursor:pointer}.dg\x20li.save-row\x20.button.gears{background:#c5bdad\x20url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAANCAYAAAB/9ZQ7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAQJJREFUeNpiYKAU/P//PwGIC/ApCABiBSAW+I8AClAcgKxQ4T9hoMAEUrxx2QSGN6+egDX+/vWT4e7N82AMYoPAx/evwWoYoSYbACX2s7KxCxzcsezDh3evFoDEBYTEEqycggWAzA9AuUSQQgeYPa9fPv6/YWm/Acx5IPb7ty/fw+QZblw67vDs8R0YHyQhgObx+yAJkBqmG5dPPDh1aPOGR/eugW0G4vlIoTIfyFcA+QekhhHJhPdQxbiAIguMBTQZrPD7108M6roWYDFQiIAAv6Aow/1bFwXgis+f2LUAynwoIaNcz8XNx3Dl7MEJUDGQpx9gtQ8YCueB+D26OECAAQDadt7e46D42QAAAABJRU5ErkJggg==)\x202px\x201px\x20no-repeat;height:7px;width:8px}.dg\x20li.save-row\x20.button:hover{background-color:#bab19e;box-shadow:0\x20-1px\x200\x20#b0a58f}.dg\x20li.folder{border-bottom:0}.dg\x20li.title{padding-left:16px;background:#000\x20url(data:image/gif;base64,R0lGODlhBQAFAJEAAP////Pz8////////yH5BAEAAAIALAAAAAAFAAUAAAIIlI+hKgFxoCgAOw==)\x206px\x2010px\x20no-repeat;cursor:pointer;border-bottom:1px\x20solid\x20rgba(255,255,255,0.2)}.dg\x20.closed\x20li.title{background-image:url(data:image/gif;base64,R0lGODlhBQAFAJEAAP////Pz8////////yH5BAEAAAIALAAAAAAFAAUAAAIIlGIWqMCbWAEAOw==)}.dg\x20.cr.boolean{border-left:3px\x20solid\x20#806787}.dg\x20.cr.color{border-left:3px\x20solid}.dg\x20.cr.function{border-left:3px\x20solid\x20#e61d5f}.dg\x20.cr.number{border-left:3px\x20solid\x20#2FA1D6}.dg\x20.cr.number\x20input[type=text]{color:#2FA1D6}.dg\x20.cr.string{border-left:3px\x20solid\x20#1ed36f}.dg\x20.cr.string\x20input[type=text]{color:#1ed36f}.dg\x20.cr.function:hover,.dg\x20.cr.boolean:hover{background:#111}.dg\x20.c\x20input[type=text]{background:#303030;outline:none}.dg\x20.c\x20input[type=text]:hover{background:#3c3c3c}.dg\x20.c\x20input[type=text]:focus{background:#494949;color:#fff}.dg\x20.c\x20.slider{background:#303030;cursor:ew-resize}.dg\x20.c\x20.slider-fg{background:#2FA1D6;max-width:100%}.dg\x20.c\x20.slider:hover{background:#3c3c3c}.dg\x20.c\x20.slider:hover\x20.slider-fg{background:#44abda}\x0a');css['inject'](styleSheet);var CSS_NAMESPACE='dg',HIDE_KEY_CODE=0x48,CLOSE_BUTTON_HEIGHT=0x14,DEFAULT_DEFAULT_PRESET_NAME='Default',SUPPORTS_LOCAL_STORAGE=(function(){try{return !!window['localStorage'];}catch(_0x179f1c){return ![];}}()),SAVE_DIALOGUE=void 0x0,autoPlaceVirgin=!![],autoPlaceContainer=void 0x0,hide=![],hideableGuis=[],GUI=function GUI(_0x124656){var _0x531886=this,_0x51b0c9=_0x124656||{};this['domElement']=document['createElement']('div'),this['__ul']=document['createElement']('ul'),this['domElement']['appendChild'](this['__ul']),dom['addClass'](this['domElement'],CSS_NAMESPACE),this['__folders']={},this['__controllers']=[],this['__rememberedObjects']=[],this['__rememberedObjectIndecesToControllers']=[],this['__listening']=[],_0x51b0c9=Common['defaults'](_0x51b0c9,{'closeOnTop':![],'autoPlace':!![],'width':GUI['DEFAULT_WIDTH']}),_0x51b0c9=Common['defaults'](_0x51b0c9,{'resizable':_0x51b0c9['autoPlace'],'hideable':_0x51b0c9['autoPlace']});!Common['isUndefined'](_0x51b0c9['load'])?_0x51b0c9['preset']&&(_0x51b0c9['load']['preset']=_0x51b0c9['preset']):_0x51b0c9['load']={'preset':DEFAULT_DEFAULT_PRESET_NAME};Common['isUndefined'](_0x51b0c9['parent'])&&_0x51b0c9['hideable']&&hideableGuis['push'](this);_0x51b0c9['resizable']=Common['isUndefined'](_0x51b0c9['parent'])&&_0x51b0c9['resizable'];_0x51b0c9['autoPlace']&&Common['isUndefined'](_0x51b0c9['scrollable'])&&(_0x51b0c9['scrollable']=!![]);var _0x3daa21=SUPPORTS_LOCAL_STORAGE&&localStorage['getItem'](getLocalStorageHash(this,'isLocal'))==='true',_0x16ee99=void 0x0,_0x33a248=void 0x0;Object['defineProperties'](this,{'parent':{'get':function _0x5e57e0(){return _0x51b0c9['parent'];}},'scrollable':{'get':function _0x24dcda(){return _0x51b0c9['scrollable'];}},'autoPlace':{'get':function _0x2c052b(){return _0x51b0c9['autoPlace'];}},'closeOnTop':{'get':function _0x240698(){return _0x51b0c9['closeOnTop'];}},'preset':{'get':function _0x46b578(){if(_0x531886['parent'])return _0x531886['getRoot']()['preset'];return _0x51b0c9['load']['preset'];},'set':function _0x4f669c(_0x4a72c6){_0x531886['parent']?_0x531886['getRoot']()['preset']=_0x4a72c6:_0x51b0c9['load']['preset']=_0x4a72c6,setPresetSelectIndex(this),_0x531886['revert']();}},'width':{'get':function _0x5298dc(){return _0x51b0c9['width'];},'set':function _0x44d128(_0x1ecffd){_0x51b0c9['width']=_0x1ecffd,setWidth(_0x531886,_0x1ecffd);}},'name':{'get':function _0x4fc89e(){return _0x51b0c9['name'];},'set':function _0xc82627(_0x514955){_0x51b0c9['name']=_0x514955,_0x33a248&&(_0x33a248['innerHTML']=_0x51b0c9['name']);}},'closed':{'get':function _0x17af3c(){return _0x51b0c9['closed'];},'set':function _0x44cfb0(_0x440f95){_0x51b0c9['closed']=_0x440f95,_0x51b0c9['closed']?dom['addClass'](_0x531886['__ul'],GUI['CLASS_CLOSED']):dom['removeClass'](_0x531886['__ul'],GUI['CLASS_CLOSED']),this['onResize'](),_0x531886['__closeButton']&&(_0x531886['__closeButton']['innerHTML']=_0x440f95?GUI['TEXT_OPEN']:GUI['TEXT_CLOSED']);}},'load':{'get':function _0x64a0a2(){return _0x51b0c9['load'];}},'useLocalStorage':{'get':function _0x15595d(){return _0x3daa21;},'set':function _0x29d3cd(_0x25bb7a){SUPPORTS_LOCAL_STORAGE&&(_0x3daa21=_0x25bb7a,_0x25bb7a?dom['bind'](window,'unload',_0x16ee99):dom['unbind'](window,'unload',_0x16ee99),localStorage['setItem'](getLocalStorageHash(_0x531886,'isLocal'),_0x25bb7a));}}});if(Common['isUndefined'](_0x51b0c9['parent'])){this['closed']=_0x51b0c9['closed']||![],dom['addClass'](this['domElement'],GUI['CLASS_MAIN']),dom['makeSelectable'](this['domElement'],![]);if(SUPPORTS_LOCAL_STORAGE){if(_0x3daa21){_0x531886['useLocalStorage']=!![];var _0x5653fe=localStorage['getItem'](getLocalStorageHash(this,'gui'));_0x5653fe&&(_0x51b0c9['load']=JSON['parse'](_0x5653fe));}}this['__closeButton']=document['createElement']('div'),this['__closeButton']['innerHTML']=GUI['TEXT_CLOSED'],dom['addClass'](this['__closeButton'],GUI['CLASS_CLOSE_BUTTON']),_0x51b0c9['closeOnTop']?(dom['addClass'](this['__closeButton'],GUI['CLASS_CLOSE_TOP']),this['domElement']['insertBefore'](this['__closeButton'],this['domElement']['childNodes'][0x0])):(dom['addClass'](this['__closeButton'],GUI['CLASS_CLOSE_BOTTOM']),this['domElement']['appendChild'](this['__closeButton'])),dom['bind'](this['__closeButton'],'click',function(){_0x531886['closed']=!_0x531886['closed'];});}else {_0x51b0c9['closed']===undefined&&(_0x51b0c9['closed']=!![]);var _0x1d9f2b=document['createTextNode'](_0x51b0c9['name']);dom['addClass'](_0x1d9f2b,'controller-name'),_0x33a248=addRow(_0x531886,_0x1d9f2b);var _0x4ccdb7=function _0x28fc60(_0x1ed32e){return _0x1ed32e['preventDefault'](),_0x531886['closed']=!_0x531886['closed'],![];};dom['addClass'](this['__ul'],GUI['CLASS_CLOSED']),dom['addClass'](_0x33a248,'title'),dom['bind'](_0x33a248,'click',_0x4ccdb7),!_0x51b0c9['closed']&&(this['closed']=![]);}_0x51b0c9['autoPlace']&&(Common['isUndefined'](_0x51b0c9['parent'])&&(autoPlaceVirgin&&(autoPlaceContainer=document['createElement']('div'),dom['addClass'](autoPlaceContainer,CSS_NAMESPACE),dom['addClass'](autoPlaceContainer,GUI['CLASS_AUTO_PLACE_CONTAINER']),document['body']['appendChild'](autoPlaceContainer),autoPlaceVirgin=![]),autoPlaceContainer['appendChild'](this['domElement']),dom['addClass'](this['domElement'],GUI['CLASS_AUTO_PLACE'])),!this['parent']&&setWidth(_0x531886,_0x51b0c9['width']));this['__resizeHandler']=function(){_0x531886['onResizeDebounced']();},dom['bind'](window,'resize',this['__resizeHandler']),dom['bind'](this['__ul'],'webkitTransitionEnd',this['__resizeHandler']),dom['bind'](this['__ul'],'transitionend',this['__resizeHandler']),dom['bind'](this['__ul'],'oTransitionEnd',this['__resizeHandler']),this['onResize']();_0x51b0c9['resizable']&&addResizeHandle(this);_0x16ee99=function _0x4e22f6(){SUPPORTS_LOCAL_STORAGE&&localStorage['getItem'](getLocalStorageHash(_0x531886,'isLocal'))==='true'&&localStorage['setItem'](getLocalStorageHash(_0x531886,'gui'),JSON['stringify'](_0x531886['getSaveObject']()));},this['saveToLocalStorageIfPossible']=_0x16ee99;function _0x2f0f87(){var _0x52cbbe=_0x531886['getRoot']();_0x52cbbe['width']+=0x1,Common['defer'](function(){_0x52cbbe['width']-=0x1;});}!_0x51b0c9['parent']&&_0x2f0f87();};GUI['toggleHide']=function(){hide=!hide,Common['each'](hideableGuis,function(_0x2283c6){_0x2283c6['domElement']['style']['display']=hide?'none':'';});},GUI['CLASS_AUTO_PLACE']='a',GUI['CLASS_AUTO_PLACE_CONTAINER']='ac',GUI['CLASS_MAIN']='main',GUI['CLASS_CONTROLLER_ROW']='cr',GUI['CLASS_TOO_TALL']='taller-than-window',GUI['CLASS_CLOSED']='closed',GUI['CLASS_CLOSE_BUTTON']='close-button',GUI['CLASS_CLOSE_TOP']='close-top',GUI['CLASS_CLOSE_BOTTOM']='close-bottom',GUI['CLASS_DRAG']='drag',GUI['DEFAULT_WIDTH']=0xf5,GUI['TEXT_CLOSED']='Close\x20Controls',GUI['TEXT_OPEN']='Open\x20Controls',GUI['_keydownHandler']=function(_0x22a565){document['activeElement']['type']!=='text'&&(_0x22a565['which']===HIDE_KEY_CODE||_0x22a565['keyCode']===HIDE_KEY_CODE)&&GUI['toggleHide']();},dom['bind'](window,'keydown',GUI['_keydownHandler'],![]),Common['extend'](GUI['prototype'],{'add':function add(_0x3d675d,_0x3b8d1b){return _add(this,_0x3d675d,_0x3b8d1b,{'factoryArgs':Array['prototype']['slice']['call'](arguments,0x2)});},'addColor':function addColor(_0x27f216,_0x5aa867){return _add(this,_0x27f216,_0x5aa867,{'color':!![]});},'remove':function remove(_0x1530c3){this['__ul']['removeChild'](_0x1530c3['__li']),this['__controllers']['splice'](this['__controllers']['indexOf'](_0x1530c3),0x1);var _0x3f0291=this;Common['defer'](function(){_0x3f0291['onResize']();});},'destroy':function destroy(){if(this['parent'])throw new Error('Only\x20the\x20root\x20GUI\x20should\x20be\x20removed\x20with\x20.destroy().\x20'+'For\x20subfolders,\x20use\x20gui.removeFolder(folder)\x20instead.');this['autoPlace']&&autoPlaceContainer['removeChild'](this['domElement']);var _0x3e4d60=this;Common['each'](this['__folders'],function(_0x254421){_0x3e4d60['removeFolder'](_0x254421);}),dom['unbind'](window,'keydown',GUI['_keydownHandler'],![]),removeListeners(this);},'addFolder':function addFolder(_0x137a27){if(this['__folders'][_0x137a27]!==undefined)throw new Error('You\x20already\x20have\x20a\x20folder\x20in\x20this\x20GUI\x20by\x20the'+'\x20name\x20\x22'+_0x137a27+'\x22');var _0x4494f8={'name':_0x137a27,'parent':this};_0x4494f8['autoPlace']=this['autoPlace'];this['load']&&this['load']['folders']&&this['load']['folders'][_0x137a27]&&(_0x4494f8['closed']=this['load']['folders'][_0x137a27]['closed'],_0x4494f8['load']=this['load']['folders'][_0x137a27]);var _0x17ec77=new GUI(_0x4494f8);this['__folders'][_0x137a27]=_0x17ec77;var _0x21ef83=addRow(this,_0x17ec77['domElement']);return dom['addClass'](_0x21ef83,'folder'),_0x17ec77;},'removeFolder':function removeFolder(_0xf8ffc7){this['__ul']['removeChild'](_0xf8ffc7['domElement']['parentElement']),delete this['__folders'][_0xf8ffc7['name']];this['load']&&this['load']['folders']&&this['load']['folders'][_0xf8ffc7['name']]&&delete this['load']['folders'][_0xf8ffc7['name']];removeListeners(_0xf8ffc7);var _0x337d22=this;Common['each'](_0xf8ffc7['__folders'],function(_0x2a0cc6){_0xf8ffc7['removeFolder'](_0x2a0cc6);}),Common['defer'](function(){_0x337d22['onResize']();});},'open':function open(){this['closed']=![];},'close':function close(){this['closed']=!![];},'hide':function hide(){this['domElement']['style']['display']='none';},'show':function show(){this['domElement']['style']['display']='';},'onResize':function onResize(){var _0x292648=this['getRoot']();if(_0x292648['scrollable']){var _0x7f97ce=dom['getOffset'](_0x292648['__ul'])['top'],_0x2ff1fb=0x0;Common['each'](_0x292648['__ul']['childNodes'],function(_0x1563f5){!(_0x292648['autoPlace']&&_0x1563f5===_0x292648['__save_row'])&&(_0x2ff1fb+=dom['getHeight'](_0x1563f5));}),window['innerHeight']-_0x7f97ce-CLOSE_BUTTON_HEIGHT<_0x2ff1fb?(dom['addClass'](_0x292648['domElement'],GUI['CLASS_TOO_TALL']),_0x292648['__ul']['style']['height']=window['innerHeight']-_0x7f97ce-CLOSE_BUTTON_HEIGHT+'px'):(dom['removeClass'](_0x292648['domElement'],GUI['CLASS_TOO_TALL']),_0x292648['__ul']['style']['height']='auto');}_0x292648['__resize_handle']&&Common['defer'](function(){_0x292648['__resize_handle']['style']['height']=_0x292648['__ul']['offsetHeight']+'px';}),_0x292648['__closeButton']&&(_0x292648['__closeButton']['style']['width']=_0x292648['width']+'px');},'onResizeDebounced':Common['debounce'](function(){this['onResize']();},0x32),'remember':function remember(){Common['isUndefined'](SAVE_DIALOGUE)&&(SAVE_DIALOGUE=new CenteredDiv(),SAVE_DIALOGUE['domElement']['innerHTML']=saveDialogContents);if(this['parent'])throw new Error('You\x20can\x20only\x20call\x20remember\x20on\x20a\x20top\x20level\x20GUI.');var _0x215917=this;Common['each'](Array['prototype']['slice']['call'](arguments),function(_0xb6e6ec){_0x215917['__rememberedObjects']['length']===0x0&&addSaveMenu(_0x215917),_0x215917['__rememberedObjects']['indexOf'](_0xb6e6ec)===-0x1&&_0x215917['__rememberedObjects']['push'](_0xb6e6ec);}),this['autoPlace']&&setWidth(this,this['width']);},'getRoot':function getRoot(){var _0x2a24c3=this;while(_0x2a24c3['parent']){_0x2a24c3=_0x2a24c3['parent'];}return _0x2a24c3;},'getSaveObject':function getSaveObject(){var _0x2e9aaa=this['load'];return _0x2e9aaa['closed']=this['closed'],this['__rememberedObjects']['length']>0x0&&(_0x2e9aaa['preset']=this['preset'],!_0x2e9aaa['remembered']&&(_0x2e9aaa['remembered']={}),_0x2e9aaa['remembered'][this['preset']]=getCurrentPreset(this)),_0x2e9aaa['folders']={},Common['each'](this['__folders'],function(_0x137c9e,_0x54cb3e){_0x2e9aaa['folders'][_0x54cb3e]=_0x137c9e['getSaveObject']();}),_0x2e9aaa;},'save':function save(){!this['load']['remembered']&&(this['load']['remembered']={}),this['load']['remembered'][this['preset']]=getCurrentPreset(this),markPresetModified(this,![]),this['saveToLocalStorageIfPossible']();},'saveAs':function saveAs(_0x315e3d){!this['load']['remembered']&&(this['load']['remembered']={},this['load']['remembered'][DEFAULT_DEFAULT_PRESET_NAME]=getCurrentPreset(this,!![])),this['load']['remembered'][_0x315e3d]=getCurrentPreset(this),this['preset']=_0x315e3d,addPresetOption(this,_0x315e3d,!![]),this['saveToLocalStorageIfPossible']();},'revert':function revert(_0x3eab6f){Common['each'](this['__controllers'],function(_0x38aba3){!this['getRoot']()['load']['remembered']?_0x38aba3['setValue'](_0x38aba3['initialValue']):recallSavedValue(_0x3eab6f||this['getRoot'](),_0x38aba3),_0x38aba3['__onFinishChange']&&_0x38aba3['__onFinishChange']['call'](_0x38aba3,_0x38aba3['getValue']());},this),Common['each'](this['__folders'],function(_0x3de53d){_0x3de53d['revert'](_0x3de53d);}),!_0x3eab6f&&markPresetModified(this['getRoot'](),![]);},'listen':function listen(_0x4e2488){var _0x3ac147=this['__listening']['length']===0x0;this['__listening']['push'](_0x4e2488),_0x3ac147&&updateDisplays(this['__listening']);},'updateDisplay':function updateDisplay(){Common['each'](this['__controllers'],function(_0x19f575){_0x19f575['updateDisplay']();}),Common['each'](this['__folders'],function(_0x3c8979){_0x3c8979['updateDisplay']();});}});function addRow(_0x174697,_0x16c268,_0x2e83a6){var _0x72911c=document['createElement']('li');return _0x16c268&&_0x72911c['appendChild'](_0x16c268),_0x2e83a6?_0x174697['__ul']['insertBefore'](_0x72911c,_0x2e83a6):_0x174697['__ul']['appendChild'](_0x72911c),_0x174697['onResize'](),_0x72911c;}function removeListeners(_0x598454){dom['unbind'](window,'resize',_0x598454['__resizeHandler']),_0x598454['saveToLocalStorageIfPossible']&&dom['unbind'](window,'unload',_0x598454['saveToLocalStorageIfPossible']);}function markPresetModified(_0xe2148c,_0x1b0c28){var _0x2fbbc0=_0xe2148c['__preset_select'][_0xe2148c['__preset_select']['selectedIndex']];_0x1b0c28?_0x2fbbc0['innerHTML']=_0x2fbbc0['value']+'*':_0x2fbbc0['innerHTML']=_0x2fbbc0['value'];}function augmentController(_0x3b8ca1,_0x1bb9df,_0x49deb2){_0x49deb2['__li']=_0x1bb9df,_0x49deb2['__gui']=_0x3b8ca1,Common['extend'](_0x49deb2,{'options':function _0x26b810(_0x446a01){if(arguments['length']>0x1){var _0x19c1d7=_0x49deb2['__li']['nextElementSibling'];return _0x49deb2['remove'](),_add(_0x3b8ca1,_0x49deb2['object'],_0x49deb2['property'],{'before':_0x19c1d7,'factoryArgs':[Common['toArray'](arguments)]});}if(Common['isArray'](_0x446a01)||Common['isObject'](_0x446a01)){var _0x4ea6b5=_0x49deb2['__li']['nextElementSibling'];return _0x49deb2['remove'](),_add(_0x3b8ca1,_0x49deb2['object'],_0x49deb2['property'],{'before':_0x4ea6b5,'factoryArgs':[_0x446a01]});}},'name':function _0x6755ec(_0x2f8252){return _0x49deb2['__li']['firstElementChild']['firstElementChild']['innerHTML']=_0x2f8252,_0x49deb2;},'listen':function _0x1bc78f(){return _0x49deb2['__gui']['listen'](_0x49deb2),_0x49deb2;},'remove':function _0x352b8a(){return _0x49deb2['__gui']['remove'](_0x49deb2),_0x49deb2;}});if(_0x49deb2 instanceof NumberControllerSlider){var _0x47b3e4=new NumberControllerBox(_0x49deb2['object'],_0x49deb2['property'],{'min':_0x49deb2['__min'],'max':_0x49deb2['__max'],'step':_0x49deb2['__step']});Common['each'](['updateDisplay','onChange','onFinishChange','step','min','max'],function(_0xacf42c){var _0x18e24f=_0x49deb2[_0xacf42c],_0x4504e1=_0x47b3e4[_0xacf42c];_0x49deb2[_0xacf42c]=_0x47b3e4[_0xacf42c]=function(){var _0x314765=Array['prototype']['slice']['call'](arguments);return _0x4504e1['apply'](_0x47b3e4,_0x314765),_0x18e24f['apply'](_0x49deb2,_0x314765);};}),dom['addClass'](_0x1bb9df,'has-slider'),_0x49deb2['domElement']['insertBefore'](_0x47b3e4['domElement'],_0x49deb2['domElement']['firstElementChild']);}else {if(_0x49deb2 instanceof NumberControllerBox){var _0x338eb8=function _0xddf842(_0x4c7864){if(Common['isNumber'](_0x49deb2['__min'])&&Common['isNumber'](_0x49deb2['__max'])){var _0x17d518=_0x49deb2['__li']['firstElementChild']['firstElementChild']['innerHTML'],_0xe81192=_0x49deb2['__gui']['__listening']['indexOf'](_0x49deb2)>-0x1;_0x49deb2['remove']();var _0x2af393=_add(_0x3b8ca1,_0x49deb2['object'],_0x49deb2['property'],{'before':_0x49deb2['__li']['nextElementSibling'],'factoryArgs':[_0x49deb2['__min'],_0x49deb2['__max'],_0x49deb2['__step']]});_0x2af393['name'](_0x17d518);if(_0xe81192)_0x2af393['listen']();return _0x2af393;}return _0x4c7864;};_0x49deb2['min']=Common['compose'](_0x338eb8,_0x49deb2['min']),_0x49deb2['max']=Common['compose'](_0x338eb8,_0x49deb2['max']);}else {if(_0x49deb2 instanceof BooleanController)dom['bind'](_0x1bb9df,'click',function(){dom['fakeEvent'](_0x49deb2['__checkbox'],'click');}),dom['bind'](_0x49deb2['__checkbox'],'click',function(_0x3c9e8b){_0x3c9e8b['stopPropagation']();});else {if(_0x49deb2 instanceof FunctionController)dom['bind'](_0x1bb9df,'click',function(){dom['fakeEvent'](_0x49deb2['__button'],'click');}),dom['bind'](_0x1bb9df,'mouseover',function(){dom['addClass'](_0x49deb2['__button'],'hover');}),dom['bind'](_0x1bb9df,'mouseout',function(){dom['removeClass'](_0x49deb2['__button'],'hover');});else _0x49deb2 instanceof ColorController&&(dom['addClass'](_0x1bb9df,'color'),_0x49deb2['updateDisplay']=Common['compose'](function(_0x5bc110){return _0x1bb9df['style']['borderLeftColor']=_0x49deb2['__color']['toString'](),_0x5bc110;},_0x49deb2['updateDisplay']),_0x49deb2['updateDisplay']());}}}_0x49deb2['setValue']=Common['compose'](function(_0x345a56){return _0x3b8ca1['getRoot']()['__preset_select']&&_0x49deb2['isModified']()&&markPresetModified(_0x3b8ca1['getRoot'](),!![]),_0x345a56;},_0x49deb2['setValue']);}function recallSavedValue(_0x474c3a,_0x2b40f5){var _0xf09f8e=_0x474c3a['getRoot'](),_0x54bf9f=_0xf09f8e['__rememberedObjects']['indexOf'](_0x2b40f5['object']);if(_0x54bf9f!==-0x1){var _0x3d899d=_0xf09f8e['__rememberedObjectIndecesToControllers'][_0x54bf9f];_0x3d899d===undefined&&(_0x3d899d={},_0xf09f8e['__rememberedObjectIndecesToControllers'][_0x54bf9f]=_0x3d899d);_0x3d899d[_0x2b40f5['property']]=_0x2b40f5;if(_0xf09f8e['load']&&_0xf09f8e['load']['remembered']){var _0x4139d7=_0xf09f8e['load']['remembered'],_0x2347a8=void 0x0;if(_0x4139d7[_0x474c3a['preset']])_0x2347a8=_0x4139d7[_0x474c3a['preset']];else {if(_0x4139d7[DEFAULT_DEFAULT_PRESET_NAME])_0x2347a8=_0x4139d7[DEFAULT_DEFAULT_PRESET_NAME];else return;}if(_0x2347a8[_0x54bf9f]&&_0x2347a8[_0x54bf9f][_0x2b40f5['property']]!==undefined){var _0x34409a=_0x2347a8[_0x54bf9f][_0x2b40f5['property']];_0x2b40f5['initialValue']=_0x34409a,_0x2b40f5['setValue'](_0x34409a);}}}}function _add(_0x19dacd,_0x5e6cf8,_0x451c8d,_0x764960){if(_0x5e6cf8[_0x451c8d]===undefined)throw new Error('Object\x20\x22'+_0x5e6cf8+'\x22\x20has\x20no\x20property\x20\x22'+_0x451c8d+'\x22');var _0x27f67b=void 0x0;if(_0x764960['color'])_0x27f67b=new ColorController(_0x5e6cf8,_0x451c8d);else {var _0x4ff62e=[_0x5e6cf8,_0x451c8d]['concat'](_0x764960['factoryArgs']);_0x27f67b=ControllerFactory['apply'](_0x19dacd,_0x4ff62e);}_0x764960['before']instanceof Controller&&(_0x764960['before']=_0x764960['before']['__li']);recallSavedValue(_0x19dacd,_0x27f67b),dom['addClass'](_0x27f67b['domElement'],'c');var _0x2b1826=document['createElement']('span');dom['addClass'](_0x2b1826,'property-name'),_0x2b1826['innerHTML']=_0x27f67b['property'];var _0x3d8384=document['createElement']('div');_0x3d8384['appendChild'](_0x2b1826),_0x3d8384['appendChild'](_0x27f67b['domElement']);var _0x585eaa=addRow(_0x19dacd,_0x3d8384,_0x764960['before']);return dom['addClass'](_0x585eaa,GUI['CLASS_CONTROLLER_ROW']),_0x27f67b instanceof ColorController?dom['addClass'](_0x585eaa,'color'):dom['addClass'](_0x585eaa,_typeof(_0x27f67b['getValue']())),augmentController(_0x19dacd,_0x585eaa,_0x27f67b),_0x19dacd['__controllers']['push'](_0x27f67b),_0x27f67b;}function getLocalStorageHash(_0x5226a2,_0x8415d){return document['location']['href']+'.'+_0x8415d;}function addPresetOption(_0x21b4f4,_0x1a5350,_0x57ae5b){var _0x50f5fa=document['createElement']('option');_0x50f5fa['innerHTML']=_0x1a5350,_0x50f5fa['value']=_0x1a5350,_0x21b4f4['__preset_select']['appendChild'](_0x50f5fa),_0x57ae5b&&(_0x21b4f4['__preset_select']['selectedIndex']=_0x21b4f4['__preset_select']['length']-0x1);}function showHideExplain(_0x3e9bfe,_0x30ff78){_0x30ff78['style']['display']=_0x3e9bfe['useLocalStorage']?'block':'none';}function addSaveMenu(_0x5ded2e){var _0x4751d7=_0x5ded2e['__save_row']=document['createElement']('li');dom['addClass'](_0x5ded2e['domElement'],'has-save'),_0x5ded2e['__ul']['insertBefore'](_0x4751d7,_0x5ded2e['__ul']['firstChild']),dom['addClass'](_0x4751d7,'save-row');var _0x4162ab=document['createElement']('span');_0x4162ab['innerHTML']=' ',dom['addClass'](_0x4162ab,'button\x20gears');var _0x44da53=document['createElement']('span');_0x44da53['innerHTML']='Save',dom['addClass'](_0x44da53,'button'),dom['addClass'](_0x44da53,'save');var _0x14dcce=document['createElement']('span');_0x14dcce['innerHTML']='New',dom['addClass'](_0x14dcce,'button'),dom['addClass'](_0x14dcce,'save-as');var _0x23f3d0=document['createElement']('span');_0x23f3d0['innerHTML']='Revert',dom['addClass'](_0x23f3d0,'button'),dom['addClass'](_0x23f3d0,'revert');var _0x64b92b=_0x5ded2e['__preset_select']=document['createElement']('select');_0x5ded2e['load']&&_0x5ded2e['load']['remembered']?Common['each'](_0x5ded2e['load']['remembered'],function(_0xb2253e,_0x593c03){addPresetOption(_0x5ded2e,_0x593c03,_0x593c03===_0x5ded2e['preset']);}):addPresetOption(_0x5ded2e,DEFAULT_DEFAULT_PRESET_NAME,![]);dom['bind'](_0x64b92b,'change',function(){for(var _0x5bd298=0x0;_0x5bd298<_0x5ded2e['__preset_select']['length'];_0x5bd298++){_0x5ded2e['__preset_select'][_0x5bd298]['innerHTML']=_0x5ded2e['__preset_select'][_0x5bd298]['value'];}_0x5ded2e['preset']=this['value'];}),_0x4751d7['appendChild'](_0x64b92b),_0x4751d7['appendChild'](_0x4162ab),_0x4751d7['appendChild'](_0x44da53),_0x4751d7['appendChild'](_0x14dcce),_0x4751d7['appendChild'](_0x23f3d0);if(SUPPORTS_LOCAL_STORAGE){var _0x5c5995=document['getElementById']('dg-local-explain'),_0x4ca807=document['getElementById']('dg-local-storage'),_0x476b47=document['getElementById']('dg-save-locally');_0x476b47['style']['display']='block',localStorage['getItem'](getLocalStorageHash(_0x5ded2e,'isLocal'))==='true'&&_0x4ca807['setAttribute']('checked','checked'),showHideExplain(_0x5ded2e,_0x5c5995),dom['bind'](_0x4ca807,'change',function(){_0x5ded2e['useLocalStorage']=!_0x5ded2e['useLocalStorage'],showHideExplain(_0x5ded2e,_0x5c5995);});}var _0x4b7b8d=document['getElementById']('dg-new-constructor');dom['bind'](_0x4b7b8d,'keydown',function(_0x309d16){_0x309d16['metaKey']&&(_0x309d16['which']===0x43||_0x309d16['keyCode']===0x43)&&SAVE_DIALOGUE['hide']();}),dom['bind'](_0x4162ab,'click',function(){_0x4b7b8d['innerHTML']=JSON['stringify'](_0x5ded2e['getSaveObject'](),undefined,0x2),SAVE_DIALOGUE['show'](),_0x4b7b8d['focus'](),_0x4b7b8d['select']();}),dom['bind'](_0x44da53,'click',function(){_0x5ded2e['save']();}),dom['bind'](_0x14dcce,'click',function(){var _0x4a5eec=prompt('Enter\x20a\x20new\x20preset\x20name.');_0x4a5eec&&_0x5ded2e['saveAs'](_0x4a5eec);}),dom['bind'](_0x23f3d0,'click',function(){_0x5ded2e['revert']();});}function addResizeHandle(_0x1df7b1){var _0x111c6f=void 0x0;_0x1df7b1['__resize_handle']=document['createElement']('div'),Common['extend'](_0x1df7b1['__resize_handle']['style'],{'width':'6px','marginLeft':'-3px','height':'200px','cursor':'ew-resize','position':'absolute'});function _0x474da0(_0x319347){return _0x319347['preventDefault'](),_0x1df7b1['width']+=_0x111c6f-_0x319347['clientX'],_0x1df7b1['onResize'](),_0x111c6f=_0x319347['clientX'],![];}function _0x128370(){dom['removeClass'](_0x1df7b1['__closeButton'],GUI['CLASS_DRAG']),dom['unbind'](window,'mousemove',_0x474da0),dom['unbind'](window,'mouseup',_0x128370);}function _0x35ff15(_0x5bd0ff){return _0x5bd0ff['preventDefault'](),_0x111c6f=_0x5bd0ff['clientX'],dom['addClass'](_0x1df7b1['__closeButton'],GUI['CLASS_DRAG']),dom['bind'](window,'mousemove',_0x474da0),dom['bind'](window,'mouseup',_0x128370),![];}dom['bind'](_0x1df7b1['__resize_handle'],'mousedown',_0x35ff15),dom['bind'](_0x1df7b1['__closeButton'],'mousedown',_0x35ff15),_0x1df7b1['domElement']['insertBefore'](_0x1df7b1['__resize_handle'],_0x1df7b1['domElement']['firstElementChild']);}function setWidth(_0x7bdc42,_0x4b847f){_0x7bdc42['domElement']['style']['width']=_0x4b847f+'px',_0x7bdc42['__save_row']&&_0x7bdc42['autoPlace']&&(_0x7bdc42['__save_row']['style']['width']=_0x4b847f+'px'),_0x7bdc42['__closeButton']&&(_0x7bdc42['__closeButton']['style']['width']=_0x4b847f+'px');}function getCurrentPreset(_0x1142ad,_0x566bb2){var _0x292f7f={};return Common['each'](_0x1142ad['__rememberedObjects'],function(_0x26617b,_0x2b5691){var _0x466d12={},_0x1d53e4=_0x1142ad['__rememberedObjectIndecesToControllers'][_0x2b5691];Common['each'](_0x1d53e4,function(_0x3276b6,_0x414340){_0x466d12[_0x414340]=_0x566bb2?_0x3276b6['initialValue']:_0x3276b6['getValue']();}),_0x292f7f[_0x2b5691]=_0x466d12;}),_0x292f7f;}function setPresetSelectIndex(_0x31faeb){for(var _0x4ae201=0x0;_0x4ae201<_0x31faeb['__preset_select']['length'];_0x4ae201++){_0x31faeb['__preset_select'][_0x4ae201]['value']===_0x31faeb['preset']&&(_0x31faeb['__preset_select']['selectedIndex']=_0x4ae201);}}function updateDisplays(_0x25a143){_0x25a143['length']!==0x0&&requestAnimationFrame$1$1['call'](window,function(){updateDisplays(_0x25a143);}),Common['each'](_0x25a143,function(_0x27675e){_0x27675e['updateDisplay']();});}var GUI$1=GUI;
|
|
64
|
+
|
|
65
|
+
const methodMap=[['requestFullscreen','exitFullscreen','fullscreenElement','fullscreenEnabled','fullscreenchange','fullscreenerror'],['webkitRequestFullscreen','webkitExitFullscreen','webkitFullscreenElement','webkitFullscreenEnabled','webkitfullscreenchange','webkitfullscreenerror'],['webkitRequestFullScreen','webkitCancelFullScreen','webkitCurrentFullScreenElement','webkitCancelFullScreen','webkitfullscreenchange','webkitfullscreenerror'],['mozRequestFullScreen','mozCancelFullScreen','mozFullScreenElement','mozFullScreenEnabled','mozfullscreenchange','mozfullscreenerror'],['msRequestFullscreen','msExitFullscreen','msFullscreenElement','msFullscreenEnabled','MSFullscreenChange','MSFullscreenError']],nativeAPI=((()=>{if(typeof document==='undefined')return ![];const _0x1136d5=methodMap[0x0],_0x1bb46a={};for(const _0x25df51 of methodMap){const _0x6e289f=_0x25df51?.[0x1];if(_0x6e289f in document){for(const [_0x508188,_0x4fb7ff]of _0x25df51['entries']()){_0x1bb46a[_0x1136d5[_0x508188]]=_0x4fb7ff;}return _0x1bb46a;}}return ![];})()),eventNameMap={'change':nativeAPI['fullscreenchange'],'error':nativeAPI['fullscreenerror']};let screenfull={'request'(_0x448d69=document['documentElement'],_0x1e8132){return new Promise((_0x143746,_0x2100ba)=>{const _0x658065=()=>{screenfull['off']('change',_0x658065),_0x143746();};screenfull['on']('change',_0x658065);const _0x163771=_0x448d69[nativeAPI['requestFullscreen']](_0x1e8132);_0x163771 instanceof Promise&&_0x163771['then'](_0x658065)['catch'](_0x2100ba);});},'exit'(){return new Promise((_0x53d41,_0x22d885)=>{if(!screenfull['isFullscreen']){_0x53d41();return;}const _0x5b780a=()=>{screenfull['off']('change',_0x5b780a),_0x53d41();};screenfull['on']('change',_0x5b780a);const _0x5f28e7=document[nativeAPI['exitFullscreen']]();_0x5f28e7 instanceof Promise&&_0x5f28e7['then'](_0x5b780a)['catch'](_0x22d885);});},'toggle'(_0xf834a8,_0x37b39f){return screenfull['isFullscreen']?screenfull['exit']():screenfull['request'](_0xf834a8,_0x37b39f);},'onchange'(_0x21231c){screenfull['on']('change',_0x21231c);},'onerror'(_0x5ba471){screenfull['on']('error',_0x5ba471);},'on'(_0x3151c2,_0x5c73d0){const _0x3920ac=eventNameMap[_0x3151c2];_0x3920ac&&document['addEventListener'](_0x3920ac,_0x5c73d0,![]);},'off'(_0x3dc9a7,_0x210254){const _0x2964d7=eventNameMap[_0x3dc9a7];_0x2964d7&&document['removeEventListener'](_0x2964d7,_0x210254,![]);},'raw':nativeAPI};Object['defineProperties'](screenfull,{'isFullscreen':{'get':()=>Boolean(document[nativeAPI['fullscreenElement']])},'element':{'enumerable':!![],'get':()=>document[nativeAPI['fullscreenElement']]??undefined},'isEnabled':{'enumerable':!![],'get':()=>Boolean(document[nativeAPI['fullscreenEnabled']])}});!nativeAPI&&(screenfull={'isEnabled':![]});var _0x446132 = screenfull;
|
|
66
|
+
|
|
67
|
+
const tempVec3=new THREE['Vector3']();class ObjectExploder{constructor(_0xbc4685,_0x1ecbd4,_0x5315d7=undefined){this['scale']=0x1,this['explodeUp']=![],this['scene']=_0xbc4685,this['objectId']=_0x1ecbd4;!_0x1ecbd4&&log['debug']('[EXP]\x20Invalid\x20objectId:\x20'+_0x1ecbd4);_0x5315d7?this['explodeCenter']=_0x5315d7:(this['explodeCenter']=new THREE['Vector3'](),this['getObjectCenter'](this['explodeCenter']));const _0x436dd3=this['scene']['getObjectById'](this['objectId']);_0x436dd3===null||_0x436dd3===void 0x0?void 0x0:_0x436dd3['updateWorldMatrix'](!![],!![]);}['explode'](_0x59ea02){this['scale']=_0x59ea02;if(!this['objectId']||!this['explodeCenter']||!this['scale']){log['debug']('[EXP]\x20Invalid\x20objectId:\x20'+this['objectId']+',\x20or\x20position:\x20'+this['explodeCenter']+',\x20or\x20this.power:\x20'+this['scale']);return;}const _0x335dff=this['scene']['getObjectById'](this['objectId']);if(!_0x335dff||!_0x335dff['children']){log['debug']('[EXP]\x20No\x20children\x20to\x20explode!');return;}log['debug']('[EXP]\x20Exploding\x20object\x20\x27'+_0x335dff['name']+'\x27(id:\x20'+_0x335dff['id']+')\x20at:\x20'+CommonUtils['vectorToString'](this['explodeCenter'])),this['explodeObject'](_0x335dff);}['explodeObject'](_0x2fb836){if(_0x2fb836['geometry'])this['explodeLeafObject'](_0x2fb836);else _0x2fb836['children']['length']>0x0?_0x2fb836['children']['forEach'](_0xb428a5=>this['explodeObject'](_0xb428a5)):this['explodeLeafObject'](_0x2fb836);}['explodeLeafObject'](_0x51e6d5){var _0x5d163c;const _0x4c8205=_0x51e6d5;if(!_0x4c8205['geometry'])return;!_0x4c8205['userData']['originalMatrixWorld']&&(_0x4c8205['userData']['originalMatrixWorld']=_0x4c8205['matrixWorld']);const _0x436b66=_0x4c8205['userData']['originalMatrixWorld'];!_0x4c8205['userData']['originalCenter']&&(!_0x4c8205['geometry']['boundingBox']&&_0x4c8205['geometry']['computeBoundingBox'](),tempVec3['set'](0x0,0x0,0x0),(_0x5d163c=_0x4c8205['geometry']['boundingBox'])===null||_0x5d163c===void 0x0?void 0x0:_0x5d163c['getCenter'](tempVec3),tempVec3['applyMatrix4'](_0x4c8205['matrixWorld']),_0x4c8205['userData']['originalCenter']=tempVec3['clone']());const _0x572c9f=_0x4c8205['userData']['originalCenter']['clone']();_0x572c9f['sub'](this['explodeCenter']),_0x572c9f['multiplyScalar'](this['scale']-0x1);this['explodeUp']&&(_0x572c9f['setX'](0x0),_0x572c9f['setZ'](0x0));const _0x5a4c56=new THREE['Matrix4']();_0x5a4c56['setPosition'](_0x572c9f),_0x5a4c56['multiply'](_0x436b66),_0x4c8205['matrixWorld']=_0x5a4c56,_0x4c8205['children']['length']>0x0&&_0x4c8205['children']['forEach'](_0x28f4b4=>_0x28f4b4['updateMatrix']());}['unexplode'](){const _0x335991=this['scene']['getObjectById'](this['objectId']);if(!_0x335991||!_0x335991['children']){log['debug']('[EXP]\x20No\x20children\x20to\x20explode!');return;}log['debug']('[EXP]\x20Unexploding\x20\x27'+_0x335991['name']+'\x27(id:\x20'+_0x335991['id']+')\x20at:\x20'+CommonUtils['vectorToString'](this['explodeCenter'])),this['unexplodeObject'](_0x335991);}['unexplodeObject'](_0x590fb1){if(_0x590fb1['geometry'])this['unexplodeLeafObject'](_0x590fb1);else _0x590fb1['children']['length']>0x0?_0x590fb1['children']['forEach'](_0x253735=>this['unexplodeObject'](_0x253735)):this['unexplodeLeafObject'](_0x590fb1);}['unexplodeLeafObject'](_0x1216bc){const _0x3f1da9=_0x1216bc['userData']['originalMatrixWorld'];if(!_0x3f1da9)return;_0x1216bc['matrixWorld']=_0x3f1da9,_0x1216bc['children']['length']>0x0&&_0x1216bc['children']['forEach'](_0x8e0344=>_0x8e0344['updateMatrix']());}['setExplodeUp'](_0x1b028c){this['explodeUp']=_0x1b028c;}['getObjectCenter'](_0x40fff5){const _0x6df024=new THREE['Box3']();if(!this['objectId']){log['debug']('[EXP]\x20Invalid\x20objectId:\x20'+this['objectId']);return;}const _0x21f5b9=this['scene']['getObjectById'](this['objectId']);if(!_0x21f5b9||!_0x21f5b9['children']){log['debug']('[EXP]\x20No\x20children\x20to\x20explode!');return;}_0x21f5b9['traverse'](_0x12aaee=>{_0x6df024['expandByObject'](_0x12aaee);}),_0x6df024['getCenter'](_0x40fff5);}}
|
|
68
|
+
|
|
69
|
+
class ExplodePlugin extends Plugin{constructor(_0x3caaf5,_0x3fdc49){const _0x44da1a=(_0x3fdc49===null||_0x3fdc49===void 0x0?void 0x0:_0x3fdc49['id'])||ExplodePlugin['DEFAULT_ID'];super(_0x3caaf5,{'id':_0x44da1a}),this['exploders']=[],this['onModelLoaded']=()=>{this['init']();},this['viewer']=_0x3caaf5,this['cfg']=_0x3fdc49||{'id':_0x44da1a},this['viewer']['addEventListener'](ViewerEvent['ModelLoad'],this['onModelLoaded']);}get['scene'](){return this['viewer']['scene'];}['init'](){this['viewer']['loadedModels']['forEach'](_0x347aca=>{if(this['hasExploderForModel'](_0x347aca['getModelObject']()['id']))return;const _0x377cfd=new THREE['Vector3']();if(this['cfg']['explodeCenter']){const _0x4934b6=this['cfg']['explodeCenter'];_0x377cfd['set'](_0x4934b6['x'],_0x4934b6['y'],_0x4934b6['z']);}else !this['cfg']['explodeCenter']&&!_0x347aca['getBBox']()['isEmpty']()&&_0x347aca['getBBox']()['getCenter'](_0x377cfd);const _0x74f5b3=new ObjectExploder(this['scene'],_0x347aca['getModelObject']()['id'],_0x377cfd);_0x74f5b3['setExplodeUp'](!!this['cfg']['explodeUp']),this['exploders']['push'](_0x74f5b3);});}['explode'](_0x322a49){this['exploders']['length']===0x0&&this['init']();for(const _0x2752db of this['exploders']){_0x2752db['explode'](_0x322a49),this['viewer']['enableRender']();}}['unexplode'](){for(const _0x5d5ac2 of this['exploders']){_0x5d5ac2['unexplode'](),this['viewer']['enableRender']();}}['hasExploderForModel'](_0xa1db58){return !!this['exploders']['find'](_0x1f3602=>_0x1f3602['objectId']===_0xa1db58);}['destroy'](){super['destroy'](),this['viewer']['removeEventListener'](ViewerEvent['ModelLoad'],this['onModelLoaded']),this['unexplode']();}}ExplodePlugin['DEFAULT_ID']='ExplodePlugin';
|
|
70
|
+
|
|
71
|
+
const GRID_VERT='\x0a#ifdef\x20USE_LOGARITHMIC_DEPTH_BUFFER\x0a\x20\x20\x20\x20varying\x20float\x20vFragDepth;\x0a\x20\x20\x20\x20varying\x20float\x20vIsPerspective;\x0a#endif\x0a\x0avarying\x20vec3\x20vWorldPos;\x0auniform\x20float\x20uDistance;\x0auniform\x20float\x20uHeight;\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20vec3\x20pos\x20=\x20position\x20*\x20uDistance;\x0a\x20\x20\x20\x20pos.xy\x20+=\x20cameraPosition.xy;\x0a\x20\x20\x20\x20pos.z\x20=\x20uHeight;\x0a\x20\x20\x20\x20vWorldPos\x20=\x20pos;\x0a\x20\x20\x20\x20gl_Position\x20=\x20projectionMatrix\x20*\x20viewMatrix\x20*\x20vec4(pos,\x201.0);\x0a\x20\x20\x20\x20#ifdef\x20USE_LOGARITHMIC_DEPTH_BUFFER\x0a\x20\x20\x20\x20\x20\x20\x20\x20vFragDepth\x20=\x201.0\x20+\x20gl_Position.w;\x0a\x20\x20\x20\x20\x20\x20\x20\x20vIsPerspective\x20=\x20float(\x20projectionMatrix[\x202\x20][\x203\x20]\x20==\x20-1.0\x20);\x0a\x20\x20\x20\x20#endif\x0a}\x0a',GRID_FRAG='\x0a#if\x20defined(\x20USE_LOGARITHMIC_DEPTH_BUFFER\x20)\x0a\x20\x20\x20\x20uniform\x20float\x20logDepthBufFC;\x0a\x20\x20\x20\x20varying\x20float\x20vFragDepth;\x0a\x20\x20\x20\x20varying\x20float\x20vIsPerspective;\x0a#endif\x0a\x0avarying\x20vec3\x20vWorldPos;\x0a\x0auniform\x20float\x20uSize1;\x0auniform\x20float\x20uSize2;\x0auniform\x20vec3\x20\x20uColor;\x0auniform\x20vec3\x20\x20uAxisXColor;\x0auniform\x20vec3\x20\x20uAxisYColor;\x0auniform\x20float\x20uDistance;\x0a\x0afloat\x20gridLine(float\x20size)\x20{\x0a\x20\x20\x20\x20vec2\x20r\x20\x20\x20\x20=\x20vWorldPos.xy\x20/\x20size;\x0a\x20\x20\x20\x20vec2\x20grid\x20=\x20abs(fract(r\x20-\x200.5)\x20-\x200.5)\x20/\x20fwidth(r);\x0a\x20\x20\x20\x20return\x201.0\x20-\x20min(min(grid.x,\x20grid.y),\x201.0);\x0a}\x0a\x0afloat\x20axisLine(float\x20coord)\x20{\x0a\x20\x20\x20\x20float\x20r\x20=\x20abs(coord)\x20/\x20fwidth(coord);\x0a\x20\x20\x20\x20return\x201.0\x20-\x20min(r,\x201.0);\x0a}\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20float\x20dist\x20=\x20distance(cameraPosition.xy,\x20vWorldPos.xy)\x20/\x20uDistance;\x0a\x20\x20\x20\x20float\x20d\x20\x20\x20\x20=\x201.0\x20-\x20min(dist,\x201.0);\x0a\x0a\x20\x20\x20\x20float\x20g1\x20=\x20gridLine(uSize1);\x0a\x20\x20\x20\x20float\x20g2\x20=\x20gridLine(uSize2);\x0a\x0a\x20\x20\x20\x20float\x20alpha\x20=\x20mix(g2,\x20g1,\x20g1)\x20*\x20pow(d,\x203.0);\x0a\x20\x20\x20\x20alpha\x20=\x20mix(0.5\x20*\x20alpha,\x20alpha,\x20g2);\x0a\x0a\x20\x20\x20\x20//\x20Axis\x20lines\x20(X\x20axis\x20=\x20Y=0\x20line,\x20Y\x20axis\x20=\x20X=0\x20line)\x0a\x20\x20\x20\x20float\x20ax\x20=\x20axisLine(vWorldPos.y)\x20*\x20pow(d,\x202.0);\x0a\x20\x20\x20\x20float\x20ay\x20=\x20axisLine(vWorldPos.x)\x20*\x20pow(d,\x202.0);\x0a\x0a\x20\x20\x20\x20vec3\x20col\x20=\x20uColor;\x0a\x20\x20\x20\x20if\x20(ax\x20>\x200.01)\x20col\x20=\x20mix(col,\x20uAxisXColor,\x20ax);\x0a\x20\x20\x20\x20if\x20(ay\x20>\x200.01)\x20col\x20=\x20mix(col,\x20uAxisYColor,\x20ay);\x0a\x20\x20\x20\x20alpha\x20=\x20max(alpha,\x20max(ax,\x20ay));\x0a\x0a\x20\x20\x20\x20if\x20(alpha\x20<=\x200.0)\x20discard;\x0a\x20\x20\x20\x20gl_FragColor\x20=\x20vec4(col,\x20alpha);\x0a\x20\x20\x20\x20#if\x20defined(\x20USE_LOGARITHMIC_DEPTH_BUFFER\x20)\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_FragDepth\x20=\x20vIsPerspective\x20==\x200.0\x20?\x20gl_FragCoord.z\x20:\x20log2(\x20vFragDepth\x20)\x20*\x20logDepthBufFC\x20*\x200.5;\x0a\x20\x20\x20\x20#endif\x0a}\x0a';class GroundGridPlugin extends Plugin{constructor(_0x107faa,_0x549079){const _0x1bc820=(_0x549079===null||_0x549079===void 0x0?void 0x0:_0x549079['id'])||GroundGridPlugin['DEFAULT_ID'];super(_0x107faa,{'id':_0x1bc820}),this['NAME']='GROUND_GRID',this['onModelLoaded']=()=>{this['cfg']['visible']!==![]&&this['viewer']['enableRender']();},this['cfg']=_0x549079||{'id':_0x1bc820},this['cfg']['visible']!==![]&&this['init'](),this['viewer']['addEventListener'](ViewerEvent['ModelLoad'],this['onModelLoaded']);}['init'](){var _0x1cf2af;this['gridMesh']&&(this['gridMesh']['removeFromParent'](),this['gridMesh']['material']['dispose'](),this['gridMesh']['geometry']['dispose'](),this['gridMesh']=undefined),this['gridMesh']=this['createInfiniteGrid'](),this['applyGridHeight'](),(_0x1cf2af=this['viewer']['scene'])===null||_0x1cf2af===void 0x0?void 0x0:_0x1cf2af['add'](this['gridMesh']),this['viewer']['enableRender']();}['getHeight'](){var _0x23bb78;return (_0x23bb78=this['cfg']['height'])!==null&&_0x23bb78!==void 0x0?_0x23bb78:0x0;}['setHeight'](_0x59d087){this['cfg']['height']=_0x59d087,this['applyGridHeight'](),this['viewer']['enableRender']();}['applyGridHeight'](){if(!this['gridMesh'])return;const _0x570a83=this['gridMesh']['material'],_0xa50c7e=_0x570a83['uniforms']['uHeight'];_0xa50c7e&&(_0xa50c7e['value']=this['getHeight']());}['setVisible'](_0x242a37){_0x242a37&&!this['gridMesh']&&this['init'](),this['gridMesh']&&(this['gridMesh']['visible']=_0x242a37),this['viewer']['enableRender']();}['isVisible'](){var _0x113efb;return !!((_0x113efb=this['gridMesh'])===null||_0x113efb===void 0x0?void 0x0:_0x113efb['visible']);}['createInfiniteGrid'](){const _0xb86858=new THREE['PlaneGeometry'](0x2,0x2),_0x431029=new THREE['ShaderMaterial']({'side':THREE['DoubleSide'],'uniforms':{'uSize1':{'value':0xa},'uSize2':{'value':0x64},'uColor':{'value':new THREE['Color'](0x888888)},'uAxisXColor':{'value':new THREE['Color'](0xdd4444)},'uAxisYColor':{'value':new THREE['Color'](0x44aa44)},'uDistance':{'value':0x1388},'uHeight':{'value':this['getHeight']()}},'vertexShader':GRID_VERT,'fragmentShader':GRID_FRAG,'transparent':!![],'depthWrite':![]}),_0x572488=new THREE['Mesh'](_0xb86858,_0x431029);return _0x572488['frustumCulled']=![],_0x572488['name']=this['NAME'],_0x572488['layers']['enableAll'](),_0x572488['layers']['disable'](LayerForSelectableObjects),_0x572488;}['destroy'](){super['destroy'](),this['gridMesh']&&(this['gridMesh']['removeFromParent'](),this['gridMesh']['material']['dispose'](),this['gridMesh']['geometry']['dispose'](),this['gridMesh']=undefined),this['viewer']['removeEventListener'](ViewerEvent['ModelLoad'],this['onModelLoaded']);}}GroundGridPlugin['DEFAULT_ID']='GroundGridPlugin';
|
|
72
|
+
|
|
73
|
+
class IUploader extends Plugin{constructor(_0x56c3a9,_0x29eeaa){const _0x9fdd4f=_0x29eeaa['id'];super(_0x56c3a9,{'id':_0x9fdd4f}),this['_formats']=[],this['handleDragEnter']=_0x4b9c58=>{_0x4b9c58['preventDefault'](),_0x4b9c58['stopPropagation'](),this['dropZone']['style']['display']='flex';},this['handleDragLeave']=_0x3350ab=>{_0x3350ab['preventDefault'](),_0x3350ab['stopPropagation'](),this['dropZone']['style']['display']='none';},this['handleDragOver']=_0x21ff11=>{_0x21ff11['preventDefault'](),_0x21ff11['stopPropagation']();if(!_0x21ff11['dataTransfer'])return;_0x21ff11['dataTransfer']['dropEffect']='move';},this['handleDrop']=_0x3dd5da=>{_0x3dd5da['preventDefault'](),_0x3dd5da['stopPropagation'](),this['dropZone']['style']['display']='none';if(!_0x3dd5da['dataTransfer']||_0x3dd5da['dataTransfer']['files']['length']===0x0)return;const _0x374e45=_0x3dd5da['dataTransfer']['files'];this['uploadFiles'](_0x374e45);},this['cfg']=_0x29eeaa||{'id':_0x9fdd4f};const _0x36e34e=_0x29eeaa['formats'];_0x36e34e&&Array['isArray'](_0x36e34e)&&(this['_formats']=_0x36e34e);this['input']=document['createElement']('input'),this['input']['id']=this['id']+'-hidden-file-input',this['input']['type']='file',this['input']['multiple']=!![],this['input']['accept']=this['formats']()['map'](_0x52c0ca=>'.'+_0x52c0ca)['join'](','),this['input']['style']['display']='none',this['viewer']['widgetContainer']['appendChild'](this['input']),this['input']['onchange']=_0x4dedd4=>{const _0x48c540=_0x4dedd4['target']['files'];if(!_0x48c540||_0x48c540['length']<=0x0){log['error']('[Uploader]\x20No\x20files\x20to\x20be\x20uploaded!');return;}this['uploadFiles'](_0x48c540);};if(_0x29eeaa['enableDragDropFile']!==![]){const _0x1362ad=document['createElement']('div');_0x1362ad['classList']['add']('drag-drop-zone'),this['viewer']['widgetContainer']['appendChild'](_0x1362ad),this['dropZone']=_0x1362ad;const _0xb28630=this['viewer']['viewerContainer'];_0xb28630['addEventListener']('dragenter',this['handleDragEnter']),_0xb28630['addEventListener']('dragleave',this['handleDragLeave']),_0xb28630['addEventListener']('dragover',this['handleDragOver']),_0xb28630['addEventListener']('drop',this['handleDrop']);}}['formats'](){return log['warn']('[Uploader]:\x20Should\x20call\x20derived\x20class\x20instead!'),[];}['uploadFiles'](_0x2e300c){log['warn']('[Uploader]:\x20Should\x20call\x20derived\x20class\x20instead!\x20files:\x20'+_0x2e300c);}['openFileBrowserToUpload'](){this['input']['value']='',this['input']['click']();}['destroy'](){var _0x1cc1ba,_0x3848e5;const _0x197f65=this['viewer']['viewerContainer'];this['cfg']['enableDragDropFile']!==![]&&(_0x197f65['removeEventListener']('dragenter',this['handleDragEnter']),_0x197f65['removeEventListener']('dragleave',this['handleDragLeave']),_0x197f65['removeEventListener']('dragover',this['handleDragOver']),_0x197f65['removeEventListener']('drop',this['handleDrop']),(_0x1cc1ba=this['dropZone'])===null||_0x1cc1ba===void 0x0?void 0x0:_0x1cc1ba['remove']()),(_0x3848e5=this['input'])===null||_0x3848e5===void 0x0?void 0x0:_0x3848e5['remove'](),super['destroy']();}}
|
|
74
|
+
|
|
75
|
+
const ALL_FORMAT_TOKEN='*';function getViewerSupportedFormats(_0x13fe87){const _0x5357bf=_0x13fe87['getSupportedModelFormats']();if(!_0x5357bf['length'])return [ALL_FORMAT_TOKEN];return _0x5357bf;}class LocalModelUploader extends IUploader{constructor(_0x4869ea,_0x514870){const _0x469ca6=_0x514870||{};_0x469ca6['id']=_0x469ca6['id']||LocalModelUploader['DEFAULT_ID'],_0x469ca6['formats']=_0x469ca6['formats']||getViewerSupportedFormats(_0x4869ea),super(_0x4869ea,_0x469ca6),this['defaultModelConfig']={'src':'','merge':!![]};}['formats'](){if(this['_formats']['length']>0x0)return [...this['_formats']];return getViewerSupportedFormats(this['viewer']);}['uploadFiles'](_0x413e14){const _0x35dd07=_0x413e14['length'];if(_0x35dd07===0x0)return;if(this['checkAllFilesWithTheSameFormat'](_0x413e14)){for(let _0x6e9c56=0x0;_0x6e9c56<_0x35dd07;_0x6e9c56++){const _0x1c2292=_0x413e14[_0x6e9c56];this['uploadSingleFile'](_0x1c2292);}return;}const _0x4f5fc3=Object['assign']({},this['defaultModelConfig']);let _0x4a9ff5,_0x3292c1,_0xefa54d;const _0x1bb10e=new Map();for(let _0xda53ab=0x0;_0xda53ab<_0x35dd07;_0xda53ab++){const _0x1167cf=_0x413e14[_0xda53ab];_0x1bb10e['set'](_0x1167cf['name'],_0x1167cf);if(_0x1167cf['name']['match'](/\.(gltf|glb)$/))_0xefa54d=_0x1167cf;else {if(_0x1167cf['name']['match'](/\.(obj)$/))_0xefa54d=_0x1167cf;else _0x1167cf['name']['match'](/\.(mtl)$/)&&(!_0x4f5fc3['mtlUrls']&&(_0x4f5fc3['mtlUrls']=[]),_0x4f5fc3['mtlUrls']['push'](URL['createObjectURL'](_0x1167cf)));}}const _0x318572=[],_0x32fa07=()=>{if(!_0xefa54d)return;_0x4a9ff5=URL['createObjectURL'](_0xefa54d),_0x318572['push'](_0x4a9ff5),_0x4f5fc3['src']=_0xefa54d['name'];};!_0xefa54d?(_0xefa54d=_0x413e14[0x0],_0x32fa07()):(_0x32fa07(),_0x1bb10e['size']>0x1&&(_0x3292c1=Object['fromEntries'](_0x1bb10e))),_0xefa54d&&(this['onStart']&&this['onStart']({'file':_0xefa54d,'fileName':_0xefa54d['name']})),this['viewer']['loadLocalModel'](_0x4a9ff5,_0x4f5fc3,_0x96c170=>{const _0x7e3364=Math['floor'](_0x96c170['loaded']*0x64/_0x96c170['total']);log['info']('[Uploader]\x20Loading\x20'+(_0xefa54d===null||_0xefa54d===void 0x0?void 0x0:_0xefa54d['name'])+',\x20'+_0x7e3364+'%');},_0x3292c1)['then'](()=>{log['info']('[Uploader]\x20Loaded\x20'+(_0xefa54d===null||_0xefa54d===void 0x0?void 0x0:_0xefa54d['name'])),_0x318572['forEach'](URL['revokeObjectURL']),_0xefa54d&&(this['onSuccess']&&this['onSuccess']({'file':_0xefa54d,'fileName':_0xefa54d['name']}));})['catch'](_0x2b2bd5=>{log['error']('[Uploader]\x20Failed\x20to\x20load\x20model\x20file\x20'+(_0xefa54d===null||_0xefa54d===void 0x0?void 0x0:_0xefa54d['name'])+':',_0x2b2bd5),_0x318572['forEach'](URL['revokeObjectURL']),_0xefa54d&&(this['onError']&&this['onError']({'file':_0xefa54d,'fileName':_0xefa54d['name'],'error':_0x2b2bd5}));});}['checkAllFilesWithTheSameFormat'](_0x4c9ec0){const _0x5b8813=_0x1a6e9c=>{const _0x369273=_0x1a6e9c['lastIndexOf']('.'),_0x1a7125=_0x1a6e9c['substring'](_0x369273+0x1);return _0x1a7125['toLowerCase']();},_0x47c151=_0x4c9ec0['length'],_0xc0581=_0x5b8813(_0x4c9ec0[0x0]['name']);for(let _0x706b99=0x0;_0x706b99<_0x47c151;_0x706b99++){const _0x11854d=_0x5b8813(_0x4c9ec0[_0x706b99]['name']);if(_0x11854d!==_0xc0581)return ![];}return !![];}['uploadSingleFile'](_0x247450){const _0x58a29e=Object['assign']({},this['defaultModelConfig']),_0x1343d0=URL['createObjectURL'](_0x247450);_0x58a29e['src']=_0x247450['name'];_0x247450['name']['toLowerCase']();this['onStart']&&this['onStart']({'file':_0x247450,'fileName':_0x247450['name']}),this['viewer']['loadLocalModel'](_0x1343d0,_0x58a29e,_0x26fd78=>{const _0x43e752=Math['floor'](_0x26fd78['loaded']*0x64/_0x26fd78['total']);log['info']('[Uploader]\x20Loading\x20'+(_0x247450===null||_0x247450===void 0x0?void 0x0:_0x247450['name'])+',\x20'+_0x43e752+'%');})['then'](()=>{log['info']('[Uploader]\x20Loaded\x20'+_0x247450['name']),this['onSuccess']&&this['onSuccess']({'file':_0x247450,'fileName':_0x247450['name']});})['catch'](_0x182439=>{log['error']('[Uploader]\x20Failed\x20to\x20load\x20model\x20file\x20'+_0x247450['name']+':',_0x182439),this['onError']&&this['onError']({'file':_0x247450,'fileName':_0x247450['name'],'error':_0x182439});});}}LocalModelUploader['DEFAULT_ID']='LocalModelUploader';
|
|
76
|
+
|
|
77
|
+
var ScreenshotMode;(function(_0x1d4786){_0x1d4786['Default']='Default',_0x1d4786['BoxSelection']='BoxSelection',_0x1d4786['PickMarkup']='PickMarkup';}(ScreenshotMode||(ScreenshotMode={})));class ScreenshotPlugin extends Plugin{constructor(_0x9a7007,_0x3a573f){const _0x33f34a=(_0x3a573f===null||_0x3a573f===void 0x0?void 0x0:_0x3a573f['id'])||ScreenshotPlugin['DEFAULT_ID'];super(_0x9a7007,{'id':_0x33f34a}),this['originalBackground']=undefined,this['originalClearAlpha']=0x1,this['cfg']=_0x3a573f||{'id':_0x33f34a},this['cfg']['type']=this['cfg']['type']||'image/png',this['cfg']['quality']=this['cfg']['quality']||0.8,this['cfg']['setBackgroundTransparent']=this['cfg']['setBackgroundTransparent']||![];}['getScreenshot'](){var _0x201ef5;const _0x4c1043=this['viewer'],_0x4adc14=(_0x201ef5=_0x4c1043['renderer'])===null||_0x201ef5===void 0x0?void 0x0:_0x201ef5['domElement'];if(!_0x4adc14)return undefined;this['setBackgroundTransparent']();const _0xf3ea6d=_0x4adc14['toDataURL'](this['cfg']['type'],this['cfg']['quality']);return this['recoverBackgroundTransparency'](),_0xf3ea6d;}async['getScreenshotByScreenBBox'](_0x472134){const _0x3ccbe4=this['viewer']['renderer']['domElement'],_0x4f22f7=_0x3ccbe4['width'],_0x188508=_0x3ccbe4['height'];let _0x220f3d=_0x472134['min']['x'],_0x1d2c2d=_0x472134['min']['y'],_0x292ff2=_0x472134['max']['x'],_0x3150bb=_0x472134['max']['y'];_0x220f3d=Math['max'](_0x220f3d,0x0),_0x220f3d=Math['min'](_0x220f3d,_0x4f22f7),_0x1d2c2d=Math['max'](_0x1d2c2d,0x0),_0x1d2c2d=Math['min'](_0x1d2c2d,_0x188508),_0x292ff2=Math['min'](_0x292ff2||_0x4f22f7,_0x4f22f7),_0x292ff2=Math['max'](_0x292ff2,0x0),_0x3150bb=Math['min'](_0x3150bb||_0x188508,_0x188508),_0x3150bb=Math['max'](_0x3150bb,0x0);if(Math['abs'](_0x292ff2-_0x220f3d)===0x0||Math['abs'](_0x3150bb-_0x1d2c2d)===0x0)return log['error']('[Screenshot]\x20Invalid\x20input,\x20minX:\x20'+_0x220f3d+',\x20minY:\x20'+_0x1d2c2d+',\x20maxX:\x20'+_0x292ff2+',\x20maxY:\x20'+_0x3150bb),undefined;const _0x42f04e=new THREE['Box2']();_0x42f04e['expandByPoint'](new THREE['Vector2'](_0x220f3d,_0x1d2c2d)),_0x42f04e['expandByPoint'](new THREE['Vector2'](_0x292ff2,_0x3150bb)),this['setBackgroundTransparent']();const _0x2ceebf=await CommonUtils['canvasToImage'](_0x3ccbe4);this['recoverBackgroundTransparency']();const _0x1a909f=document['createElement']('canvas');_0x1a909f['width']=_0x3ccbe4['width'],_0x1a909f['height']=_0x3ccbe4['height'];const _0xf629b8=window['devicePixelRatio'],_0x16cb6e=_0x1a909f['getContext']('2d');_0x16cb6e['drawImage'](_0x2ceebf,0x0,0x0,_0x2ceebf['width']/_0xf629b8,_0x2ceebf['height']/_0xf629b8);const _0x509bef=CommonUtils['renderingContextToImage'](_0x16cb6e,_0x42f04e,this['cfg']['type'],this['cfg']['quality']);return _0x509bef;}async['getScreenshotForWorldBoundsInViewport'](_0x355d2a){const _0x35a16d=this['viewer']['camera'],_0x1e6748=this['viewer']['container']['viewerContainer'];if(!_0x1e6748)return;const _0x36570a=CoordinateUtils['worldBBox2Screen'](_0x355d2a,_0x35a16d,_0x1e6748);return this['getScreenshotByScreenBBox'](_0x36570a);}async['getScreenshotAsync'](_0xd206f5=ScreenshotMode['BoxSelection']){this['cancel']();const _0x4e8763=!![],_0x4a31fb=this['viewer'],_0x3d6d63=_0x4a31fb['renderer']['domElement'];let _0x2ec12b=undefined;if(_0xd206f5===ScreenshotMode['PickMarkup'])!this['pickMarkupHelper']&&(this['pickMarkupHelper']=new PickMarkupHelper(_0x4a31fb)),_0x2ec12b=await this['pickMarkupHelper']['pick']();else _0xd206f5===ScreenshotMode['BoxSelection']&&(!this['boxSelectHelper']&&(this['boxSelectHelper']=new BoxSelectHelper(_0x4a31fb)),_0x2ec12b=await this['boxSelectHelper']['select']());if(_0xd206f5!==ScreenshotMode['Default']&&!_0x2ec12b)return;this['setBackgroundTransparent']();const _0x59f099=await CommonUtils['canvasToImage'](_0x3d6d63);this['recoverBackgroundTransparency']();const _0x35f6c4=document['createElement']('canvas'),_0x235c43=window['devicePixelRatio'];_0x35f6c4['width']=_0x3d6d63['width']/_0x235c43,_0x35f6c4['height']=_0x3d6d63['height']/_0x235c43;const _0xb0e4a9=_0x35f6c4['getContext']('2d');_0xb0e4a9['drawImage'](_0x59f099,0x0,0x0,_0x59f099['width']/_0x235c43,_0x59f099['height']/_0x235c43);if(_0x4e8763&&_0x4a31fb['getOverlayRender']()){const _0x100c9a=await _0x4a31fb['getOverlayRender']()['getImage'](_0x5c60b7=>_0x5c60b7 instanceof BaseMeasureDrawable);_0xb0e4a9['drawImage'](_0x100c9a,0x0,0x0,_0x100c9a['width']/_0x235c43,_0x100c9a['height']/_0x235c43);}const _0x53a2a2=this['cfg']['type'],_0x3ae18f=this['cfg']['quality'],_0x1c30fd=CommonUtils['renderingContextToImage'](_0xb0e4a9,_0x2ec12b,_0x53a2a2,_0x3ae18f);return {'base64Image':_0x1c30fd,'imageType':_0x53a2a2};}['isActive'](){var _0x4379bf,_0x50fb22;return ((_0x4379bf=this['boxSelectHelper'])===null||_0x4379bf===void 0x0?void 0x0:_0x4379bf['isActive'])||((_0x50fb22=this['pickMarkupHelper'])===null||_0x50fb22===void 0x0?void 0x0:_0x50fb22['isActive']);}['cancel'](){var _0x3526c8,_0x54ec47;((_0x3526c8=this['boxSelectHelper'])===null||_0x3526c8===void 0x0?void 0x0:_0x3526c8['isActive'])&&this['boxSelectHelper']['deactivate'](),((_0x54ec47=this['pickMarkupHelper'])===null||_0x54ec47===void 0x0?void 0x0:_0x54ec47['isActive'])&&this['pickMarkupHelper']['deactivate']();}['setBackgroundTransparent'](){if(!this['cfg']['setBackgroundTransparent'])return;const _0x40da18=this['viewer'],_0x5e2b39=_0x40da18['scene'],_0x45b384=_0x40da18['renderer'],_0x44a3be=this['viewer']['camera'];this['originalBackground']=_0x5e2b39['background'],this['originalClearAlpha']=_0x45b384['getClearAlpha'](),_0x5e2b39['background']=null,_0x45b384['setClearAlpha'](0x0),_0x45b384['render'](_0x5e2b39,_0x44a3be);}['recoverBackgroundTransparency'](){if(!this['cfg']['setBackgroundTransparent'])return;const _0x402ee1=this['viewer'],_0x5e34aa=_0x402ee1['scene'],_0x2482ff=_0x402ee1['renderer'],_0x27e002=this['viewer']['camera'];_0x5e34aa['background']=this['originalBackground'],_0x2482ff['setClearAlpha'](this['originalClearAlpha']),_0x2482ff['render'](_0x5e34aa,_0x27e002),this['originalBackground']=undefined,this['originalClearAlpha']=0x1;}}ScreenshotPlugin['DEFAULT_ID']='ScreenshotPlugin';
|
|
78
|
+
|
|
79
|
+
const AxisX$1=new THREE['Vector3'](0x1,0x0,0x0);const AxisY$1=new THREE['Vector3'](0x0,0x1,0x0);const AxisZ$1=new THREE['Vector3'](0x0,0x0,0x1);var ActionType;(function(_0x18e7f1){_0x18e7f1['None']='',_0x18e7f1['TranslateX']='TranslateX',_0x18e7f1['TranslateY']='TranslateY',_0x18e7f1['TranslateZ']='TranslateZ',_0x18e7f1['RotateX']='RotateX',_0x18e7f1['RotateY']='RotateY',_0x18e7f1['RotateZ']='RotateZ';}(ActionType||(ActionType={})));
|
|
80
|
+
|
|
81
|
+
const up=new THREE['Vector3'](0x0,0x1,0x0),matrix=new THREE['Matrix4'](),defaultSize=0x2;class SectionGizmo extends THREE['Group']{constructor(_0x3c7599=AxisX$1){super(),this['redMaterial']=new THREE['MeshBasicMaterial']({'color':0xff0000,'depthTest':![]}),this['greenMaterial']=new THREE['MeshBasicMaterial']({'color':0xff00,'depthTest':![]}),this['blueMaterial']=new THREE['MeshBasicMaterial']({'color':0xff,'depthTest':![]}),this['highlightMaterial']=new THREE['MeshBasicMaterial']({'color':0xffff00,'depthTest':![]}),this['pickableMaterial']=new THREE['MeshBasicMaterial']({'color':0x95a5a6,'depthTest':![]}),this['initIgnoreClipMaterial'](),this['initOrUpdateByAxis'](_0x3c7599);}['initIgnoreClipMaterial'](){[this['redMaterial'],this['greenMaterial'],this['blueMaterial'],this['highlightMaterial'],this['pickableMaterial']]['forEach'](_0xdec4e5=>{_0xdec4e5['onBeforeCompile']=function(_0x5885ee,_0x50c9bf){_0x5885ee['fragmentShader']=_0x5885ee['fragmentShader']['replace']('#include\x20<clipping_planes_pars_fragment>','')['replace']('#include\x20<clipping_planes_fragment>',''),_0x5885ee['vertexShader']=_0x5885ee['vertexShader']['replace']('#include\x20<clipping_planes_pars_vertex>','')['replace']('#include\x20<clipping_planes_vertex>','');};});}['setDirection'](_0x5b6aa7){const _0x5c49ab=new THREE['Quaternion']();_0x5c49ab['setFromUnitVectors'](AxisX$1,_0x5b6aa7),this['applyQuaternion'](_0x5c49ab);}['initOrUpdateByAxis'](_0x4190ac){this['clear']();const _0x2f3cfc=[{'actionType':ActionType['TranslateX'],'direction':AxisX$1,'material':this['redMaterial']},{'actionType':ActionType['TranslateY'],'direction':AxisY$1,'material':this['greenMaterial']},{'actionType':ActionType['TranslateZ'],'direction':AxisZ$1,'material':this['blueMaterial']}];_0x2f3cfc['forEach'](_0x3f8a53=>{const {actionType:_0x1be113,direction:_0x44b2b3,material:_0x7e97f2}=_0x3f8a53,_0x282d49=_0x44b2b3['angleTo'](_0x4190ac)===0x0?_0x7e97f2:this['pickableMaterial'],_0x12d44f=this['createTranslateGizmo'](_0x1be113,_0x44b2b3,defaultSize,_0x282d49);this['add'](_0x12d44f);});const _0x4a880e=[{'actionType':ActionType['RotateX'],'direction':AxisX$1,'material':this['redMaterial'],'degree':0x5a},{'actionType':ActionType['RotateY'],'direction':AxisY$1,'material':this['greenMaterial'],'degree':0x5a},{'actionType':ActionType['RotateZ'],'direction':AxisZ$1,'material':this['blueMaterial'],'degree':0x5a}];_0x4a880e['forEach'](_0x463c62=>{const {actionType:_0x508128,direction:_0x30e73f,material:_0x1db56d,degree:_0x4ab611}=_0x463c62;if(_0x30e73f['angleTo'](_0x4190ac)!==0x0){const _0x3d4faa=this['createRotateGizmo'](_0x508128,_0x30e73f,defaultSize,_0x1db56d,_0x4ab611);this['add'](_0x3d4faa);}}),this['createSphere'](0x1,this['pickableMaterial']),this['createSphere'](0x1,this['pickableMaterial'],new THREE['Vector3'](defaultSize*0xc,0x0,0x0)),this['createSphere'](0x1,this['pickableMaterial'],new THREE['Vector3'](0x0,defaultSize*0xc,0x0)),this['createSphere'](0x1,this['pickableMaterial'],new THREE['Vector3'](0x0,0x0,defaultSize*0xc));}['createTranslateGizmo'](_0x4c977a,_0x52630b,_0x2d51aa,_0x5463cb){const _0x7ff6e6=_0x52630b['angleTo'](up),_0x49d2ee=up['clone']()['cross'](_0x52630b);matrix['makeRotationAxis'](_0x49d2ee,_0x7ff6e6);const _0x42ce60=new THREE['CylinderGeometry'](_0x2d51aa/0x5,_0x2d51aa/0x5,_0x2d51aa*0x14),_0x4835=_0x2d51aa*0xa;_0x42ce60['translate'](0x0,_0x4835,0x0),_0x42ce60['applyMatrix4'](matrix);const _0x2a749c=new THREE['CylinderGeometry'](0x0,_0x2d51aa,_0x2d51aa*0x3),_0x3668fd=_0x4835*0x2;_0x2a749c['translate'](0x0,_0x3668fd,0x0),_0x2a749c['applyMatrix4'](matrix);const _0x5994a4=THREEAddons['BufferGeometryUtils']['mergeGeometries']([_0x2a749c,_0x42ce60]),_0x520096=new THREE['Mesh'](_0x5994a4,_0x5463cb);return _0x520096['layers']['enable'](LayerForSelectableObjects),_0x520096['userData']['actionType']=_0x4c977a,_0x5463cb===this['pickableMaterial']&&_0x520096['layers']['disable'](LayerForSelectableObjects),_0x520096;}['createRotateGizmo'](_0x1457f9,_0x43894b,_0x1f120b,_0x12f5e5,_0x50009f){const _0x5622b4=new THREE['Vector3'](0x0,0x0,0x1),_0x4088a3=_0x43894b['clone']()['cross'](_0x5622b4),_0x171700=_0x43894b['angleTo'](_0x5622b4);matrix['makeRotationAxis'](_0x4088a3,_0x171700);const _0xa88619=new THREE['TorusGeometry'](_0x1f120b*0xc,_0x1f120b/0x5,0x18,0x24,THREE['MathUtils']['degToRad'](_0x50009f));_0xa88619['applyMatrix4'](matrix);const _0x593786=new THREE['Mesh'](_0xa88619,_0x12f5e5);return _0x593786['layers']['enable'](LayerForSelectableObjects),_0x593786['userData']['actionType']=_0x1457f9,_0x593786;}['createSphere'](_0x39ffd5,_0x4abd8c,_0x466030=new THREE['Vector3']()){const _0x2d95b7=new THREE['SphereGeometry'](_0x39ffd5,0x20,0x10),_0x3efd9b=new THREE['Mesh'](_0x2d95b7,_0x4abd8c);_0x3efd9b['position']['copy'](_0x466030),_0x3efd9b['layers']['disable'](LayerForSelectableObjects),this['add'](_0x3efd9b);}['setActiveAxis'](_0x2e727a){this['initOrUpdateByAxis'](_0x2e727a);}['createHoverRotateObjectByAxis'](_0x51c9b5){let _0x14ba2f=AxisX$1;switch(_0x51c9b5){case ActionType['RotateX']:_0x14ba2f=AxisX$1;break;case ActionType['RotateY']:_0x14ba2f=AxisY$1;break;case ActionType['RotateZ']:_0x14ba2f=AxisZ$1;break;}return this['createRotateGizmo'](ActionType['None'],_0x14ba2f,defaultSize,this['highlightMaterial'],0x168);}['setActive'](_0x54eaf3,_0x4690b7){var _0x2098e7;const _0x37858d=_0x4690b7['userData']['actionType'];[ActionType['RotateX'],ActionType['RotateY'],ActionType['RotateZ']]['includes'](_0x37858d)?_0x54eaf3?(this['hoverObject']=this['createHoverRotateObjectByAxis'](_0x37858d),this['add'](this['hoverObject']),_0x4690b7['visible']=![]):((_0x2098e7=this['hoverObject'])===null||_0x2098e7===void 0x0?void 0x0:_0x2098e7['removeFromParent'](),_0x4690b7['visible']=!![],this['hoverObject']=undefined):_0x54eaf3?(this['originalMaterial']=_0x4690b7['material'],_0x4690b7['material']=this['highlightMaterial']):this['originalMaterial']&&(_0x4690b7['material']=this['originalMaterial']);}['adjustSize'](_0x1057ad){const _0x2071d3=new THREE['Vector3']();this['getWorldPosition'](_0x2071d3);const _0x749c2f=_0x1057ad['position'];let _0xfb705c=0x1;if(_0x1057ad instanceof THREE['OrthographicCamera'])_0xfb705c=(_0x1057ad['top']-_0x1057ad['bottom'])/_0x1057ad['zoom'];else _0x1057ad instanceof THREE['PerspectiveCamera']&&(_0xfb705c=_0x2071d3['distanceTo'](_0x749c2f)*Math['min'](1.9*Math['tan'](Math['PI']*_0x1057ad['fov']/0x168)/_0x1057ad['zoom'],0x7));this['scale']['set'](0x1,0x1,0x1)['multiplyScalar'](_0xfb705c/0xb4),this['updateWorldMatrix'](!![],!![]);}}
|
|
82
|
+
|
|
83
|
+
class BaseSection{constructor(_0x1b2cf1,_0x52ffdf){this['raycaster']=new THREE['Raycaster'](),this['sectionBox']=new THREE['Box3'](),this['lastWorldPos']=new THREE['Vector3'](),this['mouseMoved']=![],this['dragStarted']=![],this['refrencePlane']=new THREE['Plane'](),this['active']=![],this['capsVisibility']=![],this['showSectionPlane']=![],this['mousedown']=_0x25ecd1=>{const _0x8f7103=_0x25ecd1['button']===0x0;if(!_0x8f7103)return;if(!this['selectedObject']){const _0x4b2c2a=this['getIntersection'](_0x25ecd1);if(!_0x4b2c2a)return;this['activateSelectedObject'](![]),this['selectedObject']=_0x4b2c2a['object'];}this['inputManager']['setCursor']('grabbing'),this['dragStarted']=!![],this['setControlsEnabled'](![]),this['onDragStart'](_0x25ecd1),this['viewer']['enableRender']();},this['mousemove']=_0x4b42fa=>{var _0x32b75f;if(this['dragStarted'])this['updateRaycasterByMouse'](_0x4b42fa),this['onDragMove'](_0x4b42fa);else {this['activateSelectedObject'](![]),this['selectedObject']=undefined;const _0x50d95a=this['getIntersection'](_0x4b42fa);let _0x1f7a0c='default';_0x50d95a&&_0x50d95a['object']['visible']&&((_0x32b75f=_0x50d95a['object']['parent'])===null||_0x32b75f===void 0x0?void 0x0:_0x32b75f['visible'])&&(this['selectedObject']=_0x50d95a['object'],this['activateSelectedObject'](!![]),_0x1f7a0c='grab'),this['inputManager']['setCursor'](_0x1f7a0c);}this['viewer']['enableRender']();},this['mouseup']=_0x3e29e4=>{const _0x56a7d9=_0x3e29e4['button']===0x0;if(!_0x56a7d9)return;this['dragStarted']&&(this['onDragEnd'](_0x3e29e4),this['setControlsEnabled'](!![])),this['dragStarted']=![],this['activateSelectedObject'](![]),this['selectedObject']=undefined,this['inputManager']['setCursor']('default');},this['keydown']=_0xe1996=>{_0xe1996['code']==='Escape'&&this['deactivate']();},this['viewer']=_0x1b2cf1,this['inputManager']=_0x52ffdf,this['scene']=_0x1b2cf1['scene'],this['renderer']=_0x1b2cf1['renderer'],this['raycaster']['layers']['set'](LayerForSelectableObjects),this['capsScene']=new THREE['Scene'](),this['capsScene']['matrixAutoUpdate']=!![],this['capsScene']['matrixWorldAutoUpdate']=!![];}get['canvas'](){var _0x51fe2a;return (_0x51fe2a=this['viewer']['renderer'])===null||_0x51fe2a===void 0x0?void 0x0:_0x51fe2a['domElement'];}get['isActive'](){return !!this['active'];}get['camera'](){return this['viewer']['camera'];}['setGlobalClippingEnabled'](_0x24bf9d){if(!this['clipPlanes'])return;const _0x1c7296=_0x24bf9d?this['clipPlanes']:[];this['viewer']['setGlobalClipPlanes'](_0x1c7296);}['setObjectClippingEnabled'](_0x4e11aa){var _0x352713,_0x2560dc;if(!this['clipPlanes']||!((_0x352713=this['clippingObjetIds'])===null||_0x352713===void 0x0?void 0x0:_0x352713['length']))return;this['renderer']['localClippingEnabled']=_0x4e11aa;const _0xff07c3=_0x4e11aa?this['clipPlanes']:[];(_0x2560dc=this['clippingObjetIds'])===null||_0x2560dc===void 0x0?void 0x0:_0x2560dc['forEach'](_0x563808=>{const _0x40058e=this['scene']['getObjectById'](_0x563808);_0x40058e&&_0x40058e['traverse'](_0x272008=>{if(_0x272008['material']){if(Array['isArray'](_0x272008['material']))_0x272008['material']['forEach'](_0x253546=>{_0x253546['clippingPlanes']=_0xff07c3,_0x253546['clipIntersection']=![];});else _0x272008['material']&&(_0x272008['material']['clippingPlanes']=_0xff07c3,_0x272008['material']['clipIntersection']=![]);}});});}['clearClippingObjectIds'](){this['setObjectClippingEnabled'](![]),this['clippingObjetIds']=[];}['setClippingEnabled'](_0xe1a0e2){var _0x12087b;((_0x12087b=this['clippingObjetIds'])===null||_0x12087b===void 0x0?void 0x0:_0x12087b['length'])?(this['setGlobalClippingEnabled'](![]),this['setObjectClippingEnabled'](_0xe1a0e2)):this['setGlobalClippingEnabled'](_0xe1a0e2);}['activate'](){this['inputManager']['addEventListener']('pointerdown',this['mousedown']),this['inputManager']['addEventListener']('pointermove',this['mousemove']),this['inputManager']['addEventListener']('pointerup',this['mouseup']),this['inputManager']['addEventListener']('keydown',this['keydown']);if(this['sectionBox']['isEmpty']()){const _0x44ce03=this['viewer']['getBBox']();_0x44ce03&&this['sectionBox']['copy'](_0x44ce03);}this['active']=!![];}['deactivate'](_0x44dd02=![]){var _0x9d9b07;this['inputManager']['removeEventListener']('pointerdown',this['mousedown']),this['inputManager']['removeEventListener']('pointermove',this['mousemove']),this['inputManager']['removeEventListener']('pointerup',this['mouseup']),this['inputManager']['removeEventListener']('keydown',this['keydown']),!_0x44dd02&&this['setClippingEnabled'](![]),(_0x9d9b07=this['selectedObject'])===null||_0x9d9b07===void 0x0?void 0x0:_0x9d9b07['removeFromParent'](),this['selectedObject']=undefined,this['dragStarted']=![],this['active']=![],this['inputManager']['setCursor']('default'),this['setControlsEnabled'](!![]);}['setCapsVisible'](_0x300201){this['capsVisibility']=_0x300201;}['getCapsVisible'](){return this['capsVisibility'];}['setCapsMaterial'](_0x5ed373){this['capsMaterial']=_0x5ed373,this['applyCapsMaterial']();}['applyCapsMaterial'](){}['getCapsMaterial'](){return this['capsMaterial'];}['setControlsEnabled'](_0x5761e9){this['viewer']['enableRotate'](_0x5761e9);}['getIntersection'](_0x542c8f){if(!this['raycaster'])return;this['updateRaycasterByMouse'](_0x542c8f);const _0x2df907=this['raycaster']['intersectObjects'](this['getIntersectObjects']())||[],_0x2f890c=_0x2df907['find'](_0x36ef1f=>{return _0x36ef1f['object']&&_0x36ef1f['object']['parent']instanceof SectionGizmo;});if(_0x2f890c)return _0x2f890c;return _0x2df907[0x0];}['updateRaycasterByMouse'](_0xd5c197){if(!this['raycaster'])return;const _0x25da81=new THREE['Vector2'](_0xd5c197['x'],_0xd5c197['y']),_0x331353=CoordinateUtils['screen2Ndc'](_0x25da81,this['camera'],this['canvas']);this['raycaster']['setFromCamera'](_0x331353,this['camera']);}['destroy'](){this['deactivate']();}}
|
|
84
|
+
|
|
85
|
+
const box=new THREE['Box3'](),q=new THREE['Quaternion']();class SectionPlaneMesh extends THREE['Mesh']{constructor(_0x421cc0,_0x4e4f14){super(),this['vertices']=[],this['layers']['enable'](LayerForSelectableObjects),this['actionType']=_0x421cc0,this['geometry']=new THREE['BufferGeometry'](),this['vertices']=_0x4e4f14['map'](_0x5ea2aa=>_0x5ea2aa['clone']()),this['geometry']['setFromPoints'](this['vertices']),this['geometry']['setAttribute']('uv',new THREE['Float32BufferAttribute']([0x0,0x1,0x1,0x1,0x0,0x0,0x1,0x0],0x2)),this['geometry']['setIndex']([0x0,0x1,0x2,0x0,0x2,0x3]),this['material']=new THREE['MeshBasicMaterial']({'depthTest':![],'color':SectionPlaneMesh['normalPlaneColor'],'transparent':!![],'opacity':0.01,'side':THREE['DoubleSide']}),this['createIgnoreClipMaterials'](this['material']),this['geometry']['computeVertexNormals'](),this['edge']=this['createEdge'](this['vertices']),this['add'](this['edge']);}['createIgnoreClipMaterials'](_0x34c8a5){_0x34c8a5['onBeforeCompile']=function(_0x472709,_0xa28b6a){_0x472709['fragmentShader']=_0x472709['fragmentShader']['replace']('#include\x20<clipping_planes_pars_fragment>','')['replace']('#include\x20<clipping_planes_fragment>',''),_0x472709['vertexShader']=_0x472709['vertexShader']['replace']('#include\x20<clipping_planes_pars_vertex>','')['replace']('#include\x20<clipping_planes_vertex>','');};}['createEdge'](_0x56dae2){const _0x217c4d=new THREE['BufferGeometry']();_0x217c4d['setFromPoints'](_0x56dae2),_0x217c4d['setIndex']([0x0,0x1,0x1,0x2,0x2,0x3,0x3,0x0]);const _0x2c197c=new THREE['LineBasicMaterial']({'color':SectionPlaneMesh['normalLineColor']});this['createIgnoreClipMaterials'](_0x2c197c);const _0x497681=new THREE['Line'](_0x217c4d,_0x2c197c);return _0x497681;}['createLine'](){var _0x2ac749;(_0x2ac749=this['wireframe'])===null||_0x2ac749===void 0x0?void 0x0:_0x2ac749['removeFromParent']();const _0x409c60=this['vertices'][0x0]['distanceTo'](this['vertices'][0x1]),_0x45f78d=this['vertices'][0x1]['distanceTo'](this['vertices'][0x2]),_0x391de1=[];for(let _0x24334e=0.5*_0x409c60,_0x31d54e=0.5*_0x45f78d,_0x5b92b1=0x1;_0x5b92b1<_0x409c60+_0x45f78d;_0x5b92b1+=0x1){let _0x4d35d0,_0x519b29;_0x5b92b1<_0x45f78d?(_0x4d35d0=this['vertices'][0x1]['clone']()['sub'](this['vertices'][0x2])['normalize']()['multiplyScalar'](-_0x31d54e+_0x5b92b1),_0x4d35d0['add'](this['vertices'][0x1]['clone']()['sub'](this['vertices'][0x0])['normalize']()['multiplyScalar'](-_0x24334e))):(_0x4d35d0=this['vertices'][0x1]['clone']()['sub'](this['vertices'][0x2])['normalize']()['multiplyScalar'](_0x31d54e),_0x4d35d0['add'](this['vertices'][0x2]['clone']()['sub'](this['vertices'][0x3])['normalize']()['multiplyScalar'](-_0x24334e+(_0x5b92b1-_0x45f78d)))),_0x5b92b1<_0x409c60?(_0x519b29=this['vertices'][0x1]['clone']()['sub'](this['vertices'][0x2])['normalize']()['multiplyScalar'](-_0x31d54e),_0x519b29['add'](this['vertices'][0x1]['clone']()['sub'](this['vertices'][0x0])['normalize']()['multiplyScalar'](-_0x24334e+_0x5b92b1))):(_0x519b29=this['vertices'][0x0]['clone']()['sub'](this['vertices'][0x3])['normalize']()['multiplyScalar'](-_0x31d54e+(_0x5b92b1-_0x409c60)),_0x519b29['add'](this['vertices'][0x2]['clone']()['sub'](this['vertices'][0x3])['normalize']()['multiplyScalar'](_0x24334e))),_0x391de1['push'](_0x4d35d0),_0x391de1['push'](_0x519b29);}const _0x38cd9e=new THREE['BufferGeometry']()['setFromPoints'](_0x391de1),_0x4ef73d=new THREE['LineBasicMaterial']({'color':0x0,'transparent':![]});this['createIgnoreClipMaterials'](_0x4ef73d);const _0x296b8f=new THREE['LineSegments'](_0x38cd9e,_0x4ef73d);_0x296b8f['position']['copy'](this['vertices'][0x0]['clone']()['add'](this['vertices'][0x2])['multiplyScalar'](0.5)),_0x296b8f['position']['add'](this['getPlaneNormal']()['multiplyScalar'](0.1)),_0x296b8f['updateMatrix'](),_0x296b8f['updateMatrixWorld'](),this['add'](_0x296b8f),this['wireframe']=_0x296b8f;}['update'](_0x130d89){const _0x21f507=_0x130d89['map'](_0x2a4b47=>_0x2a4b47['clone']());this['geometry']['setFromPoints'](_0x21f507),this['geometry']['computeBoundingSphere'](),this['geometry']['computeVertexNormals'](),this['edge']['geometry']['setFromPoints'](_0x21f507),this['vertices']=_0x21f507,this['wireframe']&&this['createLine']();}['rotatePlane'](_0xff6d16,_0xaf4089){const _0x41c4d2=this['getPlaneCenter']();q['setFromAxisAngle'](_0xff6d16,_0xaf4089),this['vertices']=this['vertices']['map'](_0x1c1ed3=>_0x1c1ed3['sub'](_0x41c4d2)['applyQuaternion'](q)['add'](_0x41c4d2)),this['update'](this['vertices']);}['setDirection'](_0x579840){const _0x5885a6=new THREE['Quaternion']();_0x5885a6['setFromUnitVectors'](AxisX$1,_0x579840);const _0x5d2ccd=this['getPlaneCenter']();this['vertices']=this['vertices']['map'](_0x57582a=>_0x57582a['sub'](_0x5d2ccd)['applyQuaternion'](_0x5885a6)['add'](_0x5d2ccd)),this['update'](this['vertices']);}['getPlaneNormal'](){const [_0x22cd50,_0x13ade5,_0x1437ed]=this['vertices'],_0x5cb90b=new THREE['Vector3']();return THREE['Triangle']['getNormal'](_0x22cd50,_0x13ade5,_0x1437ed,_0x5cb90b),_0x5cb90b;}['setActive'](_0xa4e168){this['material']['opacity']=_0xa4e168?0.1:0.01;}['getPlaneCenter'](){box['setFromPoints'](this['vertices']);const _0x30460d=new THREE['Vector3']();return box['getCenter'](_0x30460d),_0x30460d;}}SectionPlaneMesh['normalPlaneColor']=new THREE['Color'](0x0,0.855,0.718),SectionPlaneMesh['activePlaneColor']=new THREE['Color'](0x1,0x1,0x0),SectionPlaneMesh['normalLineColor']=0xffffff;
|
|
86
|
+
|
|
87
|
+
var AxisType;(function(_0x2b963c){_0x2b963c['X']='X',_0x2b963c['Y']='Y',_0x2b963c['Z']='Z';}(AxisType||(AxisType={})));class AxisPlaneSection extends BaseSection{constructor(_0xf94a96,_0x2cf833){super(_0xf94a96,_0x2cf833),this['activeAxis']=AxisType['X'],this['mousedown']=_0xae9c90=>{const _0x328903=_0xae9c90['button']===0x0;if(!_0x328903)return;if(!this['selectedObject']){const _0x459605=this['getIntersection'](_0xae9c90);if(!_0x459605)return;this['activateSelectedObject'](![]),this['selectedObject']=_0x459605['object'];}if(!(this['selectedObject']['parent']instanceof SectionGizmo))return;this['inputManager']['setCursor']('grabbing'),this['dragStarted']=!![],this['setControlsEnabled'](![]),this['onDragStart'](_0xae9c90),this['viewer']['enableRender']();},this['mousemove']=_0x30aa3d=>{var _0x4bcb19;if(this['dragStarted'])this['updateRaycasterByMouse'](_0x30aa3d),this['onDragMove'](_0x30aa3d);else {this['activateSelectedObject'](![]),this['selectedObject']=undefined;const _0x467302=this['getIntersection'](_0x30aa3d);let _0x3d0f2b='default';_0x467302&&_0x467302['object']['visible']&&((_0x4bcb19=_0x467302['object']['parent'])===null||_0x4bcb19===void 0x0?void 0x0:_0x4bcb19['visible'])&&(this['selectedObject']=_0x467302['object'],this['activateSelectedObject'](!![]),this['selectedObject']['parent']instanceof SectionGizmo&&(_0x3d0f2b='grab')),this['inputManager']['setCursor'](_0x3d0f2b);}this['viewer']['enableRender']();},this['center']=new THREE['Vector3'](),this['axisInfoMap']={[AxisType['X']]:{'normal':new THREE['Vector3'](0x1,0x0,0x0)},[AxisType['Y']]:{'normal':new THREE['Vector3'](0x0,0x1,0x0)},[AxisType['Z']]:{'normal':new THREE['Vector3'](0x0,0x0,0x1)}},this['showSectionPlane']=!![],this['viewer']['addEventListener'](ViewerEvent['BeforeRender'],()=>{var _0x14a7f1,_0x5bebd3;this['isActive']&&((_0x14a7f1=this['gizmo'])===null||_0x14a7f1===void 0x0?void 0x0:_0x14a7f1['adjustSize'](this['camera']),(_0x5bebd3=this['planeMesh'])===null||_0x5bebd3===void 0x0?void 0x0:_0x5bebd3['updateWorldMatrix'](!![],!![]));});}['activate'](_0xcad84a=AxisType['X'],_0x499d98){super['activate'](),this['setActiveAxis'](_0xcad84a,_0x499d98);}['deactivate'](_0x4cf74b=![]){var _0x2825d3,_0x6bef5f;super['deactivate'](_0x4cf74b),(_0x2825d3=this['planeMesh'])===null||_0x2825d3===void 0x0?void 0x0:_0x2825d3['removeFromParent'](),(_0x6bef5f=this['gizmo'])===null||_0x6bef5f===void 0x0?void 0x0:_0x6bef5f['removeFromParent'](),this['planeMesh']=undefined,this['gizmo']=undefined;}['reset'](){var _0x18641a,_0x3e80f9;(_0x18641a=this['planeMesh'])===null||_0x18641a===void 0x0?void 0x0:_0x18641a['removeFromParent'](),(_0x3e80f9=this['gizmo'])===null||_0x3e80f9===void 0x0?void 0x0:_0x3e80f9['removeFromParent'](),this['setClippingEnabled'](![]),this['planeMesh']=undefined,this['gizmo']=undefined,this['setActiveAxis'](this['activeAxis']);}['setActiveAxis'](_0x22a6c0,_0xf1ebb1){this['activeAxis']=_0x22a6c0,this['sectionBox']&&this['sectionBox']['getCenter'](this['center']),this['clipPlaneConstant']=_0xf1ebb1,this['initOrUpdateGizmo'](),this['initOrUpdateClipPlanes'](),this['initOrUpdateSectionPlaneMeshes'](),this['setClippingEnabled'](!![]),this['clipPlaneConstant']=undefined,this['viewer']['enableRender']();}['setSectionPlaneVisible'](_0x1912d2){this['gizmo']&&this['planeMesh']&&(this['gizmo']['visible']=_0x1912d2,this['planeMesh']['visible']=_0x1912d2),this['showSectionPlane']=_0x1912d2,this['viewer']['enableRender']();}['initOrUpdateClipPlanes'](){switch(this['activeAxis']){case AxisType['X']:{const _0x1a8714=this['clipPlaneConstant']||this['center']['x'];this['clipPlane']=new THREE['Plane'](new THREE['Vector3'](-0x1,0x0,0x0),_0x1a8714);break;}case AxisType['Y']:{const _0x3a2e5f=this['clipPlaneConstant']||this['center']['y'];this['clipPlane']=new THREE['Plane'](new THREE['Vector3'](0x0,-0x1,0x0),_0x3a2e5f);break;}case AxisType['Z']:{const _0x4c6da0=this['clipPlaneConstant']||this['center']['z'];this['clipPlane']=new THREE['Plane'](new THREE['Vector3'](0x0,0x0,-0x1),_0x4c6da0);break;}}this['clipPlane']&&(this['clipPlanes']=[this['clipPlane']]);}['initOrUpdateSectionPlaneMeshes'](){var _0x38853a;const _0x453d5a=new THREE['Vector3']();this['sectionBox']['getSize'](_0x453d5a);const _0xd584c4=_0x453d5a['length'](),_0x29e916=this['center']['clone']();this['adjustPositionByClipPlaneConstant'](_0x29e916);const _0x4b7904=new THREE['Box3']()['setFromCenterAndSize'](_0x29e916,new THREE['Vector3'](_0xd584c4,_0xd584c4,_0xd584c4)),{min:_0x2708a1,max:_0x4a3049}=_0x4b7904;(_0x38853a=this['planeMesh'])===null||_0x38853a===void 0x0?void 0x0:_0x38853a['removeFromParent']();switch(this['activeAxis']){case AxisType['X']:this['planeMesh']=new SectionPlaneMesh(AxisType['X'],[new THREE['Vector3'](_0x29e916['x'],_0x4a3049['y'],_0x2708a1['z']),new THREE['Vector3'](_0x29e916['x'],_0x4a3049['y'],_0x4a3049['z']),new THREE['Vector3'](_0x29e916['x'],_0x2708a1['y'],_0x4a3049['z']),new THREE['Vector3'](_0x29e916['x'],_0x2708a1['y'],_0x2708a1['z'])]);break;case AxisType['Y']:this['planeMesh']=new SectionPlaneMesh(AxisType['Y'],[new THREE['Vector3'](_0x4a3049['x'],_0x29e916['y'],_0x2708a1['z']),new THREE['Vector3'](_0x2708a1['x'],_0x29e916['y'],_0x2708a1['z']),new THREE['Vector3'](_0x2708a1['x'],_0x29e916['y'],_0x4a3049['z']),new THREE['Vector3'](_0x4a3049['x'],_0x29e916['y'],_0x4a3049['z'])]);break;case AxisType['Z']:this['planeMesh']=new SectionPlaneMesh(AxisType['Z'],[new THREE['Vector3'](_0x4a3049['x'],_0x4a3049['y'],_0x29e916['z']),new THREE['Vector3'](_0x2708a1['x'],_0x4a3049['y'],_0x29e916['z']),new THREE['Vector3'](_0x2708a1['x'],_0x2708a1['y'],_0x29e916['z']),new THREE['Vector3'](_0x4a3049['x'],_0x2708a1['y'],_0x29e916['z'])]);break;}this['planeMesh']&&(this['planeMesh']['visible']=this['showSectionPlane'],this['scene']['add'](this['planeMesh'])),this['createCapsWireframe'](),this['viewer']['enableRender']();}['createCapsWireframe'](){var _0x364791;if(!this['planeMesh'])return;const {actionType:_0x2e872f,vertices:_0x262727}=this['planeMesh'];(_0x364791=this['capsWireframe'])===null||_0x364791===void 0x0?void 0x0:_0x364791['removeFromParent'](),this['capsWireframe']=new SectionPlaneMesh(_0x2e872f,_0x262727);const _0xc16cef=this['getCapsMaterial']();_0xc16cef&&(this['capsWireframe']['createIgnoreClipMaterials'](_0xc16cef),_0xc16cef['needsUpdate']=!![],this['capsWireframe']['material']=_0xc16cef),this['clipPlane']&&(this['capsWireframe']['userData']['clipPlane']=this['clipPlane']),this['capsWireframe']['visible']=this['getCapsVisible'](),this['capsScene']['add'](this['capsWireframe']);}['applyCapsMaterial'](){const _0x20b436=this['getCapsMaterial']();_0x20b436&&this['capsWireframe']&&(this['capsWireframe']['createIgnoreClipMaterials'](_0x20b436),_0x20b436['needsUpdate']=!![],this['capsWireframe']['material']=_0x20b436);}['setCapsVisible'](_0x453b58){super['setCapsVisible'](_0x453b58),this['capsWireframe']&&(this['capsWireframe']['visible']=_0x453b58),this['viewer']['enableRender']();}['initOrUpdateGizmo'](){var _0x4481ac,_0x18b0aa;(_0x4481ac=this['gizmo'])===null||_0x4481ac===void 0x0?void 0x0:_0x4481ac['removeFromParent']();const _0x536fe2=this['axisInfoMap'][this['activeAxis']]['normal'],_0x2ebe95=new SectionGizmo();_0x2ebe95['setDirection'](_0x536fe2),this['sectionBox']['getCenter'](_0x2ebe95['position']),this['adjustPositionByClipPlaneConstant'](_0x2ebe95['position']),_0x2ebe95['adjustSize'](this['camera']),_0x2ebe95['visible']=this['showSectionPlane'],(_0x18b0aa=this['scene'])===null||_0x18b0aa===void 0x0?void 0x0:_0x18b0aa['add'](_0x2ebe95),this['gizmo']=_0x2ebe95;}['onDragStart'](_0x144528){var _0x48ddb6;if(this['selectedObject']instanceof SectionPlaneMesh)return;log['info']('[Section]\x20onDragStart:',_0x144528);const _0x4e0021=new THREE['Vector3']();this['sectionBox']['getCenter'](_0x4e0021),this['refrencePlane']['setFromNormalAndCoplanarPoint'](this['camera']['getWorldDirection'](this['refrencePlane']['normal']),_0x4e0021),(_0x48ddb6=this['raycaster'])===null||_0x48ddb6===void 0x0?void 0x0:_0x48ddb6['ray']['intersectPlane'](this['refrencePlane'],this['lastWorldPos']);}['onDragMove'](_0x3589a5){var _0x36f81f,_0x2c1e8b,_0x56ae85,_0x4ba660,_0x4a4da6,_0x3b9a2b,_0x53acc9;if(!this['lastWorldPos']||!this['selectedObject']||!this['clipPlane']||!this['planeMesh']||!this['gizmo']||this['selectedObject']&&this['selectedObject']instanceof SectionPlaneMesh)return;const _0x54b0b3=new THREE['Vector3']();(_0x36f81f=this['raycaster'])===null||_0x36f81f===void 0x0?void 0x0:_0x36f81f['ray']['intersectPlane'](this['refrencePlane'],_0x54b0b3);const _0x37425d=this['selectedObject']['userData']['actionType'],_0x39b912=new THREE['Vector3']()['subVectors'](this['lastWorldPos'],this['center'])['normalize'](),_0x2dd19f=new THREE['Vector3']()['subVectors'](_0x54b0b3,this['center'])['normalize'](),_0x115caa=new THREE['Vector3']()['subVectors'](_0x54b0b3,this['lastWorldPos'])['projectOnVector'](AxisX$1['clone']()['applyQuaternion'](this['gizmo']['quaternion']));let _0x1336f2=_0x39b912['angleTo'](_0x2dd19f);const _0x48a278=new THREE['Vector3']()['crossVectors'](_0x39b912,_0x2dd19f),_0xb1afc=new THREE['Vector3']();this['sectionBox']['getSize'](_0xb1afc);const _0x45399c=Math['max'](_0xb1afc['x'],_0xb1afc['y'],_0xb1afc['z']);let _0x29f5b7;switch(_0x37425d){case ActionType['TranslateX']:case ActionType['TranslateY']:case ActionType['TranslateZ']:_0x29f5b7=new THREE['Vector3']()['addVectors'](this['gizmo']['position'],_0x115caa);this['sectionBox']['clone']()['setFromCenterAndSize'](this['center'],new THREE['Vector3'](_0x45399c,_0x45399c,_0x45399c))['containsPoint'](_0x29f5b7)&&((_0x2c1e8b=this['gizmo'])===null||_0x2c1e8b===void 0x0?void 0x0:_0x2c1e8b['position']['add'](_0x115caa),(_0x56ae85=this['planeMesh'])===null||_0x56ae85===void 0x0?void 0x0:_0x56ae85['position']['add'](_0x115caa),(_0x4ba660=this['capsWireframe'])===null||_0x4ba660===void 0x0?void 0x0:_0x4ba660['position']['add'](_0x115caa));break;case ActionType['RotateX']:{const _0x23968f=AxisX$1['clone']()['applyQuaternion'](this['gizmo']['quaternion']),_0x1d5eae=_0x48a278['dot'](_0x23968f);_0x1d5eae<0x0&&(_0x1336f2=-_0x1336f2),this['gizmo']['rotateX'](_0x1336f2),this['planeMesh']['rotatePlane'](_0x23968f,_0x1336f2),(_0x4a4da6=this['capsWireframe'])===null||_0x4a4da6===void 0x0?void 0x0:_0x4a4da6['rotatePlane'](_0x23968f,_0x1336f2);}break;case ActionType['RotateY']:{const _0x2d3579=AxisY$1['clone']()['applyQuaternion'](this['gizmo']['quaternion']),_0x48a107=_0x48a278['dot'](_0x2d3579);_0x48a107<0x0&&(_0x1336f2=-_0x1336f2),this['gizmo']['rotateY'](_0x1336f2),this['planeMesh']['rotatePlane'](_0x2d3579,_0x1336f2),(_0x3b9a2b=this['capsWireframe'])===null||_0x3b9a2b===void 0x0?void 0x0:_0x3b9a2b['rotatePlane'](_0x2d3579,_0x1336f2);}break;case ActionType['RotateZ']:{const _0x164766=AxisZ$1['clone']()['applyQuaternion'](this['gizmo']['quaternion']),_0x3d4eea=_0x48a278['dot'](_0x164766);_0x3d4eea<0x0&&(_0x1336f2=-_0x1336f2),this['gizmo']['rotateZ'](_0x1336f2),this['planeMesh']['rotatePlane'](_0x164766,_0x1336f2),(_0x53acc9=this['capsWireframe'])===null||_0x53acc9===void 0x0?void 0x0:_0x53acc9['rotatePlane'](_0x164766,_0x1336f2);}break;}this['clipPlane']['setFromNormalAndCoplanarPoint'](this['planeMesh']['getPlaneNormal']()['negate'](),this['gizmo']['position']),this['lastWorldPos']=_0x54b0b3;}['onDragEnd'](_0x130dd9){if(this['selectedObject']instanceof SectionPlaneMesh)return;log['info']('[Section]\x20onDragEnd:',_0x130dd9);}['getIntersectObjects'](){if(!this['planeMesh']||!this['gizmo'])return [];return [this['planeMesh'],this['gizmo']];}['activateSelectedObject'](_0x174285){if(!this['selectedObject'])return;if(this['selectedObject']instanceof SectionPlaneMesh)this['selectedObject']['setActive'](_0x174285);else this['selectedObject']['parent']instanceof SectionGizmo&&this['selectedObject']['parent']['setActive'](_0x174285,this['selectedObject']);}['adjustPositionByClipPlaneConstant'](_0x3fe2a5){if(this['clipPlaneConstant']!=null){if(this['activeAxis']===AxisType['X'])_0x3fe2a5['setX'](this['clipPlaneConstant']);else {if(this['activeAxis']===AxisType['Y'])_0x3fe2a5['setY'](this['clipPlaneConstant']);else this['activeAxis']===AxisType['Z']&&_0x3fe2a5['setZ'](this['clipPlaneConstant']);}}}}
|
|
88
|
+
|
|
89
|
+
class ObjectsBoxSection extends BaseSection{constructor(_0x2a9c84,_0x41d6f9){super(_0x2a9c84,_0x41d6f9),this['sectionRange']={};}['activate'](){super['activate']();const _0x104483=this['viewer']['getBBox']();if(_0x104483){const {min:_0x5d9700,max:_0x1a2789}=_0x104483;this['sectionRange']={'x':[_0x5d9700['x'],_0x1a2789['x']],'y':[_0x5d9700['y'],_0x1a2789['y']],'z':[_0x5d9700['z'],_0x1a2789['z']]};}this['initOrUpdateClipPlanes'](),this['initOrUpdateVertices'](),this['initOrUpdateSectionPlaneMeshes'](),this['initOrUpdateCapsWireframes'](),this['setClippingEnabled'](!![]);}['deactivate'](_0x55da8d=![]){super['deactivate'](_0x55da8d),this['planeMeshes']&&this['scene']['remove'](...this['planeMeshes']),this['capsWireframes']&&this['capsScene']['remove'](...this['capsWireframes']),this['planeMeshes']=undefined,this['capsWireframes']=undefined;}['initOrUpdateVertices'](){if(!this['sectionBox'])return;const {min:_0x63eea3,max:_0x56d57c}=this['sectionBox'];this['vertices']=[new THREE['Vector3'](_0x56d57c['x'],_0x63eea3['y'],_0x56d57c['z']),new THREE['Vector3'](_0x63eea3['x'],_0x63eea3['y'],_0x56d57c['z']),new THREE['Vector3'](_0x63eea3['x'],_0x63eea3['y'],_0x63eea3['z']),new THREE['Vector3'](_0x56d57c['x'],_0x63eea3['y'],_0x63eea3['z']),new THREE['Vector3'](_0x56d57c['x'],_0x56d57c['y'],_0x56d57c['z']),new THREE['Vector3'](_0x63eea3['x'],_0x56d57c['y'],_0x56d57c['z']),new THREE['Vector3'](_0x63eea3['x'],_0x56d57c['y'],_0x63eea3['z']),new THREE['Vector3'](_0x56d57c['x'],_0x56d57c['y'],_0x63eea3['z'])];}['initOrUpdateClipPlanes'](){const {min:_0x3dbcf9,max:_0x5b9a45}=this['sectionBox'];!this['clipPlanes']?this['clipPlanes']=[new THREE['Plane'](new THREE['Vector3'](-0x1,0x0,0x0),_0x5b9a45['x']),new THREE['Plane'](new THREE['Vector3'](0x1,0x0,0x0),-_0x3dbcf9['x']),new THREE['Plane'](new THREE['Vector3'](0x0,0x0,-0x1),_0x5b9a45['z']),new THREE['Plane'](new THREE['Vector3'](0x0,0x0,0x1),-_0x3dbcf9['z']),new THREE['Plane'](new THREE['Vector3'](0x0,0x1,0x0),-_0x3dbcf9['y']),new THREE['Plane'](new THREE['Vector3'](0x0,-0x1,0x0),_0x5b9a45['y'])]:(this['clipPlanes'][0x0]['constant']=_0x5b9a45['x'],this['clipPlanes'][0x1]['constant']=-_0x3dbcf9['x'],this['clipPlanes'][0x2]['constant']=_0x5b9a45['z'],this['clipPlanes'][0x3]['constant']=-_0x3dbcf9['z'],this['clipPlanes'][0x4]['constant']=-_0x3dbcf9['y'],this['clipPlanes'][0x5]['constant']=_0x5b9a45['y']);}['initOrUpdateSectionPlaneMeshes'](){const _0x561c17=this['vertices'];if(!_0x561c17)return;if(!this['planeMeshes']){const _0x95fd5e=[new SectionPlaneMesh(ViewDirection['Right'],[_0x561c17[0x4],_0x561c17[0x0],_0x561c17[0x3],_0x561c17[0x7]]),new SectionPlaneMesh(ViewDirection['Left'],[_0x561c17[0x1],_0x561c17[0x5],_0x561c17[0x6],_0x561c17[0x2]]),new SectionPlaneMesh(ViewDirection['Top'],[_0x561c17[0x4],_0x561c17[0x5],_0x561c17[0x1],_0x561c17[0x0]]),new SectionPlaneMesh(ViewDirection['Bottom'],[_0x561c17[0x6],_0x561c17[0x7],_0x561c17[0x3],_0x561c17[0x2]]),new SectionPlaneMesh(ViewDirection['Front'],[_0x561c17[0x0],_0x561c17[0x1],_0x561c17[0x2],_0x561c17[0x3]]),new SectionPlaneMesh(ViewDirection['Back'],[_0x561c17[0x5],_0x561c17[0x4],_0x561c17[0x7],_0x561c17[0x6]])];this['planeMeshes']=_0x95fd5e,this['scene']['add'](..._0x95fd5e);}else this['planeMeshes'][0x0]['update']([_0x561c17[0x4],_0x561c17[0x0],_0x561c17[0x3],_0x561c17[0x7]]),this['planeMeshes'][0x1]['update']([_0x561c17[0x1],_0x561c17[0x5],_0x561c17[0x6],_0x561c17[0x2]]),this['planeMeshes'][0x2]['update']([_0x561c17[0x4],_0x561c17[0x5],_0x561c17[0x1],_0x561c17[0x0]]),this['planeMeshes'][0x3]['update']([_0x561c17[0x6],_0x561c17[0x7],_0x561c17[0x3],_0x561c17[0x2]]),this['planeMeshes'][0x4]['update']([_0x561c17[0x0],_0x561c17[0x1],_0x561c17[0x2],_0x561c17[0x3]]),this['planeMeshes'][0x5]['update']([_0x561c17[0x5],_0x561c17[0x4],_0x561c17[0x7],_0x561c17[0x6]]);this['viewer']['enableRender']();}['initOrUpdateCapsWireframes'](){const _0x1ed17e=this['vertices'];if(!_0x1ed17e||!this['clipPlanes'])return;if(!this['capsWireframes']){const _0x522b29=[this['createCapsWireframe'](ViewDirection['Right'],[_0x1ed17e[0x4],_0x1ed17e[0x0],_0x1ed17e[0x3],_0x1ed17e[0x7]],this['clipPlanes'][0x0]),this['createCapsWireframe'](ViewDirection['Left'],[_0x1ed17e[0x1],_0x1ed17e[0x5],_0x1ed17e[0x6],_0x1ed17e[0x2]],this['clipPlanes'][0x1]),this['createCapsWireframe'](ViewDirection['Top'],[_0x1ed17e[0x4],_0x1ed17e[0x5],_0x1ed17e[0x1],_0x1ed17e[0x0]],this['clipPlanes'][0x2]),this['createCapsWireframe'](ViewDirection['Bottom'],[_0x1ed17e[0x6],_0x1ed17e[0x7],_0x1ed17e[0x3],_0x1ed17e[0x2]],this['clipPlanes'][0x3]),this['createCapsWireframe'](ViewDirection['Front'],[_0x1ed17e[0x0],_0x1ed17e[0x1],_0x1ed17e[0x2],_0x1ed17e[0x3]],this['clipPlanes'][0x4]),this['createCapsWireframe'](ViewDirection['Back'],[_0x1ed17e[0x5],_0x1ed17e[0x4],_0x1ed17e[0x7],_0x1ed17e[0x6]],this['clipPlanes'][0x5])];this['capsWireframes']=_0x522b29,this['capsScene']['add'](..._0x522b29);}else this['capsWireframes'][0x0]['update']([_0x1ed17e[0x4],_0x1ed17e[0x0],_0x1ed17e[0x3],_0x1ed17e[0x7]]),this['capsWireframes'][0x1]['update']([_0x1ed17e[0x1],_0x1ed17e[0x5],_0x1ed17e[0x6],_0x1ed17e[0x2]]),this['capsWireframes'][0x2]['update']([_0x1ed17e[0x4],_0x1ed17e[0x5],_0x1ed17e[0x1],_0x1ed17e[0x0]]),this['capsWireframes'][0x3]['update']([_0x1ed17e[0x6],_0x1ed17e[0x7],_0x1ed17e[0x3],_0x1ed17e[0x2]]),this['capsWireframes'][0x4]['update']([_0x1ed17e[0x0],_0x1ed17e[0x1],_0x1ed17e[0x2],_0x1ed17e[0x3]]),this['capsWireframes'][0x5]['update']([_0x1ed17e[0x5],_0x1ed17e[0x4],_0x1ed17e[0x7],_0x1ed17e[0x6]]),this['capsWireframes'][0x0]['userData']['clipPlane']=this['clipPlanes'][0x0],this['capsWireframes'][0x1]['userData']['clipPlane']=this['clipPlanes'][0x1],this['capsWireframes'][0x2]['userData']['clipPlane']=this['clipPlanes'][0x2],this['capsWireframes'][0x3]['userData']['clipPlane']=this['clipPlanes'][0x3],this['capsWireframes'][0x4]['userData']['clipPlane']=this['clipPlanes'][0x4],this['capsWireframes'][0x5]['userData']['clipPlane']=this['clipPlanes'][0x5];this['viewer']['enableRender']();}['createCapsWireframe'](_0xb04101,_0x27fb3c,_0x555270){const _0x1898de=new SectionPlaneMesh(_0xb04101,_0x27fb3c),_0x27842a=this['getCapsMaterial']();return _0x27842a&&(_0x1898de['createIgnoreClipMaterials'](_0x27842a),_0x27842a['needsUpdate']=!![],_0x1898de['material']=_0x27842a),_0x1898de['userData']['clipPlane']=_0x555270,_0x1898de['visible']=this['getCapsVisible'](),_0x1898de;}['applyCapsMaterial'](){var _0x34b970;const _0x198322=this['getCapsMaterial']();if(!_0x198322)return;(_0x34b970=this['capsWireframes'])===null||_0x34b970===void 0x0?void 0x0:_0x34b970['forEach'](_0x30e6bd=>{_0x30e6bd['createIgnoreClipMaterials'](_0x198322),_0x198322['needsUpdate']=!![],_0x30e6bd['material']=_0x198322;});}['activateSelectedObject'](_0x5daf31){var _0x480e2b;(_0x480e2b=this['selectedObject'])===null||_0x480e2b===void 0x0?void 0x0:_0x480e2b['setActive'](_0x5daf31);}['onDragStart'](_0x3e66d6){var _0x57800c;if(!this['selectedObject'])return;log['info']('[Section]\x20onDragStart:',_0x3e66d6),this['refrencePlane']['setFromNormalAndCoplanarPoint'](this['camera']['getWorldDirection'](this['refrencePlane']['normal']),this['selectedObject']['getPlaneCenter']()),(_0x57800c=this['raycaster'])===null||_0x57800c===void 0x0?void 0x0:_0x57800c['ray']['intersectPlane'](this['refrencePlane'],this['lastWorldPos']);}['onDragMove'](_0x545486){var _0x4a5319;if(!this['lastWorldPos']||!this['selectedObject'])return;const _0x216e77=new THREE['Vector3']();(_0x4a5319=this['raycaster'])===null||_0x4a5319===void 0x0?void 0x0:_0x4a5319['ray']['intersectPlane'](this['refrencePlane'],_0x216e77);const _0xf8d656=this['selectedObject']['actionType'];switch(_0xf8d656){case ViewDirection['Top']:case ViewDirection['Bottom']:this['dragTranslateSectionPlane'](AxisZ$1,this['lastWorldPos'],_0x216e77,_0xf8d656);break;case ViewDirection['Left']:case ViewDirection['Right']:this['dragTranslateSectionPlane'](AxisX$1,this['lastWorldPos'],_0x216e77,_0xf8d656);break;case ViewDirection['Front']:case ViewDirection['Back']:this['dragTranslateSectionPlane'](AxisY$1,this['lastWorldPos'],_0x216e77,_0xf8d656);break;}this['lastWorldPos']=_0x216e77;}['onDragEnd'](_0x171f8a){log['info']('[Section]\x20onDragEnd:',_0x171f8a);}['dragTranslateSectionPlane'](_0x3f4156,_0x9e9f93,_0x2693be,_0x409922){const {min:_0x396b5e,max:_0x4d5fbd}=this['sectionBox'],_0x4a1d92=_0x2693be['clone']()['sub'](_0x9e9f93)['projectOnVector'](_0x3f4156);let _0x12b4de;switch(_0x409922){case ViewDirection['Top']:_0x12b4de=_0x4d5fbd['z']+_0x4a1d92['z'];this['isInRange'](_0x12b4de,this['sectionRange']['z'])&&(_0x4d5fbd['z']=_0x12b4de);break;case ViewDirection['Bottom']:_0x12b4de=_0x396b5e['z']+_0x4a1d92['z'];this['isInRange'](_0x12b4de,this['sectionRange']['z'])&&(_0x396b5e['z']=_0x12b4de);break;case ViewDirection['Left']:_0x12b4de=_0x396b5e['x']+_0x4a1d92['x'];this['isInRange'](_0x12b4de,this['sectionRange']['x'])&&(_0x396b5e['x']=_0x12b4de);break;case ViewDirection['Right']:_0x12b4de=_0x4d5fbd['x']+_0x4a1d92['x'];this['isInRange'](_0x12b4de,this['sectionRange']['x'])&&(_0x4d5fbd['x']=_0x12b4de);break;case ViewDirection['Front']:_0x12b4de=_0x396b5e['y']+_0x4a1d92['y'];this['isInRange'](_0x12b4de,this['sectionRange']['y'])&&(_0x396b5e['y']=_0x12b4de);break;case ViewDirection['Back']:_0x12b4de=_0x4d5fbd['y']+_0x4a1d92['y'];this['isInRange'](_0x12b4de,this['sectionRange']['y'])&&(_0x4d5fbd['y']=_0x12b4de);break;}this['initOrUpdateVertices'](),this['initOrUpdateSectionPlaneMeshes'](),this['initOrUpdateClipPlanes'](),this['initOrUpdateCapsWireframes'](),this['viewer']['enableRender']();}['isInRange'](_0xeff8a3,_0xb247eb){return _0xeff8a3>_0xb247eb[0x0]&&_0xeff8a3<_0xb247eb[0x1];}['getIntersection'](_0x4393be){if(!this['raycaster'])return;this['updateRaycasterByMouse'](_0x4393be);const _0x552b7a=this['raycaster']['intersectObjects'](this['getIntersectObjects']())||[];return _0x552b7a[0x0];}['getIntersectObjects'](){return this['planeMeshes']||[];}['reset'](){this['sectionBox']=this['viewer']['getBBox'](),this['initOrUpdateVertices'](),this['initOrUpdateSectionPlaneMeshes'](),this['initOrUpdateCapsWireframes'](),this['initOrUpdateClipPlanes'](),this['viewer']['enableRender']();}['setSectionPlaneVisible'](_0x2fd2d3){var _0x16619b;(_0x16619b=this['planeMeshes'])===null||_0x16619b===void 0x0?void 0x0:_0x16619b['forEach'](_0x35d229=>_0x35d229['visible']=_0x2fd2d3),this['showSectionPlane']=_0x2fd2d3,this['viewer']['enableRender']();}['setCapsVisible'](_0x55591f){var _0x5a4653;super['setCapsVisible'](_0x55591f),(_0x5a4653=this['capsWireframes'])===null||_0x5a4653===void 0x0?void 0x0:_0x5a4653['forEach'](_0x190d1c=>{_0x190d1c['visible']=_0x55591f;}),this['viewer']['enableRender']();}}
|
|
90
|
+
|
|
91
|
+
const en$b={'pickPlaneSection':'Pick\x20Plane\x20Section','pickSectionPlane':'Click\x20to\x20pick\x20a\x20section\x20plane','axisSection':'Axis\x20Section','hideSectionPlane':'Hide\x20Section\x20Panel','showSectionPlane':'Show\x20Section\x20Panel','reset':'Reset'};const zh$b={'pickPlaneSection':'拾取面剖切','pickSectionPlane':'点击确定剖切面','axisSection':'轴剖切','hideSectionPlane':'隐藏剖切面','showSectionPlane':'显示剖切面','reset':'重置'};const SECTION_I18N_NAMESPACE='section';registerViewerI18nNamespace(SECTION_I18N_NAMESPACE,{'en':en$b,'zh':zh$b});function t$b(_0x4867e0){return i18n['t'](_0x4867e0,{'ns':SECTION_I18N_NAMESPACE});}
|
|
92
|
+
|
|
93
|
+
class PickPlaneSection extends BaseSection{constructor(_0x29674b,_0x530519){super(_0x29674b,_0x530519),this['rotationQuat']=new THREE['Quaternion'](),this['mousedown']=_0x4920e5=>{var _0x71ece5;const _0xc8ca99=_0x4920e5['button']===0x0;if(!_0xc8ca99)return;if(!this['pickedFaceInfo']){let _0x2025ce=this['pickObject'](_0x4920e5);!_0x2025ce&&this['lastMouseMoveIntersection']&&(_0x2025ce=this['lastMouseMoveIntersection']);if(_0x2025ce&&_0x2025ce['face']){const _0x3a3a3b=_0x2025ce['face']['normal'],_0x41f059=new THREE['Matrix3']();_0x3a3a3b['applyNormalMatrix'](_0x41f059['getNormalMatrix'](_0x2025ce['object']['matrixWorld'])),this['pickedFaceInfo']={'position':_0x2025ce['point'],'normal':_0x3a3a3b['normalize']()},this['setSection'](),(_0x71ece5=this['tooltip'])===null||_0x71ece5===void 0x0?void 0x0:_0x71ece5['hide']();}return;}if(!this['selectedObject']){const _0x53d4e9=this['getIntersection'](_0x4920e5);if(!_0x53d4e9)return;this['activateSelectedObject'](![]),this['selectedObject']=_0x53d4e9['object'];}if(!(this['selectedObject']['parent']instanceof SectionGizmo))return;this['inputManager']['setCursor']('grabbing'),this['dragStarted']=!![],this['setControlsEnabled'](![]),this['onDragStart'](_0x4920e5),this['viewer']['enableRender']();},this['mousemove']=_0x5473c2=>{var _0x10772a,_0x46f478,_0x3ce69c;if(!this['pickedFaceInfo']){const _0x3ce3d4=this['pickObject'](_0x5473c2);_0x3ce3d4?(_0x10772a=this['tooltip'])===null||_0x10772a===void 0x0?void 0x0:_0x10772a['show']():(_0x46f478=this['tooltip'])===null||_0x46f478===void 0x0?void 0x0:_0x46f478['hide']();this['lastMouseMoveIntersection']=_0x3ce3d4;return;}if(this['dragStarted'])this['updateRaycasterByMouse'](_0x5473c2),this['onDragMove'](_0x5473c2);else {this['activateSelectedObject'](![]),this['selectedObject']=undefined;const _0x79a0c0=this['getIntersection'](_0x5473c2);let _0x4e3ee3='default';_0x79a0c0&&_0x79a0c0['object']['visible']&&((_0x3ce69c=_0x79a0c0['object']['parent'])===null||_0x3ce69c===void 0x0?void 0x0:_0x3ce69c['visible'])&&(this['selectedObject']=_0x79a0c0['object'],this['activateSelectedObject'](!![]),this['selectedObject']['parent']instanceof SectionGizmo&&(_0x4e3ee3='grab')),this['inputManager']['setCursor'](_0x4e3ee3);}this['viewer']['enableRender']();},this['center']=new THREE['Vector3'](),this['viewer']['addEventListener'](ViewerEvent['BeforeRender'],()=>{var _0x36bcad,_0x54d766,_0x7fdb54;this['isActive']&&((_0x36bcad=this['gizmo'])===null||_0x36bcad===void 0x0?void 0x0:_0x36bcad['adjustSize'](this['camera']),(_0x54d766=this['planeMesh'])===null||_0x54d766===void 0x0?void 0x0:_0x54d766['updateWorldMatrix'](!![],!![]),(_0x7fdb54=this['capsWireframe'])===null||_0x7fdb54===void 0x0?void 0x0:_0x7fdb54['updateWorldMatrix'](!![],!![]));});}['activate'](){super['activate'](),this['sectionBox']['getCenter'](this['center']),this['tooltip']=new Tooltip('pick-section-plane',t$b('pickSectionPlane'),{'parentNode':this['viewer']['widgetContainer'],'followPointer':!![]});}['deactivate'](_0x53a7ad=![]){var _0x5ea250,_0x45d59c,_0x4ac131;super['deactivate'](_0x53a7ad),(_0x5ea250=this['planeMesh'])===null||_0x5ea250===void 0x0?void 0x0:_0x5ea250['removeFromParent'](),(_0x45d59c=this['gizmo'])===null||_0x45d59c===void 0x0?void 0x0:_0x45d59c['removeFromParent'](),this['planeMesh']=undefined,this['gizmo']=undefined,this['pickedFaceInfo']=undefined,this['lastMouseMoveIntersection']=undefined,(_0x4ac131=this['tooltip'])===null||_0x4ac131===void 0x0?void 0x0:_0x4ac131['destroy'](),this['tooltip']=undefined;}['setSection'](){this['initOrUpdateGizmo'](),this['initOrUpdateClipPlanes'](),this['initOrUpdateSectionPlaneMeshes'](),this['setClippingEnabled'](!![]),this['viewer']['enableRender']();}['reset'](){var _0xa9ec80,_0x455e8c,_0x87b643;(_0xa9ec80=this['planeMesh'])===null||_0xa9ec80===void 0x0?void 0x0:_0xa9ec80['removeFromParent'](),(_0x455e8c=this['gizmo'])===null||_0x455e8c===void 0x0?void 0x0:_0x455e8c['removeFromParent'](),this['setClippingEnabled'](![]),this['planeMesh']=undefined,this['gizmo']=undefined,this['pickedFaceInfo']=undefined,this['lastMouseMoveIntersection']=undefined,(_0x87b643=this['tooltip'])===null||_0x87b643===void 0x0?void 0x0:_0x87b643['show'](),this['viewer']['enableRender']();}['setSectionPlaneVisible'](_0x1d8abe){this['gizmo']&&this['planeMesh']&&(this['gizmo']['visible']=_0x1d8abe,this['planeMesh']['visible']=_0x1d8abe),this['showSectionPlane']=_0x1d8abe,this['viewer']['enableRender']();}['initOrUpdateClipPlanes'](){if(!this['pickedFaceInfo'])return;const {normal:_0x3cc4b2,position:_0x1c30f3}=this['pickedFaceInfo'];this['clipPlane']=new THREE['Plane']()['setFromNormalAndCoplanarPoint'](_0x3cc4b2['clone']()['negate'](),_0x1c30f3),this['clipPlane']&&(this['clipPlanes']=[this['clipPlane']]);}['initOrUpdateSectionPlaneMeshes'](){var _0x874bc6;if(!this['pickedFaceInfo'])return;const {normal:_0x140d70,position:_0x266066}=this['pickedFaceInfo'],_0x34ef6e=new THREE['Vector3']();this['sectionBox']['getSize'](_0x34ef6e);const _0xa08716=_0x34ef6e['length'](),_0x5975c9=_0x266066,_0x390365=new THREE['Box3']()['setFromCenterAndSize'](_0x5975c9,new THREE['Vector3'](_0xa08716,_0xa08716,_0xa08716)),{min:_0x4e951c,max:_0x15ddc7}=_0x390365;(_0x874bc6=this['planeMesh'])===null||_0x874bc6===void 0x0?void 0x0:_0x874bc6['removeFromParent'](),this['planeMesh']=new SectionPlaneMesh('Plane',[new THREE['Vector3'](_0x5975c9['x'],_0x15ddc7['y'],_0x4e951c['z']),new THREE['Vector3'](_0x5975c9['x'],_0x15ddc7['y'],_0x15ddc7['z']),new THREE['Vector3'](_0x5975c9['x'],_0x4e951c['y'],_0x15ddc7['z']),new THREE['Vector3'](_0x5975c9['x'],_0x4e951c['y'],_0x4e951c['z'])]),this['planeMesh']['setDirection'](_0x140d70),this['planeMesh']&&this['scene']['add'](this['planeMesh']),this['createCapsWireframe'](),this['viewer']['enableRender']();}['createCapsWireframe'](){var _0x4d1972;if(!this['planeMesh'])return;const {actionType:_0x3faa66,vertices:_0xf6b254}=this['planeMesh'],_0x425f1f=_0xf6b254['map'](_0x4914e5=>_0x4914e5['clone']());(_0x4d1972=this['capsWireframe'])===null||_0x4d1972===void 0x0?void 0x0:_0x4d1972['removeFromParent'](),this['capsWireframe']=new SectionPlaneMesh(_0x3faa66,_0x425f1f);const _0x54babe=this['getCapsMaterial']();_0x54babe&&(this['capsWireframe']['createIgnoreClipMaterials'](_0x54babe),_0x54babe['needsUpdate']=!![],this['capsWireframe']['material']=_0x54babe),this['clipPlane']&&(this['capsWireframe']['userData']['clipPlane']=this['clipPlane']),this['capsWireframe']['visible']=this['getCapsVisible'](),this['capsWireframe']&&this['capsScene']['add'](this['capsWireframe']);}['applyCapsMaterial'](){const _0x2f2597=this['getCapsMaterial']();_0x2f2597&&this['capsWireframe']&&(this['capsWireframe']['createIgnoreClipMaterials'](_0x2f2597),_0x2f2597['needsUpdate']=!![],this['capsWireframe']['material']=_0x2f2597);}['initOrUpdateGizmo'](){var _0x109218,_0x5a053f;if(!this['pickedFaceInfo'])return;(_0x109218=this['gizmo'])===null||_0x109218===void 0x0?void 0x0:_0x109218['removeFromParent']();const {normal:_0x365dd0,position:_0x28c31b}=this['pickedFaceInfo'],_0x4a2540=new SectionGizmo();_0x4a2540['setDirection'](_0x365dd0),_0x4a2540['position']['copy'](_0x28c31b),_0x4a2540['adjustSize'](this['camera']),(_0x5a053f=this['scene'])===null||_0x5a053f===void 0x0?void 0x0:_0x5a053f['add'](_0x4a2540),_0x4a2540['updateMatrix'](),_0x4a2540['updateMatrixWorld'](!![]),this['gizmo']=_0x4a2540;}['onDragStart'](_0x2f658a){var _0xeaf46b;if(!this['pickedFaceInfo']||this['selectedObject']instanceof SectionPlaneMesh)return;log['info']('[Section]\x20onDragStart:',_0x2f658a);const {position:_0x4a85bf}=this['pickedFaceInfo'];this['refrencePlane']['setFromNormalAndCoplanarPoint'](this['camera']['getWorldDirection'](this['refrencePlane']['normal']),_0x4a85bf),(_0xeaf46b=this['raycaster'])===null||_0xeaf46b===void 0x0?void 0x0:_0xeaf46b['ray']['intersectPlane'](this['refrencePlane'],this['lastWorldPos']);}['onDragMove'](_0x1d2ee7){var _0x3a2713,_0x513a29,_0x18d824,_0x2d184b;if(!this['lastWorldPos']||!this['selectedObject']||!this['clipPlane']||!this['planeMesh']||!this['gizmo']||!this['gizmo']['visible']||!this['pickedFaceInfo']||this['selectedObject']&&this['selectedObject']instanceof SectionPlaneMesh)return;const _0x563e92=new THREE['Vector3']();(_0x3a2713=this['raycaster'])===null||_0x3a2713===void 0x0?void 0x0:_0x3a2713['ray']['intersectPlane'](this['refrencePlane'],_0x563e92);const _0x4f6188=this['selectedObject']['userData']['actionType'],{position:_0x20f5aa}=this['pickedFaceInfo'],_0x45fb72=new THREE['Vector3']()['subVectors'](this['lastWorldPos'],_0x20f5aa)['normalize'](),_0x16ef4a=new THREE['Vector3']()['subVectors'](_0x563e92,_0x20f5aa)['normalize'](),_0x33713b=new THREE['Vector3']()['subVectors'](_0x563e92,this['lastWorldPos'])['projectOnVector'](AxisX$1['clone']()['applyQuaternion'](this['gizmo']['quaternion']));let _0x31f531=_0x45fb72['angleTo'](_0x16ef4a);const _0x2b7bdd=new THREE['Vector3']()['crossVectors'](_0x45fb72,_0x16ef4a),_0x903970=new THREE['Vector3']();this['sectionBox']['getSize'](_0x903970);const _0x3d2c13=Math['max'](_0x903970['x'],_0x903970['y'],_0x903970['z']);let _0x399048;switch(_0x4f6188){case ActionType['TranslateX']:case ActionType['TranslateY']:case ActionType['TranslateZ']:_0x399048=new THREE['Vector3']()['addVectors'](this['gizmo']['position'],_0x33713b);this['sectionBox']['clone']()['setFromCenterAndSize'](this['center'],new THREE['Vector3'](_0x3d2c13,_0x3d2c13,_0x3d2c13))['containsPoint'](_0x399048)&&((_0x513a29=this['gizmo'])===null||_0x513a29===void 0x0?void 0x0:_0x513a29['position']['add'](_0x33713b),(_0x18d824=this['planeMesh'])===null||_0x18d824===void 0x0?void 0x0:_0x18d824['position']['add'](_0x33713b),(_0x2d184b=this['capsWireframe'])===null||_0x2d184b===void 0x0?void 0x0:_0x2d184b['position']['add'](_0x33713b));break;case ActionType['RotateX']:{const _0x11e197=AxisX$1['clone']()['applyQuaternion'](this['gizmo']['quaternion']),_0x3e5c42=_0x2b7bdd['dot'](_0x11e197);_0x3e5c42<0x0&&(_0x31f531=-_0x31f531),this['rotateSectionByAxis'](_0x11e197,_0x31f531);}break;case ActionType['RotateY']:{const _0x2ab86c=AxisY$1['clone']()['applyQuaternion'](this['gizmo']['quaternion']),_0xafd396=_0x2b7bdd['dot'](_0x2ab86c);_0xafd396<0x0&&(_0x31f531=-_0x31f531),this['rotateSectionByAxis'](_0x2ab86c,_0x31f531);}break;case ActionType['RotateZ']:{const _0x2797e5=AxisZ$1['clone']()['applyQuaternion'](this['gizmo']['quaternion']),_0x2e5f80=_0x2b7bdd['dot'](_0x2797e5);_0x2e5f80<0x0&&(_0x31f531=-_0x31f531),this['rotateSectionByAxis'](_0x2797e5,_0x31f531);}break;}this['clipPlane']['setFromNormalAndCoplanarPoint'](this['planeMesh']['getPlaneNormal']()['negate'](),this['gizmo']['position']),this['lastWorldPos']=_0x563e92;}['rotateSectionByAxis'](_0x2e30af,_0x5239cf){var _0x1dcfe2,_0x3bdb59,_0x2a7501;const _0x49a035=_0x2e30af['clone']()['normalize']();this['rotationQuat']['setFromAxisAngle'](_0x49a035,_0x5239cf),(_0x1dcfe2=this['gizmo'])===null||_0x1dcfe2===void 0x0?void 0x0:_0x1dcfe2['applyQuaternion'](this['rotationQuat']),(_0x3bdb59=this['planeMesh'])===null||_0x3bdb59===void 0x0?void 0x0:_0x3bdb59['rotatePlane'](_0x49a035,_0x5239cf),(_0x2a7501=this['capsWireframe'])===null||_0x2a7501===void 0x0?void 0x0:_0x2a7501['rotatePlane'](_0x49a035,_0x5239cf);}['onDragEnd'](_0x4bd787){if(this['selectedObject']instanceof SectionPlaneMesh)return;log['info']('[Section]\x20onDragEnd:',_0x4bd787);}['getIntersectObjects'](){if(!this['planeMesh']||!this['gizmo'])return [];return [this['planeMesh'],this['gizmo']];}['activateSelectedObject'](_0x420600){if(!this['selectedObject'])return;if(this['selectedObject']instanceof SectionPlaneMesh)this['selectedObject']['setActive'](_0x420600);else this['selectedObject']['parent']instanceof SectionGizmo&&this['selectedObject']['parent']['setActive'](_0x420600,this['selectedObject']);}['pickObject'](_0x4842c8){const _0x5d6e65=new THREE['Vector2'](_0x4842c8['x'],_0x4842c8['y']);return this['viewer']['pickObject'](_0x5d6e65);}['setCapsVisible'](_0x5bd6f0){super['setCapsVisible'](_0x5bd6f0),this['capsWireframe']&&(this['capsWireframe']['visible']=_0x5bd6f0),this['viewer']['enableRender']();}}
|
|
94
|
+
|
|
95
|
+
var SectionType;(function(_0xe90a43){_0xe90a43['ObjectsBoxSection']='ObjectsBoxSection',_0xe90a43['PickPlaneSection']='PickPlaneSection',_0xe90a43['AxisPlaneSection']='AxisPlaneSection';}(SectionType||(SectionType={})));const DEFAULT_CAPS_VISIBLE=!![];const DEFAULT_CAPS_COLOR=0x9ca3af;const DEFAULT_AUTO_SKIP_NON_CLOSED=!![];class SectionPlugin extends Plugin{constructor(_0x5bff75,_0x18d705){var _0x1a0376,_0x3f793e;const _0x667a56=(_0x18d705===null||_0x18d705===void 0x0?void 0x0:_0x18d705['id'])||SectionPlugin['DEFAULT_ID'];super(_0x5bff75,{'id':_0x667a56}),this['sections']={},this['lastRenderAutoClear']=!![],this['onAfterRender']=()=>{if(!this['supportedViewer']||!this['capsSupported']||!this['activeSectionType'])return;const _0x1a9c05=this['sections'][this['activeSectionType']],_0x3507c5=_0x1a9c05['capsScene'];if(!_0x1a9c05['getCapsVisible']())return;this['render'](_0x3507c5);},this['cfg']=_0x18d705||{'id':_0x667a56},this['viewer']=_0x5bff75,this['supportedViewer']=_0x5bff75['is3d'](),this['capsSupported']=!![],this['capsVisible']=this['capsSupported']?(_0x1a0376=_0x18d705===null||_0x18d705===void 0x0?void 0x0:_0x18d705['capsVisible'])!==null&&_0x1a0376!==void 0x0?_0x1a0376:DEFAULT_CAPS_VISIBLE:![],this['autoSkipNonClosedMeshes']=(_0x3f793e=_0x18d705===null||_0x18d705===void 0x0?void 0x0:_0x18d705['autoSkipNonClosedMeshes'])!==null&&_0x3f793e!==void 0x0?_0x3f793e:DEFAULT_AUTO_SKIP_NON_CLOSED;if(!this['supportedViewer']){log['warn']('[Section]\x20SectionPlugin\x20only\x20supports\x203D\x20viewers.');return;}const _0x2c23db=_0x5bff75['getInputManager']();_0x2c23db&&(this['sections'][SectionType['ObjectsBoxSection']]=new ObjectsBoxSection(_0x5bff75,_0x2c23db),this['sections'][SectionType['AxisPlaneSection']]=new AxisPlaneSection(_0x5bff75,_0x2c23db),this['sections'][SectionType['PickPlaneSection']]=new PickPlaneSection(_0x5bff75,_0x2c23db)),this['createCapStencilMaterials'](),this['applyCapsStateToSections'](),this['viewer']['addEventListener'](ViewerEvent['AfterRender'],this['onAfterRender']);}get['raycaster'](){return this['viewer']['getRaycaster']();}['createCapStencilMaterials'](){var _0x155ffd;this['backMaterial']=new THREE['MeshBasicMaterial']({'colorWrite':![],'depthWrite':![],'depthTest':![],'side':THREE['BackSide'],'clippingPlanes':[],'clipShadows':!![],'stencilWrite':!![],'stencilRef':0x0,'stencilFunc':THREE['AlwaysStencilFunc'],'stencilFail':THREE['IncrementWrapStencilOp'],'stencilZFail':THREE['IncrementWrapStencilOp'],'stencilZPass':THREE['IncrementWrapStencilOp']}),this['frontMaterial']=new THREE['MeshBasicMaterial']({'colorWrite':![],'depthWrite':![],'depthTest':![],'side':THREE['FrontSide'],'clippingPlanes':[],'clipShadows':!![],'stencilWrite':!![],'stencilRef':0x0,'stencilFunc':THREE['AlwaysStencilFunc'],'stencilFail':THREE['DecrementWrapStencilOp'],'stencilZFail':THREE['DecrementWrapStencilOp'],'stencilZPass':THREE['DecrementWrapStencilOp']}),this['capFillMaterial']=new THREE['MeshBasicMaterial']({'color':(_0x155ffd=this['cfg']['capsColor'])!==null&&_0x155ffd!==void 0x0?_0x155ffd:DEFAULT_CAPS_COLOR,'side':THREE['DoubleSide'],'transparent':![],'depthTest':![],'depthWrite':![],'stencilWrite':!![],'stencilRef':0x0,'stencilFunc':THREE['NotEqualStencilFunc'],'stencilFail':THREE['KeepStencilOp'],'stencilZFail':THREE['KeepStencilOp'],'stencilZPass':THREE['KeepStencilOp']});}['setStencilClipPlane'](_0x3c469f){const _0x59a3f0=_0xb1317a=>{var _0x5eb44b,_0x252660;if(!_0xb1317a)return;const _0x231201=(_0x252660=(_0x5eb44b=_0xb1317a['clippingPlanes'])===null||_0x5eb44b===void 0x0?void 0x0:_0x5eb44b['length'])!==null&&_0x252660!==void 0x0?_0x252660:0x0,_0x27a6c5=_0xb1317a['clippingPlanes'];_0x27a6c5&&_0x27a6c5['length']===0x1?_0x27a6c5[0x0]=_0x3c469f:_0xb1317a['clippingPlanes']=[_0x3c469f],_0x231201!==0x1&&(_0xb1317a['needsUpdate']=!![]);};_0x59a3f0(this['backMaterial']),_0x59a3f0(this['frontMaterial']);}['applyCapsStateToSections'](){Object['values'](this['sections'])['forEach'](_0x3b1adb=>{this['capFillMaterial']&&_0x3b1adb['setCapsMaterial'](this['capFillMaterial']),_0x3b1adb['setCapsVisible'](this['capsVisible']);});}['render'](_0x4da036){if(!this['backMaterial']||!this['frontMaterial'])return;const _0x4cc313=this['viewer'],_0x57b4bb=_0x4cc313['renderer'],_0x2ddaba=_0x4da036['children'];if(_0x2ddaba['length']===0x0)return;const _0x277c09=_0x57b4bb['getClearAlpha']();this['lastRenderAutoClear']=_0x57b4bb['autoClear'],_0x57b4bb['setClearAlpha'](0x0),_0x57b4bb['autoClear']=![];const _0x1168e6=_0x4cc313['scene']['children'],_0xda184a=_0x1168e6['map'](_0x49eb36=>_0x49eb36['visible']),_0x37b596=this['modelRoot'](_0x4cc313['scene']);for(let _0x21f682=0x0;_0x21f682<_0x1168e6['length'];_0x21f682++){const _0x5945b3=_0x1168e6[_0x21f682];_0x5945b3!==_0x37b596&&(_0x5945b3['visible']=![]);}const _0x1bca03=[],_0x2259c0=this['autoSkipNonClosedMeshes'],_0x30e5c7=new Map();_0x37b596===null||_0x37b596===void 0x0?void 0x0:_0x37b596['traverse'](_0x33a845=>{var _0x442fb1;const _0x321ea9=_0x33a845;if(!_0x321ea9['isMesh']||!_0x321ea9['visible'])return;const _0x44f56d=(_0x442fb1=_0x321ea9['userData'])===null||_0x442fb1===void 0x0?void 0x0:_0x442fb1['skipSectionCap'];let _0x39e9eb=![];if(_0x44f56d===!![])_0x39e9eb=!![];else {if(_0x44f56d!==![]&&_0x2259c0){const _0x39935b=SectionPlugin['findCapGroup'](_0x321ea9,_0x37b596);if(_0x39935b){let _0xbfed3e=_0x30e5c7['get'](_0x39935b);_0xbfed3e===undefined&&(_0xbfed3e=SectionPlugin['isGroupClosedManifold'](_0x39935b),_0x30e5c7['set'](_0x39935b,_0xbfed3e)),_0x39e9eb=!_0xbfed3e;}}}_0x39e9eb&&(_0x1bca03['push']({'mesh':_0x321ea9,'visible':_0x321ea9['visible']}),_0x321ea9['visible']=![]);});const _0x1451ce=_0x2ddaba['map'](_0x5d3510=>_0x5d3510['visible']);for(let _0x3ec7e6=0x0;_0x3ec7e6<_0x2ddaba['length'];_0x3ec7e6++){const _0x1c145a=_0x2ddaba[_0x3ec7e6];if(!_0x1451ce[_0x3ec7e6])continue;const _0x3659bf=_0x1c145a['userData']['clipPlane'];if(!_0x3659bf)continue;this['setStencilClipPlane'](_0x3659bf),_0x57b4bb['clearStencil'](),_0x4cc313['scene']['overrideMaterial']=this['backMaterial'],_0x57b4bb['render'](_0x4cc313['scene'],_0x4cc313['camera']),_0x4cc313['scene']['overrideMaterial']=this['frontMaterial'],_0x57b4bb['render'](_0x4cc313['scene'],_0x4cc313['camera']),_0x4cc313['scene']['overrideMaterial']=null;for(let _0x2577b1=0x0;_0x2577b1<_0x2ddaba['length'];_0x2577b1++){_0x2ddaba[_0x2577b1]['visible']=_0x2577b1===_0x3ec7e6?_0x1451ce[_0x2577b1]:![];}_0x57b4bb['render'](_0x4da036,_0x4cc313['camera']);}for(let _0xb07b3=0x0;_0xb07b3<_0x2ddaba['length'];_0xb07b3++){_0x2ddaba[_0xb07b3]['visible']=_0x1451ce[_0xb07b3];}for(const _0x564fa2 of _0x1bca03){_0x564fa2['mesh']['visible']=_0x564fa2['visible'];}for(let _0x373429=0x0;_0x373429<_0x1168e6['length'];_0x373429++){_0x1168e6[_0x373429]['visible']=_0xda184a[_0x373429];}_0x57b4bb['clearStencil'](),_0x57b4bb['setClearAlpha'](_0x277c09),_0x57b4bb['autoClear']=this['lastRenderAutoClear'];}['modelRoot'](_0x144f38){var _0x39bf2a;return (_0x39bf2a=_0x144f38['getObjectByName']('models'))!==null&&_0x39bf2a!==void 0x0?_0x39bf2a:undefined;}['activate'](_0x232f75){if(!this['supportedViewer'])return;this['activeSectionType']&&this['deactivate'](![]);this['activeSectionType']=_0x232f75;const _0x418fb2=this['sections'][_0x232f75];_0x418fb2['setCapsVisible'](this['capsVisible']),_0x418fb2['activate'](),this['enableSelection']=this['viewer']['enableSelection'],this['viewer']['enableSelection']=![];}['deactivate'](_0x4db2bc=![]){if(!this['supportedViewer'])return;const _0x1ddd50=this['activeSectionType'];_0x1ddd50&&this['sections'][_0x1ddd50]['deactivate'](_0x4db2bc),this['activeSectionType']=undefined,this['enableSelection']!=null&&(this['viewer']['enableSelection']=this['enableSelection']),this['enableSelection']=undefined;}['reset'](){if(!this['supportedViewer'])return;const _0x2d0f13=this['activeSectionType'];if(_0x2d0f13){const _0x2b80a1=this['sections'][_0x2d0f13];_0x2b80a1['reset']();}}['setSectionPlaneVisible'](_0x378825){if(!this['supportedViewer'])return;const _0x254df2=this['activeSectionType'];if(_0x254df2){const _0x3ccc3d=this['sections'][_0x254df2];_0x3ccc3d['setSectionPlaneVisible'](_0x378825);}}['setCapsVisible'](_0x1266af){if(!this['capsSupported'])return;this['capsVisible']=_0x1266af;if(!this['supportedViewer'])return;const _0x22ae90=this['getActiveSection']();_0x22ae90===null||_0x22ae90===void 0x0?void 0x0:_0x22ae90['setCapsVisible'](_0x1266af),this['viewer']['enableRender']();}['getCapsVisible'](){var _0x2e42d5;if(!this['supportedViewer'])return ![];const _0x4ce0ae=this['getActiveSection']();return (_0x2e42d5=_0x4ce0ae===null||_0x4ce0ae===void 0x0?void 0x0:_0x4ce0ae['getCapsVisible']())!==null&&_0x2e42d5!==void 0x0?_0x2e42d5:this['capsVisible'];}['setCapsColor'](_0xf33538){var _0x503407;this['cfg']['capsColor']=_0xf33538;if(!this['supportedViewer'])return;(_0x503407=this['capFillMaterial'])===null||_0x503407===void 0x0?void 0x0:_0x503407['color']['set'](_0xf33538),this['viewer']['enableRender']();}['setSkipSectionCap'](_0x547789,_0x527788=!![]){_0x547789['traverse'](_0x5abbe1=>{_0x527788==='auto'?delete _0x5abbe1['userData']['skipSectionCap']:_0x5abbe1['userData']['skipSectionCap']=_0x527788;}),this['supportedViewer']&&this['viewer']['enableRender']();}['setAutoSkipNonClosedMeshes'](_0x3ff5f5){this['autoSkipNonClosedMeshes']=_0x3ff5f5,this['supportedViewer']&&this['viewer']['enableRender']();}static['findCapGroup'](_0x3921dc,_0x2f01f4){const _0x66820c=_0x3921dc['parent'];if(!_0x66820c||_0x66820c===_0x2f01f4)return _0x3921dc;return _0x66820c;}static['isGroupClosedManifold'](_0x354cd4){const _0x412b85=_0x354cd4['userData']['_sectionCapClosed'];if(_0x412b85!==undefined)return _0x412b85;const _0x532431=(_0x5c6d4e,_0x956be5,_0x53894a)=>{const _0x2b34d1=0x2710,_0x17176e=Math['round'](_0x5c6d4e*_0x2b34d1),_0x5e695b=Math['round'](_0x956be5*_0x2b34d1),_0x148d47=Math['round'](_0x53894a*_0x2b34d1);return _0x17176e+'_'+_0x5e695b+'_'+_0x148d47;},_0x380fa5=new Map(),_0x2258a0=(_0x43eae4,_0x238da0,_0x4da808)=>{const _0x3c4519=_0x532431(_0x43eae4,_0x238da0,_0x4da808);let _0x119304=_0x380fa5['get'](_0x3c4519);return _0x119304===undefined&&(_0x119304=_0x380fa5['size'],_0x380fa5['set'](_0x3c4519,_0x119304)),_0x119304;},_0x5aae43=new Map(),_0x5e34fc=new THREE['Vector3']();let _0x79fd33=0x0;const _0x571dba=_0x59d57f=>{const _0x12c24a=_0x59d57f['geometry'];if(!_0x12c24a||!_0x12c24a['attributes']['position'])return;_0x59d57f['updateWorldMatrix'](!![],![]);const _0x4b5c0c=_0x12c24a['attributes']['position'],_0x216e35=_0x12c24a['index'],_0x65b7b2=(_0x216e35?_0x216e35['count']:_0x4b5c0c['count'])/0x3,_0x326428=_0x216e35?_0x216e35['array']:null,_0x3ada3d=[0x0,0x0,0x0];for(let _0x442071=0x0;_0x442071<_0x65b7b2;_0x442071++){for(let _0x2a96fc=0x0;_0x2a96fc<0x3;_0x2a96fc++){const _0x10e44e=_0x326428?_0x326428[_0x442071*0x3+_0x2a96fc]:_0x442071*0x3+_0x2a96fc;_0x5e34fc['fromBufferAttribute'](_0x4b5c0c,_0x10e44e)['applyMatrix4'](_0x59d57f['matrixWorld']),_0x3ada3d[_0x2a96fc]=_0x2258a0(_0x5e34fc['x'],_0x5e34fc['y'],_0x5e34fc['z']);}const _0x752945=_0x3ada3d[0x0],_0x1f37b5=_0x3ada3d[0x1],_0x1ec1a5=_0x3ada3d[0x2];if(_0x752945===_0x1f37b5||_0x1f37b5===_0x1ec1a5||_0x752945===_0x1ec1a5)continue;_0x79fd33++;const _0x3b5f91=(_0xc67b90,_0x22130d)=>{const _0x418b35=_0xc67b90<_0x22130d?_0xc67b90:_0x22130d,_0x5b05d7=_0xc67b90<_0x22130d?_0x22130d:_0xc67b90,_0x5542b9=_0x418b35+'_'+_0x5b05d7;_0x5aae43['set'](_0x5542b9,(_0x5aae43['get'](_0x5542b9)||0x0)+0x1);};_0x3b5f91(_0x752945,_0x1f37b5),_0x3b5f91(_0x1f37b5,_0x1ec1a5),_0x3b5f91(_0x752945,_0x1ec1a5);}};_0x354cd4['isMesh']?_0x571dba(_0x354cd4):_0x354cd4['traverse'](_0x41fa88=>{_0x41fa88['isMesh']&&_0x571dba(_0x41fa88);});if(_0x79fd33<0x4)return _0x354cd4['userData']['_sectionCapClosed']=![],![];let _0xa640e2=!![];for(const _0x1f7ea2 of _0x5aae43['values']()){if(_0x1f7ea2!==0x2){_0xa640e2=![];break;}}return _0x354cd4['userData']['_sectionCapClosed']=_0xa640e2,_0xa640e2;}['isActive'](){if(!this['supportedViewer'])return ![];const _0x30a62f=this['activeSectionType'];if(_0x30a62f)return this['sections'][_0x30a62f]['isActive'];return !!this['getActiveSectionType']();}['getActiveSectionType'](){if(!this['supportedViewer'])return undefined;return this['activeSectionType'];}['getActiveSection'](){if(!this['supportedViewer']||!this['activeSectionType'])return undefined;return this['sections'][this['activeSectionType']];}['setClippingObjectIds'](_0x3dceb3){if(!this['supportedViewer'])return;for(const _0x93b87b in this['sections']){this['setClippingObjectIdsForType'](_0x93b87b,_0x3dceb3);}}['setClippingObjectIdsForType'](_0x53f44e,_0x3551c3){if(!this['supportedViewer'])return;const _0x1f43bb=this['sections'][_0x53f44e];if(!_0x1f43bb)return;_0x1f43bb['clearClippingObjectIds'](),(_0x3551c3===null||_0x3551c3===void 0x0?void 0x0:_0x3551c3['length'])&&(_0x1f43bb['clippingObjetIds']=_0x3551c3,_0x1f43bb['setClippingEnabled'](!![]));}['destroy'](){var _0x260874,_0x524303,_0x544243;if(!this['supportedViewer'])return;(_0x260874=this['backMaterial'])===null||_0x260874===void 0x0?void 0x0:_0x260874['dispose'](),(_0x524303=this['frontMaterial'])===null||_0x524303===void 0x0?void 0x0:_0x524303['dispose'](),(_0x544243=this['capFillMaterial'])===null||_0x544243===void 0x0?void 0x0:_0x544243['dispose'](),this['viewer']['removeEventListener'](ViewerEvent['AfterRender'],this['onAfterRender']),Object['keys'](this['sections'])['forEach'](_0x4c6eb2=>{const _0x45b2d1=_0x4c6eb2;this['sections'][_0x45b2d1]['destroy']();});}}SectionPlugin['DEFAULT_ID']='SectionPlugin';
|
|
96
|
+
|
|
97
|
+
class Viewer3dDatGuiPlugin extends Plugin{constructor(_0x28466d){super(_0x28466d,{'id':'Viewer3dDatGuiPlugin'}),this['controls']={'showGroundGrid':![],'environments':['None','Default\x20(City\x20Streat\x2064x32)','Venice\x20Sunset','Footprint\x20Court\x20(HDR\x20Labs)','City\x20Street'],'homeView':()=>console['log']('[DGH]\x20Go\x20to\x20home\x20view'),'views':['Top','Bottom','Front','Back','Left','Right'],'OrthographicCamera':![],'viewpoints':![],'annotations':![],'takeSnapshot':()=>console['log']('[DGH]\x20Taking\x20snapshot...'),'takeSnapshotForViewerBBox':()=>console['log']('[DGH]\x20Taking\x20snapshot\x20for\x20objects...'),'fullScreen':()=>console['log']('[DGH]\x20Full\x20screen...'),'webcam':![],'uploadFile':()=>console['log']('[DGH]\x20Upload\x20file...'),'showTreeView':![],'showPropertyPanel':![],'transparentMode':![],'enableOutline':![],'doubleSidedMaterial':![],'showVertexNormals':![],'explode':0x1,'sectionMode':['No\x20section','Box\x20section','Pick\x20plane\x20section','Axis\x20plane\x20section'],'alVisible':!![],'alColor':'#cccccc','alIntensity':0x1,'dlColor':'#dddddd','showDlHelper':![],'hlVisible':!![],'hlIntensity':0x1,'hlColor':[0xff,0xff,0xff,0.6],'hlGroundColor':[0xc8,0xff,0xc8,0.6],'fogEnabled':![],'fogColor':0xdddddd,'fogNearDistance':0x1,'fogFarDistance':0x3e8,'distanceCullingFactor':0x64,'errorTarget':0x8,'ssao_output':'Default','ssao_kernelRadius':0x8,'ssao_minDistance':0.005,'ssao_maxDistance':0.1,'ssao_enable':![]},this['viewer']=_0x28466d,this['init']();}['init'](){if(!this['viewer']||!this['viewer']['renderer']||!this['viewer']['scene'])throw new Error('Need\x20to\x20initialize\x20renderer,\x20scene\x20first!');const _0x3b012e=this['viewer'],_0x156464=this['viewer']['scene'],_0x212d34=this['controls'];this['gui']=new GUI$1({'name':'controls','autoPlace':!![],'width':0x12c,'closed':!![]}),this['gui']['domElement']['style']['opacity']='0.6';const _0xf6f402=this['gui']['addFolder']('Common\x20settings');_0xf6f402['add'](_0x212d34,'showGroundGrid')['name']('Show\x20ground\x20grid')['onChange'](_0x1cfcb1=>{let _0x376b51=_0x3b012e['findPlugin']('GroundGridPlugin');!_0x376b51?_0x376b51=new GroundGridPlugin(_0x3b012e):_0x376b51['setVisible'](_0x1cfcb1);});const _0x363b2c=_0xf6f402['add'](_0x212d34,'environments',_0x212d34['environments'])['name']('Environments');_0x363b2c['onChange'](_0x3ca0c4=>{let _0x29b75e='';if(_0x3ca0c4==='Default\x20(City\x20Streat\x2064x32)'){_0x3b012e['setEnvironmentData']();return;}else {if(_0x3ca0c4==='Venice\x20Sunset')_0x29b75e='venice_sunset_1k.hdr';else {if(_0x3ca0c4==='Footprint\x20Court\x20(HDR\x20Labs)')_0x29b75e='footprint_court_2k.hdr';else _0x3ca0c4==='City\x20Street'&&(_0x29b75e='city_street_256.hdr');}}_0x29b75e===''?(_0x156464['environment']=null,_0x3b012e['enableRender']()):(_0x29b75e=window['location']['origin']+'/demo/images/envmap/'+_0x29b75e,_0x3b012e['setEnvironment'](_0x29b75e));}),_0xf6f402['add'](_0x212d34,'homeView')['name']('Go\x20to\x20home\x20view')['onChange'](()=>{_0x3b012e['goToHomeView']();}),_0xf6f402['add'](_0x212d34,'views',_0x212d34['views'])['name']('Views')['onChange'](_0x24f05a=>{const _0x499f27=_0x4416a6=>{const _0x27272a=new THREE['Vector3'](0x1,0x0,0x0);if(_0x4416a6===ViewDirection['Top'])_0x27272a['set'](0x0,0x0,0x1);else {if(_0x4416a6===ViewDirection['Bottom'])_0x27272a['set'](0x0,0x0,-0x1);else {if(_0x4416a6===ViewDirection['Front'])_0x27272a['set'](0x0,-0x1,0x0);else {if(_0x4416a6===ViewDirection['Back'])_0x27272a['set'](0x0,0x1,0x0);else {if(_0x4416a6===ViewDirection['Left'])_0x27272a['set'](-0x1,0x0,0x0);else _0x4416a6===ViewDirection['Right']&&_0x27272a['set'](0x1,0x0,0x0);}}}}return _0x27272a;},_0x5e390b=_0x499f27(_0x24f05a);_0x3b012e['flyToDirection'](_0x5e390b);}),_0xf6f402['add'](_0x212d34,'OrthographicCamera')['name']('Orth\x20Camera')['onChange'](_0x2f0d44=>{_0x3b012e['setCameraProjection'](_0x2f0d44?CameraProjection['Orthographic']:CameraProjection['Perspective']);}),_0xf6f402['add'](_0x212d34,'takeSnapshot')['name']('Take\x20snapshot')['onChange'](()=>{let _0x5058db=_0x3b012e['findPlugin']('ScreenshotPlugin');!_0x5058db&&(_0x5058db=new ScreenshotPlugin(_0x3b012e));const _0x49624a=_0x5058db['getScreenshot'](),_0x13f002=document['createElement']('a');_0x13f002['href']=_0x49624a,_0x13f002['download']='',_0x13f002['click']();}),_0xf6f402['add'](_0x212d34,'takeSnapshotForViewerBBox')['name']('Take\x20snapshot\x20for\x20world\x20bounds\x20in\x20viewport')['onChange'](()=>{let _0x441071=_0x3b012e['findPlugin']('ScreenshotPlugin');!_0x441071&&(_0x441071=new ScreenshotPlugin(_0x3b012e));const _0x1e2959=async()=>{const _0x327a64=_0x3b012e['getBBox'](),_0x4e0be1=await _0x441071['getScreenshotForWorldBoundsInViewport'](_0x327a64),_0xd9ac2b=document['createElement']('a');_0xd9ac2b['href']=_0x4e0be1,_0xd9ac2b['download']='',_0xd9ac2b['click']();};_0x1e2959();}),_0xf6f402['add'](_0x212d34,'fullScreen')['name']('Full\x20screen')['onChange'](()=>{_0x446132&&_0x446132['isEnabled']&&_0x446132['request'](),_0x3b012e['enableRender']();});_0x3b012e instanceof Viewer3d&&_0xf6f402['add'](_0x212d34,'uploadFile')['name']('Upload\x20file')['onChange'](()=>{const _0x2db7f8=new LocalModelUploader(_0x3b012e);_0x2db7f8['openFileBrowserToUpload']();});const _0x4fe90c=this['gui']['addFolder']('Model\x20operations');_0x4fe90c['add'](_0x212d34,'transparentMode',_0x212d34['transparentMode'])['name']('Transparent\x20mode')['onChange'](_0x44da2e=>{_0x44da2e?_0x3b012e['setModelsOpacity'](0.03):_0x3b012e['clearModelsOpacity'](),_0x3b012e['enableRender']();}),_0x4fe90c['add'](_0x212d34,'enableOutline',_0x212d34['enableOutline'])['name']('Show\x20outlines')['onChange'](_0x4f9d90=>{_0x3b012e['enableModelsOutline'](_0x4f9d90),_0x3b012e['enableRender']();}),_0x4fe90c['add'](_0x212d34,'doubleSidedMaterial',_0x212d34['doubleSidedMaterial'])['name']('Double-sided\x20material')['onChange'](_0x3da088=>{_0x3da088?_0x3b012e['setDoubleSidedMaterials']():_0x3b012e['revertDoubleSidedMaterials'](),_0x3b012e['enableRender']();}),_0x4fe90c['add'](_0x212d34,'showVertexNormals',_0x212d34['showVertexNormals'])['name']('Show\x20Vertex\x20Normals')['onChange'](_0x185c87=>{_0x3b012e['showVertexNormals'](_0x185c87),_0x3b012e['enableRender']();}),_0x4fe90c['add'](_0x212d34,'explode',0x1,0x5)['name']('Explode\x20tool')['onChange'](_0x280780=>{let _0x22d8a5=_0x3b012e['findPlugin']('ExplodePlugin');!_0x22d8a5&&(_0x22d8a5=new ExplodePlugin(_0x3b012e)),_0x22d8a5['explode'](_0x280780);}),_0x4fe90c['add'](_0x212d34,'sectionMode',_0x212d34['sectionMode'])['name']('Section\x20mode')['onChange'](_0x3fb1d9=>{let _0xc6e42f=_0x3b012e['findPlugin']('SectionPlugin');!_0xc6e42f&&(_0xc6e42f=new SectionPlugin(_0x3b012e));if(_0x3fb1d9==='No\x20section')_0xc6e42f['deactivate']();else {if(_0x3fb1d9==='Box\x20section')_0xc6e42f['activate'](SectionType['ObjectsBoxSection']);else {if(_0x3fb1d9==='Pick\x20plane\x20section')_0xc6e42f['activate'](SectionType['PickPlaneSection']);else _0x3fb1d9==='Axis\x20plane\x20section'&&_0xc6e42f['activate'](SectionType['AxisPlaneSection']);}}_0x3b012e['enableRender']();});const _0x733002=this['viewer']['getLights']()['ambient'],_0x57adcb=this['gui']['addFolder']('Ambient\x20light');_0x57adcb['add'](_0x212d34,'alVisible',_0x212d34['alVisible'])['name']('visible')['onChange'](_0x41aa58=>{_0x733002&&(_0x733002['visible']=_0x41aa58),_0x3b012e['enableRender']();}),_0x57adcb['addColor'](_0x212d34,'alColor')['name']('color')['onChange'](_0x399542=>{_0x733002&&(_0x733002['color']=new THREE['Color'](_0x399542)),_0x3b012e['enableRender']();}),_0x57adcb['add'](_0x212d34,'alIntensity',0x0,0x5)['name']('intensity')['onChange'](_0x357e45=>{_0x733002&&(_0x733002['intensity']=_0x357e45),_0x3b012e['enableRender']();});const _0x5ac518=this['viewer']['getLights']()['sun'];if(_0x5ac518){const _0x12a974=this['gui']['addFolder']('Directional\x20light');_0x12a974['add'](_0x5ac518,'visible')['name']('visible')['onChange'](_0x32ed9e=>{_0x5ac518&&(_0x5ac518['visible']=_0x32ed9e),_0x3b012e['enableRender']();}),_0x12a974['addColor'](_0x212d34,'dlColor')['name']('color')['onChange'](_0x5d5352=>{_0x5ac518&&(_0x5ac518['color']=new THREE['Color'](_0x5d5352)),_0x3b012e['enableRender']();}),_0x12a974['add'](_0x5ac518,'intensity',0x0,0x5)['name']('intensity')['onChange'](_0x4f8232=>{_0x5ac518&&(_0x5ac518['intensity']=_0x4f8232),_0x3b012e['enableRender']();}),_0x12a974['add'](_0x5ac518,'castShadow')['name']('castShadow')['onChange'](_0x4bde36=>{_0x5ac518&&(_0x5ac518['castShadow']=_0x4bde36),_0x3b012e['enableRender']();}),_0x12a974['add'](_0x212d34,'showDlHelper')['name']('showDlHelper')['onChange'](_0x5955e8=>{_0x3b012e['debugLights'](_0x5955e8),_0x3b012e['enableRender']();});}const _0x26276d=this['viewer']['getLights']()['hemisphere'],_0x52700d=this['gui']['addFolder']('Hemisphere\x20Light');_0x52700d['add'](_0x212d34,'hlVisible',_0x212d34['hlVisible'])['name']('visible')['onChange'](_0xe5e5bb=>{_0x26276d&&(_0x26276d['visible']=_0xe5e5bb),_0x3b012e['enableRender']();}),_0x52700d['add'](_0x212d34,'hlIntensity',0x0,0x5)['name']('intensity')['onChange'](_0x8b61f4=>{_0x26276d&&(_0x26276d['intensity']=_0x8b61f4),_0x3b012e['enableRender']();}),_0x52700d['addColor'](_0x212d34,'hlColor')['name']('color')['onChange'](_0x5534c2=>{_0x26276d&&(_0x26276d['color']=new THREE['Color'](_0x5534c2)),_0x3b012e['enableRender']();}),_0x52700d['addColor'](_0x212d34,'hlGroundColor')['name']('groundColor')['onChange'](_0x31b830=>{_0x26276d&&(_0x26276d['groundColor']=new THREE['Color'](_0x31b830)),_0x3b012e['enableRender']();});const _0x13a583=this['gui']['addFolder']('Fog');_0x13a583['add'](_0x212d34,'fogEnabled',_0x212d34['fogEnabled'])['name']('Enabled')['onChange'](_0x67cb0d=>{_0x67cb0d?_0x156464['fog']=new THREE['Fog'](_0x212d34['fogColor'],_0x212d34['fogNearDistance'],_0x212d34['fogFarDistance']):_0x156464['fog']=null,_0x3b012e['enableRender']();}),_0x13a583['add'](_0x212d34,'fogNearDistance',0x0,0x64)['name']('Near')['onChange'](_0x146544=>{_0x212d34['fogEnabled']&&_0x156464&&(_0x156464['fog']=new THREE['Fog'](_0x212d34['fogColor'],_0x146544,_0x212d34['fogFarDistance'])),_0x3b012e['enableRender']();}),_0x13a583['add'](_0x212d34,'fogFarDistance',0x64,0x7d0)['name']('Far')['onChange'](_0x38b017=>{_0x212d34['fogEnabled']&&_0x156464&&(_0x156464['fog']=new THREE['Fog'](_0x212d34['fogColor'],_0x212d34['fogNearDistance'],_0x38b017)),_0x3b012e['enableRender']();});const _0x37add9=this['gui']['addFolder']('Performance');_0x3b012e['getDistanceCullingFactor']&&_0x37add9['add'](_0x212d34,'distanceCullingFactor',0xa,0x3e8)['name']('Distance\x20Culling\x20Factor')['onChange'](_0x13f6b2=>{_0x3b012e['setDistanceCullingFactor'](_0x13f6b2),_0x3b012e['enableRender']();})['setValue'](_0x3b012e['getDistanceCullingFactor']());_0x3b012e['getErrorTarget']&&_0x37add9['add'](_0x212d34,'errorTarget',0x0,0x14,0.1)['name']('Error\x20Target')['onChange'](_0x5a1b12=>{_0x3b012e['setErrorTarget'](_0x5a1b12),_0x3b012e['enableRender']();})['setValue'](_0x3b012e['getErrorTarget']());const _0x5a53ec=this['gui']['addFolder']('SSAO'),_0x1ca7c7=_0x3b012e['effectManager'];_0x5a53ec['add'](_0x212d34,'ssao_output',{'Default':0x0,'SSAO':0x1,'Blur':0x2,'Depth':0x3,'Normal':0x4})['name']('Output')['onChange'](_0x1d3853=>{_0x1ca7c7['setSsaoPassOutput'](parseInt(_0x1d3853)),_0x3b012e['enableRender']();}),_0x5a53ec['add'](_0x212d34,'ssao_kernelRadius',0x0,0x20)['name']('KernelRadius')['onChange'](_0x408e99=>{_0x1ca7c7['setSsaoPassParams']({'kernelRadius':_0x408e99}),_0x3b012e['enableRender']();}),_0x5a53ec['add'](_0x212d34,'ssao_minDistance',0.0001,0.02)['name']('MinDistance')['onChange'](_0x36f3f0=>{_0x1ca7c7['setSsaoPassParams']({'minDistance':_0x36f3f0}),_0x3b012e['enableRender']();}),_0x5a53ec['add'](_0x212d34,'ssao_maxDistance',0.01,0.3)['name']('MaxDistance')['onChange'](_0x2fc9d0=>{_0x1ca7c7['setSsaoPassParams']({'maxDistance':_0x2fc9d0}),_0x3b012e['enableRender']();}),_0x5a53ec['add'](_0x212d34,'ssao_enable')['name']('Enabled')['onChange'](_0x5cf12c=>{_0x3b012e['enableSsao'](_0x5cf12c),_0x3b012e['enableRender']();});}['open'](){this['gui']&&this['gui']['open']();}['close'](){this['gui']&&this['gui']['close']();}['destroy'](){super['destroy'](),this['gui']&&this['gui']['destroy'](),this['gui']=undefined;}}
|
|
98
|
+
|
|
99
|
+
var css_248z$c = ".export-plugin{left:50%;resize:none;top:50%;transform:translate(-50%,-50%)}.export-plugin .content{display:flex;flex:1 1 auto;flex-direction:column}.export-plugin .content .export{flex:1 1 auto;list-style:none;margin:0 0 5px;padding:4px 6px 0}.export-plugin .content .export li{border-radius:6px;list-style:none;margin:2px 0;padding:8px 10px;transition:background-color .12s ease;vertical-align:text-top}.export-plugin .content .export li:hover{background:rgba(44,123,229,.06)}.export-plugin .content .export-row{align-items:center;column-gap:10px;display:grid;grid-template-columns:88px 1fr}.export-plugin .content .export-row>label{color:rgba(51,51,51,.88);font-size:12px;font-weight:500;margin:0;text-align:left;white-space:nowrap}.export-plugin .content .export-row>input[type=text]{background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.04);box-sizing:border-box;color:rgba(51,51,51,.9);font-size:12px;height:24px;line-height:22px;min-width:0;padding:0 8px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.export-plugin .content .export-row>input[type=text]:focus{border-color:#2c7be5;box-shadow:0 0 0 2px rgba(44,123,229,.22);outline:none}.export-plugin .content .export select,.export-plugin .content .export-row>select{appearance:none;-webkit-appearance:none;background-color:#fff;background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='none' stroke='%23666' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round' d='M2.5 4.25 6 7.75l3.5-3.5'/%3E%3C/svg%3E\");background-position:right 6px center;background-repeat:no-repeat;background-size:12px 12px;border:1px solid rgba(0,0,0,.12);border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.04);box-sizing:border-box;color:rgba(51,51,51,.9);cursor:pointer;font-size:12px;height:24px;line-height:22px;min-width:0;padding:0 24px 0 8px;text-align:left;transition:border-color .15s ease,box-shadow .15s ease,color .15s ease;vertical-align:middle;width:100%}.export-plugin .content .export select:hover:not(:disabled),.export-plugin .content .export-row>select:hover:not(:disabled){border-color:rgba(44,123,229,.45)}.export-plugin .content .export select:focus,.export-plugin .content .export-row>select:focus{border-color:#2c7be5;box-shadow:0 0 0 2px rgba(44,123,229,.22);outline:none}.export-plugin .content .export select:disabled,.export-plugin .content .export-row>select:disabled{cursor:not-allowed;opacity:.45}.export-plugin .content .export select option{background:#fff;color:#333}.export-plugin .content .export li:not(.export-row){align-items:center;column-gap:12px;display:flex}.export-plugin .content .export li:not(.export-row) label{color:rgba(51,51,51,.88);cursor:pointer;font-size:12px;margin:0;order:1;padding-left:2px}.export-plugin .content .export li:not(.export-row) input[type=checkbox]{accent-color:#2c7be5;border:none;box-shadow:none;cursor:pointer;flex-shrink:0;height:16px;margin:0;margin-inline-end:2px;order:0;padding:0;width:16px}.export-plugin .content .export li:not(.export-row) input[type=checkbox]:focus-visible{outline:2px solid rgba(44,123,229,.45);outline-offset:2px}.export-plugin .content .export li:not(.export-row) input[type=checkbox]:disabled{cursor:not-allowed;opacity:.45}.export-plugin .content .export li:not(.export-row) input[type=checkbox]:disabled+label{cursor:not-allowed;opacity:.55}.export-plugin .content .foot{background:hsla(0,0%,100%,.98);border-top:1px solid rgba(0,0,0,.08);box-shadow:inset 0 -1px 0 hsla(0,0%,100%,.9);flex-shrink:0;margin-top:auto;padding:8px 12px 10px;text-align:right;width:100%}.export-plugin .content .export-btn{background:#2c7be5;border:none;border-radius:6px;box-shadow:0 1px 2px rgba(44,123,229,.35);box-sizing:border-box;color:#fff;cursor:pointer;font-size:13px;font-weight:600;height:30px;line-height:28px;min-width:96px;padding:0 18px;transition:background-color .15s ease,box-shadow .15s ease,transform .1s ease}.export-plugin .content .export-btn:hover{background:#2566c4;box-shadow:0 2px 8px rgba(44,123,229,.35)}.export-plugin .content .export-btn:active{transform:scale(.98)}.export-plugin .content .export-btn:focus-visible{outline:2px solid rgba(44,123,229,.55);outline-offset:2px}";
|
|
100
|
+
styleInject(css_248z$c);
|
|
101
|
+
|
|
102
|
+
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
103
|
+
|
|
104
|
+
function getDefaultExportFromCjs (x) {
|
|
105
|
+
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
function commonjsRequire(path) {
|
|
109
|
+
throw new Error('Could not dynamically require "' + path + '". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.');
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
var jszip_min = {exports: {}};
|
|
113
|
+
|
|
114
|
+
(function(_0x43912c,_0xedb091){!function(_0x2bdf14){_0x43912c['exports']=_0x2bdf14();}(function(){return function _0xe4b1a8(_0x28f56a,_0x569296,_0x3f8851){function _0x86e746(_0x3e604d,_0x5edb53){if(!_0x569296[_0x3e604d]){if(!_0x28f56a[_0x3e604d]){var _0x1c013f='function'==typeof commonjsRequire&&commonjsRequire;if(!_0x5edb53&&_0x1c013f)return _0x1c013f(_0x3e604d,!0x0);if(_0x556c8b)return _0x556c8b(_0x3e604d,!0x0);var _0x43fdcc=new Error('Cannot\x20find\x20module\x20\x27'+_0x3e604d+'\x27');throw _0x43fdcc['code']='MODULE_NOT_FOUND',_0x43fdcc;}var _0x4289ba=_0x569296[_0x3e604d]={'exports':{}};_0x28f56a[_0x3e604d][0x0]['call'](_0x4289ba['exports'],function(_0x39b592){var _0x1d998e=_0x28f56a[_0x3e604d][0x1][_0x39b592];return _0x86e746(_0x1d998e||_0x39b592);},_0x4289ba,_0x4289ba['exports'],_0xe4b1a8,_0x28f56a,_0x569296,_0x3f8851);}return _0x569296[_0x3e604d]['exports'];}for(var _0x556c8b='function'==typeof commonjsRequire&&commonjsRequire,_0x15f504=0x0;_0x15f504<_0x3f8851['length'];_0x15f504++)_0x86e746(_0x3f8851[_0x15f504]);return _0x86e746;}({0x1:[function(_0x73c17a,_0x2834e8,_0x547e8a){var _0x3ab97c=_0x73c17a('./utils'),_0x31a581=_0x73c17a('./support'),_0x46c32e='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';_0x547e8a['encode']=function(_0x1a952f){for(var _0x562aeb,_0x1061bc,_0x4f6141,_0x3323d4,_0x46677d,_0x4981c5,_0x1a24c9,_0x94f087=[],_0x136ea1=0x0,_0x2dc6b6=_0x1a952f['length'],_0x382a55=_0x2dc6b6,_0x39fcfd='string'!==_0x3ab97c['getTypeOf'](_0x1a952f);_0x136ea1<_0x1a952f['length'];)_0x382a55=_0x2dc6b6-_0x136ea1,_0x4f6141=_0x39fcfd?(_0x562aeb=_0x1a952f[_0x136ea1++],_0x1061bc=_0x136ea1<_0x2dc6b6?_0x1a952f[_0x136ea1++]:0x0,_0x136ea1<_0x2dc6b6?_0x1a952f[_0x136ea1++]:0x0):(_0x562aeb=_0x1a952f['charCodeAt'](_0x136ea1++),_0x1061bc=_0x136ea1<_0x2dc6b6?_0x1a952f['charCodeAt'](_0x136ea1++):0x0,_0x136ea1<_0x2dc6b6?_0x1a952f['charCodeAt'](_0x136ea1++):0x0),_0x3323d4=_0x562aeb>>0x2,_0x46677d=(0x3&_0x562aeb)<<0x4|_0x1061bc>>0x4,_0x4981c5=0x1<_0x382a55?(0xf&_0x1061bc)<<0x2|_0x4f6141>>0x6:0x40,_0x1a24c9=0x2<_0x382a55?0x3f&_0x4f6141:0x40,_0x94f087['push'](_0x46c32e['charAt'](_0x3323d4)+_0x46c32e['charAt'](_0x46677d)+_0x46c32e['charAt'](_0x4981c5)+_0x46c32e['charAt'](_0x1a24c9));return _0x94f087['join']('');},_0x547e8a['decode']=function(_0x5e59c0){var _0x199cc8,_0x160e52,_0x1c11e8,_0x4cefb3,_0x2bce93,_0x243d21,_0x50c9b1=0x0,_0x4193ed=0x0,_0xc671ac='data:';if(_0x5e59c0['substr'](0x0,_0xc671ac['length'])===_0xc671ac)throw new Error('Invalid\x20base64\x20input,\x20it\x20looks\x20like\x20a\x20data\x20url.');var _0x304ead,_0x328505=0x3*(_0x5e59c0=_0x5e59c0['replace'](/[^A-Za-z0-9+/=]/g,''))['length']/0x4;if(_0x5e59c0['charAt'](_0x5e59c0['length']-0x1)===_0x46c32e['charAt'](0x40)&&_0x328505--,_0x5e59c0['charAt'](_0x5e59c0['length']-0x2)===_0x46c32e['charAt'](0x40)&&_0x328505--,_0x328505%0x1!=0x0)throw new Error('Invalid\x20base64\x20input,\x20bad\x20content\x20length.');for(_0x304ead=_0x31a581['uint8array']?new Uint8Array(0x0|_0x328505):new Array(0x0|_0x328505);_0x50c9b1<_0x5e59c0['length'];)_0x199cc8=_0x46c32e['indexOf'](_0x5e59c0['charAt'](_0x50c9b1++))<<0x2|(_0x4cefb3=_0x46c32e['indexOf'](_0x5e59c0['charAt'](_0x50c9b1++)))>>0x4,_0x160e52=(0xf&_0x4cefb3)<<0x4|(_0x2bce93=_0x46c32e['indexOf'](_0x5e59c0['charAt'](_0x50c9b1++)))>>0x2,_0x1c11e8=(0x3&_0x2bce93)<<0x6|(_0x243d21=_0x46c32e['indexOf'](_0x5e59c0['charAt'](_0x50c9b1++))),_0x304ead[_0x4193ed++]=_0x199cc8,0x40!==_0x2bce93&&(_0x304ead[_0x4193ed++]=_0x160e52),0x40!==_0x243d21&&(_0x304ead[_0x4193ed++]=_0x1c11e8);return _0x304ead;};},{'./support':0x1e,'./utils':0x20}],0x2:[function(_0xfc8aa4,_0x23ba87,_0x4f2c0c){var _0x5dd7d9=_0xfc8aa4('./external'),_0x542238=_0xfc8aa4('./stream/DataWorker'),_0x49719f=_0xfc8aa4('./stream/Crc32Probe'),_0x7df852=_0xfc8aa4('./stream/DataLengthProbe');function _0x4eadd9(_0x14664e,_0x209870,_0xa81120,_0x50c998,_0x310b2a){this['compressedSize']=_0x14664e,this['uncompressedSize']=_0x209870,this['crc32']=_0xa81120,this['compression']=_0x50c998,this['compressedContent']=_0x310b2a;}_0x4eadd9['prototype']={'getContentWorker':function(){var _0x58529e=new _0x542238(_0x5dd7d9['Promise']['resolve'](this['compressedContent']))['pipe'](this['compression']['uncompressWorker']())['pipe'](new _0x7df852('data_length')),_0x1d016e=this;return _0x58529e['on']('end',function(){if(this['streamInfo']['data_length']!==_0x1d016e['uncompressedSize'])throw new Error('Bug\x20:\x20uncompressed\x20data\x20size\x20mismatch');}),_0x58529e;},'getCompressedWorker':function(){return new _0x542238(_0x5dd7d9['Promise']['resolve'](this['compressedContent']))['withStreamInfo']('compressedSize',this['compressedSize'])['withStreamInfo']('uncompressedSize',this['uncompressedSize'])['withStreamInfo']('crc32',this['crc32'])['withStreamInfo']('compression',this['compression']);}},_0x4eadd9['createWorkerFrom']=function(_0x2e8fc3,_0x477d40,_0x1ac548){return _0x2e8fc3['pipe'](new _0x49719f())['pipe'](new _0x7df852('uncompressedSize'))['pipe'](_0x477d40['compressWorker'](_0x1ac548))['pipe'](new _0x7df852('compressedSize'))['withStreamInfo']('compression',_0x477d40);},_0x23ba87['exports']=_0x4eadd9;},{'./external':0x6,'./stream/Crc32Probe':0x19,'./stream/DataLengthProbe':0x1a,'./stream/DataWorker':0x1b}],0x3:[function(_0x3a3a6f,_0x178cdd,_0x47d4da){var _0x151a2d=_0x3a3a6f('./stream/GenericWorker');_0x47d4da['STORE']={'magic':'\x00\x00','compressWorker':function(){return new _0x151a2d('STORE\x20compression');},'uncompressWorker':function(){return new _0x151a2d('STORE\x20decompression');}},_0x47d4da['DEFLATE']=_0x3a3a6f('./flate');},{'./flate':0x7,'./stream/GenericWorker':0x1c}],0x4:[function(_0x5647e1,_0x4e5702,_0x15b848){var _0x14e354=_0x5647e1('./utils'),_0x7f2ef0=(function(){for(var _0x2d7ffb,_0x95bb8a=[],_0x3e2590=0x0;_0x3e2590<0x100;_0x3e2590++){_0x2d7ffb=_0x3e2590;for(var _0x5081af=0x0;_0x5081af<0x8;_0x5081af++)_0x2d7ffb=0x1&_0x2d7ffb?0xedb88320^_0x2d7ffb>>>0x1:_0x2d7ffb>>>0x1;_0x95bb8a[_0x3e2590]=_0x2d7ffb;}return _0x95bb8a;}());_0x4e5702['exports']=function(_0x3dc769,_0x8fa06c){return void 0x0!==_0x3dc769&&_0x3dc769['length']?'string'!==_0x14e354['getTypeOf'](_0x3dc769)?function(_0x5cec60,_0x7d8a1f,_0x3a9ca3,_0x5f1f79){var _0x25410d=_0x7f2ef0,_0x24b9df=_0x5f1f79+_0x3a9ca3;_0x5cec60^=-0x1;for(var _0x863311=_0x5f1f79;_0x863311<_0x24b9df;_0x863311++)_0x5cec60=_0x5cec60>>>0x8^_0x25410d[0xff&(_0x5cec60^_0x7d8a1f[_0x863311])];return -0x1^_0x5cec60;}(0x0|_0x8fa06c,_0x3dc769,_0x3dc769['length'],0x0):function(_0x98ecb,_0x57f2b3,_0x19524f,_0x5377a4){var _0x50b3e2=_0x7f2ef0,_0x140469=_0x5377a4+_0x19524f;_0x98ecb^=-0x1;for(var _0x5a3604=_0x5377a4;_0x5a3604<_0x140469;_0x5a3604++)_0x98ecb=_0x98ecb>>>0x8^_0x50b3e2[0xff&(_0x98ecb^_0x57f2b3['charCodeAt'](_0x5a3604))];return -0x1^_0x98ecb;}(0x0|_0x8fa06c,_0x3dc769,_0x3dc769['length'],0x0):0x0;};},{'./utils':0x20}],0x5:[function(_0x2de168,_0x2afaa8,_0x4ccc42){_0x4ccc42['base64']=!0x1,_0x4ccc42['binary']=!0x1,_0x4ccc42['dir']=!0x1,_0x4ccc42['createFolders']=!0x0,_0x4ccc42['date']=null,_0x4ccc42['compression']=null,_0x4ccc42['compressionOptions']=null,_0x4ccc42['comment']=null,_0x4ccc42['unixPermissions']=null,_0x4ccc42['dosPermissions']=null;},{}],0x6:[function(_0x5681c2,_0x212b2c,_0x361a6e){var _0x477b33=null;_0x477b33='undefined'!=typeof Promise?Promise:_0x5681c2('lie'),_0x212b2c['exports']={'Promise':_0x477b33};},{'lie':0x25}],0x7:[function(_0x571523,_0x45dd83,_0xc8d304){var _0x45495f='undefined'!=typeof Uint8Array&&'undefined'!=typeof Uint16Array&&'undefined'!=typeof Uint32Array,_0x287c63=_0x571523('pako'),_0x1b2a03=_0x571523('./utils'),_0x56e84b=_0x571523('./stream/GenericWorker'),_0x4c707a=_0x45495f?'uint8array':'array';function _0x230900(_0x51c7d2,_0x4c2a17){_0x56e84b['call'](this,'FlateWorker/'+_0x51c7d2),this['_pako']=null,this['_pakoAction']=_0x51c7d2,this['_pakoOptions']=_0x4c2a17,this['meta']={};}_0xc8d304['magic']='\x08\x00',_0x1b2a03['inherits'](_0x230900,_0x56e84b),_0x230900['prototype']['processChunk']=function(_0x2a490a){this['meta']=_0x2a490a['meta'],null===this['_pako']&&this['_createPako'](),this['_pako']['push'](_0x1b2a03['transformTo'](_0x4c707a,_0x2a490a['data']),!0x1);},_0x230900['prototype']['flush']=function(){_0x56e84b['prototype']['flush']['call'](this),null===this['_pako']&&this['_createPako'](),this['_pako']['push']([],!0x0);},_0x230900['prototype']['cleanUp']=function(){_0x56e84b['prototype']['cleanUp']['call'](this),this['_pako']=null;},_0x230900['prototype']['_createPako']=function(){this['_pako']=new _0x287c63[this['_pakoAction']]({'raw':!0x0,'level':this['_pakoOptions']['level']||-0x1});var _0x3d3a99=this;this['_pako']['onData']=function(_0x2b2d22){_0x3d3a99['push']({'data':_0x2b2d22,'meta':_0x3d3a99['meta']});};},_0xc8d304['compressWorker']=function(_0x287d4c){return new _0x230900('Deflate',_0x287d4c);},_0xc8d304['uncompressWorker']=function(){return new _0x230900('Inflate',{});};},{'./stream/GenericWorker':0x1c,'./utils':0x20,'pako':0x26}],0x8:[function(_0x579058,_0xdce2b6,_0x44b1ae){function _0x2045d2(_0x3b39ae,_0x3e8bdc){var _0x32cb61,_0xe70302='';for(_0x32cb61=0x0;_0x32cb61<_0x3e8bdc;_0x32cb61++)_0xe70302+=String['fromCharCode'](0xff&_0x3b39ae),_0x3b39ae>>>=0x8;return _0xe70302;}function _0x78c481(_0x535f54,_0x5f2ab5,_0x42080e,_0x457cc2,_0x2645a2,_0x355647){var _0x1bf4f6,_0x5ed772,_0x27118e=_0x535f54['file'],_0x48b4ab=_0x535f54['compression'],_0x19702c=_0x355647!==_0x4762f9['utf8encode'],_0x1b678e=_0x55d7e7['transformTo']('string',_0x355647(_0x27118e['name'])),_0x5019a1=_0x55d7e7['transformTo']('string',_0x4762f9['utf8encode'](_0x27118e['name'])),_0x31388a=_0x27118e['comment'],_0x564ad9=_0x55d7e7['transformTo']('string',_0x355647(_0x31388a)),_0x19f912=_0x55d7e7['transformTo']('string',_0x4762f9['utf8encode'](_0x31388a)),_0x31137=_0x5019a1['length']!==_0x27118e['name']['length'],_0x540d69=_0x19f912['length']!==_0x31388a['length'],_0x3cbf4c='',_0x38e5ca='',_0x535079='',_0x315597=_0x27118e['dir'],_0x38783b=_0x27118e['date'],_0x15b8b2={'crc32':0x0,'compressedSize':0x0,'uncompressedSize':0x0};_0x5f2ab5&&!_0x42080e||(_0x15b8b2['crc32']=_0x535f54['crc32'],_0x15b8b2['compressedSize']=_0x535f54['compressedSize'],_0x15b8b2['uncompressedSize']=_0x535f54['uncompressedSize']);var _0x28d3ca=0x0;_0x5f2ab5&&(_0x28d3ca|=0x8),_0x19702c||!_0x31137&&!_0x540d69||(_0x28d3ca|=0x800);var _0x2834a2=0x0,_0x3b45cf=0x0;_0x315597&&(_0x2834a2|=0x10),'UNIX'===_0x2645a2?(_0x3b45cf=0x31e,_0x2834a2|=function(_0x44aefb,_0x2fcb3c){var _0x42ca9d=_0x44aefb;return _0x44aefb||(_0x42ca9d=_0x2fcb3c?0x41fd:0x81b4),(0xffff&_0x42ca9d)<<0x10;}(_0x27118e['unixPermissions'],_0x315597)):(_0x3b45cf=0x14,_0x2834a2|=function(_0x31c8d1){return 0x3f&(_0x31c8d1||0x0);}(_0x27118e['dosPermissions'])),_0x1bf4f6=_0x38783b['getUTCHours'](),_0x1bf4f6<<=0x6,_0x1bf4f6|=_0x38783b['getUTCMinutes'](),_0x1bf4f6<<=0x5,_0x1bf4f6|=_0x38783b['getUTCSeconds']()/0x2,_0x5ed772=_0x38783b['getUTCFullYear']()-0x7bc,_0x5ed772<<=0x4,_0x5ed772|=_0x38783b['getUTCMonth']()+0x1,_0x5ed772<<=0x5,_0x5ed772|=_0x38783b['getUTCDate'](),_0x31137&&(_0x38e5ca=_0x2045d2(0x1,0x1)+_0x2045d2(_0x5b06b4(_0x1b678e),0x4)+_0x5019a1,_0x3cbf4c+='up'+_0x2045d2(_0x38e5ca['length'],0x2)+_0x38e5ca),_0x540d69&&(_0x535079=_0x2045d2(0x1,0x1)+_0x2045d2(_0x5b06b4(_0x564ad9),0x4)+_0x19f912,_0x3cbf4c+='uc'+_0x2045d2(_0x535079['length'],0x2)+_0x535079);var _0x8dfdc1='';return _0x8dfdc1+='\x0a\x00',_0x8dfdc1+=_0x2045d2(_0x28d3ca,0x2),_0x8dfdc1+=_0x48b4ab['magic'],_0x8dfdc1+=_0x2045d2(_0x1bf4f6,0x2),_0x8dfdc1+=_0x2045d2(_0x5ed772,0x2),_0x8dfdc1+=_0x2045d2(_0x15b8b2['crc32'],0x4),_0x8dfdc1+=_0x2045d2(_0x15b8b2['compressedSize'],0x4),_0x8dfdc1+=_0x2045d2(_0x15b8b2['uncompressedSize'],0x4),_0x8dfdc1+=_0x2045d2(_0x1b678e['length'],0x2),_0x8dfdc1+=_0x2045d2(_0x3cbf4c['length'],0x2),{'fileRecord':_0x38372a['LOCAL_FILE_HEADER']+_0x8dfdc1+_0x1b678e+_0x3cbf4c,'dirRecord':_0x38372a['CENTRAL_FILE_HEADER']+_0x2045d2(_0x3b45cf,0x2)+_0x8dfdc1+_0x2045d2(_0x564ad9['length'],0x2)+'\x00\x00\x00\x00'+_0x2045d2(_0x2834a2,0x4)+_0x2045d2(_0x457cc2,0x4)+_0x1b678e+_0x3cbf4c+_0x564ad9};}var _0x55d7e7=_0x579058('../utils'),_0x2179a0=_0x579058('../stream/GenericWorker'),_0x4762f9=_0x579058('../utf8'),_0x5b06b4=_0x579058('../crc32'),_0x38372a=_0x579058('../signature');function _0x1d037f(_0x591ce4,_0x20a7e2,_0x4cc467,_0x555a0b){_0x2179a0['call'](this,'ZipFileWorker'),this['bytesWritten']=0x0,this['zipComment']=_0x20a7e2,this['zipPlatform']=_0x4cc467,this['encodeFileName']=_0x555a0b,this['streamFiles']=_0x591ce4,this['accumulate']=!0x1,this['contentBuffer']=[],this['dirRecords']=[],this['currentSourceOffset']=0x0,this['entriesCount']=0x0,this['currentFile']=null,this['_sources']=[];}_0x55d7e7['inherits'](_0x1d037f,_0x2179a0),_0x1d037f['prototype']['push']=function(_0x51de68){var _0x4c6e5c=_0x51de68['meta']['percent']||0x0,_0x5d7fa2=this['entriesCount'],_0x1f8d44=this['_sources']['length'];this['accumulate']?this['contentBuffer']['push'](_0x51de68):(this['bytesWritten']+=_0x51de68['data']['length'],_0x2179a0['prototype']['push']['call'](this,{'data':_0x51de68['data'],'meta':{'currentFile':this['currentFile'],'percent':_0x5d7fa2?(_0x4c6e5c+0x64*(_0x5d7fa2-_0x1f8d44-0x1))/_0x5d7fa2:0x64}}));},_0x1d037f['prototype']['openedSource']=function(_0x41ce19){this['currentSourceOffset']=this['bytesWritten'],this['currentFile']=_0x41ce19['file']['name'];var _0x5aab77=this['streamFiles']&&!_0x41ce19['file']['dir'];if(_0x5aab77){var _0x43a8aa=_0x78c481(_0x41ce19,_0x5aab77,!0x1,this['currentSourceOffset'],this['zipPlatform'],this['encodeFileName']);this['push']({'data':_0x43a8aa['fileRecord'],'meta':{'percent':0x0}});}else this['accumulate']=!0x0;},_0x1d037f['prototype']['closedSource']=function(_0x41493a){this['accumulate']=!0x1;var _0x52bd9d=this['streamFiles']&&!_0x41493a['file']['dir'],_0x35b707=_0x78c481(_0x41493a,_0x52bd9d,!0x0,this['currentSourceOffset'],this['zipPlatform'],this['encodeFileName']);if(this['dirRecords']['push'](_0x35b707['dirRecord']),_0x52bd9d)this['push']({'data':function(_0x1ec403){return _0x38372a['DATA_DESCRIPTOR']+_0x2045d2(_0x1ec403['crc32'],0x4)+_0x2045d2(_0x1ec403['compressedSize'],0x4)+_0x2045d2(_0x1ec403['uncompressedSize'],0x4);}(_0x41493a),'meta':{'percent':0x64}});else {for(this['push']({'data':_0x35b707['fileRecord'],'meta':{'percent':0x0}});this['contentBuffer']['length'];)this['push'](this['contentBuffer']['shift']());}this['currentFile']=null;},_0x1d037f['prototype']['flush']=function(){for(var _0x4add32=this['bytesWritten'],_0x24b3a9=0x0;_0x24b3a9<this['dirRecords']['length'];_0x24b3a9++)this['push']({'data':this['dirRecords'][_0x24b3a9],'meta':{'percent':0x64}});var _0x5a4202=this['bytesWritten']-_0x4add32,_0x200d14=function(_0x30bbd1,_0x293ca7,_0x4d8c46,_0x4edd00,_0x1cc80e){var _0x30d78e=_0x55d7e7['transformTo']('string',_0x1cc80e(_0x4edd00));return _0x38372a['CENTRAL_DIRECTORY_END']+'\x00\x00\x00\x00'+_0x2045d2(_0x30bbd1,0x2)+_0x2045d2(_0x30bbd1,0x2)+_0x2045d2(_0x293ca7,0x4)+_0x2045d2(_0x4d8c46,0x4)+_0x2045d2(_0x30d78e['length'],0x2)+_0x30d78e;}(this['dirRecords']['length'],_0x5a4202,_0x4add32,this['zipComment'],this['encodeFileName']);this['push']({'data':_0x200d14,'meta':{'percent':0x64}});},_0x1d037f['prototype']['prepareNextSource']=function(){this['previous']=this['_sources']['shift'](),this['openedSource'](this['previous']['streamInfo']),this['isPaused']?this['previous']['pause']():this['previous']['resume']();},_0x1d037f['prototype']['registerPrevious']=function(_0x190f47){this['_sources']['push'](_0x190f47);var _0x69bf18=this;return _0x190f47['on']('data',function(_0x5dacc6){_0x69bf18['processChunk'](_0x5dacc6);}),_0x190f47['on']('end',function(){_0x69bf18['closedSource'](_0x69bf18['previous']['streamInfo']),_0x69bf18['_sources']['length']?_0x69bf18['prepareNextSource']():_0x69bf18['end']();}),_0x190f47['on']('error',function(_0xd60495){_0x69bf18['error'](_0xd60495);}),this;},_0x1d037f['prototype']['resume']=function(){return !!_0x2179a0['prototype']['resume']['call'](this)&&(!this['previous']&&this['_sources']['length']?(this['prepareNextSource'](),!0x0):this['previous']||this['_sources']['length']||this['generatedError']?void 0x0:(this['end'](),!0x0));},_0x1d037f['prototype']['error']=function(_0x2eb113){var _0x3734d7=this['_sources'];if(!_0x2179a0['prototype']['error']['call'](this,_0x2eb113))return !0x1;for(var _0x1e69a5=0x0;_0x1e69a5<_0x3734d7['length'];_0x1e69a5++)try{_0x3734d7[_0x1e69a5]['error'](_0x2eb113);}catch(_0x265943){}return !0x0;},_0x1d037f['prototype']['lock']=function(){_0x2179a0['prototype']['lock']['call'](this);for(var _0x11a37d=this['_sources'],_0x193d71=0x0;_0x193d71<_0x11a37d['length'];_0x193d71++)_0x11a37d[_0x193d71]['lock']();},_0xdce2b6['exports']=_0x1d037f;},{'../crc32':0x4,'../signature':0x17,'../stream/GenericWorker':0x1c,'../utf8':0x1f,'../utils':0x20}],0x9:[function(_0x1986b6,_0x40c0bd,_0x1ec623){var _0x25624e=_0x1986b6('../compressions'),_0x4a8809=_0x1986b6('./ZipFileWorker');_0x1ec623['generateWorker']=function(_0x4f0e68,_0x47f44c,_0x3e1c8c){var _0xc384f8=new _0x4a8809(_0x47f44c['streamFiles'],_0x3e1c8c,_0x47f44c['platform'],_0x47f44c['encodeFileName']),_0x4b3cbe=0x0;try{_0x4f0e68['forEach'](function(_0x5169ab,_0x1bdfe5){_0x4b3cbe++;var _0x14e0c7=function(_0x35db27,_0x396f5d){var _0x19515a=_0x35db27||_0x396f5d,_0x1e100f=_0x25624e[_0x19515a];if(!_0x1e100f)throw new Error(_0x19515a+'\x20is\x20not\x20a\x20valid\x20compression\x20method\x20!');return _0x1e100f;}(_0x1bdfe5['options']['compression'],_0x47f44c['compression']),_0x11406c=_0x1bdfe5['options']['compressionOptions']||_0x47f44c['compressionOptions']||{},_0xa2e5b4=_0x1bdfe5['dir'],_0x4af566=_0x1bdfe5['date'];_0x1bdfe5['_compressWorker'](_0x14e0c7,_0x11406c)['withStreamInfo']('file',{'name':_0x5169ab,'dir':_0xa2e5b4,'date':_0x4af566,'comment':_0x1bdfe5['comment']||'','unixPermissions':_0x1bdfe5['unixPermissions'],'dosPermissions':_0x1bdfe5['dosPermissions']})['pipe'](_0xc384f8);}),_0xc384f8['entriesCount']=_0x4b3cbe;}catch(_0x174e41){_0xc384f8['error'](_0x174e41);}return _0xc384f8;};},{'../compressions':0x3,'./ZipFileWorker':0x8}],0xa:[function(_0x14e700,_0xdfe984,_0x27fa9b){function _0x2f048b(){if(!(this instanceof _0x2f048b))return new _0x2f048b();if(arguments['length'])throw new Error('The\x20constructor\x20with\x20parameters\x20has\x20been\x20removed\x20in\x20JSZip\x203.0,\x20please\x20check\x20the\x20upgrade\x20guide.');this['files']=Object['create'](null),this['comment']=null,this['root']='',this['clone']=function(){var _0x335496=new _0x2f048b();for(var _0x311a90 in this)'function'!=typeof this[_0x311a90]&&(_0x335496[_0x311a90]=this[_0x311a90]);return _0x335496;};}(_0x2f048b['prototype']=_0x14e700('./object'))['loadAsync']=_0x14e700('./load'),_0x2f048b['support']=_0x14e700('./support'),_0x2f048b['defaults']=_0x14e700('./defaults'),_0x2f048b['version']='3.10.1',_0x2f048b['loadAsync']=function(_0x278fe6,_0x10259a){return new _0x2f048b()['loadAsync'](_0x278fe6,_0x10259a);},_0x2f048b['external']=_0x14e700('./external'),_0xdfe984['exports']=_0x2f048b;},{'./defaults':0x5,'./external':0x6,'./load':0xb,'./object':0xf,'./support':0x1e}],0xb:[function(_0x1b2946,_0x273234,_0x586e75){var _0x2cf259=_0x1b2946('./utils'),_0xc8b7b0=_0x1b2946('./external'),_0x4e0a41=_0x1b2946('./utf8'),_0x4be980=_0x1b2946('./zipEntries'),_0x2f184f=_0x1b2946('./stream/Crc32Probe'),_0x59f037=_0x1b2946('./nodejsUtils');function _0x3afdf1(_0x2f3c0d){return new _0xc8b7b0['Promise'](function(_0x4bf969,_0x39e3dd){var _0x40e533=_0x2f3c0d['decompressed']['getContentWorker']()['pipe'](new _0x2f184f());_0x40e533['on']('error',function(_0x5748eb){_0x39e3dd(_0x5748eb);})['on']('end',function(){_0x40e533['streamInfo']['crc32']!==_0x2f3c0d['decompressed']['crc32']?_0x39e3dd(new Error('Corrupted\x20zip\x20:\x20CRC32\x20mismatch')):_0x4bf969();})['resume']();});}_0x273234['exports']=function(_0x79bca8,_0x28f2b2){var _0x19541=this;return _0x28f2b2=_0x2cf259['extend'](_0x28f2b2||{},{'base64':!0x1,'checkCRC32':!0x1,'optimizedBinaryString':!0x1,'createFolders':!0x1,'decodeFileName':_0x4e0a41['utf8decode']}),_0x59f037['isNode']&&_0x59f037['isStream'](_0x79bca8)?_0xc8b7b0['Promise']['reject'](new Error('JSZip\x20can\x27t\x20accept\x20a\x20stream\x20when\x20loading\x20a\x20zip\x20file.')):_0x2cf259['prepareContent']('the\x20loaded\x20zip\x20file',_0x79bca8,!0x0,_0x28f2b2['optimizedBinaryString'],_0x28f2b2['base64'])['then'](function(_0x1eae3e){var _0x37d855=new _0x4be980(_0x28f2b2);return _0x37d855['load'](_0x1eae3e),_0x37d855;})['then'](function(_0x5c7adc){var _0x2389ae=[_0xc8b7b0['Promise']['resolve'](_0x5c7adc)],_0x388441=_0x5c7adc['files'];if(_0x28f2b2['checkCRC32']){for(var _0x47c979=0x0;_0x47c979<_0x388441['length'];_0x47c979++)_0x2389ae['push'](_0x3afdf1(_0x388441[_0x47c979]));}return _0xc8b7b0['Promise']['all'](_0x2389ae);})['then'](function(_0x5025f0){for(var _0x472895=_0x5025f0['shift'](),_0x5f6aea=_0x472895['files'],_0x223939=0x0;_0x223939<_0x5f6aea['length'];_0x223939++){var _0x4c8e1e=_0x5f6aea[_0x223939],_0x2eae19=_0x4c8e1e['fileNameStr'],_0x32a953=_0x2cf259['resolve'](_0x4c8e1e['fileNameStr']);_0x19541['file'](_0x32a953,_0x4c8e1e['decompressed'],{'binary':!0x0,'optimizedBinaryString':!0x0,'date':_0x4c8e1e['date'],'dir':_0x4c8e1e['dir'],'comment':_0x4c8e1e['fileCommentStr']['length']?_0x4c8e1e['fileCommentStr']:null,'unixPermissions':_0x4c8e1e['unixPermissions'],'dosPermissions':_0x4c8e1e['dosPermissions'],'createFolders':_0x28f2b2['createFolders']}),_0x4c8e1e['dir']||(_0x19541['file'](_0x32a953)['unsafeOriginalName']=_0x2eae19);}return _0x472895['zipComment']['length']&&(_0x19541['comment']=_0x472895['zipComment']),_0x19541;});};},{'./external':0x6,'./nodejsUtils':0xe,'./stream/Crc32Probe':0x19,'./utf8':0x1f,'./utils':0x20,'./zipEntries':0x21}],0xc:[function(_0x159157,_0x21c55d,_0x5850f1){var _0x4a7c61=_0x159157('../utils'),_0xc54b3d=_0x159157('../stream/GenericWorker');function _0x4b6f7a(_0x407d78,_0x1d76ea){_0xc54b3d['call'](this,'Nodejs\x20stream\x20input\x20adapter\x20for\x20'+_0x407d78),this['_upstreamEnded']=!0x1,this['_bindStream'](_0x1d76ea);}_0x4a7c61['inherits'](_0x4b6f7a,_0xc54b3d),_0x4b6f7a['prototype']['_bindStream']=function(_0x461c72){var _0x25674d=this;(this['_stream']=_0x461c72)['pause'](),_0x461c72['on']('data',function(_0x3b158f){_0x25674d['push']({'data':_0x3b158f,'meta':{'percent':0x0}});})['on']('error',function(_0x5ca3ef){_0x25674d['isPaused']?this['generatedError']=_0x5ca3ef:_0x25674d['error'](_0x5ca3ef);})['on']('end',function(){_0x25674d['isPaused']?_0x25674d['_upstreamEnded']=!0x0:_0x25674d['end']();});},_0x4b6f7a['prototype']['pause']=function(){return !!_0xc54b3d['prototype']['pause']['call'](this)&&(this['_stream']['pause'](),!0x0);},_0x4b6f7a['prototype']['resume']=function(){return !!_0xc54b3d['prototype']['resume']['call'](this)&&(this['_upstreamEnded']?this['end']():this['_stream']['resume'](),!0x0);},_0x21c55d['exports']=_0x4b6f7a;},{'../stream/GenericWorker':0x1c,'../utils':0x20}],0xd:[function(_0x21a581,_0x145c1e,_0x5d914e){var _0xaa07a2=_0x21a581('readable-stream')['Readable'];function _0x422c9c(_0x5d0b3f,_0x37e2e3,_0x410e87){_0xaa07a2['call'](this,_0x37e2e3),this['_helper']=_0x5d0b3f;var _0x4db81e=this;_0x5d0b3f['on']('data',function(_0x2ee1c0,_0x4a96dc){_0x4db81e['push'](_0x2ee1c0)||_0x4db81e['_helper']['pause'](),_0x410e87&&_0x410e87(_0x4a96dc);})['on']('error',function(_0x4bf09f){_0x4db81e['emit']('error',_0x4bf09f);})['on']('end',function(){_0x4db81e['push'](null);});}_0x21a581('../utils')['inherits'](_0x422c9c,_0xaa07a2),_0x422c9c['prototype']['_read']=function(){this['_helper']['resume']();},_0x145c1e['exports']=_0x422c9c;},{'../utils':0x20,'readable-stream':0x10}],0xe:[function(_0x5c4d1b,_0x5b924e,_0x41b213){_0x5b924e['exports']={'isNode':'undefined'!=typeof Buffer,'newBufferFrom':function(_0x3067e6,_0x575008){if(Buffer['from']&&Buffer['from']!==Uint8Array['from'])return Buffer['from'](_0x3067e6,_0x575008);if('number'==typeof _0x3067e6)throw new Error('The\x20\x22data\x22\x20argument\x20must\x20not\x20be\x20a\x20number');return new Buffer(_0x3067e6,_0x575008);},'allocBuffer':function(_0x50d29a){if(Buffer['alloc'])return Buffer['alloc'](_0x50d29a);var _0x5d82c4=new Buffer(_0x50d29a);return _0x5d82c4['fill'](0x0),_0x5d82c4;},'isBuffer':function(_0x20045d){return Buffer['isBuffer'](_0x20045d);},'isStream':function(_0x1e32b5){return _0x1e32b5&&'function'==typeof _0x1e32b5['on']&&'function'==typeof _0x1e32b5['pause']&&'function'==typeof _0x1e32b5['resume'];}};},{}],0xf:[function(_0x57b1e4,_0x273e5f,_0x5caad7){function _0x8fc7d(_0x11c494,_0x16341c,_0x1dd83e){var _0x20c1ec,_0x5a0ebc=_0x4305e4['getTypeOf'](_0x16341c),_0x3638a8=_0x4305e4['extend'](_0x1dd83e||{},_0x3a056e);_0x3638a8['date']=_0x3638a8['date']||new Date(),null!==_0x3638a8['compression']&&(_0x3638a8['compression']=_0x3638a8['compression']['toUpperCase']()),'string'==typeof _0x3638a8['unixPermissions']&&(_0x3638a8['unixPermissions']=parseInt(_0x3638a8['unixPermissions'],0x8)),_0x3638a8['unixPermissions']&&0x4000&_0x3638a8['unixPermissions']&&(_0x3638a8['dir']=!0x0),_0x3638a8['dosPermissions']&&0x10&_0x3638a8['dosPermissions']&&(_0x3638a8['dir']=!0x0),_0x3638a8['dir']&&(_0x11c494=_0x2b16d7(_0x11c494)),_0x3638a8['createFolders']&&(_0x20c1ec=_0x17f4a6(_0x11c494))&&_0x25212c['call'](this,_0x20c1ec,!0x0);var _0xd97c63='string'===_0x5a0ebc&&!0x1===_0x3638a8['binary']&&!0x1===_0x3638a8['base64'];_0x1dd83e&&void 0x0!==_0x1dd83e['binary']||(_0x3638a8['binary']=!_0xd97c63),(_0x16341c instanceof _0x38ed15&&0x0===_0x16341c['uncompressedSize']||_0x3638a8['dir']||!_0x16341c||0x0===_0x16341c['length'])&&(_0x3638a8['base64']=!0x1,_0x3638a8['binary']=!0x0,_0x16341c='',_0x3638a8['compression']='STORE',_0x5a0ebc='string');var _0x1e7e88=null;_0x1e7e88=_0x16341c instanceof _0x38ed15||_0x16341c instanceof _0x4ea142?_0x16341c:_0x328ba0['isNode']&&_0x328ba0['isStream'](_0x16341c)?new _0x2d3498(_0x11c494,_0x16341c):_0x4305e4['prepareContent'](_0x11c494,_0x16341c,_0x3638a8['binary'],_0x3638a8['optimizedBinaryString'],_0x3638a8['base64']);var _0x3d3817=new _0x4b1d8e(_0x11c494,_0x1e7e88,_0x3638a8);this['files'][_0x11c494]=_0x3d3817;}var _0x1cbb9b=_0x57b1e4('./utf8'),_0x4305e4=_0x57b1e4('./utils'),_0x4ea142=_0x57b1e4('./stream/GenericWorker'),_0x2f3f86=_0x57b1e4('./stream/StreamHelper'),_0x3a056e=_0x57b1e4('./defaults'),_0x38ed15=_0x57b1e4('./compressedObject'),_0x4b1d8e=_0x57b1e4('./zipObject'),_0xbb45ae=_0x57b1e4('./generate'),_0x328ba0=_0x57b1e4('./nodejsUtils'),_0x2d3498=_0x57b1e4('./nodejs/NodejsStreamInputAdapter'),_0x17f4a6=function(_0x22c1d5){'/'===_0x22c1d5['slice'](-0x1)&&(_0x22c1d5=_0x22c1d5['substring'](0x0,_0x22c1d5['length']-0x1));var _0x2f58fb=_0x22c1d5['lastIndexOf']('/');return 0x0<_0x2f58fb?_0x22c1d5['substring'](0x0,_0x2f58fb):'';},_0x2b16d7=function(_0x4c48a9){return '/'!==_0x4c48a9['slice'](-0x1)&&(_0x4c48a9+='/'),_0x4c48a9;},_0x25212c=function(_0x145666,_0x5e9d28){return _0x5e9d28=void 0x0!==_0x5e9d28?_0x5e9d28:_0x3a056e['createFolders'],_0x145666=_0x2b16d7(_0x145666),this['files'][_0x145666]||_0x8fc7d['call'](this,_0x145666,null,{'dir':!0x0,'createFolders':_0x5e9d28}),this['files'][_0x145666];};function _0x312d48(_0x4ef7a1){return '[object\x20RegExp]'===Object['prototype']['toString']['call'](_0x4ef7a1);}var _0x7560eb={'load':function(){throw new Error('This\x20method\x20has\x20been\x20removed\x20in\x20JSZip\x203.0,\x20please\x20check\x20the\x20upgrade\x20guide.');},'forEach':function(_0x2532c4){var _0xb06f0a,_0x18c20d,_0x5ae21c;for(_0xb06f0a in this['files'])_0x5ae21c=this['files'][_0xb06f0a],(_0x18c20d=_0xb06f0a['slice'](this['root']['length'],_0xb06f0a['length']))&&_0xb06f0a['slice'](0x0,this['root']['length'])===this['root']&&_0x2532c4(_0x18c20d,_0x5ae21c);},'filter':function(_0x1c0446){var _0x4defb6=[];return this['forEach'](function(_0x19ee9f,_0x5b3504){_0x1c0446(_0x19ee9f,_0x5b3504)&&_0x4defb6['push'](_0x5b3504);}),_0x4defb6;},'file':function(_0x21bc15,_0x55c6cc,_0x5e07ee){if(0x1!==arguments['length'])return _0x21bc15=this['root']+_0x21bc15,_0x8fc7d['call'](this,_0x21bc15,_0x55c6cc,_0x5e07ee),this;if(_0x312d48(_0x21bc15)){var _0x3ea014=_0x21bc15;return this['filter'](function(_0x3d403b,_0x58afcb){return !_0x58afcb['dir']&&_0x3ea014['test'](_0x3d403b);});}var _0x18a14e=this['files'][this['root']+_0x21bc15];return _0x18a14e&&!_0x18a14e['dir']?_0x18a14e:null;},'folder':function(_0x3b0a55){if(!_0x3b0a55)return this;if(_0x312d48(_0x3b0a55))return this['filter'](function(_0x52c617,_0xd56c7d){return _0xd56c7d['dir']&&_0x3b0a55['test'](_0x52c617);});var _0x50f78b=this['root']+_0x3b0a55,_0x232034=_0x25212c['call'](this,_0x50f78b),_0x2cef57=this['clone']();return _0x2cef57['root']=_0x232034['name'],_0x2cef57;},'remove':function(_0x15fcb9){_0x15fcb9=this['root']+_0x15fcb9;var _0x2fc696=this['files'][_0x15fcb9];if(_0x2fc696||('/'!==_0x15fcb9['slice'](-0x1)&&(_0x15fcb9+='/'),_0x2fc696=this['files'][_0x15fcb9]),_0x2fc696&&!_0x2fc696['dir'])delete this['files'][_0x15fcb9];else {for(var _0x422c17=this['filter'](function(_0x1a5f2c,_0x373561){return _0x373561['name']['slice'](0x0,_0x15fcb9['length'])===_0x15fcb9;}),_0x33f156=0x0;_0x33f156<_0x422c17['length'];_0x33f156++)delete this['files'][_0x422c17[_0x33f156]['name']];}return this;},'generate':function(){throw new Error('This\x20method\x20has\x20been\x20removed\x20in\x20JSZip\x203.0,\x20please\x20check\x20the\x20upgrade\x20guide.');},'generateInternalStream':function(_0x5267aa){var _0x44971a,_0x5d1ab6={};try{if((_0x5d1ab6=_0x4305e4['extend'](_0x5267aa||{},{'streamFiles':!0x1,'compression':'STORE','compressionOptions':null,'type':'','platform':'DOS','comment':null,'mimeType':'application/zip','encodeFileName':_0x1cbb9b['utf8encode']}))['type']=_0x5d1ab6['type']['toLowerCase'](),_0x5d1ab6['compression']=_0x5d1ab6['compression']['toUpperCase'](),'binarystring'===_0x5d1ab6['type']&&(_0x5d1ab6['type']='string'),!_0x5d1ab6['type'])throw new Error('No\x20output\x20type\x20specified.');_0x4305e4['checkSupport'](_0x5d1ab6['type']),'darwin'!==_0x5d1ab6['platform']&&'freebsd'!==_0x5d1ab6['platform']&&'linux'!==_0x5d1ab6['platform']&&'sunos'!==_0x5d1ab6['platform']||(_0x5d1ab6['platform']='UNIX'),'win32'===_0x5d1ab6['platform']&&(_0x5d1ab6['platform']='DOS');var _0x13ba00=_0x5d1ab6['comment']||this['comment']||'';_0x44971a=_0xbb45ae['generateWorker'](this,_0x5d1ab6,_0x13ba00);}catch(_0x653a74){(_0x44971a=new _0x4ea142('error'))['error'](_0x653a74);}return new _0x2f3f86(_0x44971a,_0x5d1ab6['type']||'string',_0x5d1ab6['mimeType']);},'generateAsync':function(_0x24013b,_0x3a0733){return this['generateInternalStream'](_0x24013b)['accumulate'](_0x3a0733);},'generateNodeStream':function(_0xd31f96,_0x25b4e4){return (_0xd31f96=_0xd31f96||{})['type']||(_0xd31f96['type']='nodebuffer'),this['generateInternalStream'](_0xd31f96)['toNodejsStream'](_0x25b4e4);}};_0x273e5f['exports']=_0x7560eb;},{'./compressedObject':0x2,'./defaults':0x5,'./generate':0x9,'./nodejs/NodejsStreamInputAdapter':0xc,'./nodejsUtils':0xe,'./stream/GenericWorker':0x1c,'./stream/StreamHelper':0x1d,'./utf8':0x1f,'./utils':0x20,'./zipObject':0x23}],0x10:[function(_0x1b756a,_0x131013,_0x53ab41){_0x131013['exports']=_0x1b756a('stream');},{'stream':void 0x0}],0x11:[function(_0x13a412,_0x4aadcb,_0x51a6d6){var _0x5d229d=_0x13a412('./DataReader');function _0x5b7d92(_0xe41d57){_0x5d229d['call'](this,_0xe41d57);for(var _0x25f0da=0x0;_0x25f0da<this['data']['length'];_0x25f0da++)_0xe41d57[_0x25f0da]=0xff&_0xe41d57[_0x25f0da];}_0x13a412('../utils')['inherits'](_0x5b7d92,_0x5d229d),_0x5b7d92['prototype']['byteAt']=function(_0x50f086){return this['data'][this['zero']+_0x50f086];},_0x5b7d92['prototype']['lastIndexOfSignature']=function(_0x44724c){for(var _0x14fdb8=_0x44724c['charCodeAt'](0x0),_0x48b1f4=_0x44724c['charCodeAt'](0x1),_0x3c0f69=_0x44724c['charCodeAt'](0x2),_0x4e8fba=_0x44724c['charCodeAt'](0x3),_0x32e80d=this['length']-0x4;0x0<=_0x32e80d;--_0x32e80d)if(this['data'][_0x32e80d]===_0x14fdb8&&this['data'][_0x32e80d+0x1]===_0x48b1f4&&this['data'][_0x32e80d+0x2]===_0x3c0f69&&this['data'][_0x32e80d+0x3]===_0x4e8fba)return _0x32e80d-this['zero'];return -0x1;},_0x5b7d92['prototype']['readAndCheckSignature']=function(_0x235cd7){var _0x310dca=_0x235cd7['charCodeAt'](0x0),_0x4c61f0=_0x235cd7['charCodeAt'](0x1),_0x334054=_0x235cd7['charCodeAt'](0x2),_0x25540d=_0x235cd7['charCodeAt'](0x3),_0x9b62e7=this['readData'](0x4);return _0x310dca===_0x9b62e7[0x0]&&_0x4c61f0===_0x9b62e7[0x1]&&_0x334054===_0x9b62e7[0x2]&&_0x25540d===_0x9b62e7[0x3];},_0x5b7d92['prototype']['readData']=function(_0x2817f0){if(this['checkOffset'](_0x2817f0),0x0===_0x2817f0)return [];var _0x252d62=this['data']['slice'](this['zero']+this['index'],this['zero']+this['index']+_0x2817f0);return this['index']+=_0x2817f0,_0x252d62;},_0x4aadcb['exports']=_0x5b7d92;},{'../utils':0x20,'./DataReader':0x12}],0x12:[function(_0x2f56cb,_0x2f484d,_0x47d359){var _0x3bacb2=_0x2f56cb('../utils');function _0x23e11d(_0x4c7879){this['data']=_0x4c7879,this['length']=_0x4c7879['length'],this['index']=0x0,this['zero']=0x0;}_0x23e11d['prototype']={'checkOffset':function(_0x1a9f50){this['checkIndex'](this['index']+_0x1a9f50);},'checkIndex':function(_0x2c4c89){if(this['length']<this['zero']+_0x2c4c89||_0x2c4c89<0x0)throw new Error('End\x20of\x20data\x20reached\x20(data\x20length\x20=\x20'+this['length']+',\x20asked\x20index\x20=\x20'+_0x2c4c89+').\x20Corrupted\x20zip\x20?');},'setIndex':function(_0x564346){this['checkIndex'](_0x564346),this['index']=_0x564346;},'skip':function(_0x33cdb8){this['setIndex'](this['index']+_0x33cdb8);},'byteAt':function(){},'readInt':function(_0x15cf56){var _0x2dcd0a,_0x43e57e=0x0;for(this['checkOffset'](_0x15cf56),_0x2dcd0a=this['index']+_0x15cf56-0x1;_0x2dcd0a>=this['index'];_0x2dcd0a--)_0x43e57e=(_0x43e57e<<0x8)+this['byteAt'](_0x2dcd0a);return this['index']+=_0x15cf56,_0x43e57e;},'readString':function(_0x326040){return _0x3bacb2['transformTo']('string',this['readData'](_0x326040));},'readData':function(){},'lastIndexOfSignature':function(){},'readAndCheckSignature':function(){},'readDate':function(){var _0x23408e=this['readInt'](0x4);return new Date(Date['UTC'](0x7bc+(_0x23408e>>0x19&0x7f),(_0x23408e>>0x15&0xf)-0x1,_0x23408e>>0x10&0x1f,_0x23408e>>0xb&0x1f,_0x23408e>>0x5&0x3f,(0x1f&_0x23408e)<<0x1));}},_0x2f484d['exports']=_0x23e11d;},{'../utils':0x20}],0x13:[function(_0x34442e,_0x4b1346,_0x5bdf98){var _0x34e04e=_0x34442e('./Uint8ArrayReader');function _0x107a61(_0x1d8633){_0x34e04e['call'](this,_0x1d8633);}_0x34442e('../utils')['inherits'](_0x107a61,_0x34e04e),_0x107a61['prototype']['readData']=function(_0x57ee0f){this['checkOffset'](_0x57ee0f);var _0x3b5005=this['data']['slice'](this['zero']+this['index'],this['zero']+this['index']+_0x57ee0f);return this['index']+=_0x57ee0f,_0x3b5005;},_0x4b1346['exports']=_0x107a61;},{'../utils':0x20,'./Uint8ArrayReader':0x15}],0x14:[function(_0x345567,_0x24cfeb,_0x451de9){var _0x27d281=_0x345567('./DataReader');function _0x301169(_0x40a4ce){_0x27d281['call'](this,_0x40a4ce);}_0x345567('../utils')['inherits'](_0x301169,_0x27d281),_0x301169['prototype']['byteAt']=function(_0x1a0c86){return this['data']['charCodeAt'](this['zero']+_0x1a0c86);},_0x301169['prototype']['lastIndexOfSignature']=function(_0x1bddb6){return this['data']['lastIndexOf'](_0x1bddb6)-this['zero'];},_0x301169['prototype']['readAndCheckSignature']=function(_0x1a19d5){return _0x1a19d5===this['readData'](0x4);},_0x301169['prototype']['readData']=function(_0x500bf5){this['checkOffset'](_0x500bf5);var _0xca370=this['data']['slice'](this['zero']+this['index'],this['zero']+this['index']+_0x500bf5);return this['index']+=_0x500bf5,_0xca370;},_0x24cfeb['exports']=_0x301169;},{'../utils':0x20,'./DataReader':0x12}],0x15:[function(_0x13ce4f,_0x5f294a,_0x2eeba3){var _0xd3598=_0x13ce4f('./ArrayReader');function _0x13a6e7(_0x213f19){_0xd3598['call'](this,_0x213f19);}_0x13ce4f('../utils')['inherits'](_0x13a6e7,_0xd3598),_0x13a6e7['prototype']['readData']=function(_0x567d8b){if(this['checkOffset'](_0x567d8b),0x0===_0x567d8b)return new Uint8Array(0x0);var _0x27de18=this['data']['subarray'](this['zero']+this['index'],this['zero']+this['index']+_0x567d8b);return this['index']+=_0x567d8b,_0x27de18;},_0x5f294a['exports']=_0x13a6e7;},{'../utils':0x20,'./ArrayReader':0x11}],0x16:[function(_0x20bc0e,_0x53d7c2,_0x551d21){var _0x5411a9=_0x20bc0e('../utils'),_0xfabe78=_0x20bc0e('../support'),_0x3eb871=_0x20bc0e('./ArrayReader'),_0x3b6f19=_0x20bc0e('./StringReader'),_0x57baec=_0x20bc0e('./NodeBufferReader'),_0x234eef=_0x20bc0e('./Uint8ArrayReader');_0x53d7c2['exports']=function(_0x285e96){var _0x5785c5=_0x5411a9['getTypeOf'](_0x285e96);return _0x5411a9['checkSupport'](_0x5785c5),'string'!==_0x5785c5||_0xfabe78['uint8array']?'nodebuffer'===_0x5785c5?new _0x57baec(_0x285e96):_0xfabe78['uint8array']?new _0x234eef(_0x5411a9['transformTo']('uint8array',_0x285e96)):new _0x3eb871(_0x5411a9['transformTo']('array',_0x285e96)):new _0x3b6f19(_0x285e96);};},{'../support':0x1e,'../utils':0x20,'./ArrayReader':0x11,'./NodeBufferReader':0x13,'./StringReader':0x14,'./Uint8ArrayReader':0x15}],0x17:[function(_0x2ad49f,_0x4c69a8,_0x4af0ca){_0x4af0ca['LOCAL_FILE_HEADER']='PK\x03\x04',_0x4af0ca['CENTRAL_FILE_HEADER']='PK\x01\x02',_0x4af0ca['CENTRAL_DIRECTORY_END']='PK\x05\x06',_0x4af0ca['ZIP64_CENTRAL_DIRECTORY_LOCATOR']='PK\x06\x07',_0x4af0ca['ZIP64_CENTRAL_DIRECTORY_END']='PK\x06\x06',_0x4af0ca['DATA_DESCRIPTOR']='PK\x07\x08';},{}],0x18:[function(_0x3f96c1,_0x4b0a90,_0xdbb1ff){var _0xa50ab=_0x3f96c1('./GenericWorker'),_0x342168=_0x3f96c1('../utils');function _0x4205a0(_0x489716){_0xa50ab['call'](this,'ConvertWorker\x20to\x20'+_0x489716),this['destType']=_0x489716;}_0x342168['inherits'](_0x4205a0,_0xa50ab),_0x4205a0['prototype']['processChunk']=function(_0x3951d2){this['push']({'data':_0x342168['transformTo'](this['destType'],_0x3951d2['data']),'meta':_0x3951d2['meta']});},_0x4b0a90['exports']=_0x4205a0;},{'../utils':0x20,'./GenericWorker':0x1c}],0x19:[function(_0x315590,_0x51deaa,_0x54dffe){var _0x45328e=_0x315590('./GenericWorker'),_0x18e038=_0x315590('../crc32');function _0x323da2(){_0x45328e['call'](this,'Crc32Probe'),this['withStreamInfo']('crc32',0x0);}_0x315590('../utils')['inherits'](_0x323da2,_0x45328e),_0x323da2['prototype']['processChunk']=function(_0xb66302){this['streamInfo']['crc32']=_0x18e038(_0xb66302['data'],this['streamInfo']['crc32']||0x0),this['push'](_0xb66302);},_0x51deaa['exports']=_0x323da2;},{'../crc32':0x4,'../utils':0x20,'./GenericWorker':0x1c}],0x1a:[function(_0x3a8fc4,_0x201467,_0x5a0eb1){var _0xe91885=_0x3a8fc4('../utils'),_0x249ec0=_0x3a8fc4('./GenericWorker');function _0x317541(_0x40cbf4){_0x249ec0['call'](this,'DataLengthProbe\x20for\x20'+_0x40cbf4),this['propName']=_0x40cbf4,this['withStreamInfo'](_0x40cbf4,0x0);}_0xe91885['inherits'](_0x317541,_0x249ec0),_0x317541['prototype']['processChunk']=function(_0x499aa2){if(_0x499aa2){var _0x18bea1=this['streamInfo'][this['propName']]||0x0;this['streamInfo'][this['propName']]=_0x18bea1+_0x499aa2['data']['length'];}_0x249ec0['prototype']['processChunk']['call'](this,_0x499aa2);},_0x201467['exports']=_0x317541;},{'../utils':0x20,'./GenericWorker':0x1c}],0x1b:[function(_0x27d7e3,_0x40a702,_0xf76248){var _0x44b562=_0x27d7e3('../utils'),_0x4b699f=_0x27d7e3('./GenericWorker');function _0x84cb8(_0x245086){_0x4b699f['call'](this,'DataWorker');var _0x4fa478=this;this['dataIsReady']=!0x1,this['index']=0x0,this['max']=0x0,this['data']=null,this['type']='',this['_tickScheduled']=!0x1,_0x245086['then'](function(_0x1e2af9){_0x4fa478['dataIsReady']=!0x0,_0x4fa478['data']=_0x1e2af9,_0x4fa478['max']=_0x1e2af9&&_0x1e2af9['length']||0x0,_0x4fa478['type']=_0x44b562['getTypeOf'](_0x1e2af9),_0x4fa478['isPaused']||_0x4fa478['_tickAndRepeat']();},function(_0x3c6de8){_0x4fa478['error'](_0x3c6de8);});}_0x44b562['inherits'](_0x84cb8,_0x4b699f),_0x84cb8['prototype']['cleanUp']=function(){_0x4b699f['prototype']['cleanUp']['call'](this),this['data']=null;},_0x84cb8['prototype']['resume']=function(){return !!_0x4b699f['prototype']['resume']['call'](this)&&(!this['_tickScheduled']&&this['dataIsReady']&&(this['_tickScheduled']=!0x0,_0x44b562['delay'](this['_tickAndRepeat'],[],this)),!0x0);},_0x84cb8['prototype']['_tickAndRepeat']=function(){this['_tickScheduled']=!0x1,this['isPaused']||this['isFinished']||(this['_tick'](),this['isFinished']||(_0x44b562['delay'](this['_tickAndRepeat'],[],this),this['_tickScheduled']=!0x0));},_0x84cb8['prototype']['_tick']=function(){if(this['isPaused']||this['isFinished'])return !0x1;var _0x26a096=null,_0x2e6017=Math['min'](this['max'],this['index']+0x4000);if(this['index']>=this['max'])return this['end']();switch(this['type']){case'string':_0x26a096=this['data']['substring'](this['index'],_0x2e6017);break;case'uint8array':_0x26a096=this['data']['subarray'](this['index'],_0x2e6017);break;case'array':case'nodebuffer':_0x26a096=this['data']['slice'](this['index'],_0x2e6017);}return this['index']=_0x2e6017,this['push']({'data':_0x26a096,'meta':{'percent':this['max']?this['index']/this['max']*0x64:0x0}});},_0x40a702['exports']=_0x84cb8;},{'../utils':0x20,'./GenericWorker':0x1c}],0x1c:[function(_0x3aa484,_0x45244f,_0x2101d7){function _0xb9e1aa(_0x4635e8){this['name']=_0x4635e8||'default',this['streamInfo']={},this['generatedError']=null,this['extraStreamInfo']={},this['isPaused']=!0x0,this['isFinished']=!0x1,this['isLocked']=!0x1,this['_listeners']={'data':[],'end':[],'error':[]},this['previous']=null;}_0xb9e1aa['prototype']={'push':function(_0x1f2d6b){this['emit']('data',_0x1f2d6b);},'end':function(){if(this['isFinished'])return !0x1;this['flush']();try{this['emit']('end'),this['cleanUp'](),this['isFinished']=!0x0;}catch(_0x428d31){this['emit']('error',_0x428d31);}return !0x0;},'error':function(_0x25c2e2){return !this['isFinished']&&(this['isPaused']?this['generatedError']=_0x25c2e2:(this['isFinished']=!0x0,this['emit']('error',_0x25c2e2),this['previous']&&this['previous']['error'](_0x25c2e2),this['cleanUp']()),!0x0);},'on':function(_0x4ecdb1,_0x92b2ef){return this['_listeners'][_0x4ecdb1]['push'](_0x92b2ef),this;},'cleanUp':function(){this['streamInfo']=this['generatedError']=this['extraStreamInfo']=null,this['_listeners']=[];},'emit':function(_0x33d837,_0xa909e8){if(this['_listeners'][_0x33d837]){for(var _0x2f178e=0x0;_0x2f178e<this['_listeners'][_0x33d837]['length'];_0x2f178e++)this['_listeners'][_0x33d837][_0x2f178e]['call'](this,_0xa909e8);}},'pipe':function(_0x509d70){return _0x509d70['registerPrevious'](this);},'registerPrevious':function(_0x4269c3){if(this['isLocked'])throw new Error('The\x20stream\x20\x27'+this+'\x27\x20has\x20already\x20been\x20used.');this['streamInfo']=_0x4269c3['streamInfo'],this['mergeStreamInfo'](),this['previous']=_0x4269c3;var _0x598c1e=this;return _0x4269c3['on']('data',function(_0x3d7178){_0x598c1e['processChunk'](_0x3d7178);}),_0x4269c3['on']('end',function(){_0x598c1e['end']();}),_0x4269c3['on']('error',function(_0x17f48a){_0x598c1e['error'](_0x17f48a);}),this;},'pause':function(){return !this['isPaused']&&!this['isFinished']&&(this['isPaused']=!0x0,this['previous']&&this['previous']['pause'](),!0x0);},'resume':function(){if(!this['isPaused']||this['isFinished'])return !0x1;var _0x25c91b=this['isPaused']=!0x1;return this['generatedError']&&(this['error'](this['generatedError']),_0x25c91b=!0x0),this['previous']&&this['previous']['resume'](),!_0x25c91b;},'flush':function(){},'processChunk':function(_0x4a0c52){this['push'](_0x4a0c52);},'withStreamInfo':function(_0xb13354,_0x5a6082){return this['extraStreamInfo'][_0xb13354]=_0x5a6082,this['mergeStreamInfo'](),this;},'mergeStreamInfo':function(){for(var _0xdcd8bc in this['extraStreamInfo'])Object['prototype']['hasOwnProperty']['call'](this['extraStreamInfo'],_0xdcd8bc)&&(this['streamInfo'][_0xdcd8bc]=this['extraStreamInfo'][_0xdcd8bc]);},'lock':function(){if(this['isLocked'])throw new Error('The\x20stream\x20\x27'+this+'\x27\x20has\x20already\x20been\x20used.');this['isLocked']=!0x0,this['previous']&&this['previous']['lock']();},'toString':function(){var _0xa0f218='Worker\x20'+this['name'];return this['previous']?this['previous']+'\x20->\x20'+_0xa0f218:_0xa0f218;}},_0x45244f['exports']=_0xb9e1aa;},{}],0x1d:[function(_0x4192d9,_0x395f69,_0x6b919e){var _0x2238f5=_0x4192d9('../utils'),_0x31b7ce=_0x4192d9('./ConvertWorker'),_0xa3ba37=_0x4192d9('./GenericWorker'),_0x325c5b=_0x4192d9('../base64'),_0x411d16=_0x4192d9('../support'),_0x3c6f1e=_0x4192d9('../external'),_0x11b75a=null;if(_0x411d16['nodestream'])try{_0x11b75a=_0x4192d9('../nodejs/NodejsStreamOutputAdapter');}catch(_0x1c678d){}function _0x475ed8(_0x5e1e60,_0x50349e){return new _0x3c6f1e['Promise'](function(_0x1738c0,_0x264ae7){var _0x52a9c0=[],_0x2ee193=_0x5e1e60['_internalType'],_0x3eed1f=_0x5e1e60['_outputType'],_0x56a51=_0x5e1e60['_mimeType'];_0x5e1e60['on']('data',function(_0x3afabf,_0x1f3289){_0x52a9c0['push'](_0x3afabf),_0x50349e&&_0x50349e(_0x1f3289);})['on']('error',function(_0x439d47){_0x52a9c0=[],_0x264ae7(_0x439d47);})['on']('end',function(){try{var _0xb1d7e3=function(_0x273445,_0x14f627,_0x5acef8){switch(_0x273445){case'blob':return _0x2238f5['newBlob'](_0x2238f5['transformTo']('arraybuffer',_0x14f627),_0x5acef8);case'base64':return _0x325c5b['encode'](_0x14f627);default:return _0x2238f5['transformTo'](_0x273445,_0x14f627);}}(_0x3eed1f,function(_0x2eb972,_0x5d8821){var _0x1801d6,_0x5d936d=0x0,_0x3c400e=null,_0x27132c=0x0;for(_0x1801d6=0x0;_0x1801d6<_0x5d8821['length'];_0x1801d6++)_0x27132c+=_0x5d8821[_0x1801d6]['length'];switch(_0x2eb972){case'string':return _0x5d8821['join']('');case'array':return Array['prototype']['concat']['apply']([],_0x5d8821);case'uint8array':for(_0x3c400e=new Uint8Array(_0x27132c),_0x1801d6=0x0;_0x1801d6<_0x5d8821['length'];_0x1801d6++)_0x3c400e['set'](_0x5d8821[_0x1801d6],_0x5d936d),_0x5d936d+=_0x5d8821[_0x1801d6]['length'];return _0x3c400e;case'nodebuffer':return Buffer['concat'](_0x5d8821);default:throw new Error('concat\x20:\x20unsupported\x20type\x20\x27'+_0x2eb972+'\x27');}}(_0x2ee193,_0x52a9c0),_0x56a51);_0x1738c0(_0xb1d7e3);}catch(_0x39ac1f){_0x264ae7(_0x39ac1f);}_0x52a9c0=[];})['resume']();});}function _0x41b9e2(_0x50c1ab,_0xa11e57,_0x1a2ba5){var _0x49f758=_0xa11e57;switch(_0xa11e57){case'blob':case'arraybuffer':_0x49f758='uint8array';break;case'base64':_0x49f758='string';}try{this['_internalType']=_0x49f758,this['_outputType']=_0xa11e57,this['_mimeType']=_0x1a2ba5,_0x2238f5['checkSupport'](_0x49f758),this['_worker']=_0x50c1ab['pipe'](new _0x31b7ce(_0x49f758)),_0x50c1ab['lock']();}catch(_0x3c57bd){this['_worker']=new _0xa3ba37('error'),this['_worker']['error'](_0x3c57bd);}}_0x41b9e2['prototype']={'accumulate':function(_0x442a6c){return _0x475ed8(this,_0x442a6c);},'on':function(_0x4fd331,_0x4256ac){var _0x4cedb3=this;return 'data'===_0x4fd331?this['_worker']['on'](_0x4fd331,function(_0x2a3c4c){_0x4256ac['call'](_0x4cedb3,_0x2a3c4c['data'],_0x2a3c4c['meta']);}):this['_worker']['on'](_0x4fd331,function(){_0x2238f5['delay'](_0x4256ac,arguments,_0x4cedb3);}),this;},'resume':function(){return _0x2238f5['delay'](this['_worker']['resume'],[],this['_worker']),this;},'pause':function(){return this['_worker']['pause'](),this;},'toNodejsStream':function(_0x2fb783){if(_0x2238f5['checkSupport']('nodestream'),'nodebuffer'!==this['_outputType'])throw new Error(this['_outputType']+'\x20is\x20not\x20supported\x20by\x20this\x20method');return new _0x11b75a(this,{'objectMode':'nodebuffer'!==this['_outputType']},_0x2fb783);}},_0x395f69['exports']=_0x41b9e2;},{'../base64':0x1,'../external':0x6,'../nodejs/NodejsStreamOutputAdapter':0xd,'../support':0x1e,'../utils':0x20,'./ConvertWorker':0x18,'./GenericWorker':0x1c}],0x1e:[function(_0xec4099,_0x2c0db7,_0x50aa35){if(_0x50aa35['base64']=!0x0,_0x50aa35['array']=!0x0,_0x50aa35['string']=!0x0,_0x50aa35['arraybuffer']='undefined'!=typeof ArrayBuffer&&'undefined'!=typeof Uint8Array,_0x50aa35['nodebuffer']='undefined'!=typeof Buffer,_0x50aa35['uint8array']='undefined'!=typeof Uint8Array,'undefined'==typeof ArrayBuffer)_0x50aa35['blob']=!0x1;else {var _0x57584a=new ArrayBuffer(0x0);try{_0x50aa35['blob']=0x0===new Blob([_0x57584a],{'type':'application/zip'})['size'];}catch(_0x3b90e3){try{var _0x46fb16=new(self['BlobBuilder']||self['WebKitBlobBuilder']||self['MozBlobBuilder']||self['MSBlobBuilder'])();_0x46fb16['append'](_0x57584a),_0x50aa35['blob']=0x0===_0x46fb16['getBlob']('application/zip')['size'];}catch(_0x12b133){_0x50aa35['blob']=!0x1;}}}try{_0x50aa35['nodestream']=!!_0xec4099('readable-stream')['Readable'];}catch(_0x49404e){_0x50aa35['nodestream']=!0x1;}},{'readable-stream':0x10}],0x1f:[function(_0xfea2f1,_0x3e0ada,_0x4dccf2){for(var _0x30e696=_0xfea2f1('./utils'),_0x183e57=_0xfea2f1('./support'),_0x2d6af5=_0xfea2f1('./nodejsUtils'),_0x48d361=_0xfea2f1('./stream/GenericWorker'),_0x30b5a8=new Array(0x100),_0x55103e=0x0;_0x55103e<0x100;_0x55103e++)_0x30b5a8[_0x55103e]=0xfc<=_0x55103e?0x6:0xf8<=_0x55103e?0x5:0xf0<=_0x55103e?0x4:0xe0<=_0x55103e?0x3:0xc0<=_0x55103e?0x2:0x1;_0x30b5a8[0xfe]=_0x30b5a8[0xfe]=0x1;function _0x49a5ac(){_0x48d361['call'](this,'utf-8\x20decode'),this['leftOver']=null;}function _0x7124e2(){_0x48d361['call'](this,'utf-8\x20encode');}_0x4dccf2['utf8encode']=function(_0x3f3427){return _0x183e57['nodebuffer']?_0x2d6af5['newBufferFrom'](_0x3f3427,'utf-8'):function(_0x63dcb9){var _0x2dab2b,_0x43356b,_0x1532f0,_0x4583d8,_0x186324,_0x55d489=_0x63dcb9['length'],_0x56fcf2=0x0;for(_0x4583d8=0x0;_0x4583d8<_0x55d489;_0x4583d8++)0xd800==(0xfc00&(_0x43356b=_0x63dcb9['charCodeAt'](_0x4583d8)))&&_0x4583d8+0x1<_0x55d489&&0xdc00==(0xfc00&(_0x1532f0=_0x63dcb9['charCodeAt'](_0x4583d8+0x1)))&&(_0x43356b=0x10000+(_0x43356b-0xd800<<0xa)+(_0x1532f0-0xdc00),_0x4583d8++),_0x56fcf2+=_0x43356b<0x80?0x1:_0x43356b<0x800?0x2:_0x43356b<0x10000?0x3:0x4;for(_0x2dab2b=_0x183e57['uint8array']?new Uint8Array(_0x56fcf2):new Array(_0x56fcf2),_0x4583d8=_0x186324=0x0;_0x186324<_0x56fcf2;_0x4583d8++)0xd800==(0xfc00&(_0x43356b=_0x63dcb9['charCodeAt'](_0x4583d8)))&&_0x4583d8+0x1<_0x55d489&&0xdc00==(0xfc00&(_0x1532f0=_0x63dcb9['charCodeAt'](_0x4583d8+0x1)))&&(_0x43356b=0x10000+(_0x43356b-0xd800<<0xa)+(_0x1532f0-0xdc00),_0x4583d8++),_0x43356b<0x80?_0x2dab2b[_0x186324++]=_0x43356b:(_0x43356b<0x800?_0x2dab2b[_0x186324++]=0xc0|_0x43356b>>>0x6:(_0x43356b<0x10000?_0x2dab2b[_0x186324++]=0xe0|_0x43356b>>>0xc:(_0x2dab2b[_0x186324++]=0xf0|_0x43356b>>>0x12,_0x2dab2b[_0x186324++]=0x80|_0x43356b>>>0xc&0x3f),_0x2dab2b[_0x186324++]=0x80|_0x43356b>>>0x6&0x3f),_0x2dab2b[_0x186324++]=0x80|0x3f&_0x43356b);return _0x2dab2b;}(_0x3f3427);},_0x4dccf2['utf8decode']=function(_0x35602b){return _0x183e57['nodebuffer']?_0x30e696['transformTo']('nodebuffer',_0x35602b)['toString']('utf-8'):function(_0x3ff20f){var _0x353565,_0x2d0636,_0x17813c,_0x590052,_0x25988b=_0x3ff20f['length'],_0x4cb0c4=new Array(0x2*_0x25988b);for(_0x353565=_0x2d0636=0x0;_0x353565<_0x25988b;)if((_0x17813c=_0x3ff20f[_0x353565++])<0x80)_0x4cb0c4[_0x2d0636++]=_0x17813c;else {if(0x4<(_0x590052=_0x30b5a8[_0x17813c]))_0x4cb0c4[_0x2d0636++]=0xfffd,_0x353565+=_0x590052-0x1;else {for(_0x17813c&=0x2===_0x590052?0x1f:0x3===_0x590052?0xf:0x7;0x1<_0x590052&&_0x353565<_0x25988b;)_0x17813c=_0x17813c<<0x6|0x3f&_0x3ff20f[_0x353565++],_0x590052--;0x1<_0x590052?_0x4cb0c4[_0x2d0636++]=0xfffd:_0x17813c<0x10000?_0x4cb0c4[_0x2d0636++]=_0x17813c:(_0x17813c-=0x10000,_0x4cb0c4[_0x2d0636++]=0xd800|_0x17813c>>0xa&0x3ff,_0x4cb0c4[_0x2d0636++]=0xdc00|0x3ff&_0x17813c);}}return _0x4cb0c4['length']!==_0x2d0636&&(_0x4cb0c4['subarray']?_0x4cb0c4=_0x4cb0c4['subarray'](0x0,_0x2d0636):_0x4cb0c4['length']=_0x2d0636),_0x30e696['applyFromCharCode'](_0x4cb0c4);}(_0x35602b=_0x30e696['transformTo'](_0x183e57['uint8array']?'uint8array':'array',_0x35602b));},_0x30e696['inherits'](_0x49a5ac,_0x48d361),_0x49a5ac['prototype']['processChunk']=function(_0x395754){var _0x33e862=_0x30e696['transformTo'](_0x183e57['uint8array']?'uint8array':'array',_0x395754['data']);if(this['leftOver']&&this['leftOver']['length']){if(_0x183e57['uint8array']){var _0x1161f8=_0x33e862;(_0x33e862=new Uint8Array(_0x1161f8['length']+this['leftOver']['length']))['set'](this['leftOver'],0x0),_0x33e862['set'](_0x1161f8,this['leftOver']['length']);}else _0x33e862=this['leftOver']['concat'](_0x33e862);this['leftOver']=null;}var _0x1ec82e=function(_0x4b2cc7,_0x441057){var _0x4f1637;for((_0x441057=_0x441057||_0x4b2cc7['length'])>_0x4b2cc7['length']&&(_0x441057=_0x4b2cc7['length']),_0x4f1637=_0x441057-0x1;0x0<=_0x4f1637&&0x80==(0xc0&_0x4b2cc7[_0x4f1637]);)_0x4f1637--;return _0x4f1637<0x0?_0x441057:0x0===_0x4f1637?_0x441057:_0x4f1637+_0x30b5a8[_0x4b2cc7[_0x4f1637]]>_0x441057?_0x4f1637:_0x441057;}(_0x33e862),_0x467d2d=_0x33e862;_0x1ec82e!==_0x33e862['length']&&(_0x183e57['uint8array']?(_0x467d2d=_0x33e862['subarray'](0x0,_0x1ec82e),this['leftOver']=_0x33e862['subarray'](_0x1ec82e,_0x33e862['length'])):(_0x467d2d=_0x33e862['slice'](0x0,_0x1ec82e),this['leftOver']=_0x33e862['slice'](_0x1ec82e,_0x33e862['length']))),this['push']({'data':_0x4dccf2['utf8decode'](_0x467d2d),'meta':_0x395754['meta']});},_0x49a5ac['prototype']['flush']=function(){this['leftOver']&&this['leftOver']['length']&&(this['push']({'data':_0x4dccf2['utf8decode'](this['leftOver']),'meta':{}}),this['leftOver']=null);},_0x4dccf2['Utf8DecodeWorker']=_0x49a5ac,_0x30e696['inherits'](_0x7124e2,_0x48d361),_0x7124e2['prototype']['processChunk']=function(_0x2fb42b){this['push']({'data':_0x4dccf2['utf8encode'](_0x2fb42b['data']),'meta':_0x2fb42b['meta']});},_0x4dccf2['Utf8EncodeWorker']=_0x7124e2;},{'./nodejsUtils':0xe,'./stream/GenericWorker':0x1c,'./support':0x1e,'./utils':0x20}],0x20:[function(_0x3d1f8e,_0x37693b,_0x14ea3b){var _0x4cc5d3=_0x3d1f8e('./support'),_0x24397b=_0x3d1f8e('./base64'),_0x127d64=_0x3d1f8e('./nodejsUtils'),_0x2abdeb=_0x3d1f8e('./external');function _0x20f2c6(_0x22d2f0){return _0x22d2f0;}function _0x45a149(_0x167a4e,_0xd30ae9){for(var _0x3a3b3c=0x0;_0x3a3b3c<_0x167a4e['length'];++_0x3a3b3c)_0xd30ae9[_0x3a3b3c]=0xff&_0x167a4e['charCodeAt'](_0x3a3b3c);return _0xd30ae9;}_0x3d1f8e('setimmediate'),_0x14ea3b['newBlob']=function(_0x5cc88b,_0xc5b53a){_0x14ea3b['checkSupport']('blob');try{return new Blob([_0x5cc88b],{'type':_0xc5b53a});}catch(_0x3cc9f0){try{var _0x347239=new(self['BlobBuilder']||self['WebKitBlobBuilder']||self['MozBlobBuilder']||self['MSBlobBuilder'])();return _0x347239['append'](_0x5cc88b),_0x347239['getBlob'](_0xc5b53a);}catch(_0x49550a){throw new Error('Bug\x20:\x20can\x27t\x20construct\x20the\x20Blob.');}}};var _0x3b897c={'stringifyByChunk':function(_0x1574b0,_0x471e07,_0x270fee){var _0x51e01e=[],_0x58eae1=0x0,_0x497058=_0x1574b0['length'];if(_0x497058<=_0x270fee)return String['fromCharCode']['apply'](null,_0x1574b0);for(;_0x58eae1<_0x497058;)'array'===_0x471e07||'nodebuffer'===_0x471e07?_0x51e01e['push'](String['fromCharCode']['apply'](null,_0x1574b0['slice'](_0x58eae1,Math['min'](_0x58eae1+_0x270fee,_0x497058)))):_0x51e01e['push'](String['fromCharCode']['apply'](null,_0x1574b0['subarray'](_0x58eae1,Math['min'](_0x58eae1+_0x270fee,_0x497058)))),_0x58eae1+=_0x270fee;return _0x51e01e['join']('');},'stringifyByChar':function(_0x57fc18){for(var _0x3d2161='',_0x1a445e=0x0;_0x1a445e<_0x57fc18['length'];_0x1a445e++)_0x3d2161+=String['fromCharCode'](_0x57fc18[_0x1a445e]);return _0x3d2161;},'applyCanBeUsed':{'uint8array':(function(){try{return _0x4cc5d3['uint8array']&&0x1===String['fromCharCode']['apply'](null,new Uint8Array(0x1))['length'];}catch(_0x23907b){return !0x1;}}()),'nodebuffer':(function(){try{return _0x4cc5d3['nodebuffer']&&0x1===String['fromCharCode']['apply'](null,_0x127d64['allocBuffer'](0x1))['length'];}catch(_0x2dae85){return !0x1;}}())}};function _0x247cde(_0x1686e0){var _0x2060d2=0x10000,_0x9baec5=_0x14ea3b['getTypeOf'](_0x1686e0),_0x1ecdcd=!0x0;if('uint8array'===_0x9baec5?_0x1ecdcd=_0x3b897c['applyCanBeUsed']['uint8array']:'nodebuffer'===_0x9baec5&&(_0x1ecdcd=_0x3b897c['applyCanBeUsed']['nodebuffer']),_0x1ecdcd){for(;0x1<_0x2060d2;)try{return _0x3b897c['stringifyByChunk'](_0x1686e0,_0x9baec5,_0x2060d2);}catch(_0x4b88d5){_0x2060d2=Math['floor'](_0x2060d2/0x2);}}return _0x3b897c['stringifyByChar'](_0x1686e0);}function _0x5612ab(_0x558ff3,_0x9f5888){for(var _0xae4963=0x0;_0xae4963<_0x558ff3['length'];_0xae4963++)_0x9f5888[_0xae4963]=_0x558ff3[_0xae4963];return _0x9f5888;}_0x14ea3b['applyFromCharCode']=_0x247cde;var _0x153c1e={};_0x153c1e['string']={'string':_0x20f2c6,'array':function(_0x565843){return _0x45a149(_0x565843,new Array(_0x565843['length']));},'arraybuffer':function(_0x480826){return _0x153c1e['string']['uint8array'](_0x480826)['buffer'];},'uint8array':function(_0x118909){return _0x45a149(_0x118909,new Uint8Array(_0x118909['length']));},'nodebuffer':function(_0x548a51){return _0x45a149(_0x548a51,_0x127d64['allocBuffer'](_0x548a51['length']));}},_0x153c1e['array']={'string':_0x247cde,'array':_0x20f2c6,'arraybuffer':function(_0x2da1c2){return new Uint8Array(_0x2da1c2)['buffer'];},'uint8array':function(_0x3e340c){return new Uint8Array(_0x3e340c);},'nodebuffer':function(_0x190aa7){return _0x127d64['newBufferFrom'](_0x190aa7);}},_0x153c1e['arraybuffer']={'string':function(_0x19bf96){return _0x247cde(new Uint8Array(_0x19bf96));},'array':function(_0x1a0a5e){return _0x5612ab(new Uint8Array(_0x1a0a5e),new Array(_0x1a0a5e['byteLength']));},'arraybuffer':_0x20f2c6,'uint8array':function(_0x5d62de){return new Uint8Array(_0x5d62de);},'nodebuffer':function(_0x749037){return _0x127d64['newBufferFrom'](new Uint8Array(_0x749037));}},_0x153c1e['uint8array']={'string':_0x247cde,'array':function(_0x3ed4b1){return _0x5612ab(_0x3ed4b1,new Array(_0x3ed4b1['length']));},'arraybuffer':function(_0x5917b0){return _0x5917b0['buffer'];},'uint8array':_0x20f2c6,'nodebuffer':function(_0x4cb65f){return _0x127d64['newBufferFrom'](_0x4cb65f);}},_0x153c1e['nodebuffer']={'string':_0x247cde,'array':function(_0x422a86){return _0x5612ab(_0x422a86,new Array(_0x422a86['length']));},'arraybuffer':function(_0x5160ca){return _0x153c1e['nodebuffer']['uint8array'](_0x5160ca)['buffer'];},'uint8array':function(_0x3e7a5e){return _0x5612ab(_0x3e7a5e,new Uint8Array(_0x3e7a5e['length']));},'nodebuffer':_0x20f2c6},_0x14ea3b['transformTo']=function(_0x4a1b4a,_0x4eece5){if(_0x4eece5=_0x4eece5||'',!_0x4a1b4a)return _0x4eece5;_0x14ea3b['checkSupport'](_0x4a1b4a);var _0x102073=_0x14ea3b['getTypeOf'](_0x4eece5);return _0x153c1e[_0x102073][_0x4a1b4a](_0x4eece5);},_0x14ea3b['resolve']=function(_0x5ed7c0){for(var _0xa50d27=_0x5ed7c0['split']('/'),_0x3305d8=[],_0xf04e0c=0x0;_0xf04e0c<_0xa50d27['length'];_0xf04e0c++){var _0x164f72=_0xa50d27[_0xf04e0c];'.'===_0x164f72||''===_0x164f72&&0x0!==_0xf04e0c&&_0xf04e0c!==_0xa50d27['length']-0x1||('..'===_0x164f72?_0x3305d8['pop']():_0x3305d8['push'](_0x164f72));}return _0x3305d8['join']('/');},_0x14ea3b['getTypeOf']=function(_0x416832){return 'string'==typeof _0x416832?'string':'[object\x20Array]'===Object['prototype']['toString']['call'](_0x416832)?'array':_0x4cc5d3['nodebuffer']&&_0x127d64['isBuffer'](_0x416832)?'nodebuffer':_0x4cc5d3['uint8array']&&_0x416832 instanceof Uint8Array?'uint8array':_0x4cc5d3['arraybuffer']&&_0x416832 instanceof ArrayBuffer?'arraybuffer':void 0x0;},_0x14ea3b['checkSupport']=function(_0x49f25f){if(!_0x4cc5d3[_0x49f25f['toLowerCase']()])throw new Error(_0x49f25f+'\x20is\x20not\x20supported\x20by\x20this\x20platform');},_0x14ea3b['MAX_VALUE_16BITS']=0xffff,_0x14ea3b['MAX_VALUE_32BITS']=-0x1,_0x14ea3b['pretty']=function(_0x52125c){var _0x3849d8,_0x5e3b06,_0x1d9691='';for(_0x5e3b06=0x0;_0x5e3b06<(_0x52125c||'')['length'];_0x5e3b06++)_0x1d9691+='\x5cx'+((_0x3849d8=_0x52125c['charCodeAt'](_0x5e3b06))<0x10?'0':'')+_0x3849d8['toString'](0x10)['toUpperCase']();return _0x1d9691;},_0x14ea3b['delay']=function(_0x59e217,_0x3fad12,_0x733ae1){setImmediate(function(){_0x59e217['apply'](_0x733ae1||null,_0x3fad12||[]);});},_0x14ea3b['inherits']=function(_0x3415e5,_0x4d1b9b){function _0x114689(){}_0x114689['prototype']=_0x4d1b9b['prototype'],_0x3415e5['prototype']=new _0x114689();},_0x14ea3b['extend']=function(){var _0x46088d,_0x20eafb,_0x1a89f6={};for(_0x46088d=0x0;_0x46088d<arguments['length'];_0x46088d++)for(_0x20eafb in arguments[_0x46088d])Object['prototype']['hasOwnProperty']['call'](arguments[_0x46088d],_0x20eafb)&&void 0x0===_0x1a89f6[_0x20eafb]&&(_0x1a89f6[_0x20eafb]=arguments[_0x46088d][_0x20eafb]);return _0x1a89f6;},_0x14ea3b['prepareContent']=function(_0x342b43,_0x5a9ff3,_0x25d97b,_0x3e5ddd,_0x1e7acc){return _0x2abdeb['Promise']['resolve'](_0x5a9ff3)['then'](function(_0x173439){return _0x4cc5d3['blob']&&(_0x173439 instanceof Blob||-0x1!==['[object\x20File]','[object\x20Blob]']['indexOf'](Object['prototype']['toString']['call'](_0x173439)))&&'undefined'!=typeof FileReader?new _0x2abdeb['Promise'](function(_0xfe7fa3,_0x4b722c){var _0x30cdd9=new FileReader();_0x30cdd9['onload']=function(_0x4d8d04){_0xfe7fa3(_0x4d8d04['target']['result']);},_0x30cdd9['onerror']=function(_0x2d997f){_0x4b722c(_0x2d997f['target']['error']);},_0x30cdd9['readAsArrayBuffer'](_0x173439);}):_0x173439;})['then'](function(_0x136253){var _0x3d7b82=_0x14ea3b['getTypeOf'](_0x136253);return _0x3d7b82?('arraybuffer'===_0x3d7b82?_0x136253=_0x14ea3b['transformTo']('uint8array',_0x136253):'string'===_0x3d7b82&&(_0x1e7acc?_0x136253=_0x24397b['decode'](_0x136253):_0x25d97b&&!0x0!==_0x3e5ddd&&(_0x136253=function(_0x334b88){return _0x45a149(_0x334b88,_0x4cc5d3['uint8array']?new Uint8Array(_0x334b88['length']):new Array(_0x334b88['length']));}(_0x136253))),_0x136253):_0x2abdeb['Promise']['reject'](new Error('Can\x27t\x20read\x20the\x20data\x20of\x20\x27'+_0x342b43+'\x27.\x20Is\x20it\x20in\x20a\x20supported\x20JavaScript\x20type\x20(String,\x20Blob,\x20ArrayBuffer,\x20etc)\x20?'));});};},{'./base64':0x1,'./external':0x6,'./nodejsUtils':0xe,'./support':0x1e,'setimmediate':0x36}],0x21:[function(_0x281be3,_0x2698f1,_0x1392df){var _0x44e61b=_0x281be3('./reader/readerFor'),_0xf68f64=_0x281be3('./utils'),_0x383ac7=_0x281be3('./signature'),_0x557762=_0x281be3('./zipEntry'),_0x13c3e8=_0x281be3('./support');function _0x38b705(_0x114e16){this['files']=[],this['loadOptions']=_0x114e16;}_0x38b705['prototype']={'checkSignature':function(_0x46c051){if(!this['reader']['readAndCheckSignature'](_0x46c051)){this['reader']['index']-=0x4;var _0x141c5f=this['reader']['readString'](0x4);throw new Error('Corrupted\x20zip\x20or\x20bug:\x20unexpected\x20signature\x20('+_0xf68f64['pretty'](_0x141c5f)+',\x20expected\x20'+_0xf68f64['pretty'](_0x46c051)+')');}},'isSignature':function(_0x58eb31,_0x72a478){var _0x593a35=this['reader']['index'];this['reader']['setIndex'](_0x58eb31);var _0x6588c9=this['reader']['readString'](0x4)===_0x72a478;return this['reader']['setIndex'](_0x593a35),_0x6588c9;},'readBlockEndOfCentral':function(){this['diskNumber']=this['reader']['readInt'](0x2),this['diskWithCentralDirStart']=this['reader']['readInt'](0x2),this['centralDirRecordsOnThisDisk']=this['reader']['readInt'](0x2),this['centralDirRecords']=this['reader']['readInt'](0x2),this['centralDirSize']=this['reader']['readInt'](0x4),this['centralDirOffset']=this['reader']['readInt'](0x4),this['zipCommentLength']=this['reader']['readInt'](0x2);var _0x2a2385=this['reader']['readData'](this['zipCommentLength']),_0x3e2e49=_0x13c3e8['uint8array']?'uint8array':'array',_0x323f69=_0xf68f64['transformTo'](_0x3e2e49,_0x2a2385);this['zipComment']=this['loadOptions']['decodeFileName'](_0x323f69);},'readBlockZip64EndOfCentral':function(){this['zip64EndOfCentralSize']=this['reader']['readInt'](0x8),this['reader']['skip'](0x4),this['diskNumber']=this['reader']['readInt'](0x4),this['diskWithCentralDirStart']=this['reader']['readInt'](0x4),this['centralDirRecordsOnThisDisk']=this['reader']['readInt'](0x8),this['centralDirRecords']=this['reader']['readInt'](0x8),this['centralDirSize']=this['reader']['readInt'](0x8),this['centralDirOffset']=this['reader']['readInt'](0x8),this['zip64ExtensibleData']={};for(var _0x10bfdf,_0x4edd9a,_0x1f049e,_0x38ff10=this['zip64EndOfCentralSize']-0x2c;0x0<_0x38ff10;)_0x10bfdf=this['reader']['readInt'](0x2),_0x4edd9a=this['reader']['readInt'](0x4),_0x1f049e=this['reader']['readData'](_0x4edd9a),this['zip64ExtensibleData'][_0x10bfdf]={'id':_0x10bfdf,'length':_0x4edd9a,'value':_0x1f049e};},'readBlockZip64EndOfCentralLocator':function(){if(this['diskWithZip64CentralDirStart']=this['reader']['readInt'](0x4),this['relativeOffsetEndOfZip64CentralDir']=this['reader']['readInt'](0x8),this['disksCount']=this['reader']['readInt'](0x4),0x1<this['disksCount'])throw new Error('Multi-volumes\x20zip\x20are\x20not\x20supported');},'readLocalFiles':function(){var _0x248c41,_0x493cfc;for(_0x248c41=0x0;_0x248c41<this['files']['length'];_0x248c41++)_0x493cfc=this['files'][_0x248c41],this['reader']['setIndex'](_0x493cfc['localHeaderOffset']),this['checkSignature'](_0x383ac7['LOCAL_FILE_HEADER']),_0x493cfc['readLocalPart'](this['reader']),_0x493cfc['handleUTF8'](),_0x493cfc['processAttributes']();},'readCentralDir':function(){var _0x24ee8a;for(this['reader']['setIndex'](this['centralDirOffset']);this['reader']['readAndCheckSignature'](_0x383ac7['CENTRAL_FILE_HEADER']);)(_0x24ee8a=new _0x557762({'zip64':this['zip64']},this['loadOptions']))['readCentralPart'](this['reader']),this['files']['push'](_0x24ee8a);if(this['centralDirRecords']!==this['files']['length']&&0x0!==this['centralDirRecords']&&0x0===this['files']['length'])throw new Error('Corrupted\x20zip\x20or\x20bug:\x20expected\x20'+this['centralDirRecords']+'\x20records\x20in\x20central\x20dir,\x20got\x20'+this['files']['length']);},'readEndOfCentral':function(){var _0x5037f7=this['reader']['lastIndexOfSignature'](_0x383ac7['CENTRAL_DIRECTORY_END']);if(_0x5037f7<0x0)throw !this['isSignature'](0x0,_0x383ac7['LOCAL_FILE_HEADER'])?new Error('Can\x27t\x20find\x20end\x20of\x20central\x20directory\x20:\x20is\x20this\x20a\x20zip\x20file\x20?\x20If\x20it\x20is,\x20see\x20https://stuk.github.io/jszip/documentation/howto/read_zip.html'):new Error('Corrupted\x20zip:\x20can\x27t\x20find\x20end\x20of\x20central\x20directory');this['reader']['setIndex'](_0x5037f7);var _0x34a49f=_0x5037f7;if(this['checkSignature'](_0x383ac7['CENTRAL_DIRECTORY_END']),this['readBlockEndOfCentral'](),this['diskNumber']===_0xf68f64['MAX_VALUE_16BITS']||this['diskWithCentralDirStart']===_0xf68f64['MAX_VALUE_16BITS']||this['centralDirRecordsOnThisDisk']===_0xf68f64['MAX_VALUE_16BITS']||this['centralDirRecords']===_0xf68f64['MAX_VALUE_16BITS']||this['centralDirSize']===_0xf68f64['MAX_VALUE_32BITS']||this['centralDirOffset']===_0xf68f64['MAX_VALUE_32BITS']){if(this['zip64']=!0x0,(_0x5037f7=this['reader']['lastIndexOfSignature'](_0x383ac7['ZIP64_CENTRAL_DIRECTORY_LOCATOR']))<0x0)throw new Error('Corrupted\x20zip:\x20can\x27t\x20find\x20the\x20ZIP64\x20end\x20of\x20central\x20directory\x20locator');if(this['reader']['setIndex'](_0x5037f7),this['checkSignature'](_0x383ac7['ZIP64_CENTRAL_DIRECTORY_LOCATOR']),this['readBlockZip64EndOfCentralLocator'](),!this['isSignature'](this['relativeOffsetEndOfZip64CentralDir'],_0x383ac7['ZIP64_CENTRAL_DIRECTORY_END'])&&(this['relativeOffsetEndOfZip64CentralDir']=this['reader']['lastIndexOfSignature'](_0x383ac7['ZIP64_CENTRAL_DIRECTORY_END']),this['relativeOffsetEndOfZip64CentralDir']<0x0))throw new Error('Corrupted\x20zip:\x20can\x27t\x20find\x20the\x20ZIP64\x20end\x20of\x20central\x20directory');this['reader']['setIndex'](this['relativeOffsetEndOfZip64CentralDir']),this['checkSignature'](_0x383ac7['ZIP64_CENTRAL_DIRECTORY_END']),this['readBlockZip64EndOfCentral']();}var _0x350211=this['centralDirOffset']+this['centralDirSize'];this['zip64']&&(_0x350211+=0x14,_0x350211+=0xc+this['zip64EndOfCentralSize']);var _0x28c94c=_0x34a49f-_0x350211;if(0x0<_0x28c94c)this['isSignature'](_0x34a49f,_0x383ac7['CENTRAL_FILE_HEADER'])||(this['reader']['zero']=_0x28c94c);else {if(_0x28c94c<0x0)throw new Error('Corrupted\x20zip:\x20missing\x20'+Math['abs'](_0x28c94c)+'\x20bytes.');}},'prepareReader':function(_0x42c2b5){this['reader']=_0x44e61b(_0x42c2b5);},'load':function(_0x206eb6){this['prepareReader'](_0x206eb6),this['readEndOfCentral'](),this['readCentralDir'](),this['readLocalFiles']();}},_0x2698f1['exports']=_0x38b705;},{'./reader/readerFor':0x16,'./signature':0x17,'./support':0x1e,'./utils':0x20,'./zipEntry':0x22}],0x22:[function(_0x192b32,_0x1367c0,_0x355100){var _0x1baf74=_0x192b32('./reader/readerFor'),_0x11a787=_0x192b32('./utils'),_0x284076=_0x192b32('./compressedObject'),_0x2aee56=_0x192b32('./crc32'),_0x203ca4=_0x192b32('./utf8'),_0x387c63=_0x192b32('./compressions'),_0x15f198=_0x192b32('./support');function _0xe528dd(_0x427ed5,_0x21eb48){this['options']=_0x427ed5,this['loadOptions']=_0x21eb48;}_0xe528dd['prototype']={'isEncrypted':function(){return 0x1==(0x1&this['bitFlag']);},'useUTF8':function(){return 0x800==(0x800&this['bitFlag']);},'readLocalPart':function(_0x17595f){var _0x3c54e5,_0x5ea1e8;if(_0x17595f['skip'](0x16),this['fileNameLength']=_0x17595f['readInt'](0x2),_0x5ea1e8=_0x17595f['readInt'](0x2),this['fileName']=_0x17595f['readData'](this['fileNameLength']),_0x17595f['skip'](_0x5ea1e8),-0x1===this['compressedSize']||-0x1===this['uncompressedSize'])throw new Error('Bug\x20or\x20corrupted\x20zip\x20:\x20didn\x27t\x20get\x20enough\x20information\x20from\x20the\x20central\x20directory\x20(compressedSize\x20===\x20-1\x20||\x20uncompressedSize\x20===\x20-1)');if(null===(_0x3c54e5=function(_0x2b6495){for(var _0x280032 in _0x387c63)if(Object['prototype']['hasOwnProperty']['call'](_0x387c63,_0x280032)&&_0x387c63[_0x280032]['magic']===_0x2b6495)return _0x387c63[_0x280032];return null;}(this['compressionMethod'])))throw new Error('Corrupted\x20zip\x20:\x20compression\x20'+_0x11a787['pretty'](this['compressionMethod'])+'\x20unknown\x20(inner\x20file\x20:\x20'+_0x11a787['transformTo']('string',this['fileName'])+')');this['decompressed']=new _0x284076(this['compressedSize'],this['uncompressedSize'],this['crc32'],_0x3c54e5,_0x17595f['readData'](this['compressedSize']));},'readCentralPart':function(_0x344fdb){this['versionMadeBy']=_0x344fdb['readInt'](0x2),_0x344fdb['skip'](0x2),this['bitFlag']=_0x344fdb['readInt'](0x2),this['compressionMethod']=_0x344fdb['readString'](0x2),this['date']=_0x344fdb['readDate'](),this['crc32']=_0x344fdb['readInt'](0x4),this['compressedSize']=_0x344fdb['readInt'](0x4),this['uncompressedSize']=_0x344fdb['readInt'](0x4);var _0x27fe83=_0x344fdb['readInt'](0x2);if(this['extraFieldsLength']=_0x344fdb['readInt'](0x2),this['fileCommentLength']=_0x344fdb['readInt'](0x2),this['diskNumberStart']=_0x344fdb['readInt'](0x2),this['internalFileAttributes']=_0x344fdb['readInt'](0x2),this['externalFileAttributes']=_0x344fdb['readInt'](0x4),this['localHeaderOffset']=_0x344fdb['readInt'](0x4),this['isEncrypted']())throw new Error('Encrypted\x20zip\x20are\x20not\x20supported');_0x344fdb['skip'](_0x27fe83),this['readExtraFields'](_0x344fdb),this['parseZIP64ExtraField'](_0x344fdb),this['fileComment']=_0x344fdb['readData'](this['fileCommentLength']);},'processAttributes':function(){this['unixPermissions']=null,this['dosPermissions']=null;var _0x50df9f=this['versionMadeBy']>>0x8;this['dir']=!!(0x10&this['externalFileAttributes']),0x0==_0x50df9f&&(this['dosPermissions']=0x3f&this['externalFileAttributes']),0x3==_0x50df9f&&(this['unixPermissions']=this['externalFileAttributes']>>0x10&0xffff),this['dir']||'/'!==this['fileNameStr']['slice'](-0x1)||(this['dir']=!0x0);},'parseZIP64ExtraField':function(){if(this['extraFields'][0x1]){var _0x38f586=_0x1baf74(this['extraFields'][0x1]['value']);this['uncompressedSize']===_0x11a787['MAX_VALUE_32BITS']&&(this['uncompressedSize']=_0x38f586['readInt'](0x8)),this['compressedSize']===_0x11a787['MAX_VALUE_32BITS']&&(this['compressedSize']=_0x38f586['readInt'](0x8)),this['localHeaderOffset']===_0x11a787['MAX_VALUE_32BITS']&&(this['localHeaderOffset']=_0x38f586['readInt'](0x8)),this['diskNumberStart']===_0x11a787['MAX_VALUE_32BITS']&&(this['diskNumberStart']=_0x38f586['readInt'](0x4));}},'readExtraFields':function(_0x46a2e0){var _0x4dbeb,_0x297e34,_0x4571f5,_0x229a48=_0x46a2e0['index']+this['extraFieldsLength'];for(this['extraFields']||(this['extraFields']={});_0x46a2e0['index']+0x4<_0x229a48;)_0x4dbeb=_0x46a2e0['readInt'](0x2),_0x297e34=_0x46a2e0['readInt'](0x2),_0x4571f5=_0x46a2e0['readData'](_0x297e34),this['extraFields'][_0x4dbeb]={'id':_0x4dbeb,'length':_0x297e34,'value':_0x4571f5};_0x46a2e0['setIndex'](_0x229a48);},'handleUTF8':function(){var _0x33ab64=_0x15f198['uint8array']?'uint8array':'array';if(this['useUTF8']())this['fileNameStr']=_0x203ca4['utf8decode'](this['fileName']),this['fileCommentStr']=_0x203ca4['utf8decode'](this['fileComment']);else {var _0x440b34=this['findExtraFieldUnicodePath']();if(null!==_0x440b34)this['fileNameStr']=_0x440b34;else {var _0x4d8bc4=_0x11a787['transformTo'](_0x33ab64,this['fileName']);this['fileNameStr']=this['loadOptions']['decodeFileName'](_0x4d8bc4);}var _0x527354=this['findExtraFieldUnicodeComment']();if(null!==_0x527354)this['fileCommentStr']=_0x527354;else {var _0x5277b7=_0x11a787['transformTo'](_0x33ab64,this['fileComment']);this['fileCommentStr']=this['loadOptions']['decodeFileName'](_0x5277b7);}}},'findExtraFieldUnicodePath':function(){var _0xd8ad59=this['extraFields'][0x7075];if(_0xd8ad59){var _0x34675f=_0x1baf74(_0xd8ad59['value']);return 0x1!==_0x34675f['readInt'](0x1)?null:_0x2aee56(this['fileName'])!==_0x34675f['readInt'](0x4)?null:_0x203ca4['utf8decode'](_0x34675f['readData'](_0xd8ad59['length']-0x5));}return null;},'findExtraFieldUnicodeComment':function(){var _0x5772c1=this['extraFields'][0x6375];if(_0x5772c1){var _0x54c07d=_0x1baf74(_0x5772c1['value']);return 0x1!==_0x54c07d['readInt'](0x1)?null:_0x2aee56(this['fileComment'])!==_0x54c07d['readInt'](0x4)?null:_0x203ca4['utf8decode'](_0x54c07d['readData'](_0x5772c1['length']-0x5));}return null;}},_0x1367c0['exports']=_0xe528dd;},{'./compressedObject':0x2,'./compressions':0x3,'./crc32':0x4,'./reader/readerFor':0x16,'./support':0x1e,'./utf8':0x1f,'./utils':0x20}],0x23:[function(_0x205d0e,_0x15670d,_0xbfd2f4){function _0x328879(_0x51ecb4,_0x310bfc,_0x2dc8c3){this['name']=_0x51ecb4,this['dir']=_0x2dc8c3['dir'],this['date']=_0x2dc8c3['date'],this['comment']=_0x2dc8c3['comment'],this['unixPermissions']=_0x2dc8c3['unixPermissions'],this['dosPermissions']=_0x2dc8c3['dosPermissions'],this['_data']=_0x310bfc,this['_dataBinary']=_0x2dc8c3['binary'],this['options']={'compression':_0x2dc8c3['compression'],'compressionOptions':_0x2dc8c3['compressionOptions']};}var _0x4096e6=_0x205d0e('./stream/StreamHelper'),_0x196956=_0x205d0e('./stream/DataWorker'),_0x54cd17=_0x205d0e('./utf8'),_0x312ddd=_0x205d0e('./compressedObject'),_0x45bb6c=_0x205d0e('./stream/GenericWorker');_0x328879['prototype']={'internalStream':function(_0x465f9b){var _0x2de837=null,_0xe3d53e='string';try{if(!_0x465f9b)throw new Error('No\x20output\x20type\x20specified.');var _0x106809='string'===(_0xe3d53e=_0x465f9b['toLowerCase']())||'text'===_0xe3d53e;'binarystring'!==_0xe3d53e&&'text'!==_0xe3d53e||(_0xe3d53e='string'),_0x2de837=this['_decompressWorker']();var _0x49a4a=!this['_dataBinary'];_0x49a4a&&!_0x106809&&(_0x2de837=_0x2de837['pipe'](new _0x54cd17['Utf8EncodeWorker']())),!_0x49a4a&&_0x106809&&(_0x2de837=_0x2de837['pipe'](new _0x54cd17['Utf8DecodeWorker']()));}catch(_0x27e509){(_0x2de837=new _0x45bb6c('error'))['error'](_0x27e509);}return new _0x4096e6(_0x2de837,_0xe3d53e,'');},'async':function(_0x27abeb,_0x3acd0e){return this['internalStream'](_0x27abeb)['accumulate'](_0x3acd0e);},'nodeStream':function(_0x3b82b1,_0x493846){return this['internalStream'](_0x3b82b1||'nodebuffer')['toNodejsStream'](_0x493846);},'_compressWorker':function(_0x215bee,_0x6c05f0){if(this['_data']instanceof _0x312ddd&&this['_data']['compression']['magic']===_0x215bee['magic'])return this['_data']['getCompressedWorker']();var _0x563b0b=this['_decompressWorker']();return this['_dataBinary']||(_0x563b0b=_0x563b0b['pipe'](new _0x54cd17['Utf8EncodeWorker']())),_0x312ddd['createWorkerFrom'](_0x563b0b,_0x215bee,_0x6c05f0);},'_decompressWorker':function(){return this['_data']instanceof _0x312ddd?this['_data']['getContentWorker']():this['_data']instanceof _0x45bb6c?this['_data']:new _0x196956(this['_data']);}};for(var _0xd5f89a=['asText','asBinary','asNodeBuffer','asUint8Array','asArrayBuffer'],_0x362d77=function(){throw new Error('This\x20method\x20has\x20been\x20removed\x20in\x20JSZip\x203.0,\x20please\x20check\x20the\x20upgrade\x20guide.');},_0x5583b7=0x0;_0x5583b7<_0xd5f89a['length'];_0x5583b7++)_0x328879['prototype'][_0xd5f89a[_0x5583b7]]=_0x362d77;_0x15670d['exports']=_0x328879;},{'./compressedObject':0x2,'./stream/DataWorker':0x1b,'./stream/GenericWorker':0x1c,'./stream/StreamHelper':0x1d,'./utf8':0x1f}],0x24:[function(_0x3c092b,_0x219541,_0x53cd9a){(function(_0x2bcb24){var _0x33f415,_0x55a3ca,_0x1dc792=_0x2bcb24['MutationObserver']||_0x2bcb24['WebKitMutationObserver'];if(_0x1dc792){var _0x5d98e3=0x0,_0x50dd5f=new _0x1dc792(_0x17d690),_0x4c2fb=_0x2bcb24['document']['createTextNode']('');_0x50dd5f['observe'](_0x4c2fb,{'characterData':!0x0}),_0x33f415=function(){_0x4c2fb['data']=_0x5d98e3=++_0x5d98e3%0x2;};}else {if(_0x2bcb24['setImmediate']||void 0x0===_0x2bcb24['MessageChannel'])_0x33f415='document'in _0x2bcb24&&'onreadystatechange'in _0x2bcb24['document']['createElement']('script')?function(){var _0x5d6741=_0x2bcb24['document']['createElement']('script');_0x5d6741['onreadystatechange']=function(){_0x17d690(),_0x5d6741['onreadystatechange']=null,_0x5d6741['parentNode']['removeChild'](_0x5d6741),_0x5d6741=null;},_0x2bcb24['document']['documentElement']['appendChild'](_0x5d6741);}:function(){setTimeout(_0x17d690,0x0);};else {var _0x4461bd=new _0x2bcb24['MessageChannel']();_0x4461bd['port1']['onmessage']=_0x17d690,_0x33f415=function(){_0x4461bd['port2']['postMessage'](0x0);};}}var _0x5691f4=[];function _0x17d690(){var _0x5603d5,_0x259cdc;_0x55a3ca=!0x0;for(var _0x36d607=_0x5691f4['length'];_0x36d607;){for(_0x259cdc=_0x5691f4,_0x5691f4=[],_0x5603d5=-0x1;++_0x5603d5<_0x36d607;)_0x259cdc[_0x5603d5]();_0x36d607=_0x5691f4['length'];}_0x55a3ca=!0x1;}_0x219541['exports']=function(_0x4315bf){0x1!==_0x5691f4['push'](_0x4315bf)||_0x55a3ca||_0x33f415();};}['call'](this,'undefined'!=typeof commonjsGlobal?commonjsGlobal:'undefined'!=typeof self?self:'undefined'!=typeof window?window:{}));},{}],0x25:[function(_0x3ea29e,_0x1fbb17,_0x47de8f){var _0x4a67b1=_0x3ea29e('immediate');function _0x4e52aa(){}var _0x11ddb7={},_0x51aa6e=['REJECTED'],_0x3a2349=['FULFILLED'],_0x2eb042=['PENDING'];function _0x4c7b04(_0x2790e2){if('function'!=typeof _0x2790e2)throw new TypeError('resolver\x20must\x20be\x20a\x20function');this['state']=_0x2eb042,this['queue']=[],this['outcome']=void 0x0,_0x2790e2!==_0x4e52aa&&_0xc37679(this,_0x2790e2);}function _0x22a3fe(_0x3892b9,_0x157c81,_0x2cc5a1){this['promise']=_0x3892b9,'function'==typeof _0x157c81&&(this['onFulfilled']=_0x157c81,this['callFulfilled']=this['otherCallFulfilled']),'function'==typeof _0x2cc5a1&&(this['onRejected']=_0x2cc5a1,this['callRejected']=this['otherCallRejected']);}function _0x5c54fd(_0x3fbb2d,_0x2acbd8,_0x985e89){_0x4a67b1(function(){var _0x4f3722;try{_0x4f3722=_0x2acbd8(_0x985e89);}catch(_0x4f27db){return _0x11ddb7['reject'](_0x3fbb2d,_0x4f27db);}_0x4f3722===_0x3fbb2d?_0x11ddb7['reject'](_0x3fbb2d,new TypeError('Cannot\x20resolve\x20promise\x20with\x20itself')):_0x11ddb7['resolve'](_0x3fbb2d,_0x4f3722);});}function _0x152aa9(_0x35c6c5){var _0x16a1a4=_0x35c6c5&&_0x35c6c5['then'];if(_0x35c6c5&&('object'==typeof _0x35c6c5||'function'==typeof _0x35c6c5)&&'function'==typeof _0x16a1a4)return function(){_0x16a1a4['apply'](_0x35c6c5,arguments);};}function _0xc37679(_0x5059f0,_0x13eced){var _0x7f11c=!0x1;function _0x4327cf(_0x3c50b2){_0x7f11c||(_0x7f11c=!0x0,_0x11ddb7['reject'](_0x5059f0,_0x3c50b2));}function _0x3b1b64(_0x225cd6){_0x7f11c||(_0x7f11c=!0x0,_0x11ddb7['resolve'](_0x5059f0,_0x225cd6));}var _0x1fdf49=_0x13efd8(function(){_0x13eced(_0x3b1b64,_0x4327cf);});'error'===_0x1fdf49['status']&&_0x4327cf(_0x1fdf49['value']);}function _0x13efd8(_0xdc542,_0x308a59){var _0x5ba563={};try{_0x5ba563['value']=_0xdc542(_0x308a59),_0x5ba563['status']='success';}catch(_0xce8291){_0x5ba563['status']='error',_0x5ba563['value']=_0xce8291;}return _0x5ba563;}(_0x1fbb17['exports']=_0x4c7b04)['prototype']['finally']=function(_0x16d58b){if('function'!=typeof _0x16d58b)return this;var _0x467c68=this['constructor'];return this['then'](function(_0x3051bc){return _0x467c68['resolve'](_0x16d58b())['then'](function(){return _0x3051bc;});},function(_0x1bc8f8){return _0x467c68['resolve'](_0x16d58b())['then'](function(){throw _0x1bc8f8;});});},_0x4c7b04['prototype']['catch']=function(_0x3d5821){return this['then'](null,_0x3d5821);},_0x4c7b04['prototype']['then']=function(_0x3e9413,_0x393467){if('function'!=typeof _0x3e9413&&this['state']===_0x3a2349||'function'!=typeof _0x393467&&this['state']===_0x51aa6e)return this;var _0x532c78=new this['constructor'](_0x4e52aa);return this['state']!==_0x2eb042?_0x5c54fd(_0x532c78,this['state']===_0x3a2349?_0x3e9413:_0x393467,this['outcome']):this['queue']['push'](new _0x22a3fe(_0x532c78,_0x3e9413,_0x393467)),_0x532c78;},_0x22a3fe['prototype']['callFulfilled']=function(_0x34a219){_0x11ddb7['resolve'](this['promise'],_0x34a219);},_0x22a3fe['prototype']['otherCallFulfilled']=function(_0x16ccf4){_0x5c54fd(this['promise'],this['onFulfilled'],_0x16ccf4);},_0x22a3fe['prototype']['callRejected']=function(_0x36b4d7){_0x11ddb7['reject'](this['promise'],_0x36b4d7);},_0x22a3fe['prototype']['otherCallRejected']=function(_0xe288d2){_0x5c54fd(this['promise'],this['onRejected'],_0xe288d2);},_0x11ddb7['resolve']=function(_0x6edf6f,_0x4ab129){var _0x565254=_0x13efd8(_0x152aa9,_0x4ab129);if('error'===_0x565254['status'])return _0x11ddb7['reject'](_0x6edf6f,_0x565254['value']);var _0xfc09c5=_0x565254['value'];if(_0xfc09c5)_0xc37679(_0x6edf6f,_0xfc09c5);else {_0x6edf6f['state']=_0x3a2349,_0x6edf6f['outcome']=_0x4ab129;for(var _0x5b9415=-0x1,_0xeee0aa=_0x6edf6f['queue']['length'];++_0x5b9415<_0xeee0aa;)_0x6edf6f['queue'][_0x5b9415]['callFulfilled'](_0x4ab129);}return _0x6edf6f;},_0x11ddb7['reject']=function(_0x84a57c,_0x2bbb84){_0x84a57c['state']=_0x51aa6e,_0x84a57c['outcome']=_0x2bbb84;for(var _0x38cdd8=-0x1,_0x4d52c6=_0x84a57c['queue']['length'];++_0x38cdd8<_0x4d52c6;)_0x84a57c['queue'][_0x38cdd8]['callRejected'](_0x2bbb84);return _0x84a57c;},_0x4c7b04['resolve']=function(_0x2037df){if(_0x2037df instanceof this)return _0x2037df;return _0x11ddb7['resolve'](new this(_0x4e52aa),_0x2037df);},_0x4c7b04['reject']=function(_0x18b133){var _0x5b472e=new this(_0x4e52aa);return _0x11ddb7['reject'](_0x5b472e,_0x18b133);},_0x4c7b04['all']=function(_0x164edd){var _0x242c9c=this;if('[object\x20Array]'!==Object['prototype']['toString']['call'](_0x164edd))return this['reject'](new TypeError('must\x20be\x20an\x20array'));var _0x4c21df=_0x164edd['length'],_0x3dad1b=!0x1;if(!_0x4c21df)return this['resolve']([]);var _0x4afce8=new Array(_0x4c21df),_0x5b8e4a=0x0,_0x46170a=-0x1,_0x35543e=new this(_0x4e52aa);for(;++_0x46170a<_0x4c21df;)_0x4f2bf9(_0x164edd[_0x46170a],_0x46170a);return _0x35543e;function _0x4f2bf9(_0x1850ad,_0x4a745a){_0x242c9c['resolve'](_0x1850ad)['then'](function(_0x5dd92e){_0x4afce8[_0x4a745a]=_0x5dd92e,++_0x5b8e4a!==_0x4c21df||_0x3dad1b||(_0x3dad1b=!0x0,_0x11ddb7['resolve'](_0x35543e,_0x4afce8));},function(_0x9822a2){_0x3dad1b||(_0x3dad1b=!0x0,_0x11ddb7['reject'](_0x35543e,_0x9822a2));});}},_0x4c7b04['race']=function(_0x44b49c){var _0x5ba5a9=this;if('[object\x20Array]'!==Object['prototype']['toString']['call'](_0x44b49c))return this['reject'](new TypeError('must\x20be\x20an\x20array'));var _0x462b4d=_0x44b49c['length'],_0x2a0d21=!0x1;if(!_0x462b4d)return this['resolve']([]);var _0x242eb4=-0x1,_0x5b9957=new this(_0x4e52aa);for(;++_0x242eb4<_0x462b4d;)_0x385bc2=_0x44b49c[_0x242eb4],_0x5ba5a9['resolve'](_0x385bc2)['then'](function(_0xfab723){_0x2a0d21||(_0x2a0d21=!0x0,_0x11ddb7['resolve'](_0x5b9957,_0xfab723));},function(_0x1cd48d){_0x2a0d21||(_0x2a0d21=!0x0,_0x11ddb7['reject'](_0x5b9957,_0x1cd48d));});var _0x385bc2;return _0x5b9957;};},{'immediate':0x24}],0x26:[function(_0x3b57eb,_0x181e50,_0x19bc89){var _0x3d8767={};(0, _0x3b57eb('./lib/utils/common')['assign'])(_0x3d8767,_0x3b57eb('./lib/deflate'),_0x3b57eb('./lib/inflate'),_0x3b57eb('./lib/zlib/constants')),_0x181e50['exports']=_0x3d8767;},{'./lib/deflate':0x27,'./lib/inflate':0x28,'./lib/utils/common':0x29,'./lib/zlib/constants':0x2c}],0x27:[function(_0x14464c,_0xcc78fd,_0x24b52e){var _0x34736d=_0x14464c('./zlib/deflate'),_0x253e40=_0x14464c('./utils/common'),_0x5662a9=_0x14464c('./utils/strings'),_0x284b20=_0x14464c('./zlib/messages'),_0x2ca62f=_0x14464c('./zlib/zstream'),_0x1e9ba9=Object['prototype']['toString'],_0x78173=0x0,_0x307d8c=-0x1,_0x5df436=0x0,_0x157fb3=0x8;function _0x1e4553(_0x273bde){if(!(this instanceof _0x1e4553))return new _0x1e4553(_0x273bde);this['options']=_0x253e40['assign']({'level':_0x307d8c,'method':_0x157fb3,'chunkSize':0x4000,'windowBits':0xf,'memLevel':0x8,'strategy':_0x5df436,'to':''},_0x273bde||{});var _0x5d6341=this['options'];_0x5d6341['raw']&&0x0<_0x5d6341['windowBits']?_0x5d6341['windowBits']=-_0x5d6341['windowBits']:_0x5d6341['gzip']&&0x0<_0x5d6341['windowBits']&&_0x5d6341['windowBits']<0x10&&(_0x5d6341['windowBits']+=0x10),this['err']=0x0,this['msg']='',this['ended']=!0x1,this['chunks']=[],this['strm']=new _0x2ca62f(),this['strm']['avail_out']=0x0;var _0x3d1a5f=_0x34736d['deflateInit2'](this['strm'],_0x5d6341['level'],_0x5d6341['method'],_0x5d6341['windowBits'],_0x5d6341['memLevel'],_0x5d6341['strategy']);if(_0x3d1a5f!==_0x78173)throw new Error(_0x284b20[_0x3d1a5f]);if(_0x5d6341['header']&&_0x34736d['deflateSetHeader'](this['strm'],_0x5d6341['header']),_0x5d6341['dictionary']){var _0x4e370d;if(_0x4e370d='string'==typeof _0x5d6341['dictionary']?_0x5662a9['string2buf'](_0x5d6341['dictionary']):'[object\x20ArrayBuffer]'===_0x1e9ba9['call'](_0x5d6341['dictionary'])?new Uint8Array(_0x5d6341['dictionary']):_0x5d6341['dictionary'],(_0x3d1a5f=_0x34736d['deflateSetDictionary'](this['strm'],_0x4e370d))!==_0x78173)throw new Error(_0x284b20[_0x3d1a5f]);this['_dict_set']=!0x0;}}function _0x31090a(_0x202752,_0xd2981e){var _0x583b4f=new _0x1e4553(_0xd2981e);if(_0x583b4f['push'](_0x202752,!0x0),_0x583b4f['err'])throw _0x583b4f['msg']||_0x284b20[_0x583b4f['err']];return _0x583b4f['result'];}_0x1e4553['prototype']['push']=function(_0x2d30a8,_0x39c0d3){var _0x24a489,_0x4afb53,_0x404042=this['strm'],_0x3bc026=this['options']['chunkSize'];if(this['ended'])return !0x1;_0x4afb53=_0x39c0d3===~~_0x39c0d3?_0x39c0d3:!0x0===_0x39c0d3?0x4:0x0,'string'==typeof _0x2d30a8?_0x404042['input']=_0x5662a9['string2buf'](_0x2d30a8):'[object\x20ArrayBuffer]'===_0x1e9ba9['call'](_0x2d30a8)?_0x404042['input']=new Uint8Array(_0x2d30a8):_0x404042['input']=_0x2d30a8,_0x404042['next_in']=0x0,_0x404042['avail_in']=_0x404042['input']['length'];do{if(0x0===_0x404042['avail_out']&&(_0x404042['output']=new _0x253e40['Buf8'](_0x3bc026),_0x404042['next_out']=0x0,_0x404042['avail_out']=_0x3bc026),0x1!==(_0x24a489=_0x34736d['deflate'](_0x404042,_0x4afb53))&&_0x24a489!==_0x78173)return this['onEnd'](_0x24a489),!(this['ended']=!0x0);0x0!==_0x404042['avail_out']&&(0x0!==_0x404042['avail_in']||0x4!==_0x4afb53&&0x2!==_0x4afb53)||('string'===this['options']['to']?this['onData'](_0x5662a9['buf2binstring'](_0x253e40['shrinkBuf'](_0x404042['output'],_0x404042['next_out']))):this['onData'](_0x253e40['shrinkBuf'](_0x404042['output'],_0x404042['next_out'])));}while((0x0<_0x404042['avail_in']||0x0===_0x404042['avail_out'])&&0x1!==_0x24a489);return 0x4===_0x4afb53?(_0x24a489=_0x34736d['deflateEnd'](this['strm']),this['onEnd'](_0x24a489),this['ended']=!0x0,_0x24a489===_0x78173):0x2!==_0x4afb53||(this['onEnd'](_0x78173),!(_0x404042['avail_out']=0x0));},_0x1e4553['prototype']['onData']=function(_0x33dae8){this['chunks']['push'](_0x33dae8);},_0x1e4553['prototype']['onEnd']=function(_0x1b965e){_0x1b965e===_0x78173&&('string'===this['options']['to']?this['result']=this['chunks']['join'](''):this['result']=_0x253e40['flattenChunks'](this['chunks'])),this['chunks']=[],this['err']=_0x1b965e,this['msg']=this['strm']['msg'];},_0x24b52e['Deflate']=_0x1e4553,_0x24b52e['deflate']=_0x31090a,_0x24b52e['deflateRaw']=function(_0x5f3ed8,_0x2f013d){return (_0x2f013d=_0x2f013d||{})['raw']=!0x0,_0x31090a(_0x5f3ed8,_0x2f013d);},_0x24b52e['gzip']=function(_0x55de46,_0x3f3eef){return (_0x3f3eef=_0x3f3eef||{})['gzip']=!0x0,_0x31090a(_0x55de46,_0x3f3eef);};},{'./utils/common':0x29,'./utils/strings':0x2a,'./zlib/deflate':0x2e,'./zlib/messages':0x33,'./zlib/zstream':0x35}],0x28:[function(_0x1148fe,_0x42d9e3,_0x3c715b){var _0x523524=_0x1148fe('./zlib/inflate'),_0x4ce076=_0x1148fe('./utils/common'),_0x31e3d9=_0x1148fe('./utils/strings'),_0x5b4467=_0x1148fe('./zlib/constants'),_0x3681e1=_0x1148fe('./zlib/messages'),_0x44c6bf=_0x1148fe('./zlib/zstream'),_0x2afe63=_0x1148fe('./zlib/gzheader'),_0x27182d=Object['prototype']['toString'];function _0x105843(_0x515888){if(!(this instanceof _0x105843))return new _0x105843(_0x515888);this['options']=_0x4ce076['assign']({'chunkSize':0x4000,'windowBits':0x0,'to':''},_0x515888||{});var _0x559d09=this['options'];_0x559d09['raw']&&0x0<=_0x559d09['windowBits']&&_0x559d09['windowBits']<0x10&&(_0x559d09['windowBits']=-_0x559d09['windowBits'],0x0===_0x559d09['windowBits']&&(_0x559d09['windowBits']=-0xf)),!(0x0<=_0x559d09['windowBits']&&_0x559d09['windowBits']<0x10)||_0x515888&&_0x515888['windowBits']||(_0x559d09['windowBits']+=0x20),0xf<_0x559d09['windowBits']&&_0x559d09['windowBits']<0x30&&0x0==(0xf&_0x559d09['windowBits'])&&(_0x559d09['windowBits']|=0xf),this['err']=0x0,this['msg']='',this['ended']=!0x1,this['chunks']=[],this['strm']=new _0x44c6bf(),this['strm']['avail_out']=0x0;var _0x16341d=_0x523524['inflateInit2'](this['strm'],_0x559d09['windowBits']);if(_0x16341d!==_0x5b4467['Z_OK'])throw new Error(_0x3681e1[_0x16341d]);this['header']=new _0x2afe63(),_0x523524['inflateGetHeader'](this['strm'],this['header']);}function _0x3ebf2e(_0x3cc9a7,_0x3a2fff){var _0x47f1a5=new _0x105843(_0x3a2fff);if(_0x47f1a5['push'](_0x3cc9a7,!0x0),_0x47f1a5['err'])throw _0x47f1a5['msg']||_0x3681e1[_0x47f1a5['err']];return _0x47f1a5['result'];}_0x105843['prototype']['push']=function(_0x21fcf0,_0xd362e1){var _0x445898,_0xba4266,_0x52999f,_0x338923,_0x1ef46c,_0x47f8a7,_0x5bbb25=this['strm'],_0x156cfa=this['options']['chunkSize'],_0xe17f52=this['options']['dictionary'],_0x3de77d=!0x1;if(this['ended'])return !0x1;_0xba4266=_0xd362e1===~~_0xd362e1?_0xd362e1:!0x0===_0xd362e1?_0x5b4467['Z_FINISH']:_0x5b4467['Z_NO_FLUSH'],'string'==typeof _0x21fcf0?_0x5bbb25['input']=_0x31e3d9['binstring2buf'](_0x21fcf0):'[object\x20ArrayBuffer]'===_0x27182d['call'](_0x21fcf0)?_0x5bbb25['input']=new Uint8Array(_0x21fcf0):_0x5bbb25['input']=_0x21fcf0,_0x5bbb25['next_in']=0x0,_0x5bbb25['avail_in']=_0x5bbb25['input']['length'];do{if(0x0===_0x5bbb25['avail_out']&&(_0x5bbb25['output']=new _0x4ce076['Buf8'](_0x156cfa),_0x5bbb25['next_out']=0x0,_0x5bbb25['avail_out']=_0x156cfa),(_0x445898=_0x523524['inflate'](_0x5bbb25,_0x5b4467['Z_NO_FLUSH']))===_0x5b4467['Z_NEED_DICT']&&_0xe17f52&&(_0x47f8a7='string'==typeof _0xe17f52?_0x31e3d9['string2buf'](_0xe17f52):'[object\x20ArrayBuffer]'===_0x27182d['call'](_0xe17f52)?new Uint8Array(_0xe17f52):_0xe17f52,_0x445898=_0x523524['inflateSetDictionary'](this['strm'],_0x47f8a7)),_0x445898===_0x5b4467['Z_BUF_ERROR']&&!0x0===_0x3de77d&&(_0x445898=_0x5b4467['Z_OK'],_0x3de77d=!0x1),_0x445898!==_0x5b4467['Z_STREAM_END']&&_0x445898!==_0x5b4467['Z_OK'])return this['onEnd'](_0x445898),!(this['ended']=!0x0);_0x5bbb25['next_out']&&(0x0!==_0x5bbb25['avail_out']&&_0x445898!==_0x5b4467['Z_STREAM_END']&&(0x0!==_0x5bbb25['avail_in']||_0xba4266!==_0x5b4467['Z_FINISH']&&_0xba4266!==_0x5b4467['Z_SYNC_FLUSH'])||('string'===this['options']['to']?(_0x52999f=_0x31e3d9['utf8border'](_0x5bbb25['output'],_0x5bbb25['next_out']),_0x338923=_0x5bbb25['next_out']-_0x52999f,_0x1ef46c=_0x31e3d9['buf2string'](_0x5bbb25['output'],_0x52999f),_0x5bbb25['next_out']=_0x338923,_0x5bbb25['avail_out']=_0x156cfa-_0x338923,_0x338923&&_0x4ce076['arraySet'](_0x5bbb25['output'],_0x5bbb25['output'],_0x52999f,_0x338923,0x0),this['onData'](_0x1ef46c)):this['onData'](_0x4ce076['shrinkBuf'](_0x5bbb25['output'],_0x5bbb25['next_out'])))),0x0===_0x5bbb25['avail_in']&&0x0===_0x5bbb25['avail_out']&&(_0x3de77d=!0x0);}while((0x0<_0x5bbb25['avail_in']||0x0===_0x5bbb25['avail_out'])&&_0x445898!==_0x5b4467['Z_STREAM_END']);return _0x445898===_0x5b4467['Z_STREAM_END']&&(_0xba4266=_0x5b4467['Z_FINISH']),_0xba4266===_0x5b4467['Z_FINISH']?(_0x445898=_0x523524['inflateEnd'](this['strm']),this['onEnd'](_0x445898),this['ended']=!0x0,_0x445898===_0x5b4467['Z_OK']):_0xba4266!==_0x5b4467['Z_SYNC_FLUSH']||(this['onEnd'](_0x5b4467['Z_OK']),!(_0x5bbb25['avail_out']=0x0));},_0x105843['prototype']['onData']=function(_0x290158){this['chunks']['push'](_0x290158);},_0x105843['prototype']['onEnd']=function(_0x5ef9a1){_0x5ef9a1===_0x5b4467['Z_OK']&&('string'===this['options']['to']?this['result']=this['chunks']['join'](''):this['result']=_0x4ce076['flattenChunks'](this['chunks'])),this['chunks']=[],this['err']=_0x5ef9a1,this['msg']=this['strm']['msg'];},_0x3c715b['Inflate']=_0x105843,_0x3c715b['inflate']=_0x3ebf2e,_0x3c715b['inflateRaw']=function(_0x25a313,_0xa28fd6){return (_0xa28fd6=_0xa28fd6||{})['raw']=!0x0,_0x3ebf2e(_0x25a313,_0xa28fd6);},_0x3c715b['ungzip']=_0x3ebf2e;},{'./utils/common':0x29,'./utils/strings':0x2a,'./zlib/constants':0x2c,'./zlib/gzheader':0x2f,'./zlib/inflate':0x31,'./zlib/messages':0x33,'./zlib/zstream':0x35}],0x29:[function(_0x1d005e,_0x52b02c,_0x4a7159){var _0x50fb95='undefined'!=typeof Uint8Array&&'undefined'!=typeof Uint16Array&&'undefined'!=typeof Int32Array;_0x4a7159['assign']=function(_0x244ae1){for(var _0x125ced=Array['prototype']['slice']['call'](arguments,0x1);_0x125ced['length'];){var _0x1e8efd=_0x125ced['shift']();if(_0x1e8efd){if('object'!=typeof _0x1e8efd)throw new TypeError(_0x1e8efd+'must\x20be\x20non-object');for(var _0x55c293 in _0x1e8efd)_0x1e8efd['hasOwnProperty'](_0x55c293)&&(_0x244ae1[_0x55c293]=_0x1e8efd[_0x55c293]);}}return _0x244ae1;},_0x4a7159['shrinkBuf']=function(_0x48e273,_0x4d0f0){return _0x48e273['length']===_0x4d0f0?_0x48e273:_0x48e273['subarray']?_0x48e273['subarray'](0x0,_0x4d0f0):(_0x48e273['length']=_0x4d0f0,_0x48e273);};var _0x10a211={'arraySet':function(_0x7aa005,_0x1bebaa,_0x21d8bf,_0x55a9d1,_0x23a5de){if(_0x1bebaa['subarray']&&_0x7aa005['subarray'])_0x7aa005['set'](_0x1bebaa['subarray'](_0x21d8bf,_0x21d8bf+_0x55a9d1),_0x23a5de);else {for(var _0x58319f=0x0;_0x58319f<_0x55a9d1;_0x58319f++)_0x7aa005[_0x23a5de+_0x58319f]=_0x1bebaa[_0x21d8bf+_0x58319f];}},'flattenChunks':function(_0x28a951){var _0x1fa151,_0x2b1207,_0x490dc1,_0x2b0da1,_0x2e6ef3,_0x536947;for(_0x1fa151=_0x490dc1=0x0,_0x2b1207=_0x28a951['length'];_0x1fa151<_0x2b1207;_0x1fa151++)_0x490dc1+=_0x28a951[_0x1fa151]['length'];for(_0x536947=new Uint8Array(_0x490dc1),_0x1fa151=_0x2b0da1=0x0,_0x2b1207=_0x28a951['length'];_0x1fa151<_0x2b1207;_0x1fa151++)_0x2e6ef3=_0x28a951[_0x1fa151],_0x536947['set'](_0x2e6ef3,_0x2b0da1),_0x2b0da1+=_0x2e6ef3['length'];return _0x536947;}},_0x117d73={'arraySet':function(_0x250eee,_0x5aa58e,_0x4561d0,_0x3f17dc,_0x46b756){for(var _0x3212bd=0x0;_0x3212bd<_0x3f17dc;_0x3212bd++)_0x250eee[_0x46b756+_0x3212bd]=_0x5aa58e[_0x4561d0+_0x3212bd];},'flattenChunks':function(_0x396c40){return []['concat']['apply']([],_0x396c40);}};_0x4a7159['setTyped']=function(_0x382d2c){_0x382d2c?(_0x4a7159['Buf8']=Uint8Array,_0x4a7159['Buf16']=Uint16Array,_0x4a7159['Buf32']=Int32Array,_0x4a7159['assign'](_0x4a7159,_0x10a211)):(_0x4a7159['Buf8']=Array,_0x4a7159['Buf16']=Array,_0x4a7159['Buf32']=Array,_0x4a7159['assign'](_0x4a7159,_0x117d73));},_0x4a7159['setTyped'](_0x50fb95);},{}],0x2a:[function(_0x4c6470,_0x4e264a,_0xea659a){var _0x156500=_0x4c6470('./common'),_0x12371d=!0x0,_0xe95d75=!0x0;try{String['fromCharCode']['apply'](null,[0x0]);}catch(_0x89b60d){_0x12371d=!0x1;}try{String['fromCharCode']['apply'](null,new Uint8Array(0x1));}catch(_0x443c5f){_0xe95d75=!0x1;}for(var _0x4459b3=new _0x156500['Buf8'](0x100),_0x413e95=0x0;_0x413e95<0x100;_0x413e95++)_0x4459b3[_0x413e95]=0xfc<=_0x413e95?0x6:0xf8<=_0x413e95?0x5:0xf0<=_0x413e95?0x4:0xe0<=_0x413e95?0x3:0xc0<=_0x413e95?0x2:0x1;function _0x394b17(_0x36641b,_0x14472d){if(_0x14472d<0x10001&&(_0x36641b['subarray']&&_0xe95d75||!_0x36641b['subarray']&&_0x12371d))return String['fromCharCode']['apply'](null,_0x156500['shrinkBuf'](_0x36641b,_0x14472d));for(var _0x55af49='',_0x5bcb25=0x0;_0x5bcb25<_0x14472d;_0x5bcb25++)_0x55af49+=String['fromCharCode'](_0x36641b[_0x5bcb25]);return _0x55af49;}_0x4459b3[0xfe]=_0x4459b3[0xfe]=0x1,_0xea659a['string2buf']=function(_0x7c329a){var _0x4a9f68,_0x5df19a,_0x22cf88,_0x195d80,_0x54244d,_0x2f36bd=_0x7c329a['length'],_0x771867=0x0;for(_0x195d80=0x0;_0x195d80<_0x2f36bd;_0x195d80++)0xd800==(0xfc00&(_0x5df19a=_0x7c329a['charCodeAt'](_0x195d80)))&&_0x195d80+0x1<_0x2f36bd&&0xdc00==(0xfc00&(_0x22cf88=_0x7c329a['charCodeAt'](_0x195d80+0x1)))&&(_0x5df19a=0x10000+(_0x5df19a-0xd800<<0xa)+(_0x22cf88-0xdc00),_0x195d80++),_0x771867+=_0x5df19a<0x80?0x1:_0x5df19a<0x800?0x2:_0x5df19a<0x10000?0x3:0x4;for(_0x4a9f68=new _0x156500['Buf8'](_0x771867),_0x195d80=_0x54244d=0x0;_0x54244d<_0x771867;_0x195d80++)0xd800==(0xfc00&(_0x5df19a=_0x7c329a['charCodeAt'](_0x195d80)))&&_0x195d80+0x1<_0x2f36bd&&0xdc00==(0xfc00&(_0x22cf88=_0x7c329a['charCodeAt'](_0x195d80+0x1)))&&(_0x5df19a=0x10000+(_0x5df19a-0xd800<<0xa)+(_0x22cf88-0xdc00),_0x195d80++),_0x5df19a<0x80?_0x4a9f68[_0x54244d++]=_0x5df19a:(_0x5df19a<0x800?_0x4a9f68[_0x54244d++]=0xc0|_0x5df19a>>>0x6:(_0x5df19a<0x10000?_0x4a9f68[_0x54244d++]=0xe0|_0x5df19a>>>0xc:(_0x4a9f68[_0x54244d++]=0xf0|_0x5df19a>>>0x12,_0x4a9f68[_0x54244d++]=0x80|_0x5df19a>>>0xc&0x3f),_0x4a9f68[_0x54244d++]=0x80|_0x5df19a>>>0x6&0x3f),_0x4a9f68[_0x54244d++]=0x80|0x3f&_0x5df19a);return _0x4a9f68;},_0xea659a['buf2binstring']=function(_0x290a6c){return _0x394b17(_0x290a6c,_0x290a6c['length']);},_0xea659a['binstring2buf']=function(_0x5a554b){for(var _0xb7074f=new _0x156500['Buf8'](_0x5a554b['length']),_0x447fee=0x0,_0x3ea5be=_0xb7074f['length'];_0x447fee<_0x3ea5be;_0x447fee++)_0xb7074f[_0x447fee]=_0x5a554b['charCodeAt'](_0x447fee);return _0xb7074f;},_0xea659a['buf2string']=function(_0x2d0ec5,_0xb131e1){var _0x3d7f77,_0x250233,_0x2e3cdc,_0x33b31c,_0x4787b1=_0xb131e1||_0x2d0ec5['length'],_0x24f981=new Array(0x2*_0x4787b1);for(_0x3d7f77=_0x250233=0x0;_0x3d7f77<_0x4787b1;)if((_0x2e3cdc=_0x2d0ec5[_0x3d7f77++])<0x80)_0x24f981[_0x250233++]=_0x2e3cdc;else {if(0x4<(_0x33b31c=_0x4459b3[_0x2e3cdc]))_0x24f981[_0x250233++]=0xfffd,_0x3d7f77+=_0x33b31c-0x1;else {for(_0x2e3cdc&=0x2===_0x33b31c?0x1f:0x3===_0x33b31c?0xf:0x7;0x1<_0x33b31c&&_0x3d7f77<_0x4787b1;)_0x2e3cdc=_0x2e3cdc<<0x6|0x3f&_0x2d0ec5[_0x3d7f77++],_0x33b31c--;0x1<_0x33b31c?_0x24f981[_0x250233++]=0xfffd:_0x2e3cdc<0x10000?_0x24f981[_0x250233++]=_0x2e3cdc:(_0x2e3cdc-=0x10000,_0x24f981[_0x250233++]=0xd800|_0x2e3cdc>>0xa&0x3ff,_0x24f981[_0x250233++]=0xdc00|0x3ff&_0x2e3cdc);}}return _0x394b17(_0x24f981,_0x250233);},_0xea659a['utf8border']=function(_0x1a4d2d,_0x3f9c88){var _0x227fb6;for((_0x3f9c88=_0x3f9c88||_0x1a4d2d['length'])>_0x1a4d2d['length']&&(_0x3f9c88=_0x1a4d2d['length']),_0x227fb6=_0x3f9c88-0x1;0x0<=_0x227fb6&&0x80==(0xc0&_0x1a4d2d[_0x227fb6]);)_0x227fb6--;return _0x227fb6<0x0?_0x3f9c88:0x0===_0x227fb6?_0x3f9c88:_0x227fb6+_0x4459b3[_0x1a4d2d[_0x227fb6]]>_0x3f9c88?_0x227fb6:_0x3f9c88;};},{'./common':0x29}],0x2b:[function(_0x4e5e2b,_0x5e95a7,_0x5bcd8d){_0x5e95a7['exports']=function(_0x18c1bc,_0x3cb921,_0x5ccca3,_0x215139){for(var _0x3c2905=0xffff&_0x18c1bc|0x0,_0x3e9d08=_0x18c1bc>>>0x10&0xffff|0x0,_0x2820c9=0x0;0x0!==_0x5ccca3;){for(_0x5ccca3-=_0x2820c9=0x7d0<_0x5ccca3?0x7d0:_0x5ccca3;_0x3e9d08=_0x3e9d08+(_0x3c2905=_0x3c2905+_0x3cb921[_0x215139++]|0x0)|0x0,--_0x2820c9;);_0x3c2905%=0xfff1,_0x3e9d08%=0xfff1;}return _0x3c2905|_0x3e9d08<<0x10|0x0;};},{}],0x2c:[function(_0x162250,_0x4a4b4e,_0x331f37){_0x4a4b4e['exports']={'Z_NO_FLUSH':0x0,'Z_PARTIAL_FLUSH':0x1,'Z_SYNC_FLUSH':0x2,'Z_FULL_FLUSH':0x3,'Z_FINISH':0x4,'Z_BLOCK':0x5,'Z_TREES':0x6,'Z_OK':0x0,'Z_STREAM_END':0x1,'Z_NEED_DICT':0x2,'Z_ERRNO':-0x1,'Z_STREAM_ERROR':-0x2,'Z_DATA_ERROR':-0x3,'Z_BUF_ERROR':-0x5,'Z_NO_COMPRESSION':0x0,'Z_BEST_SPEED':0x1,'Z_BEST_COMPRESSION':0x9,'Z_DEFAULT_COMPRESSION':-0x1,'Z_FILTERED':0x1,'Z_HUFFMAN_ONLY':0x2,'Z_RLE':0x3,'Z_FIXED':0x4,'Z_DEFAULT_STRATEGY':0x0,'Z_BINARY':0x0,'Z_TEXT':0x1,'Z_UNKNOWN':0x2,'Z_DEFLATED':0x8};},{}],0x2d:[function(_0x539614,_0x26323f,_0x275233){var _0xd387b0=(function(){for(var _0x2333b3,_0x35f3d2=[],_0x122b91=0x0;_0x122b91<0x100;_0x122b91++){_0x2333b3=_0x122b91;for(var _0x238fe6=0x0;_0x238fe6<0x8;_0x238fe6++)_0x2333b3=0x1&_0x2333b3?0xedb88320^_0x2333b3>>>0x1:_0x2333b3>>>0x1;_0x35f3d2[_0x122b91]=_0x2333b3;}return _0x35f3d2;}());_0x26323f['exports']=function(_0x488a29,_0x4a441e,_0x1a5f85,_0x2ac49c){var _0x1debc0=_0xd387b0,_0x5b1d77=_0x2ac49c+_0x1a5f85;_0x488a29^=-0x1;for(var _0x3fe4a6=_0x2ac49c;_0x3fe4a6<_0x5b1d77;_0x3fe4a6++)_0x488a29=_0x488a29>>>0x8^_0x1debc0[0xff&(_0x488a29^_0x4a441e[_0x3fe4a6])];return -0x1^_0x488a29;};},{}],0x2e:[function(_0x34d4e2,_0x29b42f,_0x15af75){var _0x21de67,_0x439ca7=_0x34d4e2('../utils/common'),_0x5017fb=_0x34d4e2('./trees'),_0x3d3ad8=_0x34d4e2('./adler32'),_0x1b47cd=_0x34d4e2('./crc32'),_0x248926=_0x34d4e2('./messages'),_0x5dd6a3=0x0,_0xfc31df=0x4,_0x433aab=0x0,_0x64825c=-0x2,_0x5b472f=-0x1,_0x52d935=0x4,_0x43b918=0x2,_0x324f31=0x8,_0x1e0d2a=0x9,_0x3179b3=0x11e,_0x3df1a7=0x1e,_0x2a34b6=0x13,_0x1ac68e=0x2*_0x3179b3+0x1,_0x3dbe80=0xf,_0x4d19ba=0x3,_0x1d490d=0x102,_0x394b48=_0x1d490d+_0x4d19ba+0x1,_0x1fa1a2=0x2a,_0x27b8e6=0x71,_0x253392=0x1,_0x20ef03=0x2,_0x620163=0x3,_0x973f69=0x4;function _0x135f79(_0x53bbdd,_0x2d3569){return _0x53bbdd['msg']=_0x248926[_0x2d3569],_0x2d3569;}function _0x1469b8(_0x17ef57){return (_0x17ef57<<0x1)-(0x4<_0x17ef57?0x9:0x0);}function _0x36497b(_0x257651){for(var _0x188c7e=_0x257651['length'];0x0<=--_0x188c7e;)_0x257651[_0x188c7e]=0x0;}function _0x4d20f3(_0x3eec5d){var _0x5a1288=_0x3eec5d['state'],_0x379c03=_0x5a1288['pending'];_0x379c03>_0x3eec5d['avail_out']&&(_0x379c03=_0x3eec5d['avail_out']),0x0!==_0x379c03&&(_0x439ca7['arraySet'](_0x3eec5d['output'],_0x5a1288['pending_buf'],_0x5a1288['pending_out'],_0x379c03,_0x3eec5d['next_out']),_0x3eec5d['next_out']+=_0x379c03,_0x5a1288['pending_out']+=_0x379c03,_0x3eec5d['total_out']+=_0x379c03,_0x3eec5d['avail_out']-=_0x379c03,_0x5a1288['pending']-=_0x379c03,0x0===_0x5a1288['pending']&&(_0x5a1288['pending_out']=0x0));}function _0x5b2a20(_0x1eeb4b,_0x58e35d){_0x5017fb['_tr_flush_block'](_0x1eeb4b,0x0<=_0x1eeb4b['block_start']?_0x1eeb4b['block_start']:-0x1,_0x1eeb4b['strstart']-_0x1eeb4b['block_start'],_0x58e35d),_0x1eeb4b['block_start']=_0x1eeb4b['strstart'],_0x4d20f3(_0x1eeb4b['strm']);}function _0x3712d5(_0x56b20b,_0x4614f3){_0x56b20b['pending_buf'][_0x56b20b['pending']++]=_0x4614f3;}function _0xb63262(_0x4257d8,_0x4dab31){_0x4257d8['pending_buf'][_0x4257d8['pending']++]=_0x4dab31>>>0x8&0xff,_0x4257d8['pending_buf'][_0x4257d8['pending']++]=0xff&_0x4dab31;}function _0x516841(_0x45752b,_0x18fcfe){var _0x535399,_0x14ca23,_0x567ff0=_0x45752b['max_chain_length'],_0x5ee0dd=_0x45752b['strstart'],_0x46f96b=_0x45752b['prev_length'],_0x766c5c=_0x45752b['nice_match'],_0x349f76=_0x45752b['strstart']>_0x45752b['w_size']-_0x394b48?_0x45752b['strstart']-(_0x45752b['w_size']-_0x394b48):0x0,_0x353676=_0x45752b['window'],_0x105dda=_0x45752b['w_mask'],_0x9306a4=_0x45752b['prev'],_0x244958=_0x45752b['strstart']+_0x1d490d,_0x47b7c0=_0x353676[_0x5ee0dd+_0x46f96b-0x1],_0x1ef44d=_0x353676[_0x5ee0dd+_0x46f96b];_0x45752b['prev_length']>=_0x45752b['good_match']&&(_0x567ff0>>=0x2),_0x766c5c>_0x45752b['lookahead']&&(_0x766c5c=_0x45752b['lookahead']);do{if(_0x353676[(_0x535399=_0x18fcfe)+_0x46f96b]===_0x1ef44d&&_0x353676[_0x535399+_0x46f96b-0x1]===_0x47b7c0&&_0x353676[_0x535399]===_0x353676[_0x5ee0dd]&&_0x353676[++_0x535399]===_0x353676[_0x5ee0dd+0x1]){_0x5ee0dd+=0x2,_0x535399++;do{}while(_0x353676[++_0x5ee0dd]===_0x353676[++_0x535399]&&_0x353676[++_0x5ee0dd]===_0x353676[++_0x535399]&&_0x353676[++_0x5ee0dd]===_0x353676[++_0x535399]&&_0x353676[++_0x5ee0dd]===_0x353676[++_0x535399]&&_0x353676[++_0x5ee0dd]===_0x353676[++_0x535399]&&_0x353676[++_0x5ee0dd]===_0x353676[++_0x535399]&&_0x353676[++_0x5ee0dd]===_0x353676[++_0x535399]&&_0x353676[++_0x5ee0dd]===_0x353676[++_0x535399]&&_0x5ee0dd<_0x244958);if(_0x14ca23=_0x1d490d-(_0x244958-_0x5ee0dd),_0x5ee0dd=_0x244958-_0x1d490d,_0x46f96b<_0x14ca23){if(_0x45752b['match_start']=_0x18fcfe,_0x766c5c<=(_0x46f96b=_0x14ca23))break;_0x47b7c0=_0x353676[_0x5ee0dd+_0x46f96b-0x1],_0x1ef44d=_0x353676[_0x5ee0dd+_0x46f96b];}}}while((_0x18fcfe=_0x9306a4[_0x18fcfe&_0x105dda])>_0x349f76&&0x0!=--_0x567ff0);return _0x46f96b<=_0x45752b['lookahead']?_0x46f96b:_0x45752b['lookahead'];}function _0x401942(_0x172a2b){var _0x10f0ac,_0x4ef34f,_0x4f44f9,_0x254878,_0x2c4f97,_0x569f16,_0x2fa46e,_0x14aad2,_0x3b8576,_0x10f4e5,_0xa2ed6a=_0x172a2b['w_size'];do{if(_0x254878=_0x172a2b['window_size']-_0x172a2b['lookahead']-_0x172a2b['strstart'],_0x172a2b['strstart']>=_0xa2ed6a+(_0xa2ed6a-_0x394b48)){for(_0x439ca7['arraySet'](_0x172a2b['window'],_0x172a2b['window'],_0xa2ed6a,_0xa2ed6a,0x0),_0x172a2b['match_start']-=_0xa2ed6a,_0x172a2b['strstart']-=_0xa2ed6a,_0x172a2b['block_start']-=_0xa2ed6a,_0x10f0ac=_0x4ef34f=_0x172a2b['hash_size'];_0x4f44f9=_0x172a2b['head'][--_0x10f0ac],_0x172a2b['head'][_0x10f0ac]=_0xa2ed6a<=_0x4f44f9?_0x4f44f9-_0xa2ed6a:0x0,--_0x4ef34f;);for(_0x10f0ac=_0x4ef34f=_0xa2ed6a;_0x4f44f9=_0x172a2b['prev'][--_0x10f0ac],_0x172a2b['prev'][_0x10f0ac]=_0xa2ed6a<=_0x4f44f9?_0x4f44f9-_0xa2ed6a:0x0,--_0x4ef34f;);_0x254878+=_0xa2ed6a;}if(0x0===_0x172a2b['strm']['avail_in'])break;if(_0x569f16=_0x172a2b['strm'],_0x2fa46e=_0x172a2b['window'],_0x14aad2=_0x172a2b['strstart']+_0x172a2b['lookahead'],_0x3b8576=_0x254878,_0x10f4e5=void 0x0,_0x10f4e5=_0x569f16['avail_in'],_0x3b8576<_0x10f4e5&&(_0x10f4e5=_0x3b8576),_0x4ef34f=0x0===_0x10f4e5?0x0:(_0x569f16['avail_in']-=_0x10f4e5,_0x439ca7['arraySet'](_0x2fa46e,_0x569f16['input'],_0x569f16['next_in'],_0x10f4e5,_0x14aad2),0x1===_0x569f16['state']['wrap']?_0x569f16['adler']=_0x3d3ad8(_0x569f16['adler'],_0x2fa46e,_0x10f4e5,_0x14aad2):0x2===_0x569f16['state']['wrap']&&(_0x569f16['adler']=_0x1b47cd(_0x569f16['adler'],_0x2fa46e,_0x10f4e5,_0x14aad2)),_0x569f16['next_in']+=_0x10f4e5,_0x569f16['total_in']+=_0x10f4e5,_0x10f4e5),_0x172a2b['lookahead']+=_0x4ef34f,_0x172a2b['lookahead']+_0x172a2b['insert']>=_0x4d19ba){for(_0x2c4f97=_0x172a2b['strstart']-_0x172a2b['insert'],_0x172a2b['ins_h']=_0x172a2b['window'][_0x2c4f97],_0x172a2b['ins_h']=(_0x172a2b['ins_h']<<_0x172a2b['hash_shift']^_0x172a2b['window'][_0x2c4f97+0x1])&_0x172a2b['hash_mask'];_0x172a2b['insert']&&(_0x172a2b['ins_h']=(_0x172a2b['ins_h']<<_0x172a2b['hash_shift']^_0x172a2b['window'][_0x2c4f97+_0x4d19ba-0x1])&_0x172a2b['hash_mask'],_0x172a2b['prev'][_0x2c4f97&_0x172a2b['w_mask']]=_0x172a2b['head'][_0x172a2b['ins_h']],_0x172a2b['head'][_0x172a2b['ins_h']]=_0x2c4f97,_0x2c4f97++,_0x172a2b['insert']--,!(_0x172a2b['lookahead']+_0x172a2b['insert']<_0x4d19ba)););}}while(_0x172a2b['lookahead']<_0x394b48&&0x0!==_0x172a2b['strm']['avail_in']);}function _0x4f7171(_0x5d15ca,_0xe9a731){for(var _0x1471d2,_0xe42368;;){if(_0x5d15ca['lookahead']<_0x394b48){if(_0x401942(_0x5d15ca),_0x5d15ca['lookahead']<_0x394b48&&_0xe9a731===_0x5dd6a3)return _0x253392;if(0x0===_0x5d15ca['lookahead'])break;}if(_0x1471d2=0x0,_0x5d15ca['lookahead']>=_0x4d19ba&&(_0x5d15ca['ins_h']=(_0x5d15ca['ins_h']<<_0x5d15ca['hash_shift']^_0x5d15ca['window'][_0x5d15ca['strstart']+_0x4d19ba-0x1])&_0x5d15ca['hash_mask'],_0x1471d2=_0x5d15ca['prev'][_0x5d15ca['strstart']&_0x5d15ca['w_mask']]=_0x5d15ca['head'][_0x5d15ca['ins_h']],_0x5d15ca['head'][_0x5d15ca['ins_h']]=_0x5d15ca['strstart']),0x0!==_0x1471d2&&_0x5d15ca['strstart']-_0x1471d2<=_0x5d15ca['w_size']-_0x394b48&&(_0x5d15ca['match_length']=_0x516841(_0x5d15ca,_0x1471d2)),_0x5d15ca['match_length']>=_0x4d19ba){if(_0xe42368=_0x5017fb['_tr_tally'](_0x5d15ca,_0x5d15ca['strstart']-_0x5d15ca['match_start'],_0x5d15ca['match_length']-_0x4d19ba),_0x5d15ca['lookahead']-=_0x5d15ca['match_length'],_0x5d15ca['match_length']<=_0x5d15ca['max_lazy_match']&&_0x5d15ca['lookahead']>=_0x4d19ba){for(_0x5d15ca['match_length']--;_0x5d15ca['strstart']++,_0x5d15ca['ins_h']=(_0x5d15ca['ins_h']<<_0x5d15ca['hash_shift']^_0x5d15ca['window'][_0x5d15ca['strstart']+_0x4d19ba-0x1])&_0x5d15ca['hash_mask'],_0x1471d2=_0x5d15ca['prev'][_0x5d15ca['strstart']&_0x5d15ca['w_mask']]=_0x5d15ca['head'][_0x5d15ca['ins_h']],_0x5d15ca['head'][_0x5d15ca['ins_h']]=_0x5d15ca['strstart'],0x0!=--_0x5d15ca['match_length'];);_0x5d15ca['strstart']++;}else _0x5d15ca['strstart']+=_0x5d15ca['match_length'],_0x5d15ca['match_length']=0x0,_0x5d15ca['ins_h']=_0x5d15ca['window'][_0x5d15ca['strstart']],_0x5d15ca['ins_h']=(_0x5d15ca['ins_h']<<_0x5d15ca['hash_shift']^_0x5d15ca['window'][_0x5d15ca['strstart']+0x1])&_0x5d15ca['hash_mask'];}else _0xe42368=_0x5017fb['_tr_tally'](_0x5d15ca,0x0,_0x5d15ca['window'][_0x5d15ca['strstart']]),_0x5d15ca['lookahead']--,_0x5d15ca['strstart']++;if(_0xe42368&&(_0x5b2a20(_0x5d15ca,!0x1),0x0===_0x5d15ca['strm']['avail_out']))return _0x253392;}return _0x5d15ca['insert']=_0x5d15ca['strstart']<_0x4d19ba-0x1?_0x5d15ca['strstart']:_0x4d19ba-0x1,_0xe9a731===_0xfc31df?(_0x5b2a20(_0x5d15ca,!0x0),0x0===_0x5d15ca['strm']['avail_out']?_0x620163:_0x973f69):_0x5d15ca['last_lit']&&(_0x5b2a20(_0x5d15ca,!0x1),0x0===_0x5d15ca['strm']['avail_out'])?_0x253392:_0x20ef03;}function _0x1f10b2(_0x26fed8,_0x37ff0f){for(var _0x58ff92,_0x70271,_0x4ebc64;;){if(_0x26fed8['lookahead']<_0x394b48){if(_0x401942(_0x26fed8),_0x26fed8['lookahead']<_0x394b48&&_0x37ff0f===_0x5dd6a3)return _0x253392;if(0x0===_0x26fed8['lookahead'])break;}if(_0x58ff92=0x0,_0x26fed8['lookahead']>=_0x4d19ba&&(_0x26fed8['ins_h']=(_0x26fed8['ins_h']<<_0x26fed8['hash_shift']^_0x26fed8['window'][_0x26fed8['strstart']+_0x4d19ba-0x1])&_0x26fed8['hash_mask'],_0x58ff92=_0x26fed8['prev'][_0x26fed8['strstart']&_0x26fed8['w_mask']]=_0x26fed8['head'][_0x26fed8['ins_h']],_0x26fed8['head'][_0x26fed8['ins_h']]=_0x26fed8['strstart']),_0x26fed8['prev_length']=_0x26fed8['match_length'],_0x26fed8['prev_match']=_0x26fed8['match_start'],_0x26fed8['match_length']=_0x4d19ba-0x1,0x0!==_0x58ff92&&_0x26fed8['prev_length']<_0x26fed8['max_lazy_match']&&_0x26fed8['strstart']-_0x58ff92<=_0x26fed8['w_size']-_0x394b48&&(_0x26fed8['match_length']=_0x516841(_0x26fed8,_0x58ff92),_0x26fed8['match_length']<=0x5&&(0x1===_0x26fed8['strategy']||_0x26fed8['match_length']===_0x4d19ba&&0x1000<_0x26fed8['strstart']-_0x26fed8['match_start'])&&(_0x26fed8['match_length']=_0x4d19ba-0x1)),_0x26fed8['prev_length']>=_0x4d19ba&&_0x26fed8['match_length']<=_0x26fed8['prev_length']){for(_0x4ebc64=_0x26fed8['strstart']+_0x26fed8['lookahead']-_0x4d19ba,_0x70271=_0x5017fb['_tr_tally'](_0x26fed8,_0x26fed8['strstart']-0x1-_0x26fed8['prev_match'],_0x26fed8['prev_length']-_0x4d19ba),_0x26fed8['lookahead']-=_0x26fed8['prev_length']-0x1,_0x26fed8['prev_length']-=0x2;++_0x26fed8['strstart']<=_0x4ebc64&&(_0x26fed8['ins_h']=(_0x26fed8['ins_h']<<_0x26fed8['hash_shift']^_0x26fed8['window'][_0x26fed8['strstart']+_0x4d19ba-0x1])&_0x26fed8['hash_mask'],_0x58ff92=_0x26fed8['prev'][_0x26fed8['strstart']&_0x26fed8['w_mask']]=_0x26fed8['head'][_0x26fed8['ins_h']],_0x26fed8['head'][_0x26fed8['ins_h']]=_0x26fed8['strstart']),0x0!=--_0x26fed8['prev_length'];);if(_0x26fed8['match_available']=0x0,_0x26fed8['match_length']=_0x4d19ba-0x1,_0x26fed8['strstart']++,_0x70271&&(_0x5b2a20(_0x26fed8,!0x1),0x0===_0x26fed8['strm']['avail_out']))return _0x253392;}else {if(_0x26fed8['match_available']){if((_0x70271=_0x5017fb['_tr_tally'](_0x26fed8,0x0,_0x26fed8['window'][_0x26fed8['strstart']-0x1]))&&_0x5b2a20(_0x26fed8,!0x1),_0x26fed8['strstart']++,_0x26fed8['lookahead']--,0x0===_0x26fed8['strm']['avail_out'])return _0x253392;}else _0x26fed8['match_available']=0x1,_0x26fed8['strstart']++,_0x26fed8['lookahead']--;}}return _0x26fed8['match_available']&&(_0x70271=_0x5017fb['_tr_tally'](_0x26fed8,0x0,_0x26fed8['window'][_0x26fed8['strstart']-0x1]),_0x26fed8['match_available']=0x0),_0x26fed8['insert']=_0x26fed8['strstart']<_0x4d19ba-0x1?_0x26fed8['strstart']:_0x4d19ba-0x1,_0x37ff0f===_0xfc31df?(_0x5b2a20(_0x26fed8,!0x0),0x0===_0x26fed8['strm']['avail_out']?_0x620163:_0x973f69):_0x26fed8['last_lit']&&(_0x5b2a20(_0x26fed8,!0x1),0x0===_0x26fed8['strm']['avail_out'])?_0x253392:_0x20ef03;}function _0x4a9c20(_0x27d25d,_0x8db925,_0x5a1532,_0x408e46,_0x3424b8){this['good_length']=_0x27d25d,this['max_lazy']=_0x8db925,this['nice_length']=_0x5a1532,this['max_chain']=_0x408e46,this['func']=_0x3424b8;}function _0x11758b(){this['strm']=null,this['status']=0x0,this['pending_buf']=null,this['pending_buf_size']=0x0,this['pending_out']=0x0,this['pending']=0x0,this['wrap']=0x0,this['gzhead']=null,this['gzindex']=0x0,this['method']=_0x324f31,this['last_flush']=-0x1,this['w_size']=0x0,this['w_bits']=0x0,this['w_mask']=0x0,this['window']=null,this['window_size']=0x0,this['prev']=null,this['head']=null,this['ins_h']=0x0,this['hash_size']=0x0,this['hash_bits']=0x0,this['hash_mask']=0x0,this['hash_shift']=0x0,this['block_start']=0x0,this['match_length']=0x0,this['prev_match']=0x0,this['match_available']=0x0,this['strstart']=0x0,this['match_start']=0x0,this['lookahead']=0x0,this['prev_length']=0x0,this['max_chain_length']=0x0,this['max_lazy_match']=0x0,this['level']=0x0,this['strategy']=0x0,this['good_match']=0x0,this['nice_match']=0x0,this['dyn_ltree']=new _0x439ca7['Buf16'](0x2*_0x1ac68e),this['dyn_dtree']=new _0x439ca7['Buf16'](0x2*(0x2*_0x3df1a7+0x1)),this['bl_tree']=new _0x439ca7['Buf16'](0x2*(0x2*_0x2a34b6+0x1)),_0x36497b(this['dyn_ltree']),_0x36497b(this['dyn_dtree']),_0x36497b(this['bl_tree']),this['l_desc']=null,this['d_desc']=null,this['bl_desc']=null,this['bl_count']=new _0x439ca7['Buf16'](_0x3dbe80+0x1),this['heap']=new _0x439ca7['Buf16'](0x2*_0x3179b3+0x1),_0x36497b(this['heap']),this['heap_len']=0x0,this['heap_max']=0x0,this['depth']=new _0x439ca7['Buf16'](0x2*_0x3179b3+0x1),_0x36497b(this['depth']),this['l_buf']=0x0,this['lit_bufsize']=0x0,this['last_lit']=0x0,this['d_buf']=0x0,this['opt_len']=0x0,this['static_len']=0x0,this['matches']=0x0,this['insert']=0x0,this['bi_buf']=0x0,this['bi_valid']=0x0;}function _0x41ae19(_0x9f6a6e){var _0xb2ca36;return _0x9f6a6e&&_0x9f6a6e['state']?(_0x9f6a6e['total_in']=_0x9f6a6e['total_out']=0x0,_0x9f6a6e['data_type']=_0x43b918,(_0xb2ca36=_0x9f6a6e['state'])['pending']=0x0,_0xb2ca36['pending_out']=0x0,_0xb2ca36['wrap']<0x0&&(_0xb2ca36['wrap']=-_0xb2ca36['wrap']),_0xb2ca36['status']=_0xb2ca36['wrap']?_0x1fa1a2:_0x27b8e6,_0x9f6a6e['adler']=0x2===_0xb2ca36['wrap']?0x0:0x1,_0xb2ca36['last_flush']=_0x5dd6a3,_0x5017fb['_tr_init'](_0xb2ca36),_0x433aab):_0x135f79(_0x9f6a6e,_0x64825c);}function _0x115c23(_0x205220){var _0x11bb03=_0x41ae19(_0x205220);return _0x11bb03===_0x433aab&&function(_0x595ddf){_0x595ddf['window_size']=0x2*_0x595ddf['w_size'],_0x36497b(_0x595ddf['head']),_0x595ddf['max_lazy_match']=_0x21de67[_0x595ddf['level']]['max_lazy'],_0x595ddf['good_match']=_0x21de67[_0x595ddf['level']]['good_length'],_0x595ddf['nice_match']=_0x21de67[_0x595ddf['level']]['nice_length'],_0x595ddf['max_chain_length']=_0x21de67[_0x595ddf['level']]['max_chain'],_0x595ddf['strstart']=0x0,_0x595ddf['block_start']=0x0,_0x595ddf['lookahead']=0x0,_0x595ddf['insert']=0x0,_0x595ddf['match_length']=_0x595ddf['prev_length']=_0x4d19ba-0x1,_0x595ddf['match_available']=0x0,_0x595ddf['ins_h']=0x0;}(_0x205220['state']),_0x11bb03;}function _0x467b91(_0x421236,_0x3f44c3,_0x2118ab,_0x2000a3,_0x440835,_0xa9b62f){if(!_0x421236)return _0x64825c;var _0x395ad2=0x1;if(_0x3f44c3===_0x5b472f&&(_0x3f44c3=0x6),_0x2000a3<0x0?(_0x395ad2=0x0,_0x2000a3=-_0x2000a3):0xf<_0x2000a3&&(_0x395ad2=0x2,_0x2000a3-=0x10),_0x440835<0x1||_0x1e0d2a<_0x440835||_0x2118ab!==_0x324f31||_0x2000a3<0x8||0xf<_0x2000a3||_0x3f44c3<0x0||0x9<_0x3f44c3||_0xa9b62f<0x0||_0x52d935<_0xa9b62f)return _0x135f79(_0x421236,_0x64825c);0x8===_0x2000a3&&(_0x2000a3=0x9);var _0x46873c=new _0x11758b();return (_0x421236['state']=_0x46873c)['strm']=_0x421236,_0x46873c['wrap']=_0x395ad2,_0x46873c['gzhead']=null,_0x46873c['w_bits']=_0x2000a3,_0x46873c['w_size']=0x1<<_0x46873c['w_bits'],_0x46873c['w_mask']=_0x46873c['w_size']-0x1,_0x46873c['hash_bits']=_0x440835+0x7,_0x46873c['hash_size']=0x1<<_0x46873c['hash_bits'],_0x46873c['hash_mask']=_0x46873c['hash_size']-0x1,_0x46873c['hash_shift']=~~((_0x46873c['hash_bits']+_0x4d19ba-0x1)/_0x4d19ba),_0x46873c['window']=new _0x439ca7['Buf8'](0x2*_0x46873c['w_size']),_0x46873c['head']=new _0x439ca7['Buf16'](_0x46873c['hash_size']),_0x46873c['prev']=new _0x439ca7['Buf16'](_0x46873c['w_size']),_0x46873c['lit_bufsize']=0x1<<_0x440835+0x6,_0x46873c['pending_buf_size']=0x4*_0x46873c['lit_bufsize'],_0x46873c['pending_buf']=new _0x439ca7['Buf8'](_0x46873c['pending_buf_size']),_0x46873c['d_buf']=0x1*_0x46873c['lit_bufsize'],_0x46873c['l_buf']=0x3*_0x46873c['lit_bufsize'],_0x46873c['level']=_0x3f44c3,_0x46873c['strategy']=_0xa9b62f,_0x46873c['method']=_0x2118ab,_0x115c23(_0x421236);}_0x21de67=[new _0x4a9c20(0x0,0x0,0x0,0x0,function(_0x5260ed,_0x36880b){var _0x91dd=0xffff;for(_0x91dd>_0x5260ed['pending_buf_size']-0x5&&(_0x91dd=_0x5260ed['pending_buf_size']-0x5);;){if(_0x5260ed['lookahead']<=0x1){if(_0x401942(_0x5260ed),0x0===_0x5260ed['lookahead']&&_0x36880b===_0x5dd6a3)return _0x253392;if(0x0===_0x5260ed['lookahead'])break;}_0x5260ed['strstart']+=_0x5260ed['lookahead'],_0x5260ed['lookahead']=0x0;var _0x429c9d=_0x5260ed['block_start']+_0x91dd;if((0x0===_0x5260ed['strstart']||_0x5260ed['strstart']>=_0x429c9d)&&(_0x5260ed['lookahead']=_0x5260ed['strstart']-_0x429c9d,_0x5260ed['strstart']=_0x429c9d,_0x5b2a20(_0x5260ed,!0x1),0x0===_0x5260ed['strm']['avail_out']))return _0x253392;if(_0x5260ed['strstart']-_0x5260ed['block_start']>=_0x5260ed['w_size']-_0x394b48&&(_0x5b2a20(_0x5260ed,!0x1),0x0===_0x5260ed['strm']['avail_out']))return _0x253392;}return _0x5260ed['insert']=0x0,_0x36880b===_0xfc31df?(_0x5b2a20(_0x5260ed,!0x0),0x0===_0x5260ed['strm']['avail_out']?_0x620163:_0x973f69):(_0x5260ed['strstart']>_0x5260ed['block_start']&&(_0x5b2a20(_0x5260ed,!0x1),_0x5260ed['strm']['avail_out']),_0x253392);}),new _0x4a9c20(0x4,0x4,0x8,0x4,_0x4f7171),new _0x4a9c20(0x4,0x5,0x10,0x8,_0x4f7171),new _0x4a9c20(0x4,0x6,0x20,0x20,_0x4f7171),new _0x4a9c20(0x4,0x4,0x10,0x10,_0x1f10b2),new _0x4a9c20(0x8,0x10,0x20,0x20,_0x1f10b2),new _0x4a9c20(0x8,0x10,0x80,0x80,_0x1f10b2),new _0x4a9c20(0x8,0x20,0x80,0x100,_0x1f10b2),new _0x4a9c20(0x20,0x80,0x102,0x400,_0x1f10b2),new _0x4a9c20(0x20,0x102,0x102,0x1000,_0x1f10b2)],_0x15af75['deflateInit']=function(_0x3effab,_0x13d385){return _0x467b91(_0x3effab,_0x13d385,_0x324f31,0xf,0x8,0x0);},_0x15af75['deflateInit2']=_0x467b91,_0x15af75['deflateReset']=_0x115c23,_0x15af75['deflateResetKeep']=_0x41ae19,_0x15af75['deflateSetHeader']=function(_0x3cf1dd,_0x1acc5c){return _0x3cf1dd&&_0x3cf1dd['state']?0x2!==_0x3cf1dd['state']['wrap']?_0x64825c:(_0x3cf1dd['state']['gzhead']=_0x1acc5c,_0x433aab):_0x64825c;},_0x15af75['deflate']=function(_0xe3eed2,_0xaa82f8){var _0x417e83,_0x16223d,_0x596f21,_0x42c608;if(!_0xe3eed2||!_0xe3eed2['state']||0x5<_0xaa82f8||_0xaa82f8<0x0)return _0xe3eed2?_0x135f79(_0xe3eed2,_0x64825c):_0x64825c;if(_0x16223d=_0xe3eed2['state'],!_0xe3eed2['output']||!_0xe3eed2['input']&&0x0!==_0xe3eed2['avail_in']||0x29a===_0x16223d['status']&&_0xaa82f8!==_0xfc31df)return _0x135f79(_0xe3eed2,0x0===_0xe3eed2['avail_out']?-0x5:_0x64825c);if(_0x16223d['strm']=_0xe3eed2,_0x417e83=_0x16223d['last_flush'],_0x16223d['last_flush']=_0xaa82f8,_0x16223d['status']===_0x1fa1a2){if(0x2===_0x16223d['wrap'])_0xe3eed2['adler']=0x0,_0x3712d5(_0x16223d,0x1f),_0x3712d5(_0x16223d,0x8b),_0x3712d5(_0x16223d,0x8),_0x16223d['gzhead']?(_0x3712d5(_0x16223d,(_0x16223d['gzhead']['text']?0x1:0x0)+(_0x16223d['gzhead']['hcrc']?0x2:0x0)+(_0x16223d['gzhead']['extra']?0x4:0x0)+(_0x16223d['gzhead']['name']?0x8:0x0)+(_0x16223d['gzhead']['comment']?0x10:0x0)),_0x3712d5(_0x16223d,0xff&_0x16223d['gzhead']['time']),_0x3712d5(_0x16223d,_0x16223d['gzhead']['time']>>0x8&0xff),_0x3712d5(_0x16223d,_0x16223d['gzhead']['time']>>0x10&0xff),_0x3712d5(_0x16223d,_0x16223d['gzhead']['time']>>0x18&0xff),_0x3712d5(_0x16223d,0x9===_0x16223d['level']?0x2:0x2<=_0x16223d['strategy']||_0x16223d['level']<0x2?0x4:0x0),_0x3712d5(_0x16223d,0xff&_0x16223d['gzhead']['os']),_0x16223d['gzhead']['extra']&&_0x16223d['gzhead']['extra']['length']&&(_0x3712d5(_0x16223d,0xff&_0x16223d['gzhead']['extra']['length']),_0x3712d5(_0x16223d,_0x16223d['gzhead']['extra']['length']>>0x8&0xff)),_0x16223d['gzhead']['hcrc']&&(_0xe3eed2['adler']=_0x1b47cd(_0xe3eed2['adler'],_0x16223d['pending_buf'],_0x16223d['pending'],0x0)),_0x16223d['gzindex']=0x0,_0x16223d['status']=0x45):(_0x3712d5(_0x16223d,0x0),_0x3712d5(_0x16223d,0x0),_0x3712d5(_0x16223d,0x0),_0x3712d5(_0x16223d,0x0),_0x3712d5(_0x16223d,0x0),_0x3712d5(_0x16223d,0x9===_0x16223d['level']?0x2:0x2<=_0x16223d['strategy']||_0x16223d['level']<0x2?0x4:0x0),_0x3712d5(_0x16223d,0x3),_0x16223d['status']=_0x27b8e6);else {var _0x3fbd7b=_0x324f31+(_0x16223d['w_bits']-0x8<<0x4)<<0x8;_0x3fbd7b|=(0x2<=_0x16223d['strategy']||_0x16223d['level']<0x2?0x0:_0x16223d['level']<0x6?0x1:0x6===_0x16223d['level']?0x2:0x3)<<0x6,0x0!==_0x16223d['strstart']&&(_0x3fbd7b|=0x20),_0x3fbd7b+=0x1f-_0x3fbd7b%0x1f,_0x16223d['status']=_0x27b8e6,_0xb63262(_0x16223d,_0x3fbd7b),0x0!==_0x16223d['strstart']&&(_0xb63262(_0x16223d,_0xe3eed2['adler']>>>0x10),_0xb63262(_0x16223d,0xffff&_0xe3eed2['adler'])),_0xe3eed2['adler']=0x1;}}if(0x45===_0x16223d['status']){if(_0x16223d['gzhead']['extra']){for(_0x596f21=_0x16223d['pending'];_0x16223d['gzindex']<(0xffff&_0x16223d['gzhead']['extra']['length'])&&(_0x16223d['pending']!==_0x16223d['pending_buf_size']||(_0x16223d['gzhead']['hcrc']&&_0x16223d['pending']>_0x596f21&&(_0xe3eed2['adler']=_0x1b47cd(_0xe3eed2['adler'],_0x16223d['pending_buf'],_0x16223d['pending']-_0x596f21,_0x596f21)),_0x4d20f3(_0xe3eed2),_0x596f21=_0x16223d['pending'],_0x16223d['pending']!==_0x16223d['pending_buf_size']));)_0x3712d5(_0x16223d,0xff&_0x16223d['gzhead']['extra'][_0x16223d['gzindex']]),_0x16223d['gzindex']++;_0x16223d['gzhead']['hcrc']&&_0x16223d['pending']>_0x596f21&&(_0xe3eed2['adler']=_0x1b47cd(_0xe3eed2['adler'],_0x16223d['pending_buf'],_0x16223d['pending']-_0x596f21,_0x596f21)),_0x16223d['gzindex']===_0x16223d['gzhead']['extra']['length']&&(_0x16223d['gzindex']=0x0,_0x16223d['status']=0x49);}else _0x16223d['status']=0x49;}if(0x49===_0x16223d['status']){if(_0x16223d['gzhead']['name']){_0x596f21=_0x16223d['pending'];do{if(_0x16223d['pending']===_0x16223d['pending_buf_size']&&(_0x16223d['gzhead']['hcrc']&&_0x16223d['pending']>_0x596f21&&(_0xe3eed2['adler']=_0x1b47cd(_0xe3eed2['adler'],_0x16223d['pending_buf'],_0x16223d['pending']-_0x596f21,_0x596f21)),_0x4d20f3(_0xe3eed2),_0x596f21=_0x16223d['pending'],_0x16223d['pending']===_0x16223d['pending_buf_size'])){_0x42c608=0x1;break;}_0x42c608=_0x16223d['gzindex']<_0x16223d['gzhead']['name']['length']?0xff&_0x16223d['gzhead']['name']['charCodeAt'](_0x16223d['gzindex']++):0x0,_0x3712d5(_0x16223d,_0x42c608);}while(0x0!==_0x42c608);_0x16223d['gzhead']['hcrc']&&_0x16223d['pending']>_0x596f21&&(_0xe3eed2['adler']=_0x1b47cd(_0xe3eed2['adler'],_0x16223d['pending_buf'],_0x16223d['pending']-_0x596f21,_0x596f21)),0x0===_0x42c608&&(_0x16223d['gzindex']=0x0,_0x16223d['status']=0x5b);}else _0x16223d['status']=0x5b;}if(0x5b===_0x16223d['status']){if(_0x16223d['gzhead']['comment']){_0x596f21=_0x16223d['pending'];do{if(_0x16223d['pending']===_0x16223d['pending_buf_size']&&(_0x16223d['gzhead']['hcrc']&&_0x16223d['pending']>_0x596f21&&(_0xe3eed2['adler']=_0x1b47cd(_0xe3eed2['adler'],_0x16223d['pending_buf'],_0x16223d['pending']-_0x596f21,_0x596f21)),_0x4d20f3(_0xe3eed2),_0x596f21=_0x16223d['pending'],_0x16223d['pending']===_0x16223d['pending_buf_size'])){_0x42c608=0x1;break;}_0x42c608=_0x16223d['gzindex']<_0x16223d['gzhead']['comment']['length']?0xff&_0x16223d['gzhead']['comment']['charCodeAt'](_0x16223d['gzindex']++):0x0,_0x3712d5(_0x16223d,_0x42c608);}while(0x0!==_0x42c608);_0x16223d['gzhead']['hcrc']&&_0x16223d['pending']>_0x596f21&&(_0xe3eed2['adler']=_0x1b47cd(_0xe3eed2['adler'],_0x16223d['pending_buf'],_0x16223d['pending']-_0x596f21,_0x596f21)),0x0===_0x42c608&&(_0x16223d['status']=0x67);}else _0x16223d['status']=0x67;}if(0x67===_0x16223d['status']&&(_0x16223d['gzhead']['hcrc']?(_0x16223d['pending']+0x2>_0x16223d['pending_buf_size']&&_0x4d20f3(_0xe3eed2),_0x16223d['pending']+0x2<=_0x16223d['pending_buf_size']&&(_0x3712d5(_0x16223d,0xff&_0xe3eed2['adler']),_0x3712d5(_0x16223d,_0xe3eed2['adler']>>0x8&0xff),_0xe3eed2['adler']=0x0,_0x16223d['status']=_0x27b8e6)):_0x16223d['status']=_0x27b8e6),0x0!==_0x16223d['pending']){if(_0x4d20f3(_0xe3eed2),0x0===_0xe3eed2['avail_out'])return _0x16223d['last_flush']=-0x1,_0x433aab;}else {if(0x0===_0xe3eed2['avail_in']&&_0x1469b8(_0xaa82f8)<=_0x1469b8(_0x417e83)&&_0xaa82f8!==_0xfc31df)return _0x135f79(_0xe3eed2,-0x5);}if(0x29a===_0x16223d['status']&&0x0!==_0xe3eed2['avail_in'])return _0x135f79(_0xe3eed2,-0x5);if(0x0!==_0xe3eed2['avail_in']||0x0!==_0x16223d['lookahead']||_0xaa82f8!==_0x5dd6a3&&0x29a!==_0x16223d['status']){var _0x137fcb=0x2===_0x16223d['strategy']?function(_0x527b07,_0x4286f1){for(var _0x49a1a5;;){if(0x0===_0x527b07['lookahead']&&(_0x401942(_0x527b07),0x0===_0x527b07['lookahead'])){if(_0x4286f1===_0x5dd6a3)return _0x253392;break;}if(_0x527b07['match_length']=0x0,_0x49a1a5=_0x5017fb['_tr_tally'](_0x527b07,0x0,_0x527b07['window'][_0x527b07['strstart']]),_0x527b07['lookahead']--,_0x527b07['strstart']++,_0x49a1a5&&(_0x5b2a20(_0x527b07,!0x1),0x0===_0x527b07['strm']['avail_out']))return _0x253392;}return _0x527b07['insert']=0x0,_0x4286f1===_0xfc31df?(_0x5b2a20(_0x527b07,!0x0),0x0===_0x527b07['strm']['avail_out']?_0x620163:_0x973f69):_0x527b07['last_lit']&&(_0x5b2a20(_0x527b07,!0x1),0x0===_0x527b07['strm']['avail_out'])?_0x253392:_0x20ef03;}(_0x16223d,_0xaa82f8):0x3===_0x16223d['strategy']?function(_0x4d84dd,_0x3c420a){for(var _0x17a5b5,_0x523488,_0x4eae4d,_0x271b27,_0x2ad8a0=_0x4d84dd['window'];;){if(_0x4d84dd['lookahead']<=_0x1d490d){if(_0x401942(_0x4d84dd),_0x4d84dd['lookahead']<=_0x1d490d&&_0x3c420a===_0x5dd6a3)return _0x253392;if(0x0===_0x4d84dd['lookahead'])break;}if(_0x4d84dd['match_length']=0x0,_0x4d84dd['lookahead']>=_0x4d19ba&&0x0<_0x4d84dd['strstart']&&(_0x523488=_0x2ad8a0[_0x4eae4d=_0x4d84dd['strstart']-0x1])===_0x2ad8a0[++_0x4eae4d]&&_0x523488===_0x2ad8a0[++_0x4eae4d]&&_0x523488===_0x2ad8a0[++_0x4eae4d]){_0x271b27=_0x4d84dd['strstart']+_0x1d490d;do{}while(_0x523488===_0x2ad8a0[++_0x4eae4d]&&_0x523488===_0x2ad8a0[++_0x4eae4d]&&_0x523488===_0x2ad8a0[++_0x4eae4d]&&_0x523488===_0x2ad8a0[++_0x4eae4d]&&_0x523488===_0x2ad8a0[++_0x4eae4d]&&_0x523488===_0x2ad8a0[++_0x4eae4d]&&_0x523488===_0x2ad8a0[++_0x4eae4d]&&_0x523488===_0x2ad8a0[++_0x4eae4d]&&_0x4eae4d<_0x271b27);_0x4d84dd['match_length']=_0x1d490d-(_0x271b27-_0x4eae4d),_0x4d84dd['match_length']>_0x4d84dd['lookahead']&&(_0x4d84dd['match_length']=_0x4d84dd['lookahead']);}if(_0x4d84dd['match_length']>=_0x4d19ba?(_0x17a5b5=_0x5017fb['_tr_tally'](_0x4d84dd,0x1,_0x4d84dd['match_length']-_0x4d19ba),_0x4d84dd['lookahead']-=_0x4d84dd['match_length'],_0x4d84dd['strstart']+=_0x4d84dd['match_length'],_0x4d84dd['match_length']=0x0):(_0x17a5b5=_0x5017fb['_tr_tally'](_0x4d84dd,0x0,_0x4d84dd['window'][_0x4d84dd['strstart']]),_0x4d84dd['lookahead']--,_0x4d84dd['strstart']++),_0x17a5b5&&(_0x5b2a20(_0x4d84dd,!0x1),0x0===_0x4d84dd['strm']['avail_out']))return _0x253392;}return _0x4d84dd['insert']=0x0,_0x3c420a===_0xfc31df?(_0x5b2a20(_0x4d84dd,!0x0),0x0===_0x4d84dd['strm']['avail_out']?_0x620163:_0x973f69):_0x4d84dd['last_lit']&&(_0x5b2a20(_0x4d84dd,!0x1),0x0===_0x4d84dd['strm']['avail_out'])?_0x253392:_0x20ef03;}(_0x16223d,_0xaa82f8):_0x21de67[_0x16223d['level']]['func'](_0x16223d,_0xaa82f8);if(_0x137fcb!==_0x620163&&_0x137fcb!==_0x973f69||(_0x16223d['status']=0x29a),_0x137fcb===_0x253392||_0x137fcb===_0x620163)return 0x0===_0xe3eed2['avail_out']&&(_0x16223d['last_flush']=-0x1),_0x433aab;if(_0x137fcb===_0x20ef03&&(0x1===_0xaa82f8?_0x5017fb['_tr_align'](_0x16223d):0x5!==_0xaa82f8&&(_0x5017fb['_tr_stored_block'](_0x16223d,0x0,0x0,!0x1),0x3===_0xaa82f8&&(_0x36497b(_0x16223d['head']),0x0===_0x16223d['lookahead']&&(_0x16223d['strstart']=0x0,_0x16223d['block_start']=0x0,_0x16223d['insert']=0x0))),_0x4d20f3(_0xe3eed2),0x0===_0xe3eed2['avail_out']))return _0x16223d['last_flush']=-0x1,_0x433aab;}return _0xaa82f8!==_0xfc31df?_0x433aab:_0x16223d['wrap']<=0x0?0x1:(0x2===_0x16223d['wrap']?(_0x3712d5(_0x16223d,0xff&_0xe3eed2['adler']),_0x3712d5(_0x16223d,_0xe3eed2['adler']>>0x8&0xff),_0x3712d5(_0x16223d,_0xe3eed2['adler']>>0x10&0xff),_0x3712d5(_0x16223d,_0xe3eed2['adler']>>0x18&0xff),_0x3712d5(_0x16223d,0xff&_0xe3eed2['total_in']),_0x3712d5(_0x16223d,_0xe3eed2['total_in']>>0x8&0xff),_0x3712d5(_0x16223d,_0xe3eed2['total_in']>>0x10&0xff),_0x3712d5(_0x16223d,_0xe3eed2['total_in']>>0x18&0xff)):(_0xb63262(_0x16223d,_0xe3eed2['adler']>>>0x10),_0xb63262(_0x16223d,0xffff&_0xe3eed2['adler'])),_0x4d20f3(_0xe3eed2),0x0<_0x16223d['wrap']&&(_0x16223d['wrap']=-_0x16223d['wrap']),0x0!==_0x16223d['pending']?_0x433aab:0x1);},_0x15af75['deflateEnd']=function(_0x4fc275){var _0x3b32cb;return _0x4fc275&&_0x4fc275['state']?(_0x3b32cb=_0x4fc275['state']['status'])!==_0x1fa1a2&&0x45!==_0x3b32cb&&0x49!==_0x3b32cb&&0x5b!==_0x3b32cb&&0x67!==_0x3b32cb&&_0x3b32cb!==_0x27b8e6&&0x29a!==_0x3b32cb?_0x135f79(_0x4fc275,_0x64825c):(_0x4fc275['state']=null,_0x3b32cb===_0x27b8e6?_0x135f79(_0x4fc275,-0x3):_0x433aab):_0x64825c;},_0x15af75['deflateSetDictionary']=function(_0x20756f,_0x39b249){var _0x14364e,_0x4955d4,_0x53ba08,_0x41a515,_0xacf783,_0x998add,_0x2a6434,_0x349486,_0x423024=_0x39b249['length'];if(!_0x20756f||!_0x20756f['state'])return _0x64825c;if(0x2===(_0x41a515=(_0x14364e=_0x20756f['state'])['wrap'])||0x1===_0x41a515&&_0x14364e['status']!==_0x1fa1a2||_0x14364e['lookahead'])return _0x64825c;for(0x1===_0x41a515&&(_0x20756f['adler']=_0x3d3ad8(_0x20756f['adler'],_0x39b249,_0x423024,0x0)),_0x14364e['wrap']=0x0,_0x423024>=_0x14364e['w_size']&&(0x0===_0x41a515&&(_0x36497b(_0x14364e['head']),_0x14364e['strstart']=0x0,_0x14364e['block_start']=0x0,_0x14364e['insert']=0x0),_0x349486=new _0x439ca7['Buf8'](_0x14364e['w_size']),_0x439ca7['arraySet'](_0x349486,_0x39b249,_0x423024-_0x14364e['w_size'],_0x14364e['w_size'],0x0),_0x39b249=_0x349486,_0x423024=_0x14364e['w_size']),_0xacf783=_0x20756f['avail_in'],_0x998add=_0x20756f['next_in'],_0x2a6434=_0x20756f['input'],_0x20756f['avail_in']=_0x423024,_0x20756f['next_in']=0x0,_0x20756f['input']=_0x39b249,_0x401942(_0x14364e);_0x14364e['lookahead']>=_0x4d19ba;){for(_0x4955d4=_0x14364e['strstart'],_0x53ba08=_0x14364e['lookahead']-(_0x4d19ba-0x1);_0x14364e['ins_h']=(_0x14364e['ins_h']<<_0x14364e['hash_shift']^_0x14364e['window'][_0x4955d4+_0x4d19ba-0x1])&_0x14364e['hash_mask'],_0x14364e['prev'][_0x4955d4&_0x14364e['w_mask']]=_0x14364e['head'][_0x14364e['ins_h']],_0x14364e['head'][_0x14364e['ins_h']]=_0x4955d4,_0x4955d4++,--_0x53ba08;);_0x14364e['strstart']=_0x4955d4,_0x14364e['lookahead']=_0x4d19ba-0x1,_0x401942(_0x14364e);}return _0x14364e['strstart']+=_0x14364e['lookahead'],_0x14364e['block_start']=_0x14364e['strstart'],_0x14364e['insert']=_0x14364e['lookahead'],_0x14364e['lookahead']=0x0,_0x14364e['match_length']=_0x14364e['prev_length']=_0x4d19ba-0x1,_0x14364e['match_available']=0x0,_0x20756f['next_in']=_0x998add,_0x20756f['input']=_0x2a6434,_0x20756f['avail_in']=_0xacf783,_0x14364e['wrap']=_0x41a515,_0x433aab;},_0x15af75['deflateInfo']='pako\x20deflate\x20(from\x20Nodeca\x20project)';},{'../utils/common':0x29,'./adler32':0x2b,'./crc32':0x2d,'./messages':0x33,'./trees':0x34}],0x2f:[function(_0x4e1e05,_0x1018bc,_0x1dd0dc){_0x1018bc['exports']=function(){this['text']=0x0,this['time']=0x0,this['xflags']=0x0,this['os']=0x0,this['extra']=null,this['extra_len']=0x0,this['name']='',this['comment']='',this['hcrc']=0x0,this['done']=!0x1;};},{}],0x30:[function(_0x11360b,_0x5e4bcd,_0x4ab183){_0x5e4bcd['exports']=function(_0x59b067,_0x1b7581){var _0x5b853b,_0x7a8b8e,_0x4784a9,_0x3c289b,_0x40826c,_0x492ad8,_0x1c15e2,_0x11650d,_0x44aa08,_0x917a16,_0xc92f58,_0x55b48d,_0x4a9c3b,_0x3d3a56,_0x5638c9,_0x3aa99f,_0x4213fd,_0x38a1e9,_0x56cc8a,_0x34fe48,_0x509271,_0x551b58,_0x448999,_0x3799af,_0x515fc9;_0x5b853b=_0x59b067['state'],_0x7a8b8e=_0x59b067['next_in'],_0x3799af=_0x59b067['input'],_0x4784a9=_0x7a8b8e+(_0x59b067['avail_in']-0x5),_0x3c289b=_0x59b067['next_out'],_0x515fc9=_0x59b067['output'],_0x40826c=_0x3c289b-(_0x1b7581-_0x59b067['avail_out']),_0x492ad8=_0x3c289b+(_0x59b067['avail_out']-0x101),_0x1c15e2=_0x5b853b['dmax'],_0x11650d=_0x5b853b['wsize'],_0x44aa08=_0x5b853b['whave'],_0x917a16=_0x5b853b['wnext'],_0xc92f58=_0x5b853b['window'],_0x55b48d=_0x5b853b['hold'],_0x4a9c3b=_0x5b853b['bits'],_0x3d3a56=_0x5b853b['lencode'],_0x5638c9=_0x5b853b['distcode'],_0x3aa99f=(0x1<<_0x5b853b['lenbits'])-0x1,_0x4213fd=(0x1<<_0x5b853b['distbits'])-0x1;_0x4eb11e:do{_0x4a9c3b<0xf&&(_0x55b48d+=_0x3799af[_0x7a8b8e++]<<_0x4a9c3b,_0x4a9c3b+=0x8,_0x55b48d+=_0x3799af[_0x7a8b8e++]<<_0x4a9c3b,_0x4a9c3b+=0x8),_0x38a1e9=_0x3d3a56[_0x55b48d&_0x3aa99f];_0x180224:for(;;){if(_0x55b48d>>>=_0x56cc8a=_0x38a1e9>>>0x18,_0x4a9c3b-=_0x56cc8a,0x0===(_0x56cc8a=_0x38a1e9>>>0x10&0xff))_0x515fc9[_0x3c289b++]=0xffff&_0x38a1e9;else {if(!(0x10&_0x56cc8a)){if(0x0==(0x40&_0x56cc8a)){_0x38a1e9=_0x3d3a56[(0xffff&_0x38a1e9)+(_0x55b48d&(0x1<<_0x56cc8a)-0x1)];continue _0x180224;}if(0x20&_0x56cc8a){_0x5b853b['mode']=0xc;break _0x4eb11e;}_0x59b067['msg']='invalid\x20literal/length\x20code',_0x5b853b['mode']=0x1e;break _0x4eb11e;}_0x34fe48=0xffff&_0x38a1e9,(_0x56cc8a&=0xf)&&(_0x4a9c3b<_0x56cc8a&&(_0x55b48d+=_0x3799af[_0x7a8b8e++]<<_0x4a9c3b,_0x4a9c3b+=0x8),_0x34fe48+=_0x55b48d&(0x1<<_0x56cc8a)-0x1,_0x55b48d>>>=_0x56cc8a,_0x4a9c3b-=_0x56cc8a),_0x4a9c3b<0xf&&(_0x55b48d+=_0x3799af[_0x7a8b8e++]<<_0x4a9c3b,_0x4a9c3b+=0x8,_0x55b48d+=_0x3799af[_0x7a8b8e++]<<_0x4a9c3b,_0x4a9c3b+=0x8),_0x38a1e9=_0x5638c9[_0x55b48d&_0x4213fd];_0xb17b52:for(;;){if(_0x55b48d>>>=_0x56cc8a=_0x38a1e9>>>0x18,_0x4a9c3b-=_0x56cc8a,!(0x10&(_0x56cc8a=_0x38a1e9>>>0x10&0xff))){if(0x0==(0x40&_0x56cc8a)){_0x38a1e9=_0x5638c9[(0xffff&_0x38a1e9)+(_0x55b48d&(0x1<<_0x56cc8a)-0x1)];continue _0xb17b52;}_0x59b067['msg']='invalid\x20distance\x20code',_0x5b853b['mode']=0x1e;break _0x4eb11e;}if(_0x509271=0xffff&_0x38a1e9,_0x4a9c3b<(_0x56cc8a&=0xf)&&(_0x55b48d+=_0x3799af[_0x7a8b8e++]<<_0x4a9c3b,(_0x4a9c3b+=0x8)<_0x56cc8a&&(_0x55b48d+=_0x3799af[_0x7a8b8e++]<<_0x4a9c3b,_0x4a9c3b+=0x8)),_0x1c15e2<(_0x509271+=_0x55b48d&(0x1<<_0x56cc8a)-0x1)){_0x59b067['msg']='invalid\x20distance\x20too\x20far\x20back',_0x5b853b['mode']=0x1e;break _0x4eb11e;}if(_0x55b48d>>>=_0x56cc8a,_0x4a9c3b-=_0x56cc8a,(_0x56cc8a=_0x3c289b-_0x40826c)<_0x509271){if(_0x44aa08<(_0x56cc8a=_0x509271-_0x56cc8a)&&_0x5b853b['sane']){_0x59b067['msg']='invalid\x20distance\x20too\x20far\x20back',_0x5b853b['mode']=0x1e;break _0x4eb11e;}if(_0x448999=_0xc92f58,(_0x551b58=0x0)===_0x917a16){if(_0x551b58+=_0x11650d-_0x56cc8a,_0x56cc8a<_0x34fe48){for(_0x34fe48-=_0x56cc8a;_0x515fc9[_0x3c289b++]=_0xc92f58[_0x551b58++],--_0x56cc8a;);_0x551b58=_0x3c289b-_0x509271,_0x448999=_0x515fc9;}}else {if(_0x917a16<_0x56cc8a){if(_0x551b58+=_0x11650d+_0x917a16-_0x56cc8a,(_0x56cc8a-=_0x917a16)<_0x34fe48){for(_0x34fe48-=_0x56cc8a;_0x515fc9[_0x3c289b++]=_0xc92f58[_0x551b58++],--_0x56cc8a;);if(_0x551b58=0x0,_0x917a16<_0x34fe48){for(_0x34fe48-=_0x56cc8a=_0x917a16;_0x515fc9[_0x3c289b++]=_0xc92f58[_0x551b58++],--_0x56cc8a;);_0x551b58=_0x3c289b-_0x509271,_0x448999=_0x515fc9;}}}else {if(_0x551b58+=_0x917a16-_0x56cc8a,_0x56cc8a<_0x34fe48){for(_0x34fe48-=_0x56cc8a;_0x515fc9[_0x3c289b++]=_0xc92f58[_0x551b58++],--_0x56cc8a;);_0x551b58=_0x3c289b-_0x509271,_0x448999=_0x515fc9;}}}for(;0x2<_0x34fe48;)_0x515fc9[_0x3c289b++]=_0x448999[_0x551b58++],_0x515fc9[_0x3c289b++]=_0x448999[_0x551b58++],_0x515fc9[_0x3c289b++]=_0x448999[_0x551b58++],_0x34fe48-=0x3;_0x34fe48&&(_0x515fc9[_0x3c289b++]=_0x448999[_0x551b58++],0x1<_0x34fe48&&(_0x515fc9[_0x3c289b++]=_0x448999[_0x551b58++]));}else {for(_0x551b58=_0x3c289b-_0x509271;_0x515fc9[_0x3c289b++]=_0x515fc9[_0x551b58++],_0x515fc9[_0x3c289b++]=_0x515fc9[_0x551b58++],_0x515fc9[_0x3c289b++]=_0x515fc9[_0x551b58++],0x2<(_0x34fe48-=0x3););_0x34fe48&&(_0x515fc9[_0x3c289b++]=_0x515fc9[_0x551b58++],0x1<_0x34fe48&&(_0x515fc9[_0x3c289b++]=_0x515fc9[_0x551b58++]));}break;}}break;}}while(_0x7a8b8e<_0x4784a9&&_0x3c289b<_0x492ad8);_0x7a8b8e-=_0x34fe48=_0x4a9c3b>>0x3,_0x55b48d&=(0x1<<(_0x4a9c3b-=_0x34fe48<<0x3))-0x1,_0x59b067['next_in']=_0x7a8b8e,_0x59b067['next_out']=_0x3c289b,_0x59b067['avail_in']=_0x7a8b8e<_0x4784a9?_0x4784a9-_0x7a8b8e+0x5:0x5-(_0x7a8b8e-_0x4784a9),_0x59b067['avail_out']=_0x3c289b<_0x492ad8?_0x492ad8-_0x3c289b+0x101:0x101-(_0x3c289b-_0x492ad8),_0x5b853b['hold']=_0x55b48d,_0x5b853b['bits']=_0x4a9c3b;};},{}],0x31:[function(_0x34e8d2,_0x17b179,_0x2760c6){var _0x3c0efa=_0x34e8d2('../utils/common'),_0x326674=_0x34e8d2('./adler32'),_0x48f97d=_0x34e8d2('./crc32'),_0x4311fc=_0x34e8d2('./inffast'),_0x485254=_0x34e8d2('./inftrees'),_0x56ecfc=0x1,_0x130284=0x2,_0x4f29e2=0x0,_0x1cc81a=-0x2,_0x182bb6=0x1,_0x46a19d=0x354,_0x31e490=0x250;function _0x5aeacb(_0x470956){return (_0x470956>>>0x18&0xff)+(_0x470956>>>0x8&0xff00)+((0xff00&_0x470956)<<0x8)+((0xff&_0x470956)<<0x18);}function _0x124a72(){this['mode']=0x0,this['last']=!0x1,this['wrap']=0x0,this['havedict']=!0x1,this['flags']=0x0,this['dmax']=0x0,this['check']=0x0,this['total']=0x0,this['head']=null,this['wbits']=0x0,this['wsize']=0x0,this['whave']=0x0,this['wnext']=0x0,this['window']=null,this['hold']=0x0,this['bits']=0x0,this['length']=0x0,this['offset']=0x0,this['extra']=0x0,this['lencode']=null,this['distcode']=null,this['lenbits']=0x0,this['distbits']=0x0,this['ncode']=0x0,this['nlen']=0x0,this['ndist']=0x0,this['have']=0x0,this['next']=null,this['lens']=new _0x3c0efa['Buf16'](0x140),this['work']=new _0x3c0efa['Buf16'](0x120),this['lendyn']=null,this['distdyn']=null,this['sane']=0x0,this['back']=0x0,this['was']=0x0;}function _0x5eea12(_0x1498e8){var _0x961891;return _0x1498e8&&_0x1498e8['state']?(_0x961891=_0x1498e8['state'],_0x1498e8['total_in']=_0x1498e8['total_out']=_0x961891['total']=0x0,_0x1498e8['msg']='',_0x961891['wrap']&&(_0x1498e8['adler']=0x1&_0x961891['wrap']),_0x961891['mode']=_0x182bb6,_0x961891['last']=0x0,_0x961891['havedict']=0x0,_0x961891['dmax']=0x8000,_0x961891['head']=null,_0x961891['hold']=0x0,_0x961891['bits']=0x0,_0x961891['lencode']=_0x961891['lendyn']=new _0x3c0efa['Buf32'](_0x46a19d),_0x961891['distcode']=_0x961891['distdyn']=new _0x3c0efa['Buf32'](_0x31e490),_0x961891['sane']=0x1,_0x961891['back']=-0x1,_0x4f29e2):_0x1cc81a;}function _0x3186e1(_0xe16f57){var _0x2edf22;return _0xe16f57&&_0xe16f57['state']?((_0x2edf22=_0xe16f57['state'])['wsize']=0x0,_0x2edf22['whave']=0x0,_0x2edf22['wnext']=0x0,_0x5eea12(_0xe16f57)):_0x1cc81a;}function _0x285b95(_0x2b88e4,_0x2abe2d){var _0x1f7b4c,_0xb08b3c;return _0x2b88e4&&_0x2b88e4['state']?(_0xb08b3c=_0x2b88e4['state'],_0x2abe2d<0x0?(_0x1f7b4c=0x0,_0x2abe2d=-_0x2abe2d):(_0x1f7b4c=0x1+(_0x2abe2d>>0x4),_0x2abe2d<0x30&&(_0x2abe2d&=0xf)),_0x2abe2d&&(_0x2abe2d<0x8||0xf<_0x2abe2d)?_0x1cc81a:(null!==_0xb08b3c['window']&&_0xb08b3c['wbits']!==_0x2abe2d&&(_0xb08b3c['window']=null),_0xb08b3c['wrap']=_0x1f7b4c,_0xb08b3c['wbits']=_0x2abe2d,_0x3186e1(_0x2b88e4))):_0x1cc81a;}function _0x19bfe9(_0x49defd,_0x167103){var _0x561a73,_0x1c620;return _0x49defd?(_0x1c620=new _0x124a72(),(_0x49defd['state']=_0x1c620)['window']=null,(_0x561a73=_0x285b95(_0x49defd,_0x167103))!==_0x4f29e2&&(_0x49defd['state']=null),_0x561a73):_0x1cc81a;}var _0x25fbef,_0x3de75c,_0x63bab=!0x0;function _0x128a45(_0x4765af){if(_0x63bab){var _0x5d9f79;for(_0x25fbef=new _0x3c0efa['Buf32'](0x200),_0x3de75c=new _0x3c0efa['Buf32'](0x20),_0x5d9f79=0x0;_0x5d9f79<0x90;)_0x4765af['lens'][_0x5d9f79++]=0x8;for(;_0x5d9f79<0x100;)_0x4765af['lens'][_0x5d9f79++]=0x9;for(;_0x5d9f79<0x118;)_0x4765af['lens'][_0x5d9f79++]=0x7;for(;_0x5d9f79<0x120;)_0x4765af['lens'][_0x5d9f79++]=0x8;for(_0x485254(_0x56ecfc,_0x4765af['lens'],0x0,0x120,_0x25fbef,0x0,_0x4765af['work'],{'bits':0x9}),_0x5d9f79=0x0;_0x5d9f79<0x20;)_0x4765af['lens'][_0x5d9f79++]=0x5;_0x485254(_0x130284,_0x4765af['lens'],0x0,0x20,_0x3de75c,0x0,_0x4765af['work'],{'bits':0x5}),_0x63bab=!0x1;}_0x4765af['lencode']=_0x25fbef,_0x4765af['lenbits']=0x9,_0x4765af['distcode']=_0x3de75c,_0x4765af['distbits']=0x5;}function _0x1452b8(_0x2b3f76,_0x5174dc,_0x31605b,_0xae3888){var _0xf20be1,_0x26f26a=_0x2b3f76['state'];return null===_0x26f26a['window']&&(_0x26f26a['wsize']=0x1<<_0x26f26a['wbits'],_0x26f26a['wnext']=0x0,_0x26f26a['whave']=0x0,_0x26f26a['window']=new _0x3c0efa['Buf8'](_0x26f26a['wsize'])),_0xae3888>=_0x26f26a['wsize']?(_0x3c0efa['arraySet'](_0x26f26a['window'],_0x5174dc,_0x31605b-_0x26f26a['wsize'],_0x26f26a['wsize'],0x0),_0x26f26a['wnext']=0x0,_0x26f26a['whave']=_0x26f26a['wsize']):(_0xae3888<(_0xf20be1=_0x26f26a['wsize']-_0x26f26a['wnext'])&&(_0xf20be1=_0xae3888),_0x3c0efa['arraySet'](_0x26f26a['window'],_0x5174dc,_0x31605b-_0xae3888,_0xf20be1,_0x26f26a['wnext']),(_0xae3888-=_0xf20be1)?(_0x3c0efa['arraySet'](_0x26f26a['window'],_0x5174dc,_0x31605b-_0xae3888,_0xae3888,0x0),_0x26f26a['wnext']=_0xae3888,_0x26f26a['whave']=_0x26f26a['wsize']):(_0x26f26a['wnext']+=_0xf20be1,_0x26f26a['wnext']===_0x26f26a['wsize']&&(_0x26f26a['wnext']=0x0),_0x26f26a['whave']<_0x26f26a['wsize']&&(_0x26f26a['whave']+=_0xf20be1))),0x0;}_0x2760c6['inflateReset']=_0x3186e1,_0x2760c6['inflateReset2']=_0x285b95,_0x2760c6['inflateResetKeep']=_0x5eea12,_0x2760c6['inflateInit']=function(_0x1b6ce6){return _0x19bfe9(_0x1b6ce6,0xf);},_0x2760c6['inflateInit2']=_0x19bfe9,_0x2760c6['inflate']=function(_0x3d9ee1,_0x1aec28){var _0x42fa06,_0x4975d4,_0x233842,_0x173bcd,_0x162fbc,_0x3e6503,_0x60bf6d,_0x3085d3,_0x528049,_0x35e46c,_0x132b4c,_0x1694b0,_0x36839e,_0x4840ba,_0x44771c,_0x4f2a2b,_0x4b27a3,_0x2bfa37,_0x3a7e6d,_0x504e36,_0x2622fc,_0x5134b5,_0x1fa3b5,_0x37308b,_0x32d37a=0x0,_0x93d641=new _0x3c0efa['Buf8'](0x4),_0x44a9bb=[0x10,0x11,0x12,0x0,0x8,0x7,0x9,0x6,0xa,0x5,0xb,0x4,0xc,0x3,0xd,0x2,0xe,0x1,0xf];if(!_0x3d9ee1||!_0x3d9ee1['state']||!_0x3d9ee1['output']||!_0x3d9ee1['input']&&0x0!==_0x3d9ee1['avail_in'])return _0x1cc81a;0xc===(_0x42fa06=_0x3d9ee1['state'])['mode']&&(_0x42fa06['mode']=0xd),_0x162fbc=_0x3d9ee1['next_out'],_0x233842=_0x3d9ee1['output'],_0x60bf6d=_0x3d9ee1['avail_out'],_0x173bcd=_0x3d9ee1['next_in'],_0x4975d4=_0x3d9ee1['input'],_0x3e6503=_0x3d9ee1['avail_in'],_0x3085d3=_0x42fa06['hold'],_0x528049=_0x42fa06['bits'],_0x35e46c=_0x3e6503,_0x132b4c=_0x60bf6d,_0x5134b5=_0x4f29e2;_0x3e4f2c:for(;;)switch(_0x42fa06['mode']){case _0x182bb6:if(0x0===_0x42fa06['wrap']){_0x42fa06['mode']=0xd;break;}for(;_0x528049<0x10;){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}if(0x2&_0x42fa06['wrap']&&0x8b1f===_0x3085d3){_0x93d641[_0x42fa06['check']=0x0]=0xff&_0x3085d3,_0x93d641[0x1]=_0x3085d3>>>0x8&0xff,_0x42fa06['check']=_0x48f97d(_0x42fa06['check'],_0x93d641,0x2,0x0),_0x528049=_0x3085d3=0x0,_0x42fa06['mode']=0x2;break;}if(_0x42fa06['flags']=0x0,_0x42fa06['head']&&(_0x42fa06['head']['done']=!0x1),!(0x1&_0x42fa06['wrap'])||(((0xff&_0x3085d3)<<0x8)+(_0x3085d3>>0x8))%0x1f){_0x3d9ee1['msg']='incorrect\x20header\x20check',_0x42fa06['mode']=0x1e;break;}if(0x8!=(0xf&_0x3085d3)){_0x3d9ee1['msg']='unknown\x20compression\x20method',_0x42fa06['mode']=0x1e;break;}if(_0x528049-=0x4,_0x2622fc=0x8+(0xf&(_0x3085d3>>>=0x4)),0x0===_0x42fa06['wbits'])_0x42fa06['wbits']=_0x2622fc;else {if(_0x2622fc>_0x42fa06['wbits']){_0x3d9ee1['msg']='invalid\x20window\x20size',_0x42fa06['mode']=0x1e;break;}}_0x42fa06['dmax']=0x1<<_0x2622fc,_0x3d9ee1['adler']=_0x42fa06['check']=0x1,_0x42fa06['mode']=0x200&_0x3085d3?0xa:0xc,_0x528049=_0x3085d3=0x0;break;case 0x2:for(;_0x528049<0x10;){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}if(_0x42fa06['flags']=_0x3085d3,0x8!=(0xff&_0x42fa06['flags'])){_0x3d9ee1['msg']='unknown\x20compression\x20method',_0x42fa06['mode']=0x1e;break;}if(0xe000&_0x42fa06['flags']){_0x3d9ee1['msg']='unknown\x20header\x20flags\x20set',_0x42fa06['mode']=0x1e;break;}_0x42fa06['head']&&(_0x42fa06['head']['text']=_0x3085d3>>0x8&0x1),0x200&_0x42fa06['flags']&&(_0x93d641[0x0]=0xff&_0x3085d3,_0x93d641[0x1]=_0x3085d3>>>0x8&0xff,_0x42fa06['check']=_0x48f97d(_0x42fa06['check'],_0x93d641,0x2,0x0)),_0x528049=_0x3085d3=0x0,_0x42fa06['mode']=0x3;case 0x3:for(;_0x528049<0x20;){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}_0x42fa06['head']&&(_0x42fa06['head']['time']=_0x3085d3),0x200&_0x42fa06['flags']&&(_0x93d641[0x0]=0xff&_0x3085d3,_0x93d641[0x1]=_0x3085d3>>>0x8&0xff,_0x93d641[0x2]=_0x3085d3>>>0x10&0xff,_0x93d641[0x3]=_0x3085d3>>>0x18&0xff,_0x42fa06['check']=_0x48f97d(_0x42fa06['check'],_0x93d641,0x4,0x0)),_0x528049=_0x3085d3=0x0,_0x42fa06['mode']=0x4;case 0x4:for(;_0x528049<0x10;){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}_0x42fa06['head']&&(_0x42fa06['head']['xflags']=0xff&_0x3085d3,_0x42fa06['head']['os']=_0x3085d3>>0x8),0x200&_0x42fa06['flags']&&(_0x93d641[0x0]=0xff&_0x3085d3,_0x93d641[0x1]=_0x3085d3>>>0x8&0xff,_0x42fa06['check']=_0x48f97d(_0x42fa06['check'],_0x93d641,0x2,0x0)),_0x528049=_0x3085d3=0x0,_0x42fa06['mode']=0x5;case 0x5:if(0x400&_0x42fa06['flags']){for(;_0x528049<0x10;){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}_0x42fa06['length']=_0x3085d3,_0x42fa06['head']&&(_0x42fa06['head']['extra_len']=_0x3085d3),0x200&_0x42fa06['flags']&&(_0x93d641[0x0]=0xff&_0x3085d3,_0x93d641[0x1]=_0x3085d3>>>0x8&0xff,_0x42fa06['check']=_0x48f97d(_0x42fa06['check'],_0x93d641,0x2,0x0)),_0x528049=_0x3085d3=0x0;}else _0x42fa06['head']&&(_0x42fa06['head']['extra']=null);_0x42fa06['mode']=0x6;case 0x6:if(0x400&_0x42fa06['flags']&&(_0x3e6503<(_0x1694b0=_0x42fa06['length'])&&(_0x1694b0=_0x3e6503),_0x1694b0&&(_0x42fa06['head']&&(_0x2622fc=_0x42fa06['head']['extra_len']-_0x42fa06['length'],_0x42fa06['head']['extra']||(_0x42fa06['head']['extra']=new Array(_0x42fa06['head']['extra_len'])),_0x3c0efa['arraySet'](_0x42fa06['head']['extra'],_0x4975d4,_0x173bcd,_0x1694b0,_0x2622fc)),0x200&_0x42fa06['flags']&&(_0x42fa06['check']=_0x48f97d(_0x42fa06['check'],_0x4975d4,_0x1694b0,_0x173bcd)),_0x3e6503-=_0x1694b0,_0x173bcd+=_0x1694b0,_0x42fa06['length']-=_0x1694b0),_0x42fa06['length']))break _0x3e4f2c;_0x42fa06['length']=0x0,_0x42fa06['mode']=0x7;case 0x7:if(0x800&_0x42fa06['flags']){if(0x0===_0x3e6503)break _0x3e4f2c;for(_0x1694b0=0x0;_0x2622fc=_0x4975d4[_0x173bcd+_0x1694b0++],_0x42fa06['head']&&_0x2622fc&&_0x42fa06['length']<0x10000&&(_0x42fa06['head']['name']+=String['fromCharCode'](_0x2622fc)),_0x2622fc&&_0x1694b0<_0x3e6503;);if(0x200&_0x42fa06['flags']&&(_0x42fa06['check']=_0x48f97d(_0x42fa06['check'],_0x4975d4,_0x1694b0,_0x173bcd)),_0x3e6503-=_0x1694b0,_0x173bcd+=_0x1694b0,_0x2622fc)break _0x3e4f2c;}else _0x42fa06['head']&&(_0x42fa06['head']['name']=null);_0x42fa06['length']=0x0,_0x42fa06['mode']=0x8;case 0x8:if(0x1000&_0x42fa06['flags']){if(0x0===_0x3e6503)break _0x3e4f2c;for(_0x1694b0=0x0;_0x2622fc=_0x4975d4[_0x173bcd+_0x1694b0++],_0x42fa06['head']&&_0x2622fc&&_0x42fa06['length']<0x10000&&(_0x42fa06['head']['comment']+=String['fromCharCode'](_0x2622fc)),_0x2622fc&&_0x1694b0<_0x3e6503;);if(0x200&_0x42fa06['flags']&&(_0x42fa06['check']=_0x48f97d(_0x42fa06['check'],_0x4975d4,_0x1694b0,_0x173bcd)),_0x3e6503-=_0x1694b0,_0x173bcd+=_0x1694b0,_0x2622fc)break _0x3e4f2c;}else _0x42fa06['head']&&(_0x42fa06['head']['comment']=null);_0x42fa06['mode']=0x9;case 0x9:if(0x200&_0x42fa06['flags']){for(;_0x528049<0x10;){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}if(_0x3085d3!==(0xffff&_0x42fa06['check'])){_0x3d9ee1['msg']='header\x20crc\x20mismatch',_0x42fa06['mode']=0x1e;break;}_0x528049=_0x3085d3=0x0;}_0x42fa06['head']&&(_0x42fa06['head']['hcrc']=_0x42fa06['flags']>>0x9&0x1,_0x42fa06['head']['done']=!0x0),_0x3d9ee1['adler']=_0x42fa06['check']=0x0,_0x42fa06['mode']=0xc;break;case 0xa:for(;_0x528049<0x20;){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}_0x3d9ee1['adler']=_0x42fa06['check']=_0x5aeacb(_0x3085d3),_0x528049=_0x3085d3=0x0,_0x42fa06['mode']=0xb;case 0xb:if(0x0===_0x42fa06['havedict'])return _0x3d9ee1['next_out']=_0x162fbc,_0x3d9ee1['avail_out']=_0x60bf6d,_0x3d9ee1['next_in']=_0x173bcd,_0x3d9ee1['avail_in']=_0x3e6503,_0x42fa06['hold']=_0x3085d3,_0x42fa06['bits']=_0x528049,0x2;_0x3d9ee1['adler']=_0x42fa06['check']=0x1,_0x42fa06['mode']=0xc;case 0xc:if(0x5===_0x1aec28||0x6===_0x1aec28)break _0x3e4f2c;case 0xd:if(_0x42fa06['last']){_0x3085d3>>>=0x7&_0x528049,_0x528049-=0x7&_0x528049,_0x42fa06['mode']=0x1b;break;}for(;_0x528049<0x3;){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}switch(_0x42fa06['last']=0x1&_0x3085d3,_0x528049-=0x1,0x3&(_0x3085d3>>>=0x1)){case 0x0:_0x42fa06['mode']=0xe;break;case 0x1:if(_0x128a45(_0x42fa06),_0x42fa06['mode']=0x14,0x6!==_0x1aec28)break;_0x3085d3>>>=0x2,_0x528049-=0x2;break _0x3e4f2c;case 0x2:_0x42fa06['mode']=0x11;break;case 0x3:_0x3d9ee1['msg']='invalid\x20block\x20type',_0x42fa06['mode']=0x1e;}_0x3085d3>>>=0x2,_0x528049-=0x2;break;case 0xe:for(_0x3085d3>>>=0x7&_0x528049,_0x528049-=0x7&_0x528049;_0x528049<0x20;){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}if((0xffff&_0x3085d3)!=(_0x3085d3>>>0x10^0xffff)){_0x3d9ee1['msg']='invalid\x20stored\x20block\x20lengths',_0x42fa06['mode']=0x1e;break;}if(_0x42fa06['length']=0xffff&_0x3085d3,_0x528049=_0x3085d3=0x0,_0x42fa06['mode']=0xf,0x6===_0x1aec28)break _0x3e4f2c;case 0xf:_0x42fa06['mode']=0x10;case 0x10:if(_0x1694b0=_0x42fa06['length']){if(_0x3e6503<_0x1694b0&&(_0x1694b0=_0x3e6503),_0x60bf6d<_0x1694b0&&(_0x1694b0=_0x60bf6d),0x0===_0x1694b0)break _0x3e4f2c;_0x3c0efa['arraySet'](_0x233842,_0x4975d4,_0x173bcd,_0x1694b0,_0x162fbc),_0x3e6503-=_0x1694b0,_0x173bcd+=_0x1694b0,_0x60bf6d-=_0x1694b0,_0x162fbc+=_0x1694b0,_0x42fa06['length']-=_0x1694b0;break;}_0x42fa06['mode']=0xc;break;case 0x11:for(;_0x528049<0xe;){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}if(_0x42fa06['nlen']=0x101+(0x1f&_0x3085d3),_0x3085d3>>>=0x5,_0x528049-=0x5,_0x42fa06['ndist']=0x1+(0x1f&_0x3085d3),_0x3085d3>>>=0x5,_0x528049-=0x5,_0x42fa06['ncode']=0x4+(0xf&_0x3085d3),_0x3085d3>>>=0x4,_0x528049-=0x4,0x11e<_0x42fa06['nlen']||0x1e<_0x42fa06['ndist']){_0x3d9ee1['msg']='too\x20many\x20length\x20or\x20distance\x20symbols',_0x42fa06['mode']=0x1e;break;}_0x42fa06['have']=0x0,_0x42fa06['mode']=0x12;case 0x12:for(;_0x42fa06['have']<_0x42fa06['ncode'];){for(;_0x528049<0x3;){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}_0x42fa06['lens'][_0x44a9bb[_0x42fa06['have']++]]=0x7&_0x3085d3,_0x3085d3>>>=0x3,_0x528049-=0x3;}for(;_0x42fa06['have']<0x13;)_0x42fa06['lens'][_0x44a9bb[_0x42fa06['have']++]]=0x0;if(_0x42fa06['lencode']=_0x42fa06['lendyn'],_0x42fa06['lenbits']=0x7,_0x1fa3b5={'bits':_0x42fa06['lenbits']},_0x5134b5=_0x485254(0x0,_0x42fa06['lens'],0x0,0x13,_0x42fa06['lencode'],0x0,_0x42fa06['work'],_0x1fa3b5),_0x42fa06['lenbits']=_0x1fa3b5['bits'],_0x5134b5){_0x3d9ee1['msg']='invalid\x20code\x20lengths\x20set',_0x42fa06['mode']=0x1e;break;}_0x42fa06['have']=0x0,_0x42fa06['mode']=0x13;case 0x13:for(;_0x42fa06['have']<_0x42fa06['nlen']+_0x42fa06['ndist'];){for(;_0x4f2a2b=(_0x32d37a=_0x42fa06['lencode'][_0x3085d3&(0x1<<_0x42fa06['lenbits'])-0x1])>>>0x10&0xff,_0x4b27a3=0xffff&_0x32d37a,!((_0x44771c=_0x32d37a>>>0x18)<=_0x528049);){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}if(_0x4b27a3<0x10)_0x3085d3>>>=_0x44771c,_0x528049-=_0x44771c,_0x42fa06['lens'][_0x42fa06['have']++]=_0x4b27a3;else {if(0x10===_0x4b27a3){for(_0x37308b=_0x44771c+0x2;_0x528049<_0x37308b;){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}if(_0x3085d3>>>=_0x44771c,_0x528049-=_0x44771c,0x0===_0x42fa06['have']){_0x3d9ee1['msg']='invalid\x20bit\x20length\x20repeat',_0x42fa06['mode']=0x1e;break;}_0x2622fc=_0x42fa06['lens'][_0x42fa06['have']-0x1],_0x1694b0=0x3+(0x3&_0x3085d3),_0x3085d3>>>=0x2,_0x528049-=0x2;}else {if(0x11===_0x4b27a3){for(_0x37308b=_0x44771c+0x3;_0x528049<_0x37308b;){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}_0x528049-=_0x44771c,_0x2622fc=0x0,_0x1694b0=0x3+(0x7&(_0x3085d3>>>=_0x44771c)),_0x3085d3>>>=0x3,_0x528049-=0x3;}else {for(_0x37308b=_0x44771c+0x7;_0x528049<_0x37308b;){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}_0x528049-=_0x44771c,_0x2622fc=0x0,_0x1694b0=0xb+(0x7f&(_0x3085d3>>>=_0x44771c)),_0x3085d3>>>=0x7,_0x528049-=0x7;}}if(_0x42fa06['have']+_0x1694b0>_0x42fa06['nlen']+_0x42fa06['ndist']){_0x3d9ee1['msg']='invalid\x20bit\x20length\x20repeat',_0x42fa06['mode']=0x1e;break;}for(;_0x1694b0--;)_0x42fa06['lens'][_0x42fa06['have']++]=_0x2622fc;}}if(0x1e===_0x42fa06['mode'])break;if(0x0===_0x42fa06['lens'][0x100]){_0x3d9ee1['msg']='invalid\x20code\x20--\x20missing\x20end-of-block',_0x42fa06['mode']=0x1e;break;}if(_0x42fa06['lenbits']=0x9,_0x1fa3b5={'bits':_0x42fa06['lenbits']},_0x5134b5=_0x485254(_0x56ecfc,_0x42fa06['lens'],0x0,_0x42fa06['nlen'],_0x42fa06['lencode'],0x0,_0x42fa06['work'],_0x1fa3b5),_0x42fa06['lenbits']=_0x1fa3b5['bits'],_0x5134b5){_0x3d9ee1['msg']='invalid\x20literal/lengths\x20set',_0x42fa06['mode']=0x1e;break;}if(_0x42fa06['distbits']=0x6,_0x42fa06['distcode']=_0x42fa06['distdyn'],_0x1fa3b5={'bits':_0x42fa06['distbits']},_0x5134b5=_0x485254(_0x130284,_0x42fa06['lens'],_0x42fa06['nlen'],_0x42fa06['ndist'],_0x42fa06['distcode'],0x0,_0x42fa06['work'],_0x1fa3b5),_0x42fa06['distbits']=_0x1fa3b5['bits'],_0x5134b5){_0x3d9ee1['msg']='invalid\x20distances\x20set',_0x42fa06['mode']=0x1e;break;}if(_0x42fa06['mode']=0x14,0x6===_0x1aec28)break _0x3e4f2c;case 0x14:_0x42fa06['mode']=0x15;case 0x15:if(0x6<=_0x3e6503&&0x102<=_0x60bf6d){_0x3d9ee1['next_out']=_0x162fbc,_0x3d9ee1['avail_out']=_0x60bf6d,_0x3d9ee1['next_in']=_0x173bcd,_0x3d9ee1['avail_in']=_0x3e6503,_0x42fa06['hold']=_0x3085d3,_0x42fa06['bits']=_0x528049,_0x4311fc(_0x3d9ee1,_0x132b4c),_0x162fbc=_0x3d9ee1['next_out'],_0x233842=_0x3d9ee1['output'],_0x60bf6d=_0x3d9ee1['avail_out'],_0x173bcd=_0x3d9ee1['next_in'],_0x4975d4=_0x3d9ee1['input'],_0x3e6503=_0x3d9ee1['avail_in'],_0x3085d3=_0x42fa06['hold'],_0x528049=_0x42fa06['bits'],0xc===_0x42fa06['mode']&&(_0x42fa06['back']=-0x1);break;}for(_0x42fa06['back']=0x0;_0x4f2a2b=(_0x32d37a=_0x42fa06['lencode'][_0x3085d3&(0x1<<_0x42fa06['lenbits'])-0x1])>>>0x10&0xff,_0x4b27a3=0xffff&_0x32d37a,!((_0x44771c=_0x32d37a>>>0x18)<=_0x528049);){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}if(_0x4f2a2b&&0x0==(0xf0&_0x4f2a2b)){for(_0x2bfa37=_0x44771c,_0x3a7e6d=_0x4f2a2b,_0x504e36=_0x4b27a3;_0x4f2a2b=(_0x32d37a=_0x42fa06['lencode'][_0x504e36+((_0x3085d3&(0x1<<_0x2bfa37+_0x3a7e6d)-0x1)>>_0x2bfa37)])>>>0x10&0xff,_0x4b27a3=0xffff&_0x32d37a,!(_0x2bfa37+(_0x44771c=_0x32d37a>>>0x18)<=_0x528049);){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}_0x3085d3>>>=_0x2bfa37,_0x528049-=_0x2bfa37,_0x42fa06['back']+=_0x2bfa37;}if(_0x3085d3>>>=_0x44771c,_0x528049-=_0x44771c,_0x42fa06['back']+=_0x44771c,_0x42fa06['length']=_0x4b27a3,0x0===_0x4f2a2b){_0x42fa06['mode']=0x1a;break;}if(0x20&_0x4f2a2b){_0x42fa06['back']=-0x1,_0x42fa06['mode']=0xc;break;}if(0x40&_0x4f2a2b){_0x3d9ee1['msg']='invalid\x20literal/length\x20code',_0x42fa06['mode']=0x1e;break;}_0x42fa06['extra']=0xf&_0x4f2a2b,_0x42fa06['mode']=0x16;case 0x16:if(_0x42fa06['extra']){for(_0x37308b=_0x42fa06['extra'];_0x528049<_0x37308b;){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}_0x42fa06['length']+=_0x3085d3&(0x1<<_0x42fa06['extra'])-0x1,_0x3085d3>>>=_0x42fa06['extra'],_0x528049-=_0x42fa06['extra'],_0x42fa06['back']+=_0x42fa06['extra'];}_0x42fa06['was']=_0x42fa06['length'],_0x42fa06['mode']=0x17;case 0x17:for(;_0x4f2a2b=(_0x32d37a=_0x42fa06['distcode'][_0x3085d3&(0x1<<_0x42fa06['distbits'])-0x1])>>>0x10&0xff,_0x4b27a3=0xffff&_0x32d37a,!((_0x44771c=_0x32d37a>>>0x18)<=_0x528049);){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}if(0x0==(0xf0&_0x4f2a2b)){for(_0x2bfa37=_0x44771c,_0x3a7e6d=_0x4f2a2b,_0x504e36=_0x4b27a3;_0x4f2a2b=(_0x32d37a=_0x42fa06['distcode'][_0x504e36+((_0x3085d3&(0x1<<_0x2bfa37+_0x3a7e6d)-0x1)>>_0x2bfa37)])>>>0x10&0xff,_0x4b27a3=0xffff&_0x32d37a,!(_0x2bfa37+(_0x44771c=_0x32d37a>>>0x18)<=_0x528049);){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}_0x3085d3>>>=_0x2bfa37,_0x528049-=_0x2bfa37,_0x42fa06['back']+=_0x2bfa37;}if(_0x3085d3>>>=_0x44771c,_0x528049-=_0x44771c,_0x42fa06['back']+=_0x44771c,0x40&_0x4f2a2b){_0x3d9ee1['msg']='invalid\x20distance\x20code',_0x42fa06['mode']=0x1e;break;}_0x42fa06['offset']=_0x4b27a3,_0x42fa06['extra']=0xf&_0x4f2a2b,_0x42fa06['mode']=0x18;case 0x18:if(_0x42fa06['extra']){for(_0x37308b=_0x42fa06['extra'];_0x528049<_0x37308b;){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}_0x42fa06['offset']+=_0x3085d3&(0x1<<_0x42fa06['extra'])-0x1,_0x3085d3>>>=_0x42fa06['extra'],_0x528049-=_0x42fa06['extra'],_0x42fa06['back']+=_0x42fa06['extra'];}if(_0x42fa06['offset']>_0x42fa06['dmax']){_0x3d9ee1['msg']='invalid\x20distance\x20too\x20far\x20back',_0x42fa06['mode']=0x1e;break;}_0x42fa06['mode']=0x19;case 0x19:if(0x0===_0x60bf6d)break _0x3e4f2c;if(_0x1694b0=_0x132b4c-_0x60bf6d,_0x42fa06['offset']>_0x1694b0){if((_0x1694b0=_0x42fa06['offset']-_0x1694b0)>_0x42fa06['whave']&&_0x42fa06['sane']){_0x3d9ee1['msg']='invalid\x20distance\x20too\x20far\x20back',_0x42fa06['mode']=0x1e;break;}_0x36839e=_0x1694b0>_0x42fa06['wnext']?(_0x1694b0-=_0x42fa06['wnext'],_0x42fa06['wsize']-_0x1694b0):_0x42fa06['wnext']-_0x1694b0,_0x1694b0>_0x42fa06['length']&&(_0x1694b0=_0x42fa06['length']),_0x4840ba=_0x42fa06['window'];}else _0x4840ba=_0x233842,_0x36839e=_0x162fbc-_0x42fa06['offset'],_0x1694b0=_0x42fa06['length'];for(_0x60bf6d<_0x1694b0&&(_0x1694b0=_0x60bf6d),_0x60bf6d-=_0x1694b0,_0x42fa06['length']-=_0x1694b0;_0x233842[_0x162fbc++]=_0x4840ba[_0x36839e++],--_0x1694b0;);0x0===_0x42fa06['length']&&(_0x42fa06['mode']=0x15);break;case 0x1a:if(0x0===_0x60bf6d)break _0x3e4f2c;_0x233842[_0x162fbc++]=_0x42fa06['length'],_0x60bf6d--,_0x42fa06['mode']=0x15;break;case 0x1b:if(_0x42fa06['wrap']){for(;_0x528049<0x20;){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3|=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}if(_0x132b4c-=_0x60bf6d,_0x3d9ee1['total_out']+=_0x132b4c,_0x42fa06['total']+=_0x132b4c,_0x132b4c&&(_0x3d9ee1['adler']=_0x42fa06['check']=_0x42fa06['flags']?_0x48f97d(_0x42fa06['check'],_0x233842,_0x132b4c,_0x162fbc-_0x132b4c):_0x326674(_0x42fa06['check'],_0x233842,_0x132b4c,_0x162fbc-_0x132b4c)),_0x132b4c=_0x60bf6d,(_0x42fa06['flags']?_0x3085d3:_0x5aeacb(_0x3085d3))!==_0x42fa06['check']){_0x3d9ee1['msg']='incorrect\x20data\x20check',_0x42fa06['mode']=0x1e;break;}_0x528049=_0x3085d3=0x0;}_0x42fa06['mode']=0x1c;case 0x1c:if(_0x42fa06['wrap']&&_0x42fa06['flags']){for(;_0x528049<0x20;){if(0x0===_0x3e6503)break _0x3e4f2c;_0x3e6503--,_0x3085d3+=_0x4975d4[_0x173bcd++]<<_0x528049,_0x528049+=0x8;}if(_0x3085d3!==(0xffffffff&_0x42fa06['total'])){_0x3d9ee1['msg']='incorrect\x20length\x20check',_0x42fa06['mode']=0x1e;break;}_0x528049=_0x3085d3=0x0;}_0x42fa06['mode']=0x1d;case 0x1d:_0x5134b5=0x1;break _0x3e4f2c;case 0x1e:_0x5134b5=-0x3;break _0x3e4f2c;case 0x1f:return -0x4;case 0x20:default:return _0x1cc81a;}return _0x3d9ee1['next_out']=_0x162fbc,_0x3d9ee1['avail_out']=_0x60bf6d,_0x3d9ee1['next_in']=_0x173bcd,_0x3d9ee1['avail_in']=_0x3e6503,_0x42fa06['hold']=_0x3085d3,_0x42fa06['bits']=_0x528049,(_0x42fa06['wsize']||_0x132b4c!==_0x3d9ee1['avail_out']&&_0x42fa06['mode']<0x1e&&(_0x42fa06['mode']<0x1b||0x4!==_0x1aec28))&&_0x1452b8(_0x3d9ee1,_0x3d9ee1['output'],_0x3d9ee1['next_out'],_0x132b4c-_0x3d9ee1['avail_out'])?(_0x42fa06['mode']=0x1f,-0x4):(_0x35e46c-=_0x3d9ee1['avail_in'],_0x132b4c-=_0x3d9ee1['avail_out'],_0x3d9ee1['total_in']+=_0x35e46c,_0x3d9ee1['total_out']+=_0x132b4c,_0x42fa06['total']+=_0x132b4c,_0x42fa06['wrap']&&_0x132b4c&&(_0x3d9ee1['adler']=_0x42fa06['check']=_0x42fa06['flags']?_0x48f97d(_0x42fa06['check'],_0x233842,_0x132b4c,_0x3d9ee1['next_out']-_0x132b4c):_0x326674(_0x42fa06['check'],_0x233842,_0x132b4c,_0x3d9ee1['next_out']-_0x132b4c)),_0x3d9ee1['data_type']=_0x42fa06['bits']+(_0x42fa06['last']?0x40:0x0)+(0xc===_0x42fa06['mode']?0x80:0x0)+(0x14===_0x42fa06['mode']||0xf===_0x42fa06['mode']?0x100:0x0),(0x0==_0x35e46c&&0x0===_0x132b4c||0x4===_0x1aec28)&&_0x5134b5===_0x4f29e2&&(_0x5134b5=-0x5),_0x5134b5);},_0x2760c6['inflateEnd']=function(_0x5747a3){if(!_0x5747a3||!_0x5747a3['state'])return _0x1cc81a;var _0x17797a=_0x5747a3['state'];return _0x17797a['window']&&(_0x17797a['window']=null),_0x5747a3['state']=null,_0x4f29e2;},_0x2760c6['inflateGetHeader']=function(_0x598ec3,_0x5ea9ae){var _0x328a07;return _0x598ec3&&_0x598ec3['state']?0x0==(0x2&(_0x328a07=_0x598ec3['state'])['wrap'])?_0x1cc81a:((_0x328a07['head']=_0x5ea9ae)['done']=!0x1,_0x4f29e2):_0x1cc81a;},_0x2760c6['inflateSetDictionary']=function(_0x2a19e5,_0x4fb2b3){var _0x12e89c,_0x43e71b=_0x4fb2b3['length'];return _0x2a19e5&&_0x2a19e5['state']?0x0!==(_0x12e89c=_0x2a19e5['state'])['wrap']&&0xb!==_0x12e89c['mode']?_0x1cc81a:0xb===_0x12e89c['mode']&&_0x326674(0x1,_0x4fb2b3,_0x43e71b,0x0)!==_0x12e89c['check']?-0x3:_0x1452b8(_0x2a19e5,_0x4fb2b3,_0x43e71b,_0x43e71b)?(_0x12e89c['mode']=0x1f,-0x4):(_0x12e89c['havedict']=0x1,_0x4f29e2):_0x1cc81a;},_0x2760c6['inflateInfo']='pako\x20inflate\x20(from\x20Nodeca\x20project)';},{'../utils/common':0x29,'./adler32':0x2b,'./crc32':0x2d,'./inffast':0x30,'./inftrees':0x32}],0x32:[function(_0x4d4f79,_0x4edd23,_0x4bcd92){var _0x56ec0c=_0x4d4f79('../utils/common'),_0x28aace=[0x3,0x4,0x5,0x6,0x7,0x8,0x9,0xa,0xb,0xd,0xf,0x11,0x13,0x17,0x1b,0x1f,0x23,0x2b,0x33,0x3b,0x43,0x53,0x63,0x73,0x83,0xa3,0xc3,0xe3,0x102,0x0,0x0],_0x1231e9=[0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x11,0x11,0x11,0x11,0x12,0x12,0x12,0x12,0x13,0x13,0x13,0x13,0x14,0x14,0x14,0x14,0x15,0x15,0x15,0x15,0x10,0x48,0x4e],_0x32ddb7=[0x1,0x2,0x3,0x4,0x5,0x7,0x9,0xd,0x11,0x19,0x21,0x31,0x41,0x61,0x81,0xc1,0x101,0x181,0x201,0x301,0x401,0x601,0x801,0xc01,0x1001,0x1801,0x2001,0x3001,0x4001,0x6001,0x0,0x0],_0x3efd3a=[0x10,0x10,0x10,0x10,0x11,0x11,0x12,0x12,0x13,0x13,0x14,0x14,0x15,0x15,0x16,0x16,0x17,0x17,0x18,0x18,0x19,0x19,0x1a,0x1a,0x1b,0x1b,0x1c,0x1c,0x1d,0x1d,0x40,0x40];_0x4edd23['exports']=function(_0x1dece3,_0x4e5afd,_0x475a6b,_0x9679f7,_0x5d8eb9,_0x229b31,_0x339427,_0x231cdf){var _0x489373,_0x327c6d,_0x5a9199,_0x5787f3,_0xa2b025,_0x1fa26a,_0x279f21,_0x4a47af,_0x23621e,_0x40b81a=_0x231cdf['bits'],_0x556ad6=0x0,_0x8644a8=0x0,_0x4d3551=0x0,_0x4144cf=0x0,_0x86ef60=0x0,_0x32424e=0x0,_0x3ddd98=0x0,_0x5d7f28=0x0,_0x295249=0x0,_0x1e0b24=0x0,_0x220bc0=null,_0x5200c2=0x0,_0x21ee6f=new _0x56ec0c['Buf16'](0x10),_0x5c7fbf=new _0x56ec0c['Buf16'](0x10),_0x4cdddf=null,_0xbcbb65=0x0;for(_0x556ad6=0x0;_0x556ad6<=0xf;_0x556ad6++)_0x21ee6f[_0x556ad6]=0x0;for(_0x8644a8=0x0;_0x8644a8<_0x9679f7;_0x8644a8++)_0x21ee6f[_0x4e5afd[_0x475a6b+_0x8644a8]]++;for(_0x86ef60=_0x40b81a,_0x4144cf=0xf;0x1<=_0x4144cf&&0x0===_0x21ee6f[_0x4144cf];_0x4144cf--);if(_0x4144cf<_0x86ef60&&(_0x86ef60=_0x4144cf),0x0===_0x4144cf)return _0x5d8eb9[_0x229b31++]=0x1400000,_0x5d8eb9[_0x229b31++]=0x1400000,_0x231cdf['bits']=0x1,0x0;for(_0x4d3551=0x1;_0x4d3551<_0x4144cf&&0x0===_0x21ee6f[_0x4d3551];_0x4d3551++);for(_0x86ef60<_0x4d3551&&(_0x86ef60=_0x4d3551),_0x556ad6=_0x5d7f28=0x1;_0x556ad6<=0xf;_0x556ad6++)if(_0x5d7f28<<=0x1,(_0x5d7f28-=_0x21ee6f[_0x556ad6])<0x0)return -0x1;if(0x0<_0x5d7f28&&(0x0===_0x1dece3||0x1!==_0x4144cf))return -0x1;for(_0x5c7fbf[0x1]=0x0,_0x556ad6=0x1;_0x556ad6<0xf;_0x556ad6++)_0x5c7fbf[_0x556ad6+0x1]=_0x5c7fbf[_0x556ad6]+_0x21ee6f[_0x556ad6];for(_0x8644a8=0x0;_0x8644a8<_0x9679f7;_0x8644a8++)0x0!==_0x4e5afd[_0x475a6b+_0x8644a8]&&(_0x339427[_0x5c7fbf[_0x4e5afd[_0x475a6b+_0x8644a8]]++]=_0x8644a8);if(_0x1fa26a=0x0===_0x1dece3?(_0x220bc0=_0x4cdddf=_0x339427,0x13):0x1===_0x1dece3?(_0x220bc0=_0x28aace,_0x5200c2-=0x101,_0x4cdddf=_0x1231e9,_0xbcbb65-=0x101,0x100):(_0x220bc0=_0x32ddb7,_0x4cdddf=_0x3efd3a,-0x1),_0x556ad6=_0x4d3551,_0xa2b025=_0x229b31,_0x3ddd98=_0x8644a8=_0x1e0b24=0x0,_0x5a9199=-0x1,_0x5787f3=(_0x295249=0x1<<(_0x32424e=_0x86ef60))-0x1,0x1===_0x1dece3&&0x354<_0x295249||0x2===_0x1dece3&&0x250<_0x295249)return 0x1;for(;;){for(_0x279f21=_0x556ad6-_0x3ddd98,_0x23621e=_0x339427[_0x8644a8]<_0x1fa26a?(_0x4a47af=0x0,_0x339427[_0x8644a8]):_0x339427[_0x8644a8]>_0x1fa26a?(_0x4a47af=_0x4cdddf[_0xbcbb65+_0x339427[_0x8644a8]],_0x220bc0[_0x5200c2+_0x339427[_0x8644a8]]):(_0x4a47af=0x60,0x0),_0x489373=0x1<<_0x556ad6-_0x3ddd98,_0x4d3551=_0x327c6d=0x1<<_0x32424e;_0x5d8eb9[_0xa2b025+(_0x1e0b24>>_0x3ddd98)+(_0x327c6d-=_0x489373)]=_0x279f21<<0x18|_0x4a47af<<0x10|_0x23621e|0x0,0x0!==_0x327c6d;);for(_0x489373=0x1<<_0x556ad6-0x1;_0x1e0b24&_0x489373;)_0x489373>>=0x1;if(0x0!==_0x489373?(_0x1e0b24&=_0x489373-0x1,_0x1e0b24+=_0x489373):_0x1e0b24=0x0,_0x8644a8++,0x0==--_0x21ee6f[_0x556ad6]){if(_0x556ad6===_0x4144cf)break;_0x556ad6=_0x4e5afd[_0x475a6b+_0x339427[_0x8644a8]];}if(_0x86ef60<_0x556ad6&&(_0x1e0b24&_0x5787f3)!==_0x5a9199){for(0x0===_0x3ddd98&&(_0x3ddd98=_0x86ef60),_0xa2b025+=_0x4d3551,_0x5d7f28=0x1<<(_0x32424e=_0x556ad6-_0x3ddd98);_0x32424e+_0x3ddd98<_0x4144cf&&!((_0x5d7f28-=_0x21ee6f[_0x32424e+_0x3ddd98])<=0x0);)_0x32424e++,_0x5d7f28<<=0x1;if(_0x295249+=0x1<<_0x32424e,0x1===_0x1dece3&&0x354<_0x295249||0x2===_0x1dece3&&0x250<_0x295249)return 0x1;_0x5d8eb9[_0x5a9199=_0x1e0b24&_0x5787f3]=_0x86ef60<<0x18|_0x32424e<<0x10|_0xa2b025-_0x229b31|0x0;}}return 0x0!==_0x1e0b24&&(_0x5d8eb9[_0xa2b025+_0x1e0b24]=_0x556ad6-_0x3ddd98<<0x18|0x40<<0x10|0x0),_0x231cdf['bits']=_0x86ef60,0x0;};},{'../utils/common':0x29}],0x33:[function(_0xf22ecc,_0x5a0d91,_0x52b190){_0x5a0d91['exports']={0x2:'need\x20dictionary',0x1:'stream\x20end',0x0:'','-1':'file\x20error','-2':'stream\x20error','-3':'data\x20error','-4':'insufficient\x20memory','-5':'buffer\x20error','-6':'incompatible\x20version'};},{}],0x34:[function(_0x27fe20,_0x54cac1,_0x3fafbe){var _0x4383cb=_0x27fe20('../utils/common'),_0x19ff0a=0x0,_0x61a930=0x1;function _0x23862a(_0x4be51e){for(var _0x307bac=_0x4be51e['length'];0x0<=--_0x307bac;)_0x4be51e[_0x307bac]=0x0;}var _0x43e90d=0x0,_0x43d767=0x1d,_0x4b56f9=0x100,_0x408157=_0x4b56f9+0x1+_0x43d767,_0x2cf0b9=0x1e,_0x557361=0x13,_0x9b916e=0x2*_0x408157+0x1,_0x478cd9=0xf,_0x302711=0x10,_0x489476=0x7,_0x459fda=0x100,_0x42f3da=0x10,_0x571446=0x11,_0x1842da=0x12,_0x4af626=[0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x1,0x1,0x1,0x2,0x2,0x2,0x2,0x3,0x3,0x3,0x3,0x4,0x4,0x4,0x4,0x5,0x5,0x5,0x5,0x0],_0xca0e7=[0x0,0x0,0x0,0x0,0x1,0x1,0x2,0x2,0x3,0x3,0x4,0x4,0x5,0x5,0x6,0x6,0x7,0x7,0x8,0x8,0x9,0x9,0xa,0xa,0xb,0xb,0xc,0xc,0xd,0xd],_0x352334=[0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x3,0x7],_0x107d8d=[0x10,0x11,0x12,0x0,0x8,0x7,0x9,0x6,0xa,0x5,0xb,0x4,0xc,0x3,0xd,0x2,0xe,0x1,0xf],_0x22c338=new Array(0x2*(_0x408157+0x2));_0x23862a(_0x22c338);var _0x58f75f=new Array(0x2*_0x2cf0b9);_0x23862a(_0x58f75f);var _0x3ad268=new Array(0x200);_0x23862a(_0x3ad268);var _0x4f3da6=new Array(0x100);_0x23862a(_0x4f3da6);var _0x451b3d=new Array(_0x43d767);_0x23862a(_0x451b3d);var _0x5eff9f,_0x4c2fba,_0x1c814f,_0x30d6f5=new Array(_0x2cf0b9);function _0x58da9f(_0x24db4a,_0x3dd52a,_0x1b0613,_0x41cbad,_0x4cea07){this['static_tree']=_0x24db4a,this['extra_bits']=_0x3dd52a,this['extra_base']=_0x1b0613,this['elems']=_0x41cbad,this['max_length']=_0x4cea07,this['has_stree']=_0x24db4a&&_0x24db4a['length'];}function _0x415388(_0x3ecef1,_0x150f59){this['dyn_tree']=_0x3ecef1,this['max_code']=0x0,this['stat_desc']=_0x150f59;}function _0x2913dc(_0x37ea1c){return _0x37ea1c<0x100?_0x3ad268[_0x37ea1c]:_0x3ad268[0x100+(_0x37ea1c>>>0x7)];}function _0x469181(_0x4e7bc9,_0x1c8395){_0x4e7bc9['pending_buf'][_0x4e7bc9['pending']++]=0xff&_0x1c8395,_0x4e7bc9['pending_buf'][_0x4e7bc9['pending']++]=_0x1c8395>>>0x8&0xff;}function _0x57cfe0(_0x552edf,_0x139606,_0x4ff230){_0x552edf['bi_valid']>_0x302711-_0x4ff230?(_0x552edf['bi_buf']|=_0x139606<<_0x552edf['bi_valid']&0xffff,_0x469181(_0x552edf,_0x552edf['bi_buf']),_0x552edf['bi_buf']=_0x139606>>_0x302711-_0x552edf['bi_valid'],_0x552edf['bi_valid']+=_0x4ff230-_0x302711):(_0x552edf['bi_buf']|=_0x139606<<_0x552edf['bi_valid']&0xffff,_0x552edf['bi_valid']+=_0x4ff230);}function _0x516d8b(_0x2393eb,_0x32e513,_0x2119ff){_0x57cfe0(_0x2393eb,_0x2119ff[0x2*_0x32e513],_0x2119ff[0x2*_0x32e513+0x1]);}function _0x397196(_0x33c765,_0x4ab52b){for(var _0x25a0d4=0x0;_0x25a0d4|=0x1&_0x33c765,_0x33c765>>>=0x1,_0x25a0d4<<=0x1,0x0<--_0x4ab52b;);return _0x25a0d4>>>0x1;}function _0x521b8c(_0x177b22,_0x1609fe,_0x44ee72){var _0x4b09f7,_0x58624c,_0x52259d=new Array(_0x478cd9+0x1),_0x1975c1=0x0;for(_0x4b09f7=0x1;_0x4b09f7<=_0x478cd9;_0x4b09f7++)_0x52259d[_0x4b09f7]=_0x1975c1=_0x1975c1+_0x44ee72[_0x4b09f7-0x1]<<0x1;for(_0x58624c=0x0;_0x58624c<=_0x1609fe;_0x58624c++){var _0x2334d4=_0x177b22[0x2*_0x58624c+0x1];0x0!==_0x2334d4&&(_0x177b22[0x2*_0x58624c]=_0x397196(_0x52259d[_0x2334d4]++,_0x2334d4));}}function _0x554709(_0x7f152b){var _0x57fce0;for(_0x57fce0=0x0;_0x57fce0<_0x408157;_0x57fce0++)_0x7f152b['dyn_ltree'][0x2*_0x57fce0]=0x0;for(_0x57fce0=0x0;_0x57fce0<_0x2cf0b9;_0x57fce0++)_0x7f152b['dyn_dtree'][0x2*_0x57fce0]=0x0;for(_0x57fce0=0x0;_0x57fce0<_0x557361;_0x57fce0++)_0x7f152b['bl_tree'][0x2*_0x57fce0]=0x0;_0x7f152b['dyn_ltree'][0x2*_0x459fda]=0x1,_0x7f152b['opt_len']=_0x7f152b['static_len']=0x0,_0x7f152b['last_lit']=_0x7f152b['matches']=0x0;}function _0x26b46a(_0x49ca08){0x8<_0x49ca08['bi_valid']?_0x469181(_0x49ca08,_0x49ca08['bi_buf']):0x0<_0x49ca08['bi_valid']&&(_0x49ca08['pending_buf'][_0x49ca08['pending']++]=_0x49ca08['bi_buf']),_0x49ca08['bi_buf']=0x0,_0x49ca08['bi_valid']=0x0;}function _0x2c4610(_0x54f984,_0x3288b8,_0x32ad29,_0x19db6c){var _0x5d98d0=0x2*_0x3288b8,_0x3ae16f=0x2*_0x32ad29;return _0x54f984[_0x5d98d0]<_0x54f984[_0x3ae16f]||_0x54f984[_0x5d98d0]===_0x54f984[_0x3ae16f]&&_0x19db6c[_0x3288b8]<=_0x19db6c[_0x32ad29];}function _0x3dffb4(_0xe298ad,_0x38571d,_0x1c50be){for(var _0x1a2734=_0xe298ad['heap'][_0x1c50be],_0x2531fd=_0x1c50be<<0x1;_0x2531fd<=_0xe298ad['heap_len']&&(_0x2531fd<_0xe298ad['heap_len']&&_0x2c4610(_0x38571d,_0xe298ad['heap'][_0x2531fd+0x1],_0xe298ad['heap'][_0x2531fd],_0xe298ad['depth'])&&_0x2531fd++,!_0x2c4610(_0x38571d,_0x1a2734,_0xe298ad['heap'][_0x2531fd],_0xe298ad['depth']));)_0xe298ad['heap'][_0x1c50be]=_0xe298ad['heap'][_0x2531fd],_0x1c50be=_0x2531fd,_0x2531fd<<=0x1;_0xe298ad['heap'][_0x1c50be]=_0x1a2734;}function _0x4707e9(_0x288de4,_0x6d0616,_0x2c65ab){var _0x274a27,_0x4fe6de,_0x24ceb6,_0xc4ed8b,_0x3d394b=0x0;if(0x0!==_0x288de4['last_lit']){for(;_0x274a27=_0x288de4['pending_buf'][_0x288de4['d_buf']+0x2*_0x3d394b]<<0x8|_0x288de4['pending_buf'][_0x288de4['d_buf']+0x2*_0x3d394b+0x1],_0x4fe6de=_0x288de4['pending_buf'][_0x288de4['l_buf']+_0x3d394b],_0x3d394b++,0x0===_0x274a27?_0x516d8b(_0x288de4,_0x4fe6de,_0x6d0616):(_0x516d8b(_0x288de4,(_0x24ceb6=_0x4f3da6[_0x4fe6de])+_0x4b56f9+0x1,_0x6d0616),0x0!==(_0xc4ed8b=_0x4af626[_0x24ceb6])&&_0x57cfe0(_0x288de4,_0x4fe6de-=_0x451b3d[_0x24ceb6],_0xc4ed8b),_0x516d8b(_0x288de4,_0x24ceb6=_0x2913dc(--_0x274a27),_0x2c65ab),0x0!==(_0xc4ed8b=_0xca0e7[_0x24ceb6])&&_0x57cfe0(_0x288de4,_0x274a27-=_0x30d6f5[_0x24ceb6],_0xc4ed8b)),_0x3d394b<_0x288de4['last_lit'];);}_0x516d8b(_0x288de4,_0x459fda,_0x6d0616);}function _0x29fd74(_0x8f6c45,_0x5dbbb3){var _0x591e4d,_0x1bc039,_0x4250f3,_0x1ddd13=_0x5dbbb3['dyn_tree'],_0x2f75f5=_0x5dbbb3['stat_desc']['static_tree'],_0x3948e5=_0x5dbbb3['stat_desc']['has_stree'],_0x1df185=_0x5dbbb3['stat_desc']['elems'],_0xb4d881=-0x1;for(_0x8f6c45['heap_len']=0x0,_0x8f6c45['heap_max']=_0x9b916e,_0x591e4d=0x0;_0x591e4d<_0x1df185;_0x591e4d++)0x0!==_0x1ddd13[0x2*_0x591e4d]?(_0x8f6c45['heap'][++_0x8f6c45['heap_len']]=_0xb4d881=_0x591e4d,_0x8f6c45['depth'][_0x591e4d]=0x0):_0x1ddd13[0x2*_0x591e4d+0x1]=0x0;for(;_0x8f6c45['heap_len']<0x2;)_0x1ddd13[0x2*(_0x4250f3=_0x8f6c45['heap'][++_0x8f6c45['heap_len']]=_0xb4d881<0x2?++_0xb4d881:0x0)]=0x1,_0x8f6c45['depth'][_0x4250f3]=0x0,_0x8f6c45['opt_len']--,_0x3948e5&&(_0x8f6c45['static_len']-=_0x2f75f5[0x2*_0x4250f3+0x1]);for(_0x5dbbb3['max_code']=_0xb4d881,_0x591e4d=_0x8f6c45['heap_len']>>0x1;0x1<=_0x591e4d;_0x591e4d--)_0x3dffb4(_0x8f6c45,_0x1ddd13,_0x591e4d);for(_0x4250f3=_0x1df185;_0x591e4d=_0x8f6c45['heap'][0x1],_0x8f6c45['heap'][0x1]=_0x8f6c45['heap'][_0x8f6c45['heap_len']--],_0x3dffb4(_0x8f6c45,_0x1ddd13,0x1),_0x1bc039=_0x8f6c45['heap'][0x1],_0x8f6c45['heap'][--_0x8f6c45['heap_max']]=_0x591e4d,_0x8f6c45['heap'][--_0x8f6c45['heap_max']]=_0x1bc039,_0x1ddd13[0x2*_0x4250f3]=_0x1ddd13[0x2*_0x591e4d]+_0x1ddd13[0x2*_0x1bc039],_0x8f6c45['depth'][_0x4250f3]=(_0x8f6c45['depth'][_0x591e4d]>=_0x8f6c45['depth'][_0x1bc039]?_0x8f6c45['depth'][_0x591e4d]:_0x8f6c45['depth'][_0x1bc039])+0x1,_0x1ddd13[0x2*_0x591e4d+0x1]=_0x1ddd13[0x2*_0x1bc039+0x1]=_0x4250f3,_0x8f6c45['heap'][0x1]=_0x4250f3++,_0x3dffb4(_0x8f6c45,_0x1ddd13,0x1),0x2<=_0x8f6c45['heap_len'];);_0x8f6c45['heap'][--_0x8f6c45['heap_max']]=_0x8f6c45['heap'][0x1],function(_0x321a03,_0x5bf8f9){var _0x42bc00,_0x3df3a8,_0x1486e9,_0xff60cc,_0x368392,_0x4161fe,_0x596f41=_0x5bf8f9['dyn_tree'],_0x4cb3de=_0x5bf8f9['max_code'],_0x2bd81d=_0x5bf8f9['stat_desc']['static_tree'],_0x308bb3=_0x5bf8f9['stat_desc']['has_stree'],_0x456153=_0x5bf8f9['stat_desc']['extra_bits'],_0xe96624=_0x5bf8f9['stat_desc']['extra_base'],_0x3641d6=_0x5bf8f9['stat_desc']['max_length'],_0x86a5b6=0x0;for(_0xff60cc=0x0;_0xff60cc<=_0x478cd9;_0xff60cc++)_0x321a03['bl_count'][_0xff60cc]=0x0;for(_0x596f41[0x2*_0x321a03['heap'][_0x321a03['heap_max']]+0x1]=0x0,_0x42bc00=_0x321a03['heap_max']+0x1;_0x42bc00<_0x9b916e;_0x42bc00++)_0x3641d6<(_0xff60cc=_0x596f41[0x2*_0x596f41[0x2*(_0x3df3a8=_0x321a03['heap'][_0x42bc00])+0x1]+0x1]+0x1)&&(_0xff60cc=_0x3641d6,_0x86a5b6++),_0x596f41[0x2*_0x3df3a8+0x1]=_0xff60cc,_0x4cb3de<_0x3df3a8||(_0x321a03['bl_count'][_0xff60cc]++,_0x368392=0x0,_0xe96624<=_0x3df3a8&&(_0x368392=_0x456153[_0x3df3a8-_0xe96624]),_0x4161fe=_0x596f41[0x2*_0x3df3a8],_0x321a03['opt_len']+=_0x4161fe*(_0xff60cc+_0x368392),_0x308bb3&&(_0x321a03['static_len']+=_0x4161fe*(_0x2bd81d[0x2*_0x3df3a8+0x1]+_0x368392)));if(0x0!==_0x86a5b6){do{for(_0xff60cc=_0x3641d6-0x1;0x0===_0x321a03['bl_count'][_0xff60cc];)_0xff60cc--;_0x321a03['bl_count'][_0xff60cc]--,_0x321a03['bl_count'][_0xff60cc+0x1]+=0x2,_0x321a03['bl_count'][_0x3641d6]--,_0x86a5b6-=0x2;}while(0x0<_0x86a5b6);for(_0xff60cc=_0x3641d6;0x0!==_0xff60cc;_0xff60cc--)for(_0x3df3a8=_0x321a03['bl_count'][_0xff60cc];0x0!==_0x3df3a8;)_0x4cb3de<(_0x1486e9=_0x321a03['heap'][--_0x42bc00])||(_0x596f41[0x2*_0x1486e9+0x1]!==_0xff60cc&&(_0x321a03['opt_len']+=(_0xff60cc-_0x596f41[0x2*_0x1486e9+0x1])*_0x596f41[0x2*_0x1486e9],_0x596f41[0x2*_0x1486e9+0x1]=_0xff60cc),_0x3df3a8--);}}(_0x8f6c45,_0x5dbbb3),_0x521b8c(_0x1ddd13,_0xb4d881,_0x8f6c45['bl_count']);}function _0x129d03(_0x334c38,_0x38fff3,_0x40df76){var _0x44b1a8,_0x30565a,_0x3942eb=-0x1,_0x39cee2=_0x38fff3[0x1],_0x3aff5b=0x0,_0x1d2527=0x7,_0x915eeb=0x4;for(0x0===_0x39cee2&&(_0x1d2527=0x8a,_0x915eeb=0x3),_0x38fff3[0x2*(_0x40df76+0x1)+0x1]=0xffff,_0x44b1a8=0x0;_0x44b1a8<=_0x40df76;_0x44b1a8++)_0x30565a=_0x39cee2,_0x39cee2=_0x38fff3[0x2*(_0x44b1a8+0x1)+0x1],++_0x3aff5b<_0x1d2527&&_0x30565a===_0x39cee2||(_0x3aff5b<_0x915eeb?_0x334c38['bl_tree'][0x2*_0x30565a]+=_0x3aff5b:0x0!==_0x30565a?(_0x30565a!==_0x3942eb&&_0x334c38['bl_tree'][0x2*_0x30565a]++,_0x334c38['bl_tree'][0x2*_0x42f3da]++):_0x3aff5b<=0xa?_0x334c38['bl_tree'][0x2*_0x571446]++:_0x334c38['bl_tree'][0x2*_0x1842da]++,_0x3942eb=_0x30565a,_0x915eeb=(_0x3aff5b=0x0)===_0x39cee2?(_0x1d2527=0x8a,0x3):_0x30565a===_0x39cee2?(_0x1d2527=0x6,0x3):(_0x1d2527=0x7,0x4));}function _0x23d377(_0x31ee9a,_0x1cd9f5,_0x30f459){var _0xdd4095,_0x456eaf,_0x2cbbae=-0x1,_0x3c2823=_0x1cd9f5[0x1],_0x28d726=0x0,_0x13a301=0x7,_0x55464e=0x4;for(0x0===_0x3c2823&&(_0x13a301=0x8a,_0x55464e=0x3),_0xdd4095=0x0;_0xdd4095<=_0x30f459;_0xdd4095++)if(_0x456eaf=_0x3c2823,_0x3c2823=_0x1cd9f5[0x2*(_0xdd4095+0x1)+0x1],!(++_0x28d726<_0x13a301&&_0x456eaf===_0x3c2823)){if(_0x28d726<_0x55464e){for(;_0x516d8b(_0x31ee9a,_0x456eaf,_0x31ee9a['bl_tree']),0x0!=--_0x28d726;);}else 0x0!==_0x456eaf?(_0x456eaf!==_0x2cbbae&&(_0x516d8b(_0x31ee9a,_0x456eaf,_0x31ee9a['bl_tree']),_0x28d726--),_0x516d8b(_0x31ee9a,_0x42f3da,_0x31ee9a['bl_tree']),_0x57cfe0(_0x31ee9a,_0x28d726-0x3,0x2)):_0x28d726<=0xa?(_0x516d8b(_0x31ee9a,_0x571446,_0x31ee9a['bl_tree']),_0x57cfe0(_0x31ee9a,_0x28d726-0x3,0x3)):(_0x516d8b(_0x31ee9a,_0x1842da,_0x31ee9a['bl_tree']),_0x57cfe0(_0x31ee9a,_0x28d726-0xb,0x7));_0x2cbbae=_0x456eaf,_0x55464e=(_0x28d726=0x0)===_0x3c2823?(_0x13a301=0x8a,0x3):_0x456eaf===_0x3c2823?(_0x13a301=0x6,0x3):(_0x13a301=0x7,0x4);}}_0x23862a(_0x30d6f5);var _0x18ca79=!0x1;function _0x26a50a(_0x5adb8c,_0x1f47d3,_0x3c3f9c,_0x5707b2){_0x57cfe0(_0x5adb8c,(_0x43e90d<<0x1)+(_0x5707b2?0x1:0x0),0x3),function(_0x128677,_0x5847ff,_0x4247ba,_0x57682e){_0x26b46a(_0x128677),(_0x469181(_0x128677,_0x4247ba),_0x469181(_0x128677,~_0x4247ba)),_0x4383cb['arraySet'](_0x128677['pending_buf'],_0x128677['window'],_0x5847ff,_0x4247ba,_0x128677['pending']),_0x128677['pending']+=_0x4247ba;}(_0x5adb8c,_0x1f47d3,_0x3c3f9c);}_0x3fafbe['_tr_init']=function(_0x315bbc){_0x18ca79||((function(){var _0x315126,_0x59f270,_0x36bc26,_0x5b9235,_0x3460f1,_0x3b07e2=new Array(_0x478cd9+0x1);for(_0x5b9235=_0x36bc26=0x0;_0x5b9235<_0x43d767-0x1;_0x5b9235++)for(_0x451b3d[_0x5b9235]=_0x36bc26,_0x315126=0x0;_0x315126<0x1<<_0x4af626[_0x5b9235];_0x315126++)_0x4f3da6[_0x36bc26++]=_0x5b9235;for(_0x4f3da6[_0x36bc26-0x1]=_0x5b9235,_0x5b9235=_0x3460f1=0x0;_0x5b9235<0x10;_0x5b9235++)for(_0x30d6f5[_0x5b9235]=_0x3460f1,_0x315126=0x0;_0x315126<0x1<<_0xca0e7[_0x5b9235];_0x315126++)_0x3ad268[_0x3460f1++]=_0x5b9235;for(_0x3460f1>>=0x7;_0x5b9235<_0x2cf0b9;_0x5b9235++)for(_0x30d6f5[_0x5b9235]=_0x3460f1<<0x7,_0x315126=0x0;_0x315126<0x1<<_0xca0e7[_0x5b9235]-0x7;_0x315126++)_0x3ad268[0x100+_0x3460f1++]=_0x5b9235;for(_0x59f270=0x0;_0x59f270<=_0x478cd9;_0x59f270++)_0x3b07e2[_0x59f270]=0x0;for(_0x315126=0x0;_0x315126<=0x8f;)_0x22c338[0x2*_0x315126+0x1]=0x8,_0x315126++,_0x3b07e2[0x8]++;for(;_0x315126<=0xff;)_0x22c338[0x2*_0x315126+0x1]=0x9,_0x315126++,_0x3b07e2[0x9]++;for(;_0x315126<=0x117;)_0x22c338[0x2*_0x315126+0x1]=0x7,_0x315126++,_0x3b07e2[0x7]++;for(;_0x315126<=0x11f;)_0x22c338[0x2*_0x315126+0x1]=0x8,_0x315126++,_0x3b07e2[0x8]++;for(_0x521b8c(_0x22c338,_0x408157+0x1,_0x3b07e2),_0x315126=0x0;_0x315126<_0x2cf0b9;_0x315126++)_0x58f75f[0x2*_0x315126+0x1]=0x5,_0x58f75f[0x2*_0x315126]=_0x397196(_0x315126,0x5);_0x5eff9f=new _0x58da9f(_0x22c338,_0x4af626,_0x4b56f9+0x1,_0x408157,_0x478cd9),_0x4c2fba=new _0x58da9f(_0x58f75f,_0xca0e7,0x0,_0x2cf0b9,_0x478cd9),_0x1c814f=new _0x58da9f(new Array(0x0),_0x352334,0x0,_0x557361,_0x489476);}()),_0x18ca79=!0x0),_0x315bbc['l_desc']=new _0x415388(_0x315bbc['dyn_ltree'],_0x5eff9f),_0x315bbc['d_desc']=new _0x415388(_0x315bbc['dyn_dtree'],_0x4c2fba),_0x315bbc['bl_desc']=new _0x415388(_0x315bbc['bl_tree'],_0x1c814f),_0x315bbc['bi_buf']=0x0,_0x315bbc['bi_valid']=0x0,_0x554709(_0x315bbc);},_0x3fafbe['_tr_stored_block']=_0x26a50a,_0x3fafbe['_tr_flush_block']=function(_0x1e4e6e,_0x3077ee,_0x199821,_0x2d2208){var _0x41d0ab,_0x584f55,_0x4d8525=0x0;0x0<_0x1e4e6e['level']?(0x2===_0x1e4e6e['strm']['data_type']&&(_0x1e4e6e['strm']['data_type']=function(_0x49a3cc){var _0x1369f8,_0x943e04=0xf3ffc07f;for(_0x1369f8=0x0;_0x1369f8<=0x1f;_0x1369f8++,_0x943e04>>>=0x1)if(0x1&_0x943e04&&0x0!==_0x49a3cc['dyn_ltree'][0x2*_0x1369f8])return _0x19ff0a;if(0x0!==_0x49a3cc['dyn_ltree'][0x12]||0x0!==_0x49a3cc['dyn_ltree'][0x14]||0x0!==_0x49a3cc['dyn_ltree'][0x1a])return _0x61a930;for(_0x1369f8=0x20;_0x1369f8<_0x4b56f9;_0x1369f8++)if(0x0!==_0x49a3cc['dyn_ltree'][0x2*_0x1369f8])return _0x61a930;return _0x19ff0a;}(_0x1e4e6e)),_0x29fd74(_0x1e4e6e,_0x1e4e6e['l_desc']),_0x29fd74(_0x1e4e6e,_0x1e4e6e['d_desc']),_0x4d8525=function(_0x30c320){var _0x5eacb6;for(_0x129d03(_0x30c320,_0x30c320['dyn_ltree'],_0x30c320['l_desc']['max_code']),_0x129d03(_0x30c320,_0x30c320['dyn_dtree'],_0x30c320['d_desc']['max_code']),_0x29fd74(_0x30c320,_0x30c320['bl_desc']),_0x5eacb6=_0x557361-0x1;0x3<=_0x5eacb6&&0x0===_0x30c320['bl_tree'][0x2*_0x107d8d[_0x5eacb6]+0x1];_0x5eacb6--);return _0x30c320['opt_len']+=0x3*(_0x5eacb6+0x1)+0x5+0x5+0x4,_0x5eacb6;}(_0x1e4e6e),_0x41d0ab=_0x1e4e6e['opt_len']+0x3+0x7>>>0x3,(_0x584f55=_0x1e4e6e['static_len']+0x3+0x7>>>0x3)<=_0x41d0ab&&(_0x41d0ab=_0x584f55)):_0x41d0ab=_0x584f55=_0x199821+0x5,_0x199821+0x4<=_0x41d0ab&&-0x1!==_0x3077ee?_0x26a50a(_0x1e4e6e,_0x3077ee,_0x199821,_0x2d2208):0x4===_0x1e4e6e['strategy']||_0x584f55===_0x41d0ab?(_0x57cfe0(_0x1e4e6e,0x2+(_0x2d2208?0x1:0x0),0x3),_0x4707e9(_0x1e4e6e,_0x22c338,_0x58f75f)):(_0x57cfe0(_0x1e4e6e,0x4+(_0x2d2208?0x1:0x0),0x3),function(_0x34d552,_0x5c2777,_0x128c51,_0xb38209){var _0x448113;for(_0x57cfe0(_0x34d552,_0x5c2777-0x101,0x5),_0x57cfe0(_0x34d552,_0x128c51-0x1,0x5),_0x57cfe0(_0x34d552,_0xb38209-0x4,0x4),_0x448113=0x0;_0x448113<_0xb38209;_0x448113++)_0x57cfe0(_0x34d552,_0x34d552['bl_tree'][0x2*_0x107d8d[_0x448113]+0x1],0x3);_0x23d377(_0x34d552,_0x34d552['dyn_ltree'],_0x5c2777-0x1),_0x23d377(_0x34d552,_0x34d552['dyn_dtree'],_0x128c51-0x1);}(_0x1e4e6e,_0x1e4e6e['l_desc']['max_code']+0x1,_0x1e4e6e['d_desc']['max_code']+0x1,_0x4d8525+0x1),_0x4707e9(_0x1e4e6e,_0x1e4e6e['dyn_ltree'],_0x1e4e6e['dyn_dtree'])),_0x554709(_0x1e4e6e),_0x2d2208&&_0x26b46a(_0x1e4e6e);},_0x3fafbe['_tr_tally']=function(_0x110344,_0x5ec0e1,_0x66c537){return _0x110344['pending_buf'][_0x110344['d_buf']+0x2*_0x110344['last_lit']]=_0x5ec0e1>>>0x8&0xff,_0x110344['pending_buf'][_0x110344['d_buf']+0x2*_0x110344['last_lit']+0x1]=0xff&_0x5ec0e1,_0x110344['pending_buf'][_0x110344['l_buf']+_0x110344['last_lit']]=0xff&_0x66c537,_0x110344['last_lit']++,0x0===_0x5ec0e1?_0x110344['dyn_ltree'][0x2*_0x66c537]++:(_0x110344['matches']++,_0x5ec0e1--,_0x110344['dyn_ltree'][0x2*(_0x4f3da6[_0x66c537]+_0x4b56f9+0x1)]++,_0x110344['dyn_dtree'][0x2*_0x2913dc(_0x5ec0e1)]++),_0x110344['last_lit']===_0x110344['lit_bufsize']-0x1;},_0x3fafbe['_tr_align']=function(_0x301be9){_0x57cfe0(_0x301be9,0x2,0x3),_0x516d8b(_0x301be9,_0x459fda,_0x22c338),function(_0xce8363){0x10===_0xce8363['bi_valid']?(_0x469181(_0xce8363,_0xce8363['bi_buf']),_0xce8363['bi_buf']=0x0,_0xce8363['bi_valid']=0x0):0x8<=_0xce8363['bi_valid']&&(_0xce8363['pending_buf'][_0xce8363['pending']++]=0xff&_0xce8363['bi_buf'],_0xce8363['bi_buf']>>=0x8,_0xce8363['bi_valid']-=0x8);}(_0x301be9);};},{'../utils/common':0x29}],0x35:[function(_0xefd34b,_0x4ce2a5,_0x1b4d7d){_0x4ce2a5['exports']=function(){this['input']=null,this['next_in']=0x0,this['avail_in']=0x0,this['total_in']=0x0,this['output']=null,this['next_out']=0x0,this['avail_out']=0x0,this['total_out']=0x0,this['msg']='',this['state']=null,this['data_type']=0x2,this['adler']=0x0;};},{}],0x36:[function(_0x48751e,_0x337803,_0x272c7f){(function(_0xa96a2c){!function(_0x455e88,_0x171522){if(!_0x455e88['setImmediate']){var _0x57b868,_0x5c5347,_0x28a4b0,_0x321c72,_0x43b977=0x1,_0x7310f2={},_0x4257a4=!0x1,_0x5f158e=_0x455e88['document'],_0x23dd5f=Object['getPrototypeOf']&&Object['getPrototypeOf'](_0x455e88);_0x23dd5f=_0x23dd5f&&_0x23dd5f['setTimeout']?_0x23dd5f:_0x455e88,_0x57b868='[object\x20process]'==={}['toString']['call'](_0x455e88['process'])?function(_0xe279aa){process['nextTick'](function(){_0x3684db(_0xe279aa);});}:(function(){if(_0x455e88['postMessage']&&!_0x455e88['importScripts']){var _0x19e3c9=!0x0,_0x58a727=_0x455e88['onmessage'];return _0x455e88['onmessage']=function(){_0x19e3c9=!0x1;},_0x455e88['postMessage']('','*'),_0x455e88['onmessage']=_0x58a727,_0x19e3c9;}}())?(_0x321c72='setImmediate$'+Math['random']()+'$',_0x455e88['addEventListener']?_0x455e88['addEventListener']('message',_0x3163af,!0x1):_0x455e88['attachEvent']('onmessage',_0x3163af),function(_0x52921b){_0x455e88['postMessage'](_0x321c72+_0x52921b,'*');}):_0x455e88['MessageChannel']?((_0x28a4b0=new MessageChannel())['port1']['onmessage']=function(_0x2f3abd){_0x3684db(_0x2f3abd['data']);},function(_0x385d4c){_0x28a4b0['port2']['postMessage'](_0x385d4c);}):_0x5f158e&&'onreadystatechange'in _0x5f158e['createElement']('script')?(_0x5c5347=_0x5f158e['documentElement'],function(_0x34f3e8){var _0x415017=_0x5f158e['createElement']('script');_0x415017['onreadystatechange']=function(){_0x3684db(_0x34f3e8),_0x415017['onreadystatechange']=null,_0x5c5347['removeChild'](_0x415017),_0x415017=null;},_0x5c5347['appendChild'](_0x415017);}):function(_0x29cd13){setTimeout(_0x3684db,0x0,_0x29cd13);},_0x23dd5f['setImmediate']=function(_0x143eab){'function'!=typeof _0x143eab&&(_0x143eab=new Function(''+_0x143eab));for(var _0x1cd052=new Array(arguments['length']-0x1),_0x2115f1=0x0;_0x2115f1<_0x1cd052['length'];_0x2115f1++)_0x1cd052[_0x2115f1]=arguments[_0x2115f1+0x1];var _0x53ff92={'callback':_0x143eab,'args':_0x1cd052};return _0x7310f2[_0x43b977]=_0x53ff92,_0x57b868(_0x43b977),_0x43b977++;},_0x23dd5f['clearImmediate']=_0x11b754;}function _0x11b754(_0xb7d6df){delete _0x7310f2[_0xb7d6df];}function _0x3684db(_0x247b29){if(_0x4257a4)setTimeout(_0x3684db,0x0,_0x247b29);else {var _0x3e2e94=_0x7310f2[_0x247b29];if(_0x3e2e94){_0x4257a4=!0x0;try{!function(_0x5e1e97){var _0x504798=_0x5e1e97['callback'],_0x1a5169=_0x5e1e97['args'];switch(_0x1a5169['length']){case 0x0:_0x504798();break;case 0x1:_0x504798(_0x1a5169[0x0]);break;case 0x2:_0x504798(_0x1a5169[0x0],_0x1a5169[0x1]);break;case 0x3:_0x504798(_0x1a5169[0x0],_0x1a5169[0x1],_0x1a5169[0x2]);break;default:_0x504798['apply'](_0x171522,_0x1a5169);}}(_0x3e2e94);}finally{_0x11b754(_0x247b29),_0x4257a4=!0x1;}}}}function _0x3163af(_0x3dac43){_0x3dac43['source']===_0x455e88&&'string'==typeof _0x3dac43['data']&&0x0===_0x3dac43['data']['indexOf'](_0x321c72)&&_0x3684db(+_0x3dac43['data']['slice'](_0x321c72['length']));}}('undefined'==typeof self?void 0x0===_0xa96a2c?this:_0xa96a2c:self);}['call'](this,'undefined'!=typeof commonjsGlobal?commonjsGlobal:'undefined'!=typeof self?self:'undefined'!=typeof window?window:{}));},{}]},{},[0xa])(0xa);});}(jszip_min));var jszip_minExports=jszip_min['exports'];var _0x786dad = getDefaultExportFromCjs(jszip_minExports);
|
|
115
|
+
|
|
116
|
+
const en$a={'export':'Export','format':'Format','fileName':'File\x20Name','embedTextures':'Embed\x20Textures','embedGeometry':'Embed\x20Geometry','useTrsTransforms':'Use\x20TRS\x20Transforms','visibleObjects':'Visible\x20Objects','customExtensions':'Custom\x20Extensions','quantizeGeometry':'Quantize\x20Geometry','binary':'Binary','exportButton':'Export','formatObj':'Wavefront\x20(.obj)','formatStl':'Stereolithography\x20(.stl)','formatPly':'Polygon\x20File\x20Format\x20(.ply)','formatGltf':'glTF\x20Text\x20(.gltf)','formatGlb':'glTF\x20Binary\x20(.glb)'};const zh$a={'export':'导出','format':'格式','fileName':'文件名','embedTextures':'嵌入纹理','embedGeometry':'嵌入几何体','useTrsTransforms':'使用\x20TRS\x20变换','visibleObjects':'仅可见对象','customExtensions':'自定义扩展','quantizeGeometry':'量化几何体','binary':'二进制','exportButton':'导出','formatObj':'Wavefront\x20(.obj)','formatStl':'Stereolithography\x20(.stl)','formatPly':'Polygon\x20File\x20Format\x20(.ply)','formatGltf':'glTF\x20文本\x20(.gltf)','formatGlb':'glTF\x20二进制\x20(.glb)'};const EXPORT_I18N_NAMESPACE='export';registerViewerI18nNamespace(EXPORT_I18N_NAMESPACE,{'en':en$a,'zh':zh$a});function t$a(_0x121e9d){return i18n['t'](_0x121e9d,{'ns':EXPORT_I18N_NAMESPACE});}
|
|
117
|
+
|
|
118
|
+
const DefaultGltfExportOptions={'trs':![],'binary':!![],'embedImages':!![],'onlyVisible':!![],'includeCustomExtensions':!![]};function buildGltfExportScene(_0x4beaca){const _0x18e890=new THREE['Scene']();for(let _0x3730e3=0x0;_0x3730e3<_0x4beaca['length'];_0x3730e3++){_0x18e890['children']['push'](_0x4beaca[_0x3730e3]);}return _0x18e890;}class GltfExporter{['parse'](_0x305581,_0x4eb983,_0x2bc041,_0x517c60,_0x1c411e=![]){let _0x2ac346=_0x4eb983,_0x31d90a,_0x4c4c4e=_0x305581;if(_0x1c411e){const _0x406076=quantizeObjectsForGltf(_0x305581);_0x4c4c4e=_0x406076['clones'],_0x31d90a=_0x406076['dispose'],_0x2ac346=Object['assign'](Object['assign']({},_0x4eb983),{'trs':![]});}if(_0x4c4c4e['length']===0x0){_0x517c60(new ErrorEvent('error',{'message':'[GltfExporter]\x20No\x20objects\x20to\x20export'}));return;}const _0xfe44c4=buildGltfExportScene(_0x4c4c4e),_0xf51765=()=>{_0x31d90a===null||_0x31d90a===void 0x0?void 0x0:_0x31d90a(),_0x31d90a=undefined;},_0x66d4f5=new THREEAddons['GLTFExporter']();_0x66d4f5['parse'](_0xfe44c4,_0x3308b9=>{_0xf51765(),_0x2bc041(_0x3308b9);},_0x575069=>{_0xf51765(),_0x517c60(_0x575069);},_0x2ac346);}}const invParentWorldScratch=new THREE['Matrix4']();function quantizeObjectsForGltf(_0x43aa88){const _0x1432ec=new Map(),_0x19bbc2=new THREE['Matrix4'](),_0x56b994=_0x43aa88['map'](_0x299dc0=>{const _0xb61831=_0x299dc0['clone'](!![]);return _0xb61831['updateMatrixWorld'](!![]),_0xb61831['traverse'](_0x5dac5e=>{if(!(_0x5dac5e instanceof THREE['Mesh']))return;const _0x2365cd=_0x5dac5e['geometry'];if(!_0x2365cd)return;let _0x33c2ea=_0x1432ec['get'](_0x2365cd);if(!_0x33c2ea){const _0x1d1da0=_0x2365cd['clone'](),_0xe08343=GeometryUtils['quantizeGeometry'](_0x1d1da0);_0x33c2ea={'geo':_0x1d1da0,'M_decode':_0xe08343},_0x1432ec['set'](_0x2365cd,_0x33c2ea);}_0x5dac5e['geometry']=_0x33c2ea['geo'];if(!_0x33c2ea['M_decode'])return;if(_0x5dac5e instanceof THREE['InstancedMesh']){for(let _0x2dbd27=0x0;_0x2dbd27<_0x5dac5e['count'];_0x2dbd27++){_0x5dac5e['getMatrixAt'](_0x2dbd27,_0x19bbc2),_0x19bbc2['multiply'](_0x33c2ea['M_decode']),_0x5dac5e['setMatrixAt'](_0x2dbd27,_0x19bbc2);}_0x5dac5e['instanceMatrix']['needsUpdate']=!![];return;}const _0x5acab6=_0x5dac5e['children']['length'],_0x12adbe=[];for(let _0x506b38=0x0;_0x506b38<_0x5acab6;_0x506b38++){_0x12adbe['push'](_0x5dac5e['children'][_0x506b38]['matrixWorld']['clone']());}_0x5dac5e['matrix']['multiply'](_0x33c2ea['M_decode']),_0x5dac5e['matrixAutoUpdate']=![];if(_0x5acab6>0x0){_0x5dac5e['parent']?_0x5dac5e['matrixWorld']['multiplyMatrices'](_0x5dac5e['parent']['matrixWorld'],_0x5dac5e['matrix']):_0x5dac5e['matrixWorld']['copy'](_0x5dac5e['matrix']);const _0x2328a0=invParentWorldScratch['copy'](_0x5dac5e['matrixWorld'])['invert']();for(let _0x5c5e36=0x0;_0x5c5e36<_0x5acab6;_0x5c5e36++){const _0xe805f9=_0x5dac5e['children'][_0x5c5e36];_0xe805f9['matrix']['multiplyMatrices'](_0x2328a0,_0x12adbe[_0x5c5e36]),_0xe805f9['matrixAutoUpdate']=![];}}_0x5dac5e['updateMatrixWorld'](!![]);}),_0xb61831['updateMatrixWorld'](!![]),_0xb61831;}),_0x49c1d3=()=>{_0x1432ec['forEach'](_0x5c076b=>_0x5c076b['geo']['dispose']()),_0x1432ec['clear']();};return {'clones':_0x56b994,'dispose':_0x49c1d3};}
|
|
119
|
+
|
|
120
|
+
function getMaterialName(_0x1d1570,_0x181980){const _0x3af64a=(_0x1d1570['name']||'')['trim']();if(_0x3af64a)return _0x3af64a;return 'material_'+_0x181980;}function clamp01(_0x3aa967){if(Number['isNaN'](_0x3aa967))return 0x0;return Math['max'](0x0,Math['min'](0x1,_0x3aa967));}function colorToKd(_0x57b48a){if(!_0x57b48a)return null;return clamp01(_0x57b48a['r'])+'\x20'+clamp01(_0x57b48a['g'])+'\x20'+clamp01(_0x57b48a['b']);}function writeMtl(_0x38bf2c,_0x45950f){const _0x21ad3a=[];return _0x21ad3a['push']('#\x20gcode-viewer\x20OBJ\x20material\x20file'),_0x38bf2c['forEach']((_0x34c170,_0x396916)=>{const _0x1ba717=getMaterialName(_0x34c170,_0x396916);_0x21ad3a['push'](''),_0x21ad3a['push']('newmtl\x20'+_0x1ba717);const _0x5ef127=_0x34c170,_0x5ed6e8=colorToKd(_0x5ef127['color']);_0x5ed6e8&&_0x21ad3a['push']('Kd\x20'+_0x5ed6e8);const _0x56e005=typeof _0x5ef127['opacity']==='number'?clamp01(_0x5ef127['opacity']):null,_0x334463=Boolean(_0x5ef127['transparent']);(_0x334463||_0x56e005!==null&&_0x56e005<0x1)&&_0x21ad3a['push']('d\x20'+(_0x56e005!==null&&_0x56e005!==void 0x0?_0x56e005:0x1));const _0x4d6800=_0x45950f['get'](_0x34c170),_0x46d934=_0x4d6800===null||_0x4d6800===void 0x0?void 0x0:_0x4d6800['map_Kd'];_0x46d934&&_0x21ad3a['push']('map_Kd\x20'+_0x46d934['filename']);}),_0x21ad3a['push'](''),_0x21ad3a['join']('\x0a');}
|
|
121
|
+
|
|
122
|
+
function collectTexturesFromObject(_0x1844a3){const _0x25cac6=[];return _0x1844a3['traverse'](_0x24ca8c=>{const _0x53a8c2=_0x24ca8c,_0x72b535=_0x53a8c2['material'];if(!_0x72b535)return;const _0x42739c=Array['isArray'](_0x72b535)?_0x72b535:[_0x72b535];for(const _0x3d0e47 of _0x42739c){const _0x3a4fe2=_0x3d0e47;_0x3a4fe2['map']&&_0x25cac6['push']({'usage':'map','texture':_0x3a4fe2['map']}),_0x3a4fe2['normalMap']&&_0x25cac6['push']({'usage':'normalMap','texture':_0x3a4fe2['normalMap']}),_0x3a4fe2['alphaMap']&&_0x25cac6['push']({'usage':'alphaMap','texture':_0x3a4fe2['alphaMap']}),_0x3a4fe2['emissiveMap']&&_0x25cac6['push']({'usage':'emissiveMap','texture':_0x3a4fe2['emissiveMap']}),_0x3a4fe2['roughnessMap']&&_0x25cac6['push']({'usage':'roughnessMap','texture':_0x3a4fe2['roughnessMap']}),_0x3a4fe2['metalnessMap']&&_0x25cac6['push']({'usage':'metalnessMap','texture':_0x3a4fe2['metalnessMap']});}}),_0x25cac6;}function inferExtFromMime(_0x28ead0){const _0x11c068=(_0x28ead0||'')['toLowerCase']();if(_0x11c068['includes']('png'))return 'png';if(_0x11c068['includes']('jpeg')||_0x11c068['includes']('jpg'))return 'jpg';if(_0x11c068['includes']('webp'))return 'webp';return null;}function inferExtFromUrl(_0x516447){try{const _0x1b8c54=new URL(_0x516447,typeof window!=='undefined'?window['location']['href']:undefined),_0x2ca606=_0x1b8c54['pathname']['toLowerCase']();if(_0x2ca606['endsWith']('.png'))return 'png';if(_0x2ca606['endsWith']('.jpg')||_0x2ca606['endsWith']('.jpeg'))return 'jpg';if(_0x2ca606['endsWith']('.webp'))return 'webp';return null;}catch(_0x2c01d9){return null;}}async function canvasToBlob(_0x17060e,_0x24d9ff){return await new Promise(_0x17a2e6=>{_0x17060e['toBlob'](_0x97c7c3=>_0x17a2e6(_0x97c7c3),_0x24d9ff);});}async function textureToBlob(_0xfdf971,_0x38af9e='image/png'){const _0x3f8b5e=_0xfdf971['image'];if(!_0x3f8b5e)return null;if(typeof HTMLCanvasElement!=='undefined'&&_0x3f8b5e instanceof HTMLCanvasElement)return await canvasToBlob(_0x3f8b5e,_0x38af9e);if(typeof HTMLImageElement!=='undefined'&&_0x3f8b5e instanceof HTMLImageElement&&_0x3f8b5e['src']){try{const _0x542a36=await fetch(_0x3f8b5e['src']);if(_0x542a36['ok'])return await _0x542a36['blob']();}catch(_0x426e82){}try{const _0x28f4c7=document['createElement']('canvas');_0x28f4c7['width']=_0x3f8b5e['naturalWidth']||_0x3f8b5e['width']||0x0,_0x28f4c7['height']=_0x3f8b5e['naturalHeight']||_0x3f8b5e['height']||0x0;const _0x954382=_0x28f4c7['getContext']('2d');if(!_0x954382||!_0x28f4c7['width']||!_0x28f4c7['height'])return null;return _0x954382['drawImage'](_0x3f8b5e,0x0,0x0),await canvasToBlob(_0x28f4c7,_0x38af9e);}catch(_0x3ff321){return null;}}if(typeof ImageBitmap!=='undefined'&&_0x3f8b5e instanceof ImageBitmap)try{const _0x3a3865=document['createElement']('canvas');_0x3a3865['width']=_0x3f8b5e['width'],_0x3a3865['height']=_0x3f8b5e['height'];const _0x462a06=_0x3a3865['getContext']('2d');if(!_0x462a06)return null;return _0x462a06['drawImage'](_0x3f8b5e,0x0,0x0),await canvasToBlob(_0x3a3865,_0x38af9e);}catch(_0x198b3f){return null;}return null;}async function exportTextureFiles(_0x33bfca,_0x2de1bc='textures'){const _0x20ebb=[],_0x384bd1=new Map(),_0x1df158={};for(const {usage:_0x1d26ff,texture:_0x9201ed}of _0x33bfca){const _0x40a537=_0x9201ed['uuid'];if(_0x384bd1['has'](_0x40a537))continue;const _0x29ce93=await textureToBlob(_0x9201ed);if(!_0x29ce93){log['warn']('[obj-export]\x20skip\x20texture\x20(unsupported):\x20usage='+_0x1d26ff+',\x20uuid='+_0x9201ed['uuid']);continue;}const _0xccd0d4=_0x29ce93['type']||'image/png',_0x4521dd=inferExtFromMime(_0xccd0d4),_0x40c255=_0x9201ed['image'],_0x57a494=typeof(_0x40c255===null||_0x40c255===void 0x0?void 0x0:_0x40c255['src'])==='string'?inferExtFromUrl(_0x40c255['src']):null,_0xd53c31=_0x57a494||_0x4521dd||'png';_0x1df158[_0x1d26ff]=(_0x1df158[_0x1d26ff]||0x0)+0x1;const _0x1ab763=_0x2de1bc+'/'+_0x1d26ff+'_'+_0x1df158[_0x1d26ff]+'.'+_0xd53c31,_0x3d1696={'key':_0x40a537,'usage':_0x1d26ff,'filename':_0x1ab763,'blob':_0x29ce93};_0x384bd1['set'](_0x40a537,_0x3d1696),_0x20ebb['push'](_0x3d1696);}return _0x20ebb;}
|
|
123
|
+
|
|
124
|
+
class ObjZipExporter{['exportSync'](_0x56ea7a,_0x42770a){if(!THREEAddons['OBJExporter'])throw new Error('OBJExporter\x20is\x20not\x20available\x20in\x20THREEAddons.');const _0x3de0ed=new THREEAddons['OBJExporter']();return _0x3de0ed['parse'](_0x56ea7a);}async['export'](_0x102e2c,_0x26a351){const _0x2dbb54=_0x26a351+'.obj',_0x29771c=_0x26a351+'.mtl',_0x5899cd=[];let _0x1b67c6=0x0;const _0x2214bc=new Set();_0x102e2c['traverse'](_0x306ca3=>{const _0x47a2a2=_0x306ca3,_0x32983d=_0x47a2a2['material'];if(!_0x32983d)return;const _0xa015f9=Array['isArray'](_0x32983d)?_0x32983d:[_0x32983d];for(const _0x195dac of _0xa015f9){if(_0x2214bc['has'](_0x195dac))continue;_0x2214bc['add'](_0x195dac),(!_0x195dac['name']||!_0x195dac['name']['trim']())&&(_0x195dac['name']='material_'+_0x1b67c6),_0x5899cd['push'](_0x195dac),_0x1b67c6+=0x1;}});const _0x4adbfd=this['exportSync'](_0x102e2c,_0x26a351),_0x5c2093=collectTexturesFromObject(_0x102e2c),_0x1b24a=await exportTextureFiles(_0x5c2093),_0x85c73d=new Map();for(const _0x2cb88d of _0x1b24a){_0x85c73d['set'](_0x2cb88d['key'],_0x2cb88d);}const _0x5a197c=new Map();_0x102e2c['traverse'](_0x443353=>{const _0x566d0c=_0x443353,_0x518609=_0x566d0c['material'];if(!_0x518609)return;const _0x5a98bc=Array['isArray'](_0x518609)?_0x518609:[_0x518609];for(const _0x36bdc1 of _0x5a98bc){const _0x188c73=_0x36bdc1,_0x3329d1=_0x188c73['map'];if(!_0x3329d1)continue;const _0x20f0f9=_0x85c73d['get'](_0x3329d1['uuid']);if(!_0x20f0f9)continue;_0x5a197c['set'](_0x36bdc1,{'map_Kd':_0x20f0f9});}});const _0xb644dd=_0x5899cd['length']>0x0,_0x1a3fc0=_0x1b24a['length']>0x0,_0x355714=_0xb644dd||_0x1a3fc0,_0x2f2719=_0x355714?writeMtl(_0x5899cd,_0x5a197c):null,_0x5b734e=_0x355714?this['injectMtllib'](_0x4adbfd,_0x29771c):_0x4adbfd;return !_0x1a3fc0&&log['info']('[obj-export]\x20no\x20textures\x20detected;\x20exporting\x20without\x20texture\x20files.'),{'objFilename':_0x2dbb54,'objText':_0x5b734e,'mtlFilename':_0x355714?_0x29771c:null,'mtlText':_0x2f2719,'textureFiles':_0x1b24a};}['injectMtllib'](_0x4c2913,_0x4ba7fc){const _0x1a2fa5='mtllib\x20'+_0x4ba7fc;if(_0x4c2913['split'](/\r?\n/)['some'](_0xadd83c=>_0xadd83c['trim']()['toLowerCase']()['startsWith']('mtllib\x20')))return _0x4c2913;const _0x3e52e4=_0x4c2913['split'](/\r?\n/);let _0x16f391=0x0;while(_0x16f391<_0x3e52e4['length']&&_0x3e52e4[_0x16f391]['trim']()['startsWith']('#')){_0x16f391+=0x1;}return _0x3e52e4['splice'](_0x16f391,0x0,_0x1a2fa5),_0x3e52e4['join']('\x0a');}}
|
|
125
|
+
|
|
126
|
+
var ExportFormats;(function(_0x4ba9b3){_0x4ba9b3['Glb']='glb',_0x4ba9b3['Gltf']='gltf',_0x4ba9b3['Obj']='obj',_0x4ba9b3['Stl']='stl',_0x4ba9b3['Ply']='ply';}(ExportFormats||(ExportFormats={})));const DEFAULT_EXPORT_FILENAME='Scene',FORMAT_I18N_KEY={[ExportFormats['Obj']]:'formatObj',[ExportFormats['Stl']]:'formatStl',[ExportFormats['Ply']]:'formatPly',[ExportFormats['Gltf']]:'formatGltf',[ExportFormats['Glb']]:'formatGlb'};class ExportPlugin extends Plugin{constructor(_0x511e25,_0x2a682b){const _0x2437ac=(_0x2a682b===null||_0x2a682b===void 0x0?void 0x0:_0x2a682b['id'])||ExportPlugin['DEFAULT_ID'];super(_0x511e25,{'id':_0x2437ac}),this['onLanguageChange']=()=>{this['applyLocalizedChrome']();},this['saveArrayBufferAsFile']=(_0x20f0b9,_0x4bcde6)=>{this['saveBlobAsFile'](new Blob([_0x20f0b9],{'type':'application/octet-stream'}),_0x4bcde6);},this['cfg']=_0x2a682b||{'id':_0x2437ac},this['viewer3d']=_0x511e25,this['viewer3d']['addEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']);}['applyLocalizedChrome'](){var _0x2fcdad,_0x25f9fc;(_0x2fcdad=this['basePanel'])===null||_0x2fcdad===void 0x0?void 0x0:_0x2fcdad['setTitle'](t$a('export'));const _0x4790d1=(_0x25f9fc=this['basePanel'])===null||_0x25f9fc===void 0x0?void 0x0:_0x25f9fc['content'];if(!_0x4790d1)return;const _0x473a32=(_0x1eecee,_0x5baa20)=>{const _0x2c2222=_0x4790d1['querySelector']('label[for=\x22'+_0x1eecee+'\x22]');_0x2c2222&&(_0x2c2222['textContent']=t$a(_0x5baa20));};_0x473a32('targetFormat','format'),_0x473a32('filename','fileName'),_0x473a32('embedTextures','embedTextures'),_0x473a32('embedGeometry','embedGeometry'),_0x473a32('useTrsTransforms','useTrsTransforms'),_0x473a32('visibleObjects','visibleObjects'),_0x473a32('customExtensions','customExtensions'),_0x473a32('quantize','quantizeGeometry'),_0x473a32('binary','binary');const _0x341661=_0x4790d1['querySelector']('#targetFormat');if(_0x341661)for(const _0x18e1ce of Array['from'](_0x341661['options'])){const _0x32606b=_0x18e1ce['value'];FORMAT_I18N_KEY[_0x32606b]&&(_0x18e1ce['textContent']=t$a(FORMAT_I18N_KEY[_0x32606b]));}const _0x5dc09c=_0x4790d1['querySelector']('#exportBtn');_0x5dc09c&&(_0x5dc09c['value']=t$a('exportButton'));}['exportGltf'](_0xbcd63c,_0x40c6fb=DefaultGltfExportOptions,_0x26f317=null,_0x6114b1=![]){this['viewer3d']['clearSelection']();let _0x1b166d;if(_0x26f317)_0x1b166d=[_0x26f317];else {const _0x4505f9=this['viewer']['getSceneManager']()['getModelsRoot']();_0x1b166d=_0x4505f9['children'];}const _0xed0528=_0xbcd63c||DEFAULT_EXPORT_FILENAME,_0x5b013c=_0x40c6fb['binary']?'glb':'gltf';new GltfExporter()['parse'](_0x1b166d,_0x40c6fb,_0x29f9b3=>{if(_0x29f9b3 instanceof ArrayBuffer)this['saveArrayBufferAsFile'](_0x29f9b3,_0xed0528+'.'+_0x5b013c);else {const _0x5e0f25=JSON['stringify'](_0x29f9b3,null,0x2);console['log'](_0x5e0f25),this['saveStringAsFile'](_0x5e0f25,_0xed0528+'.'+_0x5b013c);}},_0x4d5325=>console['error'](_0x4d5325),_0x6114b1);}['exportObj'](_0x4f3b6e,_0x33d479=null){this['viewer3d']['clearSelection']();let _0x313461=_0x33d479;if(!_0x313461){_0x313461=new THREE['Group']();const _0x5d5648=this['viewer']['getSceneManager']()['getModelsRoot']();_0x5d5648['children']['forEach'](_0x309a42=>_0x313461===null||_0x313461===void 0x0?void 0x0:_0x313461['add'](_0x309a42['clone'](!![])));}const _0x3dcb0e=_0x4f3b6e||DEFAULT_EXPORT_FILENAME,_0x40ce6c=new ObjZipExporter();_0x40ce6c['export'](_0x313461,_0x3dcb0e)['then'](async({objFilename:_0x2ad2bf,objText:_0x1c0497,mtlFilename:_0x2d96b6,mtlText:_0xc206df,textureFiles:_0x55e70c})=>{const _0x4951e2=new _0x786dad();_0x4951e2['file'](_0x2ad2bf,_0x1c0497);_0x2d96b6&&_0xc206df&&_0x4951e2['file'](_0x2d96b6,_0xc206df);for(const _0x20e3f3 of _0x55e70c){_0x4951e2['file'](_0x20e3f3['filename'],_0x20e3f3['blob']);}const _0x402055=await _0x4951e2['generateAsync']({'type':'blob'});this['saveBlobAsFile'](_0x402055,_0x3dcb0e+'.zip');})['catch'](_0x5416f9=>{log['error'](_0x5416f9);});}['exportStl'](_0x2fbd2c,_0x5607a1=null){if(!THREEAddons['STLExporter']){console['error']('STLExporter\x20is\x20not\x20available\x20in\x20THREEAddons.');return;}this['viewer3d']['clearSelection']();let _0x2f9979=_0x5607a1;if(!_0x2f9979){_0x2f9979=new THREE['Group']();const _0x209eb3=this['viewer']['getSceneManager']()['getModelsRoot']();_0x209eb3['children']['forEach'](_0x142d90=>_0x2f9979===null||_0x2f9979===void 0x0?void 0x0:_0x2f9979['add'](_0x142d90['clone'](!![])));}const _0xc3dcdf=new THREEAddons['STLExporter'](),_0x120501=_0xc3dcdf['parse'](_0x2f9979);if(typeof _0x120501==='string'||_0x120501 instanceof ArrayBuffer){const _0x405bf2=typeof _0x120501==='string'?new Blob([_0x120501],{'type':'model/stl'}):new Blob([_0x120501],{'type':'application/octet-stream'});this['saveBlobAsFile'](_0x405bf2,(_0x2fbd2c||DEFAULT_EXPORT_FILENAME)+'.stl');}else console['error']('Unexpected\x20STL\x20export\x20result\x20type.');}['exportPly'](_0x2e13fb,_0x104de5=!![],_0x383856=null){if(!THREEAddons['PLYExporter']){console['error']('PLYExporter\x20is\x20not\x20available\x20in\x20THREEAddons.');return;}this['viewer3d']['clearSelection']();let _0xd750fe=_0x383856;if(!_0xd750fe){_0xd750fe=new THREE['Group']();const _0x2907ca=this['viewer']['getSceneManager']()['getModelsRoot']();_0x2907ca['children']['forEach'](_0x384502=>_0xd750fe===null||_0xd750fe===void 0x0?void 0x0:_0xd750fe['add'](_0x384502['clone'](!![])));}const _0x3b3da7=new THREEAddons['PLYExporter'](),_0x1d6d6a=_0x3b3da7['parse'](_0xd750fe,()=>{log['info']('PLY\x20export\x20completed.');},{'binary':_0x104de5});if(typeof _0x1d6d6a==='string')this['saveStringAsFile'](_0x1d6d6a,(_0x2e13fb||DEFAULT_EXPORT_FILENAME)+'.ply');else _0x1d6d6a instanceof ArrayBuffer?this['saveArrayBufferAsFile'](_0x1d6d6a,(_0x2e13fb||DEFAULT_EXPORT_FILENAME)+'.ply'):console['error']('Unexpected\x20PLY\x20export\x20result\x20type.');}['showExportPanel'](_0x10e1b2=ExportFormats['Glb'],_0x285764=DEFAULT_EXPORT_FILENAME,_0x5197fd=null){!this['basePanel']&&(this['basePanel']=new BasePanel({'container':this['viewer3d']['widgetContainer'],'title':t$a('export'),'cssClass':'export-plugin','showCollapseButton':![],'viewportContainer':this['viewer3d']['viewerContainer']}));const _0xade70c=this['basePanel']['content'];_0xade70c['replaceChildren']();const _0x57387e=document['createElement']('ul');_0x57387e['className']='export';const _0x31f56d=document['createElement']('li');_0x31f56d['className']='export-row';const _0x3987fd=document['createElement']('label');_0x3987fd['htmlFor']='targetFormat',_0x3987fd['textContent']=t$a('format');const _0x24d92b=document['createElement']('select');_0x24d92b['id']='targetFormat',Object['values'](ExportFormats)['forEach'](_0x520f3d=>{const _0x2dc9dd=document['createElement']('option');_0x2dc9dd['value']=_0x520f3d,_0x2dc9dd['textContent']=t$a(FORMAT_I18N_KEY[_0x520f3d]),_0x520f3d===_0x10e1b2&&(_0x2dc9dd['selected']=!![]),_0x24d92b['appendChild'](_0x2dc9dd);}),_0x31f56d['append'](_0x3987fd,_0x24d92b),_0x57387e['appendChild'](_0x31f56d);const _0x673fe3=document['createElement']('li');_0x673fe3['className']='export-row';const _0x2becf3=document['createElement']('label');_0x2becf3['htmlFor']='filename',_0x2becf3['textContent']=t$a('fileName');const _0x1cbb6d=document['createElement']('input');_0x1cbb6d['id']='filename',_0x1cbb6d['type']='text',_0x1cbb6d['value']=_0x285764,_0x673fe3['append'](_0x2becf3,_0x1cbb6d),_0x57387e['appendChild'](_0x673fe3);const _0x2cf9e9=(_0x57fa08,_0x4fdba8,_0x42c982)=>{const _0x3dfb38=document['createElement']('li'),_0x2ac259=document['createElement']('input');_0x2ac259['type']='checkbox',_0x2ac259['id']=_0x57fa08;_0x42c982&&(_0x2ac259['checked']=!![]);const _0x96a93b=document['createElement']('label');return _0x96a93b['htmlFor']=_0x57fa08,_0x96a93b['textContent']=t$a(_0x4fdba8),_0x3dfb38['append'](_0x2ac259,_0x96a93b),_0x57387e['appendChild'](_0x3dfb38),_0x3dfb38;};_0x2cf9e9('embedTextures','embedTextures'),_0x2cf9e9('embedGeometry','embedGeometry'),_0x2cf9e9('useTrsTransforms','useTrsTransforms'),_0x2cf9e9('visibleObjects','visibleObjects',!![]),_0x2cf9e9('customExtensions','customExtensions',!![]);const _0x4f03d7=_0x2cf9e9('quantize','quantizeGeometry');_0x4f03d7['id']='quantizeRow',_0x2cf9e9('binary','binary',!![]);const _0x4578bf=document['createElement']('div');_0x4578bf['className']='foot';const _0x40de8b=document['createElement']('input');_0x40de8b['id']='exportBtn',_0x40de8b['type']='button',_0x40de8b['className']='export-btn',_0x40de8b['value']=t$a('exportButton'),_0x4578bf['appendChild'](_0x40de8b),_0xade70c['append'](_0x57387e,_0x4578bf),_0x24d92b['addEventListener']('change',()=>_0x13adfd()),_0x40de8b['onclick']=()=>{var _0x1c68d0;const _0x5004cc=_0xade70c['querySelector']('#targetFormat'),_0x172e9e=_0x5004cc['value'],_0xc9a2be=_0xade70c['querySelector']('#filename'),_0x58d3ec=this['normalizeExportBaseName'](_0xc9a2be['value']||_0x285764);if(_0x172e9e===ExportFormats['Glb']||_0x172e9e===ExportFormats['Gltf']){const _0x4b6f16=_0xade70c['querySelector']('#embedTextures'),_0x4c5741=_0xade70c['querySelector']('#useTrsTransforms'),_0x369ab6=_0xade70c['querySelector']('#visibleObjects'),_0x5bb9e3=_0xade70c['querySelector']('#customExtensions'),_0x2fcc7e=_0xade70c['querySelector']('#quantize'),_0x26ac69={'trs':_0x4c5741['checked'],'binary':_0x172e9e===ExportFormats['Glb'],'embedImages':_0x4b6f16['checked'],'onlyVisible':_0x369ab6['checked'],'includeCustomExtensions':_0x5bb9e3['checked']};this['exportGltf'](_0x58d3ec,_0x26ac69,_0x5197fd,_0x2fcc7e['checked']);}else {if(_0x172e9e===ExportFormats['Obj'])this['exportObj'](_0x58d3ec,_0x5197fd);else {if(_0x172e9e===ExportFormats['Stl'])this['exportStl'](_0x58d3ec,_0x5197fd);else {if(_0x172e9e===ExportFormats['Ply']){const _0x46a0b7=_0xade70c['querySelector']('#binary');this['exportPly'](_0x58d3ec,_0x46a0b7['checked'],_0x5197fd);}}}}(_0x1c68d0=this['basePanel'])===null||_0x1c68d0===void 0x0?void 0x0:_0x1c68d0['setVisible'](![]);};const _0x13adfd=()=>{const _0x4cc2f4=_0xade70c['querySelector']('#targetFormat'),_0x8594f1=_0x4cc2f4['value'],_0x429811=_0x8594f1===ExportFormats['Glb'],_0x123b76=_0x8594f1===ExportFormats['Gltf'],_0x743a89=_0x429811||_0x123b76?'block':'none',_0x41ba09=_0xade70c['querySelector']('#embedTextures'),_0x10d86c=_0xade70c['querySelector']('#embedGeometry'),_0xf7e4cb=_0xade70c['querySelector']('#useTrsTransforms'),_0x4c0f27=_0xade70c['querySelector']('#visibleObjects'),_0x164f86=_0xade70c['querySelector']('#customExtensions'),_0x58a6f8=_0xade70c['querySelector']('#quantizeRow'),_0x6ebcdd=_0xade70c['querySelector']('#binary');_0x41ba09['parentElement']['style']['display']=_0x743a89,_0x10d86c['parentElement']['style']['display']=_0x743a89,_0xf7e4cb['parentElement']['style']['display']=_0x743a89,_0x4c0f27['parentElement']['style']['display']=_0x743a89,_0x164f86['parentElement']['style']['display']=_0x743a89,_0x58a6f8['style']['display']=_0x743a89,_0x6ebcdd['parentElement']['style']['display']=_0x8594f1===ExportFormats['Ply']?'block':'none';if(_0x8594f1===ExportFormats['Glb'])_0x41ba09['checked']=!![],_0x10d86c['checked']=!![],_0x41ba09['disabled']=!![],_0x10d86c['disabled']=!![];else _0x8594f1===ExportFormats['Gltf']&&(_0x41ba09['checked']=![],_0x10d86c['checked']=![],_0x41ba09['disabled']=![],_0x10d86c['disabled']=![]);const _0x201673=_0xade70c['querySelector']('#filename'),_0x485cb7=this['normalizeExportBaseName'](_0x201673['value']||_0x285764);_0x201673['value']=_0x485cb7+'.'+_0x8594f1['toLowerCase']();};_0x13adfd(),this['basePanel']['setVisible'](!![]);}['normalizeExportBaseName'](_0xf153c2){const _0x319d95=Object['values'](ExportFormats)['map'](_0x56cd63=>_0x56cd63['toLowerCase']());let _0x1681cd=(_0xf153c2||'')['trim']()||DEFAULT_EXPORT_FILENAME,_0x22b8b9=!![];while(_0x22b8b9){_0x22b8b9=![];const _0x23fe02=_0x1681cd['toLowerCase']();for(const _0x44fceb of _0x319d95){const _0x18474c='.'+_0x44fceb;if(_0x23fe02['endsWith'](_0x18474c)&&_0x1681cd['length']>_0x18474c['length']){_0x1681cd=_0x1681cd['slice'](0x0,-_0x18474c['length'])['trim'](),_0x22b8b9=!![];break;}}}return _0x1681cd=_0x1681cd['replace'](/\.[^./\\]+$/,'')['trim'](),_0x1681cd||DEFAULT_EXPORT_FILENAME;}['saveBlobAsFile'](_0x4ca9cc,_0x6d4eaf){const _0x7bbfcd=document['createElement']('a');_0x7bbfcd['style']['display']='none',document['body']['appendChild'](_0x7bbfcd),_0x7bbfcd['href']=URL['createObjectURL'](_0x4ca9cc),_0x7bbfcd['download']=_0x6d4eaf,_0x7bbfcd['click']();}['saveStringAsFile'](_0x57e034,_0x59f835){this['saveBlobAsFile'](new Blob([_0x57e034],{'type':'text/plain'}),_0x59f835);}['destroy'](){var _0x214bf8;this['viewer3d']['removeEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']),(_0x214bf8=this['basePanel'])===null||_0x214bf8===void 0x0?void 0x0:_0x214bf8['destroy'](),super['destroy']();}}ExportPlugin['DEFAULT_ID']='ExportPlugin';
|
|
127
|
+
|
|
128
|
+
var css_248z$b = ".gcode-layer-bar{align-items:center;background:transparent;border:none;bottom:10px;box-sizing:border-box;color:#f3f4f4;display:flex;flex-direction:column;padding:10px 0;pointer-events:none;position:absolute;right:10px;top:48px;user-select:none;z-index:7}.gcode-layer-bar--hidden{display:none}.gcode-layer-bar__bound{align-items:center;background:hsla(0,0%,100%,.9);border-radius:2px;box-sizing:border-box;color:#2f7a46;display:flex;font-size:12px;font-weight:700;height:20px;justify-content:center;line-height:20px;margin:0 0 2px;min-width:28px;padding:0 6px}.gcode-layer-bar__slider{cursor:default;flex:1 1 auto;margin:16px 0;min-height:80px;pointer-events:auto;position:relative;touch-action:none;width:24px}.gcode-layer-bar__track{background:#cecece;bottom:0;box-shadow:0 0 0 2px #fff,0 1px 4px rgba(0,0,0,.28);top:0}.gcode-layer-bar__fill,.gcode-layer-bar__track{border-radius:999px;box-sizing:border-box;left:50%;margin-left:-4px;position:absolute;width:8px}.gcode-layer-bar__fill{background:#5dc264;pointer-events:none}.gcode-layer-bar__thumb{background:#5dc264;border-radius:50%;box-shadow:0 0 0 2px #fff,0 1px 3px rgba(0,0,0,.28);cursor:default;height:12px;left:50%;margin-left:-6px;margin-top:-6px;position:absolute;width:12px;z-index:1}.gcode-layer-bar__thumb--end{z-index:2}.gcode-layer-bar__thumb--hidden{display:none}.gcode-layer-bar__hint{align-items:center;background:hsla(0,0%,100%,.9);border-radius:2px;box-sizing:border-box;display:flex;flex-direction:row;gap:4px;height:20px;padding:0 6px;pointer-events:none;position:absolute;right:calc(100% + 10px);top:50%;white-space:nowrap;z-index:3}.gcode-layer-bar__hint:after{border-bottom:4px solid transparent;border-left:4px solid hsla(0,0%,100%,.9);border-top:4px solid transparent;content:\"\";height:0;position:absolute;right:-4px;width:0}.gcode-layer-bar__hint--end{transform:translateY(-100%)}.gcode-layer-bar__hint--end:after{bottom:2px}.gcode-layer-bar__hint--start{transform:translateY(0)}.gcode-layer-bar__hint--start:after{top:2px}.gcode-layer-bar__hint-layer{color:#5dc264;font-size:12px;line-height:16px}.gcode-layer-bar__hint-sep{background:rgba(47,122,70,.2);flex-shrink:0;height:10px;width:1px}.gcode-layer-bar__hint-height{color:#2f7a46;font-size:12px;line-height:16px}.gcode-layer-bar__est{height:0;left:0;pointer-events:none;position:absolute;right:0;z-index:4}.gcode-layer-bar__est--hidden{display:none}.gcode-layer-bar__est-tick{background:rgba(80,80,80,.55);height:1px;position:absolute;top:0;width:6px}.gcode-layer-bar__est-tick--left{right:calc(50% + 8px)}.gcode-layer-bar__est-tick--right{left:calc(50% + 8px)}.gcode-layer-bar__est-bubble{background:rgba(38,46,48,.92);border-radius:2px;box-sizing:border-box;color:#fff;font-size:12px;font-variant-numeric:tabular-nums;font-weight:400;height:20px;line-height:20px;padding:0 6px;position:absolute;right:0;top:14px;transform:none;white-space:nowrap}.gcode-layer-bar__mode{align-items:center;background:hsla(0,0%,100%,.9);border:none;border-radius:2px;color:#5dc264;cursor:default;display:inline-flex;flex-shrink:0;height:24px;justify-content:center;margin-top:8px;padding:0;pointer-events:auto;transition:background-color .12s ease,transform .12s ease;width:24px}.gcode-layer-bar__mode svg{fill:currentColor;height:16px;width:16px}.gcode-layer-bar__mode:hover{background:#fff}.gcode-layer-bar__mode:active{transform:scale(.96)}.gcode-layer-bar__mode:focus-visible{outline:1px solid #54a9ff;outline-offset:1px}.gcode-layer-bar__mode--single{background:rgba(50,149,251,.85)}";
|
|
129
|
+
styleInject(css_248z$b);
|
|
130
|
+
|
|
131
|
+
const en$9={'singleLayer':'Single\x20layer','multiLayer':'Multi\x20layer'};const zh$9={'singleLayer':'单层','multiLayer':'多层'};const GCODE_LAYER_BAR_I18N_NAMESPACE='gcodeLayerBar';registerViewerI18nNamespace(GCODE_LAYER_BAR_I18N_NAMESPACE,{'en':en$9,'zh':zh$9});function t$9(_0x12d4eb){return i18n['t'](_0x12d4eb,{'ns':GCODE_LAYER_BAR_I18N_NAMESPACE});}
|
|
132
|
+
|
|
133
|
+
const ICON_MULTI='<svg\x20viewBox=\x220\x200\x2024\x2024\x22><rect\x20x=\x224\x22\x20y=\x224.5\x22\x20width=\x2216\x22\x20height=\x224\x22\x20rx=\x221\x22/><rect\x20x=\x224\x22\x20y=\x2210\x22\x20width=\x2216\x22\x20height=\x224\x22\x20rx=\x221\x22/><rect\x20x=\x224\x22\x20y=\x2215.5\x22\x20width=\x2216\x22\x20height=\x224\x22\x20rx=\x221\x22/></svg>',ICON_SINGLE='<svg\x20viewBox=\x220\x200\x2024\x2024\x22><rect\x20x=\x224\x22\x20y=\x2210\x22\x20width=\x2216\x22\x20height=\x224\x22\x20rx=\x221\x22/></svg>';function clamp$1(_0x4b8c18,_0x1be5de,_0x4d9c72){return Math['max'](_0x1be5de,Math['min'](_0x4d9c72,_0x4b8c18));}function toUiLayer(_0x2ffcdb){return _0x2ffcdb+0x1;}function toCoreIndex(_0x24389f){return _0x24389f-0x1;}function formatEstimatedTime(_0x5d4a1b){const _0x3c73cb=Math['max'](0x0,Math['round'](_0x5d4a1b)),_0x243736=Math['floor'](_0x3c73cb/0x15180),_0x3e79cc=Math['floor'](_0x3c73cb%0x15180/0xe10),_0xca470e=Math['floor'](_0x3c73cb%0xe10/0x3c),_0x3b78dd=_0x3c73cb%0x3c;if(_0x243736>0x0)return _0x243736+'d'+_0x3e79cc+'h'+_0xca470e+'m';if(_0x3e79cc>0x0)return _0x3e79cc+'h'+_0xca470e+'m'+_0x3b78dd+'s';if(_0xca470e>0x0)return _0xca470e+'m'+_0x3b78dd+'s';return _0x3b78dd+'s';}function asGCodeViewer$3(_0x1946f8){return typeof _0x1946f8['setGCodeLayerRange']==='function'?_0x1946f8:undefined;}class GCodeLayerBarPlugin extends Plugin{constructor(_0x11f0fc,_0x23adc4){const _0x5a3e1b=(_0x23adc4===null||_0x23adc4===void 0x0?void 0x0:_0x23adc4['id'])||GCodeLayerBarPlugin['DEFAULT_ID'];super(_0x11f0fc,{'id':_0x5a3e1b}),this['minLayer']=0x1,this['maxLayer']=0x1,this['startLayer']=0x1,this['endLayer']=0x1,this['singleLayerMode']=![],this['previousStartLayer']=0x1,this['onModelsChanged']=()=>{this['singleLayerMode']=![],this['refreshFromViewer'](),this['applyLocalizedTitles']();},this['onLanguageChange']=()=>{this['applyLocalizedTitles'](),this['render']();},this['onLayerRangeChanged']=_0x315735=>{if(!this['gcodeViewer'])return;const _0x58d246=this['gcodeViewer']['getGCodeLayerCount']();if(_0x58d246<=0x0){this['setVisible'](![]);return;}this['minLayer']=0x1,this['maxLayer']=_0x58d246,this['startLayer']=clamp$1(toUiLayer(_0x315735['start']),this['minLayer'],this['maxLayer']),this['endLayer']=clamp$1(toUiLayer(_0x315735['end']),this['startLayer'],this['maxLayer']),this['singleLayerMode']&&(this['startLayer']=this['endLayer']),this['render'](),this['setVisible'](!![]);},this['onToggleMode']=()=>{this['singleLayerMode']=!this['singleLayerMode'],this['singleLayerMode']?(this['previousStartLayer']=this['startLayer'],this['setRange'](this['endLayer'],this['endLayer'])):this['setRange'](this['previousStartLayer'],this['endLayer']),this['applyLocalizedTitles']();},this['onWheel']=_0x376f57=>{_0x376f57['preventDefault'](),_0x376f57['stopPropagation']();const _0x8668aa=_0x376f57['deltaY']<0x0?0x1:-0x1;if(this['singleLayerMode']){this['setRange'](this['endLayer']+_0x8668aa,this['endLayer']+_0x8668aa);return;}this['setRange'](this['startLayer'],this['endLayer']+_0x8668aa);},this['onSliderPointerDown']=_0x44f29d=>{var _0x50e06a,_0x4c9b68,_0x676ebf,_0x2c0514;_0x44f29d['preventDefault'](),_0x44f29d['stopPropagation']();const _0x11e840=_0x44f29d['target'],_0x1fcac5=_0x11e840===null||_0x11e840===void 0x0?void 0x0:_0x11e840['dataset']['thumb'];this['dragThumb']=_0x1fcac5!==null&&_0x1fcac5!==void 0x0?_0x1fcac5:this['nearestThumb'](this['valueFromPointer'](_0x44f29d)),(_0x50e06a=this['slider'])===null||_0x50e06a===void 0x0?void 0x0:_0x50e06a['setPointerCapture'](_0x44f29d['pointerId']),(_0x4c9b68=this['slider'])===null||_0x4c9b68===void 0x0?void 0x0:_0x4c9b68['addEventListener']('pointermove',this['onSliderPointerMove']),(_0x676ebf=this['slider'])===null||_0x676ebf===void 0x0?void 0x0:_0x676ebf['addEventListener']('pointerup',this['onSliderPointerUp']),(_0x2c0514=this['slider'])===null||_0x2c0514===void 0x0?void 0x0:_0x2c0514['addEventListener']('pointercancel',this['onSliderPointerUp']),this['applyPointerValue'](this['valueFromPointer'](_0x44f29d)),this['updateEstimatedHover'](_0x44f29d);},this['onSliderPointerMove']=_0x16fb6c=>{this['applyPointerValue'](this['valueFromPointer'](_0x16fb6c)),this['updateEstimatedHover'](_0x16fb6c);},this['onSliderPointerUp']=_0x474b60=>{var _0x1e0c20,_0x55255c,_0x38ba3b,_0x36a37d;(_0x1e0c20=this['slider'])===null||_0x1e0c20===void 0x0?void 0x0:_0x1e0c20['releasePointerCapture'](_0x474b60['pointerId']),(_0x55255c=this['slider'])===null||_0x55255c===void 0x0?void 0x0:_0x55255c['removeEventListener']('pointermove',this['onSliderPointerMove']),(_0x38ba3b=this['slider'])===null||_0x38ba3b===void 0x0?void 0x0:_0x38ba3b['removeEventListener']('pointerup',this['onSliderPointerUp']),(_0x36a37d=this['slider'])===null||_0x36a37d===void 0x0?void 0x0:_0x36a37d['removeEventListener']('pointercancel',this['onSliderPointerUp']),this['dragThumb']=undefined,this['updateEstimatedHover'](_0x474b60);},this['onSliderHoverMove']=_0x421b86=>{if(this['dragThumb'])return;this['updateEstimatedHover'](_0x421b86);},this['onSliderHoverLeave']=()=>{if(this['dragThumb'])return;this['hideEstimatedHover']();},this['cfg']=_0x23adc4||{'id':_0x5a3e1b},this['gcodeViewer']=asGCodeViewer$3(_0x11f0fc),this['init']();}['init'](){this['buildDom'](),this['viewer']['addEventListener'](ViewerEvent['ModelLoad'],this['onModelsChanged']),this['viewer']['addEventListener'](ViewerEvent['ModelRemove'],this['onModelsChanged']),this['viewer']['addEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']),this['viewer']['addEventListener'](ViewerEvent['GCodeLayerRangeChanged'],this['onLayerRangeChanged']),this['refreshFromViewer']();}['hostContainer'](){if(this['cfg']['containerId']){const _0x4ee0ee=document['getElementById'](this['cfg']['containerId']);if(_0x4ee0ee)return _0x4ee0ee;}return this['viewer']['widgetContainer'];}['buildDom'](){const _0x46579d=this['hostContainer']();if(!_0x46579d)return;const _0x1ee67d=document['createElement']('div');_0x1ee67d['className']='gcode-layer-bar\x20gcode-layer-bar--hidden',_0x1ee67d['addEventListener']('pointerdown',_0x260d3d=>_0x260d3d['stopPropagation']()),this['maxLabel']=this['createBound']('gcode-layer-bar__bound'),this['slider']=document['createElement']('div'),this['slider']['className']='gcode-layer-bar__slider',this['slider']['addEventListener']('pointerdown',this['onSliderPointerDown']),this['slider']['addEventListener']('pointermove',this['onSliderHoverMove']),this['slider']['addEventListener']('pointerleave',this['onSliderHoverLeave']),this['slider']['addEventListener']('wheel',this['onWheel'],{'passive':![]});const _0x42123e=document['createElement']('div');_0x42123e['className']='gcode-layer-bar__track',this['fill']=document['createElement']('div'),this['fill']['className']='gcode-layer-bar__fill',this['endThumb']=this['createThumb']('end'),this['startThumb']=this['createThumb']('start');const _0x4871db=this['createHint']('end');this['endHintLayer']=_0x4871db['layer'],this['endHintHeight']=_0x4871db['height'],this['endThumb']['append'](_0x4871db['root']);const _0x59a78b=this['createHint']('start');this['startHintLayer']=_0x59a78b['layer'],this['startHintHeight']=_0x59a78b['height'],this['startThumb']['append'](_0x59a78b['root']),this['estRoot']=document['createElement']('div'),this['estRoot']['className']='gcode-layer-bar__est\x20gcode-layer-bar__est--hidden';const _0x326365=document['createElement']('span');_0x326365['className']='gcode-layer-bar__est-tick\x20gcode-layer-bar__est-tick--left';const _0x14db72=document['createElement']('span');_0x14db72['className']='gcode-layer-bar__est-tick\x20gcode-layer-bar__est-tick--right',this['estBubble']=document['createElement']('div'),this['estBubble']['className']='gcode-layer-bar__est-bubble',this['estRoot']['append'](_0x326365,_0x14db72,this['estBubble']),this['slider']['append'](_0x42123e,this['fill'],this['endThumb'],this['startThumb'],this['estRoot']),this['minLabel']=this['createBound']('gcode-layer-bar__bound'),this['modeButton']=document['createElement']('button'),this['modeButton']['type']='button',this['modeButton']['className']='gcode-layer-bar__mode',this['modeButton']['addEventListener']('click',this['onToggleMode']),_0x1ee67d['append'](this['maxLabel'],this['slider'],this['minLabel'],this['modeButton']),_0x46579d['appendChild'](_0x1ee67d),this['root']=_0x1ee67d,this['applyLocalizedTitles'](),this['render']();}['createBound'](_0x34de7c){const _0x171225=document['createElement']('div');return _0x171225['className']=_0x34de7c,_0x171225;}['createThumb'](_0x441c01){const _0x10899e=document['createElement']('div');return _0x10899e['className']='gcode-layer-bar__thumb\x20gcode-layer-bar__thumb--'+_0x441c01,_0x10899e['dataset']['thumb']=_0x441c01,_0x10899e;}['createHint'](_0x2ae987){const _0x101fc3=document['createElement']('div');_0x101fc3['className']='gcode-layer-bar__hint\x20gcode-layer-bar__hint--'+_0x2ae987;const _0x166ce2=document['createElement']('span');_0x166ce2['className']='gcode-layer-bar__hint-layer';const _0x1213d4=document['createElement']('span');_0x1213d4['className']='gcode-layer-bar__hint-sep';const _0x127076=document['createElement']('span');return _0x127076['className']='gcode-layer-bar__hint-height',_0x101fc3['append'](_0x166ce2,_0x1213d4,_0x127076),{'root':_0x101fc3,'layer':_0x166ce2,'height':_0x127076};}['refreshFromViewer'](){if(!this['gcodeViewer']){this['setVisible'](![]);return;}const _0x55926b=this['gcodeViewer']['getGCodeLayerCount']();if(_0x55926b<=0x0){this['setVisible'](![]);return;}const _0x1bb9bf=this['gcodeViewer']['getGCodeLayerRange']();this['minLayer']=0x1,this['maxLayer']=_0x55926b,this['startLayer']=clamp$1(toUiLayer(_0x1bb9bf['start']),this['minLayer'],this['maxLayer']),this['endLayer']=clamp$1(toUiLayer(_0x1bb9bf['end']),this['startLayer'],this['maxLayer']),this['startLayer']!==this['endLayer']&&(this['singleLayerMode']=![]),this['previousStartLayer']=this['startLayer'],this['render'](),this['setVisible'](!![]);}['setVisible'](_0x466a2f){var _0x590f9d;(_0x590f9d=this['root'])===null||_0x590f9d===void 0x0?void 0x0:_0x590f9d['classList']['toggle']('gcode-layer-bar--hidden',!_0x466a2f),!_0x466a2f&&this['hideEstimatedHover']();}['applyLocalizedTitles'](){this['modeButton']&&(this['modeButton']['title']=this['singleLayerMode']?t$9('multiLayer'):t$9('singleLayer'),this['modeButton']['innerHTML']=this['singleLayerMode']?ICON_SINGLE:ICON_MULTI);}['updateEstimatedHover'](_0x4c3094){var _0xd176f6;const _0x28452d=this['valueFromPointer'](_0x4c3094),_0x4c0b08=(_0xd176f6=this['gcodeViewer'])===null||_0xd176f6===void 0x0?void 0x0:_0xd176f6['getGCodeLayerEstimatedTime'](toCoreIndex(_0x28452d));if(_0x4c0b08===undefined){this['hideEstimatedHover']();return;}this['estBubble']&&(this['estBubble']['textContent']=formatEstimatedTime(_0x4c0b08));if(this['estRoot']){const _0x243bf5=(0x1-this['percent'](_0x28452d))*0x64;this['estRoot']['style']['top']=_0x243bf5+'%',this['estRoot']['classList']['remove']('gcode-layer-bar__est--hidden');}}['hideEstimatedHover'](){var _0x4e8e9f;(_0x4e8e9f=this['estRoot'])===null||_0x4e8e9f===void 0x0?void 0x0:_0x4e8e9f['classList']['add']('gcode-layer-bar__est--hidden');}['nearestThumb'](_0x50d870){if(this['singleLayerMode'])return 'end';const _0x142958=Math['abs'](_0x50d870-this['startLayer']),_0xc8174e=Math['abs'](_0x50d870-this['endLayer']);return _0x142958<_0xc8174e?'start':'end';}['valueFromPointer'](_0x184815){const _0x58d099=this['slider'];if(!_0x58d099||this['maxLayer']<=this['minLayer'])return this['endLayer'];const _0x10b6f6=_0x58d099['getBoundingClientRect'](),_0x475a2c=_0x10b6f6['height']>0x0?clamp$1((_0x184815['clientY']-_0x10b6f6['top'])/_0x10b6f6['height'],0x0,0x1):0x0,_0x1a6a0f=0x1-_0x475a2c;return Math['round'](this['minLayer']+_0x1a6a0f*(this['maxLayer']-this['minLayer']));}['applyPointerValue'](_0x32fb41){if(this['singleLayerMode']||this['dragThumb']==='end'){this['setRange'](this['singleLayerMode']?_0x32fb41:this['startLayer'],_0x32fb41);return;}this['setRange'](_0x32fb41,this['endLayer']);}['setRange'](_0x234829,_0x37cb58){var _0xa1686c;let _0x5d3f1c=clamp$1(Math['round'](_0x234829),this['minLayer'],this['maxLayer']),_0x5abc49=clamp$1(Math['round'](_0x37cb58),this['minLayer'],this['maxLayer']);if(this['singleLayerMode'])_0x5d3f1c=_0x5abc49;else _0x5d3f1c>_0x5abc49&&(this['dragThumb']==='start'?_0x5d3f1c=_0x5abc49:_0x5abc49=_0x5d3f1c);if(_0x5d3f1c===this['startLayer']&&_0x5abc49===this['endLayer']){this['render']();return;}this['startLayer']=_0x5d3f1c,this['endLayer']=_0x5abc49,this['render'](),(_0xa1686c=this['gcodeViewer'])===null||_0xa1686c===void 0x0?void 0x0:_0xa1686c['setGCodeLayerRange'](toCoreIndex(this['startLayer']),toCoreIndex(this['endLayer']));}['fillHint'](_0x1d426c,_0x3f5b05,_0x17a798){var _0x16f6c7;_0x1d426c&&(_0x1d426c['textContent']=String(_0x17a798));if(_0x3f5b05){const _0x1a5d89=(_0x16f6c7=this['gcodeViewer'])===null||_0x16f6c7===void 0x0?void 0x0:_0x16f6c7['getGCodeLayerHeight'](toCoreIndex(_0x17a798));_0x3f5b05['textContent']=(_0x1a5d89!==null&&_0x1a5d89!==void 0x0?_0x1a5d89:0x0)['toFixed'](0x2)+'mm';}}['percent'](_0x1ff749){if(this['maxLayer']<=this['minLayer'])return 0x1;return (_0x1ff749-this['minLayer'])/(this['maxLayer']-this['minLayer']);}['render'](){var _0x58265e;this['maxLabel']&&(this['maxLabel']['textContent']=String(this['maxLayer']));this['minLabel']&&(this['minLabel']['textContent']=String(this['minLayer']));const _0x3e8ad0=this['percent'](this['startLayer']),_0x4e47f8=this['percent'](this['endLayer']),_0x128ea8=(0x1-_0x3e8ad0)*0x64,_0x3c5463=(0x1-_0x4e47f8)*0x64;this['startThumb']&&(this['startThumb']['style']['top']=_0x128ea8+'%',this['startThumb']['classList']['toggle']('gcode-layer-bar__thumb--hidden',this['singleLayerMode'])),this['endThumb']&&(this['endThumb']['style']['top']=_0x3c5463+'%'),this['fill']&&(this['fill']['style']['top']=_0x3c5463+'%',this['fill']['style']['bottom']=_0x3e8ad0*0x64+'%'),this['fillHint'](this['endHintLayer'],this['endHintHeight'],this['endLayer']),this['fillHint'](this['startHintLayer'],this['startHintHeight'],this['startLayer']),(_0x58265e=this['modeButton'])===null||_0x58265e===void 0x0?void 0x0:_0x58265e['classList']['toggle']('gcode-layer-bar__mode--single',this['singleLayerMode']),this['modeButton']&&(this['modeButton']['title']=this['singleLayerMode']?t$9('multiLayer'):t$9('singleLayer'),this['modeButton']['innerHTML']=this['singleLayerMode']?ICON_SINGLE:ICON_MULTI);}['destroy'](){var _0x4a18ae;this['viewer']['removeEventListener'](ViewerEvent['ModelLoad'],this['onModelsChanged']),this['viewer']['removeEventListener'](ViewerEvent['ModelRemove'],this['onModelsChanged']),this['viewer']['removeEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']),this['viewer']['removeEventListener'](ViewerEvent['GCodeLayerRangeChanged'],this['onLayerRangeChanged']),(_0x4a18ae=this['root'])===null||_0x4a18ae===void 0x0?void 0x0:_0x4a18ae['remove'](),this['root']=undefined,super['destroy']();}}GCodeLayerBarPlugin['DEFAULT_ID']='GCodeLayerBarPlugin';
|
|
134
|
+
|
|
135
|
+
var css_248z$a = ".gcode-steps-bar{background:transparent;border:none;bottom:10px;box-sizing:border-box;color:#f3f4f4;display:flex;flex-direction:column;height:64px;left:170px;padding:8px 12px 10px;pointer-events:none;position:absolute;right:60px;user-select:none;z-index:5}.gcode-steps-bar--hidden{display:none}.gcode-steps-bar__top{flex-shrink:0;justify-content:center;position:relative}.gcode-steps-bar__hud,.gcode-steps-bar__top{align-items:center;display:flex;flex-direction:row;height:24px}.gcode-steps-bar__hud{background:hsla(0,0%,100%,.9);border-radius:2px;box-sizing:border-box;padding:2px 8px;pointer-events:none;white-space:nowrap}.gcode-steps-bar__hud-info{color:#5dc264;font-size:14px;line-height:20px}.gcode-steps-bar__slider{cursor:pointer;flex:1 1 auto;min-height:22px;pointer-events:auto;position:relative;touch-action:none;width:100%}.gcode-steps-bar__rail{bottom:0;left:0;position:absolute;right:56px;top:0}.gcode-steps-bar__track{background:#cecece;box-shadow:0 0 0 2px #fff,0 1px 4px rgba(0,0,0,.28);right:0}.gcode-steps-bar__fill,.gcode-steps-bar__track{border-radius:999px;box-sizing:border-box;height:8px;left:0;margin-top:-4px;position:absolute;top:50%}.gcode-steps-bar__fill{background:#5dc264;pointer-events:none}.gcode-steps-bar__thumb{align-items:center;cursor:grab;display:flex;flex-direction:row;gap:4px;height:22px;margin-left:-6px;position:absolute;top:50%;transform:translateY(-50%);z-index:1}.gcode-steps-bar__thumb:active{cursor:grabbing}.gcode-steps-bar__knob{background:#5dc264;border-radius:50%;box-shadow:0 0 0 2px #fff,0 1px 3px rgba(0,0,0,.28);flex-shrink:0;height:12px;pointer-events:none;width:12px}.gcode-steps-bar__value{align-items:center;background:#f3f4f4;border-radius:4px;box-shadow:0 1px 3px rgba(0,0,0,.2);box-sizing:border-box;color:#2f7a46;display:inline-flex;font-size:12px;font-variant-numeric:tabular-nums;height:20px;justify-content:center;line-height:20px;margin:0 0 0 3px;max-width:72px;min-width:48px;padding:0 6px;pointer-events:none;position:relative;text-align:center}.gcode-steps-bar__value:before{border-bottom:4px solid transparent;border-right:4px solid #f3f4f4;border-top:4px solid transparent;content:\"\";height:0;left:-4px;position:absolute;top:50%;transform:translateY(-50%);width:0}";
|
|
136
|
+
styleInject(css_248z$a);
|
|
137
|
+
|
|
138
|
+
const en$8={'currentLine':'Current\x20line'};const zh$8={'currentLine':'当前行'};const GCODE_STEPS_BAR_I18N_NAMESPACE='gcodeStepsBar';registerViewerI18nNamespace(GCODE_STEPS_BAR_I18N_NAMESPACE,{'en':en$8,'zh':zh$8});function t$8(_0x379693){return i18n['t'](_0x379693,{'ns':GCODE_STEPS_BAR_I18N_NAMESPACE});}
|
|
139
|
+
|
|
140
|
+
function clamp(_0x1c26b3,_0x2af6e9,_0x23d514){return Math['max'](_0x2af6e9,Math['min'](_0x23d514,_0x1c26b3));}function asGCodeViewer$2(_0xf42baf){return typeof _0xf42baf['setGCodeLineRange']==='function'?_0xf42baf:undefined;}function fmtCoord(_0x424c5c){if(!Number['isFinite'](_0x424c5c))return '0';const _0x510a7f=Math['round'](_0x424c5c*0xa)/0xa;return Number['isInteger'](_0x510a7f)?String(_0x510a7f):_0x510a7f['toFixed'](0x1);}class GCodeStepsBarPlugin extends Plugin{constructor(_0x3fc288,_0x1a2ca0){const _0x2a8ec4=(_0x1a2ca0===null||_0x1a2ca0===void 0x0?void 0x0:_0x1a2ca0['id'])||GCodeStepsBarPlugin['DEFAULT_ID'];super(_0x3fc288,{'id':_0x2a8ec4}),this['minLine']=0x0,this['maxLine']=0x0,this['cursorLine']=0x0,this['dragging']=![],this['onModelsChanged']=()=>{this['refreshFromViewer']();},this['onLanguageChange']=()=>{this['applyLocalizedCopy'](),this['render']();},this['onLineWindowChanged']=_0x36b953=>{var _0xbbe6a1,_0x521d50;this['applyWindow'](_0x36b953),this['setVisible'](((_0x521d50=(_0xbbe6a1=this['gcodeViewer'])===null||_0xbbe6a1===void 0x0?void 0x0:_0xbbe6a1['getGCodeLayerCount']())!==null&&_0x521d50!==void 0x0?_0x521d50:0x0)>0x0);},this['onWheel']=_0x3cea3f=>{_0x3cea3f['preventDefault'](),_0x3cea3f['stopPropagation']();const _0x5c3cf9=_0x3cea3f['deltaY']<0x0?0x1:-0x1;this['setHandle'](this['cursorLine']+_0x5c3cf9);},this['onSliderPointerDown']=_0xb0dfd0=>{var _0x3e8580,_0x34426e,_0x29adee,_0x131d3e;_0xb0dfd0['preventDefault'](),_0xb0dfd0['stopPropagation'](),this['dragging']=!![],(_0x3e8580=this['slider'])===null||_0x3e8580===void 0x0?void 0x0:_0x3e8580['setPointerCapture'](_0xb0dfd0['pointerId']),(_0x34426e=this['slider'])===null||_0x34426e===void 0x0?void 0x0:_0x34426e['addEventListener']('pointermove',this['onSliderPointerMove']),(_0x29adee=this['slider'])===null||_0x29adee===void 0x0?void 0x0:_0x29adee['addEventListener']('pointerup',this['onSliderPointerUp']),(_0x131d3e=this['slider'])===null||_0x131d3e===void 0x0?void 0x0:_0x131d3e['addEventListener']('pointercancel',this['onSliderPointerUp']),this['setHandle'](this['valueFromPointer'](_0xb0dfd0));},this['onSliderPointerMove']=_0x13a655=>{if(!this['dragging'])return;this['setHandle'](this['valueFromPointer'](_0x13a655));},this['onSliderPointerUp']=_0x5bc6d5=>{var _0x13be87,_0x2abea5,_0x3267a1,_0x2a80b4;(_0x13be87=this['slider'])===null||_0x13be87===void 0x0?void 0x0:_0x13be87['releasePointerCapture'](_0x5bc6d5['pointerId']),(_0x2abea5=this['slider'])===null||_0x2abea5===void 0x0?void 0x0:_0x2abea5['removeEventListener']('pointermove',this['onSliderPointerMove']),(_0x3267a1=this['slider'])===null||_0x3267a1===void 0x0?void 0x0:_0x3267a1['removeEventListener']('pointerup',this['onSliderPointerUp']),(_0x2a80b4=this['slider'])===null||_0x2a80b4===void 0x0?void 0x0:_0x2a80b4['removeEventListener']('pointercancel',this['onSliderPointerUp']),this['dragging']=![];},this['cfg']=_0x1a2ca0||{'id':_0x2a8ec4},this['gcodeViewer']=asGCodeViewer$2(_0x3fc288),this['init']();}['init'](){this['buildDom'](),this['viewer']['addEventListener'](ViewerEvent['ModelLoad'],this['onModelsChanged']),this['viewer']['addEventListener'](ViewerEvent['ModelRemove'],this['onModelsChanged']),this['viewer']['addEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']),this['viewer']['addEventListener'](ViewerEvent['GCodeLineRangeChanged'],this['onLineWindowChanged']),this['refreshFromViewer']();}['hostContainer'](){if(this['cfg']['containerId']){const _0x16f2c9=document['getElementById'](this['cfg']['containerId']);if(_0x16f2c9)return _0x16f2c9;}return this['viewer']['widgetContainer'];}['buildDom'](){const _0x2d42cc=this['hostContainer']();if(!_0x2d42cc)return;const _0x3f3e57=document['createElement']('div');_0x3f3e57['className']='gcode-steps-bar\x20gcode-steps-bar--hidden',_0x3f3e57['addEventListener']('wheel',this['onWheel'],{'passive':![]}),_0x3f3e57['addEventListener']('pointerdown',_0x33c08d=>_0x33c08d['stopPropagation']());const _0x251133=document['createElement']('div');_0x251133['className']='gcode-steps-bar__top';const _0x3bf211=document['createElement']('div');_0x3bf211['className']='gcode-steps-bar__hud',this['hudInfo']=document['createElement']('span'),this['hudInfo']['className']='gcode-steps-bar__hud-info',_0x3bf211['append'](this['hudInfo']),_0x251133['append'](_0x3bf211),this['slider']=document['createElement']('div'),this['slider']['className']='gcode-steps-bar__slider',this['slider']['addEventListener']('pointerdown',this['onSliderPointerDown']),this['rail']=document['createElement']('div'),this['rail']['className']='gcode-steps-bar__rail';const _0x20419e=document['createElement']('div');_0x20419e['className']='gcode-steps-bar__track',this['fill']=document['createElement']('div'),this['fill']['className']='gcode-steps-bar__fill',this['thumb']=document['createElement']('div'),this['thumb']['className']='gcode-steps-bar__thumb';const _0xce3de3=document['createElement']('div');_0xce3de3['className']='gcode-steps-bar__knob',this['valueEl']=document['createElement']('span'),this['valueEl']['className']='gcode-steps-bar__value',this['thumb']['append'](_0xce3de3,this['valueEl']),this['rail']['append'](_0x20419e,this['fill'],this['thumb']),this['slider']['append'](this['rail']),_0x3f3e57['append'](_0x251133,this['slider']),_0x2d42cc['appendChild'](_0x3f3e57),this['root']=_0x3f3e57,this['applyLocalizedCopy'](),this['render']();}['refreshFromViewer'](){if(!this['gcodeViewer']){this['setVisible'](![]);return;}const _0xd1ed7d=this['gcodeViewer']['getGCodeLineWindow']();this['applyWindow'](_0xd1ed7d),this['setVisible'](this['gcodeViewer']['getGCodeLayerCount']()>0x0&&_0xd1ed7d['max']>=_0xd1ed7d['min']);}['applyWindow'](_0x319d95){this['minLine']=_0x319d95['min'],this['maxLine']=_0x319d95['max'],this['cursorLine']=_0x319d95['cursor'],this['render']();}['setVisible'](_0x50e5d0){var _0x662a7c;(_0x662a7c=this['root'])===null||_0x662a7c===void 0x0?void 0x0:_0x662a7c['classList']['toggle']('gcode-steps-bar--hidden',!_0x50e5d0);}['applyLocalizedCopy'](){const _0x58dcb8=t$8('currentLine');this['thumb']&&(this['thumb']['title']=_0x58dcb8),this['valueEl']&&(this['valueEl']['title']=_0x58dcb8);}['valueFromPointer'](_0xb7b9cc){const _0x25539a=this['rail'];if(!_0x25539a||this['maxLine']<=this['minLine'])return this['cursorLine'];const _0x4eca2c=_0x25539a['getBoundingClientRect'](),_0x3ebe2a=_0x4eca2c['width']>0x0?clamp((_0xb7b9cc['clientX']-_0x4eca2c['left'])/_0x4eca2c['width'],0x0,0x1):0x0;return Math['round'](this['minLine']+_0x3ebe2a*(this['maxLine']-this['minLine']));}['setHandle'](_0xe259e7){var _0x16a0be;const _0x5d5b8d=clamp(Math['round'](_0xe259e7),this['minLine'],this['maxLine']);if(_0x5d5b8d===this['cursorLine']){this['render']();return;}this['cursorLine']=_0x5d5b8d,this['render'](),(_0x16a0be=this['gcodeViewer'])===null||_0x16a0be===void 0x0?void 0x0:_0x16a0be['setGCodeLineCursor'](_0x5d5b8d);}['percent'](_0x5eed12){if(this['maxLine']<=this['minLine'])return 0x1;return (_0x5eed12-this['minLine'])/(this['maxLine']-this['minLine']);}['render'](){var _0xc5cbcb;const _0x4bb248=this['percent'](this['cursorLine'])*0x64;this['thumb']&&(this['thumb']['style']['left']=_0x4bb248+'%');this['fill']&&(this['fill']['style']['width']=_0x4bb248+'%');this['valueEl']&&(this['valueEl']['textContent']=String(this['cursorLine']));if(this['hudInfo']){const _0x41a5f5=(_0xc5cbcb=this['gcodeViewer'])===null||_0xc5cbcb===void 0x0?void 0x0:_0xc5cbcb['getGCodeCursorInfo']();_0x41a5f5?this['hudInfo']['textContent']='X:'+fmtCoord(_0x41a5f5['x'])+'\x20Y:'+fmtCoord(_0x41a5f5['y'])+'\x20Z:'+fmtCoord(_0x41a5f5['z'])+'\x20△E:'+fmtCoord(_0x41a5f5['e']):this['hudInfo']['textContent']='X:0\x20Y:0\x20Z:0\x20△E:0';}}['destroy'](){var _0x459edc;this['viewer']['removeEventListener'](ViewerEvent['ModelLoad'],this['onModelsChanged']),this['viewer']['removeEventListener'](ViewerEvent['ModelRemove'],this['onModelsChanged']),this['viewer']['removeEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']),this['viewer']['removeEventListener'](ViewerEvent['GCodeLineRangeChanged'],this['onLineWindowChanged']),(_0x459edc=this['root'])===null||_0x459edc===void 0x0?void 0x0:_0x459edc['remove'](),this['root']=undefined,super['destroy']();}}GCodeStepsBarPlugin['DEFAULT_ID']='GCodeStepsBarPlugin';
|
|
141
|
+
|
|
142
|
+
var css_248z$9 = ".base-panel.gcode-text-panel{height:calc(100% - 84px);max-height:calc(100% - 84px);min-height:36px;resize:none;right:60px;top:10px;width:280px;z-index:6}.base-panel.gcode-text-panel .content{display:flex;flex-direction:column;height:calc(100% - 36px);overflow:hidden;padding:0}.base-panel.gcode-text-panel .gcode-text-panel__scroll{box-sizing:border-box;flex:1 1 auto;min-height:0;overflow-x:auto;overflow-y:hidden;padding:4px 6px 8px 4px;position:relative}.base-panel.gcode-text-panel .gcode-text-panel__window{min-width:100%;width:max-content}.base-panel.gcode-text-panel .gcode-text-panel__row{align-items:center;border-radius:4px;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:row;height:24px;padding:0 4px 0 0;white-space:nowrap}.base-panel.gcode-text-panel .gcode-text-panel__row:hover:not(.gcode-text-panel__row--current){background:rgba(44,123,229,.06)}.base-panel.gcode-text-panel .gcode-text-panel__row.gcode-text-panel__row--current .gcode-text-panel__body{background:rgba(44,123,229,.1);border:1px solid #2c7be5;border-radius:3px}.base-panel.gcode-text-panel .gcode-text-panel__body{align-items:center;border:1px solid transparent;box-sizing:border-box;display:flex;flex-direction:row;height:20px;min-width:0;padding:0 2px}.base-panel.gcode-text-panel .gcode-text-panel__num{color:#2c7be5;flex-shrink:0;font-size:12px;font-variant-numeric:tabular-nums;font-weight:400;line-height:18px;margin-right:6px;min-width:4.5ch;text-align:right;user-select:none}.base-panel.gcode-text-panel .gcode-text-panel__code{color:rgba(0,0,0,.88);font-size:12px;font-weight:400;line-height:18px;user-select:text}.base-panel.gcode-text-panel .gcode-text-panel__tok--comment{color:#8c8c8c;font-size:12px;font-weight:400}.base-panel.gcode-text-panel .gcode-text-panel__tok--args{color:rgba(0,0,0,.72);font-size:12px;font-weight:400}.base-panel.gcode-text-panel .gcode-text-panel__tok--cmd{color:#d48806;font-size:11px;font-weight:700}.base-panel.gcode-text-panel .gcode-text-panel__tok--error{color:#cf1322;font-size:12px;font-weight:400}";
|
|
143
|
+
styleInject(css_248z$9);
|
|
144
|
+
|
|
145
|
+
const en$7={'view':'GCode'};const zh$7={'view':'GCode'};const GCODE_TEXT_PANEL_I18N_NAMESPACE='gcodeTextPanel';registerViewerI18nNamespace(GCODE_TEXT_PANEL_I18N_NAMESPACE,{'en':en$7,'zh':zh$7});function t$7(_0x27b387){return i18n['t'](_0x27b387,{'ns':GCODE_TEXT_PANEL_I18N_NAMESPACE});}
|
|
146
|
+
|
|
147
|
+
const ROW_HEIGHT=0x18,PANEL_WIDTH_PX=0x118;function asGCodeViewer$1(_0x2d0221){return typeof _0x2d0221['getGCodeSourceLines']==='function'?_0x2d0221:undefined;}function isCommentLine(_0x3a0bab){const _0x576b15=_0x3a0bab['search'](/\S/);return _0x576b15>=0x0&&_0x3a0bab['charCodeAt'](_0x576b15)===0x3b;}function fillCode(_0x38efb9,_0x27dd3b,_0x31cd0d){_0x38efb9['replaceChildren']();if(_0x31cd0d){const _0x442ef0=document['createElement']('span');_0x442ef0['className']='gcode-text-panel__tok--error',_0x442ef0['textContent']=_0x27dd3b,_0x38efb9['append'](_0x442ef0);return;}if(isCommentLine(_0x27dd3b)){const _0x2a28a5=document['createElement']('span');_0x2a28a5['className']='gcode-text-panel__tok--comment',_0x2a28a5['textContent']=_0x27dd3b,_0x38efb9['append'](_0x2a28a5);return;}const _0x3b8014=_0x27dd3b['indexOf']('\x20'),_0x440f06=_0x3b8014<0x0?_0x27dd3b:_0x27dd3b['slice'](0x0,_0x3b8014),_0x1d18db=_0x3b8014<0x0?'':_0x27dd3b['slice'](_0x3b8014),_0x277673=document['createElement']('span');_0x277673['className']='gcode-text-panel__tok--cmd',_0x277673['textContent']=_0x440f06,_0x38efb9['append'](_0x277673);if(_0x1d18db){const _0x1efe47=document['createElement']('span');_0x1efe47['className']='gcode-text-panel__tok--args',_0x1efe47['textContent']=_0x1d18db,_0x38efb9['append'](_0x1efe47);}}class GCodeTextPanelPlugin extends Plugin{constructor(_0x1ad48a,_0x48ec06){const _0x59dfed=(_0x48ec06===null||_0x48ec06===void 0x0?void 0x0:_0x48ec06['id'])||GCodeTextPanelPlugin['DEFAULT_ID'];super(_0x1ad48a,{'id':_0x59dfed}),this['sourceLines']=[],this['errorLines']=new Set(),this['cursorLine']=0x0,this['hasModel']=![],this['open']=!![],this['rows']=[],this['appliedDefaultCollapse']=![],this['onModelsChanged']=()=>{this['refreshFromViewer']();},this['onLanguageChange']=()=>{this['applyLocalizedCopy']();},this['onLineWindowChanged']=()=>{var _0x57eee0,_0x2627d3;this['cursorLine']=(_0x2627d3=(_0x57eee0=this['gcodeViewer'])===null||_0x57eee0===void 0x0?void 0x0:_0x57eee0['getGCodeLineWindow']()['cursor'])!==null&&_0x2627d3!==void 0x0?_0x2627d3:0x0,this['renderWindow']();},this['onWheel']=_0x55ba96=>{_0x55ba96['stopPropagation'](),Math['abs'](_0x55ba96['deltaY'])>=Math['abs'](_0x55ba96['deltaX'])&&_0x55ba96['preventDefault']();},this['onRowClick']=_0x47327a=>{var _0x417136;const _0x2b9e3a=_0x47327a['target'],_0x32b32a=_0x2b9e3a===null||_0x2b9e3a===void 0x0?void 0x0:_0x2b9e3a['closest']('.gcode-text-panel__row'),_0x493180=Number['parseInt']((_0x417136=_0x32b32a===null||_0x32b32a===void 0x0?void 0x0:_0x32b32a['dataset']['line'])!==null&&_0x417136!==void 0x0?_0x417136:'',0xa);if(!Number['isFinite'](_0x493180)||_0x493180<0x1)return;this['seekLine'](_0x493180);},this['cfg']=_0x48ec06||{'id':_0x59dfed},this['gcodeViewer']=asGCodeViewer$1(_0x1ad48a),this['open']=this['cfg']['visible']!==![],this['init']();}['setVisible'](_0x1ef440){this['open']=_0x1ef440,this['syncChrome'](),_0x1ef440&&this['hasModel']&&(this['ensureRows'](),this['renderWindow']());}['isVisible'](){return this['open']&&this['hasModel'];}['init'](){this['buildDom'](),this['viewer']['addEventListener'](ViewerEvent['ModelLoad'],this['onModelsChanged']),this['viewer']['addEventListener'](ViewerEvent['ModelRemove'],this['onModelsChanged']),this['viewer']['addEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']),this['viewer']['addEventListener'](ViewerEvent['GCodeLineRangeChanged'],this['onLineWindowChanged']),this['refreshFromViewer']();}['hostContainer'](){if(this['cfg']['containerId']){const _0x505e4b=document['getElementById'](this['cfg']['containerId']);if(_0x505e4b)return _0x505e4b;}return this['viewer']['widgetContainer'];}['buildDom'](){const _0x2d4d3a=this['hostContainer']();if(!_0x2d4d3a)return;this['basePanel']=new BasePanel({'container':_0x2d4d3a,'title':t$7('view'),'cssClass':'gcode-text-panel','viewportContainer':this['viewer']['viewerContainer'],'showCloseButton':![],'showCollapseButton':!![]}),this['basePanel']['root']['style']['width']=PANEL_WIDTH_PX+'px',this['basePanel']['root']['addEventListener']('pointerdown',_0x5f4c60=>_0x5f4c60['stopPropagation']());const _0x4601c6=document['createElement']('div');_0x4601c6['className']='gcode-text-panel__scroll',_0x4601c6['addEventListener']('wheel',this['onWheel'],{'passive':![]}),this['scrollEl']=_0x4601c6;const _0x870b13=document['createElement']('div');_0x870b13['className']='gcode-text-panel__window',_0x870b13['addEventListener']('click',this['onRowClick']),this['windowEl']=_0x870b13,_0x4601c6['append'](_0x870b13),this['basePanel']['content']['replaceChildren'](_0x4601c6),typeof ResizeObserver!=='undefined'&&(this['resizeObserver']=new ResizeObserver(()=>this['ensureRows']()),this['resizeObserver']['observe'](_0x4601c6)),this['applyLocalizedCopy'](),this['syncChrome']();}['refreshFromViewer'](){if(!this['gcodeViewer']){this['hasModel']=![],this['sourceLines']=[],this['errorLines']=new Set(),this['cursorLine']=0x0,this['syncChrome'](),this['renderWindow']();return;}const _0x4e59b2=this['gcodeViewer']['getGCodeSourceLines']();this['hasModel']=_0x4e59b2['length']>0x0,this['sourceLines']=_0x4e59b2,this['errorLines']=new Set(this['gcodeViewer']['getGCodeErrorLines']()),this['cursorLine']=this['gcodeViewer']['getGCodeLineWindow']()['cursor'];for(const _0x364f29 of this['rows']){_0x364f29['line']=-0x1;}this['syncChrome'](),this['ensureRows'](),this['renderWindow']();}['seekLine'](_0x545770){const _0x4f3678=this['gcodeViewer'];if(!_0x4f3678)return;const _0x560d15=_0x4f3678['getGCodeLineWindow']();if(_0x545770<_0x560d15['min']||_0x545770>_0x560d15['max'])return;(_0x545770<_0x560d15['start']||_0x545770>_0x560d15['end'])&&_0x4f3678['setGCodeLineRange'](Math['min'](_0x545770,_0x560d15['start']),Math['max'](_0x545770,_0x560d15['end'])),_0x4f3678['setGCodeLineCursor'](_0x545770);}['applyLocalizedCopy'](){var _0x2e083e;(_0x2e083e=this['basePanel'])===null||_0x2e083e===void 0x0?void 0x0:_0x2e083e['setTitle'](t$7('view'));}['syncChrome'](){var _0x437d80;const _0x395e09=this['open']&&this['hasModel'];(_0x437d80=this['basePanel'])===null||_0x437d80===void 0x0?void 0x0:_0x437d80['setVisible'](_0x395e09),_0x395e09&&!this['appliedDefaultCollapse']&&(this['appliedDefaultCollapse']=!![],requestAnimationFrame(()=>{var _0x1a83f0;(_0x1a83f0=this['basePanel'])===null||_0x1a83f0===void 0x0?void 0x0:_0x1a83f0['setCollapsed'](!![]);}));}['ensureRows'](){const _0x2734b4=this['scrollEl'],_0xb90122=this['windowEl'];if(!_0x2734b4||!_0xb90122)return;const _0xb21e9f=Math['max'](0x1,Math['floor'](_0x2734b4['clientHeight']/ROW_HEIGHT));while(this['rows']['length']<_0xb21e9f){this['rows']['push'](this['createRow']());}while(this['rows']['length']>_0xb21e9f){const _0x40f78b=this['rows']['pop']();_0x40f78b===null||_0x40f78b===void 0x0?void 0x0:_0x40f78b['root']['remove']();}for(const _0x2ccdb1 of this['rows']){_0x2ccdb1['root']['parentElement']!==_0xb90122&&_0xb90122['append'](_0x2ccdb1['root']);}this['renderWindow']();}['createRow'](){const _0x419798=document['createElement']('div');_0x419798['className']='gcode-text-panel__row';const _0x39ce44=document['createElement']('div');_0x39ce44['className']='gcode-text-panel__body';const _0x5e53b0=document['createElement']('span');_0x5e53b0['className']='gcode-text-panel__num';const _0x13c8ac=document['createElement']('span');return _0x13c8ac['className']='gcode-text-panel__code',_0x39ce44['append'](_0x5e53b0,_0x13c8ac),_0x419798['append'](_0x39ce44),{'root':_0x419798,'num':_0x5e53b0,'code':_0x13c8ac,'line':-0x1};}['renderWindow'](){var _0x31054a;const _0x43fc8c=this['scrollEl'],_0x29b21b=this['windowEl'];if(!_0x43fc8c||!_0x29b21b)return;const _0x598381=this['sourceLines']['length'],_0x49aed6=this['rows']['length'],_0x3c536a=String(Math['max'](0x1,_0x598381))['length'],_0x55ffdc=Math['max'](0x0,Math['min'](Math['max'](_0x598381-0x1,0x0),this['cursorLine']-0x1)),_0x48d86a=Math['floor'](_0x49aed6/0x2);let _0x11aa41=_0x55ffdc-_0x48d86a;const _0x3b6fa3=Math['max'](0x0,_0x598381-_0x49aed6);_0x11aa41=Math['max'](0x0,Math['min'](_0x3b6fa3,_0x11aa41));for(let _0x467a57=0x0;_0x467a57<_0x49aed6;_0x467a57++){const _0x5e6113=_0x11aa41+_0x467a57,_0x334fb0=this['rows'][_0x467a57];if(_0x5e6113>=_0x598381){_0x334fb0['root']['hidden']=!![],_0x334fb0['line']=-0x1;continue;}const _0x12f112=_0x5e6113+0x1,_0x3e8e4f=(_0x31054a=this['sourceLines'][_0x5e6113])!==null&&_0x31054a!==void 0x0?_0x31054a:'',_0x2a402d=_0x12f112===this['cursorLine'],_0x2e9951=this['errorLines']['has'](_0x12f112);_0x334fb0['root']['hidden']=![],_0x334fb0['root']['dataset']['line']=String(_0x12f112),_0x334fb0['root']['classList']['toggle']('gcode-text-panel__row--current',_0x2a402d),_0x334fb0['num']['style']['minWidth']=Math['max'](4.5,_0x3c536a+0.5)+'ch',_0x334fb0['line']!==_0x12f112&&(_0x334fb0['num']['textContent']=String(_0x12f112),fillCode(_0x334fb0['code'],_0x3e8e4f,_0x2e9951),_0x334fb0['line']=_0x12f112);}}['destroy'](){var _0x111e15,_0x5c0ed7,_0x1a03cc;this['viewer']['removeEventListener'](ViewerEvent['ModelLoad'],this['onModelsChanged']),this['viewer']['removeEventListener'](ViewerEvent['ModelRemove'],this['onModelsChanged']),this['viewer']['removeEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']),this['viewer']['removeEventListener'](ViewerEvent['GCodeLineRangeChanged'],this['onLineWindowChanged']),(_0x111e15=this['resizeObserver'])===null||_0x111e15===void 0x0?void 0x0:_0x111e15['disconnect'](),this['resizeObserver']=undefined,(_0x5c0ed7=this['basePanel'])===null||_0x5c0ed7===void 0x0?void 0x0:_0x5c0ed7['destroy'](),(_0x1a03cc=this['basePanel'])===null||_0x1a03cc===void 0x0?void 0x0:_0x1a03cc['root']['remove'](),this['basePanel']=undefined,this['scrollEl']=undefined,this['windowEl']=undefined,this['rows']=[],super['destroy']();}}GCodeTextPanelPlugin['DEFAULT_ID']='GCodeTextPanelPlugin';
|
|
148
|
+
|
|
149
|
+
var css_248z$8 = ".base-panel.gcode-legend{height:auto;left:10px;max-height:calc(100% - 160px);min-height:36px;resize:none;right:auto;top:10px;width:260px;z-index:5}.base-panel.gcode-legend.gcode-legend--with-stats{width:320px}.base-panel.gcode-legend.gcode-legend--menu-open{overflow:visible;z-index:8}.base-panel.gcode-legend.gcode-legend--menu-open .content{overflow:visible}.base-panel.gcode-legend .content.gcode-legend__content{box-sizing:border-box;display:flex;flex-direction:column;gap:4px;height:auto;max-height:calc(100vh - 220px);overflow-x:hidden;overflow-y:auto;padding:8px}.gcode-legend--hidden-block{display:none!important}.gcode-legend__scheme{align-items:center;box-sizing:border-box;display:flex;flex-direction:row;flex-shrink:0;gap:8px;width:100%}.gcode-legend__scheme-label{color:rgba(0,0,0,.65);flex:1 1 0;font-size:12px;font-weight:600;letter-spacing:.02em;line-height:16px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gcode-legend__combo{flex:1 1 0;min-width:0;position:relative;z-index:2}.gcode-legend__combo--open .gcode-legend__combo-menu{display:flex}.gcode-legend__combo-btn{align-items:center;background:#fff;border:1px solid #d9d9d9;border-radius:4px;box-shadow:0 2px 0 rgba(0,0,0,.02);box-sizing:border-box;color:rgba(0,0,0,.88);cursor:pointer;display:flex;font-size:13px;font-weight:400;height:30px;line-height:20px;padding:0 10px;text-align:left;transition:all .12s ease;width:100%}.gcode-legend__combo-btn:hover{border-color:#2c7be5;color:#2c7be5}.gcode-legend__combo-btn:focus-visible{outline:2px solid rgba(44,123,229,.45);outline-offset:1px}.gcode-legend__combo-arrow{color:rgba(0,0,0,.45);display:inline-flex;height:10px;margin-left:auto;width:10px}.gcode-legend__combo-arrow svg{fill:currentColor;height:10px;width:10px}.gcode-legend__combo-menu{background:#fff;border:1px solid #d9d9d9;border-radius:4px;box-shadow:0 4px 12px rgba(0,0,0,.18);display:none;flex-direction:column;left:0;padding:2px 0;position:absolute;right:0;top:34px;z-index:12}.gcode-legend__combo-item{align-items:center;background:#fff;border:none;color:rgba(0,0,0,.88);cursor:pointer;display:flex;font-size:13px;font-weight:400;line-height:20px;min-height:28px;padding:0 10px;text-align:left}.gcode-legend__combo-item--active,.gcode-legend__combo-item:hover{background:rgba(44,123,229,.1);color:#2c7be5}.gcode-legend__combo-item:focus-visible{outline:2px solid rgba(44,123,229,.45);outline-offset:-2px}.gcode-legend__nephogram{background:#f5f7fa;border:1px solid #d9d9d9;border-radius:4px;box-sizing:border-box;flex-shrink:0;height:68px;position:relative}.gcode-legend__nephogram-bands{align-items:stretch;box-sizing:border-box;display:flex;flex-direction:row;height:100%;padding:0 8px}.gcode-legend__nephogram-tick{align-items:center;display:flex;flex:1 1 0;flex-direction:column;justify-content:center;min-width:0;position:relative}.gcode-legend__nephogram-label{color:rgba(0,0,0,.65);font-size:10px;font-weight:400;line-height:12px;max-width:42px;overflow:hidden;position:absolute;text-align:center;text-overflow:ellipsis;white-space:nowrap}.gcode-legend__nephogram-label--top{top:2px}.gcode-legend__nephogram-label--bottom{bottom:2px}.gcode-legend__nephogram-tick--down .gcode-legend__nephogram-label--top,.gcode-legend__nephogram-tick--up .gcode-legend__nephogram-label--bottom{display:none}.gcode-legend__nephogram-mark{border-radius:1px;flex-shrink:0;height:10px;width:10px}.gcode-legend__nephogram-tick--up .gcode-legend__nephogram-mark{clip-path:polygon(50% 0,80% 20%,80% 100%,20% 100%,20% 20%)}.gcode-legend__nephogram-tick--down .gcode-legend__nephogram-mark{clip-path:polygon(20% 0,80% 0,80% 80%,50% 100%,20% 80%)}.gcode-legend__extruders{display:flex;flex-direction:row;gap:8px;min-height:46px}.gcode-legend__extruder{display:flex;flex:1 1 0;flex-direction:column;gap:6px;min-width:0}.gcode-legend__extruder-color{background:transparent;border:none;cursor:pointer;height:10px;padding:0;width:100%}.gcode-legend__extruder-color::-webkit-color-swatch-wrapper{padding:0}.gcode-legend__extruder-color::-webkit-color-swatch{border:none;border-radius:0}.gcode-legend__extruder-color--unique::-webkit-color-swatch{border-radius:5px}.gcode-legend__extruder-color--first::-webkit-color-swatch{border-radius:5px 0 0 5px}.gcode-legend__extruder-color--last::-webkit-color-swatch{border-radius:0 5px 5px 0}.gcode-legend__rule{background:rgba(0,0,0,.06);flex-shrink:0;height:1px;margin:6px 0 4px}.gcode-legend__row{align-items:center;background:transparent;border:none;border-radius:4px;box-sizing:border-box;color:inherit;cursor:pointer;display:flex;flex-direction:row;gap:6px;height:24px;padding:0 4px 0 22px;text-align:left;width:100%}.gcode-legend__row:hover{background:rgba(44,123,229,.06)}.gcode-legend__row:focus-visible{outline:2px solid rgba(44,123,229,.45);outline-offset:1px}.gcode-legend__row--group{background:rgba(0,0,0,.04);height:26px;margin:1px 0 2px;padding:0 8px}.gcode-legend__row--group:hover{background:rgba(44,123,229,.08)}.gcode-legend__eye{align-items:center;color:rgba(0,0,0,.28);display:inline-flex;flex-shrink:0;height:16px;justify-content:center;width:16px}.gcode-legend__eye svg{fill:currentColor;height:16px;width:16px}.gcode-legend__eye--on{color:#2c7be5}.gcode-legend__eye--mixed{color:#69a1e5}.gcode-legend__swatch{border:1px solid rgba(0,0,0,.12);border-radius:2px;box-sizing:border-box;display:inline-block;flex-shrink:0;height:14px;width:14px}.gcode-legend__swatch--hidden{display:none}.gcode-legend__label{color:rgba(0,0,0,.78);flex:1 1 auto;font-size:13px;font-weight:400;line-height:20px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gcode-legend__stats{align-items:center;color:rgba(0,0,0,.45);display:inline-flex;flex:0 0 auto;flex-direction:row;font-size:11px;font-variant-numeric:tabular-nums;font-weight:400;gap:6px;line-height:16px;margin-left:auto;white-space:nowrap}.gcode-legend__stats[hidden]{display:none!important}.gcode-legend__time{min-width:4.5em;text-align:right}.gcode-legend__percent{min-width:3.2em;text-align:right}.gcode-legend__row--group .gcode-legend__label{color:rgba(0,0,0,.65);font-size:12px;font-weight:600;letter-spacing:.02em}";
|
|
150
|
+
styleInject(css_248z$8);
|
|
151
|
+
|
|
152
|
+
const en$6={'title':'Legend','colorScheme':'Color\x20Scheme','lineType':'Line\x20Type','lineWidth':'Line\x20Width\x20(mm)','layerHeight':'Layer\x20Height\x20(mm)','speed':'Speed\x20(mm/s)','fanSpeed':'Fan\x20Speed\x20(%)','temperature':'Temperature\x20(°C)','layerTime':'Layer\x20Time\x20(s)','flowRate':'Flow\x20Rate\x20(mm³/s)','extruderColor':'Extruder\x20Color','model':'Model','outerWall':'Outer\x20Wall','innerWall':'Inner\x20Wall','infill':'Infill','skin':'Skin','bridge':'Bridge','substructure':'Substructure','supportInterface':'Support\x20Interface','support':'Support','skirtBrim':'Skirt/Brim','raft':'Raft','primeTower':'Prime\x20Tower','option':'Option','travel':'Travel','wipe':'Wipe','starts':'Z-Seam','unknown':'Unknown','retraction':'Retraction','unRetraction':'Un-Retraction','expand':'Expand','collapse':'Collapse','show':'Show','hide':'Hide','mixed':'Mixed\x20visibility','extruder':'Extruder','pickColor':'Color'};const zh$6={'title':'图例','colorScheme':'着色方案','lineType':'线型','lineWidth':'线宽\x20(mm)','layerHeight':'层高\x20(mm)','speed':'速度\x20(mm/s)','fanSpeed':'风扇转速\x20(%)','temperature':'温度\x20(°C)','layerTime':'层时间\x20(s)','flowRate':'流速\x20(mm³/s)','extruderColor':'挤出机颜色','model':'模型','outerWall':'外壁','innerWall':'内壁','infill':'填充','skin':'表层','bridge':'桥接','substructure':'辅助结构','supportInterface':'支撑界面','support':'支撑','skirtBrim':'裙边/边缘','raft':'筏板','primeTower':'擦料塔','option':'选项','travel':'空走','wipe':'擦拭','starts':'Z缝','unknown':'未知','retraction':'回抽','unRetraction':'解除回抽','expand':'展开','collapse':'收起','show':'显示','hide':'隐藏','mixed':'部分可见','extruder':'挤出机','pickColor':'颜色'};const GCODE_LEGEND_I18N_NAMESPACE='gcodeLegend';registerViewerI18nNamespace(GCODE_LEGEND_I18N_NAMESPACE,{'en':en$6,'zh':zh$6});function t$6(_0x39510c){return i18n['t'](_0x39510c,{'ns':GCODE_LEGEND_I18N_NAMESPACE});}
|
|
153
|
+
|
|
154
|
+
const NEPHOGRAM_COLORS=['#014DFF','#0196F9','#01DAF3','#01FFC8','#50FF9C','#83E125','#FBFF48','#FFD601','#FFA513','#FF7501','#FF1101'];function formatNephogramTicks(_0x4b860e,_0x2b602c,_0x15c138){let _0x55620f=0x1;for(let _0x8b1510=0x0;_0x8b1510<_0x15c138;_0x8b1510++){_0x55620f*=0xa;}const _0x3854d4=Math['floor'](_0x4b860e*_0x55620f)/_0x55620f,_0x1f640d=Math['ceil'](_0x2b602c*_0x55620f)/_0x55620f,_0x5c3862=[];if(_0x3854d4===_0x1f640d){const _0x36df21=_0x3854d4['toFixed'](_0x15c138);for(let _0x457050=0x0;_0x457050<=0xa;_0x457050++){_0x5c3862['push'](_0x36df21);}return _0x5c3862;}const _0x24260b=(_0x1f640d-_0x3854d4)/0xa;_0x5c3862['push'](_0x3854d4['toFixed'](_0x15c138));for(let _0x352799=0x1;_0x352799<0xa;_0x352799++){_0x5c3862['push']((_0x3854d4+_0x352799*_0x24260b)['toFixed'](_0x15c138));}return _0x5c3862['push'](_0x1f640d['toFixed'](_0x15c138)),_0x5c3862;}function createNephogramLegend(){const _0x2ffb13=document['createElement']('div');_0x2ffb13['className']='gcode-legend__nephogram';const _0x45474b=document['createElement']('div');_0x45474b['className']='gcode-legend__nephogram-bands';const _0x469915=[];for(let _0xd05823=0x0;_0xd05823<=0xa;_0xd05823++){const _0x51d427=document['createElement']('div');_0x51d427['className']='gcode-legend__nephogram-tick\x20gcode-legend__nephogram-tick--'+(_0xd05823%0x2===0x0?'up':'down');const _0x133073=document['createElement']('span');_0x133073['className']='gcode-legend__nephogram-label\x20gcode-legend__nephogram-label--top';const _0x25e998=document['createElement']('span');_0x25e998['className']='gcode-legend__nephogram-mark',_0x25e998['style']['background']=NEPHOGRAM_COLORS[_0xd05823];const _0x1d73ef=document['createElement']('span');_0x1d73ef['className']='gcode-legend__nephogram-label\x20gcode-legend__nephogram-label--bottom',_0x51d427['append'](_0x133073,_0x25e998,_0x1d73ef),_0x45474b['append'](_0x51d427),_0x469915['push'](_0xd05823%0x2===0x0?_0x133073:_0x1d73ef),(_0xd05823%0x2===0x0?_0x1d73ef:_0x133073)['textContent']='';}_0x2ffb13['append'](_0x45474b);const _0x38eaa2=(_0x41a392,_0x2fff62,_0x1ce937)=>{var _0x6722bf;const _0x2d2c4d=formatNephogramTicks(_0x41a392,_0x2fff62,_0x1ce937);for(let _0x3062e9=0x0;_0x3062e9<_0x469915['length'];_0x3062e9++){_0x469915[_0x3062e9]['textContent']=(_0x6722bf=_0x2d2c4d[_0x3062e9])!==null&&_0x6722bf!==void 0x0?_0x6722bf:'';}};return _0x38eaa2(0x0,0x0,0x0),{'root':_0x2ffb13,'setRange':_0x38eaa2};}
|
|
155
|
+
|
|
156
|
+
const CHEVRON_DOWN='<svg\x20viewBox=\x220\x200\x2010\x2010\x22><path\x20d=\x22M5\x207.8l3.8-4.3H1.2L5\x207.8z\x22/></svg>',ICON_EYE_ON='<svg\x20viewBox=\x220\x200\x2016\x2016\x22><path\x20d=\x22M8\x203.2C4.3\x203.2\x201.6\x206\x201.2\x208c.4\x202\x203.1\x204.8\x206.8\x204.8S14.4\x2010\x2014.8\x208c-.4-2-3.1-4.8-6.8-4.8zm0\x207.3A2.5\x202.5\x200\x201\x201\x208\x205.5a2.5\x202.5\x200\x200\x201\x200\x205z\x22/></svg>',ICON_EYE_OFF='<svg\x20viewBox=\x220\x200\x2016\x2016\x22><path\x20d=\x22M2.2\x203.3l1-1\x2010.5\x2010.5-1\x201-1.8-1.8C9.6\x2012.6\x208.8\x2012.8\x208\x2012.8\x204.3\x2012.8\x201.6\x2010\x201.2\x208c.2-.9\x201.2-2.4\x202.8-3.6L2.2\x203.3zm6.6\x206.6L5.9\x206.9A2.5\x202.5\x200\x200\x200\x208\x2010.5c.3\x200\x20.5\x200\x20.8-.1zM8\x203.2c3.7\x200\x206.4\x202.8\x206.8\x204.8-.2.7-.8\x201.8-1.8\x202.8L8.6\x206.4A2.5\x202.5\x200\x200\x200\x208\x203.2z\x22/></svg>',ICON_EYE_MIXED='<svg\x20viewBox=\x220\x200\x2016\x2016\x22><path\x20d=\x22M3\x207.2h10v1.6H3z\x22/></svg>',LEGEND_GROUPS=[{'id':'model','types':[GCodeLineType['OuterWall'],GCodeLineType['InnerWall'],GCodeLineType['Infill'],GCodeLineType['Skin'],GCodeLineType['Bridge']]},{'id':'substructure','types':[GCodeLineType['SupportInterface'],GCodeLineType['Support'],GCodeLineType['Skirt'],GCodeLineType['Raft'],GCodeLineType['Tower']]},{'id':'option','types':[GCodeLineType['Travel'],GCodeLineType['Wipe'],GCodeLineType['Starts'],GCodeLineType['Unknown'],GCodeLineType['Retraction'],GCodeLineType['UnRetraction']]}],TYPE_LABEL_KEYS={[GCodeLineType['OuterWall']]:'outerWall',[GCodeLineType['InnerWall']]:'innerWall',[GCodeLineType['Infill']]:'infill',[GCodeLineType['Skin']]:'skin',[GCodeLineType['Bridge']]:'bridge',[GCodeLineType['SupportInterface']]:'supportInterface',[GCodeLineType['Support']]:'support',[GCodeLineType['Skirt']]:'skirtBrim',[GCodeLineType['Raft']]:'raft',[GCodeLineType['Tower']]:'primeTower',[GCodeLineType['Travel']]:'travel',[GCodeLineType['Wipe']]:'wipe',[GCodeLineType['Starts']]:'starts',[GCodeLineType['Unknown']]:'unknown',[GCodeLineType['Retraction']]:'retraction',[GCodeLineType['UnRetraction']]:'unRetraction'},COLOR_SCHEME_OPTIONS=[{'mode':GCodeColorMode['FeatureType'],'labelKey':'lineType','precision':0x0},{'mode':GCodeColorMode['Width'],'labelKey':'lineWidth','precision':0x2},{'mode':GCodeColorMode['Height'],'labelKey':'layerHeight','precision':0x2},{'mode':GCodeColorMode['Speed'],'labelKey':'speed','precision':0x0},{'mode':GCodeColorMode['FanSpeed'],'labelKey':'fanSpeed','precision':0x0,'fanPercent':!![]},{'mode':GCodeColorMode['Temperature'],'labelKey':'temperature','precision':0x0},{'mode':GCodeColorMode['LayerTime'],'labelKey':'layerTime','precision':0x0},{'mode':GCodeColorMode['VolumetricRate'],'labelKey':'flowRate','precision':0x0},{'mode':GCodeColorMode['ColorPrint'],'labelKey':'extruderColor','precision':0x0}];function asGCodeViewer(_0x13e544){return typeof _0x13e544['setGCodeColorMode']==='function'?_0x13e544:undefined;}function rgbCss(_0x1ac744){const _0x402404=Math['round'](_0x1ac744[0x0]*0xff),_0x3eb364=Math['round'](_0x1ac744[0x1]*0xff),_0x2f4f9d=Math['round'](_0x1ac744[0x2]*0xff);return 'rgb('+_0x402404+',\x20'+_0x3eb364+',\x20'+_0x2f4f9d+')';}function rgbHex(_0x18bf73){const _0x164115=_0x571b88=>Math['max'](0x0,Math['min'](0xff,Math['round'](_0x571b88*0xff)))['toString'](0x10)['padStart'](0x2,'0');return '#'+_0x164115(_0x18bf73[0x0])+_0x164115(_0x18bf73[0x1])+_0x164115(_0x18bf73[0x2]);}function hexToRgb(_0x428215){const _0x223406=/^#?([0-9a-f]{6})$/i['exec'](_0x428215);if(!_0x223406)return undefined;const _0xe5b491=Number['parseInt'](_0x223406[0x1],0x10);return [(_0xe5b491>>0x10&0xff)/0xff,(_0xe5b491>>0x8&0xff)/0xff,(_0xe5b491&0xff)/0xff];}function groupState(_0x449122,_0x151684){let _0xbf254e=0x0;for(const _0x81860c of _0x151684){_0x449122[_0x81860c]&&(_0xbf254e+=0x1);}if(_0xbf254e===_0x151684['length'])return 'on';if(_0xbf254e===0x0)return 'off';return 'mixed';}function setEye(_0x3988eb,_0x17c2e1){_0x3988eb['classList']['toggle']('gcode-legend__eye--on',_0x17c2e1==='on'),_0x3988eb['classList']['toggle']('gcode-legend__eye--mixed',_0x17c2e1==='mixed'),_0x3988eb['innerHTML']=_0x17c2e1==='on'?ICON_EYE_ON:_0x17c2e1==='mixed'?ICON_EYE_MIXED:ICON_EYE_OFF;}function formatPrintTime(_0x3a63b5){const _0x4d914d=Math['max'](0x0,Math['round'](_0x3a63b5)),_0x23410d=Math['floor'](_0x4d914d/0x15180),_0x2a94cb=Math['floor'](_0x4d914d%0x15180/0xe10),_0x4cc564=Math['floor'](_0x4d914d%0xe10/0x3c),_0x2d3afa=_0x4d914d%0x3c;if(_0x23410d>0x0)return _0x23410d+'d'+_0x2a94cb+'h'+_0x4cc564+'m';if(_0x2a94cb>0x0)return _0x2a94cb+'h'+_0x4cc564+'m'+_0x2d3afa+'s';if(_0x4cc564>0x0)return _0x4cc564+'m'+_0x2d3afa+'s';return _0x2d3afa+'s';}function sumPrintTimes(_0xc8120a){let _0x32d3f4=0x0,_0x4f8803=![];for(const _0x142b1d of Object['values'](_0xc8120a)){typeof _0x142b1d==='number'&&Number['isFinite'](_0x142b1d)&&_0x142b1d>0x0&&(_0x4f8803=!![],_0x32d3f4+=_0x142b1d);}return _0x4f8803?_0x32d3f4:0x0;}function optionFor(_0x484b9f){var _0xb5a4c9;return (_0xb5a4c9=COLOR_SCHEME_OPTIONS['find'](_0x3f711e=>_0x3f711e['mode']===_0x484b9f))!==null&&_0xb5a4c9!==void 0x0?_0xb5a4c9:COLOR_SCHEME_OPTIONS[0x0];}class GCodeLegendPlugin extends Plugin{constructor(_0x20880a,_0x3243f6){const _0xd9d5ab=(_0x3243f6===null||_0x3243f6===void 0x0?void 0x0:_0x3243f6['id'])||GCodeLegendPlugin['DEFAULT_ID'];super(_0x20880a,{'id':_0xd9d5ab}),this['comboItems']=[],this['groupRows']=[],this['typeRows']=[],this['hasModel']=![],this['comboOpen']=![],this['colorMode']=GCodeColorMode['FeatureType'],this['onModelsChanged']=()=>{this['refreshFromViewer'](),this['applyLocalizedCopy']();},this['onLanguageChange']=()=>{this['applyLocalizedCopy'](),this['render']();},this['onVisibilityChanged']=()=>{this['render']();},this['onColorModeChanged']=_0x4db618=>{this['colorMode']=_0x4db618,this['render']();},this['onExtruderChanged']=()=>{this['renderExtruders']();},this['onToggleCombo']=()=>{this['setComboOpen'](!this['comboOpen']);},this['onDocumentPointerDown']=_0x3985ea=>{var _0x4d349b;if((_0x4d349b=this['combo'])===null||_0x4d349b===void 0x0?void 0x0:_0x4d349b['contains'](_0x3985ea['target']))return;this['setComboOpen'](![]);},this['cfg']=_0x3243f6||{'id':_0xd9d5ab},this['gcodeViewer']=asGCodeViewer(_0x20880a),this['init']();}['init'](){this['buildDom'](),this['viewer']['addEventListener'](ViewerEvent['ModelLoad'],this['onModelsChanged']),this['viewer']['addEventListener'](ViewerEvent['ModelRemove'],this['onModelsChanged']),this['viewer']['addEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']),this['viewer']['addEventListener'](ViewerEvent['GCodeLineTypeVisibilityChanged'],this['onVisibilityChanged']),this['viewer']['addEventListener'](ViewerEvent['GCodeColorModeChanged'],this['onColorModeChanged']),this['viewer']['addEventListener'](ViewerEvent['GCodeExtruderChanged'],this['onExtruderChanged']),this['refreshFromViewer']();}['hostContainer'](){if(this['cfg']['containerId']){const _0x1622d2=document['getElementById'](this['cfg']['containerId']);if(_0x1622d2)return _0x1622d2;}return this['viewer']['widgetContainer'];}['buildDom'](){const _0x1b740f=this['hostContainer']();if(!_0x1b740f)return;this['basePanel']=new BasePanel({'container':_0x1b740f,'title':t$6('title'),'cssClass':'gcode-legend','viewportContainer':this['viewer']['viewerContainer'],'showCloseButton':![],'showCollapseButton':!![]}),this['basePanel']['root']['addEventListener']('pointerdown',_0x48d49f=>_0x48d49f['stopPropagation']()),this['basePanel']['root']['addEventListener']('wheel',_0x2ef12e=>_0x2ef12e['stopPropagation'](),{'passive':!![]}),this['content']=this['basePanel']['content'],this['content']['classList']['add']('gcode-legend__content'),this['content']['append'](this['createCombo'](),this['createNephogramBlock'](),this['createExtruders']());for(const _0x5afcfb of LEGEND_GROUPS){this['content']['append'](this['createRule']());const _0x423a84=this['createGroupRow'](_0x5afcfb);this['groupRows']['push'](_0x423a84),this['content']['append'](_0x423a84['button']);for(const _0x6b99b6 of _0x5afcfb['types']){const _0x3d2bfd=this['createTypeRow'](_0x6b99b6);this['typeRows']['push'](_0x3d2bfd),this['content']['append'](_0x3d2bfd['button']);}}this['applyLocalizedCopy'](),this['syncChrome'](),this['render']();}['createCombo'](){this['scheme']=document['createElement']('div'),this['scheme']['className']='gcode-legend__scheme',this['schemeLabel']=document['createElement']('div'),this['schemeLabel']['className']='gcode-legend__scheme-label',this['combo']=document['createElement']('div'),this['combo']['className']='gcode-legend__combo',this['comboButton']=document['createElement']('button'),this['comboButton']['type']='button',this['comboButton']['className']='gcode-legend__combo-btn',this['comboLabel']=document['createElement']('span');const _0x229d8a=document['createElement']('span');return _0x229d8a['className']='gcode-legend__combo-arrow',_0x229d8a['innerHTML']=CHEVRON_DOWN,this['comboButton']['append'](this['comboLabel'],_0x229d8a),this['comboButton']['addEventListener']('click',this['onToggleCombo']),this['comboMenu']=document['createElement']('div'),this['comboMenu']['className']='gcode-legend__combo-menu',this['comboItems']=COLOR_SCHEME_OPTIONS['map'](_0x5dd858=>{var _0x25ab68;const _0x2151aa=document['createElement']('button');return _0x2151aa['type']='button',_0x2151aa['className']='gcode-legend__combo-item',_0x2151aa['addEventListener']('click',()=>this['selectColorMode'](_0x5dd858['mode'])),(_0x25ab68=this['comboMenu'])===null||_0x25ab68===void 0x0?void 0x0:_0x25ab68['append'](_0x2151aa),_0x2151aa;}),this['combo']['append'](this['comboButton'],this['comboMenu']),this['scheme']['append'](this['schemeLabel'],this['combo']),this['scheme'];}['createNephogramBlock'](){return this['nephogram']=createNephogramLegend(),this['nephogram']['root'];}['createExtruders'](){return this['extruderHost']=document['createElement']('div'),this['extruderHost']['className']='gcode-legend__extruders',this['extruderHost'];}['createRule'](){const _0x31ed6c=document['createElement']('div');return _0x31ed6c['className']='gcode-legend__rule',_0x31ed6c;}['createGroupRow'](_0x2a555f){const _0x69c598=document['createElement']('button');_0x69c598['type']='button',_0x69c598['className']='gcode-legend__row\x20gcode-legend__row--group',_0x69c598['addEventListener']('click',()=>this['toggleGroup'](_0x2a555f));const _0x5e73d8=document['createElement']('span');_0x5e73d8['className']='gcode-legend__eye';const _0x2c7d25=document['createElement']('span');return _0x2c7d25['className']='gcode-legend__label',_0x69c598['append'](_0x5e73d8,_0x2c7d25),{'group':_0x2a555f,'labelKey':_0x2a555f['id'],'button':_0x69c598,'eye':_0x5e73d8,'label':_0x2c7d25};}['createTypeRow'](_0x11073c){const _0x1ad7fa=TYPE_LABEL_KEYS[_0x11073c],_0x5a1b19=document['createElement']('button');_0x5a1b19['type']='button',_0x5a1b19['className']='gcode-legend__row',_0x5a1b19['addEventListener']('click',()=>this['toggleType'](_0x11073c));const _0x10b196=document['createElement']('span');_0x10b196['className']='gcode-legend__eye';const _0x211e11=document['createElement']('span');_0x211e11['className']='gcode-legend__swatch';const _0x4779aa=document['createElement']('span');_0x4779aa['className']='gcode-legend__label';const _0x2d5283=document['createElement']('span');_0x2d5283['className']='gcode-legend__stats',_0x2d5283['hidden']=!![];const _0x2c4c38=document['createElement']('span');_0x2c4c38['className']='gcode-legend__time';const _0x2051b9=document['createElement']('span');return _0x2051b9['className']='gcode-legend__percent',_0x2d5283['append'](_0x2c4c38,_0x2051b9),_0x5a1b19['append'](_0x10b196,_0x211e11,_0x4779aa,_0x2d5283),{'type':_0x11073c,'labelKey':_0x1ad7fa,'button':_0x5a1b19,'eye':_0x10b196,'swatch':_0x211e11,'label':_0x4779aa,'time':_0x2c4c38,'percent':_0x2051b9,'stats':_0x2d5283};}['setComboOpen'](_0x109eab){var _0x23255a,_0x34f49f;this['comboOpen']=_0x109eab,(_0x23255a=this['combo'])===null||_0x23255a===void 0x0?void 0x0:_0x23255a['classList']['toggle']('gcode-legend__combo--open',_0x109eab),(_0x34f49f=this['basePanel'])===null||_0x34f49f===void 0x0?void 0x0:_0x34f49f['root']['classList']['toggle']('gcode-legend--menu-open',_0x109eab),_0x109eab?document['addEventListener']('pointerdown',this['onDocumentPointerDown'],!![]):document['removeEventListener']('pointerdown',this['onDocumentPointerDown'],!![]);}['selectColorMode'](_0x534826){var _0x481daf;this['setComboOpen'](![]),this['colorMode']=_0x534826,(_0x481daf=this['gcodeViewer'])===null||_0x481daf===void 0x0?void 0x0:_0x481daf['setGCodeColorMode'](_0x534826),this['render']();}['refreshFromViewer'](){if(!this['gcodeViewer']||this['gcodeViewer']['getGCodeLayerCount']()<=0x0){this['hasModel']=![],this['syncChrome']();return;}this['hasModel']=!![],this['colorMode']=this['gcodeViewer']['getGCodeColorMode'](),this['render'](),this['syncChrome']();}['syncChrome'](){var _0x47fab1;(_0x47fab1=this['basePanel'])===null||_0x47fab1===void 0x0?void 0x0:_0x47fab1['setVisible'](this['hasModel']),!this['hasModel']&&this['setComboOpen'](![]);}['applyLocalizedCopy'](){var _0x1c39ba;const _0x5ad18e=t$6('title');(_0x1c39ba=this['basePanel'])===null||_0x1c39ba===void 0x0?void 0x0:_0x1c39ba['setTitle'](_0x5ad18e);this['schemeLabel']&&(this['schemeLabel']['textContent']=t$6('colorScheme'));for(let _0x1c65cb=0x0;_0x1c65cb<COLOR_SCHEME_OPTIONS['length'];_0x1c65cb++){const _0x481748=this['comboItems'][_0x1c65cb];_0x481748&&(_0x481748['textContent']=t$6(COLOR_SCHEME_OPTIONS[_0x1c65cb]['labelKey']));}for(const _0x3241fb of this['groupRows']){_0x3241fb['label']['textContent']=t$6(_0x3241fb['labelKey']);}for(const _0x496b2a of this['typeRows']){_0x496b2a['label']['textContent']=t$6(_0x496b2a['labelKey']);}}['toggleGroup'](_0x4e3d9b){if(!this['gcodeViewer'])return;const _0x4bac78=this['gcodeViewer']['getGCodeLineTypeVisibility'](),_0x12d8b4=groupState(_0x4bac78,_0x4e3d9b['types'])!=='on',_0x17dc53={};for(const _0x140253 of _0x4e3d9b['types']){_0x17dc53[_0x140253]=_0x12d8b4;}this['gcodeViewer']['setGCodeLineTypeVisibility'](_0x17dc53);}['toggleType'](_0x42bd5b){if(!this['gcodeViewer'])return;const _0x463fdf=this['gcodeViewer']['getGCodeLineTypeVisibility']();this['gcodeViewer']['setGCodeLineTypeVisible'](_0x42bd5b,!_0x463fdf[_0x42bd5b]);}['render'](){var _0x301578,_0x4bd162,_0x4caf34,_0x480bde,_0x316f09,_0x3d1a77,_0x14eb7a;if(!this['gcodeViewer'])return;const _0x3a8efc=this['gcodeViewer']['getGCodeLineTypeVisibility'](),_0x573e34=this['gcodeViewer']['getGCodeLineTypeStyles'](),_0x2f5089=this['colorMode']===GCodeColorMode['FeatureType'],_0x418bc9=this['colorMode']===GCodeColorMode['ColorPrint'],_0x3b9387=optionFor(this['colorMode']);this['comboLabel']&&(this['comboLabel']['textContent']=t$6(_0x3b9387['labelKey']));for(let _0x2fa622=0x0;_0x2fa622<COLOR_SCHEME_OPTIONS['length'];_0x2fa622++){(_0x301578=this['comboItems'][_0x2fa622])===null||_0x301578===void 0x0?void 0x0:_0x301578['classList']['toggle']('gcode-legend__combo-item--active',COLOR_SCHEME_OPTIONS[_0x2fa622]['mode']===this['colorMode']);}(_0x4bd162=this['nephogram'])===null||_0x4bd162===void 0x0?void 0x0:_0x4bd162['root']['classList']['toggle']('gcode-legend--hidden-block',_0x2f5089||_0x418bc9),(_0x4caf34=this['extruderHost'])===null||_0x4caf34===void 0x0?void 0x0:_0x4caf34['classList']['toggle']('gcode-legend--hidden-block',!_0x418bc9);if(!_0x2f5089&&!_0x418bc9){const _0xebfc13=this['gcodeViewer']['getGCodeValueRange'](this['colorMode']),_0xbc8201=_0x3b9387['fanPercent']?_0xebfc13['min']/0xff*0x64:_0xebfc13['min'],_0x3f2614=_0x3b9387['fanPercent']?_0xebfc13['max']/0xff*0x64:_0xebfc13['max'];(_0x480bde=this['nephogram'])===null||_0x480bde===void 0x0?void 0x0:_0x480bde['setRange'](_0xbc8201,_0x3f2614,_0x3b9387['precision']);}_0x418bc9&&this['renderExtruders']();for(const _0x5337a5 of this['groupRows']){const _0x27450b=groupState(_0x3a8efc,_0x5337a5['group']['types']);setEye(_0x5337a5['eye'],_0x27450b),_0x5337a5['button']['title']=_0x27450b==='on'?t$6('hide'):_0x27450b==='off'?t$6('show'):t$6('mixed');}const _0x418f66=this['gcodeViewer']['getGCodeLineTypePrintTimes'](),_0x30163b=sumPrintTimes(_0x418f66),_0x3f528e=_0x30163b>0x0;(_0x316f09=this['basePanel'])===null||_0x316f09===void 0x0?void 0x0:_0x316f09['root']['classList']['toggle']('gcode-legend--with-stats',_0x3f528e);for(const _0x2c3e2b of this['typeRows']){const _0xb31f6a=_0x3a8efc[_0x2c3e2b['type']];setEye(_0x2c3e2b['eye'],_0xb31f6a?'on':'off'),_0x2c3e2b['button']['title']=_0xb31f6a?t$6('hide'):t$6('show'),_0x2c3e2b['swatch']['classList']['toggle']('gcode-legend__swatch--hidden',!_0x2f5089);const _0x30f348=(_0x3d1a77=_0x573e34[_0x2c3e2b['type']])===null||_0x3d1a77===void 0x0?void 0x0:_0x3d1a77['color'];_0x30f348&&(_0x2c3e2b['swatch']['style']['background']=rgbCss(_0x30f348));if(_0x3f528e){const _0x1ce0a9=_0x418f66[_0x2c3e2b['type']],_0x3c2ac8=typeof _0x1ce0a9==='number'&&Number['isFinite'](_0x1ce0a9)?Math['max'](0x0,_0x1ce0a9):0x0;_0x2c3e2b['time']['textContent']=formatPrintTime(_0x3c2ac8),_0x2c3e2b['percent']['textContent']=(_0x3c2ac8/_0x30163b*0x64)['toFixed'](0x1)+'%',_0x2c3e2b['stats']['hidden']=![];}else _0x2c3e2b['time']['textContent']='',_0x2c3e2b['percent']['textContent']='',_0x2c3e2b['stats']['hidden']=!![];}(_0x14eb7a=this['basePanel'])===null||_0x14eb7a===void 0x0?void 0x0:_0x14eb7a['root']['classList']['toggle']('gcode-legend--feature',_0x2f5089);}['renderExtruders'](){const _0x2ab424=this['extruderHost'],_0x29331a=this['gcodeViewer'];if(!_0x2ab424||!_0x29331a)return;_0x2ab424['replaceChildren']();const _0x567f24=_0x29331a['getGCodeExtruders'](),_0x5ecb7a=_0x567f24['length']>0x0?_0x567f24:[{'id':0x0,'materialName':''}];for(let _0x1139b4=0x0;_0x1139b4<_0x5ecb7a['length'];_0x1139b4++){const _0xa4cc17=_0x5ecb7a[_0x1139b4],_0x2a99a0=document['createElement']('div');_0x2a99a0['className']='gcode-legend__extruder';const _0x41db8f=document['createElement']('button');_0x41db8f['type']='button',_0x41db8f['className']='gcode-legend__row';const _0x92fe1e=_0x29331a['getGCodeExtruderVisible'](_0xa4cc17['id']),_0x39e550=document['createElement']('span');_0x39e550['className']='gcode-legend__eye',setEye(_0x39e550,_0x92fe1e?'on':'off');const _0x198c38=document['createElement']('span');_0x198c38['className']='gcode-legend__label',_0x198c38['textContent']=_0xa4cc17['materialName']||t$6('extruder')+'\x20'+(_0xa4cc17['id']+0x1),_0x41db8f['title']=_0x92fe1e?t$6('hide'):t$6('show'),_0x41db8f['append'](_0x39e550,_0x198c38),_0x41db8f['addEventListener']('click',()=>_0x29331a['setGCodeExtruderVisible'](_0xa4cc17['id'],!_0x92fe1e));const _0x261046=_0x29331a['getGCodeExtruderColor'](_0xa4cc17['id']),_0x269ff6=document['createElement']('input');_0x269ff6['type']='color',_0x269ff6['className']='gcode-legend__extruder-color',_0x269ff6['value']=rgbHex(_0x261046),_0x269ff6['title']=t$6('pickColor');if(_0x5ecb7a['length']===0x1)_0x269ff6['classList']['add']('gcode-legend__extruder-color--unique');else {if(_0x1139b4===0x0)_0x269ff6['classList']['add']('gcode-legend__extruder-color--first');else _0x1139b4===_0x5ecb7a['length']-0x1&&_0x269ff6['classList']['add']('gcode-legend__extruder-color--last');}_0x269ff6['addEventListener']('input',()=>{const _0x2afd2a=hexToRgb(_0x269ff6['value']);_0x2afd2a&&_0x29331a['setGCodeExtruderColor'](_0xa4cc17['id'],_0x2afd2a);}),_0x2a99a0['append'](_0x41db8f,_0x269ff6),_0x2ab424['append'](_0x2a99a0);}}['destroy'](){var _0x3d1662,_0x5ec811;this['setComboOpen'](![]),this['viewer']['removeEventListener'](ViewerEvent['ModelLoad'],this['onModelsChanged']),this['viewer']['removeEventListener'](ViewerEvent['ModelRemove'],this['onModelsChanged']),this['viewer']['removeEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']),this['viewer']['removeEventListener'](ViewerEvent['GCodeLineTypeVisibilityChanged'],this['onVisibilityChanged']),this['viewer']['removeEventListener'](ViewerEvent['GCodeColorModeChanged'],this['onColorModeChanged']),this['viewer']['removeEventListener'](ViewerEvent['GCodeExtruderChanged'],this['onExtruderChanged']),(_0x3d1662=this['basePanel'])===null||_0x3d1662===void 0x0?void 0x0:_0x3d1662['destroy'](),(_0x5ec811=this['basePanel'])===null||_0x5ec811===void 0x0?void 0x0:_0x5ec811['root']['remove'](),this['basePanel']=undefined,super['destroy']();}}GCodeLegendPlugin['DEFAULT_ID']='GCodeLegendPlugin';
|
|
157
|
+
|
|
158
|
+
const DEFAULT_SIZE=0x190,DEFAULT_CELL=0xa,DEFAULT_MAJOR_EVERY=0x5,DEFAULT_PLATE_COLOR=0x2e2e32,DEFAULT_GRID_COLOR=0x8a8a90,DEFAULT_MAJOR_GRID_COLOR=0xb0b0b6,DEFAULT_EDGE_COLOR=0xc8c8ce,DEFAULT_SCALE_MARKS=[0x64,0xc8,0x12c],SCALE_TICK_LEN=0x5,SCALE_LABEL_SIZE=0x9,SCALE_LABEL_Z_EPS=0.12,MAX_SCALE_MARKS=0x8,PLATE_VERT='\x0a#ifdef\x20USE_LOGARITHMIC_DEPTH_BUFFER\x0a\x20\x20\x20\x20varying\x20float\x20vFragDepth;\x0a\x20\x20\x20\x20varying\x20float\x20vIsPerspective;\x0a#endif\x0a\x0avarying\x20vec2\x20vWorldXY;\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20vec4\x20world\x20=\x20modelMatrix\x20*\x20vec4(position,\x201.0);\x0a\x20\x20\x20\x20vWorldXY\x20=\x20world.xy;\x0a\x20\x20\x20\x20gl_Position\x20=\x20projectionMatrix\x20*\x20viewMatrix\x20*\x20world;\x0a\x20\x20\x20\x20#ifdef\x20USE_LOGARITHMIC_DEPTH_BUFFER\x0a\x20\x20\x20\x20\x20\x20\x20\x20vFragDepth\x20=\x201.0\x20+\x20gl_Position.w;\x0a\x20\x20\x20\x20\x20\x20\x20\x20vIsPerspective\x20=\x20float(\x20projectionMatrix[\x202\x20][\x203\x20]\x20==\x20-1.0\x20);\x0a\x20\x20\x20\x20#endif\x0a}\x0a',PLATE_FRAG='\x0a#if\x20defined(\x20USE_LOGARITHMIC_DEPTH_BUFFER\x20)\x0a\x20\x20\x20\x20uniform\x20float\x20logDepthBufFC;\x0a\x20\x20\x20\x20varying\x20float\x20vFragDepth;\x0a\x20\x20\x20\x20varying\x20float\x20vIsPerspective;\x0a#endif\x0a\x0avarying\x20vec2\x20vWorldXY;\x0a\x0auniform\x20vec2\x20uMinXY;\x0auniform\x20vec2\x20uSize;\x0auniform\x20float\x20uCell;\x0auniform\x20float\x20uMajor;\x0auniform\x20vec3\x20uPlateColor;\x0auniform\x20vec3\x20uGridColor;\x0auniform\x20vec3\x20uMajorColor;\x0auniform\x20vec3\x20uEdgeColor;\x0auniform\x20float\x20uTickLen;\x0auniform\x20int\x20uMarkCount;\x0auniform\x20float\x20uMarks[8];\x0a\x0afloat\x20gridLine(float\x20size)\x20{\x0a\x20\x20\x20\x20vec2\x20r\x20=\x20vWorldXY\x20/\x20size;\x0a\x20\x20\x20\x20vec2\x20grid\x20=\x20abs(fract(r\x20-\x200.5)\x20-\x200.5)\x20/\x20max(fwidth(r),\x20vec2(1e-6));\x0a\x20\x20\x20\x20//\x20Widen\x20slightly\x20so\x20lines\x20stay\x20visible\x20under\x20perspective\x20without\x20pixel\x20stairs.\x0a\x20\x20\x20\x20float\x20line\x20=\x201.0\x20-\x20min(min(grid.x,\x20grid.y),\x201.0);\x0a\x20\x20\x20\x20return\x20smoothstep(0.0,\x201.0,\x20line);\x0a}\x0a\x0afloat\x20edgeLine()\x20{\x0a\x20\x20\x20\x20vec2\x20d\x20=\x20min(vWorldXY\x20-\x20uMinXY,\x20uMinXY\x20+\x20uSize\x20-\x20vWorldXY);\x0a\x20\x20\x20\x20float\x20m\x20=\x20min(d.x,\x20d.y);\x0a\x20\x20\x20\x20float\x20fw\x20=\x20max(fwidth(m),\x201e-6);\x0a\x20\x20\x20\x20//\x20~1.25\x20px\x20soft\x20border\x0a\x20\x20\x20\x20return\x201.0\x20-\x20smoothstep(0.0,\x20fw\x20*\x201.25,\x20m);\x0a}\x0a\x0a/**\x20Short\x20ticks\x20outside\x20the\x20min-X\x20/\x20min-Y\x20edges\x20at\x20configured\x20mark\x20positions.\x20*/\x0afloat\x20scaleTicks()\x20{\x0a\x20\x20\x20\x20float\x20a\x20=\x200.0;\x0a\x20\x20\x20\x20float\x20dx\x20=\x20vWorldXY.x\x20-\x20uMinXY.x;\x0a\x20\x20\x20\x20float\x20dy\x20=\x20vWorldXY.y\x20-\x20uMinXY.y;\x0a\x20\x20\x20\x20float\x20fwx\x20=\x20max(fwidth(vWorldXY.x),\x200.12);\x0a\x20\x20\x20\x20float\x20fwy\x20=\x20max(fwidth(vWorldXY.y),\x200.12);\x0a\x20\x20\x20\x20for\x20(int\x20i\x20=\x200;\x20i\x20<\x208;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(i\x20>=\x20uMarkCount)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20break;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20float\x20mark\x20=\x20uMarks[i];\x0a\x20\x20\x20\x20\x20\x20\x20\x20//\x20Bottom\x20edge\x20(Y\x20=\x20min):\x20tick\x20along\x20-Y\x20(outside)\x0a\x20\x20\x20\x20\x20\x20\x20\x20float\x20onX\x20=\x201.0\x20-\x20smoothstep(0.0,\x20fwx\x20*\x201.2,\x20abs(dx\x20-\x20mark));\x0a\x20\x20\x20\x20\x20\x20\x20\x20float\x20bottomOut\x20=\x20-dy;\x0a\x20\x20\x20\x20\x20\x20\x20\x20float\x20onBottom\x20=\x20(1.0\x20-\x20smoothstep(uTickLen,\x20uTickLen\x20+\x20fwy,\x20bottomOut))\x20*\x20step(0.0,\x20bottomOut);\x0a\x20\x20\x20\x20\x20\x20\x20\x20a\x20=\x20max(a,\x20onX\x20*\x20onBottom);\x0a\x20\x20\x20\x20\x20\x20\x20\x20//\x20Left\x20edge\x20(X\x20=\x20min):\x20tick\x20along\x20-X\x20(outside)\x0a\x20\x20\x20\x20\x20\x20\x20\x20float\x20onY\x20=\x201.0\x20-\x20smoothstep(0.0,\x20fwy\x20*\x201.2,\x20abs(dy\x20-\x20mark));\x0a\x20\x20\x20\x20\x20\x20\x20\x20float\x20leftOut\x20=\x20-dx;\x0a\x20\x20\x20\x20\x20\x20\x20\x20float\x20onLeft\x20=\x20(1.0\x20-\x20smoothstep(uTickLen,\x20uTickLen\x20+\x20fwx,\x20leftOut))\x20*\x20step(0.0,\x20leftOut);\x0a\x20\x20\x20\x20\x20\x20\x20\x20a\x20=\x20max(a,\x20onY\x20*\x20onLeft);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20return\x20a;\x0a}\x0a\x0avoid\x20main()\x20{\x0a\x20\x20\x20\x20float\x20dx\x20=\x20vWorldXY.x\x20-\x20uMinXY.x;\x0a\x20\x20\x20\x20float\x20dy\x20=\x20vWorldXY.y\x20-\x20uMinXY.y;\x0a\x20\x20\x20\x20bool\x20inside\x20=\x20dx\x20>=\x200.0\x20&&\x20dy\x20>=\x200.0\x20&&\x20dx\x20<=\x20uSize.x\x20&&\x20dy\x20<=\x20uSize.y;\x0a\x20\x20\x20\x20float\x20tick\x20=\x20scaleTicks();\x0a\x0a\x20\x20\x20\x20//\x20Margin\x20around\x20the\x20plate:\x20only\x20outward\x20scale\x20ticks\x20(no\x20fill).\x0a\x20\x20\x20\x20if\x20(!inside)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(tick\x20<\x200.02)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20discard;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_FragColor\x20=\x20vec4(uEdgeColor,\x20clamp(tick,\x200.0,\x201.0));\x0a\x20\x20\x20\x20\x20\x20\x20\x20#if\x20defined(\x20USE_LOGARITHMIC_DEPTH_BUFFER\x20)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20gl_FragDepth\x20=\x20vIsPerspective\x20==\x200.0\x20?\x20gl_FragCoord.z\x20:\x20log2(\x20vFragDepth\x20)\x20*\x20logDepthBufFC\x20*\x200.5;\x0a\x20\x20\x20\x20\x20\x20\x20\x20#endif\x0a\x20\x20\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20float\x20minor\x20=\x20gridLine(uCell);\x0a\x20\x20\x20\x20float\x20major\x20=\x20gridLine(uMajor);\x0a\x20\x20\x20\x20float\x20edge\x20=\x20edgeLine();\x0a\x0a\x20\x20\x20\x20//\x20Major\x20overrides\x20minor;\x20edge\x20on\x20top.\x0a\x20\x20\x20\x20float\x20gridA\x20=\x20max(minor\x20*\x200.45,\x20major\x20*\x200.75);\x0a\x20\x20\x20\x20vec3\x20gridCol\x20=\x20mix(uGridColor,\x20uMajorColor,\x20clamp(major\x20*\x201.2,\x200.0,\x201.0));\x0a\x20\x20\x20\x20float\x20lineA\x20=\x20max(gridA,\x20edge);\x0a\x0a\x20\x20\x20\x20//\x20Front\x20(+Z):\x20solid\x20plate\x20+\x20grid.\x20Back:\x20lines\x20only\x20(no\x20plate\x20fill).\x0a\x20\x20\x20\x20if\x20(!gl_FrontFacing)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(lineA\x20<\x200.02)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20discard;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20vec3\x20backCol\x20=\x20mix(gridCol,\x20uEdgeColor,\x20clamp(edge,\x200.0,\x201.0));\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_FragColor\x20=\x20vec4(backCol,\x20clamp(lineA,\x200.0,\x201.0));\x0a\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20vec3\x20col\x20=\x20uPlateColor;\x0a\x20\x20\x20\x20\x20\x20\x20\x20col\x20=\x20mix(col,\x20gridCol,\x20clamp(gridA,\x200.0,\x201.0));\x0a\x20\x20\x20\x20\x20\x20\x20\x20col\x20=\x20mix(col,\x20uEdgeColor,\x20clamp(edge,\x200.0,\x201.0));\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_FragColor\x20=\x20vec4(col,\x201.0);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20#if\x20defined(\x20USE_LOGARITHMIC_DEPTH_BUFFER\x20)\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_FragDepth\x20=\x20vIsPerspective\x20==\x200.0\x20?\x20gl_FragCoord.z\x20:\x20log2(\x20vFragDepth\x20)\x20*\x20logDepthBufFC\x20*\x200.5;\x0a\x20\x20\x20\x20#endif\x0a}\x0a';class PlatePlugin extends Plugin{constructor(_0x4894f7,_0x269108){var _0x5a0610,_0x25dd87,_0x2302c5,_0x1865ab,_0x452d4e,_0x911754,_0x503490,_0x4f814a,_0x3fc174,_0x6bff1e,_0x154809;const _0x58b84f=(_0x269108===null||_0x269108===void 0x0?void 0x0:_0x269108['id'])||PlatePlugin['DEFAULT_ID'];super(_0x4894f7,{'id':_0x58b84f}),this['NAME']='BUILD_PLATE',this['cfg']=Object['assign'](Object['assign']({},_0x269108),{'id':_0x58b84f,'visible':(_0x269108===null||_0x269108===void 0x0?void 0x0:_0x269108['visible'])!==![],'sizeX':(_0x5a0610=_0x269108===null||_0x269108===void 0x0?void 0x0:_0x269108['sizeX'])!==null&&_0x5a0610!==void 0x0?_0x5a0610:DEFAULT_SIZE,'sizeY':(_0x25dd87=_0x269108===null||_0x269108===void 0x0?void 0x0:_0x269108['sizeY'])!==null&&_0x25dd87!==void 0x0?_0x25dd87:DEFAULT_SIZE,'cellSize':(_0x2302c5=_0x269108===null||_0x269108===void 0x0?void 0x0:_0x269108['cellSize'])!==null&&_0x2302c5!==void 0x0?_0x2302c5:DEFAULT_CELL,'majorEvery':(_0x1865ab=_0x269108===null||_0x269108===void 0x0?void 0x0:_0x269108['majorEvery'])!==null&&_0x1865ab!==void 0x0?_0x1865ab:DEFAULT_MAJOR_EVERY,'height':(_0x452d4e=_0x269108===null||_0x269108===void 0x0?void 0x0:_0x269108['height'])!==null&&_0x452d4e!==void 0x0?_0x452d4e:0x0,'origin':(_0x911754=_0x269108===null||_0x269108===void 0x0?void 0x0:_0x269108['origin'])!==null&&_0x911754!==void 0x0?_0x911754:'corner','plateColor':(_0x503490=_0x269108===null||_0x269108===void 0x0?void 0x0:_0x269108['plateColor'])!==null&&_0x503490!==void 0x0?_0x503490:DEFAULT_PLATE_COLOR,'gridColor':(_0x4f814a=_0x269108===null||_0x269108===void 0x0?void 0x0:_0x269108['gridColor'])!==null&&_0x4f814a!==void 0x0?_0x4f814a:DEFAULT_GRID_COLOR,'majorGridColor':(_0x3fc174=_0x269108===null||_0x269108===void 0x0?void 0x0:_0x269108['majorGridColor'])!==null&&_0x3fc174!==void 0x0?_0x3fc174:DEFAULT_MAJOR_GRID_COLOR,'edgeColor':(_0x6bff1e=_0x269108===null||_0x269108===void 0x0?void 0x0:_0x269108['edgeColor'])!==null&&_0x6bff1e!==void 0x0?_0x6bff1e:DEFAULT_EDGE_COLOR,'scaleMarks':(_0x154809=_0x269108===null||_0x269108===void 0x0?void 0x0:_0x269108['scaleMarks'])!==null&&_0x154809!==void 0x0?_0x154809:DEFAULT_SCALE_MARKS}),this['cfg']['visible']&&this['rebuild']();}['getSize'](){return {'sizeX':this['cfg']['sizeX'],'sizeY':this['cfg']['sizeY']};}['getWorldBBox'](){const {minX:_0x143c5b,minY:_0x144a64}=this['plateBounds'](),_0x1e35c1=this['cfg']['height'],_0x22839f=_0x1e35c1+Math['max'](this['cfg']['sizeX'],this['cfg']['sizeY'])*0.001;return new THREE['Box3'](new THREE['Vector3'](_0x143c5b,_0x144a64,_0x1e35c1),new THREE['Vector3'](_0x143c5b+this['cfg']['sizeX'],_0x144a64+this['cfg']['sizeY'],_0x22839f));}['setSize'](_0x13c3eb,_0x5e2be3){this['cfg']['sizeX']=Math['max'](0x1,_0x13c3eb),this['cfg']['sizeY']=Math['max'](0x1,_0x5e2be3),this['rebuild']();}['getCellSize'](){return this['cfg']['cellSize'];}['setCellSize'](_0x37b402){this['cfg']['cellSize']=Math['max'](0.1,_0x37b402),this['rebuild']();}['getHeight'](){return this['cfg']['height'];}['setHeight'](_0x36e880){this['cfg']['height']=_0x36e880,this['rebuild']();}['setOrigin'](_0xda50ef){this['cfg']['origin']=_0xda50ef,this['rebuild']();}['setVisible'](_0xedf181){this['cfg']['visible']=_0xedf181;if(_0xedf181&&!this['root']){this['rebuild']();return;}this['root']&&(this['root']['visible']=_0xedf181),this['viewer']['enableRender']();}['isVisible'](){var _0x122753;return !!((_0x122753=this['root'])===null||_0x122753===void 0x0?void 0x0:_0x122753['visible']);}['rebuild'](){var _0x1afd3c;this['disposeMeshes']();const _0x3437d2=this['cfg']['sizeX'],_0x553942=this['cfg']['sizeY'],_0xb76860=this['cfg']['cellSize'],_0x17d7dd=Math['max'](0x1,Math['floor'](this['cfg']['majorEvery'])),_0x2cf5a2=this['cfg']['height'],{minX:_0x490611,minY:_0x13c425}=this['plateBounds'](),_0x40518e=this['normalizedScaleMarks'](_0x3437d2,_0x553942),_0x2a5825=new THREE['Group']();_0x2a5825['name']=this['NAME'],_0x2a5825['matrixAutoUpdate']=MatrixAutoUpdate,_0x2a5825['layers']['enableAll'](),_0x2a5825['layers']['disable'](LayerForSelectableObjects);const _0x10b04d=new Array(MAX_SCALE_MARKS)['fill'](0x0);for(let _0x46bab7=0x0;_0x46bab7<_0x40518e['length'];_0x46bab7++){_0x10b04d[_0x46bab7]=_0x40518e[_0x46bab7];}const _0xfa2a0d=new THREE['PlaneGeometry'](_0x3437d2+0x2*SCALE_TICK_LEN,_0x553942+0x2*SCALE_TICK_LEN),_0x39ac94=new THREE['ShaderMaterial']({'side':THREE['DoubleSide'],'transparent':!![],'depthWrite':!![],'uniforms':{'uMinXY':{'value':new THREE['Vector2'](_0x490611,_0x13c425)},'uSize':{'value':new THREE['Vector2'](_0x3437d2,_0x553942)},'uCell':{'value':_0xb76860},'uMajor':{'value':_0xb76860*_0x17d7dd},'uPlateColor':{'value':new THREE['Color'](this['cfg']['plateColor'])},'uGridColor':{'value':new THREE['Color'](this['cfg']['gridColor'])},'uMajorColor':{'value':new THREE['Color'](this['cfg']['majorGridColor'])},'uEdgeColor':{'value':new THREE['Color'](this['cfg']['edgeColor'])},'uTickLen':{'value':SCALE_TICK_LEN},'uMarkCount':{'value':_0x40518e['length']},'uMarks':{'value':_0x10b04d}},'vertexShader':PLATE_VERT,'fragmentShader':PLATE_FRAG,'toneMapped':![]}),_0x1f11a9=new THREE['Mesh'](_0xfa2a0d,_0x39ac94);_0x1f11a9['name']=this['NAME']+'_SURFACE',_0x1f11a9['matrixAutoUpdate']=MatrixAutoUpdate,_0x1f11a9['position']['set'](_0x490611+_0x3437d2/0x2,_0x13c425+_0x553942/0x2,_0x2cf5a2),_0x1f11a9['updateMatrix'](),_0x1f11a9['layers']['disable'](LayerForSelectableObjects),_0x2a5825['add'](_0x1f11a9),this['plateMesh']=_0x1f11a9,this['addScaleLabels'](_0x2a5825,_0x40518e,_0x490611,_0x13c425,_0x2cf5a2),_0x2a5825['visible']=this['cfg']['visible'],_0x2a5825['updateMatrix'](),_0x2a5825['updateMatrixWorld'](!![]),this['root']=_0x2a5825,(_0x1afd3c=this['viewer']['scene'])===null||_0x1afd3c===void 0x0?void 0x0:_0x1afd3c['add'](_0x2a5825),this['viewer']['enableRender']();}['normalizedScaleMarks'](_0x7603fa,_0x3b59be){var _0x18fa4a;const _0x585369=(_0x18fa4a=this['cfg']['scaleMarks'])!==null&&_0x18fa4a!==void 0x0?_0x18fa4a:[],_0x4d5e08=Math['min'](_0x7603fa,_0x3b59be),_0x4cbaa2=[];for(const _0x18d918 of _0x585369){if(!Number['isFinite'](_0x18d918)||_0x18d918<=0x0||_0x18d918>=_0x4d5e08)continue;if(_0x4cbaa2['includes'](_0x18d918))continue;_0x4cbaa2['push'](_0x18d918);if(_0x4cbaa2['length']>=MAX_SCALE_MARKS)break;}return _0x4cbaa2['sort']((_0x1df669,_0x1ce2fa)=>_0x1df669-_0x1ce2fa);}['addScaleLabels'](_0x172e8a,_0x7a20f2,_0x2cb2a6,_0x3c78a0,_0x56e65b){const _0x46f874=_0x56e65b+SCALE_LABEL_Z_EPS,_0x2148dd=SCALE_TICK_LEN+SCALE_LABEL_SIZE*0.45;for(const _0x5e4bb6 of _0x7a20f2){const _0x4e2bf8=this['createScaleLabelMesh'](String(_0x5e4bb6));_0x4e2bf8['name']=this['NAME']+'_LABEL_X_'+_0x5e4bb6,_0x4e2bf8['position']['set'](_0x2cb2a6+_0x5e4bb6,_0x3c78a0-_0x2148dd,_0x46f874),_0x4e2bf8['updateMatrix'](),_0x172e8a['add'](_0x4e2bf8);const _0x3acf83=this['createScaleLabelMesh'](String(_0x5e4bb6));_0x3acf83['name']=this['NAME']+'_LABEL_Y_'+_0x5e4bb6,_0x3acf83['position']['set'](_0x2cb2a6-_0x2148dd,_0x3c78a0+_0x5e4bb6,_0x46f874),_0x3acf83['rotation']['z']=Math['PI']/0x2,_0x3acf83['updateMatrix'](),_0x172e8a['add'](_0x3acf83);}}['createScaleLabelMesh'](_0x508fe1){const _0x274baf=document['createElement']('canvas');_0x274baf['width']=0x40,_0x274baf['height']=0x40;const _0x305117=_0x274baf['getContext']('2d');_0x305117&&(_0x305117['clearRect'](0x0,0x0,0x40,0x40),_0x305117['fillStyle']='#'+new THREE['Color'](this['cfg']['plateColor'])['getHexString'](),_0x305117['font']='600\x2034px\x20system-ui,\x20Segoe\x20UI,\x20sans-serif',_0x305117['textAlign']='center',_0x305117['textBaseline']='middle',_0x305117['fillText'](_0x508fe1,0x20,0x22));const _0x354920=new THREE['CanvasTexture'](_0x274baf);_0x354920['colorSpace']=THREE['SRGBColorSpace'],_0x354920['needsUpdate']=!![];const _0x514096=new THREE['MeshBasicMaterial']({'map':_0x354920,'transparent':!![],'depthWrite':![],'toneMapped':![],'side':THREE['DoubleSide']}),_0x5a0fcb=new THREE['Mesh'](new THREE['PlaneGeometry'](SCALE_LABEL_SIZE,SCALE_LABEL_SIZE),_0x514096);return _0x5a0fcb['matrixAutoUpdate']=MatrixAutoUpdate,_0x5a0fcb['layers']['disable'](LayerForSelectableObjects),_0x5a0fcb;}['plateBounds'](){if(this['cfg']['origin']==='center')return {'minX':-this['cfg']['sizeX']/0x2,'minY':-this['cfg']['sizeY']/0x2};return {'minX':0x0,'minY':0x0};}['disposeMeshes'](){if(!this['root'])return;this['root']['removeFromParent'](),this['root']['traverse'](_0x574679=>{const _0x1c4bb0=_0x574679;_0x1c4bb0['geometry']&&_0x1c4bb0['geometry']['dispose']();const _0x5322f5=_0x1c4bb0['material'];if(_0x5322f5){const _0x1250f0=Array['isArray'](_0x5322f5)?_0x5322f5:[_0x5322f5];for(const _0x30795c of _0x1250f0){const _0x4f8870=_0x30795c['map'];_0x4f8870&&_0x4f8870['dispose'](),_0x30795c['dispose']();}}}),this['root']=undefined,this['plateMesh']=undefined;}['destroy'](){super['destroy'](),this['disposeMeshes']();}}PlatePlugin['DEFAULT_ID']='PlatePlugin';
|
|
159
|
+
|
|
160
|
+
const DefaultBlur=0x5,DefaultDarkness=0.8,DefaultUpdateDelay=0x7d0;class GroundShadowPlugin extends Plugin{constructor(_0x68f837,_0x3abe55){const _0x319bd6=(_0x3abe55===null||_0x3abe55===void 0x0?void 0x0:_0x3abe55['id'])||GroundShadowPlugin['DEFAULT_ID'];super(_0x68f837,{'id':_0x319bd6}),this['enabled']=!![],this['shouldRender']=![],this['onModelUpdate']=()=>{if(!this['enabled'])return;this['timeout']&&clearTimeout(this['timeout']),this['timeout']=setTimeout(()=>{this['update']();},this['cfg']['updateDelay']||DefaultUpdateDelay);},this['onShadowRender']=()=>{var _0x3451a8,_0x40fd1c,_0x2c4037,_0x195e05,_0x1f44aa;this['shouldRender']&&(this['render'](),(_0x3451a8=this['shadowCamera'])===null||_0x3451a8===void 0x0?void 0x0:_0x3451a8['removeFromParent'](),this['shadowCamera']=undefined,(_0x40fd1c=this['blurPlane'])===null||_0x40fd1c===void 0x0?void 0x0:_0x40fd1c['removeFromParent'](),this['blurPlane']=undefined,(_0x2c4037=this['depthMaterial'])===null||_0x2c4037===void 0x0?void 0x0:_0x2c4037['dispose'](),this['depthMaterial']=undefined,(_0x195e05=this['horizontalBlurMaterial'])===null||_0x195e05===void 0x0?void 0x0:_0x195e05['dispose'](),this['horizontalBlurMaterial']=undefined,(_0x1f44aa=this['verticalBlurMaterial'])===null||_0x1f44aa===void 0x0?void 0x0:_0x1f44aa['dispose'](),this['verticalBlurMaterial']=undefined,this['shouldRender']=![]);},this['cfg']=_0x3abe55||{'id':_0x319bd6},this['cfg']['blur']===undefined&&(this['cfg']['blur']=DefaultBlur),this['cfg']['darkness']===undefined&&(this['cfg']['darkness']=DefaultDarkness),this['cfg']['updateDelay']===undefined&&(this['cfg']['updateDelay']=DefaultUpdateDelay),this['cfg']['enabled']===undefined&&(this['cfg']['enabled']=!![]),this['enabled']=this['cfg']['enabled'],this['viewer']['addEventListener'](ViewerEvent['ModelLoad'],this['onModelUpdate']),this['viewer']['addEventListener'](ViewerEvent['ModelRemove'],this['onModelUpdate']),this['viewer']['addEventListener'](ViewerEvent['BeforeRender'],this['onShadowRender']);}get['scene'](){return this['viewer']['scene'];}get['renderer'](){return this['viewer']['renderer'];}['setEnabled'](_0x1f4a3a){this['enabled']=_0x1f4a3a,this['enabled']?this['update']():this['shadowGroup']&&(this['shadowGroup']['removeFromParent'](),this['shadowGroup']=undefined),this['viewer']['enableRender']();}['isEnabled'](){return this['enabled'];}['update'](){if(!this['enabled'])return;this['initMaterial'](),this['initRenderTarget'](),this['updateGroundShadow'](),this['shouldRender']=!![],this['viewer']['enableRender']();}['initMaterial'](){this['depthMaterial']=new THREE['MeshDepthMaterial'](),this['depthMaterial']['userData']['darkness']={'value':this['cfg']['darkness']},this['depthMaterial']['onBeforeCompile']=_0x3b707b=>{var _0x8c03a1;_0x3b707b['uniforms']['darkness']=(_0x8c03a1=this['depthMaterial'])===null||_0x8c03a1===void 0x0?void 0x0:_0x8c03a1['userData']['darkness'],_0x3b707b['fragmentShader']='\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20uniform\x20float\x20darkness;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x3b707b['fragmentShader']['replace']('gl_FragColor\x20=\x20vec4(\x20vec3(\x201.0\x20-\x20fragCoordZ\x20),\x20opacity\x20);','gl_FragColor\x20=\x20vec4(\x20vec3(\x200.0\x20),\x20(\x201.0\x20-\x20fragCoordZ\x20)\x20*\x20darkness\x20);')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20';},this['depthMaterial']['depthTest']=![],this['depthMaterial']['depthWrite']=![],this['horizontalBlurMaterial']=new THREE['ShaderMaterial'](THREEAddons['HorizontalBlurShader']),this['horizontalBlurMaterial']['depthTest']=![],this['verticalBlurMaterial']=new THREE['ShaderMaterial'](THREEAddons['VerticalBlurShader']),this['verticalBlurMaterial']['depthTest']=![];}['initRenderTarget'](){const _0x2019ad=0x80;this['renderTarget']=new THREE['WebGLRenderTarget'](_0x2019ad,_0x2019ad),this['renderTarget']['texture']['generateMipmaps']=![],this['renderTargetBlur']=new THREE['WebGLRenderTarget'](_0x2019ad,_0x2019ad),this['renderTargetBlur']['texture']['generateMipmaps']=![];}['updateGroundShadow'](){var _0x121fbb,_0x5a1337,_0x3f1dbf;const _0xe43b15=this['viewer']['getBBox'](),_0x6f2962=new THREE['Group']();_0x6f2962['name']='ground-shadow',ObjectUtils['disableLayerChannels'](_0x6f2962,[LayerForSelectableObjects,LayerForSnapableObjects]),(_0x121fbb=this['scene'])===null||_0x121fbb===void 0x0?void 0x0:_0x121fbb['add'](_0x6f2962);const {min:_0x5c6108,max:_0x136f57}=_0xe43b15,_0x5dbadb=new THREE['Vector3']();_0xe43b15['getSize'](_0x5dbadb),_0x5dbadb['multiplyScalar'](0x2);const _0x2af732=new THREE['Vector3']();_0xe43b15['getCenter'](_0x2af732);const _0x5e3ab9=new THREE['PlaneGeometry'](_0x5dbadb['x'],_0x5dbadb['y']),_0x5e15a1=new THREE['MeshBasicMaterial']({'map':(_0x5a1337=this['renderTarget'])===null||_0x5a1337===void 0x0?void 0x0:_0x5a1337['texture'],'transparent':!![],'depthWrite':![]}),_0xda6f80=new THREE['Mesh'](_0x5e3ab9,_0x5e15a1);_0xda6f80['renderOrder']=0x1,_0xda6f80['position']['set'](_0x2af732['x'],_0x2af732['y'],_0x5c6108['z']),_0xda6f80['scale']['y']=-0x1,_0x6f2962===null||_0x6f2962===void 0x0?void 0x0:_0x6f2962['add'](_0xda6f80),this['shadowCamera']=new THREE['OrthographicCamera'](-_0x5dbadb['x']/0x2,_0x5dbadb['x']/0x2,_0x5dbadb['y']/0x2,-_0x5dbadb['y']/0x2,-_0x5dbadb['z']/0x2,_0x5dbadb['z']),this['shadowCamera']['position']['set'](_0x2af732['x'],_0x2af732['y'],_0x5c6108['z']),this['shadowCamera']['lookAt'](_0x2af732['x'],_0x2af732['y'],_0x136f57['z']),this['shadowCamera']['updateProjectionMatrix'](),_0x6f2962['add'](this['shadowCamera']);const _0x4e79f7=new THREE['Mesh'](_0x5e3ab9);_0x4e79f7['position']['set'](_0x2af732['x'],_0x2af732['y'],_0x5c6108['z']),_0x4e79f7['visible']=![],_0x6f2962['add'](_0x4e79f7),this['blurPlane']=_0x4e79f7,(_0x3f1dbf=this['shadowGroup'])===null||_0x3f1dbf===void 0x0?void 0x0:_0x3f1dbf['removeFromParent'](),this['shadowGroup']=_0x6f2962,this['shadowGroup']['updateWorldMatrix'](!![],!![]);}['blurShadow'](_0x5f2502){if(!this['renderer']||!this['blurPlane']||!this['renderTarget']||!this['renderTargetBlur']||!this['shadowCamera']||!this['horizontalBlurMaterial']||!this['verticalBlurMaterial'])return;this['blurPlane']['visible']=!![],this['blurPlane']['material']=this['horizontalBlurMaterial'],this['horizontalBlurMaterial']['uniforms']['tDiffuse']['value']=this['renderTarget']['texture'],this['horizontalBlurMaterial']['uniforms']['h']['value']=_0x5f2502*0x1/0x100,this['renderer']['setRenderTarget'](this['renderTargetBlur']),this['renderer']['render'](this['blurPlane'],this['shadowCamera']),this['blurPlane']['material']=this['verticalBlurMaterial'],this['verticalBlurMaterial']['uniforms']['tDiffuse']['value']=this['renderTargetBlur']['texture'],this['verticalBlurMaterial']['uniforms']['v']['value']=_0x5f2502*0x1/0x100,this['renderer']['setRenderTarget'](this['renderTarget']),this['renderer']['render'](this['blurPlane'],this['shadowCamera']),this['blurPlane']['visible']=![];}['render'](){if(!this['enabled'])return;if(!this['renderer']||!this['scene']||!this['renderTarget']||!this['shadowCamera']||!this['depthMaterial'])return;const _0x4b19b8=this['scene']['background'];this['scene']['background']=null,this['scene']['overrideMaterial']=this['depthMaterial'];const _0x3456bd=this['renderer']['getClearAlpha']();this['renderer']['setClearAlpha'](0x0),this['renderer']['setRenderTarget'](this['renderTarget']),this['renderer']['render'](this['scene'],this['shadowCamera']),this['scene']['overrideMaterial']=null;const _0x351968=this['cfg']['blur']||0x5;this['blurShadow'](_0x351968),this['blurShadow'](_0x351968*0.4),this['renderer']['setRenderTarget'](null),this['renderer']['setClearAlpha'](_0x3456bd),this['scene']['background']=_0x4b19b8;}['destroy'](){var _0x2222ca,_0x991cda,_0x12d8f3,_0x174eb8,_0x1c4e9e,_0xc30344,_0x4658f5;super['destroy'](),this['viewer']['removeEventListener'](ViewerEvent['ModelLoad'],this['onModelUpdate']),this['viewer']['removeEventListener'](ViewerEvent['BeforeRender'],this['onShadowRender']),(_0x2222ca=this['shadowCamera'])===null||_0x2222ca===void 0x0?void 0x0:_0x2222ca['removeFromParent'](),this['shadowCamera']=undefined,(_0x991cda=this['blurPlane'])===null||_0x991cda===void 0x0?void 0x0:_0x991cda['removeFromParent'](),this['blurPlane']=undefined,(_0x12d8f3=this['depthMaterial'])===null||_0x12d8f3===void 0x0?void 0x0:_0x12d8f3['dispose'](),this['depthMaterial']=undefined,(_0x174eb8=this['horizontalBlurMaterial'])===null||_0x174eb8===void 0x0?void 0x0:_0x174eb8['dispose'](),this['horizontalBlurMaterial']=undefined,(_0x1c4e9e=this['verticalBlurMaterial'])===null||_0x1c4e9e===void 0x0?void 0x0:_0x1c4e9e['dispose'](),this['verticalBlurMaterial']=undefined,(_0xc30344=this['renderTarget'])===null||_0xc30344===void 0x0?void 0x0:_0xc30344['dispose'](),this['renderTarget']=undefined,(_0x4658f5=this['renderTargetBlur'])===null||_0x4658f5===void 0x0?void 0x0:_0x4658f5['dispose'](),this['renderTargetBlur']=undefined;}}GroundShadowPlugin['DEFAULT_ID']='GroundShadowPlugin';
|
|
161
|
+
|
|
162
|
+
class HotpointPlugin extends Plugin{constructor(_0x5f3e8d){super(_0x5f3e8d,{'id':'HotpointPlugin'}),this['onAfterRender']=()=>{var _0x1f865c;const _0x315327=this['viewer']['scene'],_0x16ccd9=this['viewer']['camera'];if(!_0x315327||!_0x16ccd9||!this['hotpointRoot']||this['hotpointRoot']['children']['length']===0x0)return;(_0x1f865c=this['css2dRenderer'])===null||_0x1f865c===void 0x0?void 0x0:_0x1f865c['render'](_0x315327,_0x16ccd9);},this['css2dRenderer']=this['viewer']['getCssRender'](),this['viewer']['addEventListener'](ViewerEvent['AfterRender'],this['onAfterRender']);}['add'](_0x31c268){var _0x43b6ab;const _0x440942=this['has'](_0x31c268['hotpointId']);if(_0x440942){log['warn']('[Hotpoint]\x20Hotpoint\x20with\x20id\x20\x27'+_0x31c268['hotpointId']+'\x27\x20already\x20exist!');return;}const _0x5b20d2=_0x31c268['anchorPosition'],_0x46dec9=CSS2DObjectUtils['createHotpoint'](_0x31c268['html']);_0x46dec9['position']['set'](_0x5b20d2[0x0]||0x0,_0x5b20d2[0x1]||0x0,_0x5b20d2[0x2]||0x0),_0x46dec9['visible']=_0x31c268['visible']!==![],_0x46dec9['userData']['hotpoint']=_0x31c268,!this['hotpointRoot']&&(this['hotpointRoot']=new THREE['Group'](),this['hotpointRoot']['matrixAutoUpdate']=MatrixAutoUpdate,this['hotpointRoot']['matrixWorldAutoUpdate']=![],this['hotpointRoot']['name']='HotpointRoot',(_0x43b6ab=this['viewer']['scene'])===null||_0x43b6ab===void 0x0?void 0x0:_0x43b6ab['add'](this['hotpointRoot'])),this['hotpointRoot']['add'](_0x46dec9),_0x46dec9['updateWorldMatrix'](![],![]),this['viewer']['enableRender']();}['remove'](_0x55d32b){var _0x3e03cf,_0x4e202e;const _0x17cc1d=((_0x3e03cf=this['hotpointRoot'])===null||_0x3e03cf===void 0x0?void 0x0:_0x3e03cf['children'])||[];for(let _0x14b58a=0x0;_0x14b58a<_0x17cc1d['length'];++_0x14b58a){const _0x4104fe=_0x17cc1d[_0x14b58a];((_0x4e202e=_0x4104fe['userData']['hotpoint'])===null||_0x4e202e===void 0x0?void 0x0:_0x4e202e['hotpointId'])===_0x55d32b&&_0x4104fe['removeFromParent']();}}['clear'](){var _0x1379e4;(_0x1379e4=this['hotpointRoot'])===null||_0x1379e4===void 0x0?void 0x0:_0x1379e4['clear']();}['has'](_0x265f40){return !!this['findHotpointObject'](_0x265f40);}['move'](_0xc79820,_0x2c933e){const _0x2bce59=this['findHotpointObject'](_0xc79820);if(_0x2bce59){const _0x4a16ba=_0x2c933e['z']||0x0;_0x2bce59['position']['set'](_0x2c933e['x'],_0x2c933e['y'],_0x4a16ba),_0x2bce59['updateWorldMatrix'](![],![]),this['viewer']['enableRender']();}}['setVisible'](_0x42ccd0,_0x5c411a){const _0xad8b83=this['findHotpointObject'](_0x42ccd0);_0xad8b83&&(_0xad8b83['visible']=_0x5c411a);}['findHotpointObject'](_0x3e08c4){var _0x4ed4e2;const _0x4000c3=((_0x4ed4e2=this['hotpointRoot'])===null||_0x4ed4e2===void 0x0?void 0x0:_0x4ed4e2['children'])||[],_0x451c24=_0x4000c3['find'](_0x2bcbaf=>{var _0x2c8c58;return ((_0x2c8c58=_0x2bcbaf['userData']['hotpoint'])===null||_0x2c8c58===void 0x0?void 0x0:_0x2c8c58['hotpointId'])===_0x3e08c4;});return _0x451c24;}['flyToHotpoint'](_0x37e1ab){const _0x217647=this['findHotpointObject'](_0x37e1ab);if(!_0x217647)return;_0x217647['updateWorldMatrix'](![],![]);const _0xa84648=_0x217647['position'],_0x2609e0=this['viewer']['camera']['position'],_0x476bcf=new THREE['Vector3'](_0xa84648['x'],_0xa84648['y'],_0x2609e0['z']),_0x3bf4a2=new THREE['Vector3'](_0xa84648['x'],_0xa84648['y'],0x0);this['viewer']['flyTo'](_0x476bcf,_0x3bf4a2);}['destroy'](){super['destroy'](),this['clear']();}}
|
|
163
|
+
|
|
164
|
+
var css_248z$7 = ".drag-drop-zone{align-items:center;background:transparent;border:2px dashed #0a0;color:#0a0;display:none;font-size:1.5rem;height:100%;justify-content:center;pointer-events:none;position:absolute;top:0;transition:border-color .2s;width:100%}";
|
|
165
|
+
styleInject(css_248z$7);
|
|
166
|
+
|
|
167
|
+
var css_248z$6 = ".property.base-panel--embedded{border-left:1px solid rgba(0,0,0,.08);box-shadow:-4px 0 20px rgba(0,0,0,.055);box-sizing:border-box;height:100%;left:auto;max-height:100%;min-height:0;position:relative;right:auto;top:auto;width:100%;z-index:2}.property{border-radius:0;box-shadow:0 0 10px 0 rgba(0,0,0,.4);height:100%;max-height:100%;overflow:visible;resize:none;right:0;top:0;transition:transform .25s ease}.property .header{display:none!important}.property .content{background:linear-gradient(180deg,hsla(0,0%,100%,.72),hsla(0,0%,100%,.92));display:flex;flex-direction:column;height:100%;padding:6px}.property .content .prop-tabs-bar{align-items:flex-end;background:transparent;border-bottom:1px solid rgba(0,0,0,.078);color:rgba(0,0,0,.533);display:flex;gap:2px;margin:0 2px 8px;padding:0 0 6px}.property .content .prop-tabs-bar .prop-tab{align-items:center;border-radius:6px 6px 0 0;color:rgba(0,0,0,.549);cursor:pointer;display:inline-flex;flex:1;font-size:12px;font-weight:600;justify-content:center;min-height:30px;padding:4px 10px;transition:color .15s ease,background-color .15s ease,box-shadow .15s ease}.property .content .prop-tabs-bar .prop-tab:hover{background:rgba(64,150,255,.09);color:#4096ff}.property .content .prop-tabs-bar .active{background:hsla(0,0%,100%,.851);box-shadow:inset 0 -2px 0 #2c7be5;color:rgba(0,0,0,.871)}.property .content .prop-tabs-bar .disabled{color:rgba(0,0,0,.322);cursor:default}.property .content .prop-tabs-bar .disabled:hover{background:transparent;color:rgba(0,0,0,.322)}.property .content .prop-details{flex:1;min-height:0;overflow:auto;padding:4px}.property .content .prop-details .prop-warning{background:#fffbe6;border:1px solid #faad14;border-radius:6px;color:#8c6d1f;font-size:12px;line-height:1.4;margin-bottom:8px;padding:8px 10px}.property .content .prop-details .prop-form-row{align-items:center;display:flex;gap:10px;margin-bottom:8px}.property .content .prop-details .prop-form-select-wrap{align-items:stretch;display:flex;flex:1;min-width:0}.property .content .prop-details .prop-form-select-wrap>select.prop-input{flex:1 1 0%;min-width:0;width:100%}.property .content .prop-details .prop-label{color:rgba(0,0,0,.549);font-size:12px;width:64px}.property .content .prop-details .prop-input{background:#fff;border:1px solid rgba(0,0,0,.078);border-radius:4px;box-sizing:border-box;color:rgba(0,0,0,.851);flex:1;font-size:12px;min-width:0;padding:6px 8px;width:100%}.property .content .prop-details select.prop-input{text-align:left;text-align-last:left}.property .content .prop-details select.prop-input option{text-align:left}.property .content .prop-details select.prop-input.prop-material-slot-select{cursor:pointer;min-height:30px}.property .content .prop-details .prop-input--color{background:transparent;border:1px solid rgba(0,0,0,.15);border-radius:4px;box-sizing:border-box;cursor:pointer;flex:0 0 22px;height:22px;min-height:22px;min-width:22px;overflow:hidden;padding:0;transition:border-color .15s ease,box-shadow .15s ease;width:22px}.property .content .prop-details .prop-input--color::-webkit-color-swatch-wrapper{height:100%;padding:0;width:100%}.property .content .prop-details .prop-input--color::-webkit-color-swatch{border:none;border-radius:3px;height:100%;margin:0;width:100%}.property .content .prop-details .prop-input--color::-moz-color-swatch{border:none;border-radius:3px;height:100%;width:100%}.property .content .prop-details .prop-input--color:hover{border-color:#2c7be5;box-shadow:0 0 0 2px rgba(44,123,229,.15)}.property .content .prop-details .prop-input--color:focus-visible{outline:2px solid rgba(44,123,229,.45);outline-offset:1px}.property .content .prop-details .prop-material-readonly{color:rgba(0,0,0,.62);flex:1;font-size:11px;line-height:1.35;word-break:break-all}.property .content .prop-details .prop-material-tex-row{align-items:flex-start}.property .content .prop-details .prop-material-tex-row .prop-label{padding-top:4px}.property .content .prop-details .prop-material-tex-cell{display:flex;flex:1;flex-direction:column;gap:6px;min-width:0}.property .content .prop-details .prop-material-tex-thumb-wrap{align-items:center;display:flex;justify-content:flex-start;min-height:40px;min-width:0}.property .content .prop-details .prop-material-tex-thumb-wrap--empty{align-items:center;align-self:flex-start;background:repeating-conic-gradient(#f0f0f0 0 25%,#fff 0 50%) 50%/10px 10px;border:1px dashed rgba(0,0,0,.196);border-radius:5px;box-sizing:border-box;color:rgba(0,0,0,.259);justify-content:center;max-width:88px;min-height:64px;min-width:64px;padding:6px}.property .content .prop-details .prop-material-tex-thumb-empty{align-items:center;display:flex;flex:1;justify-content:center;line-height:0;min-height:0;pointer-events:none;user-select:none;width:100%}.property .content .prop-details .prop-material-tex-thumb{background:repeating-conic-gradient(#f0f0f0 0 25%,#fff 0 50%) 50%/12px 12px;border:1px solid rgba(0,0,0,.094);border-radius:4px;box-sizing:border-box;display:block;image-rendering:auto;max-height:88px;max-width:88px}.property .content .prop-details .prop-material-tex-placeholder{border:1px dashed rgba(0,0,0,.133);border-radius:4px;color:rgba(0,0,0,.478);font-size:11px;line-height:1.35;max-width:100%;padding:8px 10px}.property .content .prop-details .prop-material-tex-controls{border-top:1px solid rgba(0,0,0,.063);display:flex;flex-direction:column;gap:5px;margin-top:4px;padding-top:6px}.property .content .prop-details .prop-material-tex-controls .prop-vec3-field__slot{border-radius:3px}.property .content .prop-details .prop-material-tex-controls .prop-vec3-field__label{font-size:10px;padding:0 4px 0 5px}.property .content .prop-details .prop-material-tex-controls .prop-vec3-field__input{font-size:11px;padding:2px}.property .content .prop-details .prop-material-tex-controls .prop-vec3-field__slot--select .prop-vec3-field__select{font-size:11px;min-height:0;padding:3px 5px}.property .content .prop-details .prop-material-tex-controls__select{font-size:11px;min-height:24px;padding:3px 5px;text-align:left;text-align-last:left}.property .content .prop-details .prop-material-tex-controls__uvrow{align-items:stretch;display:flex;flex-wrap:wrap;gap:5px}.property .content .prop-details .prop-material-tex-controls__uvrow .prop-material-tex-link{align-self:center;flex:0 0 auto;height:24px;margin-bottom:0;width:24px}.property .content .prop-details .prop-material-tex-controls__uvrow--pair,.property .content .prop-details .prop-material-tex-controls__uvrow--repeat,.property .content .prop-details .prop-material-tex-controls__uvrow--rot{flex-wrap:nowrap}.property .content .prop-details .prop-material-tex-controls__uvrow--pair .prop-vec3-field__slot,.property .content .prop-details .prop-material-tex-controls__uvrow--repeat .prop-vec3-field__slot{box-sizing:border-box;flex:1 1 0;max-width:none;min-width:0}.property .content .prop-details .prop-material-tex-controls__uvrow--pair .prop-vec3-field__slot .prop-vec3-field__input,.property .content .prop-details .prop-material-tex-controls__uvrow--pair .prop-vec3-field__slot--select .prop-vec3-field__select,.property .content .prop-details .prop-material-tex-controls__uvrow--repeat .prop-vec3-field__slot .prop-vec3-field__input,.property .content .prop-details .prop-material-tex-controls__uvrow--repeat .prop-vec3-field__slot--select .prop-vec3-field__select{min-width:0}.property .content .prop-details .prop-material-tex-controls__uvrow--rot .prop-vec3-field__slot{box-sizing:border-box;flex:0 1 10.5rem;max-width:100%;min-width:0}.property .content .prop-details .prop-material-tex-controls__uvrow--rot .prop-vec3-field__slot .prop-vec3-field__input{min-width:0}.property .content .prop-details .prop-material-tex-controls__num{font-size:11px;min-height:28px;padding:4px 6px}.property .content .prop-details .prop-material-tex-link{align-items:center;background:#fff;border:1px solid rgba(0,0,0,.094);border-radius:4px;color:#2c7be5;cursor:pointer;display:inline-flex;flex:0 0 auto;height:24px;justify-content:center;margin-bottom:0;padding:0;transition:background-color .12s ease,border-color .12s ease,color .12s ease;width:24px}.property .content .prop-details .prop-material-tex-link:hover:not(:disabled){background:rgba(44,123,229,.08);border-color:rgba(44,123,229,.659)}.property .content .prop-details .prop-material-tex-link:disabled{cursor:default;opacity:.45}.property .content .prop-details .prop-material-tex-link.prop-material-tex-link--off{border-style:dashed;color:rgba(0,0,0,.271)}.property .content .prop-details .prop-material-tex-actions{align-items:center;display:flex;gap:6px}.property .content .prop-details .prop-material-tex-action-btn{align-items:center;background:#fff;border:1px solid rgba(0,0,0,.094);border-radius:4px;color:#555;cursor:pointer;display:inline-flex;height:28px;justify-content:center;padding:0;transition:background-color .12s ease,border-color .12s ease,color .12s ease;width:28px}.property .content .prop-details .prop-material-tex-action-btn:hover:not(:disabled){background:rgba(0,0,0,.05);border-color:rgba(0,0,0,.251);color:#222}.property .content .prop-details .prop-material-tex-action-btn:disabled{cursor:default;opacity:.4}.property .content .prop-details .prop-material-tex-action-btn--danger{color:#c53030}.property .content .prop-details .prop-material-tex-action-btn--danger:hover:not(:disabled){background:rgba(197,48,48,.08);border-color:rgba(197,48,48,.35);color:#c53030}.property .content .prop-details .prop-material-tex-settings{border-top:1px solid rgba(0,0,0,.031);display:flex;flex-direction:column;gap:4px;margin-top:4px;padding-top:6px}.property .content .prop-details .prop-material-tex-settings .prop-form-row{align-items:center;gap:6px;margin-bottom:0}.property .content .prop-details .prop-material-tex-settings .prop-form-row>.prop-label{flex:0 0 auto;min-width:3.25rem;white-space:nowrap;width:auto}.property .content .prop-details[data-tab=material] .prop-label{width:118px}.property .content .prop-details[data-tab=material] .prop-material-id-field{align-items:center;display:flex;flex:1;gap:6px;min-width:0}.property .content .prop-details[data-tab=material] .prop-material-id-field .prop-input{flex:1;min-width:0}.property .content .prop-details[data-tab=material] .prop-material-duplicate-btn{flex-shrink:0}.property .content .prop-details[data-tab=material] .prop-material-duplicate-btn:hover{color:#2c7be5}.property .content .prop-details[data-tab=material] .prop-material-duplicate-btn:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 4px rgba(44,123,229,.659)}.property .content .prop-details[data-tab=environment] .prop-label{flex:0 0 128px;white-space:nowrap;width:128px}.property .content .prop-details .prop-vec3-field{align-items:stretch;display:flex;gap:7px}.property .content .prop-details .prop-vec3-field__slot{align-items:stretch;background:#fff;border:1px solid rgba(0,0,0,.078);border-radius:4px;box-sizing:border-box;display:flex;flex:1;min-width:0;overflow:hidden;transition:border-color .12s ease,box-shadow .12s ease}.property .content .prop-details .prop-vec3-field__slot:focus-within{border-color:rgba(44,123,229,.659);box-shadow:0 0 0 1px rgba(44,123,229,.22)}.property .content .prop-details .prop-vec3-field__slot--select .prop-vec3-field__select{background:transparent;border:none;border-radius:0;box-sizing:border-box;color:rgba(0,0,0,.851);cursor:pointer;flex:1;font-family:inherit;font-size:12px;line-height:1.3;margin:0;min-width:0;padding:5px 6px;text-align:left;text-align-last:left;transition:background-color .12s ease}.property .content .prop-details .prop-vec3-field__slot--select .prop-vec3-field__select:focus{background:rgba(44,123,229,.09);outline:none}.property .content .prop-details .prop-vec3-field__label{align-items:center;background:rgba(0,0,0,.02);border-right:1px solid rgba(0,0,0,.059);color:rgba(0,0,0,.361);display:flex;flex-shrink:0;font-size:11px;font-weight:600;letter-spacing:.02em;line-height:1.15;padding:0 7px 0 8px;user-select:none}.property .content .prop-details .prop-vec3-field__input{background:transparent;border:none;border-radius:0;box-sizing:border-box;color:rgba(0,0,0,.851);flex:1;font-family:inherit;font-size:12px;font-variant-numeric:tabular-nums;line-height:1.3;margin:0;min-width:0;padding:5px 7px;transition:background-color .12s ease}.property .content .prop-details .prop-vec3-field__input:focus{background:rgba(44,123,229,.09);outline:none}.property .content .prop-details .prop-vec3-field__input::-webkit-inner-spin-button,.property .content .prop-details .prop-vec3-field__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.property .content .prop-details .prop-vec3-field__input[type=number]{appearance:textfield}.property .content .prop-details .prop-vec3-field--readonly .prop-vec3-field__slot:focus-within{border-color:rgba(0,0,0,.078);box-shadow:none}.property .content .prop-details .prop-vec3-field--readonly .prop-vec3-field__input{background:rgba(0,0,0,.016);color:rgba(0,0,0,.651);cursor:default}.property .content .prop-details .prop-vec3-field--readonly .prop-vec3-field__input:focus{background:rgba(0,0,0,.016)}.property .content .prop-details .prop-block{margin-bottom:10px}.property .content .prop-details .prop-block:last-child{margin-bottom:0}.property .content .prop-details .prop-node-section .prop-node-section__header{align-items:center;background:rgba(0,0,0,.024);border:none;border-radius:0;color:rgba(0,0,0,.871);cursor:pointer;display:flex;font:inherit;gap:6px;margin:0 0 6px;padding:4px 0;text-align:left;transition:background-color .12s ease;width:100%}.property .content .prop-details .prop-node-section .prop-node-section__header:hover{background:rgba(0,0,0,.024)}.property .content .prop-details .prop-node-section .prop-node-section__header:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 4px rgba(44,123,229,.659);outline:none}.property .content .prop-details .prop-node-section .prop-node-section__body{padding-left:10px}.property .content .prop-details .prop-node-section .prop-node-section__chevron{align-items:center;color:rgba(0,0,0,.451);display:flex;flex-shrink:0;height:16px;justify-content:center;transform:rotate(0deg);transition:transform .15s ease;width:16px}.property .content .prop-details .prop-node-section .prop-node-section__chevron svg{display:block}.property .content .prop-details .prop-node-section .prop-node-section__title{color:rgba(0,0,0,.871);font-size:12px;font-weight:600}.property .content .prop-details .prop-node-section.prop-node-section--collapsed .prop-node-section__body{display:none}.property .content .prop-details .prop-node-section.prop-node-section--collapsed .prop-node-section__header{margin-bottom:0}.property .content .prop-details .prop-node-section.prop-node-section--collapsed .prop-node-section__chevron{transform:rotate(-90deg)}.property .content .prop-details .prop-block-title{color:rgba(0,0,0,.871);font-size:12px;font-weight:600;margin-bottom:6px}.property .content .prop-details .prop-bbox-global-size-title{margin-top:12px}.property .content .prop-details .prop-meta{color:rgba(0,0,0,.851);font-size:12px;line-height:1.5}.property .content .prop-details .geometry-mesh-tools{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.property .content .prop-details .prop-mesh-tool-btn{background:#fafafa;border:1px solid #d9d9d9;border-radius:3px;color:rgba(0,0,0,.851);cursor:pointer;display:block;font-size:12px;line-height:1.4;padding:4px 8px;text-align:left;width:100%}.property .content .prop-details .prop-mesh-tool-btn:hover{background:#f0f7ff;border-color:#2c7be5;color:#2c7be5}.property .content .prop-details .prop-animation-list{color:rgba(0,0,0,.851);font-size:12px;line-height:1.5;margin:0;padding:0 0 0 16px}.property .content .prop-details .prop-animation-list__item{margin:2px 0}.property .content .prop-details .panel-empty--inline{font-size:12px;padding:4px 0}.property .content .prop-details .geometry-attributes{display:flex;flex-direction:column;gap:2px}.property .content .prop-details .prop-geo-row{align-items:center;color:rgba(0,0,0,.851);column-gap:8px;display:grid;font-size:12px;grid-template-columns:5.5em minmax(0,1fr) 22px 22px 22px;line-height:1.5;min-height:22px;width:100%}.property .content .prop-details .prop-geo-row__key{color:rgba(0,0,0,.651);flex-shrink:0}.property .content .prop-details .prop-geo-row__value{min-width:0;word-break:break-word}.property .content .prop-details .prop-geo-row__action{display:flex;justify-content:flex-end}.property .content .prop-details .prop-icon-btn{align-items:center;appearance:none;-webkit-appearance:none;background:#fff;border:1px solid transparent;border-radius:2px;box-shadow:none;box-sizing:border-box;color:rgba(0,0,0,.451);cursor:pointer;display:inline-flex;font:inherit;height:14px;justify-content:center;line-height:0;margin:0;outline:none;padding:0;transition:background-color .12s ease,border-color .12s ease,color .12s ease;vertical-align:middle;width:14px}.property .content .prop-details .prop-icon-btn:focus{outline:none}.property .content .prop-details .prop-icon-btn:focus-visible{box-shadow:0 0 0 2px #fff;outline:none}.property .content .prop-details .prop-icon-btn svg{border:none;box-shadow:none;display:block;flex-shrink:0;margin:0;outline:none;overflow:visible;padding:0}.property .content .prop-details .prop-uv-refresh-btn:hover{color:#2c7be5}.property .content .prop-details .prop-uv-refresh-btn:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 4px rgba(44,123,229,.659)}.property .content .prop-details .prop-uv-delete-btn:hover{background:#fff1f0;border-color:#ffa39e;color:#cf1322}.property .content .prop-details .prop-uv-delete-btn:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 4px rgba(207,19,34,.35)}.property .content .prop-details .prop-geo-duplicate-btn:hover,.property .content .prop-details .prop-geo-view-btn:hover{color:#2c7be5}.property .content .prop-details .prop-geo-duplicate-btn:focus-visible,.property .content .prop-details .prop-geo-view-btn:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 4px rgba(44,123,229,.659)}.property .content .prop-details .prop-section-content{padding-left:0}.property .content .prop-details .prop-node-mode-row{align-items:center;display:flex;flex-wrap:wrap;margin-bottom:10px}.property .content .prop-details .prop-segmented{background:rgba(0,0,0,.027);border:1px solid rgba(0,0,0,.071);border-radius:4px;box-sizing:border-box;display:inline-flex;gap:2px;padding:3px}.property .content .prop-details .prop-segmented__btn{background:transparent;border:none;border-radius:4px;color:rgba(0,0,0,.451);cursor:pointer;font-family:inherit;font-size:12px;font-weight:600;line-height:1.25;margin:0;min-width:4.75rem;padding:6px 20px;position:relative;transition:background-color .15s ease,color .15s ease,box-shadow .15s ease}.property .content .prop-details .prop-segmented__btn:hover:not(.active){background:rgba(0,0,0,.024);color:rgba(0,0,0,.749)}.property .content .prop-details .prop-segmented__btn:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 4px rgba(44,123,229,.659);outline:none;z-index:1}.property .content .prop-details .prop-segmented__btn.active{background:#2c7be5;box-shadow:0 1px 2px rgba(44,123,229,.35);color:#fff}.property .content .prop-details .prop-input--readonly{background:rgba(0,0,0,.016);color:rgba(0,0,0,.651);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace}.property .content .prop-details .prop-check-row{color:rgba(0,0,0,.851);font-size:13px;margin-bottom:6px}.property .content .prop-details .prop-check-row label{align-items:center;cursor:pointer;display:inline-flex;gap:6px}.property .content .prop-details .prop-check-row input[type=checkbox],.property .content .prop-details .prop-table-editor--checkbox{accent-color:#2c7be5;background:transparent;border:none;box-shadow:none;cursor:pointer;flex:0 0 auto;height:14px;margin:0;min-width:14px;padding:0;transition:none;width:14px}.property .content .prop-details .prop-check-row input[type=checkbox]:hover,.property .content .prop-details .prop-table-editor--checkbox:hover{border-color:transparent;box-shadow:none;color:inherit}.property .content .prop-details .prop-check-row input[type=checkbox]:focus-visible,.property .content .prop-details .prop-table-editor--checkbox:focus-visible{outline:2px solid rgba(44,123,229,.45);outline-offset:2px}.property .content .prop-details .prop-table{border-collapse:collapse;font-size:12px;width:100%}.property .content .prop-details .prop-table-key,.property .content .prop-details .prop-table-value{border-bottom:1px solid rgba(0,0,0,.059);padding:6px 8px;vertical-align:middle}.property .content .prop-details .prop-table-key{color:rgba(0,0,0,.651);font-weight:600;width:36%}.property .content .prop-details .prop-table-value{color:rgba(0,0,0,.851);word-break:break-word}.property .content .prop-details .prop-table-editor{width:100%}.property .content .prop-details .prop-table-value-inner{align-items:center;display:flex;gap:6px}.property .content .prop-details .prop-property-delete-btn{flex-shrink:0;margin-top:0}.property .content .prop-details .prop-table-row--json .prop-table-key,.property .content .prop-details .prop-table-row--json .prop-table-value{vertical-align:top}.property .content .prop-details .prop-table-row--json .prop-table-value-inner{align-items:flex-start}.property .content .prop-details .prop-table-editor--checkbox{margin:2px 0;width:16px}.property .content .prop-details .prop-table-editor--json{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;line-height:1.35;min-height:28px;overflow:auto;resize:vertical;scrollbar-width:thin;white-space:pre}.property .content .prop-details .prop-table-editor--json::-webkit-scrollbar{height:8px;width:8px}.property .content .prop-details .prop-table-editor--json::-webkit-scrollbar-thumb{background:rgba(0,0,0,.212);background-clip:content-box;border:2px solid transparent;border-radius:6px}.property .content .prop-details .prop-table-editor--json::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.322);background-clip:content-box}.property .content .prop-details .prop-table-editor--json::-webkit-scrollbar-track{background:transparent}.property .content .prop-details .prop-table-editor--readonly-text{background:rgba(0,0,0,.008);border:1px solid rgba(0,0,0,.078);border-radius:4px;line-height:1.35;padding:6px 8px}.property .content .prop-details .prop-table-editor.is-invalid{border-color:#ff4d4f;box-shadow:0 0 0 1px rgba(255,77,79,.2)}.property .content .prop-details .prop-property-add-row{display:flex;flex-direction:column;gap:6px;padding:10px 8px 4px}.property .content .prop-details .prop-property-add-controls{align-items:center;display:flex;gap:8px;justify-content:flex-end;width:100%}.property .content .prop-details .prop-property-name-input{flex:1;min-width:0}.property .content .prop-details .prop-property-add-error{color:#cf1322;font-size:12px;line-height:1.35;width:100%}.property .content .prop-details .prop-property-type-select{max-width:100%;text-align:left;width:140px}.property .content .prop-details .prop-property-type-select option{text-align:left}.property .content .prop-details .prop-property-add-btn{background:rgba(44,123,229,.05);border-color:rgba(44,123,229,.29);color:#2c7be5}.property .content .prop-details .prop-property-add-btn:hover{background:rgba(44,123,229,.1);border-color:rgba(44,123,229,.478);color:#1d66c6}";
|
|
168
|
+
styleInject(css_248z$6);
|
|
169
|
+
|
|
170
|
+
const en$5={'property':'Property','tabMaterial':'Material','tabNode':'Node','nothingSelected':'Nothing\x20selected','propertyNoUserData':'No\x20userData\x20on\x20this\x20object','propertyNoneVisible':'No\x20properties\x20to\x20show','propertyAddNameRequired':'Enter\x20a\x20property\x20name.','propertyAddNameDuplicate':'A\x20property\x20with\x20this\x20name\x20already\x20exists.','duplicateMaterial':'Duplicate\x20material','duplicateGeometry':'Duplicate\x20geometry','recalculateNormalsOutside':'Recalculate\x20normals\x20(outside)','recalculateNormalsInside':'Recalculate\x20normals\x20(inside)','regenerateSmartUv':'Regenerate\x20smart\x20UV','meshTools':'Mesh\x20tools','applyTransform':'Apply\x20transform','flipFaces':'Flip\x20faces','flipNormals':'Flip\x20normals','generateTangents':'Generate\x20tangents','originToGeometryCenter':'Origin\x20to\x20geometry\x20center','geometryCenterToOrigin':'Geometry\x20center\x20to\x20origin','originToGeometryBottom':'Origin\x20to\x20geometry\x20bottom','geometryBottomToOrigin':'Geometry\x20bottom\x20to\x20origin','exposure':'Exposure','toneMapping':'Tone\x20mapping','background':'Background','skyWhite':'White','skyBlack':'Black','skyGray':'Gray','skyGradient1':'Gradient\x20blue-gray','environmentMap':'Environment\x20(IBL)','envDefault':'Default','envCity':'City\x20street','envGrass':'Grass','envSunset':'Sunset','animations':'Animations','noAnimations':'No\x20animation\x20clips\x20in\x20loaded\x20model','tabEnvironment':'Environment'};const zh$5={'property':'属性','tabMaterial':'材质','tabNode':'节点','nothingSelected':'未选择对象','propertyNoUserData':'该对象没有\x20userData','propertyNoneVisible':'没有可显示的属性','propertyAddNameRequired':'请输入属性名。','propertyAddNameDuplicate':'已存在同名属性。','duplicateMaterial':'复制材质','duplicateGeometry':'复制几何体','recalculateNormalsOutside':'重新计算法线(朝外)','recalculateNormalsInside':'重新计算法线(朝内)','regenerateSmartUv':'重新生成智能\x20UV','meshTools':'网格工具','applyTransform':'应用变换','flipFaces':'翻转面','flipNormals':'翻转法线','generateTangents':'生成切线','originToGeometryCenter':'原点到几何中心','geometryCenterToOrigin':'几何中心到原点','originToGeometryBottom':'原点到几何底部','geometryBottomToOrigin':'几何底部到原点','exposure':'曝光','toneMapping':'色调映射','background':'背景','skyWhite':'白色','skyBlack':'黑色','skyGray':'灰色','skyGradient1':'蓝灰渐变','environmentMap':'环境光\x20(IBL)','envDefault':'默认','envCity':'城市街道','envGrass':'草地','envSunset':'日落','animations':'动画','noAnimations':'已加载模型中无动画片段','tabEnvironment':'环境'};const PROPERTY_I18N_NAMESPACE='property';registerViewerI18nNamespace(PROPERTY_I18N_NAMESPACE,{'en':en$5,'zh':zh$5});function t$5(_0x550d69){return i18n['t'](_0x550d69,{'ns':PROPERTY_I18N_NAMESPACE});}
|
|
171
|
+
|
|
172
|
+
const PROPERTY_ICON_DELETE_TRASH='<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2214\x22\x20height=\x2214\x22\x20aria-hidden=\x22true\x22><path\x20d=\x22M19\x207l-1\x2012a2\x202\x200\x2001-2\x202H8a2\x202\x200\x2001-2-2L5\x207m5-3V4a1\x201\x200\x20011-1h4a1\x201\x200\x20011\x201v0M3\x207h18\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22/><path\x20d=\x22M10\x2011v5M14\x2011v5\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22/></svg>';const PROPERTY_ICON_ADD_PLUS='<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2214\x22\x20height=\x2214\x22\x20aria-hidden=\x22true\x22><path\x20d=\x22M12\x205v14M5\x2012h14\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22/></svg>';const PROPERTY_ICON_UV_REFRESH='<svg\x20viewBox=\x220\x200\x201024\x201024\x22\x20width=\x2214\x22\x20height=\x2214\x22\x20aria-hidden=\x22true\x22><path\x20fill=\x22currentColor\x22\x20d=\x22M783.568\x20328C724.571\x20241.095\x20624.953\x20184\x20512\x20184c-181.15\x200-328\x20146.85-328\x20328h-72c0-220.914\x20179.086-400\x20400-400\x20135.738\x200\x20255.685\x2067.611\x20328\x20170.994V128c0-8.837\x207.163-16\x2016-16h48a8\x208\x200\x200\x201\x208\x208v248c0\x2017.673-14.327\x2032-32\x2032H632a8\x208\x200\x200\x201-8-8v-48c0-8.837\x207.163-16\x2016-16h143.568zM240.432\x20696C299.429\x20782.905\x20399.047\x20840\x20512\x20840c181.15\x200\x20328-146.85\x20328-328h72c0\x20220.914-179.086\x20400-400\x20400-135.738\x200-255.685-67.611-328-170.994V896c0\x208.837-7.163\x2016-16\x2016h-48a8\x208\x200\x200\x201-8-8V656c0-17.673\x2014.327-32\x2032-32h248a8\x208\x200\x200\x201\x208\x208v48c0\x208.837-7.163\x2016-16\x2016H240.432z\x22/></svg>';const PROPERTY_ICON_VIEW_EYE='<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2214\x22\x20height=\x2214\x22\x20aria-hidden=\x22true\x22><path\x20d=\x22M2\x2012s3.5-7\x2010-7\x2010\x207\x2010\x207-3.5\x207-10\x207-10-7-10-7z\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22/><circle\x20cx=\x2212\x22\x20cy=\x2212\x22\x20r=\x223\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22/></svg>';const PROPERTY_ICON_DUPLICATE='<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2214\x22\x20height=\x2214\x22\x20aria-hidden=\x22true\x22><rect\x20x=\x229\x22\x20y=\x229\x22\x20width=\x2211\x22\x20height=\x2211\x22\x20rx=\x221\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22/><path\x20d=\x22M5\x2015H4a2\x202\x200\x2001-2-2V4a2\x202\x200\x20012-2h9a2\x202\x200\x20012\x202v1\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22/></svg>';function createFormInputRow(_0x44a0d6,_0x5d2be5){const _0x1f120f=document['createElement']('div');_0x1f120f['className']='prop-form-row';const _0x56f4bc=document['createElement']('label');_0x56f4bc['className']='prop-label',_0x56f4bc['textContent']=_0x44a0d6,_0x1f120f['appendChild'](_0x56f4bc);if(_0x5d2be5 instanceof HTMLSelectElement){const _0x37b686=document['createElement']('div');_0x37b686['className']='prop-form-select-wrap',_0x37b686['appendChild'](_0x5d2be5),_0x1f120f['appendChild'](_0x37b686);}else _0x1f120f['appendChild'](_0x5d2be5);return _0x1f120f;}function createCheckRow(_0x5dfb97,_0x3fd33d){const _0x2afe47=document['createElement']('div');_0x2afe47['className']='prop-check-row';const _0xe8947c=document['createElement']('label');return _0xe8947c['appendChild'](_0x3fd33d),_0xe8947c['appendChild'](document['createTextNode']('\x20'+_0x5dfb97)),_0x2afe47['appendChild'](_0xe8947c),_0x2afe47;}function createCollapsibleNodeSection(_0x309c78,_0x4ef1c4,_0x595b85){const _0x3fab77=document['createElement']('div');_0x3fab77['className']='prop-node-section\x20prop-block';(_0x595b85===null||_0x595b85===void 0x0?void 0x0:_0x595b85['initiallyHidden'])&&(_0x3fab77['style']['display']='none');const _0x5b4ed2=document['createElement']('button');_0x5b4ed2['type']='button',_0x5b4ed2['className']='prop-node-section__header';const _0x242b59=document['createElement']('span');_0x242b59['className']='prop-node-section__chevron',_0x242b59['setAttribute']('aria-hidden','true'),_0x242b59['innerHTML']='<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2214\x22\x20height=\x2214\x22\x20aria-hidden=\x22true\x22><path\x20d=\x22M6\x209l6\x206\x206-6\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22/></svg>';const _0x52b296=document['createElement']('span');_0x52b296['className']='prop-node-section__title',_0x52b296['textContent']=_0x4ef1c4,_0x5b4ed2['appendChild'](_0x242b59),_0x5b4ed2['appendChild'](_0x52b296);const _0x4db317=document['createElement']('div');_0x4db317['className']='prop-node-section__body';let _0x10df87=(_0x595b85===null||_0x595b85===void 0x0?void 0x0:_0x595b85['defaultCollapsed'])!==!![];const _0x477d12=()=>{_0x3fab77['classList']['toggle']('prop-node-section--collapsed',!_0x10df87),_0x5b4ed2['setAttribute']('aria-expanded',_0x10df87?'true':'false');};return _0x477d12(),_0x5b4ed2['addEventListener']('click',_0x5e038c=>{_0x5e038c['stopPropagation'](),_0x10df87=!_0x10df87,_0x477d12();}),_0x3fab77['appendChild'](_0x5b4ed2),_0x3fab77['appendChild'](_0x4db317),_0x309c78['appendChild'](_0x3fab77),{'section':_0x3fab77,'body':_0x4db317};}function createIconActionButton(_0x28e320){const _0x1d3761=document['createElement']('button');return _0x1d3761['type']='button',_0x1d3761['className']='prop-icon-btn\x20'+_0x28e320['className'],_0x1d3761['title']=_0x28e320['title'],_0x1d3761['innerHTML']=_0x28e320['svg'],_0x1d3761;}function escapeHtml(_0x628724){return _0x628724['replace'](/&/g,'&')['replace'](/</g,'<')['replace'](/>/g,'>')['replace'](/"/g,'"');}function getCenteredPopupFeatures(_0x45e035,_0x2829d6){var _0x3d70af,_0x559647,_0x5a19ae,_0x4e816b;const _0x216595=(_0x559647=(_0x3d70af=window['screenLeft'])!==null&&_0x3d70af!==void 0x0?_0x3d70af:window['screenX'])!==null&&_0x559647!==void 0x0?_0x559647:0x0,_0xbb3028=(_0x4e816b=(_0x5a19ae=window['screenTop'])!==null&&_0x5a19ae!==void 0x0?_0x5a19ae:window['screenY'])!==null&&_0x4e816b!==void 0x0?_0x4e816b:0x0,_0x208266=Math['round'](_0x216595+Math['max'](0x0,(window['outerWidth']-_0x45e035)/0x2)),_0x264272=Math['round'](_0xbb3028+Math['max'](0x0,(window['outerHeight']-_0x2829d6)/0x2));return 'width='+_0x45e035+',height='+_0x2829d6+',left='+_0x208266+',top='+_0x264272;}function openGeometryDataViewer(_0x1fbf84,_0x2733a3){const _0x1e639d=_0x2733a3['trim']()['length']>0x0?_0x2733a3:'(empty)',_0x429488=0x208,_0x2aeb99=0x2d0,_0x5b0b26='<!DOCTYPE\x20html>\x0a<html\x20lang=\x22en\x22>\x0a<head>\x0a<meta\x20charset=\x22utf-8\x22>\x0a<title>'+escapeHtml(_0x1fbf84)+'</title>\x0a<style>\x0ahtml,body{margin:0;padding:0;height:100%;background:#fff;color:#111;font:12px/1.4\x20ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;}\x0apre{margin:0;padding:8px;white-space:pre;overflow:auto;height:100%;box-sizing:border-box;}\x0a</style>\x0a</head>\x0a<body><pre>'+escapeHtml(_0x1e639d)+'</pre></body>\x0a</html>',_0x276567=window['open']('about:blank','_blank',getCenteredPopupFeatures(_0x429488,_0x2aeb99));_0x276567&&(_0x276567['document']['open'](),_0x276567['document']['write'](_0x5b0b26),_0x276567['document']['close']());}function createDefaultPropertyValue(_0x3784e3){if(_0x3784e3==='number')return 0x0;if(_0x3784e3==='boolean')return ![];if(_0x3784e3==='json')return {};return '';}
|
|
173
|
+
|
|
174
|
+
function collectAnimations(_0x6f57bd,_0x35ea07){var _0x395aa6,_0x201bbd,_0x12b175;const _0x30027a=[],_0x51416e=new Set(),_0xb3e246=_0x2a4930=>{var _0x320f77;const _0x22adeb=(_0x320f77=_0x2a4930['userData'])===null||_0x320f77===void 0x0?void 0x0:_0x320f77['gltfAnimations'];if(!Array['isArray'](_0x22adeb))return;for(const _0x2c496d of _0x22adeb){const _0x18eb3f=_0x2c496d['name']+':'+_0x2c496d['duration'];!_0x51416e['has'](_0x18eb3f)&&(_0x51416e['add'](_0x18eb3f),_0x30027a['push'](_0x2c496d));}};if(_0x35ea07){let _0x40cf2d=_0x35ea07;while(_0x40cf2d===null||_0x40cf2d===void 0x0?void 0x0:_0x40cf2d['parent']){if(((_0x395aa6=_0x40cf2d['userData'])===null||_0x395aa6===void 0x0?void 0x0:_0x395aa6['modelId'])!==undefined)break;_0x40cf2d=_0x40cf2d['parent'];}_0x40cf2d&&_0xb3e246(_0x40cf2d);}if(_0x30027a['length']===0x0)for(const _0x14d607 of _0x6f57bd['loadedModels']){const _0x3bcba0=(_0x12b175=(_0x201bbd=_0x14d607)['getModelObject'])===null||_0x12b175===void 0x0?void 0x0:_0x12b175['call'](_0x201bbd);_0x3bcba0&&_0xb3e246(_0x3bcba0);}return _0x30027a;}function appendAnimationSection(_0x48469d,_0x5361bf,_0x479cbf){const _0x42bed5=collectAnimations(_0x5361bf,_0x479cbf),{body:_0x10beb7}=createCollapsibleNodeSection(_0x48469d,t$5('animations'),{'defaultCollapsed':!![]});if(_0x42bed5['length']===0x0){const _0x3883f4=document['createElement']('div');_0x3883f4['className']='panel-empty\x20panel-empty--inline',_0x3883f4['textContent']=t$5('noAnimations'),_0x10beb7['appendChild'](_0x3883f4);}else {const _0x24d8f7=document['createElement']('ul');_0x24d8f7['className']='prop-animation-list';for(const _0x4c1cee of _0x42bed5){const _0x38ed69=document['createElement']('li');_0x38ed69['className']='prop-animation-list__item',_0x38ed69['textContent']=_0x4c1cee['name']+'\x20('+_0x4c1cee['duration']['toFixed'](0x2)+'s,\x20'+_0x4c1cee['trackCount']+'\x20tracks)',_0x24d8f7['appendChild'](_0x38ed69);}_0x10beb7['appendChild'](_0x24d8f7);}}
|
|
175
|
+
|
|
176
|
+
function createNumberInput$1(_0x1b906c,_0xadc5b0){const _0x48170d=document['createElement']('input');return _0x48170d['type']='number',_0x48170d['className']='prop-input\x20prop-input--text',_0x48170d['step']='any',_0x48170d['value']=String(_0x1b906c),_0x48170d['addEventListener']('change',()=>{_0xadc5b0(Number['parseFloat'](_0x48170d['value'])||_0x1b906c);}),_0x48170d;}function appendCameraEditor(_0x301fcf,_0x3b9a34,_0x69cdd1){const _0x52abf2=document['createElement']('div');_0x52abf2['className']='prop-block';const _0x5e7262=document['createElement']('div');_0x5e7262['className']='prop-block-title',_0x5e7262['textContent']='Camera',_0x52abf2['appendChild'](_0x5e7262);const _0x121751=document['createElement']('input');_0x121751['type']='text',_0x121751['className']='prop-input\x20prop-input--text\x20prop-input--readonly',_0x121751['readOnly']=!![],_0x121751['value']=_0x3b9a34['type'],_0x52abf2['appendChild'](createFormInputRow('Type',_0x121751));const _0x26606e=()=>{(_0x3b9a34 instanceof THREE['PerspectiveCamera']||_0x3b9a34 instanceof THREE['OrthographicCamera'])&&_0x3b9a34['updateProjectionMatrix'](),_0x69cdd1();};if(_0x3b9a34 instanceof THREE['PerspectiveCamera'])_0x52abf2['appendChild'](createFormInputRow('FOV',createNumberInput$1(_0x3b9a34['fov'],_0x77227d=>{_0x3b9a34['fov']=_0x77227d,_0x26606e();}))),_0x52abf2['appendChild'](createFormInputRow('Near',createNumberInput$1(_0x3b9a34['near'],_0x2b803b=>{_0x3b9a34['near']=_0x2b803b,_0x26606e();}))),_0x52abf2['appendChild'](createFormInputRow('Far',createNumberInput$1(_0x3b9a34['far'],_0x2249db=>{_0x3b9a34['far']=_0x2249db,_0x26606e();})));else {if(_0x3b9a34 instanceof THREE['OrthographicCamera'])for(const _0x1e711a of ['left','right','top','bottom','near','far']){_0x52abf2['appendChild'](createFormInputRow(_0x1e711a,createNumberInput$1(_0x3b9a34[_0x1e711a],_0x3a51b3=>{_0x3b9a34[_0x1e711a]=_0x3a51b3,_0x26606e();})));}}_0x301fcf['appendChild'](_0x52abf2);}
|
|
177
|
+
|
|
178
|
+
const TONE_MAPPING_OPTIONS=[{'value':THREE['NoToneMapping'],'label':'None'},{'value':THREE['LinearToneMapping'],'label':'Linear'},{'value':THREE['ReinhardToneMapping'],'label':'Reinhard'},{'value':THREE['CineonToneMapping'],'label':'Cineon'},{'value':THREE['ACESFilmicToneMapping'],'label':'ACES\x20Filmic'}];function ensureToneMappingForExposure(_0x45548b){_0x45548b['toneMapping']===THREE['NoToneMapping']&&(_0x45548b['toneMapping']=THREE['ACESFilmicToneMapping']);}function applyExposure(_0xde19ce,_0x17ecaa,_0x5035f6,_0x2603ea){const _0x30adec=_0xde19ce['toneMapping'];ensureToneMappingForExposure(_0xde19ce),_0x2603ea&&_0x30adec===THREE['NoToneMapping']&&(_0x2603ea['value']=String(_0xde19ce['toneMapping'])),_0xde19ce['toneMappingExposure']=_0x5035f6,_0x17ecaa['enableRender']();}function renderEnvironmentPanel(_0x2ab6da,_0x126551){_0x2ab6da['replaceChildren']();const _0x5d54e4=_0x126551['renderer'],_0x2e90b6=document['createElement']('select');_0x2e90b6['className']='prop-input\x20prop-input--select';for(const _0xe86fef of TONE_MAPPING_OPTIONS){const _0x2ec9d8=document['createElement']('option');_0x2ec9d8['value']=String(_0xe86fef['value']),_0x2ec9d8['textContent']=_0xe86fef['label'],_0x5d54e4['toneMapping']===_0xe86fef['value']&&(_0x2ec9d8['selected']=!![]),_0x2e90b6['appendChild'](_0x2ec9d8);}_0x2e90b6['addEventListener']('change',()=>{_0x5d54e4['toneMapping']=Number['parseInt'](_0x2e90b6['value'],0xa),_0x126551['enableRender']();});const _0xda9cee=document['createElement']('input');_0xda9cee['type']='number',_0xda9cee['className']='prop-input\x20prop-input--text',_0xda9cee['step']='any',_0xda9cee['min']='0',_0xda9cee['value']=String(_0x5d54e4['toneMappingExposure']);const _0x1e8758=()=>{const _0x2253e4=Number['parseFloat'](_0xda9cee['value']);applyExposure(_0x5d54e4,_0x126551,Number['isFinite'](_0x2253e4)?_0x2253e4:_0x5d54e4['toneMappingExposure'],_0x2e90b6);};_0xda9cee['addEventListener']('input',_0x1e8758),_0xda9cee['addEventListener']('change',_0x1e8758),_0x2ab6da['appendChild'](createFormInputRow(t$5('exposure'),_0xda9cee)),_0x2ab6da['appendChild'](createFormInputRow(t$5('toneMapping'),_0x2e90b6));const _0x403043=document['createElement']('select');_0x403043['className']='prop-input\x20prop-input--select';for(const [_0x5c7b89,_0x11e771]of [['default',t$5('envDefault')],['city',t$5('envCity')],['footprint',t$5('envGrass')],['sunset',t$5('envSunset')]]){const _0x5d1487=document['createElement']('option');_0x5d1487['value']=_0x5c7b89,_0x5d1487['textContent']=_0x11e771,_0x403043['appendChild'](_0x5d1487);}_0x403043['addEventListener']('change',()=>{const _0x2f81c7=_0x403043['value'];if(_0x2f81c7==='default')_0x126551['setEnvironmentData']();else {if(_0x2f81c7==='city')_0x126551['setEnvironment']('/demo/images/envmap/city_street_256.hdr');else {if(_0x2f81c7==='footprint')_0x126551['setEnvironment']('/demo/images/envmap/footprint_court_2k.hdr');else _0x2f81c7==='sunset'&&_0x126551['setEnvironment']('/demo/images/envmap/venice_sunset_1k.hdr');}}}),_0x2ab6da['appendChild'](createFormInputRow(t$5('environmentMap'),_0x403043));const _0x488428=_0x126551['findPlugin']('SkyboxPlugin');if(_0x488428===null||_0x488428===void 0x0?void 0x0:_0x488428['setSkyboxByColor']){const _0x2c0d93=document['createElement']('select');_0x2c0d93['className']='prop-input\x20prop-input--select';for(const [_0x405fde,_0x691c0e]of [['white',t$5('skyWhite')],['black',t$5('skyBlack')],['gray',t$5('skyGray')],['gradientBlueGray',t$5('skyGradient1')]]){const _0x4d20e7=document['createElement']('option');_0x4d20e7['value']=_0x405fde,_0x4d20e7['textContent']=_0x691c0e,_0x2c0d93['appendChild'](_0x4d20e7);}_0x2c0d93['addEventListener']('change',()=>{_0x488428['setEnabled'](!![]);const _0x130920=_0x2c0d93['value'];if(_0x130920==='white')_0x488428['setSkyboxByColor']([0x1,0x1,0x1]);else {if(_0x130920==='black')_0x488428['setSkyboxByColor']([0x0,0x0,0x0]);else {if(_0x130920==='gray')_0x488428['setSkyboxByColor']([0.16,0.17,0.18]);else _0x130920==='gradientBlueGray'&&_0x488428['setSkyboxByGradientColors']([0.52,0.71,0.96],[0x1,0x1,0x1],[0.6,0.6,0.6]);}}_0x126551['enableRender']();}),_0x2ab6da['appendChild'](createFormInputRow(t$5('background'),_0x2c0d93));}}
|
|
179
|
+
|
|
180
|
+
function createNumberInput(_0x4aa89d,_0x8583f2){const _0x247011=document['createElement']('input');return _0x247011['type']='number',_0x247011['className']='prop-input\x20prop-input--text',_0x247011['step']='any',_0x247011['value']=String(_0x4aa89d),_0x247011['addEventListener']('change',()=>{_0x8583f2(Number['parseFloat'](_0x247011['value'])||_0x4aa89d);}),_0x247011;}function appendLightEditor(_0x573d6b,_0x981b9d,_0x49c9ff){const _0x4c0a5d=document['createElement']('div');_0x4c0a5d['className']='prop-block';const _0x2bf071=document['createElement']('div');_0x2bf071['className']='prop-block-title',_0x2bf071['textContent']='Light',_0x4c0a5d['appendChild'](_0x2bf071);const _0x4a75a4=document['createElement']('input');_0x4a75a4['type']='text',_0x4a75a4['className']='prop-input\x20prop-input--text\x20prop-input--readonly',_0x4a75a4['readOnly']=!![],_0x4a75a4['value']=_0x981b9d['type'],_0x4c0a5d['appendChild'](createFormInputRow('Type',_0x4a75a4));const _0x3c15d2=()=>_0x49c9ff();_0x4c0a5d['appendChild'](createFormInputRow('Intensity',createNumberInput(_0x981b9d['intensity'],_0x2e2b6c=>{_0x981b9d['intensity']=_0x2e2b6c,_0x3c15d2();})));const _0x1170dd=document['createElement']('input');_0x1170dd['type']='color',_0x1170dd['className']='prop-input\x20prop-input--color',_0x1170dd['value']='#'+_0x981b9d['color']['getHexString'](),_0x1170dd['addEventListener']('input',()=>{_0x981b9d['color']['set'](_0x1170dd['value']),_0x3c15d2();}),_0x4c0a5d['appendChild'](createFormInputRow('Color',_0x1170dd));if(_0x981b9d instanceof THREE['DirectionalLight']||_0x981b9d instanceof THREE['SpotLight']){const _0x383c13=document['createElement']('div');_0x383c13['className']='prop-check-row';const _0x107b1b=document['createElement']('label'),_0x352683=document['createElement']('input');_0x352683['type']='checkbox',_0x352683['checked']=_0x981b9d['castShadow'],_0x352683['addEventListener']('change',()=>{_0x981b9d['castShadow']=_0x352683['checked'],_0x3c15d2();}),_0x107b1b['append'](_0x352683,document['createTextNode']('\x20Cast\x20shadow')),_0x383c13['appendChild'](_0x107b1b),_0x4c0a5d['appendChild'](_0x383c13);}(_0x981b9d instanceof THREE['PointLight']||_0x981b9d instanceof THREE['SpotLight'])&&_0x4c0a5d['appendChild'](createFormInputRow('Distance',createNumberInput(_0x981b9d['distance'],_0xcacc80=>{_0x981b9d['distance']=_0xcacc80,_0x3c15d2();}))),_0x981b9d instanceof THREE['SpotLight']&&(_0x4c0a5d['appendChild'](createFormInputRow('Angle\x20(deg)',createNumberInput(THREE['MathUtils']['radToDeg'](_0x981b9d['angle']),_0x514ad8=>{_0x981b9d['angle']=THREE['MathUtils']['degToRad'](_0x514ad8),_0x3c15d2();}))),_0x4c0a5d['appendChild'](createFormInputRow('Penumbra',createNumberInput(_0x981b9d['penumbra'],_0x395aea=>{_0x981b9d['penumbra']=_0x395aea,_0x3c15d2();})))),_0x573d6b['appendChild'](_0x4c0a5d);}
|
|
181
|
+
|
|
182
|
+
function createVec3StyleSlot(_0x7084cc,_0x1db2c0){const _0x1f8007=document['createElement']('div');_0x1f8007['className']='prop-vec3-field__slot';const _0x416e91=document['createElement']('span');return _0x416e91['className']='prop-vec3-field__label',_0x416e91['textContent']=_0x7084cc,_0x1db2c0['classList']['add']('prop-vec3-field__input'),_0x1f8007['appendChild'](_0x416e91),_0x1f8007['appendChild'](_0x1db2c0),_0x1f8007;}function createVec3StyleSelectSlot(_0x4d7839,_0xb82fcb){const _0x544d84=document['createElement']('div');_0x544d84['className']='prop-vec3-field__slot\x20prop-vec3-field__slot--select';const _0x463430=document['createElement']('span');return _0x463430['className']='prop-vec3-field__label',_0x463430['textContent']=_0x4d7839,_0xb82fcb['classList']['add']('prop-vec3-field__select'),_0x544d84['appendChild'](_0x463430),_0x544d84['appendChild'](_0xb82fcb),_0x544d84;}function createVec3Field(_0x39f1c3){const {labels:_0x4ee1de,readOnly:_0x53886a}=_0x39f1c3,_0x28c80c=document['createElement']('div');_0x28c80c['className']='prop-vec3-field';_0x53886a&&_0x28c80c['classList']['add']('prop-vec3-field--readonly');const _0xa36b39=[];for(let _0x3f85f0=0x0;_0x3f85f0<0x3;_0x3f85f0++){const _0x29d53c=document['createElement']('input');_0x29d53c['type']='number',_0x53886a&&(_0x29d53c['readOnly']=!![]),_0x39f1c3['step']!==undefined&&(_0x29d53c['step']=_0x39f1c3['step']),!_0x53886a&&_0x29d53c['addEventListener']('change',()=>{var _0x17c364;(_0x17c364=_0x39f1c3['onChange'])===null||_0x17c364===void 0x0?void 0x0:_0x17c364['call'](_0x39f1c3);}),_0x28c80c['appendChild'](createVec3StyleSlot(_0x4ee1de[_0x3f85f0],_0x29d53c)),_0xa36b39['push'](_0x29d53c);}return {'root':_0x28c80c,'inputs':_0xa36b39};}
|
|
183
|
+
|
|
184
|
+
function appendCollapsibleSection(_0x563b5c,_0x24a5cc,_0x5833ae){const _0x44828c=document['createElement']('div');_0x44828c['className']='prop-node-section\x20prop-block';const _0x28eb0f=document['createElement']('button');_0x28eb0f['type']='button',_0x28eb0f['className']='prop-node-section__header';const _0x4820a0=document['createElement']('span');_0x4820a0['className']='prop-node-section__chevron',_0x4820a0['setAttribute']('aria-hidden','true'),_0x4820a0['innerHTML']='<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2214\x22\x20height=\x2214\x22\x20aria-hidden=\x22true\x22><path\x20d=\x22M6\x209l6\x206\x206-6\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22/></svg>';const _0x5c6333=document['createElement']('span');_0x5c6333['className']='prop-node-section__title',_0x5c6333['textContent']=_0x24a5cc,_0x28eb0f['appendChild'](_0x4820a0),_0x28eb0f['appendChild'](_0x5c6333);const _0x419c52=document['createElement']('div');_0x419c52['className']='prop-node-section__body';let _0x345de0=(_0x5833ae===null||_0x5833ae===void 0x0?void 0x0:_0x5833ae['defaultCollapsed'])!==!![];const _0x260cb1=()=>{_0x44828c['classList']['toggle']('prop-node-section--collapsed',!_0x345de0),_0x28eb0f['setAttribute']('aria-expanded',_0x345de0?'true':'false');};return _0x260cb1(),_0x28eb0f['addEventListener']('click',_0x5aa2f6=>{_0x5aa2f6['stopPropagation'](),_0x345de0=!_0x345de0,_0x260cb1();}),_0x44828c['appendChild'](_0x28eb0f),_0x44828c['appendChild'](_0x419c52),_0x563b5c['appendChild'](_0x44828c),_0x419c52;}const TEXTURE_PREVIEW_SIZE=0x58,TEX_DEF_WRAP=THREE['RepeatWrapping'],TEX_DEF_MIN=THREE['LinearMipmapLinearFilter'],TEX_DEF_MAG=THREE['LinearFilter'],WRAP_OPTIONS=[{'value':THREE['ClampToEdgeWrapping'],'label':'CLAMP_TO_EDGE'},{'value':THREE['RepeatWrapping'],'label':'REPEAT'},{'value':THREE['MirroredRepeatWrapping'],'label':'MIRRORED_REPEAT'}],MIN_FILTER_OPTIONS=[{'value':THREE['NearestFilter'],'label':'NEAREST'},{'value':THREE['NearestMipmapNearestFilter'],'label':'NEAREST_MIPMAP_NEAREST'},{'value':THREE['NearestMipmapLinearFilter'],'label':'NEAREST_MIPMAP_LINEAR'},{'value':THREE['LinearFilter'],'label':'LINEAR'},{'value':THREE['LinearMipmapNearestFilter'],'label':'LINEAR_MIPMAP_NEAREST'},{'value':THREE['LinearMipmapLinearFilter'],'label':'LINEAR_MIPMAP_LINEAR'}],MAG_FILTER_OPTIONS=[{'value':THREE['NearestFilter'],'label':'NEAREST'},{'value':THREE['LinearFilter'],'label':'LINEAR'}];function fillEnumSelect(_0x4c5572,_0x28ad4f,_0x53e04e,_0x425237){_0x4c5572['innerHTML']='';for(const _0xa937c5 of _0x28ad4f){const _0x3ced13=document['createElement']('option');_0x3ced13['value']=String(_0xa937c5['value']),_0x3ced13['textContent']=_0xa937c5['label'],_0x4c5572['appendChild'](_0x3ced13);}const _0xdfb7d0=_0x28ad4f['some'](_0x3ee8af=>_0x3ee8af['value']===_0x53e04e);_0x4c5572['value']=String(_0xdfb7d0?_0x53e04e:_0x28ad4f[0x0]['value']),_0x4c5572['disabled']=!_0x425237;}function describeTexture(_0x4ba2d5){var _0x4e0525,_0x4c6a63,_0x225935,_0x208594;if(!_0x4ba2d5)return '';if(_0x4ba2d5 instanceof THREE['CubeTexture'])return 'CubeTexture\x20(6\x20faces)';if(_0x4ba2d5 instanceof THREE['CompressedTexture'])return 'Compressed\x20('+((_0x4c6a63=(_0x4e0525=_0x4ba2d5['mipmaps'])===null||_0x4e0525===void 0x0?void 0x0:_0x4e0525['length'])!==null&&_0x4c6a63!==void 0x0?_0x4c6a63:0x0)+'\x20mips)';const _0x3471d9=_0x4ba2d5['image'];if(_0x3471d9&&typeof _0x3471d9==='object'&&'src'in _0x3471d9&&typeof _0x3471d9['src']==='string')try{const _0x52e610=new URL(_0x3471d9['src'],window['location']['href']),_0x572f14=_0x52e610['pathname']['split']('/')['pop']()||_0x3471d9['src'];return _0x572f14['length']>0x30?_0x572f14['slice'](0x0,0x2d)+'…':_0x572f14;}catch(_0x3bd1ef){return 'Image';}if(_0x4ba2d5 instanceof THREE['DataTexture']){const _0x3f2954=_0x4ba2d5['image'],_0x18fc47=(_0x225935=_0x3f2954===null||_0x3f2954===void 0x0?void 0x0:_0x3f2954['width'])!==null&&_0x225935!==void 0x0?_0x225935:0x0,_0x6d69dc=(_0x208594=_0x3f2954===null||_0x3f2954===void 0x0?void 0x0:_0x3f2954['height'])!==null&&_0x208594!==void 0x0?_0x208594:0x0;return _0x18fc47&&_0x6d69dc?'DataTexture\x20'+_0x18fc47+'×'+_0x6d69dc:'DataTexture';}return 'Texture';}function byteFromTexel(_0x2a4cca,_0x3b1b30,_0x551a70,_0x8f6854){const _0xf8c2e6=_0x2a4cca[_0x3b1b30];if(!Number['isFinite'](_0xf8c2e6))return 0x0;if(_0x8f6854)return Math['max'](0x0,Math['min'](0xff,Math['round'](_0xf8c2e6*0xff)));return Math['max'](0x0,Math['min'](0xff,Math['round'](_0xf8c2e6)));}function dataTextureToPreviewCanvas(_0x58585c){var _0x272c28,_0x6485d6;const _0x41a762=_0x58585c['image'],_0x173745=(_0x272c28=_0x41a762===null||_0x41a762===void 0x0?void 0x0:_0x41a762['width'])!==null&&_0x272c28!==void 0x0?_0x272c28:0x0,_0x28e87c=(_0x6485d6=_0x41a762===null||_0x41a762===void 0x0?void 0x0:_0x41a762['height'])!==null&&_0x6485d6!==void 0x0?_0x6485d6:0x0,_0xcbf171=_0x41a762===null||_0x41a762===void 0x0?void 0x0:_0x41a762['data'];if(!_0x173745||!_0x28e87c||!_0xcbf171||_0xcbf171['length']<_0x173745*_0x28e87c)return null;const _0x22d707=Math['max'](0x1,Math['round'](_0xcbf171['length']/(_0x173745*_0x28e87c))),_0x5642eb=_0x58585c['type']===THREE['FloatType']||_0x58585c['type']===THREE['HalfFloatType'],_0x2271e6=Math['max'](_0x173745,_0x28e87c),_0x831618=_0x2271e6>TEXTURE_PREVIEW_SIZE?TEXTURE_PREVIEW_SIZE/_0x2271e6:0x1,_0x131dde=Math['max'](0x1,Math['round'](_0x173745*_0x831618)),_0x29f2ee=Math['max'](0x1,Math['round'](_0x28e87c*_0x831618)),_0x1c78d4=document['createElement']('canvas');_0x1c78d4['width']=_0x131dde,_0x1c78d4['height']=_0x29f2ee;const _0x4a538d=_0x1c78d4['getContext']('2d');if(!_0x4a538d)return null;const _0x2b26ef=_0x4a538d['createImageData'](_0x131dde,_0x29f2ee);for(let _0x13c74a=0x0;_0x13c74a<_0x29f2ee;_0x13c74a++){for(let _0x2155be=0x0;_0x2155be<_0x131dde;_0x2155be++){const _0x11d8f2=Math['min'](_0x173745-0x1,Math['floor'](_0x2155be/Math['max'](0x1,_0x131dde-0x1)*(_0x173745-0x1))),_0x577225=Math['min'](_0x28e87c-0x1,Math['floor'](_0x13c74a/Math['max'](0x1,_0x29f2ee-0x1)*(_0x28e87c-0x1))),_0x276b1e=(_0x577225*_0x173745+_0x11d8f2)*_0x22d707,_0x805e86=(_0x13c74a*_0x131dde+_0x2155be)*0x4;if(_0x22d707>=0x4)_0x2b26ef['data'][_0x805e86]=byteFromTexel(_0xcbf171,_0x276b1e,_0x22d707,_0x5642eb),_0x2b26ef['data'][_0x805e86+0x1]=byteFromTexel(_0xcbf171,_0x276b1e+0x1,_0x22d707,_0x5642eb),_0x2b26ef['data'][_0x805e86+0x2]=byteFromTexel(_0xcbf171,_0x276b1e+0x2,_0x22d707,_0x5642eb),_0x2b26ef['data'][_0x805e86+0x3]=byteFromTexel(_0xcbf171,_0x276b1e+0x3,_0x22d707,_0x5642eb);else {if(_0x22d707===0x3)_0x2b26ef['data'][_0x805e86]=byteFromTexel(_0xcbf171,_0x276b1e,_0x22d707,_0x5642eb),_0x2b26ef['data'][_0x805e86+0x1]=byteFromTexel(_0xcbf171,_0x276b1e+0x1,_0x22d707,_0x5642eb),_0x2b26ef['data'][_0x805e86+0x2]=byteFromTexel(_0xcbf171,_0x276b1e+0x2,_0x22d707,_0x5642eb),_0x2b26ef['data'][_0x805e86+0x3]=0xff;else {if(_0x22d707===0x2){const _0x37561f=byteFromTexel(_0xcbf171,_0x276b1e,_0x22d707,_0x5642eb),_0x50197d=byteFromTexel(_0xcbf171,_0x276b1e+0x1,_0x22d707,_0x5642eb);_0x2b26ef['data'][_0x805e86]=_0x37561f,_0x2b26ef['data'][_0x805e86+0x1]=_0x37561f,_0x2b26ef['data'][_0x805e86+0x2]=_0x37561f,_0x2b26ef['data'][_0x805e86+0x3]=_0x50197d;}else {const _0x62d68a=byteFromTexel(_0xcbf171,_0x276b1e,_0x22d707,_0x5642eb);_0x2b26ef['data'][_0x805e86]=_0x62d68a,_0x2b26ef['data'][_0x805e86+0x1]=_0x62d68a,_0x2b26ef['data'][_0x805e86+0x2]=_0x62d68a,_0x2b26ef['data'][_0x805e86+0x3]=0xff;}}}}}return _0x4a538d['putImageData'](_0x2b26ef,0x0,0x0),_0x1c78d4;}function buildTextureThumbnail(_0x2d17a5){var _0xca0648,_0x12c3df;if(!_0x2d17a5)return null;if(_0x2d17a5 instanceof THREE['CubeTexture']){const _0x2e37af=_0x2d17a5['images'],_0x3cb6f9=_0x2e37af&&_0x2e37af['length']>0x0?_0x2e37af[0x0]:undefined;if(_0x3cb6f9 instanceof HTMLImageElement){const _0x22e4d5=document['createElement']('img');_0x22e4d5['crossOrigin']=(_0xca0648=_0x3cb6f9['crossOrigin'])!==null&&_0xca0648!==void 0x0?_0xca0648:'anonymous',_0x22e4d5['src']=_0x3cb6f9['currentSrc']||_0x3cb6f9['src'],_0x22e4d5['alt']='';const _0x1d546a=_0x3cb6f9['naturalWidth']||0x40,_0x3caaea=_0x3cb6f9['naturalHeight']||0x40,_0x26df7c=Math['min'](0x1,TEXTURE_PREVIEW_SIZE/Math['max'](_0x1d546a,_0x3caaea));return _0x22e4d5['style']['width']=Math['max'](0x1,Math['round'](_0x1d546a*_0x26df7c))+'px',_0x22e4d5['style']['height']=Math['max'](0x1,Math['round'](_0x3caaea*_0x26df7c))+'px',_0x22e4d5['style']['objectFit']='contain',_0x22e4d5;}if(typeof ImageBitmap!=='undefined'&&_0x3cb6f9 instanceof ImageBitmap){const _0x55aba3=document['createElement']('canvas'),_0x56962c=Math['min'](0x1,TEXTURE_PREVIEW_SIZE/Math['max'](_0x3cb6f9['width'],_0x3cb6f9['height'],0x1));_0x55aba3['width']=Math['max'](0x1,Math['round'](_0x3cb6f9['width']*_0x56962c)),_0x55aba3['height']=Math['max'](0x1,Math['round'](_0x3cb6f9['height']*_0x56962c));const _0x55ceb=_0x55aba3['getContext']('2d');return _0x55ceb&&_0x55ceb['drawImage'](_0x3cb6f9,0x0,0x0,_0x55aba3['width'],_0x55aba3['height']),_0x55aba3;}return null;}if(_0x2d17a5 instanceof THREE['CompressedTexture'])return null;const _0x40cf71=_0x2d17a5['image'];if(!_0x40cf71)return null;if(_0x2d17a5 instanceof THREE['DataTexture'])return dataTextureToPreviewCanvas(_0x2d17a5);if(_0x40cf71 instanceof HTMLCanvasElement){const _0x1c91c9=document['createElement']('canvas'),_0xa418fe=Math['min'](0x1,TEXTURE_PREVIEW_SIZE/Math['max'](_0x40cf71['width'],_0x40cf71['height'],0x1));_0x1c91c9['width']=Math['max'](0x1,Math['round'](_0x40cf71['width']*_0xa418fe)),_0x1c91c9['height']=Math['max'](0x1,Math['round'](_0x40cf71['height']*_0xa418fe));const _0x20f5a9=_0x1c91c9['getContext']('2d');return _0x20f5a9&&_0x20f5a9['drawImage'](_0x40cf71,0x0,0x0,_0x1c91c9['width'],_0x1c91c9['height']),_0x1c91c9;}if(typeof ImageBitmap!=='undefined'&&_0x40cf71 instanceof ImageBitmap){const _0x4323ba=document['createElement']('canvas'),_0x37fd7f=Math['min'](0x1,TEXTURE_PREVIEW_SIZE/Math['max'](_0x40cf71['width'],_0x40cf71['height'],0x1));_0x4323ba['width']=Math['max'](0x1,Math['round'](_0x40cf71['width']*_0x37fd7f)),_0x4323ba['height']=Math['max'](0x1,Math['round'](_0x40cf71['height']*_0x37fd7f));const _0x2c4c8d=_0x4323ba['getContext']('2d');return _0x2c4c8d&&_0x2c4c8d['drawImage'](_0x40cf71,0x0,0x0,_0x4323ba['width'],_0x4323ba['height']),_0x4323ba;}if(_0x40cf71 instanceof HTMLVideoElement){const _0x48fc99=document['createElement']('canvas'),_0x5b0432=_0x40cf71['videoWidth']||_0x40cf71['clientWidth'],_0x4bf691=_0x40cf71['videoHeight']||_0x40cf71['clientHeight'];if(!_0x5b0432||!_0x4bf691)return null;const _0x3bbaf0=Math['min'](0x1,TEXTURE_PREVIEW_SIZE/Math['max'](_0x5b0432,_0x4bf691));_0x48fc99['width']=Math['max'](0x1,Math['round'](_0x5b0432*_0x3bbaf0)),_0x48fc99['height']=Math['max'](0x1,Math['round'](_0x4bf691*_0x3bbaf0));const _0x526302=_0x48fc99['getContext']('2d');return _0x526302&&_0x526302['drawImage'](_0x40cf71,0x0,0x0,_0x48fc99['width'],_0x48fc99['height']),_0x48fc99;}if(_0x40cf71 instanceof HTMLImageElement){if(_0x40cf71['complete']&&_0x40cf71['naturalWidth']>0x0){const _0x544c1a=document['createElement']('canvas'),_0x10a738=_0x40cf71['naturalWidth'],_0x2842e1=_0x40cf71['naturalHeight'],_0xff4575=Math['min'](0x1,TEXTURE_PREVIEW_SIZE/Math['max'](_0x10a738,_0x2842e1,0x1));_0x544c1a['width']=Math['max'](0x1,Math['round'](_0x10a738*_0xff4575)),_0x544c1a['height']=Math['max'](0x1,Math['round'](_0x2842e1*_0xff4575));const _0x31f92b=_0x544c1a['getContext']('2d');return _0x31f92b&&_0x31f92b['drawImage'](_0x40cf71,0x0,0x0,_0x544c1a['width'],_0x544c1a['height']),_0x544c1a;}const _0x25f7d2=document['createElement']('img');_0x25f7d2['crossOrigin']=(_0x12c3df=_0x40cf71['crossOrigin'])!==null&&_0x12c3df!==void 0x0?_0x12c3df:'anonymous',_0x25f7d2['src']=_0x40cf71['currentSrc']||_0x40cf71['src'],_0x25f7d2['alt']='',_0x25f7d2['style']['objectFit']='contain',_0x25f7d2['style']['width']=TEXTURE_PREVIEW_SIZE+'px',_0x25f7d2['style']['height']=TEXTURE_PREVIEW_SIZE+'px';const _0x31d181=()=>{const _0x39cc6e=_0x40cf71['naturalWidth']||TEXTURE_PREVIEW_SIZE,_0x18744b=_0x40cf71['naturalHeight']||TEXTURE_PREVIEW_SIZE,_0x5b2ea2=Math['min'](0x1,TEXTURE_PREVIEW_SIZE/Math['max'](_0x39cc6e,_0x18744b,0x1));_0x25f7d2['style']['width']=Math['max'](0x1,Math['round'](_0x39cc6e*_0x5b2ea2))+'px',_0x25f7d2['style']['height']=Math['max'](0x1,Math['round'](_0x18744b*_0x5b2ea2))+'px';};return _0x25f7d2['addEventListener']('load',_0x31d181,{'once':!![]}),_0x25f7d2;}return null;}function appendTextureSamplingAndUvControls(_0x4b6430,_0x310730,_0x4aa1ec){var _0x29f318,_0x1cc17f,_0x2f19c4,_0x16788e,_0x998fe7,_0x160d4d,_0x44cea0,_0x558efb;const _0x52a56c=!!_0x310730,_0x233775=(_0x29f318=_0x310730===null||_0x310730===void 0x0?void 0x0:_0x310730['wrapS'])!==null&&_0x29f318!==void 0x0?_0x29f318:TEX_DEF_WRAP,_0x2cfa80=(_0x1cc17f=_0x310730===null||_0x310730===void 0x0?void 0x0:_0x310730['wrapT'])!==null&&_0x1cc17f!==void 0x0?_0x1cc17f:TEX_DEF_WRAP,_0x1bf340=(_0x2f19c4=_0x310730===null||_0x310730===void 0x0?void 0x0:_0x310730['minFilter'])!==null&&_0x2f19c4!==void 0x0?_0x2f19c4:TEX_DEF_MIN,_0x18897e=(_0x16788e=_0x310730===null||_0x310730===void 0x0?void 0x0:_0x310730['magFilter'])!==null&&_0x16788e!==void 0x0?_0x16788e:TEX_DEF_MAG,_0x4f825f=(_0x998fe7=_0x310730===null||_0x310730===void 0x0?void 0x0:_0x310730['repeat']['x'])!==null&&_0x998fe7!==void 0x0?_0x998fe7:0x1,_0x2220ad=(_0x160d4d=_0x310730===null||_0x310730===void 0x0?void 0x0:_0x310730['repeat']['y'])!==null&&_0x160d4d!==void 0x0?_0x160d4d:0x1,_0x13afe3=(_0x44cea0=_0x310730===null||_0x310730===void 0x0?void 0x0:_0x310730['offset']['x'])!==null&&_0x44cea0!==void 0x0?_0x44cea0:0x0,_0x4d660b=(_0x558efb=_0x310730===null||_0x310730===void 0x0?void 0x0:_0x310730['offset']['y'])!==null&&_0x558efb!==void 0x0?_0x558efb:0x0,_0x2b8dfe=_0x310730?THREE['MathUtils']['radToDeg'](_0x310730['rotation']):0x0,_0x356a8=document['createElement']('div');_0x356a8['className']='prop-material-tex-controls';const _0x4b450c=document['createElement']('select');_0x4b450c['className']='prop-input\x20prop-input--text\x20prop-material-tex-controls__select',fillEnumSelect(_0x4b450c,WRAP_OPTIONS,_0x233775,_0x52a56c);const _0x134072=document['createElement']('select');_0x134072['className']='prop-input\x20prop-input--text\x20prop-material-tex-controls__select',fillEnumSelect(_0x134072,WRAP_OPTIONS,_0x2cfa80,_0x52a56c);const _0x36a2eb=document['createElement']('select');_0x36a2eb['className']='prop-input\x20prop-input--text\x20prop-material-tex-controls__select',fillEnumSelect(_0x36a2eb,MIN_FILTER_OPTIONS,_0x1bf340,_0x52a56c);const _0x25345c=document['createElement']('select');_0x25345c['className']='prop-input\x20prop-input--text\x20prop-material-tex-controls__select',fillEnumSelect(_0x25345c,MAG_FILTER_OPTIONS,_0x18897e,_0x52a56c);const _0x4cd5a2=document['createElement']('div');_0x4cd5a2['className']='prop-material-tex-controls__uvrow\x20prop-material-tex-controls__uvrow--pair',_0x4cd5a2['appendChild'](createVec3StyleSelectSlot('S',_0x4b450c)),_0x4cd5a2['appendChild'](createVec3StyleSelectSlot('T',_0x134072));const _0x4d0d0a=document['createElement']('div');_0x4d0d0a['className']='prop-material-tex-controls__uvrow\x20prop-material-tex-controls__uvrow--pair',_0x4d0d0a['appendChild'](createVec3StyleSelectSlot('Min',_0x36a2eb)),_0x4d0d0a['appendChild'](createVec3StyleSelectSlot('Mag',_0x25345c));const _0x48f9cb=document['createElement']('div');_0x48f9cb['className']='prop-material-tex-controls__uvrow\x20prop-material-tex-controls__uvrow--repeat';const _0x1ccfd1=document['createElement']('input');_0x1ccfd1['type']='number',_0x1ccfd1['step']='0.0001',_0x1ccfd1['value']=formatNum(_0x4f825f),_0x1ccfd1['disabled']=!_0x52a56c;const _0x1bf98b=document['createElement']('input');_0x1bf98b['type']='number',_0x1bf98b['step']='0.0001',_0x1bf98b['value']=formatNum(_0x2220ad),_0x1bf98b['disabled']=!_0x52a56c;const _0x3cfcd6=document['createElement']('button');_0x3cfcd6['type']='button',_0x3cfcd6['className']='prop-material-tex-link',_0x3cfcd6['title']='Link\x20scale\x20Y\x20to\x20scale\x20X\x20(proportional)',_0x3cfcd6['setAttribute']('aria-pressed','true'),_0x3cfcd6['innerHTML']='<svg\x20xmlns=\x22http://www.w3.org/2000/svg\x22\x20viewBox=\x220\x200\x20388\x20878\x22\x20width=\x2214\x22\x20height=\x2214\x22\x20fill=\x22currentColor\x22\x20aria-hidden=\x22true\x22\x20preserveAspectRatio=\x22xMidYMid\x20meet\x22><path\x20d=\x22M273.897\x200.0366853L129.988\x200.799412C66.4502\x201.29608\x2014.247\x2053.0736\x2013.5375\x20116.54L11.5686\x20275.101C10.7881\x20338.604\x2061.7319\x20389.831\x20125.163\x20389.405L126.973\x20299.473C108.294\x20290.09\x2097.9531\x20268.29\x2098.1837\x20245.816L99.4608\x20144.957C99.9397\x20113.082\x20125.962\x2087.2017\x20157.73\x2087.042L244.097\x2086.5276C275.866\x2086.368\x20301.249\x20111.893\x20300.912\x20143.697L299.671\x20244.592C299.405\x20265.931\x20287.449\x20289.451\x20269.977\x20299.509L269.143\x20388.536C332.717\x20388.146\x20384.813\x20336.333\x20385.594\x20272.795L387.545\x20114.394C388.361\x2050.7499\x20337.435\x20-0.389028\x20273.897\x200.0366853Z\x22/><path\x20d=\x22M266.554\x20580.462C284.079\x20590.36\x20295.715\x20614.2\x20295.449\x20636.036L294.349\x20730.332C293.959\x20762.65\x20267.405\x20789.027\x20235.033\x20789.222L147.07\x20789.878C114.751\x20790.056\x2088.7292\x20763.821\x2089.1904\x20731.573L90.3256\x20637.242C90.6626\x20614.307\x20101.625\x20591.85\x20121.03\x20582.094L121.456\x20490.495C56.7651\x20490.938\x203.60409\x20543.78\x202.82361\x20608.418L0.996585\x20761.373C0.233848\x20826.1\x2052.0645\x20878.249\x20116.809\x20877.895L263.343\x20877.061C327.963\x20876.618\x20381.088\x20823.811\x20381.94\x20759.103L383.767\x20606.147C384.459\x20541.421\x20332.646\x20489.324\x20267.99\x20489.661L266.554\x20580.462Z\x22/><path\x20d=\x22M195.459\x20609.979C217.242\x20610.085\x20235.086\x20592.453\x20235.228\x20570.494L235.92\x20306.711C235.991\x20284.751\x20218.359\x20266.977\x20196.435\x20266.942C174.653\x20266.906\x20156.879\x20284.538\x20156.773\x20306.391L156.01\x20570.174C155.921\x20592.081\x20173.553\x20609.854\x20195.459\x20609.979Z\x22/></svg>',_0x3cfcd6['disabled']=!_0x52a56c;let _0x27d690=!![];const _0x44c9e6=()=>{_0x3cfcd6['classList']['toggle']('prop-material-tex-link--off',!_0x27d690),_0x3cfcd6['setAttribute']('aria-pressed',_0x27d690?'true':'false');};_0x44c9e6(),_0x3cfcd6['addEventListener']('click',()=>{if(!_0x52a56c||!_0x310730)return;_0x27d690=!_0x27d690,_0x44c9e6();});const _0x29b885=(_0x4bf27f,_0x52d3a0)=>{if(!_0x310730||!_0x52a56c)return;_0x310730['repeat']['set'](_0x4bf27f,_0x52d3a0),_0x310730['updateMatrix'](),_0x4aa1ec();};_0x1ccfd1['addEventListener']('change',()=>{if(!_0x310730||!_0x52a56c)return;const _0x221f00=parseFloat(_0x1ccfd1['value']);if(!Number['isFinite'](_0x221f00)||_0x221f00===0x0){_0x1ccfd1['value']=formatNum(_0x310730['repeat']['x']);return;}if(_0x27d690){const _0x4b91ec=_0x310730['repeat']['x']||0x1,_0x30a8f3=_0x310730['repeat']['y']||0x1,_0x33537c=_0x221f00/_0x4b91ec,_0x5ea77d=_0x30a8f3*_0x33537c;_0x1bf98b['value']=formatNum(_0x5ea77d),_0x29b885(_0x221f00,_0x5ea77d);}else _0x29b885(_0x221f00,_0x310730['repeat']['y']);}),_0x1bf98b['addEventListener']('change',()=>{if(!_0x310730||!_0x52a56c)return;const _0x4d600f=parseFloat(_0x1bf98b['value']);if(!Number['isFinite'](_0x4d600f)||_0x4d600f===0x0){_0x1bf98b['value']=formatNum(_0x310730['repeat']['y']);return;}if(_0x27d690){const _0x2d2d3a=_0x310730['repeat']['x']||0x1,_0x6a00bd=_0x310730['repeat']['y']||0x1,_0x546fc2=_0x4d600f/_0x6a00bd,_0x1b00b9=_0x2d2d3a*_0x546fc2;_0x1ccfd1['value']=formatNum(_0x1b00b9),_0x29b885(_0x1b00b9,_0x4d600f);}else _0x29b885(_0x310730['repeat']['x'],_0x4d600f);}),_0x48f9cb['appendChild'](createVec3StyleSlot('SX',_0x1ccfd1)),_0x48f9cb['appendChild'](_0x3cfcd6),_0x48f9cb['appendChild'](createVec3StyleSlot('SY',_0x1bf98b));const _0x3a0b57=document['createElement']('div');_0x3a0b57['className']='prop-material-tex-controls__uvrow\x20prop-material-tex-controls__uvrow--pair';const _0xca3100=document['createElement']('input');_0xca3100['type']='number',_0xca3100['step']='0.01',_0xca3100['value']=formatNum(_0x13afe3),_0xca3100['disabled']=!_0x52a56c;const _0xf3af51=document['createElement']('input');_0xf3af51['type']='number',_0xf3af51['step']='0.01',_0xf3af51['value']=formatNum(_0x4d660b),_0xf3af51['disabled']=!_0x52a56c;const _0x2a6f5b=document['createElement']('input');_0x2a6f5b['type']='number',_0x2a6f5b['step']='0.1',_0x2a6f5b['value']=formatNum(_0x2b8dfe),_0x2a6f5b['disabled']=!_0x52a56c,_0xca3100['addEventListener']('change',()=>{if(!_0x310730||!_0x52a56c)return;const _0x1a962b=parseFloat(_0xca3100['value']);if(!Number['isFinite'](_0x1a962b)){_0xca3100['value']=formatNum(_0x310730['offset']['x']);return;}_0x310730['offset']['x']=_0x1a962b,_0x310730['updateMatrix'](),_0x4aa1ec();}),_0xf3af51['addEventListener']('change',()=>{if(!_0x310730||!_0x52a56c)return;const _0x49d54a=parseFloat(_0xf3af51['value']);if(!Number['isFinite'](_0x49d54a)){_0xf3af51['value']=formatNum(_0x310730['offset']['y']);return;}_0x310730['offset']['y']=_0x49d54a,_0x310730['updateMatrix'](),_0x4aa1ec();}),_0x2a6f5b['addEventListener']('change',()=>{if(!_0x310730||!_0x52a56c)return;const _0x2a0634=parseFloat(_0x2a6f5b['value']);if(!Number['isFinite'](_0x2a0634)){_0x2a6f5b['value']=formatNum(THREE['MathUtils']['radToDeg'](_0x310730['rotation']));return;}_0x310730['rotation']=THREE['MathUtils']['degToRad'](_0x2a0634),_0x310730['updateMatrix'](),_0x4aa1ec();});const _0x39832f=()=>{if(!_0x310730||!_0x52a56c)return;_0x310730['wrapS']=Number(_0x4b450c['value']),_0x310730['wrapT']=Number(_0x134072['value']),_0x310730['minFilter']=Number(_0x36a2eb['value']),_0x310730['magFilter']=Number(_0x25345c['value']),_0x310730['needsUpdate']=!![],_0x4aa1ec();};_0x4b450c['addEventListener']('change',_0x39832f),_0x134072['addEventListener']('change',_0x39832f),_0x36a2eb['addEventListener']('change',_0x39832f),_0x25345c['addEventListener']('change',_0x39832f),_0x3a0b57['appendChild'](createVec3StyleSlot('TX',_0xca3100)),_0x3a0b57['appendChild'](createVec3StyleSlot('TY',_0xf3af51));const _0x3aaa2a=document['createElement']('div');_0x3aaa2a['className']='prop-material-tex-controls__uvrow\x20prop-material-tex-controls__uvrow--rot',_0x3aaa2a['appendChild'](createVec3StyleSlot('R\x20(°)',_0x2a6f5b)),_0x356a8['appendChild'](_0x4cd5a2),_0x356a8['appendChild'](_0x4d0d0a),_0x356a8['appendChild'](_0x48f9cb),_0x356a8['appendChild'](_0x3a0b57),_0x356a8['appendChild'](_0x3aaa2a),_0x4b6430['appendChild'](_0x356a8);}function loadTextureFromFile(_0x3f7ccc){return new Promise((_0x517641,_0x25a883)=>{const _0x4cd263=URL['createObjectURL'](_0x3f7ccc),_0x4b8f76=new THREE['TextureLoader']();_0x4b8f76['load'](_0x4cd263,_0x14a755=>{_0x14a755['name']=_0x3f7ccc['name'],_0x14a755['colorSpace']=THREE['SRGBColorSpace'],_0x14a755['needsUpdate']=!![],URL['revokeObjectURL'](_0x4cd263),_0x517641(_0x14a755);},undefined,_0x11ec44=>{URL['revokeObjectURL'](_0x4cd263),_0x25a883(_0x11ec44);});});}function snapshotTexSettings(_0x1dac45){return {'wrapS':_0x1dac45['wrapS'],'wrapT':_0x1dac45['wrapT'],'minFilter':_0x1dac45['minFilter'],'magFilter':_0x1dac45['magFilter'],'repeatX':_0x1dac45['repeat']['x'],'repeatY':_0x1dac45['repeat']['y'],'offsetX':_0x1dac45['offset']['x'],'offsetY':_0x1dac45['offset']['y'],'rotation':_0x1dac45['rotation'],'flipY':_0x1dac45['flipY'],'colorSpace':_0x1dac45['colorSpace']};}function applyTexSettings(_0x15860f,_0x6c601a){_0x15860f['wrapS']=_0x6c601a['wrapS'],_0x15860f['wrapT']=_0x6c601a['wrapT'],_0x15860f['minFilter']=_0x6c601a['minFilter'],_0x15860f['magFilter']=_0x6c601a['magFilter'],_0x15860f['repeat']['set'](_0x6c601a['repeatX'],_0x6c601a['repeatY']),_0x15860f['offset']['set'](_0x6c601a['offsetX'],_0x6c601a['offsetY']),_0x15860f['rotation']=_0x6c601a['rotation'],_0x15860f['flipY']=_0x6c601a['flipY'],_0x15860f['colorSpace']=_0x6c601a['colorSpace'],_0x15860f['updateMatrix']();}const savedTexSettingsMap=new WeakMap();function getSavedSettings(_0x1baa64,_0x2e8a20){var _0x1aaded;return (_0x1aaded=savedTexSettingsMap['get'](_0x1baa64))===null||_0x1aaded===void 0x0?void 0x0:_0x1aaded['get'](_0x2e8a20);}function setSavedSettings(_0xff6cae,_0x5c6eba,_0x5c0d8b){let _0x14dc04=savedTexSettingsMap['get'](_0xff6cae);!_0x14dc04&&(_0x14dc04=new Map(),savedTexSettingsMap['set'](_0xff6cae,_0x14dc04)),_0x14dc04['set'](_0x5c6eba,_0x5c0d8b);}function appendTextureMapSlot(_0x32c5dd,_0x1b5b67,_0x4547a2,_0x190679){var _0x1abc3a;const {mat:_0x50e139,propKey:_0x1a4c8a,enableRender:_0x20229a,refreshPanel:_0x2cc648}=_0x190679,_0x445d2f=document['createElement']('div');_0x445d2f['className']='prop-form-row\x20prop-material-tex-row';const _0x38ef10=document['createElement']('div');_0x38ef10['className']='prop-label',_0x38ef10['textContent']=_0x1b5b67;const _0xa93f94=document['createElement']('div');_0xa93f94['className']='prop-material-tex-cell';const _0x3108c7=document['createElement']('div');_0x3108c7['className']='prop-material-tex-thumb-wrap';const _0x568e2e=_0x4547a2?buildTextureThumbnail(_0x4547a2):null;if(_0x568e2e)_0x568e2e['classList']['add']('prop-material-tex-thumb'),_0x3108c7['appendChild'](_0x568e2e);else {if(_0x4547a2){const _0x226bdf=document['createElement']('div');_0x226bdf['className']='prop-material-tex-placeholder',_0x226bdf['textContent']=_0x4547a2 instanceof THREE['CompressedTexture']?'Compressed\x20(no\x20preview)':'No\x20preview',_0x3108c7['appendChild'](_0x226bdf);}else {_0x3108c7['classList']['add']('prop-material-tex-thumb-wrap--empty');const _0x3794bd=document['createElement']('div');_0x3794bd['className']='prop-material-tex-thumb-empty',_0x3794bd['setAttribute']('aria-hidden','true'),_0x3794bd['innerHTML']='<svg\x20xmlns=\x22http://www.w3.org/2000/svg\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2222\x22\x20height=\x2222\x22><rect\x20x=\x224\x22\x20y=\x226\x22\x20width=\x2216\x22\x20height=\x2212\x22\x20rx=\x221.5\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x221.25\x22/><path\x20d=\x22M4\x2017l4.5-4\x203\x203L15\x2010l5\x207\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x221.25\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22/></svg>',_0x3108c7['appendChild'](_0x3794bd);}}const _0xa7032d=document['createElement']('div');_0xa7032d['className']='prop-meta\x20prop-material-readonly',_0xa7032d['textContent']=describeTexture(_0x4547a2),_0xa7032d['title']=describeTexture(_0x4547a2);const _0xb90890=document['createElement']('div');_0xb90890['className']='prop-material-tex-actions';const _0x3eafce=document['createElement']('input');_0x3eafce['type']='file',_0x3eafce['accept']='image/*',_0x3eafce['style']['display']='none',_0x3eafce['addEventListener']('change',async()=>{var _0x45db90;const _0x2a1281=(_0x45db90=_0x3eafce['files'])===null||_0x45db90===void 0x0?void 0x0:_0x45db90[0x0];if(!_0x2a1281)return;try{const _0x65f0d5=_0x50e139,_0x3297da=_0x65f0d5[_0x1a4c8a],_0x17eb2f=await loadTextureFromFile(_0x2a1281);if(_0x3297da){const _0x3f8c1f=snapshotTexSettings(_0x3297da);setSavedSettings(_0x50e139,_0x1a4c8a,_0x3f8c1f),applyTexSettings(_0x17eb2f,_0x3f8c1f);}else {const _0x1e5eeb=getSavedSettings(_0x50e139,_0x1a4c8a);_0x1e5eeb&&applyTexSettings(_0x17eb2f,_0x1e5eeb);}_0x65f0d5[_0x1a4c8a]=_0x17eb2f,_0x50e139['needsUpdate']=!![],_0x20229a(),_0x2cc648();}catch(_0x4a0e8a){}_0x3eafce['value']='';});const _0xf83450=document['createElement']('button');_0xf83450['type']='button',_0xf83450['className']='prop-material-tex-action-btn',_0xf83450['title']='Replace\x20texture…',_0xf83450['innerHTML']='<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2214\x22\x20height=\x2214\x22><path\x20d=\x22M21\x2015v4a2\x202\x200\x200\x201-2\x202H5a2\x202\x200\x200\x201-2-2v-4M17\x208l-5-5-5\x205M12\x203v12\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22/></svg>',_0xf83450['addEventListener']('click',()=>_0x3eafce['click']());const _0xbe9e8f=document['createElement']('button');_0xbe9e8f['type']='button',_0xbe9e8f['className']='prop-material-tex-action-btn\x20prop-material-tex-action-btn--danger',_0xbe9e8f['title']='Remove\x20texture',_0xbe9e8f['disabled']=!_0x4547a2,_0xbe9e8f['innerHTML']='<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2214\x22\x20height=\x2214\x22><path\x20d=\x22M18\x206L6\x2018M6\x206l12\x2012\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22/></svg>',_0xbe9e8f['addEventListener']('click',()=>{const _0x5dbd23=_0x50e139,_0x140f3a=_0x5dbd23[_0x1a4c8a];_0x140f3a&&(setSavedSettings(_0x50e139,_0x1a4c8a,snapshotTexSettings(_0x140f3a)),_0x140f3a['dispose']()),_0x5dbd23[_0x1a4c8a]=null,_0x50e139['needsUpdate']=!![],_0x20229a(),_0x2cc648();}),_0xb90890['appendChild'](_0x3eafce),_0xb90890['appendChild'](_0xf83450),_0xb90890['appendChild'](_0xbe9e8f),_0xa93f94['appendChild'](_0x3108c7),_0xa93f94['appendChild'](_0xa7032d),_0xa93f94['appendChild'](_0xb90890);if(_0x4547a2){const _0x38e25e=document['createElement']('div');_0x38e25e['className']='prop-material-tex-settings';const _0x5c5d06=document['createElement']('input');_0x5c5d06['type']='checkbox',_0x5c5d06['checked']=_0x4547a2['flipY'],_0x5c5d06['addEventListener']('change',()=>{_0x4547a2['flipY']=_0x5c5d06['checked'],_0x4547a2['needsUpdate']=!![],_0x20229a();}),_0x38e25e['appendChild'](createCheckRow('Flip\x20Y',_0x5c5d06));const _0x5b17cb=document['createElement']('select');_0x5b17cb['className']='prop-input\x20prop-input--text\x20prop-material-tex-controls__select';const _0x41d0bc=[{'value':0x0,'label':'0\x20(default\x20UV)'},{'value':0x1,'label':'1\x20(UV2)'}];for(const _0x5e3cc7 of _0x41d0bc){const _0x56c660=document['createElement']('option');_0x56c660['value']=String(_0x5e3cc7['value']),_0x56c660['textContent']=_0x5e3cc7['label'],_0x5b17cb['appendChild'](_0x56c660);}_0x5b17cb['value']=String((_0x1abc3a=_0x4547a2['channel'])!==null&&_0x1abc3a!==void 0x0?_0x1abc3a:0x0),_0x5b17cb['addEventListener']('change',()=>{_0x4547a2['channel']=parseInt(_0x5b17cb['value'],0xa)||0x0,_0x4547a2['needsUpdate']=!![],_0x50e139['needsUpdate']=!![],_0x20229a();}),_0x38e25e['appendChild'](createFormInputRow('Channel',_0x5b17cb)),_0xa93f94['appendChild'](_0x38e25e);}appendTextureSamplingAndUvControls(_0xa93f94,_0x4547a2,_0x20229a),_0x445d2f['appendChild'](_0x38ef10),_0x445d2f['appendChild'](_0xa93f94),_0x32c5dd['appendChild'](_0x445d2f);}function appendReadonlyRow(_0x14e104,_0x52b548,_0x4146a8){const _0x565e10=document['createElement']('div');_0x565e10['className']='prop-form-row';const _0x587a4f=document['createElement']('div');_0x587a4f['className']='prop-label',_0x587a4f['textContent']=_0x52b548;const _0x6b093=document['createElement']('div');_0x6b093['className']='prop-meta\x20prop-material-readonly',_0x6b093['textContent']=_0x4146a8,_0x6b093['title']=_0x4146a8,_0x565e10['appendChild'](_0x587a4f),_0x565e10['appendChild'](_0x6b093),_0x14e104['appendChild'](_0x565e10);}function formatNum(_0x4279a3){if(!Number['isFinite'](_0x4279a3))return '';const _0x47536c=_0x4279a3['toFixed'](0x2);return parseFloat(_0x47536c)===_0x4279a3?_0x47536c:String(Math['round'](_0x4279a3*0x64)/0x64);}function appendNumberRow(_0x2d77ce,_0x2e9d11,_0x22df80,_0x5de651,_0x5af7e9,_0xbb8196){const _0x4dd80b=document['createElement']('input');_0x4dd80b['type']='number',_0x4dd80b['className']='prop-input\x20prop-input--text',_0x4dd80b['value']=formatNum(_0x22df80),(_0xbb8196===null||_0xbb8196===void 0x0?void 0x0:_0xbb8196['step'])!=null&&(_0x4dd80b['step']=_0xbb8196['step']),(_0xbb8196===null||_0xbb8196===void 0x0?void 0x0:_0xbb8196['min'])!=null&&(_0x4dd80b['min']=String(_0xbb8196['min'])),(_0xbb8196===null||_0xbb8196===void 0x0?void 0x0:_0xbb8196['max'])!=null&&(_0x4dd80b['max']=String(_0xbb8196['max'])),_0x4dd80b['addEventListener']('change',()=>{const _0x39a9ef=parseFloat(_0x4dd80b['value']);Number['isFinite'](_0x39a9ef)&&(_0x5de651(_0x39a9ef),_0x5af7e9());}),_0x2d77ce['appendChild'](createFormInputRow(_0x2e9d11,_0x4dd80b));}function appendColorRow(_0x1414e0,_0x3547ba,_0x4a5837,_0x1fd18b){const _0x1a1402=document['createElement']('input');_0x1a1402['type']='color',_0x1a1402['className']='prop-input\x20prop-input--color',_0x1a1402['value']='#'+_0x4a5837['getHexString'](),_0x1a1402['addEventListener']('input',()=>{_0x4a5837['set'](_0x1a1402['value']),_0x1fd18b();}),_0x1414e0['appendChild'](createFormInputRow(_0x3547ba,_0x1a1402));}function appendSideSelect(_0x38164d,_0x2aa140,_0x34161e){const _0x5f11fd=document['createElement']('select');_0x5f11fd['className']='prop-input\x20prop-input--text',_0x5f11fd['innerHTML']='<option\x20value=\x220\x22>Front</option><option\x20value=\x221\x22>Back</option><option\x20value=\x222\x22>Double</option>',_0x5f11fd['value']=String(_0x2aa140['side']),_0x5f11fd['addEventListener']('change',()=>{_0x2aa140['side']=Number(_0x5f11fd['value']),_0x2aa140['needsUpdate']=!![],_0x34161e();}),_0x38164d['appendChild'](createFormInputRow('Side',_0x5f11fd));}function appendAlphaModeRows(_0x31fdbc,_0x25484c,_0x34c9ea){const _0x4dab52=document['createElement']('select');_0x4dab52['className']='prop-input\x20prop-input--text',_0x4dab52['innerHTML']='<option\x20value=\x22opaque\x22>Opaque</option><option\x20value=\x22mask\x22>Mask\x20(alphaTest)</option><option\x20value=\x22blend\x22>Blend\x20(transparent)</option>';const _0x1805e1=()=>{if(_0x25484c['transparent'])_0x4dab52['value']='blend';else _0x25484c['alphaTest']>0x0?_0x4dab52['value']='mask':_0x4dab52['value']='opaque';};_0x1805e1();const _0x4fdad9=document['createElement']('input');_0x4fdad9['type']='number',_0x4fdad9['className']='prop-input\x20prop-input--text',_0x4fdad9['min']='0',_0x4fdad9['max']='1',_0x4fdad9['step']='0.01',_0x4fdad9['value']=formatNum(_0x25484c['alphaTest']||0.5);const _0x823e78=()=>{const _0x2cace1=_0x4dab52['value'];if(_0x2cace1==='blend')_0x25484c['transparent']=!![],_0x25484c['alphaTest']=0x0;else {if(_0x2cace1==='mask'){_0x25484c['transparent']=![];const _0x2c3bae=parseFloat(_0x4fdad9['value']);_0x25484c['alphaTest']=Number['isFinite'](_0x2c3bae)?Math['min'](0x1,Math['max'](0x0,_0x2c3bae)):0.5;}else _0x25484c['transparent']=![],_0x25484c['alphaTest']=0x0;}_0x25484c['needsUpdate']=!![],_0x34c9ea();};_0x4dab52['addEventListener']('change',()=>{_0x823e78(),_0x4fdad9['disabled']=_0x4dab52['value']!=='mask';}),_0x4fdad9['addEventListener']('change',()=>{_0x4dab52['value']==='mask'&&_0x823e78();}),_0x4fdad9['disabled']=_0x4dab52['value']!=='mask',_0x31fdbc['appendChild'](createFormInputRow('Alpha\x20mode',_0x4dab52)),_0x31fdbc['appendChild'](createFormInputRow('Alpha\x20cutoff',_0x4fdad9));}function appendCommonMaterialRows(_0xfdfca6,_0x4897d2,_0x41bac0){appendSideSelect(_0xfdfca6,_0x4897d2,_0x41bac0);const _0x260469=document['createElement']('input');_0x260469['type']='checkbox',_0x260469['checked']=_0x4897d2['visible'],_0x260469['addEventListener']('change',()=>{_0x4897d2['visible']=_0x260469['checked'],_0x41bac0();}),_0xfdfca6['appendChild'](createCheckRow('Visible',_0x260469));const _0x53991b=document['createElement']('input');_0x53991b['type']='checkbox',_0x53991b['checked']=_0x4897d2['depthTest'],_0x53991b['addEventListener']('change',()=>{_0x4897d2['depthTest']=_0x53991b['checked'],_0x4897d2['needsUpdate']=!![],_0x41bac0();}),_0xfdfca6['appendChild'](createCheckRow('Depth\x20test',_0x53991b));const _0x489ff8=document['createElement']('input');_0x489ff8['type']='checkbox',_0x489ff8['checked']=_0x4897d2['depthWrite'],_0x489ff8['addEventListener']('change',()=>{_0x4897d2['depthWrite']=_0x489ff8['checked'],_0x4897d2['needsUpdate']=!![],_0x41bac0();}),_0xfdfca6['appendChild'](createCheckRow('Depth\x20write',_0x489ff8)),appendNumberRow(_0xfdfca6,'Opacity',_0x4897d2['opacity'],_0x3169dc=>{_0x4897d2['opacity']=_0x3169dc,_0x4897d2['transparent']=_0x3169dc<0x1||_0x4897d2['transparent'],_0x4897d2['needsUpdate']=!![];},_0x41bac0,{'min':0x0,'max':0x1,'step':'0.01'});const _0x40d4d2=document['createElement']('input');_0x40d4d2['type']='checkbox',_0x40d4d2['checked']=_0x4897d2['transparent'],_0x40d4d2['addEventListener']('change',()=>{_0x4897d2['transparent']=_0x40d4d2['checked'],_0x4897d2['needsUpdate']=!![],_0x41bac0();}),_0xfdfca6['appendChild'](createCheckRow('Transparent',_0x40d4d2)),appendAlphaModeRows(_0xfdfca6,_0x4897d2,_0x41bac0);}function appendWireframeRow(_0x7d4031,_0x4eb5b8,_0x3d8baa){const _0x2a85a3=_0x4eb5b8;if(_0x2a85a3['wireframe']===undefined)return;const _0x41c902=document['createElement']('input');_0x41c902['type']='checkbox',_0x41c902['checked']=!!_0x2a85a3['wireframe'],_0x41c902['addEventListener']('change',()=>{_0x2a85a3['wireframe']=_0x41c902['checked'],_0x4eb5b8['needsUpdate']=!![],_0x3d8baa();}),_0x7d4031['appendChild'](createCheckRow('Wireframe',_0x41c902));}function appendStandardPbrSections(_0x47ade3,_0x12b2ea,_0x3867e8,_0xad7a4e){var _0x51b478,_0x23d11b,_0x5322a9,_0x2dde98;const _0x1bb112=appendCollapsibleSection(_0x47ade3,'Base',{'defaultCollapsed':![]});appendColorRow(_0x1bb112,'Color',_0x12b2ea['color'],_0x3867e8),appendTextureMapSlot(_0x1bb112,'map',_0x12b2ea['map'],_0xad7a4e('map')),appendTextureMapSlot(_0x1bb112,'envMap',_0x12b2ea['envMap'],_0xad7a4e('envMap')),appendNumberRow(_0x1bb112,'Env\x20intensity',_0x12b2ea['envMapIntensity'],_0x1a2c15=>{_0x12b2ea['envMapIntensity']=_0x1a2c15,_0x12b2ea['needsUpdate']=!![];},_0x3867e8,{'min':0x0,'step':'0.05'});const _0x5b311e=appendCollapsibleSection(_0x47ade3,'Metallic\x20—\x20Roughness',{'defaultCollapsed':!![]});appendNumberRow(_0x5b311e,'Metalness',_0x12b2ea['metalness'],_0x2d43c7=>{_0x12b2ea['metalness']=_0x2d43c7,_0x12b2ea['needsUpdate']=!![];},_0x3867e8,{'min':0x0,'max':0x1,'step':'0.01'}),appendNumberRow(_0x5b311e,'Roughness',_0x12b2ea['roughness'],_0x13963e=>{_0x12b2ea['roughness']=_0x13963e,_0x12b2ea['needsUpdate']=!![];},_0x3867e8,{'min':0x0,'max':0x1,'step':'0.01'}),appendTextureMapSlot(_0x5b311e,'metalnessMap',_0x12b2ea['metalnessMap'],_0xad7a4e('metalnessMap')),appendTextureMapSlot(_0x5b311e,'roughnessMap',_0x12b2ea['roughnessMap'],_0xad7a4e('roughnessMap'));const _0x30ff73=appendCollapsibleSection(_0x47ade3,'Normal',{'defaultCollapsed':!![]});appendTextureMapSlot(_0x30ff73,'normalMap',_0x12b2ea['normalMap'],_0xad7a4e('normalMap')),appendNumberRow(_0x30ff73,'Normal\x20scale\x20X',(_0x23d11b=(_0x51b478=_0x12b2ea['normalScale'])===null||_0x51b478===void 0x0?void 0x0:_0x51b478['x'])!==null&&_0x23d11b!==void 0x0?_0x23d11b:0x1,_0x44cb88=>{!_0x12b2ea['normalScale']&&(_0x12b2ea['normalScale']=new THREE['Vector2'](0x1,0x1)),_0x12b2ea['normalScale']['x']=_0x44cb88,_0x12b2ea['needsUpdate']=!![];},_0x3867e8,{'step':'0.01'}),appendNumberRow(_0x30ff73,'Normal\x20scale\x20Y',(_0x2dde98=(_0x5322a9=_0x12b2ea['normalScale'])===null||_0x5322a9===void 0x0?void 0x0:_0x5322a9['y'])!==null&&_0x2dde98!==void 0x0?_0x2dde98:0x1,_0x30be42=>{!_0x12b2ea['normalScale']&&(_0x12b2ea['normalScale']=new THREE['Vector2'](0x1,0x1)),_0x12b2ea['normalScale']['y']=_0x30be42,_0x12b2ea['needsUpdate']=!![];},_0x3867e8,{'step':'0.01'});const _0x30cf64=appendCollapsibleSection(_0x47ade3,'Occlusion',{'defaultCollapsed':!![]});appendTextureMapSlot(_0x30cf64,'aoMap',_0x12b2ea['aoMap'],_0xad7a4e('aoMap')),appendNumberRow(_0x30cf64,'aoMap\x20intensity',_0x12b2ea['aoMapIntensity'],_0x366ad9=>{_0x12b2ea['aoMapIntensity']=_0x366ad9,_0x12b2ea['needsUpdate']=!![];},_0x3867e8,{'min':0x0,'step':'0.01'});const _0x1f9b72=appendCollapsibleSection(_0x47ade3,'Emissive',{'defaultCollapsed':!![]});appendColorRow(_0x1f9b72,'Emissive',_0x12b2ea['emissive'],_0x3867e8),appendNumberRow(_0x1f9b72,'Emissive\x20intensity',_0x12b2ea['emissiveIntensity'],_0x5773fc=>{_0x12b2ea['emissiveIntensity']=_0x5773fc,_0x12b2ea['needsUpdate']=!![];},_0x3867e8,{'min':0x0,'step':'0.01'}),appendTextureMapSlot(_0x1f9b72,'emissiveMap',_0x12b2ea['emissiveMap'],_0xad7a4e('emissiveMap'));const _0xf2fe4=appendCollapsibleSection(_0x47ade3,'Alpha\x20/\x20Maps',{'defaultCollapsed':!![]});appendTextureMapSlot(_0xf2fe4,'alphaMap',_0x12b2ea['alphaMap'],_0xad7a4e('alphaMap')),appendTextureMapSlot(_0xf2fe4,'lightMap',_0x12b2ea['lightMap'],_0xad7a4e('lightMap')),appendTextureMapSlot(_0xf2fe4,'bumpMap',_0x12b2ea['bumpMap'],_0xad7a4e('bumpMap')),appendNumberRow(_0xf2fe4,'Bump\x20scale',_0x12b2ea['bumpScale'],_0x51f1dd=>{_0x12b2ea['bumpScale']=_0x51f1dd,_0x12b2ea['needsUpdate']=!![];},_0x3867e8,{'step':'0.01'});}function fixNormalScaleInit(_0x53f09e){!_0x53f09e['normalScale']&&(_0x53f09e['normalScale']=new THREE['Vector2'](0x1,0x1));}function appendPhysicalSections(_0x2422fc,_0x122685,_0x4c0c40,_0x9e4d05){const _0x259b9d=appendCollapsibleSection(_0x2422fc,'Physical\x20/\x20glTF\x20extensions',{'defaultCollapsed':!![]});appendNumberRow(_0x259b9d,'IOR',_0x122685['ior'],_0x2b3cd9=>{_0x122685['ior']=_0x2b3cd9,_0x122685['needsUpdate']=!![];},_0x4c0c40,{'min':0x1,'max':2.333,'step':'0.01'}),appendNumberRow(_0x259b9d,'Transmission',_0x122685['transmission'],_0x8e319c=>{_0x122685['transmission']=_0x8e319c,_0x122685['needsUpdate']=!![];},_0x4c0c40,{'min':0x0,'max':0x1,'step':'0.01'}),appendTextureMapSlot(_0x259b9d,'transmissionMap',_0x122685['transmissionMap'],_0x9e4d05('transmissionMap')),appendNumberRow(_0x259b9d,'Thickness',_0x122685['thickness'],_0x33c057=>{_0x122685['thickness']=_0x33c057,_0x122685['needsUpdate']=!![];},_0x4c0c40,{'min':0x0,'step':'0.01'}),appendColorRow(_0x259b9d,'Attenuation\x20color',_0x122685['attenuationColor'],_0x4c0c40),appendNumberRow(_0x259b9d,'Attenuation\x20distance',_0x122685['attenuationDistance'],_0xb55058=>{_0x122685['attenuationDistance']=_0xb55058,_0x122685['needsUpdate']=!![];},_0x4c0c40,{'min':0x0,'step':'0.01'}),appendNumberRow(_0x259b9d,'Clearcoat',_0x122685['clearcoat'],_0xe905e9=>{_0x122685['clearcoat']=_0xe905e9,_0x122685['needsUpdate']=!![];},_0x4c0c40,{'min':0x0,'max':0x1,'step':'0.01'}),appendNumberRow(_0x259b9d,'Clearcoat\x20roughness',_0x122685['clearcoatRoughness'],_0x39d4b6=>{_0x122685['clearcoatRoughness']=_0x39d4b6,_0x122685['needsUpdate']=!![];},_0x4c0c40,{'min':0x0,'max':0x1,'step':'0.01'}),appendTextureMapSlot(_0x259b9d,'clearcoatNormalMap',_0x122685['clearcoatNormalMap'],_0x9e4d05('clearcoatNormalMap')),appendNumberRow(_0x259b9d,'Specular\x20intensity',_0x122685['specularIntensity'],_0x27ebb5=>{_0x122685['specularIntensity']=_0x27ebb5,_0x122685['needsUpdate']=!![];},_0x4c0c40,{'min':0x0,'step':'0.01'}),appendColorRow(_0x259b9d,'Specular\x20color',_0x122685['specularColor'],_0x4c0c40);}function appendBasicMaterial(_0x4f30cc,_0x5767ff,_0x5ba9fa,_0x2b35f4){const _0x249cb4=appendCollapsibleSection(_0x4f30cc,'Basic',{'defaultCollapsed':![]});appendColorRow(_0x249cb4,'Color',_0x5767ff['color'],_0x5ba9fa),appendTextureMapSlot(_0x249cb4,'map',_0x5767ff['map'],_0x2b35f4('map')),appendTextureMapSlot(_0x249cb4,'aoMap',_0x5767ff['aoMap'],_0x2b35f4('aoMap')),appendTextureMapSlot(_0x249cb4,'lightMap',_0x5767ff['lightMap'],_0x2b35f4('lightMap')),appendTextureMapSlot(_0x249cb4,'specularMap',_0x5767ff['specularMap'],_0x2b35f4('specularMap'));}function appendLambertMaterial(_0x373da7,_0x491303,_0x304a3c,_0x25086d){const _0x2b4436=appendCollapsibleSection(_0x373da7,'Lambert',{'defaultCollapsed':![]});appendColorRow(_0x2b4436,'Color',_0x491303['color'],_0x304a3c),appendColorRow(_0x2b4436,'Emissive',_0x491303['emissive'],_0x304a3c),appendTextureMapSlot(_0x2b4436,'map',_0x491303['map'],_0x25086d('map')),appendTextureMapSlot(_0x2b4436,'emissiveMap',_0x491303['emissiveMap'],_0x25086d('emissiveMap'));}function appendPhongMaterial(_0x2167ed,_0x49874b,_0x5dc740,_0x189d24){const _0x5b1f95=appendCollapsibleSection(_0x2167ed,'Phong',{'defaultCollapsed':![]});appendColorRow(_0x5b1f95,'Color',_0x49874b['color'],_0x5dc740),appendColorRow(_0x5b1f95,'Emissive',_0x49874b['emissive'],_0x5dc740),appendColorRow(_0x5b1f95,'Specular',_0x49874b['specular'],_0x5dc740),appendNumberRow(_0x5b1f95,'Shininess',_0x49874b['shininess'],_0x398aed=>{_0x49874b['shininess']=_0x398aed,_0x49874b['needsUpdate']=!![];},_0x5dc740,{'min':0x0,'step':'1'}),appendTextureMapSlot(_0x5b1f95,'map',_0x49874b['map'],_0x189d24('map')),appendTextureMapSlot(_0x5b1f95,'normalMap',_0x49874b['normalMap'],_0x189d24('normalMap')),appendTextureMapSlot(_0x5b1f95,'bumpMap',_0x49874b['bumpMap'],_0x189d24('bumpMap')),appendTextureMapSlot(_0x5b1f95,'emissiveMap',_0x49874b['emissiveMap'],_0x189d24('emissiveMap')),appendTextureMapSlot(_0x5b1f95,'specularMap',_0x49874b['specularMap'],_0x189d24('specularMap'));}function appendToonMaterial(_0xac2217,_0x51f74c,_0xdb2afb,_0x808b9){const _0x4789d0=appendCollapsibleSection(_0xac2217,'Toon',{'defaultCollapsed':![]});appendColorRow(_0x4789d0,'Color',_0x51f74c['color'],_0xdb2afb),appendTextureMapSlot(_0x4789d0,'map',_0x51f74c['map'],_0x808b9('map')),appendTextureMapSlot(_0x4789d0,'gradientMap',_0x51f74c['gradientMap'],_0x808b9('gradientMap')),appendTextureMapSlot(_0x4789d0,'normalMap',_0x51f74c['normalMap'],_0x808b9('normalMap'));}function appendMatcapMaterial(_0x47b010,_0x591a93,_0x32876a,_0x12ddb9){const _0x5e3e89=appendCollapsibleSection(_0x47b010,'Matcap',{'defaultCollapsed':![]});appendColorRow(_0x5e3e89,'Color',_0x591a93['color'],_0x32876a),appendTextureMapSlot(_0x5e3e89,'matcap',_0x591a93['matcap'],_0x12ddb9('matcap'));}function appendNormalMaterial(_0x134445,_0xcec252,_0x26f3b0){const _0x1736cb=appendCollapsibleSection(_0x134445,'Normal\x20map\x20view',{'defaultCollapsed':![]}),_0x549c0d=document['createElement']('input');_0x549c0d['type']='checkbox',_0x549c0d['checked']=!!_0xcec252['wireframe'],_0x549c0d['addEventListener']('change',()=>{_0xcec252['wireframe']=_0x549c0d['checked'],_0xcec252['needsUpdate']=!![],_0x26f3b0();}),_0x1736cb['appendChild'](createCheckRow('Wireframe',_0x549c0d));}function appendPointsMaterial(_0x5deddf,_0x259f97,_0x29c424,_0x566d93){const _0x346df6=appendCollapsibleSection(_0x5deddf,'Points',{'defaultCollapsed':![]});appendColorRow(_0x346df6,'Color',_0x259f97['color'],_0x29c424),appendNumberRow(_0x346df6,'Size',_0x259f97['size'],_0xcb67e3=>{_0x259f97['size']=_0xcb67e3,_0x259f97['needsUpdate']=!![];},_0x29c424,{'min':0x0,'step':'0.01'});const _0x170aa2=document['createElement']('input');_0x170aa2['type']='checkbox',_0x170aa2['checked']=_0x259f97['sizeAttenuation'],_0x170aa2['addEventListener']('change',()=>{_0x259f97['sizeAttenuation']=_0x170aa2['checked'],_0x259f97['needsUpdate']=!![],_0x29c424();}),_0x346df6['appendChild'](createCheckRow('Size\x20attenuation',_0x170aa2)),appendTextureMapSlot(_0x346df6,'map',_0x259f97['map'],_0x566d93('map'));}function appendLineMaterial(_0x168318,_0x5cbfd0,_0x3f9cc2){const _0x2924bd=appendCollapsibleSection(_0x168318,'Line',{'defaultCollapsed':![]});appendColorRow(_0x2924bd,'Color',_0x5cbfd0['color'],_0x3f9cc2),appendNumberRow(_0x2924bd,'Line\x20width',_0x5cbfd0['linewidth'],_0x79b737=>{_0x5cbfd0['linewidth']=_0x79b737,_0x5cbfd0['needsUpdate']=!![];},_0x3f9cc2,{'min':0x0,'step':'1'});}function appendSpriteMaterial(_0x86c867,_0x45fe24,_0x3de542,_0x17d579){const _0x507389=appendCollapsibleSection(_0x86c867,'Sprite',{'defaultCollapsed':![]});appendColorRow(_0x507389,'Color',_0x45fe24['color'],_0x3de542),appendTextureMapSlot(_0x507389,'map',_0x45fe24['map'],_0x17d579('map')),appendNumberRow(_0x507389,'Rotation\x20(rad)',_0x45fe24['rotation'],_0x4c9463=>{_0x45fe24['rotation']=_0x4c9463,_0x45fe24['needsUpdate']=!![];},_0x3de542,{'step':'0.01'});}function appendShaderMaterial(_0x2df02a,_0x3fa6ab,_0x284fff){const _0x2c39bd=appendCollapsibleSection(_0x2df02a,'Shader',{'defaultCollapsed':![]}),_0xc99036=(_0x3fa6ab['vertexShader']||'')['trim']()['split']('\x0a')[0x0]||'—';appendReadonlyRow(_0x2c39bd,'Vertex\x20(first\x20line)',_0xc99036['length']>0x50?_0xc99036['slice'](0x0,0x4d)+'…':_0xc99036);const _0x2695d6=document['createElement']('textarea');_0x2695d6['className']='prop-input\x20prop-table-editor--json',_0x2695d6['rows']=0x4,_0x2695d6['readOnly']=!![],_0x2695d6['value']=Object['keys'](_0x3fa6ab['uniforms']||{})['slice'](0x0,0x18)['join'](',\x20'),_0x2695d6['title']='Uniform\x20names\x20(read-only;\x20edit\x20in\x20code)',_0x2c39bd['appendChild'](createFormInputRow('Uniforms\x20(names)',_0x2695d6));const _0x5523a1=document['createElement']('input');_0x5523a1['type']='checkbox',_0x5523a1['checked']=!!_0x3fa6ab['wireframe'],_0x5523a1['addEventListener']('change',()=>{_0x3fa6ab['wireframe']=_0x5523a1['checked'],_0x3fa6ab['needsUpdate']=!![],_0x284fff();}),_0x2c39bd['appendChild'](createCheckRow('Wireframe',_0x5523a1));}function appendMaterialTypeEditor(_0x5bb10d,_0x120862,_0x44543b,_0xdc701f){const _0x51d453=_0xdc701f!==null&&_0xdc701f!==void 0x0?_0xdc701f:()=>{},_0x3a8567=_0x261a42=>({'mat':_0x120862,'propKey':_0x261a42,'enableRender':_0x44543b,'refreshPanel':_0x51d453});appendReadonlyRow(_0x5bb10d,'Type',_0x120862['type']);const _0x2a1c64=appendCollapsibleSection(_0x5bb10d,'General',{'defaultCollapsed':![]});appendCommonMaterialRows(_0x2a1c64,_0x120862,_0x44543b),appendWireframeRow(_0x2a1c64,_0x120862,_0x44543b);if(_0x120862 instanceof THREE['MeshPhysicalMaterial'])fixNormalScaleInit(_0x120862),appendStandardPbrSections(_0x5bb10d,_0x120862,_0x44543b,_0x3a8567),appendPhysicalSections(_0x5bb10d,_0x120862,_0x44543b,_0x3a8567);else {if(_0x120862 instanceof THREE['MeshStandardMaterial'])fixNormalScaleInit(_0x120862),appendStandardPbrSections(_0x5bb10d,_0x120862,_0x44543b,_0x3a8567);else {if(_0x120862 instanceof THREE['MeshBasicMaterial'])appendBasicMaterial(_0x5bb10d,_0x120862,_0x44543b,_0x3a8567);else {if(_0x120862 instanceof THREE['MeshLambertMaterial'])appendLambertMaterial(_0x5bb10d,_0x120862,_0x44543b,_0x3a8567);else {if(_0x120862 instanceof THREE['MeshToonMaterial'])appendToonMaterial(_0x5bb10d,_0x120862,_0x44543b,_0x3a8567);else {if(_0x120862 instanceof THREE['MeshPhongMaterial'])appendPhongMaterial(_0x5bb10d,_0x120862,_0x44543b,_0x3a8567);else {if(_0x120862 instanceof THREE['MeshMatcapMaterial'])appendMatcapMaterial(_0x5bb10d,_0x120862,_0x44543b,_0x3a8567);else {if(_0x120862 instanceof THREE['MeshNormalMaterial'])appendNormalMaterial(_0x5bb10d,_0x120862,_0x44543b);else {if(_0x120862 instanceof THREE['PointsMaterial'])appendPointsMaterial(_0x5bb10d,_0x120862,_0x44543b,_0x3a8567);else {if(_0x120862 instanceof THREE['LineDashedMaterial']){appendLineMaterial(_0x5bb10d,_0x120862,_0x44543b);const _0x591015=appendCollapsibleSection(_0x5bb10d,'Dashed',{'defaultCollapsed':![]}),_0x558c42=_0x120862;appendNumberRow(_0x591015,'Scale',_0x558c42['scale'],_0x38c5c4=>{_0x558c42['scale']=_0x38c5c4,_0x558c42['needsUpdate']=!![],_0x44543b();},_0x44543b,{'step':'0.01'}),appendNumberRow(_0x591015,'Dash\x20size',_0x558c42['dashSize'],_0x5d44c9=>{_0x558c42['dashSize']=_0x5d44c9,_0x558c42['needsUpdate']=!![],_0x44543b();},_0x44543b,{'min':0x0,'step':'0.01'}),appendNumberRow(_0x591015,'Gap\x20size',_0x558c42['gapSize'],_0x2c2a18=>{_0x558c42['gapSize']=_0x2c2a18,_0x558c42['needsUpdate']=!![],_0x44543b();},_0x44543b,{'min':0x0,'step':'0.01'});}else {if(_0x120862 instanceof THREE['LineBasicMaterial'])appendLineMaterial(_0x5bb10d,_0x120862,_0x44543b);else {if(_0x120862 instanceof THREE['SpriteMaterial'])appendSpriteMaterial(_0x5bb10d,_0x120862,_0x44543b,_0x3a8567);else {if(_0x120862 instanceof THREE['ShaderMaterial'])appendShaderMaterial(_0x5bb10d,_0x120862,_0x44543b);else {if(_0x120862 instanceof THREE['ShadowMaterial']){const _0x87bda=appendCollapsibleSection(_0x5bb10d,'Shadow',{'defaultCollapsed':![]});appendColorRow(_0x87bda,'Color',_0x120862['color'],_0x44543b);}else {const _0x3e1da2=appendCollapsibleSection(_0x5bb10d,'Material',{'defaultCollapsed':![]});appendReadonlyRow(_0x3e1da2,'Note','This\x20material\x20type\x20has\x20no\x20dedicated\x20editor;\x20adjust\x20General\x20above\x20or\x20extend\x20MaterialEditor.ts.');}}}}}}}}}}}}}}}
|
|
185
|
+
|
|
186
|
+
const GEOMETRY_VALUE_PREVIEW_MAX_ROWS=0x2710;function getBufferAttributeArrayLength(_0x409faf){if(!_0x409faf)return 0x0;if(_0x409faf instanceof THREE['InterleavedBufferAttribute'])return _0x409faf['data']['array']['length'];return _0x409faf['array']['length'];}function getGeometrySize(_0x4bbf2e){_0x4bbf2e['computeBoundingBox']();const _0x37c574=new THREE['Vector3'](),_0x199404=_0x4bbf2e['boundingBox'];return _0x199404&&_0x199404['getSize'](_0x37c574),{'width':_0x37c574['x'],'height':_0x37c574['y'],'length':_0x37c574['z']};}function getGlobalSize(_0x180b8b){const _0x384ba4=new THREE['Box3']()['setFromObject'](_0x180b8b),_0x564be1=new THREE['Vector3']();return _0x384ba4['getSize'](_0x564be1),{'width':_0x564be1['x'],'height':_0x564be1['y'],'length':_0x564be1['z']};}function formatBufferAttributeValues(_0x524296,_0x58eeee=GEOMETRY_VALUE_PREVIEW_MAX_ROWS){const _0x1df24e=[],_0x2aa2d4=_0x524296['count'],_0x1980fa=_0x524296['itemSize'],_0x3a0447=Math['min'](_0x2aa2d4,_0x58eeee);for(let _0x649df9=0x0;_0x649df9<_0x3a0447;_0x649df9++){const _0xe9e537=[];for(let _0x2815a5=0x0;_0x2815a5<_0x1980fa;_0x2815a5++){_0xe9e537['push'](_0x524296['getComponent'](_0x649df9,_0x2815a5)['toFixed'](0x3));}_0x1df24e['push'](_0xe9e537['join']('\x20'));}return _0x2aa2d4>_0x58eeee&&_0x1df24e['push']('...\x20('+(_0x2aa2d4-_0x58eeee)+'\x20more\x20rows\x20omitted)'),_0x1df24e['join']('\x0a');}function formatGeometryIndexValues(_0x1a4cf2,_0x581f9b=GEOMETRY_VALUE_PREVIEW_MAX_ROWS){const _0x2dde61=[],_0x1ab431=_0x1a4cf2['count'],_0x16bebd=Math['min'](_0x1ab431,_0x581f9b);for(let _0x3c6c8e=0x0;_0x3c6c8e<_0x16bebd;_0x3c6c8e++){_0x2dde61['push'](String(_0x1a4cf2['getX'](_0x3c6c8e)));}return _0x1ab431>_0x581f9b&&_0x2dde61['push']('...\x20('+(_0x1ab431-_0x581f9b)+'\x20more\x20rows\x20omitted)'),_0x2dde61['join']('\x0a');}
|
|
187
|
+
|
|
188
|
+
function captureMeshGeometryEntry(_0x5d6603){const _0x2a7d63=_0x5d6603['geometry'];return {'meshUuid':_0x5d6603['uuid'],'geometry':_0x2a7d63?_0x2a7d63['clone']():null,'position':_0x5d6603['position']['clone'](),'rotation':_0x5d6603['rotation']['clone'](),'scale':_0x5d6603['scale']['clone']()};}function captureSceneMeshSnapshot(_0x40ef4f){const _0x58200c=[];return _0x40ef4f['traverse'](_0x4c8992=>{isGeometryDrawable(_0x4c8992)&&_0x58200c['push'](captureMeshGeometryEntry(_0x4c8992));}),{'rootUuid':_0x40ef4f['uuid'],'meshes':_0x58200c};}function applyMeshGeometryEntry(_0x571650,_0x30b439){var _0xa0a589;const _0x30bde8=_0x571650['findSceneObjectByUuid'](_0x30b439['meshUuid']);if(!_0x30bde8||!isGeometryDrawable(_0x30bde8))return ![];if(_0x30b439['geometry'])(_0xa0a589=_0x30bde8['geometry'])===null||_0xa0a589===void 0x0?void 0x0:_0xa0a589['dispose'](),_0x30bde8['geometry']=_0x30b439['geometry']['clone']();else _0x30bde8['geometry']&&(_0x30bde8['geometry']['dispose'](),_0x30bde8['geometry']=undefined);return _0x30bde8['position']['copy'](_0x30b439['position']),_0x30bde8['rotation']['copy'](_0x30b439['rotation']),_0x30bde8['scale']['copy'](_0x30b439['scale']),_0x30bde8['updateMatrixWorld'](!![]),!![];}function applySceneMeshSnapshot(_0x3ea067,_0x345ba8){let _0x23e581=![];for(const _0x83512a of _0x345ba8['meshes']){applyMeshGeometryEntry(_0x3ea067,_0x83512a)&&(_0x23e581=!![]);}return _0x23e581&&_0x3ea067['enableRender'](),_0x23e581;}function captureSceneMaterialSnapshot(_0x57ac92){const _0x48d35b=[];return _0x57ac92['traverse'](_0xe5a5fd=>{if(!(_0xe5a5fd instanceof THREE['Mesh']))return;const _0x149b70=_0xe5a5fd['material'];if(!_0x149b70)return;const _0x4ec4ff=Array['isArray'](_0x149b70)?_0x149b70['map'](_0xc8d5c3=>_0xc8d5c3['clone']()):_0x149b70['clone']();_0x48d35b['push']({'meshUuid':_0xe5a5fd['uuid'],'material':_0x4ec4ff});}),{'rootUuid':_0x57ac92['uuid'],'meshes':_0x48d35b};}function applyMeshMaterialEntry(_0xac264b,_0x1b74a1){const _0x46ce05=_0xac264b['findSceneObjectByUuid'](_0x1b74a1['meshUuid']);if(!(_0x46ce05 instanceof THREE['Mesh']))return ![];return _0x46ce05['material']=Array['isArray'](_0x1b74a1['material'])?_0x1b74a1['material']['map'](_0x107131=>_0x107131['clone']()):_0x1b74a1['material']['clone'](),!![];}function applySceneMaterialSnapshot(_0x3ab97d,_0x3d1c86){let _0x30abaf=![];for(const _0x49f7bd of _0x3d1c86['meshes']){applyMeshMaterialEntry(_0x3ab97d,_0x49f7bd)&&(_0x30abaf=!![]);}return _0x30abaf&&_0x3ab97d['enableRender'](),_0x30abaf;}
|
|
189
|
+
|
|
190
|
+
class GeometryEditCommand extends Command{constructor(_0x3df53e,_0x2d3e41,_0x2c6db8){super('GeometryEdit'),this['viewer']=_0x3df53e,this['before']=_0x2d3e41,this['after']=_0x2c6db8;}['undo'](){return applySceneMeshSnapshot(this['viewer'],this['before']);}['redo'](){return applySceneMeshSnapshot(this['viewer'],this['after']);}}
|
|
191
|
+
|
|
192
|
+
class MaterialEditCommand extends Command{constructor(_0x3f07e8,_0x3fd29c,_0x359d0c){super('MaterialEdit'),this['viewer']=_0x3f07e8,this['before']=_0x3fd29c,this['after']=_0x359d0c;}['undo'](){return applySceneMaterialSnapshot(this['viewer'],this['before']);}['redo'](){return applySceneMaterialSnapshot(this['viewer'],this['after']);}}
|
|
193
|
+
|
|
194
|
+
function captureSceneTransformState(_0x5f1aa2){return {'objectUuid':_0x5f1aa2['uuid'],'position':_0x5f1aa2['position']['clone'](),'rotation':_0x5f1aa2['rotation']['clone'](),'scale':_0x5f1aa2['scale']['clone']()};}function transformsEqual(_0x19994e,_0x545469){return _0x19994e['position']['equals'](_0x545469['position'])&&_0x19994e['rotation']['x']===_0x545469['rotation']['x']&&_0x19994e['rotation']['y']===_0x545469['rotation']['y']&&_0x19994e['rotation']['z']===_0x545469['rotation']['z']&&_0x19994e['rotation']['order']===_0x545469['rotation']['order']&&_0x19994e['scale']['equals'](_0x545469['scale']);}class TransformSceneObjectCommand extends Command{constructor(_0x5e464c,_0x12b0f9,_0x29e6d7){super('TransformSceneObject'),this['viewer']=_0x5e464c,this['before']=_0x12b0f9,this['after']=_0x29e6d7;}static['shouldRecord'](_0x96a65b,_0x142e9a){return !transformsEqual(_0x96a65b,_0x142e9a);}['undo'](){return this['viewer']['applySceneObjectTransform'](this['before']);}['redo'](){return this['viewer']['applySceneObjectTransform'](this['after']);}}
|
|
195
|
+
|
|
196
|
+
function recordGeometryEdit(_0x14bfa4,_0x56e8f7,_0x2e81f5){if(!_0x14bfa4['enableSceneEditing'])return _0x2e81f5(),![];const _0xcd4e65=captureSceneMeshSnapshot(_0x56e8f7);_0x2e81f5();const _0x555c62=captureSceneMeshSnapshot(_0x56e8f7);return _0x14bfa4['getUndoManager']()['addCommand'](new GeometryEditCommand(_0x14bfa4,_0xcd4e65,_0x555c62)),!![];}function recordMaterialEdit(_0x1df44d,_0x376f76,_0x3847a6){if(!_0x1df44d['enableSceneEditing'])return _0x3847a6(),![];const _0x1b6378=captureSceneMaterialSnapshot(_0x376f76);_0x3847a6();const _0x165f14=captureSceneMaterialSnapshot(_0x376f76);return _0x1df44d['getUndoManager']()['addCommand'](new MaterialEditCommand(_0x1df44d,_0x1b6378,_0x165f14)),!![];}function recordTransformEdit(_0x2df0c6,_0x730d7,_0x2e636e){if(!_0x2df0c6['enableSceneEditing'])return;const _0x4f832b=captureSceneTransformState(_0x730d7);TransformSceneObjectCommand['shouldRecord'](_0x2e636e,_0x4f832b)&&_0x2df0c6['getUndoManager']()['addCommand'](new TransformSceneObjectCommand(_0x2df0c6,_0x2e636e,_0x4f832b));}
|
|
197
|
+
|
|
198
|
+
class PropertyPlugin extends Plugin{constructor(_0x3d8bee,_0xdddb5e){const _0x3e5d42=(_0xdddb5e===null||_0xdddb5e===void 0x0?void 0x0:_0xdddb5e['id'])||PropertyPlugin['DEFAULT_ID'];super(_0x3d8bee,{'id':_0x3e5d42}),this['lastActiveTabIdx']=0x0,this['materialSlotIndex']=0x0,this['onLanguageChange']=()=>{this['applyLocalizedChrome']();},this['onObjectSelected']=()=>{var _0x17f91b;((_0x17f91b=this['basePanel'])===null||_0x17f91b===void 0x0?void 0x0:_0x17f91b['isVisible']())&&(this['updateContent'](),this['viewer']['enableRender']());},this['onObjectDeselected']=()=>{var _0x32769a;((_0x32769a=this['basePanel'])===null||_0x32769a===void 0x0?void 0x0:_0x32769a['isVisible']())&&(this['updateContent'](),this['viewer']['enableRender']());},this['onObjectTransformed']=_0x4149c1=>{var _0x6892e1,_0x422413;if(!((_0x6892e1=this['basePanel'])===null||_0x6892e1===void 0x0?void 0x0:_0x6892e1['isVisible']()))return;const _0x47f478=(_0x422413=this['viewer']['getHighlightedObject']())!==null&&_0x422413!==void 0x0?_0x422413:_0x4149c1;if(!_0x47f478||!this['nodeInputs'])return;this['updateNodeInputs'](_0x47f478),this['updateGeometryInfo'](_0x47f478),this['updateBoundingBoxInfo'](_0x47f478);},this['cfg']=_0xdddb5e||{'id':_0x3e5d42},this['cfg']['visible']!==![]&&this['updateContent'](),this['viewer']['addEventListener'](ViewerEvent['ObjectSelected'],this['onObjectSelected']),this['viewer']['addEventListener'](ViewerEvent['ObjectDeselected'],this['onObjectDeselected']),this['viewer']['addEventListener'](ViewerEvent['ObjectTransformed'],this['onObjectTransformed']),this['viewer']['addEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']);}['applyLocalizedChrome'](){var _0x3d608b,_0xe8cb5a,_0x5b6a87;(_0x3d608b=this['basePanel'])===null||_0x3d608b===void 0x0?void 0x0:_0x3d608b['setTitle'](t$5('property'));const _0x31c159=['tabMaterial','tabNode','property','tabEnvironment'];(_0xe8cb5a=this['content'])===null||_0xe8cb5a===void 0x0?void 0x0:_0xe8cb5a['querySelectorAll']('.prop-tab')['forEach'](_0x571d76=>{const _0x36fae6=Number(_0x571d76['dataset']['index']),_0x10ed65=_0x31c159[_0x36fae6];_0x10ed65&&(_0x571d76['textContent']=t$5(_0x10ed65));}),(_0x5b6a87=this['details'])===null||_0x5b6a87===void 0x0?void 0x0:_0x5b6a87['querySelectorAll']('[data-i18n-key=\x22nothingSelected\x22]')['forEach'](_0x508884=>{_0x508884['textContent']=t$5('nothingSelected');});}['updateContent'](){var _0x36ee03;const _0x3df66d=this['viewer'];this['cfg']['containerId']&&(this['container']=document['getElementById'](this['cfg']['containerId']));!this['container']&&(this['container']=_0x3df66d['widgetContainer']);if(!this['basePanel']){const _0x3d57a8={'container':this['container'],'title':t$5('property'),'cssClass':'property','onClose':()=>this['onClose']()};this['basePanel']=this['cfg']['containerId']?new DockPanel(Object['assign'](Object['assign']({},_0x3d57a8),{'dock':'right'})):new BasePanel(Object['assign'](Object['assign']({},_0x3d57a8),{'viewportContainer':this['viewer']['viewerContainer']})),this['content']=(_0x36ee03=this['basePanel'])===null||_0x36ee03===void 0x0?void 0x0:_0x36ee03['content'];}this['addContent']();}['setVisible'](_0x4b3677){_0x4b3677&&this['updateContent'](),this['basePanel']&&(this['basePanel']['setVisible'](_0x4b3677),this['dispatchEvent']('visibilitychange',_0x4b3677));}['isVisible'](){var _0x479d84;return !!((_0x479d84=this['basePanel'])===null||_0x479d84===void 0x0?void 0x0:_0x479d84['isVisible']());}['onClose'](){this['dispatchEvent']('visibilitychange',![]);}['destroy'](){var _0x2f8c3a;super['destroy'](),this['viewer']['removeEventListener'](ViewerEvent['ObjectSelected'],this['onObjectSelected']),this['viewer']['removeEventListener'](ViewerEvent['ObjectDeselected'],this['onObjectDeselected']),this['viewer']['removeEventListener'](ViewerEvent['ObjectTransformed'],this['onObjectTransformed']),this['viewer']['removeEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']),(_0x2f8c3a=this['basePanel'])===null||_0x2f8c3a===void 0x0?void 0x0:_0x2f8c3a['destroy'](),this['nodePanel']=undefined,this['nodeExtrasContainer']=undefined,this['nodeModeButtons']=undefined,this['nodeInputs']=undefined,this['geometrySection']=undefined,this['boundingBoxSection']=undefined,this['boundingBoxGeometrySizeInputs']=undefined,this['boundingBoxSizeInputs']=undefined,this['materialPanelMeshUuid']=undefined,this['materialSlotIndex']=0x0;}['addContent'](){if(!this['content'])return;this['content']['innerHTML']='';const _0x2223ea=document['createElement']('div');_0x2223ea['className']='prop-tabs-bar';const _0x5d060a=[],_0x3bf8e8=document['createElement']('div');_0x3bf8e8['className']='prop-details';let _0x1fb6a7=-0x1,_0x7e73c8=!![];const _0x4f423a=(_0x55bd38,_0x13201b,_0x12b292)=>{const _0xbf5388=document['createElement']('div');_0xbf5388['className']='prop-tab',_0xbf5388['textContent']=_0x13201b,_0xbf5388['dataset']['index']=String(_0x55bd38),!_0x12b292&&_0xbf5388['classList']['add']('disabled'),_0x55bd38===this['lastActiveTabIdx']&&(_0x7e73c8=_0x12b292),_0x12b292&&_0x1fb6a7<0x0&&(_0x1fb6a7=_0x55bd38),_0x2223ea['appendChild'](_0xbf5388),_0x5d060a['push'](_0xbf5388),_0xbf5388['addEventListener']('click',()=>{_0x5d060a['forEach'](_0x17249b=>_0x17249b['classList']['remove']('active')),_0xbf5388['classList']['add']('active'),this['lastActiveTabIdx']=_0x55bd38,this['renderTab'](_0x55bd38);});};_0x4f423a(0x0,t$5('tabMaterial'),this['isMaterialTabEnabled']()),_0x4f423a(0x1,t$5('tabNode'),this['isNodeTabEnabled']()),_0x4f423a(0x2,t$5('property'),this['isPropertyTabEnabled']()),_0x4f423a(0x3,t$5('tabEnvironment'),!![]),this['content']['appendChild'](_0x2223ea),this['content']['appendChild'](_0x3bf8e8),this['details']=_0x3bf8e8;let _0x2ef8df=0x0;if(_0x7e73c8)_0x2ef8df=this['lastActiveTabIdx'];else _0x1fb6a7<0x0?_0x2ef8df=this['lastActiveTabIdx']:_0x2ef8df=_0x1fb6a7;_0x5d060a[_0x2ef8df]['classList']['add']('active'),this['renderTab'](_0x2ef8df);}['resolveMeshForMaterialPanel'](_0x1815b0){if(!_0x1815b0)return undefined;let _0x178abb;return _0x1815b0['traverseVisible'](_0x4d85a0=>{if(_0x178abb)return;_0x4d85a0 instanceof THREE['Mesh']&&_0x4d85a0['geometry']&&_0x4d85a0['material']&&(_0x178abb=_0x4d85a0);}),_0x178abb;}['isMaterialTabEnabled'](){if(!this['viewer']['is3d']())return ![];const _0x9ea17=this['viewer']['getHighlightedObject']();return !!this['resolveMeshForMaterialPanel'](_0x9ea17);}['isNodeTabEnabled'](){const _0x7ede6e=this['viewer']['getHighlightedObject']();return !!_0x7ede6e;}['isPropertyTabEnabled'](){const _0x579257=this['viewer']['getHighlightedObject']();return !!_0x579257;}['renderTab'](_0x4ffe8a){const _0x3e0294=this['viewer']['getHighlightedObject']();if(this['details']){const _0x2fab9d=_0x4ffe8a===0x0?'material':_0x4ffe8a===0x1?'node':_0x4ffe8a===0x2?'property':'environment';this['details']['dataset']['tab']=_0x2fab9d;}if(_0x4ffe8a===0x0)this['renderMaterial'](_0x3e0294);else {if(_0x4ffe8a===0x1)this['renderNode'](_0x3e0294);else {if(_0x4ffe8a===0x2)this['renderProperty'](_0x3e0294);else _0x4ffe8a===0x3&&this['renderEnvironment']();}}}['clearDetails'](){this['details']&&(this['details']['innerHTML']='');}['renderMaterial'](_0x364dee){var _0x362861;const _0x12afc7=this['details'];if(!_0x12afc7)return;this['clearDetails']();const _0x4a63fe=(_0x40f676,_0x220ead)=>{const _0x23d6b7=document['createElement']('div');_0x23d6b7['className']='panel-empty',_0x220ead?(_0x23d6b7['dataset']['i18nKey']=_0x220ead,_0x23d6b7['textContent']=t$5(_0x220ead)):_0x23d6b7['textContent']=_0x40f676,_0x12afc7['appendChild'](_0x23d6b7);};if(!_0x364dee){_0x4a63fe('','nothingSelected');return;}const _0x24b850=this['resolveMeshForMaterialPanel'](_0x364dee);if(!_0x24b850){_0x4a63fe('No\x20mesh\x20with\x20material\x20under\x20selection');return;}const _0x191408=_0x24b850['material'],_0x663def=Array['isArray'](_0x191408)?_0x191408['length']>0x0:!!_0x191408;if(!_0x663def){_0x4a63fe('No\x20material\x20found');return;}this['materialPanelMeshUuid']!==_0x24b850['uuid']&&(this['materialPanelMeshUuid']=_0x24b850['uuid'],this['materialSlotIndex']=0x0);const _0x302643=Array['isArray'](_0x191408)?_0x191408:null,_0x41c631=!!_0x302643&&_0x302643['length']>0x0,_0x22ef49=_0x302643?_0x302643['length']:0x1;_0x302643&&(this['materialSlotIndex']=Math['min'](Math['max'](0x0,this['materialSlotIndex']),_0x22ef49-0x1));let _0x3931eb;if(_0x302643){const _0x5083ec=this['materialSlotIndex'];_0x3931eb=_0x302643[_0x5083ec];}else _0x3931eb=_0x191408;if(_0x41c631&&_0x22ef49>0x1){const _0x1bf7d8=document['createElement']('select');_0x1bf7d8['className']='prop-input\x20prop-material-slot-select';for(let _0x51eb0f=0x0;_0x51eb0f<_0x22ef49;_0x51eb0f++){const _0x5907ea=document['createElement']('option');_0x5907ea['value']=String(_0x51eb0f);const _0x110fb2=(((_0x362861=_0x302643[_0x51eb0f])===null||_0x362861===void 0x0?void 0x0:_0x362861['name'])||'')['trim']();_0x5907ea['textContent']=_0x51eb0f+0x1+'.\x20'+(_0x110fb2||'<empty>'),_0x1bf7d8['appendChild'](_0x5907ea);}_0x1bf7d8['value']=String(this['materialSlotIndex']),_0x1bf7d8['addEventListener']('change',()=>{this['materialSlotIndex']=Math['max'](0x0,parseInt(_0x1bf7d8['value'],0xa)||0x0);const _0x171aa3=this['viewer']['getHighlightedObject']();_0x171aa3&&this['renderMaterial'](_0x171aa3);}),_0x12afc7['appendChild'](createFormInputRow('Material\x20slot',_0x1bf7d8));}const _0x3690fb=document['createElement']('section'),_0x5b9120=document['createElement']('input');_0x5b9120['type']='text',_0x5b9120['value']=_0x3931eb['name']||'',_0x5b9120['className']='prop-input\x20prop-input--text',_0x5b9120['placeholder']='<empty>',_0x5b9120['addEventListener']('change',_0x3a673c=>{_0x3a673c['stopPropagation'](),_0x3931eb['name']=_0x5b9120['value'],_0x3931eb['needsUpdate']=!![],this['viewer']['enableRender']();}),_0x3690fb['appendChild'](createFormInputRow('Name',_0x5b9120));const _0x5308e9=document['createElement']('div');_0x5308e9['className']='prop-form-row\x20prop-material-id-row';const _0x50d978=document['createElement']('span');_0x50d978['className']='prop-label',_0x50d978['textContent']='ID';const _0x357bbb=document['createElement']('div');_0x357bbb['className']='prop-material-id-field';const _0x19a6a3=document['createElement']('input');_0x19a6a3['type']='text',_0x19a6a3['readOnly']=!![],_0x19a6a3['className']='prop-input\x20prop-input--text\x20prop-input--readonly',_0x19a6a3['value']=String(_0x3931eb['id']),_0x19a6a3['title']=_0x19a6a3['value'];const _0x34e846=createIconActionButton({'className':'prop-material-duplicate-btn','title':t$5('duplicateMaterial'),'svg':PROPERTY_ICON_DUPLICATE});_0x34e846['addEventListener']('click',_0x27eb32=>{_0x27eb32['stopPropagation']();const _0x3b7b65=this['viewer'];recordMaterialEdit(_0x3b7b65,_0x24b850,()=>{this['duplicateMaterialForMesh'](_0x24b850,this['materialSlotIndex']);});const _0x59a9e2=_0x3b7b65['getHighlightedObject']();_0x59a9e2&&this['renderMaterial'](_0x59a9e2);}),_0x357bbb['append'](_0x19a6a3,_0x34e846),_0x5308e9['append'](_0x50d978,_0x357bbb),_0x3690fb['appendChild'](_0x5308e9),_0x12afc7['appendChild'](_0x3690fb),appendMaterialTypeEditor(_0x12afc7,_0x3931eb,()=>{this['viewer']['enableRender'](),this['scheduleMaterialUndoRecord'](_0x24b850);},()=>{const _0x3eca2b=this['viewer']['getHighlightedObject']();_0x3eca2b&&this['renderMaterial'](_0x3eca2b);});}['scheduleMaterialUndoRecord'](_0x4fe8a8){const _0x693ccb=this['viewer'];if(!_0x693ccb['enableSceneEditing'])return;!this['materialEditBefore']&&(this['materialEditBefore']=captureSceneMaterialSnapshot(_0x4fe8a8)),this['materialEditDebounce']&&clearTimeout(this['materialEditDebounce']),this['materialEditDebounce']=setTimeout(()=>{const _0x34234e=this['materialEditBefore'];this['materialEditBefore']=undefined,this['materialEditDebounce']=undefined;if(!_0x34234e)return;const _0x505804=captureSceneMaterialSnapshot(_0x4fe8a8);_0x693ccb['getUndoManager']()['addCommand'](new MaterialEditCommand(_0x693ccb,_0x34234e,_0x505804));},0x190);}['duplicateMaterialForMesh'](_0x37bd44,_0x1fe763){const _0x192728=_0x37bd44['material'];if(!_0x192728)return;if(Array['isArray'](_0x192728)){const _0x1fed5a=Math['min'](Math['max'](0x0,_0x1fe763),_0x192728['length']-0x1),_0x556640=_0x192728[_0x1fed5a];if(!_0x556640)return;const _0x45cffd=MaterialUtils['cloneMaterial'](_0x556640),_0xd88c08=_0x192728['slice']();_0xd88c08[_0x1fed5a]=_0x45cffd,_0x37bd44['material']=_0xd88c08,this['syncOriginalMaterialAfterDuplicate'](_0x37bd44,_0x556640,_0x45cffd,_0x1fed5a);}else {const _0x402a8e=MaterialUtils['cloneMaterial'](_0x192728);_0x37bd44['material']=_0x402a8e,this['syncOriginalMaterialAfterDuplicate'](_0x37bd44,_0x192728,_0x402a8e);}const _0x524e90=_0x37bd44['material'];Array['isArray'](_0x524e90)?_0x524e90['forEach'](_0x53d44a=>{_0x53d44a['needsUpdate']=!![];}):_0x524e90['needsUpdate']=!![],this['viewer']['enableRender']();}['syncOriginalMaterialAfterDuplicate'](_0x1ca1dd,_0x46ace5,_0x26fbf0,_0x3269ea){const _0x400435=_0x1ca1dd['userData']['originalMaterial'];if(!_0x400435)return;if(_0x400435===_0x46ace5){_0x1ca1dd['userData']['originalMaterial']=_0x26fbf0;return;}if(Array['isArray'](_0x400435)&&_0x3269ea!==undefined&&_0x400435[_0x3269ea]===_0x46ace5){const _0x3fb190=_0x400435['slice']();_0x3fb190[_0x3269ea]=_0x26fbf0,_0x1ca1dd['userData']['originalMaterial']=_0x3fb190;}}['renderProperty'](_0x14e42b){const _0x50beae=this['details'];if(!_0x50beae)return;this['clearDetails']();if(!_0x14e42b){const _0x256a87=document['createElement']('div');_0x256a87['className']='panel-empty',_0x256a87['dataset']['i18nKey']='nothingSelected',_0x256a87['textContent']=t$5('nothingSelected'),_0x50beae['appendChild'](_0x256a87);return;}const _0x1f043d=_0x14e42b['userData']||{},_0x9e7811=['originalMaterial','isHighlight','isSelected'],_0x52b9d7=Object['keys'](_0x1f043d||{})['filter'](_0x31a21e=>!_0x9e7811['includes'](_0x31a21e));if(_0x52b9d7['length']===0x0){const _0x227c7c=document['createElement']('div');_0x227c7c['className']='panel-empty',_0x227c7c['textContent']=Object['keys'](_0x1f043d||{})['length']===0x0?t$5('propertyNoUserData'):t$5('propertyNoneVisible'),_0x50beae['appendChild'](_0x227c7c);}else {const _0x2f5278=document['createElement']('table');_0x2f5278['className']='prop-table';for(const _0x3ccf1a of _0x52b9d7){const _0x107084=document['createElement']('tr'),_0x1308bd=document['createElement']('td');_0x1308bd['className']='prop-table-key',_0x1308bd['textContent']=_0x3ccf1a;const _0x135235=document['createElement']('td');_0x135235['className']='prop-table-value';const _0x2cc98f=document['createElement']('div');_0x2cc98f['className']='prop-table-value-inner';const _0x3954cf=_0x1f043d[_0x3ccf1a];if(typeof _0x3954cf==='boolean'){const _0x37355f=document['createElement']('input');_0x37355f['type']='checkbox',_0x37355f['checked']=_0x3954cf,_0x37355f['className']='prop-table-editor\x20prop-table-editor--checkbox',_0x37355f['addEventListener']('change',()=>{_0x1f043d[_0x3ccf1a]=_0x37355f['checked'];}),_0x2cc98f['appendChild'](_0x37355f);}else {if(typeof _0x3954cf==='number'){const _0x1d3095=document['createElement']('input');_0x1d3095['type']='number',_0x1d3095['className']='prop-input\x20prop-input--text\x20prop-table-editor',_0x1d3095['value']=Number['isFinite'](_0x3954cf)?String(_0x3954cf):'',_0x1d3095['addEventListener']('change',()=>{const _0x7bfd8a=Number(_0x1d3095['value']);!Number['isNaN'](_0x7bfd8a)?_0x1f043d[_0x3ccf1a]=_0x7bfd8a:_0x1d3095['value']=Number['isFinite'](_0x1f043d[_0x3ccf1a])?String(_0x1f043d[_0x3ccf1a]):'';}),_0x2cc98f['appendChild'](_0x1d3095);}else {if(typeof _0x3954cf==='string'){const _0xdaee20=document['createElement']('input');_0xdaee20['type']='text',_0xdaee20['className']='prop-input\x20prop-input--text\x20prop-table-editor',_0xdaee20['value']=_0x3954cf,_0xdaee20['addEventListener']('input',()=>{_0x1f043d[_0x3ccf1a]=_0xdaee20['value'];}),_0x2cc98f['appendChild'](_0xdaee20);}else {if(_0x3954cf!==null&&typeof _0x3954cf==='object'&&Object['prototype']['toString']['call'](_0x3954cf)==='[object\x20Object]'){_0x107084['classList']['add']('prop-table-row--json');const _0x48e8ec=document['createElement']('textarea');_0x48e8ec['className']='prop-input\x20prop-table-editor\x20prop-table-editor--json',_0x48e8ec['rows']=0x1,_0x48e8ec['value']=JSON['stringify'](_0x3954cf,null,0x2),_0x48e8ec['spellcheck']=![];const _0x437902=()=>{try{const _0x11bf24=JSON['parse'](_0x48e8ec['value']);if(_0x11bf24!==null&&typeof _0x11bf24==='object'&&!Array['isArray'](_0x11bf24)){_0x1f043d[_0x3ccf1a]=_0x11bf24,_0x48e8ec['classList']['remove']('is-invalid');return;}}catch(_0x1c8d8f){}_0x48e8ec['classList']['add']('is-invalid');};_0x48e8ec['addEventListener']('input',_0x437902),_0x2cc98f['appendChild'](_0x48e8ec);}else {const _0x462226=document['createElement']('div');_0x462226['className']='prop-table-editor\x20prop-table-editor--readonly-text',_0x462226['textContent']=String(_0x3954cf),_0x2cc98f['appendChild'](_0x462226);}}}}const _0x303656=createIconActionButton({'className':'prop-uv-delete-btn','title':'Delete\x20'+_0x3ccf1a,'svg':PROPERTY_ICON_DELETE_TRASH});_0x303656['classList']['add']('prop-property-delete-btn'),_0x303656['addEventListener']('click',_0x3773de=>{_0x3773de['stopPropagation'](),delete _0x1f043d[_0x3ccf1a],this['renderProperty'](_0x14e42b);}),_0x2cc98f['appendChild'](_0x303656),_0x135235['appendChild'](_0x2cc98f),_0x107084['appendChild'](_0x1308bd),_0x107084['appendChild'](_0x135235),_0x2f5278['appendChild'](_0x107084);}_0x50beae['appendChild'](_0x2f5278);}const _0x34c357=document['createElement']('div');_0x34c357['className']='prop-property-add-row';const _0xce619a=document['createElement']('div');_0xce619a['className']='prop-property-add-controls';const _0x27b797=document['createElement']('input');_0x27b797['type']='text',_0x27b797['className']='prop-input\x20prop-property-name-input',_0x27b797['placeholder']='Property\x20name';const _0x512884=document['createElement']('div');_0x512884['className']='prop-property-add-error',_0x512884['setAttribute']('role','alert'),_0x512884['style']['display']='none';const _0x24e2bd=()=>{_0x512884['textContent']='',_0x512884['style']['display']='none',_0x27b797['classList']['remove']('is-invalid');},_0x4d722b=_0x21766e=>{_0x512884['textContent']=_0x21766e,_0x512884['style']['display']='block',_0x27b797['classList']['add']('is-invalid');},_0x24962a=document['createElement']('select');_0x24962a['className']='prop-input\x20prop-property-type-select',_0x24962a['innerHTML']='<option\x20value=\x22string\x22>String</option><option\x20value=\x22number\x22>Number</option><option\x20value=\x22boolean\x22>Boolean</option><option\x20value=\x22json\x22>Json</option>';const _0x16d257=createIconActionButton({'className':'prop-property-add-btn','title':'Add\x20property','svg':PROPERTY_ICON_ADD_PLUS});_0x16d257['addEventListener']('click',_0x46fa35=>{_0x46fa35['stopPropagation']();const _0x4c2645=_0x24962a['value'],_0x59cba4=_0x27b797['value']['trim']();if(!_0x59cba4){_0x4d722b(t$5('propertyAddNameRequired'));return;}if(Object['prototype']['hasOwnProperty']['call'](_0x1f043d,_0x59cba4)){_0x4d722b(t$5('propertyAddNameDuplicate'));return;}_0x24e2bd(),_0x1f043d[_0x59cba4]=createDefaultPropertyValue(_0x4c2645),_0x27b797['value']='',this['renderProperty'](_0x14e42b);}),_0x27b797['addEventListener']('input',()=>{_0x24e2bd();}),_0xce619a['appendChild'](_0x27b797),_0xce619a['appendChild'](_0x24962a),_0xce619a['appendChild'](_0x16d257),_0x34c357['appendChild'](_0xce619a),_0x34c357['appendChild'](_0x512884),_0x50beae['appendChild'](_0x34c357);}['renderEnvironment'](){const _0x346adc=this['details'];if(!_0x346adc)return;this['clearDetails'](),renderEnvironmentPanel(_0x346adc,this['viewer']);}['renderNode'](_0x5bace4){const _0x8d1c48=this['details'];if(!_0x8d1c48)return;this['clearDetails']();if(!_0x5bace4){const _0x4032ce=document['createElement']('div');_0x4032ce['className']='panel-empty',_0x4032ce['dataset']['i18nKey']='nothingSelected',_0x4032ce['textContent']=t$5('nothingSelected'),_0x8d1c48['appendChild'](_0x4032ce);return;}if(!this['nodePanel']){const _0x99f980=document['createElement']('div'),_0x5de941=document['createElement']('div');_0x5de941['className']='prop-node-mode-row';const _0x2901ff=document['createElement']('div');_0x2901ff['className']='prop-segmented',_0x2901ff['setAttribute']('role','radiogroup');const _0x54e5ba=document['createElement']('button');_0x54e5ba['type']='button',_0x54e5ba['textContent']='Local',_0x54e5ba['className']='prop-segmented__btn\x20active',_0x54e5ba['setAttribute']('role','radio'),_0x54e5ba['setAttribute']('aria-checked','true');const _0x43739f=document['createElement']('button');_0x43739f['type']='button',_0x43739f['textContent']='Global',_0x43739f['className']='prop-segmented__btn',_0x43739f['setAttribute']('role','radio'),_0x43739f['setAttribute']('aria-checked','false');const _0x2db230=_0x104018=>{_0x54e5ba['classList']['toggle']('active',_0x104018),_0x43739f['classList']['toggle']('active',!_0x104018),_0x54e5ba['setAttribute']('aria-checked',_0x104018?'true':'false'),_0x43739f['setAttribute']('aria-checked',_0x104018?'false':'true');const _0x291633=this['viewer']['getHighlightedObject']();_0x291633&&this['updateNodeInputs'](_0x291633);};_0x54e5ba['addEventListener']('click',_0x4289e6=>{_0x4289e6['stopPropagation'](),_0x2db230(!![]);}),_0x43739f['addEventListener']('click',_0x565e5a=>{_0x565e5a['stopPropagation'](),_0x2db230(![]);}),_0x2901ff['appendChild'](_0x54e5ba),_0x2901ff['appendChild'](_0x43739f),_0x5de941['appendChild'](_0x2901ff),this['nodeModeButtons']={'local':_0x54e5ba,'global':_0x43739f};const _0x24b973=createCollapsibleNodeSection(_0x99f980,'Transform');_0x24b973['body']['appendChild'](_0x5de941);const _0x1a5b16=(_0xff6418,_0x251e4f,_0x39770d)=>{const _0x565bac=document['createElement']('div');_0x565bac['className']='prop-block';const _0x20a5c3=document['createElement']('div');_0x20a5c3['className']='prop-block-title',_0x20a5c3['textContent']=_0xff6418,_0x565bac['appendChild'](_0x20a5c3);const _0x5b8e73=()=>{const _0x2dd569=this['viewer']['getHighlightedObject']();_0x2dd569&&this['applyNodeInputs'](_0x2dd569);},_0x40fd0a=()=>{const _0x26ea76=this['viewer']['getHighlightedObject']();_0x26ea76&&!this['propertyTransformBefore']&&(this['propertyTransformBefore']=captureSceneTransformState(_0x26ea76));},_0x22c7a2=()=>{const _0x4a5b40=this['viewer'],_0x29858b=_0x4a5b40['getHighlightedObject'](),_0x41b23f=this['propertyTransformBefore'];this['propertyTransformBefore']=undefined,_0x29858b&&_0x41b23f&&recordTransformEdit(_0x4a5b40,_0x29858b,_0x41b23f);},{root:_0x26f2ab,inputs:_0x3f944d}=createVec3Field({'labels':['X','Y','Z'],'onChange':_0x5b8e73,'step':_0x39770d===null||_0x39770d===void 0x0?void 0x0:_0x39770d['step']});for(const _0x5ab04f of _0x3f944d){_0x5ab04f['addEventListener']('focus',_0x40fd0a),_0x5ab04f['addEventListener']('blur',_0x22c7a2);}return _0x565bac['appendChild'](_0x26f2ab),_0x251e4f['appendChild'](_0x565bac),_0x3f944d;},_0x163706=_0x1a5b16('Translation',_0x24b973['body']),_0x29bebe=_0x1a5b16('Rotation\x20(deg)',_0x24b973['body'],{'step':'any'}),_0x2a6644=_0x1a5b16('Scale',_0x24b973['body'],{'step':'any'});this['nodeInputs']={'translation':_0x163706,'rotation':_0x29bebe,'scale':_0x2a6644};const _0xbb4dee=createCollapsibleNodeSection(_0x99f980,'Geometry',{'initiallyHidden':!![]}),_0x558074=_0xbb4dee['section'],_0x1da66f=document['createElement']('div');_0x1da66f['className']='prop-section-content';const _0x10df4c=document['createElement']('div');_0x10df4c['className']='geometry-mesh-tools',_0x1da66f['appendChild'](_0x10df4c);const _0x14082a=document['createElement']('div');_0x14082a['className']='geometry-attributes',_0x1da66f['appendChild'](_0x14082a),_0xbb4dee['body']['appendChild'](_0x1da66f);const _0x31a6f1=createCollapsibleNodeSection(_0x99f980,'Bounding\x20Box',{'initiallyHidden':!![]}),_0x220e0c=_0x31a6f1['section'],_0x99dd81=document['createElement']('div');_0x99dd81['className']='prop-section-content';const _0x1cb3e6=document['createElement']('div');_0x1cb3e6['className']='prop-block-title',_0x1cb3e6['textContent']='Geometry\x20size',_0x99dd81['appendChild'](_0x1cb3e6);const {root:_0x14515a,inputs:_0x3e15a0}=createVec3Field({'labels':['W/X','H/Y','L/Z'],'readOnly':!![],'step':'any'});_0x99dd81['appendChild'](_0x14515a),this['boundingBoxGeometrySizeInputs']=_0x3e15a0;const _0x69acdd=document['createElement']('div');_0x69acdd['className']='prop-block-title\x20prop-bbox-global-size-title',_0x69acdd['textContent']='Global\x20size',_0x99dd81['appendChild'](_0x69acdd);const {root:_0xd9a26f,inputs:_0x36f52e}=createVec3Field({'labels':['W/X','H/Y','L/Z'],'readOnly':!![],'step':'any'});_0x99dd81['appendChild'](_0xd9a26f),this['boundingBoxSizeInputs']=_0x36f52e,_0x31a6f1['body']['appendChild'](_0x99dd81),this['geometrySection']=_0x558074,this['boundingBoxSection']=_0x220e0c;const _0x414ecb=document['createElement']('div');_0x414ecb['className']='prop-node-extras',_0x99f980['appendChild'](_0x414ecb),this['nodeExtrasContainer']=_0x414ecb,this['nodePanel']=_0x99f980;}_0x8d1c48['appendChild'](this['nodePanel']);const _0x5d9228=this['nodeExtrasContainer'];if(_0x5d9228){_0x5d9228['replaceChildren']();if(_0x5bace4 instanceof THREE['Camera'])appendCameraEditor(_0x5d9228,_0x5bace4,()=>this['viewer']['enableRender']());else _0x5bace4 instanceof THREE['Light']&&appendLightEditor(_0x5d9228,_0x5bace4,()=>this['viewer']['enableRender']());appendAnimationSection(_0x5d9228,this['viewer'],_0x5bace4);}this['updateNodeInputs'](_0x5bace4),this['updateGeometryInfo'](_0x5bace4),this['updateBoundingBoxInfo'](_0x5bace4);}['updateNodeInputs'](_0x5bd29e){var _0x5aaa56;if(!this['nodeInputs'])return;const {translation:_0x1c8b9f,rotation:_0x2c4c9a,scale:_0x280535}=this['nodeInputs'],_0x2f1ef3=!!((_0x5aaa56=this['nodeModeButtons'])===null||_0x5aaa56===void 0x0?void 0x0:_0x5aaa56['local']['classList']['contains']('active'));if(_0x2f1ef3){const _0x1e747d=_0x5bd29e['position'];_0x1c8b9f[0x0]['value']=_0x1e747d['x']['toFixed'](0x3),_0x1c8b9f[0x1]['value']=_0x1e747d['y']['toFixed'](0x3),_0x1c8b9f[0x2]['value']=_0x1e747d['z']['toFixed'](0x3);const _0x249ec4=_0x5bd29e['rotation'];_0x2c4c9a[0x0]['value']=THREE['MathUtils']['radToDeg'](_0x249ec4['x'])['toFixed'](0x3),_0x2c4c9a[0x1]['value']=THREE['MathUtils']['radToDeg'](_0x249ec4['y'])['toFixed'](0x3),_0x2c4c9a[0x2]['value']=THREE['MathUtils']['radToDeg'](_0x249ec4['z'])['toFixed'](0x3);const _0x7cb7e9=_0x5bd29e['scale'];_0x280535[0x0]['value']=_0x7cb7e9['x']['toFixed'](0x3),_0x280535[0x1]['value']=_0x7cb7e9['y']['toFixed'](0x3),_0x280535[0x2]['value']=_0x7cb7e9['z']['toFixed'](0x3);}else {const _0x44353e=_0x5bd29e['matrixWorld'],_0x1246cf=new THREE['Vector3'](),_0x2b5a9e=new THREE['Quaternion'](),_0x291efd=new THREE['Vector3']();_0x44353e['decompose'](_0x1246cf,_0x2b5a9e,_0x291efd),_0x1c8b9f[0x0]['value']=_0x1246cf['x']['toFixed'](0x3),_0x1c8b9f[0x1]['value']=_0x1246cf['y']['toFixed'](0x3),_0x1c8b9f[0x2]['value']=_0x1246cf['z']['toFixed'](0x3);const _0x504f32=new THREE['Euler']()['setFromQuaternion'](_0x2b5a9e,_0x5bd29e['rotation']['order']);_0x2c4c9a[0x0]['value']=THREE['MathUtils']['radToDeg'](_0x504f32['x'])['toFixed'](0x3),_0x2c4c9a[0x1]['value']=THREE['MathUtils']['radToDeg'](_0x504f32['y'])['toFixed'](0x3),_0x2c4c9a[0x2]['value']=THREE['MathUtils']['radToDeg'](_0x504f32['z'])['toFixed'](0x3),_0x280535[0x0]['value']=_0x291efd['x']['toFixed'](0x3),_0x280535[0x1]['value']=_0x291efd['y']['toFixed'](0x3),_0x280535[0x2]['value']=_0x291efd['z']['toFixed'](0x3);}}['applyNodeInputs'](_0x5526eb){var _0x27cd24;if(!this['nodeInputs'])return;const {translation:_0x58b729,rotation:_0x567a12,scale:_0x2f2fad}=this['nodeInputs'],_0x292f7f=parseFloat(_0x58b729[0x0]['value'])||0x0,_0x4c72e9=parseFloat(_0x58b729[0x1]['value'])||0x0,_0x330726=parseFloat(_0x58b729[0x2]['value'])||0x0,_0x4b49d9=parseFloat(_0x567a12[0x0]['value'])||0x0,_0x14fb1a=parseFloat(_0x567a12[0x1]['value'])||0x0,_0x17e3b6=parseFloat(_0x567a12[0x2]['value'])||0x0,_0x1ddecb=parseFloat(_0x2f2fad[0x0]['value'])||0x1,_0x3f1de9=parseFloat(_0x2f2fad[0x1]['value'])||0x1,_0x148255=parseFloat(_0x2f2fad[0x2]['value'])||0x1,_0x15acfe=!!((_0x27cd24=this['nodeModeButtons'])===null||_0x27cd24===void 0x0?void 0x0:_0x27cd24['local']['classList']['contains']('active'));if(_0x15acfe)_0x5526eb['position']['set'](_0x292f7f,_0x4c72e9,_0x330726),_0x5526eb['rotation']['set'](THREE['MathUtils']['degToRad'](_0x4b49d9),THREE['MathUtils']['degToRad'](_0x14fb1a),THREE['MathUtils']['degToRad'](_0x17e3b6)),_0x5526eb['scale']['set'](_0x1ddecb,_0x3f1de9,_0x148255),_0x5526eb['updateMatrixWorld'](!![]);else {const _0x13e4f0=new THREE['Vector3'](_0x292f7f,_0x4c72e9,_0x330726),_0x1e427b=new THREE['Euler'](THREE['MathUtils']['degToRad'](_0x4b49d9),THREE['MathUtils']['degToRad'](_0x14fb1a),THREE['MathUtils']['degToRad'](_0x17e3b6),_0x5526eb['rotation']['order']),_0x20d323=new THREE['Quaternion']()['setFromEuler'](_0x1e427b),_0x2ecef4=new THREE['Vector3'](_0x1ddecb,_0x3f1de9,_0x148255),_0x5215f7=new THREE['Matrix4']()['compose'](_0x13e4f0,_0x20d323,_0x2ecef4),_0x2f8f71=new THREE['Vector3'](),_0x653111=new THREE['Quaternion'](),_0xaec39e=new THREE['Vector3']();if(_0x5526eb['parent']){const _0x3f8bb6=new THREE['Matrix4']();_0x3f8bb6['copy'](_0x5526eb['parent']['matrixWorld']),_0x3f8bb6['invert']();const _0x44c13a=_0x3f8bb6['multiply'](_0x5215f7);_0x44c13a['decompose'](_0x2f8f71,_0x653111,_0xaec39e);}else _0x5215f7['decompose'](_0x2f8f71,_0x653111,_0xaec39e);_0x5526eb['position']['copy'](_0x2f8f71),_0x5526eb['quaternion']['copy'](_0x653111),_0x5526eb['scale']['copy'](_0xaec39e),_0x5526eb['updateMatrixWorld'](!![]);}this['updateBoundingBoxInfo'](_0x5526eb),this['viewer']['notifyObjectTransformed'](_0x5526eb),this['viewer']['enableRender']();}['appendGeometryAttrRow'](_0xe92f7,_0x551ecf,_0x50110c,_0x4e3293){var _0x18ea49;const _0x5ecad7=document['createElement']('div');_0x5ecad7['className']='prop-geo-row';const _0x230a71=document['createElement']('span');_0x230a71['className']='prop-geo-row__key',_0x230a71['textContent']=_0x551ecf+':';const _0x1a4f30=document['createElement']('span');_0x1a4f30['className']='prop-geo-row__value',_0x1a4f30['textContent']=_0x50110c;const _0x2353b6=document['createElement']('span');_0x2353b6['className']='prop-geo-row__action';if(_0x4e3293===null||_0x4e3293===void 0x0?void 0x0:_0x4e3293['onRefresh']){const _0x239133=createIconActionButton({'className':'prop-uv-refresh-btn','title':(_0x18ea49=_0x4e3293['refreshTitle'])!==null&&_0x18ea49!==void 0x0?_0x18ea49:t$5('regenerateSmartUv'),'svg':PROPERTY_ICON_UV_REFRESH});_0x239133['addEventListener']('click',_0x342c38=>{_0x342c38['stopPropagation'](),_0x4e3293['onRefresh']();}),_0x2353b6['appendChild'](_0x239133);}const _0x2afaff=document['createElement']('span');_0x2afaff['className']='prop-geo-row__action';if(_0x4e3293===null||_0x4e3293===void 0x0?void 0x0:_0x4e3293['onDelete']){const _0x420a20=createIconActionButton({'className':'prop-uv-delete-btn','title':'Delete\x20'+_0x551ecf,'svg':PROPERTY_ICON_DELETE_TRASH});_0x420a20['addEventListener']('click',_0x372670=>{_0x372670['stopPropagation'](),_0x4e3293['onDelete']();}),_0x2afaff['appendChild'](_0x420a20);}const _0x56db01=document['createElement']('span');_0x56db01['className']='prop-geo-row__action';if(_0x4e3293===null||_0x4e3293===void 0x0?void 0x0:_0x4e3293['onView']){const _0x351605=createIconActionButton({'className':'prop-geo-view-btn','title':'View\x20'+_0x551ecf,'svg':PROPERTY_ICON_VIEW_EYE});_0x351605['addEventListener']('click',_0x529dea=>{_0x529dea['stopPropagation'](),_0x4e3293['onView']();}),_0x56db01['appendChild'](_0x351605);}else {if(_0x4e3293===null||_0x4e3293===void 0x0?void 0x0:_0x4e3293['onDuplicate']){const _0x458746=createIconActionButton({'className':'prop-geo-duplicate-btn','title':t$5('duplicateGeometry'),'svg':PROPERTY_ICON_DUPLICATE});_0x458746['addEventListener']('click',_0x5be314=>{_0x5be314['stopPropagation'](),_0x4e3293['onDuplicate']();}),_0x56db01['appendChild'](_0x458746);}}_0x5ecad7['append'](_0x230a71,_0x1a4f30,_0x2353b6,_0x2afaff,_0x56db01),_0xe92f7['appendChild'](_0x5ecad7);}['openGeometryAttributeViewer'](_0x1fd811,_0x322bee){if(_0x322bee==='index'){const _0x5abe05=_0x1fd811['index'];if(!_0x5abe05)return;openGeometryDataViewer(_0x322bee,formatGeometryIndexValues(_0x5abe05));return;}const _0x373a5b=_0x1fd811['getAttribute'](_0x322bee);if(!_0x373a5b)return;openGeometryDataViewer(_0x322bee,formatBufferAttributeValues(_0x373a5b));}['duplicateGeometryForMesh'](_0x3ec533){const _0x1d3435=_0x3ec533['geometry'];if(!_0x1d3435)return;_0x3ec533['geometry']=_0x1d3435['clone'](),this['viewer']['enableRender']();}['appendMeshToolButton'](_0x1cbbef,_0x214c3e,_0x134c1f){const _0x255718=document['createElement']('button');_0x255718['type']='button',_0x255718['className']='prop-mesh-tool-btn',_0x255718['textContent']=_0x214c3e,_0x255718['addEventListener']('click',_0x534cff=>{_0x534cff['stopPropagation'](),_0x134c1f();}),_0x1cbbef['appendChild'](_0x255718);}['runRecordedGeometryEdit'](_0x6b569d,_0x5e93ff){const _0x17f298=this['viewer'];recordGeometryEdit(_0x17f298,_0x6b569d,_0x5e93ff),this['updateGeometryInfo'](_0x6b569d),this['updateBoundingBoxInfo'](_0x6b569d),_0x17f298['enableRender']();}['updateMeshTools'](_0x94f327,_0x3c65bf,_0x44b601){_0x44b601['replaceChildren']();const _0x1a5e16=document['createElement']('div');_0x1a5e16['className']='prop-block-title',_0x1a5e16['textContent']=t$5('meshTools'),_0x44b601['appendChild'](_0x1a5e16);const _0x118240=[{'label':'applyTransform','run':()=>MeshEditUtils['applyTransform'](_0x94f327)},{'label':'flipFaces','run':()=>MeshEditUtils['flipFaces'](_0x94f327)},{'label':'flipNormals','run':()=>MeshEditUtils['flipNormals'](_0x94f327)},{'label':'recalculateNormalsInside','run':()=>MeshEditUtils['recalculateNormalsInside'](_0x94f327)},{'label':'generateTangents','run':()=>MeshEditUtils['generateTangents'](_0x94f327)},{'label':'originToGeometryCenter','run':()=>OriginUtils['originToGeometryCenter'](_0x94f327)},{'label':'geometryCenterToOrigin','run':()=>OriginUtils['geometryCenterToOrigin'](_0x94f327)},{'label':'originToGeometryBottom','run':()=>OriginUtils['originToGeometryBottomCenter'](_0x94f327)},{'label':'geometryBottomToOrigin','run':()=>OriginUtils['geometryBottomCenterToOrigin'](_0x94f327)}];for(const _0x309e5e of _0x118240){this['appendMeshToolButton'](_0x44b601,t$5(_0x309e5e['label']),()=>{this['runRecordedGeometryEdit'](_0x94f327,_0x309e5e['run']);});}}['updateGeometryInfo'](_0x869e96){var _0x366499,_0x3b01b0;const _0x440332=this['geometrySection'];if(!_0x440332)return;const _0x1c7e7a=this['resolveMeshForMaterialPanel'](_0x869e96),_0x7aa1cd=_0x1c7e7a===null||_0x1c7e7a===void 0x0?void 0x0:_0x1c7e7a['geometry'];if(_0x7aa1cd&&_0x1c7e7a){const _0x14d4ac=_0x440332['querySelector']('.geometry-mesh-tools');_0x14d4ac&&this['updateMeshTools'](_0x869e96,_0x1c7e7a,_0x14d4ac);const _0x5a0943=_0x440332['querySelector']('.geometry-attributes');if(_0x5a0943){_0x5a0943['replaceChildren'](),this['appendGeometryAttrRow'](_0x5a0943,'id',String(_0x7aa1cd['id']),{'onDuplicate':()=>{this['runRecordedGeometryEdit'](_0x869e96,()=>{this['duplicateGeometryForMesh'](_0x1c7e7a);});}});const _0x4d260=_0x7aa1cd['attributes'],_0x142875=new Set(['position','normal','uv','uv1']),_0x1dc1f6=_0x4d260['position'];_0x1dc1f6&&this['appendGeometryAttrRow'](_0x5a0943,'position',String(getBufferAttributeArrayLength(_0x1dc1f6)),{'onView':()=>this['openGeometryAttributeViewer'](_0x7aa1cd,'position')});const _0x4fd083=_0x7aa1cd['getAttribute']('normal'),_0x429c78=_0x4fd083?String(getBufferAttributeArrayLength(_0x4fd083)):'-';this['appendGeometryAttrRow'](_0x5a0943,'normal',_0x429c78,{'refreshTitle':t$5('recalculateNormalsOutside'),'onRefresh':()=>{this['runRecordedGeometryEdit'](_0x869e96,()=>{MeshEditUtils['recalculateNormalsOutside'](_0x1c7e7a);});},'onDelete':_0x4fd083?()=>{this['runRecordedGeometryEdit'](_0x869e96,()=>{_0x7aa1cd['deleteAttribute']('normal');});}:undefined,'onView':_0x4fd083?()=>this['openGeometryAttributeViewer'](_0x7aa1cd,'normal'):undefined});for(const _0x3e875e of Object['keys'](_0x4d260)){if(_0x142875['has'](_0x3e875e))continue;const _0xf6e114=_0x4d260[_0x3e875e],_0x1773d2=getBufferAttributeArrayLength(_0xf6e114);this['appendGeometryAttrRow'](_0x5a0943,_0x3e875e,String(_0x1773d2),{'onView':()=>this['openGeometryAttributeViewer'](_0x7aa1cd,_0x3e875e)});}for(const _0x2cbf04 of ['uv','uv1']){const _0x3480ab=_0x7aa1cd['getAttribute'](_0x2cbf04),_0x158383=_0x3480ab?String(getBufferAttributeArrayLength(_0x3480ab)):'-';this['appendGeometryAttrRow'](_0x5a0943,_0x2cbf04,_0x158383,{'refreshTitle':t$5('regenerateSmartUv'),'onRefresh':()=>{this['runRecordedGeometryEdit'](_0x869e96,()=>{UVUtils['generateSmartUv'](_0x7aa1cd,_0x2cbf04);});},'onDelete':_0x3480ab?()=>{this['runRecordedGeometryEdit'](_0x869e96,()=>{_0x7aa1cd['deleteAttribute'](_0x2cbf04);});}:undefined,'onView':_0x3480ab?()=>this['openGeometryAttributeViewer'](_0x7aa1cd,_0x2cbf04):undefined});}const _0x24d3a1=_0x7aa1cd['index'],_0x3bff3f=_0x24d3a1==null?String(_0x24d3a1):String((_0x3b01b0=(_0x366499=_0x24d3a1['array'])===null||_0x366499===void 0x0?void 0x0:_0x366499['length'])!==null&&_0x3b01b0!==void 0x0?_0x3b01b0:0x0);this['appendGeometryAttrRow'](_0x5a0943,'index',_0x3bff3f,{'onView':_0x24d3a1?()=>this['openGeometryAttributeViewer'](_0x7aa1cd,'index'):undefined});}_0x440332['style']['display']='block';}else _0x440332['style']['display']='none';}['updateBoundingBoxInfo'](_0x4215ce){const _0xe89bbc=this['boundingBoxSection'];if(!_0xe89bbc)return;const _0x4cbdde=_0x4215ce['geometry'];if(_0x4cbdde){const _0x2e5ff7=this['boundingBoxGeometrySizeInputs'];if(_0x2e5ff7){const _0x3f9931=getGeometrySize(_0x4cbdde);_0x2e5ff7[0x0]['value']=_0x3f9931['width']['toFixed'](0x3),_0x2e5ff7[0x1]['value']=_0x3f9931['height']['toFixed'](0x3),_0x2e5ff7[0x2]['value']=_0x3f9931['length']['toFixed'](0x3);}const _0x3b5dc9=this['boundingBoxSizeInputs'];if(_0x3b5dc9){const _0x2e5aa7=getGlobalSize(_0x4215ce);_0x3b5dc9[0x0]['value']=_0x2e5aa7['width']['toFixed'](0x3),_0x3b5dc9[0x1]['value']=_0x2e5aa7['height']['toFixed'](0x3),_0x3b5dc9[0x2]['value']=_0x2e5aa7['length']['toFixed'](0x3);}_0xe89bbc['style']['display']='block';}else _0xe89bbc['style']['display']='none';}}PropertyPlugin['DEFAULT_ID']='PropertyPlugin';
|
|
199
|
+
|
|
200
|
+
const DEFAULT_RHINO3DM_LIBRARY_PATH='https://cdn.jsdelivr.net/npm/rhino3dm@8.17.0/';function normalizeLibraryPath(_0x58a614){const _0x35f7a5=_0x58a614['trim']();return _0x35f7a5['endsWith']('/')?_0x35f7a5:_0x35f7a5+'/';}class Rhino3dmModelLoader extends BaseModelLoader{static['setLibraryPath'](_0x4e92a2){Rhino3dmModelLoader['defaultLibraryPath']=normalizeLibraryPath(_0x4e92a2);}constructor(_0x4986c8){var _0x182676;super(),this['id']='loader.plugin.rhino3dm',this['priority']=0xa,this['formats']=['3dm'],this['manager']=_0x4986c8===null||_0x4986c8===void 0x0?void 0x0:_0x4986c8['manager'],this['libraryPath']=normalizeLibraryPath((_0x182676=_0x4986c8===null||_0x4986c8===void 0x0?void 0x0:_0x4986c8['libraryPath'])!==null&&_0x182676!==void 0x0?_0x182676:Rhino3dmModelLoader['defaultLibraryPath']);}async['load'](_0x3374e1){const _0x702e53=new THREEAddons['Rhino3dmLoader'](this['manager']);this['applyRequestHeader'](_0x702e53,_0x3374e1['requestHeader']),_0x702e53['setLibraryPath'](this['libraryPath']);const _0x5d3f9b=await _0x702e53['loadAsync'](_0x3374e1['url'],_0x3374e1['onProgress']);return this['maybeQuantizeLoadedScene'](_0x5d3f9b,_0x3374e1['quantize']);}async['loadFromBuffer'](_0x46f0fc){const _0x4d5baa=new Uint8Array(_0x46f0fc['data'])['buffer'],_0x2a7e15=new THREEAddons['Rhino3dmLoader'](this['manager']);_0x2a7e15['setLibraryPath'](this['libraryPath']);const _0x3b7ead=await new Promise((_0x287c57,_0x4f166b)=>{_0x2a7e15['parse'](_0x4d5baa,_0x287c57,_0x4f166b);});return this['maybeQuantizeLoadedScene'](_0x3b7ead,_0x46f0fc['quantize']);}['applyRequestHeader'](_0x5e86ba,_0x53d7f3){_0x53d7f3&&_0x5e86ba['setRequestHeader'](_0x53d7f3);}}Rhino3dmModelLoader['defaultLibraryPath']=DEFAULT_RHINO3DM_LIBRARY_PATH;
|
|
201
|
+
|
|
202
|
+
class Rhino3dmLoaderPlugin extends Plugin{constructor(_0x29c358,_0xf1cfbd){const _0x544511=(_0xf1cfbd===null||_0xf1cfbd===void 0x0?void 0x0:_0xf1cfbd['id'])||Rhino3dmLoaderPlugin['DEFAULT_ID'];super(_0x29c358,{'id':_0x544511}),this['loader']=new Rhino3dmModelLoader({'libraryPath':_0xf1cfbd===null||_0xf1cfbd===void 0x0?void 0x0:_0xf1cfbd['libraryPath']}),_0x29c358['addModelLoader'](this['loader']);}['destroy'](){this['viewer']['removeModelLoader'](this['loader']['id']),super['destroy']();}}Rhino3dmLoaderPlugin['DEFAULT_ID']='Rhino3dmLoaderPlugin';
|
|
203
|
+
|
|
204
|
+
function isSceneModelRoot(_0x9fd584){var _0x1e0db8;return ((_0x1e0db8=_0x9fd584['userData'])===null||_0x1e0db8===void 0x0?void 0x0:_0x1e0db8['modelId'])!==undefined;}function findModel3dOwning(_0xd22c79,_0x14bb7a){for(const _0x584f76 of _0xd22c79['loadedModels']){const _0x4cc2aa=_0x584f76;if(typeof _0x4cc2aa['hasObject']==='function'&&_0x4cc2aa['hasObject'](_0x14bb7a))return _0x4cc2aa;}return undefined;}function findModel3dForSceneRoot(_0x6e7d38,_0xd58126){return findModel3dOwning(_0x6e7d38,_0xd58126);}function isWholeModelDeleteTarget(_0x2f9959,_0x4b198b){var _0x4374a9;if(((_0x4374a9=_0x2f9959['userData'])===null||_0x4374a9===void 0x0?void 0x0:_0x4374a9['modelId'])!==undefined)return !![];return _0x2f9959===_0x4b198b['modelObject']||_0x2f9959===_0x4b198b['getModelObject']();}function createSceneNodeSnapshot(_0x3545dd){const _0x203049=_0x3545dd['parent'];if(!_0x203049)return undefined;const _0x26239d=_0x203049['children']['indexOf'](_0x3545dd);if(_0x26239d<0x0)return undefined;return {'detachedClone':_0x3545dd['clone'](!![]),'parentUuid':_0x203049['uuid'],'childIndex':_0x26239d};}
|
|
205
|
+
|
|
206
|
+
class InsertSceneNodeCommand extends Command{constructor(_0xbbd2f5,_0x65f071){super('InsertSceneNode'),this['viewer']=_0xbbd2f5,this['snapshot']=_0x65f071;}['undo'](){const _0x469111=this['viewer']['findSceneObjectByUuid'](this['snapshot']['detachedClone']['uuid']);if(!_0x469111)return ![];return this['viewer']['removeSceneObject'](_0x469111);}['redo'](){return this['viewer']['insertSceneNode'](this['snapshot']);}}
|
|
207
|
+
|
|
208
|
+
class MoveSceneNodeCommand extends Command{constructor(_0x244be2,_0xe59c23,_0x1f8c20,_0x573ac6){super('MoveSceneNode'),this['viewer']=_0x244be2,this['objectUuid']=_0xe59c23,this['before']=_0x1f8c20,this['after']=_0x573ac6;}['undo'](){return this['viewer']['applySceneNodePlacement'](this['objectUuid'],this['before']);}['redo'](){return this['viewer']['applySceneNodePlacement'](this['objectUuid'],this['after']);}}
|
|
209
|
+
|
|
210
|
+
class RemoveSceneObjectCommand extends Command{constructor(_0x3cf740,_0xb2f7cd){super('RemoveSceneObject'),this['viewer']=_0x3cf740,this['snapshot']=_0xb2f7cd;}['undo'](){return this['viewer']['insertSceneNode'](this['snapshot']);}['redo'](){const _0x234119=this['viewer']['findSceneObjectByUuid'](this['snapshot']['detachedClone']['uuid']);if(!_0x234119)return ![];return this['viewer']['removeSceneObject'](_0x234119);}}
|
|
211
|
+
|
|
212
|
+
class SceneEditActions{constructor(_0x4ae909,_0x689a16){this['viewer']=_0x4ae909,this['undoManager']=_0x689a16;}['hasClipboard'](){return !!this['clipboard'];}['copySelection'](){if(!this['viewer']['enableSceneEditing'])return ![];const _0x1fcf97=this['viewer']['getHighlightedObject']();if(!_0x1fcf97||this['isModelRoot'](_0x1fcf97))return ![];return this['clipboard']=_0x1fcf97['clone'](!![]),!![];}['pasteSelection'](){if(!this['viewer']['enableSceneEditing']||!this['clipboard'])return ![];const _0x3ba6be=this['resolvePastePlacement']();if(!_0x3ba6be)return ![];const _0x24ad5a=this['clipboard']['clone'](!![]);return this['insertClone'](_0x24ad5a,_0x3ba6be['parent'],_0x3ba6be['index']);}['duplicateNode'](_0x3c35d3){if(!this['viewer']['enableSceneEditing']||!_0x3c35d3['parent']||this['isModelRoot'](_0x3c35d3))return ![];const _0x51524b=_0x3c35d3['parent'],_0x953fe8=_0x51524b['children']['indexOf'](_0x3c35d3)+0x1,_0xc1f994=_0x3c35d3['clone'](!![]);return _0xc1f994['name']=_0x3c35d3['name']+'_copy',this['insertClone'](_0xc1f994,_0x51524b,_0x953fe8);}['insertClone'](_0x4fd41a,_0x14106b,_0x380718){const _0x46a04b={'detachedClone':_0x4fd41a,'parentUuid':_0x14106b['uuid'],'childIndex':_0x380718};if(!this['viewer']['insertSceneNode'](_0x46a04b))return ![];return this['undoManager']['addCommand'](new InsertSceneNodeCommand(this['viewer'],_0x46a04b)),!![];}['resolvePastePlacement'](){var _0x25cf75;const _0x452583=this['viewer']['getHighlightedObject']();if((_0x452583===null||_0x452583===void 0x0?void 0x0:_0x452583['parent'])&&!this['isModelRoot'](_0x452583)){const _0x11edb1=_0x452583['parent'];return {'parent':_0x11edb1,'index':_0x11edb1['children']['indexOf'](_0x452583)+0x1};}const _0x3b06fc=this['viewer']['loadedModels'][0x0],_0x4db4db=(_0x25cf75=_0x3b06fc===null||_0x3b06fc===void 0x0?void 0x0:_0x3b06fc['getModelObject'])===null||_0x25cf75===void 0x0?void 0x0:_0x25cf75['call'](_0x3b06fc);if(_0x4db4db)return {'parent':_0x4db4db,'index':_0x4db4db['children']['length']};return undefined;}['isModelRoot'](_0x27f40a){var _0x38ec9a;return ((_0x38ec9a=_0x27f40a['userData'])===null||_0x38ec9a===void 0x0?void 0x0:_0x38ec9a['modelId'])!==undefined;}['deleteSelection'](){if(!this['viewer']['enableSceneEditing'])return ![];const _0x37e973=this['viewer']['getHighlightedObject']();if(!_0x37e973)return ![];const _0x32df05=findModel3dOwning(this['viewer'],_0x37e973);if(_0x32df05&&isWholeModelDeleteTarget(_0x37e973,_0x32df05))return this['viewer']['removeLoadedModel'](_0x32df05);const _0x107af9=createSceneNodeSnapshot(_0x37e973);if(!_0x107af9)return ![];if(!this['viewer']['removeSceneObject'](_0x37e973))return ![];return this['undoManager']['addCommand'](new RemoveSceneObjectCommand(this['viewer'],_0x107af9)),!![];}['reparentSceneNode'](_0x46ebf9,_0x474228,_0x2c8f45){if(!this['viewer']['enableSceneEditing'])return ![];const _0x1b1a9c=this['viewer']['captureSceneNodePlacement'](_0x46ebf9);if(!_0x1b1a9c)return ![];if(!this['viewer']['reparentSceneNode'](_0x46ebf9,_0x474228,_0x2c8f45))return ![];const _0x491d7a=this['viewer']['captureSceneNodePlacement'](_0x46ebf9);if(!_0x491d7a)return ![];if(_0x1b1a9c['parentUuid']===_0x491d7a['parentUuid']&&_0x1b1a9c['childIndex']===_0x491d7a['childIndex'])return !![];return this['undoManager']['addCommand'](new MoveSceneNodeCommand(this['viewer'],_0x46ebf9['uuid'],_0x1b1a9c,_0x491d7a)),!![];}}
|
|
213
|
+
|
|
214
|
+
class SceneEditPlugin extends Plugin{constructor(_0x1d4fed,_0x41a33b={}){var _0x454ba9;const _0x2d150c=(_0x454ba9=_0x41a33b['id'])!==null&&_0x454ba9!==void 0x0?_0x454ba9:SceneEditPlugin['DEFAULT_ID'];super(_0x1d4fed,Object['assign'](Object['assign']({},_0x41a33b),{'id':_0x2d150c})),this['onKeyDown']=_0x220b38=>{if(!this['enabled']||!this['viewer3d']['enableSceneEditing'])return;if(this['shouldDeferToOverlay']())return;const _0x3f5384=_0x220b38['ctrlKey']||_0x220b38['metaKey'];if(_0x3f5384&&_0x220b38['code']==='KeyZ'&&!_0x220b38['shiftKey']){this['viewer3d']['getUndoManager']()['undo']();return;}if(_0x3f5384&&(_0x220b38['code']==='KeyY'||_0x220b38['code']==='KeyZ'&&_0x220b38['shiftKey'])){this['viewer3d']['getUndoManager']()['redo']();return;}if(_0x3f5384&&_0x220b38['code']==='KeyC'){this['actions']['copySelection']();return;}if(_0x3f5384&&_0x220b38['code']==='KeyV'){this['actions']['pasteSelection']();return;}if(_0x220b38['code']!=='Delete'&&_0x220b38['key']!=='Delete')return;this['actions']['deleteSelection']();};if(!(_0x1d4fed instanceof Viewer3d))throw new Error('[SceneEditPlugin]\x20Requires\x20Viewer3d');this['viewer3d']=_0x1d4fed,this['cfg']=_0x41a33b,this['actions']=new SceneEditActions(this['viewer3d'],this['viewer3d']['getUndoManager']()),this['enabled']=_0x41a33b['enabled']!==![],this['enabled']&&(this['viewer3d']['getInputManager']()['addEventListener']('keydown',this['onKeyDown']),this['viewer3d']['setTransformGizmoCallbacks']({'onDraggingStart':()=>this['onGizmoDragStart'](),'onDraggingEnd':()=>this['onGizmoDragEnd']()}));}['getSceneEditActions'](){return this['actions'];}['shouldDeferToOverlay'](){const _0x1969be=this['viewer']['findPlugin'](MeasurementPlugin['DEFAULT_ID']);return !!(_0x1969be===null||_0x1969be===void 0x0?void 0x0:_0x1969be['selectedDrawable']);}['onGizmoDragStart'](){var _0x233aa3;const _0x3b30bc=(_0x233aa3=this['viewer3d']['getTransformGizmo']())===null||_0x233aa3===void 0x0?void 0x0:_0x233aa3['getAttachedObject']();if(!_0x3b30bc||!this['viewer3d']['enableSceneEditing']){this['gizmoTransformBefore']=undefined;return;}this['gizmoTransformBefore']=captureSceneTransformState(_0x3b30bc);}['onGizmoDragEnd'](){var _0x4642ce;const _0x3fcbc9=(_0x4642ce=this['viewer3d']['getTransformGizmo']())===null||_0x4642ce===void 0x0?void 0x0:_0x4642ce['getAttachedObject']();_0x3fcbc9&&this['viewer3d']['notifyObjectTransformed'](_0x3fcbc9);const _0x37d142=this['gizmoTransformBefore'];this['gizmoTransformBefore']=undefined;if(!_0x3fcbc9||!_0x37d142||_0x37d142['objectUuid']!==_0x3fcbc9['uuid'])return;const _0x138ec4=captureSceneTransformState(_0x3fcbc9);TransformSceneObjectCommand['shouldRecord'](_0x37d142,_0x138ec4)&&this['viewer3d']['getUndoManager']()['addCommand'](new TransformSceneObjectCommand(this['viewer3d'],_0x37d142,_0x138ec4));}['setEnabled'](_0x491298){if(_0x491298===this['enabled'])return;this['enabled']=_0x491298;const _0x13fc42=this['viewer3d']['getInputManager']();_0x491298?(_0x13fc42['addEventListener']('keydown',this['onKeyDown']),this['viewer3d']['setTransformGizmoCallbacks']({'onDraggingStart':()=>this['onGizmoDragStart'](),'onDraggingEnd':()=>this['onGizmoDragEnd']()})):_0x13fc42['removeEventListener']('keydown',this['onKeyDown']);}['destroy'](){this['enabled']&&this['viewer3d']['getInputManager']()['removeEventListener']('keydown',this['onKeyDown']),super['destroy']();}}SceneEditPlugin['DEFAULT_ID']='SceneEditPlugin';
|
|
215
|
+
|
|
216
|
+
var css_248z$5 = ".statsOutput{left:1px;opacity:.6;pointer-events:auto;position:absolute;top:1px;z-index:99}.statsOutput.statsOutput--embedded{left:auto;opacity:1;position:static;top:auto;z-index:auto}.statsOutput.statsOutput--embedded>div{cursor:default!important;left:auto!important;position:relative!important;top:auto!important;z-index:auto!important}";
|
|
217
|
+
styleInject(css_248z$5);
|
|
218
|
+
|
|
219
|
+
var stats_min = {exports: {}};
|
|
220
|
+
|
|
221
|
+
(function(_0x23c18b,_0x35a13d){(function(_0x58aabf,_0x2b9c19){_0x23c18b['exports']=_0x2b9c19();}(commonjsGlobal,function(){var _0x207b74=function(){function _0x2db980(_0x48a548){return _0x206eff['appendChild'](_0x48a548['dom']),_0x48a548;}function _0xd07f61(_0x399481){for(var _0x1b6d8b=0x0;_0x1b6d8b<_0x206eff['children']['length'];_0x1b6d8b++)_0x206eff['children'][_0x1b6d8b]['style']['display']=_0x1b6d8b===_0x399481?'block':'none';_0x235444=_0x399481;}var _0x235444=0x0,_0x206eff=document['createElement']('div');_0x206eff['style']['cssText']='position:fixed;top:0;left:0;cursor:pointer;opacity:0.9;z-index:10000',_0x206eff['addEventListener']('click',function(_0x53d924){_0x53d924['preventDefault'](),_0xd07f61(++_0x235444%_0x206eff['children']['length']);},!0x1);var _0x3cb136=(performance||Date)['now'](),_0x5580c1=_0x3cb136,_0x1f39b1=0x0,_0xef6e30=_0x2db980(new _0x207b74['Panel']('FPS','#0ff','#002')),_0x57b3c1=_0x2db980(new _0x207b74['Panel']('MS','#0f0','#020'));if(self['performance']&&self['performance']['memory'])var _0x3037b4=_0x2db980(new _0x207b74['Panel']('MB','#f08','#201'));return _0xd07f61(0x0),{'REVISION':0x10,'dom':_0x206eff,'addPanel':_0x2db980,'showPanel':_0xd07f61,'begin':function(){_0x3cb136=(performance||Date)['now']();},'end':function(){_0x1f39b1++;var _0x156488=(performance||Date)['now']();_0x57b3c1['update'](_0x156488-_0x3cb136,0xc8);if(_0x156488>_0x5580c1+0x3e8&&(_0xef6e30['update'](0x3e8*_0x1f39b1/(_0x156488-_0x5580c1),0x64),_0x5580c1=_0x156488,_0x1f39b1=0x0,_0x3037b4)){var _0x37bc39=performance['memory'];_0x3037b4['update'](_0x37bc39['usedJSHeapSize']/0x100000,_0x37bc39['jsHeapSizeLimit']/0x100000);}return _0x156488;},'update':function(){_0x3cb136=this['end']();},'domElement':_0x206eff,'setMode':_0xd07f61};};return _0x207b74['Panel']=function(_0x360533,_0x36f2ce,_0xe8ccbb){var _0x30537d=Infinity,_0x230af9=0x0,_0x26b301=Math['round'],_0x540a98=_0x26b301(window['devicePixelRatio']||0x1),_0x137b14=0x50*_0x540a98,_0x32b6d7=0x30*_0x540a98,_0x2fd180=0x3*_0x540a98,_0x4c06e3=0x2*_0x540a98,_0x4592f5=0x3*_0x540a98,_0x524aba=0xf*_0x540a98,_0x5e8dbe=0x4a*_0x540a98,_0x28736d=0x1e*_0x540a98,_0x4af0fa=document['createElement']('canvas');_0x4af0fa['width']=_0x137b14,_0x4af0fa['height']=_0x32b6d7,_0x4af0fa['style']['cssText']='width:80px;height:48px';var _0x2ffef6=_0x4af0fa['getContext']('2d');return _0x2ffef6['font']='bold\x20'+0x9*_0x540a98+'px\x20Helvetica,Arial,sans-serif',_0x2ffef6['textBaseline']='top',_0x2ffef6['fillStyle']=_0xe8ccbb,_0x2ffef6['fillRect'](0x0,0x0,_0x137b14,_0x32b6d7),_0x2ffef6['fillStyle']=_0x36f2ce,_0x2ffef6['fillText'](_0x360533,_0x2fd180,_0x4c06e3),_0x2ffef6['fillRect'](_0x4592f5,_0x524aba,_0x5e8dbe,_0x28736d),_0x2ffef6['fillStyle']=_0xe8ccbb,_0x2ffef6['globalAlpha']=0.9,_0x2ffef6['fillRect'](_0x4592f5,_0x524aba,_0x5e8dbe,_0x28736d),{'dom':_0x4af0fa,'update':function(_0x3886dd,_0x5bd22e){_0x30537d=Math['min'](_0x30537d,_0x3886dd),_0x230af9=Math['max'](_0x230af9,_0x3886dd),_0x2ffef6['fillStyle']=_0xe8ccbb,_0x2ffef6['globalAlpha']=0x1,_0x2ffef6['fillRect'](0x0,0x0,_0x137b14,_0x524aba),_0x2ffef6['fillStyle']=_0x36f2ce,_0x2ffef6['fillText'](_0x26b301(_0x3886dd)+'\x20'+_0x360533+'\x20('+_0x26b301(_0x30537d)+'-'+_0x26b301(_0x230af9)+')',_0x2fd180,_0x4c06e3),_0x2ffef6['drawImage'](_0x4af0fa,_0x4592f5+_0x540a98,_0x524aba,_0x5e8dbe-_0x540a98,_0x28736d,_0x4592f5,_0x524aba,_0x5e8dbe-_0x540a98,_0x28736d),_0x2ffef6['fillRect'](_0x4592f5+_0x5e8dbe-_0x540a98,_0x524aba,_0x540a98,_0x28736d),_0x2ffef6['fillStyle']=_0xe8ccbb,_0x2ffef6['globalAlpha']=0.9,_0x2ffef6['fillRect'](_0x4592f5+_0x5e8dbe-_0x540a98,_0x524aba,_0x540a98,_0x26b301((0x1-_0x3886dd/_0x5bd22e)*_0x28736d));}};},_0x207b74;}));}(stats_min));var stats_minExports=stats_min['exports'];var _0x29faba = getDefaultExportFromCjs(stats_minExports);
|
|
222
|
+
|
|
223
|
+
class StatsPlugin extends Plugin{constructor(_0x272963){const _0x1c2904=StatsPlugin['DEFAULT_ID'];super(_0x272963,{'id':_0x1c2904}),this['statsUiVisible']=!![],this['init']();}['init'](){var _0x339903;const _0x2d31d8=new _0x29faba();_0x2d31d8['setMode'](0x0);const _0x422852=document['createElement']('div');_0x422852['classList']['add']('statsOutput'),_0x422852['appendChild'](_0x2d31d8['domElement']),(_0x339903=this['viewer']['widgetContainer'])===null||_0x339903===void 0x0?void 0x0:_0x339903['append'](_0x422852),this['stats']=_0x2d31d8,this['statsUiVisible']=!![],this['viewer']['addEventListener'](ViewerEvent['OnAnimate'],()=>{var _0x1d6a6a;(_0x1d6a6a=this['stats'])===null||_0x1d6a6a===void 0x0?void 0x0:_0x1d6a6a['update']();});}['setVisible'](_0x147dfe){var _0x334f11;const _0x10c0de=_0x147dfe?0x0:-0x1;(_0x334f11=this['stats'])===null||_0x334f11===void 0x0?void 0x0:_0x334f11['showPanel'](_0x10c0de),this['statsUiVisible']=_0x147dfe;}['isVisible'](){return !!this['stats']&&this['statsUiVisible'];}['destroy'](){super['destroy'](),this['stats']=undefined,this['statsUiVisible']=![];}}StatsPlugin['DEFAULT_ID']='StatsPlugin';
|
|
224
|
+
|
|
225
|
+
class GradientColorSkybox extends THREE['Mesh']{constructor(_0x357ef8,_0x4fea23,_0x6ba1e2,_0x1ee320=0xc350,_0x70435d=0x20,_0x6dd6d7=0xf,_0x56314d=new THREE['Vector3'](),_0x2ce6cd=new THREE['Vector3'](0x0,-0.5,0.7)){super(),this['vertexShader']='\x0a\x20\x20\x20\x20varying\x20vec3\x20vWorldPosition;\x0a\x20\x20\x20\x20void\x20main()\x20{\x0a\x20\x20\x20\x20\x20\x20vec4\x20worldPosition\x20=\x20modelMatrix\x20*\x20vec4(\x20position,\x201.0\x20);\x0a\x20\x20\x20\x20\x20\x20vWorldPosition\x20=\x20worldPosition.xyz;\x0a\x20\x20\x20\x20\x20\x20mat4\x20modifiedViewMatrix\x20=\x20modelViewMatrix;\x0a\x20\x20\x20\x20\x20\x20modifiedViewMatrix[3]\x20=\x20vec4(0.0,\x200.0,\x200.0,\x201.0);\x0a\x20\x20\x20\x20\x20\x20gl_Position\x20=\x20projectionMatrix\x20*\x20modifiedViewMatrix\x20*\x20vec4(\x20position,\x201.0\x20);\x0a\x20\x20\x20\x20\x20\x20gl_Position\x20=\x20gl_Position.xyww;\x0a\x20\x20\x20\x20}',this['fragmentShader']='\x0a\x20\x20\x20\x20uniform\x20vec3\x20topColor;\x0a\x20\x20\x20\x20uniform\x20vec3\x20skylineColor;\x0a\x20\x20\x20\x20uniform\x20vec3\x20bottomColor;\x0a\x20\x20\x20\x20uniform\x20float\x20offset;\x0a\x20\x20\x20\x20uniform\x20float\x20exponent;\x0a\x20\x20\x20\x20uniform\x20vec3\x20skyCenter;\x0a\x20\x20\x20\x20uniform\x20vec3\x20sunDirection;\x0a\x20\x20\x20\x20varying\x20vec3\x20vWorldPosition;\x0a\x20\x20\x20\x20//\x20Used\x20to\x20find\x20the\x20position\x20to\x20draw\x20the\x20sun.\x20Sun\x20size\x20is\x20bigger\x20when\x20this\x20value\x20is\x20smaller\x0a\x20\x20\x20\x20const\x20float\x20sunDirectionDotThreshold\x20=\x200.98;\x0a\x0a\x20\x20\x20\x20void\x20main()\x20{\x0a\x20\x20\x20\x20\x20\x20vec3\x20position\x20=\x20vec3(vWorldPosition.x\x20-\x20skyCenter.x,\x20vWorldPosition.y\x20-\x20skyCenter.y,\x20vWorldPosition.z\x20-\x20skyCenter.z);\x0a\x20\x20\x20\x20\x20\x20vec3\x20normalizedPosition\x20=\x20normalize(\x20position\x20+\x20offset\x20);\x0a\x20\x20\x20\x20\x20\x20float\x20h\x20=\x20normalizedPosition.z;\x0a\x20\x20\x20\x20\x20\x20vec3\x20color;\x0a\x20\x20\x20\x20\x20\x20if\x20(h\x20>\x200.0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20color\x20=\x20mix(\x20skylineColor,\x20topColor,\x20pow(\x20h,\x20exponent\x20)\x20);\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20//\x20draw\x20the\x20sun\x0a\x20\x20\x20\x20\x20\x20\x20\x20float\x20dotResult\x20=\x20dot(sunDirection,\x20normalizedPosition);\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(dotResult\x20>\x20sunDirectionDotThreshold)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20float\x20sunSize\x20=\x201.0\x20-\x20sunDirectionDotThreshold;\x20//\x20maximum\x20sun\x20size\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20vec3\x20sunColor\x20=\x20vec3(1.0,\x201.0,\x201.0);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20color\x20=\x20mix(color,\x20sunColor,\x20pow((dotResult\x20+\x20sunSize\x20-\x201.0)\x20/\x20sunSize,\x203.0));\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20color\x20=\x20mix(\x20skylineColor,\x20bottomColor,\x20pow(\x20-h,\x20exponent\x20)\x20);\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20gl_FragColor\x20=\x20vec4(color\x20,\x201.0);\x0a\x20\x20\x20\x20}';const _0x2b3bb1={'topColor':{'value':_0x357ef8},'skylineColor':{'value':_0x4fea23},'bottomColor':{'value':_0x6ba1e2},'offset':{'value':0x1388},'exponent':{'value':0.9},'skyCenter':{'value':_0x56314d||new THREE['Vector3']()},'sunDirection':{'value':_0x2ce6cd['normalize']()}};this['geometry']=new THREE['SphereGeometry'](_0x1ee320,_0x70435d,_0x6dd6d7),this['material']=new THREE['ShaderMaterial']({'uniforms':_0x2b3bb1,'vertexShader':this['vertexShader'],'fragmentShader':this['fragmentShader'],'side':THREE['BackSide']}),this['name']=GradientColorSkybox['NAME'],this['matrixAutoUpdate']=![],this['layers']['disable'](LayerForSelectableObjects);}}GradientColorSkybox['NAME']='SKYBOX',GradientColorSkybox['MIN_SKY_RADIUS']=0xc350,GradientColorSkybox['MAX_SKY_RADIUS']=0x30d40;
|
|
226
|
+
|
|
227
|
+
class SkyboxPlugin extends Plugin{constructor(_0x4caf56,_0x1177e6){const _0x2a23a9=(_0x1177e6===null||_0x1177e6===void 0x0?void 0x0:_0x1177e6['id'])||SkyboxPlugin['DEFAULT_ID'];super(_0x4caf56,{'id':_0x2a23a9}),this['enabled']=!![],(_0x1177e6===null||_0x1177e6===void 0x0?void 0x0:_0x1177e6['color'])?this['setSkyboxByColor'](_0x1177e6['color']):this['setSkyboxByGradientColors'](),_0x4caf56['addEventListener'](ViewerEvent['ModelLoad'],()=>{let _0x3a927c=_0x4caf56['getBBox']();const _0x36c498=this['viewer']['getHomeView']();if(_0x3a927c){_0x3a927c=_0x3a927c['clone']();if(_0x36c498&&_0x36c498['eye']&&_0x36c498['look']){const _0x315a0b=_0x36c498&&CommonUtils['arrayToVector3'](_0x36c498['eye']),_0x2337e3=_0x36c498&&CommonUtils['arrayToVector3'](_0x36c498['look']),_0x45ebee=new THREE['Box3']();_0x45ebee['setFromPoints']([_0x315a0b,_0x2337e3]),_0x3a927c['union'](_0x45ebee);}this['updateGradientColorSkybox'](_0x3a927c);}});}['setEnabled'](_0xd36da3){this['enabled']=_0xd36da3,this['enabled']?this['gradientColorSkybox']&&(this['gradientColorSkybox']['visible']=!![]):this['gradientColorSkybox']&&(this['gradientColorSkybox']['visible']=![]),this['viewer']['enableRender']();}['isEnabled'](){return this['enabled'];}['setSkyboxByColor'](_0x1b3ed9=[0.92,0.95,0.96]){this['gradientColorSkybox']&&(this['gradientColorSkybox']['visible']=![]),this['viewer']['getSceneManager']()['setBackground'](this['rgb2Color'](_0x1b3ed9)),this['viewer']['enableRender']();}['setSkyboxByGradientColors'](_0x27b228=[0.52,0.71,0.96],_0x2adebc=[0x1,0x1,0x1],_0x5d6ac9=[0.6,0.6,0.6]){this['gradientColorSkybox']&&(this['gradientColorSkybox']['removeFromParent'](),this['gradientColorSkybox']=undefined);const _0x4a7ff6=this['rgb2Color'](_0x27b228),_0x903ac5=this['rgb2Color'](_0x2adebc),_0x44584f=this['rgb2Color'](_0x5d6ac9);this['gradientColorSkybox']=new GradientColorSkybox(_0x4a7ff6,_0x903ac5,_0x44584f),this['viewer']['scene']['add'](this['gradientColorSkybox']),this['viewer']['enableRender']();}['setSkyboxByCubeTexture'](_0x2c8589){this['gradientColorSkybox']&&(this['gradientColorSkybox']['visible']=![]);const _0x1f7e4a=new THREE['CubeTextureLoader']();_0x1f7e4a['load'](_0x2c8589,_0xd8e47b=>{this['viewer']['getSceneManager']()['setBackground'](_0xd8e47b),this['viewer']['enableRender']();});}['updateGradientColorSkybox'](_0x72056a){if(!this['gradientColorSkybox'])return;const _0xc62bcf=_0x72056a['max']['x']-_0x72056a['min']['x']+(_0x72056a['max']['y']-_0x72056a['min']['y'])+(_0x72056a['max']['z']-_0x72056a['min']['z']);let _0x2e0b78=_0xc62bcf*0x2;if(_0x2e0b78<GradientColorSkybox['MIN_SKY_RADIUS'])_0x2e0b78=GradientColorSkybox['MIN_SKY_RADIUS'];else _0x2e0b78>GradientColorSkybox['MAX_SKY_RADIUS']&&(_0x2e0b78=GradientColorSkybox['MAX_SKY_RADIUS']);this['gradientColorSkybox']['geometry']=new THREE['SphereGeometry'](_0x2e0b78,0x20,0xf);const _0x7b6ed3=this['viewer']['getCameraManager'](),_0x42bf10=_0x2e0b78*0x2;_0x7b6ed3['camera']['far']<=_0x42bf10&&(_0x7b6ed3['camera']['far']=_0x42bf10,_0x7b6ed3['camera']['updateProjectionMatrix']()),this['viewer']['enableRender']();}['destroy'](){var _0x156d6a;super['destroy'](),(_0x156d6a=this['gradientColorSkybox'])===null||_0x156d6a===void 0x0?void 0x0:_0x156d6a['removeFromParent'](),this['gradientColorSkybox']=undefined,this['viewer']['getSceneManager']()['setBackground'](null);}['rgb2Color'](_0x7439a7){const _0xc65bf=_0x7439a7[0x0]||0x0,_0x2de00c=_0x7439a7[0x1]||0x0,_0x592f2a=_0x7439a7[0x2]||0x0,_0xd6d0e=new THREE['Color']();return _0xd6d0e['setRGB'](_0xc65bf,_0x2de00c,_0x592f2a,THREE['SRGBColorSpace']),_0xd6d0e;}}SkyboxPlugin['DEFAULT_ID']='SkyboxPlugin';
|
|
228
|
+
|
|
229
|
+
var css_248z$4 = ".settings-3d .content .bim-setting{list-style:none;margin-bottom:5px}.settings-3d .content .bim-setting li{border-radius:6px;list-style:none;margin:2px;padding:8px 10px;transition:background-color .12s ease;vertical-align:text-top}.settings-3d .content .bim-setting li:hover{background:rgba(44,123,229,.06)}.settings-3d .content .bim-setting span{color:rgba(51,51,51,.88);display:inline-block;font-size:12px;margin-right:8px;max-width:calc(100% - 140px);overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;width:58%}.settings-3d .content .bim-setting input[type=checkbox]{accent-color:#2c7be5;border:none;box-shadow:none;cursor:pointer;height:16px;margin:0;padding:0;vertical-align:middle;width:16px}.settings-3d .content .bim-setting input[type=checkbox]:focus-visible{outline:2px solid rgba(44,123,229,.45);outline-offset:2px}.settings-3d .content .bim-setting input[type=checkbox]:disabled{cursor:not-allowed;opacity:.45}.settings-3d .content .bim-setting select{appearance:none;-webkit-appearance:none;background-color:#fff;background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='none' stroke='%23666' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round' d='M2.5 4.25 6 7.75l3.5-3.5'/%3E%3C/svg%3E\");background-position:right 8px center;background-repeat:no-repeat;background-size:12px 12px;border:1px solid rgba(0,0,0,.12);border-radius:6px;box-shadow:0 1px 2px rgba(0,0,0,.04);box-sizing:border-box;color:rgba(51,51,51,.9);cursor:pointer;font-size:12px;line-height:1.35;max-width:140px;min-width:120px;padding:6px 28px 6px 10px;text-align:left;transition:border-color .15s ease,box-shadow .15s ease,color .15s ease;vertical-align:middle;width:38%}.settings-3d .content .bim-setting select:hover:not(:disabled){border-color:rgba(44,123,229,.45);color:rgba(51,51,51,.95)}.settings-3d .content .bim-setting select:focus{border-color:#2c7be5;box-shadow:0 0 0 2px rgba(44,123,229,.22);outline:none}.settings-3d .content .bim-setting select:disabled{background-color:rgba(0,0,0,.04);cursor:not-allowed;opacity:.45}.settings-3d .content .bim-setting select option{background:#fff;color:#333;padding:6px 8px}.settings-3d .content .bim-setting input[type=number]{background-color:#fff;border:1px solid rgba(0,0,0,.12);border-radius:6px;box-shadow:0 1px 2px rgba(0,0,0,.04);box-sizing:border-box;color:rgba(51,51,51,.9);font-size:12px;line-height:1.35;max-width:140px;min-width:88px;padding:6px 10px;vertical-align:middle;width:38%}.settings-3d .content .bim-setting input[type=number]:focus{border-color:#2c7be5;box-shadow:0 0 0 2px rgba(44,123,229,.22);outline:none}.settings-3d .content .bim-setting input[type=number]:disabled{background-color:rgba(0,0,0,.04);cursor:not-allowed;opacity:.45}.settings-3d .content .settings-icon-btn{align-items:center;appearance:none;background:transparent;border:none;border-radius:4px;box-shadow:none;box-sizing:border-box;color:rgba(51,51,51,.72);cursor:pointer;display:inline-flex;justify-content:center;margin-left:5px;outline:none;padding:2px;transition:background-color .12s ease,color .12s ease;vertical-align:middle}.settings-3d .content .settings-icon-btn:hover:not(:disabled){background:rgba(44,123,229,.1);color:#2c7be5}.settings-3d .content .settings-icon-btn:focus-visible{outline:2px solid rgba(44,123,229,.45);outline-offset:1px}.settings-3d .content .settings-icon-btn:disabled{cursor:not-allowed;opacity:.45}";
|
|
230
|
+
styleInject(css_248z$4);
|
|
231
|
+
|
|
232
|
+
const en$4={'settings':'Settings','showOutline':'Show\x20Outline','doubleSidedMaterials':'Double-sided\x20Materials','showGroundGrid':'Show\x20Ground\x20Grid','groundGridHeight':'Ground\x20Grid\x20Height','showViewCube':'Show\x20View\x20Cube','showAxesHelper':'Show\x20AxesHelper','enableGroundShadow':'Enable\x20Ground\x20Shadow','enableQuantization':'Enable\x20Quantization','regenGroundShadowTitle':'Regenerate\x20Ground\x20Shadow','skybox':'Skybox','colorWhite':'White','colorBlack':'Black','colorGray':'Gray','gradientColor1':'Blue/White/Grey','gradientColor2':'Deep\x20Blue/White/Grey','gradientColor3':'Light\x20Blue/White/Yellow','setEnvMap':'Set\x20Environment\x20Map','default':'Default','cityStreet':'City\x20Street','grass':'Grass','sunshine':'Sunshine','showPerformanceStats':'Show\x20Perf\x20Stats\x20(FPS)','language':'Language','languageEn':'English','languageZh':'中文'};const zh$4={'settings':'设置','showOutline':'是否显示轮廓线','doubleSidedMaterials':'使用双面材质','showGroundGrid':'显示地面网格','groundGridHeight':'地面网格高度','showViewCube':'显示视图立方体','showAxesHelper':'显示坐标轴辅助线','enableGroundShadow':'启用地面阴影','enableQuantization':'启用几何量化','regenGroundShadowTitle':'重新生成地面阴影','skybox':'天空盒背景','colorWhite':'纯色\x20-\x20白','colorBlack':'纯色\x20-\x20黑','colorGray':'纯色\x20-\x20灰','gradientColor1':'渐变\x20-\x20蓝/白/灰','gradientColor2':'渐变\x20-\x20湛蓝/白/灰','gradientColor3':'渐变\x20-\x20浅蓝/白/黄','setEnvMap':'设置环境贴图','default':'默认','cityStreet':'城市街道','grass':'草地','sunshine':'阳光','showPerformanceStats':'显示性能统计\x20(帧率)','language':'语言','languageEn':'English','languageZh':'中文'};const SETTINGS_3D_I18N_NAMESPACE='settings3d';registerViewerI18nNamespace(SETTINGS_3D_I18N_NAMESPACE,{'en':en$4,'zh':zh$4});function t$4(_0x4a6c4b){return i18n['t'](_0x4a6c4b,{'ns':SETTINGS_3D_I18N_NAMESPACE});}
|
|
233
|
+
|
|
234
|
+
class Settings3dPlugin extends Plugin{constructor(_0x792edc,_0x357624){const _0x531aff=(_0x357624===null||_0x357624===void 0x0?void 0x0:_0x357624['id'])||Settings3dPlugin['DEFAULT_ID'];super(_0x792edc,{'id':_0x531aff}),this['onLanguageChange']=()=>{this['applyLocalizedChrome']();},this['cfg']=_0x357624||{'id':_0x531aff},this['cfg']['visible']!==![]&&this['init']();}['init'](){var _0xe3d664;const _0x2d198c=this['viewer'];this['cfg']['containerId']&&(this['container']=document['getElementById'](this['cfg']['containerId'])),!this['container']&&(this['container']=_0x2d198c['widgetContainer']),this['skyboxPlugin']=_0x2d198c['findPlugin']('SkyboxPlugin'),!this['skyboxPlugin']&&log['warn']('[Settings]\x20SkyboxPlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!'),this['groundGridPlugin']=_0x2d198c['findPlugin']('GroundGridPlugin'),!this['groundGridPlugin']&&log['warn']('[Settings]\x20GroundGridPlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!'),this['viewCubePlugin']=_0x2d198c['findPlugin']('ViewCubePlugin'),!this['viewCubePlugin']&&log['warn']('[Settings]\x20ViewCubePlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!'),this['axisGizmoPlugin']=_0x2d198c['findPlugin']('AxisGizmoPlugin'),!this['axisGizmoPlugin']&&log['warn']('[Settings]\x20AxisGizmoPlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!'),this['groundShadowPlugin']=_0x2d198c['findPlugin']('GroundShadowPlugin'),!this['groundShadowPlugin']&&log['warn']('[Settings]\x20GroundShadowPlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!'),this['basePanel']=new BasePanel({'container':this['container'],'title':t$4('settings'),'cssClass':'settings-3d','onClose':()=>this['onClose'](),'viewportContainer':this['viewer']['viewerContainer']}),this['content']=(_0xe3d664=this['basePanel'])===null||_0xe3d664===void 0x0?void 0x0:_0xe3d664['content'],this['addContent'](),this['addEventHandlers'](),this['viewer']['addEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']);}['applyLocalizedChrome'](){var _0x2c531f,_0x3357a3,_0x561217;(_0x2c531f=this['basePanel'])===null||_0x2c531f===void 0x0?void 0x0:_0x2c531f['setTitle'](t$4('settings'));const _0x296e6f=(_0x3357a3=this['content'])===null||_0x3357a3===void 0x0?void 0x0:_0x3357a3['querySelectorAll']('ul.bim-setting\x20>\x20li');if(!(_0x296e6f===null||_0x296e6f===void 0x0?void 0x0:_0x296e6f['length']))return;const _0x2d46fd=['showOutline','doubleSidedMaterials','showGroundGrid','groundGridHeight','showViewCube','showAxesHelper','showPerformanceStats','enableGroundShadow','enableQuantization','skybox','setEnvMap'];_0x2d46fd['forEach']((_0x49d8e1,_0x54c7ed)=>{var _0x2eebb9;const _0x45af9e=(_0x2eebb9=_0x296e6f[_0x54c7ed])===null||_0x2eebb9===void 0x0?void 0x0:_0x2eebb9['querySelector']('span');if(_0x45af9e){const _0x398817=t$4(_0x49d8e1);_0x45af9e['title']=_0x398817,_0x45af9e['textContent']=_0x398817;}}),(_0x561217=document['getElementById']('regenGroundShadow'))===null||_0x561217===void 0x0?void 0x0:_0x561217['setAttribute']('title',t$4('regenGroundShadowTitle'));const _0x3c9842=document['getElementById']('select-skybox');if(_0x3c9842){const _0x1d050e=['white','black','gray','gradientBlueGray','gradientDarkBlueGray','gradientBlueYellow'],_0x6d5f52=['colorWhite','colorBlack','colorGray','gradientColor1','gradientColor2','gradientColor3'];_0x1d050e['forEach']((_0x48b553,_0x21c2f1)=>{const _0x4d5184=_0x3c9842['querySelector']('option[value=\x22'+_0x48b553+'\x22]');_0x4d5184&&(_0x4d5184['textContent']=t$4(_0x6d5f52[_0x21c2f1]));});}const _0x3743b5=document['getElementById']('select-environment');if(_0x3743b5){const _0xad223c=['default','city','footprint','sunset'],_0x19a2c7=['default','cityStreet','grass','sunshine'];_0xad223c['forEach']((_0x58a3e9,_0x35ba69)=>{const _0x3cc689=_0x3743b5['querySelector']('option[value=\x22'+_0x58a3e9+'\x22]');_0x3cc689&&(_0x3cc689['textContent']=t$4(_0x19a2c7[_0x35ba69]));});}this['applyLanguageSelectChrome']();}['applyLanguageSelectChrome'](){var _0x254ba1;const _0x98394d=(_0x254ba1=this['content'])===null||_0x254ba1===void 0x0?void 0x0:_0x254ba1['querySelector']('.settings-language-row'),_0x481605=_0x98394d===null||_0x98394d===void 0x0?void 0x0:_0x98394d['querySelector']('span');_0x481605&&(_0x481605['title']=t$4('language'),_0x481605['textContent']=t$4('language'));const _0x3940b1=document['getElementById']('settings3d-language');if(!_0x3940b1)return;_0x3940b1['value']=this['viewer']['getLanguage']();const _0x5ceb3=_0x3940b1['querySelector']('option[value=\x22en\x22]'),_0x1fe8f7=_0x3940b1['querySelector']('option[value=\x22zh\x22]');_0x5ceb3&&(_0x5ceb3['textContent']=t$4('languageEn')),_0x1fe8f7&&(_0x1fe8f7['textContent']=t$4('languageZh'));}['setVisible'](_0x51df31){_0x51df31&&!this['basePanel']&&this['init'](),this['basePanel']&&(this['basePanel']['setVisible'](_0x51df31),this['dispatchEvent']('visibilitychange',_0x51df31));}['isVisible'](){var _0x39cbc0;return !!((_0x39cbc0=this['basePanel'])===null||_0x39cbc0===void 0x0?void 0x0:_0x39cbc0['isVisible']());}['onClose'](){this['dispatchEvent']('visibilitychange',![]);}['destroy'](){var _0x383f6e;this['viewer']['removeEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']),(_0x383f6e=this['basePanel'])===null||_0x383f6e===void 0x0?void 0x0:_0x383f6e['destroy'](),super['destroy']();}['addContent'](){var _0x200bab,_0x3cdd20,_0xf53b9b,_0x2f6ae5,_0x45c051,_0x1600fe,_0x2d6a5c,_0x55fd2e,_0x5257b4,_0x12ac07;const _0x22f7fe=this['viewer'],_0x1efeac=document['createElement']('div'),_0x2011ed=(_0x200bab=this['groundGridPlugin'])===null||_0x200bab===void 0x0?void 0x0:_0x200bab['isVisible'](),_0x126b81=(_0x2f6ae5=(_0xf53b9b=(_0x3cdd20=this['groundGridPlugin'])===null||_0x3cdd20===void 0x0?void 0x0:_0x3cdd20['getHeight'])===null||_0xf53b9b===void 0x0?void 0x0:_0xf53b9b['call'](_0x3cdd20))!==null&&_0x2f6ae5!==void 0x0?_0x2f6ae5:0x0,_0x29193a=!this['groundGridPlugin'],_0x1f5df0=(_0x45c051=this['viewCubePlugin'])===null||_0x45c051===void 0x0?void 0x0:_0x45c051['isVisible'](),_0x3fe9e6=(_0x1600fe=this['axisGizmoPlugin'])===null||_0x1600fe===void 0x0?void 0x0:_0x1600fe['isVisible'](),_0x4b2b46=(_0x2d6a5c=this['groundShadowPlugin'])===null||_0x2d6a5c===void 0x0?void 0x0:_0x2d6a5c['isEnabled'](),_0x5eadb3=!this['groundShadowPlugin']||!_0x4b2b46,_0x574cb5=_0x22f7fe['enableQuantization'],_0x3e0f09=(_0x55fd2e=this['skyboxPlugin'])===null||_0x55fd2e===void 0x0?void 0x0:_0x55fd2e['isEnabled'](),_0x448674=this['viewer']['findPlugin'](StatsPlugin['DEFAULT_ID']),_0x15427c=(_0x5257b4=_0x448674===null||_0x448674===void 0x0?void 0x0:_0x448674['isVisible']())!==null&&_0x5257b4!==void 0x0?_0x5257b4:![];_0x1efeac['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<ul\x20class=\x22bim-setting\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20title=\x22'+t$4('showOutline')+'\x22>'+t$4('showOutline')+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20id=\x22enableEdge\x22\x20type=\x22checkbox\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20title=\x22'+t$4('doubleSidedMaterials')+'\x22>'+t$4('doubleSidedMaterials')+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20id=\x22doubleSidedMaterials\x22\x20type=\x22checkbox\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20title=\x22'+t$4('showGroundGrid')+'\x22>'+t$4('showGroundGrid')+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20id=\x22groundGridVisible\x22\x20type=\x22checkbox\x22\x20'+(this['groundGridPlugin']?'':'disabled')+'\x20'+(_0x2011ed?'checked':'')+'>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20title=\x22'+t$4('groundGridHeight')+'\x22>'+t$4('groundGridHeight')+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20id=\x22groundGridHeight\x22\x20type=\x22number\x22\x20step=\x22any\x22\x20value=\x22'+_0x126b81+'\x22\x20'+(_0x29193a?'disabled':'')+'>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20title=\x22'+t$4('showViewCube')+'\x22>'+t$4('showViewCube')+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20id=\x22viewCubeVisible\x22\x20type=\x22checkbox\x22\x20'+(this['viewCubePlugin']?'':'disabled')+'\x20'+(_0x1f5df0?'checked':'')+'>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20title=\x22'+t$4('showAxesHelper')+'\x22>'+t$4('showAxesHelper')+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20id=\x22axesHelperVisible\x22\x20type=\x22checkbox\x22\x20'+(this['axisGizmoPlugin']?'':'disabled')+'\x20'+(_0x3fe9e6?'checked':'')+'>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20title=\x22'+t$4('showPerformanceStats')+'\x22>'+t$4('showPerformanceStats')+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20id=\x22statsVisible\x22\x20type=\x22checkbox\x22\x20'+(_0x448674?'':'disabled')+'\x20'+(_0x15427c?'checked':'')+'>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20title=\x22'+t$4('enableGroundShadow')+'\x22>'+t$4('enableGroundShadow')+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20id=\x22groundShadowEnabled\x22\x20type=\x22checkbox\x22\x20'+(this['groundShadowPlugin']?'':'disabled')+'\x20'+(_0x4b2b46?'checked':'')+'>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20id=\x22regenGroundShadow\x22\x20class=\x22settings-icon-btn\x22\x20title=\x22'+t$4('regenGroundShadowTitle')+'\x22\x20'+(_0x5eadb3?'disabled':'')+'>'+PROPERTY_ICON_UV_REFRESH+'</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20title=\x22'+t$4('enableQuantization')+'\x22>'+t$4('enableQuantization')+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20id=\x22enableQuantization\x22\x20type=\x22checkbox\x22\x20'+(_0x574cb5?'checked':'')+'>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20title=\x22'+t$4('skybox')+'\x22>'+t$4('skybox')+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<select\x20id=\x22select-skybox\x22\x20'+(this['skyboxPlugin']?'':'disabled')+'\x20'+(_0x3e0f09?'checked':'')+'>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<option\x20value=\x22white\x22>'+t$4('colorWhite')+'</option>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<option\x20value=\x22black\x22>'+t$4('colorBlack')+'</option>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<option\x20value=\x22gray\x22>'+t$4('colorGray')+'</option>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<option\x20value=\x22gradientBlueGray\x22>'+t$4('gradientColor1')+'</option>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<option\x20value=\x22gradientDarkBlueGray\x22>'+t$4('gradientColor2')+'</option>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<option\x20value=\x22gradientBlueYellow\x22>'+t$4('gradientColor3')+'</option>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</select>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20title=\x22'+t$4('setEnvMap')+'\x22>'+t$4('setEnvMap')+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<select\x20id=\x22select-environment\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<option\x20value=\x22default\x22>'+t$4('default')+'</option>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<option\x20value=\x22city\x22>'+t$4('cityStreet')+'</option>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<option\x20value=\x22footprint\x22>'+t$4('grass')+'</option>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<option\x20value=\x22sunset\x22>'+t$4('sunshine')+'</option>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</select>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<li\x20class=\x22settings-language-row\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20title=\x22'+t$4('language')+'\x22>'+t$4('language')+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<select\x20id=\x22settings3d-language\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<option\x20value=\x22en\x22>'+t$4('languageEn')+'</option>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<option\x20value=\x22zh\x22>'+t$4('languageZh')+'</option>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</select>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</li>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</ul>\x0a\x20\x20\x20\x20\x20\x20\x20\x20',(_0x12ac07=this['content'])===null||_0x12ac07===void 0x0?void 0x0:_0x12ac07['appendChild'](_0x1efeac);const _0x39ed06=document['getElementById']('settings3d-language');_0x39ed06&&(_0x39ed06['value']=this['viewer']['getLanguage']());}['addEventHandlers'](){var _0x48be68,_0x5502b8,_0x430f8d,_0x3003d7,_0x6cf36e,_0x2faff6,_0x45cc9c,_0xfb59d6,_0x173f2d,_0x4dcac4,_0x265c92,_0x2b4ab6,_0x289219;const _0x285f14=this['viewer'];(_0x48be68=document['getElementById']('enableEdge'))===null||_0x48be68===void 0x0?void 0x0:_0x48be68['addEventListener']('change',_0x3631fa=>{const _0x56352b=_0x3631fa['target']['checked'];_0x285f14['effect']['enableModelEdges'](_0x56352b);}),(_0x5502b8=document['getElementById']('doubleSidedMaterials'))===null||_0x5502b8===void 0x0?void 0x0:_0x5502b8['addEventListener']('change',_0x16727e=>{const _0x17923c=_0x16727e['target']['checked'];_0x17923c?_0x285f14['setDoubleSidedMaterials']():_0x285f14['revertDoubleSidedMaterials']();}),(_0x430f8d=document['getElementById']('groundGridVisible'))===null||_0x430f8d===void 0x0?void 0x0:_0x430f8d['addEventListener']('change',_0xc5e78d=>{if(!this['groundGridPlugin']){log['warn']('GroundGridPlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!');return;}const _0x55445d=_0xc5e78d['target']['checked'];this['groundGridPlugin']['setVisible'](_0x55445d);});const _0x42ac1e=()=>{if(!this['groundGridPlugin'])return;const _0x3ee325=document['getElementById']('groundGridHeight');if(!_0x3ee325)return;const _0x1f5812=Number['parseFloat'](_0x3ee325['value']);if(!Number['isFinite'](_0x1f5812)){_0x3ee325['value']=String(this['groundGridPlugin']['getHeight']());return;}this['groundGridPlugin']['setHeight'](_0x1f5812);};(_0x3003d7=document['getElementById']('groundGridHeight'))===null||_0x3003d7===void 0x0?void 0x0:_0x3003d7['addEventListener']('change',_0x42ac1e),(_0x6cf36e=document['getElementById']('groundGridHeight'))===null||_0x6cf36e===void 0x0?void 0x0:_0x6cf36e['addEventListener']('keydown',_0x5b92d4=>{_0x5b92d4['key']==='Enter'&&_0x42ac1e();}),(_0x2faff6=document['getElementById']('viewCubeVisible'))===null||_0x2faff6===void 0x0?void 0x0:_0x2faff6['addEventListener']('change',_0x2a019a=>{const _0x748abe=_0x2a019a['target']['checked'];if(!this['viewCubePlugin']){log['warn']('ViewCubePlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!');return;}this['viewCubePlugin']['setVisible'](_0x748abe);}),(_0x45cc9c=document['getElementById']('axesHelperVisible'))===null||_0x45cc9c===void 0x0?void 0x0:_0x45cc9c['addEventListener']('change',_0x1a531a=>{if(!this['axisGizmoPlugin']){log['warn']('AxisGizmoPlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!');return;}const _0x2df2e4=_0x1a531a['target']['checked'];this['axisGizmoPlugin']['setVisible'](_0x2df2e4);}),(_0xfb59d6=document['getElementById']('statsVisible'))===null||_0xfb59d6===void 0x0?void 0x0:_0xfb59d6['addEventListener']('change',_0x445cd8=>{const _0x2015b1=_0x285f14['findPlugin'](StatsPlugin['DEFAULT_ID']);if(!_0x2015b1){log['warn']('StatsPlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!');return;}_0x2015b1['setVisible'](!!_0x445cd8['target']['checked']);});const _0xdf7a2d=document['getElementById']('regenGroundShadow');(_0x173f2d=document['getElementById']('groundShadowEnabled'))===null||_0x173f2d===void 0x0?void 0x0:_0x173f2d['addEventListener']('change',_0x2b19da=>{if(!this['groundShadowPlugin']){log['warn']('GroundShadowPlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!');return;}const _0x2a7cc8=_0x2b19da['target']['checked'];this['groundShadowPlugin']['setEnabled'](_0x2a7cc8),_0xdf7a2d&&(_0xdf7a2d['disabled']=!_0x2a7cc8);}),_0xdf7a2d===null||_0xdf7a2d===void 0x0?void 0x0:_0xdf7a2d['addEventListener']('click',()=>{if(!this['groundShadowPlugin']){log['warn']('GroundShadowPlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!');return;}if(!this['groundShadowPlugin']['isEnabled']())return;this['groundShadowPlugin']['update']();}),(_0x4dcac4=document['getElementById']('enableQuantization'))===null||_0x4dcac4===void 0x0?void 0x0:_0x4dcac4['addEventListener']('change',_0x459f3e=>{_0x285f14['enableQuantization']=!!_0x459f3e['target']['checked'];}),(_0x265c92=document['getElementById']('select-skybox'))===null||_0x265c92===void 0x0?void 0x0:_0x265c92['addEventListener']('change',_0x14db4d=>{const _0x251a54=_0x285f14['findPlugin']('SkyboxPlugin');if(!_0x251a54){log['warn']('SkyboxPlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!');return;}const _0x259799=_0x14db4d['target']['selectedOptions'][0x0]['value'];if(_0x259799==='white')_0x251a54['setSkyboxByColor']([0x1,0x1,0x1]);else {if(_0x259799==='black')_0x251a54['setSkyboxByColor']([0x0,0x0,0x0]);else {if(_0x259799==='gray')_0x251a54['setSkyboxByColor']([0.16,0.17,0.18]);else {if(_0x259799==='gradientBlueGray')_0x251a54['setSkyboxByGradientColors']([0.52,0.71,0.96],[0x1,0x1,0x1],[0.6,0.6,0.6]);else {if(_0x259799==='gradientDarkBlueGray')_0x251a54['setSkyboxByGradientColors']([0.66,0.93,0x1],[0x1,0x1,0x1],[0.41,0.41,0.41]);else _0x259799==='gradientBlueYellow'&&_0x251a54['setSkyboxByGradientColors']([0.86,0.93,0x1],[0x1,0x1,0x1],[0.92,0.89,0.79]);}}}}}),(_0x2b4ab6=document['getElementById']('settings3d-language'))===null||_0x2b4ab6===void 0x0?void 0x0:_0x2b4ab6['addEventListener']('change',_0x4b186b=>{const _0x1307d6=_0x4b186b['target']['value'];this['viewer']['setLanguage'](_0x1307d6);}),(_0x289219=document['getElementById']('select-environment'))===null||_0x289219===void 0x0?void 0x0:_0x289219['addEventListener']('change',_0x495120=>{const _0x180d93=this['viewer'],_0x270ec6=_0x495120['target']['selectedOptions'][0x0]['value'];if(_0x270ec6==='default')_0x180d93['setEnvironmentData']();else {if(_0x270ec6==='city')_0x180d93['setEnvironment']('/demo/images/envmap/city_street_256.hdr');else {if(_0x270ec6==='footprint')_0x180d93['setEnvironment']('/demo/images/envmap/footprint_court_2k.hdr');else _0x270ec6==='sunset'&&_0x180d93['setEnvironment']('/demo/images/envmap/venice_sunset_1k.hdr');}}});}}Settings3dPlugin['DEFAULT_ID']='Settings3dPlugin';
|
|
235
|
+
|
|
236
|
+
const scriptLoadPromises=new Map();function injectScriptOnce(_0x488feb){const _0x831af=document['querySelector']('script[data-xv-occt][src=\x22'+_0x488feb+'\x22]');if((_0x831af===null||_0x831af===void 0x0?void 0x0:_0x831af['dataset']['loaded'])==='1')return Promise['resolve']();return new Promise((_0x455038,_0x47665b)=>{const _0x1e65aa=document['createElement']('script');_0x1e65aa['src']=_0x488feb,_0x1e65aa['async']=!![],_0x1e65aa['dataset']['xvOcct']='1',_0x1e65aa['onload']=()=>{_0x1e65aa['dataset']['loaded']='1',_0x455038();},_0x1e65aa['onerror']=()=>{_0x47665b(new Error('[OcctImport]\x20Failed\x20to\x20load\x20script:\x20'+_0x488feb));},document['head']['appendChild'](_0x1e65aa);});}function getOcctFactoryFromGlobal(){const _0x37fe10=globalThis['occtimportjs'];if(typeof _0x37fe10==='function')return _0x37fe10;return undefined;}async function loadOcctImportOnce(_0x2371e7){const _0x1f70b8=scriptLoadPromises['get'](_0x2371e7);if(_0x1f70b8){await _0x1f70b8;const _0x2389eb=getOcctFactoryFromGlobal();if(!_0x2389eb)throw new Error('[OcctImport]\x20Global\x20\x27occtimportjs\x27\x20is\x20missing\x20after\x20script\x20load');return _0x2389eb;}const _0x55d512=injectScriptOnce(_0x2371e7);scriptLoadPromises['set'](_0x2371e7,_0x55d512),await _0x55d512;const _0x5ce385=getOcctFactoryFromGlobal();if(!_0x5ce385)throw new Error('[OcctImport]\x20Global\x20\x27occtimportjs\x27\x20is\x20missing\x20after\x20script\x20load');return _0x5ce385;}function normalizeBaseUrl(_0x3698cf){const _0x49a11e=_0x3698cf['trim']();return _0x49a11e['endsWith']('/')?_0x49a11e:_0x49a11e+'/';}function buildOcctModuleConfig(_0x526164){const _0x2d5980=normalizeBaseUrl(_0x526164);return {'locateFile':(_0xf9e2a,_0x20fbc8)=>{if(_0xf9e2a['endsWith']('.wasm'))return ''+_0x2d5980+_0xf9e2a;return ''+_0x20fbc8+_0xf9e2a;}};}const runtimeCache=new Map();function getOcctImportRuntime(_0x5a7ef7,_0x102166){const _0x49f1c3=_0x5a7ef7+'|'+_0x102166,_0x4c7422=runtimeCache['get'](_0x49f1c3);if(_0x4c7422)return _0x4c7422;const _0x164287=((async()=>{const _0x1d179a=await loadOcctImportOnce(_0x5a7ef7);return _0x1d179a(buildOcctModuleConfig(_0x102166));})());return runtimeCache['set'](_0x49f1c3,_0x164287),_0x164287;}
|
|
237
|
+
|
|
238
|
+
function isFinitePositive(_0x55b390){return typeof _0x55b390==='number'&&Number['isFinite'](_0x55b390)&&_0x55b390>0x0;}function toFloat32Array(_0x1346f8){return _0x1346f8 instanceof Float32Array?_0x1346f8:Float32Array['from'](_0x1346f8);}function toIndexArray(_0x3b248d){return _0x3b248d instanceof Uint32Array?_0x3b248d:Uint32Array['from'](_0x3b248d);}function normalizeColorComponent(_0x29b19b){if(_0x29b19b>0x1)return _0x29b19b/0xff;if(_0x29b19b<0x0)return 0x0;return _0x29b19b;}function buildMaterial(_0x1ed96d){const _0x44f3dd=Array['isArray'](_0x1ed96d)&&_0x1ed96d['length']>=0x3?_0x1ed96d:[0.82,0.82,0.82],_0x556333=new THREE['Color'](normalizeColorComponent(_0x44f3dd[0x0]),normalizeColorComponent(_0x44f3dd[0x1]),normalizeColorComponent(_0x44f3dd[0x2]));return new THREE['MeshStandardMaterial']({'color':_0x556333,'metalness':0.05,'roughness':0.75,'side':THREE['DoubleSide']});}function buildGeometry(_0x10fa3c){var _0x3c04ad,_0x38b632,_0x37afba,_0x701847,_0x36d627;const _0x390733=(_0x38b632=(_0x3c04ad=_0x10fa3c['attributes'])===null||_0x3c04ad===void 0x0?void 0x0:_0x3c04ad['position'])===null||_0x38b632===void 0x0?void 0x0:_0x38b632['array'],_0x2b324a=(_0x37afba=_0x10fa3c['index'])===null||_0x37afba===void 0x0?void 0x0:_0x37afba['array'];if(!_0x390733||!_0x2b324a)return undefined;const _0x3006b8=toFloat32Array(_0x390733),_0x4d92f6=toIndexArray(_0x2b324a);if(!isFinitePositive(_0x3006b8['length'])||!isFinitePositive(_0x4d92f6['length']))return undefined;const _0x3daec5=new THREE['BufferGeometry']();_0x3daec5['setAttribute']('position',new THREE['BufferAttribute'](_0x3006b8,0x3)),_0x3daec5['setIndex'](new THREE['BufferAttribute'](_0x4d92f6,0x1));const _0x6e56d6=(_0x36d627=(_0x701847=_0x10fa3c['attributes'])===null||_0x701847===void 0x0?void 0x0:_0x701847['normal'])===null||_0x36d627===void 0x0?void 0x0:_0x36d627['array'];return _0x6e56d6?_0x3daec5['setAttribute']('normal',new THREE['BufferAttribute'](toFloat32Array(_0x6e56d6),0x3)):_0x3daec5['computeVertexNormals'](),_0x3daec5;}function buildMesh(_0x1fe050){const _0x41e51f=buildGeometry(_0x1fe050);if(!_0x41e51f)return undefined;const _0x289024=buildMaterial(_0x1fe050['color']),_0x269c8f=new THREE['Mesh'](_0x41e51f,_0x289024);return _0x269c8f['name']=_0x1fe050['name']||'OcctMesh',_0x269c8f;}function buildNodeGroup(_0x3be2c5,_0x5b0733,_0x286e82){const _0x39079e=new THREE['Group']();return _0x39079e['name']=_0x3be2c5['name']||_0x286e82,(_0x3be2c5['meshes']||[])['forEach'](_0x57c440=>{const _0x5cffb2=_0x5b0733[_0x57c440],_0x231574=_0x5cffb2?buildMesh(_0x5cffb2):undefined;_0x231574&&_0x39079e['add'](_0x231574);}),(_0x3be2c5['children']||[])['forEach'](_0x479dda=>{_0x39079e['add'](buildNodeGroup(_0x479dda,_0x5b0733,_0x286e82));}),_0x39079e;}function buildOcctMeshGroup(_0x286323,_0x41df21){const _0x623411=new THREE['Group']();_0x623411['name']=_0x41df21['rootName'];const _0x20689d=_0x286323['meshes']||[];if(_0x286323['root'])return _0x623411['add'](buildNodeGroup(_0x286323['root'],_0x20689d,_0x41df21['defaultNodeName'])),_0x623411;return _0x20689d['forEach'](_0x1c4e41=>{const _0x4d8902=buildMesh(_0x1c4e41);_0x4d8902&&_0x623411['add'](_0x4d8902);}),_0x623411;}
|
|
239
|
+
|
|
240
|
+
const DEFAULT_OCCT_IMPORT_SCRIPT_URL='https://cdn.jsdelivr.net/npm/occt-import-js@0.0.23/dist/occt-import-js.js';const DEFAULT_OCCT_WASM_BASE_URL='https://cdn.jsdelivr.net/npm/occt-import-js@0.0.23/dist/';const DEFAULT_STEP_IMPORT_PARAMS={'linearUnit':'meter'};const BREP_TO_METERS_SCALE=0.001;function occtExchangeKindFromFormat(_0x401d11){const _0x3544e9=_0x401d11['toLowerCase']();if(_0x3544e9['endsWith']('step')||_0x3544e9['endsWith']('stp'))return 'step';if(_0x3544e9['endsWith']('iges')||_0x3544e9['endsWith']('igs'))return 'iges';if(_0x3544e9['endsWith']('brep')||_0x3544e9['endsWith']('rle'))return 'brep';throw new Error('[OcctLoader]\x20Expected\x20STEP,\x20IGES,\x20or\x20BREP\x20format\x20token,\x20got:\x20'+_0x401d11);}class StepModelLoader extends BaseModelLoader{constructor(_0x5b428b){super(),this['id']='loader.plugin.step',this['priority']=0xa,this['formats']=['step','stp','iges','igs','brep','rle'],this['scriptUrl']=(_0x5b428b===null||_0x5b428b===void 0x0?void 0x0:_0x5b428b['scriptUrl'])||DEFAULT_OCCT_IMPORT_SCRIPT_URL,this['wasmBaseUrl']=(_0x5b428b===null||_0x5b428b===void 0x0?void 0x0:_0x5b428b['wasmBaseUrl'])||DEFAULT_OCCT_WASM_BASE_URL,this['importParams']=Object['assign']({},DEFAULT_STEP_IMPORT_PARAMS);}async['load'](_0x320f32){this['reportProgress'](_0x320f32['onProgress'],0x5);const _0x14bdde=await fetch(_0x320f32['url'],{'headers':_0x320f32['requestHeader']});if(!_0x14bdde['ok'])throw new Error('[OcctLoader]\x20HTTP\x20'+_0x14bdde['status']+'\x20loading\x20'+_0x320f32['url']);this['reportProgress'](_0x320f32['onProgress'],0x23);const _0x59d043=await _0x14bdde['arrayBuffer']();return this['loadFromBuffer']({'format':_0x320f32['format'],'data':_0x59d043,'onProgress':_0x320f32['onProgress'],'quantize':_0x320f32['quantize']});}async['loadFromBuffer'](_0x5e4694){this['reportProgress'](_0x5e4694['onProgress'],0x2d);const _0x154a29=await getOcctImportRuntime(this['scriptUrl'],this['wasmBaseUrl']);this['reportProgress'](_0x5e4694['onProgress'],0x3c);const _0x2e713b=occtExchangeKindFromFormat(_0x5e4694['format']),_0x1b83f1=this['parseOcctToResult'](_0x154a29,new Uint8Array(_0x5e4694['data']),_0x2e713b);this['reportProgress'](_0x5e4694['onProgress'],0x55);const _0x4cc29a=buildOcctMeshGroup(_0x1b83f1,{'rootName':_0x2e713b==='step'?'STEP':_0x2e713b==='iges'?'IGES':'BREP','defaultNodeName':_0x2e713b==='step'?'StepNode':_0x2e713b==='iges'?'IgesNode':'BrepNode'});return _0x2e713b==='brep'&&_0x4cc29a['scale']['setScalar'](BREP_TO_METERS_SCALE),this['reportProgress'](_0x5e4694['onProgress'],0x64),this['maybeQuantizeLoadedScene'](_0x4cc29a,_0x5e4694['quantize']);}['parseOcctToResult'](_0x3e2c14,_0x508c90,_0x36b1ea){let _0x168cab;if(_0x36b1ea==='step')_0x168cab=_0x3e2c14['ReadStepFile'](_0x508c90,this['importParams']);else _0x36b1ea==='iges'?_0x168cab=_0x3e2c14['ReadIgesFile'](_0x508c90,this['importParams']):_0x168cab=_0x3e2c14['ReadBrepFile'](_0x508c90,this['importParams']);const _0x581730=_0x168cab;if(!(_0x581730===null||_0x581730===void 0x0?void 0x0:_0x581730['success'])){const _0x5b150e=(_0x581730===null||_0x581730===void 0x0?void 0x0:_0x581730['reason'])?':\x20'+_0x581730['reason']:'',_0x42eeef=_0x36b1ea==='step'?'STEP':_0x36b1ea==='iges'?'IGES':'BREP';throw new Error('[OcctLoader]\x20Failed\x20to\x20parse\x20'+_0x42eeef+_0x5b150e);}return _0x581730;}['reportProgress'](_0x5583bb,_0x1cd712){_0x5583bb&&_0x5583bb(new ProgressEvent('progress',{'loaded':_0x1cd712,'total':0x64}));}}
|
|
241
|
+
|
|
242
|
+
function defaultWasmBaseUrl(){return DEFAULT_OCCT_WASM_BASE_URL;}function defaultScriptUrl(){return DEFAULT_OCCT_IMPORT_SCRIPT_URL;}class StepLoaderPlugin extends Plugin{constructor(_0x421ccb,_0x19b202){const _0x3da8aa=(_0x19b202===null||_0x19b202===void 0x0?void 0x0:_0x19b202['id'])||StepLoaderPlugin['DEFAULT_ID'];super(_0x421ccb,{'id':_0x3da8aa});const _0x3723ca=(_0x19b202===null||_0x19b202===void 0x0?void 0x0:_0x19b202['wasmBaseUrl'])||defaultWasmBaseUrl(),_0x5dfa21=(_0x19b202===null||_0x19b202===void 0x0?void 0x0:_0x19b202['scriptUrl'])||defaultScriptUrl();this['loader']=new StepModelLoader({'wasmBaseUrl':_0x3723ca,'scriptUrl':_0x5dfa21}),_0x421ccb['addModelLoader'](this['loader']);}['destroy'](){this['viewer']['removeModelLoader'](this['loader']['id']),super['destroy']();}}StepLoaderPlugin['DEFAULT_ID']='StepLoaderPlugin';
|
|
243
|
+
|
|
244
|
+
var css_248z$3 = ".toolbar{align-items:center;background:hsla(0,0%,100%,.8);border-radius:4px;bottom:40px;box-shadow:1px 3px 10px 0 rgba(0,0,0,.4);height:68px;left:50%;padding:8px 20px;pointer-events:auto;position:absolute;transform:translate(-50%);user-select:none;z-index:1}.toolbar,.toolbar .toolbar-group{box-sizing:border-box;display:flex}.toolbar .toolbar-group{padding:0 2px}.toolbar .toolbar-group-division{background-color:hsla(0,0%,60%,.8);height:60%;width:1px}.toolbar .toolbar-menu{border-radius:4px;box-sizing:border-box;color:#666;cursor:pointer;display:flex;flex-direction:column;height:50px;margin:0 2px;padding:3px 1px;transition:all .3s}.toolbar .toolbar-menu.active{color:#2c7be5}.toolbar .toolbar-menu .icon{font-size:24px;height:24px;line-height:normal;margin:auto;width:24px}.toolbar .toolbar-menu span{display:block;font-size:12px;margin:auto;overflow:hidden;text-align:center;text-overflow:ellipsis;user-select:none;white-space:nowrap;width:100%}.toolbar .toolbar-menu .icon-zoom-to-extent{background-color:currentColor;-webkit-mask:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5v-3a2 2 0 0 1 2-2h3M20.5 8.5v-3a2 2 0 0 0-2-2h-3M3.5 15.5v3a2 2 0 0 0 2 2h3M20.5 15.5v3a2 2 0 0 1-2 2h-3'/%3E%3Crect x='7' y='7' width='10' height='10' rx='1.5'/%3E%3C/g%3E%3C/svg%3E\") no-repeat center/24px 24px;mask:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5v-3a2 2 0 0 1 2-2h3M20.5 8.5v-3a2 2 0 0 0-2-2h-3M3.5 15.5v3a2 2 0 0 0 2 2h3M20.5 15.5v3a2 2 0 0 1-2 2h-3'/%3E%3Crect x='7' y='7' width='10' height='10' rx='1.5'/%3E%3C/g%3E%3C/svg%3E\") no-repeat center/24px 24px}.toolbar .toolbar-menu-active{background-color:hsla(0,0%,100%,.8);color:#2c7be5}.toolbar .toolbar-parent-menu{position:relative}.toolbar .toolbar-parent-menu-active .toolbar-sub-menu{display:block}.toolbar .toolbar-parent-menu-active .toolbar-sub-menu-list{background:hsla(0,0%,100%,.8)}.toolbar .toolbar-parent-menu:after{border-color:#666 #666 transparent transparent;border-radius:1px;border-style:solid;border-width:4px;box-sizing:border-box;content:\"\";height:0;position:absolute;right:2px;top:2px}.toolbar .toolbar-sub-menu{bottom:100%;box-shadow:1px 3px 10px 0 rgba(0,0,0,.4);display:none;min-width:50px;position:absolute}.toolbar .toolbar-sub-menu .toolbar-sub-menu-list{border-radius:4px;margin-bottom:2px}.toolbar .toolbar-sub-menu .toolbar-sub-menu-list .toolbar-menu{margin:0}.toolbar .toolbar-collapse-toggle{align-items:center;background:hsla(0,0%,100%,.05);border:1px solid rgba(0,0,0,.08);border-radius:1px;bottom:-12px;box-shadow:0 1px 2px rgba(0,0,0,.12);box-sizing:border-box;cursor:pointer;display:flex;height:12px;justify-content:center;left:50%;min-width:22px;padding:0 2px;position:absolute;transform:translateX(-50%)}.toolbar .toolbar-collapse-toggle:hover{background:hsla(0,0%,100%,.6);transition:background .3s ease}.toolbar .toolbar-collapse-toggle:hover .toolbar-collapse-toggle-icon{color:#2c7be5}.toolbar .toolbar-collapse-toggle-icon{align-items:center;color:#666;display:inline-flex;height:16px;justify-content:center;transform:rotate(180deg);transition:transform .12s ease,color .12s ease;width:16px}.toolbar.toolbar--collapsed{background:transparent;bottom:8px;box-shadow:none;height:auto;min-height:0;padding:2px 0}.toolbar.toolbar--collapsed>.toolbar-group,.toolbar.toolbar--collapsed>.toolbar-group-division{display:none}.toolbar.toolbar--collapsed .toolbar-collapse-toggle{bottom:auto;left:auto;position:relative;transform:none}.toolbar.toolbar--collapsed .toolbar-collapse-toggle-icon{transform:rotate(0deg)}.toolbar.toolbar--collapsed .toolbar-collapse-toggle:hover .toolbar-collapse-toggle-icon{color:#2c7be5}@media screen and (max-width:768px){.toolbar{border-radius:3px;bottom:16px;box-shadow:1px 2px 8px 0 rgba(0,0,0,.35);height:auto;min-height:40px;padding:4px 10px}.toolbar .toolbar-group{padding:0 1px}.toolbar .toolbar-menu{height:32px;margin:0 1px;padding:2px 0;width:32px}.toolbar .toolbar-menu .icon{font-size:22px;height:22px;width:22px}.toolbar .toolbar-menu .icon-zoom-to-extent{-webkit-mask-size:22px 22px;mask-size:22px 22px}.toolbar .toolbar-menu .icon+span{display:none}.toolbar .toolbar-parent-menu:after{right:0;top:1px}.toolbar .toolbar-sub-menu{min-width:32px}.toolbar.toolbar--collapsed{bottom:6px}}@media screen and (max-width:480px){.toolbar{bottom:10px;max-width:calc(100vw - 16px);padding:3px 6px}.toolbar .toolbar-menu{height:30px;margin:0;width:30px}.toolbar .toolbar-menu .icon{font-size:20px;height:20px;width:20px}.toolbar .toolbar-menu .icon-zoom-to-extent{-webkit-mask-size:20px 20px;mask-size:20px 20px}.toolbar.toolbar--collapsed{bottom:4px}}";
|
|
245
|
+
styleInject(css_248z$3);
|
|
246
|
+
|
|
247
|
+
var ToolbarMenuType;(function(_0x28f19e){_0x28f19e[_0x28f19e['Button']=0x1]='Button',_0x28f19e[_0x28f19e['DropdownMenu']=0x2]='DropdownMenu',_0x28f19e[_0x28f19e['ToggleButton']=0x3]='ToggleButton';}(ToolbarMenuType||(ToolbarMenuType={})));var ToolbarMenuId;(function(_0x912ac6){_0x912ac6['HomeView']='HomeView',_0x912ac6['OrthoMode']='OrthoMode',_0x912ac6['Measure']='Measure',_0x912ac6['MeasureDistance']='MeasureDistance',_0x912ac6['MeasureArea']='MeasureArea',_0x912ac6['MeasureAngle']='MeasureAngle',_0x912ac6['MeasureCoordinate']='MeasureCoordinate',_0x912ac6['MeasureClear']='MeasureClear',_0x912ac6['Section']='Section',_0x912ac6['SectionBox']='SectionBox',_0x912ac6['SectionPlane']='SectionPlane',_0x912ac6['SectionAxis']='SectionAxis',_0x912ac6['TreeView']='Tree\x20View',_0x912ac6['Viewpoint']='Viewpoint',_0x912ac6['Annotation']='Annotation',_0x912ac6['Property']='Property',_0x912ac6['Settings']='Settings',_0x912ac6['Compared']='Compared',_0x912ac6['QuitCompare']='QuitCompare',_0x912ac6['Fullscreen']='FullScreen',_0x912ac6['SceneClear']='SceneClear',_0x912ac6['Layers']='Layers',_0x912ac6['ZoomToRectangle']='ZoomToRectangle',_0x912ac6['ZoomToExtent']='ZoomToExtent',_0x912ac6['Screenshot']='GetScreenshot';}(ToolbarMenuId||(ToolbarMenuId={})));const GroupConfig=[[ToolbarMenuId['HomeView'],ToolbarMenuId['OrthoMode'],ToolbarMenuId['Fullscreen'],ToolbarMenuId['ZoomToRectangle'],ToolbarMenuId['ZoomToExtent'],ToolbarMenuId['Screenshot']],[ToolbarMenuId['Measure'],ToolbarMenuId['Section']],[ToolbarMenuId['TreeView'],ToolbarMenuId['Viewpoint'],ToolbarMenuId['Annotation'],ToolbarMenuId['Property'],ToolbarMenuId['Compared'],ToolbarMenuId['QuitCompare'],ToolbarMenuId['Layers']],[ToolbarMenuId['Settings']]];
|
|
248
|
+
|
|
249
|
+
class AxisSectionPopPanel extends PopPanel{constructor(_0x383f5d){const _0x4ba5b7=t$b('axisSection');super('axis-section-pop-panel',_0x4ba5b7,_0x383f5d['widgetContainer']),this['axis']='x',this['isVisible']=!![],this['keydown']=_0x360b1a=>{_0x360b1a['code']==='Escape'&&this['destroy']();};const _0x17fb62=_0x383f5d['findPlugin'](SectionPlugin['DEFAULT_ID']);this['section']=_0x17fb62['getActiveSection'](),this['createGroupSelectLayout'](),this['addGroupSelectItems'](),this['createActiveSelectLayout'](),this['addActiveItems'](),window['addEventListener']('keydown',this['keydown']);}['destroy'](){super['destroy'](),window['removeEventListener']('keydown',this['keydown']);}['createGroupSelectLayout'](){const _0x2e2f46=document['createElement']('div');_0x2e2f46['classList']['add']('pop-panel-group-select'),this['body']['appendChild'](_0x2e2f46),this['groupSelectNode']=_0x2e2f46;}['addGroupSelectItems'](){const _0x5d78a9=(_0x54c2c3,_0xeb8198,_0x5e9ccb=![])=>{const _0x44f04e=document['createElement']('div');return _0x44f04e['classList']['add']('pop-panel-item'),_0x44f04e['setAttribute']('itemName',_0x54c2c3),_0x44f04e['append'](_0xeb8198),_0x5e9ccb&&_0x44f04e['classList']['add']('active'),this['groupSelectNode']&&this['groupSelectNode']['appendChild'](_0x44f04e),_0x44f04e;},_0x22c890=()=>{_0x1c6142['classList']['remove']('active'),_0x98f027['classList']['remove']('active'),_0x4ba382['classList']['remove']('active');},_0x1718e7=(_0x502c4e,_0x129855)=>{return _0x39772e=>{_0x39772e['stopPropagation']();if(this['activeItem']===_0x502c4e)return;_0x22c890(),this['activeItem']=_0x502c4e,_0x129855['classList']['add']('active'),this['section']['setActiveAxis'](_0x502c4e);};},_0x1c6142=_0x5d78a9(AxisType['X'],'X',!![]);_0x1c6142['onclick']=_0x1718e7(AxisType['X'],_0x1c6142);const _0x98f027=_0x5d78a9(AxisType['Y'],'Y');_0x98f027['onclick']=_0x1718e7(AxisType['Y'],_0x98f027);const _0x4ba382=_0x5d78a9(AxisType['Z'],'Z');_0x4ba382['onclick']=_0x1718e7(AxisType['Z'],_0x4ba382);}['createActiveSelectLayout'](){const _0x270fa6=document['createElement']('div');_0x270fa6['classList']['add']('pop-panel-active-select'),this['body']['appendChild'](_0x270fa6),this['activeSelectNode']=_0x270fa6;}['addActiveItems'](){const _0x2c031d=(_0x4a8f2,_0x4a2832)=>{const _0x9c15b7=document['createElement']('i');_0x9c15b7['classList']['add'](IconfontClass2),_0x9c15b7['classList']['add'](_0x4a2832),_0x4a8f2['innerHTML']='',_0x4a8f2['appendChild'](_0x9c15b7);},_0x57356b=(_0x841225,_0x5753b6,_0x4b5a19='')=>{const _0x3f8350=document['createElement']('div');return _0x3f8350['classList']['add']('pop-panel-item'),_0x5753b6&&_0x3f8350['setAttribute']('title',_0x5753b6),_0x3f8350['setAttribute']('itemName',_0x841225),_0x3f8350['setAttribute']('isActive','false'),_0x2c031d(_0x3f8350,_0x4b5a19),_0x3f8350;},_0x55365a=t$b('hideSectionPlane'),_0x37682c=t$b('showSectionPlane'),_0x58c722=_0x57356b('visible',_0x55365a,'icon-hidesectionplane');_0x58c722['onclick']=()=>{this['isVisible']=!this['isVisible'],this['isVisible']?(_0x2c031d(_0x58c722,'icon-hidesectionplane'),_0x58c722['setAttribute']('title',_0x55365a)):(_0x2c031d(_0x58c722,'icon-showsectionplane'),_0x58c722['setAttribute']('title',_0x37682c)),this['section']['setSectionPlaneVisible'](this['isVisible']);},this['activeSelectNode']&&this['activeSelectNode']['appendChild'](_0x58c722);}}
|
|
250
|
+
|
|
251
|
+
class PickSectionPopPanel extends PopPanel{constructor(_0x58ed44){super('pick-section-pop-panel',t$b('pickPlaneSection'),_0x58ed44['widgetContainer']),this['isVisible']=!![],this['enabled']=!![],this['keydown']=_0x3ee985=>{_0x3ee985['code']==='Escape'&&this['destroy']();};const _0x380d98=_0x58ed44['findPlugin'](SectionPlugin['DEFAULT_ID']);this['section']=_0x380d98['getActiveSection'](),this['createActiveSelectLayout'](),this['addActiveItems'](),window['addEventListener']('keydown',this['keydown']);}['destroy'](){super['destroy'](),window['removeEventListener']('keydown',this['keydown']);}['createActiveSelectLayout'](){const _0xf66be8=document['createElement']('div');_0xf66be8['classList']['add']('pop-panel-active-select'),this['body']['appendChild'](_0xf66be8),this['activeSelectNode']=_0xf66be8;}['addActiveItems'](){const _0x328b8f=(_0x1a2500,_0x24ea3f)=>{const _0x28ba52=document['createElement']('i');_0x28ba52['classList']['add'](IconfontClass2),_0x28ba52['classList']['add'](_0x24ea3f),_0x1a2500['innerHTML']='',_0x1a2500['appendChild'](_0x28ba52);},_0x560b61=(_0x4eff30,_0x39259c,_0xf43883='')=>{const _0x19ee38=document['createElement']('div');return _0x19ee38['classList']['add']('pop-panel-item'),_0x39259c&&_0x19ee38['setAttribute']('title',_0x39259c),_0x19ee38['setAttribute']('itemName',_0x4eff30),_0x19ee38['setAttribute']('isActive','false'),_0x328b8f(_0x19ee38,_0xf43883),_0x19ee38;},_0x313a41=t$b('hideSectionPlane'),_0x20abfc=t$b('showSectionPlane'),_0x153b94=t$b('reset'),_0x4c54d3=_0x560b61('visible',_0x313a41,'icon-hidesectionplane');_0x4c54d3['onclick']=()=>{if(!this['enabled'])return;this['isVisible']=!this['isVisible'],this['isVisible']?(_0x328b8f(_0x4c54d3,'icon-hidesectionplane'),_0x4c54d3['setAttribute']('title',_0x313a41)):(_0x328b8f(_0x4c54d3,'icon-showsectionplane'),_0x4c54d3['setAttribute']('title',_0x20abfc)),this['section']['setSectionPlaneVisible'](this['isVisible']);};this['activeSelectNode']&&this['activeSelectNode']['appendChild'](_0x4c54d3);this['visibleNode']=_0x4c54d3;const _0x56df32=_0x560b61('reset',_0x153b94,'icon-reset');_0x56df32['onclick']=_0x503a73=>{_0x503a73['stopPropagation']();if(!this['enabled'])return;this['isVisible']=!![],_0x328b8f(_0x4c54d3,'icon-hidesectionplane'),_0x4c54d3['setAttribute']('title',_0x313a41),this['section']['reset']();},this['activeSelectNode']&&this['activeSelectNode']['appendChild'](_0x56df32),this['resetNode']=_0x56df32;}['enable'](){this['enabled']=!![],this['visibleNode']&&this['visibleNode']['classList']['remove']('disable');}['disable'](){this['enabled']=![],this['visibleNode']&&this['visibleNode']['classList']['add']('disable');}}
|
|
252
|
+
|
|
253
|
+
var css_248z$2 = ".tree-view.base-panel--embedded{border-right:1px solid rgba(0,0,0,.08);box-shadow:4px 0 20px rgba(0,0,0,.055);box-sizing:border-box;min-height:0;position:relative;z-index:2}.tree-view.base-panel--embedded .header{display:none!important}.tree-view .content{background:linear-gradient(180deg,hsla(0,0%,100%,.72),hsla(0,0%,100%,.92));display:flex;flex-direction:column;height:100%;padding:6px}.tree-view .content .tree-title-bar{align-items:flex-end;border-bottom:1px solid rgba(0,0,0,.078);display:flex;margin:0 2px 8px;padding:0 0 6px}.tree-view .content .tree-title-bar__label{align-items:center;background:hsla(0,0%,100%,.851);border-radius:6px 6px 0 0;box-shadow:inset 0 -2px 0 #2c7be5;color:rgba(0,0,0,.871);display:inline-flex;font-size:12px;font-weight:600;min-height:30px;padding:4px 10px}.tree-view .content .tree-search{flex-shrink:0;margin:0 2px 8px;padding:0}.tree-view .content .tree-search__input{background:hsla(0,0%,100%,.95);border:1px solid rgba(0,0,0,.12);border-radius:6px;box-sizing:border-box;color:rgba(0,0,0,.871);font-size:12px;height:28px;outline:none;padding:4px 8px;width:100%}.tree-view .content .tree-search__input::placeholder{color:rgba(0,0,0,.38)}.tree-view .content .tree-search__input:focus{border-color:rgba(44,123,229,.55);box-shadow:0 0 0 2px rgba(44,123,229,.12)}.tree-view .content .tree-body{flex:1;min-height:0;overflow:auto;position:relative}.tree-view .content .tree-node{border-top:1px solid hsla(0,0%,100%,.533)}.tree-view .content .tree-node.tree-node--search-hide{display:none!important}.tree-view .content .tree-node .tree-node-item{text-wrap-mode:nowrap;display:flex;height:24px;line-height:24px}.tree-view .content .tree-node .tree-node-item:hover{background:rgba(44,123,229,.06)}.tree-view .content .tree-node .tree-node-item.selected{background:rgba(44,123,229,.13);box-shadow:inset 2px 0 0 #2c7be5}.tree-view .content .tree-node .tree-node-item.selected:hover{background:rgba(44,123,229,.18)}.tree-view .content .tree-node .tree-node-item .expander{align-items:center;align-self:stretch;cursor:pointer;display:inline-flex;flex-shrink:0;height:22px;justify-content:center;transform:rotate(0deg);-webkit-transform:rotate(0deg);transition:transform .25s ease;-moz-transition:transform .25s ease;-webkit-transition:transform .25s ease;width:22px}.tree-view .content .tree-node .tree-node-item .expander:before{content:\">\";cursor:pointer;font-family:cursive;font-size:16px;opacity:.6;vertical-align:middle}.tree-view .content .tree-node .tree-node-item .expander:hover:before{opacity:1}.tree-view .content .tree-node .tree-node-item .expander-expanded{transform:rotate(90deg);-webkit-transform:rotate(90deg)}.tree-view .content .tree-node .tree-node-item .visibility-checkbox{margin:0 3px}.tree-view .content .tree-node .tree-node-item .node-name{text-wrap-mode:nowrap;cursor:pointer;flex:content;min-width:20px;overflow:hidden;padding-left:1px;text-overflow:ellipsis;white-space:nowrap}.tree-view .content .tree-node .tree-node-item .node-name-unnamed{color:rgba(0,0,0,.333);font-style:italic}.tree-view .content .tree-node .tree-node-item .node-name-input{background:hsla(0,0%,100%,.98);border:1px solid rgba(44,123,229,.55);border-radius:4px;box-sizing:border-box;color:rgba(0,0,0,.871);flex:1;font-size:12px;height:22px;line-height:20px;margin:1px 0;min-width:48px;outline:none;padding:0 5px}.tree-view .content .tree-node .tree-node-item .node-name-input:focus{border-color:rgba(44,123,229,.75);box-shadow:0 0 0 2px rgba(44,123,229,.12)}.tree-view .content .tree-node .tree-node-item .node-type{align-items:center;box-sizing:border-box;color:#000;display:inline-flex;flex-shrink:0;height:14px;justify-content:center;margin-top:5px;opacity:.6;width:14px}.tree-view .content .tree-node .tree-node-item .node-type:hover{opacity:1}.tree-view .content .tree-node .tree-node-item .node-type svg{display:block;height:100%;width:100%}.tree-view .content .tree-node .tree-node-item .child-count{color:#000;font-size:12px;opacity:.6}.tree-view .content .tree-node .tree-node-item .child-count:hover{opacity:1}.tree-view .content .tree-node .tree-node-item .ellipse-btn{color:#000;cursor:pointer;opacity:.6;padding:0 6px}.tree-view .content .tree-node .tree-node-item .ellipse-btn:hover{opacity:1}.tree-view .content .tree-node .tree-node-item .visibility{cursor:pointer;opacity:.6}.tree-view .content .tree-node .tree-node-item .visibility:hover{opacity:.9}.tree-view .content .tree-node .tree-node-item .hidden{opacity:.3}.tree-view .content .tree-node .tree-node-item.tree-drag-source{opacity:.45}.tree-view .content .tree-node .tree-node-item.tree-drop-target[data-drop-position=inside]{background:rgba(44,123,229,.12);box-shadow:inset 0 0 0 1px rgba(44,123,229,.45)}.tree-view .content.tree-view--scene-editable .tree-node-item .node-name,.tree-view .content.tree-view--scene-editable .tree-node-item .node-type{cursor:grab}.tree-view .content.tree-view--dragging,.tree-view .content.tree-view--dragging .tree-node-item{cursor:grabbing}.tree-view .content .tree-drop-indicator{background:#2c7be5;border-radius:1px;box-shadow:0 0 0 1px rgba(44,123,229,.25);height:2px;left:4px;margin:0;pointer-events:none;position:absolute;right:4px;z-index:3}.tree-pop-menu{background:hsla(0,0%,100%,.98);border:1px solid rgba(0,0,0,.1);border-radius:4px;box-shadow:0 4px 16px rgba(0,0,0,.12);color:rgba(51,51,51,.9);font-size:12px;line-height:1.35;min-width:136px;padding:3px;pointer-events:auto;position:fixed;user-select:none;z-index:99}.tree-pop-menu .item{border-radius:4px;cursor:pointer;margin:1px 4px;padding:6px 12px;transition:background-color .12s ease,color .12s ease}.tree-pop-menu .item:hover{background-color:rgba(44,123,229,.1);color:#2c7be5}.tree-pop-menu .item:active{background-color:rgba(44,123,229,.16)}.tree-pop-menu .last-item-in-section{border-bottom:1px solid rgba(0,0,0,.08);margin-bottom:4px;padding-bottom:8px}";
|
|
254
|
+
styleInject(css_248z$2);
|
|
255
|
+
|
|
256
|
+
const en$3={'treeView':'Tree\x20View','treeSearchPlaceholder':'Search','nothingLoaded':'Nothing\x20loaded','focus':'Focus','select':'Select','deselect':'Deselect','hide':'Hide','show':'Show','delete':'Delete','export':'Export'};const zh$3={'treeView':'模型树','treeSearchPlaceholder':'搜索','nothingLoaded':'未加载模型','focus':'聚焦','select':'选择','deselect':'取消选择','hide':'隐藏','show':'显示','delete':'删除','export':'导出'};const TREE_VIEW_I18N_NAMESPACE='treeView';registerViewerI18nNamespace(TREE_VIEW_I18N_NAMESPACE,{'en':en$3,'zh':zh$3});function t$3(_0x58e9d8){return i18n['t'](_0x58e9d8,{'ns':TREE_VIEW_I18N_NAMESPACE});}
|
|
257
|
+
|
|
258
|
+
const TREE_NODE_TYPE_ICONS={'group':'<path\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22\x20d=\x22M4\x207h16M4\x2012h14M4\x2017h16\x22/>','scene':'<g\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><rect\x20x=\x223\x22\x20y=\x225\x22\x20width=\x2218\x22\x20height=\x2212\x22\x20rx=\x222\x22/><path\x20d=\x22M9\x2021h6\x22/></g>','mesh':'<g\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M21\x2016V8a2\x202\x200\x2000-1-1.73l-7-4a2\x202\x200\x2000-2\x200l-7\x204A2\x202\x200\x20003\x208v8a2\x202\x200\x20001\x201.73l7\x204a2\x202\x200\x20002\x200l7-4A2\x202\x200\x200021\x2016z\x22/><path\x20d=\x22M3.27\x206.96L12\x2012.01l8.73-5.05\x22/><path\x20d=\x22M12\x2022.08V12\x22/></g>','line':'<path\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22\x20d=\x22M5\x2017\x20L12\x207\x20L19\x209\x22/>','points':'<circle\x20cx=\x228\x22\x20cy=\x229\x22\x20r=\x221.75\x22\x20fill=\x22currentColor\x22/><circle\x20cx=\x2215\x22\x20cy=\x228\x22\x20r=\x221.75\x22\x20fill=\x22currentColor\x22/><circle\x20cx=\x2217\x22\x20cy=\x2214\x22\x20r=\x221.75\x22\x20fill=\x22currentColor\x22/><circle\x20cx=\x2212\x22\x20cy=\x2217\x22\x20r=\x221.75\x22\x20fill=\x22currentColor\x22/><circle\x20cx=\x227\x22\x20cy=\x2214\x22\x20r=\x221.75\x22\x20fill=\x22currentColor\x22/>','sprite':'<g\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><rect\x20x=\x224\x22\x20y=\x224\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20rx=\x222\x22/><circle\x20cx=\x229\x22\x20cy=\x229\x22\x20r=\x221.5\x22\x20fill=\x22currentColor\x22\x20stroke=\x22none\x22/><path\x20d=\x22M4\x2016l4-4\x203\x203\x205-5\x204\x204\x22/></g>','light':'<g\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22><circle\x20cx=\x2212\x22\x20cy=\x2212\x22\x20r=\x224\x22/><path\x20d=\x22M12\x202v2M12\x2020v2M2\x2012h2M20\x2012h2M5\x205l1.5\x201.5M17.5\x2017.5\x2019\x2019M5\x2019l1.5-1.5M17.5\x206.5\x2019\x205\x22/></g>','camera':'<g\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linejoin=\x22round\x22><path\x20d=\x22M14.5\x204h-5L7\x207H4a2\x202\x200\x2000-2\x202v9a2\x202\x200\x20002\x202h16a2\x202\x200\x20002-2V9a2\x202\x200\x2000-2-2h-3l-2.5-3z\x22/><circle\x20cx=\x2212\x22\x20cy=\x2213\x22\x20r=\x223.5\x22/></g>','object3d':'<g\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22><circle\x20cx=\x2212\x22\x20cy=\x2212\x22\x20r=\x227\x22/><circle\x20cx=\x2212\x22\x20cy=\x2212\x22\x20r=\x221.5\x22\x20fill=\x22currentColor\x22\x20stroke=\x22none\x22/></g>','unknown':'<g\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22><circle\x20cx=\x2212\x22\x20cy=\x2212\x22\x20r=\x229\x22/><path\x20d=\x22M9.09\x209a3\x203\x200\x200\x201\x205.83\x201c0\x202-3\x203-3\x203\x22/><circle\x20cx=\x2212\x22\x20cy=\x2217\x22\x20r=\x221\x22\x20fill=\x22currentColor\x22\x20stroke=\x22none\x22/></g>'};function iconSvgInner(_0x5184fd){return TREE_NODE_TYPE_ICONS[_0x5184fd];}function getTreeNodeVisualKind(_0x168e43){if(_0x168e43 instanceof THREE['Group'])return 'group';if(_0x168e43 instanceof THREE['Scene'])return 'scene';if(_0x168e43 instanceof THREE['Mesh'])return 'mesh';if(_0x168e43 instanceof THREE['Line'])return 'line';if(_0x168e43 instanceof THREE['Points'])return 'points';if(_0x168e43 instanceof THREE['Sprite'])return 'sprite';if(_0x168e43 instanceof THREE['Light'])return 'light';if(_0x168e43 instanceof THREE['Camera'])return 'camera';if(_0x168e43 instanceof THREE['Object3D'])return 'object3d';return 'unknown';}function getTreeNodeTypeIconMarkup(_0xc7b11b){return '<svg\x20xmlns=\x22http://www.w3.org/2000/svg\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20focusable=\x22false\x22>'+iconSvgInner(_0xc7b11b)+'</svg>';}
|
|
259
|
+
|
|
260
|
+
const DRAG_THRESHOLD_PX=0x5;function attachTreeViewDragDrop(_0x277452,_0x534392){let _0x137546,_0x182b68,_0x229a60=null,_0x43b165=null,_0x2da2fc=null;const _0x5cb4ad=()=>{_0x277452['querySelectorAll']('.tree-node-item.tree-drop-target')['forEach'](_0x19bcaf=>{_0x19bcaf['classList']['remove']('tree-drop-target'),_0x19bcaf['removeAttribute']('data-drop-position');}),_0x229a60=null,_0x43b165=null,_0x2da2fc===null||_0x2da2fc===void 0x0?void 0x0:_0x2da2fc['remove'](),_0x2da2fc=null;},_0x1d9e12=()=>{_0x137546=undefined,_0x182b68=undefined,_0x277452['classList']['remove']('tree-view--dragging'),_0x277452['querySelectorAll']('.tree-node-item.tree-drag-source')['forEach'](_0x19c09d=>{_0x19c09d['classList']['remove']('tree-drag-source');}),_0x5cb4ad(),document['body']['style']['removeProperty']('user-select'),document['removeEventListener']('pointermove',_0x22ce18),document['removeEventListener']('pointerup',_0x520136),document['removeEventListener']('pointercancel',_0x520136);},_0x4bd9d5=(_0x570be0,_0x243346)=>{const _0x55f21d=_0x570be0['getBoundingClientRect'](),_0x319f69=_0x243346-_0x55f21d['top'],_0x474b90=_0x319f69/Math['max'](_0x55f21d['height'],0x1);if(_0x474b90<0.25)return 'before';if(_0x474b90>0.75)return 'after';return 'inside';},_0x3fb3e6=(_0x4bf0f1,_0x19a8d0)=>{if(_0x229a60===_0x4bf0f1&&_0x43b165===_0x19a8d0&&(_0x19a8d0==='inside'||_0x2da2fc))return;_0x5cb4ad(),_0x229a60=_0x4bf0f1,_0x43b165=_0x19a8d0;const _0x186623=_0x4bf0f1['querySelector']('.tree-node-item');if(!_0x186623)return;_0x186623['classList']['add']('tree-drop-target'),_0x186623['dataset']['dropPosition']=_0x19a8d0;if(_0x19a8d0==='inside')return;_0x2da2fc=document['createElement']('div'),_0x2da2fc['className']='tree-drop-indicator';const _0x239c8e=_0x186623['getBoundingClientRect'](),_0xbf0a05=_0x277452['querySelector']('.tree-body'),_0x526c64=_0xbf0a05!==null&&_0xbf0a05!==void 0x0?_0xbf0a05:_0x277452,_0x35cf59=_0x526c64['getBoundingClientRect']();_0x2da2fc['style']['top']=_0x19a8d0==='before'?_0x239c8e['top']-_0x35cf59['top']+_0x526c64['scrollTop']+'px':_0x239c8e['bottom']-_0x35cf59['top']+_0x526c64['scrollTop']+'px',_0x526c64['appendChild'](_0x2da2fc);},_0x4f903c=(_0x2eb40c,_0x19d025,_0x41be07)=>{if(_0x2eb40c===_0x19d025)return null;if(isObjectDescendantOf(_0x2eb40c,_0x19d025))return null;if(_0x534392['isModelNode'](_0x2eb40c)||_0x534392['isModelNode'](_0x19d025))return null;if(_0x41be07==='inside')return {'newParent':_0x19d025,'targetIndex':_0x19d025['children']['length']};const _0x2b4620=_0x19d025['parent'];if(!_0x2b4620)return null;const _0x596711=_0x2b4620['children']['indexOf'](_0x19d025);if(_0x596711<0x0)return null;return {'newParent':_0x2b4620,'targetIndex':_0x41be07==='before'?_0x596711:_0x596711+0x1};},_0x4c4515=(_0x5d6bab,_0x38cfeb)=>{if(!_0x182b68)return;const _0x2d6798=_0x534392['findObjectByUuid'](_0x182b68['sourceUuid']);if(!_0x2d6798){_0x5cb4ad();return;}const _0x42820e=document['elementFromPoint'](_0x5d6bab,_0x38cfeb),_0x4c99ca=_0x42820e===null||_0x42820e===void 0x0?void 0x0:_0x42820e['closest']('.tree-node');if(!_0x4c99ca||!_0x277452['contains'](_0x4c99ca)){_0x5cb4ad();return;}const _0x9e03bc=_0x4c99ca['dataset']['uuid'];if(!_0x9e03bc||_0x9e03bc===_0x182b68['sourceUuid']){_0x5cb4ad();return;}const _0x1a88a4=_0x534392['findObjectByUuid'](_0x9e03bc);if(!_0x1a88a4){_0x5cb4ad();return;}const _0x42bb37=_0x4c99ca['querySelector']('.tree-node-item');if(!_0x42bb37){_0x5cb4ad();return;}const _0x449ba6=_0x4bd9d5(_0x42bb37,_0x38cfeb),_0x3969cc=_0x4f903c(_0x2d6798,_0x1a88a4,_0x449ba6);if(!_0x3969cc){_0x5cb4ad();return;}_0x3fb3e6(_0x4c99ca,_0x449ba6);},_0x22ce18=_0x5110a4=>{if(_0x137546&&!_0x182b68){const _0x287f34=_0x5110a4['clientX']-_0x137546['startX'],_0x851312=_0x5110a4['clientY']-_0x137546['startY'];if(Math['hypot'](_0x287f34,_0x851312)<DRAG_THRESHOLD_PX)return;if(!_0x534392['canEdit']()){_0x137546=undefined;return;}_0x182b68={'sourceUuid':_0x137546['sourceUuid']},_0x137546=undefined,_0x277452['classList']['add']('tree-view--dragging'),document['body']['style']['userSelect']='none';const _0x4a7ce8=_0x277452['querySelector']('.tree-node[data-uuid=\x22'+_0x182b68['sourceUuid']+'\x22]\x20.tree-node-item');_0x4a7ce8===null||_0x4a7ce8===void 0x0?void 0x0:_0x4a7ce8['classList']['add']('tree-drag-source');}_0x182b68&&(_0x5110a4['preventDefault'](),_0x4c4515(_0x5110a4['clientX'],_0x5110a4['clientY']));},_0x520136=()=>{var _0x13fc01;const _0x277ad0=!!_0x182b68;if(_0x182b68&&_0x229a60&&_0x43b165){const _0x4238d6=_0x534392['findObjectByUuid'](_0x182b68['sourceUuid']),_0x252e20=_0x229a60['dataset']['uuid'],_0xb7f9c0=_0x252e20?_0x534392['findObjectByUuid'](_0x252e20):undefined;if(_0x4238d6&&_0xb7f9c0){const _0x5631e2=_0x4f903c(_0x4238d6,_0xb7f9c0,_0x43b165);_0x5631e2&&_0x534392['onReparent'](_0x4238d6,_0x5631e2['newParent'],_0x5631e2['targetIndex']);}}_0x1d9e12(),_0x277ad0&&((_0x13fc01=_0x534392['onDragEnded'])===null||_0x13fc01===void 0x0?void 0x0:_0x13fc01['call'](_0x534392,!![]));},_0x164feb=_0x4619f8=>{if(_0x4619f8['closest']('.expander')||_0x4619f8['closest']('.visibility-checkbox')||_0x4619f8['closest']('.ellipse-btn')||_0x4619f8['closest']('.node-name-input')||_0x4619f8['closest']('.tree-search'))return ![];return !!_0x4619f8['closest']('.tree-node-item');},_0x493f06=_0x9316c6=>{if(_0x9316c6['button']!==0x0||!_0x534392['canEdit']())return;const _0x362edc=_0x9316c6['target'];if(!_0x164feb(_0x362edc))return;const _0x30c22b=_0x362edc['closest']('.tree-node'),_0x587dcd=_0x30c22b===null||_0x30c22b===void 0x0?void 0x0:_0x30c22b['dataset']['uuid'];if(!_0x587dcd)return;const _0x43e23b=_0x534392['findObjectByUuid'](_0x587dcd);if(!_0x43e23b||_0x534392['isModelNode'](_0x43e23b)||!_0x43e23b['parent'])return;_0x137546={'sourceUuid':_0x587dcd,'startX':_0x9316c6['clientX'],'startY':_0x9316c6['clientY']},document['addEventListener']('pointermove',_0x22ce18),document['addEventListener']('pointerup',_0x520136),document['addEventListener']('pointercancel',_0x520136);};return _0x277452['addEventListener']('pointerdown',_0x493f06),_0x534392['canEdit']()&&_0x277452['classList']['add']('tree-view--scene-editable'),{'destroy':()=>{_0x1d9e12(),_0x277452['classList']['remove']('tree-view--scene-editable'),_0x277452['removeEventListener']('pointerdown',_0x493f06);}};}
|
|
261
|
+
|
|
262
|
+
class TreeViewPlugin extends Plugin{constructor(_0x55cb84,_0x4c53b3){const _0x1f8615=(_0x4c53b3===null||_0x4c53b3===void 0x0?void 0x0:_0x4c53b3['id'])||TreeViewPlugin['DEFAULT_ID'];super(_0x55cb84,{'id':_0x1f8615}),this['treeSearchQuery']='',this['treeSearchVisibleCache']=null,this['suppressTreeClickAfterDrag']=![],this['onLanguageChange']=()=>{this['applyLocalizedChrome']();},this['onModelLoadOrRemove']=()=>{var _0x17ea14;((_0x17ea14=this['basePanel'])===null||_0x17ea14===void 0x0?void 0x0:_0x17ea14['isVisible']())&&(this['updateContent'](),this['viewer']['enableRender']());},this['onObjectSelected']=_0x31d510=>{var _0x3bdba5;if(_0x31d510==this['lastHighlightedObject'])return;this['lastHighlightedObject']=_0x31d510,(_0x3bdba5=this['content'])===null||_0x3bdba5===void 0x0?void 0x0:_0x3bdba5['querySelectorAll']('.tree-node-item.selected')['forEach'](_0x263f53=>_0x263f53['classList']['remove']('selected')),this['highlightTreeNodeBySceneObject'](_0x31d510);},this['onObjectDeselected']=_0x6cae4d=>{var _0x344dde;if(this['lastHighlightedObject']!==_0x6cae4d)return;this['lastHighlightedObject']=undefined,(_0x344dde=this['content'])===null||_0x344dde===void 0x0?void 0x0:_0x344dde['querySelectorAll']('.tree-node-item.selected')['forEach'](_0x3756c1=>_0x3756c1['classList']['remove']('selected')),this['treeSearchQuery']['trim']()&&this['reapplySearchFilterToMountedTree']();},this['onSceneObjectRemoved']=_0x5a86dc=>{const _0x1e4c7d=this['viewer'];if(this['isModelNode'](_0x5a86dc))return;this['removeTreeDomForSceneObject'](_0x5a86dc),_0x1e4c7d['enableRender']();},this['onSceneObjectAdded']=_0x1b0bf6=>{const _0x358270=this['viewer'];if(this['isModelNode'](_0x1b0bf6))return;this['addTreeDomForSceneObject'](_0x1b0bf6),_0x358270['enableRender']();},this['onSceneNodeReparented']=_0x594b74=>{this['moveTreeDomForSceneObject'](_0x594b74),this['viewer']['enableRender']();},this['onTreeSearchInputClick']=_0x57dd3a=>{_0x57dd3a['stopPropagation']();},this['onTreeSearchKeydown']=_0x439be6=>{_0x439be6['stopPropagation']();},this['onTreeSearchInput']=()=>{this['treeSearchDebounceId']!==undefined&&clearTimeout(this['treeSearchDebounceId']),this['treeSearchDebounceId']=window['setTimeout'](()=>{var _0x297658,_0x15acb6;this['treeSearchDebounceId']=undefined,this['treeSearchQuery']=(_0x15acb6=(_0x297658=this['treeSearchInput'])===null||_0x297658===void 0x0?void 0x0:_0x297658['value'])!==null&&_0x15acb6!==void 0x0?_0x15acb6:'',this['refreshTreeSearchResults']();},0x96);},this['handleSingleClick']=_0x555548=>{_0x555548['stopPropagation'](),this['handleClick'](_0x555548);},this['handleDoubleClick']=_0x53a4a6=>{_0x53a4a6['stopPropagation'](),this['handleClick'](_0x53a4a6,!![]);},this['handleClick']=(_0x442756,_0xe5c1c=![])=>{var _0x404542,_0x254568;if(this['suppressTreeClickAfterDrag']){this['suppressTreeClickAfterDrag']=![];return;}const _0x330fc2=_0x442756['target'],_0x4df11a=_0x330fc2['closest']('.tree-node');if(!_0x4df11a)return;const _0x3a620a=_0x330fc2['closest']('.tree-node-item');if(!_0x3a620a)return;const _0x285e6f=_0x3a620a['querySelector']('.expander'),_0x58f2ca=_0x3a620a['querySelector']('.visibility-checkbox'),_0x55d9e4=_0x4df11a['querySelector']('.children');let _0x48f50d;const _0x59d073=_0x4df11a['dataset']['uuid'];_0x59d073&&(_0x48f50d=this['findObjectByUuid'](_0x59d073));if(!_0x48f50d)return;if(_0x330fc2===_0x285e6f){if(_0xe5c1c)return;_0x55d9e4['style']['display']==='none'?(this['ensureLazyChildrenBuilt'](_0x4df11a),_0x55d9e4['style']['display']='',_0x285e6f['classList']['add']('expander-expanded'),this['reapplySearchFilterToMountedTree']()):(_0x55d9e4['style']['display']='none',_0x285e6f['classList']['remove']('expander-expanded'));}else {if(_0x330fc2===_0x58f2ca){if(_0xe5c1c)return;_0x48f50d['visible']=_0x58f2ca['checked'];_0x55d9e4&&this['updateChildrenVisibility'](_0x55d9e4,_0x58f2ca['checked']);const _0x191d77=this['getClosestParentTreeNode'](_0x4df11a['parentElement']);this['updateParentVisibility'](_0x191d77,_0x58f2ca['checked']),this['viewer']['enableRender']();}else {if(_0x330fc2['classList']['contains']('ellipse-btn')){if(_0xe5c1c)return;this['showPopMenu'](_0x442756);}else {if(!_0xe5c1c){const _0x467005=_0x3a620a['classList']['contains']('selected');(_0x404542=this['content'])===null||_0x404542===void 0x0?void 0x0:_0x404542['querySelectorAll']('.tree-node-item.selected')['forEach'](_0x446311=>_0x446311['classList']['remove']('selected')),this['viewer']['clearHighlight'](),!_0x467005&&this['selectTreeNodeAndHighlightSceneObject'](_0x4df11a,_0x48f50d);}else {const _0x724086=_0x330fc2['closest']('.node-name');_0x724086&&_0x3a620a['contains'](_0x724086)?((_0x254568=this['content'])===null||_0x254568===void 0x0?void 0x0:_0x254568['querySelectorAll']('.tree-node-item.selected')['forEach'](_0x25c11c=>_0x25c11c['classList']['remove']('selected')),this['viewer']['clearHighlight'](),this['selectTreeNodeAndHighlightSceneObject'](_0x4df11a,_0x48f50d),this['beginNodeRename'](_0x48f50d,_0x724086)):(this['focusSceneObject'](_0x48f50d),this['selectTreeNodeAndHighlightSceneObject'](_0x4df11a,_0x48f50d));}this['treeSearchQuery']['trim']()&&this['reapplySearchFilterToMountedTree']();}}}},this['cfg']=_0x4c53b3||{'id':_0x1f8615},this['lastHighlightedObject']=undefined,this['cfg']['visible']!==![]&&this['updateContent'](),this['viewer']['addEventListener'](ViewerEvent['ModelLoad'],this['onModelLoadOrRemove']),this['viewer']['addEventListener'](ViewerEvent['ModelRemove'],this['onModelLoadOrRemove']),this['viewer']['addEventListener'](ViewerEvent['ObjectSelected'],this['onObjectSelected']),this['viewer']['addEventListener'](ViewerEvent['ObjectDeselected'],this['onObjectDeselected']),this['viewer']['addEventListener'](ViewerEvent['SceneObjectRemoved'],this['onSceneObjectRemoved']),this['viewer']['addEventListener'](ViewerEvent['SceneObjectAdded'],this['onSceneObjectAdded']),this['viewer']['addEventListener'](ViewerEvent['SceneNodeReparented'],this['onSceneNodeReparented']),this['viewer']['addEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']);}['applyLocalizedChrome'](){var _0x2de3dd,_0x333c05,_0x573c04;(_0x2de3dd=this['basePanel'])===null||_0x2de3dd===void 0x0?void 0x0:_0x2de3dd['setTitle'](t$3('treeView'));const _0x4311fb=(_0x333c05=this['content'])===null||_0x333c05===void 0x0?void 0x0:_0x333c05['querySelector']('.tree-title-bar__label');_0x4311fb&&(_0x4311fb['textContent']=t$3('treeView'));this['treeSearchInput']&&(this['treeSearchInput']['placeholder']=t$3('treeSearchPlaceholder'));const _0x250d83=(_0x573c04=this['content'])===null||_0x573c04===void 0x0?void 0x0:_0x573c04['querySelector']('.tree-body\x20.panel-empty');_0x250d83&&(_0x250d83['textContent']=t$3('nothingLoaded'));}['updateContent'](){var _0x36bfaf;const _0x1581b2=this['viewer'];this['cfg']['containerId']&&(this['container']=document['getElementById'](this['cfg']['containerId']));!this['container']&&(this['container']=_0x1581b2['widgetContainer']);if(!this['basePanel']){const _0x8f4292={'container':this['container'],'title':t$3('treeView'),'cssClass':'tree-view','onClose':()=>this['onClose']()};this['basePanel']=this['cfg']['containerId']?new DockPanel(Object['assign'](Object['assign']({},_0x8f4292),{'dock':'left','showCloseButton':![],'showCollapseButton':![]})):new BasePanel(Object['assign'](Object['assign']({},_0x8f4292),{'viewportContainer':this['viewer']['viewerContainer']})),this['content']=(_0x36bfaf=this['basePanel'])===null||_0x36bfaf===void 0x0?void 0x0:_0x36bfaf['content'];}this['addContent']();}['setVisible'](_0x3fd3b5){_0x3fd3b5&&this['updateContent'](),this['basePanel']&&(this['basePanel']['setVisible'](_0x3fd3b5),this['dispatchEvent']('visibilitychange',_0x3fd3b5));}['isVisible'](){var _0x3282b1;return !!((_0x3282b1=this['basePanel'])===null||_0x3282b1===void 0x0?void 0x0:_0x3282b1['isVisible']());}['onClose'](){this['dispatchEvent']('visibilitychange',![]);}['destroy'](){var _0x2fe8fb,_0x30d07a,_0x344650,_0x517d3f,_0x245384;super['destroy'](),this['viewer']['removeEventListener'](ViewerEvent['ModelLoad'],this['onModelLoadOrRemove']),this['viewer']['removeEventListener'](ViewerEvent['ModelRemove'],this['onModelLoadOrRemove']),this['viewer']['removeEventListener'](ViewerEvent['ObjectSelected'],this['onObjectSelected']),this['viewer']['removeEventListener'](ViewerEvent['ObjectDeselected'],this['onObjectDeselected']),this['viewer']['removeEventListener'](ViewerEvent['SceneObjectRemoved'],this['onSceneObjectRemoved']),this['viewer']['removeEventListener'](ViewerEvent['SceneObjectAdded'],this['onSceneObjectAdded']),this['viewer']['removeEventListener'](ViewerEvent['SceneNodeReparented'],this['onSceneNodeReparented']),this['viewer']['removeEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']),(_0x2fe8fb=this['treeDragDrop'])===null||_0x2fe8fb===void 0x0?void 0x0:_0x2fe8fb['destroy'](),this['treeDragDrop']=undefined,(_0x30d07a=this['finishActiveTreeRename'])===null||_0x30d07a===void 0x0?void 0x0:_0x30d07a['call'](this,!![]),this['finishActiveTreeRename']=undefined,(_0x344650=this['content'])===null||_0x344650===void 0x0?void 0x0:_0x344650['removeEventListener']('click',this['handleSingleClick']),(_0x517d3f=this['content'])===null||_0x517d3f===void 0x0?void 0x0:_0x517d3f['removeEventListener']('dblclick',this['handleDoubleClick']),this['detachTreeSearchInput'](),this['treeSearchDebounceId']!==undefined&&(clearTimeout(this['treeSearchDebounceId']),this['treeSearchDebounceId']=undefined),(_0x245384=this['basePanel'])===null||_0x245384===void 0x0?void 0x0:_0x245384['destroy'](),this['lastHighlightedObject']=undefined;}['addContent'](){var _0x403a7f,_0x4f62a7;if(!this['content'])return;this['content']['removeEventListener']('click',this['handleSingleClick']),this['content']['removeEventListener']('dblclick',this['handleDoubleClick']),this['detachTreeSearchInput']();this['treeSearchDebounceId']!==undefined&&(clearTimeout(this['treeSearchDebounceId']),this['treeSearchDebounceId']=undefined);(_0x403a7f=this['finishActiveTreeRename'])===null||_0x403a7f===void 0x0?void 0x0:_0x403a7f['call'](this,!![]),this['finishActiveTreeRename']=undefined,(_0x4f62a7=this['treeDragDrop'])===null||_0x4f62a7===void 0x0?void 0x0:_0x4f62a7['destroy'](),this['treeDragDrop']=undefined,this['content']['innerHTML']='';if(this['cfg']['containerId']){const _0x36e765=document['createElement']('div');_0x36e765['className']='tree-title-bar';const _0x5c6f24=document['createElement']('span');_0x5c6f24['className']='tree-title-bar__label',_0x5c6f24['textContent']=t$3('treeView'),_0x36e765['appendChild'](_0x5c6f24),this['content']['appendChild'](_0x36e765);}this['attachTreeSearchRow']();const _0x4c56cb=document['createElement']('div');_0x4c56cb['className']='tree-body',this['content']['appendChild'](_0x4c56cb);const _0x2a9339=this['viewer']['loadedModels']||[];if(_0x2a9339['length']===0x0){const _0x3962c2=document['createElement']('p');_0x3962c2['className']='panel-empty',_0x3962c2['textContent']=t$3('nothingLoaded'),_0x4c56cb['appendChild'](_0x3962c2);}else for(const _0x47f628 of _0x2a9339){const _0x5caa38=_0x47f628['rootObject'];for(const _0x82c621 of this['filteredSceneChildren'](_0x5caa38)){this['buildTreeForNodeRecursive'](_0x82c621,_0x4c56cb,0x0);}}this['refreshTreeSearchResults'](),this['content']['addEventListener']('click',this['handleSingleClick']),this['content']['addEventListener']('dblclick',this['handleDoubleClick']),this['attachTreeDragDrop']();}['attachTreeDragDrop'](){var _0x42f921;if(!this['content'])return;(_0x42f921=this['treeDragDrop'])===null||_0x42f921===void 0x0?void 0x0:_0x42f921['destroy'](),this['treeDragDrop']=attachTreeViewDragDrop(this['content'],{'canEdit':()=>this['viewer']['enableSceneEditing'],'findObjectByUuid':_0xba1777=>this['findObjectByUuid'](_0xba1777),'isModelNode':_0x556631=>this['isModelNode'](_0x556631),'onReparent':(_0x3bda92,_0xf49da2,_0x559d93)=>this['reparentTreeNode'](_0x3bda92,_0xf49da2,_0x559d93),'onDragEnded':_0x5710fa=>{_0x5710fa&&(this['suppressTreeClickAfterDrag']=!![]);}});}['reparentTreeNode'](_0x1863cc,_0x314641,_0x3a0ca7){const _0x305468=this['viewer'],_0x233591=_0x305468['findPlugin'](SceneEditPlugin['DEFAULT_ID']);if(_0x233591)return _0x233591['getSceneEditActions']()['reparentSceneNode'](_0x1863cc,_0x314641,_0x3a0ca7);return _0x305468['reparentSceneNode'](_0x1863cc,_0x314641,_0x3a0ca7);}['detachTreeSearchInput'](){if(!this['treeSearchInput'])return;this['treeSearchInput']['removeEventListener']('input',this['onTreeSearchInput']),this['treeSearchInput']['removeEventListener']('click',this['onTreeSearchInputClick']),this['treeSearchInput']['removeEventListener']('keydown',this['onTreeSearchKeydown']),this['treeSearchInput']=undefined;}['attachTreeSearchRow'](){if(!this['content'])return;const _0x62584d=document['createElement']('div');_0x62584d['className']='tree-search';const _0x56b576=document['createElement']('input');_0x56b576['type']='search',_0x56b576['className']='tree-search__input',_0x56b576['placeholder']=t$3('treeSearchPlaceholder'),_0x56b576['autocomplete']='off',_0x56b576['spellcheck']=![],_0x56b576['value']=this['treeSearchQuery'],_0x56b576['addEventListener']('input',this['onTreeSearchInput']),_0x56b576['addEventListener']('click',this['onTreeSearchInputClick']),_0x56b576['addEventListener']('keydown',this['onTreeSearchKeydown']),_0x62584d['appendChild'](_0x56b576),this['content']['appendChild'](_0x62584d),this['treeSearchInput']=_0x56b576;}['nodeDisplayNameForSearch'](_0x2d851c){var _0x2ec936;const _0x55c201=((_0x2ec936=_0x2d851c['name'])===null||_0x2ec936===void 0x0?void 0x0:_0x2ec936['trim']())||'';return _0x55c201||'<Unnamed>';}['syncTreeNodeNameLabel'](_0x28b420,_0x5442e2){var _0x36ca1d;const _0x48d49b=((_0x36ca1d=_0x5442e2['name'])===null||_0x36ca1d===void 0x0?void 0x0:_0x36ca1d['trim']())||'',_0x347625=_0x48d49b||'<Unnamed>';_0x28b420['textContent']=_0x347625,_0x28b420['classList']['toggle']('node-name-unnamed',!_0x48d49b),_0x28b420['title']=_0x347625;}['collectSearchMatchingUuids'](_0x5a9b81,_0xbc785a,_0x3fded7){for(const _0x25a401 of this['filteredSceneChildren'](_0x5a9b81)){this['collectSearchMatchingUuids'](_0x25a401,_0xbc785a,_0x3fded7);}this['nodeDisplayNameForSearch'](_0x5a9b81)['toLowerCase']()['includes'](_0xbc785a)&&_0x3fded7['add'](_0x5a9b81['uuid']);}['computeSearchVisibleUuids'](_0x39fae9){const _0x156909=_0x39fae9['trim']()['toLowerCase']();if(!_0x156909)return null;const _0x54efa9=new Set(),_0x390b4a=this['viewer']['loadedModels']||[];for(const _0x1afede of _0x390b4a){this['collectSearchMatchingUuids'](_0x1afede['rootObject'],_0x156909,_0x54efa9);}const _0x534c03=new Set();for(const _0x15b1f2 of _0x54efa9){let _0x3cb0a8=this['findObjectByUuid'](_0x15b1f2);while(_0x3cb0a8){_0x534c03['add'](_0x3cb0a8['uuid']),_0x3cb0a8=_0x3cb0a8['parent'];}}return _0x534c03;}['getDepthFromModelRoot'](_0x2f9a41){const _0x501299=this['getTreePathObjectsFromRoot'](_0x2f9a41);return _0x501299?_0x501299['length']-0x1:0x0;}['expandDomForSearchVisibleSet'](_0x5d3450){if(!this['content'])return;const _0x1b194c=[];for(const _0x27ebac of _0x5d3450){const _0x10acb5=this['findObjectByUuid'](_0x27ebac);_0x10acb5&&_0x1b194c['push'](_0x10acb5);}_0x1b194c['sort']((_0x53a4fb,_0x27db55)=>this['getDepthFromModelRoot'](_0x53a4fb)-this['getDepthFromModelRoot'](_0x27db55));for(const _0x1f5142 of _0x1b194c){const _0x2b1204=this['filteredSceneChildren'](_0x1f5142);if(!_0x2b1204['some'](_0x367e20=>_0x5d3450['has'](_0x367e20['uuid'])))continue;const _0x24820e=this['content']['querySelector']('.tree-node[data-uuid=\x22'+_0x1f5142['uuid']+'\x22]');if(!_0x24820e)continue;this['ensureLazyChildrenBuilt'](_0x24820e);const _0x30cf4d=_0x24820e['querySelector'](':scope\x20>\x20.children'),_0x4a3df8=_0x24820e['querySelector']('.tree-node-item\x20.expander');_0x30cf4d&&(_0x30cf4d['style']['display']='',_0x4a3df8===null||_0x4a3df8===void 0x0?void 0x0:_0x4a3df8['classList']['add']('expander-expanded'));}}['collectVisibleUuidsForSelectedTreeRows'](){const _0x2a4b45=new Set();if(!this['content'])return _0x2a4b45;return this['content']['querySelectorAll']('.tree-node-item.selected')['forEach'](_0x306790=>{var _0x1049ec,_0x12cab7;let _0x251f41=_0x306790['closest']('.tree-node');while(_0x251f41===null||_0x251f41===void 0x0?void 0x0:_0x251f41['classList']['contains']('tree-node')){const _0x971cf4=_0x251f41['dataset']['uuid'];_0x971cf4&&_0x2a4b45['add'](_0x971cf4),_0x251f41=(_0x12cab7=(_0x1049ec=_0x251f41['parentElement'])===null||_0x1049ec===void 0x0?void 0x0:_0x1049ec['closest']('.tree-node'))!==null&&_0x12cab7!==void 0x0?_0x12cab7:null;}}),_0x2a4b45;}['applySearchDomState'](_0x4a3d32){if(!this['content'])return;const _0x345a7c=this['content']['querySelector']('.tree-body');if(!_0x345a7c)return;const _0x1d0155=_0x4a3d32?this['collectVisibleUuidsForSelectedTreeRows']():new Set();_0x345a7c['querySelectorAll']('.tree-node')['forEach'](_0x2fc0ea=>{const _0x449dd4=_0x2fc0ea['dataset']['uuid'];if(!_0x4a3d32)_0x2fc0ea['classList']['remove']('tree-node--search-hide');else {const _0xa2b845=!!(_0x449dd4&&(_0x4a3d32['has'](_0x449dd4)||_0x1d0155['has'](_0x449dd4)));_0x2fc0ea['classList']['toggle']('tree-node--search-hide',!!_0x449dd4&&!_0xa2b845);}});}['refreshTreeSearchResults'](){const _0x5d8e6a=this['computeSearchVisibleUuids'](this['treeSearchQuery']);this['treeSearchVisibleCache']=_0x5d8e6a,_0x5d8e6a?(this['expandDomForSearchVisibleSet'](_0x5d8e6a),this['applySearchDomState'](_0x5d8e6a)):this['applySearchDomState'](null);}['reapplySearchFilterToMountedTree'](){this['treeSearchVisibleCache']=this['computeSearchVisibleUuids'](this['treeSearchQuery']),this['treeSearchVisibleCache']?this['applySearchDomState'](this['treeSearchVisibleCache']):this['applySearchDomState'](null);}['applySearchClassToNewTreeNode'](_0x527082){const _0x47af24=this['treeSearchVisibleCache'];if(!_0x47af24)return;const _0x10cd56=this['collectVisibleUuidsForSelectedTreeRows'](),_0x1ede88=_0x527082['dataset']['uuid'];_0x1ede88&&_0x527082['classList']['toggle']('tree-node--search-hide',!_0x47af24['has'](_0x1ede88)&&!_0x10cd56['has'](_0x1ede88));}['filteredSceneChildren'](_0x197964){const _0x2b3beb=[];for(const _0x393350 of _0x197964['children']){!_0x393350['name']['startsWith']('highlighUsage-')&&!_0x393350['name']['startsWith']('transparentUsage-')&&!_0x393350['userData']['isOutline']&&_0x2b3beb['push'](_0x393350);}return _0x2b3beb;}['sceneNodeUiCheckState'](_0x29fac7){const _0x46a3db=this['filteredSceneChildren'](_0x29fac7);if(_0x46a3db['length']===0x0)return _0x29fac7['visible']?'checked':'unchecked';const _0x18f66e=_0x46a3db['map'](_0x37385e=>this['sceneNodeUiCheckState'](_0x37385e)),_0x4c74fe=_0x18f66e['every'](_0x3e7aef=>_0x3e7aef==='checked'),_0x5345a0=_0x18f66e['every'](_0x1443c6=>_0x1443c6==='unchecked');if(_0x4c74fe&&_0x29fac7['visible'])return 'checked';if(_0x5345a0&&!_0x29fac7['visible'])return 'unchecked';return 'indeterminate';}['getTreePathObjectsFromRoot'](_0x2d94a3){const _0x469b70=this['viewer']['loadedModels']||[];for(const _0x2ce3e8 of _0x469b70){const _0x4aefe1=_0x2ce3e8['rootObject'];let _0x26dfb0=_0x2d94a3;const _0x5feb36=[];while(_0x26dfb0){_0x5feb36['push'](_0x26dfb0);if(_0x26dfb0===_0x4aefe1)break;_0x26dfb0=_0x26dfb0['parent'];}if(_0x26dfb0===_0x4aefe1)return _0x5feb36['reverse']();}return null;}['expandTreeDomPathToSceneObject'](_0x51f22f){const _0x5daf22=this['getTreePathObjectsFromRoot'](_0x51f22f);if(!_0x5daf22||!this['content'])return;for(let _0x39fe8b=0x0;_0x39fe8b<_0x5daf22['length']-0x1;_0x39fe8b++){const _0x1dd71c=_0x5daf22[_0x39fe8b],_0x2ea596=this['content']['querySelector']('.tree-node[data-uuid=\x22'+_0x1dd71c['uuid']+'\x22]');if(!_0x2ea596)continue;const _0x4469d8=_0x2ea596['querySelector'](':scope\x20>\x20.children');if(!_0x4469d8)continue;this['ensureLazyChildrenBuilt'](_0x2ea596);const _0x20daaa=_0x2ea596['querySelector']('.tree-node-item\x20.expander');_0x4469d8['style']['display']==='none'&&(_0x4469d8['style']['display']='',_0x20daaa===null||_0x20daaa===void 0x0?void 0x0:_0x20daaa['classList']['add']('expander-expanded'));}}['ensureLazyChildrenBuilt'](_0x56b9c8){const _0x190656=_0x56b9c8['querySelector'](':scope\x20>\x20.children');if(!_0x190656||_0x190656['dataset']['lazyChildren']!=='1')return;const _0x13a230=_0x56b9c8['dataset']['uuid'],_0xc4c0af=_0x56b9c8['dataset']['treeLevel'];if(!_0x13a230||_0xc4c0af===undefined)return;const _0x4d9257=this['findObjectByUuid'](_0x13a230);if(!_0x4d9257)return;const _0x5d4933=parseInt(_0xc4c0af,0xa),_0x3f9bfd=new Set(Array['from'](_0x190656['querySelectorAll'](':scope\x20>\x20.tree-node'))['map'](_0x100d7c=>_0x100d7c['dataset']['uuid'])['filter'](_0xfc15cb=>!!_0xfc15cb));for(const _0x5860f7 of this['filteredSceneChildren'](_0x4d9257)){!_0x3f9bfd['has'](_0x5860f7['uuid'])&&this['buildTreeForNodeRecursive'](_0x5860f7,_0x190656,_0x5d4933+0x1);}delete _0x190656['dataset']['lazyChildren'];}['applyVisibilityToDescendantsInTree'](_0x4c9a9f,_0x3890fe){for(const _0x58b6c4 of this['filteredSceneChildren'](_0x4c9a9f)){_0x58b6c4['visible']=_0x3890fe,this['applyVisibilityToDescendantsInTree'](_0x58b6c4,_0x3890fe);}}['syncDomSubtreeCheckboxesAndVisibility'](_0x3a90d3,_0x28d19a){const _0x32a5cc=_0x3a90d3['querySelectorAll']('.tree-node');_0x32a5cc['forEach'](_0x30eb23=>{const _0x42fbb3=_0x30eb23['querySelector']('.visibility-checkbox');_0x42fbb3&&(_0x42fbb3['checked']=_0x28d19a,_0x42fbb3['indeterminate']=![]);const _0x56dad8=_0x30eb23['dataset']['uuid'];if(_0x56dad8){const _0x3298a6=this['findObjectByUuid'](_0x56dad8);_0x3298a6&&(_0x3298a6['visible']=_0x28d19a);}const _0x4afdca=_0x30eb23['querySelector']('.children');_0x4afdca&&this['syncDomSubtreeCheckboxesAndVisibility'](_0x4afdca,_0x28d19a);});}['buildTreeForNodeRecursive'](_0x507018,_0x58f89c,_0x4ef152=0x0){const _0x21359f=document['createElement']('div');_0x21359f['classList']['add']('tree-node'),_0x21359f['dataset']['uuid']=_0x507018['uuid'],_0x21359f['dataset']['treeLevel']=String(_0x4ef152);const _0x109028=document['createElement']('div');_0x109028['classList']['add']('tree-node-item'),_0x21359f['appendChild'](_0x109028);const _0x168d15=document['createElement']('input');_0x168d15['type']='checkbox',_0x168d15['classList']['add']('visibility-checkbox'),_0x168d15['checked']=_0x507018['visible'],_0x168d15['indeterminate']=![];const _0x4fc801=document['createElement']('span'),_0xbf6777=getTreeNodeVisualKind(_0x507018);_0x4fc801['classList']['add']('node-type'),_0x4fc801['dataset']['kind']=_0xbf6777,_0x4fc801['innerHTML']=getTreeNodeTypeIconMarkup(_0xbf6777),_0x4fc801['title']=_0x507018['type'],_0x4fc801['setAttribute']('aria-hidden','true');const _0x2ab5be=document['createElement']('span');_0x2ab5be['classList']['add']('node-name'),this['syncTreeNodeNameLabel'](_0x2ab5be,_0x507018);const _0x1c2d10=this['filteredSceneChildren'](_0x507018),_0x327473=_0x1c2d10['length'];let _0x46671f=null;_0x327473>0x0&&(_0x46671f=document['createElement']('span'),_0x46671f['classList']['add']('child-count'));const _0x4e6213=document['createElement']('span');_0x4e6213['classList']['add']('ellipse-btn'),_0x4e6213['innerHTML']='⋮',_0x4e6213['title']='More\x20options';let _0x47db99=null;_0x327473>0x0&&(_0x47db99=document['createElement']('div'),_0x47db99['classList']['add']('children'),_0x47db99['style']['display']='none',_0x47db99['dataset']['lazyChildren']='1',_0x21359f['appendChild'](_0x47db99));_0x46671f&&(_0x46671f['innerHTML']='('+_0x327473+')');let _0x350ab7=null;_0x327473>0x0?(_0x350ab7=document['createElement']('span'),_0x350ab7['classList']['add']('expander'),_0x109028['appendChild'](_0x350ab7),_0x109028['style']['paddingLeft']=_0x4ef152*0x16+'px'):_0x109028['style']['paddingLeft']=_0x4ef152*0x16+0x16+'px',_0x109028['appendChild'](_0x168d15),_0x109028['appendChild'](_0x4fc801),_0x109028['appendChild'](_0x2ab5be),_0x46671f&&_0x109028['appendChild'](_0x46671f),_0x109028['appendChild'](_0x4e6213),_0x58f89c['appendChild'](_0x21359f),this['applySearchClassToNewTreeNode'](_0x21359f);}['selectTreeNodeAndHighlightSceneObject'](_0xb6c029,_0x27fdb3,_0x90e7e4=!![]){var _0x191c8d,_0x423d4f;const _0x1681f9=_0xb6c029['querySelector']('.tree-node-item');_0x1681f9===null||_0x1681f9===void 0x0?void 0x0:_0x1681f9['classList']['add']('selected');_0x90e7e4&&this['highlightSceneObject'](_0x27fdb3);let _0x7f5862=(_0x191c8d=_0xb6c029['parentElement'])===null||_0x191c8d===void 0x0?void 0x0:_0x191c8d['closest']('.tree-node');while(_0x7f5862){const _0x2eb34c=_0x7f5862['querySelector']('.tree-node-item');_0x2eb34c&&_0x2eb34c['classList']['add']('selected'),_0x7f5862=(_0x423d4f=_0x7f5862['parentElement'])===null||_0x423d4f===void 0x0?void 0x0:_0x423d4f['closest']('.tree-node');}}['highlightTreeNodeBySceneObject'](_0x3e3472){var _0x4971eb;this['expandTreeDomPathToSceneObject'](_0x3e3472);const _0x4c5a62=_0x3e3472['uuid'],_0x341e45=(_0x4971eb=this['content'])===null||_0x4971eb===void 0x0?void 0x0:_0x4971eb['querySelector']('[data-uuid=\x22'+_0x4c5a62+'\x22]');_0x341e45&&(this['selectTreeNodeAndHighlightSceneObject'](_0x341e45,_0x3e3472,![]),this['treeSearchQuery']['trim']()&&this['reapplySearchFilterToMountedTree']());}['highlightSceneObject'](_0x33f490){const _0x527c2a=this['viewer'];this['lastHighlightedObject']=_0x33f490,_0x527c2a['clearHighlight'](),_0x527c2a['setObjectHighlight'](_0x33f490);}['focusSceneObject'](_0x2faefe){const _0x651b82=this['viewer'];_0x651b82['flyToObject'](_0x2faefe);}['updateChildrenVisibility'](_0x3d4a1a,_0x284140){const _0x45883c=_0x3d4a1a['parentElement'],_0x301682=_0x45883c===null||_0x45883c===void 0x0?void 0x0:_0x45883c['dataset']['uuid'],_0x3c07c0=_0x301682?this['findObjectByUuid'](_0x301682):undefined;_0x3c07c0&&this['applyVisibilityToDescendantsInTree'](_0x3c07c0,_0x284140),this['syncDomSubtreeCheckboxesAndVisibility'](_0x3d4a1a,_0x284140);}['updateParentVisibility'](_0xa49166,_0x43bde9){if(!_0xa49166)return;const _0x89dad9=_0xa49166['querySelector'](':scope\x20>\x20.children');if(!_0x89dad9)return;const _0x87bc9a=Array['from'](_0x89dad9['querySelectorAll']('.visibility-checkbox'));let _0x3a187a,_0x50f184;if(_0x87bc9a['length']>0x0)_0x3a187a=_0x87bc9a['every'](_0x44c5e2=>_0x44c5e2['checked']&&!_0x44c5e2['indeterminate']),_0x50f184=_0x87bc9a['every'](_0x1ba7af=>!_0x1ba7af['checked']&&!_0x1ba7af['indeterminate']);else {const _0x4e39f9=_0xa49166['dataset']['uuid'],_0x140735=_0x4e39f9?this['findObjectByUuid'](_0x4e39f9):undefined,_0x927d9=_0x140735?this['filteredSceneChildren'](_0x140735):[];if(_0x927d9['length']===0x0)return;_0x3a187a=_0x927d9['every'](_0x3ecf28=>this['sceneNodeUiCheckState'](_0x3ecf28)==='checked'),_0x50f184=_0x927d9['every'](_0x2938de=>this['sceneNodeUiCheckState'](_0x2938de)==='unchecked');}const _0xf63d0f=_0xa49166['querySelector']('.visibility-checkbox');if(_0xf63d0f){if(_0x3a187a)_0xf63d0f['checked']=!![],_0xf63d0f['indeterminate']=![];else _0x50f184?(_0xf63d0f['checked']=![],_0xf63d0f['indeterminate']=![]):(_0xf63d0f['checked']=![],_0xf63d0f['indeterminate']=!![]);}const _0x196968=_0xa49166['dataset']['uuid'];if(_0x196968){const _0x411586=this['findObjectByUuid'](_0x196968);_0x411586&&(_0x411586['visible']=_0x43bde9||!_0x50f184);}this['updateParentVisibility'](this['getClosestParentTreeNode'](_0xa49166['parentElement']),_0x43bde9);}['beginNodeRename'](_0x320246,_0x572ac8){var _0x11a721,_0xdd4c11;(_0x11a721=this['finishActiveTreeRename'])===null||_0x11a721===void 0x0?void 0x0:_0x11a721['call'](this,!![]);const _0x1201a5=_0x572ac8['parentElement'];if(!_0x1201a5)return;const _0x3bb067=document['createElement']('input');_0x3bb067['type']='text',_0x3bb067['classList']['add']('node-name-input'),_0x3bb067['value']=(_0xdd4c11=_0x320246['name'])!==null&&_0xdd4c11!==void 0x0?_0xdd4c11:'',_0x3bb067['spellcheck']=![],_0x3bb067['autocomplete']='off',_0x1201a5['replaceChild'](_0x3bb067,_0x572ac8);let _0x58b6e7=![];const _0x263c4c=_0x420e23=>{if(_0x58b6e7)return;_0x58b6e7=!![],this['finishActiveTreeRename']=undefined,_0x3bb067['removeEventListener']('keydown',_0x33fc9b),_0x3bb067['removeEventListener']('blur',_0x7a9e71),document['removeEventListener']('pointerdown',_0x405cc2,!![]),_0x420e23&&(_0x320246['name']=_0x3bb067['value']['trim'](),this['syncTreeNodeNameLabel'](_0x572ac8,_0x320246)),_0x1201a5['replaceChild'](_0x572ac8,_0x3bb067),this['treeSearchQuery']['trim']()&&this['reapplySearchFilterToMountedTree']();},_0x405cc2=_0x164fda=>{if(_0x164fda['composedPath']()['includes'](_0x3bb067))return;_0x263c4c(!![]);},_0x33fc9b=_0x8e5cb9=>{(_0x8e5cb9['key']==='Enter'||_0x8e5cb9['key']==='Escape')&&(_0x8e5cb9['preventDefault'](),_0x8e5cb9['stopPropagation'](),_0x263c4c(!![]));},_0x7a9e71=()=>{_0x263c4c(!![]);};this['finishActiveTreeRename']=_0x263c4c,_0x3bb067['addEventListener']('keydown',_0x33fc9b),_0x3bb067['addEventListener']('blur',_0x7a9e71),document['addEventListener']('pointerdown',_0x405cc2,!![]),requestAnimationFrame(()=>{_0x3bb067['focus'](),_0x3bb067['select']();});}['isModelNode'](_0x29e8eb){if(!_0x29e8eb)return ![];if(_0x29e8eb['userData']&&_0x29e8eb['userData']['modelId']!==undefined)return !![];return ![];}['addTreeDomForSceneObject'](_0x41ad86){var _0x10d881,_0x23f662;const _0x80fd05=_0x41ad86['parent'];if(!_0x80fd05)return;this['expandTreeDomPathToSceneObject'](_0x80fd05);const _0x4e6341=(_0x10d881=this['content'])===null||_0x10d881===void 0x0?void 0x0:_0x10d881['querySelector']('.tree-node[data-uuid=\x22'+_0x80fd05['uuid']+'\x22]');if(!_0x4e6341)return;const _0x24476a=_0x4e6341['querySelector'](':scope\x20>\x20.children');if(!_0x24476a)return;this['ensureLazyChildrenBuilt'](_0x4e6341);const _0xf1e016=parseInt((_0x23f662=_0x4e6341['dataset']['treeLevel'])!==null&&_0x23f662!==void 0x0?_0x23f662:'0',0xa)+0x1,_0x3f5391=_0x24476a['querySelector']('[data-uuid=\x22'+_0x41ad86['uuid']+'\x22]');!_0x3f5391&&this['buildTreeForNodeRecursive'](_0x41ad86,_0x24476a,_0xf1e016);const _0x5b2a6e=_0x4e6341['querySelector']('.child-count');if(_0x5b2a6e){const _0x41145b=this['filteredSceneChildren'](_0x80fd05)['length'];_0x5b2a6e['innerHTML']='('+_0x41145b+')';}else {if(this['filteredSceneChildren'](_0x80fd05)['length']>0x0){const _0x1aad0d=document['createElement']('span');_0x1aad0d['classList']['add']('child-count'),_0x1aad0d['innerHTML']='('+this['filteredSceneChildren'](_0x80fd05)['length']+')';const _0x1fd042=_0x4e6341['querySelector']('.tree-node-item');_0x1fd042===null||_0x1fd042===void 0x0?void 0x0:_0x1fd042['appendChild'](_0x1aad0d);}}this['treeSearchQuery']['trim']()&&this['reapplySearchFilterToMountedTree']();}['moveTreeDomForSceneObject'](_0x401eed){var _0x5b5219,_0x5a4508,_0xa2c173,_0xd20da7;const _0x1ee32d=(_0x5b5219=this['content'])===null||_0x5b5219===void 0x0?void 0x0:_0x5b5219['querySelector']('[data-uuid=\x22'+_0x401eed['uuid']+'\x22]');if(!_0x1ee32d){this['addTreeDomForSceneObject'](_0x401eed);return;}const _0x3a023f=_0x401eed['parent'];if(!_0x3a023f)return;const _0x1a13a2=this['getClosestParentTreeNode'](_0x1ee32d['parentElement']);_0x1ee32d['remove'](),this['expandTreeDomPathToSceneObject'](_0x3a023f);const _0x3cd7c0=this['getTreeChildrenContainerForSceneParent'](_0x3a023f);if(!_0x3cd7c0)return;const _0x532a9a=this['filteredSceneChildren'](_0x3a023f),_0x250f78=_0x532a9a['indexOf'](_0x401eed);if(_0x250f78<0x0)_0x3cd7c0['appendChild'](_0x1ee32d);else {const _0x2cd7ef=(_0x5a4508=_0x532a9a[_0x250f78+0x1])===null||_0x5a4508===void 0x0?void 0x0:_0x5a4508['uuid'],_0x29b258=_0x2cd7ef?_0x3cd7c0['querySelector']('[data-uuid=\x22'+_0x2cd7ef+'\x22]'):null;_0x29b258?_0x3cd7c0['insertBefore'](_0x1ee32d,_0x29b258):_0x3cd7c0['appendChild'](_0x1ee32d);}const _0x4ca5d4=(_0xa2c173=this['content'])===null||_0xa2c173===void 0x0?void 0x0:_0xa2c173['querySelector']('.tree-node[data-uuid=\x22'+_0x3a023f['uuid']+'\x22]'),_0x491ffe=_0x4ca5d4?parseInt((_0xd20da7=_0x4ca5d4['dataset']['treeLevel'])!==null&&_0xd20da7!==void 0x0?_0xd20da7:'0',0xa)+0x1:0x0;this['updateTreeSubtreeLevels'](_0x1ee32d,_0x491ffe),this['syncParentChildCountDom'](_0x1a13a2,_0x3a023f),this['ensureParentExpanded'](_0x3a023f,_0x4ca5d4),this['treeSearchQuery']['trim']()&&this['reapplySearchFilterToMountedTree']();}['getTreeChildrenContainerForSceneParent'](_0x23561e){var _0xaec4f9,_0x2c63ca,_0x20b27b,_0x128c3c;const _0x306295=(_0xaec4f9=this['content'])===null||_0xaec4f9===void 0x0?void 0x0:_0xaec4f9['querySelector']('.tree-node[data-uuid=\x22'+_0x23561e['uuid']+'\x22]');if(_0x306295){const _0xad0563=parseInt((_0x2c63ca=_0x306295['dataset']['treeLevel'])!==null&&_0x2c63ca!==void 0x0?_0x2c63ca:'0',0xa);return this['promoteTreeNodeToBranch'](_0x306295,_0x23561e,_0xad0563),this['ensureLazyChildrenBuilt'](_0x306295),_0x306295['querySelector'](':scope\x20>\x20.children');}const _0x2f6f38=this['viewer']['loadedModels']||[];for(const _0xc05027 of _0x2f6f38){if(_0x23561e===_0xc05027['rootObject'])return (_0x128c3c=(_0x20b27b=this['content'])===null||_0x20b27b===void 0x0?void 0x0:_0x20b27b['querySelector']('.tree-body'))!==null&&_0x128c3c!==void 0x0?_0x128c3c:null;}return null;}['promoteTreeNodeToBranch'](_0x37cee9,_0x5e7e3c,_0x5b7f51){var _0x119d8e;const _0x2ba176=_0x37cee9['querySelector']('.tree-node-item');if(!_0x2ba176)return;let _0x229e33=_0x37cee9['querySelector'](':scope\x20>\x20.children');!_0x229e33&&(_0x229e33=document['createElement']('div'),_0x229e33['classList']['add']('children'),_0x229e33['style']['display']='',_0x37cee9['appendChild'](_0x229e33));if(!_0x2ba176['querySelector']('.expander')){const _0x8abfc9=document['createElement']('span');_0x8abfc9['classList']['add']('expander','expander-expanded'),_0x2ba176['insertBefore'](_0x8abfc9,_0x2ba176['firstChild']),_0x2ba176['style']['paddingLeft']=_0x5b7f51*0x16+'px';}else _0x229e33['style']['display']='',(_0x119d8e=_0x2ba176['querySelector']('.expander'))===null||_0x119d8e===void 0x0?void 0x0:_0x119d8e['classList']['add']('expander-expanded');if(!_0x2ba176['querySelector']('.child-count')){const _0x5abf3c=document['createElement']('span');_0x5abf3c['classList']['add']('child-count'),_0x5abf3c['innerHTML']='('+this['filteredSceneChildren'](_0x5e7e3c)['length']+')';const _0x59cfcb=_0x2ba176['querySelector']('.ellipse-btn');_0x59cfcb?_0x2ba176['insertBefore'](_0x5abf3c,_0x59cfcb):_0x2ba176['appendChild'](_0x5abf3c);}}['updateTreeSubtreeLevels'](_0x29ff96,_0x358496){_0x29ff96['dataset']['treeLevel']=String(_0x358496);const _0x1d7d56=_0x29ff96['querySelector']('.tree-node-item'),_0x405309=!!(_0x1d7d56===null||_0x1d7d56===void 0x0?void 0x0:_0x1d7d56['querySelector']('.expander'));_0x1d7d56&&(_0x1d7d56['style']['paddingLeft']=_0x358496*0x16+(_0x405309?0x0:0x16)+'px'),_0x29ff96['querySelectorAll'](':scope\x20>\x20.children\x20>\x20.tree-node')['forEach'](_0x3c158b=>{this['updateTreeSubtreeLevels'](_0x3c158b,_0x358496+0x1);});}['syncParentChildCountDom'](_0xdb04db,_0x51ce9a){var _0x53ec25;const _0x509aef=(_0x53ec25=this['content'])===null||_0x53ec25===void 0x0?void 0x0:_0x53ec25['querySelector']('.tree-node[data-uuid=\x22'+_0x51ce9a['uuid']+'\x22]');for(const _0x223b52 of [_0xdb04db,_0x509aef]){if(!_0x223b52)continue;const _0x5a90a6=_0x223b52['dataset']['uuid'];if(!_0x5a90a6)continue;const _0x5e4769=this['findObjectByUuid'](_0x5a90a6);if(!_0x5e4769)continue;const _0x5379bb=this['filteredSceneChildren'](_0x5e4769)['length'],_0x37ff39=_0x223b52['querySelector']('.child-count');_0x37ff39&&(_0x37ff39['innerHTML']='('+_0x5379bb+')');}}['ensureParentExpanded'](_0x336e9e,_0x40ac15){if(!_0x40ac15)return;const _0x13c444=_0x40ac15['querySelector'](':scope\x20>\x20.children'),_0x3fc5fa=_0x40ac15['querySelector']('.tree-node-item\x20.expander');_0x13c444&&(_0x13c444['style']['display']='',_0x3fc5fa===null||_0x3fc5fa===void 0x0?void 0x0:_0x3fc5fa['classList']['add']('expander-expanded'));}['removeTreeDomForSceneObject'](_0x3edcff){var _0xd02869;const _0x3b80dd=(_0xd02869=this['content'])===null||_0xd02869===void 0x0?void 0x0:_0xd02869['querySelector']('[data-uuid=\x22'+_0x3edcff['uuid']+'\x22]');if(!_0x3b80dd)return;const _0x23dd3e=_0x3b80dd['querySelector']('.tree-node-item'),_0x139530=_0x3edcff['visible'],_0x131cfd=this['getClosestParentTreeNode'](_0x3b80dd['parentElement']);_0x3b80dd['remove'](),this['updateParentVisibility'](_0x131cfd,!_0x139530);if(_0x131cfd){const _0x3d06e0=_0x131cfd['querySelector']('.child-count');if(_0x3d06e0){const _0x19e5bf=parseInt(_0x3d06e0['innerHTML']['replace'](/[()]/g,''),0xa);!Number['isNaN'](_0x19e5bf)&&(_0x3d06e0['innerHTML']='('+Math['max'](0x0,_0x19e5bf-0x1)+')');}}_0x23dd3e===null||_0x23dd3e===void 0x0?void 0x0:_0x23dd3e['classList']['remove']('selected'),this['treeSearchQuery']['trim']()&&this['reapplySearchFilterToMountedTree']();}['showPopMenu'](_0x55f32d){var _0x1a7055,_0x2e3807,_0x34a7ac;document['querySelectorAll']('.tree-pop-menu')['forEach'](_0x37bbc7=>_0x37bbc7['remove']());const _0x78c2de=_0x55f32d['target'],_0x46cd55=_0x78c2de['closest']('.tree-node'),_0x62ad63=_0x78c2de['closest']('.tree-node-item'),_0x12e0a3=_0x62ad63['querySelector']('.visibility-checkbox');let _0x806ff2;const _0x3513a4=_0x46cd55['dataset']['uuid'];_0x3513a4&&(_0x806ff2=this['findObjectByUuid'](_0x3513a4));const _0x2c5499=_0x62ad63['classList']['contains']('selected'),_0x34047d=_0x806ff2?_0x806ff2['visible']:![],_0x2e668b=document['createElement']('div');_0x2e668b['classList']['add']('tree-pop-menu'),_0x2e668b['style']['left']=_0x55f32d['clientX']+0x8+'px',_0x2e668b['style']['top']=_0x55f32d['clientY']+0x8+'px';function _0x542b6e(_0x1b9e4f,_0x2eb4b5=![],_0x4cafc9){const _0x2e6f27=document['createElement']('div');_0x2e6f27['textContent']=_0x1b9e4f,_0x2e6f27['classList']['add']('item'),_0x2eb4b5&&_0x2e6f27['classList']['add']('last-item-in-section'),_0x2e6f27['addEventListener']('click',_0x4de91c=>{_0x4de91c['stopPropagation'](),_0x2e668b['remove'](),_0x4cafc9();}),_0x2e668b['appendChild'](_0x2e6f27);}_0x542b6e(t$3('focus'),![],()=>{_0x806ff2&&this['focusSceneObject'](_0x806ff2);}),_0x542b6e(_0x2c5499?t$3('deselect'):t$3('select'),!![],()=>{var _0x1f62c6;_0x806ff2&&((_0x1f62c6=this['content'])===null||_0x1f62c6===void 0x0?void 0x0:_0x1f62c6['querySelectorAll']('.tree-node-item.selected')['forEach'](_0x36f0d3=>_0x36f0d3['classList']['remove']('selected')),_0x2c5499?(_0x62ad63['classList']['remove']('selected'),this['viewer']['clearHighlight']()):(_0x62ad63['classList']['add']('selected'),this['selectTreeNodeAndHighlightSceneObject'](_0x46cd55,_0x806ff2)),this['treeSearchQuery']['trim']()&&this['reapplySearchFilterToMountedTree']());}),_0x542b6e(_0x34047d?t$3('hide'):t$3('show'),!![],()=>{if(_0x806ff2){_0x806ff2['visible']=!_0x34047d,_0x12e0a3['checked']=!_0x34047d;const _0x28f9ef=_0x46cd55['querySelector']('.children');_0x28f9ef&&this['updateChildrenVisibility'](_0x28f9ef,!_0x34047d);const _0x25de4f=this['getClosestParentTreeNode'](_0x46cd55['parentElement']);this['updateParentVisibility'](_0x25de4f,!_0x34047d),this['viewer']['enableRender']();}});const _0x59e0aa=this['viewer'];_0x59e0aa['enableSceneEditing']&&_0x542b6e(t$3('delete'),!![],()=>{if(!_0x806ff2)return;const _0x27a956=this['viewer']['findPlugin'](SceneEditPlugin['DEFAULT_ID']);if(_0x27a956){const _0xba3298=_0x59e0aa['getHighlightedObject']();(_0xba3298===null||_0xba3298===void 0x0?void 0x0:_0xba3298['uuid'])!==_0x806ff2['uuid']&&_0x59e0aa['setObjectHighlight'](_0x806ff2),_0x27a956['getSceneEditActions']()['deleteSelection']();}else _0x59e0aa['removeSceneObject'](_0x806ff2);});_0x806ff2&&!(this['isModelNode'](_0x806ff2)||this['isModelNode'](_0x806ff2['parent']))&&_0x542b6e('Duplicate',!![],()=>{const _0x29bddc=this['viewer']['findPlugin'](SceneEditPlugin['DEFAULT_ID']);if(_0x29bddc)_0x29bddc['getSceneEditActions']()['duplicateNode'](_0x806ff2);else {if(_0x806ff2['parent']){const _0xb0530a=_0x806ff2['clone'](!![]);_0xb0530a['name']=_0x806ff2['name']+'_copy',_0x806ff2['parent']['add'](_0xb0530a),_0x59e0aa['setObjectHighlight'](_0xb0530a),_0x59e0aa['enableRender']();}}});_0x542b6e(t$3('export'),![],()=>{if(_0x806ff2){const _0x383b91=this['viewer']['findPlugin']('ExportPlugin');if(!_0x383b91){log['warn']('[Toolbar]\x20ExportPlugin\x20is\x20not\x20installed!');return;}_0x383b91['showExportPanel']('glb',_0x806ff2['name'],_0x806ff2);}});const _0x2d3b61=(_0x34a7ac=(_0x1a7055=this['viewer']['widgetContainer'])!==null&&_0x1a7055!==void 0x0?_0x1a7055:(_0x2e3807=this['basePanel'])===null||_0x2e3807===void 0x0?void 0x0:_0x2e3807['root'])!==null&&_0x34a7ac!==void 0x0?_0x34a7ac:document['body'];_0x2d3b61['appendChild'](_0x2e668b);const _0x13ffed=0x8,_0x2c3748=()=>{let _0x270eb9=_0x2e668b['getBoundingClientRect']();const _0x3e29aa=this['viewer']['viewerContainer'];if(_0x3e29aa){const _0x18ac8c=_0x3e29aa['getBoundingClientRect']();if(_0x270eb9['right']>_0x18ac8c['right']){let _0x42cf95=_0x55f32d['clientX']-_0x270eb9['width']-_0x13ffed;_0x42cf95<_0x18ac8c['left']+0x4&&(_0x42cf95=_0x18ac8c['left']+0x4),_0x2e668b['style']['left']=_0x42cf95+'px',_0x270eb9=_0x2e668b['getBoundingClientRect']();}}const _0x281ca6=window['innerHeight'];if(_0x270eb9['bottom']>_0x281ca6-_0x13ffed){let _0x204ebf=_0x55f32d['clientY']-_0x270eb9['height']-_0x13ffed;_0x204ebf<_0x13ffed&&(_0x204ebf=Math['max'](_0x13ffed,_0x281ca6-_0x13ffed-_0x270eb9['height'])),_0x2e668b['style']['top']=_0x204ebf+'px',_0x270eb9=_0x2e668b['getBoundingClientRect']();}_0x270eb9['top']<_0x13ffed&&(_0x2e668b['style']['top']=_0x13ffed+'px');};_0x2c3748(),setTimeout(()=>{document['addEventListener']('mousedown',_0x504b56=>{!_0x2e668b['contains'](_0x504b56['target'])&&_0x2e668b['remove']();},{'once':!![]});},0x0);}['getClosestParentTreeNode'](_0xdab6eb){while(_0xdab6eb&&!_0xdab6eb['classList']['contains']('tree-node')){_0xdab6eb=_0xdab6eb['parentElement'];}return _0xdab6eb;}['findObjectByUuid'](_0x23b2f4){const _0x22b524=this['viewer']['loadedModels']||[];for(const _0x203b7d of _0x22b524){const _0xd83a95=_0x203b7d['getModelObject']()['getObjectByProperty']('uuid',_0x23b2f4);if(_0xd83a95)return _0xd83a95;}return undefined;}}TreeViewPlugin['DEFAULT_ID']='TreeViewPlugin';
|
|
263
|
+
|
|
264
|
+
let sectionPanel;const measurementPlugin=_0x2ae140=>{return _0x2ae140['findPlugin'](MeasurementPlugin['DEFAULT_ID']);},sectionPlugin=_0x1afbff=>{return _0x1afbff['findPlugin'](SectionPlugin['DEFAULT_ID']);},screenshotPlugin=_0xacd051=>{return _0xacd051['findPlugin'](ScreenshotPlugin['DEFAULT_ID']);},treeViewPlugin=_0xb316fc=>{return _0xb316fc['findPlugin'](TreeViewPlugin['DEFAULT_ID']);},setting3dPlugin=_0x47d2c3=>{return _0x47d2c3['findPlugin'](Settings3dPlugin['DEFAULT_ID']);},activateMeasurement=_0x23573d=>{return _0xa3ef90=>{const _0x272384=measurementPlugin(_0xa3ef90),_0x124e13=sectionPlugin(_0xa3ef90);_0x124e13===null||_0x124e13===void 0x0?void 0x0:_0x124e13['deactivate'](),_0x272384===null||_0x272384===void 0x0?void 0x0:_0x272384['activate'](_0x23573d);};},deactivateMeasurement=_0x4ea8c4=>{const _0x102bd5=measurementPlugin(_0x4ea8c4);_0x102bd5===null||_0x102bd5===void 0x0?void 0x0:_0x102bd5['deactivate']();},hideMeasurementData=_0x4541a6=>{const _0x2dbb1b=measurementPlugin(_0x4541a6);if(_0x2dbb1b){_0x2dbb1b['deactivate']();const _0x20f330=_0x2dbb1b['getData']();_0x20f330['forEach'](_0x3f553a=>_0x2dbb1b['setVisibleById'](_0x3f553a['id'],![]));}},deactivateSection=_0x1645bf=>{const _0x104a2d=measurementPlugin(_0x1645bf);if(_0x104a2d){_0x104a2d['deactivate']();const _0x3c884c=_0x104a2d['getData']();_0x3c884c['forEach'](_0x4c2e9f=>_0x104a2d['setVisibleById'](_0x4c2e9f['id'],!![]));}const _0x58a049=sectionPlugin(_0x1645bf),_0x4c713c=![];_0x58a049===null||_0x58a049===void 0x0?void 0x0:_0x58a049['deactivate'](_0x4c713c),sectionPanel===null||sectionPanel===void 0x0?void 0x0:sectionPanel['destroy'](),sectionPanel=undefined,_0x1645bf['enableRender']();};const DefaultViewer3dToolbarConfig={[ToolbarMenuId['HomeView']]:{'icon':{'default':'icon-home','active':'icon-home-filled','iconFont':IconfontClass2},'menuName':'homeView','type':ToolbarMenuType['Button'],'onClick':_0x36657f=>{const _0x20489b=_0x36657f;_0x20489b['goToHomeView']();}},[ToolbarMenuId['OrthoMode']]:{'icon':{'default':'icon-orthomode','active':'icon-orthomode-filled','iconFont':IconfontClass2},'menuName':'orthoView','type':ToolbarMenuType['ToggleButton'],'onActive':_0x1c0427=>{log['info']('[Toolbar]','Enter\x20OrthoMode');const _0x2fff9a=_0x1c0427;_0x2fff9a['setCameraProjection'](CameraProjection['Orthographic']);},'onDeactive':_0x334b92=>{log['info']('[Toolbar]','Exit\x20OrthoMode');const _0x459466=_0x334b92;_0x459466['setCameraProjection'](CameraProjection['Perspective']);}},[ToolbarMenuId['Measure']]:{'icon':{'default':'icon-measure','active':'icon-measure-filled','iconFont':IconfontClass2},'menuName':'measurement','type':ToolbarMenuType['DropdownMenu'],'children':{[ToolbarMenuId['MeasureDistance']]:{'icon':{'default':'icon-measure-distance'},'menuName':'distanceMeasurement','onActive':activateMeasurement(MeasurementType['Distance']),'onDeactive':deactivateMeasurement,'type':ToolbarMenuType['ToggleButton'],'mutexIds':[ToolbarMenuId['MeasureArea'],ToolbarMenuId['MeasureAngle'],ToolbarMenuId['MeasureCoordinate']]},[ToolbarMenuId['MeasureArea']]:{'icon':{'default':'icon-measure-area-color'},'onActive':activateMeasurement(MeasurementType['Area']),'onDeactive':deactivateMeasurement,'type':ToolbarMenuType['ToggleButton'],'menuName':'areaMeasurement','mutexIds':[ToolbarMenuId['MeasureDistance'],ToolbarMenuId['MeasureAngle'],ToolbarMenuId['MeasureCoordinate']]},[ToolbarMenuId['MeasureAngle']]:{'menuName':'angleMeasurement','icon':{'default':'icon-angle-measure'},'type':ToolbarMenuType['ToggleButton'],'onActive':activateMeasurement(MeasurementType['Angle']),'onDeactive':deactivateMeasurement,'mutexIds':[ToolbarMenuId['MeasureDistance'],ToolbarMenuId['MeasureArea'],ToolbarMenuId['MeasureCoordinate']]},[ToolbarMenuId['MeasureCoordinate']]:{'menuName':'coordinateMeasurement','icon':{'default':'icon-distancemeasure','iconFont':IconfontClass2},'type':ToolbarMenuType['ToggleButton'],'onActive':activateMeasurement(MeasurementType['Coordinate']),'onDeactive':deactivateMeasurement,'mutexIds':[ToolbarMenuId['MeasureDistance'],ToolbarMenuId['MeasureArea'],ToolbarMenuId['MeasureAngle']]},[ToolbarMenuId['MeasureClear']]:{'icon':{'default':'icon-clear','active':'icon-clear-filled','iconFont':IconfontClass2},'onClick':_0x4babd1=>{const _0x34e0cb=measurementPlugin(_0x4babd1);_0x34e0cb===null||_0x34e0cb===void 0x0?void 0x0:_0x34e0cb['deactivate'](),_0x34e0cb===null||_0x34e0cb===void 0x0?void 0x0:_0x34e0cb['clear']();},'type':ToolbarMenuType['Button'],'menuName':'clearMeasurement'}},'mutexIds':[ToolbarMenuId['Section'],ToolbarMenuId['SectionAxis'],ToolbarMenuId['SectionBox'],ToolbarMenuId['SectionPlane']]},[ToolbarMenuId['Section']]:{'icon':{'default':'icon-section','active':'icon-section-filled','iconFont':IconfontClass2},'menuName':'section','type':ToolbarMenuType['DropdownMenu'],'children':{[ToolbarMenuId['SectionAxis']]:{'icon':{'default':'icon-sectionplane','active':'icon-sectionplane-filled','iconFont':IconfontClass2},'menuName':'axisSection','type':ToolbarMenuType['ToggleButton'],'onActive':_0x35eac7=>{hideMeasurementData(_0x35eac7);const _0x9b33a=sectionPlugin(_0x35eac7);_0x9b33a===null||_0x9b33a===void 0x0?void 0x0:_0x9b33a['activate'](SectionType['AxisPlaneSection']),sectionPanel===null||sectionPanel===void 0x0?void 0x0:sectionPanel['destroy'](),sectionPanel=new AxisSectionPopPanel(_0x35eac7);},'onDeactive':deactivateSection,'mutexIds':[ToolbarMenuId['SectionBox'],ToolbarMenuId['SectionPlane']]},[ToolbarMenuId['SectionPlane']]:{'icon':{'default':'icon-choosesectionplane','active':'icon-choosesectionplane-filled','iconFont':IconfontClass2},'menuName':'pickSectionPlane','type':ToolbarMenuType['ToggleButton'],'onActive':_0x2fc2df=>{hideMeasurementData(_0x2fc2df);const _0x2f1d18=sectionPlugin(_0x2fc2df);_0x2f1d18===null||_0x2f1d18===void 0x0?void 0x0:_0x2f1d18['activate'](SectionType['PickPlaneSection']),sectionPanel===null||sectionPanel===void 0x0?void 0x0:sectionPanel['destroy'](),sectionPanel=new PickSectionPopPanel(_0x2fc2df);},'onDeactive':deactivateSection,'mutexIds':[ToolbarMenuId['SectionAxis'],ToolbarMenuId['SectionBox']]},[ToolbarMenuId['SectionBox']]:{'icon':{'default':'icon-sectionbox','active':'icon-sectionbox-filled','iconFont':IconfontClass2},'menuName':'sectionBox','type':ToolbarMenuType['ToggleButton'],'onActive':_0x5500f4=>{hideMeasurementData(_0x5500f4);const _0x2e8d9d=sectionPlugin(_0x5500f4);_0x2e8d9d===null||_0x2e8d9d===void 0x0?void 0x0:_0x2e8d9d['activate'](SectionType['ObjectsBoxSection']),sectionPanel===null||sectionPanel===void 0x0?void 0x0:sectionPanel['destroy']();},'onDeactive':deactivateSection,'mutexIds':[ToolbarMenuId['SectionAxis'],ToolbarMenuId['SectionPlane']]}},'mutexIds':[ToolbarMenuId['Measure'],ToolbarMenuId['MeasureDistance'],ToolbarMenuId['MeasureArea'],ToolbarMenuId['MeasureAngle'],ToolbarMenuId['MeasureCoordinate']]},[ToolbarMenuId['TreeView']]:{'icon':{'default':'icon-bimtree','active':'icon-bimtree-filled','iconFont':IconfontClass2},'menuName':'treeView','type':ToolbarMenuType['ToggleButton'],'onActive':(_0x571efb,_0x38a5f6)=>{const _0x1da384=treeViewPlugin(_0x571efb);if(!_0x1da384){log['warn']('[Toolbar]\x20TreeViewPlugin\x20is\x20not\x20installed!');return;}!_0x1da384['hasEventListener']('visibilitychange')&&_0x1da384['addEventListener']('visibilitychange',_0x246f70=>{if(_0x38a5f6){const _0x25fde0=_0x38a5f6['isActive'](ToolbarMenuId['TreeView']);_0x25fde0!==_0x246f70&&_0x38a5f6['setActive'](ToolbarMenuId['TreeView'],_0x246f70);}}),_0x1da384['setVisible'](!![]);},'onDeactive':_0x3b8032=>{const _0x57ebfb=treeViewPlugin(_0x3b8032);_0x57ebfb===null||_0x57ebfb===void 0x0?void 0x0:_0x57ebfb['setVisible'](![]);},'visible':!![]},[ToolbarMenuId['Viewpoint']]:{'icon':{'default':'icon-viewpoint','active':'icon-viewpoint-filled','iconFont':IconfontClass2},'menuName':'viewpoint','type':ToolbarMenuType['ToggleButton'],'onActive':()=>{log['info']('[Toolbar]','Activate\x20Viewpoint');},'onDeactive':()=>{log['info']('[Toolbar]','Deactivate\x20Viewpoint');},'visible':![]},[ToolbarMenuId['Annotation']]:{'icon':{'default':'icon-annotation','active':'icon-annotation-filled','iconFont':IconfontClass2},'menuName':'annotation','type':ToolbarMenuType['ToggleButton'],'onActive':()=>{log['info']('[Toolbar]','Activate\x20Annotation');},'onDeactive':()=>{log['info']('[Toolbar]','Deactivate\x20Annotation');},'visible':![]},[ToolbarMenuId['Property']]:{'icon':{'default':'icon-property','active':'icon-property-filled','iconFont':IconfontClass2},'menuName':'property','type':ToolbarMenuType['ToggleButton'],'onActive':()=>{log['info']('[Toolbar]','Activate\x20Property');},'onDeactive':()=>{log['info']('[Toolbar]','Deactivate\x20Property');},'visible':![]},[ToolbarMenuId['Screenshot']]:{'icon':{'default':'icon-frame-clipping','active':'icon-frame-clipping'},'menuName':'screenshot','type':ToolbarMenuType['Button'],'onClick':(_0x4ec6b7,_0x55bc33)=>{const _0x54c054=screenshotPlugin(_0x4ec6b7),_0x447c3d=(_0x55bc33===null||_0x55bc33===void 0x0?void 0x0:_0x55bc33['getScreenshotDownloadFileName']())||'';if(!_0x54c054){log['warn']('[Toolbar]\x20ScreenshotPlugin\x20is\x20not\x20installed!');return;}_0x54c054['getScreenshotAsync'](ScreenshotMode['Default'])['then'](_0x17e224=>{log['info']('[Toolbar]\x20getScreenshot()\x20returns:',_0x17e224===null||_0x17e224===void 0x0?void 0x0:_0x17e224['base64Image']);if(!(_0x17e224===null||_0x17e224===void 0x0?void 0x0:_0x17e224['base64Image']))throw '[Toolbar]\x20Image\x20data\x20is\x20empty!';const _0x2deaba=document['createElement']('a');_0x2deaba['href']=_0x17e224===null||_0x17e224===void 0x0?void 0x0:_0x17e224['base64Image'],_0x2deaba['download']=_0x447c3d,_0x2deaba['click']();})['catch'](_0x212235=>{log['error']('[Toolbar]\x20Failed\x20to\x20get\x20screenshot,\x20reason:',_0x212235),_0x55bc33===null||_0x55bc33===void 0x0?void 0x0:_0x55bc33['setActive'](ToolbarMenuId['Screenshot'],![]);});}},[ToolbarMenuId['Settings']]:{'icon':{'default':'icon-settings','active':'icon-settings-filled','iconFont':IconfontClass2},'menuName':'settings','type':ToolbarMenuType['ToggleButton'],'onActive':(_0x25293e,_0x38dac1)=>{const _0x5507fc=setting3dPlugin(_0x25293e);if(!_0x5507fc){log['warn']('[Toolbar]\x20Settings3dPlugin\x20is\x20not\x20installed!');return;}!_0x5507fc['hasEventListener']('visibilitychange')&&_0x5507fc['addEventListener']('visibilitychange',_0x4f20ac=>{if(_0x38dac1){const _0x27d46c=_0x38dac1['isActive'](ToolbarMenuId['Settings']);_0x27d46c!==_0x4f20ac&&_0x38dac1['setActive'](ToolbarMenuId['Settings'],_0x4f20ac);}}),_0x5507fc['setVisible'](!![]);},'onDeactive':_0x90c008=>{const _0xb8f6a4=setting3dPlugin(_0x90c008);_0xb8f6a4===null||_0xb8f6a4===void 0x0?void 0x0:_0xb8f6a4['setVisible'](![]);},'visible':!![]},[ToolbarMenuId['Fullscreen']]:{'icon':{'default':'icon-fullscreen','active':'icon-fullscreen-filled','iconFont':IconfontClass2},'menuName':'fullscreen','type':ToolbarMenuType['ToggleButton'],'onClick':(_0x1a1e21,_0x482390)=>{var _0x4f6985;const _0x26b114=()=>{const _0x33aaa7=_0x482390===null||_0x482390===void 0x0?void 0x0:_0x482390['menuList']['get'](ToolbarMenuId['Fullscreen']);_0x33aaa7&&_0x33aaa7['setActive'](CommonUtils['isFullScreen']());};CommonUtils['isFullScreen']()?(CommonUtils['exitFullscreen'](),window['removeEventListener']('resize',_0x26b114)):CommonUtils['fullScreen']((_0x4f6985=_0x1a1e21['viewerContainer'])===null||_0x4f6985===void 0x0?void 0x0:_0x4f6985['parentElement']),window['addEventListener']('resize',_0x26b114);}}};
|
|
265
|
+
|
|
266
|
+
const en$2={'homeView':'Home','orthoView':'Ortho\x20View','measurement':'Measure','distanceMeasurement':'Distance','areaMeasurement':'Area','angleMeasurement':'Angle','coordinateMeasurement':'Coordinate','clearMeasurement':'Clear','section':'Section','axisSection':'Axis\x20Section','pickSectionPlane':'Pick\x20Section\x20Plane','sectionBox':'Section\x20Box','treeView':'Tree\x20View','viewpoint':'Viewpoint','annotation':'Annotation','property':'Property','settings':'Settings','compared':'Compared','quitCompare':'Quit\x20compare','fullscreen':'Full\x20Screen','layers':'Layers','zoomToRectangle':'Zoom','zoomToExtent':'Zoom\x20to\x20Extent','screenshot':'Screenshot'};const zh$2={'homeView':'主视图','orthoView':'正交视图','measurement':'测量','distanceMeasurement':'距离测量','areaMeasurement':'面积测量','angleMeasurement':'角度测量','coordinateMeasurement':'坐标测量','clearMeasurement':'清除测量','section':'剖切','axisSection':'轴向剖切','pickSectionPlane':'面剖切','sectionBox':'剖切盒','treeView':'模型树','viewpoint':'视点','annotation':'批注','property':'属性','settings':'设置','compared':'图纸对比','quitCompare':'退出图纸对比','fullscreen':'全屏','layers':'图层','zoomToRectangle':'框选放大','zoomToExtent':'全图显示','screenshot':'截屏'};const TOOLBAR_I18N_NAMESPACE='toolbar';registerViewerI18nNamespace(TOOLBAR_I18N_NAMESPACE,{'en':en$2,'zh':zh$2});function t$2(_0x323a3a){return i18n['t'](_0x323a3a,{'ns':TOOLBAR_I18N_NAMESPACE});}
|
|
267
|
+
|
|
268
|
+
class Toolbar{constructor(_0x4eb85a,_0x2b107c,_0x381fde=[]){this['visible']=!![],this['menuList']=new Map(),this['screenshotDownloadFileName']='',this['collapsed']=![],this['keydown']=_0xbffce0=>{if(!this['visible'])return;if(_0xbffce0['code']==='Escape'){const _0x577792=this['viewer']['findPlugin'](MeasurementPlugin['DEFAULT_ID']);if(_0x577792===null||_0x577792===void 0x0?void 0x0:_0x577792['isMeasuring']())return;this['clearActive']();}},this['viewer']=_0x4eb85a,this['menuCfg']=_0x2b107c,this['groupCfg']=_0x381fde,this['init'](),window['addEventListener']('keydown',this['keydown'],![]);}['init'](){var _0xca927c;const _0xbd8a70=document['createElement']('div');_0xbd8a70['classList']['add']('toolbar');const _0x10c070=this['menuCfg'];this['groupCfg']['forEach']((_0x375492,_0x39da62)=>{const _0x4bbe8b=document['createElement']('div');_0x4bbe8b['classList']['add']('toolbar-group');const _0x2b3580=document['createElement']('div');_0x2b3580['classList']['add']('toolbar-group-division'),_0x375492['forEach'](_0x1414b8=>{const _0x18a4c6=get$1(_0x10c070,_0x1414b8);if(_0x18a4c6&&_0x18a4c6['visible']!==![]){const _0x80fc44=this['createToolbarMenu'](this['viewer'],_0x1414b8,_0x18a4c6);_0x4bbe8b['appendChild'](_0x80fc44['element']);}}),_0x4bbe8b['hasChildNodes']()&&(_0x39da62&&_0xbd8a70['appendChild'](_0x2b3580),_0xbd8a70['appendChild'](_0x4bbe8b));}),this['element']=_0xbd8a70,(_0xca927c=this['viewer']['widgetContainer'])===null||_0xca927c===void 0x0?void 0x0:_0xca927c['appendChild'](_0xbd8a70),_0xbd8a70['oncontextmenu']=_0x5407aa=>{_0x5407aa['preventDefault']();};const _0x249cdb=document['createElement']('button');_0x249cdb['type']='button',_0x249cdb['classList']['add']('toolbar-collapse-toggle');const _0x1fa644=document['createElement']('span');_0x1fa644['classList']['add']('toolbar-collapse-toggle-icon'),_0x1fa644['setAttribute']('aria-hidden','true'),_0x1fa644['innerHTML']='<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20aria-hidden=\x22true\x22><path\x20d=\x22M6\x2015l6-6\x206\x206\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22/></svg>',_0x249cdb['appendChild'](_0x1fa644),_0x249cdb['addEventListener']('click',_0xfde022=>{_0xfde022['stopPropagation'](),this['toggleCollapsed']();}),_0xbd8a70['appendChild'](_0x249cdb),this['collapseToggleEl']=_0x249cdb,this['collapsed']&&_0xbd8a70['classList']['add']('toolbar--collapsed'),this['syncCollapseUi']();}['toggleCollapsed'](){if(!this['element'])return;this['collapsed']=!this['collapsed'],this['element']['classList']['toggle']('toolbar--collapsed',this['collapsed']),this['syncCollapseUi']();}['syncCollapseUi'](){var _0x5576de;(_0x5576de=this['collapseToggleEl'])===null||_0x5576de===void 0x0?void 0x0:_0x5576de['setAttribute']('aria-expanded',String(!this['collapsed']));}['clearActive'](){if(this['activateMenuId']){const _0x2d34dc=this['menuList']['get'](this['activateMenuId']);_0x2d34dc===null||_0x2d34dc===void 0x0?void 0x0:_0x2d34dc['setActive'](![]),this['activateMenuId']=undefined;}}['setActive'](_0x3d1be0,_0x3caa32){const _0x25bab9=this['menuList']['get'](_0x3d1be0);_0x25bab9===null||_0x25bab9===void 0x0?void 0x0:_0x25bab9['setActive'](_0x3caa32),this['activateMenuId']=_0x3caa32?_0x3d1be0:undefined;}['isActive'](_0xa1b27a){const _0x9227e2=this['menuList']['get'](_0xa1b27a);return !!(_0x9227e2===null||_0x9227e2===void 0x0?void 0x0:_0x9227e2['isActive']());}['setScreenshotDownloadFileName'](_0x124d4c){this['screenshotDownloadFileName']=_0x124d4c||'';}['getScreenshotDownloadFileName'](){return this['screenshotDownloadFileName'];}['createToolbarMenu'](_0x52a5dc,_0x55ff9a,_0x43b6f8,_0x26b13c){const _0x41849c=new ToolbarMenu(_0x52a5dc,this,_0x55ff9a,_0x43b6f8,_0x26b13c);this['menuList']['set'](_0x55ff9a,_0x41849c);if(_0x43b6f8['children']){const _0x51220f=document['createElement']('div');_0x51220f['classList']['add']('toolbar-sub-menu');const _0x32352a=document['createElement']('div');_0x32352a['classList']['add']('toolbar-sub-menu-list'),_0x51220f['appendChild'](_0x32352a),forIn(_0x43b6f8['children'],(_0x5184be,_0x376cc5)=>{if(_0x5184be&&_0x5184be['visible']!==![]){const _0x1fb5e9=this['createToolbarMenu'](_0x52a5dc,_0x376cc5,_0x5184be,_0x41849c);_0x32352a['appendChild'](_0x1fb5e9['element']);}}),_0x41849c['element']['appendChild'](_0x51220f);}return _0x41849c;}['updateMenu'](_0x42a0c6,_0x5f2b68){assign(this['menuCfg'][_0x42a0c6],_0x5f2b68),this['refresh']();}['updateMenus'](_0x28d65e){forEach(_0x28d65e,({menuId:_0x20c0b1,config:_0x14d158})=>{assign(this['menuCfg'][_0x20c0b1],_0x14d158);}),this['refresh']();}['addMenu'](_0x1d9412,_0x2aef93,_0x176367){if(keys(this['menuCfg'])['includes'](_0x1d9412)){log['error']('[Toolbar]',_0x1d9412,'exists.');return;}assign(this['menuCfg'],{[_0x1d9412]:_0x2aef93});if(_0x176367){const [_0x3ae8e2,_0x18f198]=_0x176367;if(_0x3ae8e2>this['groupCfg']['length']-0x1)this['groupCfg']=concat(this['groupCfg'],[[_0x1d9412]]);else {const _0x562d43=this['groupCfg'][_0x3ae8e2];this['groupCfg'][_0x3ae8e2]=_0x18f198>_0x562d43['length']-0x1?concat(_0x562d43,_0x1d9412):concat(take(_0x562d43,_0x18f198),_0x1d9412,takeRight(_0x562d43,_0x562d43['length']-_0x18f198));}}else this['groupCfg']=concat(this['groupCfg'],[[_0x1d9412]]);this['refresh']();}['refresh'](){const _0x3bac83=this['collapsed'];this['element']&&this['element']['remove'](),this['element']=undefined,this['menuList']['clear'](),this['collapsed']=_0x3bac83,this['init']();}['setVisible'](_0x40309a){if(!this['element'])return;this['element']['style']['display']=_0x40309a?'':'none',this['visible']=!![];}['isVisible'](){return !!this['element']&&this['visible'];}['refreshLocalizedLabels'](){const _0x489fdc=(_0x267820,_0x3e6b46)=>{if(!_0x3e6b46['menuName'])return;const _0x532e9b=document['getElementById'](_0x267820);if(!_0x532e9b)return;const _0x1d0795=t$2(_0x3e6b46['menuName']);_0x532e9b['title']=_0x1d0795;const _0x27007e=_0x532e9b['querySelector']('span');_0x27007e&&(_0x27007e['textContent']=_0x1d0795);};forIn(this['menuCfg'],(_0x5eba19,_0x10df2b)=>{if(!_0x5eba19)return;_0x489fdc(_0x10df2b,_0x5eba19),_0x5eba19['children']&&forIn(_0x5eba19['children'],(_0x3363b7,_0xf5c7f4)=>{_0x3363b7&&_0x489fdc(_0xf5c7f4,_0x3363b7);});});}['destroy'](){this['element']&&this['element']['remove'](),this['element']=undefined,this['menuList']['clear'](),window['removeEventListener']('keydown',this['keydown'],![]);}}class ToolbarMenu{constructor(_0x44f9e0,_0x2de6cf,_0x120ffa,_0x35e191,_0x3d90d7){this['eventBus']=_0x1daf82(),this['toolbar']=_0x2de6cf,this['menuId']=_0x120ffa,this['active']=_0x35e191['defaultActive']||![],this['element']=_0x35e191['customElement']&&_0x35e191['customElement'](_0x44f9e0,this['menuId'],_0x35e191)||this['createButton'](_0x44f9e0,this['menuId'],_0x35e191),this['eventBus']['on']('activitychange',_0x1b58de=>{var _0xaf7d06,_0x4b990f;_0x1b58de?(this['element']['classList']['add']('active'),forEach(_0x35e191['mutexIds'],_0x4dfc79=>{var _0x2eec1b;const _0x384563=(_0x2eec1b=this['toolbar'])===null||_0x2eec1b===void 0x0?void 0x0:_0x2eec1b['menuList']['get'](_0x4dfc79);_0x384563&&_0x384563['active']&&_0x384563['setActive'](![]);}),(_0xaf7d06=_0x35e191['onActive'])===null||_0xaf7d06===void 0x0?void 0x0:_0xaf7d06['call'](_0x35e191,_0x44f9e0,_0x2de6cf)):(this['element']['classList']['remove']('active'),(_0x4b990f=_0x35e191['onDeactive'])===null||_0x4b990f===void 0x0?void 0x0:_0x4b990f['call'](_0x35e191,_0x44f9e0)),this['element']['firstChild']instanceof HTMLElement&&setIcon(this['element']['firstChild']['classList'],_0x35e191['icon'],this['active']),_0x3d90d7&&_0x3d90d7['setActive'](_0x1b58de);}),DeviceUtils['isMobile']?(this['element']['ontouchstart']=_0x53fb06=>{this['element']['classList']['toggle']('toolbar-parent-menu-active'),this['element']['classList']['toggle']('toolbar-menu-active'),_0x53fb06['stopPropagation']();switch(_0x35e191['type']){case ToolbarMenuType['Button']:{_0x35e191['onClick']&&_0x35e191['onClick'](_0x44f9e0,this['toolbar'],_0x53fb06);break;}case ToolbarMenuType['ToggleButton']:{_0x35e191['onClick']&&_0x35e191['onClick'](_0x44f9e0,this['toolbar'],_0x53fb06),this['active']=!this['active'],this['toolbar']['activateMenuId']=this['menuId'],this['eventBus']['emit']('activitychange',this['active']);break;}}},this['element']['addEventListener']('touchend',()=>{_0x3d90d7&&_0x3d90d7['element']['classList']['remove']('toolbar-parent-menu-active');})):(this['element']['onclick']=_0x3e032f=>{_0x3e032f['stopPropagation']();switch(_0x35e191['type']){case ToolbarMenuType['Button']:{_0x35e191['onClick']&&_0x35e191['onClick'](_0x44f9e0,this['toolbar'],_0x3e032f);break;}case ToolbarMenuType['ToggleButton']:{_0x35e191['onClick']&&_0x35e191['onClick'](_0x44f9e0,this['toolbar'],_0x3e032f),this['active']=!this['active'],this['toolbar']['activateMenuId']=this['menuId'],this['eventBus']['emit']('activitychange',this['active']);break;}}_0x3d90d7&&_0x3d90d7['element']['classList']['remove']('toolbar-parent-menu-active');},this['element']['addEventListener']('mouseover',()=>{this['element']['classList']['toggle']('toolbar-parent-menu-active'),this['element']['classList']['add']('toolbar-menu-active');}),this['element']['addEventListener']('mouseout',()=>{this['element']['classList']['contains']('toolbar-parent-menu-active')&&this['element']['classList']['remove']('toolbar-parent-menu-active'),this['element']['classList']['remove']('toolbar-menu-active');}));}['createButton'](_0x5e25d3,_0xd3eade,_0x5a6c69){const _0x4affa5=document['createElement']('div');_0x4affa5['id']=_0xd3eade,_0x4affa5['classList']['add']('toolbar-menu'),_0x5a6c69['defaultActive']&&_0x4affa5['classList']['add']('active'),_0x5a6c69['children']&&_0x4affa5['classList']['add']('toolbar-parent-menu');const {default:_0x4ebc77='icon-new',iconFont:iconFont=IconfontClass}=_0x5a6c69['icon'];return _0x4affa5['innerHTML']='<div\x20class=\x22icon\x20'+iconFont+'\x20'+_0x4ebc77+'\x22></div>',_0x4affa5['title']=t$2(_0x5a6c69['menuName']),_0x4affa5['innerHTML']+='<span>'+_0x4affa5['title']+'</span>',_0x4affa5;}['setActive'](_0x4310c6){this['active']=_0x4310c6,_0x4310c6?this['element']['classList']['add']('toolbar-menu-active'):this['element']['classList']['remove']('toolbar-menu-active'),this['eventBus']['emit']('activitychange',this['active']);}['isActive'](){return this['active'];}}
|
|
269
|
+
|
|
270
|
+
class Viewer3dToolbarPlugin extends Plugin{constructor(_0x403d98,_0x45362b){const _0x483e02=(_0x45362b===null||_0x45362b===void 0x0?void 0x0:_0x45362b['id'])||Viewer3dToolbarPlugin['DEFAULT_ID'];super(_0x403d98,{'id':_0x483e02}),this['onLanguageChange']=()=>{this['toolbar']['refreshLocalizedLabels']();},this['cfg']=_0x45362b||{'id':_0x483e02};const _0x3d3ee3=merge({},DefaultViewer3dToolbarConfig,this['cfg']['menuConfig']),_0x4e0ee2=merge(this['cfg']['groupConfig']||[],GroupConfig);this['toolbar']=new Toolbar(_0x403d98,_0x3d3ee3,_0x4e0ee2),this['viewer']['addEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']);}['getToolbar'](){return this['toolbar'];}['setActive'](_0x59fbb4,_0x16e83a){this['toolbar']['setActive'](_0x59fbb4,_0x16e83a);}['isActive'](_0x527854){return this['toolbar']['isActive'](_0x527854);}['setVisible'](_0x2e1945){this['toolbar']['setVisible'](_0x2e1945);}['isVisible'](){return this['toolbar']['isVisible']();}['setScreenshotDownloadFileName'](_0x128ed9){this['toolbar']['setScreenshotDownloadFileName'](_0x128ed9);}['destroy'](){this['viewer']['removeEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']),super['destroy'](),this['toolbar']['destroy']();}}Viewer3dToolbarPlugin['DEFAULT_ID']='Viewer3dToolbarPlugin';
|
|
271
|
+
|
|
272
|
+
const en$1={'select':'Select\x20(Q)','move':'Move\x20(W)','rotate':'Rotate\x20(E)','scale':'Scale\x20(S)','worldSpace':'World\x20space\x20(click\x20for\x20local)','localSpace':'Local\x20space\x20(click\x20for\x20world)'};const zh$1={'select':'选择\x20(Q)','move':'移动\x20(W)','rotate':'旋转\x20(E)','scale':'缩放\x20(S)','worldSpace':'世界空间(点击切换为本地)','localSpace':'本地空间(点击切换为世界)'};const TRANSFORM_I18N_NAMESPACE='transform';registerViewerI18nNamespace(TRANSFORM_I18N_NAMESPACE,{'en':en$1,'zh':zh$1});function t$1(_0x30db8b){return i18n['t'](_0x30db8b,{'ns':TRANSFORM_I18N_NAMESPACE});}
|
|
273
|
+
|
|
274
|
+
var css_248z$1 = "#gcode-viewer-transform-plugin{align-items:center;background:hsla(0,0%,100%,.9);border:1px solid rgba(0,0,0,.1);box-shadow:0 4px 12px rgba(0,0,0,.1);display:flex;flex-direction:column;flex-wrap:nowrap;gap:0;left:8px;padding:0;pointer-events:auto;position:absolute;top:8px;user-select:none;z-index:1}.gcode-viewer-transform-divider{align-self:stretch;background:rgba(0,0,0,.1);flex-shrink:0;height:1px;margin:4px 0;min-height:1px;width:auto}.gcode-viewer-transform-btn{align-items:center;background:transparent;border:none;color:rgba(51,51,51,.62);cursor:pointer;display:inline-flex;font:inherit;height:30px;justify-content:center;margin:0;padding:0;pointer-events:auto;transition:color .12s ease,background-color .12s ease,transform .12s ease;width:30px}.gcode-viewer-transform-btn svg{display:block;flex-shrink:0}.gcode-viewer-transform-btn:hover{background:rgba(44,123,229,.1);color:#2c7be5}.gcode-viewer-transform-btn:active{transform:scale(.94)}.gcode-viewer-transform-btn.gcode-viewer-transform-active{background:rgba(44,123,229,.14);color:#2c7be5}.gcode-viewer-transform-btn:disabled{cursor:not-allowed;opacity:.38;pointer-events:none}";
|
|
275
|
+
styleInject(css_248z$1);
|
|
276
|
+
|
|
277
|
+
const ICON_SELECT='<svg\x20xmlns=\x22http://www.w3.org/2000/svg\x22\x20width=\x2220\x22\x20height=\x2220\x22\x20viewBox=\x220\x200\x2020\x2020\x22\x20aria-hidden=\x22true\x22><path\x20d=\x22M4,2\x20L4,16\x20L7.5,12\x20L10.5,18.5\x20L12.5,17.5\x20L9.5,11\x20L15,11\x20Z\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x221.2\x22\x20stroke-linejoin=\x22round\x22/></svg>',ICON_TRANSLATE='<svg\x20xmlns=\x22http://www.w3.org/2000/svg\x22\x20width=\x2220\x22\x20height=\x2220\x22\x20viewBox=\x220\x200\x2020\x2020\x22\x20aria-hidden=\x22true\x22><path\x20d=\x22M2,10\x20L18,10\x20M10,2\x20L10,18\x20M4,8\x20L2,10\x20L4,12\x20M16,8\x20L18,10\x20L\x2016,12\x20M8,4\x20L10,2\x20L12,4\x20M8,16\x20L10,18\x20L12,16\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x221\x22/></svg>',ICON_ROTATE='<svg\x20xmlns=\x22http://www.w3.org/2000/svg\x22\x20width=\x2220\x22\x20height=\x2220\x22\x20viewBox=\x220\x200\x2020\x2020\x22\x20aria-hidden=\x22true\x22><path\x20d=\x22M2,10\x20A\x208\x208\x20150\x200\x201\x2017\x206\x20M18,10\x20A\x208\x208\x20150\x200\x201\x203\x2014\x20M1,7\x20L2,10\x20L4,7.5\x20M19,13\x20L18,10\x20L16,12.5\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x221\x22/></svg>',ICON_SCALE='<svg\x20xmlns=\x22http://www.w3.org/2000/svg\x22\x20width=\x2220\x22\x20height=\x2220\x22\x20viewBox=\x220\x200\x2020\x2020\x22\x20aria-hidden=\x22true\x22><path\x20d=\x22M10,2\x20L18,2\x20L18,10\x20M\x2018,2\x20L2,18\x20L10,18\x20M2,18\x20L2,\x2010\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x221\x22/></svg>',ICON_WORLD_SPACE='<svg\x20xmlns=\x22http://www.w3.org/2000/svg\x22\x20width=\x2220\x22\x20height=\x2220\x22\x20viewBox=\x220\x200\x2020\x2020\x22\x20aria-hidden=\x22true\x22><path\x20d=\x22M2,2\x20L2,18\x20L18,18\x20M2,18\x20L9,9\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x221\x22/><text\x20x=\x2220\x22\x20y=\x221.5\x22\x20text-anchor=\x22end\x22\x20dominant-baseline=\x22hanging\x22\x20font-size=\x228\x22\x20font-family=\x22system-ui,sans-serif\x22\x20font-weight=\x22700\x22\x20fill=\x22currentColor\x22>W</text></svg>',ICON_LOCAL_SPACE='<svg\x20xmlns=\x22http://www.w3.org/2000/svg\x22\x20width=\x2220\x22\x20height=\x2220\x22\x20viewBox=\x220\x200\x2020\x2020\x22\x20aria-hidden=\x22true\x22><path\x20d=\x22M9,10\x20A\x201\x201\x20180\x200\x201\x2011\x2010\x20M11,10\x20A\x201\x201\x20180\x200\x201\x209\x2010\x20M9,10\x20L1,10\x20M10.4,9.2\x20L15,2\x20M10.4,10.8\x20L15,18\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x221\x22/><text\x20x=\x221\x22\x20y=\x220.4\x22\x20text-anchor=\x22start\x22\x20dominant-baseline=\x22hanging\x22\x20font-size=\x228\x22\x20font-family=\x22system-ui,sans-serif\x22\x20font-weight=\x22700\x22\x20fill=\x22currentColor\x22>L</text></svg>';class TransformPlugin extends Plugin{constructor(_0x180dae,_0x367361={}){var _0x2d4d47;const _0x4c3df8=(_0x2d4d47=_0x367361['id'])!==null&&_0x2d4d47!==void 0x0?_0x2d4d47:TransformPlugin['DEFAULT_ID'];super(_0x180dae,Object['assign'](Object['assign']({},_0x367361),{'id':_0x4c3df8})),this['enabled']=!![],this['inSelectMode']=!![],this['onObjectSelected']=_0x5b3949=>{if(!this['enabled'])return;if(!_0x5b3949||!(_0x5b3949 instanceof THREE['Object3D']))return;!this['inSelectMode']&&this['viewer3d']['attachTransformGizmo'](_0x5b3949),this['refreshModeButtons'](),this['refreshSpaceButton']();},this['onObjectDeselected']=()=>{this['viewer3d']['detachTransformGizmo']();},this['onLanguageChange']=()=>{this['applyLocalizedChrome']();const _0x222e66=this['viewer3d']['getHighlightedObject']();_0x222e66&&!this['inSelectMode']&&this['viewer3d']['attachTransformGizmo'](_0x222e66),this['viewer3d']['enableRender']();};if(!(_0x180dae instanceof Viewer3d))throw new Error('[TransformPlugin]\x20Requires\x20Viewer3d');this['viewer3d']=_0x180dae,this['cfg']=_0x367361,this['mount'](),this['viewer3d']['addEventListener'](ViewerEvent['ObjectSelected'],this['onObjectSelected']),this['viewer3d']['addEventListener'](ViewerEvent['ObjectDeselected'],this['onObjectDeselected']),this['viewer3d']['addEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']);}['mount'](){var _0x21ab36;let _0x3bd7f5=null;this['cfg']['containerId']&&(_0x3bd7f5=document['getElementById'](this['cfg']['containerId']));!_0x3bd7f5&&(_0x3bd7f5=(_0x21ab36=this['viewer3d']['widgetContainer'])!==null&&_0x21ab36!==void 0x0?_0x21ab36:this['viewer3d']['viewerContainer']);const _0x734024=document['createElement']('div');_0x734024['id']='gcode-viewer-transform-plugin';const _0x436a45=(_0x3922d4,_0x32145)=>{const _0x2b3b4b=document['createElement']('button');return _0x2b3b4b['type']='button',_0x2b3b4b['className']='gcode-viewer-transform-btn',_0x2b3b4b['innerHTML']=_0x3922d4,_0x2b3b4b['title']=t$1(_0x32145),_0x2b3b4b;};this['btnSelect']=_0x436a45(ICON_SELECT,'select'),this['btnTranslate']=_0x436a45(ICON_TRANSLATE,'move'),this['btnRotate']=_0x436a45(ICON_ROTATE,'rotate'),this['btnScale']=_0x436a45(ICON_SCALE,'scale'),this['btnSpace']=_0x436a45(ICON_WORLD_SPACE,'worldSpace'),this['btnSelect']['onclick']=()=>this['applySelectMode'](),this['btnTranslate']['onclick']=()=>this['applyMode'](TransformMode['Translate']),this['btnRotate']['onclick']=()=>this['applyMode'](TransformMode['Rotate']),this['btnScale']['onclick']=()=>this['applyMode'](TransformMode['Scale']),this['btnSpace']['onclick']=()=>this['toggleSpace']();const _0x198733=document['createElement']('div');_0x198733['className']='gcode-viewer-transform-divider',_0x734024['appendChild'](this['btnSelect']),_0x734024['appendChild'](this['btnTranslate']),_0x734024['appendChild'](this['btnRotate']),_0x734024['appendChild'](this['btnScale']),_0x734024['appendChild'](_0x198733),_0x734024['appendChild'](this['btnSpace']),_0x3bd7f5['appendChild'](_0x734024),this['root']=_0x734024,this['viewer3d']['setTransformGizmoCallbacks']({'onTransformModeChange':()=>{this['refreshModeButtons']();}}),this['applyLocalizedChrome']();}['applyLocalizedChrome'](){const _0xbcd87b=[[this['btnSelect'],'select'],[this['btnTranslate'],'move'],[this['btnRotate'],'rotate'],[this['btnScale'],'scale']];_0xbcd87b['forEach'](([_0x4da6e5,_0x55ccf3])=>{_0x4da6e5&&(_0x4da6e5['title']=t$1(_0x55ccf3));}),this['refreshModeButtons'](),this['refreshSpaceButton']();}['applySelectMode'](){this['inSelectMode']=!![],this['viewer3d']['detachTransformGizmo'](),this['refreshModeButtons'](),this['viewer3d']['enableRender']();}['applyMode'](_0x457159){this['inSelectMode']=![];const _0x4ef8cf=this['viewer3d']['getHighlightedObject']();_0x4ef8cf&&this['viewer3d']['attachTransformGizmo'](_0x4ef8cf),this['viewer3d']['setTransformMode'](_0x457159),this['refreshModeButtons'](),this['viewer3d']['enableRender']();}['toggleSpace'](){var _0xd27ce7;const _0x4a3386=(_0xd27ce7=this['viewer3d']['getTransformSpace']())!==null&&_0xd27ce7!==void 0x0?_0xd27ce7:DefaultGizmoCoordinateSpace,_0x1b5ae9=_0x4a3386===CoordinateSpace['World']?CoordinateSpace['Local']:CoordinateSpace['World'];this['viewer3d']['setTransformSpace'](_0x1b5ae9),this['refreshSpaceButton'](),this['viewer3d']['enableRender']();}['refreshSpaceButton'](){var _0x2e8a35;if(!this['btnSpace'])return;const _0x1d0343=(_0x2e8a35=this['viewer3d']['getTransformSpace']())!==null&&_0x2e8a35!==void 0x0?_0x2e8a35:DefaultGizmoCoordinateSpace;_0x1d0343===CoordinateSpace['World']?(this['btnSpace']['innerHTML']=ICON_WORLD_SPACE,this['btnSpace']['title']=t$1('worldSpace')):(this['btnSpace']['innerHTML']=ICON_LOCAL_SPACE,this['btnSpace']['title']=t$1('localSpace'));}['refreshModeButtons'](){var _0x3bf4db,_0x559bb9,_0x49ffe9,_0x31d915;const _0x5706d4=this['viewer3d']['getTransformMode']();(_0x3bf4db=this['btnSelect'])===null||_0x3bf4db===void 0x0?void 0x0:_0x3bf4db['classList']['toggle']('gcode-viewer-transform-active',this['inSelectMode']),(_0x559bb9=this['btnTranslate'])===null||_0x559bb9===void 0x0?void 0x0:_0x559bb9['classList']['toggle']('gcode-viewer-transform-active',!this['inSelectMode']&&_0x5706d4===TransformMode['Translate']),(_0x49ffe9=this['btnRotate'])===null||_0x49ffe9===void 0x0?void 0x0:_0x49ffe9['classList']['toggle']('gcode-viewer-transform-active',!this['inSelectMode']&&_0x5706d4===TransformMode['Rotate']),(_0x31d915=this['btnScale'])===null||_0x31d915===void 0x0?void 0x0:_0x31d915['classList']['toggle']('gcode-viewer-transform-active',!this['inSelectMode']&&_0x5706d4===TransformMode['Scale']);}['setEnabled'](_0x4b44d6){this['enabled']=_0x4b44d6;if(this['enabled']){const _0x418675=this['viewer3d']['getHighlightedObject']();_0x418675&&!this['inSelectMode']&&this['viewer3d']['attachTransformGizmo'](_0x418675),this['refreshModeButtons'](),this['refreshSpaceButton']();}else this['viewer3d']['detachTransformGizmo']();this['viewer3d']['enableRender']();}['isEnabled'](){return this['enabled'];}['destroy'](){var _0x3120d2;this['viewer3d']['removeEventListener'](ViewerEvent['ObjectSelected'],this['onObjectSelected']),this['viewer3d']['removeEventListener'](ViewerEvent['ObjectDeselected'],this['onObjectDeselected']),this['viewer3d']['removeEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']),this['viewer3d']['detachTransformGizmo'](),this['viewer3d']['getCameraManager']()['enableControl'](!![]),(_0x3120d2=this['root'])===null||_0x3120d2===void 0x0?void 0x0:_0x3120d2['remove'](),this['root']=undefined,super['destroy']();}}TransformPlugin['DEFAULT_ID']='TransformPlugin';
|
|
278
|
+
|
|
279
|
+
var css_248z = "#gcode-viewer-viewCube{height:150px;pointer-events:auto;position:absolute;right:10px;top:10px;width:150px;z-index:1}#gcode-viewer-viewCube.gcode-viewer-viewCube--bottom-left{bottom:10px;left:10px;right:auto;top:auto}";
|
|
280
|
+
styleInject(css_248z);
|
|
281
|
+
|
|
282
|
+
const en={'front':'Front','back':'Back','top':'Top','bottom':'Bottom','left':'Left','right':'Right'};const zh={'front':'前','back':'后','top':'上','bottom':'下','left':'左','right':'右'};const VIEW_CUBE_I18N_NAMESPACE='viewCube';registerViewerI18nNamespace(VIEW_CUBE_I18N_NAMESPACE,{'en':en,'zh':zh});function t(_0x1c3ed7){return i18n['t'](_0x1c3ed7,{'ns':VIEW_CUBE_I18N_NAMESPACE});}
|
|
283
|
+
|
|
284
|
+
const gradient=(_0x8fc792,_0x405893,_0x8e702d)=>{const _0x510238=new THREE['Color'](_0x8fc792),_0x2313a4=new THREE['Color'](_0x405893);return _0x510238['lerp'](_0x2313a4,_0x8e702d)['getHex']();};var ViewCubeElement;(function(_0x2a8651){_0x2a8651['TopFace']='TopFace',_0x2a8651['FrontFace']='FrontFace',_0x2a8651['RightFace']='RightFace',_0x2a8651['BackFace']='BackFace',_0x2a8651['LeftFace']='LeftFace',_0x2a8651['BottomFace']='BottomFace',_0x2a8651['TopFrontEdge']='TopFrontEdge',_0x2a8651['TopRightEdge']='TopRightEdge',_0x2a8651['TopBackEdge']='TopBackEdge',_0x2a8651['TopLeftEdge']='TopLeftEdge',_0x2a8651['FrontRightEdge']='FrontRightEdge',_0x2a8651['BackRightEdge']='BackRightEdge',_0x2a8651['BackLeftEdge']='BackLeftEdge',_0x2a8651['FrontLeftEdge']='FrontLeftEdge',_0x2a8651['BottomFrontEdge']='BottomFrontEdge',_0x2a8651['BottomRightEdge']='BottomRightEdge',_0x2a8651['BottomBackEdge']='BottomBackEdge',_0x2a8651['BottomLeftEdge']='BottomLeftEdge',_0x2a8651['TopFrontRightCorner']='TopFrontRightCorner',_0x2a8651['TopBackRightCorner']='TopBackRightCorner',_0x2a8651['TopBackLeftCorner']='TopBackLeftCorner',_0x2a8651['TopFrontLeftCorner']='TopFrontLeftCorner',_0x2a8651['BottomFrontRightCorner']='BottomFrontRightCorner',_0x2a8651['BottomBackRightCorner']='BottomBackRightCorner',_0x2a8651['BottomBackLeftCorner']='BottomBackLeftCorner',_0x2a8651['BottomFrontLeftCorner']='BottomFrontLeftCorner';}(ViewCubeElement||(ViewCubeElement={})));var Rotation;(function(_0x363c2a){_0x363c2a[_0x363c2a['Rotate0']=0x0]='Rotate0',_0x363c2a[_0x363c2a['Rotate90']=Math['PI']/0x2]='Rotate90',_0x363c2a[_0x363c2a['Rotate180']=Math['PI']]='Rotate180',_0x363c2a[_0x363c2a['Rotate270']=Math['PI']*1.5]='Rotate270';}(Rotation||(Rotation={})));const AxisX=new THREE['Vector3'](0x1,0x0,0x0),AxisY=new THREE['Vector3'](0x0,0x1,0x0),AxisZ=new THREE['Vector3'](0x0,0x0,0x1),viewCubeFaces={'right':{'text':'right','name':ViewCubeElement['RightFace'],'position':new THREE['Vector3'](0x32,0x0,0x0),'rotation':{'axis':AxisY,'rad':Rotation['Rotate90']}},'left':{'text':'left','name':ViewCubeElement['LeftFace'],'position':new THREE['Vector3'](-0x32,0x0,0x0),'rotation':{'axis':AxisY,'rad':Rotation['Rotate270']}},'top':{'text':'top','name':ViewCubeElement['TopFace'],'position':new THREE['Vector3'](0x0,0x32,0x0),'rotation':{'axis':AxisX,'rad':Rotation['Rotate270']}},'bottom':{'text':'bottom','name':ViewCubeElement['BottomFace'],'position':new THREE['Vector3'](0x0,-0x32,0x0),'rotation':{'axis':AxisX,'rad':Rotation['Rotate90']}},'front':{'text':'front','name':ViewCubeElement['FrontFace'],'position':new THREE['Vector3'](0x0,0x0,0x32),'rotation':{'axis':AxisY,'rad':Rotation['Rotate0']}},'back':{'text':'back','name':ViewCubeElement['BackFace'],'position':new THREE['Vector3'](0x0,0x0,-0x32),'rotation':{'axis':AxisY,'rad':Rotation['Rotate180']}}};class ViewCube extends THREE['Object3D']{constructor(_0x391175){super(),this['name']='ViewCube',this['AXIS_COLOR_X']=0xff0000,this['AXIS_COLOR_Y']=0xff00,this['AXIS_COLOR_Z']=0xff,this['FACE_BACKGROUND_COLOR']=0xffffff,this['FACE_HOVER_BACKGROUND_COLOR']=0x8080d0,this['INNER_CUBE_WIDTH']=0x50,this['OUTER_CUBE_WIDTH']=0x64,this['CORNER_WIDTH']=(this['OUTER_CUBE_WIDTH']-this['INNER_CUBE_WIDTH'])/0x2,this['AXIS_LENGTH']=this['OUTER_CUBE_WIDTH']*1.15,this['EDGE_COLOUR']=0xd0d0d0,this['EDGE_OPACITY']=0.2,this['EDGE_SIZE']=new THREE['Vector2'](this['INNER_CUBE_WIDTH'],this['CORNER_WIDTH']),this['CORNER_COLOR']=0xcacbd4,this['CORNER_OPACITY']=0x1,this['faces']=[],this['dirty']=![],this['showAxes']=(_0x391175===null||_0x391175===void 0x0?void 0x0:_0x391175['showAxes'])||!![],this['lineColor']=(_0x391175===null||_0x391175===void 0x0?void 0x0:_0x391175['lineColor'])||0x90a0a0,this['init']();}['init'](){this['showAxes']&&this['add'](this['createAxes']());const _0x3185ca=new THREE['Group']();_0x3185ca['name']='ViewCubeBody',_0x3185ca['rotateX'](Math['PI']/0x2),_0x3185ca['add'](this['createViewCubeFaces']()),_0x3185ca['add'](this['createViewCubeEdges']()),_0x3185ca['add'](this['createViewCubeCorners']()),this['add'](_0x3185ca);}['createAxes'](){const _0x386952=this['OUTER_CUBE_WIDTH']/0x2+0x1,_0x3c5906=new THREE['Object3D'](),_0x182af4=new THREE['Vector3'](-_0x386952,-_0x386952,-_0x386952),_0x2724ef=new THREE['Vector3'](0x1,0x0,0x0),_0x2e51eb=new THREE['Vector3'](0x0,0x1,0x0),_0x272d21=new THREE['Vector3'](0x0,0x0,0x1),_0x9af9e6=this['AXIS_LENGTH']/0xc,_0x328fc8=this['AXIS_LENGTH']/0xe,_0x3f6c77=new THREE['ArrowHelper'](_0x2724ef,_0x182af4,this['AXIS_LENGTH'],this['AXIS_COLOR_X'],_0x9af9e6,_0x328fc8),_0x2d7710=new THREE['ArrowHelper'](_0x2e51eb,_0x182af4,this['AXIS_LENGTH'],this['AXIS_COLOR_Y'],_0x9af9e6,_0x328fc8),_0x559c69=new THREE['ArrowHelper'](_0x272d21,_0x182af4,this['AXIS_LENGTH'],this['AXIS_COLOR_Z'],_0x9af9e6,_0x328fc8);return _0x3c5906['add'](_0x3f6c77,_0x2d7710,_0x559c69),_0x3c5906;}['createViewCubeFaces'](){const _0xe68706=new THREE['Object3D'](),_0x36730a=[],_0x296153=new THREE['MeshStandardMaterial']({'color':this['FACE_BACKGROUND_COLOR'],'opacity':0x0,'transparent':!![]}),_0xa7a4ef=Object['keys'](viewCubeFaces);_0xa7a4ef['forEach'](_0x510c13=>{const _0x168296=viewCubeFaces[_0x510c13],_0x33e158=t(''+_0x168296['text'])||_0x168296['text'],_0x17df0c=new TextTexture({'text':_0x33e158,'fontSize':0x12,'color':'#333333','backgroundColor':this['FACE_BACKGROUND_COLOR'],'padding':0.8,'fontWeight':'bold'});_0x17df0c['redrew']();const _0x4c6f9f=new THREE['MeshStandardMaterial']({'color':this['FACE_BACKGROUND_COLOR'],'map':_0x17df0c,'opacity':0x1,'transparent':!![]});_0x36730a['push'](_0x4c6f9f);const _0x159e68=this['createViewCubeFace'](_0x168296['name'],_0x296153,_0x168296['position'],_0x168296['rotation']);_0x159e68['layers']['enableAll'](),_0x159e68['userData']={'material':_0x4c6f9f,'tick':0x0,'translateTick':0x0},this['faces']['push'](_0x159e68);}),_0xe68706['add'](...this['faces']);const _0x325558=new THREE['BoxGeometry'](this['INNER_CUBE_WIDTH'],this['INNER_CUBE_WIDTH'],this['INNER_CUBE_WIDTH']),_0x4d2736=new THREE['Mesh'](_0x325558,_0x36730a);this['innerViewCubeMesh']=_0x4d2736,_0xe68706['add'](_0x4d2736);const _0x40f861=new THREE['EdgesGeometry'](new THREE['BoxGeometry'](this['OUTER_CUBE_WIDTH'],this['OUTER_CUBE_WIDTH'],this['OUTER_CUBE_WIDTH'])),_0x3e63fe=new THREE['MeshBasicMaterial']({'color':this['lineColor']}),_0x3f228c=new THREE['LineSegments'](_0x40f861,_0x3e63fe);return _0xe68706['add'](_0x3f228c),_0xe68706['position']['set'](0x0,0x0,0x0),_0xe68706;}['createViewCubeFace'](_0x1a849e,_0x2dc7c7,_0x173344,_0x318815){const _0x3c0fc8=new THREE['PlaneGeometry'](this['INNER_CUBE_WIDTH'],this['INNER_CUBE_WIDTH']),_0x46f811=new THREE['Mesh'](_0x3c0fc8,_0x2dc7c7);return _0x46f811['name']=_0x1a849e,_0x46f811['rotateOnAxis'](_0x318815['axis'],_0x318815['rad']),_0x46f811['position']['copy'](_0x173344),_0x46f811;}['createViewCubeEdges'](){const _0x6a5919=new THREE['Object3D'](),_0xcb68d4=this['OUTER_CUBE_WIDTH']/0x2+0x1,_0x1bf24f=this['createEdge'](ViewCubeElement['TopFrontEdge'],new THREE['Vector3'](0x0,_0xcb68d4,_0xcb68d4),[{'axis':AxisZ,'rad':Rotation['Rotate180']}]),_0x5bea71=this['createEdge'](ViewCubeElement['TopRightEdge'],new THREE['Vector3'](_0xcb68d4,_0xcb68d4,0x0),[{'axis':AxisX,'rad':Rotation['Rotate180']},{'axis':AxisY,'rad':Rotation['Rotate90']},{'axis':AxisZ,'rad':Rotation['Rotate0']}]),_0x5cf72b=this['createEdge'](ViewCubeElement['TopBackEdge'],new THREE['Vector3'](0x0,_0xcb68d4,-_0xcb68d4),[{'axis':AxisZ,'rad':Rotation['Rotate180']},{'axis':AxisY,'rad':Rotation['Rotate180']}]),_0x586544=this['createEdge'](ViewCubeElement['TopLeftEdge'],new THREE['Vector3'](-_0xcb68d4,_0xcb68d4,0x0),[{'axis':AxisX,'rad':Rotation['Rotate90']},{'axis':AxisY,'rad':Rotation['Rotate180']},{'axis':AxisZ,'rad':Rotation['Rotate90']}]),_0x2df823=this['createEdge'](ViewCubeElement['BottomFrontEdge'],new THREE['Vector3'](0x0,-_0xcb68d4,_0xcb68d4),[{'axis':AxisZ,'rad':Rotation['Rotate0']}]),_0x3e06dc=this['createEdge'](ViewCubeElement['BottomRightEdge'],new THREE['Vector3'](_0xcb68d4,-_0xcb68d4,0x0),[{'axis':AxisX,'rad':Rotation['Rotate90']},{'axis':AxisY,'rad':Rotation['Rotate0']},{'axis':AxisZ,'rad':Rotation['Rotate90']}]),_0x16d08b=this['createEdge'](ViewCubeElement['BottomBackEdge'],new THREE['Vector3'](0x0,-_0xcb68d4,-_0xcb68d4),[{'axis':AxisZ,'rad':Rotation['Rotate0']},{'axis':AxisY,'rad':Rotation['Rotate180']}]),_0x19d226=this['createEdge'](ViewCubeElement['BottomLeftEdge'],new THREE['Vector3'](-_0xcb68d4,-_0xcb68d4,0x0),[{'axis':AxisX,'rad':Rotation['Rotate90']},{'axis':AxisY,'rad':Rotation['Rotate270']},{'axis':AxisZ,'rad':Rotation['Rotate90']}]),_0x4a836b=this['createEdge'](ViewCubeElement['FrontRightEdge'],new THREE['Vector3'](_0xcb68d4,0x0,_0xcb68d4),[{'axis':AxisZ,'rad':Rotation['Rotate90']}]),_0x23658a=this['createEdge'](ViewCubeElement['BackRightEdge'],new THREE['Vector3'](_0xcb68d4,0x0,-_0xcb68d4),[{'axis':AxisZ,'rad':Rotation['Rotate90']},{'axis':AxisY,'rad':Rotation['Rotate180']}]),_0x379d55=this['createEdge'](ViewCubeElement['BackLeftEdge'],new THREE['Vector3'](-_0xcb68d4,0x0,-_0xcb68d4),[{'axis':AxisZ,'rad':Rotation['Rotate270']},{'axis':AxisY,'rad':Rotation['Rotate180']}]),_0x45a243=this['createEdge'](ViewCubeElement['FrontLeftEdge'],new THREE['Vector3'](-_0xcb68d4,0x0,_0xcb68d4),[{'axis':AxisZ,'rad':Rotation['Rotate270']}]);return _0x6a5919['add'](_0x1bf24f),_0x6a5919['add'](_0x5bea71),_0x6a5919['add'](_0x5cf72b),_0x6a5919['add'](_0x586544),_0x6a5919['add'](_0x2df823),_0x6a5919['add'](_0x3e06dc),_0x6a5919['add'](_0x16d08b),_0x6a5919['add'](_0x19d226),_0x6a5919['add'](_0x4a836b),_0x6a5919['add'](_0x23658a),_0x6a5919['add'](_0x379d55),_0x6a5919['add'](_0x45a243),_0x6a5919;}['createEdge'](_0x5ca68b,_0x152894,_0xc2c73f){const _0x5e22b0=new THREE['Object3D'](),_0x5bd7ef=new THREE['PlaneGeometry'](this['EDGE_SIZE']['x'],this['EDGE_SIZE']['y']),_0x484134=new THREE['MeshStandardMaterial']({'color':this['EDGE_COLOUR'],'opacity':this['EDGE_OPACITY'],'transparent':!![]}),_0x898586={'tick':0x0},_0x326075=new THREE['Mesh'](_0x5bd7ef,_0x484134);_0x326075['name']=_0x5ca68b,_0x326075['userData']=_0x898586,_0x326075['position']['setY'](this['EDGE_SIZE']['y']/0x2),_0x326075['layers']['enableAll']();const _0x18924d=new THREE['Mesh'](_0x5bd7ef,_0x484134);return _0x18924d['name']=_0x5ca68b,_0x18924d['userData']=_0x898586,_0x18924d['position']['setZ'](-this['EDGE_SIZE']['y']/0x2),_0x18924d['rotateOnAxis'](new THREE['Vector3'](0x1,0x0,0x0),Math['PI']/0x2),_0x18924d['layers']['enableAll'](),_0x5e22b0['add'](_0x326075),_0x5e22b0['add'](_0x18924d),_0x5e22b0['position']['copy'](_0x152894),_0xc2c73f['forEach'](_0x370966=>{_0x5e22b0['rotateOnAxis'](_0x370966['axis'],_0x370966['rad']);}),_0x5e22b0;}['createViewCubeCorners'](){const _0x2e803f=new THREE['Object3D'](),_0x58440c=this['OUTER_CUBE_WIDTH']/0x2+0x1,_0x1f88d7=this['createCorner'](ViewCubeElement['TopFrontLeftCorner'],new THREE['Vector3'](-_0x58440c,_0x58440c,_0x58440c),[{'axis':AxisZ,'rad':Rotation['Rotate270']}]),_0x1e3491=this['createCorner'](ViewCubeElement['TopFrontRightCorner'],new THREE['Vector3'](_0x58440c,_0x58440c,_0x58440c),[{'axis':AxisZ,'rad':Rotation['Rotate180']}]),_0x26c154=this['createCorner'](ViewCubeElement['TopBackRightCorner'],new THREE['Vector3'](_0x58440c,_0x58440c,-_0x58440c),[{'axis':AxisX,'rad':Rotation['Rotate90']},{'axis':AxisY,'rad':Rotation['Rotate180']},{'axis':AxisZ,'rad':Rotation['Rotate0']}]),_0xaa50f8=this['createCorner'](ViewCubeElement['TopBackLeftCorner'],new THREE['Vector3'](-_0x58440c,_0x58440c,-_0x58440c),[{'axis':AxisX,'rad':Rotation['Rotate90']},{'axis':AxisY,'rad':Rotation['Rotate180']},{'axis':AxisZ,'rad':Rotation['Rotate90']}]),_0x488e8a=this['createCorner'](ViewCubeElement['BottomFrontLeftCorner'],new THREE['Vector3'](-_0x58440c,-_0x58440c,_0x58440c),[{'axis':AxisZ,'rad':Rotation['Rotate0']}]),_0x1147c3=this['createCorner'](ViewCubeElement['BottomFrontRightCorner'],new THREE['Vector3'](_0x58440c,-_0x58440c,_0x58440c),[{'axis':AxisZ,'rad':Rotation['Rotate90']}]),_0x55ca55=this['createCorner'](ViewCubeElement['BottomBackRightCorner'],new THREE['Vector3'](_0x58440c,-_0x58440c,-_0x58440c),[{'axis':AxisX,'rad':Rotation['Rotate0']},{'axis':AxisY,'rad':Rotation['Rotate180']},{'axis':AxisZ,'rad':Rotation['Rotate0']}]),_0x2c825f=this['createCorner'](ViewCubeElement['BottomBackLeftCorner'],new THREE['Vector3'](-_0x58440c,-_0x58440c,-_0x58440c),[{'axis':AxisX,'rad':Rotation['Rotate0']},{'axis':AxisY,'rad':Rotation['Rotate180']},{'axis':AxisZ,'rad':Rotation['Rotate90']}]);return _0x2e803f['add'](_0x1f88d7),_0x2e803f['add'](_0x1e3491),_0x2e803f['add'](_0x26c154),_0x2e803f['add'](_0xaa50f8),_0x2e803f['add'](_0x488e8a),_0x2e803f['add'](_0x1147c3),_0x2e803f['add'](_0x55ca55),_0x2e803f['add'](_0x2c825f),_0x2e803f;}['createCorner'](_0x3e648f,_0xe3ea63,_0x378d1d){const _0x4c73cc=new THREE['Object3D'](),_0x454ca2=new THREE['PlaneGeometry'](this['CORNER_WIDTH'],this['CORNER_WIDTH']),_0xb0e979=new THREE['MeshStandardMaterial']({'color':this['CORNER_COLOR'],'opacity':this['CORNER_OPACITY'],'transparent':!![]}),_0x64dc45={'tick':0x0},_0x2f62bf=new THREE['Mesh'](_0x454ca2,_0xb0e979);_0x2f62bf['name']=_0x3e648f,_0x2f62bf['userData']=_0x64dc45,_0x2f62bf['position']['set'](this['CORNER_WIDTH']/0x2,this['CORNER_WIDTH']/0x2,0x0),_0x2f62bf['layers']['enableAll']();const _0x3b8fa0=new THREE['Mesh'](_0x454ca2,_0xb0e979);_0x3b8fa0['name']=_0x3e648f,_0x3b8fa0['userData']=_0x64dc45,_0x3b8fa0['position']['set'](this['CORNER_WIDTH']/0x2,0x0,-this['CORNER_WIDTH']/0x2),_0x3b8fa0['rotateOnAxis'](new THREE['Vector3'](0x1,0x0,0x0),Math['PI']/0x2),_0x3b8fa0['layers']['enableAll']();const _0x6ca48e=new THREE['Mesh'](_0x454ca2,_0xb0e979);return _0x6ca48e['name']=_0x3e648f,_0x6ca48e['userData']=_0x64dc45,_0x6ca48e['position']['set'](0x0,this['CORNER_WIDTH']/0x2,-this['CORNER_WIDTH']/0x2),_0x6ca48e['rotateOnAxis'](new THREE['Vector3'](0x0,0x1,0x0),-Math['PI']/0x2),_0x6ca48e['layers']['enableAll'](),_0x4c73cc['add'](_0x2f62bf),_0x4c73cc['add'](_0x3b8fa0),_0x4c73cc['add'](_0x6ca48e),_0x4c73cc['position']['copy'](_0xe3ea63),_0x378d1d['forEach'](_0x2249e7=>{_0x4c73cc['rotateOnAxis'](_0x2249e7['axis'],_0x2249e7['rad']);}),_0x4c73cc;}['getBBox'](){const _0x3e4609=new THREE['Box3']();return _0x3e4609['setFromObject'](this),_0x3e4609;}static['toZUpDirection'](_0xdffc8f,_0x530139,_0x57bd19){return new THREE['Vector3'](_0xdffc8f,-_0x57bd19,_0x530139);}['getDirectionByElement'](_0x15ebd2){switch(_0x15ebd2){case ViewCubeElement['TopFace']:return ViewCube['toZUpDirection'](0x0,0x1,0x0);case ViewCubeElement['BottomFace']:return ViewCube['toZUpDirection'](0x0,-0x1,0x0);case ViewCubeElement['FrontFace']:return ViewCube['toZUpDirection'](0x0,0x0,0x1);case ViewCubeElement['BackFace']:return ViewCube['toZUpDirection'](0x0,0x0,-0x1);case ViewCubeElement['LeftFace']:return ViewCube['toZUpDirection'](-0x1,0x0,0x0);case ViewCubeElement['RightFace']:return ViewCube['toZUpDirection'](0x1,0x0,0x0);case ViewCubeElement['TopFrontEdge']:return ViewCube['toZUpDirection'](0x0,0x1,0x1);case ViewCubeElement['TopRightEdge']:return ViewCube['toZUpDirection'](0x1,0x1,0x0);case ViewCubeElement['TopBackEdge']:return ViewCube['toZUpDirection'](0x0,0x1,-0x1);case ViewCubeElement['TopLeftEdge']:return ViewCube['toZUpDirection'](-0x1,0x1,0x0);case ViewCubeElement['BottomFrontEdge']:return ViewCube['toZUpDirection'](0x0,-0x1,0x1);case ViewCubeElement['BottomRightEdge']:return ViewCube['toZUpDirection'](0x1,-0x1,0x0);case ViewCubeElement['BottomBackEdge']:return ViewCube['toZUpDirection'](0x0,-0x1,-0x1);case ViewCubeElement['BottomLeftEdge']:return ViewCube['toZUpDirection'](-0x1,-0x1,0x0);case ViewCubeElement['FrontLeftEdge']:return ViewCube['toZUpDirection'](-0x1,0x0,0x1);case ViewCubeElement['FrontRightEdge']:return ViewCube['toZUpDirection'](0x1,0x0,0x1);case ViewCubeElement['BackRightEdge']:return ViewCube['toZUpDirection'](0x1,0x0,-0x1);case ViewCubeElement['BackLeftEdge']:return ViewCube['toZUpDirection'](-0x1,0x0,-0x1);case ViewCubeElement['TopFrontLeftCorner']:return ViewCube['toZUpDirection'](-0x1,0x1,0x1);case ViewCubeElement['TopFrontRightCorner']:return ViewCube['toZUpDirection'](0x1,0x1,0x1);case ViewCubeElement['TopBackRightCorner']:return ViewCube['toZUpDirection'](0x1,0x1,-0x1);case ViewCubeElement['TopBackLeftCorner']:return ViewCube['toZUpDirection'](-0x1,0x1,-0x1);case ViewCubeElement['BottomFrontLeftCorner']:return ViewCube['toZUpDirection'](-0x1,-0x1,0x1);case ViewCubeElement['BottomFrontRightCorner']:return ViewCube['toZUpDirection'](0x1,-0x1,0x1);case ViewCubeElement['BottomBackRightCorner']:return ViewCube['toZUpDirection'](0x1,-0x1,-0x1);case ViewCubeElement['BottomBackLeftCorner']:return ViewCube['toZUpDirection'](-0x1,-0x1,-0x1);}return undefined;}['update'](){this['traverse'](_0x442753=>{_0x442753 instanceof THREE['Mesh']&&this['updateViewCube'](_0x442753);});}['updateViewCube'](_0xed55d3){this['updateMeshTick'](_0xed55d3);const _0x274ba7=_0xed55d3['userData']['tick'];if(_0xed55d3['name']['indexOf']('Face')>-0x1){const _0x15915a=_0xed55d3['userData']['material'];if(_0x15915a){const _0x514471=gradient(this['FACE_BACKGROUND_COLOR'],this['FACE_HOVER_BACKGROUND_COLOR'],_0x274ba7);_0x274ba7>0x0&&_0x15915a['color']['set'](_0x514471);}if(this['innerViewCubeMesh']){this['updateMeshTick'](_0xed55d3,'translateTick',0x2);const _0x35f163=_0xed55d3['position']['clone']()['normalize'](),_0x4a32f6=Math['max'](_0xed55d3['userData']['translateTick']*0x2-0x2,0x0);_0x35f163['multiplyScalar'](_0x4a32f6*this['CORNER_WIDTH']/0x2),_0x4a32f6>0x0&&this['innerViewCubeMesh']['position']['copy'](_0x35f163);}}else {if(_0xed55d3['name']['indexOf']('Edge')>-0x1){const _0x273b02=_0xed55d3['material'],_0x204f3c=gradient(this['EDGE_COLOUR'],this['FACE_HOVER_BACKGROUND_COLOR'],_0x274ba7);_0x273b02['color']['set'](_0x204f3c),_0x273b02['opacity']=Math['max'](_0x274ba7,0.1);}else {if(_0xed55d3['name']['indexOf']('Corner')>-0x1){const _0x158188=_0xed55d3['material'],_0x261b4a=gradient(this['CORNER_COLOR'],this['FACE_HOVER_BACKGROUND_COLOR'],_0x274ba7);_0x158188['color']['set'](_0x261b4a);const _0x5e557d=0x1+_0x274ba7*0.3;if(_0xed55d3['parent']){const _0x551ed9=_0xed55d3['parent'];_0x551ed9['scale']['set'](_0x5e557d,_0x5e557d,_0x5e557d);}}}}}['updateMeshTick'](_0x2cab64,_0x56fe59='tick',_0x38542d=0x1){const _0x5a46f0=_0x2cab64['userData'],_0x383556=_0x5a46f0[_0x56fe59];if(_0x383556===undefined)return;if(_0x2cab64['name']===this['activateMeshName']&&_0x383556<_0x38542d)_0x5a46f0[_0x56fe59]+=0.05;else _0x2cab64['name']!==this['activateMeshName']&&_0x383556>0x0&&(_0x5a46f0[_0x56fe59]-=0.05);_0x5a46f0[_0x56fe59]>0x0&&_0x5a46f0[_0x56fe59]<_0x38542d&&(this['dirty']=!![]),_0x5a46f0[_0x56fe59]=Math['min'](Math['max'](_0x5a46f0[_0x56fe59],0x0),_0x38542d);}['updateLocalizedLabels'](){const _0x1a42ea=Object['keys'](viewCubeFaces);_0x1a42ea['forEach']((_0x3d4987,_0x2fa425)=>{const _0x417404=viewCubeFaces[_0x3d4987],_0x30ab0d=this['faces'][_0x2fa425];if(!_0x30ab0d)return;const _0x1009a3=t(_0x417404['text']),_0x4086df=_0x30ab0d['userData']['material'],_0x1b2cee=_0x4086df['map'];_0x1b2cee instanceof TextTexture&&(_0x1b2cee['setText'](_0x1009a3),_0x4086df['needsUpdate']=!![],this['dirty']=!![]);});}}
|
|
285
|
+
|
|
286
|
+
class ViewCubePlugin extends Plugin{constructor(_0x406fb7,_0x4b0f85){var _0x500d1e,_0x328c8e;const _0x11c738=(_0x4b0f85===null||_0x4b0f85===void 0x0?void 0x0:_0x4b0f85['id'])||ViewCubePlugin['DEFAULT_ID'];super(_0x406fb7,{'id':_0x11c738}),this['width']=0x0,this['height']=0x0,this['renderEnabled']=![],this['onLanguageChange']=()=>{var _0x4ef035;(_0x4ef035=this['viewCube'])===null||_0x4ef035===void 0x0?void 0x0:_0x4ef035['updateLocalizedLabels'](),this['renderEnabled']=!![];},this['onPointerDown']=_0x23f6d6=>{var _0xe854f4,_0x5aa58b;(_0xe854f4=_0x23f6d6['originalEvent'])===null||_0xe854f4===void 0x0?void 0x0:_0xe854f4['stopPropagation']();if(!this['viewCube'])return;const _0x166482=new THREE['Vector2'](_0x23f6d6['x'],_0x23f6d6['y']),_0x3461b6=this['pickManager']['pickObject'](_0x166482,[this['viewCube']]);if(!_0x3461b6)return;this['lastCoords']=_0x166482;const _0x2a6336=_0x3461b6['object']['name'],_0x5664b3=(_0x5aa58b=this['viewCube'])===null||_0x5aa58b===void 0x0?void 0x0:_0x5aa58b['getDirectionByElement'](_0x2a6336);_0x5664b3&&this['updateViewerCamera'](_0x5664b3);},this['onPointerMove']=_0x1af022=>{var _0x2bdb0d;(_0x2bdb0d=_0x1af022['originalEvent'])===null||_0x2bdb0d===void 0x0?void 0x0:_0x2bdb0d['stopPropagation']();const _0x1bdbd1=new THREE['Vector2'](_0x1af022['x'],_0x1af022['y']);this['updateActivateMeshName'](_0x1bdbd1),this['lastCoords']=_0x1bdbd1;},this['onPointerleave']=_0x156c26=>{var _0x5cef14,_0x362210;(_0x5cef14=_0x156c26['originalEvent'])===null||_0x5cef14===void 0x0?void 0x0:_0x5cef14['stopPropagation'](),this['lastCoords']=undefined,((_0x362210=this['viewCube'])===null||_0x362210===void 0x0?void 0x0:_0x362210['activateMeshName'])&&(this['viewCube']['activateMeshName']=undefined);},this['onClick']=_0x4343e8=>{var _0x577903;(_0x577903=_0x4343e8['originalEvent'])===null||_0x577903===void 0x0?void 0x0:_0x577903['stopPropagation']();},this['updateCameraAndMeshName']=()=>{var _0x39d59e;if(!((_0x39d59e=this['viewer'])===null||_0x39d59e===void 0x0?void 0x0:_0x39d59e['camera']))return;const _0x11619d=this['viewer']['camera'],_0x18acc0=new THREE['Vector3']();_0x11619d['getWorldDirection'](_0x18acc0);const _0x37f99b=_0x11619d['up'];this['updateCameraDirection'](_0x18acc0,_0x37f99b),this['renderEnabled']=!![],this['lastCoords']&&this['updateActivateMeshName'](this['lastCoords']);},this['cfg']=_0x4b0f85||{'id':_0x11c738};let _0x2262db=this['cfg']['containerId']?document['getElementById'](this['cfg']['containerId']):undefined;if(!_0x2262db){const _0x556b78='gcode-viewer-viewCube';_0x2262db=document['createElement']('div'),_0x2262db['id']=_0x556b78;const _0x789dea=(_0x500d1e=this['cfg']['corner'])!==null&&_0x500d1e!==void 0x0?_0x500d1e:this['viewer']['name']==='GCodeViewer'?'bottom-left':'top-right';_0x789dea==='bottom-left'&&_0x2262db['classList']['add']('gcode-viewer-viewCube--bottom-left'),(_0x328c8e=this['viewer']['widgetContainer'])===null||_0x328c8e===void 0x0?void 0x0:_0x328c8e['appendChild'](_0x2262db),this['cfg']['containerId']=_0x556b78;}this['width']=_0x2262db['clientWidth'],this['height']=_0x2262db['clientHeight'],this['container']=_0x2262db,this['inputManager']=new InputManager(this['container']),this['pickManager']=new PickManager(this),this['init'](),this['animate']();}get['viewerContainer'](){return this['container'];}['init'](){this['initScene'](),this['initRenderer'](),this['initCamera'](),this['initLights'](),this['initViewCube'](),this['initEvents'](),this['viewer']['addEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']);}['initScene'](){const _0x3d7995=new THREE['Scene']();_0x3d7995['matrixAutoUpdate']=MatrixAutoUpdate,this['scene']=_0x3d7995;}['initCamera'](){if(!this['scene'])return;const _0x3c23d6=new THREE['OrthographicCamera'](-this['width']/0x2,this['width']/0x2,this['height']/0x2,-this['height']/0x2,0.1,0x186a0);_0x3c23d6['up']['copy'](WorldUp),_0x3c23d6['position']['set'](0x12c,-0x12c,0x12c),_0x3c23d6['lookAt'](0x0,0x0,0x0),_0x3c23d6['zoom']=0xa,_0x3c23d6['updateProjectionMatrix'](),this['scene']['add'](_0x3c23d6),this['camera']=_0x3c23d6;}['initRenderer'](){this['renderer']=new THREE['WebGLRenderer']({'antialias':!![],'preserveDrawingBuffer':!![]}),this['renderer']['setPixelRatio'](window['devicePixelRatio']),this['renderer']['setSize'](this['width'],this['height']),this['renderer']['setClearColor'](0xa9a9a9,0x0),this['container']['appendChild'](this['renderer']['domElement']);}['initLights'](){if(!this['scene'])return;const _0x279140=0xffffff,_0x2c71c8=1.5,_0x2a90e5=new THREE['DirectionalLight'](_0x279140,_0x2c71c8);_0x2a90e5['position']['set'](-0x64,0x50,0x0),_0x2a90e5['name']='sun',this['directionalLight']=_0x2a90e5;const _0x1dc0a1=new THREE['AmbientLight'](_0x279140),_0x4c2aed=new THREE['HemisphereLight'](_0x279140,0xdddddd,0.5);this['scene']['add'](_0x1dc0a1),this['scene']['add'](_0x4c2aed),this['scene']['add'](_0x2a90e5),this['scene']['add'](_0x2a90e5['target']);}['initViewCube'](){if(!this['scene'])return;const _0x5c0e70=new ViewCube(this['cfg']);this['viewCube']=_0x5c0e70,this['scene']['add'](_0x5c0e70),this['zoomToBBox'](_0x5c0e70['getBBox']());}['initEvents'](){var _0x3eb6c4,_0x1ecd68,_0x20cbfb,_0x4e4871;(_0x3eb6c4=this['inputManager'])===null||_0x3eb6c4===void 0x0?void 0x0:_0x3eb6c4['addEventListener']('pointerdown',this['onPointerDown']),(_0x1ecd68=this['inputManager'])===null||_0x1ecd68===void 0x0?void 0x0:_0x1ecd68['addEventListener']('pointermove',this['onPointerMove']),(_0x20cbfb=this['inputManager'])===null||_0x20cbfb===void 0x0?void 0x0:_0x20cbfb['addEventListener']('pointerleave',this['onPointerleave']),(_0x4e4871=this['inputManager'])===null||_0x4e4871===void 0x0?void 0x0:_0x4e4871['addEventListener']('click',this['onClick']),this['viewer']['addEventListener'](ViewerEvent['AfterRender'],this['updateCameraAndMeshName']);}['setVisible'](_0x4bb92c){this['container']['style']['display']=_0x4bb92c?'block':'none';}['isVisible'](){return this['container']['style']['display']!=='none';}['updateViewerCamera'](_0x377ef4){_0x377ef4['normalize'](),this['viewer']['flyToDirection'](_0x377ef4);}['updateActivateMeshName'](_0x4f0f37){if(!this['viewCube'])return;const _0x4c4a99=this['pickManager']['pickObject'](_0x4f0f37,[this['viewCube']]);if(!_0x4c4a99)return;this['viewCube']['activateMeshName']&&(this['viewCube']['activateMeshName']=undefined);const _0x5f15c=_0x4c4a99['object'];this['viewCube']['activateMeshName']=_0x5f15c['name'];}['updateCameraDirection'](_0x5052c9,_0x1541cb){if(!this['camera']||!_0x5052c9)return;_0x5052c9['normalize']();const _0x2b539d=0xc8,_0x599615=0x0;this['camera']['position']['set'](-_0x5052c9['x']*_0x2b539d+_0x599615,-_0x5052c9['y']*_0x2b539d+_0x599615,-_0x5052c9['z']*_0x2b539d+_0x599615),this['camera']['lookAt'](_0x599615,_0x599615,_0x599615),this['camera']['up']=_0x1541cb,this['camera']['updateMatrixWorld']();}['animate'](){var _0x35215d,_0x183992;this['requestAnimationFrameHandle']=requestAnimationFrame(this['animate']['bind'](this)),this['scene']&&this['camera']&&this['viewCube']&&((this['renderEnabled']||this['viewCube']['dirty'])&&((_0x35215d=this['renderer'])===null||_0x35215d===void 0x0?void 0x0:_0x35215d['render'](this['scene'],this['camera']),this['renderEnabled']=![],this['viewCube']['dirty']=![])),(_0x183992=this['viewCube'])===null||_0x183992===void 0x0?void 0x0:_0x183992['update']();}['zoomToBBox'](_0x299546){if(!this['camera'])return;const _0x11ced8=this['camera']['right']-this['camera']['left'],_0x10eb90=this['camera']['top']-this['camera']['bottom'],_0xf5b024=new THREE['Vector3']();_0x299546['getSize'](_0xf5b024);const _0x14940d=Math['sqrt'](Math['pow'](_0xf5b024['x'],0x2)+Math['pow'](_0xf5b024['y'],0x2)+Math['pow'](_0xf5b024['z'],0x2)),_0x4c5784=Math['min'](_0x11ced8/_0x14940d,_0x10eb90/_0x14940d);this['camera']['position']['set'](_0xf5b024['x']/0x2,_0xf5b024['y']/0x2,_0xf5b024['z']/0x2),this['camera']['zoom']=_0x4c5784,this['camera']['updateProjectionMatrix']();}['destroy'](){var _0x184adb,_0x3858bd,_0x3cfabf,_0x27b294,_0x4302aa,_0x1890ae;this['viewer']['removeEventListener'](ViewerEvent['LanguageChange'],this['onLanguageChange']),super['destroy'](),this['requestAnimationFrameHandle']&&(cancelAnimationFrame(this['requestAnimationFrameHandle']),this['requestAnimationFrameHandle']=undefined),this['renderer']&&(this['renderer']['domElement']['remove'](),this['renderer']['clear'](),this['renderer']['dispose'](),this['renderer']['forceContextLoss'](),this['renderer']=undefined),this['container']['remove'](),(_0x184adb=this['scene'])===null||_0x184adb===void 0x0?void 0x0:_0x184adb['clear'](),this['scene']=undefined,(_0x3858bd=this['directionalLight'])===null||_0x3858bd===void 0x0?void 0x0:_0x3858bd['dispose'](),this['directionalLight']=undefined,(_0x3cfabf=this['inputManager'])===null||_0x3cfabf===void 0x0?void 0x0:_0x3cfabf['removeEventListener']('pointerdown',this['onPointerDown']),(_0x27b294=this['inputManager'])===null||_0x27b294===void 0x0?void 0x0:_0x27b294['removeEventListener']('pointermove',this['onPointerMove']),(_0x4302aa=this['inputManager'])===null||_0x4302aa===void 0x0?void 0x0:_0x4302aa['removeEventListener']('pointerleave',this['onPointerleave']),(_0x1890ae=this['inputManager'])===null||_0x1890ae===void 0x0?void 0x0:_0x1890ae['removeEventListener']('click',this['onClick']),this['viewer']['removeEventListener'](ViewerEvent['AfterRender'],this['updateCameraAndMeshName']);}}ViewCubePlugin['DEFAULT_ID']='ViewCubePlugin';
|
|
287
|
+
|
|
288
|
+
export { ActionType, AxisGizmoPlugin, AxisPlaneSection, AxisType, AxisX$1 as AxisX, AxisY$1 as AxisY, AxisZ$1 as AxisZ, BaseMeasureDrawable, BaseMeasurement, BaseSection, BottomBarPlugin, ContextMenuItems, ContextMenuPlugin, DEFAULT_AUTO_SKIP_NON_CLOSED, DEFAULT_CAPS_COLOR, DEFAULT_CAPS_VISIBLE, DEFAULT_OCCT_IMPORT_SCRIPT_URL, DEFAULT_OCCT_WASM_BASE_URL, DEFAULT_STEP_IMPORT_PARAMS, DefaultViewer3dToolbarConfig, ExplodePlugin, ExportFormats, ExportPlugin, GCodeLayerBarPlugin, GCodeLegendPlugin, GCodeStepsBarPlugin, GCodeTextPanelPlugin, GeometryEditCommand, GroundGridPlugin, GroundShadowPlugin, GroupConfig, HotpointPlugin, InsertSceneNodeCommand, LocalModelUploader, MaterialEditCommand, MeasurementPlugin, MeasurementType, MoveSceneNodeCommand, ObjectsBoxSection, PickPlaneSection, PlatePlugin, PropertyPlugin, RemoveSceneObjectCommand, Rhino3dmLoaderPlugin, SceneEditActions, SceneEditPlugin, ScreenshotMode, ScreenshotPlugin, SectionPlugin, SectionType, Settings3dPlugin, SkyboxPlugin, StatsPlugin, StepLoaderPlugin, StepModelLoader, Toolbar, ToolbarMenu, ToolbarMenuId, ToolbarMenuType, TransformPlugin, TransformSceneObjectCommand, TreeViewPlugin, ViewCubePlugin, Viewer3dDatGuiPlugin, Viewer3dToolbarPlugin, applySceneMaterialSnapshot, applySceneMeshSnapshot, captureSceneMaterialSnapshot, captureSceneMeshSnapshot, captureSceneTransformState, createSceneNodeSnapshot, findModel3dForSceneRoot, findModel3dOwning, isSceneModelRoot, isWholeModelDeleteTarget, loadOcctImportOnce, recordGeometryEdit, recordMaterialEdit, recordTransformEdit };
|