@x-viewer/plugins 0.9.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 +3 -0
- package/dist/index.esm.js +264 -0
- package/dist/types/axis-gizmo/AxisGizmoPlugin.d.ts +51 -0
- package/dist/types/axis-gizmo/CoordinateAxes.d.ts +14 -0
- package/dist/types/axis-gizmo/index.d.ts +2 -0
- package/dist/types/bottom-bar/BottomBarPlugin.d.ts +42 -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 +36 -0
- package/dist/types/context-menu/Locale.d.ts +48 -0
- package/dist/types/context-menu/index.d.ts +4 -0
- package/dist/types/dat-gui/Viewer3dDatGui.d.ts +66 -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 +53 -0
- package/dist/types/export/index.d.ts +2 -0
- package/dist/types/ground-grass/GroundGrassPlugin.d.ts +45 -0
- package/dist/types/ground-grass/index.d.ts +1 -0
- package/dist/types/ground-grid/GroundGridPlugin.d.ts +46 -0
- package/dist/types/ground-grid/index.d.ts +1 -0
- package/dist/types/ground-shaow/GroundShadowPlugin.d.ts +64 -0
- package/dist/types/ground-shaow/index.d.ts +1 -0
- package/dist/types/hotpoint/HotpointPlugin.d.ts +103 -0
- package/dist/types/hotpoint/index.d.ts +1 -0
- package/dist/types/index.d.ts +27 -0
- package/dist/types/layer-manager/LayerManagerPlugin.d.ts +51 -0
- package/dist/types/layer-manager/index.d.ts +2 -0
- package/dist/types/local-model-uploader/IUploader.d.ts +19 -0
- package/dist/types/local-model-uploader/LocalDxfUploader.d.ts +22 -0
- package/dist/types/local-model-uploader/LocalModelUploader.d.ts +24 -0
- package/dist/types/local-model-uploader/index.d.ts +3 -0
- package/dist/types/markups/ArrowMarkup.d.ts +12 -0
- package/dist/types/markups/BaseMarkup.d.ts +33 -0
- package/dist/types/markups/CircleMarkup.d.ts +12 -0
- package/dist/types/markups/CloudLineMarkup.d.ts +10 -0
- package/dist/types/markups/CloudRectMarkup.d.ts +11 -0
- package/dist/types/markups/CloudRectWithTextMarkup.d.ts +42 -0
- package/dist/types/markups/Constants.d.ts +17 -0
- package/dist/types/markups/DotMarkup.d.ts +9 -0
- package/dist/types/markups/EllipseMarkup.d.ts +12 -0
- package/dist/types/markups/LeaderLineMarkup.d.ts +25 -0
- package/dist/types/markups/MarkupPlugin.d.ts +91 -0
- package/dist/types/markups/PolylineMarkup.d.ts +10 -0
- package/dist/types/markups/RectMarkup.d.ts +11 -0
- package/dist/types/markups/TextMarkup.d.ts +44 -0
- package/dist/types/markups/XMarkup.d.ts +10 -0
- package/dist/types/markups/index.d.ts +14 -0
- package/dist/types/markups/undo/AddMarkupCommand.d.ts +10 -0
- package/dist/types/markups/undo/RemoveMarkupCommand.d.ts +10 -0
- package/dist/types/markups/undo/UpdateMarkupCommand.d.ts +11 -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 +28 -0
- package/dist/types/measurements/BaseMeasureDrawable.d.ts +28 -0
- package/dist/types/measurements/BaseMeasurement.d.ts +124 -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 +15 -0
- package/dist/types/measurements/DistanceMeasurement.d.ts +25 -0
- package/dist/types/measurements/Locale.d.ts +10 -0
- package/dist/types/measurements/MeasurementPlugin.d.ts +140 -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/nav-cube/Locale.d.ts +18 -0
- package/dist/types/nav-cube/NavCube.d.ts +12 -0
- package/dist/types/nav-cube/NavCubePlugin.d.ts +36 -0
- package/dist/types/nav-cube/index.d.ts +2 -0
- package/dist/types/overview-map/ImageDrawable.d.ts +28 -0
- package/dist/types/overview-map/OverviewMapPlugin.d.ts +16 -0
- package/dist/types/overview-map/OverviewMapViewer.d.ts +50 -0
- package/dist/types/overview-map/index.d.ts +1 -0
- package/dist/types/pdf/PdfLoader.d.ts +238 -0
- package/dist/types/pdf/PdfLoaderPlugin.d.ts +47 -0
- package/dist/types/pdf/index.d.ts +2 -0
- package/dist/types/property/Locale.d.ts +8 -0
- package/dist/types/property/PropertyPlugin.d.ts +76 -0
- package/dist/types/property/index.d.ts +2 -0
- package/dist/types/screenshot/ScreenshotPlugin.d.ts +153 -0
- package/dist/types/screenshot/index.d.ts +1 -0
- package/dist/types/sections/AxisPlaneSection.d.ts +63 -0
- package/dist/types/sections/AxisSectionPopPanel.d.ts +18 -0
- package/dist/types/sections/BaseSection.d.ts +61 -0
- package/dist/types/sections/Locale.d.ts +16 -0
- package/dist/types/sections/ObjectsBoxSection.d.ts +28 -0
- package/dist/types/sections/PickPlaneSection.d.ts +42 -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 +87 -0
- package/dist/types/sections/index.d.ts +6 -0
- package/dist/types/settings-2d/Locale.d.ts +14 -0
- package/dist/types/settings-2d/Settings2dPlugin.d.ts +55 -0
- package/dist/types/settings-2d/index.d.ts +2 -0
- package/dist/types/settings-3d/Locale.d.ts +50 -0
- package/dist/types/settings-3d/Settings3dPlugin.d.ts +51 -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 +49 -0
- package/dist/types/skybox/index.d.ts +1 -0
- package/dist/types/stats/StatsPlugin.d.ts +19 -0
- package/dist/types/stats/index.d.ts +2 -0
- package/dist/types/toolbars/Locale.d.ts +98 -0
- package/dist/types/toolbars/MarkupToolbar.d.ts +18 -0
- package/dist/types/toolbars/Toolbar.config.d.ts +9 -0
- package/dist/types/toolbars/Toolbar.constants.d.ts +95 -0
- package/dist/types/toolbars/Toolbar.d.ts +107 -0
- package/dist/types/toolbars/Viewer2dToolbarPlugin.d.ts +37 -0
- package/dist/types/toolbars/Viewer3dToolbarPlugin.d.ts +37 -0
- package/dist/types/toolbars/index.d.ts +7 -0
- package/dist/types/tree-view/Locale.d.ts +8 -0
- package/dist/types/tree-view/TreeViewPlugin.d.ts +71 -0
- package/dist/types/tree-view/index.d.ts +2 -0
- package/dist/types/view-cube/Locale.d.ts +18 -0
- package/dist/types/view-cube/ViewCube.d.ts +79 -0
- package/dist/types/view-cube/ViewCubePlugin.d.ts +55 -0
- package/dist/types/view-cube/index.d.ts +2 -0
- package/package.json +58 -0
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @x-viewer/plugins v0.9.0 build Mon Dec 29 2025
|
|
3
|
+
* undefined
|
|
4
|
+
* Copyright 2025 x-viewer
|
|
5
|
+
* @license MIT
|
|
6
|
+
*/
|
|
7
|
+
import { THREE, THREEAddons, Plugin, ViewerEvent, IconfontClass2, ViewerName, CommonUtils, CameraProjection, forEach, setIcon, VERSION, IconfontClass, i18next, Viewer3d, BimTilesViewer, ObjectUtils, log, DefaultOpacity, Event, DeviceUtils, MouseButton, Drawable, ColorUtils, getUnitStr, CanvasRender, showPrecisionValue, MathUtils, PolygonUtils, OSnapType, Command, DrawableList, OSnapHelper, DefaultLanguage, MobileTouchHelperDrawable, map as map$1, LayerForSelectableObjects, PathDrawable, CoordinateUtils, PickMarkupHelper, BoxSelectHelper, Viewer2d, ViewDirection, LayerForSnapableObjects, CSS2DObjectUtils, MatrixAutoUpdate, MergeUtils, LayerForHitableObjects, Model2d, GeometryUtils, get as get$1, forIn, assign, keys, concat, take, takeRight, BimTilesModel, merge, TextTexture, InputManager, PickManager, BaseViewer, ControlsMode, GroundPlaneRenderOrder, Model } from '@x-viewer/core';
|
|
8
|
+
import { Tooltip, BasePanel, PopPanel } from '@x-viewer/ui';
|
|
9
|
+
|
|
10
|
+
function styleInject(_0x5b301e,_0x2e2d1a){if(_0x2e2d1a===void 0x0)_0x2e2d1a={};var _0x3db2ae=_0x2e2d1a['insertAt'];if(!_0x5b301e||typeof document==='undefined')return;var _0x50d17d=document['head']||document['getElementsByTagName']('head')[0x0],_0x314cb5=document['createElement']('style');_0x314cb5['type']='text/css',_0x3db2ae==='top'?_0x50d17d['firstChild']?_0x50d17d['insertBefore'](_0x314cb5,_0x50d17d['firstChild']):_0x50d17d['appendChild'](_0x314cb5):_0x50d17d['appendChild'](_0x314cb5),_0x314cb5['styleSheet']?_0x314cb5['styleSheet']['cssText']=_0x5b301e:_0x314cb5['appendChild'](document['createTextNode'](_0x5b301e));}
|
|
11
|
+
|
|
12
|
+
var css_248z$d = "#axisGizmo{background:hsla(0,0%,100%,0);bottom:1px;display:block;height:100px;left:10px;position:absolute;width:100px}";
|
|
13
|
+
styleInject(css_248z$d);
|
|
14
|
+
|
|
15
|
+
class CoordinateAxes extends THREE['Object3D']{constructor(_0x4ced41=!![],_0x21e213=![]){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 _0x15ab96=new THREE['Vector3'](0x0,0x0,0x0),_0x310fa7=new THREE['Vector3'](0x1,0x0,0x0),_0x1ebd11=new THREE['Vector3'](0x0,0x1,0x0),_0xb44f85=0x0,_0x1a142c=0x0,_0xc612ec=new THREE['ArrowHelper'](_0x310fa7,_0x15ab96,this['AXIS_LENGTH'],this['AXIS_COLOR_X'],_0xb44f85,_0x1a142c),_0x2757e9=new THREE['ArrowHelper'](_0x1ebd11,_0x15ab96,this['AXIS_LENGTH'],this['AXIS_COLOR_Y'],_0xb44f85,_0x1a142c);this['add'](_0xc612ec,_0x2757e9);if(!_0x21e213){const _0xdf67be=new THREE['Vector3'](0x0,0x0,0x1),_0x3e01b0=new THREE['ArrowHelper'](_0xdf67be,_0x15ab96,this['AXIS_LENGTH'],this['AXIS_COLOR_Z'],_0xb44f85,_0x1a142c);this['add'](_0x3e01b0);}_0x4ced41&&this['addTexts'](_0x21e213);}['addTexts'](_0x33df99=![]){const _0x4d2bdf=this['createText']('X','#ff0000'),_0x52d80c=this['createText']('Y','#00ff00');_0x4d2bdf['position']['set'](this['AXIS_LENGTH']+0.1,0x0,0x0),_0x52d80c['position']['set'](0.1,this['AXIS_LENGTH'],0.1),this['add'](_0x4d2bdf,_0x52d80c);if(!_0x33df99){const _0xca4f54=this['createText']('Z','#0000ff');_0xca4f54['position']['set'](0x0,0x0,this['AXIS_LENGTH']+0.1),this['add'](_0xca4f54);}}['createText'](_0x1a9449,_0x2c212d,_0x7402a6=0xe){const _0x1deb7c=document['createElement']('div');_0x1deb7c['innerHTML']=_0x1a9449;const _0x4d86a6=_0x1deb7c['style'];return _0x4d86a6['color']=_0x2c212d,_0x4d86a6['width']=_0x7402a6+'px',_0x4d86a6['height']=_0x7402a6+'px',_0x4d86a6['textAlign']='center',_0x4d86a6['top']='0px',_0x4d86a6['left']='0px',new THREEAddons['CSS2DObject'](_0x1deb7c);}}
|
|
16
|
+
|
|
17
|
+
class AxisGizmoPlugin extends Plugin{constructor(_0x7e5e4f,_0x42bdde){const _0x4ead1e=(_0x42bdde===null||_0x42bdde===void 0x0?void 0x0:_0x42bdde['id'])||AxisGizmoPlugin['DEFAULT_ID'];super(_0x7e5e4f,{'id':_0x4ead1e}),this['ignoreZAxis']=![],this['cfg']=_0x42bdde||{'id':_0x4ead1e},this['ignoreZAxis']=!!(_0x42bdde===null||_0x42bdde===void 0x0?void 0x0:_0x42bdde['ignoreZAxis']),this['hostCamera']=_0x7e5e4f['camera'],this['init']();}['init'](){this['initRenderer'](),this['initScene'](),this['animate'](),this['viewer']['addEventListener'](ViewerEvent['CameraChange'],()=>{this['hostCamera']=this['viewer']['camera'];});}['initRenderer'](){var _0x4ab88a;let _0x1aa05e=0x64,_0x521cb9=0x64,_0x1b8cff;this['cfg']['containerId']&&(_0x1b8cff=document['getElementById'](this['cfg']['containerId']),_0x1b8cff&&(_0x1aa05e=_0x1b8cff['clientWidth'],_0x521cb9=_0x1b8cff['clientHeight']));if(!_0x1b8cff){const _0x235afb='axisGizmo';_0x1b8cff=document['createElement']('div'),_0x1b8cff['id']=_0x235afb,(_0x4ab88a=this['viewer']['widgetContainer'])===null||_0x4ab88a===void 0x0?void 0x0:_0x4ab88a['appendChild'](_0x1b8cff);}this['renderer']=new THREE['WebGLRenderer']({'antialias':!![],'alpha':!![]}),this['renderer']['setSize'](_0x1aa05e,_0x521cb9),_0x1b8cff['appendChild'](this['renderer']['domElement']),this['css2dRenderer']=new THREEAddons['CSS2DRenderer'](),this['css2dRenderer']['setSize'](_0x1aa05e,_0x521cb9),this['css2dRenderer']['domElement']['style']['height']='0',this['css2dRenderer']['domElement']['style']['width']='0',_0x1b8cff['appendChild'](this['css2dRenderer']['domElement']),this['container']=_0x1b8cff;}['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'](_0x512001){this['hostCamera']=_0x512001;}['setVisible'](_0x554f1d){this['container']&&(this['container']['style']['display']=_0x554f1d?'block':'none');}['isVisible'](){if(this['container'])return this['container']['style']['display']!=='none';return ![];}['render'](){var _0x1ccedb;if(!this['scene']||!this['camera'])return;this['renderer']&&(this['update'](),this['renderer']['render'](this['scene'],this['camera'])),(_0x1ccedb=this['css2dRenderer'])===null||_0x1ccedb===void 0x0?void 0x0:_0x1ccedb['render'](this['scene'],this['camera']);}['animate'](){requestAnimationFrame(this['animate']['bind'](this)),this['render']();}['update'](){if(!this['hostCamera'])return;const _0x4aa5d9=this['hostCamera'];if(_0x4aa5d9){const _0x16c77f=new THREE['Vector3']();_0x4aa5d9['getWorldDirection'](_0x16c77f);const _0x54f170=_0x4aa5d9['up'];this['updateCameraDirection'](_0x16c77f,_0x54f170);}}['updateCameraDirection'](_0x39b3b3,_0xdb76d5){if(!this['camera']||!_0x39b3b3)return;_0x39b3b3['normalize']();const _0x152dc0=0x2,_0x7113ef=0.3;this['camera']['position']['set'](-_0x39b3b3['x']*_0x152dc0+_0x7113ef,-_0x39b3b3['y']*_0x152dc0+_0x7113ef,-_0x39b3b3['z']*_0x152dc0+_0x7113ef),this['camera']['lookAt'](_0x7113ef,_0x7113ef,_0x7113ef),this['camera']['up']=_0xdb76d5;}['destroy'](){var _0x18c510,_0x5ddd86;super['destroy']();if(!this['scene']||!this['camera']||!this['coordinateAxes'])return;this['scene']['clear'](),this['scene']=undefined,this['css2dRenderer']&&((_0x18c510=this['container'])===null||_0x18c510===void 0x0?void 0x0:_0x18c510['removeChild'](this['css2dRenderer']['domElement']),this['css2dRenderer']=undefined),this['renderer']&&((_0x5ddd86=this['container'])===null||_0x5ddd86===void 0x0?void 0x0:_0x5ddd86['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$c = ".bottom-bar{bottom:0;color:#666;display:flex;overflow:hidden;position:absolute;right:0;user-select:none;z-index:3}.bottom-bar i{align-self:center;cursor:pointer;font-size:18px;line-height:1;opacity:.4;padding:3px}.bottom-bar i.active,.bottom-bar i:hover{color:#2c7be5;opacity:1}.bottom-bar .fps{width:4rem}.bottom-bar span{align-self:center;font-size:14px;padding:4px}#x-viewer-threejs-cameraCfg-tooltip,#x-viewer-threejs-statistics-tooltip,#x-viewer-threejs-tips-tooltip{background:#666;border-radius:4px;bottom:30px;color:#fff;font-size:.8rem;opacity:.9;padding:8px 8px 5px;position:absolute;right:5px;user-select:none;z-index:3}#x-viewer-threejs-cameraCfg-tooltip p,#x-viewer-threejs-statistics-tooltip p,#x-viewer-threejs-tips-tooltip p{margin:3px;padding-bottom:3px}#x-viewer-threejs-cameraCfg-tooltip p span,#x-viewer-threejs-statistics-tooltip p span,#x-viewer-threejs-tips-tooltip p span{float:left;margin-right:10px}";
|
|
20
|
+
styleInject(css_248z$c);
|
|
21
|
+
|
|
22
|
+
function _0x10e79b(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(_0x43b619){_0x43b619['statistics']='x-viewer-threejs-statistics',_0x43b619['cameraCfg']='x-viewer-threejs-cameraCfg',_0x43b619['tips']='x-viewer-threejs-tips';}(BottomBarItemId||(BottomBarItemId={})));const getRenderInfoSpan=_0xf81d30=>{const _0x290c61=document['createElement']('span'),_0x542a98=_0x326b8e=>{var _0x373bde;const _0x4c5e45=(_0x373bde=_0x326b8e['renderer'])===null||_0x373bde===void 0x0?void 0x0:_0x373bde['domElement'];return _0x4c5e45===null||_0x4c5e45===void 0x0?void 0x0:_0x4c5e45['dataset']['engine'];},_0x32e3ae=_0xf81d30['viewer']['getRenderInfo'](),_0x4379d0=(_0x3a1dc8,_0xc59060)=>{_0x290c61['innerHTML']+='<p><span>'+_0x3a1dc8+':</span>'+_0xc59060+'</p>';};_0x290c61['innerHTML']='<p>--\x20Renderer\x20Info\x20--</p>';const _0x6ea6d5='\x20('+_0x542a98(_0xf81d30['viewer'])+')';_0x4379d0('Version',''+VERSION+_0x6ea6d5),_0x4379d0('DrawCalls',_0x32e3ae['drawCalls']),_0x4379d0('Points',_0x32e3ae['points']),_0x4379d0('Lines',_0x32e3ae['lines']),_0x4379d0('Triangles',_0x32e3ae['triangles']),_0x4379d0('Materials',_0x32e3ae['materials']),_0x4379d0('Textures',_0x32e3ae['textures']),_0x4379d0('Geometries',_0x32e3ae['geometries']);if(_0xf81d30['viewer']['name']===ViewerName['BimTilesViewer']){_0x290c61['innerHTML']+='<p>--\x20Tileset\x20Info\x20--</p>';const _0x33f8da=_0xf81d30['viewer'];let _0x106ee5=0x0,_0x4dd0ae=0x0,_0x48a4a5=0x0,_0x7c90e2=0x0,_0x3f78ab=0x0,_0x425327=0x0,_0x44515b=0x0;_0x33f8da['loadedModels']['forEach'](_0x471b26=>{_0x106ee5+=_0x471b26['metadata']['modelSize'],_0x4dd0ae+=_0x471b26['statistics']['tileCount'],_0x48a4a5+=_0x471b26['statistics']['elementCount'],_0x7c90e2+=_0x471b26['statistics']['materialCount'],_0x3f78ab+=_0x471b26['statistics']['textureCount'],_0x425327+=_0x471b26['statistics']['meshVertexCount'],_0x44515b+=_0x471b26['statistics']['meshFaceCount'];}),_0x4379d0('Tileset\x20count',_0x33f8da['loadedModels']['length']),_0x4379d0('Tile\x20count',_0x4dd0ae),_0x4379d0('Model\x20size',CommonUtils['byteCountToString'](_0x106ee5)),_0x4379d0('Element\x20count',_0x48a4a5),_0x4379d0('Material\x20count',_0x7c90e2),_0x4379d0('Texture\x20count',_0x3f78ab),_0x4379d0('Vertex\x20count',_0x425327),_0x4379d0('Face\x20count',_0x44515b);}else {if(_0xf81d30['viewer']['name']===ViewerName['Viewer2d']){const _0x56f799=_0xf81d30['viewer']['getEntityCount']();_0x4379d0('Entities',_0x56f799);}}return _0x290c61;},getCameraCfgSpan=_0x3f9573=>{const _0x63370=document['createElement']('span'),_0x16ac48=_0x3f9573['viewer']['getCameraInfo'](),_0x1e36ca=(_0xbc1360,_0x516102)=>{_0x63370['innerHTML']+='<p><span>'+_0xbc1360+':</span>'+_0x516102+'</p>';};_0x63370['innerHTML']='';const _0x22869e=_0x370852=>CommonUtils['numberToString'](_0x370852),_0x53dfe3=_0x36e321=>CommonUtils['vectorToString'](_0x36e321);_0x1e36ca('Camera\x20type',_0x16ac48['projection']),_0x1e36ca('Camera\x20position',_0x53dfe3(_0x16ac48['position'])),_0x1e36ca('Camera\x20target',_0x53dfe3(_0x16ac48['target'])),_0x1e36ca('Camera\x20up',_0x53dfe3(_0x16ac48['up'])),_0x1e36ca('Camera\x20near',_0x22869e(_0x16ac48['near']||0x0)),_0x1e36ca('Camera\x20far',_0x22869e(_0x16ac48['far']||0x0));if(_0x16ac48['projection']===CameraProjection['Perspective'])_0x1e36ca('Fov',_0x22869e(_0x16ac48['fov']||0x0)),_0x1e36ca('Aspect',_0x22869e(_0x16ac48['aspect']||0x0));else _0x16ac48['projection']===CameraProjection['Orthographic']&&(_0x1e36ca('Zoom',_0x22869e(_0x16ac48['zoom']||0x0)),_0x1e36ca('Left',_0x22869e(_0x16ac48['left']||0x0)),_0x1e36ca('Right',_0x22869e(_0x16ac48['right']||0x0)),_0x1e36ca('Bottom',_0x22869e(_0x16ac48['bottom']||0x0)),_0x1e36ca('Top',_0x22869e(_0x16ac48['top']||0x0)));return _0x63370;},bottomBarItems={[BottomBarItemId['statistics']]:{'icon':{'default':'icon-info','active':'icon-info-filled','iconFont':IconfontClass2},'mutexIds':[BottomBarItemId['cameraCfg'],BottomBarItemId['tips']],'onActive':_0x35715d=>{const _0x231ed2=getRenderInfoSpan(_0x35715d);_0x35715d['tooltip']['setContent'](_0x231ed2),_0x35715d['tooltip']['show']();},'onDeactive':_0x2b8545=>{_0x2b8545['tooltip']['hide']();},'onUpdate':_0x49ada7=>{const _0x151bea=getRenderInfoSpan(_0x49ada7);_0x49ada7['tooltip']['setContent'](_0x151bea);}},[BottomBarItemId['cameraCfg']]:{'icon':{'default':'icon-view','active':'icon-view-filled','iconFont':IconfontClass2},'mutexIds':[BottomBarItemId['statistics'],BottomBarItemId['tips']],'onActive':_0x1f7f27=>{const _0x2f282b=getCameraCfgSpan(_0x1f7f27);_0x1f7f27['tooltip']['setContent'](_0x2f282b),_0x1f7f27['tooltip']['show']();},'onDeactive':_0x394d54=>{_0x394d54['tooltip']['hide']();},'onUpdate':_0x26089d=>{const _0x31fcf6=getCameraCfgSpan(_0x26089d);_0x26089d['tooltip']['setContent'](_0x31fcf6);}},[BottomBarItemId['tips']]:{'icon':{'default':'icon-more','iconFont':IconfontClass2},'mutexIds':[BottomBarItemId['cameraCfg'],BottomBarItemId['cameraCfg']],'onActive':_0x45cef5=>{const _0x18b051=document['createElement']('span'),_0xf9e7c1=_0x45cef5['viewer']['name']===ViewerName['Viewer3d']||_0x45cef5['viewer']['name']===ViewerName['BimTilesViewer'];if(_0xf9e7c1)_0x18b051['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';else _0x45cef5['viewer']['name']===ViewerName['Viewer2d']?_0x18b051['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>↑:\x20</span>Move\x20up</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>↓:\x20</span>Move\x20down</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>←:\x20</span>Move\x20to\x20left</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p><span>→:\x20</span>Move\x20to\x20right</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20':_0x18b051['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';_0x45cef5['tooltip']['setContent'](_0x18b051),_0x45cef5['tooltip']['show']();},'onDeactive':_0x303621=>{_0x303621['tooltip']['hide']();}}};class BottomBarPlugin extends Plugin{constructor(_0x51e8eb){const _0x2678fc='BottomBarPlugin';super(_0x51e8eb,{'id':_0x2678fc}),this['itemList']=new Map(),this['init']();}['update'](){this['itemList']['forEach'](_0xea5375=>{_0xea5375['update']();});}['init'](){var _0x446415;const _0x5f4c84=document['createElement']('div');_0x5f4c84['id']=BOTTOM_BAR_ID,_0x5f4c84['classList']['add']('bottom-bar'),forEach(bottomBarItems,(_0x1c40bb,_0x576761)=>{const _0x3ff0f7=this['createItem'](this['viewer'],_0x576761,_0x1c40bb);_0x5f4c84['appendChild'](_0x3ff0f7['element']);}),this['element']=_0x5f4c84,(_0x446415=this['viewer']['widgetContainer'])===null||_0x446415===void 0x0?void 0x0:_0x446415['appendChild'](this['element']),this['viewer']['addEventListener'](ViewerEvent['AfterRender'],()=>{this['update']();});}['createItem'](_0x1148c8,_0x3d0758,_0xd669fd){const _0x9f681d=new BottomBarItem(_0x1148c8,this,_0x3d0758,_0xd669fd);return this['itemList']['set'](_0x3d0758,_0x9f681d),_0x9f681d;}}class BottomBarItem{constructor(_0x5abeef,_0x2e2c5a,_0x12c512,_0x21c56f){this['viewer']=_0x5abeef,this['bottomBar']=_0x2e2c5a,this['menuId']=_0x12c512,this['cfg']=_0x21c56f,this['eventBus']=_0x10e79b(),this['active']=![],this['itemconfig']=_0x21c56f,this['element']=this['createButton'](this['menuId'],_0x21c56f),this['tooltip']=new Tooltip(_0x12c512+'-tooltip',null,{'parentNode':_0x5abeef['widgetContainer']}),this['eventBus']['on']('activitychange',_0x5912f3=>{_0x5912f3?(this['element']['classList']['add']('active'),forEach(_0x21c56f['mutexIds'],_0x3272d1=>{var _0x2ba9e7;const _0x132537=(_0x2ba9e7=this['bottomBar'])===null||_0x2ba9e7===void 0x0?void 0x0:_0x2ba9e7['itemList']['get'](_0x3272d1);_0x132537&&_0x132537['active']&&_0x132537['setActive'](![]);}),_0x21c56f['onActive']&&_0x21c56f['onActive'](this)):(this['element']['classList']['remove']('active'),_0x21c56f['onDeactive']&&_0x21c56f['onDeactive'](this)),this['element']instanceof HTMLElement&&setIcon(this['element']['classList'],_0x21c56f['icon'],this['active']);});}['createButton'](_0xb66fa3,_0xe2413c){const _0x312f06=document['createElement']('i');_0x312f06['id']=_0xb66fa3;const {default:_0x3a9be2='icon-new',iconFont:iconFont=IconfontClass}=_0xe2413c['icon'];return _0x312f06['classList']['add']('icon'),_0x312f06['classList']['add'](iconFont),_0x312f06['classList']['add'](_0x3a9be2),_0x312f06['onclick']=()=>{this['active']=!this['active'],_0xe2413c['onClick']&&_0xe2413c['onClick'](this),this['eventBus']['emit']('activitychange',this['active']);},_0x312f06;}['setActive'](_0x58c5f0){this['active']=_0x58c5f0,this['eventBus']['emit']('activitychange',this['active']);}['update'](){this['active']&&(this['itemconfig']['onUpdate']&&this['itemconfig']['onUpdate'](this));}}
|
|
25
|
+
|
|
26
|
+
var css_248z$b = ".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;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$b);
|
|
28
|
+
|
|
29
|
+
const en$9={'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':'Undo\x20Select','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 cn$9={'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 i18n$9=i18next['createInstance']();const lng$9='en';i18n$9['init']({'lng':lng$9,'debug':![],'resources':{'en':{'translation':en$9},'cn':{'translation':cn$9}}});
|
|
30
|
+
|
|
31
|
+
const translate=_0x2307b8=>()=>{return i18n$9['t'](''+_0x2307b8);},hasVisibleObject=_0x2aeded=>{return _0x2aeded['hasVisibleObject']();},hasInvisibleObject=_0x325935=>{return _0x325935['hasInvisibleObject']();},isObjectSelected=(_0x2bc1e1,_0x41e790,_0xb3d7d6,_0x5adf1a)=>{const _0xbc7f27=_0x41e790;return !!(_0xbc7f27&&_0x41e790&&_0xbc7f27['id']===_0x41e790['id']);},isObjectSelectedInBimTilesViewer=(_0x2ef5d6,_0x445aa2)=>{const _0x26f271=_0x2ef5d6['selectedObject'];return !!(_0x26f271&&_0x445aa2&&_0x26f271['tilesetId']===_0x445aa2['tilesetId']&&_0x26f271['userId']===_0x445aa2['userId']);},viewFitEntity={'getTitle':translate('viewFitEntity'),'getShown':({hit:_0x2f7497})=>_0x2f7497,'doAction':({viewer:_0x2e8314,hit:_0x5ba142})=>{if(_0x2e8314 instanceof Viewer3d)_0x2e8314['flyToObject'](_0x5ba142);else _0x2e8314 instanceof BimTilesViewer&&_0x2e8314['flyToUserId'](_0x5ba142['tilesetId'],_0x5ba142['userId']);}},viewFitAll={'getTitle':translate('viewFitAll'),'getEnabled':({viewer:_0xc13b42})=>hasVisibleObject(_0xc13b42),'doAction':({viewer:_0x494f7a})=>_0x494f7a['viewFitAll']()},hideEntity={'getTitle':translate('hideEntity'),'getShown':({hit:_0x5ae236})=>_0x5ae236,'doAction':({viewer:_0x41baa4,hit:_0x46b00a})=>{if(_0x41baa4 instanceof Viewer3d)_0x41baa4['clearSelection'](),_0x41baa4['setObjectVisible'](_0x46b00a,![]);else _0x41baa4 instanceof BimTilesViewer&&(_0x41baa4['clearSelection'](),_0x41baa4['setObjectVisibleByUserIds'](_0x46b00a['tilesetId'],[_0x46b00a['userId']],![]));_0x41baa4['enableRender']();}},hideOthers={'getTitle':translate('hideOthers'),'getShown':({hit:_0x506158})=>_0x506158,'doAction':({viewer:_0xadc7a4,hit:_0x188782})=>{if(_0xadc7a4 instanceof Viewer3d)_0xadc7a4['clearSelection'](),_0xadc7a4['hideOtherObjects'](_0x188782);else _0xadc7a4 instanceof BimTilesViewer&&(_0xadc7a4['clearSelection'](),_0xadc7a4['setOtherObjectVisibleByUserIds'](_0x188782['tilesetId'],[_0x188782['userId']],![]));_0xadc7a4['enableRender']();}},hideAll={'getTitle':translate('hideAll'),'getEnabled':({viewer:_0x2ebe85})=>hasVisibleObject(_0x2ebe85),'doAction':({viewer:_0x489600})=>{const _0x23e00c=_0x489600;_0x23e00c['clearSelection'](),_0x23e00c['setModelsVisible'](![]),_0x23e00c['enableRender']();}},showAll={'getTitle':translate('showAll'),'getEnabled':({viewer:_0x1ac0f5})=>hasInvisibleObject(_0x1ac0f5),'doAction':({viewer:_0xe4eb3e})=>{const _0x1c9806=_0xe4eb3e;_0x1c9806['setModelsVisible'](!![]),_0x1c9806['enableRender']();}},selectEntity={'getTitle':({hit:_0x44e4df,viewer:_0x1b24b2,instanceId:_0x3d23aa,batchId:_0x58668a})=>{const _0x56e8db=_0x1b24b2;return isObjectSelected(_0x56e8db,_0x44e4df)?translate('deselect')():translate('select')();},'getShown':({hit:_0x192dc5,viewer:_0x2fcc0f})=>_0x2fcc0f['enableSelection']&&_0x192dc5,'doAction':({hit:_0x20b832,viewer:_0x2e8b64,instanceId:_0xf6714,batchId:_0xdd8064})=>{if(_0x2e8b64 instanceof Viewer3d){if(!ObjectUtils['isObjectSelectable'](_0x20b832)){log['debug']('[ContextMenu]\x20object(type:\x20'+_0x20b832['type']+',\x20name:\x20'+_0x20b832['name']+')\x20not\x20selectable!');return;}isObjectSelected(_0x2e8b64,_0x20b832)?_0x2e8b64['clearSelection']():_0x2e8b64['setObjectHighlight'](_0x20b832);}else _0x2e8b64 instanceof BimTilesViewer&&(isObjectSelectedInBimTilesViewer(_0x2e8b64,_0x20b832)?_0x2e8b64['clearSelection']():_0x2e8b64['setObjectHighlightedByUserIds'](_0x20b832['tilesetId'],[_0x20b832['userId']],!![]));}},selectNone={'getTitle':translate('selectNone'),'getShown':({viewer:_0xce998c})=>_0xce998c['enableSelection'],'getEnabled':({hit:_0x4d5813})=>!!_0x4d5813,'doAction':({viewer:_0x4acbfa})=>_0x4acbfa['clearSelection']()};let enableXRayAll=![];const xRayAll={'getTitle':translate('xRayAll'),'getShown':({viewer:_0x183cd1})=>!enableXRayAll,'doAction':({viewer:_0x4393ff})=>{const _0x6b595b=_0x4393ff;_0x6b595b['clearSelection'](),_0x6b595b['setModelsOpacity'](DefaultOpacity),_0x6b595b['enableRender'](),enableXRayAll=!![];}},xRayNone={'getTitle':translate('xRayNone'),'getEnabled':({viewer:_0x26a80f})=>enableXRayAll,'doAction':({viewer:_0x1fbcc6})=>{const _0x166b56=_0x1fbcc6;_0x166b56['clearSelection'](),_0x166b56['clearModelsOpacity'](),_0x166b56['enableRender'](),enableXRayAll=![];}},xRayEntity={'getTitle':translate('xRayEntity'),'getShown':({hit:_0xba0521})=>_0xba0521,'doAction':({viewer:_0x437fed,hit:_0x75acdb})=>{if(_0x437fed instanceof Viewer3d)_0x437fed['clearSelection'](),_0x437fed['setObjectOpacity'](_0x75acdb,DefaultOpacity);else _0x437fed instanceof BimTilesViewer&&(_0x437fed['clearSelection'](),_0x437fed['setObjectOpacityByUserIds'](_0x75acdb['tilesetId'],[_0x75acdb['userId']],DefaultOpacity));enableXRayAll=!![];}},xRayOthers={'getTitle':translate('xRayOthers'),'getShown':({hit:_0x3ef876})=>_0x3ef876,'doAction':({viewer:_0x4abf54,hit:_0x9f03b})=>{if(_0x4abf54 instanceof Viewer3d)_0x4abf54['clearSelection'](),_0x4abf54['setOtherObjectsOpacity'](_0x9f03b,DefaultOpacity);else _0x4abf54 instanceof BimTilesViewer&&(_0x4abf54['clearSelection'](),_0x4abf54['setOtherObjectOpacityByUserIds'](_0x9f03b['tilesetId'],[_0x9f03b['userId']],DefaultOpacity));enableXRayAll=!![];}};const ContextMenuItems=[[viewFitEntity,viewFitAll],[hideEntity,hideOthers,hideAll,showAll],[xRayEntity,xRayOthers,xRayAll,xRayNone],[selectEntity,selectNone]];
|
|
32
|
+
|
|
33
|
+
const en$8={'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 cn$8={'measure':'点击继续测量,\x20ESC\x20取消测量','areaMeasurement':'点击继续测量,\x20ESC\x20取消测量,点击起点完成测量'};const i18n$8=i18next['createInstance']();const lng$8='en';i18n$8['init']({'lng':lng$8,'debug':![],'resources':{'en':{'translation':en$8},'cn':{'translation':cn$8}}});
|
|
34
|
+
|
|
35
|
+
var MeasurementType;(function(_0x25b2d1){_0x25b2d1['Distance']='Distance',_0x25b2d1['Area']='Area',_0x25b2d1['Angle']='Angle',_0x25b2d1['Coordinate']='Coordinate';}(MeasurementType||(MeasurementType={})));class BaseMeasurement extends Event{constructor(_0x1d00e7,_0x964c5e,_0x40f99f,_0x206a9f,_0x1347d7){super(),this['actived']=![],this['mouseMoved']=![],this['mouseDowned']=![],this['touchDowned']=![],this['mouseDownPositionX']=-0x1,this['mouseDownPositionY']=-0x1,this['snapPoint']=undefined,this['touchstart']=_0x1c0ea3=>{this['mobileTouchHelper']&&this['mobileTouchHelper']['isIntersect'](_0x1c0ea3)&&!this['touchDowned']&&(this['clearClickedDrawable'](),this['viewer']['getCameraManager']()['enableControl'](![]),this['touchDowned']=!![],this['mouseDownPositionX']=_0x1c0ea3['x'],this['mouseDownPositionY']=_0x1c0ea3['y']);},this['touchmove']=_0x5b3d06=>{if(_0x5b3d06['pointers']&&_0x5b3d06['pointers']['length']>0x1)return;const {width:_0x25a181,height:_0x29cefd}=this['viewer']['viewerContainer']['getBoundingClientRect']();if(_0x5b3d06['x']>_0x25a181-0xf||_0x5b3d06['x']<0x23||_0x5b3d06['y']<0xf||_0x5b3d06['y']>_0x29cefd-0x23)return;if(this['touchDowned']&&this['mobileTouchHelper']){const _0x5dd2e3=_0x5b3d06['x']-this['mouseDownPositionX'],_0x229eef=_0x5b3d06['y']-this['mouseDownPositionY'];this['mobileTouchHelper']['translate'](_0x5dd2e3,_0x229eef),this['mouseDownPositionX']=_0x5b3d06['x'],this['mouseDownPositionY']=_0x5b3d06['y'];const _0x488502=this['mobileTouchHelper']['getTouchPoint'](),_0x36c80d=this['getIntersections'](_0x488502);if(!_0x36c80d['length']){this['osnapHelper']['deactivate']();return;}const _0xb8a88e=Date['now']();this['snapPoint']=this['osnapHelper']['handleSnap'](_0x36c80d,this['viewer']['is3d'](),this['lastMouseDownPosition']),log['debug']('[Measure]\x20handleSnap\x20took\x20'+(Date['now']()-_0xb8a88e)/0x3e8+'s');if(!this['snapPoint']){console['warn']('[Measure]\x20Failed\x20to\x20find\x20a\x20snap\x20point!');return;}this['onMouseMove'](this['snapPoint']);}},this['touchend']=_0x2f2edd=>{var _0x2bfae3;this['viewer']['getCameraManager']()['enableControl'](!![]);if(_0x2f2edd['pointers']&&_0x2f2edd['pointers']['length']>0x1)return;if(this['touchDowned']){this['touchDowned']=![];const _0x339c2b=(_0x2bfae3=this['mobileTouchHelper'])===null||_0x2bfae3===void 0x0?void 0x0:_0x2bfae3['getTouchPoint']();this['onMouseClick'](_0x339c2b);}else this['selectMeasurementByEvent'](_0x2f2edd);DeviceUtils['isMobile']&&(this['osnapHelper']['deactivate'](),this['dispatchEvent']('update'));},this['mousedown']=_0x540e76=>{this['mouseMoved']=![],this['mouseDowned']=!![],this['mouseDownPositionX']=_0x540e76['x'],this['mouseDownPositionY']=_0x540e76['y'];},this['mousemove']=_0x52e05c=>{this['lastMoveEvent']=_0x52e05c;if(this['mouseDownPositionX']>=0x0&&this['mouseDownPositionY']>=0x0){const _0x3d391f=0x5;(Math['abs'](_0x52e05c['x']-this['mouseDownPositionX'])>_0x3d391f||Math['abs'](_0x52e05c['y']-this['mouseDownPositionY'])>_0x3d391f)&&(this['mouseMoved']=!![]);}if(this['mouseDowned'])return;const _0x526b72=Date['now'](),_0x5644b7=this['getIntersections'](_0x52e05c);log['debug']('[Measure]\x20getIntersections\x20took\x20'+(Date['now']()-_0x526b72)/0x3e8+'s');if(!_0x5644b7['length']){this['osnapHelper']['deactivate']();return;}const _0x3bcc07=Date['now']();this['snapPoint']=this['osnapHelper']['handleSnap'](_0x5644b7,this['viewer']['is3d'](),this['lastMouseDownPosition']),log['debug']('[Measure]\x20OSnapHelper.handleSnap\x20took\x20'+(Date['now']()-_0x3bcc07)/0x3e8+'s');if(!this['snapPoint']){console['warn']('[Measure]\x20Failed\x20to\x20find\x20a\x20snap\x20point!');return;}this['onMouseMove'](this['snapPoint']);},this['mouseup']=_0x1c2f4d=>{this['mouseDowned']=![],!this['mouseMoved']&&this['onMouseClick'](_0x1c2f4d);},this['dblclick']=()=>{log['info']('[Measure]\x20Double\x20clicked');},this['keydown']=_0x36d575=>{if(_0x36d575['code']==='Enter'){const _0x3ad4e9={'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'](_0x3ad4e9);}else _0x36d575['code']==='Escape'&&this['cancel']();},this['getIntersections']=_0x518de7=>{const _0x59439e=new THREE['Vector2'](_0x518de7['x'],_0x518de7['y']);return this['viewer']['pickObjects'](_0x59439e,[]);},this['type']=_0x1d00e7,this['viewer']=_0x964c5e,this['inputManager']=_0x40f99f,this['drawList']=_0x206a9f,this['osnapHelper']=_0x1347d7;}get['overlayRender'](){return this['viewer']['getOverlayRender']();}get['renderer'](){return this['viewer']['renderer'];}get['isActive'](){return this['actived'];}get['isMeasuring'](){return this['completed']===![];}['setTouchHelper'](_0x53ed1c){this['mobileTouchHelper']=_0x53ed1c;}['createMobileExitButton'](){const _0x41b2c2=this['viewer']['widgetContainer'],_0x48bb29=document['createElement']('button');return _0x48bb29['innerText']='X',_0x48bb29['style']['cssText']='position:\x20absolute;right:\x205%;\x20top:\x205%;background-color:\x20#000000;color:\x20#ffffff;padding:\x203px\x2010px;font-weight:\x20bolder;',_0x41b2c2===null||_0x41b2c2===void 0x0?void 0x0:_0x41b2c2['appendChild'](_0x48bb29),this['exitButton']=_0x48bb29,this['exitButton']['style']['display']='none',_0x48bb29['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',i18n$8['t']('measure'),{'followPointer':!![],'showOnCreate':!![],'parentNode':this['viewer']['widgetContainer'],'target':this['viewer']['viewerContainer']});const _0x2e1883=document['getElementById']('measure-tooltip');_0x2e1883&&(_0x2e1883['style']['pointerEvents']='none'),this['setTooltipContent']();}this['inputManager']['addEventListener']('dblclick',this['dblclick']),this['inputManager']['addEventListener']('keydown',this['keydown']);}['deactivate'](){var _0x3a3e4a,_0x49db99;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']),(_0x3a3e4a=this['tooltip'])===null||_0x3a3e4a===void 0x0?void 0x0:_0x3a3e4a['hide'](),(_0x49db99=this['tooltip'])===null||_0x49db99===void 0x0?void 0x0:_0x49db99['destroy'](),this['tooltip']=undefined,this['currentMeasureDrawable']&&this['removeDrawable'](this['currentMeasureDrawable']),this['osnapHelper']['deactivate'](),this['drawingPoints']=undefined,this['currentMeasureDrawable']=undefined,this['lastMouseDownPosition']=undefined;}['removeDrawable'](_0xe9c09a){this['dispatchEvent']('beforeremove',_0xe9c09a);}['clearClickedDrawable'](){this['clickedOnMeasurementDrawable']&&(this['clickedOnMeasurementDrawable']['selected']=![],this['clickedOnMeasurementDrawable']=undefined);}['onMouseClick'](_0x43d9e8){if(DeviceUtils['isMobile'])return;const _0x920f2d=Date['now']();if(this['lastClickTime']&&_0x920f2d-this['lastClickTime']<0x1f4)return;this['lastClickTime']=_0x920f2d,this['selectMeasurementByEvent'](_0x43d9e8);}['selectMeasurementByEvent'](_0x281dfc){this['clickedOnMeasurementDrawable']&&(this['clickedOnMeasurementDrawable']['selected']=![],this['clickedOnMeasurementDrawable']=undefined);if(this['completed']==undefined||this['completed']===!![]){const _0x447e1a=this['getIntersections'](_0x281dfc)[0x0];if(_0x447e1a){const _0x115117=this['overlayRender']['getDrawablesByDrawableListAndPosition'](this['drawList'],_0x447e1a['point']);_0x115117&&(this['dispatchEvent']('onclick',_0x115117),this['clickedOnMeasurementDrawable']=_0x115117);}}}['onMouseMove'](_0x29e16e){this['createOrUpdateMeasureDrawable'](_0x29e16e);}['createOrUpdateMeasureDrawable'](_0x2a28df){if(!this['drawingPoints'])return;if(this['drawingPoints']&&this['drawingPoints']['length']<0x1)return;const _0x5276d7=[...this['drawingPoints']];if(!this['currentMeasureDrawable']){this['currentMeasureDrawable']=this['createMeasureDrawable']();this['currentMeasureDrawable']&&(this['currentMeasureDrawable']['selected']=!![]);this['dispatchEvent']('beforeadd',this['currentMeasureDrawable']);return;}_0x2a28df&&_0x5276d7['push'](_0x2a28df),this['currentMeasureDrawable']['selected']=!![],this['currentMeasureDrawable']['update'](_0x5276d7),this['currentMeasureDrawable']['setDrawingState'](!![]),this['dispatchEvent']('update');}}
|
|
36
|
+
|
|
37
|
+
class BaseMeasureDrawable extends Drawable{constructor(_0x549d8a,_0x419865){super(_0x549d8a),this['type']=MeasurementType['Distance'],this['labelBounds']=new THREE['Box2'](),this['drawing']=![],this['update'](_0x419865);}['setDrawingState'](_0x26a7e0){this['drawing']=_0x26a7e0;}['drawSelect'](_0x5f263c,_0x15111b){const _0x43f689=this['getVertexes']();this['drawPoints'](_0x5f263c,_0x15111b,_0x43f689);}['drawPoints'](_0x412db2,_0x4247a8,_0x52137c){_0x412db2['save'](),_0x412db2['fillStyle']=BaseMeasureDrawable['MAJOR_COLOR'],_0x412db2['strokeStyle']=BaseMeasureDrawable['MINOR_COLOR'],_0x412db2['lineWidth']=BaseMeasureDrawable['LINE_WIDTH'],_0x412db2['beginPath']();const _0x48477e=this['drawing']?_0x52137c['slice'](0x0,_0x52137c['length']-0x1):_0x52137c;_0x48477e['forEach'](_0x34b2b0=>{const _0x1ce41d=this['transToScreenCoord'](_0x34b2b0,_0x4247a8);_0x412db2['moveTo'](_0x1ce41d['x']+BaseMeasureDrawable['POINT_RADIUS'],_0x1ce41d['y']),_0x412db2['arc'](_0x1ce41d['x'],_0x1ce41d['y'],BaseMeasureDrawable['POINT_RADIUS'],0x0,Math['PI']*0x2);}),_0x412db2['closePath'](),_0x412db2['fill'](),_0x412db2['stroke'](),_0x412db2['restore']();}['drawText'](_0x453fa0,_0x59e2f6){if(!this['label']||!this['labelPositon'])return;_0x453fa0['font']=BaseMeasureDrawable['LABEL_FONT_SIZE']+'px\x20Arial';const _0x2e46f8=_0x453fa0['measureText'](this['label'])['width']*1.2,_0x29d661=BaseMeasureDrawable['LABEL_FONT_SIZE']*1.5;this['labelBounds']['setFromCenterAndSize'](this['labelPositon'],new THREE['Vector2'](_0x2e46f8,_0x29d661)),this['drawRoundRect'](_0x453fa0,this['labelPositon']['x']-_0x2e46f8/0x2,this['labelPositon']['y']-_0x29d661/0x2,_0x2e46f8,_0x29d661,0x4),_0x453fa0['save'](),_0x453fa0['fillStyle']=BaseMeasureDrawable['MINOR_COLOR'],_0x453fa0['textBaseline']='middle',_0x453fa0['textAlign']='center',_0x453fa0['fillText'](this['label'],this['labelPositon']['x'],this['labelPositon']['y']),_0x453fa0['restore']();}['drawRoundRect'](_0x5902b0,_0x233393,_0x2e91e0,_0x284381,_0x3a4ad3,_0x5b87d4){_0x284381<0x2*_0x5b87d4&&(_0x5b87d4=_0x284381/0x2),_0x3a4ad3<0x2*_0x5b87d4&&(_0x5b87d4=_0x3a4ad3/0x2),_0x5902b0['save'](),_0x5902b0['fillStyle']=BaseMeasureDrawable['MAJOR_COLOR'],_0x5902b0['strokeStyle']=BaseMeasureDrawable['MINOR_COLOR'],_0x5902b0['lineWidth']=BaseMeasureDrawable['LINE_WIDTH'],_0x5902b0['beginPath'](),_0x5902b0['moveTo'](_0x233393+_0x5b87d4,_0x2e91e0),_0x5902b0['arcTo'](_0x233393+_0x284381,_0x2e91e0,_0x233393+_0x284381,_0x2e91e0+_0x3a4ad3,_0x5b87d4),_0x5902b0['arcTo'](_0x233393+_0x284381,_0x2e91e0+_0x3a4ad3,_0x233393,_0x2e91e0+_0x3a4ad3,_0x5b87d4),_0x5902b0['arcTo'](_0x233393,_0x2e91e0+_0x3a4ad3,_0x233393,_0x2e91e0,_0x5b87d4),_0x5902b0['arcTo'](_0x233393,_0x2e91e0,_0x233393+_0x284381,_0x2e91e0,_0x5b87d4),_0x5902b0['closePath'](),_0x5902b0['fill'](),this['selected']&&_0x5902b0['stroke'](),_0x5902b0['restore']();}['getVertexes'](){return this['points'];}['update'](_0x200a7d){return this['points']=_0x200a7d,this;}['getData'](){return {'id':this['id'],'type':this['type'],'points':this['points']['map'](_0x27d74b=>[_0x27d74b['x'],_0x27d74b['y'],_0x27d74b['z']])};}['setData'](_0x1e4341){super['setData'](_0x1e4341),this['setLineColor'](ColorUtils['cssColor2FloatArray'](BaseMeasureDrawable['MAJOR_COLOR'])),this['setFillColor'](ColorUtils['cssColor2FloatArray'](BaseMeasureDrawable['AREA_FILL_COLOR'])),this['setLineWidth'](BaseMeasureDrawable['LINE_WIDTH']);}['isPointInPath'](_0x31366a,_0x7285d7){const _0x1acdc7=_0x7285d7===null||_0x7285d7===void 0x0?void 0x0:_0x7285d7['ray'];if(!_0x1acdc7)return ![];const _0x2808cc=0x3*this['tolerance'],_0x539c63=this['transToScreenCoord'](_0x31366a,_0x7285d7['camera']);if(this['labelBounds']['containsPoint'](_0x539c63))return !![];const _0x3f5a1d=new THREE['Vector3'](),_0x3844f8=new THREE['Vector3'](),_0x15d89a=this['points'];for(let _0x5235f4=0x0;_0x5235f4<_0x15d89a['length']-0x1;_0x5235f4++){const _0x1b010b=_0x15d89a[_0x5235f4],_0x4987d6=_0x15d89a[_0x5235f4+0x1]||_0x15d89a[0x0],_0x4b2c32=_0x1acdc7['distanceSqToSegment'](_0x1b010b,_0x4987d6,_0x3844f8,_0x3f5a1d);if(_0x4b2c32<_0x2808cc*_0x2808cc)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(_0x4c33fc,_0x2d0a9c){super(_0x4c33fc,_0x2d0a9c),this['type']=MeasurementType['Angle'],this['update'](_0x2d0a9c);}['draw'](_0x403867,_0x16c004){_0x403867['save'](),_0x403867['lineWidth']=BaseMeasureDrawable['LINE_WIDTH'],_0x403867['strokeStyle']=BaseMeasureDrawable['MAJOR_COLOR'];const _0x4899c5=this['points'];_0x403867['beginPath'](),_0x4899c5['forEach']((_0x208afb,_0x12e4ee)=>{const _0x4254ba=this['transToScreenCoord'](_0x208afb,_0x16c004);_0x12e4ee===0x0?_0x403867['moveTo'](_0x4254ba['x'],_0x4254ba['y']):_0x403867['lineTo'](_0x4254ba['x'],_0x4254ba['y']);});if(this['points']['length']===0x3){const [_0x56ab14,_0x1a2c14,_0x5dad48]=this['points']['map'](_0x90e2fd=>this['transToScreenCoord'](_0x90e2fd,_0x16c004)),_0x216a0a=new THREE['Vector2']()['subVectors'](_0x56ab14,_0x1a2c14)['normalize'](),_0x34e7f0=new THREE['Vector2']()['subVectors'](_0x5dad48,_0x1a2c14)['normalize'](),_0x3c2423=Math['min'](_0x56ab14['distanceTo'](_0x1a2c14),_0x5dad48['distanceTo'](_0x1a2c14)),_0x4dcc15=_0x216a0a['angle'](),_0x33da7b=_0x34e7f0['angle']();_0x403867['moveTo'](_0x1a2c14['x'],_0x1a2c14['y']),_0x403867['arc'](_0x1a2c14['x'],_0x1a2c14['y'],_0x3c2423/0x5,_0x4dcc15,_0x33da7b,_0x216a0a['cross'](_0x34e7f0)<0x0);}_0x403867['stroke'](),_0x403867['restore']();if(this['drawing']){const _0x23cb4d=this['points']['length']===0x1?this['points']:this['points']['slice'](0x0,this['points']['length']-0x1);this['drawPoints'](_0x403867,_0x16c004,_0x23cb4d);}this['drawText'](_0x403867,_0x16c004);}['drawText'](_0x3a3514,_0x3f1355){if(this['points']['length']<0x3)return;const [_0x1c3333,_0x13532f,_0xdf48bc]=this['points'],_0x4291bc=this['getAngleBisector'](_0x1c3333,_0x13532f,_0xdf48bc),_0x101a09=this['calculateAngle'](_0x1c3333,_0x13532f,_0xdf48bc);this['label']=showPrecisionValue(_0x101a09,0x2)+'\x20'+this['getUnitString']();const _0xd40df0=Math['min'](_0x1c3333['distanceTo'](_0x13532f),_0xdf48bc['distanceTo'](_0x13532f)),_0x128436=_0xd40df0*0.3;this['labelPositon']=this['transToScreenCoord'](_0x13532f['clone']()['add'](new THREE['Vector3'](_0x4291bc['x']*_0x128436,_0x4291bc['y']*_0x128436,_0x4291bc['z']*_0x128436)),_0x3f1355),super['drawText'](_0x3a3514,_0x3f1355);}['getAngleBisector'](_0x12e777,_0x4d5152,_0x15e7f7){const _0x27c11b=_0x12e777,_0x51bd0d=_0x4d5152,_0x582532=_0x15e7f7,_0x4a67c2=new THREE['Vector3'](_0x27c11b['x']-_0x51bd0d['x'],_0x27c11b['y']-_0x51bd0d['y'],_0x27c11b['z']-_0x51bd0d['z'])['normalize'](),_0x53e5d3=new THREE['Vector3'](_0x582532['x']-_0x51bd0d['x'],_0x582532['y']-_0x51bd0d['y'],_0x582532['z']-_0x51bd0d['z'])['normalize']();return new THREE['Vector3'](_0x4a67c2['x']+_0x53e5d3['x'],_0x4a67c2['y']+_0x53e5d3['y'],_0x4a67c2['z']+_0x53e5d3['z'])['normalize']();}['calculateAngle'](_0xd7b6f9,_0x34c9f2,_0x3289ba){const _0x207929=_0xd7b6f9,_0x5c7183=_0x34c9f2,_0x46d66d=_0x3289ba,_0x1b5d2d=new THREE['Vector3'](_0x207929['x']-_0x5c7183['x'],_0x207929['y']-_0x5c7183['y'],_0x207929['z']-_0x5c7183['z']),_0x306558=new THREE['Vector3'](_0x46d66d['x']-_0x5c7183['x'],_0x46d66d['y']-_0x5c7183['y'],_0x46d66d['z']-_0x5c7183['z']),_0x4d37ca=_0x1b5d2d['angleTo'](_0x306558);return _0x4d37ca*0xb4/Math['PI'];}['getClassType'](){return 'Angle';}}CanvasRender['_registerDrawableClass'](AngleMeasureDrawable);
|
|
40
|
+
|
|
41
|
+
class AngleMeasurement extends BaseMeasurement{constructor(_0x135a37,_0x35658f,_0x5557f8,_0x15b783){super(MeasurementType['Angle'],_0x135a37,_0x35658f,_0x5557f8,_0x15b783);}['createMeasureDrawable'](){if(!this['drawingPoints'])return undefined;return new AngleMeasureDrawable(CommonUtils['guid'](),this['drawingPoints']);}['onMouseClick'](_0x540499){var _0x5706c0;super['onMouseClick'](_0x540499);if(this['clickedOnMeasurementDrawable'])return;!this['drawingPoints']&&(this['drawingPoints']=[]);if(_0x540499['button']===MouseButton['Right']){this['exitDrawing']();return;}const _0x52f0cf=this['getIntersections'](_0x540499)[0x0];if(!_0x52f0cf)return;const _0x4df066=(_0x5706c0=this['snapPoint'])!==null&&_0x5706c0!==void 0x0?_0x5706c0:_0x52f0cf===null||_0x52f0cf===void 0x0?void 0x0:_0x52f0cf['point'];if(this['drawingPoints'][0x0]&&MathUtils['areVector3sEqual'](this['drawingPoints'][0x0],_0x4df066))return;const _0x269148=this['drawingPoints'];_0x269148['push'](_0x4df066),this['lastMouseDownPosition']=_0x4df066,_0x269148['length']===0x1&&(this['dispatchEvent']('firstpointpicked'),this['completed']=![]),this['createOrUpdateMeasureDrawable'](),_0x269148['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 _0x505d7c;if(this['completed']===!![])return;(_0x505d7c=this['currentMeasureDrawable'])===null||_0x505d7c===void 0x0?void 0x0:_0x505d7c['setDrawingState'](![]),this['dispatchEvent']('complete',this['currentMeasureDrawable']),this['completed']=!![],this['currentMeasureDrawable']=undefined,this['drawingPoints']=undefined,this['lastMouseDownPosition']=undefined;}['cancel'](){const _0x359c97=this['drawingPoints'];if(_0x359c97&&_0x359c97['length']>0x0){_0x359c97['pop']();_0x359c97['length']===0x0&&(this['currentMeasureDrawable']&&(this['removeDrawable'](this['currentMeasureDrawable']),this['currentMeasureDrawable']=undefined),this['completed']=!![]);if(this['lastMoveEvent']){const _0x4c08a2=this['getIntersections'](this['lastMoveEvent'])[0x0];_0x4c08a2&&this['onMouseMove'](_0x4c08a2['point']);}}this['osnapHelper']['deactivate'](),this['lastMouseDownPosition']=undefined;}['deactivate'](){super['deactivate'](),this['currentMeasureDrawable']&&this['removeDrawable'](this['currentMeasureDrawable']);}['setTooltipContent'](){var _0x3ad98f;const _0x406843=i18n$8['t']('measure');_0x406843&&this['tooltip']&&((_0x3ad98f=this['tooltip'])===null||_0x3ad98f===void 0x0?void 0x0:_0x3ad98f['setContent'](_0x406843));}}
|
|
42
|
+
|
|
43
|
+
class AreaMeasureDrawable extends BaseMeasureDrawable{constructor(_0x50288f,_0x5d82e7,_0x1d34a8){super(_0x50288f,_0x5d82e7),this['type']=MeasurementType['Area'],this['scale']=_0x1d34a8,this['update'](_0x5d82e7);}['draw'](_0x31c0fa,_0x5c1060){const _0x1da4f7=this['points'];_0x31c0fa['save'](),_0x31c0fa['lineWidth']=BaseMeasureDrawable['LINE_WIDTH'],_0x31c0fa['strokeStyle']=BaseMeasureDrawable['MAJOR_COLOR'],_0x31c0fa['fillStyle']=BaseMeasureDrawable['AREA_FILL_COLOR'],_0x31c0fa['beginPath'](),_0x1da4f7['forEach']((_0x3b2555,_0x28618a)=>{const _0x2695d1=this['transToScreenCoord'](_0x3b2555,_0x5c1060);_0x28618a===0x0?_0x31c0fa['moveTo'](_0x2695d1['x'],_0x2695d1['y']):_0x31c0fa['lineTo'](_0x2695d1['x'],_0x2695d1['y']);}),_0x31c0fa['closePath'](),_0x31c0fa['fill'](),_0x31c0fa['stroke'](),_0x31c0fa['restore']();if(this['drawing']){const _0x302345=this['points']['length']===0x1?this['points']:this['points']['slice'](0x0,this['points']['length']-0x1);this['drawPoints'](_0x31c0fa,_0x5c1060,_0x302345);}this['drawText'](_0x31c0fa,_0x5c1060);}['drawText'](_0x2a730d,_0x2bbbf5){if(this['points']['length']<0x3)return;const _0x4de4b3=this['points'];let _0x165807=this['calculateArea'](_0x4de4b3);this['scale']&&(_0x165807*=Math['pow'](this['scale'],0x2)),this['label']=''+showPrecisionValue(_0x165807,0x2),this['labelPositon']=this['transToScreenCoord'](this['getBarycenter'](_0x4de4b3),_0x2bbbf5),super['drawText'](_0x2a730d,_0x2bbbf5);}['calculateArea'](_0x16ed1f){let _0xf3770e=0x0;const _0x18b846=PolygonUtils['getFaces'](_0x16ed1f);for(let _0x578a4b=0x0;_0x578a4b<_0x18b846['length']/0x3;_0x578a4b++){const _0x415093=_0x16ed1f[_0x18b846[0x3*_0x578a4b]],_0x5e5579=_0x16ed1f[_0x18b846[0x3*_0x578a4b+0x1]],_0x31678c=_0x16ed1f[_0x18b846[0x3*_0x578a4b+0x2]],_0x5d347d=_0x5e5579['clone']()['sub'](_0x415093),_0x2cf3f6=_0x31678c['clone']()['sub'](_0x415093);_0xf3770e+=_0x5d347d['cross'](_0x2cf3f6)['length']()/0x2;}return _0xf3770e;}['getBarycenter'](_0x4547fe){const _0x341283=_0x4547fe['length'];let _0x50ce7d=0x0,_0x584546=0x0,_0x5c6a02=0x0;return _0x4547fe['forEach'](_0x43e12a=>{_0x50ce7d+=_0x43e12a['x'],_0x584546+=_0x43e12a['y'],_0x5c6a02+=_0x43e12a['z'];}),new THREE['Vector3'](_0x50ce7d/_0x341283,_0x584546/_0x341283,_0x5c6a02/_0x341283);}['isPointInPath'](_0xa45e78,_0x3d4751){const _0x542092=_0x3d4751===null||_0x3d4751===void 0x0?void 0x0:_0x3d4751['ray'];if(!_0x542092)return ![];const _0x4f682e=this['transToScreenCoord'](_0xa45e78,_0x3d4751['camera']);if(this['labelBounds']['containsPoint'](_0x4f682e))return !![];const _0x3ec2fb=0x3*this['tolerance'],_0x273e11=new THREE['Vector3'](),_0x560a3e=new THREE['Vector3'](),_0x78a055=this['points'];for(let _0x3d8e0f=0x0;_0x3d8e0f<_0x78a055['length'];_0x3d8e0f++){const _0x3329ca=_0x78a055[_0x3d8e0f],_0x446a90=_0x78a055[_0x3d8e0f+0x1]||_0x78a055[0x0],_0x359c36=_0x542092['distanceSqToSegment'](_0x3329ca,_0x446a90,_0x560a3e,_0x273e11);if(_0x359c36<_0x3ec2fb*_0x3ec2fb)return !![];}const _0x33cc30=PolygonUtils['getFaces'](this['points']);for(let _0x437564=0x0;_0x437564<_0x33cc30['length']/0x3;_0x437564++){const _0x3cd450=this['points'][_0x33cc30[0x3*_0x437564]],_0x4c018e=this['points'][_0x33cc30[0x3*_0x437564+0x1]],_0x435387=this['points'][_0x33cc30[0x3*_0x437564+0x2]],_0x428dfd=_0x542092['intersectTriangle'](_0x3cd450,_0x4c018e,_0x435387,![],_0xa45e78);if(_0x428dfd)return !![];}return ![];}['getClassType'](){return 'Area';}}CanvasRender['_registerDrawableClass'](AreaMeasureDrawable);
|
|
44
|
+
|
|
45
|
+
const tempVec=new THREE['Vector3']();class AreaMeasurement extends BaseMeasurement{constructor(_0x56a1d8,_0x2e1f88,_0x137bfc,_0x565eef){super(MeasurementType['Area'],_0x56a1d8,_0x2e1f88,_0x137bfc,_0x565eef);}['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'](_0x421ed0){super['onMouseMove'](_0x421ed0);if(this['drawingPoints']&&this['drawingPoints']['length']>0x2&&this['drawingPoints'][0x0]){const _0x16eed9=this['drawingPoints'][0x0];tempVec['subVectors'](_0x421ed0,_0x16eed9)['length']()<this['viewer']['getPixelSizeInWorldCoord']()*0x3&&(this['osnapHelper']['activateMarker'](OSnapType['Vertex'],{'point':_0x16eed9,'type':OSnapType['Vertex'],'distance':0x0}),log['info']('[Measure]\x20auto\x20close\x20area\x20measurement.'));}}['onMouseClick'](_0x3ec053){var _0x2e71bb,_0x51e84a;super['onMouseClick'](_0x3ec053);if(this['clickedOnMeasurementDrawable'])return;!this['drawingPoints']&&(this['drawingPoints']=[]);const _0x5d64c9=this['drawingPoints'];if(_0x3ec053['button']===MouseButton['Right']){this['exitDrawing']();return;}const _0x192a05=this['getIntersections'](_0x3ec053)[0x0];if(!_0x192a05){log['warn']('[Measure]\x20No\x20intersection\x20found!');return;}const _0x573d0f=(_0x51e84a=(_0x2e71bb=this['snapPoint'])===null||_0x2e71bb===void 0x0?void 0x0:_0x2e71bb['clone']())!==null&&_0x51e84a!==void 0x0?_0x51e84a:_0x192a05===null||_0x192a05===void 0x0?void 0x0:_0x192a05['point']['clone']();if(this['drawingPoints']&&this['drawingPoints']['length']>0x2&&this['drawingPoints'][0x0]){const _0x4d3266=this['drawingPoints'][0x0];if(tempVec['subVectors'](_0x573d0f,_0x4d3266)['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],_0x573d0f))return;_0x5d64c9['push'](_0x573d0f),this['lastMouseDownPosition']=_0x573d0f,_0x5d64c9['length']===0x1&&(this['dispatchEvent']('firstpointpicked'),this['completed']=![]),this['createOrUpdateMeasureDrawable']();}['exitDrawing'](){const _0x18cde3=this['drawingPoints']||[];let _0x6fa8cf=!![];_0x18cde3['length']<0x3&&(log['warn']('[Measure]\x20If\x20the\x20number\x20of\x20points\x20is\x20less\x20than\x203,\x20the\x20measurement\x20area\x20cannot\x20be\x20formed\x20!'),_0x6fa8cf=![]);_0x6fa8cf&&PolygonUtils['isSelfIntersecting'](_0x18cde3)&&(log['warn']('[Measure]\x20The\x20area\x20formed\x20by\x20these\x20points\x20intersects\x20itself,\x20so\x20the\x20correct\x20measurement\x20cannot\x20be\x20obtained\x20!'),_0x6fa8cf=![]);if(!_0x6fa8cf){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 _0x26acfa;if(this['completed']===!![])return;(_0x26acfa=this['currentMeasureDrawable'])===null||_0x26acfa===void 0x0?void 0x0:_0x26acfa['setDrawingState'](![]),this['dispatchEvent']('complete',this['currentMeasureDrawable']),this['completed']=!![],this['drawingPoints']=undefined,this['currentMeasureDrawable']=undefined,this['lastMouseDownPosition']=undefined;}['cancel'](){const _0x5e2051=this['drawingPoints'];if(_0x5e2051&&_0x5e2051['length']>0x0){_0x5e2051['pop']();_0x5e2051['length']===0x0&&(this['currentMeasureDrawable']&&(this['removeDrawable'](this['currentMeasureDrawable']),this['currentMeasureDrawable']=undefined),this['completed']=!![]);if(this['lastMoveEvent']){const _0x2fb4f9=this['getIntersections'](this['lastMoveEvent'])[0x0];_0x2fb4f9&&this['onMouseMove'](_0x2fb4f9['point']);}}this['osnapHelper']['deactivate'](),this['lastMouseDownPosition']=undefined;}['setTooltipContent'](){var _0x42d9b4;const _0x5238dd=i18n$8['t']('areaMeasurement');_0x5238dd&&this['tooltip']&&((_0x42d9b4=this['tooltip'])===null||_0x42d9b4===void 0x0?void 0x0:_0x42d9b4['setContent'](_0x5238dd));}['getScale'](){return this['scale'];}['setScale'](_0x573516){this['scale']=_0x573516;const _0x2d2c78=this['drawList']['getDrawables']();for(const _0x2816e7 of _0x2d2c78){const _0x35216b=_0x2816e7[0x1];_0x35216b instanceof AreaMeasureDrawable&&(_0x35216b['scale']=_0x573516);}}}
|
|
46
|
+
|
|
47
|
+
class CoordinateMeasureDrawable extends BaseMeasureDrawable{constructor(_0x43114b,_0x25ad14){super(_0x43114b,_0x25ad14),this['type']=MeasurementType['Coordinate'],this['update'](_0x25ad14);}['draw'](_0x4ce121,_0x372050){this['drawText'](_0x4ce121,_0x372050),_0x4ce121['save'](),_0x4ce121['lineWidth']=BaseMeasureDrawable['LINE_WIDTH'],_0x4ce121['strokeStyle']=BaseMeasureDrawable['MAJOR_COLOR'],_0x4ce121['fillStyle']=BaseMeasureDrawable['AREA_FILL_COLOR'];const _0x19ab72=this['points'];_0x4ce121['beginPath'](),_0x19ab72['forEach'](_0x39f1ae=>{const _0x4458e4=this['transToScreenCoord'](_0x39f1ae,_0x372050);_0x4ce121['arc'](_0x4458e4['x'],_0x4458e4['y'],BaseMeasureDrawable['POINT_RADIUS'],0x0,Math['PI']*0x2);}),_0x4ce121['fill'](),_0x4ce121['stroke'](),_0x4ce121['restore']();}['drawText'](_0x1e2270,_0x5b3ae5){const _0x1befcb=this['points'][0x0];MathUtils['areNumbersEqual'](_0x1befcb['x'],0x0);const _0x20088a=MathUtils['areNumbersEqual'](_0x1befcb['x'],0x0)?0x0:_0x1befcb['x'],_0x5ad8a8=MathUtils['areNumbersEqual'](_0x1befcb['y'],0x0)?0x0:_0x1befcb['y'],_0x2e8ccb=MathUtils['areNumbersEqual'](_0x1befcb['z'],0x0)?0x0:_0x1befcb['z'];this['label']=showPrecisionValue(_0x20088a,0x2)+',\x20'+showPrecisionValue(_0x5ad8a8,0x2)+',\x20'+showPrecisionValue(_0x2e8ccb,0x2),_0x1e2270['font']=BaseMeasureDrawable['LABEL_FONT_SIZE']+'px\x20Arial';const _0x55bab3=_0x1e2270['measureText'](this['label'])['width']*1.2,_0x2f82ab=BaseMeasureDrawable['LABEL_FONT_SIZE']*1.5;this['labelPositon']=this['transToScreenCoord'](_0x1befcb,_0x5b3ae5),this['labelPositon']['y']-=_0x2f82ab/0x2,this['labelBounds']['setFromCenterAndSize'](this['labelPositon'],new THREE['Vector2'](_0x55bab3,_0x2f82ab)),this['drawRoundRect'](_0x1e2270,this['labelPositon']['x']-_0x55bab3/0x2,this['labelPositon']['y']-_0x2f82ab/0x2,_0x55bab3,_0x2f82ab,0x4),_0x1e2270['save'](),_0x1e2270['fillStyle']=BaseMeasureDrawable['MINOR_COLOR'],_0x1e2270['textBaseline']='middle',_0x1e2270['textAlign']='center',_0x1e2270['fillText'](this['label'],this['labelPositon']['x'],this['labelPositon']['y']),_0x1e2270['restore']();}['getClassType'](){return 'Coordinate';}}CanvasRender['_registerDrawableClass'](CoordinateMeasureDrawable);
|
|
48
|
+
|
|
49
|
+
class CoordinateMeasurement extends BaseMeasurement{constructor(_0x209f3d,_0x585ca9,_0x2f513d,_0x22e83b){super(MeasurementType['Coordinate'],_0x209f3d,_0x585ca9,_0x2f513d,_0x22e83b);}['createMeasureDrawable'](){if(!this['drawingPoints'])return undefined;return new CoordinateMeasureDrawable(CommonUtils['guid'](),this['drawingPoints']);}['onMouseClick'](_0x5173ed){var _0x5bef66;super['onMouseClick'](_0x5173ed);if(this['clickedOnMeasurementDrawable'])return;!this['drawingPoints']&&(this['drawingPoints']=[]);if(_0x5173ed['button']===MouseButton['Right']){this['exitDrawing']();return;}const _0x1e969d=this['getIntersections'](_0x5173ed)[0x0];if(!_0x1e969d)return;const _0x49c9b7=(_0x5bef66=this['snapPoint'])!==null&&_0x5bef66!==void 0x0?_0x5bef66:_0x1e969d===null||_0x1e969d===void 0x0?void 0x0:_0x1e969d['point'],_0x169a5a=this['drawingPoints'];_0x169a5a['push'](_0x49c9b7),this['lastMouseDownPosition']=_0x49c9b7,_0x169a5a['length']===0x1&&(this['dispatchEvent']('firstpointpicked'),this['completed']=![]),this['createOrUpdateMeasureDrawable'](_0x49c9b7),_0x169a5a['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 _0x3e0733=this['drawingPoints'];if(_0x3e0733&&_0x3e0733['length']>0x0){_0x3e0733['pop']();_0x3e0733['length']===0x0&&(this['completed']=!![]);if(this['lastMoveEvent']){const _0x51e5f3=this['getIntersections'](this['lastMoveEvent'])[0x0];_0x51e5f3&&this['onMouseMove'](_0x51e5f3['point']);}}this['osnapHelper']['deactivate'](),this['drawingPoints']=undefined,this['currentMeasureDrawable']=undefined,this['lastMouseDownPosition']=undefined;}['setTooltipContent'](){var _0x5d78c7;const _0x33c998=i18n$8['t']('measure');_0x33c998&&this['tooltip']&&((_0x5d78c7=this['tooltip'])===null||_0x5d78c7===void 0x0?void 0x0:_0x5d78c7['setContent'](_0x33c998));}}
|
|
50
|
+
|
|
51
|
+
class DistanceMeasureDrawable extends BaseMeasureDrawable{constructor(_0x8defa0,_0x2c74a8,_0x584a84){super(_0x8defa0,_0x2c74a8),this['type']=MeasurementType['Distance'],this['scale']=_0x584a84,this['update'](_0x2c74a8);}['draw'](_0x34fd0f,_0x4dfc39){const _0x5337a1=this['points'];_0x34fd0f['save'](),_0x34fd0f['lineWidth']=BaseMeasureDrawable['LINE_WIDTH'],_0x34fd0f['strokeStyle']=BaseMeasureDrawable['MAJOR_COLOR'],_0x34fd0f['beginPath'](),_0x5337a1['forEach']((_0x14d1fd,_0x4b2b85)=>{const _0x3e11e3=this['transToScreenCoord'](_0x14d1fd,_0x4dfc39);_0x4b2b85===0x0?_0x34fd0f['moveTo'](_0x3e11e3['x'],_0x3e11e3['y']):_0x34fd0f['lineTo'](_0x3e11e3['x'],_0x3e11e3['y']);}),_0x34fd0f['closePath'](),_0x34fd0f['stroke'](),_0x34fd0f['restore']();if(this['drawing']){const _0x533823=this['points']['length']===0x1?this['points']:this['points']['slice'](0x0,this['points']['length']-0x1);this['drawPoints'](_0x34fd0f,_0x4dfc39,_0x533823);}else !this['selected']&&this['drawVerticalLine'](_0x34fd0f,_0x4dfc39);this['drawText'](_0x34fd0f,_0x4dfc39);}['drawText'](_0x30e12c,_0x434802){if(this['points']['length']<0x2)return;const [_0x2eff9c,_0x212c41]=this['points'];let _0xeeaeac=_0x2eff9c['distanceTo'](_0x212c41);this['scale']&&(_0xeeaeac*=this['scale']),this['label']=''+showPrecisionValue(_0xeeaeac,0x2),this['labelPositon']=this['transToScreenCoord'](new THREE['Vector3']()['lerpVectors'](_0x2eff9c,_0x212c41,0.5),_0x434802),super['drawText'](_0x30e12c,_0x434802);}['drawVerticalLine'](_0x13db16,_0x5089e4){if(this['points']['length']<0x2)return;const [_0x409653,_0x433160]=this['points']['map'](_0x24c06f=>this['transToScreenCoord'](_0x24c06f,_0x5089e4)),[_0x1a17e4,_0x2d8738]=this['getShortLineBySegments'](_0x409653,_0x433160),[_0x211bac,_0x35cf6b]=this['getShortLineBySegments'](_0x433160,_0x409653);_0x13db16['save'](),_0x13db16['lineWidth']=BaseMeasureDrawable['LINE_WIDTH'],_0x13db16['strokeStyle']=BaseMeasureDrawable['MAJOR_COLOR'],_0x13db16['beginPath'](),_0x13db16['moveTo'](_0x1a17e4['x'],_0x1a17e4['y']),_0x13db16['lineTo'](_0x2d8738['x'],_0x2d8738['y']),_0x13db16['moveTo'](_0x211bac['x'],_0x211bac['y']),_0x13db16['lineTo'](_0x35cf6b['x'],_0x35cf6b['y']),_0x13db16['stroke'](),_0x13db16['restore']();}['getShortLineBySegments'](_0x2fbcf7,_0x250ac1){const _0x542799=new THREE['Vector2']()['subVectors'](_0x250ac1,_0x2fbcf7)['normalize'](),_0x3ecb4c=DistanceMeasureDrawable['SHORT_LINE_LENGTH']/0x2,_0xad7953=Math['PI']/0x2,_0x566c96=_0x542799['clone']()['rotateAround'](new THREE['Vector2'](),_0xad7953)['normalize']()['multiplyScalar'](_0x3ecb4c)['add'](_0x2fbcf7),_0x4603a4=_0x542799['clone']()['rotateAround'](new THREE['Vector2'](),-_0xad7953)['normalize']()['multiplyScalar'](_0x3ecb4c)['add'](_0x2fbcf7);return [_0x566c96,_0x4603a4];}['getClassType'](){return 'Distance';}['setScale'](_0xfae203){this['scale']=_0xfae203;}}DistanceMeasureDrawable['SHORT_LINE_LENGTH']=0xc,CanvasRender['_registerDrawableClass'](DistanceMeasureDrawable);
|
|
52
|
+
|
|
53
|
+
class DistanceMeasurement extends BaseMeasurement{constructor(_0x4ff3e2,_0x32cbb8,_0x134e72,_0xf8350c){super(MeasurementType['Distance'],_0x4ff3e2,_0x32cbb8,_0x134e72,_0xf8350c);}['createMeasureDrawable'](){if(!this['drawingPoints'])return undefined;return new DistanceMeasureDrawable(CommonUtils['guid'](),this['drawingPoints'],this['scale']);}['onMouseClick'](_0x4e803a){var _0x4717f1;super['onMouseClick'](_0x4e803a);if(this['clickedOnMeasurementDrawable'])return;!this['drawingPoints']&&(this['drawingPoints']=[]);if(_0x4e803a['button']===MouseButton['Right']){this['exitDrawing']();return;}const _0xb2881e=this['getIntersections'](_0x4e803a)[0x0];if(!_0xb2881e)return;const _0x2802c2=(_0x4717f1=this['snapPoint'])!==null&&_0x4717f1!==void 0x0?_0x4717f1:_0xb2881e===null||_0xb2881e===void 0x0?void 0x0:_0xb2881e['point'];if(this['drawingPoints'][0x0]&&MathUtils['areVector3sEqual'](this['drawingPoints'][0x0],_0x2802c2))return;const _0x3c8471=this['drawingPoints'];_0x3c8471['length']<0x2&&_0x3c8471['push'](_0x2802c2),this['lastMouseDownPosition']=_0x2802c2,_0x3c8471['length']===0x1&&(this['dispatchEvent']('firstpointpicked'),this['completed']=![]),this['createOrUpdateMeasureDrawable'](),_0x3c8471['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 _0x15080c;if(this['completed']===!![])return;(_0x15080c=this['currentMeasureDrawable'])===null||_0x15080c===void 0x0?void 0x0:_0x15080c['setDrawingState'](![]),this['dispatchEvent']('complete',this['currentMeasureDrawable']),this['completed']=!![],this['drawingPoints']=undefined,this['currentMeasureDrawable']=undefined,this['lastMouseDownPosition']=undefined;}['cancel'](){const _0x4fc041=this['drawingPoints'];if(_0x4fc041&&_0x4fc041['length']>0x0)_0x4fc041['pop'](),_0x4fc041['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 _0x7a3b9e;const _0x4f30ed=i18n$8['t']('measure');_0x4f30ed&&this['tooltip']&&((_0x7a3b9e=this['tooltip'])===null||_0x7a3b9e===void 0x0?void 0x0:_0x7a3b9e['setContent'](_0x4f30ed));}['getScale'](){return this['scale'];}['setScale'](_0x51ad99){this['scale']=_0x51ad99;const _0x290b73=this['drawList']['getDrawables']();for(const _0x559c81 of _0x290b73){const _0x36e1c2=_0x559c81[0x1];(_0x36e1c2 instanceof DistanceMeasureDrawable||_0x36e1c2 instanceof AreaMeasureDrawable)&&(_0x36e1c2['scale']=_0x51ad99);}}}
|
|
54
|
+
|
|
55
|
+
class AddMeasurementCommand extends Command{constructor(_0x4f566e,_0x575929){super('AddMeasurement'),this['manager']=_0x4f566e,this['data']=_0x575929;}['undo'](){const _0x176442=this['manager']['getById'](this['data']['id']);return _0x176442?(this['manager']['remove'](_0x176442),!![]):![];}['redo'](){const _0x1c8bfd=this['manager']['create'](this['data']);return _0x1c8bfd?(this['manager']['add'](_0x1c8bfd),!![]):![];}}
|
|
56
|
+
|
|
57
|
+
class RemoveMeasurementCommand extends Command{constructor(_0x4a0947,_0x1adf95){super('RemoveMeasurement'),this['manager']=_0x4a0947,this['data']=_0x1adf95;}['undo'](){const _0x28c49b=this['manager']['create'](this['data']);return _0x28c49b?(this['manager']['add'](_0x28c49b),!![]):![];}['redo'](){const _0x3a7e70=this['manager']['getById'](this['data']['id']);return _0x3a7e70?(this['manager']['remove'](_0x3a7e70),!![]):![];}}
|
|
58
|
+
|
|
59
|
+
class MeasurementPlugin extends Plugin{constructor(_0xd20ee3,_0x4a62da){var _0x35d72f,_0x20ef17;const _0x70fcbb=(_0x4a62da===null||_0x4a62da===void 0x0?void 0x0:_0x4a62da['id'])||MeasurementPlugin['DEFAULT_ID'];super(_0xd20ee3,{'id':_0x70fcbb}),this['selectedDrawable']=undefined,this['drawableList']=new DrawableList('measure'),this['drawableHelperList']=new DrawableList('touchHelper'),this['snapToleranceInPixel']=0x3,this['measurements']={},this['activeMeasurementType']=undefined,this['keydown']=_0x352a24=>{var _0xbc841b;const _0x1a9340=this['getActiveMeasurementType']();let _0x2967b1=undefined;_0x1a9340&&(_0x2967b1=this['measurements'][_0x1a9340]);const _0xa801b1=this['selectedDrawable'];_0xa801b1&&_0x352a24['code']==='Delete'&&(this['remove'](_0xa801b1),(_0xbc841b=this['viewer']['getUndoManager']())===null||_0xbc841b===void 0x0?void 0x0:_0xbc841b['addCommand'](new RemoveMeasurementCommand(this,_0xa801b1['getData']())),this['activeMeasurementType']&&this['measurements'][this['activeMeasurementType']]['clearClickedDrawable']());if(_0x352a24['ctrlKey']&&_0x352a24['code']==='KeyZ'){if(_0x2967b1===null||_0x2967b1===void 0x0?void 0x0:_0x2967b1['isMeasuring'])_0x2967b1['cancel']();}if(_0x352a24['ctrlKey']&&_0x352a24['code']==='KeyY'){if(_0x2967b1===null||_0x2967b1===void 0x0?void 0x0:_0x2967b1['isMeasuring']);}},this['cfg']=_0x4a62da||{'id':_0x70fcbb},this['initLocalization']();const _0xffbacc=_0xd20ee3['getInputManager']();if(!_0xffbacc)throw 'InputManager\x20init\x20error';this['inputManager']=_0xffbacc,this['overlayRender']=this['viewer']['getOverlayRender'](),(_0x35d72f=this['overlayRender'])===null||_0x35d72f===void 0x0?void 0x0:_0x35d72f['addDrawableList'](this['drawableHelperList']),(_0x20ef17=this['overlayRender'])===null||_0x20ef17===void 0x0?void 0x0:_0x20ef17['addDrawableList'](this['drawableList']);const _0x5aee57=new OSnapHelper(this['overlayRender']);_0xd20ee3['is3d']()&&(_0x5aee57['setOSnapTypeEnabled'](OSnapType['Intersection'],![]),_0x5aee57['setOSnapTypeEnabled'](OSnapType['CircleCenter'],![])),this['measurements'][MeasurementType['Distance']]=new DistanceMeasurement(_0xd20ee3,_0xffbacc,this['drawableList'],_0x5aee57),this['measurements'][MeasurementType['Area']]=new AreaMeasurement(_0xd20ee3,_0xffbacc,this['drawableList'],_0x5aee57),this['measurements'][MeasurementType['Angle']]=new AngleMeasurement(_0xd20ee3,_0xffbacc,this['drawableList'],_0x5aee57),this['measurements'][MeasurementType['Coordinate']]=new CoordinateMeasurement(_0xd20ee3,_0xffbacc,this['drawableList'],_0x5aee57),this['osnapHelper']=_0x5aee57,this['inputManager']['addEventListener']('wheel',()=>{this['updateSnapTolerance']();}),this['viewer']['addEventListener'](ViewerEvent['LayoutChange'],()=>{this['updateSnapTolerance']();}),this['initEvents']();}['initLocalization'](){const _0x3f4e18=this['cfg']['language']||DefaultLanguage;i18n$8['changeLanguage'](_0x3f4e18);}['initEvents'](){Object['values'](this['measurements'])['forEach'](_0x3ac6b2=>{_0x3ac6b2['addEventListener']('complete',_0x3030ef=>{this['viewer']['dispatchEvent'](ViewerEvent['MeasurementAdd'],_0x3030ef['getData']()),this['viewer']['getUndoManager']()['addCommand'](new AddMeasurementCommand(this,_0x3030ef['getData']())),this['select'](_0x3030ef);}),_0x3ac6b2['addEventListener']('beforeadd',_0x299071=>{this['add'](_0x299071,![]);}),_0x3ac6b2['addEventListener']('update',()=>{this['render']();}),_0x3ac6b2['addEventListener']('beforeremove',_0x367c32=>{this['remove'](_0x367c32,![]);}),_0x3ac6b2['addEventListener']('deactivate',()=>{this['osnapHelper']['deactivate']();}),_0x3ac6b2['addEventListener']('firstpointpicked',()=>{this['unselect']();}),_0x3ac6b2['addEventListener']('onclick',_0x99ba60=>{this['select'](_0x99ba60);});});}get['canvas'](){var _0x1f3b05;return (_0x1f3b05=this['viewer']['renderer'])===null||_0x1f3b05===void 0x0?void 0x0:_0x1f3b05['domElement'];}get['raycaster'](){return this['viewer']['getRaycaster']();}['add'](_0x423c0f,_0x562b2d=!![]){this['drawableList']['addDrawable'](_0x423c0f),this['selectedDrawable']=_0x423c0f,this['render'](),_0x562b2d&&this['viewer']['dispatchEvent'](ViewerEvent['MeasurementAdd'],_0x423c0f['getData']());}['create'](_0x2bd350){return CanvasRender['createDrawable'](_0x2bd350);}['remove'](_0x3d7039,_0xc343e4=!![]){this['drawableList']['removeDrawable'](_0x3d7039),this['render'](),_0xc343e4&&this['viewer']['dispatchEvent'](ViewerEvent['MeasurementRemove'],_0x3d7039['getData']());}['setSnapTolerance'](_0xb67761){this['snapToleranceInPixel']=_0xb67761,this['updateSnapTolerance']();}['updateSnapTolerance'](){const _0x5f24e7=this['viewer']['getPixelSizeInWorldCoord']()*this['snapToleranceInPixel'];this['osnapHelper']['setSnapTolerance'](_0x5f24e7);}['activate'](_0x2da221){this['activeMeasurementType']&&this['deactivate']();this['measurements'][_0x2da221]?(this['measurements'][_0x2da221]['activate'](),this['activeMeasurementType']=_0x2da221,this['updateSnapTolerance']()):(this['activeMeasurementType']=undefined,log['error']('[Measure]\x20Failed\x20to\x20activate\x20measurement,\x20type:',_0x2da221));const {width:_0x160fef,height:_0xedd5a5}=this['canvas']['getBoundingClientRect']();DeviceUtils['isMobile']&&this['canvas']&&!this['mobileTouchHelper']&&(this['mobileTouchHelper']=new MobileTouchHelperDrawable(new THREE['Vector2'](_0x160fef/0x2,_0xedd5a5/0x2)),this['drawableHelperList']['addDrawable'](this['mobileTouchHelper'])),this['mobileTouchHelper']&&(this['mobileTouchHelper']['setPosition'](new THREE['Vector2'](_0x160fef/0x2,_0xedd5a5/0x2)),this['measurements'][_0x2da221]['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 _0xbd92db=this['activeMeasurementType'];_0xbd92db&&this['measurements'][_0xbd92db]['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 _0x4501d3=this['activeMeasurementType'];if(_0x4501d3)return this['measurements'][_0x4501d3]['isActive'];return !!this['getActiveMeasurementType']();}['isMeasuring'](){const _0x157507=this['activeMeasurementType'];if(_0x157507)return this['measurements'][_0x157507]['isMeasuring'];return ![];}['getData'](){return this['drawableList']['getDrawableDatas']();}['cancel'](){const _0x5c576a=this['activeMeasurementType'];_0x5c576a&&this['measurements'][_0x5c576a]['exitDrawing']();}['setData'](_0x269786){this['viewer']['getUndoManager']()['startTransaction'](),_0x269786['forEach'](_0x3cc893=>{const _0x5fad15=this['measurements'][_0x3cc893['type']];_0x5fad15?_0x3cc893['points']['length']>=0x2?(this['add'](CanvasRender['createDrawable'](_0x3cc893)),this['viewer']['getUndoManager']()['addCommand'](new AddMeasurementCommand(this,_0x3cc893))):log['info']('[Measure]\x20Invalid\x20points\x20found\x20in\x20MeasurementData:',_0x3cc893):log['warn']('[Measure]\x20Failed\x20to\x20add\x20measurement\x20data\x20for',_0x3cc893);}),this['viewer']['getUndoManager']()['endTransaction']();}['setVisibleById'](_0x55ce92,_0x34969f){const _0x63e50c=this['drawableList']['getDrawables'](),_0xd9bd40=_0x63e50c['get'](_0x55ce92);if(!_0xd9bd40)return ![];return _0xd9bd40['visible']!==_0x34969f&&(_0xd9bd40['visible']=_0x34969f,this['render']()),!![];}['setVisibilities'](_0x5aee05){let _0x1f76a7=![];this['drawableList']['getDrawables']()['forEach'](_0x31b3fc=>{_0x31b3fc['visible']!==_0x5aee05&&(_0x31b3fc['visible']=_0x5aee05,_0x1f76a7=!![]);}),_0x1f76a7&&this['render']();}['clear'](){const _0x1eae4c=this['activeMeasurementType'];_0x1eae4c&&this['measurements'][_0x1eae4c]['exitDrawing'](),this['drawableList']['clear'](),this['render']();}['getById'](_0x5c95aa){return this['drawableList']['getDrawableById'](_0x5c95aa);}['removeById'](_0x89a5c7){const _0x44a878=this['drawableList']['getDrawableById'](_0x89a5c7);if(!_0x44a878){log['warn']('[Measure]\x20Failed\x20to\x20find\x20measurement\x20by\x20id:',_0x89a5c7);return;}this['remove'](_0x44a878);}['selectById'](_0x2ec057){const _0x219409=this['drawableList']['getDrawableById'](_0x2ec057);_0x219409&&this['select'](_0x219409);}['select'](_0x55bece){this['unselect'](![]),_0x55bece['selected']=!![],this['selectedDrawable']=_0x55bece,this['render']();}['unselect'](_0x2de291=!![]){this['selectedDrawable']&&(this['selectedDrawable']['selected']=![],_0x2de291&&this['render']()),this['selectedDrawable']=undefined;}['getScale'](){const _0x580fbf=this['measurements'][MeasurementType['Distance']];return _0x580fbf['getScale']();}['setScale'](_0x1ea30a){if(!_0x1ea30a||_0x1ea30a<=0x0){log['error']('[Measure]\x20Invalid\x20scale\x20value:',_0x1ea30a);return;}const _0x1307d7=this['measurements'][MeasurementType['Distance']],_0x49bce7=this['measurements'][MeasurementType['Area']];_0x1307d7['setScale'](_0x1ea30a),_0x49bce7['setScale'](_0x1ea30a);}['destroy'](){super['destroy'](),this['deactivate'](),this['clear'](),this['drawableHelperList']['clear'](),this['measurements']={},this['osnapHelper']['destroy'](),this['render']();}['render'](_0x401de4=![]){var _0x4761aa;_0x401de4?this['viewer']['enableRender']():(_0x4761aa=this['overlayRender'])===null||_0x4761aa===void 0x0?void 0x0:_0x4761aa['render']();}}MeasurementPlugin['DEFAULT_ID']='MeasurementPlugin';
|
|
60
|
+
|
|
61
|
+
class ContextMenuPlugin extends Plugin{constructor(_0x3e3a83,_0x3b5be9){const _0x5ed332=(_0x3b5be9===null||_0x3b5be9===void 0x0?void 0x0:_0x3b5be9['id'])||ContextMenuPlugin['DEFAULT_ID'];super(_0x3e3a83,{'id':_0x5ed332}),this['itemList']=[],this['handleClick']=()=>{this['hide']();},this['cfg']=_0x3b5be9||{'id':_0x5ed332},this['initLocalization'](),this['container']=_0x3e3a83['widgetContainer']||document['body'],this['context']={'viewer':_0x3e3a83},this['element']=this['createMenuUI'](ContextMenuItems||[]),window['oncontextmenu']=_0x4fdc63=>_0x4fdc63['preventDefault'](),this['hide'](),this['initEvents']();}['initLocalization'](){const _0x2dc5fc=this['cfg']['language']||DefaultLanguage;i18n$9['changeLanguage'](_0x2dc5fc);}['initEvents'](){const _0x4c9030=this['viewer']['getInputManager']();if(!_0x4c9030)return;let _0x4676b7=![],_0x42195a=![],_0x110034=0x0,_0x1188b2=0x0;const _0x31fb77=_0x5d15aa=>{const _0x43936f=0x5;if(_0x110034===-0x1||_0x1188b2===-0x1)return ![];return Math['abs'](_0x5d15aa['x']-_0x110034)<_0x43936f&&Math['abs'](_0x5d15aa['y']-_0x1188b2)<_0x43936f;};_0x4c9030['addEventListener']('pointerdown',()=>{_0x42195a=![],_0x4676b7=!![],this['hide']();}),_0x4c9030['addEventListener']('pointermove',_0x2a4fdb=>{_0x4676b7&&!_0x42195a&&(_0x42195a=!_0x31fb77(_0x2a4fdb));}),_0x4c9030['addEventListener']('pointerup',_0x2c7eda=>{_0x4676b7=![];if(_0x42195a){_0x42195a=![],this['hide']();return;}_0x110034=_0x2c7eda['x'],_0x1188b2=_0x2c7eda['y'];const _0x32a359=this['viewer']['findPlugin'](MeasurementPlugin['DEFAULT_ID']);_0x2c7eda['button']===MouseButton['Right']&&!(_0x32a359===null||_0x32a359===void 0x0?void 0x0:_0x32a359['isActive']())?this['showContextMenu'](_0x2c7eda):this['hide']();}),document['addEventListener']('click',this['handleClick']);}['showContextMenu'](_0xd745b9){const _0x391caf=this['context'],_0x34faba=this['viewer'];this['context']=Object['assign'](Object['assign']({},_0x391caf),{'hit':_0x34faba['pickObject'](new THREE['Vector2'](_0xd745b9['x'],_0xd745b9['y']))});const {x:_0x1b93a7,y:_0xf8cb2a}=_0xd745b9;this['show'](_0x1b93a7,_0xf8cb2a);}['isEnabled'](_0x14330f){if(_0x14330f['getEnabled'])return _0x14330f['getEnabled'](this['context']);if(_0x14330f['enabled']!==undefined)return _0x14330f['enabled'];return !![];}['isShown'](_0x2ef097){if(_0x2ef097['getShown'])return _0x2ef097['getShown'](this['context']);if(_0x2ef097['shown']!==undefined)return _0x2ef097['shown'];return !![];}['getTitle'](_0x1c0bda){return _0x1c0bda['title']||_0x1c0bda['getTitle']&&_0x1c0bda['getTitle'](this['context'])||'';}['createMenuUI'](_0x520a86){const _0x447341=document['createElement']('div');_0x447341['id']=this['id'],_0x447341['classList']['add']('context-menu');const _0x5bb2cd=this['createMenuGroup'](_0x520a86);return _0x447341['append'](..._0x5bb2cd),this['container']['appendChild'](_0x447341),_0x447341;}['createMenuGroup'](_0x10c5cd){return map$1(_0x10c5cd,_0x2ce143=>{const _0x45bcdb=document['createElement']('ul');return forEach(_0x2ce143,_0x5022af=>{const _0x10a127=this['createMenuItem'](_0x5022af);_0x45bcdb['append'](_0x10a127);}),_0x45bcdb;});}['createMenuItem'](_0x124c8b){const _0x3d7e82=document['createElement']('li');return _0x3d7e82['innerHTML']=this['getTitle'](_0x124c8b),_0x3d7e82['onclick']=()=>_0x124c8b['doAction']&&_0x124c8b['doAction'](this['context']),this['isEnabled'](_0x124c8b)?_0x3d7e82['classList']['remove']('disabled'):_0x3d7e82['classList']['add']('disabled'),this['isShown'](_0x124c8b)?_0x3d7e82['removeAttribute']('hidden'):_0x3d7e82['setAttribute']('hidden',''),this['itemList']['push']([_0x124c8b,_0x3d7e82]),_0x3d7e82;}['updateMenuItems'](){forEach(this['itemList'],([_0x5d2dd3,_0x551621])=>{this['isEnabled'](_0x5d2dd3)?_0x551621['classList']['remove']('disabled'):_0x551621['classList']['add']('disabled'),this['isShown'](_0x5d2dd3)?_0x551621['removeAttribute']('hidden'):_0x551621['setAttribute']('hidden',''),_0x551621['innerHTML']=this['getTitle'](_0x5d2dd3);});}['showMenuElement'](_0x216c67,_0x252aa0){const _0x5c2c03=this['element']['offsetHeight'],_0x32b497=this['element']['offsetWidth'];_0x252aa0+_0x5c2c03>window['innerHeight']&&(_0x252aa0=window['innerHeight']-_0x5c2c03-0x5),_0x216c67+_0x32b497>window['innerWidth']&&(_0x216c67=window['innerWidth']-_0x32b497-0x5),this['element']['style']['left']=_0x216c67+'px',this['element']['style']['top']=_0x252aa0+'px';}['show'](_0x1e9748,_0x337ea3){this['updateMenuItems'](),this['element']['removeAttribute']('hidden'),this['showMenuElement'](_0x1e9748,_0x337ea3);}['hide'](){this['element']['setAttribute']('hidden','');}['destroy'](){document['removeEventListener']('click',this['handleClick']),this['container']['removeChild'](this['element']);}}ContextMenuPlugin['DEFAULT_ID']='ContextMenuPlugin';
|
|
62
|
+
|
|
63
|
+
function ___$insertStyle(_0xfcca2b){if(typeof window==='undefined')return;var _0x19d215=document['createElement']('style');return _0x19d215['setAttribute']('type','text/css'),_0x19d215['innerHTML']=_0xfcca2b,document['head']['appendChild'](_0x19d215),_0xfcca2b;}function colorToString(_0x15963b,_0x429101){var _0x10e7ad=_0x15963b['__state']['conversionName']['toString'](),_0x1217b6=Math['round'](_0x15963b['r']),_0x48084c=Math['round'](_0x15963b['g']),_0x1bbf45=Math['round'](_0x15963b['b']),_0x1c9db8=_0x15963b['a'],_0x2c73c6=Math['round'](_0x15963b['h']),_0x352372=_0x15963b['s']['toFixed'](0x1),_0x373f3f=_0x15963b['v']['toFixed'](0x1);if(_0x429101||_0x10e7ad==='THREE_CHAR_HEX'||_0x10e7ad==='SIX_CHAR_HEX'){var _0x3d3a86=_0x15963b['hex']['toString'](0x10);while(_0x3d3a86['length']<0x6){_0x3d3a86='0'+_0x3d3a86;}return '#'+_0x3d3a86;}else {if(_0x10e7ad==='CSS_RGB')return 'rgb('+_0x1217b6+','+_0x48084c+','+_0x1bbf45+')';else {if(_0x10e7ad==='CSS_RGBA')return 'rgba('+_0x1217b6+','+_0x48084c+','+_0x1bbf45+','+_0x1c9db8+')';else {if(_0x10e7ad==='HEX')return '0x'+_0x15963b['hex']['toString'](0x10);else {if(_0x10e7ad==='RGB_ARRAY')return '['+_0x1217b6+','+_0x48084c+','+_0x1bbf45+']';else {if(_0x10e7ad==='RGBA_ARRAY')return '['+_0x1217b6+','+_0x48084c+','+_0x1bbf45+','+_0x1c9db8+']';else {if(_0x10e7ad==='RGB_OBJ')return '{r:'+_0x1217b6+',g:'+_0x48084c+',b:'+_0x1bbf45+'}';else {if(_0x10e7ad==='RGBA_OBJ')return '{r:'+_0x1217b6+',g:'+_0x48084c+',b:'+_0x1bbf45+',a:'+_0x1c9db8+'}';else {if(_0x10e7ad==='HSV_OBJ')return '{h:'+_0x2c73c6+',s:'+_0x352372+',v:'+_0x373f3f+'}';else {if(_0x10e7ad==='HSVA_OBJ')return '{h:'+_0x2c73c6+',s:'+_0x352372+',v:'+_0x373f3f+',a:'+_0x1c9db8+'}';}}}}}}}}}return 'unknown\x20format';}var ARR_EACH=Array['prototype']['forEach'],ARR_SLICE=Array['prototype']['slice'],Common={'BREAK':{},'extend':function extend(_0x4dc236){return this['each'](ARR_SLICE['call'](arguments,0x1),function(_0x466972){var _0x5eb7ba=this['isObject'](_0x466972)?Object['keys'](_0x466972):[];_0x5eb7ba['forEach'](function(_0x514416){!this['isUndefined'](_0x466972[_0x514416])&&(_0x4dc236[_0x514416]=_0x466972[_0x514416]);}['bind'](this));},this),_0x4dc236;},'defaults':function defaults(_0x2c5f93){return this['each'](ARR_SLICE['call'](arguments,0x1),function(_0x10e481){var _0x1a39cc=this['isObject'](_0x10e481)?Object['keys'](_0x10e481):[];_0x1a39cc['forEach'](function(_0x1929e1){this['isUndefined'](_0x2c5f93[_0x1929e1])&&(_0x2c5f93[_0x1929e1]=_0x10e481[_0x1929e1]);}['bind'](this));},this),_0x2c5f93;},'compose':function compose(){var _0x48586f=ARR_SLICE['call'](arguments);return function(){var _0x4eb5d0=ARR_SLICE['call'](arguments);for(var _0x15107f=_0x48586f['length']-0x1;_0x15107f>=0x0;_0x15107f--){_0x4eb5d0=[_0x48586f[_0x15107f]['apply'](this,_0x4eb5d0)];}return _0x4eb5d0[0x0];};},'each':function each(_0x5d2962,_0x5b368f,_0x3d9e00){if(!_0x5d2962)return;if(ARR_EACH&&_0x5d2962['forEach']&&_0x5d2962['forEach']===ARR_EACH)_0x5d2962['forEach'](_0x5b368f,_0x3d9e00);else {if(_0x5d2962['length']===_0x5d2962['length']+0x0){var _0x424700=void 0x0,_0x27ea7c=void 0x0;for(_0x424700=0x0,_0x27ea7c=_0x5d2962['length'];_0x424700<_0x27ea7c;_0x424700++){if(_0x424700 in _0x5d2962&&_0x5b368f['call'](_0x3d9e00,_0x5d2962[_0x424700],_0x424700)===this['BREAK'])return;}}else for(var _0x4733ac in _0x5d2962){if(_0x5b368f['call'](_0x3d9e00,_0x5d2962[_0x4733ac],_0x4733ac)===this['BREAK'])return;}}},'defer':function defer(_0x437a2e){setTimeout(_0x437a2e,0x0);},'debounce':function debounce(_0x1fc9ae,_0x271acc,_0xf91e06){var _0x20182e=void 0x0;return function(){var _0x10770a=this,_0x97653f=arguments;function _0x2e6f46(){_0x20182e=null;if(!_0xf91e06)_0x1fc9ae['apply'](_0x10770a,_0x97653f);}var _0x4b05fa=_0xf91e06||!_0x20182e;clearTimeout(_0x20182e),_0x20182e=setTimeout(_0x2e6f46,_0x271acc),_0x4b05fa&&_0x1fc9ae['apply'](_0x10770a,_0x97653f);};},'toArray':function toArray(_0x1d5650){if(_0x1d5650['toArray'])return _0x1d5650['toArray']();return ARR_SLICE['call'](_0x1d5650);},'isUndefined':function isUndefined(_0xaa1393){return _0xaa1393===undefined;},'isNull':function isNull(_0x2b7e75){return _0x2b7e75===null;},'isNaN':function(_0x49738d){function _0x4987f0(_0xd01e90){return _0x49738d['apply'](this,arguments);}return _0x4987f0['toString']=function(){return _0x49738d['toString']();},_0x4987f0;}(function(_0xf33555){return isNaN(_0xf33555);}),'isArray':Array['isArray']||function(_0x440b8c){return _0x440b8c['constructor']===Array;},'isObject':function isObject(_0x5ea46e){return _0x5ea46e===Object(_0x5ea46e);},'isNumber':function isNumber(_0x5c378f){return _0x5c378f===_0x5c378f+0x0;},'isString':function isString(_0x502a15){return _0x502a15===_0x502a15+'';},'isBoolean':function isBoolean(_0xe510ba){return _0xe510ba===![]||_0xe510ba===!![];},'isFunction':function isFunction(_0x1d2b44){return _0x1d2b44 instanceof Function;}},INTERPRETATIONS=[{'litmus':Common['isString'],'conversions':{'THREE_CHAR_HEX':{'read':function read(_0x175c8d){var _0xb692ba=_0x175c8d['match'](/^#([A-F0-9])([A-F0-9])([A-F0-9])$/i);if(_0xb692ba===null)return ![];return {'space':'HEX','hex':parseInt('0x'+_0xb692ba[0x1]['toString']()+_0xb692ba[0x1]['toString']()+_0xb692ba[0x2]['toString']()+_0xb692ba[0x2]['toString']()+_0xb692ba[0x3]['toString']()+_0xb692ba[0x3]['toString'](),0x0)};},'write':colorToString},'SIX_CHAR_HEX':{'read':function read(_0x1aecc6){var _0x108bf8=_0x1aecc6['match'](/^#([A-F0-9]{6})$/i);if(_0x108bf8===null)return ![];return {'space':'HEX','hex':parseInt('0x'+_0x108bf8[0x1]['toString'](),0x0)};},'write':colorToString},'CSS_RGB':{'read':function read(_0x583037){var _0x34acc2=_0x583037['match'](/^rgb\(\s*(\S+)\s*,\s*(\S+)\s*,\s*(\S+)\s*\)/);if(_0x34acc2===null)return ![];return {'space':'RGB','r':parseFloat(_0x34acc2[0x1]),'g':parseFloat(_0x34acc2[0x2]),'b':parseFloat(_0x34acc2[0x3])};},'write':colorToString},'CSS_RGBA':{'read':function read(_0x33d5c2){var _0x5f56ce=_0x33d5c2['match'](/^rgba\(\s*(\S+)\s*,\s*(\S+)\s*,\s*(\S+)\s*,\s*(\S+)\s*\)/);if(_0x5f56ce===null)return ![];return {'space':'RGB','r':parseFloat(_0x5f56ce[0x1]),'g':parseFloat(_0x5f56ce[0x2]),'b':parseFloat(_0x5f56ce[0x3]),'a':parseFloat(_0x5f56ce[0x4])};},'write':colorToString}}},{'litmus':Common['isNumber'],'conversions':{'HEX':{'read':function read(_0x1bf57a){return {'space':'HEX','hex':_0x1bf57a,'conversionName':'HEX'};},'write':function write(_0x355e69){return _0x355e69['hex'];}}}},{'litmus':Common['isArray'],'conversions':{'RGB_ARRAY':{'read':function read(_0x4f53f2){if(_0x4f53f2['length']!==0x3)return ![];return {'space':'RGB','r':_0x4f53f2[0x0],'g':_0x4f53f2[0x1],'b':_0x4f53f2[0x2]};},'write':function write(_0x279429){return [_0x279429['r'],_0x279429['g'],_0x279429['b']];}},'RGBA_ARRAY':{'read':function read(_0x4aefc9){if(_0x4aefc9['length']!==0x4)return ![];return {'space':'RGB','r':_0x4aefc9[0x0],'g':_0x4aefc9[0x1],'b':_0x4aefc9[0x2],'a':_0x4aefc9[0x3]};},'write':function write(_0xa17617){return [_0xa17617['r'],_0xa17617['g'],_0xa17617['b'],_0xa17617['a']];}}}},{'litmus':Common['isObject'],'conversions':{'RGBA_OBJ':{'read':function read(_0x361fb2){if(Common['isNumber'](_0x361fb2['r'])&&Common['isNumber'](_0x361fb2['g'])&&Common['isNumber'](_0x361fb2['b'])&&Common['isNumber'](_0x361fb2['a']))return {'space':'RGB','r':_0x361fb2['r'],'g':_0x361fb2['g'],'b':_0x361fb2['b'],'a':_0x361fb2['a']};return ![];},'write':function write(_0x54c528){return {'r':_0x54c528['r'],'g':_0x54c528['g'],'b':_0x54c528['b'],'a':_0x54c528['a']};}},'RGB_OBJ':{'read':function read(_0x27ce3e){if(Common['isNumber'](_0x27ce3e['r'])&&Common['isNumber'](_0x27ce3e['g'])&&Common['isNumber'](_0x27ce3e['b']))return {'space':'RGB','r':_0x27ce3e['r'],'g':_0x27ce3e['g'],'b':_0x27ce3e['b']};return ![];},'write':function write(_0x26f5cd){return {'r':_0x26f5cd['r'],'g':_0x26f5cd['g'],'b':_0x26f5cd['b']};}},'HSVA_OBJ':{'read':function read(_0x22209e){if(Common['isNumber'](_0x22209e['h'])&&Common['isNumber'](_0x22209e['s'])&&Common['isNumber'](_0x22209e['v'])&&Common['isNumber'](_0x22209e['a']))return {'space':'HSV','h':_0x22209e['h'],'s':_0x22209e['s'],'v':_0x22209e['v'],'a':_0x22209e['a']};return ![];},'write':function write(_0x458463){return {'h':_0x458463['h'],'s':_0x458463['s'],'v':_0x458463['v'],'a':_0x458463['a']};}},'HSV_OBJ':{'read':function read(_0x22b795){if(Common['isNumber'](_0x22b795['h'])&&Common['isNumber'](_0x22b795['s'])&&Common['isNumber'](_0x22b795['v']))return {'space':'HSV','h':_0x22b795['h'],'s':_0x22b795['s'],'v':_0x22b795['v']};return ![];},'write':function write(_0x3ce4c9){return {'h':_0x3ce4c9['h'],'s':_0x3ce4c9['s'],'v':_0x3ce4c9['v']};}}}}],result=void 0x0,toReturn=void 0x0,interpret=function interpret(){toReturn=![];var _0x381ebd=arguments['length']>0x1?Common['toArray'](arguments):arguments[0x0];return Common['each'](INTERPRETATIONS,function(_0x3cd6d6){if(_0x3cd6d6['litmus'](_0x381ebd))return Common['each'](_0x3cd6d6['conversions'],function(_0x1f912f,_0xcbc8bd){result=_0x1f912f['read'](_0x381ebd);if(toReturn===![]&&result!==![])return toReturn=result,result['conversionName']=_0xcbc8bd,result['conversion']=_0x1f912f,Common['BREAK'];}),Common['BREAK'];}),toReturn;},tmpComponent=void 0x0,ColorMath={'hsv_to_rgb':function hsv_to_rgb(_0x4805d4,_0x3e71f9,_0x30bec2){var _0x2cfedd=Math['floor'](_0x4805d4/0x3c)%0x6,_0x1f2b23=_0x4805d4/0x3c-Math['floor'](_0x4805d4/0x3c),_0x578f48=_0x30bec2*(0x1-_0x3e71f9),_0x24ee9a=_0x30bec2*(0x1-_0x1f2b23*_0x3e71f9),_0x5dacd4=_0x30bec2*(0x1-(0x1-_0x1f2b23)*_0x3e71f9),_0x128fac=[[_0x30bec2,_0x5dacd4,_0x578f48],[_0x24ee9a,_0x30bec2,_0x578f48],[_0x578f48,_0x30bec2,_0x5dacd4],[_0x578f48,_0x24ee9a,_0x30bec2],[_0x5dacd4,_0x578f48,_0x30bec2],[_0x30bec2,_0x578f48,_0x24ee9a]][_0x2cfedd];return {'r':_0x128fac[0x0]*0xff,'g':_0x128fac[0x1]*0xff,'b':_0x128fac[0x2]*0xff};},'rgb_to_hsv':function rgb_to_hsv(_0x3b61ee,_0x300aa7,_0x6b377f){var _0xdba0f8=Math['min'](_0x3b61ee,_0x300aa7,_0x6b377f),_0x34342c=Math['max'](_0x3b61ee,_0x300aa7,_0x6b377f),_0x1ecb12=_0x34342c-_0xdba0f8,_0x10f24b=void 0x0,_0x5f3fbb=void 0x0;if(_0x34342c!==0x0)_0x5f3fbb=_0x1ecb12/_0x34342c;else return {'h':NaN,'s':0x0,'v':0x0};if(_0x3b61ee===_0x34342c)_0x10f24b=(_0x300aa7-_0x6b377f)/_0x1ecb12;else _0x300aa7===_0x34342c?_0x10f24b=0x2+(_0x6b377f-_0x3b61ee)/_0x1ecb12:_0x10f24b=0x4+(_0x3b61ee-_0x300aa7)/_0x1ecb12;return _0x10f24b/=0x6,_0x10f24b<0x0&&(_0x10f24b+=0x1),{'h':_0x10f24b*0x168,'s':_0x5f3fbb,'v':_0x34342c/0xff};},'rgb_to_hex':function rgb_to_hex(_0x6db41a,_0x4c78e9,_0x48885f){var _0x436fba=this['hex_with_component'](0x0,0x2,_0x6db41a);return _0x436fba=this['hex_with_component'](_0x436fba,0x1,_0x4c78e9),_0x436fba=this['hex_with_component'](_0x436fba,0x0,_0x48885f),_0x436fba;},'component_from_hex':function component_from_hex(_0x182bf4,_0x5962e4){return _0x182bf4>>_0x5962e4*0x8&0xff;},'hex_with_component':function hex_with_component(_0x30b6f4,_0x541965,_0x33395d){return _0x33395d<<(tmpComponent=_0x541965*0x8)|_0x30b6f4&~(0xff<<tmpComponent);}},_typeof=typeof Symbol==='function'&&typeof Symbol['iterator']==='symbol'?function(_0x5221f8){return typeof _0x5221f8;}:function(_0x32c94d){return _0x32c94d&&typeof Symbol==='function'&&_0x32c94d['constructor']===Symbol&&_0x32c94d!==Symbol['prototype']?'symbol':typeof _0x32c94d;},classCallCheck=function(_0x3c1aa9,_0x530d87){if(!(_0x3c1aa9 instanceof _0x530d87))throw new TypeError('Cannot\x20call\x20a\x20class\x20as\x20a\x20function');},createClass=(function(){function _0x3b4b72(_0x5c091c,_0x26d25b){for(var _0x388e56=0x0;_0x388e56<_0x26d25b['length'];_0x388e56++){var _0x48cca4=_0x26d25b[_0x388e56];_0x48cca4['enumerable']=_0x48cca4['enumerable']||![],_0x48cca4['configurable']=!![];if('value'in _0x48cca4)_0x48cca4['writable']=!![];Object['defineProperty'](_0x5c091c,_0x48cca4['key'],_0x48cca4);}}return function(_0x363bc1,_0x116ee7,_0x43da3f){if(_0x116ee7)_0x3b4b72(_0x363bc1['prototype'],_0x116ee7);if(_0x43da3f)_0x3b4b72(_0x363bc1,_0x43da3f);return _0x363bc1;};}()),get=function get(_0x4b279a,_0x58ab39,_0x353f7f){if(_0x4b279a===null)_0x4b279a=Function['prototype'];var _0x2936e7=Object['getOwnPropertyDescriptor'](_0x4b279a,_0x58ab39);if(_0x2936e7===undefined){var _0x48072a=Object['getPrototypeOf'](_0x4b279a);return _0x48072a===null?undefined:get(_0x48072a,_0x58ab39,_0x353f7f);}else {if('value'in _0x2936e7)return _0x2936e7['value'];else {var _0x3cc271=_0x2936e7['get'];if(_0x3cc271===undefined)return undefined;return _0x3cc271['call'](_0x353f7f);}}},inherits=function(_0x15905e,_0xdb396b){if(typeof _0xdb396b!=='function'&&_0xdb396b!==null)throw new TypeError('Super\x20expression\x20must\x20either\x20be\x20null\x20or\x20a\x20function,\x20not\x20'+typeof _0xdb396b);_0x15905e['prototype']=Object['create'](_0xdb396b&&_0xdb396b['prototype'],{'constructor':{'value':_0x15905e,'enumerable':![],'writable':!![],'configurable':!![]}});if(_0xdb396b)Object['setPrototypeOf']?Object['setPrototypeOf'](_0x15905e,_0xdb396b):_0x15905e['__proto__']=_0xdb396b;},possibleConstructorReturn=function(_0x1aa87b,_0x4c408f){if(!_0x1aa87b)throw new ReferenceError('this\x20hasn\x27t\x20been\x20initialised\x20-\x20super()\x20hasn\x27t\x20been\x20called');return _0x4c408f&&(typeof _0x4c408f==='object'||typeof _0x4c408f==='function')?_0x4c408f:_0x1aa87b;},Color=(function(){function _0x2b2307(){classCallCheck(this,_0x2b2307),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(_0x2b2307,[{'key':'toString','value':function _0x3c9d7a(){return colorToString(this);}},{'key':'toHexString','value':function _0x34326d(){return colorToString(this,!![]);}},{'key':'toOriginal','value':function _0x19be50(){return this['__state']['conversion']['write'](this);}}]),_0x2b2307;}());function defineRGBComponent(_0x20feff,_0xcedbee,_0x18d197){Object['defineProperty'](_0x20feff,_0xcedbee,{'get':function _0x217c97(){if(this['__state']['space']==='RGB')return this['__state'][_0xcedbee];return Color['recalculateRGB'](this,_0xcedbee,_0x18d197),this['__state'][_0xcedbee];},'set':function _0x7ea7dd(_0x4895d3){this['__state']['space']!=='RGB'&&(Color['recalculateRGB'](this,_0xcedbee,_0x18d197),this['__state']['space']='RGB'),this['__state'][_0xcedbee]=_0x4895d3;}});}function defineHSVComponent(_0x2aeab7,_0x2fdf6a){Object['defineProperty'](_0x2aeab7,_0x2fdf6a,{'get':function _0x4aefba(){if(this['__state']['space']==='HSV')return this['__state'][_0x2fdf6a];return Color['recalculateHSV'](this),this['__state'][_0x2fdf6a];},'set':function _0x132ade(_0x58a77c){this['__state']['space']!=='HSV'&&(Color['recalculateHSV'](this),this['__state']['space']='HSV'),this['__state'][_0x2fdf6a]=_0x58a77c;}});}Color['recalculateRGB']=function(_0x525d87,_0x3d0e65,_0x42032e){if(_0x525d87['__state']['space']==='HEX')_0x525d87['__state'][_0x3d0e65]=ColorMath['component_from_hex'](_0x525d87['__state']['hex'],_0x42032e);else {if(_0x525d87['__state']['space']==='HSV')Common['extend'](_0x525d87['__state'],ColorMath['hsv_to_rgb'](_0x525d87['__state']['h'],_0x525d87['__state']['s'],_0x525d87['__state']['v']));else throw new Error('Corrupted\x20color\x20state');}},Color['recalculateHSV']=function(_0x32c00d){var _0x1227a0=ColorMath['rgb_to_hsv'](_0x32c00d['r'],_0x32c00d['g'],_0x32c00d['b']);Common['extend'](_0x32c00d['__state'],{'s':_0x1227a0['s'],'v':_0x1227a0['v']});if(!Common['isNaN'](_0x1227a0['h']))_0x32c00d['__state']['h']=_0x1227a0['h'];else Common['isUndefined'](_0x32c00d['__state']['h'])&&(_0x32c00d['__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(_0x1bb199){this['__state']['a']=_0x1bb199;}}),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(_0x2930e2){this['__state']['space']='HEX',this['__state']['hex']=_0x2930e2;}});var Controller=(function(){function _0x3ad70c(_0x59b56a,_0x4d9dde){classCallCheck(this,_0x3ad70c),this['initialValue']=_0x59b56a[_0x4d9dde],this['domElement']=document['createElement']('div'),this['object']=_0x59b56a,this['property']=_0x4d9dde,this['__onChange']=undefined,this['__onFinishChange']=undefined;}return createClass(_0x3ad70c,[{'key':'onChange','value':function _0x4bd003(_0x2e99d7){return this['__onChange']=_0x2e99d7,this;}},{'key':'onFinishChange','value':function _0x2d421c(_0x19ae04){return this['__onFinishChange']=_0x19ae04,this;}},{'key':'setValue','value':function _0x3d7da0(_0x33c8b0){return this['object'][this['property']]=_0x33c8b0,this['__onChange']&&this['__onChange']['call'](this,_0x33c8b0),this['updateDisplay'](),this;}},{'key':'getValue','value':function _0x17c33e(){return this['object'][this['property']];}},{'key':'updateDisplay','value':function _0x26e70b(){return this;}},{'key':'isModified','value':function _0x1ad381(){return this['initialValue']!==this['getValue']();}}]),_0x3ad70c;}()),EVENT_MAP={'HTMLEvents':['change'],'MouseEvents':['click','mousemove','mousedown','mouseup','mouseover'],'KeyboardEvents':['keydown']},EVENT_MAP_INV={};Common['each'](EVENT_MAP,function(_0xa929a7,_0x23404e){Common['each'](_0xa929a7,function(_0x1ad2a2){EVENT_MAP_INV[_0x1ad2a2]=_0x23404e;});});var CSS_VALUE_PIXELS=/(\d+(\.\d+)?)px/;function cssValueToPixels(_0x4dd8e3){if(_0x4dd8e3==='0'||Common['isUndefined'](_0x4dd8e3))return 0x0;var _0x35eac8=_0x4dd8e3['match'](CSS_VALUE_PIXELS);if(!Common['isNull'](_0x35eac8))return parseFloat(_0x35eac8[0x1]);return 0x0;}var dom={'makeSelectable':function makeSelectable(_0xdb2a98,_0x271296){if(_0xdb2a98===undefined||_0xdb2a98['style']===undefined)return;_0xdb2a98['onselectstart']=_0x271296?function(){return ![];}:function(){},_0xdb2a98['style']['MozUserSelect']=_0x271296?'auto':'none',_0xdb2a98['style']['KhtmlUserSelect']=_0x271296?'auto':'none',_0xdb2a98['unselectable']=_0x271296?'on':'off';},'makeFullscreen':function makeFullscreen(_0x45dc93,_0x21189d,_0x34e65e){var _0x30c0ba=_0x34e65e,_0x5a947b=_0x21189d;Common['isUndefined'](_0x5a947b)&&(_0x5a947b=!![]),Common['isUndefined'](_0x30c0ba)&&(_0x30c0ba=!![]),_0x45dc93['style']['position']='absolute',_0x5a947b&&(_0x45dc93['style']['left']=0x0,_0x45dc93['style']['right']=0x0),_0x30c0ba&&(_0x45dc93['style']['top']=0x0,_0x45dc93['style']['bottom']=0x0);},'fakeEvent':function fakeEvent(_0x4ff9e6,_0x5f0ae8,_0x1e7f60,_0x44bfac){var _0x435322=_0x1e7f60||{},_0x2af75c=EVENT_MAP_INV[_0x5f0ae8];if(!_0x2af75c)throw new Error('Event\x20type\x20'+_0x5f0ae8+'\x20not\x20supported.');var _0x3c99ee=document['createEvent'](_0x2af75c);switch(_0x2af75c){case'MouseEvents':{var _0x485a9d=_0x435322['x']||_0x435322['clientX']||0x0,_0x2f398c=_0x435322['y']||_0x435322['clientY']||0x0;_0x3c99ee['initMouseEvent'](_0x5f0ae8,_0x435322['bubbles']||![],_0x435322['cancelable']||!![],window,_0x435322['clickCount']||0x1,0x0,0x0,_0x485a9d,_0x2f398c,![],![],![],![],0x0,null);break;}case'KeyboardEvents':{var _0x1f40fa=_0x3c99ee['initKeyboardEvent']||_0x3c99ee['initKeyEvent'];Common['defaults'](_0x435322,{'cancelable':!![],'ctrlKey':![],'altKey':![],'shiftKey':![],'metaKey':![],'keyCode':undefined,'charCode':undefined}),_0x1f40fa(_0x5f0ae8,_0x435322['bubbles']||![],_0x435322['cancelable'],window,_0x435322['ctrlKey'],_0x435322['altKey'],_0x435322['shiftKey'],_0x435322['metaKey'],_0x435322['keyCode'],_0x435322['charCode']);break;}default:{_0x3c99ee['initEvent'](_0x5f0ae8,_0x435322['bubbles']||![],_0x435322['cancelable']||!![]);break;}}Common['defaults'](_0x3c99ee,_0x44bfac),_0x4ff9e6['dispatchEvent'](_0x3c99ee);},'bind':function bind(_0x2213d1,_0x1088e7,_0x316323,_0x2265c3){var _0x532e1e=_0x2265c3||![];if(_0x2213d1['addEventListener'])_0x2213d1['addEventListener'](_0x1088e7,_0x316323,_0x532e1e);else _0x2213d1['attachEvent']&&_0x2213d1['attachEvent']('on'+_0x1088e7,_0x316323);return dom;},'unbind':function unbind(_0x1bc961,_0x229ae0,_0x5dfd57,_0x11f388){var _0x47933e=_0x11f388||![];if(_0x1bc961['removeEventListener'])_0x1bc961['removeEventListener'](_0x229ae0,_0x5dfd57,_0x47933e);else _0x1bc961['detachEvent']&&_0x1bc961['detachEvent']('on'+_0x229ae0,_0x5dfd57);return dom;},'addClass':function addClass(_0x2c9207,_0x7ba92d){if(_0x2c9207['className']===undefined)_0x2c9207['className']=_0x7ba92d;else {if(_0x2c9207['className']!==_0x7ba92d){var _0x23135a=_0x2c9207['className']['split'](/ +/);_0x23135a['indexOf'](_0x7ba92d)===-0x1&&(_0x23135a['push'](_0x7ba92d),_0x2c9207['className']=_0x23135a['join']('\x20')['replace'](/^\s+/,'')['replace'](/\s+$/,''));}}return dom;},'removeClass':function removeClass(_0x259fba,_0x56d4e1){if(_0x56d4e1){if(_0x259fba['className']===_0x56d4e1)_0x259fba['removeAttribute']('class');else {var _0x5e7c35=_0x259fba['className']['split'](/ +/),_0x59b27d=_0x5e7c35['indexOf'](_0x56d4e1);_0x59b27d!==-0x1&&(_0x5e7c35['splice'](_0x59b27d,0x1),_0x259fba['className']=_0x5e7c35['join']('\x20'));}}else _0x259fba['className']=undefined;return dom;},'hasClass':function hasClass(_0x16ba3c,_0xdd163f){return new RegExp('(?:^|\x5cs+)'+_0xdd163f+'(?:\x5cs+|$)')['test'](_0x16ba3c['className'])||![];},'getWidth':function getWidth(_0x879972){var _0x5cdd6d=getComputedStyle(_0x879972);return cssValueToPixels(_0x5cdd6d['border-left-width'])+cssValueToPixels(_0x5cdd6d['border-right-width'])+cssValueToPixels(_0x5cdd6d['padding-left'])+cssValueToPixels(_0x5cdd6d['padding-right'])+cssValueToPixels(_0x5cdd6d['width']);},'getHeight':function getHeight(_0xb0a38a){var _0x476789=getComputedStyle(_0xb0a38a);return cssValueToPixels(_0x476789['border-top-width'])+cssValueToPixels(_0x476789['border-bottom-width'])+cssValueToPixels(_0x476789['padding-top'])+cssValueToPixels(_0x476789['padding-bottom'])+cssValueToPixels(_0x476789['height']);},'getOffset':function getOffset(_0x23946e){var _0x138405=_0x23946e,_0x1b4b94={'left':0x0,'top':0x0};if(_0x138405['offsetParent'])do{_0x1b4b94['left']+=_0x138405['offsetLeft'],_0x1b4b94['top']+=_0x138405['offsetTop'],_0x138405=_0x138405['offsetParent'];}while(_0x138405);return _0x1b4b94;},'isActive':function isActive(_0x562473){return _0x562473===document['activeElement']&&(_0x562473['type']||_0x562473['href']);}},BooleanController=function(_0x191edb){inherits(_0x25954e,_0x191edb);function _0x25954e(_0x1f76ce,_0x1f91f8){classCallCheck(this,_0x25954e);var _0x335566=possibleConstructorReturn(this,(_0x25954e['__proto__']||Object['getPrototypeOf'](_0x25954e))['call'](this,_0x1f76ce,_0x1f91f8)),_0x64976b=_0x335566;_0x335566['__prev']=_0x335566['getValue'](),_0x335566['__checkbox']=document['createElement']('input'),_0x335566['__checkbox']['setAttribute']('type','checkbox');function _0x473ce4(){_0x64976b['setValue'](!_0x64976b['__prev']);}return dom['bind'](_0x335566['__checkbox'],'change',_0x473ce4,![]),_0x335566['domElement']['appendChild'](_0x335566['__checkbox']),_0x335566['updateDisplay'](),_0x335566;}return createClass(_0x25954e,[{'key':'setValue','value':function _0x1f6118(_0x198d81){var _0x32d779=get(_0x25954e['prototype']['__proto__']||Object['getPrototypeOf'](_0x25954e['prototype']),'setValue',this)['call'](this,_0x198d81);return this['__onFinishChange']&&this['__onFinishChange']['call'](this,this['getValue']()),this['__prev']=this['getValue'](),_0x32d779;}},{'key':'updateDisplay','value':function _0x16f836(){return this['getValue']()===!![]?(this['__checkbox']['setAttribute']('checked','checked'),this['__checkbox']['checked']=!![],this['__prev']=!![]):(this['__checkbox']['checked']=![],this['__prev']=![]),get(_0x25954e['prototype']['__proto__']||Object['getPrototypeOf'](_0x25954e['prototype']),'updateDisplay',this)['call'](this);}}]),_0x25954e;}(Controller),OptionController=function(_0x385742){inherits(_0x89c321,_0x385742);function _0x89c321(_0x58f72c,_0x4891ce,_0x41a9b5){classCallCheck(this,_0x89c321);var _0x58a86d=possibleConstructorReturn(this,(_0x89c321['__proto__']||Object['getPrototypeOf'](_0x89c321))['call'](this,_0x58f72c,_0x4891ce)),_0x124dad=_0x41a9b5,_0x40dc5f=_0x58a86d;_0x58a86d['__select']=document['createElement']('select');if(Common['isArray'](_0x124dad)){var _0x11e3c3={};Common['each'](_0x124dad,function(_0x519af5){_0x11e3c3[_0x519af5]=_0x519af5;}),_0x124dad=_0x11e3c3;}return Common['each'](_0x124dad,function(_0x4f7266,_0x30bd9f){var _0x22ea8a=document['createElement']('option');_0x22ea8a['innerHTML']=_0x30bd9f,_0x22ea8a['setAttribute']('value',_0x4f7266),_0x40dc5f['__select']['appendChild'](_0x22ea8a);}),_0x58a86d['updateDisplay'](),dom['bind'](_0x58a86d['__select'],'change',function(){var _0x5bae0a=this['options'][this['selectedIndex']]['value'];_0x40dc5f['setValue'](_0x5bae0a);}),_0x58a86d['domElement']['appendChild'](_0x58a86d['__select']),_0x58a86d;}return createClass(_0x89c321,[{'key':'setValue','value':function _0x56bc6e(_0xc0d366){var _0x3c4093=get(_0x89c321['prototype']['__proto__']||Object['getPrototypeOf'](_0x89c321['prototype']),'setValue',this)['call'](this,_0xc0d366);return this['__onFinishChange']&&this['__onFinishChange']['call'](this,this['getValue']()),_0x3c4093;}},{'key':'updateDisplay','value':function _0x217fdd(){if(dom['isActive'](this['__select']))return this;return this['__select']['value']=this['getValue'](),get(_0x89c321['prototype']['__proto__']||Object['getPrototypeOf'](_0x89c321['prototype']),'updateDisplay',this)['call'](this);}}]),_0x89c321;}(Controller),StringController=function(_0x25d9f0){inherits(_0x361b54,_0x25d9f0);function _0x361b54(_0x24ef87,_0x526461){classCallCheck(this,_0x361b54);var _0x3ff8a9=possibleConstructorReturn(this,(_0x361b54['__proto__']||Object['getPrototypeOf'](_0x361b54))['call'](this,_0x24ef87,_0x526461)),_0x4035a4=_0x3ff8a9;function _0x2e0d1d(){_0x4035a4['setValue'](_0x4035a4['__input']['value']);}function _0x2993f4(){_0x4035a4['__onFinishChange']&&_0x4035a4['__onFinishChange']['call'](_0x4035a4,_0x4035a4['getValue']());}return _0x3ff8a9['__input']=document['createElement']('input'),_0x3ff8a9['__input']['setAttribute']('type','text'),dom['bind'](_0x3ff8a9['__input'],'keyup',_0x2e0d1d),dom['bind'](_0x3ff8a9['__input'],'change',_0x2e0d1d),dom['bind'](_0x3ff8a9['__input'],'blur',_0x2993f4),dom['bind'](_0x3ff8a9['__input'],'keydown',function(_0x45a6fe){_0x45a6fe['keyCode']===0xd&&this['blur']();}),_0x3ff8a9['updateDisplay'](),_0x3ff8a9['domElement']['appendChild'](_0x3ff8a9['__input']),_0x3ff8a9;}return createClass(_0x361b54,[{'key':'updateDisplay','value':function _0x3701e4(){return !dom['isActive'](this['__input'])&&(this['__input']['value']=this['getValue']()),get(_0x361b54['prototype']['__proto__']||Object['getPrototypeOf'](_0x361b54['prototype']),'updateDisplay',this)['call'](this);}}]),_0x361b54;}(Controller);function numDecimals(_0xa65fef){var _0x264985=_0xa65fef['toString']();if(_0x264985['indexOf']('.')>-0x1)return _0x264985['length']-_0x264985['indexOf']('.')-0x1;return 0x0;}var NumberController=function(_0x43f9ec){inherits(_0x2cae21,_0x43f9ec);function _0x2cae21(_0x383237,_0x5e5dfc,_0x3a84a7){classCallCheck(this,_0x2cae21);var _0x4139ae=possibleConstructorReturn(this,(_0x2cae21['__proto__']||Object['getPrototypeOf'](_0x2cae21))['call'](this,_0x383237,_0x5e5dfc)),_0x14f9c4=_0x3a84a7||{};return _0x4139ae['__min']=_0x14f9c4['min'],_0x4139ae['__max']=_0x14f9c4['max'],_0x4139ae['__step']=_0x14f9c4['step'],Common['isUndefined'](_0x4139ae['__step'])?_0x4139ae['initialValue']===0x0?_0x4139ae['__impliedStep']=0x1:_0x4139ae['__impliedStep']=Math['pow'](0xa,Math['floor'](Math['log'](Math['abs'](_0x4139ae['initialValue']))/Math['LN10']))/0xa:_0x4139ae['__impliedStep']=_0x4139ae['__step'],_0x4139ae['__precision']=numDecimals(_0x4139ae['__impliedStep']),_0x4139ae;}return createClass(_0x2cae21,[{'key':'setValue','value':function _0x394eae(_0x897269){var _0x3305e3=_0x897269;if(this['__min']!==undefined&&_0x3305e3<this['__min'])_0x3305e3=this['__min'];else this['__max']!==undefined&&_0x3305e3>this['__max']&&(_0x3305e3=this['__max']);return this['__step']!==undefined&&_0x3305e3%this['__step']!==0x0&&(_0x3305e3=Math['round'](_0x3305e3/this['__step'])*this['__step']),get(_0x2cae21['prototype']['__proto__']||Object['getPrototypeOf'](_0x2cae21['prototype']),'setValue',this)['call'](this,_0x3305e3);}},{'key':'min','value':function _0x1d4115(_0x48ebcd){return this['__min']=_0x48ebcd,this;}},{'key':'max','value':function _0x4d41a1(_0x39aae3){return this['__max']=_0x39aae3,this;}},{'key':'step','value':function _0xae6e1c(_0x560f06){return this['__step']=_0x560f06,this['__impliedStep']=_0x560f06,this['__precision']=numDecimals(_0x560f06),this;}}]),_0x2cae21;}(Controller);function roundToDecimal(_0x15d0da,_0x20d303){var _0x542492=Math['pow'](0xa,_0x20d303);return Math['round'](_0x15d0da*_0x542492)/_0x542492;}var NumberControllerBox=function(_0x1f1a7f){inherits(_0x4f0bda,_0x1f1a7f);function _0x4f0bda(_0x151750,_0x500ddf,_0x45ef73){classCallCheck(this,_0x4f0bda);var _0x45f028=possibleConstructorReturn(this,(_0x4f0bda['__proto__']||Object['getPrototypeOf'](_0x4f0bda))['call'](this,_0x151750,_0x500ddf,_0x45ef73));_0x45f028['__truncationSuspended']=![];var _0x5c4f3d=_0x45f028,_0x366d30=void 0x0;function _0x152368(){var _0x13cc2f=parseFloat(_0x5c4f3d['__input']['value']);!Common['isNaN'](_0x13cc2f)&&_0x5c4f3d['setValue'](_0x13cc2f);}function _0x8cd14(){_0x5c4f3d['__onFinishChange']&&_0x5c4f3d['__onFinishChange']['call'](_0x5c4f3d,_0x5c4f3d['getValue']());}function _0x390adf(){_0x8cd14();}function _0x10a07d(_0x4b53bf){var _0x398c74=_0x366d30-_0x4b53bf['clientY'];_0x5c4f3d['setValue'](_0x5c4f3d['getValue']()+_0x398c74*_0x5c4f3d['__impliedStep']),_0x366d30=_0x4b53bf['clientY'];}function _0x3738f7(){dom['unbind'](window,'mousemove',_0x10a07d),dom['unbind'](window,'mouseup',_0x3738f7),_0x8cd14();}function _0x1d7e35(_0x1b3eac){dom['bind'](window,'mousemove',_0x10a07d),dom['bind'](window,'mouseup',_0x3738f7),_0x366d30=_0x1b3eac['clientY'];}return _0x45f028['__input']=document['createElement']('input'),_0x45f028['__input']['setAttribute']('type','text'),dom['bind'](_0x45f028['__input'],'change',_0x152368),dom['bind'](_0x45f028['__input'],'blur',_0x390adf),dom['bind'](_0x45f028['__input'],'mousedown',_0x1d7e35),dom['bind'](_0x45f028['__input'],'keydown',function(_0xa9fba2){_0xa9fba2['keyCode']===0xd&&(_0x5c4f3d['__truncationSuspended']=!![],this['blur'](),_0x5c4f3d['__truncationSuspended']=![],_0x8cd14());}),_0x45f028['updateDisplay'](),_0x45f028['domElement']['appendChild'](_0x45f028['__input']),_0x45f028;}return createClass(_0x4f0bda,[{'key':'updateDisplay','value':function _0x583ef2(){return this['__input']['value']=this['__truncationSuspended']?this['getValue']():roundToDecimal(this['getValue'](),this['__precision']),get(_0x4f0bda['prototype']['__proto__']||Object['getPrototypeOf'](_0x4f0bda['prototype']),'updateDisplay',this)['call'](this);}}]),_0x4f0bda;}(NumberController);function map(_0x48bd69,_0xb87f3d,_0x9f0b9e,_0x426a07,_0x23ef4b){return _0x426a07+(_0x23ef4b-_0x426a07)*((_0x48bd69-_0xb87f3d)/(_0x9f0b9e-_0xb87f3d));}var NumberControllerSlider=function(_0x241453){inherits(_0x4886fc,_0x241453);function _0x4886fc(_0x5306d1,_0x3d8212,_0x4c68cb,_0x57896f,_0x50551d){classCallCheck(this,_0x4886fc);var _0x3d44d3=possibleConstructorReturn(this,(_0x4886fc['__proto__']||Object['getPrototypeOf'](_0x4886fc))['call'](this,_0x5306d1,_0x3d8212,{'min':_0x4c68cb,'max':_0x57896f,'step':_0x50551d})),_0x24bdcd=_0x3d44d3;_0x3d44d3['__background']=document['createElement']('div'),_0x3d44d3['__foreground']=document['createElement']('div'),dom['bind'](_0x3d44d3['__background'],'mousedown',_0x1049a8),dom['bind'](_0x3d44d3['__background'],'touchstart',_0x127a2b),dom['addClass'](_0x3d44d3['__background'],'slider'),dom['addClass'](_0x3d44d3['__foreground'],'slider-fg');function _0x1049a8(_0x258540){document['activeElement']['blur'](),dom['bind'](window,'mousemove',_0x43414a),dom['bind'](window,'mouseup',_0x1eb07f),_0x43414a(_0x258540);}function _0x43414a(_0x231400){_0x231400['preventDefault']();var _0xe353af=_0x24bdcd['__background']['getBoundingClientRect']();return _0x24bdcd['setValue'](map(_0x231400['clientX'],_0xe353af['left'],_0xe353af['right'],_0x24bdcd['__min'],_0x24bdcd['__max'])),![];}function _0x1eb07f(){dom['unbind'](window,'mousemove',_0x43414a),dom['unbind'](window,'mouseup',_0x1eb07f),_0x24bdcd['__onFinishChange']&&_0x24bdcd['__onFinishChange']['call'](_0x24bdcd,_0x24bdcd['getValue']());}function _0x127a2b(_0x11d693){if(_0x11d693['touches']['length']!==0x1)return;dom['bind'](window,'touchmove',_0x1cc583),dom['bind'](window,'touchend',_0x371f0f),_0x1cc583(_0x11d693);}function _0x1cc583(_0xf5527f){var _0x17b387=_0xf5527f['touches'][0x0]['clientX'],_0x295547=_0x24bdcd['__background']['getBoundingClientRect']();_0x24bdcd['setValue'](map(_0x17b387,_0x295547['left'],_0x295547['right'],_0x24bdcd['__min'],_0x24bdcd['__max']));}function _0x371f0f(){dom['unbind'](window,'touchmove',_0x1cc583),dom['unbind'](window,'touchend',_0x371f0f),_0x24bdcd['__onFinishChange']&&_0x24bdcd['__onFinishChange']['call'](_0x24bdcd,_0x24bdcd['getValue']());}return _0x3d44d3['updateDisplay'](),_0x3d44d3['__background']['appendChild'](_0x3d44d3['__foreground']),_0x3d44d3['domElement']['appendChild'](_0x3d44d3['__background']),_0x3d44d3;}return createClass(_0x4886fc,[{'key':'updateDisplay','value':function _0x32339e(){var _0x52756b=(this['getValue']()-this['__min'])/(this['__max']-this['__min']);return this['__foreground']['style']['width']=_0x52756b*0x64+'%',get(_0x4886fc['prototype']['__proto__']||Object['getPrototypeOf'](_0x4886fc['prototype']),'updateDisplay',this)['call'](this);}}]),_0x4886fc;}(NumberController),FunctionController=function(_0x27a848){inherits(_0x73e957,_0x27a848);function _0x73e957(_0x2e1568,_0x497e17,_0x45b3b2){classCallCheck(this,_0x73e957);var _0x34b4fd=possibleConstructorReturn(this,(_0x73e957['__proto__']||Object['getPrototypeOf'](_0x73e957))['call'](this,_0x2e1568,_0x497e17)),_0x11f38d=_0x34b4fd;return _0x34b4fd['__button']=document['createElement']('div'),_0x34b4fd['__button']['innerHTML']=_0x45b3b2===undefined?'Fire':_0x45b3b2,dom['bind'](_0x34b4fd['__button'],'click',function(_0x57febf){return _0x57febf['preventDefault'](),_0x11f38d['fire'](),![];}),dom['addClass'](_0x34b4fd['__button'],'button'),_0x34b4fd['domElement']['appendChild'](_0x34b4fd['__button']),_0x34b4fd;}return createClass(_0x73e957,[{'key':'fire','value':function _0x561c97(){this['__onChange']&&this['__onChange']['call'](this),this['getValue']()['call'](this['object']),this['__onFinishChange']&&this['__onFinishChange']['call'](this,this['getValue']());}}]),_0x73e957;}(Controller),ColorController=function(_0x5c4c08){inherits(_0x1afa21,_0x5c4c08);function _0x1afa21(_0x1fc087,_0x23b1f9){classCallCheck(this,_0x1afa21);var _0x23ad0e=possibleConstructorReturn(this,(_0x1afa21['__proto__']||Object['getPrototypeOf'](_0x1afa21))['call'](this,_0x1fc087,_0x23b1f9));_0x23ad0e['__color']=new Color(_0x23ad0e['getValue']()),_0x23ad0e['__temp']=new Color(0x0);var _0x1099f7=_0x23ad0e;_0x23ad0e['domElement']=document['createElement']('div'),dom['makeSelectable'](_0x23ad0e['domElement'],![]),_0x23ad0e['__selector']=document['createElement']('div'),_0x23ad0e['__selector']['className']='selector',_0x23ad0e['__saturation_field']=document['createElement']('div'),_0x23ad0e['__saturation_field']['className']='saturation-field',_0x23ad0e['__field_knob']=document['createElement']('div'),_0x23ad0e['__field_knob']['className']='field-knob',_0x23ad0e['__field_knob_border']='2px\x20solid\x20',_0x23ad0e['__hue_knob']=document['createElement']('div'),_0x23ad0e['__hue_knob']['className']='hue-knob',_0x23ad0e['__hue_field']=document['createElement']('div'),_0x23ad0e['__hue_field']['className']='hue-field',_0x23ad0e['__input']=document['createElement']('input'),_0x23ad0e['__input']['type']='text',_0x23ad0e['__input_textShadow']='0\x201px\x201px\x20',dom['bind'](_0x23ad0e['__input'],'keydown',function(_0x11f6fa){_0x11f6fa['keyCode']===0xd&&_0x51a4d9['call'](this);}),dom['bind'](_0x23ad0e['__input'],'blur',_0x51a4d9),dom['bind'](_0x23ad0e['__selector'],'mousedown',function(){dom['addClass'](this,'drag')['bind'](window,'mouseup',function(){dom['removeClass'](_0x1099f7['__selector'],'drag');});}),dom['bind'](_0x23ad0e['__selector'],'touchstart',function(){dom['addClass'](this,'drag')['bind'](window,'touchend',function(){dom['removeClass'](_0x1099f7['__selector'],'drag');});});var _0x1dd500=document['createElement']('div');Common['extend'](_0x23ad0e['__selector']['style'],{'width':'122px','height':'102px','padding':'3px','backgroundColor':'#222','boxShadow':'0px\x201px\x203px\x20rgba(0,0,0,0.3)'}),Common['extend'](_0x23ad0e['__field_knob']['style'],{'position':'absolute','width':'12px','height':'12px','border':_0x23ad0e['__field_knob_border']+(_0x23ad0e['__color']['v']<0.5?'#fff':'#000'),'boxShadow':'0px\x201px\x203px\x20rgba(0,0,0,0.5)','borderRadius':'12px','zIndex':0x1}),Common['extend'](_0x23ad0e['__hue_knob']['style'],{'position':'absolute','width':'15px','height':'2px','borderRight':'4px\x20solid\x20#fff','zIndex':0x1}),Common['extend'](_0x23ad0e['__saturation_field']['style'],{'width':'100px','height':'100px','border':'1px\x20solid\x20#555','marginRight':'3px','display':'inline-block','cursor':'pointer'}),Common['extend'](_0x1dd500['style'],{'width':'100%','height':'100%','background':'none'}),linearGradient(_0x1dd500,'top','rgba(0,0,0,0)','#000'),Common['extend'](_0x23ad0e['__hue_field']['style'],{'width':'15px','height':'100px','border':'1px\x20solid\x20#555','cursor':'ns-resize','position':'absolute','top':'3px','right':'3px'}),hueGradient(_0x23ad0e['__hue_field']),Common['extend'](_0x23ad0e['__input']['style'],{'outline':'none','textAlign':'center','color':'#fff','border':0x0,'fontWeight':'bold','textShadow':_0x23ad0e['__input_textShadow']+'rgba(0,0,0,0.7)'}),dom['bind'](_0x23ad0e['__saturation_field'],'mousedown',_0x50440b),dom['bind'](_0x23ad0e['__saturation_field'],'touchstart',_0x50440b),dom['bind'](_0x23ad0e['__field_knob'],'mousedown',_0x50440b),dom['bind'](_0x23ad0e['__field_knob'],'touchstart',_0x50440b),dom['bind'](_0x23ad0e['__hue_field'],'mousedown',_0x50d2a5),dom['bind'](_0x23ad0e['__hue_field'],'touchstart',_0x50d2a5);function _0x50440b(_0x43f353){_0x21d966(_0x43f353),dom['bind'](window,'mousemove',_0x21d966),dom['bind'](window,'touchmove',_0x21d966),dom['bind'](window,'mouseup',_0x3dacb8),dom['bind'](window,'touchend',_0x3dacb8);}function _0x50d2a5(_0x3efc08){_0x4682fc(_0x3efc08),dom['bind'](window,'mousemove',_0x4682fc),dom['bind'](window,'touchmove',_0x4682fc),dom['bind'](window,'mouseup',_0x2cc610),dom['bind'](window,'touchend',_0x2cc610);}function _0x3dacb8(){dom['unbind'](window,'mousemove',_0x21d966),dom['unbind'](window,'touchmove',_0x21d966),dom['unbind'](window,'mouseup',_0x3dacb8),dom['unbind'](window,'touchend',_0x3dacb8),_0x1100cc();}function _0x2cc610(){dom['unbind'](window,'mousemove',_0x4682fc),dom['unbind'](window,'touchmove',_0x4682fc),dom['unbind'](window,'mouseup',_0x2cc610),dom['unbind'](window,'touchend',_0x2cc610),_0x1100cc();}function _0x51a4d9(){var _0x514b00=interpret(this['value']);_0x514b00!==![]?(_0x1099f7['__color']['__state']=_0x514b00,_0x1099f7['setValue'](_0x1099f7['__color']['toOriginal']())):this['value']=_0x1099f7['__color']['toString']();}function _0x1100cc(){_0x1099f7['__onFinishChange']&&_0x1099f7['__onFinishChange']['call'](_0x1099f7,_0x1099f7['__color']['toOriginal']());}_0x23ad0e['__saturation_field']['appendChild'](_0x1dd500),_0x23ad0e['__selector']['appendChild'](_0x23ad0e['__field_knob']),_0x23ad0e['__selector']['appendChild'](_0x23ad0e['__saturation_field']),_0x23ad0e['__selector']['appendChild'](_0x23ad0e['__hue_field']),_0x23ad0e['__hue_field']['appendChild'](_0x23ad0e['__hue_knob']),_0x23ad0e['domElement']['appendChild'](_0x23ad0e['__input']),_0x23ad0e['domElement']['appendChild'](_0x23ad0e['__selector']),_0x23ad0e['updateDisplay']();function _0x21d966(_0x5487a2){_0x5487a2['type']['indexOf']('touch')===-0x1&&_0x5487a2['preventDefault']();var _0x2bcb01=_0x1099f7['__saturation_field']['getBoundingClientRect'](),_0x34804e=_0x5487a2['touches']&&_0x5487a2['touches'][0x0]||_0x5487a2,_0x39f1df=_0x34804e['clientX'],_0x680751=_0x34804e['clientY'],_0x3af727=(_0x39f1df-_0x2bcb01['left'])/(_0x2bcb01['right']-_0x2bcb01['left']),_0xa8aa0a=0x1-(_0x680751-_0x2bcb01['top'])/(_0x2bcb01['bottom']-_0x2bcb01['top']);if(_0xa8aa0a>0x1)_0xa8aa0a=0x1;else _0xa8aa0a<0x0&&(_0xa8aa0a=0x0);if(_0x3af727>0x1)_0x3af727=0x1;else _0x3af727<0x0&&(_0x3af727=0x0);return _0x1099f7['__color']['v']=_0xa8aa0a,_0x1099f7['__color']['s']=_0x3af727,_0x1099f7['setValue'](_0x1099f7['__color']['toOriginal']()),![];}function _0x4682fc(_0x1fa7ed){_0x1fa7ed['type']['indexOf']('touch')===-0x1&&_0x1fa7ed['preventDefault']();var _0x40d235=_0x1099f7['__hue_field']['getBoundingClientRect'](),_0x2eaee6=_0x1fa7ed['touches']&&_0x1fa7ed['touches'][0x0]||_0x1fa7ed,_0x104136=_0x2eaee6['clientY'],_0x5b13b6=0x1-(_0x104136-_0x40d235['top'])/(_0x40d235['bottom']-_0x40d235['top']);if(_0x5b13b6>0x1)_0x5b13b6=0x1;else _0x5b13b6<0x0&&(_0x5b13b6=0x0);return _0x1099f7['__color']['h']=_0x5b13b6*0x168,_0x1099f7['setValue'](_0x1099f7['__color']['toOriginal']()),![];}return _0x23ad0e;}return createClass(_0x1afa21,[{'key':'updateDisplay','value':function _0x522bbb(){var _0x56393c=interpret(this['getValue']());if(_0x56393c!==![]){var _0x335de2=![];Common['each'](Color['COMPONENTS'],function(_0x5acbd7){if(!Common['isUndefined'](_0x56393c[_0x5acbd7])&&!Common['isUndefined'](this['__color']['__state'][_0x5acbd7])&&_0x56393c[_0x5acbd7]!==this['__color']['__state'][_0x5acbd7])return _0x335de2=!![],{};},this),_0x335de2&&Common['extend'](this['__color']['__state'],_0x56393c);}Common['extend'](this['__temp']['__state'],this['__color']['__state']),this['__temp']['a']=0x1;var _0x5f09b4=this['__color']['v']<0.5||this['__color']['s']>0.5?0xff:0x0,_0x23406a=0xff-_0x5f09b4;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('+_0x5f09b4+','+_0x5f09b4+','+_0x5f09b4+')'}),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('+_0x5f09b4+','+_0x5f09b4+','+_0x5f09b4+')','textShadow':this['__input_textShadow']+'rgba('+_0x23406a+','+_0x23406a+','+_0x23406a+',.7)'});}}]),_0x1afa21;}(Controller),vendors=['-moz-','-o-','-webkit-','-ms-',''];function linearGradient(_0x5843b9,_0x41b548,_0x2b154a,_0x3344ab){_0x5843b9['style']['background']='',Common['each'](vendors,function(_0x45db1b){_0x5843b9['style']['cssText']+='background:\x20'+_0x45db1b+'linear-gradient('+_0x41b548+',\x20'+_0x2b154a+'\x200%,\x20'+_0x3344ab+'\x20100%);\x20';});}function hueGradient(_0x463d05){_0x463d05['style']['background']='',_0x463d05['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%);',_0x463d05['style']['cssText']+='background:\x20-webkit-linear-gradient(top,\x20\x20#ff0000\x200%,#ff00ff\x2017%,#0000ff\x2034%,#00ffff\x2050%,#00ff00\x2067%,#ffff00\x2084%,#ff0000\x20100%);',_0x463d05['style']['cssText']+='background:\x20-o-linear-gradient(top,\x20\x20#ff0000\x200%,#ff00ff\x2017%,#0000ff\x2034%,#00ffff\x2050%,#00ff00\x2067%,#ffff00\x2084%,#ff0000\x20100%);',_0x463d05['style']['cssText']+='background:\x20-ms-linear-gradient(top,\x20\x20#ff0000\x200%,#ff00ff\x2017%,#0000ff\x2034%,#00ffff\x2050%,#00ff00\x2067%,#ffff00\x2084%,#ff0000\x20100%);',_0x463d05['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(_0x48e682,_0x18e30a){var _0x20bcd5=_0x18e30a||document,_0x310f66=_0x20bcd5['createElement']('link');_0x310f66['type']='text/css',_0x310f66['rel']='stylesheet',_0x310f66['href']=_0x48e682,_0x20bcd5['getElementsByTagName']('head')[0x0]['appendChild'](_0x310f66);},'inject':function inject(_0x3f6310,_0x2b9406){var _0x59a503=_0x2b9406||document,_0x3471bf=document['createElement']('style');_0x3471bf['type']='text/css',_0x3471bf['innerHTML']=_0x3f6310;var _0x26170f=_0x59a503['getElementsByTagName']('head')[0x0];try{_0x26170f['appendChild'](_0x3471bf);}catch(_0x2c645b){}}},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(_0x4c83df,_0x2db312){var _0x37454a=_0x4c83df[_0x2db312];if(Common['isArray'](arguments[0x2])||Common['isObject'](arguments[0x2]))return new OptionController(_0x4c83df,_0x2db312,arguments[0x2]);if(Common['isNumber'](_0x37454a)){if(Common['isNumber'](arguments[0x2])&&Common['isNumber'](arguments[0x3])){if(Common['isNumber'](arguments[0x4]))return new NumberControllerSlider(_0x4c83df,_0x2db312,arguments[0x2],arguments[0x3],arguments[0x4]);return new NumberControllerSlider(_0x4c83df,_0x2db312,arguments[0x2],arguments[0x3]);}if(Common['isNumber'](arguments[0x4]))return new NumberControllerBox(_0x4c83df,_0x2db312,{'min':arguments[0x2],'max':arguments[0x3],'step':arguments[0x4]});return new NumberControllerBox(_0x4c83df,_0x2db312,{'min':arguments[0x2],'max':arguments[0x3]});}if(Common['isString'](_0x37454a))return new StringController(_0x4c83df,_0x2db312);if(Common['isFunction'](_0x37454a))return new FunctionController(_0x4c83df,_0x2db312,'');if(Common['isBoolean'](_0x37454a))return new BooleanController(_0x4c83df,_0x2db312);return null;};function requestAnimationFrame$1(_0x54b892){setTimeout(_0x54b892,0x3e8/0x3c);}var requestAnimationFrame$1$1=window['requestAnimationFrame']||window['webkitRequestAnimationFrame']||window['mozRequestAnimationFrame']||window['oRequestAnimationFrame']||window['msRequestAnimationFrame']||requestAnimationFrame$1,CenteredDiv=(function(){function _0x571d3a(){classCallCheck(this,_0x571d3a),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 _0x1c650d=this;dom['bind'](this['backgroundElement'],'click',function(){_0x1c650d['hide']();});}return createClass(_0x571d3a,[{'key':'show','value':function _0x6e7724(){var _0x5188a8=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(){_0x5188a8['backgroundElement']['style']['opacity']=0x1,_0x5188a8['domElement']['style']['opacity']=0x1,_0x5188a8['domElement']['style']['webkitTransform']='scale(1)';});}},{'key':'hide','value':function _0xe818fd(){var _0x337e77=this,_0x2112fc=function _0x2d1f76(){_0x337e77['domElement']['style']['display']='none',_0x337e77['backgroundElement']['style']['display']='none',dom['unbind'](_0x337e77['domElement'],'webkitTransitionEnd',_0x2d1f76),dom['unbind'](_0x337e77['domElement'],'transitionend',_0x2d1f76),dom['unbind'](_0x337e77['domElement'],'oTransitionEnd',_0x2d1f76);};dom['bind'](this['domElement'],'webkitTransitionEnd',_0x2112fc),dom['bind'](this['domElement'],'transitionend',_0x2112fc),dom['bind'](this['domElement'],'oTransitionEnd',_0x2112fc),this['backgroundElement']['style']['opacity']=0x0,this['domElement']['style']['opacity']=0x0,this['domElement']['style']['webkitTransform']='scale(1.1)';}},{'key':'layout','value':function _0x685c46(){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';}}]),_0x571d3a;}()),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(_0x5d131b){return ![];}}()),SAVE_DIALOGUE=void 0x0,autoPlaceVirgin=!![],autoPlaceContainer=void 0x0,hide=![],hideableGuis=[],GUI=function GUI(_0x16e8d7){var _0x310087=this,_0x5d2c4c=_0x16e8d7||{};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']=[],_0x5d2c4c=Common['defaults'](_0x5d2c4c,{'closeOnTop':![],'autoPlace':!![],'width':GUI['DEFAULT_WIDTH']}),_0x5d2c4c=Common['defaults'](_0x5d2c4c,{'resizable':_0x5d2c4c['autoPlace'],'hideable':_0x5d2c4c['autoPlace']});!Common['isUndefined'](_0x5d2c4c['load'])?_0x5d2c4c['preset']&&(_0x5d2c4c['load']['preset']=_0x5d2c4c['preset']):_0x5d2c4c['load']={'preset':DEFAULT_DEFAULT_PRESET_NAME};Common['isUndefined'](_0x5d2c4c['parent'])&&_0x5d2c4c['hideable']&&hideableGuis['push'](this);_0x5d2c4c['resizable']=Common['isUndefined'](_0x5d2c4c['parent'])&&_0x5d2c4c['resizable'];_0x5d2c4c['autoPlace']&&Common['isUndefined'](_0x5d2c4c['scrollable'])&&(_0x5d2c4c['scrollable']=!![]);var _0x511c10=SUPPORTS_LOCAL_STORAGE&&localStorage['getItem'](getLocalStorageHash(this,'isLocal'))==='true',_0x3c2804=void 0x0,_0x48bcdf=void 0x0;Object['defineProperties'](this,{'parent':{'get':function _0x22861a(){return _0x5d2c4c['parent'];}},'scrollable':{'get':function _0x4b7a0a(){return _0x5d2c4c['scrollable'];}},'autoPlace':{'get':function _0x24d48b(){return _0x5d2c4c['autoPlace'];}},'closeOnTop':{'get':function _0x477e1e(){return _0x5d2c4c['closeOnTop'];}},'preset':{'get':function _0x212aa6(){if(_0x310087['parent'])return _0x310087['getRoot']()['preset'];return _0x5d2c4c['load']['preset'];},'set':function _0x16abf5(_0x369a41){_0x310087['parent']?_0x310087['getRoot']()['preset']=_0x369a41:_0x5d2c4c['load']['preset']=_0x369a41,setPresetSelectIndex(this),_0x310087['revert']();}},'width':{'get':function _0x42eb5d(){return _0x5d2c4c['width'];},'set':function _0xe49fcf(_0xcf3844){_0x5d2c4c['width']=_0xcf3844,setWidth(_0x310087,_0xcf3844);}},'name':{'get':function _0xb47bf7(){return _0x5d2c4c['name'];},'set':function _0x496dc0(_0x826b1c){_0x5d2c4c['name']=_0x826b1c,_0x48bcdf&&(_0x48bcdf['innerHTML']=_0x5d2c4c['name']);}},'closed':{'get':function _0x2c275a(){return _0x5d2c4c['closed'];},'set':function _0x254488(_0x145241){_0x5d2c4c['closed']=_0x145241,_0x5d2c4c['closed']?dom['addClass'](_0x310087['__ul'],GUI['CLASS_CLOSED']):dom['removeClass'](_0x310087['__ul'],GUI['CLASS_CLOSED']),this['onResize'](),_0x310087['__closeButton']&&(_0x310087['__closeButton']['innerHTML']=_0x145241?GUI['TEXT_OPEN']:GUI['TEXT_CLOSED']);}},'load':{'get':function _0x1bb2c8(){return _0x5d2c4c['load'];}},'useLocalStorage':{'get':function _0x448dea(){return _0x511c10;},'set':function _0x45148d(_0x39d47b){SUPPORTS_LOCAL_STORAGE&&(_0x511c10=_0x39d47b,_0x39d47b?dom['bind'](window,'unload',_0x3c2804):dom['unbind'](window,'unload',_0x3c2804),localStorage['setItem'](getLocalStorageHash(_0x310087,'isLocal'),_0x39d47b));}}});if(Common['isUndefined'](_0x5d2c4c['parent'])){this['closed']=_0x5d2c4c['closed']||![],dom['addClass'](this['domElement'],GUI['CLASS_MAIN']),dom['makeSelectable'](this['domElement'],![]);if(SUPPORTS_LOCAL_STORAGE){if(_0x511c10){_0x310087['useLocalStorage']=!![];var _0xe17a43=localStorage['getItem'](getLocalStorageHash(this,'gui'));_0xe17a43&&(_0x5d2c4c['load']=JSON['parse'](_0xe17a43));}}this['__closeButton']=document['createElement']('div'),this['__closeButton']['innerHTML']=GUI['TEXT_CLOSED'],dom['addClass'](this['__closeButton'],GUI['CLASS_CLOSE_BUTTON']),_0x5d2c4c['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(){_0x310087['closed']=!_0x310087['closed'];});}else {_0x5d2c4c['closed']===undefined&&(_0x5d2c4c['closed']=!![]);var _0x34ac28=document['createTextNode'](_0x5d2c4c['name']);dom['addClass'](_0x34ac28,'controller-name'),_0x48bcdf=addRow(_0x310087,_0x34ac28);var _0x554470=function _0x1d2326(_0x199ff4){return _0x199ff4['preventDefault'](),_0x310087['closed']=!_0x310087['closed'],![];};dom['addClass'](this['__ul'],GUI['CLASS_CLOSED']),dom['addClass'](_0x48bcdf,'title'),dom['bind'](_0x48bcdf,'click',_0x554470),!_0x5d2c4c['closed']&&(this['closed']=![]);}_0x5d2c4c['autoPlace']&&(Common['isUndefined'](_0x5d2c4c['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(_0x310087,_0x5d2c4c['width']));this['__resizeHandler']=function(){_0x310087['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']();_0x5d2c4c['resizable']&&addResizeHandle(this);_0x3c2804=function _0x27470d(){SUPPORTS_LOCAL_STORAGE&&localStorage['getItem'](getLocalStorageHash(_0x310087,'isLocal'))==='true'&&localStorage['setItem'](getLocalStorageHash(_0x310087,'gui'),JSON['stringify'](_0x310087['getSaveObject']()));},this['saveToLocalStorageIfPossible']=_0x3c2804;function _0x53960c(){var _0x138c0b=_0x310087['getRoot']();_0x138c0b['width']+=0x1,Common['defer'](function(){_0x138c0b['width']-=0x1;});}!_0x5d2c4c['parent']&&_0x53960c();};GUI['toggleHide']=function(){hide=!hide,Common['each'](hideableGuis,function(_0x156bb1){_0x156bb1['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(_0x54bc3c){document['activeElement']['type']!=='text'&&(_0x54bc3c['which']===HIDE_KEY_CODE||_0x54bc3c['keyCode']===HIDE_KEY_CODE)&&GUI['toggleHide']();},dom['bind'](window,'keydown',GUI['_keydownHandler'],![]),Common['extend'](GUI['prototype'],{'add':function add(_0x224a35,_0x5542a5){return _add(this,_0x224a35,_0x5542a5,{'factoryArgs':Array['prototype']['slice']['call'](arguments,0x2)});},'addColor':function addColor(_0x2f1d39,_0x144f25){return _add(this,_0x2f1d39,_0x144f25,{'color':!![]});},'remove':function remove(_0x40ceea){this['__ul']['removeChild'](_0x40ceea['__li']),this['__controllers']['splice'](this['__controllers']['indexOf'](_0x40ceea),0x1);var _0x2de481=this;Common['defer'](function(){_0x2de481['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 _0x35f359=this;Common['each'](this['__folders'],function(_0x2ccb4c){_0x35f359['removeFolder'](_0x2ccb4c);}),dom['unbind'](window,'keydown',GUI['_keydownHandler'],![]),removeListeners(this);},'addFolder':function addFolder(_0x4173a8){if(this['__folders'][_0x4173a8]!==undefined)throw new Error('You\x20already\x20have\x20a\x20folder\x20in\x20this\x20GUI\x20by\x20the'+'\x20name\x20\x22'+_0x4173a8+'\x22');var _0x362da5={'name':_0x4173a8,'parent':this};_0x362da5['autoPlace']=this['autoPlace'];this['load']&&this['load']['folders']&&this['load']['folders'][_0x4173a8]&&(_0x362da5['closed']=this['load']['folders'][_0x4173a8]['closed'],_0x362da5['load']=this['load']['folders'][_0x4173a8]);var _0x512c2f=new GUI(_0x362da5);this['__folders'][_0x4173a8]=_0x512c2f;var _0x5d48ee=addRow(this,_0x512c2f['domElement']);return dom['addClass'](_0x5d48ee,'folder'),_0x512c2f;},'removeFolder':function removeFolder(_0x585a83){this['__ul']['removeChild'](_0x585a83['domElement']['parentElement']),delete this['__folders'][_0x585a83['name']];this['load']&&this['load']['folders']&&this['load']['folders'][_0x585a83['name']]&&delete this['load']['folders'][_0x585a83['name']];removeListeners(_0x585a83);var _0xd6df0a=this;Common['each'](_0x585a83['__folders'],function(_0x1361b7){_0x585a83['removeFolder'](_0x1361b7);}),Common['defer'](function(){_0xd6df0a['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 _0x11a5ec=this['getRoot']();if(_0x11a5ec['scrollable']){var _0x5821a3=dom['getOffset'](_0x11a5ec['__ul'])['top'],_0x475a2d=0x0;Common['each'](_0x11a5ec['__ul']['childNodes'],function(_0xda1087){!(_0x11a5ec['autoPlace']&&_0xda1087===_0x11a5ec['__save_row'])&&(_0x475a2d+=dom['getHeight'](_0xda1087));}),window['innerHeight']-_0x5821a3-CLOSE_BUTTON_HEIGHT<_0x475a2d?(dom['addClass'](_0x11a5ec['domElement'],GUI['CLASS_TOO_TALL']),_0x11a5ec['__ul']['style']['height']=window['innerHeight']-_0x5821a3-CLOSE_BUTTON_HEIGHT+'px'):(dom['removeClass'](_0x11a5ec['domElement'],GUI['CLASS_TOO_TALL']),_0x11a5ec['__ul']['style']['height']='auto');}_0x11a5ec['__resize_handle']&&Common['defer'](function(){_0x11a5ec['__resize_handle']['style']['height']=_0x11a5ec['__ul']['offsetHeight']+'px';}),_0x11a5ec['__closeButton']&&(_0x11a5ec['__closeButton']['style']['width']=_0x11a5ec['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 _0x56455b=this;Common['each'](Array['prototype']['slice']['call'](arguments),function(_0x20b38a){_0x56455b['__rememberedObjects']['length']===0x0&&addSaveMenu(_0x56455b),_0x56455b['__rememberedObjects']['indexOf'](_0x20b38a)===-0x1&&_0x56455b['__rememberedObjects']['push'](_0x20b38a);}),this['autoPlace']&&setWidth(this,this['width']);},'getRoot':function getRoot(){var _0x3c9eb5=this;while(_0x3c9eb5['parent']){_0x3c9eb5=_0x3c9eb5['parent'];}return _0x3c9eb5;},'getSaveObject':function getSaveObject(){var _0x46ffdc=this['load'];return _0x46ffdc['closed']=this['closed'],this['__rememberedObjects']['length']>0x0&&(_0x46ffdc['preset']=this['preset'],!_0x46ffdc['remembered']&&(_0x46ffdc['remembered']={}),_0x46ffdc['remembered'][this['preset']]=getCurrentPreset(this)),_0x46ffdc['folders']={},Common['each'](this['__folders'],function(_0x4867b1,_0x521407){_0x46ffdc['folders'][_0x521407]=_0x4867b1['getSaveObject']();}),_0x46ffdc;},'save':function save(){!this['load']['remembered']&&(this['load']['remembered']={}),this['load']['remembered'][this['preset']]=getCurrentPreset(this),markPresetModified(this,![]),this['saveToLocalStorageIfPossible']();},'saveAs':function saveAs(_0x3c6950){!this['load']['remembered']&&(this['load']['remembered']={},this['load']['remembered'][DEFAULT_DEFAULT_PRESET_NAME]=getCurrentPreset(this,!![])),this['load']['remembered'][_0x3c6950]=getCurrentPreset(this),this['preset']=_0x3c6950,addPresetOption(this,_0x3c6950,!![]),this['saveToLocalStorageIfPossible']();},'revert':function revert(_0x275d50){Common['each'](this['__controllers'],function(_0x5257bf){!this['getRoot']()['load']['remembered']?_0x5257bf['setValue'](_0x5257bf['initialValue']):recallSavedValue(_0x275d50||this['getRoot'](),_0x5257bf),_0x5257bf['__onFinishChange']&&_0x5257bf['__onFinishChange']['call'](_0x5257bf,_0x5257bf['getValue']());},this),Common['each'](this['__folders'],function(_0x37eeab){_0x37eeab['revert'](_0x37eeab);}),!_0x275d50&&markPresetModified(this['getRoot'](),![]);},'listen':function listen(_0x40fea2){var _0x51a1db=this['__listening']['length']===0x0;this['__listening']['push'](_0x40fea2),_0x51a1db&&updateDisplays(this['__listening']);},'updateDisplay':function updateDisplay(){Common['each'](this['__controllers'],function(_0x5601a8){_0x5601a8['updateDisplay']();}),Common['each'](this['__folders'],function(_0x4152b3){_0x4152b3['updateDisplay']();});}});function addRow(_0xa9b84a,_0x29d5b1,_0x3b196b){var _0x21bb50=document['createElement']('li');return _0x29d5b1&&_0x21bb50['appendChild'](_0x29d5b1),_0x3b196b?_0xa9b84a['__ul']['insertBefore'](_0x21bb50,_0x3b196b):_0xa9b84a['__ul']['appendChild'](_0x21bb50),_0xa9b84a['onResize'](),_0x21bb50;}function removeListeners(_0x6e7ebc){dom['unbind'](window,'resize',_0x6e7ebc['__resizeHandler']),_0x6e7ebc['saveToLocalStorageIfPossible']&&dom['unbind'](window,'unload',_0x6e7ebc['saveToLocalStorageIfPossible']);}function markPresetModified(_0xde7504,_0x1fa382){var _0x1a5fc9=_0xde7504['__preset_select'][_0xde7504['__preset_select']['selectedIndex']];_0x1fa382?_0x1a5fc9['innerHTML']=_0x1a5fc9['value']+'*':_0x1a5fc9['innerHTML']=_0x1a5fc9['value'];}function augmentController(_0x3e593b,_0x3ae323,_0x4ed9ef){_0x4ed9ef['__li']=_0x3ae323,_0x4ed9ef['__gui']=_0x3e593b,Common['extend'](_0x4ed9ef,{'options':function _0x2ebcab(_0xd4314b){if(arguments['length']>0x1){var _0x54de8f=_0x4ed9ef['__li']['nextElementSibling'];return _0x4ed9ef['remove'](),_add(_0x3e593b,_0x4ed9ef['object'],_0x4ed9ef['property'],{'before':_0x54de8f,'factoryArgs':[Common['toArray'](arguments)]});}if(Common['isArray'](_0xd4314b)||Common['isObject'](_0xd4314b)){var _0xeece5c=_0x4ed9ef['__li']['nextElementSibling'];return _0x4ed9ef['remove'](),_add(_0x3e593b,_0x4ed9ef['object'],_0x4ed9ef['property'],{'before':_0xeece5c,'factoryArgs':[_0xd4314b]});}},'name':function _0x1e0589(_0x18f453){return _0x4ed9ef['__li']['firstElementChild']['firstElementChild']['innerHTML']=_0x18f453,_0x4ed9ef;},'listen':function _0x2107c5(){return _0x4ed9ef['__gui']['listen'](_0x4ed9ef),_0x4ed9ef;},'remove':function _0x5121a7(){return _0x4ed9ef['__gui']['remove'](_0x4ed9ef),_0x4ed9ef;}});if(_0x4ed9ef instanceof NumberControllerSlider){var _0x2da997=new NumberControllerBox(_0x4ed9ef['object'],_0x4ed9ef['property'],{'min':_0x4ed9ef['__min'],'max':_0x4ed9ef['__max'],'step':_0x4ed9ef['__step']});Common['each'](['updateDisplay','onChange','onFinishChange','step','min','max'],function(_0x3f4e02){var _0xc6de44=_0x4ed9ef[_0x3f4e02],_0x3d03eb=_0x2da997[_0x3f4e02];_0x4ed9ef[_0x3f4e02]=_0x2da997[_0x3f4e02]=function(){var _0x418b3e=Array['prototype']['slice']['call'](arguments);return _0x3d03eb['apply'](_0x2da997,_0x418b3e),_0xc6de44['apply'](_0x4ed9ef,_0x418b3e);};}),dom['addClass'](_0x3ae323,'has-slider'),_0x4ed9ef['domElement']['insertBefore'](_0x2da997['domElement'],_0x4ed9ef['domElement']['firstElementChild']);}else {if(_0x4ed9ef instanceof NumberControllerBox){var _0x1a4d26=function _0x30867f(_0x4b4a76){if(Common['isNumber'](_0x4ed9ef['__min'])&&Common['isNumber'](_0x4ed9ef['__max'])){var _0x477fd4=_0x4ed9ef['__li']['firstElementChild']['firstElementChild']['innerHTML'],_0x36d42f=_0x4ed9ef['__gui']['__listening']['indexOf'](_0x4ed9ef)>-0x1;_0x4ed9ef['remove']();var _0x558a4f=_add(_0x3e593b,_0x4ed9ef['object'],_0x4ed9ef['property'],{'before':_0x4ed9ef['__li']['nextElementSibling'],'factoryArgs':[_0x4ed9ef['__min'],_0x4ed9ef['__max'],_0x4ed9ef['__step']]});_0x558a4f['name'](_0x477fd4);if(_0x36d42f)_0x558a4f['listen']();return _0x558a4f;}return _0x4b4a76;};_0x4ed9ef['min']=Common['compose'](_0x1a4d26,_0x4ed9ef['min']),_0x4ed9ef['max']=Common['compose'](_0x1a4d26,_0x4ed9ef['max']);}else {if(_0x4ed9ef instanceof BooleanController)dom['bind'](_0x3ae323,'click',function(){dom['fakeEvent'](_0x4ed9ef['__checkbox'],'click');}),dom['bind'](_0x4ed9ef['__checkbox'],'click',function(_0x10e003){_0x10e003['stopPropagation']();});else {if(_0x4ed9ef instanceof FunctionController)dom['bind'](_0x3ae323,'click',function(){dom['fakeEvent'](_0x4ed9ef['__button'],'click');}),dom['bind'](_0x3ae323,'mouseover',function(){dom['addClass'](_0x4ed9ef['__button'],'hover');}),dom['bind'](_0x3ae323,'mouseout',function(){dom['removeClass'](_0x4ed9ef['__button'],'hover');});else _0x4ed9ef instanceof ColorController&&(dom['addClass'](_0x3ae323,'color'),_0x4ed9ef['updateDisplay']=Common['compose'](function(_0x18df39){return _0x3ae323['style']['borderLeftColor']=_0x4ed9ef['__color']['toString'](),_0x18df39;},_0x4ed9ef['updateDisplay']),_0x4ed9ef['updateDisplay']());}}}_0x4ed9ef['setValue']=Common['compose'](function(_0x3fd87f){return _0x3e593b['getRoot']()['__preset_select']&&_0x4ed9ef['isModified']()&&markPresetModified(_0x3e593b['getRoot'](),!![]),_0x3fd87f;},_0x4ed9ef['setValue']);}function recallSavedValue(_0x19df46,_0x38492a){var _0x4d0d80=_0x19df46['getRoot'](),_0xdd56fe=_0x4d0d80['__rememberedObjects']['indexOf'](_0x38492a['object']);if(_0xdd56fe!==-0x1){var _0x4f7315=_0x4d0d80['__rememberedObjectIndecesToControllers'][_0xdd56fe];_0x4f7315===undefined&&(_0x4f7315={},_0x4d0d80['__rememberedObjectIndecesToControllers'][_0xdd56fe]=_0x4f7315);_0x4f7315[_0x38492a['property']]=_0x38492a;if(_0x4d0d80['load']&&_0x4d0d80['load']['remembered']){var _0x11ee04=_0x4d0d80['load']['remembered'],_0x76884f=void 0x0;if(_0x11ee04[_0x19df46['preset']])_0x76884f=_0x11ee04[_0x19df46['preset']];else {if(_0x11ee04[DEFAULT_DEFAULT_PRESET_NAME])_0x76884f=_0x11ee04[DEFAULT_DEFAULT_PRESET_NAME];else return;}if(_0x76884f[_0xdd56fe]&&_0x76884f[_0xdd56fe][_0x38492a['property']]!==undefined){var _0x5706cf=_0x76884f[_0xdd56fe][_0x38492a['property']];_0x38492a['initialValue']=_0x5706cf,_0x38492a['setValue'](_0x5706cf);}}}}function _add(_0x1c2dc3,_0xe55c04,_0x50e439,_0x5597df){if(_0xe55c04[_0x50e439]===undefined)throw new Error('Object\x20\x22'+_0xe55c04+'\x22\x20has\x20no\x20property\x20\x22'+_0x50e439+'\x22');var _0x2245a4=void 0x0;if(_0x5597df['color'])_0x2245a4=new ColorController(_0xe55c04,_0x50e439);else {var _0x7e18fa=[_0xe55c04,_0x50e439]['concat'](_0x5597df['factoryArgs']);_0x2245a4=ControllerFactory['apply'](_0x1c2dc3,_0x7e18fa);}_0x5597df['before']instanceof Controller&&(_0x5597df['before']=_0x5597df['before']['__li']);recallSavedValue(_0x1c2dc3,_0x2245a4),dom['addClass'](_0x2245a4['domElement'],'c');var _0xa588f4=document['createElement']('span');dom['addClass'](_0xa588f4,'property-name'),_0xa588f4['innerHTML']=_0x2245a4['property'];var _0x391234=document['createElement']('div');_0x391234['appendChild'](_0xa588f4),_0x391234['appendChild'](_0x2245a4['domElement']);var _0x552ff6=addRow(_0x1c2dc3,_0x391234,_0x5597df['before']);return dom['addClass'](_0x552ff6,GUI['CLASS_CONTROLLER_ROW']),_0x2245a4 instanceof ColorController?dom['addClass'](_0x552ff6,'color'):dom['addClass'](_0x552ff6,_typeof(_0x2245a4['getValue']())),augmentController(_0x1c2dc3,_0x552ff6,_0x2245a4),_0x1c2dc3['__controllers']['push'](_0x2245a4),_0x2245a4;}function getLocalStorageHash(_0x5e3f0a,_0x25f761){return document['location']['href']+'.'+_0x25f761;}function addPresetOption(_0x4f33e5,_0x33e2a5,_0x2dea48){var _0x4a315a=document['createElement']('option');_0x4a315a['innerHTML']=_0x33e2a5,_0x4a315a['value']=_0x33e2a5,_0x4f33e5['__preset_select']['appendChild'](_0x4a315a),_0x2dea48&&(_0x4f33e5['__preset_select']['selectedIndex']=_0x4f33e5['__preset_select']['length']-0x1);}function showHideExplain(_0x25372d,_0x332b7b){_0x332b7b['style']['display']=_0x25372d['useLocalStorage']?'block':'none';}function addSaveMenu(_0x22897d){var _0x5d4ec7=_0x22897d['__save_row']=document['createElement']('li');dom['addClass'](_0x22897d['domElement'],'has-save'),_0x22897d['__ul']['insertBefore'](_0x5d4ec7,_0x22897d['__ul']['firstChild']),dom['addClass'](_0x5d4ec7,'save-row');var _0xefa662=document['createElement']('span');_0xefa662['innerHTML']=' ',dom['addClass'](_0xefa662,'button\x20gears');var _0x3b7e=document['createElement']('span');_0x3b7e['innerHTML']='Save',dom['addClass'](_0x3b7e,'button'),dom['addClass'](_0x3b7e,'save');var _0x107663=document['createElement']('span');_0x107663['innerHTML']='New',dom['addClass'](_0x107663,'button'),dom['addClass'](_0x107663,'save-as');var _0x1d3918=document['createElement']('span');_0x1d3918['innerHTML']='Revert',dom['addClass'](_0x1d3918,'button'),dom['addClass'](_0x1d3918,'revert');var _0x1dcb1e=_0x22897d['__preset_select']=document['createElement']('select');_0x22897d['load']&&_0x22897d['load']['remembered']?Common['each'](_0x22897d['load']['remembered'],function(_0x2cd7b0,_0x15a41){addPresetOption(_0x22897d,_0x15a41,_0x15a41===_0x22897d['preset']);}):addPresetOption(_0x22897d,DEFAULT_DEFAULT_PRESET_NAME,![]);dom['bind'](_0x1dcb1e,'change',function(){for(var _0x43b832=0x0;_0x43b832<_0x22897d['__preset_select']['length'];_0x43b832++){_0x22897d['__preset_select'][_0x43b832]['innerHTML']=_0x22897d['__preset_select'][_0x43b832]['value'];}_0x22897d['preset']=this['value'];}),_0x5d4ec7['appendChild'](_0x1dcb1e),_0x5d4ec7['appendChild'](_0xefa662),_0x5d4ec7['appendChild'](_0x3b7e),_0x5d4ec7['appendChild'](_0x107663),_0x5d4ec7['appendChild'](_0x1d3918);if(SUPPORTS_LOCAL_STORAGE){var _0x4f9765=document['getElementById']('dg-local-explain'),_0x5057c3=document['getElementById']('dg-local-storage'),_0x484fb0=document['getElementById']('dg-save-locally');_0x484fb0['style']['display']='block',localStorage['getItem'](getLocalStorageHash(_0x22897d,'isLocal'))==='true'&&_0x5057c3['setAttribute']('checked','checked'),showHideExplain(_0x22897d,_0x4f9765),dom['bind'](_0x5057c3,'change',function(){_0x22897d['useLocalStorage']=!_0x22897d['useLocalStorage'],showHideExplain(_0x22897d,_0x4f9765);});}var _0x2d2e5a=document['getElementById']('dg-new-constructor');dom['bind'](_0x2d2e5a,'keydown',function(_0x2fcc2d){_0x2fcc2d['metaKey']&&(_0x2fcc2d['which']===0x43||_0x2fcc2d['keyCode']===0x43)&&SAVE_DIALOGUE['hide']();}),dom['bind'](_0xefa662,'click',function(){_0x2d2e5a['innerHTML']=JSON['stringify'](_0x22897d['getSaveObject'](),undefined,0x2),SAVE_DIALOGUE['show'](),_0x2d2e5a['focus'](),_0x2d2e5a['select']();}),dom['bind'](_0x3b7e,'click',function(){_0x22897d['save']();}),dom['bind'](_0x107663,'click',function(){var _0x51d5db=prompt('Enter\x20a\x20new\x20preset\x20name.');_0x51d5db&&_0x22897d['saveAs'](_0x51d5db);}),dom['bind'](_0x1d3918,'click',function(){_0x22897d['revert']();});}function addResizeHandle(_0x379a80){var _0x35466f=void 0x0;_0x379a80['__resize_handle']=document['createElement']('div'),Common['extend'](_0x379a80['__resize_handle']['style'],{'width':'6px','marginLeft':'-3px','height':'200px','cursor':'ew-resize','position':'absolute'});function _0x278f32(_0x42e124){return _0x42e124['preventDefault'](),_0x379a80['width']+=_0x35466f-_0x42e124['clientX'],_0x379a80['onResize'](),_0x35466f=_0x42e124['clientX'],![];}function _0x40fa08(){dom['removeClass'](_0x379a80['__closeButton'],GUI['CLASS_DRAG']),dom['unbind'](window,'mousemove',_0x278f32),dom['unbind'](window,'mouseup',_0x40fa08);}function _0xce25bb(_0x39ef5a){return _0x39ef5a['preventDefault'](),_0x35466f=_0x39ef5a['clientX'],dom['addClass'](_0x379a80['__closeButton'],GUI['CLASS_DRAG']),dom['bind'](window,'mousemove',_0x278f32),dom['bind'](window,'mouseup',_0x40fa08),![];}dom['bind'](_0x379a80['__resize_handle'],'mousedown',_0xce25bb),dom['bind'](_0x379a80['__closeButton'],'mousedown',_0xce25bb),_0x379a80['domElement']['insertBefore'](_0x379a80['__resize_handle'],_0x379a80['domElement']['firstElementChild']);}function setWidth(_0x288dac,_0x2294ea){_0x288dac['domElement']['style']['width']=_0x2294ea+'px',_0x288dac['__save_row']&&_0x288dac['autoPlace']&&(_0x288dac['__save_row']['style']['width']=_0x2294ea+'px'),_0x288dac['__closeButton']&&(_0x288dac['__closeButton']['style']['width']=_0x2294ea+'px');}function getCurrentPreset(_0x2c1074,_0x1fc42c){var _0x25871c={};return Common['each'](_0x2c1074['__rememberedObjects'],function(_0x2e0cc4,_0x5f3d75){var _0x2ec252={},_0xf4d5c9=_0x2c1074['__rememberedObjectIndecesToControllers'][_0x5f3d75];Common['each'](_0xf4d5c9,function(_0x4c748b,_0x8d4bd4){_0x2ec252[_0x8d4bd4]=_0x1fc42c?_0x4c748b['initialValue']:_0x4c748b['getValue']();}),_0x25871c[_0x5f3d75]=_0x2ec252;}),_0x25871c;}function setPresetSelectIndex(_0x2bfde7){for(var _0x412bbd=0x0;_0x412bbd<_0x2bfde7['__preset_select']['length'];_0x412bbd++){_0x2bfde7['__preset_select'][_0x412bbd]['value']===_0x2bfde7['preset']&&(_0x2bfde7['__preset_select']['selectedIndex']=_0x412bbd);}}function updateDisplays(_0x139f76){_0x139f76['length']!==0x0&&requestAnimationFrame$1$1['call'](window,function(){updateDisplays(_0x139f76);}),Common['each'](_0x139f76,function(_0x119acd){_0x119acd['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 _0x5d2572=methodMap[0x0],_0x1e85de={};for(const _0x3117fe of methodMap){const _0x56f190=_0x3117fe?.[0x1];if(_0x56f190 in document){for(const [_0x5b44f0,_0x38cda9]of _0x3117fe['entries']()){_0x1e85de[_0x5d2572[_0x5b44f0]]=_0x38cda9;}return _0x1e85de;}}return ![];})()),eventNameMap={'change':nativeAPI['fullscreenchange'],'error':nativeAPI['fullscreenerror']};let screenfull={'request'(_0x4f7f52=document['documentElement'],_0x1f9b4b){return new Promise((_0x3fcae3,_0x493548)=>{const _0x35881b=()=>{screenfull['off']('change',_0x35881b),_0x3fcae3();};screenfull['on']('change',_0x35881b);const _0x29d2e5=_0x4f7f52[nativeAPI['requestFullscreen']](_0x1f9b4b);_0x29d2e5 instanceof Promise&&_0x29d2e5['then'](_0x35881b)['catch'](_0x493548);});},'exit'(){return new Promise((_0x2bb6ae,_0x4a5e1f)=>{if(!screenfull['isFullscreen']){_0x2bb6ae();return;}const _0x5e3173=()=>{screenfull['off']('change',_0x5e3173),_0x2bb6ae();};screenfull['on']('change',_0x5e3173);const _0x58d36b=document[nativeAPI['exitFullscreen']]();_0x58d36b instanceof Promise&&_0x58d36b['then'](_0x5e3173)['catch'](_0x4a5e1f);});},'toggle'(_0x1c9d2b,_0x268d03){return screenfull['isFullscreen']?screenfull['exit']():screenfull['request'](_0x1c9d2b,_0x268d03);},'onchange'(_0x29fba2){screenfull['on']('change',_0x29fba2);},'onerror'(_0x1c1f87){screenfull['on']('error',_0x1c1f87);},'on'(_0x3c6a03,_0x1fc18b){const _0x24df28=eventNameMap[_0x3c6a03];_0x24df28&&document['addEventListener'](_0x24df28,_0x1fc18b,![]);},'off'(_0x517653,_0x31168f){const _0x82e5db=eventNameMap[_0x517653];_0x82e5db&&document['removeEventListener'](_0x82e5db,_0x31168f,![]);},'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 _0x4f051a = screenfull;
|
|
66
|
+
|
|
67
|
+
const tempVec3$2=new THREE['Vector3']();class ObjectExploder{constructor(_0x551aac,_0x35108a,_0x2dab70=undefined){this['scale']=0x1,this['explodeUp']=![],this['scene']=_0x551aac,this['objectId']=_0x35108a;!_0x35108a&&log['debug']('[EXP]\x20Invalid\x20objectId:\x20'+_0x35108a);_0x2dab70?this['explodeCenter']=_0x2dab70:(this['explodeCenter']=new THREE['Vector3'](),this['getObjectCenter'](this['explodeCenter']));const _0x53cfc2=this['scene']['getObjectById'](this['objectId']);_0x53cfc2===null||_0x53cfc2===void 0x0?void 0x0:_0x53cfc2['updateWorldMatrix'](!![],!![]);}['explode'](_0x3cbe1e){this['scale']=_0x3cbe1e;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 _0x1f2a20=this['scene']['getObjectById'](this['objectId']);if(!_0x1f2a20||!_0x1f2a20['children']){log['debug']('[EXP]\x20No\x20children\x20to\x20explode!');return;}log['debug']('[EXP]\x20Exploding\x20object\x20\x27'+_0x1f2a20['name']+'\x27(id:\x20'+_0x1f2a20['id']+')\x20at:\x20'+CommonUtils['vectorToString'](this['explodeCenter'])),this['explodeObject'](_0x1f2a20);}['explodeObject'](_0x3c47b3){if(_0x3c47b3['geometry'])this['explodeLeafObject'](_0x3c47b3);else _0x3c47b3['children']['length']>0x0?_0x3c47b3['children']['forEach'](_0x34dc39=>this['explodeObject'](_0x34dc39)):this['explodeLeafObject'](_0x3c47b3);}['explodeLeafObject'](_0x142774){var _0x1e0bca;const _0x50656b=_0x142774;if(!_0x50656b['geometry'])return;!_0x50656b['userData']['originalMatrixWorld']&&(_0x50656b['userData']['originalMatrixWorld']=_0x50656b['matrixWorld']);const _0x191654=_0x50656b['userData']['originalMatrixWorld'];!_0x50656b['userData']['originalCenter']&&(!_0x50656b['geometry']['boundingBox']&&_0x50656b['geometry']['computeBoundingBox'](),tempVec3$2['set'](0x0,0x0,0x0),(_0x1e0bca=_0x50656b['geometry']['boundingBox'])===null||_0x1e0bca===void 0x0?void 0x0:_0x1e0bca['getCenter'](tempVec3$2),tempVec3$2['applyMatrix4'](_0x50656b['matrixWorld']),_0x50656b['userData']['originalCenter']=tempVec3$2['clone']());const _0x35789e=_0x50656b['userData']['originalCenter']['clone']();_0x35789e['sub'](this['explodeCenter']),_0x35789e['multiplyScalar'](this['scale']-0x1);this['explodeUp']&&(_0x35789e['setX'](0x0),_0x35789e['setZ'](0x0));const _0x1ccdc6=new THREE['Matrix4']();_0x1ccdc6['setPosition'](_0x35789e),_0x1ccdc6['multiply'](_0x191654),_0x50656b['matrixWorld']=_0x1ccdc6,_0x50656b['children']['length']>0x0&&_0x50656b['children']['forEach'](_0x225f35=>_0x225f35['updateMatrix']());}['unexplode'](){const _0x1ea33e=this['scene']['getObjectById'](this['objectId']);if(!_0x1ea33e||!_0x1ea33e['children']){log['debug']('[EXP]\x20No\x20children\x20to\x20explode!');return;}log['debug']('[EXP]\x20Unexploding\x20\x27'+_0x1ea33e['name']+'\x27(id:\x20'+_0x1ea33e['id']+')\x20at:\x20'+CommonUtils['vectorToString'](this['explodeCenter'])),this['unexplodeObject'](_0x1ea33e);}['unexplodeObject'](_0x401b88){if(_0x401b88['geometry'])this['unexplodeLeafObject'](_0x401b88);else _0x401b88['children']['length']>0x0?_0x401b88['children']['forEach'](_0x576316=>this['unexplodeObject'](_0x576316)):this['unexplodeLeafObject'](_0x401b88);}['unexplodeLeafObject'](_0xaeb80f){const _0x2128e1=_0xaeb80f['userData']['originalMatrixWorld'];if(!_0x2128e1)return;_0xaeb80f['matrixWorld']=_0x2128e1,_0xaeb80f['children']['length']>0x0&&_0xaeb80f['children']['forEach'](_0x260167=>_0x260167['updateMatrix']());}['setExplodeUp'](_0x2c343f){this['explodeUp']=_0x2c343f;}['getObjectCenter'](_0x2a70de){const _0x532dc4=new THREE['Box3']();if(!this['objectId']){log['debug']('[EXP]\x20Invalid\x20objectId:\x20'+this['objectId']);return;}const _0x3c7561=this['scene']['getObjectById'](this['objectId']);if(!_0x3c7561||!_0x3c7561['children']){log['debug']('[EXP]\x20No\x20children\x20to\x20explode!');return;}_0x3c7561['traverse'](_0x322e2c=>{_0x532dc4['expandByObject'](_0x322e2c);}),_0x532dc4['getCenter'](_0x2a70de);}}
|
|
68
|
+
|
|
69
|
+
class ExplodePlugin extends Plugin{constructor(_0x5db4a3,_0x20f263){const _0x413471=(_0x20f263===null||_0x20f263===void 0x0?void 0x0:_0x20f263['id'])||ExplodePlugin['DEFAULT_ID'];super(_0x5db4a3,{'id':_0x413471}),this['exploders']=[],this['onModelLoaded']=()=>{this['init']();},this['viewer']=_0x5db4a3,this['cfg']=_0x20f263||{'id':_0x413471},this['viewer']['addEventListener'](ViewerEvent['ModelLoad'],this['onModelLoaded']);}get['scene'](){return this['viewer']['scene'];}['init'](){this['viewer']['loadedModels']['forEach'](_0x5d537f=>{if(this['hasExploderForModel'](_0x5d537f['getModelObject']()['id']))return;const _0x30fc5c=new THREE['Vector3']();if(this['cfg']['explodeCenter']){const _0x45c617=this['cfg']['explodeCenter'];_0x30fc5c['set'](_0x45c617['x'],_0x45c617['y'],_0x45c617['z']);}else !this['cfg']['explodeCenter']&&!_0x5d537f['getBBox']()['isEmpty']()&&_0x5d537f['getBBox']()['getCenter'](_0x30fc5c);const _0x34458d=new ObjectExploder(this['scene'],_0x5d537f['getModelObject']()['id'],_0x30fc5c);_0x34458d['setExplodeUp'](!!this['cfg']['explodeUp']),this['exploders']['push'](_0x34458d);});}['explode'](_0x80bf04){this['exploders']['length']===0x0&&this['init']();for(const _0x3b9cbe of this['exploders']){_0x3b9cbe['explode'](_0x80bf04),this['viewer']['enableRender']();}}['unexplode'](){for(const _0x344755 of this['exploders']){_0x344755['unexplode'](),this['viewer']['enableRender']();}}['hasExploderForModel'](_0x1673fc){return !!this['exploders']['find'](_0x8629b8=>_0x8629b8['objectId']===_0x1673fc);}['destroy'](){super['destroy'](),this['viewer']['removeEventListener'](ViewerEvent['ModelLoad'],this['onModelLoaded']),this['unexplode']();}}ExplodePlugin['DEFAULT_ID']='ExplodePlugin';
|
|
70
|
+
|
|
71
|
+
class GroundGrassPlugin extends Plugin{constructor(_0x5f2fa8,_0x3676c5){const _0x3c21ff=(_0x3676c5===null||_0x3676c5===void 0x0?void 0x0:_0x3676c5['id'])||GroundGrassPlugin['DEFAULT_ID'];super(_0x5f2fa8,{'id':_0x3c21ff}),this['NAME']='GROUND_GRASS',this['DEFAULT_SIZE']=0x3e8,this['DEFAULT_REPEAT']=0x14,this['onModelLoaded']=()=>{this['cfg']['visible']!==![]&&(this['init'](),this['viewer']['enableRender']());},this['cfg']=_0x3676c5||{'id':_0x3c21ff},this['cfg']['visible']!==![]&&this['init'](),this['viewer']['addEventListener'](ViewerEvent['ModelLoad'],this['onModelLoaded']);}['init'](){var _0xc3cd23;this['groundGrass']&&((_0xc3cd23=this['viewer']['scene'])===null||_0xc3cd23===void 0x0?void 0x0:_0xc3cd23['remove'](this['groundGrass']),this['groundGrass']=undefined);const _0x57c1a3=this['cfg']['texture']||'images/terrain/grass.jpg',_0x4d716f=this['cfg']['width']||this['DEFAULT_SIZE'],_0x12beaa=this['cfg']['height']||this['DEFAULT_SIZE'],_0x543dbd=this['cfg']['repeatX']||this['DEFAULT_REPEAT'],_0x367fad=this['cfg']['repeatY']||this['DEFAULT_REPEAT'],_0x22e6e1=new THREE['Vector3'](),_0x39539d=this['viewer']['getBBox']();_0x39539d&&_0x39539d['getCenter'](_0x22e6e1),((async()=>{var _0x241150;this['groundGrass']=await this['createGrassGround'](_0x57c1a3,_0x4d716f,_0x12beaa,_0x543dbd,_0x367fad),(_0x241150=this['viewer']['scene'])===null||_0x241150===void 0x0?void 0x0:_0x241150['add'](this['groundGrass']),this['viewer']['enableRender']();})());}['setVisible'](_0x330b9d){_0x330b9d&&!this['groundGrass']&&this['init'](),this['groundGrass']&&(this['groundGrass']['visible']=_0x330b9d),this['viewer']['enableRender']();}async['createGrassGround'](_0x36117f,_0x5807f1,_0x2d9d2f,_0x2165de,_0x30bf5e){return new Promise(_0x27574e=>{const _0x454f91=new THREE['TextureLoader']();_0x454f91['load'](_0x36117f,_0x33b167=>{_0x33b167['wrapS']=_0x33b167['wrapT']=THREE['RepeatWrapping'],_0x33b167['repeat']['set'](_0x2165de,_0x30bf5e),_0x33b167['anisotropy']=0x10;const _0x3e7bec=new THREE['MeshLambertMaterial']({'map':_0x33b167});_0x3e7bec['side']=THREE['FrontSide'];const _0x2c1ec5=new THREE['Mesh'](new THREE['PlaneGeometry'](_0x5807f1,_0x2d9d2f),_0x3e7bec);return _0x2c1ec5['rotation']['x']=-Math['PI']/0x2,_0x2c1ec5['position']['y']=0x0,_0x2c1ec5['receiveShadow']=!![],_0x2c1ec5['name']=this['NAME'],_0x2c1ec5['layers']['enableAll'](),_0x2c1ec5['layers']['disable'](LayerForSelectableObjects),_0x2c1ec5['matrixAutoUpdate']=![],_0x2c1ec5['updateMatrix'](),_0x2c1ec5['updateMatrixWorld'](!![]),_0x27574e(_0x2c1ec5);});});}['destroy'](){super['destroy'](),this['groundGrass']&&(this['groundGrass']['removeFromParent'](),this['groundGrass']['geometry']['dispose'](),this['groundGrass']['clear'](),this['groundGrass']=undefined),this['viewer']['removeEventListener'](ViewerEvent['ModelLoad'],this['onModelLoaded']);}}GroundGrassPlugin['DEFAULT_ID']='GroundGrassPlugin';
|
|
72
|
+
|
|
73
|
+
class GroundGridPlugin extends Plugin{constructor(_0x2cfb8c,_0x5ab1af){const _0x4c482a=(_0x5ab1af===null||_0x5ab1af===void 0x0?void 0x0:_0x5ab1af['id'])||GroundGridPlugin['DEFAULT_ID'];super(_0x2cfb8c,{'id':_0x4c482a}),this['NAME']='GROUND_GRID',this['DEFAULT_SIZE']=0x3e8,this['DEFAULT_DIVISIONS']=0x64,this['DEFAULT_MAT_PARAMS']={'color':0xc3c3c3,'transparent':!![],'opacity':0.5,'wireframeLinewidth':0.5},this['onModelLoaded']=()=>{this['cfg']['visible']!==![]&&(this['init'](),this['viewer']['enableRender']());},this['cfg']=_0x5ab1af||{'id':_0x4c482a},this['cfg']['visible']!==![]&&this['init'](),this['viewer']['addEventListener'](ViewerEvent['ModelLoad'],this['onModelLoaded']);}['init'](){var _0x5ba1c7,_0xd6c66a;this['gridHelper']&&((_0x5ba1c7=this['viewer']['scene'])===null||_0x5ba1c7===void 0x0?void 0x0:_0x5ba1c7['remove'](this['gridHelper']),this['gridHelper']=undefined);const _0x499ecb=this['cfg']['size'],_0x429664=this['cfg']['divisions'],_0x3ec736=new THREE['Vector3'](),_0x13ed2c=this['viewer']['getBBox']();_0x13ed2c&&_0x13ed2c['getCenter'](_0x3ec736),this['gridHelper']=this['createGroundGrid'](_0x499ecb,_0x429664,_0x3ec736),(_0xd6c66a=this['viewer']['scene'])===null||_0xd6c66a===void 0x0?void 0x0:_0xd6c66a['add'](this['gridHelper']),this['viewer']['enableRender']();}['setVisible'](_0x25398d){_0x25398d&&!this['gridHelper']&&this['init'](),this['gridHelper']&&(this['gridHelper']['visible']=_0x25398d),this['viewer']['enableRender']();}['isVisible'](){var _0x5c3210;return !!((_0x5c3210=this['gridHelper'])===null||_0x5c3210===void 0x0?void 0x0:_0x5c3210['visible']);}['createGroundGrid'](_0x2469ca,_0x10d94d,_0x7194ec){_0x2469ca=_0x2469ca||this['DEFAULT_SIZE'],_0x10d94d=_0x10d94d||this['DEFAULT_DIVISIONS'];const _0x1c533a=new THREE['GridHelper'](_0x2469ca,_0x10d94d);_0x7194ec?_0x1c533a['position']['set'](_0x7194ec['x'],_0x7194ec['y'],_0x7194ec['z']):_0x1c533a['position']['y']=0x0;const _0x34d8d3=_0x1c533a['material'];return !Array['isArray'](_0x34d8d3)&&(_0x34d8d3['opacity']=this['DEFAULT_MAT_PARAMS']['opacity'],_0x34d8d3['transparent']=this['DEFAULT_MAT_PARAMS']['transparent']),_0x1c533a['name']=this['NAME'],_0x1c533a['layers']['enableAll'](),_0x1c533a['layers']['disable'](LayerForSelectableObjects),_0x1c533a['matrixAutoUpdate']=![],_0x1c533a['updateMatrix'](),_0x1c533a;}['destroy'](){super['destroy'](),this['gridHelper']&&(this['gridHelper']['removeFromParent'](),this['gridHelper']['geometry']['dispose'](),this['gridHelper']['clear'](),this['gridHelper']=undefined),this['viewer']['removeEventListener'](ViewerEvent['ModelLoad'],this['onModelLoaded']);}}GroundGridPlugin['DEFAULT_ID']='GroundGridPlugin';
|
|
74
|
+
|
|
75
|
+
class IUploader{constructor(_0x1ad441,_0x5bc19e='uploadModelFile',_0x1ce73b){this['_formats']=[],this['handleDragEnter']=_0x14d36c=>{_0x14d36c['preventDefault'](),_0x14d36c['stopPropagation'](),this['dropZone']['style']['display']='flex';},this['handleDragLeave']=_0x4c6ad7=>{_0x4c6ad7['preventDefault'](),_0x4c6ad7['stopPropagation'](),this['dropZone']['style']['display']='none';},this['handleDragOver']=_0x165686=>{_0x165686['preventDefault'](),_0x165686['stopPropagation']();if(!_0x165686['dataTransfer'])return;_0x165686['dataTransfer']['dropEffect']='move';},this['handleDrop']=_0x41ab95=>{_0x41ab95['preventDefault'](),_0x41ab95['stopPropagation'](),this['dropZone']['style']['display']='none';if(!_0x41ab95['dataTransfer']||_0x41ab95['dataTransfer']['files']['length']===0x0)return;const _0x389e19=_0x41ab95['dataTransfer']['files'];this['uploadFiles'](_0x389e19);},this['viewer']=_0x1ad441;_0x1ce73b&&Array['isArray'](_0x1ce73b)&&(this['_formats']=_0x1ce73b);this['input']=document['createElement']('input'),this['input']['id']=_0x5bc19e,this['input']['type']='file',this['input']['multiple']=!![],this['input']['accept']=this['formats']()['map'](_0xfbc820=>'.'+_0xfbc820)['join'](','),this['input']['style']['display']='none',this['input']['onchange']=_0x9cd0af=>{const _0x3b2e5a=_0x9cd0af['target']['files'];if(!_0x3b2e5a||_0x3b2e5a['length']<=0x0){log['error']('[Uploader]\x20No\x20files\x20to\x20be\x20uploaded!');return;}this['uploadFiles'](_0x3b2e5a);};const _0x49c20b=document['createElement']('div');_0x49c20b['classList']['add']('drag-drop-zone'),this['viewer']['widgetContainer']['appendChild'](_0x49c20b),this['dropZone']=_0x49c20b;const _0x2e574b=this['viewer']['viewerContainer'];_0x2e574b['addEventListener']('dragenter',this['handleDragEnter']),_0x2e574b['addEventListener']('dragleave',this['handleDragLeave']),_0x2e574b['addEventListener']('dragover',this['handleDragOver']),_0x2e574b['addEventListener']('drop',this['handleDrop']);}['formats'](){return log['warn']('[Uploader]:\x20Should\x20call\x20derived\x20class\x20instead!'),[];}['uploadFiles'](_0x5bf533){log['warn']('[Uploader]:\x20Should\x20call\x20derived\x20class\x20instead!\x20files:\x20'+_0x5bf533);}['openFileBrowserToUpload'](){this['input']['click']();}['destroy'](){const _0xf6470=this['viewer']['viewerContainer'];_0xf6470['addEventListener']('dragenter',this['handleDragEnter']),_0xf6470['addEventListener']('dragleave',this['handleDragLeave']),_0xf6470['addEventListener']('dragover',this['handleDragOver']),_0xf6470['addEventListener']('drop',this['handleDrop']);}}
|
|
76
|
+
|
|
77
|
+
class LocalModelUploader extends IUploader{constructor(_0x4b13a3,_0xf57b34){super(_0x4b13a3,_0xf57b34),this['defaultModelConfig']={'src':'','merge':!![]};}['formats'](){return ['gltf','glb','dxf','obj','stl','fbx','ifc','dae','*'];}['uploadFiles'](_0x13822d){const _0x38cde7=_0x13822d['length'];if(_0x38cde7===0x0)return;if(this['checkAllFilesWithTheSameFormat'](_0x13822d)){for(let _0x4a1dd2=0x0;_0x4a1dd2<_0x38cde7;_0x4a1dd2++){const _0xc9fde=_0x13822d[_0x4a1dd2];this['uploadSingleFile'](_0xc9fde);}return;}const _0x5eafac=Object['assign']({},this['defaultModelConfig']);let _0x537da5,_0xac86e7,_0x233205;const _0x15523f=new Map();for(let _0x50397a=0x0;_0x50397a<_0x38cde7;_0x50397a++){const _0x173a7a=_0x13822d[_0x50397a];_0x15523f['set'](_0x173a7a['name'],_0x173a7a);if(_0x173a7a['name']['match'](/\.(gltf|glb)$/))_0x233205=_0x173a7a;else {if(_0x173a7a['name']['match'](/\.(obj)$/))_0x233205=_0x173a7a;else _0x173a7a['name']['match'](/\.(mtl)$/)&&(!_0x5eafac['mtlUrls']&&(_0x5eafac['mtlUrls']=[]),_0x5eafac['mtlUrls']['push'](URL['createObjectURL'](_0x173a7a)));}}const _0x4f9adf=[],_0x319e5d=()=>{if(!_0x233205)return;_0x537da5=URL['createObjectURL'](_0x233205),_0x4f9adf['push'](_0x537da5),_0x5eafac['src']=_0x233205['name'];};if(!_0x233205)_0x233205=_0x13822d[0x0],_0x319e5d();else {_0x319e5d();const _0x3a48cf=THREE['LoaderUtils']['extractUrlBase'](_0x537da5);_0xac86e7=new THREE['LoadingManager'](),_0xac86e7['setURLModifier'](_0x50b2cd=>{const _0x292c74=decodeURI(_0x50b2cd)['replace'](_0x3a48cf,'')['replace'](/^(\.?\/)/,'');if(_0x15523f['has'](_0x292c74)){const _0xe0caa0=_0x15523f['get'](_0x292c74),_0x21e76a=URL['createObjectURL'](_0xe0caa0);return _0x4f9adf['push'](_0x21e76a),_0x21e76a;}return _0x50b2cd;});}this['viewer']['loadLocalModel'](_0x537da5,_0x5eafac,_0xac86e7,_0x117496=>{const _0x9f36cb=Math['floor'](_0x117496['loaded']*0x64/_0x117496['total']);log['info']('[Uploader]\x20Loading\x20'+(_0x233205===null||_0x233205===void 0x0?void 0x0:_0x233205['name'])+',\x20'+_0x9f36cb+'%');})['then'](()=>{log['info']('[Uploader]\x20Loaded\x20'+(_0x233205===null||_0x233205===void 0x0?void 0x0:_0x233205['name'])),_0x4f9adf['forEach'](URL['revokeObjectURL']);});}['checkAllFilesWithTheSameFormat'](_0xc72109){const _0x3f2eb8=_0x114856=>{const _0x4ce082=_0x114856['lastIndexOf']('.'),_0x58dd44=_0x114856['substring'](_0x4ce082+0x1);return _0x58dd44['toLowerCase']();},_0x5e8f7d=_0xc72109['length'],_0x44a9e0=_0x3f2eb8(_0xc72109[0x0]['name']);for(let _0x2f9a8f=0x0;_0x2f9a8f<_0x5e8f7d;_0x2f9a8f++){const _0x23d136=_0x3f2eb8(_0xc72109[_0x2f9a8f]['name']);if(_0x23d136!==_0x44a9e0)return ![];}return !![];}['uploadSingleFile'](_0x45e1db){const _0x3364e3=Object['assign']({},this['defaultModelConfig']),_0x26ee19=URL['createObjectURL'](_0x45e1db);_0x3364e3['src']=_0x45e1db['name'];const _0x16a4dd=_0x45e1db['name']['toLowerCase']();if(_0x16a4dd['endsWith']('.stl')){const _0x1569b1=new THREE['Matrix4'](),_0xdfc170=new THREE['Vector3'](0x0,0x0,0x0),_0x4acba1=new THREE['Quaternion']();_0x4acba1['setFromAxisAngle'](new THREE['Vector3'](0x1,0x0,0x0),-Math['PI']/0x2);const _0x2ba045=new THREE['Vector3'](0.001,0.001,0.001);_0x1569b1['compose'](_0xdfc170,_0x4acba1,_0x2ba045),_0x3364e3['matrix']=_0x1569b1['elements'];}else {if(_0x16a4dd['endsWith']('.3dm')){const _0x4dda07=new THREE['Matrix4'](),_0x52e2e3=new THREE['Vector3'](0x0,0x0,0x0),_0x3029ed=new THREE['Quaternion']();_0x3029ed['setFromAxisAngle'](new THREE['Vector3'](0x1,0x0,0x0),-Math['PI']/0x2);const _0x17afe1=new THREE['Vector3'](0x1,0x1,0x1);_0x4dda07['compose'](_0x52e2e3,_0x3029ed,_0x17afe1),_0x3364e3['matrix']=_0x4dda07['elements'];}}const _0x1d07f7=new THREE['LoadingManager']();this['viewer']['loadLocalModel'](_0x26ee19,_0x3364e3,_0x1d07f7,_0x5c968f=>{const _0x419c=Math['floor'](_0x5c968f['loaded']*0x64/_0x5c968f['total']);log['info']('[Uploader]\x20Loading\x20'+(_0x45e1db===null||_0x45e1db===void 0x0?void 0x0:_0x45e1db['name'])+',\x20'+_0x419c+'%');});}}
|
|
78
|
+
|
|
79
|
+
const tempBox$1=new THREE['Box3']();class BaseMarkup extends PathDrawable{constructor(_0x4fd58f){super(_0x4fd58f),this['editPointSize']=0x3,this['editPointFillColor']='#ffffff',this['editPointStrokeColor']='#939ea4',this['x']=0x0,this['y']=0x0,this['width']=0x0,this['height']=0x0,this['id']=_0x4fd58f||CommonUtils['guid']();}['isSelected'](){return this['selected'];}['drawSelect'](_0x557652,_0x490966){const _0x458b05=this['getVertexes']();this['drawPoints'](_0x557652,_0x490966,_0x458b05);}['drawPoints'](_0x5d0ac,_0x297c25,_0x288d14){_0x5d0ac['save'](),_0x5d0ac['fillStyle']=this['editPointFillColor'],_0x5d0ac['strokeStyle']=this['editPointStrokeColor'],_0x5d0ac['beginPath'](),_0x288d14['forEach'](_0x338853=>{const _0x348ffc=this['transToScreenCoord'](_0x338853,_0x297c25);_0x5d0ac['moveTo'](_0x348ffc['x'],_0x348ffc['y']),_0x5d0ac['arc'](_0x348ffc['x'],_0x348ffc['y'],this['editPointSize'],0x0,Math['PI']*0x2);}),_0x5d0ac['closePath'](),_0x5d0ac['stroke'](),_0x5d0ac['fill'](),_0x5d0ac['restore']();}['isPointInPath'](_0x29c0f9){return tempBox$1['setFromPoints'](this['getVertexes']())['containsPoint'](_0x29c0f9);}['setData'](_0x3f3091){super['setData'](_0x3f3091),this['update'](_0x3f3091['points']['map'](_0x32acd4=>new THREE['Vector3'](_0x32acd4[0x0],_0x32acd4[0x1],0x0)));}['getData'](){return Object['assign'](Object['assign']({},super['getData']()),{'points':this['points']['map'](_0x16dbfd=>[_0x16dbfd['x'],_0x16dbfd['y']]),'type':this['getClassType']()});}['setParent'](_0x36e704){this['parent']=_0x36e704;}['setLeaderText'](_0x178a0c){this['leaderText']=_0x178a0c,_0x178a0c['setParent'](this);}['getVertexes'](){const _0x35de45=tempBox$1['setFromPoints'](this['points']);return [new THREE['Vector3'](_0x35de45['min']['x'],_0x35de45['min']['y'],0x0),new THREE['Vector3'](_0x35de45['min']['x'],_0x35de45['max']['y'],0x0),new THREE['Vector3'](_0x35de45['max']['x'],_0x35de45['max']['y'],0x0),new THREE['Vector3'](_0x35de45['max']['x'],_0x35de45['min']['y'],0x0)];}['update'](_0x31260a){return this['points']=_0x31260a,this;}['translate'](_0x5781a8,_0x290a0f){const _0x8c2328=new THREE['Vector3'](_0x5781a8,_0x290a0f,0x0);return this['points']['forEach'](_0x452f7b=>_0x452f7b['add'](_0x8c2328)),this['update'](this['points']),this;}}
|
|
80
|
+
|
|
81
|
+
var ScreenshotMode;(function(_0x14db55){_0x14db55['Default']='Default',_0x14db55['BoxSelection']='BoxSelection',_0x14db55['PickMarkup']='PickMarkup';}(ScreenshotMode||(ScreenshotMode={})));class ScreenshotPlugin extends Plugin{constructor(_0x3944af,_0x2e4fb1){const _0x48453f=(_0x2e4fb1===null||_0x2e4fb1===void 0x0?void 0x0:_0x2e4fb1['id'])||ScreenshotPlugin['DEFAULT_ID'];super(_0x3944af,{'id':_0x48453f}),this['originalBackground']=undefined,this['originalClearAlpha']=0x1,this['cfg']=_0x2e4fb1||{'id':_0x48453f},this['cfg']['type']=this['cfg']['type']||'image/png',this['cfg']['quality']=this['cfg']['quality']||0.8,this['cfg']['setBackgroundTransparent']=this['cfg']['setBackgroundTransparent']||![];}['getScreenshot'](){var _0xeaa455;const _0x35719b=this['viewer'],_0x758829=(_0xeaa455=_0x35719b['renderer'])===null||_0xeaa455===void 0x0?void 0x0:_0xeaa455['domElement'];if(!_0x758829)return undefined;this['setBackgroundTransparent']();const _0x2ac251=_0x758829['toDataURL'](this['cfg']['type'],this['cfg']['quality']);return this['recoverBackgroundTransparency'](),_0x2ac251;}async['getScreenshotByScreenBBox'](_0x1d7bef){const _0xde7761=this['viewer']['renderer']['domElement'],_0x405bfe=_0xde7761['width'],_0x4a63cf=_0xde7761['height'];let _0x40a9c6=_0x1d7bef['min']['x'],_0x1c21d5=_0x1d7bef['min']['y'],_0x192151=_0x1d7bef['max']['x'],_0x308f66=_0x1d7bef['max']['y'];_0x40a9c6=Math['max'](_0x40a9c6,0x0),_0x40a9c6=Math['min'](_0x40a9c6,_0x405bfe),_0x1c21d5=Math['max'](_0x1c21d5,0x0),_0x1c21d5=Math['min'](_0x1c21d5,_0x4a63cf),_0x192151=Math['min'](_0x192151||_0x405bfe,_0x405bfe),_0x192151=Math['max'](_0x192151,0x0),_0x308f66=Math['min'](_0x308f66||_0x4a63cf,_0x4a63cf),_0x308f66=Math['max'](_0x308f66,0x0);if(Math['abs'](_0x192151-_0x40a9c6)===0x0||Math['abs'](_0x308f66-_0x1c21d5)===0x0)return log['error']('[Screenshot]\x20Invalid\x20input,\x20minX:\x20'+_0x40a9c6+',\x20minY:\x20'+_0x1c21d5+',\x20maxX:\x20'+_0x192151+',\x20maxY:\x20'+_0x308f66),undefined;const _0x5616a3=new THREE['Box2']();_0x5616a3['expandByPoint'](new THREE['Vector2'](_0x40a9c6,_0x1c21d5)),_0x5616a3['expandByPoint'](new THREE['Vector2'](_0x192151,_0x308f66)),this['setBackgroundTransparent']();const _0x41d476=await CommonUtils['canvasToImage'](_0xde7761);this['recoverBackgroundTransparency']();const _0x4e0449=document['createElement']('canvas');_0x4e0449['width']=_0xde7761['width'],_0x4e0449['height']=_0xde7761['height'];const _0x3c6db=window['devicePixelRatio'],_0x5328c4=_0x4e0449['getContext']('2d');_0x5328c4['drawImage'](_0x41d476,0x0,0x0,_0x41d476['width']/_0x3c6db,_0x41d476['height']/_0x3c6db);const _0x4a3f4d=CommonUtils['renderingContextToImage'](_0x5328c4,_0x5616a3,this['cfg']['type'],this['cfg']['quality']);return _0x4a3f4d;}async['getScreenshotByWorldBBox'](_0x7c41bf){const _0x3c7bf1=this['viewer']['camera'],_0x3b2d61=this['viewer']['container']['viewerContainer'];if(!_0x3b2d61)return;const _0x5f3d99=CoordinateUtils['worldBBox2Screen'](_0x7c41bf,_0x3c7bf1,_0x3b2d61);return this['getScreenshotByScreenBBox'](_0x5f3d99);}async['getScreenshotAsync'](_0x128798=ScreenshotMode['BoxSelection']){this['cancel']();const _0x4516ad=!![],_0x3961d6=this['viewer'],_0x2567fd=_0x3961d6['renderer']['domElement'];let _0x18a787=undefined;if(_0x128798===ScreenshotMode['PickMarkup'])!this['pickMarkupHelper']&&(this['pickMarkupHelper']=new PickMarkupHelper(_0x3961d6)),_0x18a787=await this['pickMarkupHelper']['pick']();else _0x128798===ScreenshotMode['BoxSelection']&&(!this['boxSelectHelper']&&(this['boxSelectHelper']=new BoxSelectHelper(_0x3961d6)),_0x18a787=await this['boxSelectHelper']['select']());if(_0x128798!==ScreenshotMode['Default']&&!_0x18a787)return;this['setBackgroundTransparent']();const _0x42c283=await CommonUtils['canvasToImage'](_0x2567fd);this['recoverBackgroundTransparency']();const _0x25b701=document['createElement']('canvas'),_0x2b59c0=window['devicePixelRatio'];_0x25b701['width']=_0x2567fd['width']/_0x2b59c0,_0x25b701['height']=_0x2567fd['height']/_0x2b59c0;const _0x324e8a=_0x25b701['getContext']('2d');_0x324e8a['drawImage'](_0x42c283,0x0,0x0,_0x42c283['width']/_0x2b59c0,_0x42c283['height']/_0x2b59c0);if(_0x4516ad&&_0x3961d6['getOverlayRender']()){const _0x55d8af=await _0x3961d6['getOverlayRender']()['getImage'](_0x3b9034=>_0x3b9034 instanceof BaseMeasureDrawable||_0x3b9034 instanceof BaseMarkup);_0x324e8a['drawImage'](_0x55d8af,0x0,0x0,_0x55d8af['width']/_0x2b59c0,_0x55d8af['height']/_0x2b59c0);}const _0x59fe90=this['cfg']['type'],_0x3567a4=this['cfg']['quality'],_0x1bdbf2=CommonUtils['renderingContextToImage'](_0x324e8a,_0x18a787,_0x59fe90,_0x3567a4);if(_0x3961d6 instanceof Viewer2d){const _0xf4e7b2=_0x3961d6['getCurrentViewExtent']();return {'base64Image':_0x1bdbf2,'viewExtent':_0xf4e7b2,'imageType':_0x59fe90};}return {'base64Image':_0x1bdbf2,'imageType':_0x59fe90};}['isActive'](){var _0x1c831e,_0xe0362f;return ((_0x1c831e=this['boxSelectHelper'])===null||_0x1c831e===void 0x0?void 0x0:_0x1c831e['isActive'])||((_0xe0362f=this['pickMarkupHelper'])===null||_0xe0362f===void 0x0?void 0x0:_0xe0362f['isActive']);}['cancel'](){var _0x579a06,_0x1bdcad;((_0x579a06=this['boxSelectHelper'])===null||_0x579a06===void 0x0?void 0x0:_0x579a06['isActive'])&&this['boxSelectHelper']['deactivate'](),((_0x1bdcad=this['pickMarkupHelper'])===null||_0x1bdcad===void 0x0?void 0x0:_0x1bdcad['isActive'])&&this['pickMarkupHelper']['deactivate']();}['setBackgroundTransparent'](){if(!this['cfg']['setBackgroundTransparent'])return;const _0xaede8a=this['viewer'],_0x51dc0a=_0xaede8a['scene'],_0x5c1322=_0xaede8a['renderer'],_0x3220e1=this['viewer']['camera'];this['originalBackground']=_0x51dc0a['background'],this['originalClearAlpha']=_0x5c1322['getClearAlpha'](),_0x51dc0a['background']=null,_0x5c1322['setClearAlpha'](0x0),_0x5c1322['render'](_0x51dc0a,_0x3220e1);}['recoverBackgroundTransparency'](){if(!this['cfg']['setBackgroundTransparent'])return;const _0x34e7ea=this['viewer'],_0x478133=_0x34e7ea['scene'],_0x3ebcb3=_0x34e7ea['renderer'],_0x1b3fa8=this['viewer']['camera'];_0x478133['background']=this['originalBackground'],_0x3ebcb3['setClearAlpha'](this['originalClearAlpha']),_0x3ebcb3['render'](_0x478133,_0x1b3fa8),this['originalBackground']=undefined,this['originalClearAlpha']=0x1;}}ScreenshotPlugin['DEFAULT_ID']='ScreenshotPlugin';
|
|
82
|
+
|
|
83
|
+
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(_0x104278){_0x104278['None']='',_0x104278['TranslateX']='TranslateX',_0x104278['TranslateY']='TranslateY',_0x104278['TranslateZ']='TranslateZ',_0x104278['RotateX']='RotateX',_0x104278['RotateY']='RotateY',_0x104278['RotateZ']='RotateZ';}(ActionType||(ActionType={})));
|
|
84
|
+
|
|
85
|
+
const up=new THREE['Vector3'](0x0,0x1,0x0),matrix=new THREE['Matrix4'](),defaultSize=0x2;class SectionGizmo extends THREE['Group']{constructor(_0x2a71b5=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'](_0x2a71b5);}['initIgnoreClipMaterial'](){[this['redMaterial'],this['greenMaterial'],this['blueMaterial'],this['highlightMaterial'],this['pickableMaterial']]['forEach'](_0x52fd1d=>{_0x52fd1d['onBeforeCompile']=function(_0x1bdad9,_0x26ff1a){_0x1bdad9['fragmentShader']=_0x1bdad9['fragmentShader']['replace']('#include\x20<clipping_planes_pars_fragment>','')['replace']('#include\x20<clipping_planes_fragment>',''),_0x1bdad9['vertexShader']=_0x1bdad9['vertexShader']['replace']('#include\x20<clipping_planes_pars_vertex>','')['replace']('#include\x20<clipping_planes_vertex>','');};});}['setDirection'](_0x233161){const _0x25abfb=new THREE['Quaternion']();_0x25abfb['setFromUnitVectors'](AxisX$1,_0x233161),this['applyQuaternion'](_0x25abfb);}['initOrUpdateByAxis'](_0x140e37){this['clear']();const _0x41917f=[{'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']}];_0x41917f['forEach'](_0x145e72=>{const {actionType:_0x84757b,direction:_0x459a99,material:_0x45372b}=_0x145e72,_0x4c8d97=_0x459a99['angleTo'](_0x140e37)===0x0?_0x45372b:this['pickableMaterial'],_0x19fa4b=this['createTranslateGizmo'](_0x84757b,_0x459a99,defaultSize,_0x4c8d97);this['add'](_0x19fa4b);});const _0x44a454=[{'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}];_0x44a454['forEach'](_0x1ecd86=>{const {actionType:_0x176be0,direction:_0x4c6f61,material:_0x449c5b,degree:_0x2d3a05}=_0x1ecd86;if(_0x4c6f61['angleTo'](_0x140e37)!==0x0){const _0x105aa6=this['createRotateGizmo'](_0x176be0,_0x4c6f61,defaultSize,_0x449c5b,_0x2d3a05);this['add'](_0x105aa6);}}),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'](_0x5195b3,_0x10e018,_0x58fd24,_0x4ac572){const _0x324416=_0x10e018['angleTo'](up),_0x4d7eec=up['clone']()['cross'](_0x10e018);matrix['makeRotationAxis'](_0x4d7eec,_0x324416);const _0x3f091c=new THREE['CylinderGeometry'](_0x58fd24/0x5,_0x58fd24/0x5,_0x58fd24*0x14),_0x1ae527=_0x58fd24*0xa;_0x3f091c['translate'](0x0,_0x1ae527,0x0),_0x3f091c['applyMatrix4'](matrix);const _0x3b4a7e=new THREE['CylinderGeometry'](0x0,_0x58fd24,_0x58fd24*0x3),_0x1e1725=_0x1ae527*0x2;_0x3b4a7e['translate'](0x0,_0x1e1725,0x0),_0x3b4a7e['applyMatrix4'](matrix);const _0x58fac2=THREEAddons['BufferGeometryUtils']['mergeGeometries']([_0x3b4a7e,_0x3f091c]),_0x49ca5b=new THREE['Mesh'](_0x58fac2,_0x4ac572);return _0x49ca5b['layers']['enable'](LayerForSelectableObjects),_0x49ca5b['userData']['actionType']=_0x5195b3,_0x4ac572===this['pickableMaterial']&&_0x49ca5b['layers']['disable'](LayerForSelectableObjects),_0x49ca5b;}['createRotateGizmo'](_0x363a4b,_0x376f07,_0x2a719d,_0x44868a,_0x3eca58){const _0x338b20=new THREE['Vector3'](0x0,0x0,0x1),_0x385bb3=_0x376f07['clone']()['cross'](_0x338b20),_0x270b66=_0x376f07['angleTo'](_0x338b20);matrix['makeRotationAxis'](_0x385bb3,_0x270b66);const _0x307fba=new THREE['TorusGeometry'](_0x2a719d*0xc,_0x2a719d/0x5,0x18,0x24,THREE['MathUtils']['degToRad'](_0x3eca58));_0x307fba['applyMatrix4'](matrix);const _0x2fa004=new THREE['Mesh'](_0x307fba,_0x44868a);return _0x2fa004['layers']['enable'](LayerForSelectableObjects),_0x2fa004['userData']['actionType']=_0x363a4b,_0x2fa004;}['createSphere'](_0x2b7a0e,_0x56706c,_0x32dafb=new THREE['Vector3']()){const _0x4c0028=new THREE['SphereGeometry'](_0x2b7a0e,0x20,0x10),_0x4dd383=new THREE['Mesh'](_0x4c0028,_0x56706c);_0x4dd383['position']['copy'](_0x32dafb),_0x4dd383['layers']['disable'](LayerForSelectableObjects),this['add'](_0x4dd383);}['setActiveAxis'](_0x39c66c){this['initOrUpdateByAxis'](_0x39c66c);}['createHoverRotateObjectByAxis'](_0x3eede1){let _0x22aee6=AxisX$1;switch(_0x3eede1){case ActionType['RotateX']:_0x22aee6=AxisX$1;break;case ActionType['RotateY']:_0x22aee6=AxisY$1;break;case ActionType['RotateZ']:_0x22aee6=AxisZ$1;break;}return this['createRotateGizmo'](ActionType['None'],_0x22aee6,defaultSize,this['highlightMaterial'],0x168);}['setActive'](_0x18f55e,_0x201507){var _0x138a1b;const _0x26e84a=_0x201507['userData']['actionType'];[ActionType['RotateX'],ActionType['RotateY'],ActionType['RotateZ']]['includes'](_0x26e84a)?_0x18f55e?(this['hoverObject']=this['createHoverRotateObjectByAxis'](_0x26e84a),this['add'](this['hoverObject']),_0x201507['visible']=![]):((_0x138a1b=this['hoverObject'])===null||_0x138a1b===void 0x0?void 0x0:_0x138a1b['removeFromParent'](),_0x201507['visible']=!![],this['hoverObject']=undefined):_0x18f55e?(this['originalMaterial']=_0x201507['material'],_0x201507['material']=this['highlightMaterial']):this['originalMaterial']&&(_0x201507['material']=this['originalMaterial']);}['adjustSize'](_0x2d1a3c){const _0x102829=new THREE['Vector3']();this['getWorldPosition'](_0x102829);const _0x5f3a9c=_0x2d1a3c['position'];let _0x5c1105=0x1;if(_0x2d1a3c instanceof THREE['OrthographicCamera'])_0x5c1105=(_0x2d1a3c['top']-_0x2d1a3c['bottom'])/_0x2d1a3c['zoom'];else _0x2d1a3c instanceof THREE['PerspectiveCamera']&&(_0x5c1105=_0x102829['distanceTo'](_0x5f3a9c)*Math['min'](1.9*Math['tan'](Math['PI']*_0x2d1a3c['fov']/0x168)/_0x2d1a3c['zoom'],0x7));this['scale']['set'](0x1,0x1,0x1)['multiplyScalar'](_0x5c1105/0xb4),this['updateWorldMatrix'](!![],!![]);}}
|
|
86
|
+
|
|
87
|
+
class BaseSection{constructor(_0x40e028,_0x1be166){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['capsWireframeMaterial']=new THREE['MeshBasicMaterial']({'color':0xffff54,'side':THREE['DoubleSide'],'transparent':![]}),this['showSectionPlane']=![],this['mousedown']=_0x2fc111=>{const _0x300cce=_0x2fc111['button']===0x0;if(!_0x300cce)return;if(!this['selectedObject']){const _0x185521=this['getIntersection'](_0x2fc111);if(!_0x185521)return;this['activateSelectedObject'](![]),this['selectedObject']=_0x185521['object'];}this['inputManager']['setCursor']('grabbing'),this['dragStarted']=!![],this['setControlsEnabled'](![]),this['onDragStart'](_0x2fc111),this['viewer']['enableRender']();},this['mousemove']=_0x4d1aca=>{var _0x4b4085;if(this['dragStarted'])this['updateRaycasterByMouse'](_0x4d1aca),this['onDragMove'](_0x4d1aca);else {this['activateSelectedObject'](![]),this['selectedObject']=undefined;const _0x1f721f=this['getIntersection'](_0x4d1aca);let _0x16d9e9='default';_0x1f721f&&_0x1f721f['object']['visible']&&((_0x4b4085=_0x1f721f['object']['parent'])===null||_0x4b4085===void 0x0?void 0x0:_0x4b4085['visible'])&&(this['selectedObject']=_0x1f721f['object'],this['activateSelectedObject'](!![]),_0x16d9e9='grab'),this['inputManager']['setCursor'](_0x16d9e9);}this['viewer']['enableRender']();},this['mouseup']=_0x176078=>{const _0x18a7da=_0x176078['button']===0x0;if(!_0x18a7da)return;this['dragStarted']&&(this['onDragEnd'](_0x176078),this['setControlsEnabled'](!![])),this['dragStarted']=![],this['activateSelectedObject'](![]),this['selectedObject']=undefined,this['inputManager']['setCursor']('default');},this['keydown']=_0x4f0eee=>{_0x4f0eee['code']==='Escape'&&this['deactivate']();},this['viewer']=_0x40e028,this['inputManager']=_0x1be166,this['scene']=_0x40e028['scene'],this['renderer']=_0x40e028['renderer'],this['raycaster']['layers']['set'](LayerForSelectableObjects),this['capsScene']=new THREE['Scene'](),this['capsScene']['matrixAutoUpdate']=!![],this['capsScene']['matrixWorldAutoUpdate']=!![];}get['canvas'](){var _0x5a9be1;return (_0x5a9be1=this['viewer']['renderer'])===null||_0x5a9be1===void 0x0?void 0x0:_0x5a9be1['domElement'];}get['isActive'](){return !!this['active'];}get['camera'](){return this['viewer']['camera'];}['setGlobalClippingEnabled'](_0x2f48f5){if(!this['clipPlanes'])return;const _0x5207c7=_0x2f48f5?this['clipPlanes']:[];this['viewer']['setGlobalClipPlanes'](_0x5207c7);}['setObjectClippingEnabled'](_0x1fc1bc){var _0x22d3a6,_0x1895be;if(!this['clipPlanes']||!((_0x22d3a6=this['clippingObjetIds'])===null||_0x22d3a6===void 0x0?void 0x0:_0x22d3a6['length']))return;this['renderer']['localClippingEnabled']=_0x1fc1bc;const _0x4a3555=_0x1fc1bc?this['clipPlanes']:[];(_0x1895be=this['clippingObjetIds'])===null||_0x1895be===void 0x0?void 0x0:_0x1895be['forEach'](_0x15684a=>{const _0x2092d5=this['scene']['getObjectById'](_0x15684a);_0x2092d5&&_0x2092d5['traverse'](_0x335e1d=>{if(_0x335e1d['material']){if(Array['isArray'](_0x335e1d['material']))_0x335e1d['material']['forEach'](_0x13aad9=>{_0x13aad9['clippingPlanes']=_0x4a3555,_0x13aad9['clipIntersection']=![];});else _0x335e1d['material']&&(_0x335e1d['material']['clippingPlanes']=_0x4a3555,_0x335e1d['material']['clipIntersection']=![]);}});});}['clearClippingObjectIds'](){this['setObjectClippingEnabled'](![]),this['clippingObjetIds']=[];}['setClippingEnabled'](_0x6fe778){var _0x3b07f1;((_0x3b07f1=this['clippingObjetIds'])===null||_0x3b07f1===void 0x0?void 0x0:_0x3b07f1['length'])?(this['setGlobalClippingEnabled'](![]),this['setObjectClippingEnabled'](_0x6fe778)):this['setGlobalClippingEnabled'](_0x6fe778);}['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 _0x294a96=this['viewer']['getBBox']();_0x294a96&&this['sectionBox']['copy'](_0x294a96);}this['active']=!![];}['deactivate'](_0x3dfa3a=![]){var _0x4c096b;this['inputManager']['removeEventListener']('pointerdown',this['mousedown']),this['inputManager']['removeEventListener']('pointermove',this['mousemove']),this['inputManager']['removeEventListener']('pointerup',this['mouseup']),this['inputManager']['removeEventListener']('keydown',this['keydown']),!_0x3dfa3a&&this['setClippingEnabled'](![]),(_0x4c096b=this['selectedObject'])===null||_0x4c096b===void 0x0?void 0x0:_0x4c096b['removeFromParent'](),this['selectedObject']=undefined,this['dragStarted']=![],this['active']=![],this['inputManager']['setCursor']('default'),this['setControlsEnabled'](!![]);}['setCapsVisible'](_0x49ca77){this['capsVisibility']=_0x49ca77;}['getCapsVisible'](){return this['capsVisibility'];}['setControlsEnabled'](_0x22a27a){this['viewer']['enableRotate'](_0x22a27a);}['getIntersection'](_0x355c8f){if(!this['raycaster'])return;this['updateRaycasterByMouse'](_0x355c8f);const _0x38674e=this['raycaster']['intersectObjects'](this['getIntersectObjects']())||[],_0xd80de9=_0x38674e['find'](_0x477c04=>{return _0x477c04['object']&&_0x477c04['object']['parent']instanceof SectionGizmo;});if(_0xd80de9)return _0xd80de9;return _0x38674e[0x0];}['updateRaycasterByMouse'](_0x3bcd4b){if(!this['raycaster'])return;const _0x2b8842=new THREE['Vector2'](_0x3bcd4b['x'],_0x3bcd4b['y']),_0x34b2a9=CoordinateUtils['screen2Ndc'](_0x2b8842,this['camera'],this['canvas']);this['raycaster']['setFromCamera'](_0x34b2a9,this['camera']);}['destroy'](){this['deactivate']();}}
|
|
88
|
+
|
|
89
|
+
const box=new THREE['Box3'](),q=new THREE['Quaternion']();class SectionPlaneMesh extends THREE['Mesh']{constructor(_0x2f30b7,_0x55eabf){super(),this['vertices']=[],this['layers']['enable'](LayerForSelectableObjects),this['actionType']=_0x2f30b7,this['geometry']=new THREE['BufferGeometry'](),this['vertices']=_0x55eabf,this['geometry']['setFromPoints'](_0x55eabf),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'](_0x55eabf),this['add'](this['edge']);}['createIgnoreClipMaterials'](_0x488fc1){_0x488fc1['onBeforeCompile']=function(_0x5acada,_0x5b2ef5){_0x5acada['fragmentShader']=_0x5acada['fragmentShader']['replace']('#include\x20<clipping_planes_pars_fragment>','')['replace']('#include\x20<clipping_planes_fragment>',''),_0x5acada['vertexShader']=_0x5acada['vertexShader']['replace']('#include\x20<clipping_planes_pars_vertex>','')['replace']('#include\x20<clipping_planes_vertex>','');};}['createEdge'](_0x2def1d){const _0x180144=new THREE['BufferGeometry']();_0x180144['setFromPoints'](_0x2def1d),_0x180144['setIndex']([0x0,0x1,0x1,0x2,0x2,0x3,0x3,0x0]);const _0xb1d6b4=new THREE['LineBasicMaterial']({'color':SectionPlaneMesh['normalLineColor']});this['createIgnoreClipMaterials'](_0xb1d6b4);const _0x300521=new THREE['Line'](_0x180144,_0xb1d6b4);return _0x300521;}['createLine'](){var _0xfc3f86;(_0xfc3f86=this['wireframe'])===null||_0xfc3f86===void 0x0?void 0x0:_0xfc3f86['removeFromParent']();const _0x1159de=this['vertices'][0x0]['distanceTo'](this['vertices'][0x1]),_0x5d7c12=this['vertices'][0x1]['distanceTo'](this['vertices'][0x2]),_0x31f89a=[];for(let _0x6a44c3=0.5*_0x1159de,_0xfde1e=0.5*_0x5d7c12,_0x505809=0x1;_0x505809<_0x1159de+_0x5d7c12;_0x505809+=0x1){let _0x3a2d74,_0x1f150e;_0x505809<_0x5d7c12?(_0x3a2d74=this['vertices'][0x1]['clone']()['sub'](this['vertices'][0x2])['normalize']()['multiplyScalar'](-_0xfde1e+_0x505809),_0x3a2d74['add'](this['vertices'][0x1]['clone']()['sub'](this['vertices'][0x0])['normalize']()['multiplyScalar'](-_0x6a44c3))):(_0x3a2d74=this['vertices'][0x1]['clone']()['sub'](this['vertices'][0x2])['normalize']()['multiplyScalar'](_0xfde1e),_0x3a2d74['add'](this['vertices'][0x2]['clone']()['sub'](this['vertices'][0x3])['normalize']()['multiplyScalar'](-_0x6a44c3+(_0x505809-_0x5d7c12)))),_0x505809<_0x1159de?(_0x1f150e=this['vertices'][0x1]['clone']()['sub'](this['vertices'][0x2])['normalize']()['multiplyScalar'](-_0xfde1e),_0x1f150e['add'](this['vertices'][0x1]['clone']()['sub'](this['vertices'][0x0])['normalize']()['multiplyScalar'](-_0x6a44c3+_0x505809))):(_0x1f150e=this['vertices'][0x0]['clone']()['sub'](this['vertices'][0x3])['normalize']()['multiplyScalar'](-_0xfde1e+(_0x505809-_0x1159de)),_0x1f150e['add'](this['vertices'][0x2]['clone']()['sub'](this['vertices'][0x3])['normalize']()['multiplyScalar'](_0x6a44c3))),_0x31f89a['push'](_0x3a2d74),_0x31f89a['push'](_0x1f150e);}const _0x5051d4=new THREE['BufferGeometry']()['setFromPoints'](_0x31f89a),_0x4d49a4=new THREE['LineBasicMaterial']({'color':0x0,'transparent':![]});this['createIgnoreClipMaterials'](_0x4d49a4);const _0xd29b0f=new THREE['LineSegments'](_0x5051d4,_0x4d49a4);_0xd29b0f['position']['copy'](this['vertices'][0x0]['clone']()['add'](this['vertices'][0x2])['multiplyScalar'](0.5)),_0xd29b0f['position']['add'](this['getPlaneNormal']()['multiplyScalar'](0.1)),_0xd29b0f['updateMatrix'](),_0xd29b0f['updateMatrixWorld'](),this['add'](_0xd29b0f),this['wireframe']=_0xd29b0f;}['update'](_0x4413cf){this['geometry']['setFromPoints'](_0x4413cf),this['geometry']['computeBoundingSphere'](),this['geometry']['computeVertexNormals'](),this['edge']['geometry']['setFromPoints'](_0x4413cf),this['vertices']=_0x4413cf,this['wireframe']&&this['createLine']();}['rotatePlane'](_0x4a8d70,_0x29914d){const _0x54a404=this['getPlaneCenter']();q['setFromAxisAngle'](_0x4a8d70,_0x29914d),this['vertices']=this['vertices']['map'](_0x4a1508=>_0x4a1508['sub'](_0x54a404)['applyQuaternion'](q)['add'](_0x54a404)),this['update'](this['vertices']);}['setDirection'](_0x29abe8){const _0x217d54=new THREE['Quaternion']();_0x217d54['setFromUnitVectors'](AxisX$1,_0x29abe8);const _0x4b71ce=this['getPlaneCenter']();this['vertices']=this['vertices']['map'](_0x1b5b15=>_0x1b5b15['sub'](_0x4b71ce)['applyQuaternion'](_0x217d54)['add'](_0x4b71ce)),this['update'](this['vertices']);}['getPlaneNormal'](){const [_0x25041f,_0x26dedc,_0x3f097d]=this['vertices'],_0x156047=new THREE['Vector3']();return THREE['Triangle']['getNormal'](_0x25041f,_0x26dedc,_0x3f097d,_0x156047),_0x156047;}['setActive'](_0x53bd99){this['material']['opacity']=_0x53bd99?0.1:0.01;}['getPlaneCenter'](){box['setFromPoints'](this['vertices']);const _0x24c868=new THREE['Vector3']();return box['getCenter'](_0x24c868),_0x24c868;}}SectionPlaneMesh['normalPlaneColor']=new THREE['Color'](0x0,0.855,0.718),SectionPlaneMesh['activePlaneColor']=new THREE['Color'](0x1,0x1,0x0),SectionPlaneMesh['normalLineColor']=0xffffff;
|
|
90
|
+
|
|
91
|
+
var AxisType;(function(_0x4cf5e0){_0x4cf5e0['X']='X',_0x4cf5e0['Y']='Y',_0x4cf5e0['Z']='Z';}(AxisType||(AxisType={})));class AxisPlaneSection extends BaseSection{constructor(_0x958e67,_0x3162d1){super(_0x958e67,_0x3162d1),this['activeAxis']=AxisType['X'],this['mousedown']=_0x2382bd=>{const _0x2f4de4=_0x2382bd['button']===0x0;if(!_0x2f4de4)return;if(!this['selectedObject']){const _0x52d0f3=this['getIntersection'](_0x2382bd);if(!_0x52d0f3)return;this['activateSelectedObject'](![]),this['selectedObject']=_0x52d0f3['object'];}if(!(this['selectedObject']['parent']instanceof SectionGizmo))return;this['inputManager']['setCursor']('grabbing'),this['dragStarted']=!![],this['setControlsEnabled'](![]),this['onDragStart'](_0x2382bd),this['viewer']['enableRender']();},this['mousemove']=_0x87e0ed=>{var _0x14d54b;if(this['dragStarted'])this['updateRaycasterByMouse'](_0x87e0ed),this['onDragMove'](_0x87e0ed);else {this['activateSelectedObject'](![]),this['selectedObject']=undefined;const _0x329a5e=this['getIntersection'](_0x87e0ed);let _0x1a7df5='default';_0x329a5e&&_0x329a5e['object']['visible']&&((_0x14d54b=_0x329a5e['object']['parent'])===null||_0x14d54b===void 0x0?void 0x0:_0x14d54b['visible'])&&(this['selectedObject']=_0x329a5e['object'],this['activateSelectedObject'](!![]),this['selectedObject']['parent']instanceof SectionGizmo&&(_0x1a7df5='grab')),this['inputManager']['setCursor'](_0x1a7df5);}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 _0x531139,_0x63cda1;this['isActive']&&((_0x531139=this['gizmo'])===null||_0x531139===void 0x0?void 0x0:_0x531139['adjustSize'](this['camera']),(_0x63cda1=this['planeMesh'])===null||_0x63cda1===void 0x0?void 0x0:_0x63cda1['updateWorldMatrix'](!![],!![]));});}['activate'](_0x399c25=AxisType['X'],_0x3c4a62){super['activate'](),this['setActiveAxis'](_0x399c25,_0x3c4a62);}['deactivate'](_0x4b94dd=![]){var _0x47b29c,_0x3dddad;super['deactivate'](_0x4b94dd),(_0x47b29c=this['planeMesh'])===null||_0x47b29c===void 0x0?void 0x0:_0x47b29c['removeFromParent'](),(_0x3dddad=this['gizmo'])===null||_0x3dddad===void 0x0?void 0x0:_0x3dddad['removeFromParent'](),this['planeMesh']=undefined,this['gizmo']=undefined;}['reset'](){var _0x25566b,_0x7459c5;(_0x25566b=this['planeMesh'])===null||_0x25566b===void 0x0?void 0x0:_0x25566b['removeFromParent'](),(_0x7459c5=this['gizmo'])===null||_0x7459c5===void 0x0?void 0x0:_0x7459c5['removeFromParent'](),this['setClippingEnabled'](![]),this['planeMesh']=undefined,this['gizmo']=undefined,this['setActiveAxis'](this['activeAxis']);}['setActiveAxis'](_0xf41cd5,_0x260b35){this['activeAxis']=_0xf41cd5,this['sectionBox']&&this['sectionBox']['getCenter'](this['center']),this['clipPlaneConstant']=_0x260b35,this['initOrUpdateGizmo'](),this['initOrUpdateSectionPlaneMeshes'](),this['initOrUpdateClipPlanes'](),this['setClippingEnabled'](!![]),this['clipPlaneConstant']=undefined,this['viewer']['enableRender']();}['setSectionPlaneVisible'](_0x4a8acf){this['gizmo']&&this['planeMesh']&&(this['gizmo']['visible']=_0x4a8acf,this['planeMesh']['visible']=_0x4a8acf),this['showSectionPlane']=_0x4a8acf,this['viewer']['enableRender']();}['initOrUpdateClipPlanes'](){switch(this['activeAxis']){case AxisType['X']:{const _0x3da227=this['clipPlaneConstant']||this['center']['x'];this['clipPlane']=new THREE['Plane'](new THREE['Vector3'](-0x1,0x0,0x0),_0x3da227);break;}case AxisType['Y']:{const _0x20e2ee=this['clipPlaneConstant']||this['center']['y'];this['clipPlane']=new THREE['Plane'](new THREE['Vector3'](0x0,-0x1,0x0),_0x20e2ee);break;}case AxisType['Z']:{const _0x3edb1f=this['clipPlaneConstant']||this['center']['z'];this['clipPlane']=new THREE['Plane'](new THREE['Vector3'](0x0,0x0,-0x1),_0x3edb1f);break;}}this['clipPlane']&&(this['clipPlanes']=[this['clipPlane']]);}['initOrUpdateSectionPlaneMeshes'](){var _0x5d4f91;const _0x406d9b=new THREE['Vector3']();this['sectionBox']['getSize'](_0x406d9b);const _0x473e6d=_0x406d9b['length'](),_0x4cc60d=this['center']['clone']();this['adjustPositionByClipPlaneConstant'](_0x4cc60d);const _0x3fcca3=new THREE['Box3']()['setFromCenterAndSize'](_0x4cc60d,new THREE['Vector3'](_0x473e6d,_0x473e6d,_0x473e6d)),{min:_0x1be5b1,max:_0x797c61}=_0x3fcca3;(_0x5d4f91=this['planeMesh'])===null||_0x5d4f91===void 0x0?void 0x0:_0x5d4f91['removeFromParent']();switch(this['activeAxis']){case AxisType['X']:this['planeMesh']=new SectionPlaneMesh(AxisType['X'],[new THREE['Vector3'](_0x4cc60d['x'],_0x797c61['y'],_0x1be5b1['z']),new THREE['Vector3'](_0x4cc60d['x'],_0x797c61['y'],_0x797c61['z']),new THREE['Vector3'](_0x4cc60d['x'],_0x1be5b1['y'],_0x797c61['z']),new THREE['Vector3'](_0x4cc60d['x'],_0x1be5b1['y'],_0x1be5b1['z'])]);break;case AxisType['Y']:this['planeMesh']=new SectionPlaneMesh(AxisType['Y'],[new THREE['Vector3'](_0x797c61['x'],_0x4cc60d['y'],_0x1be5b1['z']),new THREE['Vector3'](_0x1be5b1['x'],_0x4cc60d['y'],_0x1be5b1['z']),new THREE['Vector3'](_0x1be5b1['x'],_0x4cc60d['y'],_0x797c61['z']),new THREE['Vector3'](_0x797c61['x'],_0x4cc60d['y'],_0x797c61['z'])]);break;case AxisType['Z']:this['planeMesh']=new SectionPlaneMesh(AxisType['Z'],[new THREE['Vector3'](_0x797c61['x'],_0x797c61['y'],_0x4cc60d['z']),new THREE['Vector3'](_0x1be5b1['x'],_0x797c61['y'],_0x4cc60d['z']),new THREE['Vector3'](_0x1be5b1['x'],_0x1be5b1['y'],_0x4cc60d['z']),new THREE['Vector3'](_0x797c61['x'],_0x1be5b1['y'],_0x4cc60d['z'])]);break;}this['planeMesh']&&(this['planeMesh']['visible']=this['showSectionPlane'],this['scene']['add'](this['planeMesh'])),this['createCapsWireframe'](),this['viewer']['enableRender']();}['createCapsWireframe'](){var _0x385d89;if(!this['planeMesh'])return;const {actionType:_0x490764,vertices:_0x194147}=this['planeMesh'];(_0x385d89=this['capsWireframe'])===null||_0x385d89===void 0x0?void 0x0:_0x385d89['removeFromParent'](),this['capsWireframe']=new SectionPlaneMesh(_0x490764,_0x194147);const _0x3132f5=this['capsWireframeMaterial'];this['capsWireframe']['createIgnoreClipMaterials'](_0x3132f5),this['capsWireframe']['material']=_0x3132f5,this['capsWireframe']['createLine'](),this['setCapsVisible'](![]),this['capsScene']['add'](this['capsWireframe']);}['initOrUpdateGizmo'](){var _0x2b3f1a,_0xc4f800;(_0x2b3f1a=this['gizmo'])===null||_0x2b3f1a===void 0x0?void 0x0:_0x2b3f1a['removeFromParent']();const _0x2cfca7=this['axisInfoMap'][this['activeAxis']]['normal'],_0x5888eb=new SectionGizmo();_0x5888eb['setDirection'](_0x2cfca7),this['sectionBox']['getCenter'](_0x5888eb['position']),this['adjustPositionByClipPlaneConstant'](_0x5888eb['position']),_0x5888eb['adjustSize'](this['camera']),_0x5888eb['visible']=this['showSectionPlane'],(_0xc4f800=this['scene'])===null||_0xc4f800===void 0x0?void 0x0:_0xc4f800['add'](_0x5888eb),this['gizmo']=_0x5888eb;}['onDragStart'](_0x280ab7){var _0x46c085;if(this['selectedObject']instanceof SectionPlaneMesh)return;log['info']('[Section]\x20onDragStart:',_0x280ab7);const _0x380942=new THREE['Vector3']();this['sectionBox']['getCenter'](_0x380942),this['refrencePlane']['setFromNormalAndCoplanarPoint'](this['camera']['getWorldDirection'](this['refrencePlane']['normal']),_0x380942),(_0x46c085=this['raycaster'])===null||_0x46c085===void 0x0?void 0x0:_0x46c085['ray']['intersectPlane'](this['refrencePlane'],this['lastWorldPos']);}['onDragMove'](_0x34462f){var _0x3d7080,_0x39b714,_0x2fb10e,_0x55c7da,_0x195337,_0x872e80,_0xb218d0;if(!this['lastWorldPos']||!this['selectedObject']||!this['clipPlane']||!this['planeMesh']||!this['gizmo']||this['selectedObject']&&this['selectedObject']instanceof SectionPlaneMesh)return;const _0x158076=new THREE['Vector3']();(_0x3d7080=this['raycaster'])===null||_0x3d7080===void 0x0?void 0x0:_0x3d7080['ray']['intersectPlane'](this['refrencePlane'],_0x158076);const _0x5114b9=this['selectedObject']['userData']['actionType'],_0x4533cd=new THREE['Vector3']()['subVectors'](this['lastWorldPos'],this['center'])['normalize'](),_0x89de5a=new THREE['Vector3']()['subVectors'](_0x158076,this['center'])['normalize'](),_0x52ff94=new THREE['Vector3']()['subVectors'](_0x158076,this['lastWorldPos'])['projectOnVector'](AxisX$1['clone']()['applyQuaternion'](this['gizmo']['quaternion']));let _0x8b261c=_0x4533cd['angleTo'](_0x89de5a);const _0x44960a=new THREE['Vector3']()['crossVectors'](_0x4533cd,_0x89de5a),_0x337367=new THREE['Vector3']();this['sectionBox']['getSize'](_0x337367);const _0x505fe8=Math['max'](_0x337367['x'],_0x337367['y'],_0x337367['z']);let _0x3e5e25;switch(_0x5114b9){case ActionType['TranslateX']:case ActionType['TranslateY']:case ActionType['TranslateZ']:_0x3e5e25=new THREE['Vector3']()['addVectors'](this['gizmo']['position'],_0x52ff94);this['sectionBox']['clone']()['setFromCenterAndSize'](this['center'],new THREE['Vector3'](_0x505fe8,_0x505fe8,_0x505fe8))['containsPoint'](_0x3e5e25)&&((_0x39b714=this['gizmo'])===null||_0x39b714===void 0x0?void 0x0:_0x39b714['position']['add'](_0x52ff94),(_0x2fb10e=this['planeMesh'])===null||_0x2fb10e===void 0x0?void 0x0:_0x2fb10e['position']['add'](_0x52ff94),(_0x55c7da=this['capsWireframe'])===null||_0x55c7da===void 0x0?void 0x0:_0x55c7da['position']['add'](_0x52ff94));break;case ActionType['RotateX']:{const _0x18f75e=AxisX$1['clone']()['applyQuaternion'](this['gizmo']['quaternion']),_0x23b9fe=_0x44960a['dot'](_0x18f75e);_0x23b9fe<0x0&&(_0x8b261c=-_0x8b261c),this['gizmo']['rotateX'](_0x8b261c),this['planeMesh']['rotatePlane'](_0x18f75e,_0x8b261c),(_0x195337=this['capsWireframe'])===null||_0x195337===void 0x0?void 0x0:_0x195337['rotatePlane'](_0x18f75e,_0x8b261c);}break;case ActionType['RotateY']:{const _0x3108c3=AxisY$1['clone']()['applyQuaternion'](this['gizmo']['quaternion']),_0x50cae1=_0x44960a['dot'](_0x3108c3);_0x50cae1<0x0&&(_0x8b261c=-_0x8b261c),this['gizmo']['rotateY'](_0x8b261c),this['planeMesh']['rotatePlane'](_0x3108c3,_0x8b261c),(_0x872e80=this['capsWireframe'])===null||_0x872e80===void 0x0?void 0x0:_0x872e80['rotatePlane'](_0x3108c3,_0x8b261c);}break;case ActionType['RotateZ']:{const _0x230e29=AxisZ$1['clone']()['applyQuaternion'](this['gizmo']['quaternion']),_0x589c5e=_0x44960a['dot'](_0x230e29);_0x589c5e<0x0&&(_0x8b261c=-_0x8b261c),this['gizmo']['rotateZ'](_0x8b261c),this['planeMesh']['rotatePlane'](_0x230e29,_0x8b261c),(_0xb218d0=this['capsWireframe'])===null||_0xb218d0===void 0x0?void 0x0:_0xb218d0['rotatePlane'](_0x230e29,_0x8b261c);}break;}this['clipPlane']['setFromNormalAndCoplanarPoint'](this['planeMesh']['getPlaneNormal']()['negate'](),this['gizmo']['position']),this['lastWorldPos']=_0x158076;}['onDragEnd'](_0x52603f){if(this['selectedObject']instanceof SectionPlaneMesh)return;log['info']('[Section]\x20onDragEnd:',_0x52603f);}['getIntersectObjects'](){if(!this['planeMesh']||!this['gizmo'])return [];return [this['planeMesh'],this['gizmo']];}['activateSelectedObject'](_0x588dc3){if(!this['selectedObject'])return;if(this['selectedObject']instanceof SectionPlaneMesh)this['selectedObject']['setActive'](_0x588dc3);else this['selectedObject']['parent']instanceof SectionGizmo&&this['selectedObject']['parent']['setActive'](_0x588dc3,this['selectedObject']);}['adjustPositionByClipPlaneConstant'](_0x2712b9){if(this['clipPlaneConstant']!=null){if(this['activeAxis']===AxisType['X'])_0x2712b9['setX'](this['clipPlaneConstant']);else {if(this['activeAxis']===AxisType['Y'])_0x2712b9['setY'](this['clipPlaneConstant']);else this['activeAxis']===AxisType['Z']&&_0x2712b9['setZ'](this['clipPlaneConstant']);}}}}
|
|
92
|
+
|
|
93
|
+
class ObjectsBoxSection extends BaseSection{constructor(_0x49976b,_0x5e7654){super(_0x49976b,_0x5e7654),this['sectionRange']={};}['activate'](){super['activate']();const _0x55bdd8=this['viewer']['getBBox']();if(_0x55bdd8){const {min:_0x39fb6e,max:_0x2367af}=_0x55bdd8;this['sectionRange']={'x':[_0x39fb6e['x'],_0x2367af['x']],'y':[_0x39fb6e['y'],_0x2367af['y']],'z':[_0x39fb6e['z'],_0x2367af['z']]};}this['initOrUpdateClipPlanes'](),this['initOrUpdateVertices'](),this['initOrUpdateSectionPlaneMeshes'](),this['initOrUpdateCapsWireframes'](),this['setCapsVisible'](![]),this['setClippingEnabled'](!![]);}['deactivate'](_0x5e5e7f=![]){super['deactivate'](_0x5e5e7f),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:_0x265e37,max:_0x64d579}=this['sectionBox'];this['vertices']=[new THREE['Vector3'](_0x64d579['x'],_0x64d579['y'],_0x64d579['z']),new THREE['Vector3'](_0x265e37['x'],_0x64d579['y'],_0x64d579['z']),new THREE['Vector3'](_0x265e37['x'],_0x265e37['y'],_0x64d579['z']),new THREE['Vector3'](_0x64d579['x'],_0x265e37['y'],_0x64d579['z']),new THREE['Vector3'](_0x64d579['x'],_0x64d579['y'],_0x265e37['z']),new THREE['Vector3'](_0x265e37['x'],_0x64d579['y'],_0x265e37['z']),new THREE['Vector3'](_0x265e37['x'],_0x265e37['y'],_0x265e37['z']),new THREE['Vector3'](_0x64d579['x'],_0x265e37['y'],_0x265e37['z'])];}['initOrUpdateClipPlanes'](){const {min:_0x5b6dd0,max:_0x35ef3e}=this['sectionBox'];!this['clipPlanes']?this['clipPlanes']=[new THREE['Plane'](new THREE['Vector3'](-0x1,0x0,0x0),_0x35ef3e['x']),new THREE['Plane'](new THREE['Vector3'](0x1,0x0,0x0),-_0x5b6dd0['x']),new THREE['Plane'](new THREE['Vector3'](0x0,-0x1,0x0),_0x35ef3e['y']),new THREE['Plane'](new THREE['Vector3'](0x0,0x1,0x0),-_0x5b6dd0['y']),new THREE['Plane'](new THREE['Vector3'](0x0,0x0,-0x1),_0x35ef3e['z']),new THREE['Plane'](new THREE['Vector3'](0x0,0x0,0x1),-_0x5b6dd0['z'])]:(this['clipPlanes'][0x0]['constant']=_0x35ef3e['x'],this['clipPlanes'][0x1]['constant']=-_0x5b6dd0['x'],this['clipPlanes'][0x2]['constant']=_0x35ef3e['y'],this['clipPlanes'][0x3]['constant']=-_0x5b6dd0['y'],this['clipPlanes'][0x4]['constant']=_0x35ef3e['z'],this['clipPlanes'][0x5]['constant']=-_0x5b6dd0['z']);}['initOrUpdateSectionPlaneMeshes'](){const _0x5a74fa=this['vertices'];if(!_0x5a74fa)return;if(!this['planeMeshes']){const _0x53bdfa=[new SectionPlaneMesh(ViewDirection['Right'],[_0x5a74fa[0x4],_0x5a74fa[0x0],_0x5a74fa[0x3],_0x5a74fa[0x7]]),new SectionPlaneMesh(ViewDirection['Left'],[_0x5a74fa[0x1],_0x5a74fa[0x5],_0x5a74fa[0x6],_0x5a74fa[0x2]]),new SectionPlaneMesh(ViewDirection['Top'],[_0x5a74fa[0x4],_0x5a74fa[0x5],_0x5a74fa[0x1],_0x5a74fa[0x0]]),new SectionPlaneMesh(ViewDirection['Bottom'],[_0x5a74fa[0x6],_0x5a74fa[0x7],_0x5a74fa[0x3],_0x5a74fa[0x2]]),new SectionPlaneMesh(ViewDirection['Front'],[_0x5a74fa[0x0],_0x5a74fa[0x1],_0x5a74fa[0x2],_0x5a74fa[0x3]]),new SectionPlaneMesh(ViewDirection['Back'],[_0x5a74fa[0x5],_0x5a74fa[0x4],_0x5a74fa[0x7],_0x5a74fa[0x6]])];this['planeMeshes']=_0x53bdfa,this['scene']['add'](..._0x53bdfa);}else this['planeMeshes'][0x0]['update']([_0x5a74fa[0x4],_0x5a74fa[0x0],_0x5a74fa[0x3],_0x5a74fa[0x7]]),this['planeMeshes'][0x1]['update']([_0x5a74fa[0x1],_0x5a74fa[0x5],_0x5a74fa[0x6],_0x5a74fa[0x2]]),this['planeMeshes'][0x2]['update']([_0x5a74fa[0x4],_0x5a74fa[0x5],_0x5a74fa[0x1],_0x5a74fa[0x0]]),this['planeMeshes'][0x3]['update']([_0x5a74fa[0x6],_0x5a74fa[0x7],_0x5a74fa[0x3],_0x5a74fa[0x2]]),this['planeMeshes'][0x4]['update']([_0x5a74fa[0x0],_0x5a74fa[0x1],_0x5a74fa[0x2],_0x5a74fa[0x3]]),this['planeMeshes'][0x5]['update']([_0x5a74fa[0x5],_0x5a74fa[0x4],_0x5a74fa[0x7],_0x5a74fa[0x6]]);this['viewer']['enableRender']();}['initOrUpdateCapsWireframes'](){const _0x34e698=this['vertices'];if(!_0x34e698)return;if(!this['capsWireframes']){const _0x187a48=[this['createCapsWireframe'](ViewDirection['Right'],[_0x34e698[0x4],_0x34e698[0x0],_0x34e698[0x3],_0x34e698[0x7]]),this['createCapsWireframe'](ViewDirection['Left'],[_0x34e698[0x1],_0x34e698[0x5],_0x34e698[0x6],_0x34e698[0x2]]),this['createCapsWireframe'](ViewDirection['Top'],[_0x34e698[0x4],_0x34e698[0x5],_0x34e698[0x1],_0x34e698[0x0]]),this['createCapsWireframe'](ViewDirection['Bottom'],[_0x34e698[0x6],_0x34e698[0x7],_0x34e698[0x3],_0x34e698[0x2]]),this['createCapsWireframe'](ViewDirection['Front'],[_0x34e698[0x0],_0x34e698[0x1],_0x34e698[0x2],_0x34e698[0x3]]),this['createCapsWireframe'](ViewDirection['Back'],[_0x34e698[0x5],_0x34e698[0x4],_0x34e698[0x7],_0x34e698[0x6]])];this['capsWireframes']=_0x187a48,this['capsScene']['add'](..._0x187a48);}else this['capsWireframes'][0x0]['update']([_0x34e698[0x4],_0x34e698[0x0],_0x34e698[0x3],_0x34e698[0x7]]),this['capsWireframes'][0x1]['update']([_0x34e698[0x1],_0x34e698[0x5],_0x34e698[0x6],_0x34e698[0x2]]),this['capsWireframes'][0x2]['update']([_0x34e698[0x4],_0x34e698[0x5],_0x34e698[0x1],_0x34e698[0x0]]),this['capsWireframes'][0x3]['update']([_0x34e698[0x6],_0x34e698[0x7],_0x34e698[0x3],_0x34e698[0x2]]),this['capsWireframes'][0x4]['update']([_0x34e698[0x0],_0x34e698[0x1],_0x34e698[0x2],_0x34e698[0x3]]),this['capsWireframes'][0x5]['update']([_0x34e698[0x5],_0x34e698[0x4],_0x34e698[0x7],_0x34e698[0x6]]);this['viewer']['enableRender']();}['createCapsWireframe'](_0x2ff300,_0x39de0c){const _0x53380e=new SectionPlaneMesh(_0x2ff300,_0x39de0c);return _0x53380e['material']=this['capsWireframeMaterial'],_0x53380e['createIgnoreClipMaterials'](_0x53380e['material']),_0x53380e['createLine'](),_0x53380e;}['activateSelectedObject'](_0x1922a2){var _0x586715;(_0x586715=this['selectedObject'])===null||_0x586715===void 0x0?void 0x0:_0x586715['setActive'](_0x1922a2);}['onDragStart'](_0x2254d7){var _0x5bb664;if(!this['selectedObject'])return;log['info']('[Section]\x20onDragStart:',_0x2254d7),this['refrencePlane']['setFromNormalAndCoplanarPoint'](this['camera']['getWorldDirection'](this['refrencePlane']['normal']),this['selectedObject']['getPlaneCenter']()),(_0x5bb664=this['raycaster'])===null||_0x5bb664===void 0x0?void 0x0:_0x5bb664['ray']['intersectPlane'](this['refrencePlane'],this['lastWorldPos']);}['onDragMove'](_0x4ce5a3){var _0x538e57;if(!this['lastWorldPos']||!this['selectedObject'])return;const _0x5bd1ca=new THREE['Vector3']();(_0x538e57=this['raycaster'])===null||_0x538e57===void 0x0?void 0x0:_0x538e57['ray']['intersectPlane'](this['refrencePlane'],_0x5bd1ca);const _0x141e82=this['selectedObject']['actionType'];switch(_0x141e82){case ViewDirection['Top']:case ViewDirection['Bottom']:this['dragTranslateSectionPlane'](AxisY$1,this['lastWorldPos'],_0x5bd1ca,_0x141e82);break;case ViewDirection['Left']:case ViewDirection['Right']:this['dragTranslateSectionPlane'](AxisX$1,this['lastWorldPos'],_0x5bd1ca,_0x141e82);break;case ViewDirection['Front']:case ViewDirection['Back']:this['dragTranslateSectionPlane'](AxisZ$1,this['lastWorldPos'],_0x5bd1ca,_0x141e82);break;}this['lastWorldPos']=_0x5bd1ca;}['onDragEnd'](_0x21a711){log['info']('[Section]\x20onDragEnd:',_0x21a711);}['dragTranslateSectionPlane'](_0x51c262,_0x439ca2,_0xf5b9e7,_0x3cba02){const {min:_0xebb6ae,max:_0x2d9f88}=this['sectionBox'],_0x5e349c=_0xf5b9e7['clone']()['sub'](_0x439ca2)['projectOnVector'](_0x51c262);let _0x1093e6;switch(_0x3cba02){case ViewDirection['Top']:_0x1093e6=_0x2d9f88['y']+_0x5e349c['y'];this['isInRange'](_0x1093e6,this['sectionRange']['y'])&&(_0x2d9f88['y']=_0x1093e6);break;case ViewDirection['Bottom']:_0x1093e6=_0xebb6ae['y']+_0x5e349c['y'];this['isInRange'](_0x1093e6,this['sectionRange']['y'])&&(_0xebb6ae['y']=_0x1093e6);break;case ViewDirection['Left']:_0x1093e6=_0xebb6ae['x']+_0x5e349c['x'];this['isInRange'](_0x1093e6,this['sectionRange']['x'])&&(_0xebb6ae['x']=_0x1093e6);break;case ViewDirection['Right']:_0x1093e6=_0x2d9f88['x']+_0x5e349c['x'];this['isInRange'](_0x1093e6,this['sectionRange']['x'])&&(_0x2d9f88['x']=_0x1093e6);break;case ViewDirection['Front']:_0x1093e6=_0x2d9f88['z']+_0x5e349c['z'];this['isInRange'](_0x1093e6,this['sectionRange']['z'])&&(_0x2d9f88['z']=_0x1093e6);break;case ViewDirection['Back']:_0x1093e6=_0xebb6ae['z']+_0x5e349c['z'];this['isInRange'](_0x1093e6,this['sectionRange']['z'])&&(_0xebb6ae['z']=_0x1093e6);break;}this['initOrUpdateVertices'](),this['initOrUpdateSectionPlaneMeshes'](),this['initOrUpdateClipPlanes'](),this['initOrUpdateCapsWireframes'](),this['viewer']['enableRender']();}['isInRange'](_0x4f60cd,_0x52512b){return _0x4f60cd>_0x52512b[0x0]&&_0x4f60cd<_0x52512b[0x1];}['getIntersection'](_0x2e512f){if(!this['raycaster'])return;this['updateRaycasterByMouse'](_0x2e512f);const _0xdb8830=this['raycaster']['intersectObjects'](this['getIntersectObjects']())||[];return _0xdb8830[0x0];}['getIntersectObjects'](){return this['planeMeshes']||[];}['reset'](){this['sectionBox']=this['viewer']['getBBox'](),this['initOrUpdateVertices'](),this['initOrUpdateSectionPlaneMeshes'](),this['initOrUpdateCapsWireframes'](),this['initOrUpdateClipPlanes'](),this['viewer']['enableRender']();}['setSectionPlaneVisible'](_0xf3f319){var _0x1b1cd8;(_0x1b1cd8=this['planeMeshes'])===null||_0x1b1cd8===void 0x0?void 0x0:_0x1b1cd8['forEach'](_0x36c304=>_0x36c304['visible']=_0xf3f319),this['showSectionPlane']=_0xf3f319,this['viewer']['enableRender']();}['setCapsVisible'](_0x1e55d9){var _0x119867;super['setCapsVisible'](_0x1e55d9),(_0x119867=this['capsWireframes'])===null||_0x119867===void 0x0?void 0x0:_0x119867['forEach'](_0x7b8dc7=>{_0x7b8dc7['visible']=_0x1e55d9;}),this['viewer']['enableRender']();}}
|
|
94
|
+
|
|
95
|
+
const en$7={'pickSectionPlane':'Click\x20to\x20pick\x20a\x20section\x20plane','axisSection':'Axis\x20Section','hideSectionPlane':'Hide\x20Section\x20Panel','showSectionPlane':'Show\x20Section\x20Panel','reset':'Reset'};const cn$7={'pickSectionPlane':'点击确定剖切面','axisSection':'轴剖切','hideSectionPlane':'隐藏剖切面','showSectionPlane':'显示剖切面','reset':'重置'};const i18n$7=i18next['createInstance']();const lng$7='en';i18n$7['init']({'lng':lng$7,'debug':![],'resources':{'en':{'translation':en$7},'cn':{'translation':cn$7}}});
|
|
96
|
+
|
|
97
|
+
class PickPlaneSection extends BaseSection{constructor(_0x2c6103,_0x4ac29d){super(_0x2c6103,_0x4ac29d),this['mousedown']=_0x42570d=>{var _0x17bf0c;const _0x30ae6f=_0x42570d['button']===0x0;if(!_0x30ae6f)return;if(!this['pickedFaceInfo']){let _0x53921c=this['pickObject'](_0x42570d);!_0x53921c&&this['lastMouseMoveIntersection']&&(_0x53921c=this['lastMouseMoveIntersection']);if(_0x53921c&&_0x53921c['face']){const _0x2034d2=_0x53921c['face']['normal'],_0x5b3d33=new THREE['Matrix3']();_0x2034d2['applyNormalMatrix'](_0x5b3d33['getNormalMatrix'](_0x53921c['object']['matrixWorld'])),this['pickedFaceInfo']={'position':_0x53921c['point'],'normal':_0x2034d2['normalize']()},this['setSection'](),(_0x17bf0c=this['tooltip'])===null||_0x17bf0c===void 0x0?void 0x0:_0x17bf0c['hide']();}return;}if(!this['selectedObject']){const _0x77a7ca=this['getIntersection'](_0x42570d);if(!_0x77a7ca)return;this['activateSelectedObject'](![]),this['selectedObject']=_0x77a7ca['object'];}if(!(this['selectedObject']['parent']instanceof SectionGizmo))return;this['inputManager']['setCursor']('grabbing'),this['dragStarted']=!![],this['setControlsEnabled'](![]),this['onDragStart'](_0x42570d),this['viewer']['enableRender']();},this['mousemove']=_0x154300=>{var _0x51bd77,_0x44a429,_0x5bd9d0;if(!this['pickedFaceInfo']){const _0x4a7898=this['pickObject'](_0x154300);_0x4a7898?(_0x51bd77=this['tooltip'])===null||_0x51bd77===void 0x0?void 0x0:_0x51bd77['show']():(_0x44a429=this['tooltip'])===null||_0x44a429===void 0x0?void 0x0:_0x44a429['hide']();this['lastMouseMoveIntersection']=_0x4a7898;return;}if(this['dragStarted'])this['updateRaycasterByMouse'](_0x154300),this['onDragMove'](_0x154300);else {this['activateSelectedObject'](![]),this['selectedObject']=undefined;const _0x577ce1=this['getIntersection'](_0x154300);let _0x164f01='default';_0x577ce1&&_0x577ce1['object']['visible']&&((_0x5bd9d0=_0x577ce1['object']['parent'])===null||_0x5bd9d0===void 0x0?void 0x0:_0x5bd9d0['visible'])&&(this['selectedObject']=_0x577ce1['object'],this['activateSelectedObject'](!![]),this['selectedObject']['parent']instanceof SectionGizmo&&(_0x164f01='grab')),this['inputManager']['setCursor'](_0x164f01);}this['viewer']['enableRender']();},this['center']=new THREE['Vector3'](),this['viewer']['addEventListener'](ViewerEvent['BeforeRender'],()=>{var _0x4685cd,_0x5c4429,_0x1835f9;this['isActive']&&((_0x4685cd=this['gizmo'])===null||_0x4685cd===void 0x0?void 0x0:_0x4685cd['adjustSize'](this['camera']),(_0x5c4429=this['planeMesh'])===null||_0x5c4429===void 0x0?void 0x0:_0x5c4429['updateWorldMatrix'](!![],!![]),(_0x1835f9=this['capsWireframe'])===null||_0x1835f9===void 0x0?void 0x0:_0x1835f9['updateWorldMatrix'](!![],!![]));});}['activate'](){super['activate'](),this['sectionBox']['getCenter'](this['center']),this['tooltip']=new Tooltip('pick-section-plane',i18n$7['t']('pickSectionPlane'),{'parentNode':this['viewer']['widgetContainer'],'followPointer':!![]});}['deactivate'](_0x49e65d=![]){var _0x16c7ba,_0x43b462,_0x5bb873;super['deactivate'](_0x49e65d),(_0x16c7ba=this['planeMesh'])===null||_0x16c7ba===void 0x0?void 0x0:_0x16c7ba['removeFromParent'](),(_0x43b462=this['gizmo'])===null||_0x43b462===void 0x0?void 0x0:_0x43b462['removeFromParent'](),this['planeMesh']=undefined,this['gizmo']=undefined,this['pickedFaceInfo']=undefined,this['lastMouseMoveIntersection']=undefined,(_0x5bb873=this['tooltip'])===null||_0x5bb873===void 0x0?void 0x0:_0x5bb873['destroy'](),this['tooltip']=undefined;}['setSection'](){this['initOrUpdateGizmo'](),this['initOrUpdateSectionPlaneMeshes'](),this['initOrUpdateClipPlanes'](),this['setClippingEnabled'](!![]),this['viewer']['enableRender']();}['reset'](){var _0x29ddb0,_0x37a6a6,_0x3b9436;(_0x29ddb0=this['planeMesh'])===null||_0x29ddb0===void 0x0?void 0x0:_0x29ddb0['removeFromParent'](),(_0x37a6a6=this['gizmo'])===null||_0x37a6a6===void 0x0?void 0x0:_0x37a6a6['removeFromParent'](),this['setClippingEnabled'](![]),this['planeMesh']=undefined,this['gizmo']=undefined,this['pickedFaceInfo']=undefined,this['lastMouseMoveIntersection']=undefined,(_0x3b9436=this['tooltip'])===null||_0x3b9436===void 0x0?void 0x0:_0x3b9436['show'](),this['viewer']['enableRender']();}['setSectionPlaneVisible'](_0x14e339){this['gizmo']&&this['planeMesh']&&(this['gizmo']['visible']=_0x14e339,this['planeMesh']['visible']=_0x14e339),this['showSectionPlane']=_0x14e339,this['viewer']['enableRender']();}['initOrUpdateClipPlanes'](){if(!this['pickedFaceInfo'])return;const {normal:_0x23727f,position:_0x207a3e}=this['pickedFaceInfo'];this['clipPlane']=new THREE['Plane']()['setFromNormalAndCoplanarPoint'](_0x23727f['clone']()['negate'](),_0x207a3e),this['clipPlane']&&(this['clipPlanes']=[this['clipPlane']]);}['initOrUpdateSectionPlaneMeshes'](){var _0x253366;if(!this['pickedFaceInfo'])return;const {normal:_0x2154fa,position:_0x2a104f}=this['pickedFaceInfo'],_0x1485f3=new THREE['Vector3']();this['sectionBox']['getSize'](_0x1485f3);const _0x39e132=_0x1485f3['length'](),_0x537e1c=_0x2a104f,_0x4fd9b7=new THREE['Box3']()['setFromCenterAndSize'](_0x537e1c,new THREE['Vector3'](_0x39e132,_0x39e132,_0x39e132)),{min:_0x42f52f,max:_0x3f92b8}=_0x4fd9b7;(_0x253366=this['planeMesh'])===null||_0x253366===void 0x0?void 0x0:_0x253366['removeFromParent'](),this['planeMesh']=new SectionPlaneMesh('Plane',[new THREE['Vector3'](_0x537e1c['x'],_0x3f92b8['y'],_0x42f52f['z']),new THREE['Vector3'](_0x537e1c['x'],_0x3f92b8['y'],_0x3f92b8['z']),new THREE['Vector3'](_0x537e1c['x'],_0x42f52f['y'],_0x3f92b8['z']),new THREE['Vector3'](_0x537e1c['x'],_0x42f52f['y'],_0x42f52f['z'])]),this['planeMesh']['setDirection'](_0x2154fa),this['planeMesh']&&this['scene']['add'](this['planeMesh']),this['createCapsWireframe'](),this['viewer']['enableRender']();}['createCapsWireframe'](){var _0x16c4dc;if(!this['planeMesh'])return;const {actionType:_0x4b51c4,vertices:_0x58ecc3}=this['planeMesh'];(_0x16c4dc=this['capsWireframe'])===null||_0x16c4dc===void 0x0?void 0x0:_0x16c4dc['removeFromParent'](),this['capsWireframe']=new SectionPlaneMesh(_0x4b51c4,_0x58ecc3);const _0x1e8950=this['capsWireframeMaterial'];this['capsWireframe']['createIgnoreClipMaterials'](_0x1e8950),this['capsWireframe']['material']=_0x1e8950,this['capsWireframe']['createLine'](),this['setCapsVisible'](![]),this['capsWireframe']&&this['capsScene']['add'](this['capsWireframe']);}['initOrUpdateGizmo'](){var _0x351353,_0x493fde;if(!this['pickedFaceInfo'])return;(_0x351353=this['gizmo'])===null||_0x351353===void 0x0?void 0x0:_0x351353['removeFromParent']();const {normal:_0x106aa1,position:_0x7e75e7}=this['pickedFaceInfo'],_0x3e4cc9=new SectionGizmo();_0x3e4cc9['setDirection'](_0x106aa1),_0x3e4cc9['position']['copy'](_0x7e75e7),_0x3e4cc9['adjustSize'](this['camera']),(_0x493fde=this['scene'])===null||_0x493fde===void 0x0?void 0x0:_0x493fde['add'](_0x3e4cc9),_0x3e4cc9['updateMatrix'](),_0x3e4cc9['updateMatrixWorld'](!![]),this['gizmo']=_0x3e4cc9;}['onDragStart'](_0x1edc44){var _0x54f547;if(!this['pickedFaceInfo']||this['selectedObject']instanceof SectionPlaneMesh)return;log['info']('[Section]\x20onDragStart:',_0x1edc44);const {position:_0x94b89e}=this['pickedFaceInfo'];this['refrencePlane']['setFromNormalAndCoplanarPoint'](this['camera']['getWorldDirection'](this['refrencePlane']['normal']),_0x94b89e),(_0x54f547=this['raycaster'])===null||_0x54f547===void 0x0?void 0x0:_0x54f547['ray']['intersectPlane'](this['refrencePlane'],this['lastWorldPos']);}['onDragMove'](_0xb5cc02){var _0x43b575,_0x30e344,_0x142d48,_0x350dae,_0x184565,_0x54dec1,_0x4e9c65;if(!this['lastWorldPos']||!this['selectedObject']||!this['clipPlane']||!this['planeMesh']||!this['gizmo']||!this['gizmo']['visible']||!this['pickedFaceInfo']||this['selectedObject']&&this['selectedObject']instanceof SectionPlaneMesh)return;const _0x38bd01=new THREE['Vector3']();(_0x43b575=this['raycaster'])===null||_0x43b575===void 0x0?void 0x0:_0x43b575['ray']['intersectPlane'](this['refrencePlane'],_0x38bd01);const _0x17a20a=this['selectedObject']['userData']['actionType'],{position:_0x2c9674}=this['pickedFaceInfo'],_0x3c9515=new THREE['Vector3']()['subVectors'](this['lastWorldPos'],_0x2c9674)['normalize'](),_0x5cc9ee=new THREE['Vector3']()['subVectors'](_0x38bd01,_0x2c9674)['normalize'](),_0x3feb82=new THREE['Vector3']()['subVectors'](_0x38bd01,this['lastWorldPos'])['projectOnVector'](AxisX$1['clone']()['applyQuaternion'](this['gizmo']['quaternion']));let _0x421958=_0x3c9515['angleTo'](_0x5cc9ee);const _0x2a6193=new THREE['Vector3']()['crossVectors'](_0x3c9515,_0x5cc9ee),_0x34ec39=new THREE['Vector3']();this['sectionBox']['getSize'](_0x34ec39);const _0x467faf=Math['max'](_0x34ec39['x'],_0x34ec39['y'],_0x34ec39['z']);let _0x721734;switch(_0x17a20a){case ActionType['TranslateX']:case ActionType['TranslateY']:case ActionType['TranslateZ']:_0x721734=new THREE['Vector3']()['addVectors'](this['gizmo']['position'],_0x3feb82);this['sectionBox']['clone']()['setFromCenterAndSize'](this['center'],new THREE['Vector3'](_0x467faf,_0x467faf,_0x467faf))['containsPoint'](_0x721734)&&((_0x30e344=this['gizmo'])===null||_0x30e344===void 0x0?void 0x0:_0x30e344['position']['add'](_0x3feb82),(_0x142d48=this['planeMesh'])===null||_0x142d48===void 0x0?void 0x0:_0x142d48['position']['add'](_0x3feb82),(_0x350dae=this['capsWireframe'])===null||_0x350dae===void 0x0?void 0x0:_0x350dae['position']['add'](_0x3feb82));break;case ActionType['RotateX']:{const _0xc502d3=AxisX$1['clone']()['applyQuaternion'](this['gizmo']['quaternion']),_0x4a6031=_0x2a6193['dot'](_0xc502d3);_0x4a6031<0x0&&(_0x421958=-_0x421958),this['gizmo']['rotateX'](_0x421958),this['planeMesh']['rotatePlane'](_0xc502d3,_0x421958),(_0x184565=this['capsWireframe'])===null||_0x184565===void 0x0?void 0x0:_0x184565['rotatePlane'](_0xc502d3,_0x421958);}break;case ActionType['RotateY']:{const _0x86504b=AxisY$1['clone']()['applyQuaternion'](this['gizmo']['quaternion']),_0x12808e=_0x2a6193['dot'](_0x86504b);_0x12808e<0x0&&(_0x421958=-_0x421958),this['gizmo']['rotateY'](_0x421958),this['planeMesh']['rotatePlane'](_0x86504b,_0x421958),(_0x54dec1=this['capsWireframe'])===null||_0x54dec1===void 0x0?void 0x0:_0x54dec1['rotatePlane'](_0x86504b,_0x421958);}break;case ActionType['RotateZ']:{const _0x4bcd47=AxisZ$1['clone']()['applyQuaternion'](this['gizmo']['quaternion']),_0x417b90=_0x2a6193['dot'](_0x4bcd47);_0x417b90<0x0&&(_0x421958=-_0x421958),this['gizmo']['rotateZ'](_0x421958),this['planeMesh']['rotatePlane'](_0x4bcd47,_0x421958),(_0x4e9c65=this['capsWireframe'])===null||_0x4e9c65===void 0x0?void 0x0:_0x4e9c65['rotatePlane'](_0x4bcd47,_0x421958);}break;}this['clipPlane']['setFromNormalAndCoplanarPoint'](this['planeMesh']['getPlaneNormal']()['negate'](),this['gizmo']['position']),this['lastWorldPos']=_0x38bd01;}['onDragEnd'](_0x51745f){if(this['selectedObject']instanceof SectionPlaneMesh)return;log['info']('[Section]\x20onDragEnd:',_0x51745f);}['getIntersectObjects'](){if(!this['planeMesh']||!this['gizmo'])return [];return [this['planeMesh'],this['gizmo']];}['activateSelectedObject'](_0x1fe3c6){if(!this['selectedObject'])return;if(this['selectedObject']instanceof SectionPlaneMesh)this['selectedObject']['setActive'](_0x1fe3c6);else this['selectedObject']['parent']instanceof SectionGizmo&&this['selectedObject']['parent']['setActive'](_0x1fe3c6,this['selectedObject']);}['pickObject'](_0x3245fc){const _0x23df98=new THREE['Vector2'](_0x3245fc['x'],_0x3245fc['y']);return this['viewer']['pickObject'](_0x23df98);}['setCapsVisible'](_0xcda2b7){super['setCapsVisible'](_0xcda2b7),this['capsWireframe']&&(this['capsWireframe']['visible']=_0xcda2b7),this['viewer']['enableRender']();}}
|
|
98
|
+
|
|
99
|
+
var SectionType;(function(_0x519078){_0x519078['ObjectsBoxSection']='ObjectsBoxSection',_0x519078['PickPlaneSection']='PickPlaneSection',_0x519078['AxisPlaneSection']='AxisPlaneSection';}(SectionType||(SectionType={})));class SectionPlugin extends Plugin{constructor(_0x1ce6ea,_0x7f4b59){const _0x5bb653=(_0x7f4b59===null||_0x7f4b59===void 0x0?void 0x0:_0x7f4b59['id'])||SectionPlugin['DEFAULT_ID'];super(_0x1ce6ea,{'id':_0x5bb653}),this['sections']={},this['lastRenderAutoClear']=!![],this['onBeforeRender']=()=>{if(!this['activeSectionType'])return;const _0x1a92cb=this['sections'][this['activeSectionType']],_0x329d09=_0x1a92cb['capsScene'];if(!_0x1a92cb['getCapsVisible']())return;this['lastRenderAutoClear']=this['viewer']['renderer']['autoClear'],this['render'](_0x329d09);},this['onAfterRender']=()=>{this['viewer']['renderer']['autoClear']=this['lastRenderAutoClear'];},this['cfg']=_0x7f4b59||{'id':_0x5bb653},this['initLocalization'](),this['viewer']=_0x1ce6ea;const _0x4c4e31=_0x1ce6ea['getInputManager']();_0x4c4e31&&(this['sections'][SectionType['ObjectsBoxSection']]=new ObjectsBoxSection(_0x1ce6ea,_0x4c4e31),this['sections'][SectionType['AxisPlaneSection']]=new AxisPlaneSection(_0x1ce6ea,_0x4c4e31),this['sections'][SectionType['PickPlaneSection']]=new PickPlaneSection(_0x1ce6ea,_0x4c4e31)),this['createCapStencilMaterials'](),this['viewer']['addEventListener'](ViewerEvent['BeforeRender'],this['onBeforeRender']),this['viewer']['addEventListener'](ViewerEvent['AfterRender'],this['onAfterRender']);}['initLocalization'](){const _0xb0df22=this['cfg']['language']||DefaultLanguage;i18n$7['changeLanguage'](_0xb0df22);}get['raycaster'](){return this['viewer']['getRaycaster']();}['createCapStencilMaterials'](){this['backMaterial']=new THREE['MeshBasicMaterial']({'color':0xff0000,'colorWrite':![],'depthWrite':![],'side':THREE['BackSide']}),this['frontMaterial']=new THREE['MeshBasicMaterial']({'color':0xff,'colorWrite':![],'depthWrite':![],'side':THREE['FrontSide']});}['render'](_0x28eaf3){const _0x55e2b1=this['viewer'],_0x1169b9=_0x55e2b1['renderer'],_0x732537=_0x1169b9['getClearAlpha']();_0x1169b9['autoClear']&&(_0x1169b9['clear'](),_0x1169b9['setClearAlpha'](0x0),_0x1169b9['autoClear']=![]);const _0xcc7b5a=this['viewer']['name']===ViewerName['Viewer3d']||this['viewer']['name']===ViewerName['BimTilesViewer'];_0xcc7b5a&&_0x55e2b1['getSsaoEnabled']()&&_0x1169b9['clear']();const _0x2a5566=_0x1169b9['getContext'](),_0x48d4b9=_0x1169b9['state'];_0x48d4b9['buffers']['stencil']['setTest'](!![]),_0x48d4b9['buffers']['stencil']['setLocked'](!![]),_0x48d4b9['buffers']['stencil']['setFunc'](_0x2a5566['ALWAYS'],0x1,0xff),_0x48d4b9['buffers']['stencil']['setOp'](_0x2a5566['KEEP'],_0x2a5566['KEEP'],_0x2a5566['INCR']),_0x55e2b1['scene']['overrideMaterial']=this['backMaterial'],_0x55e2b1['scene']['userData']['backFrontStencil']=!![],_0x1169b9['render'](_0x55e2b1['scene'],_0x55e2b1['camera']),_0x48d4b9['buffers']['stencil']['setFunc'](_0x2a5566['ALWAYS'],0x1,0xff),_0x48d4b9['buffers']['stencil']['setOp'](_0x2a5566['KEEP'],_0x2a5566['KEEP'],_0x2a5566['DECR']),_0x55e2b1['scene']['overrideMaterial']=this['frontMaterial'],_0x1169b9['render'](_0x55e2b1['scene'],_0x55e2b1['camera']),_0x55e2b1['scene']['userData']['backFrontStencil']=![],_0x48d4b9['buffers']['stencil']['setFunc'](_0x2a5566['LEQUAL'],0x1,0xff),_0x48d4b9['buffers']['stencil']['setOp'](_0x2a5566['KEEP'],_0x2a5566['KEEP'],_0x2a5566['KEEP']),_0x1169b9['render'](_0x28eaf3,_0x55e2b1['camera']),_0x48d4b9['buffers']['stencil']['setTest'](![]),_0x48d4b9['buffers']['stencil']['setLocked'](![]),_0x1169b9['setClearAlpha'](_0x732537),_0x55e2b1['scene']['overrideMaterial']=null;}['activate'](_0x5aef76){this['activeSectionType']&&this['deactivate'](![]),this['activeSectionType']=_0x5aef76,this['sections'][_0x5aef76]['activate'](),this['enableSelection']=this['viewer']['enableSelection'],this['viewer']['enableSelection']=![];}['deactivate'](_0x1fb1af=![]){const _0xdf5e34=this['activeSectionType'];_0xdf5e34&&this['sections'][_0xdf5e34]['deactivate'](_0x1fb1af),this['activeSectionType']=undefined,this['enableSelection']!=null&&(this['viewer']['enableSelection']=this['enableSelection']),this['enableSelection']=undefined;}['reset'](){const _0x573100=this['activeSectionType'];if(_0x573100){const _0x91b213=this['sections'][_0x573100];_0x91b213['reset']();}}['setSectionPlaneVisible'](_0x1199ec){const _0x5c9634=this['activeSectionType'];if(_0x5c9634){const _0x2c2780=this['sections'][_0x5c9634];_0x2c2780['setSectionPlaneVisible'](_0x1199ec);}}['isActive'](){const _0x176f51=this['activeSectionType'];if(_0x176f51)return this['sections'][_0x176f51]['isActive'];return !!this['getActiveSectionType']();}['getActiveSectionType'](){return this['activeSectionType'];}['getActiveSection'](){if(!this['activeSectionType'])return undefined;return this['sections'][this['activeSectionType']];}['setClippingObjectIds'](_0x29a4a2){for(const _0x211e22 in this['sections']){this['setClippingObjectIdsForType'](_0x211e22,_0x29a4a2);}}['setClippingObjectIdsForType'](_0x150c41,_0x2a3774){this['sections'][_0x150c41]['clearClippingObjectIds'](),(_0x2a3774===null||_0x2a3774===void 0x0?void 0x0:_0x2a3774['length'])&&(this['sections'][_0x150c41]['clippingObjetIds']=_0x2a3774,this['sections'][_0x150c41]['setClippingEnabled'](!![]));}['destroy'](){var _0x547680,_0x7e257e;(_0x547680=this['backMaterial'])===null||_0x547680===void 0x0?void 0x0:_0x547680['dispose'](),(_0x7e257e=this['frontMaterial'])===null||_0x7e257e===void 0x0?void 0x0:_0x7e257e['dispose'](),this['viewer']['removeEventListener'](ViewerEvent['BeforeRender'],this['onBeforeRender']),this['viewer']['removeEventListener'](ViewerEvent['AfterRender'],this['onAfterRender']),Object['keys'](this['sections'])['forEach'](_0x210860=>{const _0x1495f5=_0x210860;this['sections'][_0x1495f5]['destroy']();});}}SectionPlugin['DEFAULT_ID']='SectionPlugin';
|
|
100
|
+
|
|
101
|
+
class Viewer3dDatGuiPlugin extends Plugin{constructor(_0x11ff90){super(_0x11ff90,{'id':'Viewer3dDatGuiPlugin'}),this['controls']={'showGroundGrid':![],'showGroundGrass':![],'skyMode':['None','Black\x20Background','White\x20Background','Gradient\x20ramp','Cloudy'],'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},this['viewer']=_0x11ff90,this['init']();}['init'](){if(!this['viewer']||!this['viewer']['renderer']||!this['viewer']['scene'])throw new Error('Need\x20to\x20initialize\x20renderer,\x20scene\x20first!');const _0xfc55a=this['viewer'],_0x41ff79=this['viewer']['scene'],_0x7f5146=this['controls'];this['gui']=new GUI$1({'name':'controls','autoPlace':!![],'width':0x12c,'closed':!![]}),this['gui']['domElement']['style']['opacity']='0.6';const _0xf31f46=this['gui']['addFolder']('Common\x20settings');_0xf31f46['add'](_0x7f5146,'showGroundGrid')['name']('Show\x20ground\x20grid')['onChange'](_0x289034=>{let _0x16d9ce=_0xfc55a['findPlugin']('GroundGridPlugin');!_0x16d9ce?_0x16d9ce=new GroundGridPlugin(_0xfc55a):_0x16d9ce['setVisible'](_0x289034);}),_0xf31f46['add'](_0x7f5146,'showGroundGrass')['name']('Show\x20ground\x20grass')['onChange'](_0x5630b3=>{let _0x302f23=_0xfc55a['findPlugin']('GroundGrassPlugin');!_0x302f23?_0x302f23=new GroundGrassPlugin(_0xfc55a):_0x302f23['setVisible'](_0x5630b3);});const _0x813204=_0xf31f46['add'](_0x7f5146,'environments',_0x7f5146['environments'])['name']('Environments');_0x813204['onChange'](_0x1ccfdd=>{let _0x2bd611='';if(_0x1ccfdd==='Default\x20(City\x20Streat\x2064x32)'){_0xfc55a['setEnvironmentData']();return;}else {if(_0x1ccfdd==='Venice\x20Sunset')_0x2bd611='venice_sunset_1k.hdr';else {if(_0x1ccfdd==='Footprint\x20Court\x20(HDR\x20Labs)')_0x2bd611='footprint_court_2k.hdr';else _0x1ccfdd==='City\x20Street'&&(_0x2bd611='city_street_256.hdr');}}_0x2bd611===''?(_0x41ff79['environment']=null,_0xfc55a['enableRender']()):(_0x2bd611=window['location']['origin']+'/demo/images/envmap/'+_0x2bd611,_0xfc55a['setEnvironment'](_0x2bd611));}),_0xf31f46['add'](_0x7f5146,'homeView')['name']('Go\x20to\x20home\x20view')['onChange'](()=>{_0xfc55a['goToHomeView']();}),_0xf31f46['add'](_0x7f5146,'views',_0x7f5146['views'])['name']('Views')['onChange'](_0x4c8407=>{const _0x5159fa=_0x4dbd20=>{const _0x41217c=new THREE['Vector3'](0x1,0x0,0x0);if(_0x4dbd20===ViewDirection['Top'])_0x41217c['set'](0x0,-0x1,0x0);else {if(_0x4dbd20===ViewDirection['Bottom'])_0x41217c['set'](0x0,0x1,0x0);else {if(_0x4dbd20===ViewDirection['Front'])_0x41217c['set'](0x0,0x0,-0x1);else {if(_0x4dbd20===ViewDirection['Back'])_0x41217c['set'](0x0,0x0,0x1);else {if(_0x4dbd20===ViewDirection['Left'])_0x41217c['set'](0x1,0x0,0x0);else _0x4dbd20===ViewDirection['Right']&&_0x41217c['set'](-0x1,0x0,0x0);}}}}return _0x41217c;},_0x3cf96f=_0x5159fa(_0x4c8407);_0xfc55a['flyToDirection'](_0x3cf96f);}),_0xf31f46['add'](_0x7f5146,'OrthographicCamera')['name']('Orth\x20Camera')['onChange'](_0x528607=>{_0xfc55a['setCameraProjection'](_0x528607?CameraProjection['Orthographic']:CameraProjection['Perspective']);}),_0xf31f46['add'](_0x7f5146,'takeSnapshot')['name']('Take\x20snapshot')['onChange'](()=>{let _0x49038a=_0xfc55a['findPlugin']('ScreenshotPlugin');!_0x49038a&&(_0x49038a=new ScreenshotPlugin(_0xfc55a));const _0x4482dc=_0x49038a['getScreenshot'](),_0x949e7c=document['createElement']('a');_0x949e7c['href']=_0x4482dc,_0x949e7c['download']='',_0x949e7c['click']();}),_0xf31f46['add'](_0x7f5146,'takeSnapshotForViewerBBox')['name']('Take\x20snapshot\x20for\x20viewer\x20bbox')['onChange'](()=>{let _0x1dd547=_0xfc55a['findPlugin']('ScreenshotPlugin');!_0x1dd547&&(_0x1dd547=new ScreenshotPlugin(_0xfc55a));const _0x518e24=async()=>{const _0x14b72e=_0xfc55a['getBBox'](),_0x110d3d=await _0x1dd547['getScreenshotByWorldBBox'](_0x14b72e),_0x3cce6f=document['createElement']('a');_0x3cce6f['href']=_0x110d3d,_0x3cce6f['download']='',_0x3cce6f['click']();};_0x518e24();}),_0xf31f46['add'](_0x7f5146,'fullScreen')['name']('Full\x20screen')['onChange'](()=>{_0x4f051a&&_0x4f051a['isEnabled']&&_0x4f051a['request'](),_0xfc55a['enableRender']();});_0xfc55a instanceof Viewer3d&&_0xf31f46['add'](_0x7f5146,'uploadFile')['name']('Upload\x20file')['onChange'](()=>{const _0x54992f=new LocalModelUploader(_0xfc55a);_0x54992f['openFileBrowserToUpload']();});const _0xfa03cc=this['gui']['addFolder']('Model\x20operations');_0xfa03cc['add'](_0x7f5146,'transparentMode',_0x7f5146['transparentMode'])['name']('Transparent\x20mode')['onChange'](_0x2c27d8=>{_0x2c27d8?_0xfc55a['setModelsOpacity'](0.03):_0xfc55a['clearModelsOpacity'](),_0xfc55a['enableRender']();}),_0xfa03cc['add'](_0x7f5146,'enableOutline',_0x7f5146['enableOutline'])['name']('Show\x20outlines')['onChange'](_0x33c808=>{_0xfc55a['enableModelsOutline'](_0x33c808),_0xfc55a['enableRender']();}),_0xfa03cc['add'](_0x7f5146,'doubleSidedMaterial',_0x7f5146['doubleSidedMaterial'])['name']('Double-sided\x20material')['onChange'](_0x4811b=>{_0x4811b?_0xfc55a['setDoubleSidedMaterials']():_0xfc55a['revertDoubleSidedMaterials'](),_0xfc55a['enableRender']();}),_0xfa03cc['add'](_0x7f5146,'showVertexNormals',_0x7f5146['showVertexNormals'])['name']('Show\x20Vertex\x20Normals')['onChange'](_0x2e6919=>{_0xfc55a['showVertexNormals'](_0x2e6919),_0xfc55a['enableRender']();}),_0xfa03cc['add'](_0x7f5146,'explode',0x1,0x5)['name']('Explode\x20tool')['onChange'](_0xf731e6=>{let _0x41f515=_0xfc55a['findPlugin']('ExplodePlugin');!_0x41f515&&(_0x41f515=new ExplodePlugin(_0xfc55a)),_0x41f515['explode'](_0xf731e6);}),_0xfa03cc['add'](_0x7f5146,'sectionMode',_0x7f5146['sectionMode'])['name']('Section\x20mode')['onChange'](_0x5e72ed=>{let _0x52184b=_0xfc55a['findPlugin']('SectionPlugin');!_0x52184b&&(_0x52184b=new SectionPlugin(_0xfc55a));if(_0x5e72ed==='No\x20section')_0x52184b['deactivate']();else {if(_0x5e72ed==='Box\x20section')_0x52184b['activate'](SectionType['ObjectsBoxSection']);else {if(_0x5e72ed==='Pick\x20plane\x20section')_0x52184b['activate'](SectionType['PickPlaneSection']);else _0x5e72ed==='Axis\x20plane\x20section'&&_0x52184b['activate'](SectionType['AxisPlaneSection']);}}_0xfc55a['enableRender']();});const _0x5c7218=this['viewer']['getLights']()['ambient'],_0x2a7880=this['gui']['addFolder']('Ambient\x20light');_0x2a7880['add'](_0x7f5146,'alVisible',_0x7f5146['alVisible'])['name']('visible')['onChange'](_0x5da284=>{_0x5c7218&&(_0x5c7218['visible']=_0x5da284),_0xfc55a['enableRender']();}),_0x2a7880['addColor'](_0x7f5146,'alColor')['name']('color')['onChange'](_0x37e82a=>{_0x5c7218&&(_0x5c7218['color']=new THREE['Color'](_0x37e82a)),_0xfc55a['enableRender']();}),_0x2a7880['add'](_0x7f5146,'alIntensity',0x0,0x5)['name']('intensity')['onChange'](_0xaac795=>{_0x5c7218&&(_0x5c7218['intensity']=_0xaac795),_0xfc55a['enableRender']();});const _0x541cb7=this['viewer']['getLights']()['sun'];if(_0x541cb7){const _0x3bf36c=this['gui']['addFolder']('Directional\x20light');_0x3bf36c['add'](_0x541cb7,'visible')['name']('visible')['onChange'](_0x406562=>{_0x541cb7&&(_0x541cb7['visible']=_0x406562),_0xfc55a['enableRender']();}),_0x3bf36c['addColor'](_0x7f5146,'dlColor')['name']('color')['onChange'](_0x8810f2=>{_0x541cb7&&(_0x541cb7['color']=new THREE['Color'](_0x8810f2)),_0xfc55a['enableRender']();}),_0x3bf36c['add'](_0x541cb7,'intensity',0x0,0x5)['name']('intensity')['onChange'](_0x3f33b2=>{_0x541cb7&&(_0x541cb7['intensity']=_0x3f33b2),_0xfc55a['enableRender']();}),_0x3bf36c['add'](_0x541cb7,'castShadow')['name']('castShadow')['onChange'](_0x324472=>{_0x541cb7&&(_0x541cb7['castShadow']=_0x324472),_0xfc55a['enableRender']();}),_0x3bf36c['add'](_0x7f5146,'showDlHelper')['name']('showDlHelper')['onChange'](_0x22479f=>{_0xfc55a['debugLights'](_0x22479f),_0xfc55a['enableRender']();});}const _0x1ce99c=this['viewer']['getLights']()['hemisphere'],_0x5ad8ab=this['gui']['addFolder']('Hemisphere\x20Light');_0x5ad8ab['add'](_0x7f5146,'hlVisible',_0x7f5146['hlVisible'])['name']('visible')['onChange'](_0x2d911f=>{_0x1ce99c&&(_0x1ce99c['visible']=_0x2d911f),_0xfc55a['enableRender']();}),_0x5ad8ab['add'](_0x7f5146,'hlIntensity',0x0,0x5)['name']('intensity')['onChange'](_0x4713d5=>{_0x1ce99c&&(_0x1ce99c['intensity']=_0x4713d5),_0xfc55a['enableRender']();}),_0x5ad8ab['addColor'](_0x7f5146,'hlColor')['name']('color')['onChange'](_0x21b079=>{_0x1ce99c&&(_0x1ce99c['color']=new THREE['Color'](_0x21b079)),_0xfc55a['enableRender']();}),_0x5ad8ab['addColor'](_0x7f5146,'hlGroundColor')['name']('groundColor')['onChange'](_0x2265d0=>{_0x1ce99c&&(_0x1ce99c['groundColor']=new THREE['Color'](_0x2265d0)),_0xfc55a['enableRender']();});const _0x43c5ed=this['gui']['addFolder']('Fog');_0x43c5ed['add'](_0x7f5146,'fogEnabled',_0x7f5146['fogEnabled'])['name']('Enabled')['onChange'](_0x31c672=>{_0x31c672?_0x41ff79['fog']=new THREE['Fog'](_0x7f5146['fogColor'],_0x7f5146['fogNearDistance'],_0x7f5146['fogFarDistance']):_0x41ff79['fog']=null,_0xfc55a['enableRender']();}),_0x43c5ed['add'](_0x7f5146,'fogNearDistance',0x0,0x64)['name']('Near')['onChange'](_0x522de4=>{_0x7f5146['fogEnabled']&&_0x41ff79&&(_0x41ff79['fog']=new THREE['Fog'](_0x7f5146['fogColor'],_0x522de4,_0x7f5146['fogFarDistance'])),_0xfc55a['enableRender']();}),_0x43c5ed['add'](_0x7f5146,'fogFarDistance',0x64,0x7d0)['name']('Far')['onChange'](_0xc846c8=>{_0x7f5146['fogEnabled']&&_0x41ff79&&(_0x41ff79['fog']=new THREE['Fog'](_0x7f5146['fogColor'],_0x7f5146['fogNearDistance'],_0xc846c8)),_0xfc55a['enableRender']();});const _0x37920b=this['gui']['addFolder']('Performance');_0xfc55a['getDistanceCullingFactor']&&_0x37920b['add'](_0x7f5146,'distanceCullingFactor',0xa,0x3e8)['name']('Distance\x20Culling\x20Factor')['onChange'](_0x2d9f1e=>{_0xfc55a['setDistanceCullingFactor'](_0x2d9f1e),_0xfc55a['enableRender']();})['setValue'](_0xfc55a['getDistanceCullingFactor']()),_0xfc55a['getErrorTarget']&&_0x37920b['add'](_0x7f5146,'errorTarget',0x0,0x14,0.1)['name']('Error\x20Target')['onChange'](_0xc869d1=>{_0xfc55a['setErrorTarget'](_0xc869d1),_0xfc55a['enableRender']();})['setValue'](_0xfc55a['getErrorTarget']());}['open'](){this['gui']&&this['gui']['open']();}['close'](){this['gui']&&this['gui']['close']();}['destroy'](){super['destroy'](),this['gui']&&this['gui']['destroy'](),this['gui']=undefined;}}
|
|
102
|
+
|
|
103
|
+
var css_248z$a = ".layer-manager{height:350px;left:20px;top:30px;width:330px}.layer-manager .content .layer-list-item{align-items:center;border-bottom:1px solid #ccc;display:flex;padding:6px;white-space:nowrap}.layer-manager .content .layer-list-item:hover{background-color:#f0f8ff}.layer-manager .content .popup-layer-color{display:inline-block;font-size:12px;margin-left:5px;width:20px}.layer-manager .content .item-color{border:1px solid #000;font-size:12px;height:16px;margin-left:8px;min-width:18px;width:18px}.layer-manager .content .item-layer-name{display:inline-block;font-size:12px;margin-left:10px;overflow:hidden;padding:1px 0;text-overflow:ellipsis;width:280px}.layer-manager .content .popup-freeze{color:#ccc;font-size:12px;margin-right:5px;width:50px}";
|
|
104
|
+
styleInject(css_248z$a);
|
|
105
|
+
|
|
106
|
+
class LayerManagerPlugin extends Plugin{constructor(_0x208418,_0x3e0403){const _0x3073ab=(_0x3e0403===null||_0x3e0403===void 0x0?void 0x0:_0x3e0403['id'])||LayerManagerPlugin['DEFAULT_ID'];super(_0x208418,{'id':_0x3073ab}),this['cfg']=_0x3e0403||{'id':_0x3073ab},this['cfg']['visible']!==![]&&this['init']();}['init'](){var _0x2400c5;const _0x6f179d=this['viewer'];this['cfg']['containerId']&&(this['container']=document['getElementById'](this['cfg']['containerId'])),!this['container']&&(this['container']=_0x6f179d['widgetContainer']),this['dxfLayersArray']=_0x6f179d['getLayers'](),this['basePanel']=new BasePanel({'container':this['container'],'title':'Layers','cssClass':'layer-manager','onClose':()=>this['onClose'](),'viewportContainer':this['viewer']['viewerContainer']}),this['content']=(_0x2400c5=this['basePanel'])===null||_0x2400c5===void 0x0?void 0x0:_0x2400c5['content'],this['addContent']();}['setVisible'](_0x5d6243){_0x5d6243&&!this['basePanel']&&this['init'](),this['basePanel']&&(this['basePanel']['setVisible'](_0x5d6243),this['dispatchEvent']('visibilitychange',_0x5d6243));}['isVisible'](){var _0x3dd0fe;return !!((_0x3dd0fe=this['basePanel'])===null||_0x3dd0fe===void 0x0?void 0x0:_0x3dd0fe['isVisible']());}['onClose'](){this['dispatchEvent']('visibilitychange',![]);}['destroy'](){var _0x1f45ca,_0x3aa0b8,_0x1aca15;super['destroy'](),super['destroy'](),(_0x1f45ca=this['checkboxes'])===null||_0x1f45ca===void 0x0?void 0x0:_0x1f45ca['forEach'](_0x31f914=>{_0x31f914['removeEventListener']('change',()=>{this['checkboxHandler'](_0x31f914);});}),(_0x3aa0b8=this['content'])===null||_0x3aa0b8===void 0x0?void 0x0:_0x3aa0b8['remove'](),(_0x1aca15=this['basePanel'])===null||_0x1aca15===void 0x0?void 0x0:_0x1aca15['destroy']();}['addContent'](){var _0x52f310;if(!this['content'])return;let _0x2a07b2='\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22layer-list-item\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20type=\x22checkbox\x22\x20id=\x22toggleAllLayers\x22\x20checked\x20class=\x22checkbox\x22></input>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22popup-layer-color\x22>Color</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22item-layer-name\x22> Layer\x20name</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20';this['layerList']=document['createElement']('div'),this['layerList']['classList']['add']('layer-list'),this['content']['appendChild'](this['layerList']),this['updateHeaderText']();if(this['dxfLayersArray']){const _0x539a5b=this['dxfLayersArray']['length']>0x1;for(let _0x3ada48=0x0;_0x3ada48<this['dxfLayersArray']['length'];++_0x3ada48){const _0x392f99=this['dxfLayersArray'][_0x3ada48]['layers'];let _0x540782=Object['keys'](_0x392f99);_0x540782=_0x540782['sort']((_0x39ca8f,_0x5d3c34)=>{const _0x5a4d10=/[a-zA-Z0-9]/,_0x3f0f70=_0x39ca8f['toString'](),_0x4ea313=_0x5d3c34['toString']();if(_0x5a4d10['test'](_0x3f0f70[0x0])||_0x5a4d10['test'](_0x4ea313[0x0])){if(_0x3f0f70>_0x4ea313)return 0x1;else return _0x3f0f70<_0x4ea313?-0x1:0x0;}else return _0x3f0f70['localeCompare'](_0x4ea313);});for(const _0x2869d3 of _0x540782){const _0x4c9f6b=_0x392f99[_0x2869d3],_0x49a1ea=_0x539a5b?'<'+this['dxfLayersArray'][_0x3ada48]['modelId']+'>\x20'+_0x2869d3:_0x2869d3,_0x3a27d8=this['convertDecimalToHex'](_0x4c9f6b['color']),_0x25b790=this['generateListItem'](_0x49a1ea,_0x4c9f6b['visible'],_0x3a27d8);_0x2a07b2+=_0x25b790;}}}this['layerList']&&(this['layerList']['innerHTML']=_0x2a07b2);const _0x4f8f7d=(_0x52f310=this['content'])===null||_0x52f310===void 0x0?void 0x0:_0x52f310['querySelectorAll']('input[type=checkbox]');this['checkboxes']=[]['slice']['call'](_0x4f8f7d,0x0),this['checkboxes']['forEach'](_0x4caa75=>{_0x4caa75['addEventListener']('change',()=>{this['checkboxHandler'](_0x4caa75);});});}['generateListItem'](_0x593d13,_0xd355e0,_0x47f34f){const _0x50f61a=_0x47f34f?'background-color:\x20'+_0x47f34f:'opacity:\x200.1',_0x5d667d='\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22layer-list-item\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20type=\x22checkbox\x22\x20value=\x22'+_0x593d13+'\x22\x20'+(_0xd355e0?'checked':'')+'\x20class=\x22checkbox\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22item-color\x22\x20style=\x22'+_0x50f61a+'\x22></div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22item-layer-name\x22\x20title=\x22'+_0x593d13+'\x22>'+_0x593d13+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20';return _0x5d667d;}['checkboxHandler'](_0x1155b2){var _0x5456e2;if(!this['dxfLayersArray']||!this['checkboxes'])return;const _0x39a3b1=this['viewer'];if(_0x1155b2['id']==='toggleAllLayers'){for(let _0x21cbfd=0x0;_0x21cbfd<this['dxfLayersArray']['length'];++_0x21cbfd){const _0x15da98=this['dxfLayersArray'][_0x21cbfd]['modelId'],_0x5ee0d5=this['dxfLayersArray'][_0x21cbfd]['layers'];Object['keys'](_0x5ee0d5)['forEach'](_0x43e084=>{_0x39a3b1['setLayerVisibility'](_0x43e084,_0x1155b2['checked'],_0x15da98);});}(_0x5456e2=this['checkboxes'])===null||_0x5456e2===void 0x0?void 0x0:_0x5456e2['forEach'](_0x17c512=>_0x17c512['checked']=_0x1155b2['checked']);return;}let _0x116a6e='',_0x4660b8=_0x1155b2['value'];const _0xdb22c8=_0x4660b8['indexOf']('>');_0xdb22c8!==-0x1&&(_0x116a6e=_0x4660b8['slice'](0x1,_0xdb22c8),_0x4660b8=_0x4660b8['slice'](_0xdb22c8+0x2)),!_0x116a6e&&(_0x116a6e=this['dxfLayersArray'][0x0]['modelId']),_0x39a3b1['setLayerVisibility'](_0x4660b8,_0x1155b2['checked'],_0x116a6e);}['updatePage'](){if(!this['dxfLayersArray'])return;const _0x1707bd=this['viewer'],_0x17ec2e=_0x1707bd['getLayers']();if(_0x17ec2e['length']===this['dxfLayersArray']['length'])return;this['dxfLayersArray']=_0x17ec2e,this['addContent'](),this['updateHeaderText']();}['updateHeaderText'](){if(!this['dxfLayersArray']||!this['basePanel'])return;let _0x1850c4=0x0;for(let _0x404aa0=0x0;_0x404aa0<this['dxfLayersArray']['length'];++_0x404aa0){const _0x18fe23=this['dxfLayersArray'][_0x404aa0]['layers'];_0x1850c4+=Object['keys'](_0x18fe23)['length'];}this['basePanel']['setTitle']('Layers\x20(count:\x20'+_0x1850c4+')');}['convertDecimalToHex'](_0xbfe7ee){if(_0xbfe7ee===undefined)return undefined;const _0x560407=_0xbfe7ee['toString'](0x10);return '#'+_0x560407['padStart'](0x6,'0');}}LayerManagerPlugin['DEFAULT_ID']='LayerManagerPlugin';
|
|
107
|
+
|
|
108
|
+
var css_248z$9 = ".export-plugin{left:50%;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-bottom:5px}.export-plugin .content .export li{list-style:none;margin:2px;padding:8px;vertical-align:text-top}.export-plugin .content .export li:hover{background:linear-gradient(90deg,#ebebff,rgba(235,235,255,0))}.export-plugin .content .export span,.export-plugin .content label{margin-right:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:50%}.export-plugin .content .export select{vertical-align:middle;width:45%}.export-plugin .content .foot{background:#fff;box-shadow:0 -2px 8px rgba(0,0,0,.04);flex-shrink:0;padding:10px;text-align:right;width:100%}";
|
|
109
|
+
styleInject(css_248z$9);
|
|
110
|
+
|
|
111
|
+
var ExportFormats;(function(_0x2c2481){_0x2c2481['Glb']='glb',_0x2c2481['Gltf']='gltf',_0x2c2481['Obj']='obj',_0x2c2481['Stl']='stl',_0x2c2481['Ply']='ply';}(ExportFormats||(ExportFormats={})));const DefaultGltfExportOptions={'trs':![],'binary':!![],'embedImages':!![],'onlyVisible':!![],'includeCustomExtensions':!![]};class ExportPlugin extends Plugin{constructor(_0x4cbd31,_0x59ba5e){const _0x3c1b7b=(_0x59ba5e===null||_0x59ba5e===void 0x0?void 0x0:_0x59ba5e['id'])||ExportPlugin['DEFAULT_ID'];super(_0x4cbd31,{'id':_0x3c1b7b}),this['saveArrayBufferAsFile']=(_0x5aea85,_0x13cab2)=>{this['saveBlobAsFile'](new Blob([_0x5aea85],{'type':'application/octet-stream'}),_0x13cab2);},this['cfg']=_0x59ba5e||{'id':_0x3c1b7b},this['viewer3d']=_0x4cbd31;}['exportGltf'](_0x1a9ed6,_0x512384=DefaultGltfExportOptions,_0xdb1754=null){this['viewer3d']['clearSelection']();let _0x5ae49d=[];if(_0xdb1754)_0x5ae49d=_0xdb1754;else {const _0x15d7b2=this['viewer']['getSceneManager']()['getModelsRoot']();_0x5ae49d=_0x15d7b2['children'];}const _0x92f9a2=new THREEAddons['GLTFExporter']();_0x92f9a2['parse'](_0x5ae49d,_0x39634c=>{if(_0x39634c instanceof ArrayBuffer)this['saveArrayBufferAsFile'](_0x39634c,(_0x1a9ed6||'scene')+'.glb');else {const _0x2050d5=JSON['stringify'](_0x39634c,null,0x2);console['log'](_0x2050d5),this['saveStringAsFile'](_0x2050d5,(_0x1a9ed6||'scene')+'.gltf');}},_0x5a6e6a=>{console['error'](_0x5a6e6a);},_0x512384);}['exportObj'](_0x1dd5c6,_0x15432d=null){if(!THREEAddons['OBJExporter']){console['error']('OBJExporter\x20is\x20not\x20available\x20in\x20THREEAddons.');return;}this['viewer3d']['clearSelection']();let _0x46125b=_0x15432d;if(!_0x46125b){_0x46125b=new THREE['Group']();const _0x1ac2ae=this['viewer']['getSceneManager']()['getModelsRoot']();_0x1ac2ae['children']['forEach'](_0x252927=>_0x46125b===null||_0x46125b===void 0x0?void 0x0:_0x46125b['add'](_0x252927['clone'](!![])));}const _0x28095d=new THREEAddons['OBJExporter'](),_0x4a5571=_0x28095d['parse'](_0x46125b);typeof _0x4a5571==='string'?this['saveStringAsFile'](_0x4a5571,(_0x1dd5c6||'scene')+'.obj'):console['error']('Unexpected\x20OBJ\x20export\x20result\x20type.');}['exportStl'](_0x9cf8bd,_0x222212=null){if(!THREEAddons['STLExporter']){console['error']('STLExporter\x20is\x20not\x20available\x20in\x20THREEAddons.');return;}this['viewer3d']['clearSelection']();let _0x41fb99=_0x222212;if(!_0x41fb99){_0x41fb99=new THREE['Group']();const _0x44d767=this['viewer']['getSceneManager']()['getModelsRoot']();_0x44d767['children']['forEach'](_0x4499e0=>_0x41fb99===null||_0x41fb99===void 0x0?void 0x0:_0x41fb99['add'](_0x4499e0['clone'](!![])));}const _0x3a49d5=new THREEAddons['STLExporter'](),_0x45b97a=_0x3a49d5['parse'](_0x41fb99);if(typeof _0x45b97a==='string'||_0x45b97a instanceof ArrayBuffer){const _0x4c59e9=typeof _0x45b97a==='string'?new Blob([_0x45b97a],{'type':'model/stl'}):new Blob([_0x45b97a],{'type':'application/octet-stream'});this['saveBlobAsFile'](_0x4c59e9,(_0x9cf8bd||'scene')+'.stl');}else console['error']('Unexpected\x20STL\x20export\x20result\x20type.');}['exportPly'](_0x2e8018,_0x4f0e16=!![],_0x453357=null){if(!THREEAddons['PLYExporter']){console['error']('PLYExporter\x20is\x20not\x20available\x20in\x20THREEAddons.');return;}this['viewer3d']['clearSelection']();let _0x2aa0b6=_0x453357;if(!_0x2aa0b6){_0x2aa0b6=new THREE['Group']();const _0x1b7a47=this['viewer']['getSceneManager']()['getModelsRoot']();_0x1b7a47['children']['forEach'](_0x5c463a=>_0x2aa0b6===null||_0x2aa0b6===void 0x0?void 0x0:_0x2aa0b6['add'](_0x5c463a['clone'](!![])));}const _0x1859ed=new THREEAddons['PLYExporter'](),_0x14e226=_0x1859ed['parse'](_0x2aa0b6,()=>{log['info']('PLY\x20export\x20completed.');},{'binary':_0x4f0e16});if(typeof _0x14e226==='string')this['saveStringAsFile'](_0x14e226,(_0x2e8018||'scene')+'.ply');else _0x14e226 instanceof ArrayBuffer?this['saveArrayBufferAsFile'](_0x14e226,(_0x2e8018||'scene')+'.ply'):console['error']('Unexpected\x20PLY\x20export\x20result\x20type.');}['showExportPanel'](_0x2ddfb0=ExportFormats['Glb'],_0xe6cb0f='scene',_0xeb2e8f=null){!this['basePanel']&&(this['basePanel']=new BasePanel({'container':this['viewer3d']['widgetContainer'],'title':'Export\x20Options','cssClass':'export-plugin','viewportContainer':this['viewer3d']['viewerContainer']}));const _0x347b3c=this['basePanel']['content'];let _0x3aec45='';Object['values'](ExportFormats)['forEach'](_0x2305df=>{_0x3aec45+='<option\x20value=\x22'+_0x2305df+'\x22\x20'+(_0x2305df===_0x2ddfb0?'selected':'')+'>'+_0x2305df['toUpperCase']()+'</option>';}),_0x347b3c['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<ul\x20class=\x22export\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<label\x20for=\x22targetFormat\x22>Format</label>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<select\x20id=\x22targetFormat\x22>\x20'+_0x3aec45+'\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<input\x20id=\x22embedTextures\x22\x20type=\x22checkbox\x22}>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20for=\x22embedTextures\x22>Embed\x20Textures</label>\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<input\x20id=\x22embedGeometry\x22\x20type=\x22checkbox\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20for=\x22embedGeometry\x22>Embed\x20Geometry</label>\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<input\x20id=\x22useTrsTransforms\x22\x20type=\x22checkbox\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20for=\x22useTrsTransforms\x22>Use\x20TRS\x20Transforms</label>\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<input\x20id=\x22visibleObjects\x22\x20type=\x22checkbox\x22\x20checked>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20for=\x22visibleObjects\x22>Visible\x20Objects</label>\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<input\x20id=\x22customExtensions\x22\x20type=\x22checkbox\x22\x20checked>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20for=\x22customExtensions\x22>Custom\x20Extensions</label>\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><!--\x20for\x20ply\x20-->\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20id=\x22binary\x22\x20type=\x22checkbox\x22\x20checked>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20for=\x22binary\x22>Binary</label>\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<label\x20for=\x22filename\x22>Filename</label>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20id=\x22filename\x22\x20type=\x22text\x22\x20value=\x22'+_0xe6cb0f+'\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</ul>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22foot\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20id=\x22exportBtn\x22\x20type=\x22button\x22\x20class=\x22export-btn\x22\x20value=\x22Export\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20';const _0x41949b=_0x347b3c['querySelector']('#targetFormat');_0x41949b['addEventListener']('change',()=>_0x2a4432());const _0x5d046b=_0x347b3c['querySelector']('#exportBtn');_0x5d046b['onclick']=()=>{var _0x1b21a7;const _0x2a1147=_0x347b3c['querySelector']('#targetFormat'),_0x10d80d=_0x2a1147['value'],_0x302dc1=_0x347b3c['querySelector']('#filename'),_0x483650=_0x302dc1['value']['replace'](/\.[^/.]+$/,''),_0x2db49c=_0x483650||'scene';if(_0x10d80d===ExportFormats['Glb']||_0x10d80d===ExportFormats['Gltf']){const _0x3b76a3=_0x347b3c['querySelector']('#embedTextures'),_0x9e5d41=_0x347b3c['querySelector']('#useTrsTransforms'),_0xbe69bd=_0x347b3c['querySelector']('#visibleObjects'),_0x2e3a0d=_0x347b3c['querySelector']('#customExtensions'),_0x10b7e3={'trs':_0x9e5d41['checked'],'binary':_0x10d80d===ExportFormats['Glb'],'embedImages':_0x3b76a3['checked'],'onlyVisible':_0xbe69bd['checked'],'includeCustomExtensions':_0x2e3a0d['checked']};this['exportGltf'](_0x2db49c,_0x10b7e3,_0xeb2e8f);}else {if(_0x10d80d===ExportFormats['Obj'])this['exportObj'](_0x2db49c,_0xeb2e8f);else {if(_0x10d80d===ExportFormats['Stl'])this['exportStl'](_0x2db49c,_0xeb2e8f);else {if(_0x10d80d===ExportFormats['Ply']){const _0x2bf8a9=_0x347b3c['querySelector']('#binary');this['exportPly'](_0x2db49c,_0x2bf8a9['checked'],_0xeb2e8f);}}}}(_0x1b21a7=this['basePanel'])===null||_0x1b21a7===void 0x0?void 0x0:_0x1b21a7['setVisible'](![]);};const _0x2a4432=()=>{const _0x39b7fc=_0x347b3c['querySelector']('#targetFormat'),_0x4e0a09=_0x39b7fc['value'],_0x762194=_0x4e0a09===ExportFormats['Glb'],_0x3e1b1d=_0x4e0a09===ExportFormats['Gltf'],_0x4a8ffc=_0x762194||_0x3e1b1d?'block':'none',_0x74737c=_0x347b3c['querySelector']('#embedTextures'),_0x1a8d13=_0x347b3c['querySelector']('#embedGeometry'),_0x51eebd=_0x347b3c['querySelector']('#useTrsTransforms'),_0x17864e=_0x347b3c['querySelector']('#visibleObjects'),_0x5a557b=_0x347b3c['querySelector']('#customExtensions'),_0x219031=_0x347b3c['querySelector']('#binary');_0x74737c['parentElement']['style']['display']=_0x4a8ffc,_0x1a8d13['parentElement']['style']['display']=_0x4a8ffc,_0x51eebd['parentElement']['style']['display']=_0x4a8ffc,_0x17864e['parentElement']['style']['display']=_0x4a8ffc,_0x5a557b['parentElement']['style']['display']=_0x4a8ffc,_0x219031['parentElement']['style']['display']=_0x4e0a09===ExportFormats['Ply']?'block':'none';if(_0x4e0a09===ExportFormats['Glb'])_0x74737c['checked']=!![],_0x1a8d13['checked']=!![],_0x74737c['disabled']=!![],_0x1a8d13['disabled']=!![];else _0x4e0a09===ExportFormats['Gltf']&&(_0x74737c['checked']=![],_0x1a8d13['checked']=![],_0x74737c['disabled']=![],_0x1a8d13['disabled']=![]);const _0x438d9e=_0x347b3c['querySelector']('#filename');_0x438d9e['value']=_0xe6cb0f+'.'+_0x4e0a09['toLowerCase']();};_0x2a4432(),this['basePanel']['setVisible'](!![]);}['saveBlobAsFile'](_0x12f0d4,_0x10066a){const _0x2a4ae2=document['createElement']('a');_0x2a4ae2['style']['display']='none',document['body']['appendChild'](_0x2a4ae2),_0x2a4ae2['href']=URL['createObjectURL'](_0x12f0d4),_0x2a4ae2['download']=_0x10066a,_0x2a4ae2['click']();}['saveStringAsFile'](_0x2403c9,_0x4b07e7){this['saveBlobAsFile'](new Blob([_0x2403c9],{'type':'text/plain'}),_0x4b07e7);}['destroy'](){super['destroy']();}}ExportPlugin['DEFAULT_ID']='ExportPlugin';
|
|
112
|
+
|
|
113
|
+
const DefaultBlur=0x5,DefaultDarkness=0.8,DefaultUpdateDelay=0x7d0;class GroundShadowPlugin extends Plugin{constructor(_0x368ba2,_0x32db72){const _0x339677=(_0x32db72===null||_0x32db72===void 0x0?void 0x0:_0x32db72['id'])||GroundShadowPlugin['DEFAULT_ID'];super(_0x368ba2,{'id':_0x339677}),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 _0x5f36aa,_0x2b3a6b,_0x1be676,_0x22e6ee,_0x34755d;this['shouldRender']&&(this['render'](),(_0x5f36aa=this['shadowCamera'])===null||_0x5f36aa===void 0x0?void 0x0:_0x5f36aa['removeFromParent'](),this['shadowCamera']=undefined,(_0x2b3a6b=this['blurPlane'])===null||_0x2b3a6b===void 0x0?void 0x0:_0x2b3a6b['removeFromParent'](),this['blurPlane']=undefined,(_0x1be676=this['depthMaterial'])===null||_0x1be676===void 0x0?void 0x0:_0x1be676['dispose'](),this['depthMaterial']=undefined,(_0x22e6ee=this['horizontalBlurMaterial'])===null||_0x22e6ee===void 0x0?void 0x0:_0x22e6ee['dispose'](),this['horizontalBlurMaterial']=undefined,(_0x34755d=this['verticalBlurMaterial'])===null||_0x34755d===void 0x0?void 0x0:_0x34755d['dispose'](),this['verticalBlurMaterial']=undefined,this['shouldRender']=![]);},this['cfg']=_0x32db72||{'id':_0x339677},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'](_0x100bf7){this['enabled']=_0x100bf7,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']=_0x2fd673=>{var _0x4a4444;_0x2fd673['uniforms']['darkness']=(_0x4a4444=this['depthMaterial'])===null||_0x4a4444===void 0x0?void 0x0:_0x4a4444['userData']['darkness'],_0x2fd673['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'+_0x2fd673['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 _0x68f14d=0x80;this['renderTarget']=new THREE['WebGLRenderTarget'](_0x68f14d,_0x68f14d),this['renderTarget']['texture']['generateMipmaps']=![],this['renderTargetBlur']=new THREE['WebGLRenderTarget'](_0x68f14d,_0x68f14d),this['renderTargetBlur']['texture']['generateMipmaps']=![];}['updateGroundShadow'](){var _0x5081ad,_0x454a0d,_0x4c9ab6;const _0x1ced0c=this['viewer']['getBBox'](),_0x444ea3=new THREE['Group']();_0x444ea3['name']='ground-shadow',ObjectUtils['disableLayerChannels'](_0x444ea3,[LayerForSelectableObjects,LayerForSnapableObjects]),(_0x5081ad=this['scene'])===null||_0x5081ad===void 0x0?void 0x0:_0x5081ad['add'](_0x444ea3);const {min:_0x209a4b,max:_0x1dc98c}=_0x1ced0c,_0x228606=new THREE['Vector3']();_0x1ced0c['getSize'](_0x228606),_0x228606['multiplyScalar'](0x2);const _0x1375ba=new THREE['Vector3']();_0x1ced0c['getCenter'](_0x1375ba);const _0x2a312d=new THREE['PlaneGeometry'](_0x228606['x'],_0x228606['z'])['rotateX'](Math['PI']/0x2),_0x42f6e6=new THREE['MeshBasicMaterial']({'map':(_0x454a0d=this['renderTarget'])===null||_0x454a0d===void 0x0?void 0x0:_0x454a0d['texture'],'transparent':!![],'depthWrite':![]}),_0x5e2e5f=new THREE['Mesh'](_0x2a312d,_0x42f6e6);_0x5e2e5f['renderOrder']=0x1,_0x5e2e5f['position']['set'](_0x1375ba['x'],_0x209a4b['y'],_0x1375ba['z']),_0x5e2e5f['scale']['y']=-0x1,_0x444ea3===null||_0x444ea3===void 0x0?void 0x0:_0x444ea3['add'](_0x5e2e5f),this['shadowCamera']=new THREE['OrthographicCamera'](-_0x228606['x']/0x2,_0x228606['x']/0x2,_0x228606['z']/0x2,-_0x228606['z']/0x2,-_0x228606['y']/0x2,_0x228606['y']),this['shadowCamera']['position']['set'](_0x1375ba['x'],_0x209a4b['y'],_0x1375ba['z']),this['shadowCamera']['lookAt'](_0x1375ba['x'],_0x1dc98c['y'],_0x1375ba['z']),this['shadowCamera']['updateProjectionMatrix'](),_0x444ea3['add'](this['shadowCamera']);const _0x11432f=new THREE['Mesh'](_0x2a312d);_0x11432f['position']['set'](_0x1375ba['x'],_0x209a4b['y'],_0x1375ba['z']),_0x11432f['visible']=![],_0x444ea3['add'](_0x11432f),this['blurPlane']=_0x11432f,(_0x4c9ab6=this['shadowGroup'])===null||_0x4c9ab6===void 0x0?void 0x0:_0x4c9ab6['removeFromParent'](),this['shadowGroup']=_0x444ea3,this['shadowGroup']['updateWorldMatrix'](!![],!![]);}['blurShadow'](_0x7c785f){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']=_0x7c785f*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']=_0x7c785f*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 _0x1011fc=this['scene']['background'];this['scene']['background']=null,this['scene']['overrideMaterial']=this['depthMaterial'];const _0x2db85d=this['renderer']['getClearAlpha']();this['renderer']['setClearAlpha'](0x0),this['renderer']['setRenderTarget'](this['renderTarget']),this['renderer']['render'](this['scene'],this['shadowCamera']),this['scene']['overrideMaterial']=null;const _0x1320c7=this['cfg']['blur']||0x5;this['blurShadow'](_0x1320c7),this['blurShadow'](_0x1320c7*0.4),this['renderer']['setRenderTarget'](null),this['renderer']['setClearAlpha'](_0x2db85d),this['scene']['background']=_0x1011fc;}['destroy'](){var _0x3bbdb2,_0x289cfc,_0x1fc57d,_0x101935,_0x457e0c,_0x42a894,_0x166777;super['destroy'](),this['viewer']['removeEventListener'](ViewerEvent['ModelLoad'],this['onModelUpdate']),this['viewer']['removeEventListener'](ViewerEvent['BeforeRender'],this['onShadowRender']),(_0x3bbdb2=this['shadowCamera'])===null||_0x3bbdb2===void 0x0?void 0x0:_0x3bbdb2['removeFromParent'](),this['shadowCamera']=undefined,(_0x289cfc=this['blurPlane'])===null||_0x289cfc===void 0x0?void 0x0:_0x289cfc['removeFromParent'](),this['blurPlane']=undefined,(_0x1fc57d=this['depthMaterial'])===null||_0x1fc57d===void 0x0?void 0x0:_0x1fc57d['dispose'](),this['depthMaterial']=undefined,(_0x101935=this['horizontalBlurMaterial'])===null||_0x101935===void 0x0?void 0x0:_0x101935['dispose'](),this['horizontalBlurMaterial']=undefined,(_0x457e0c=this['verticalBlurMaterial'])===null||_0x457e0c===void 0x0?void 0x0:_0x457e0c['dispose'](),this['verticalBlurMaterial']=undefined,(_0x42a894=this['renderTarget'])===null||_0x42a894===void 0x0?void 0x0:_0x42a894['dispose'](),this['renderTarget']=undefined,(_0x166777=this['renderTargetBlur'])===null||_0x166777===void 0x0?void 0x0:_0x166777['dispose'](),this['renderTargetBlur']=undefined;}}GroundShadowPlugin['DEFAULT_ID']='GroundShadowPlugin';
|
|
114
|
+
|
|
115
|
+
class HotpointPlugin extends Plugin{constructor(_0x3cc11e){super(_0x3cc11e,{'id':'HotpointPlugin'}),this['onAfterRender']=()=>{var _0x98016;const _0x15a369=this['viewer']['scene'],_0x2d62c5=this['viewer']['camera'];if(!_0x15a369||!_0x2d62c5||!this['hotpointRoot']||this['hotpointRoot']['children']['length']===0x0)return;(_0x98016=this['css2dRenderer'])===null||_0x98016===void 0x0?void 0x0:_0x98016['render'](_0x15a369,_0x2d62c5);},this['css2dRenderer']=this['viewer']['getCssRender'](),this['viewer']['addEventListener'](ViewerEvent['AfterRender'],this['onAfterRender']);}['add'](_0x4e20aa){var _0x25ba90;const _0x21e3f6=this['has'](_0x4e20aa['hotpointId']);if(_0x21e3f6){log['warn']('[Hotpoint]\x20Hotpoint\x20with\x20id\x20\x27'+_0x4e20aa['hotpointId']+'\x27\x20already\x20exist!');return;}const _0x3f41ef=_0x4e20aa['anchorPosition'],_0x5c119f=CSS2DObjectUtils['createHotpoint'](_0x4e20aa['html']);_0x5c119f['position']['set'](_0x3f41ef[0x0]||0x0,_0x3f41ef[0x1]||0x0,_0x3f41ef[0x2]||0x0),_0x5c119f['visible']=_0x4e20aa['visible']!==![],_0x5c119f['userData']['hotpoint']=_0x4e20aa,!this['hotpointRoot']&&(this['hotpointRoot']=new THREE['Group'](),this['hotpointRoot']['matrixAutoUpdate']=MatrixAutoUpdate,this['hotpointRoot']['matrixWorldAutoUpdate']=![],this['hotpointRoot']['name']='HotpointRoot',(_0x25ba90=this['viewer']['scene'])===null||_0x25ba90===void 0x0?void 0x0:_0x25ba90['add'](this['hotpointRoot'])),this['hotpointRoot']['add'](_0x5c119f),_0x5c119f['updateWorldMatrix'](![],![]),this['viewer']['enableRender']();}['remove'](_0x58b623){var _0x537e08,_0x4b0429;const _0x579684=((_0x537e08=this['hotpointRoot'])===null||_0x537e08===void 0x0?void 0x0:_0x537e08['children'])||[];for(let _0x4ff6a3=0x0;_0x4ff6a3<_0x579684['length'];++_0x4ff6a3){const _0x1bcfb=_0x579684[_0x4ff6a3];((_0x4b0429=_0x1bcfb['userData']['hotpoint'])===null||_0x4b0429===void 0x0?void 0x0:_0x4b0429['hotpointId'])===_0x58b623&&_0x1bcfb['removeFromParent']();}}['clear'](){var _0x4af890;(_0x4af890=this['hotpointRoot'])===null||_0x4af890===void 0x0?void 0x0:_0x4af890['clear']();}['has'](_0x7f82fa){return !!this['findHotpointObject'](_0x7f82fa);}['move'](_0x1cdbfe,_0x3e36ec){const _0x29c58c=this['findHotpointObject'](_0x1cdbfe);if(_0x29c58c){const _0x190484=_0x3e36ec['z']||0x0;_0x29c58c['position']['set'](_0x3e36ec['x'],_0x3e36ec['y'],_0x190484),_0x29c58c['updateWorldMatrix'](![],![]),this['viewer']['enableRender']();}}['setVisible'](_0x5d1ab9,_0x41eff1){const _0x4b757b=this['findHotpointObject'](_0x5d1ab9);_0x4b757b&&(_0x4b757b['visible']=_0x41eff1);}['findHotpointObject'](_0xf5ec47){var _0x45f639;const _0x33c5d7=((_0x45f639=this['hotpointRoot'])===null||_0x45f639===void 0x0?void 0x0:_0x45f639['children'])||[],_0x1c8f5c=_0x33c5d7['find'](_0x3ead13=>{var _0x404718;return ((_0x404718=_0x3ead13['userData']['hotpoint'])===null||_0x404718===void 0x0?void 0x0:_0x404718['hotpointId'])===_0xf5ec47;});return _0x1c8f5c;}['flyToHotpoint'](_0x118e8a){const _0x103d3e=this['findHotpointObject'](_0x118e8a);if(!_0x103d3e)return;_0x103d3e['updateWorldMatrix'](![],![]);const _0x55a7bf=_0x103d3e['position'],_0x4d772d=this['viewer']['camera']['position'],_0x26a867=new THREE['Vector3'](_0x55a7bf['x'],_0x55a7bf['y'],_0x4d772d['z']),_0x5cc44c=new THREE['Vector3'](_0x55a7bf['x'],_0x55a7bf['y'],0x0);this['viewer']['flyTo'](_0x26a867,_0x5cc44c);}['destroy'](){super['destroy'](),this['clear']();}}
|
|
116
|
+
|
|
117
|
+
var css_248z$8 = ".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%}";
|
|
118
|
+
styleInject(css_248z$8);
|
|
119
|
+
|
|
120
|
+
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
121
|
+
|
|
122
|
+
function getDefaultExportFromCjs (x) {
|
|
123
|
+
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
var clipper = {exports: {}};
|
|
127
|
+
|
|
128
|
+
(function(_0x142876){(function(){var _0x1de203={};_0x1de203['version']='6.4.2.2',_0x1de203['use_lines']=!![],_0x1de203['use_xyz']=![];var _0x390d32=![];if(_0x142876['exports'])_0x142876['exports']=_0x1de203,_0x390d32=!![];else {if(typeof document!=='undefined')window['ClipperLib']=_0x1de203;else self['ClipperLib']=_0x1de203;}var _0x2261db;if(!_0x390d32){var _0x400c24=navigator['userAgent']['toString']()['toLowerCase']();_0x2261db=navigator['appName'];}else {var _0x400c24='chrome';_0x2261db='Netscape';}var _0x5b454d={};if(_0x400c24['indexOf']('chrome')!=-0x1&&_0x400c24['indexOf']('chromium')==-0x1)_0x5b454d['chrome']=0x1;else _0x5b454d['chrome']=0x0;if(_0x400c24['indexOf']('chromium')!=-0x1)_0x5b454d['chromium']=0x1;else _0x5b454d['chromium']=0x0;if(_0x400c24['indexOf']('safari')!=-0x1&&_0x400c24['indexOf']('chrome')==-0x1&&_0x400c24['indexOf']('chromium')==-0x1)_0x5b454d['safari']=0x1;else _0x5b454d['safari']=0x0;if(_0x400c24['indexOf']('firefox')!=-0x1)_0x5b454d['firefox']=0x1;else _0x5b454d['firefox']=0x0;if(_0x400c24['indexOf']('firefox/17')!=-0x1)_0x5b454d['firefox17']=0x1;else _0x5b454d['firefox17']=0x0;if(_0x400c24['indexOf']('firefox/15')!=-0x1)_0x5b454d['firefox15']=0x1;else _0x5b454d['firefox15']=0x0;if(_0x400c24['indexOf']('firefox/3')!=-0x1)_0x5b454d['firefox3']=0x1;else _0x5b454d['firefox3']=0x0;if(_0x400c24['indexOf']('opera')!=-0x1)_0x5b454d['opera']=0x1;else _0x5b454d['opera']=0x0;if(_0x400c24['indexOf']('msie\x2010')!=-0x1)_0x5b454d['msie10']=0x1;else _0x5b454d['msie10']=0x0;if(_0x400c24['indexOf']('msie\x209')!=-0x1)_0x5b454d['msie9']=0x1;else _0x5b454d['msie9']=0x0;if(_0x400c24['indexOf']('msie\x208')!=-0x1)_0x5b454d['msie8']=0x1;else _0x5b454d['msie8']=0x0;if(_0x400c24['indexOf']('msie\x207')!=-0x1)_0x5b454d['msie7']=0x1;else _0x5b454d['msie7']=0x0;if(_0x400c24['indexOf']('msie\x20')!=-0x1)_0x5b454d['msie']=0x1;else _0x5b454d['msie']=0x0;_0x1de203['biginteger_used']=null;var _0x5be3f6;function _0x4bd548(_0x25e5f1,_0x4ff900,_0x49b474){_0x1de203['biginteger_used']=0x1;if(_0x25e5f1!=null){if('number'==typeof _0x25e5f1&&'undefined'==typeof _0x4ff900)this['fromInt'](_0x25e5f1);else {if('number'==typeof _0x25e5f1)this['fromNumber'](_0x25e5f1,_0x4ff900,_0x49b474);else {if(_0x4ff900==null&&'string'!=typeof _0x25e5f1)this['fromString'](_0x25e5f1,0x100);else this['fromString'](_0x25e5f1,_0x4ff900);}}}}function _0x1d5c6c(){return new _0x4bd548(null,undefined,undefined);}function _0x54fd83(_0x7f02c3,_0x528f2b,_0x1c57e4,_0x22d8de,_0x3f5490,_0x542d85){while(--_0x542d85>=0x0){var _0x5c9bb9=_0x528f2b*this[_0x7f02c3++]+_0x1c57e4[_0x22d8de]+_0x3f5490;_0x3f5490=Math['floor'](_0x5c9bb9/0x4000000),_0x1c57e4[_0x22d8de++]=_0x5c9bb9&0x3ffffff;}return _0x3f5490;}function _0x194d32(_0xb950f,_0xd995f4,_0x58f1a3,_0x4b7df8,_0x3ebf8c,_0xf999f7){var _0x5860f9=_0xd995f4&0x7fff,_0x28f26a=_0xd995f4>>0xf;while(--_0xf999f7>=0x0){var _0x586446=this[_0xb950f]&0x7fff,_0x1923ea=this[_0xb950f++]>>0xf,_0x4d0ee9=_0x28f26a*_0x586446+_0x1923ea*_0x5860f9;_0x586446=_0x5860f9*_0x586446+((_0x4d0ee9&0x7fff)<<0xf)+_0x58f1a3[_0x4b7df8]+(_0x3ebf8c&0x3fffffff),_0x3ebf8c=(_0x586446>>>0x1e)+(_0x4d0ee9>>>0xf)+_0x28f26a*_0x1923ea+(_0x3ebf8c>>>0x1e),_0x58f1a3[_0x4b7df8++]=_0x586446&0x3fffffff;}return _0x3ebf8c;}function _0x373aac(_0x40bb3d,_0x5d0e28,_0xe4f51a,_0x28b64f,_0x413e20,_0x5dc4e4){var _0x2fabc6=_0x5d0e28&0x3fff,_0x197a21=_0x5d0e28>>0xe;while(--_0x5dc4e4>=0x0){var _0x3d734b=this[_0x40bb3d]&0x3fff,_0x34b7e7=this[_0x40bb3d++]>>0xe,_0x59690a=_0x197a21*_0x3d734b+_0x34b7e7*_0x2fabc6;_0x3d734b=_0x2fabc6*_0x3d734b+((_0x59690a&0x3fff)<<0xe)+_0xe4f51a[_0x28b64f]+_0x413e20,_0x413e20=(_0x3d734b>>0x1c)+(_0x59690a>>0xe)+_0x197a21*_0x34b7e7,_0xe4f51a[_0x28b64f++]=_0x3d734b&0xfffffff;}return _0x413e20;}if(_0x2261db=='Microsoft\x20Internet\x20Explorer')_0x4bd548['prototype']['am']=_0x194d32,_0x5be3f6=0x1e;else _0x2261db!='Netscape'?(_0x4bd548['prototype']['am']=_0x54fd83,_0x5be3f6=0x1a):(_0x4bd548['prototype']['am']=_0x373aac,_0x5be3f6=0x1c);_0x4bd548['prototype']['DB']=_0x5be3f6,_0x4bd548['prototype']['DM']=(0x1<<_0x5be3f6)-0x1,_0x4bd548['prototype']['DV']=0x1<<_0x5be3f6;var _0x41d607=0x34;_0x4bd548['prototype']['FV']=Math['pow'](0x2,_0x41d607),_0x4bd548['prototype']['F1']=_0x41d607-_0x5be3f6,_0x4bd548['prototype']['F2']=0x2*_0x5be3f6-_0x41d607;var _0x24311b='0123456789abcdefghijklmnopqrstuvwxyz',_0x3bea12=new Array(),_0x1b8a7e,_0x3fd1f7;_0x1b8a7e='0'['charCodeAt'](0x0);for(_0x3fd1f7=0x0;_0x3fd1f7<=0x9;++_0x3fd1f7)_0x3bea12[_0x1b8a7e++]=_0x3fd1f7;_0x1b8a7e='a'['charCodeAt'](0x0);for(_0x3fd1f7=0xa;_0x3fd1f7<0x24;++_0x3fd1f7)_0x3bea12[_0x1b8a7e++]=_0x3fd1f7;_0x1b8a7e='A'['charCodeAt'](0x0);for(_0x3fd1f7=0xa;_0x3fd1f7<0x24;++_0x3fd1f7)_0x3bea12[_0x1b8a7e++]=_0x3fd1f7;function _0x54cf97(_0x30111a){return _0x24311b['charAt'](_0x30111a);}function _0x59f91b(_0xf41332,_0x55a3ee){var _0x33cc9a=_0x3bea12[_0xf41332['charCodeAt'](_0x55a3ee)];return _0x33cc9a==null?-0x1:_0x33cc9a;}function _0x1abf19(_0x12b7a6){for(var _0x470501=this['t']-0x1;_0x470501>=0x0;--_0x470501)_0x12b7a6[_0x470501]=this[_0x470501];_0x12b7a6['t']=this['t'],_0x12b7a6['s']=this['s'];}function _0x5075c6(_0x56c804){this['t']=0x1,this['s']=_0x56c804<0x0?-0x1:0x0;if(_0x56c804>0x0)this[0x0]=_0x56c804;else {if(_0x56c804<-0x1)this[0x0]=_0x56c804+this['DV'];else this['t']=0x0;}}function _0x3251b6(_0x14fe01){var _0x1d82cf=_0x1d5c6c();return _0x1d82cf['fromInt'](_0x14fe01),_0x1d82cf;}function _0x27f22b(_0x48e670,_0x564f1f){var _0x5d0a6c;if(_0x564f1f==0x10)_0x5d0a6c=0x4;else {if(_0x564f1f==0x8)_0x5d0a6c=0x3;else {if(_0x564f1f==0x100)_0x5d0a6c=0x8;else {if(_0x564f1f==0x2)_0x5d0a6c=0x1;else {if(_0x564f1f==0x20)_0x5d0a6c=0x5;else {if(_0x564f1f==0x4)_0x5d0a6c=0x2;else {this['fromRadix'](_0x48e670,_0x564f1f);return;}}}}}}this['t']=0x0,this['s']=0x0;var _0x3d6a21=_0x48e670['length'],_0x5d959f=![],_0x474732=0x0;while(--_0x3d6a21>=0x0){var _0x205337=_0x5d0a6c==0x8?_0x48e670[_0x3d6a21]&0xff:_0x59f91b(_0x48e670,_0x3d6a21);if(_0x205337<0x0){if(_0x48e670['charAt'](_0x3d6a21)=='-')_0x5d959f=!![];continue;}_0x5d959f=![];if(_0x474732==0x0)this[this['t']++]=_0x205337;else {if(_0x474732+_0x5d0a6c>this['DB'])this[this['t']-0x1]|=(_0x205337&(0x1<<this['DB']-_0x474732)-0x1)<<_0x474732,this[this['t']++]=_0x205337>>this['DB']-_0x474732;else this[this['t']-0x1]|=_0x205337<<_0x474732;}_0x474732+=_0x5d0a6c;if(_0x474732>=this['DB'])_0x474732-=this['DB'];}if(_0x5d0a6c==0x8&&(_0x48e670[0x0]&0x80)!=0x0){this['s']=-0x1;if(_0x474732>0x0)this[this['t']-0x1]|=(0x1<<this['DB']-_0x474732)-0x1<<_0x474732;}this['clamp']();if(_0x5d959f)_0x4bd548['ZERO']['subTo'](this,this);}function _0x148f96(){var _0x31b459=this['s']&this['DM'];while(this['t']>0x0&&this[this['t']-0x1]==_0x31b459)--this['t'];}function _0x59b2ea(_0x5bc2d5){if(this['s']<0x0)return '-'+this['negate']()['toString'](_0x5bc2d5);var _0x2584c1;if(_0x5bc2d5==0x10)_0x2584c1=0x4;else {if(_0x5bc2d5==0x8)_0x2584c1=0x3;else {if(_0x5bc2d5==0x2)_0x2584c1=0x1;else {if(_0x5bc2d5==0x20)_0x2584c1=0x5;else {if(_0x5bc2d5==0x4)_0x2584c1=0x2;else return this['toRadix'](_0x5bc2d5);}}}}var _0x3103f9=(0x1<<_0x2584c1)-0x1,_0xb1d4c1,_0x597b64=![],_0x2f6964='',_0x462400=this['t'],_0x99ae23=this['DB']-_0x462400*this['DB']%_0x2584c1;if(_0x462400-->0x0){_0x99ae23<this['DB']&&(_0xb1d4c1=this[_0x462400]>>_0x99ae23)>0x0&&(_0x597b64=!![],_0x2f6964=_0x54cf97(_0xb1d4c1));while(_0x462400>=0x0){_0x99ae23<_0x2584c1?(_0xb1d4c1=(this[_0x462400]&(0x1<<_0x99ae23)-0x1)<<_0x2584c1-_0x99ae23,_0xb1d4c1|=this[--_0x462400]>>(_0x99ae23+=this['DB']-_0x2584c1)):(_0xb1d4c1=this[_0x462400]>>(_0x99ae23-=_0x2584c1)&_0x3103f9,_0x99ae23<=0x0&&(_0x99ae23+=this['DB'],--_0x462400));if(_0xb1d4c1>0x0)_0x597b64=!![];if(_0x597b64)_0x2f6964+=_0x54cf97(_0xb1d4c1);}}return _0x597b64?_0x2f6964:'0';}function _0x18d8a8(){var _0x394f0d=_0x1d5c6c();return _0x4bd548['ZERO']['subTo'](this,_0x394f0d),_0x394f0d;}function _0x17e057(){return this['s']<0x0?this['negate']():this;}function _0x47d49a(_0x5ca809){var _0x10d4d9=this['s']-_0x5ca809['s'];if(_0x10d4d9!=0x0)return _0x10d4d9;var _0x52ae67=this['t'];_0x10d4d9=_0x52ae67-_0x5ca809['t'];if(_0x10d4d9!=0x0)return this['s']<0x0?-_0x10d4d9:_0x10d4d9;while(--_0x52ae67>=0x0)if((_0x10d4d9=this[_0x52ae67]-_0x5ca809[_0x52ae67])!=0x0)return _0x10d4d9;return 0x0;}function _0x3c6a56(_0x1f0225){var _0x16d839=0x1,_0x4123b9;return (_0x4123b9=_0x1f0225>>>0x10)!=0x0&&(_0x1f0225=_0x4123b9,_0x16d839+=0x10),(_0x4123b9=_0x1f0225>>0x8)!=0x0&&(_0x1f0225=_0x4123b9,_0x16d839+=0x8),(_0x4123b9=_0x1f0225>>0x4)!=0x0&&(_0x1f0225=_0x4123b9,_0x16d839+=0x4),(_0x4123b9=_0x1f0225>>0x2)!=0x0&&(_0x1f0225=_0x4123b9,_0x16d839+=0x2),(_0x4123b9=_0x1f0225>>0x1)!=0x0&&(_0x1f0225=_0x4123b9,_0x16d839+=0x1),_0x16d839;}function _0xd0a99e(){if(this['t']<=0x0)return 0x0;return this['DB']*(this['t']-0x1)+_0x3c6a56(this[this['t']-0x1]^this['s']&this['DM']);}function _0xa43217(_0x488082,_0x3fbf56){var _0x29fd06;for(_0x29fd06=this['t']-0x1;_0x29fd06>=0x0;--_0x29fd06)_0x3fbf56[_0x29fd06+_0x488082]=this[_0x29fd06];for(_0x29fd06=_0x488082-0x1;_0x29fd06>=0x0;--_0x29fd06)_0x3fbf56[_0x29fd06]=0x0;_0x3fbf56['t']=this['t']+_0x488082,_0x3fbf56['s']=this['s'];}function _0x274468(_0x39f64a,_0x4559e6){for(var _0x2f6a7b=_0x39f64a;_0x2f6a7b<this['t'];++_0x2f6a7b)_0x4559e6[_0x2f6a7b-_0x39f64a]=this[_0x2f6a7b];_0x4559e6['t']=Math['max'](this['t']-_0x39f64a,0x0),_0x4559e6['s']=this['s'];}function _0x463326(_0x4813e1,_0x483e7d){var _0x17748c=_0x4813e1%this['DB'],_0x593da7=this['DB']-_0x17748c,_0x4b4de6=(0x1<<_0x593da7)-0x1,_0x255301=Math['floor'](_0x4813e1/this['DB']),_0x5d3aa4=this['s']<<_0x17748c&this['DM'],_0x4fea04;for(_0x4fea04=this['t']-0x1;_0x4fea04>=0x0;--_0x4fea04){_0x483e7d[_0x4fea04+_0x255301+0x1]=this[_0x4fea04]>>_0x593da7|_0x5d3aa4,_0x5d3aa4=(this[_0x4fea04]&_0x4b4de6)<<_0x17748c;}for(_0x4fea04=_0x255301-0x1;_0x4fea04>=0x0;--_0x4fea04)_0x483e7d[_0x4fea04]=0x0;_0x483e7d[_0x255301]=_0x5d3aa4,_0x483e7d['t']=this['t']+_0x255301+0x1,_0x483e7d['s']=this['s'],_0x483e7d['clamp']();}function _0x326a49(_0x3da60f,_0x4468b3){_0x4468b3['s']=this['s'];var _0x198fad=Math['floor'](_0x3da60f/this['DB']);if(_0x198fad>=this['t']){_0x4468b3['t']=0x0;return;}var _0x55f1e4=_0x3da60f%this['DB'],_0x724eda=this['DB']-_0x55f1e4,_0x34f909=(0x1<<_0x55f1e4)-0x1;_0x4468b3[0x0]=this[_0x198fad]>>_0x55f1e4;for(var _0x52895c=_0x198fad+0x1;_0x52895c<this['t'];++_0x52895c){_0x4468b3[_0x52895c-_0x198fad-0x1]|=(this[_0x52895c]&_0x34f909)<<_0x724eda,_0x4468b3[_0x52895c-_0x198fad]=this[_0x52895c]>>_0x55f1e4;}if(_0x55f1e4>0x0)_0x4468b3[this['t']-_0x198fad-0x1]|=(this['s']&_0x34f909)<<_0x724eda;_0x4468b3['t']=this['t']-_0x198fad,_0x4468b3['clamp']();}function _0x506e1b(_0x1e16ef,_0x2e1040){var _0x1bf8a4=0x0,_0x8cbdb3=0x0,_0x3d1c42=Math['min'](_0x1e16ef['t'],this['t']);while(_0x1bf8a4<_0x3d1c42){_0x8cbdb3+=this[_0x1bf8a4]-_0x1e16ef[_0x1bf8a4],_0x2e1040[_0x1bf8a4++]=_0x8cbdb3&this['DM'],_0x8cbdb3>>=this['DB'];}if(_0x1e16ef['t']<this['t']){_0x8cbdb3-=_0x1e16ef['s'];while(_0x1bf8a4<this['t']){_0x8cbdb3+=this[_0x1bf8a4],_0x2e1040[_0x1bf8a4++]=_0x8cbdb3&this['DM'],_0x8cbdb3>>=this['DB'];}_0x8cbdb3+=this['s'];}else {_0x8cbdb3+=this['s'];while(_0x1bf8a4<_0x1e16ef['t']){_0x8cbdb3-=_0x1e16ef[_0x1bf8a4],_0x2e1040[_0x1bf8a4++]=_0x8cbdb3&this['DM'],_0x8cbdb3>>=this['DB'];}_0x8cbdb3-=_0x1e16ef['s'];}_0x2e1040['s']=_0x8cbdb3<0x0?-0x1:0x0;if(_0x8cbdb3<-0x1)_0x2e1040[_0x1bf8a4++]=this['DV']+_0x8cbdb3;else {if(_0x8cbdb3>0x0)_0x2e1040[_0x1bf8a4++]=_0x8cbdb3;}_0x2e1040['t']=_0x1bf8a4,_0x2e1040['clamp']();}function _0x188b8b(_0x3816d7,_0x2d583a){var _0x450d43=this['abs'](),_0x3e1de2=_0x3816d7['abs'](),_0x211a37=_0x450d43['t'];_0x2d583a['t']=_0x211a37+_0x3e1de2['t'];while(--_0x211a37>=0x0)_0x2d583a[_0x211a37]=0x0;for(_0x211a37=0x0;_0x211a37<_0x3e1de2['t'];++_0x211a37)_0x2d583a[_0x211a37+_0x450d43['t']]=_0x450d43['am'](0x0,_0x3e1de2[_0x211a37],_0x2d583a,_0x211a37,0x0,_0x450d43['t']);_0x2d583a['s']=0x0,_0x2d583a['clamp']();if(this['s']!=_0x3816d7['s'])_0x4bd548['ZERO']['subTo'](_0x2d583a,_0x2d583a);}function _0x22d9ed(_0x1842c1){var _0x44486a=this['abs'](),_0x391498=_0x1842c1['t']=0x2*_0x44486a['t'];while(--_0x391498>=0x0)_0x1842c1[_0x391498]=0x0;for(_0x391498=0x0;_0x391498<_0x44486a['t']-0x1;++_0x391498){var _0x1d7d6c=_0x44486a['am'](_0x391498,_0x44486a[_0x391498],_0x1842c1,0x2*_0x391498,0x0,0x1);(_0x1842c1[_0x391498+_0x44486a['t']]+=_0x44486a['am'](_0x391498+0x1,0x2*_0x44486a[_0x391498],_0x1842c1,0x2*_0x391498+0x1,_0x1d7d6c,_0x44486a['t']-_0x391498-0x1))>=_0x44486a['DV']&&(_0x1842c1[_0x391498+_0x44486a['t']]-=_0x44486a['DV'],_0x1842c1[_0x391498+_0x44486a['t']+0x1]=0x1);}if(_0x1842c1['t']>0x0)_0x1842c1[_0x1842c1['t']-0x1]+=_0x44486a['am'](_0x391498,_0x44486a[_0x391498],_0x1842c1,0x2*_0x391498,0x0,0x1);_0x1842c1['s']=0x0,_0x1842c1['clamp']();}function _0x5f1376(_0x4c9cd6,_0x3e75b4,_0x56c136){var _0x3995b=_0x4c9cd6['abs']();if(_0x3995b['t']<=0x0)return;var _0x185b8e=this['abs']();if(_0x185b8e['t']<_0x3995b['t']){if(_0x3e75b4!=null)_0x3e75b4['fromInt'](0x0);if(_0x56c136!=null)this['copyTo'](_0x56c136);return;}if(_0x56c136==null)_0x56c136=_0x1d5c6c();var _0x26cb30=_0x1d5c6c(),_0x310683=this['s'],_0x1cdad=_0x4c9cd6['s'],_0x1a0cf0=this['DB']-_0x3c6a56(_0x3995b[_0x3995b['t']-0x1]);_0x1a0cf0>0x0?(_0x3995b['lShiftTo'](_0x1a0cf0,_0x26cb30),_0x185b8e['lShiftTo'](_0x1a0cf0,_0x56c136)):(_0x3995b['copyTo'](_0x26cb30),_0x185b8e['copyTo'](_0x56c136));var _0x26e9f0=_0x26cb30['t'],_0x261d72=_0x26cb30[_0x26e9f0-0x1];if(_0x261d72==0x0)return;var _0x4b6afa=_0x261d72*(0x1<<this['F1'])+(_0x26e9f0>0x1?_0x26cb30[_0x26e9f0-0x2]>>this['F2']:0x0),_0x134f2b=this['FV']/_0x4b6afa,_0x603e4=(0x1<<this['F1'])/_0x4b6afa,_0x2ca532=0x1<<this['F2'],_0x7e4078=_0x56c136['t'],_0x5b78f6=_0x7e4078-_0x26e9f0,_0x14ce41=_0x3e75b4==null?_0x1d5c6c():_0x3e75b4;_0x26cb30['dlShiftTo'](_0x5b78f6,_0x14ce41);_0x56c136['compareTo'](_0x14ce41)>=0x0&&(_0x56c136[_0x56c136['t']++]=0x1,_0x56c136['subTo'](_0x14ce41,_0x56c136));_0x4bd548['ONE']['dlShiftTo'](_0x26e9f0,_0x14ce41),_0x14ce41['subTo'](_0x26cb30,_0x26cb30);while(_0x26cb30['t']<_0x26e9f0)_0x26cb30[_0x26cb30['t']++]=0x0;while(--_0x5b78f6>=0x0){var _0x4b2adb=_0x56c136[--_0x7e4078]==_0x261d72?this['DM']:Math['floor'](_0x56c136[_0x7e4078]*_0x134f2b+(_0x56c136[_0x7e4078-0x1]+_0x2ca532)*_0x603e4);if((_0x56c136[_0x7e4078]+=_0x26cb30['am'](0x0,_0x4b2adb,_0x56c136,_0x5b78f6,0x0,_0x26e9f0))<_0x4b2adb){_0x26cb30['dlShiftTo'](_0x5b78f6,_0x14ce41),_0x56c136['subTo'](_0x14ce41,_0x56c136);while(_0x56c136[_0x7e4078]<--_0x4b2adb)_0x56c136['subTo'](_0x14ce41,_0x56c136);}}if(_0x3e75b4!=null){_0x56c136['drShiftTo'](_0x26e9f0,_0x3e75b4);if(_0x310683!=_0x1cdad)_0x4bd548['ZERO']['subTo'](_0x3e75b4,_0x3e75b4);}_0x56c136['t']=_0x26e9f0,_0x56c136['clamp']();if(_0x1a0cf0>0x0)_0x56c136['rShiftTo'](_0x1a0cf0,_0x56c136);if(_0x310683<0x0)_0x4bd548['ZERO']['subTo'](_0x56c136,_0x56c136);}function _0x4160f4(_0x2f1e03){var _0x15b9a1=_0x1d5c6c();this['abs']()['divRemTo'](_0x2f1e03,null,_0x15b9a1);if(this['s']<0x0&&_0x15b9a1['compareTo'](_0x4bd548['ZERO'])>0x0)_0x2f1e03['subTo'](_0x15b9a1,_0x15b9a1);return _0x15b9a1;}function _0x494ba4(_0x16d9e6){this['m']=_0x16d9e6;}function _0x35e839(_0xdd9978){if(_0xdd9978['s']<0x0||_0xdd9978['compareTo'](this['m'])>=0x0)return _0xdd9978['mod'](this['m']);else return _0xdd9978;}function _0x4e1f9c(_0x436359){return _0x436359;}function _0x13537d(_0x5bd943){_0x5bd943['divRemTo'](this['m'],null,_0x5bd943);}function _0x2c4cf0(_0x457863,_0x4a1168,_0x10de9c){_0x457863['multiplyTo'](_0x4a1168,_0x10de9c),this['reduce'](_0x10de9c);}function _0x3f43f2(_0x24699d,_0x4bdea6){_0x24699d['squareTo'](_0x4bdea6),this['reduce'](_0x4bdea6);}_0x494ba4['prototype']['convert']=_0x35e839,_0x494ba4['prototype']['revert']=_0x4e1f9c,_0x494ba4['prototype']['reduce']=_0x13537d,_0x494ba4['prototype']['mulTo']=_0x2c4cf0,_0x494ba4['prototype']['sqrTo']=_0x3f43f2;function _0x2ede46(){if(this['t']<0x1)return 0x0;var _0x634828=this[0x0];if((_0x634828&0x1)==0x0)return 0x0;var _0x530077=_0x634828&0x3;return _0x530077=_0x530077*(0x2-(_0x634828&0xf)*_0x530077)&0xf,_0x530077=_0x530077*(0x2-(_0x634828&0xff)*_0x530077)&0xff,_0x530077=_0x530077*(0x2-((_0x634828&0xffff)*_0x530077&0xffff))&0xffff,_0x530077=_0x530077*(0x2-_0x634828*_0x530077%this['DV'])%this['DV'],_0x530077>0x0?this['DV']-_0x530077:-_0x530077;}function _0x473dda(_0x2a0be1){this['m']=_0x2a0be1,this['mp']=_0x2a0be1['invDigit'](),this['mpl']=this['mp']&0x7fff,this['mph']=this['mp']>>0xf,this['um']=(0x1<<_0x2a0be1['DB']-0xf)-0x1,this['mt2']=0x2*_0x2a0be1['t'];}function _0x29fdf5(_0xd24340){var _0x593ad9=_0x1d5c6c();_0xd24340['abs']()['dlShiftTo'](this['m']['t'],_0x593ad9),_0x593ad9['divRemTo'](this['m'],null,_0x593ad9);if(_0xd24340['s']<0x0&&_0x593ad9['compareTo'](_0x4bd548['ZERO'])>0x0)this['m']['subTo'](_0x593ad9,_0x593ad9);return _0x593ad9;}function _0x5dcb4f(_0x260176){var _0x104c09=_0x1d5c6c();return _0x260176['copyTo'](_0x104c09),this['reduce'](_0x104c09),_0x104c09;}function _0x5afebc(_0x4446e4){while(_0x4446e4['t']<=this['mt2'])_0x4446e4[_0x4446e4['t']++]=0x0;for(var _0x111c74=0x0;_0x111c74<this['m']['t'];++_0x111c74){var _0x238ed6=_0x4446e4[_0x111c74]&0x7fff,_0xbe3935=_0x238ed6*this['mpl']+((_0x238ed6*this['mph']+(_0x4446e4[_0x111c74]>>0xf)*this['mpl']&this['um'])<<0xf)&_0x4446e4['DM'];_0x238ed6=_0x111c74+this['m']['t'],_0x4446e4[_0x238ed6]+=this['m']['am'](0x0,_0xbe3935,_0x4446e4,_0x111c74,0x0,this['m']['t']);while(_0x4446e4[_0x238ed6]>=_0x4446e4['DV']){_0x4446e4[_0x238ed6]-=_0x4446e4['DV'],_0x4446e4[++_0x238ed6]++;}}_0x4446e4['clamp'](),_0x4446e4['drShiftTo'](this['m']['t'],_0x4446e4);if(_0x4446e4['compareTo'](this['m'])>=0x0)_0x4446e4['subTo'](this['m'],_0x4446e4);}function _0x2c28e5(_0x37b7a2,_0x294bbc){_0x37b7a2['squareTo'](_0x294bbc),this['reduce'](_0x294bbc);}function _0x54bbb1(_0x13363c,_0x3ec95c,_0x450ba5){_0x13363c['multiplyTo'](_0x3ec95c,_0x450ba5),this['reduce'](_0x450ba5);}_0x473dda['prototype']['convert']=_0x29fdf5,_0x473dda['prototype']['revert']=_0x5dcb4f,_0x473dda['prototype']['reduce']=_0x5afebc,_0x473dda['prototype']['mulTo']=_0x54bbb1,_0x473dda['prototype']['sqrTo']=_0x2c28e5;function _0x3fed59(){return (this['t']>0x0?this[0x0]&0x1:this['s'])==0x0;}function _0x10388e(_0x3f6cf1,_0x56c8c0){if(_0x3f6cf1>0xffffffff||_0x3f6cf1<0x1)return _0x4bd548['ONE'];var _0x1c2331=_0x1d5c6c(),_0x2a6c5c=_0x1d5c6c(),_0xd0ddad=_0x56c8c0['convert'](this),_0xb5fe07=_0x3c6a56(_0x3f6cf1)-0x1;_0xd0ddad['copyTo'](_0x1c2331);while(--_0xb5fe07>=0x0){_0x56c8c0['sqrTo'](_0x1c2331,_0x2a6c5c);if((_0x3f6cf1&0x1<<_0xb5fe07)>0x0)_0x56c8c0['mulTo'](_0x2a6c5c,_0xd0ddad,_0x1c2331);else {var _0x527426=_0x1c2331;_0x1c2331=_0x2a6c5c,_0x2a6c5c=_0x527426;}}return _0x56c8c0['revert'](_0x1c2331);}function _0x1935c1(_0x124e6d,_0x1a4fb7){var _0x4feb86;if(_0x124e6d<0x100||_0x1a4fb7['isEven']())_0x4feb86=new _0x494ba4(_0x1a4fb7);else _0x4feb86=new _0x473dda(_0x1a4fb7);return this['exp'](_0x124e6d,_0x4feb86);}_0x4bd548['prototype']['copyTo']=_0x1abf19,_0x4bd548['prototype']['fromInt']=_0x5075c6,_0x4bd548['prototype']['fromString']=_0x27f22b,_0x4bd548['prototype']['clamp']=_0x148f96,_0x4bd548['prototype']['dlShiftTo']=_0xa43217,_0x4bd548['prototype']['drShiftTo']=_0x274468,_0x4bd548['prototype']['lShiftTo']=_0x463326,_0x4bd548['prototype']['rShiftTo']=_0x326a49,_0x4bd548['prototype']['subTo']=_0x506e1b,_0x4bd548['prototype']['multiplyTo']=_0x188b8b,_0x4bd548['prototype']['squareTo']=_0x22d9ed,_0x4bd548['prototype']['divRemTo']=_0x5f1376,_0x4bd548['prototype']['invDigit']=_0x2ede46,_0x4bd548['prototype']['isEven']=_0x3fed59,_0x4bd548['prototype']['exp']=_0x10388e,_0x4bd548['prototype']['toString']=_0x59b2ea,_0x4bd548['prototype']['negate']=_0x18d8a8,_0x4bd548['prototype']['abs']=_0x17e057,_0x4bd548['prototype']['compareTo']=_0x47d49a,_0x4bd548['prototype']['bitLength']=_0xd0a99e,_0x4bd548['prototype']['mod']=_0x4160f4,_0x4bd548['prototype']['modPowInt']=_0x1935c1,_0x4bd548['ZERO']=_0x3251b6(0x0),_0x4bd548['ONE']=_0x3251b6(0x1);function _0x85a46d(){var _0x548e36=_0x1d5c6c();return this['copyTo'](_0x548e36),_0x548e36;}function _0x5b01ec(){if(this['s']<0x0){if(this['t']==0x1)return this[0x0]-this['DV'];else {if(this['t']==0x0)return -0x1;}}else {if(this['t']==0x1)return this[0x0];else {if(this['t']==0x0)return 0x0;}}return (this[0x1]&(0x1<<0x20-this['DB'])-0x1)<<this['DB']|this[0x0];}function _0x3f20d3(){return this['t']==0x0?this['s']:this[0x0]<<0x18>>0x18;}function _0x3cdb57(){return this['t']==0x0?this['s']:this[0x0]<<0x10>>0x10;}function _0x757d96(_0x4f7d41){return Math['floor'](Math['LN2']*this['DB']/Math['log'](_0x4f7d41));}function _0x527ff6(){if(this['s']<0x0)return -0x1;else {if(this['t']<=0x0||this['t']==0x1&&this[0x0]<=0x0)return 0x0;else return 0x1;}}function _0x52c353(_0x1321ac){if(_0x1321ac==null)_0x1321ac=0xa;if(this['signum']()==0x0||_0x1321ac<0x2||_0x1321ac>0x24)return '0';var _0x168288=this['chunkSize'](_0x1321ac),_0x4cd419=Math['pow'](_0x1321ac,_0x168288),_0x23100a=_0x3251b6(_0x4cd419),_0x3a9956=_0x1d5c6c(),_0x4ff041=_0x1d5c6c(),_0x44b148='';this['divRemTo'](_0x23100a,_0x3a9956,_0x4ff041);while(_0x3a9956['signum']()>0x0){_0x44b148=(_0x4cd419+_0x4ff041['intValue']())['toString'](_0x1321ac)['substr'](0x1)+_0x44b148,_0x3a9956['divRemTo'](_0x23100a,_0x3a9956,_0x4ff041);}return _0x4ff041['intValue']()['toString'](_0x1321ac)+_0x44b148;}function _0x1ddc2e(_0x255f1f,_0x49e040){this['fromInt'](0x0);if(_0x49e040==null)_0x49e040=0xa;var _0x208f37=this['chunkSize'](_0x49e040),_0x3f7c15=Math['pow'](_0x49e040,_0x208f37),_0x545392=![],_0x2bed03=0x0,_0x519668=0x0;for(var _0x2c4793=0x0;_0x2c4793<_0x255f1f['length'];++_0x2c4793){var _0x2e6271=_0x59f91b(_0x255f1f,_0x2c4793);if(_0x2e6271<0x0){if(_0x255f1f['charAt'](_0x2c4793)=='-'&&this['signum']()==0x0)_0x545392=!![];continue;}_0x519668=_0x49e040*_0x519668+_0x2e6271,++_0x2bed03>=_0x208f37&&(this['dMultiply'](_0x3f7c15),this['dAddOffset'](_0x519668,0x0),_0x2bed03=0x0,_0x519668=0x0);}_0x2bed03>0x0&&(this['dMultiply'](Math['pow'](_0x49e040,_0x2bed03)),this['dAddOffset'](_0x519668,0x0));if(_0x545392)_0x4bd548['ZERO']['subTo'](this,this);}function _0x21d404(_0x1ed657,_0x3f3edb,_0x142527){if('number'==typeof _0x3f3edb){if(_0x1ed657<0x2)this['fromInt'](0x1);else {this['fromNumber'](_0x1ed657,_0x142527);if(!this['testBit'](_0x1ed657-0x1))this['bitwiseTo'](_0x4bd548['ONE']['shiftLeft'](_0x1ed657-0x1),_0x44337b,this);if(this['isEven']())this['dAddOffset'](0x1,0x0);while(!this['isProbablePrime'](_0x3f3edb)){this['dAddOffset'](0x2,0x0);if(this['bitLength']()>_0x1ed657)this['subTo'](_0x4bd548['ONE']['shiftLeft'](_0x1ed657-0x1),this);}}}else {var _0x4d0c9e=new Array(),_0x108e84=_0x1ed657&0x7;_0x4d0c9e['length']=(_0x1ed657>>0x3)+0x1,_0x3f3edb['nextBytes'](_0x4d0c9e);if(_0x108e84>0x0)_0x4d0c9e[0x0]&=(0x1<<_0x108e84)-0x1;else _0x4d0c9e[0x0]=0x0;this['fromString'](_0x4d0c9e,0x100);}}function _0xfa7108(){var _0x16cfee=this['t'],_0x59e0fd=new Array();_0x59e0fd[0x0]=this['s'];var _0xd11380=this['DB']-_0x16cfee*this['DB']%0x8,_0x1ca4f0,_0x44ba4b=0x0;if(_0x16cfee-->0x0){if(_0xd11380<this['DB']&&(_0x1ca4f0=this[_0x16cfee]>>_0xd11380)!=(this['s']&this['DM'])>>_0xd11380)_0x59e0fd[_0x44ba4b++]=_0x1ca4f0|this['s']<<this['DB']-_0xd11380;while(_0x16cfee>=0x0){_0xd11380<0x8?(_0x1ca4f0=(this[_0x16cfee]&(0x1<<_0xd11380)-0x1)<<0x8-_0xd11380,_0x1ca4f0|=this[--_0x16cfee]>>(_0xd11380+=this['DB']-0x8)):(_0x1ca4f0=this[_0x16cfee]>>(_0xd11380-=0x8)&0xff,_0xd11380<=0x0&&(_0xd11380+=this['DB'],--_0x16cfee));if((_0x1ca4f0&0x80)!=0x0)_0x1ca4f0|=-0x100;if(_0x44ba4b==0x0&&(this['s']&0x80)!=(_0x1ca4f0&0x80))++_0x44ba4b;if(_0x44ba4b>0x0||_0x1ca4f0!=this['s'])_0x59e0fd[_0x44ba4b++]=_0x1ca4f0;}}return _0x59e0fd;}function _0x352705(_0x169595){return this['compareTo'](_0x169595)==0x0;}function _0x2a87f5(_0x441607){return this['compareTo'](_0x441607)<0x0?this:_0x441607;}function _0x2a2eb2(_0x20d8f4){return this['compareTo'](_0x20d8f4)>0x0?this:_0x20d8f4;}function _0x1c2d34(_0x2bf8c7,_0x3ef0b3,_0x12d3e1){var _0x8a3a7d,_0x42a34c,_0x59d4ae=Math['min'](_0x2bf8c7['t'],this['t']);for(_0x8a3a7d=0x0;_0x8a3a7d<_0x59d4ae;++_0x8a3a7d)_0x12d3e1[_0x8a3a7d]=_0x3ef0b3(this[_0x8a3a7d],_0x2bf8c7[_0x8a3a7d]);if(_0x2bf8c7['t']<this['t']){_0x42a34c=_0x2bf8c7['s']&this['DM'];for(_0x8a3a7d=_0x59d4ae;_0x8a3a7d<this['t'];++_0x8a3a7d)_0x12d3e1[_0x8a3a7d]=_0x3ef0b3(this[_0x8a3a7d],_0x42a34c);_0x12d3e1['t']=this['t'];}else {_0x42a34c=this['s']&this['DM'];for(_0x8a3a7d=_0x59d4ae;_0x8a3a7d<_0x2bf8c7['t'];++_0x8a3a7d)_0x12d3e1[_0x8a3a7d]=_0x3ef0b3(_0x42a34c,_0x2bf8c7[_0x8a3a7d]);_0x12d3e1['t']=_0x2bf8c7['t'];}_0x12d3e1['s']=_0x3ef0b3(this['s'],_0x2bf8c7['s']),_0x12d3e1['clamp']();}function _0x117179(_0xe7174e,_0x4bce94){return _0xe7174e&_0x4bce94;}function _0x179747(_0x5c8842){var _0x362e19=_0x1d5c6c();return this['bitwiseTo'](_0x5c8842,_0x117179,_0x362e19),_0x362e19;}function _0x44337b(_0x543ad3,_0x421f65){return _0x543ad3|_0x421f65;}function _0x3ac74f(_0x392904){var _0xfd42f1=_0x1d5c6c();return this['bitwiseTo'](_0x392904,_0x44337b,_0xfd42f1),_0xfd42f1;}function _0x4932b7(_0x1013f8,_0x9445b9){return _0x1013f8^_0x9445b9;}function _0x1f8395(_0x436188){var _0x2d4148=_0x1d5c6c();return this['bitwiseTo'](_0x436188,_0x4932b7,_0x2d4148),_0x2d4148;}function _0x1f7660(_0x156fe8,_0x31de77){return _0x156fe8&~_0x31de77;}function _0x56ebf5(_0x5de940){var _0xdd89d3=_0x1d5c6c();return this['bitwiseTo'](_0x5de940,_0x1f7660,_0xdd89d3),_0xdd89d3;}function _0x2943d5(){var _0x4c7372=_0x1d5c6c();for(var _0x10dc54=0x0;_0x10dc54<this['t'];++_0x10dc54)_0x4c7372[_0x10dc54]=this['DM']&~this[_0x10dc54];return _0x4c7372['t']=this['t'],_0x4c7372['s']=~this['s'],_0x4c7372;}function _0x39619c(_0x3a0c00){var _0xd94428=_0x1d5c6c();if(_0x3a0c00<0x0)this['rShiftTo'](-_0x3a0c00,_0xd94428);else this['lShiftTo'](_0x3a0c00,_0xd94428);return _0xd94428;}function _0x2d4adf(_0x35bc65){var _0x370659=_0x1d5c6c();if(_0x35bc65<0x0)this['lShiftTo'](-_0x35bc65,_0x370659);else this['rShiftTo'](_0x35bc65,_0x370659);return _0x370659;}function _0x4456e8(_0x547f59){if(_0x547f59==0x0)return -0x1;var _0x510ee9=0x0;(_0x547f59&0xffff)==0x0&&(_0x547f59>>=0x10,_0x510ee9+=0x10);(_0x547f59&0xff)==0x0&&(_0x547f59>>=0x8,_0x510ee9+=0x8);(_0x547f59&0xf)==0x0&&(_0x547f59>>=0x4,_0x510ee9+=0x4);(_0x547f59&0x3)==0x0&&(_0x547f59>>=0x2,_0x510ee9+=0x2);if((_0x547f59&0x1)==0x0)++_0x510ee9;return _0x510ee9;}function _0x20b76a(){for(var _0x4e7778=0x0;_0x4e7778<this['t'];++_0x4e7778)if(this[_0x4e7778]!=0x0)return _0x4e7778*this['DB']+_0x4456e8(this[_0x4e7778]);if(this['s']<0x0)return this['t']*this['DB'];return -0x1;}function _0x1d53bf(_0x49a60e){var _0x4ef43a=0x0;while(_0x49a60e!=0x0){_0x49a60e&=_0x49a60e-0x1,++_0x4ef43a;}return _0x4ef43a;}function _0x9d4568(){var _0x1ea858=0x0,_0x19ee97=this['s']&this['DM'];for(var _0x106344=0x0;_0x106344<this['t'];++_0x106344)_0x1ea858+=_0x1d53bf(this[_0x106344]^_0x19ee97);return _0x1ea858;}function _0x26194a(_0x5d2855){var _0x574210=Math['floor'](_0x5d2855/this['DB']);if(_0x574210>=this['t'])return this['s']!=0x0;return (this[_0x574210]&0x1<<_0x5d2855%this['DB'])!=0x0;}function _0x2f4737(_0x248cee,_0x35f010){var _0x2a65b3=_0x4bd548['ONE']['shiftLeft'](_0x248cee);return this['bitwiseTo'](_0x2a65b3,_0x35f010,_0x2a65b3),_0x2a65b3;}function _0x24a2c9(_0x358b3d){return this['changeBit'](_0x358b3d,_0x44337b);}function _0x567380(_0x181e46){return this['changeBit'](_0x181e46,_0x1f7660);}function _0x50c85f(_0x19c5bc){return this['changeBit'](_0x19c5bc,_0x4932b7);}function _0x495600(_0x3b6ca0,_0x3aba59){var _0x30c935=0x0,_0x11a7cc=0x0,_0x50e919=Math['min'](_0x3b6ca0['t'],this['t']);while(_0x30c935<_0x50e919){_0x11a7cc+=this[_0x30c935]+_0x3b6ca0[_0x30c935],_0x3aba59[_0x30c935++]=_0x11a7cc&this['DM'],_0x11a7cc>>=this['DB'];}if(_0x3b6ca0['t']<this['t']){_0x11a7cc+=_0x3b6ca0['s'];while(_0x30c935<this['t']){_0x11a7cc+=this[_0x30c935],_0x3aba59[_0x30c935++]=_0x11a7cc&this['DM'],_0x11a7cc>>=this['DB'];}_0x11a7cc+=this['s'];}else {_0x11a7cc+=this['s'];while(_0x30c935<_0x3b6ca0['t']){_0x11a7cc+=_0x3b6ca0[_0x30c935],_0x3aba59[_0x30c935++]=_0x11a7cc&this['DM'],_0x11a7cc>>=this['DB'];}_0x11a7cc+=_0x3b6ca0['s'];}_0x3aba59['s']=_0x11a7cc<0x0?-0x1:0x0;if(_0x11a7cc>0x0)_0x3aba59[_0x30c935++]=_0x11a7cc;else {if(_0x11a7cc<-0x1)_0x3aba59[_0x30c935++]=this['DV']+_0x11a7cc;}_0x3aba59['t']=_0x30c935,_0x3aba59['clamp']();}function _0x1f888e(_0x41948c){var _0x6e12ee=_0x1d5c6c();return this['addTo'](_0x41948c,_0x6e12ee),_0x6e12ee;}function _0x193313(_0x3fdbaf){var _0x3860eb=_0x1d5c6c();return this['subTo'](_0x3fdbaf,_0x3860eb),_0x3860eb;}function _0x55060b(_0x3a508c){var _0x15703a=_0x1d5c6c();return this['multiplyTo'](_0x3a508c,_0x15703a),_0x15703a;}function _0x263ef4(){var _0x33a309=_0x1d5c6c();return this['squareTo'](_0x33a309),_0x33a309;}function _0x1e7f6b(_0x3048d9){var _0x46401c=_0x1d5c6c();return this['divRemTo'](_0x3048d9,_0x46401c,null),_0x46401c;}function _0x15d018(_0x1c6dac){var _0x37b094=_0x1d5c6c();return this['divRemTo'](_0x1c6dac,null,_0x37b094),_0x37b094;}function _0x383753(_0x5e0eab){var _0x5f05c5=_0x1d5c6c(),_0x364cac=_0x1d5c6c();return this['divRemTo'](_0x5e0eab,_0x5f05c5,_0x364cac),new Array(_0x5f05c5,_0x364cac);}function _0x3a6849(_0x9e4558){this[this['t']]=this['am'](0x0,_0x9e4558-0x1,this,0x0,0x0,this['t']),++this['t'],this['clamp']();}function _0x21bc6e(_0x3b67cd,_0x3c8907){if(_0x3b67cd==0x0)return;while(this['t']<=_0x3c8907)this[this['t']++]=0x0;this[_0x3c8907]+=_0x3b67cd;while(this[_0x3c8907]>=this['DV']){this[_0x3c8907]-=this['DV'];if(++_0x3c8907>=this['t'])this[this['t']++]=0x0;++this[_0x3c8907];}}function _0x1ef558(){}function _0x17dbbe(_0x3abd9c){return _0x3abd9c;}function _0x57b902(_0x445c61,_0x3904f9,_0x157418){_0x445c61['multiplyTo'](_0x3904f9,_0x157418);}function _0x468b60(_0x1735e7,_0x3027f2){_0x1735e7['squareTo'](_0x3027f2);}_0x1ef558['prototype']['convert']=_0x17dbbe,_0x1ef558['prototype']['revert']=_0x17dbbe,_0x1ef558['prototype']['mulTo']=_0x57b902,_0x1ef558['prototype']['sqrTo']=_0x468b60;function _0x3efa30(_0x5a00b8){return this['exp'](_0x5a00b8,new _0x1ef558());}function _0x36381f(_0x49df17,_0x3a417d,_0x3f7fae){var _0x50cd77=Math['min'](this['t']+_0x49df17['t'],_0x3a417d);_0x3f7fae['s']=0x0,_0x3f7fae['t']=_0x50cd77;while(_0x50cd77>0x0)_0x3f7fae[--_0x50cd77]=0x0;var _0x37c3dd;for(_0x37c3dd=_0x3f7fae['t']-this['t'];_0x50cd77<_0x37c3dd;++_0x50cd77)_0x3f7fae[_0x50cd77+this['t']]=this['am'](0x0,_0x49df17[_0x50cd77],_0x3f7fae,_0x50cd77,0x0,this['t']);for(_0x37c3dd=Math['min'](_0x49df17['t'],_0x3a417d);_0x50cd77<_0x37c3dd;++_0x50cd77)this['am'](0x0,_0x49df17[_0x50cd77],_0x3f7fae,_0x50cd77,0x0,_0x3a417d-_0x50cd77);_0x3f7fae['clamp']();}function _0x47fce2(_0x5489e2,_0x5ccba3,_0x2ec162){--_0x5ccba3;var _0x28a942=_0x2ec162['t']=this['t']+_0x5489e2['t']-_0x5ccba3;_0x2ec162['s']=0x0;while(--_0x28a942>=0x0)_0x2ec162[_0x28a942]=0x0;for(_0x28a942=Math['max'](_0x5ccba3-this['t'],0x0);_0x28a942<_0x5489e2['t'];++_0x28a942)_0x2ec162[this['t']+_0x28a942-_0x5ccba3]=this['am'](_0x5ccba3-_0x28a942,_0x5489e2[_0x28a942],_0x2ec162,0x0,0x0,this['t']+_0x28a942-_0x5ccba3);_0x2ec162['clamp'](),_0x2ec162['drShiftTo'](0x1,_0x2ec162);}function _0x9b4318(_0x1bb27a){this['r2']=_0x1d5c6c(),this['q3']=_0x1d5c6c(),_0x4bd548['ONE']['dlShiftTo'](0x2*_0x1bb27a['t'],this['r2']),this['mu']=this['r2']['divide'](_0x1bb27a),this['m']=_0x1bb27a;}function _0x2505e9(_0x2a9b4e){if(_0x2a9b4e['s']<0x0||_0x2a9b4e['t']>0x2*this['m']['t'])return _0x2a9b4e['mod'](this['m']);else {if(_0x2a9b4e['compareTo'](this['m'])<0x0)return _0x2a9b4e;else {var _0x4205cd=_0x1d5c6c();return _0x2a9b4e['copyTo'](_0x4205cd),this['reduce'](_0x4205cd),_0x4205cd;}}}function _0x324078(_0x30201d){return _0x30201d;}function _0x4f3b46(_0x5611bd){_0x5611bd['drShiftTo'](this['m']['t']-0x1,this['r2']);_0x5611bd['t']>this['m']['t']+0x1&&(_0x5611bd['t']=this['m']['t']+0x1,_0x5611bd['clamp']());this['mu']['multiplyUpperTo'](this['r2'],this['m']['t']+0x1,this['q3']),this['m']['multiplyLowerTo'](this['q3'],this['m']['t']+0x1,this['r2']);while(_0x5611bd['compareTo'](this['r2'])<0x0)_0x5611bd['dAddOffset'](0x1,this['m']['t']+0x1);_0x5611bd['subTo'](this['r2'],_0x5611bd);while(_0x5611bd['compareTo'](this['m'])>=0x0)_0x5611bd['subTo'](this['m'],_0x5611bd);}function _0xfda005(_0x3ea2d9,_0x5b51ae){_0x3ea2d9['squareTo'](_0x5b51ae),this['reduce'](_0x5b51ae);}function _0x30b68f(_0x5924ab,_0x49d4df,_0x373ddf){_0x5924ab['multiplyTo'](_0x49d4df,_0x373ddf),this['reduce'](_0x373ddf);}_0x9b4318['prototype']['convert']=_0x2505e9,_0x9b4318['prototype']['revert']=_0x324078,_0x9b4318['prototype']['reduce']=_0x4f3b46,_0x9b4318['prototype']['mulTo']=_0x30b68f,_0x9b4318['prototype']['sqrTo']=_0xfda005;function _0x1d6a27(_0x5134e5,_0x40f135){var _0x4bfa19=_0x5134e5['bitLength'](),_0x33e606,_0xaa8c11=_0x3251b6(0x1),_0x526011;if(_0x4bfa19<=0x0)return _0xaa8c11;else {if(_0x4bfa19<0x12)_0x33e606=0x1;else {if(_0x4bfa19<0x30)_0x33e606=0x3;else {if(_0x4bfa19<0x90)_0x33e606=0x4;else {if(_0x4bfa19<0x300)_0x33e606=0x5;else _0x33e606=0x6;}}}}if(_0x4bfa19<0x8)_0x526011=new _0x494ba4(_0x40f135);else {if(_0x40f135['isEven']())_0x526011=new _0x9b4318(_0x40f135);else _0x526011=new _0x473dda(_0x40f135);}var _0x6ff2c1=new Array(),_0x1b2d0a=0x3,_0x27dc2f=_0x33e606-0x1,_0x18c28b=(0x1<<_0x33e606)-0x1;_0x6ff2c1[0x1]=_0x526011['convert'](this);if(_0x33e606>0x1){var _0x55933c=_0x1d5c6c();_0x526011['sqrTo'](_0x6ff2c1[0x1],_0x55933c);while(_0x1b2d0a<=_0x18c28b){_0x6ff2c1[_0x1b2d0a]=_0x1d5c6c(),_0x526011['mulTo'](_0x55933c,_0x6ff2c1[_0x1b2d0a-0x2],_0x6ff2c1[_0x1b2d0a]),_0x1b2d0a+=0x2;}}var _0x18ea07=_0x5134e5['t']-0x1,_0x5845a8,_0x11c51a=!![],_0x719557=_0x1d5c6c(),_0x591ae0;_0x4bfa19=_0x3c6a56(_0x5134e5[_0x18ea07])-0x1;while(_0x18ea07>=0x0){if(_0x4bfa19>=_0x27dc2f)_0x5845a8=_0x5134e5[_0x18ea07]>>_0x4bfa19-_0x27dc2f&_0x18c28b;else {_0x5845a8=(_0x5134e5[_0x18ea07]&(0x1<<_0x4bfa19+0x1)-0x1)<<_0x27dc2f-_0x4bfa19;if(_0x18ea07>0x0)_0x5845a8|=_0x5134e5[_0x18ea07-0x1]>>this['DB']+_0x4bfa19-_0x27dc2f;}_0x1b2d0a=_0x33e606;while((_0x5845a8&0x1)==0x0){_0x5845a8>>=0x1,--_0x1b2d0a;}(_0x4bfa19-=_0x1b2d0a)<0x0&&(_0x4bfa19+=this['DB'],--_0x18ea07);if(_0x11c51a)_0x6ff2c1[_0x5845a8]['copyTo'](_0xaa8c11),_0x11c51a=![];else {while(_0x1b2d0a>0x1){_0x526011['sqrTo'](_0xaa8c11,_0x719557),_0x526011['sqrTo'](_0x719557,_0xaa8c11),_0x1b2d0a-=0x2;}if(_0x1b2d0a>0x0)_0x526011['sqrTo'](_0xaa8c11,_0x719557);else _0x591ae0=_0xaa8c11,_0xaa8c11=_0x719557,_0x719557=_0x591ae0;_0x526011['mulTo'](_0x719557,_0x6ff2c1[_0x5845a8],_0xaa8c11);}while(_0x18ea07>=0x0&&(_0x5134e5[_0x18ea07]&0x1<<_0x4bfa19)==0x0){_0x526011['sqrTo'](_0xaa8c11,_0x719557),_0x591ae0=_0xaa8c11,_0xaa8c11=_0x719557,_0x719557=_0x591ae0,--_0x4bfa19<0x0&&(_0x4bfa19=this['DB']-0x1,--_0x18ea07);}}return _0x526011['revert'](_0xaa8c11);}function _0x3fff04(_0x497bd6){var _0x463db4=this['s']<0x0?this['negate']():this['clone'](),_0x488557=_0x497bd6['s']<0x0?_0x497bd6['negate']():_0x497bd6['clone']();if(_0x463db4['compareTo'](_0x488557)<0x0){var _0x42ac9a=_0x463db4;_0x463db4=_0x488557,_0x488557=_0x42ac9a;}var _0x372623=_0x463db4['getLowestSetBit'](),_0x2b99a9=_0x488557['getLowestSetBit']();if(_0x2b99a9<0x0)return _0x463db4;if(_0x372623<_0x2b99a9)_0x2b99a9=_0x372623;_0x2b99a9>0x0&&(_0x463db4['rShiftTo'](_0x2b99a9,_0x463db4),_0x488557['rShiftTo'](_0x2b99a9,_0x488557));while(_0x463db4['signum']()>0x0){if((_0x372623=_0x463db4['getLowestSetBit']())>0x0)_0x463db4['rShiftTo'](_0x372623,_0x463db4);if((_0x372623=_0x488557['getLowestSetBit']())>0x0)_0x488557['rShiftTo'](_0x372623,_0x488557);_0x463db4['compareTo'](_0x488557)>=0x0?(_0x463db4['subTo'](_0x488557,_0x463db4),_0x463db4['rShiftTo'](0x1,_0x463db4)):(_0x488557['subTo'](_0x463db4,_0x488557),_0x488557['rShiftTo'](0x1,_0x488557));}if(_0x2b99a9>0x0)_0x488557['lShiftTo'](_0x2b99a9,_0x488557);return _0x488557;}function _0x46728d(_0x295c4f){if(_0x295c4f<=0x0)return 0x0;var _0x1b9a10=this['DV']%_0x295c4f,_0x4ffcfc=this['s']<0x0?_0x295c4f-0x1:0x0;if(this['t']>0x0){if(_0x1b9a10==0x0)_0x4ffcfc=this[0x0]%_0x295c4f;else {for(var _0x472971=this['t']-0x1;_0x472971>=0x0;--_0x472971)_0x4ffcfc=(_0x1b9a10*_0x4ffcfc+this[_0x472971])%_0x295c4f;}}return _0x4ffcfc;}function _0x3aee61(_0x44c46e){var _0x23a6f8=_0x44c46e['isEven']();if(this['isEven']()&&_0x23a6f8||_0x44c46e['signum']()==0x0)return _0x4bd548['ZERO'];var _0x2c7e08=_0x44c46e['clone'](),_0x271dde=this['clone'](),_0x399941=_0x3251b6(0x1),_0x2f97c4=_0x3251b6(0x0),_0x5b716b=_0x3251b6(0x0),_0x3faeaf=_0x3251b6(0x1);while(_0x2c7e08['signum']()!=0x0){while(_0x2c7e08['isEven']()){_0x2c7e08['rShiftTo'](0x1,_0x2c7e08);if(_0x23a6f8)(!_0x399941['isEven']()||!_0x2f97c4['isEven']())&&(_0x399941['addTo'](this,_0x399941),_0x2f97c4['subTo'](_0x44c46e,_0x2f97c4)),_0x399941['rShiftTo'](0x1,_0x399941);else {if(!_0x2f97c4['isEven']())_0x2f97c4['subTo'](_0x44c46e,_0x2f97c4);}_0x2f97c4['rShiftTo'](0x1,_0x2f97c4);}while(_0x271dde['isEven']()){_0x271dde['rShiftTo'](0x1,_0x271dde);if(_0x23a6f8)(!_0x5b716b['isEven']()||!_0x3faeaf['isEven']())&&(_0x5b716b['addTo'](this,_0x5b716b),_0x3faeaf['subTo'](_0x44c46e,_0x3faeaf)),_0x5b716b['rShiftTo'](0x1,_0x5b716b);else {if(!_0x3faeaf['isEven']())_0x3faeaf['subTo'](_0x44c46e,_0x3faeaf);}_0x3faeaf['rShiftTo'](0x1,_0x3faeaf);}if(_0x2c7e08['compareTo'](_0x271dde)>=0x0){_0x2c7e08['subTo'](_0x271dde,_0x2c7e08);if(_0x23a6f8)_0x399941['subTo'](_0x5b716b,_0x399941);_0x2f97c4['subTo'](_0x3faeaf,_0x2f97c4);}else {_0x271dde['subTo'](_0x2c7e08,_0x271dde);if(_0x23a6f8)_0x5b716b['subTo'](_0x399941,_0x5b716b);_0x3faeaf['subTo'](_0x2f97c4,_0x3faeaf);}}if(_0x271dde['compareTo'](_0x4bd548['ONE'])!=0x0)return _0x4bd548['ZERO'];if(_0x3faeaf['compareTo'](_0x44c46e)>=0x0)return _0x3faeaf['subtract'](_0x44c46e);if(_0x3faeaf['signum']()<0x0)_0x3faeaf['addTo'](_0x44c46e,_0x3faeaf);else return _0x3faeaf;if(_0x3faeaf['signum']()<0x0)return _0x3faeaf['add'](_0x44c46e);else return _0x3faeaf;}var _0x42d319=[0x2,0x3,0x5,0x7,0xb,0xd,0x11,0x13,0x17,0x1d,0x1f,0x25,0x29,0x2b,0x2f,0x35,0x3b,0x3d,0x43,0x47,0x49,0x4f,0x53,0x59,0x61,0x65,0x67,0x6b,0x6d,0x71,0x7f,0x83,0x89,0x8b,0x95,0x97,0x9d,0xa3,0xa7,0xad,0xb3,0xb5,0xbf,0xc1,0xc5,0xc7,0xd3,0xdf,0xe3,0xe5,0xe9,0xef,0xf1,0xfb,0x101,0x107,0x10d,0x10f,0x115,0x119,0x11b,0x125,0x133,0x137,0x139,0x13d,0x14b,0x151,0x15b,0x15d,0x161,0x167,0x16f,0x175,0x17b,0x17f,0x185,0x18d,0x191,0x199,0x1a3,0x1a5,0x1af,0x1b1,0x1b7,0x1bb,0x1c1,0x1c9,0x1cd,0x1cf,0x1d3,0x1df,0x1e7,0x1eb,0x1f3,0x1f7,0x1fd,0x209,0x20b,0x21d,0x223,0x22d,0x233,0x239,0x23b,0x241,0x24b,0x251,0x257,0x259,0x25f,0x265,0x269,0x26b,0x277,0x281,0x283,0x287,0x28d,0x293,0x295,0x2a1,0x2a5,0x2ab,0x2b3,0x2bd,0x2c5,0x2cf,0x2d7,0x2dd,0x2e3,0x2e7,0x2ef,0x2f5,0x2f9,0x301,0x305,0x313,0x31d,0x329,0x32b,0x335,0x337,0x33b,0x33d,0x347,0x355,0x359,0x35b,0x35f,0x36d,0x371,0x373,0x377,0x38b,0x38f,0x397,0x3a1,0x3a9,0x3ad,0x3b3,0x3b9,0x3c7,0x3cb,0x3d1,0x3d7,0x3df,0x3e5],_0x5efb36=(0x1<<0x1a)/_0x42d319[_0x42d319['length']-0x1];function _0x570e1d(_0x3b591f){var _0x507223,_0x30dc9f=this['abs']();if(_0x30dc9f['t']==0x1&&_0x30dc9f[0x0]<=_0x42d319[_0x42d319['length']-0x1]){for(_0x507223=0x0;_0x507223<_0x42d319['length'];++_0x507223)if(_0x30dc9f[0x0]==_0x42d319[_0x507223])return !![];return ![];}if(_0x30dc9f['isEven']())return ![];_0x507223=0x1;while(_0x507223<_0x42d319['length']){var _0x2bffb4=_0x42d319[_0x507223],_0x3fac80=_0x507223+0x1;while(_0x3fac80<_0x42d319['length']&&_0x2bffb4<_0x5efb36)_0x2bffb4*=_0x42d319[_0x3fac80++];_0x2bffb4=_0x30dc9f['modInt'](_0x2bffb4);while(_0x507223<_0x3fac80)if(_0x2bffb4%_0x42d319[_0x507223++]==0x0)return ![];}return _0x30dc9f['millerRabin'](_0x3b591f);}function _0x3d9441(_0x45cadf){var _0xb4363e=this['subtract'](_0x4bd548['ONE']),_0x202cfe=_0xb4363e['getLowestSetBit']();if(_0x202cfe<=0x0)return ![];var _0x46f39a=_0xb4363e['shiftRight'](_0x202cfe);_0x45cadf=_0x45cadf+0x1>>0x1;if(_0x45cadf>_0x42d319['length'])_0x45cadf=_0x42d319['length'];var _0x3d1dab=_0x1d5c6c();for(var _0x2cccde=0x0;_0x2cccde<_0x45cadf;++_0x2cccde){_0x3d1dab['fromInt'](_0x42d319[Math['floor'](Math['random']()*_0x42d319['length'])]);var _0x3e497c=_0x3d1dab['modPow'](_0x46f39a,this);if(_0x3e497c['compareTo'](_0x4bd548['ONE'])!=0x0&&_0x3e497c['compareTo'](_0xb4363e)!=0x0){var _0x2feae7=0x1;while(_0x2feae7++<_0x202cfe&&_0x3e497c['compareTo'](_0xb4363e)!=0x0){_0x3e497c=_0x3e497c['modPowInt'](0x2,this);if(_0x3e497c['compareTo'](_0x4bd548['ONE'])==0x0)return ![];}if(_0x3e497c['compareTo'](_0xb4363e)!=0x0)return ![];}}return !![];}_0x4bd548['prototype']['chunkSize']=_0x757d96,_0x4bd548['prototype']['toRadix']=_0x52c353,_0x4bd548['prototype']['fromRadix']=_0x1ddc2e,_0x4bd548['prototype']['fromNumber']=_0x21d404,_0x4bd548['prototype']['bitwiseTo']=_0x1c2d34,_0x4bd548['prototype']['changeBit']=_0x2f4737,_0x4bd548['prototype']['addTo']=_0x495600,_0x4bd548['prototype']['dMultiply']=_0x3a6849,_0x4bd548['prototype']['dAddOffset']=_0x21bc6e,_0x4bd548['prototype']['multiplyLowerTo']=_0x36381f,_0x4bd548['prototype']['multiplyUpperTo']=_0x47fce2,_0x4bd548['prototype']['modInt']=_0x46728d,_0x4bd548['prototype']['millerRabin']=_0x3d9441,_0x4bd548['prototype']['clone']=_0x85a46d,_0x4bd548['prototype']['intValue']=_0x5b01ec,_0x4bd548['prototype']['byteValue']=_0x3f20d3,_0x4bd548['prototype']['shortValue']=_0x3cdb57,_0x4bd548['prototype']['signum']=_0x527ff6,_0x4bd548['prototype']['toByteArray']=_0xfa7108,_0x4bd548['prototype']['equals']=_0x352705,_0x4bd548['prototype']['min']=_0x2a87f5,_0x4bd548['prototype']['max']=_0x2a2eb2,_0x4bd548['prototype']['and']=_0x179747,_0x4bd548['prototype']['or']=_0x3ac74f,_0x4bd548['prototype']['xor']=_0x1f8395,_0x4bd548['prototype']['andNot']=_0x56ebf5,_0x4bd548['prototype']['not']=_0x2943d5,_0x4bd548['prototype']['shiftLeft']=_0x39619c,_0x4bd548['prototype']['shiftRight']=_0x2d4adf,_0x4bd548['prototype']['getLowestSetBit']=_0x20b76a,_0x4bd548['prototype']['bitCount']=_0x9d4568,_0x4bd548['prototype']['testBit']=_0x26194a,_0x4bd548['prototype']['setBit']=_0x24a2c9,_0x4bd548['prototype']['clearBit']=_0x567380,_0x4bd548['prototype']['flipBit']=_0x50c85f,_0x4bd548['prototype']['add']=_0x1f888e,_0x4bd548['prototype']['subtract']=_0x193313,_0x4bd548['prototype']['multiply']=_0x55060b,_0x4bd548['prototype']['divide']=_0x1e7f6b,_0x4bd548['prototype']['remainder']=_0x15d018,_0x4bd548['prototype']['divideAndRemainder']=_0x383753,_0x4bd548['prototype']['modPow']=_0x1d6a27,_0x4bd548['prototype']['modInverse']=_0x3aee61,_0x4bd548['prototype']['pow']=_0x3efa30,_0x4bd548['prototype']['gcd']=_0x3fff04,_0x4bd548['prototype']['isProbablePrime']=_0x570e1d,_0x4bd548['prototype']['square']=_0x263ef4;var _0x1653df=_0x4bd548;_0x1653df['prototype']['IsNegative']=function(){if(this['compareTo'](_0x1653df['ZERO'])==-0x1)return !![];else return ![];},_0x1653df['op_Equality']=function(_0x304db1,_0x27f1f0){if(_0x304db1['compareTo'](_0x27f1f0)==0x0)return !![];else return ![];},_0x1653df['op_Inequality']=function(_0x53cfd7,_0x177fa8){if(_0x53cfd7['compareTo'](_0x177fa8)!=0x0)return !![];else return ![];},_0x1653df['op_GreaterThan']=function(_0x1af862,_0x1c4d56){if(_0x1af862['compareTo'](_0x1c4d56)>0x0)return !![];else return ![];},_0x1653df['op_LessThan']=function(_0x5e3967,_0x495ca4){if(_0x5e3967['compareTo'](_0x495ca4)<0x0)return !![];else return ![];},_0x1653df['op_Addition']=function(_0xc17d3d,_0x541723){return new _0x1653df(_0xc17d3d,undefined,undefined)['add'](new _0x1653df(_0x541723,undefined,undefined));},_0x1653df['op_Subtraction']=function(_0xeffd46,_0x4db376){return new _0x1653df(_0xeffd46,undefined,undefined)['subtract'](new _0x1653df(_0x4db376,undefined,undefined));},_0x1653df['Int128Mul']=function(_0x4e77b9,_0x1d8b9d){return new _0x1653df(_0x4e77b9,undefined,undefined)['multiply'](new _0x1653df(_0x1d8b9d,undefined,undefined));},_0x1653df['op_Division']=function(_0x43b191,_0x41c319){return _0x43b191['divide'](_0x41c319);},_0x1653df['prototype']['ToDouble']=function(){return parseFloat(this['toString']());};var _0x5384e4=function(_0x5123c4,_0x4ae00d){var _0x7cc4bf;if(typeof Object['getOwnPropertyNames']==='undefined'){for(_0x7cc4bf in _0x4ae00d['prototype'])if(typeof _0x5123c4['prototype'][_0x7cc4bf]==='undefined'||_0x5123c4['prototype'][_0x7cc4bf]===Object['prototype'][_0x7cc4bf])_0x5123c4['prototype'][_0x7cc4bf]=_0x4ae00d['prototype'][_0x7cc4bf];for(_0x7cc4bf in _0x4ae00d)if(typeof _0x5123c4[_0x7cc4bf]==='undefined')_0x5123c4[_0x7cc4bf]=_0x4ae00d[_0x7cc4bf];_0x5123c4['$baseCtor']=_0x4ae00d;}else {var _0x382705=Object['getOwnPropertyNames'](_0x4ae00d['prototype']);for(var _0x15eba8=0x0;_0x15eba8<_0x382705['length'];_0x15eba8++)if(typeof Object['getOwnPropertyDescriptor'](_0x5123c4['prototype'],_0x382705[_0x15eba8])==='undefined')Object['defineProperty'](_0x5123c4['prototype'],_0x382705[_0x15eba8],Object['getOwnPropertyDescriptor'](_0x4ae00d['prototype'],_0x382705[_0x15eba8]));for(_0x7cc4bf in _0x4ae00d)if(typeof _0x5123c4[_0x7cc4bf]==='undefined')_0x5123c4[_0x7cc4bf]=_0x4ae00d[_0x7cc4bf];_0x5123c4['$baseCtor']=_0x4ae00d;}};_0x1de203['Path']=function(){return [];},_0x1de203['Path']['prototype']['push']=Array['prototype']['push'],_0x1de203['Paths']=function(){return [];},_0x1de203['Paths']['prototype']['push']=Array['prototype']['push'],_0x1de203['DoublePoint']=function(){var _0x20e7e6=arguments;this['X']=0x0,this['Y']=0x0;if(_0x20e7e6['length']===0x1)this['X']=_0x20e7e6[0x0]['X'],this['Y']=_0x20e7e6[0x0]['Y'];else _0x20e7e6['length']===0x2&&(this['X']=_0x20e7e6[0x0],this['Y']=_0x20e7e6[0x1]);},_0x1de203['DoublePoint0']=function(){this['X']=0x0,this['Y']=0x0;},_0x1de203['DoublePoint0']['prototype']=_0x1de203['DoublePoint']['prototype'],_0x1de203['DoublePoint1']=function(_0x1b8a6f){this['X']=_0x1b8a6f['X'],this['Y']=_0x1b8a6f['Y'];},_0x1de203['DoublePoint1']['prototype']=_0x1de203['DoublePoint']['prototype'],_0x1de203['DoublePoint2']=function(_0x18d8e8,_0x3c33ef){this['X']=_0x18d8e8,this['Y']=_0x3c33ef;},_0x1de203['DoublePoint2']['prototype']=_0x1de203['DoublePoint']['prototype'],_0x1de203['PolyNode']=function(){this['m_Parent']=null,this['m_polygon']=new _0x1de203['Path'](),this['m_Index']=0x0,this['m_jointype']=0x0,this['m_endtype']=0x0,this['m_Childs']=[],this['IsOpen']=![];},_0x1de203['PolyNode']['prototype']['IsHoleNode']=function(){var _0x4534d6=!![],_0x5a31f8=this['m_Parent'];while(_0x5a31f8!==null){_0x4534d6=!_0x4534d6,_0x5a31f8=_0x5a31f8['m_Parent'];}return _0x4534d6;},_0x1de203['PolyNode']['prototype']['ChildCount']=function(){return this['m_Childs']['length'];},_0x1de203['PolyNode']['prototype']['Contour']=function(){return this['m_polygon'];},_0x1de203['PolyNode']['prototype']['AddChild']=function(_0x49e045){var _0x1c11d0=this['m_Childs']['length'];this['m_Childs']['push'](_0x49e045),_0x49e045['m_Parent']=this,_0x49e045['m_Index']=_0x1c11d0;},_0x1de203['PolyNode']['prototype']['GetNext']=function(){if(this['m_Childs']['length']>0x0)return this['m_Childs'][0x0];else return this['GetNextSiblingUp']();},_0x1de203['PolyNode']['prototype']['GetNextSiblingUp']=function(){if(this['m_Parent']===null)return null;else {if(this['m_Index']===this['m_Parent']['m_Childs']['length']-0x1)return this['m_Parent']['GetNextSiblingUp']();else return this['m_Parent']['m_Childs'][this['m_Index']+0x1];}},_0x1de203['PolyNode']['prototype']['Childs']=function(){return this['m_Childs'];},_0x1de203['PolyNode']['prototype']['Parent']=function(){return this['m_Parent'];},_0x1de203['PolyNode']['prototype']['IsHole']=function(){return this['IsHoleNode']();},_0x1de203['PolyTree']=function(){this['m_AllPolys']=[],_0x1de203['PolyNode']['call'](this);},_0x1de203['PolyTree']['prototype']['Clear']=function(){for(var _0x49138a=0x0,_0x5844d8=this['m_AllPolys']['length'];_0x49138a<_0x5844d8;_0x49138a++)this['m_AllPolys'][_0x49138a]=null;this['m_AllPolys']['length']=0x0,this['m_Childs']['length']=0x0;},_0x1de203['PolyTree']['prototype']['GetFirst']=function(){if(this['m_Childs']['length']>0x0)return this['m_Childs'][0x0];else return null;},_0x1de203['PolyTree']['prototype']['Total']=function(){var _0x1adcd2=this['m_AllPolys']['length'];if(_0x1adcd2>0x0&&this['m_Childs'][0x0]!==this['m_AllPolys'][0x0])_0x1adcd2--;return _0x1adcd2;},_0x5384e4(_0x1de203['PolyTree'],_0x1de203['PolyNode']),_0x1de203['Math_Abs_Int64']=_0x1de203['Math_Abs_Int32']=_0x1de203['Math_Abs_Double']=function(_0x1f8cea){return Math['abs'](_0x1f8cea);},_0x1de203['Math_Max_Int32_Int32']=function(_0x37c8e8,_0x1836f4){return Math['max'](_0x37c8e8,_0x1836f4);};if(_0x5b454d['msie']||_0x5b454d['opera']||_0x5b454d['safari'])_0x1de203['Cast_Int32']=function(_0x149dee){return _0x149dee|0x0;};else _0x1de203['Cast_Int32']=function(_0x39280c){return ~~_0x39280c;};if(typeof Number['toInteger']==='undefined')Number['toInteger']=null;if(_0x5b454d['chrome'])_0x1de203['Cast_Int64']=function(_0x4fa074){if(_0x4fa074<-0x80000000||_0x4fa074>0x7fffffff)return _0x4fa074<0x0?Math['ceil'](_0x4fa074):Math['floor'](_0x4fa074);else return ~~_0x4fa074;};else {if(_0x5b454d['firefox']&&typeof Number['toInteger']==='function')_0x1de203['Cast_Int64']=function(_0xc52ad0){return Number['toInteger'](_0xc52ad0);};else {if(_0x5b454d['msie7']||_0x5b454d['msie8'])_0x1de203['Cast_Int64']=function(_0x312d4e){return parseInt(_0x312d4e,0xa);};else {if(_0x5b454d['msie'])_0x1de203['Cast_Int64']=function(_0x2c9f50){if(_0x2c9f50<-0x80000000||_0x2c9f50>0x7fffffff)return _0x2c9f50<0x0?Math['ceil'](_0x2c9f50):Math['floor'](_0x2c9f50);return _0x2c9f50|0x0;};else _0x1de203['Cast_Int64']=function(_0x311eb7){return _0x311eb7<0x0?Math['ceil'](_0x311eb7):Math['floor'](_0x311eb7);};}}}_0x1de203['Clear']=function(_0x44b5eb){_0x44b5eb['length']=0x0;},_0x1de203['PI']=3.141592653589793,_0x1de203['PI2']=0x2*3.141592653589793,_0x1de203['IntPoint']=function(){var _0x3f7e4e=arguments,_0x5f5056=_0x3f7e4e['length'];this['X']=0x0,this['Y']=0x0;if(_0x1de203['use_xyz']){this['Z']=0x0;if(_0x5f5056===0x3)this['X']=_0x3f7e4e[0x0],this['Y']=_0x3f7e4e[0x1],this['Z']=_0x3f7e4e[0x2];else {if(_0x5f5056===0x2)this['X']=_0x3f7e4e[0x0],this['Y']=_0x3f7e4e[0x1],this['Z']=0x0;else {if(_0x5f5056===0x1){if(_0x3f7e4e[0x0]instanceof _0x1de203['DoublePoint']){var _0x283b07=_0x3f7e4e[0x0];this['X']=_0x1de203['Clipper']['Round'](_0x283b07['X']),this['Y']=_0x1de203['Clipper']['Round'](_0x283b07['Y']),this['Z']=0x0;}else {var _0x25b94d=_0x3f7e4e[0x0];if(typeof _0x25b94d['Z']==='undefined')_0x25b94d['Z']=0x0;this['X']=_0x25b94d['X'],this['Y']=_0x25b94d['Y'],this['Z']=_0x25b94d['Z'];}}else this['X']=0x0,this['Y']=0x0,this['Z']=0x0;}}}else {if(_0x5f5056===0x2)this['X']=_0x3f7e4e[0x0],this['Y']=_0x3f7e4e[0x1];else {if(_0x5f5056===0x1){if(_0x3f7e4e[0x0]instanceof _0x1de203['DoublePoint']){var _0x283b07=_0x3f7e4e[0x0];this['X']=_0x1de203['Clipper']['Round'](_0x283b07['X']),this['Y']=_0x1de203['Clipper']['Round'](_0x283b07['Y']);}else {var _0x25b94d=_0x3f7e4e[0x0];this['X']=_0x25b94d['X'],this['Y']=_0x25b94d['Y'];}}else this['X']=0x0,this['Y']=0x0;}}},_0x1de203['IntPoint']['op_Equality']=function(_0x3a7151,_0x221ab8){return _0x3a7151['X']===_0x221ab8['X']&&_0x3a7151['Y']===_0x221ab8['Y'];},_0x1de203['IntPoint']['op_Inequality']=function(_0x560cc5,_0x4f3851){return _0x560cc5['X']!==_0x4f3851['X']||_0x560cc5['Y']!==_0x4f3851['Y'];},_0x1de203['IntPoint0']=function(){this['X']=0x0,this['Y']=0x0;if(_0x1de203['use_xyz'])this['Z']=0x0;},_0x1de203['IntPoint0']['prototype']=_0x1de203['IntPoint']['prototype'],_0x1de203['IntPoint1']=function(_0xb6e5a7){this['X']=_0xb6e5a7['X'],this['Y']=_0xb6e5a7['Y'];if(_0x1de203['use_xyz']){if(typeof _0xb6e5a7['Z']==='undefined')this['Z']=0x0;else this['Z']=_0xb6e5a7['Z'];}},_0x1de203['IntPoint1']['prototype']=_0x1de203['IntPoint']['prototype'],_0x1de203['IntPoint1dp']=function(_0x4b16a3){this['X']=_0x1de203['Clipper']['Round'](_0x4b16a3['X']),this['Y']=_0x1de203['Clipper']['Round'](_0x4b16a3['Y']);if(_0x1de203['use_xyz'])this['Z']=0x0;},_0x1de203['IntPoint1dp']['prototype']=_0x1de203['IntPoint']['prototype'],_0x1de203['IntPoint2']=function(_0x573557,_0x469dae,_0x4c5eec){this['X']=_0x573557,this['Y']=_0x469dae;if(_0x1de203['use_xyz']){if(typeof _0x4c5eec==='undefined')this['Z']=0x0;else this['Z']=_0x4c5eec;}},_0x1de203['IntPoint2']['prototype']=_0x1de203['IntPoint']['prototype'],_0x1de203['IntRect']=function(){var _0x23cb67=arguments,_0x29c7a5=_0x23cb67['length'];if(_0x29c7a5===0x4)this['left']=_0x23cb67[0x0],this['top']=_0x23cb67[0x1],this['right']=_0x23cb67[0x2],this['bottom']=_0x23cb67[0x3];else {if(_0x29c7a5===0x1){var _0x1f40f6=_0x23cb67[0x0];this['left']=_0x1f40f6['left'],this['top']=_0x1f40f6['top'],this['right']=_0x1f40f6['right'],this['bottom']=_0x1f40f6['bottom'];}else this['left']=0x0,this['top']=0x0,this['right']=0x0,this['bottom']=0x0;}},_0x1de203['IntRect0']=function(){this['left']=0x0,this['top']=0x0,this['right']=0x0,this['bottom']=0x0;},_0x1de203['IntRect0']['prototype']=_0x1de203['IntRect']['prototype'],_0x1de203['IntRect1']=function(_0x48fbe5){this['left']=_0x48fbe5['left'],this['top']=_0x48fbe5['top'],this['right']=_0x48fbe5['right'],this['bottom']=_0x48fbe5['bottom'];},_0x1de203['IntRect1']['prototype']=_0x1de203['IntRect']['prototype'],_0x1de203['IntRect4']=function(_0x2bf4a6,_0x850616,_0x2fc71b,_0x24ede2){this['left']=_0x2bf4a6,this['top']=_0x850616,this['right']=_0x2fc71b,this['bottom']=_0x24ede2;},_0x1de203['IntRect4']['prototype']=_0x1de203['IntRect']['prototype'],_0x1de203['ClipType']={'ctIntersection':0x0,'ctUnion':0x1,'ctDifference':0x2,'ctXor':0x3},_0x1de203['PolyType']={'ptSubject':0x0,'ptClip':0x1},_0x1de203['PolyFillType']={'pftEvenOdd':0x0,'pftNonZero':0x1,'pftPositive':0x2,'pftNegative':0x3},_0x1de203['JoinType']={'jtSquare':0x0,'jtRound':0x1,'jtMiter':0x2},_0x1de203['EndType']={'etOpenSquare':0x0,'etOpenRound':0x1,'etOpenButt':0x2,'etClosedLine':0x3,'etClosedPolygon':0x4},_0x1de203['EdgeSide']={'esLeft':0x0,'esRight':0x1},_0x1de203['Direction']={'dRightToLeft':0x0,'dLeftToRight':0x1},_0x1de203['TEdge']=function(){this['Bot']=new _0x1de203['IntPoint0'](),this['Curr']=new _0x1de203['IntPoint0'](),this['Top']=new _0x1de203['IntPoint0'](),this['Delta']=new _0x1de203['IntPoint0'](),this['Dx']=0x0,this['PolyTyp']=_0x1de203['PolyType']['ptSubject'],this['Side']=_0x1de203['EdgeSide']['esLeft'],this['WindDelta']=0x0,this['WindCnt']=0x0,this['WindCnt2']=0x0,this['OutIdx']=0x0,this['Next']=null,this['Prev']=null,this['NextInLML']=null,this['NextInAEL']=null,this['PrevInAEL']=null,this['NextInSEL']=null,this['PrevInSEL']=null;},_0x1de203['IntersectNode']=function(){this['Edge1']=null,this['Edge2']=null,this['Pt']=new _0x1de203['IntPoint0']();},_0x1de203['MyIntersectNodeSort']=function(){},_0x1de203['MyIntersectNodeSort']['Compare']=function(_0x68f99a,_0x4407b4){var _0x37ba12=_0x4407b4['Pt']['Y']-_0x68f99a['Pt']['Y'];if(_0x37ba12>0x0)return 0x1;else {if(_0x37ba12<0x0)return -0x1;else return 0x0;}},_0x1de203['LocalMinima']=function(){this['Y']=0x0,this['LeftBound']=null,this['RightBound']=null,this['Next']=null;},_0x1de203['Scanbeam']=function(){this['Y']=0x0,this['Next']=null;},_0x1de203['Maxima']=function(){this['X']=0x0,this['Next']=null,this['Prev']=null;},_0x1de203['OutRec']=function(){this['Idx']=0x0,this['IsHole']=![],this['IsOpen']=![],this['FirstLeft']=null,this['Pts']=null,this['BottomPt']=null,this['PolyNode']=null;},_0x1de203['OutPt']=function(){this['Idx']=0x0,this['Pt']=new _0x1de203['IntPoint0'](),this['Next']=null,this['Prev']=null;},_0x1de203['Join']=function(){this['OutPt1']=null,this['OutPt2']=null,this['OffPt']=new _0x1de203['IntPoint0']();},_0x1de203['ClipperBase']=function(){this['m_MinimaList']=null,this['m_CurrentLM']=null,this['m_edges']=new Array(),this['m_UseFullRange']=![],this['m_HasOpenPaths']=![],this['PreserveCollinear']=![],this['m_Scanbeam']=null,this['m_PolyOuts']=null,this['m_ActiveEdges']=null;},_0x1de203['ClipperBase']['horizontal']=-0x20000000000000,_0x1de203['ClipperBase']['Skip']=-0x2,_0x1de203['ClipperBase']['Unassigned']=-0x1,_0x1de203['ClipperBase']['tolerance']=1e-20,_0x1de203['ClipperBase']['loRange']=0x2d413cc,_0x1de203['ClipperBase']['hiRange']=0xfffffffffffff,_0x1de203['ClipperBase']['near_zero']=function(_0xaf1255){return _0xaf1255>-_0x1de203['ClipperBase']['tolerance']&&_0xaf1255<_0x1de203['ClipperBase']['tolerance'];},_0x1de203['ClipperBase']['IsHorizontal']=function(_0x22816b){return _0x22816b['Delta']['Y']===0x0;},_0x1de203['ClipperBase']['prototype']['PointIsVertex']=function(_0x5e1ece,_0x1a970a){var _0x274e6e=_0x1a970a;do{if(_0x1de203['IntPoint']['op_Equality'](_0x274e6e['Pt'],_0x5e1ece))return !![];_0x274e6e=_0x274e6e['Next'];}while(_0x274e6e!==_0x1a970a);return ![];},_0x1de203['ClipperBase']['prototype']['PointOnLineSegment']=function(_0xf21ac1,_0x4b9ab4,_0x449831,_0x4d2269){if(_0x4d2269)return _0xf21ac1['X']===_0x4b9ab4['X']&&_0xf21ac1['Y']===_0x4b9ab4['Y']||_0xf21ac1['X']===_0x449831['X']&&_0xf21ac1['Y']===_0x449831['Y']||_0xf21ac1['X']>_0x4b9ab4['X']===_0xf21ac1['X']<_0x449831['X']&&_0xf21ac1['Y']>_0x4b9ab4['Y']===_0xf21ac1['Y']<_0x449831['Y']&&_0x1653df['op_Equality'](_0x1653df['Int128Mul'](_0xf21ac1['X']-_0x4b9ab4['X'],_0x449831['Y']-_0x4b9ab4['Y']),_0x1653df['Int128Mul'](_0x449831['X']-_0x4b9ab4['X'],_0xf21ac1['Y']-_0x4b9ab4['Y']));else return _0xf21ac1['X']===_0x4b9ab4['X']&&_0xf21ac1['Y']===_0x4b9ab4['Y']||_0xf21ac1['X']===_0x449831['X']&&_0xf21ac1['Y']===_0x449831['Y']||_0xf21ac1['X']>_0x4b9ab4['X']===_0xf21ac1['X']<_0x449831['X']&&_0xf21ac1['Y']>_0x4b9ab4['Y']===_0xf21ac1['Y']<_0x449831['Y']&&(_0xf21ac1['X']-_0x4b9ab4['X'])*(_0x449831['Y']-_0x4b9ab4['Y'])===(_0x449831['X']-_0x4b9ab4['X'])*(_0xf21ac1['Y']-_0x4b9ab4['Y']);},_0x1de203['ClipperBase']['prototype']['PointOnPolygon']=function(_0x15e2dc,_0x193843,_0x90be52){var _0x3d55b6=_0x193843;while(!![]){if(this['PointOnLineSegment'](_0x15e2dc,_0x3d55b6['Pt'],_0x3d55b6['Next']['Pt'],_0x90be52))return !![];_0x3d55b6=_0x3d55b6['Next'];if(_0x3d55b6===_0x193843)break;}return ![];},_0x1de203['ClipperBase']['prototype']['SlopesEqual']=_0x1de203['ClipperBase']['SlopesEqual']=function(){var _0x49f85a=arguments,_0x3c379c=_0x49f85a['length'],_0x4baceb,_0x1e2b82,_0x5ce47e,_0x5ba314,_0x33e9ed,_0x4b7e26,_0x2cefe0;if(_0x3c379c===0x3){_0x4baceb=_0x49f85a[0x0],_0x1e2b82=_0x49f85a[0x1],_0x2cefe0=_0x49f85a[0x2];if(_0x2cefe0)return _0x1653df['op_Equality'](_0x1653df['Int128Mul'](_0x4baceb['Delta']['Y'],_0x1e2b82['Delta']['X']),_0x1653df['Int128Mul'](_0x4baceb['Delta']['X'],_0x1e2b82['Delta']['Y']));else return _0x1de203['Cast_Int64'](_0x4baceb['Delta']['Y']*_0x1e2b82['Delta']['X'])===_0x1de203['Cast_Int64'](_0x4baceb['Delta']['X']*_0x1e2b82['Delta']['Y']);}else {if(_0x3c379c===0x4){_0x5ce47e=_0x49f85a[0x0],_0x5ba314=_0x49f85a[0x1],_0x33e9ed=_0x49f85a[0x2],_0x2cefe0=_0x49f85a[0x3];if(_0x2cefe0)return _0x1653df['op_Equality'](_0x1653df['Int128Mul'](_0x5ce47e['Y']-_0x5ba314['Y'],_0x5ba314['X']-_0x33e9ed['X']),_0x1653df['Int128Mul'](_0x5ce47e['X']-_0x5ba314['X'],_0x5ba314['Y']-_0x33e9ed['Y']));else return _0x1de203['Cast_Int64']((_0x5ce47e['Y']-_0x5ba314['Y'])*(_0x5ba314['X']-_0x33e9ed['X']))-_0x1de203['Cast_Int64']((_0x5ce47e['X']-_0x5ba314['X'])*(_0x5ba314['Y']-_0x33e9ed['Y']))===0x0;}else {_0x5ce47e=_0x49f85a[0x0],_0x5ba314=_0x49f85a[0x1],_0x33e9ed=_0x49f85a[0x2],_0x4b7e26=_0x49f85a[0x3],_0x2cefe0=_0x49f85a[0x4];if(_0x2cefe0)return _0x1653df['op_Equality'](_0x1653df['Int128Mul'](_0x5ce47e['Y']-_0x5ba314['Y'],_0x33e9ed['X']-_0x4b7e26['X']),_0x1653df['Int128Mul'](_0x5ce47e['X']-_0x5ba314['X'],_0x33e9ed['Y']-_0x4b7e26['Y']));else return _0x1de203['Cast_Int64']((_0x5ce47e['Y']-_0x5ba314['Y'])*(_0x33e9ed['X']-_0x4b7e26['X']))-_0x1de203['Cast_Int64']((_0x5ce47e['X']-_0x5ba314['X'])*(_0x33e9ed['Y']-_0x4b7e26['Y']))===0x0;}}},_0x1de203['ClipperBase']['SlopesEqual3']=function(_0x47d68b,_0x55be50,_0x10f764){if(_0x10f764)return _0x1653df['op_Equality'](_0x1653df['Int128Mul'](_0x47d68b['Delta']['Y'],_0x55be50['Delta']['X']),_0x1653df['Int128Mul'](_0x47d68b['Delta']['X'],_0x55be50['Delta']['Y']));else return _0x1de203['Cast_Int64'](_0x47d68b['Delta']['Y']*_0x55be50['Delta']['X'])===_0x1de203['Cast_Int64'](_0x47d68b['Delta']['X']*_0x55be50['Delta']['Y']);},_0x1de203['ClipperBase']['SlopesEqual4']=function(_0x478140,_0x2af0a0,_0xa67081,_0x469957){if(_0x469957)return _0x1653df['op_Equality'](_0x1653df['Int128Mul'](_0x478140['Y']-_0x2af0a0['Y'],_0x2af0a0['X']-_0xa67081['X']),_0x1653df['Int128Mul'](_0x478140['X']-_0x2af0a0['X'],_0x2af0a0['Y']-_0xa67081['Y']));else return _0x1de203['Cast_Int64']((_0x478140['Y']-_0x2af0a0['Y'])*(_0x2af0a0['X']-_0xa67081['X']))-_0x1de203['Cast_Int64']((_0x478140['X']-_0x2af0a0['X'])*(_0x2af0a0['Y']-_0xa67081['Y']))===0x0;},_0x1de203['ClipperBase']['SlopesEqual5']=function(_0x11aa73,_0x52cf05,_0x41e156,_0x42dec3,_0x2a8e92){if(_0x2a8e92)return _0x1653df['op_Equality'](_0x1653df['Int128Mul'](_0x11aa73['Y']-_0x52cf05['Y'],_0x41e156['X']-_0x42dec3['X']),_0x1653df['Int128Mul'](_0x11aa73['X']-_0x52cf05['X'],_0x41e156['Y']-_0x42dec3['Y']));else return _0x1de203['Cast_Int64']((_0x11aa73['Y']-_0x52cf05['Y'])*(_0x41e156['X']-_0x42dec3['X']))-_0x1de203['Cast_Int64']((_0x11aa73['X']-_0x52cf05['X'])*(_0x41e156['Y']-_0x42dec3['Y']))===0x0;},_0x1de203['ClipperBase']['prototype']['Clear']=function(){this['DisposeLocalMinimaList']();for(var _0x426389=0x0,_0x27feb2=this['m_edges']['length'];_0x426389<_0x27feb2;++_0x426389){for(var _0x2f8461=0x0,_0x3443aa=this['m_edges'][_0x426389]['length'];_0x2f8461<_0x3443aa;++_0x2f8461)this['m_edges'][_0x426389][_0x2f8461]=null;_0x1de203['Clear'](this['m_edges'][_0x426389]);}_0x1de203['Clear'](this['m_edges']),this['m_UseFullRange']=![],this['m_HasOpenPaths']=![];},_0x1de203['ClipperBase']['prototype']['DisposeLocalMinimaList']=function(){while(this['m_MinimaList']!==null){var _0x3537dd=this['m_MinimaList']['Next'];this['m_MinimaList']=null,this['m_MinimaList']=_0x3537dd;}this['m_CurrentLM']=null;},_0x1de203['ClipperBase']['prototype']['RangeTest']=function(_0x43f1ed,_0x5cae0d){if(_0x5cae0d['Value']){if(_0x43f1ed['X']>_0x1de203['ClipperBase']['hiRange']||_0x43f1ed['Y']>_0x1de203['ClipperBase']['hiRange']||-_0x43f1ed['X']>_0x1de203['ClipperBase']['hiRange']||-_0x43f1ed['Y']>_0x1de203['ClipperBase']['hiRange'])_0x1de203['Error']('Coordinate\x20outside\x20allowed\x20range\x20in\x20RangeTest().');}else (_0x43f1ed['X']>_0x1de203['ClipperBase']['loRange']||_0x43f1ed['Y']>_0x1de203['ClipperBase']['loRange']||-_0x43f1ed['X']>_0x1de203['ClipperBase']['loRange']||-_0x43f1ed['Y']>_0x1de203['ClipperBase']['loRange'])&&(_0x5cae0d['Value']=!![],this['RangeTest'](_0x43f1ed,_0x5cae0d));},_0x1de203['ClipperBase']['prototype']['InitEdge']=function(_0x55cdaa,_0x233615,_0x530f09,_0x420904){_0x55cdaa['Next']=_0x233615,_0x55cdaa['Prev']=_0x530f09,_0x55cdaa['Curr']['X']=_0x420904['X'],_0x55cdaa['Curr']['Y']=_0x420904['Y'];if(_0x1de203['use_xyz'])_0x55cdaa['Curr']['Z']=_0x420904['Z'];_0x55cdaa['OutIdx']=-0x1;},_0x1de203['ClipperBase']['prototype']['InitEdge2']=function(_0x5606c0,_0x28b4d1){if(_0x5606c0['Curr']['Y']>=_0x5606c0['Next']['Curr']['Y']){_0x5606c0['Bot']['X']=_0x5606c0['Curr']['X'],_0x5606c0['Bot']['Y']=_0x5606c0['Curr']['Y'];if(_0x1de203['use_xyz'])_0x5606c0['Bot']['Z']=_0x5606c0['Curr']['Z'];_0x5606c0['Top']['X']=_0x5606c0['Next']['Curr']['X'],_0x5606c0['Top']['Y']=_0x5606c0['Next']['Curr']['Y'];if(_0x1de203['use_xyz'])_0x5606c0['Top']['Z']=_0x5606c0['Next']['Curr']['Z'];}else {_0x5606c0['Top']['X']=_0x5606c0['Curr']['X'],_0x5606c0['Top']['Y']=_0x5606c0['Curr']['Y'];if(_0x1de203['use_xyz'])_0x5606c0['Top']['Z']=_0x5606c0['Curr']['Z'];_0x5606c0['Bot']['X']=_0x5606c0['Next']['Curr']['X'],_0x5606c0['Bot']['Y']=_0x5606c0['Next']['Curr']['Y'];if(_0x1de203['use_xyz'])_0x5606c0['Bot']['Z']=_0x5606c0['Next']['Curr']['Z'];}this['SetDx'](_0x5606c0),_0x5606c0['PolyTyp']=_0x28b4d1;},_0x1de203['ClipperBase']['prototype']['FindNextLocMin']=function(_0x5f0190){var _0x1ddbd8;for(;;){while(_0x1de203['IntPoint']['op_Inequality'](_0x5f0190['Bot'],_0x5f0190['Prev']['Bot'])||_0x1de203['IntPoint']['op_Equality'](_0x5f0190['Curr'],_0x5f0190['Top']))_0x5f0190=_0x5f0190['Next'];if(_0x5f0190['Dx']!==_0x1de203['ClipperBase']['horizontal']&&_0x5f0190['Prev']['Dx']!==_0x1de203['ClipperBase']['horizontal'])break;while(_0x5f0190['Prev']['Dx']===_0x1de203['ClipperBase']['horizontal'])_0x5f0190=_0x5f0190['Prev'];_0x1ddbd8=_0x5f0190;while(_0x5f0190['Dx']===_0x1de203['ClipperBase']['horizontal'])_0x5f0190=_0x5f0190['Next'];if(_0x5f0190['Top']['Y']===_0x5f0190['Prev']['Bot']['Y'])continue;if(_0x1ddbd8['Prev']['Bot']['X']<_0x5f0190['Bot']['X'])_0x5f0190=_0x1ddbd8;break;}return _0x5f0190;},_0x1de203['ClipperBase']['prototype']['ProcessBound']=function(_0x393c09,_0x2a803a){var _0xcc9d24,_0x5251d2=_0x393c09,_0x4e4254;if(_0x5251d2['OutIdx']===_0x1de203['ClipperBase']['Skip']){_0x393c09=_0x5251d2;if(_0x2a803a){while(_0x393c09['Top']['Y']===_0x393c09['Next']['Bot']['Y'])_0x393c09=_0x393c09['Next'];while(_0x393c09!==_0x5251d2&&_0x393c09['Dx']===_0x1de203['ClipperBase']['horizontal'])_0x393c09=_0x393c09['Prev'];}else {while(_0x393c09['Top']['Y']===_0x393c09['Prev']['Bot']['Y'])_0x393c09=_0x393c09['Prev'];while(_0x393c09!==_0x5251d2&&_0x393c09['Dx']===_0x1de203['ClipperBase']['horizontal'])_0x393c09=_0x393c09['Next'];}if(_0x393c09===_0x5251d2){if(_0x2a803a)_0x5251d2=_0x393c09['Next'];else _0x5251d2=_0x393c09['Prev'];}else {if(_0x2a803a)_0x393c09=_0x5251d2['Next'];else _0x393c09=_0x5251d2['Prev'];var _0x3749ec=new _0x1de203['LocalMinima']();_0x3749ec['Next']=null,_0x3749ec['Y']=_0x393c09['Bot']['Y'],_0x3749ec['LeftBound']=null,_0x3749ec['RightBound']=_0x393c09,_0x393c09['WindDelta']=0x0,_0x5251d2=this['ProcessBound'](_0x393c09,_0x2a803a),this['InsertLocalMinima'](_0x3749ec);}return _0x5251d2;}if(_0x393c09['Dx']===_0x1de203['ClipperBase']['horizontal']){if(_0x2a803a)_0xcc9d24=_0x393c09['Prev'];else _0xcc9d24=_0x393c09['Next'];if(_0xcc9d24['Dx']===_0x1de203['ClipperBase']['horizontal']){if(_0xcc9d24['Bot']['X']!==_0x393c09['Bot']['X']&&_0xcc9d24['Top']['X']!==_0x393c09['Bot']['X'])this['ReverseHorizontal'](_0x393c09);}else {if(_0xcc9d24['Bot']['X']!==_0x393c09['Bot']['X'])this['ReverseHorizontal'](_0x393c09);}}_0xcc9d24=_0x393c09;if(_0x2a803a){while(_0x5251d2['Top']['Y']===_0x5251d2['Next']['Bot']['Y']&&_0x5251d2['Next']['OutIdx']!==_0x1de203['ClipperBase']['Skip'])_0x5251d2=_0x5251d2['Next'];if(_0x5251d2['Dx']===_0x1de203['ClipperBase']['horizontal']&&_0x5251d2['Next']['OutIdx']!==_0x1de203['ClipperBase']['Skip']){_0x4e4254=_0x5251d2;while(_0x4e4254['Prev']['Dx']===_0x1de203['ClipperBase']['horizontal'])_0x4e4254=_0x4e4254['Prev'];if(_0x4e4254['Prev']['Top']['X']>_0x5251d2['Next']['Top']['X'])_0x5251d2=_0x4e4254['Prev'];}while(_0x393c09!==_0x5251d2){_0x393c09['NextInLML']=_0x393c09['Next'];if(_0x393c09['Dx']===_0x1de203['ClipperBase']['horizontal']&&_0x393c09!==_0xcc9d24&&_0x393c09['Bot']['X']!==_0x393c09['Prev']['Top']['X'])this['ReverseHorizontal'](_0x393c09);_0x393c09=_0x393c09['Next'];}if(_0x393c09['Dx']===_0x1de203['ClipperBase']['horizontal']&&_0x393c09!==_0xcc9d24&&_0x393c09['Bot']['X']!==_0x393c09['Prev']['Top']['X'])this['ReverseHorizontal'](_0x393c09);_0x5251d2=_0x5251d2['Next'];}else {while(_0x5251d2['Top']['Y']===_0x5251d2['Prev']['Bot']['Y']&&_0x5251d2['Prev']['OutIdx']!==_0x1de203['ClipperBase']['Skip'])_0x5251d2=_0x5251d2['Prev'];if(_0x5251d2['Dx']===_0x1de203['ClipperBase']['horizontal']&&_0x5251d2['Prev']['OutIdx']!==_0x1de203['ClipperBase']['Skip']){_0x4e4254=_0x5251d2;while(_0x4e4254['Next']['Dx']===_0x1de203['ClipperBase']['horizontal'])_0x4e4254=_0x4e4254['Next'];(_0x4e4254['Next']['Top']['X']===_0x5251d2['Prev']['Top']['X']||_0x4e4254['Next']['Top']['X']>_0x5251d2['Prev']['Top']['X'])&&(_0x5251d2=_0x4e4254['Next']);}while(_0x393c09!==_0x5251d2){_0x393c09['NextInLML']=_0x393c09['Prev'];if(_0x393c09['Dx']===_0x1de203['ClipperBase']['horizontal']&&_0x393c09!==_0xcc9d24&&_0x393c09['Bot']['X']!==_0x393c09['Next']['Top']['X'])this['ReverseHorizontal'](_0x393c09);_0x393c09=_0x393c09['Prev'];}if(_0x393c09['Dx']===_0x1de203['ClipperBase']['horizontal']&&_0x393c09!==_0xcc9d24&&_0x393c09['Bot']['X']!==_0x393c09['Next']['Top']['X'])this['ReverseHorizontal'](_0x393c09);_0x5251d2=_0x5251d2['Prev'];}return _0x5251d2;},_0x1de203['ClipperBase']['prototype']['AddPath']=function(_0x44c4a8,_0x10db57,_0x191f73){if(_0x1de203['use_lines']){if(!_0x191f73&&_0x10db57===_0x1de203['PolyType']['ptClip'])_0x1de203['Error']('AddPath:\x20Open\x20paths\x20must\x20be\x20subject.');}else {if(!_0x191f73)_0x1de203['Error']('AddPath:\x20Open\x20paths\x20have\x20been\x20disabled.');}var _0x3211d8=_0x44c4a8['length']-0x1;if(_0x191f73){while(_0x3211d8>0x0&&_0x1de203['IntPoint']['op_Equality'](_0x44c4a8[_0x3211d8],_0x44c4a8[0x0]))--_0x3211d8;}while(_0x3211d8>0x0&&_0x1de203['IntPoint']['op_Equality'](_0x44c4a8[_0x3211d8],_0x44c4a8[_0x3211d8-0x1]))--_0x3211d8;if(_0x191f73&&_0x3211d8<0x2||!_0x191f73&&_0x3211d8<0x1)return ![];var _0x35221c=new Array();for(var _0x42967c=0x0;_0x42967c<=_0x3211d8;_0x42967c++)_0x35221c['push'](new _0x1de203['TEdge']());var _0x4070da=!![];_0x35221c[0x1]['Curr']['X']=_0x44c4a8[0x1]['X'],_0x35221c[0x1]['Curr']['Y']=_0x44c4a8[0x1]['Y'];if(_0x1de203['use_xyz'])_0x35221c[0x1]['Curr']['Z']=_0x44c4a8[0x1]['Z'];var _0x50fc3f={'Value':this['m_UseFullRange']};this['RangeTest'](_0x44c4a8[0x0],_0x50fc3f),this['m_UseFullRange']=_0x50fc3f['Value'],_0x50fc3f['Value']=this['m_UseFullRange'],this['RangeTest'](_0x44c4a8[_0x3211d8],_0x50fc3f),this['m_UseFullRange']=_0x50fc3f['Value'],this['InitEdge'](_0x35221c[0x0],_0x35221c[0x1],_0x35221c[_0x3211d8],_0x44c4a8[0x0]),this['InitEdge'](_0x35221c[_0x3211d8],_0x35221c[0x0],_0x35221c[_0x3211d8-0x1],_0x44c4a8[_0x3211d8]);for(var _0x42967c=_0x3211d8-0x1;_0x42967c>=0x1;--_0x42967c){_0x50fc3f['Value']=this['m_UseFullRange'],this['RangeTest'](_0x44c4a8[_0x42967c],_0x50fc3f),this['m_UseFullRange']=_0x50fc3f['Value'],this['InitEdge'](_0x35221c[_0x42967c],_0x35221c[_0x42967c+0x1],_0x35221c[_0x42967c-0x1],_0x44c4a8[_0x42967c]);}var _0x3e24aa=_0x35221c[0x0],_0x1d4f5a=_0x3e24aa,_0x46ce63=_0x3e24aa;for(;;){if(_0x1d4f5a['Curr']===_0x1d4f5a['Next']['Curr']&&(_0x191f73||_0x1d4f5a['Next']!==_0x3e24aa)){if(_0x1d4f5a===_0x1d4f5a['Next'])break;if(_0x1d4f5a===_0x3e24aa)_0x3e24aa=_0x1d4f5a['Next'];_0x1d4f5a=this['RemoveEdge'](_0x1d4f5a),_0x46ce63=_0x1d4f5a;continue;}if(_0x1d4f5a['Prev']===_0x1d4f5a['Next'])break;else {if(_0x191f73&&_0x1de203['ClipperBase']['SlopesEqual4'](_0x1d4f5a['Prev']['Curr'],_0x1d4f5a['Curr'],_0x1d4f5a['Next']['Curr'],this['m_UseFullRange'])&&(!this['PreserveCollinear']||!this['Pt2IsBetweenPt1AndPt3'](_0x1d4f5a['Prev']['Curr'],_0x1d4f5a['Curr'],_0x1d4f5a['Next']['Curr']))){if(_0x1d4f5a===_0x3e24aa)_0x3e24aa=_0x1d4f5a['Next'];_0x1d4f5a=this['RemoveEdge'](_0x1d4f5a),_0x1d4f5a=_0x1d4f5a['Prev'],_0x46ce63=_0x1d4f5a;continue;}}_0x1d4f5a=_0x1d4f5a['Next'];if(_0x1d4f5a===_0x46ce63||!_0x191f73&&_0x1d4f5a['Next']===_0x3e24aa)break;}if(!_0x191f73&&_0x1d4f5a===_0x1d4f5a['Next']||_0x191f73&&_0x1d4f5a['Prev']===_0x1d4f5a['Next'])return ![];!_0x191f73&&(this['m_HasOpenPaths']=!![],_0x3e24aa['Prev']['OutIdx']=_0x1de203['ClipperBase']['Skip']);_0x1d4f5a=_0x3e24aa;do{this['InitEdge2'](_0x1d4f5a,_0x10db57),_0x1d4f5a=_0x1d4f5a['Next'];if(_0x4070da&&_0x1d4f5a['Curr']['Y']!==_0x3e24aa['Curr']['Y'])_0x4070da=![];}while(_0x1d4f5a!==_0x3e24aa);if(_0x4070da){if(_0x191f73)return ![];_0x1d4f5a['Prev']['OutIdx']=_0x1de203['ClipperBase']['Skip'];var _0x178b13=new _0x1de203['LocalMinima']();_0x178b13['Next']=null,_0x178b13['Y']=_0x1d4f5a['Bot']['Y'],_0x178b13['LeftBound']=null,_0x178b13['RightBound']=_0x1d4f5a,_0x178b13['RightBound']['Side']=_0x1de203['EdgeSide']['esRight'],_0x178b13['RightBound']['WindDelta']=0x0;for(;;){if(_0x1d4f5a['Bot']['X']!==_0x1d4f5a['Prev']['Top']['X'])this['ReverseHorizontal'](_0x1d4f5a);if(_0x1d4f5a['Next']['OutIdx']===_0x1de203['ClipperBase']['Skip'])break;_0x1d4f5a['NextInLML']=_0x1d4f5a['Next'],_0x1d4f5a=_0x1d4f5a['Next'];}return this['InsertLocalMinima'](_0x178b13),this['m_edges']['push'](_0x35221c),!![];}this['m_edges']['push'](_0x35221c);var _0x31be40,_0x3a626a=null;if(_0x1de203['IntPoint']['op_Equality'](_0x1d4f5a['Prev']['Bot'],_0x1d4f5a['Prev']['Top']))_0x1d4f5a=_0x1d4f5a['Next'];for(;;){_0x1d4f5a=this['FindNextLocMin'](_0x1d4f5a);if(_0x1d4f5a===_0x3a626a)break;else {if(_0x3a626a===null)_0x3a626a=_0x1d4f5a;}var _0x178b13=new _0x1de203['LocalMinima']();_0x178b13['Next']=null,_0x178b13['Y']=_0x1d4f5a['Bot']['Y'];_0x1d4f5a['Dx']<_0x1d4f5a['Prev']['Dx']?(_0x178b13['LeftBound']=_0x1d4f5a['Prev'],_0x178b13['RightBound']=_0x1d4f5a,_0x31be40=![]):(_0x178b13['LeftBound']=_0x1d4f5a,_0x178b13['RightBound']=_0x1d4f5a['Prev'],_0x31be40=!![]);_0x178b13['LeftBound']['Side']=_0x1de203['EdgeSide']['esLeft'],_0x178b13['RightBound']['Side']=_0x1de203['EdgeSide']['esRight'];if(!_0x191f73)_0x178b13['LeftBound']['WindDelta']=0x0;else {if(_0x178b13['LeftBound']['Next']===_0x178b13['RightBound'])_0x178b13['LeftBound']['WindDelta']=-0x1;else _0x178b13['LeftBound']['WindDelta']=0x1;}_0x178b13['RightBound']['WindDelta']=-_0x178b13['LeftBound']['WindDelta'],_0x1d4f5a=this['ProcessBound'](_0x178b13['LeftBound'],_0x31be40);if(_0x1d4f5a['OutIdx']===_0x1de203['ClipperBase']['Skip'])_0x1d4f5a=this['ProcessBound'](_0x1d4f5a,_0x31be40);var _0x3da905=this['ProcessBound'](_0x178b13['RightBound'],!_0x31be40);if(_0x3da905['OutIdx']===_0x1de203['ClipperBase']['Skip'])_0x3da905=this['ProcessBound'](_0x3da905,!_0x31be40);if(_0x178b13['LeftBound']['OutIdx']===_0x1de203['ClipperBase']['Skip'])_0x178b13['LeftBound']=null;else {if(_0x178b13['RightBound']['OutIdx']===_0x1de203['ClipperBase']['Skip'])_0x178b13['RightBound']=null;}this['InsertLocalMinima'](_0x178b13);if(!_0x31be40)_0x1d4f5a=_0x3da905;}return !![];},_0x1de203['ClipperBase']['prototype']['AddPaths']=function(_0x4d1105,_0x6173d9,_0x59127a){var _0x250b94=![];for(var _0x575805=0x0,_0x137ddf=_0x4d1105['length'];_0x575805<_0x137ddf;++_0x575805)if(this['AddPath'](_0x4d1105[_0x575805],_0x6173d9,_0x59127a))_0x250b94=!![];return _0x250b94;},_0x1de203['ClipperBase']['prototype']['Pt2IsBetweenPt1AndPt3']=function(_0x4b5b7a,_0x546910,_0x43463f){if(_0x1de203['IntPoint']['op_Equality'](_0x4b5b7a,_0x43463f)||_0x1de203['IntPoint']['op_Equality'](_0x4b5b7a,_0x546910)||_0x1de203['IntPoint']['op_Equality'](_0x43463f,_0x546910))return ![];else {if(_0x4b5b7a['X']!==_0x43463f['X'])return _0x546910['X']>_0x4b5b7a['X']===_0x546910['X']<_0x43463f['X'];else return _0x546910['Y']>_0x4b5b7a['Y']===_0x546910['Y']<_0x43463f['Y'];}},_0x1de203['ClipperBase']['prototype']['RemoveEdge']=function(_0x41b67f){_0x41b67f['Prev']['Next']=_0x41b67f['Next'],_0x41b67f['Next']['Prev']=_0x41b67f['Prev'];var _0x243d9f=_0x41b67f['Next'];return _0x41b67f['Prev']=null,_0x243d9f;},_0x1de203['ClipperBase']['prototype']['SetDx']=function(_0x1213b8){_0x1213b8['Delta']['X']=_0x1213b8['Top']['X']-_0x1213b8['Bot']['X'],_0x1213b8['Delta']['Y']=_0x1213b8['Top']['Y']-_0x1213b8['Bot']['Y'];if(_0x1213b8['Delta']['Y']===0x0)_0x1213b8['Dx']=_0x1de203['ClipperBase']['horizontal'];else _0x1213b8['Dx']=_0x1213b8['Delta']['X']/_0x1213b8['Delta']['Y'];},_0x1de203['ClipperBase']['prototype']['InsertLocalMinima']=function(_0x5671ae){if(this['m_MinimaList']===null)this['m_MinimaList']=_0x5671ae;else {if(_0x5671ae['Y']>=this['m_MinimaList']['Y'])_0x5671ae['Next']=this['m_MinimaList'],this['m_MinimaList']=_0x5671ae;else {var _0x40c855=this['m_MinimaList'];while(_0x40c855['Next']!==null&&_0x5671ae['Y']<_0x40c855['Next']['Y'])_0x40c855=_0x40c855['Next'];_0x5671ae['Next']=_0x40c855['Next'],_0x40c855['Next']=_0x5671ae;}}},_0x1de203['ClipperBase']['prototype']['PopLocalMinima']=function(_0x42d85b,_0x3df677){_0x3df677['v']=this['m_CurrentLM'];if(this['m_CurrentLM']!==null&&this['m_CurrentLM']['Y']===_0x42d85b)return this['m_CurrentLM']=this['m_CurrentLM']['Next'],!![];return ![];},_0x1de203['ClipperBase']['prototype']['ReverseHorizontal']=function(_0x472191){var _0x39f64c=_0x472191['Top']['X'];_0x472191['Top']['X']=_0x472191['Bot']['X'],_0x472191['Bot']['X']=_0x39f64c,_0x1de203['use_xyz']&&(_0x39f64c=_0x472191['Top']['Z'],_0x472191['Top']['Z']=_0x472191['Bot']['Z'],_0x472191['Bot']['Z']=_0x39f64c);},_0x1de203['ClipperBase']['prototype']['Reset']=function(){this['m_CurrentLM']=this['m_MinimaList'];if(this['m_CurrentLM']===null)return;this['m_Scanbeam']=null;var _0x5a355f=this['m_MinimaList'];while(_0x5a355f!==null){this['InsertScanbeam'](_0x5a355f['Y']);var _0x140e34=_0x5a355f['LeftBound'];if(_0x140e34!==null){_0x140e34['Curr']['X']=_0x140e34['Bot']['X'],_0x140e34['Curr']['Y']=_0x140e34['Bot']['Y'];if(_0x1de203['use_xyz'])_0x140e34['Curr']['Z']=_0x140e34['Bot']['Z'];_0x140e34['OutIdx']=_0x1de203['ClipperBase']['Unassigned'];}_0x140e34=_0x5a355f['RightBound'];if(_0x140e34!==null){_0x140e34['Curr']['X']=_0x140e34['Bot']['X'],_0x140e34['Curr']['Y']=_0x140e34['Bot']['Y'];if(_0x1de203['use_xyz'])_0x140e34['Curr']['Z']=_0x140e34['Bot']['Z'];_0x140e34['OutIdx']=_0x1de203['ClipperBase']['Unassigned'];}_0x5a355f=_0x5a355f['Next'];}this['m_ActiveEdges']=null;},_0x1de203['ClipperBase']['prototype']['InsertScanbeam']=function(_0x413122){if(this['m_Scanbeam']===null)this['m_Scanbeam']=new _0x1de203['Scanbeam'](),this['m_Scanbeam']['Next']=null,this['m_Scanbeam']['Y']=_0x413122;else {if(_0x413122>this['m_Scanbeam']['Y']){var _0x440f61=new _0x1de203['Scanbeam']();_0x440f61['Y']=_0x413122,_0x440f61['Next']=this['m_Scanbeam'],this['m_Scanbeam']=_0x440f61;}else {var _0x46d567=this['m_Scanbeam'];while(_0x46d567['Next']!==null&&_0x413122<=_0x46d567['Next']['Y']){_0x46d567=_0x46d567['Next'];}if(_0x413122===_0x46d567['Y'])return;var _0x134acd=new _0x1de203['Scanbeam']();_0x134acd['Y']=_0x413122,_0x134acd['Next']=_0x46d567['Next'],_0x46d567['Next']=_0x134acd;}}},_0x1de203['ClipperBase']['prototype']['PopScanbeam']=function(_0x3c22ab){if(this['m_Scanbeam']===null)return _0x3c22ab['v']=0x0,![];return _0x3c22ab['v']=this['m_Scanbeam']['Y'],this['m_Scanbeam']=this['m_Scanbeam']['Next'],!![];},_0x1de203['ClipperBase']['prototype']['LocalMinimaPending']=function(){return this['m_CurrentLM']!==null;},_0x1de203['ClipperBase']['prototype']['CreateOutRec']=function(){var _0x574bfa=new _0x1de203['OutRec']();return _0x574bfa['Idx']=_0x1de203['ClipperBase']['Unassigned'],_0x574bfa['IsHole']=![],_0x574bfa['IsOpen']=![],_0x574bfa['FirstLeft']=null,_0x574bfa['Pts']=null,_0x574bfa['BottomPt']=null,_0x574bfa['PolyNode']=null,this['m_PolyOuts']['push'](_0x574bfa),_0x574bfa['Idx']=this['m_PolyOuts']['length']-0x1,_0x574bfa;},_0x1de203['ClipperBase']['prototype']['DisposeOutRec']=function(_0x528d57){var _0x430bc0=this['m_PolyOuts'][_0x528d57];_0x430bc0['Pts']=null,_0x430bc0=null,this['m_PolyOuts'][_0x528d57]=null;},_0x1de203['ClipperBase']['prototype']['UpdateEdgeIntoAEL']=function(_0x4ba193){_0x4ba193['NextInLML']===null&&_0x1de203['Error']('UpdateEdgeIntoAEL:\x20invalid\x20call');var _0x809d82=_0x4ba193['PrevInAEL'],_0x30c2c9=_0x4ba193['NextInAEL'];return _0x4ba193['NextInLML']['OutIdx']=_0x4ba193['OutIdx'],_0x809d82!==null?_0x809d82['NextInAEL']=_0x4ba193['NextInLML']:this['m_ActiveEdges']=_0x4ba193['NextInLML'],_0x30c2c9!==null&&(_0x30c2c9['PrevInAEL']=_0x4ba193['NextInLML']),_0x4ba193['NextInLML']['Side']=_0x4ba193['Side'],_0x4ba193['NextInLML']['WindDelta']=_0x4ba193['WindDelta'],_0x4ba193['NextInLML']['WindCnt']=_0x4ba193['WindCnt'],_0x4ba193['NextInLML']['WindCnt2']=_0x4ba193['WindCnt2'],_0x4ba193=_0x4ba193['NextInLML'],_0x4ba193['Curr']['X']=_0x4ba193['Bot']['X'],_0x4ba193['Curr']['Y']=_0x4ba193['Bot']['Y'],_0x4ba193['PrevInAEL']=_0x809d82,_0x4ba193['NextInAEL']=_0x30c2c9,!_0x1de203['ClipperBase']['IsHorizontal'](_0x4ba193)&&this['InsertScanbeam'](_0x4ba193['Top']['Y']),_0x4ba193;},_0x1de203['ClipperBase']['prototype']['SwapPositionsInAEL']=function(_0x3aefae,_0x875c25){if(_0x3aefae['NextInAEL']===_0x3aefae['PrevInAEL']||_0x875c25['NextInAEL']===_0x875c25['PrevInAEL'])return;if(_0x3aefae['NextInAEL']===_0x875c25){var _0x41234f=_0x875c25['NextInAEL'];_0x41234f!==null&&(_0x41234f['PrevInAEL']=_0x3aefae);var _0x2173df=_0x3aefae['PrevInAEL'];_0x2173df!==null&&(_0x2173df['NextInAEL']=_0x875c25),_0x875c25['PrevInAEL']=_0x2173df,_0x875c25['NextInAEL']=_0x3aefae,_0x3aefae['PrevInAEL']=_0x875c25,_0x3aefae['NextInAEL']=_0x41234f;}else {if(_0x875c25['NextInAEL']===_0x3aefae){var _0x9a2c62=_0x3aefae['NextInAEL'];_0x9a2c62!==null&&(_0x9a2c62['PrevInAEL']=_0x875c25);var _0x54880b=_0x875c25['PrevInAEL'];_0x54880b!==null&&(_0x54880b['NextInAEL']=_0x3aefae),_0x3aefae['PrevInAEL']=_0x54880b,_0x3aefae['NextInAEL']=_0x875c25,_0x875c25['PrevInAEL']=_0x3aefae,_0x875c25['NextInAEL']=_0x9a2c62;}else {var _0x485619=_0x3aefae['NextInAEL'],_0x4aa594=_0x3aefae['PrevInAEL'];_0x3aefae['NextInAEL']=_0x875c25['NextInAEL'],_0x3aefae['NextInAEL']!==null&&(_0x3aefae['NextInAEL']['PrevInAEL']=_0x3aefae),_0x3aefae['PrevInAEL']=_0x875c25['PrevInAEL'],_0x3aefae['PrevInAEL']!==null&&(_0x3aefae['PrevInAEL']['NextInAEL']=_0x3aefae),_0x875c25['NextInAEL']=_0x485619,_0x875c25['NextInAEL']!==null&&(_0x875c25['NextInAEL']['PrevInAEL']=_0x875c25),_0x875c25['PrevInAEL']=_0x4aa594,_0x875c25['PrevInAEL']!==null&&(_0x875c25['PrevInAEL']['NextInAEL']=_0x875c25);}}_0x3aefae['PrevInAEL']===null?this['m_ActiveEdges']=_0x3aefae:_0x875c25['PrevInAEL']===null&&(this['m_ActiveEdges']=_0x875c25);},_0x1de203['ClipperBase']['prototype']['DeleteFromAEL']=function(_0x434f9d){var _0x2dfac1=_0x434f9d['PrevInAEL'],_0x448f17=_0x434f9d['NextInAEL'];if(_0x2dfac1===null&&_0x448f17===null&&_0x434f9d!==this['m_ActiveEdges'])return;_0x2dfac1!==null?_0x2dfac1['NextInAEL']=_0x448f17:this['m_ActiveEdges']=_0x448f17,_0x448f17!==null&&(_0x448f17['PrevInAEL']=_0x2dfac1),_0x434f9d['NextInAEL']=null,_0x434f9d['PrevInAEL']=null;},_0x1de203['Clipper']=function(_0x1358c6){if(typeof _0x1358c6==='undefined')_0x1358c6=0x0;this['m_PolyOuts']=null,this['m_ClipType']=_0x1de203['ClipType']['ctIntersection'],this['m_Scanbeam']=null,this['m_Maxima']=null,this['m_ActiveEdges']=null,this['m_SortedEdges']=null,this['m_IntersectList']=null,this['m_IntersectNodeComparer']=null,this['m_ExecuteLocked']=![],this['m_ClipFillType']=_0x1de203['PolyFillType']['pftEvenOdd'],this['m_SubjFillType']=_0x1de203['PolyFillType']['pftEvenOdd'],this['m_Joins']=null,this['m_GhostJoins']=null,this['m_UsingPolyTree']=![],this['ReverseSolution']=![],this['StrictlySimple']=![],_0x1de203['ClipperBase']['call'](this),this['m_Scanbeam']=null,this['m_Maxima']=null,this['m_ActiveEdges']=null,this['m_SortedEdges']=null,this['m_IntersectList']=new Array(),this['m_IntersectNodeComparer']=_0x1de203['MyIntersectNodeSort']['Compare'],this['m_ExecuteLocked']=![],this['m_UsingPolyTree']=![],this['m_PolyOuts']=new Array(),this['m_Joins']=new Array(),this['m_GhostJoins']=new Array(),this['ReverseSolution']=(0x1&_0x1358c6)!==0x0,this['StrictlySimple']=(0x2&_0x1358c6)!==0x0,this['PreserveCollinear']=(0x4&_0x1358c6)!==0x0,_0x1de203['use_xyz']&&(this['ZFillFunction']=null);},_0x1de203['Clipper']['ioReverseSolution']=0x1,_0x1de203['Clipper']['ioStrictlySimple']=0x2,_0x1de203['Clipper']['ioPreserveCollinear']=0x4,_0x1de203['Clipper']['prototype']['Clear']=function(){if(this['m_edges']['length']===0x0)return;this['DisposeAllPolyPts'](),_0x1de203['ClipperBase']['prototype']['Clear']['call'](this);},_0x1de203['Clipper']['prototype']['InsertMaxima']=function(_0x2e978a){var _0x11ad82=new _0x1de203['Maxima']();_0x11ad82['X']=_0x2e978a;if(this['m_Maxima']===null)this['m_Maxima']=_0x11ad82,this['m_Maxima']['Next']=null,this['m_Maxima']['Prev']=null;else {if(_0x2e978a<this['m_Maxima']['X'])_0x11ad82['Next']=this['m_Maxima'],_0x11ad82['Prev']=null,this['m_Maxima']=_0x11ad82;else {var _0x2c84b9=this['m_Maxima'];while(_0x2c84b9['Next']!==null&&_0x2e978a>=_0x2c84b9['Next']['X']){_0x2c84b9=_0x2c84b9['Next'];}if(_0x2e978a===_0x2c84b9['X'])return;_0x11ad82['Next']=_0x2c84b9['Next'],_0x11ad82['Prev']=_0x2c84b9,_0x2c84b9['Next']!==null&&(_0x2c84b9['Next']['Prev']=_0x11ad82),_0x2c84b9['Next']=_0x11ad82;}}},_0x1de203['Clipper']['prototype']['Execute']=function(){var _0xa432f8=arguments,_0x27a3ff=_0xa432f8['length'],_0x4e27f7=_0xa432f8[0x1]instanceof _0x1de203['PolyTree'];if(_0x27a3ff===0x4&&!_0x4e27f7){var _0x4cd4ef=_0xa432f8[0x0],_0x352813=_0xa432f8[0x1],_0x232c31=_0xa432f8[0x2],_0x4a5268=_0xa432f8[0x3];if(this['m_ExecuteLocked'])return ![];if(this['m_HasOpenPaths'])_0x1de203['Error']('Error:\x20PolyTree\x20struct\x20is\x20needed\x20for\x20open\x20path\x20clipping.');this['m_ExecuteLocked']=!![],_0x1de203['Clear'](_0x352813),this['m_SubjFillType']=_0x232c31,this['m_ClipFillType']=_0x4a5268,this['m_ClipType']=_0x4cd4ef,this['m_UsingPolyTree']=![];try{var _0x5bc5a8=this['ExecuteInternal']();if(_0x5bc5a8)this['BuildResult'](_0x352813);}finally{this['DisposeAllPolyPts'](),this['m_ExecuteLocked']=![];}return _0x5bc5a8;}else {if(_0x27a3ff===0x4&&_0x4e27f7){var _0x4cd4ef=_0xa432f8[0x0],_0x461ba0=_0xa432f8[0x1],_0x232c31=_0xa432f8[0x2],_0x4a5268=_0xa432f8[0x3];if(this['m_ExecuteLocked'])return ![];this['m_ExecuteLocked']=!![],this['m_SubjFillType']=_0x232c31,this['m_ClipFillType']=_0x4a5268,this['m_ClipType']=_0x4cd4ef,this['m_UsingPolyTree']=!![];try{var _0x5bc5a8=this['ExecuteInternal']();if(_0x5bc5a8)this['BuildResult2'](_0x461ba0);}finally{this['DisposeAllPolyPts'](),this['m_ExecuteLocked']=![];}return _0x5bc5a8;}else {if(_0x27a3ff===0x2&&!_0x4e27f7){var _0x4cd4ef=_0xa432f8[0x0],_0x352813=_0xa432f8[0x1];return this['Execute'](_0x4cd4ef,_0x352813,_0x1de203['PolyFillType']['pftEvenOdd'],_0x1de203['PolyFillType']['pftEvenOdd']);}else {if(_0x27a3ff===0x2&&_0x4e27f7){var _0x4cd4ef=_0xa432f8[0x0],_0x461ba0=_0xa432f8[0x1];return this['Execute'](_0x4cd4ef,_0x461ba0,_0x1de203['PolyFillType']['pftEvenOdd'],_0x1de203['PolyFillType']['pftEvenOdd']);}}}}},_0x1de203['Clipper']['prototype']['FixHoleLinkage']=function(_0x5542ec){if(_0x5542ec['FirstLeft']===null||_0x5542ec['IsHole']!==_0x5542ec['FirstLeft']['IsHole']&&_0x5542ec['FirstLeft']['Pts']!==null)return;var _0x494311=_0x5542ec['FirstLeft'];while(_0x494311!==null&&(_0x494311['IsHole']===_0x5542ec['IsHole']||_0x494311['Pts']===null))_0x494311=_0x494311['FirstLeft'];_0x5542ec['FirstLeft']=_0x494311;},_0x1de203['Clipper']['prototype']['ExecuteInternal']=function(){try{this['Reset'](),this['m_SortedEdges']=null,this['m_Maxima']=null;var _0x584ce0={},_0x5156ce={};if(!this['PopScanbeam'](_0x584ce0))return ![];this['InsertLocalMinimaIntoAEL'](_0x584ce0['v']);while(this['PopScanbeam'](_0x5156ce)||this['LocalMinimaPending']()){this['ProcessHorizontals'](),this['m_GhostJoins']['length']=0x0;if(!this['ProcessIntersections'](_0x5156ce['v']))return ![];this['ProcessEdgesAtTopOfScanbeam'](_0x5156ce['v']),_0x584ce0['v']=_0x5156ce['v'],this['InsertLocalMinimaIntoAEL'](_0x584ce0['v']);}var _0x200f74,_0x4ceb25,_0x2f0e3f;for(_0x4ceb25=0x0,_0x2f0e3f=this['m_PolyOuts']['length'];_0x4ceb25<_0x2f0e3f;_0x4ceb25++){_0x200f74=this['m_PolyOuts'][_0x4ceb25];if(_0x200f74['Pts']===null||_0x200f74['IsOpen'])continue;if((_0x200f74['IsHole']^this['ReverseSolution'])==this['Area$1'](_0x200f74)>0x0)this['ReversePolyPtLinks'](_0x200f74['Pts']);}this['JoinCommonEdges']();for(_0x4ceb25=0x0,_0x2f0e3f=this['m_PolyOuts']['length'];_0x4ceb25<_0x2f0e3f;_0x4ceb25++){_0x200f74=this['m_PolyOuts'][_0x4ceb25];if(_0x200f74['Pts']===null)continue;else {if(_0x200f74['IsOpen'])this['FixupOutPolyline'](_0x200f74);else this['FixupOutPolygon'](_0x200f74);}}if(this['StrictlySimple'])this['DoSimplePolygons']();return !![];}finally{this['m_Joins']['length']=0x0,this['m_GhostJoins']['length']=0x0;}},_0x1de203['Clipper']['prototype']['DisposeAllPolyPts']=function(){for(var _0x3428d3=0x0,_0xca96fe=this['m_PolyOuts']['length'];_0x3428d3<_0xca96fe;++_0x3428d3)this['DisposeOutRec'](_0x3428d3);_0x1de203['Clear'](this['m_PolyOuts']);},_0x1de203['Clipper']['prototype']['AddJoin']=function(_0x57b208,_0x343a3b,_0x7ab714){var _0x1d438e=new _0x1de203['Join']();_0x1d438e['OutPt1']=_0x57b208,_0x1d438e['OutPt2']=_0x343a3b,_0x1d438e['OffPt']['X']=_0x7ab714['X'],_0x1d438e['OffPt']['Y']=_0x7ab714['Y'];if(_0x1de203['use_xyz'])_0x1d438e['OffPt']['Z']=_0x7ab714['Z'];this['m_Joins']['push'](_0x1d438e);},_0x1de203['Clipper']['prototype']['AddGhostJoin']=function(_0x3639d6,_0x240467){var _0x2cc702=new _0x1de203['Join']();_0x2cc702['OutPt1']=_0x3639d6,_0x2cc702['OffPt']['X']=_0x240467['X'],_0x2cc702['OffPt']['Y']=_0x240467['Y'];if(_0x1de203['use_xyz'])_0x2cc702['OffPt']['Z']=_0x240467['Z'];this['m_GhostJoins']['push'](_0x2cc702);},_0x1de203['Clipper']['prototype']['SetZ']=function(_0xe4b412,_0xe2380e,_0x5c3909){if(this['ZFillFunction']!==null){if(_0xe4b412['Z']!==0x0||this['ZFillFunction']===null)return;else {if(_0x1de203['IntPoint']['op_Equality'](_0xe4b412,_0xe2380e['Bot']))_0xe4b412['Z']=_0xe2380e['Bot']['Z'];else {if(_0x1de203['IntPoint']['op_Equality'](_0xe4b412,_0xe2380e['Top']))_0xe4b412['Z']=_0xe2380e['Top']['Z'];else {if(_0x1de203['IntPoint']['op_Equality'](_0xe4b412,_0x5c3909['Bot']))_0xe4b412['Z']=_0x5c3909['Bot']['Z'];else {if(_0x1de203['IntPoint']['op_Equality'](_0xe4b412,_0x5c3909['Top']))_0xe4b412['Z']=_0x5c3909['Top']['Z'];else this['ZFillFunction'](_0xe2380e['Bot'],_0xe2380e['Top'],_0x5c3909['Bot'],_0x5c3909['Top'],_0xe4b412);}}}}}},_0x1de203['Clipper']['prototype']['InsertLocalMinimaIntoAEL']=function(_0x736b3e){var _0x3dbd44={},_0x1e6b73,_0xfe9209;while(this['PopLocalMinima'](_0x736b3e,_0x3dbd44)){_0x1e6b73=_0x3dbd44['v']['LeftBound'],_0xfe9209=_0x3dbd44['v']['RightBound'];var _0x14a469=null;if(_0x1e6b73===null){this['InsertEdgeIntoAEL'](_0xfe9209,null),this['SetWindingCount'](_0xfe9209);if(this['IsContributing'](_0xfe9209))_0x14a469=this['AddOutPt'](_0xfe9209,_0xfe9209['Bot']);}else {if(_0xfe9209===null){this['InsertEdgeIntoAEL'](_0x1e6b73,null),this['SetWindingCount'](_0x1e6b73);if(this['IsContributing'](_0x1e6b73))_0x14a469=this['AddOutPt'](_0x1e6b73,_0x1e6b73['Bot']);this['InsertScanbeam'](_0x1e6b73['Top']['Y']);}else {this['InsertEdgeIntoAEL'](_0x1e6b73,null),this['InsertEdgeIntoAEL'](_0xfe9209,_0x1e6b73),this['SetWindingCount'](_0x1e6b73),_0xfe9209['WindCnt']=_0x1e6b73['WindCnt'],_0xfe9209['WindCnt2']=_0x1e6b73['WindCnt2'];if(this['IsContributing'](_0x1e6b73))_0x14a469=this['AddLocalMinPoly'](_0x1e6b73,_0xfe9209,_0x1e6b73['Bot']);this['InsertScanbeam'](_0x1e6b73['Top']['Y']);}}_0xfe9209!==null&&(_0x1de203['ClipperBase']['IsHorizontal'](_0xfe9209)?(_0xfe9209['NextInLML']!==null&&this['InsertScanbeam'](_0xfe9209['NextInLML']['Top']['Y']),this['AddEdgeToSEL'](_0xfe9209)):this['InsertScanbeam'](_0xfe9209['Top']['Y']));if(_0x1e6b73===null||_0xfe9209===null)continue;if(_0x14a469!==null&&_0x1de203['ClipperBase']['IsHorizontal'](_0xfe9209)&&this['m_GhostJoins']['length']>0x0&&_0xfe9209['WindDelta']!==0x0)for(var _0x5e5353=0x0,_0xef25e9=this['m_GhostJoins']['length'];_0x5e5353<_0xef25e9;_0x5e5353++){var _0x5a07fd=this['m_GhostJoins'][_0x5e5353];if(this['HorzSegmentsOverlap'](_0x5a07fd['OutPt1']['Pt']['X'],_0x5a07fd['OffPt']['X'],_0xfe9209['Bot']['X'],_0xfe9209['Top']['X']))this['AddJoin'](_0x5a07fd['OutPt1'],_0x14a469,_0x5a07fd['OffPt']);}if(_0x1e6b73['OutIdx']>=0x0&&_0x1e6b73['PrevInAEL']!==null&&_0x1e6b73['PrevInAEL']['Curr']['X']===_0x1e6b73['Bot']['X']&&_0x1e6b73['PrevInAEL']['OutIdx']>=0x0&&_0x1de203['ClipperBase']['SlopesEqual5'](_0x1e6b73['PrevInAEL']['Curr'],_0x1e6b73['PrevInAEL']['Top'],_0x1e6b73['Curr'],_0x1e6b73['Top'],this['m_UseFullRange'])&&_0x1e6b73['WindDelta']!==0x0&&_0x1e6b73['PrevInAEL']['WindDelta']!==0x0){var _0x1582b0=this['AddOutPt'](_0x1e6b73['PrevInAEL'],_0x1e6b73['Bot']);this['AddJoin'](_0x14a469,_0x1582b0,_0x1e6b73['Top']);}if(_0x1e6b73['NextInAEL']!==_0xfe9209){if(_0xfe9209['OutIdx']>=0x0&&_0xfe9209['PrevInAEL']['OutIdx']>=0x0&&_0x1de203['ClipperBase']['SlopesEqual5'](_0xfe9209['PrevInAEL']['Curr'],_0xfe9209['PrevInAEL']['Top'],_0xfe9209['Curr'],_0xfe9209['Top'],this['m_UseFullRange'])&&_0xfe9209['WindDelta']!==0x0&&_0xfe9209['PrevInAEL']['WindDelta']!==0x0){var _0x1582b0=this['AddOutPt'](_0xfe9209['PrevInAEL'],_0xfe9209['Bot']);this['AddJoin'](_0x14a469,_0x1582b0,_0xfe9209['Top']);}var _0x26f104=_0x1e6b73['NextInAEL'];if(_0x26f104!==null)while(_0x26f104!==_0xfe9209){this['IntersectEdges'](_0xfe9209,_0x26f104,_0x1e6b73['Curr']),_0x26f104=_0x26f104['NextInAEL'];}}}},_0x1de203['Clipper']['prototype']['InsertEdgeIntoAEL']=function(_0xeb0c34,_0x34e7b0){if(this['m_ActiveEdges']===null)_0xeb0c34['PrevInAEL']=null,_0xeb0c34['NextInAEL']=null,this['m_ActiveEdges']=_0xeb0c34;else {if(_0x34e7b0===null&&this['E2InsertsBeforeE1'](this['m_ActiveEdges'],_0xeb0c34))_0xeb0c34['PrevInAEL']=null,_0xeb0c34['NextInAEL']=this['m_ActiveEdges'],this['m_ActiveEdges']['PrevInAEL']=_0xeb0c34,this['m_ActiveEdges']=_0xeb0c34;else {if(_0x34e7b0===null)_0x34e7b0=this['m_ActiveEdges'];while(_0x34e7b0['NextInAEL']!==null&&!this['E2InsertsBeforeE1'](_0x34e7b0['NextInAEL'],_0xeb0c34))_0x34e7b0=_0x34e7b0['NextInAEL'];_0xeb0c34['NextInAEL']=_0x34e7b0['NextInAEL'];if(_0x34e7b0['NextInAEL']!==null)_0x34e7b0['NextInAEL']['PrevInAEL']=_0xeb0c34;_0xeb0c34['PrevInAEL']=_0x34e7b0,_0x34e7b0['NextInAEL']=_0xeb0c34;}}},_0x1de203['Clipper']['prototype']['E2InsertsBeforeE1']=function(_0xedecc5,_0xcb4aa8){if(_0xcb4aa8['Curr']['X']===_0xedecc5['Curr']['X']){if(_0xcb4aa8['Top']['Y']>_0xedecc5['Top']['Y'])return _0xcb4aa8['Top']['X']<_0x1de203['Clipper']['TopX'](_0xedecc5,_0xcb4aa8['Top']['Y']);else return _0xedecc5['Top']['X']>_0x1de203['Clipper']['TopX'](_0xcb4aa8,_0xedecc5['Top']['Y']);}else return _0xcb4aa8['Curr']['X']<_0xedecc5['Curr']['X'];},_0x1de203['Clipper']['prototype']['IsEvenOddFillType']=function(_0xe2a1bb){if(_0xe2a1bb['PolyTyp']===_0x1de203['PolyType']['ptSubject'])return this['m_SubjFillType']===_0x1de203['PolyFillType']['pftEvenOdd'];else return this['m_ClipFillType']===_0x1de203['PolyFillType']['pftEvenOdd'];},_0x1de203['Clipper']['prototype']['IsEvenOddAltFillType']=function(_0x2019cf){if(_0x2019cf['PolyTyp']===_0x1de203['PolyType']['ptSubject'])return this['m_ClipFillType']===_0x1de203['PolyFillType']['pftEvenOdd'];else return this['m_SubjFillType']===_0x1de203['PolyFillType']['pftEvenOdd'];},_0x1de203['Clipper']['prototype']['IsContributing']=function(_0x1a5555){var _0x4da960,_0x132189;_0x1a5555['PolyTyp']===_0x1de203['PolyType']['ptSubject']?(_0x4da960=this['m_SubjFillType'],_0x132189=this['m_ClipFillType']):(_0x4da960=this['m_ClipFillType'],_0x132189=this['m_SubjFillType']);switch(_0x4da960){case _0x1de203['PolyFillType']['pftEvenOdd']:if(_0x1a5555['WindDelta']===0x0&&_0x1a5555['WindCnt']!==0x1)return ![];break;case _0x1de203['PolyFillType']['pftNonZero']:if(Math['abs'](_0x1a5555['WindCnt'])!==0x1)return ![];break;case _0x1de203['PolyFillType']['pftPositive']:if(_0x1a5555['WindCnt']!==0x1)return ![];break;default:if(_0x1a5555['WindCnt']!==-0x1)return ![];break;}switch(this['m_ClipType']){case _0x1de203['ClipType']['ctIntersection']:switch(_0x132189){case _0x1de203['PolyFillType']['pftEvenOdd']:case _0x1de203['PolyFillType']['pftNonZero']:return _0x1a5555['WindCnt2']!==0x0;case _0x1de203['PolyFillType']['pftPositive']:return _0x1a5555['WindCnt2']>0x0;default:return _0x1a5555['WindCnt2']<0x0;}case _0x1de203['ClipType']['ctUnion']:switch(_0x132189){case _0x1de203['PolyFillType']['pftEvenOdd']:case _0x1de203['PolyFillType']['pftNonZero']:return _0x1a5555['WindCnt2']===0x0;case _0x1de203['PolyFillType']['pftPositive']:return _0x1a5555['WindCnt2']<=0x0;default:return _0x1a5555['WindCnt2']>=0x0;}case _0x1de203['ClipType']['ctDifference']:if(_0x1a5555['PolyTyp']===_0x1de203['PolyType']['ptSubject'])switch(_0x132189){case _0x1de203['PolyFillType']['pftEvenOdd']:case _0x1de203['PolyFillType']['pftNonZero']:return _0x1a5555['WindCnt2']===0x0;case _0x1de203['PolyFillType']['pftPositive']:return _0x1a5555['WindCnt2']<=0x0;default:return _0x1a5555['WindCnt2']>=0x0;}else switch(_0x132189){case _0x1de203['PolyFillType']['pftEvenOdd']:case _0x1de203['PolyFillType']['pftNonZero']:return _0x1a5555['WindCnt2']!==0x0;case _0x1de203['PolyFillType']['pftPositive']:return _0x1a5555['WindCnt2']>0x0;default:return _0x1a5555['WindCnt2']<0x0;}case _0x1de203['ClipType']['ctXor']:if(_0x1a5555['WindDelta']===0x0)switch(_0x132189){case _0x1de203['PolyFillType']['pftEvenOdd']:case _0x1de203['PolyFillType']['pftNonZero']:return _0x1a5555['WindCnt2']===0x0;case _0x1de203['PolyFillType']['pftPositive']:return _0x1a5555['WindCnt2']<=0x0;default:return _0x1a5555['WindCnt2']>=0x0;}else return !![];}return !![];},_0x1de203['Clipper']['prototype']['SetWindingCount']=function(_0x3bae4c){var _0x2080d1=_0x3bae4c['PrevInAEL'];while(_0x2080d1!==null&&(_0x2080d1['PolyTyp']!==_0x3bae4c['PolyTyp']||_0x2080d1['WindDelta']===0x0))_0x2080d1=_0x2080d1['PrevInAEL'];if(_0x2080d1===null){var _0x215853=_0x3bae4c['PolyTyp']===_0x1de203['PolyType']['ptSubject']?this['m_SubjFillType']:this['m_ClipFillType'];_0x3bae4c['WindDelta']===0x0?_0x3bae4c['WindCnt']=_0x215853===_0x1de203['PolyFillType']['pftNegative']?-0x1:0x1:_0x3bae4c['WindCnt']=_0x3bae4c['WindDelta'],_0x3bae4c['WindCnt2']=0x0,_0x2080d1=this['m_ActiveEdges'];}else {if(_0x3bae4c['WindDelta']===0x0&&this['m_ClipType']!==_0x1de203['ClipType']['ctUnion'])_0x3bae4c['WindCnt']=0x1,_0x3bae4c['WindCnt2']=_0x2080d1['WindCnt2'],_0x2080d1=_0x2080d1['NextInAEL'];else {if(this['IsEvenOddFillType'](_0x3bae4c)){if(_0x3bae4c['WindDelta']===0x0){var _0x5cfd3d=!![],_0x4d347f=_0x2080d1['PrevInAEL'];while(_0x4d347f!==null){if(_0x4d347f['PolyTyp']===_0x2080d1['PolyTyp']&&_0x4d347f['WindDelta']!==0x0)_0x5cfd3d=!_0x5cfd3d;_0x4d347f=_0x4d347f['PrevInAEL'];}_0x3bae4c['WindCnt']=_0x5cfd3d?0x0:0x1;}else _0x3bae4c['WindCnt']=_0x3bae4c['WindDelta'];_0x3bae4c['WindCnt2']=_0x2080d1['WindCnt2'],_0x2080d1=_0x2080d1['NextInAEL'];}else {if(_0x2080d1['WindCnt']*_0x2080d1['WindDelta']<0x0){if(Math['abs'](_0x2080d1['WindCnt'])>0x1){if(_0x2080d1['WindDelta']*_0x3bae4c['WindDelta']<0x0)_0x3bae4c['WindCnt']=_0x2080d1['WindCnt'];else _0x3bae4c['WindCnt']=_0x2080d1['WindCnt']+_0x3bae4c['WindDelta'];}else _0x3bae4c['WindCnt']=_0x3bae4c['WindDelta']===0x0?0x1:_0x3bae4c['WindDelta'];}else {if(_0x3bae4c['WindDelta']===0x0)_0x3bae4c['WindCnt']=_0x2080d1['WindCnt']<0x0?_0x2080d1['WindCnt']-0x1:_0x2080d1['WindCnt']+0x1;else {if(_0x2080d1['WindDelta']*_0x3bae4c['WindDelta']<0x0)_0x3bae4c['WindCnt']=_0x2080d1['WindCnt'];else _0x3bae4c['WindCnt']=_0x2080d1['WindCnt']+_0x3bae4c['WindDelta'];}}_0x3bae4c['WindCnt2']=_0x2080d1['WindCnt2'],_0x2080d1=_0x2080d1['NextInAEL'];}}}if(this['IsEvenOddAltFillType'](_0x3bae4c))while(_0x2080d1!==_0x3bae4c){if(_0x2080d1['WindDelta']!==0x0)_0x3bae4c['WindCnt2']=_0x3bae4c['WindCnt2']===0x0?0x1:0x0;_0x2080d1=_0x2080d1['NextInAEL'];}else while(_0x2080d1!==_0x3bae4c){_0x3bae4c['WindCnt2']+=_0x2080d1['WindDelta'],_0x2080d1=_0x2080d1['NextInAEL'];}},_0x1de203['Clipper']['prototype']['AddEdgeToSEL']=function(_0x1ef6e6){this['m_SortedEdges']===null?(this['m_SortedEdges']=_0x1ef6e6,_0x1ef6e6['PrevInSEL']=null,_0x1ef6e6['NextInSEL']=null):(_0x1ef6e6['NextInSEL']=this['m_SortedEdges'],_0x1ef6e6['PrevInSEL']=null,this['m_SortedEdges']['PrevInSEL']=_0x1ef6e6,this['m_SortedEdges']=_0x1ef6e6);},_0x1de203['Clipper']['prototype']['PopEdgeFromSEL']=function(_0x3b1ec4){_0x3b1ec4['v']=this['m_SortedEdges'];if(_0x3b1ec4['v']===null)return ![];var _0x361946=_0x3b1ec4['v'];return this['m_SortedEdges']=_0x3b1ec4['v']['NextInSEL'],this['m_SortedEdges']!==null&&(this['m_SortedEdges']['PrevInSEL']=null),_0x361946['NextInSEL']=null,_0x361946['PrevInSEL']=null,!![];},_0x1de203['Clipper']['prototype']['CopyAELToSEL']=function(){var _0x16ff0c=this['m_ActiveEdges'];this['m_SortedEdges']=_0x16ff0c;while(_0x16ff0c!==null){_0x16ff0c['PrevInSEL']=_0x16ff0c['PrevInAEL'],_0x16ff0c['NextInSEL']=_0x16ff0c['NextInAEL'],_0x16ff0c=_0x16ff0c['NextInAEL'];}},_0x1de203['Clipper']['prototype']['SwapPositionsInSEL']=function(_0x270642,_0x306967){if(_0x270642['NextInSEL']===null&&_0x270642['PrevInSEL']===null)return;if(_0x306967['NextInSEL']===null&&_0x306967['PrevInSEL']===null)return;if(_0x270642['NextInSEL']===_0x306967){var _0x243703=_0x306967['NextInSEL'];if(_0x243703!==null)_0x243703['PrevInSEL']=_0x270642;var _0x324eb3=_0x270642['PrevInSEL'];if(_0x324eb3!==null)_0x324eb3['NextInSEL']=_0x306967;_0x306967['PrevInSEL']=_0x324eb3,_0x306967['NextInSEL']=_0x270642,_0x270642['PrevInSEL']=_0x306967,_0x270642['NextInSEL']=_0x243703;}else {if(_0x306967['NextInSEL']===_0x270642){var _0x243703=_0x270642['NextInSEL'];if(_0x243703!==null)_0x243703['PrevInSEL']=_0x306967;var _0x324eb3=_0x306967['PrevInSEL'];if(_0x324eb3!==null)_0x324eb3['NextInSEL']=_0x270642;_0x270642['PrevInSEL']=_0x324eb3,_0x270642['NextInSEL']=_0x306967,_0x306967['PrevInSEL']=_0x270642,_0x306967['NextInSEL']=_0x243703;}else {var _0x243703=_0x270642['NextInSEL'],_0x324eb3=_0x270642['PrevInSEL'];_0x270642['NextInSEL']=_0x306967['NextInSEL'];if(_0x270642['NextInSEL']!==null)_0x270642['NextInSEL']['PrevInSEL']=_0x270642;_0x270642['PrevInSEL']=_0x306967['PrevInSEL'];if(_0x270642['PrevInSEL']!==null)_0x270642['PrevInSEL']['NextInSEL']=_0x270642;_0x306967['NextInSEL']=_0x243703;if(_0x306967['NextInSEL']!==null)_0x306967['NextInSEL']['PrevInSEL']=_0x306967;_0x306967['PrevInSEL']=_0x324eb3;if(_0x306967['PrevInSEL']!==null)_0x306967['PrevInSEL']['NextInSEL']=_0x306967;}}if(_0x270642['PrevInSEL']===null)this['m_SortedEdges']=_0x270642;else {if(_0x306967['PrevInSEL']===null)this['m_SortedEdges']=_0x306967;}},_0x1de203['Clipper']['prototype']['AddLocalMaxPoly']=function(_0x303a80,_0xbe7961,_0x164ce6){this['AddOutPt'](_0x303a80,_0x164ce6);if(_0xbe7961['WindDelta']===0x0)this['AddOutPt'](_0xbe7961,_0x164ce6);if(_0x303a80['OutIdx']===_0xbe7961['OutIdx'])_0x303a80['OutIdx']=-0x1,_0xbe7961['OutIdx']=-0x1;else {if(_0x303a80['OutIdx']<_0xbe7961['OutIdx'])this['AppendPolygon'](_0x303a80,_0xbe7961);else this['AppendPolygon'](_0xbe7961,_0x303a80);}},_0x1de203['Clipper']['prototype']['AddLocalMinPoly']=function(_0x82503,_0x4bf24b,_0x277100){var _0x680a09,_0x481807,_0x449cc8;if(_0x1de203['ClipperBase']['IsHorizontal'](_0x4bf24b)||_0x82503['Dx']>_0x4bf24b['Dx']){_0x680a09=this['AddOutPt'](_0x82503,_0x277100),_0x4bf24b['OutIdx']=_0x82503['OutIdx'],_0x82503['Side']=_0x1de203['EdgeSide']['esLeft'],_0x4bf24b['Side']=_0x1de203['EdgeSide']['esRight'],_0x481807=_0x82503;if(_0x481807['PrevInAEL']===_0x4bf24b)_0x449cc8=_0x4bf24b['PrevInAEL'];else _0x449cc8=_0x481807['PrevInAEL'];}else {_0x680a09=this['AddOutPt'](_0x4bf24b,_0x277100),_0x82503['OutIdx']=_0x4bf24b['OutIdx'],_0x82503['Side']=_0x1de203['EdgeSide']['esRight'],_0x4bf24b['Side']=_0x1de203['EdgeSide']['esLeft'],_0x481807=_0x4bf24b;if(_0x481807['PrevInAEL']===_0x82503)_0x449cc8=_0x82503['PrevInAEL'];else _0x449cc8=_0x481807['PrevInAEL'];}if(_0x449cc8!==null&&_0x449cc8['OutIdx']>=0x0&&_0x449cc8['Top']['Y']<_0x277100['Y']&&_0x481807['Top']['Y']<_0x277100['Y']){var _0x3dfd84=_0x1de203['Clipper']['TopX'](_0x449cc8,_0x277100['Y']),_0x3ddb45=_0x1de203['Clipper']['TopX'](_0x481807,_0x277100['Y']);if(_0x3dfd84===_0x3ddb45&&_0x481807['WindDelta']!==0x0&&_0x449cc8['WindDelta']!==0x0&&_0x1de203['ClipperBase']['SlopesEqual5'](new _0x1de203['IntPoint2'](_0x3dfd84,_0x277100['Y']),_0x449cc8['Top'],new _0x1de203['IntPoint2'](_0x3ddb45,_0x277100['Y']),_0x481807['Top'],this['m_UseFullRange'])){var _0x131437=this['AddOutPt'](_0x449cc8,_0x277100);this['AddJoin'](_0x680a09,_0x131437,_0x481807['Top']);}}return _0x680a09;},_0x1de203['Clipper']['prototype']['AddOutPt']=function(_0x2cc4e4,_0x2f462d){if(_0x2cc4e4['OutIdx']<0x0){var _0x4a78a6=this['CreateOutRec']();_0x4a78a6['IsOpen']=_0x2cc4e4['WindDelta']===0x0;var _0x1dad10=new _0x1de203['OutPt']();_0x4a78a6['Pts']=_0x1dad10,_0x1dad10['Idx']=_0x4a78a6['Idx'],_0x1dad10['Pt']['X']=_0x2f462d['X'],_0x1dad10['Pt']['Y']=_0x2f462d['Y'];if(_0x1de203['use_xyz'])_0x1dad10['Pt']['Z']=_0x2f462d['Z'];_0x1dad10['Next']=_0x1dad10,_0x1dad10['Prev']=_0x1dad10;if(!_0x4a78a6['IsOpen'])this['SetHoleState'](_0x2cc4e4,_0x4a78a6);return _0x2cc4e4['OutIdx']=_0x4a78a6['Idx'],_0x1dad10;}else {var _0x4a78a6=this['m_PolyOuts'][_0x2cc4e4['OutIdx']],_0x49deed=_0x4a78a6['Pts'],_0x1f01d4=_0x2cc4e4['Side']===_0x1de203['EdgeSide']['esLeft'];if(_0x1f01d4&&_0x1de203['IntPoint']['op_Equality'](_0x2f462d,_0x49deed['Pt']))return _0x49deed;else {if(!_0x1f01d4&&_0x1de203['IntPoint']['op_Equality'](_0x2f462d,_0x49deed['Prev']['Pt']))return _0x49deed['Prev'];}var _0x1dad10=new _0x1de203['OutPt']();_0x1dad10['Idx']=_0x4a78a6['Idx'],_0x1dad10['Pt']['X']=_0x2f462d['X'],_0x1dad10['Pt']['Y']=_0x2f462d['Y'];if(_0x1de203['use_xyz'])_0x1dad10['Pt']['Z']=_0x2f462d['Z'];_0x1dad10['Next']=_0x49deed,_0x1dad10['Prev']=_0x49deed['Prev'],_0x1dad10['Prev']['Next']=_0x1dad10,_0x49deed['Prev']=_0x1dad10;if(_0x1f01d4)_0x4a78a6['Pts']=_0x1dad10;return _0x1dad10;}},_0x1de203['Clipper']['prototype']['GetLastOutPt']=function(_0x5d90f3){var _0x16b0ce=this['m_PolyOuts'][_0x5d90f3['OutIdx']];return _0x5d90f3['Side']===_0x1de203['EdgeSide']['esLeft']?_0x16b0ce['Pts']:_0x16b0ce['Pts']['Prev'];},_0x1de203['Clipper']['prototype']['SwapPoints']=function(_0x4670ab,_0x29261f){var _0x94b94e=new _0x1de203['IntPoint1'](_0x4670ab['Value']);_0x4670ab['Value']['X']=_0x29261f['Value']['X'],_0x4670ab['Value']['Y']=_0x29261f['Value']['Y'];if(_0x1de203['use_xyz'])_0x4670ab['Value']['Z']=_0x29261f['Value']['Z'];_0x29261f['Value']['X']=_0x94b94e['X'],_0x29261f['Value']['Y']=_0x94b94e['Y'];if(_0x1de203['use_xyz'])_0x29261f['Value']['Z']=_0x94b94e['Z'];},_0x1de203['Clipper']['prototype']['HorzSegmentsOverlap']=function(_0x29b180,_0x5dd038,_0x4e6e1c,_0x15c939){var _0x374f62;return _0x29b180>_0x5dd038&&(_0x374f62=_0x29b180,_0x29b180=_0x5dd038,_0x5dd038=_0x374f62),_0x4e6e1c>_0x15c939&&(_0x374f62=_0x4e6e1c,_0x4e6e1c=_0x15c939,_0x15c939=_0x374f62),_0x29b180<_0x15c939&&_0x4e6e1c<_0x5dd038;},_0x1de203['Clipper']['prototype']['SetHoleState']=function(_0x441e95,_0x45f4b3){var _0x41b59a=_0x441e95['PrevInAEL'],_0x4b58e6=null;while(_0x41b59a!==null){if(_0x41b59a['OutIdx']>=0x0&&_0x41b59a['WindDelta']!==0x0){if(_0x4b58e6===null)_0x4b58e6=_0x41b59a;else {if(_0x4b58e6['OutIdx']===_0x41b59a['OutIdx'])_0x4b58e6=null;}}_0x41b59a=_0x41b59a['PrevInAEL'];}_0x4b58e6===null?(_0x45f4b3['FirstLeft']=null,_0x45f4b3['IsHole']=![]):(_0x45f4b3['FirstLeft']=this['m_PolyOuts'][_0x4b58e6['OutIdx']],_0x45f4b3['IsHole']=!_0x45f4b3['FirstLeft']['IsHole']);},_0x1de203['Clipper']['prototype']['GetDx']=function(_0x1a1881,_0x2af20c){if(_0x1a1881['Y']===_0x2af20c['Y'])return _0x1de203['ClipperBase']['horizontal'];else return (_0x2af20c['X']-_0x1a1881['X'])/(_0x2af20c['Y']-_0x1a1881['Y']);},_0x1de203['Clipper']['prototype']['FirstIsBottomPt']=function(_0x1512f4,_0x2ade63){var _0x363960=_0x1512f4['Prev'];while(_0x1de203['IntPoint']['op_Equality'](_0x363960['Pt'],_0x1512f4['Pt'])&&_0x363960!==_0x1512f4)_0x363960=_0x363960['Prev'];var _0x124910=Math['abs'](this['GetDx'](_0x1512f4['Pt'],_0x363960['Pt']));_0x363960=_0x1512f4['Next'];while(_0x1de203['IntPoint']['op_Equality'](_0x363960['Pt'],_0x1512f4['Pt'])&&_0x363960!==_0x1512f4)_0x363960=_0x363960['Next'];var _0xf88dbc=Math['abs'](this['GetDx'](_0x1512f4['Pt'],_0x363960['Pt']));_0x363960=_0x2ade63['Prev'];while(_0x1de203['IntPoint']['op_Equality'](_0x363960['Pt'],_0x2ade63['Pt'])&&_0x363960!==_0x2ade63)_0x363960=_0x363960['Prev'];var _0x1ac46c=Math['abs'](this['GetDx'](_0x2ade63['Pt'],_0x363960['Pt']));_0x363960=_0x2ade63['Next'];while(_0x1de203['IntPoint']['op_Equality'](_0x363960['Pt'],_0x2ade63['Pt'])&&_0x363960!==_0x2ade63)_0x363960=_0x363960['Next'];var _0x10bbf0=Math['abs'](this['GetDx'](_0x2ade63['Pt'],_0x363960['Pt']));return Math['max'](_0x124910,_0xf88dbc)===Math['max'](_0x1ac46c,_0x10bbf0)&&Math['min'](_0x124910,_0xf88dbc)===Math['min'](_0x1ac46c,_0x10bbf0)?this['Area'](_0x1512f4)>0x0:_0x124910>=_0x1ac46c&&_0x124910>=_0x10bbf0||_0xf88dbc>=_0x1ac46c&&_0xf88dbc>=_0x10bbf0;},_0x1de203['Clipper']['prototype']['GetBottomPt']=function(_0x2e0647){var _0x147a2f=null,_0x2dd066=_0x2e0647['Next'];while(_0x2dd066!==_0x2e0647){if(_0x2dd066['Pt']['Y']>_0x2e0647['Pt']['Y'])_0x2e0647=_0x2dd066,_0x147a2f=null;else {if(_0x2dd066['Pt']['Y']===_0x2e0647['Pt']['Y']&&_0x2dd066['Pt']['X']<=_0x2e0647['Pt']['X']){if(_0x2dd066['Pt']['X']<_0x2e0647['Pt']['X'])_0x147a2f=null,_0x2e0647=_0x2dd066;else {if(_0x2dd066['Next']!==_0x2e0647&&_0x2dd066['Prev']!==_0x2e0647)_0x147a2f=_0x2dd066;}}}_0x2dd066=_0x2dd066['Next'];}if(_0x147a2f!==null)while(_0x147a2f!==_0x2dd066){if(!this['FirstIsBottomPt'](_0x2dd066,_0x147a2f))_0x2e0647=_0x147a2f;_0x147a2f=_0x147a2f['Next'];while(_0x1de203['IntPoint']['op_Inequality'](_0x147a2f['Pt'],_0x2e0647['Pt']))_0x147a2f=_0x147a2f['Next'];}return _0x2e0647;},_0x1de203['Clipper']['prototype']['GetLowermostRec']=function(_0x14741f,_0x275583){if(_0x14741f['BottomPt']===null)_0x14741f['BottomPt']=this['GetBottomPt'](_0x14741f['Pts']);if(_0x275583['BottomPt']===null)_0x275583['BottomPt']=this['GetBottomPt'](_0x275583['Pts']);var _0x18f877=_0x14741f['BottomPt'],_0x57244f=_0x275583['BottomPt'];if(_0x18f877['Pt']['Y']>_0x57244f['Pt']['Y'])return _0x14741f;else {if(_0x18f877['Pt']['Y']<_0x57244f['Pt']['Y'])return _0x275583;else {if(_0x18f877['Pt']['X']<_0x57244f['Pt']['X'])return _0x14741f;else {if(_0x18f877['Pt']['X']>_0x57244f['Pt']['X'])return _0x275583;else {if(_0x18f877['Next']===_0x18f877)return _0x275583;else {if(_0x57244f['Next']===_0x57244f)return _0x14741f;else {if(this['FirstIsBottomPt'](_0x18f877,_0x57244f))return _0x14741f;else return _0x275583;}}}}}}},_0x1de203['Clipper']['prototype']['OutRec1RightOfOutRec2']=function(_0x319bb5,_0xfc51a4){do{_0x319bb5=_0x319bb5['FirstLeft'];if(_0x319bb5===_0xfc51a4)return !![];}while(_0x319bb5!==null);return ![];},_0x1de203['Clipper']['prototype']['GetOutRec']=function(_0x3393fc){var _0x236ae0=this['m_PolyOuts'][_0x3393fc];while(_0x236ae0!==this['m_PolyOuts'][_0x236ae0['Idx']])_0x236ae0=this['m_PolyOuts'][_0x236ae0['Idx']];return _0x236ae0;},_0x1de203['Clipper']['prototype']['AppendPolygon']=function(_0x3f9373,_0xb68a0c){var _0x1775cd=this['m_PolyOuts'][_0x3f9373['OutIdx']],_0x296ffc=this['m_PolyOuts'][_0xb68a0c['OutIdx']],_0x3d8cb8;if(this['OutRec1RightOfOutRec2'](_0x1775cd,_0x296ffc))_0x3d8cb8=_0x296ffc;else {if(this['OutRec1RightOfOutRec2'](_0x296ffc,_0x1775cd))_0x3d8cb8=_0x1775cd;else _0x3d8cb8=this['GetLowermostRec'](_0x1775cd,_0x296ffc);}var _0x2e4c57=_0x1775cd['Pts'],_0x1be265=_0x2e4c57['Prev'],_0x2275b8=_0x296ffc['Pts'],_0x19edbc=_0x2275b8['Prev'];_0x3f9373['Side']===_0x1de203['EdgeSide']['esLeft']?_0xb68a0c['Side']===_0x1de203['EdgeSide']['esLeft']?(this['ReversePolyPtLinks'](_0x2275b8),_0x2275b8['Next']=_0x2e4c57,_0x2e4c57['Prev']=_0x2275b8,_0x1be265['Next']=_0x19edbc,_0x19edbc['Prev']=_0x1be265,_0x1775cd['Pts']=_0x19edbc):(_0x19edbc['Next']=_0x2e4c57,_0x2e4c57['Prev']=_0x19edbc,_0x2275b8['Prev']=_0x1be265,_0x1be265['Next']=_0x2275b8,_0x1775cd['Pts']=_0x2275b8):_0xb68a0c['Side']===_0x1de203['EdgeSide']['esRight']?(this['ReversePolyPtLinks'](_0x2275b8),_0x1be265['Next']=_0x19edbc,_0x19edbc['Prev']=_0x1be265,_0x2275b8['Next']=_0x2e4c57,_0x2e4c57['Prev']=_0x2275b8):(_0x1be265['Next']=_0x2275b8,_0x2275b8['Prev']=_0x1be265,_0x2e4c57['Prev']=_0x19edbc,_0x19edbc['Next']=_0x2e4c57);_0x1775cd['BottomPt']=null;if(_0x3d8cb8===_0x296ffc){if(_0x296ffc['FirstLeft']!==_0x1775cd)_0x1775cd['FirstLeft']=_0x296ffc['FirstLeft'];_0x1775cd['IsHole']=_0x296ffc['IsHole'];}_0x296ffc['Pts']=null,_0x296ffc['BottomPt']=null,_0x296ffc['FirstLeft']=_0x1775cd;var _0x519de9=_0x3f9373['OutIdx'],_0x34f323=_0xb68a0c['OutIdx'];_0x3f9373['OutIdx']=-0x1,_0xb68a0c['OutIdx']=-0x1;var _0x5a7583=this['m_ActiveEdges'];while(_0x5a7583!==null){if(_0x5a7583['OutIdx']===_0x34f323){_0x5a7583['OutIdx']=_0x519de9,_0x5a7583['Side']=_0x3f9373['Side'];break;}_0x5a7583=_0x5a7583['NextInAEL'];}_0x296ffc['Idx']=_0x1775cd['Idx'];},_0x1de203['Clipper']['prototype']['ReversePolyPtLinks']=function(_0x2a3e3a){if(_0x2a3e3a===null)return;var _0x42ddd9,_0x26fc56;_0x42ddd9=_0x2a3e3a;do{_0x26fc56=_0x42ddd9['Next'],_0x42ddd9['Next']=_0x42ddd9['Prev'],_0x42ddd9['Prev']=_0x26fc56,_0x42ddd9=_0x26fc56;}while(_0x42ddd9!==_0x2a3e3a);},_0x1de203['Clipper']['SwapSides']=function(_0xf1960b,_0x321f0b){var _0x2e9230=_0xf1960b['Side'];_0xf1960b['Side']=_0x321f0b['Side'],_0x321f0b['Side']=_0x2e9230;},_0x1de203['Clipper']['SwapPolyIndexes']=function(_0x155781,_0x2bef5d){var _0x477f0b=_0x155781['OutIdx'];_0x155781['OutIdx']=_0x2bef5d['OutIdx'],_0x2bef5d['OutIdx']=_0x477f0b;},_0x1de203['Clipper']['prototype']['IntersectEdges']=function(_0xa6a21d,_0x3f5466,_0x2dccb5){var _0x31577d=_0xa6a21d['OutIdx']>=0x0,_0xd69da1=_0x3f5466['OutIdx']>=0x0;if(_0x1de203['use_xyz'])this['SetZ'](_0x2dccb5,_0xa6a21d,_0x3f5466);if(_0x1de203['use_lines']){if(_0xa6a21d['WindDelta']===0x0||_0x3f5466['WindDelta']===0x0){if(_0xa6a21d['WindDelta']===0x0&&_0x3f5466['WindDelta']===0x0)return;else {if(_0xa6a21d['PolyTyp']===_0x3f5466['PolyTyp']&&_0xa6a21d['WindDelta']!==_0x3f5466['WindDelta']&&this['m_ClipType']===_0x1de203['ClipType']['ctUnion']){if(_0xa6a21d['WindDelta']===0x0){if(_0xd69da1){this['AddOutPt'](_0xa6a21d,_0x2dccb5);if(_0x31577d)_0xa6a21d['OutIdx']=-0x1;}}else {if(_0x31577d){this['AddOutPt'](_0x3f5466,_0x2dccb5);if(_0xd69da1)_0x3f5466['OutIdx']=-0x1;}}}else {if(_0xa6a21d['PolyTyp']!==_0x3f5466['PolyTyp']){if(_0xa6a21d['WindDelta']===0x0&&Math['abs'](_0x3f5466['WindCnt'])===0x1&&(this['m_ClipType']!==_0x1de203['ClipType']['ctUnion']||_0x3f5466['WindCnt2']===0x0)){this['AddOutPt'](_0xa6a21d,_0x2dccb5);if(_0x31577d)_0xa6a21d['OutIdx']=-0x1;}else {if(_0x3f5466['WindDelta']===0x0&&Math['abs'](_0xa6a21d['WindCnt'])===0x1&&(this['m_ClipType']!==_0x1de203['ClipType']['ctUnion']||_0xa6a21d['WindCnt2']===0x0)){this['AddOutPt'](_0x3f5466,_0x2dccb5);if(_0xd69da1)_0x3f5466['OutIdx']=-0x1;}}}}}return;}}if(_0xa6a21d['PolyTyp']===_0x3f5466['PolyTyp']){if(this['IsEvenOddFillType'](_0xa6a21d)){var _0x3c7cdf=_0xa6a21d['WindCnt'];_0xa6a21d['WindCnt']=_0x3f5466['WindCnt'],_0x3f5466['WindCnt']=_0x3c7cdf;}else {if(_0xa6a21d['WindCnt']+_0x3f5466['WindDelta']===0x0)_0xa6a21d['WindCnt']=-_0xa6a21d['WindCnt'];else _0xa6a21d['WindCnt']+=_0x3f5466['WindDelta'];if(_0x3f5466['WindCnt']-_0xa6a21d['WindDelta']===0x0)_0x3f5466['WindCnt']=-_0x3f5466['WindCnt'];else _0x3f5466['WindCnt']-=_0xa6a21d['WindDelta'];}}else {if(!this['IsEvenOddFillType'](_0x3f5466))_0xa6a21d['WindCnt2']+=_0x3f5466['WindDelta'];else _0xa6a21d['WindCnt2']=_0xa6a21d['WindCnt2']===0x0?0x1:0x0;if(!this['IsEvenOddFillType'](_0xa6a21d))_0x3f5466['WindCnt2']-=_0xa6a21d['WindDelta'];else _0x3f5466['WindCnt2']=_0x3f5466['WindCnt2']===0x0?0x1:0x0;}var _0x4bc97b,_0x4c017e,_0xc0c410,_0x161673;_0xa6a21d['PolyTyp']===_0x1de203['PolyType']['ptSubject']?(_0x4bc97b=this['m_SubjFillType'],_0xc0c410=this['m_ClipFillType']):(_0x4bc97b=this['m_ClipFillType'],_0xc0c410=this['m_SubjFillType']);_0x3f5466['PolyTyp']===_0x1de203['PolyType']['ptSubject']?(_0x4c017e=this['m_SubjFillType'],_0x161673=this['m_ClipFillType']):(_0x4c017e=this['m_ClipFillType'],_0x161673=this['m_SubjFillType']);var _0x25b102,_0x39eb1e;switch(_0x4bc97b){case _0x1de203['PolyFillType']['pftPositive']:_0x25b102=_0xa6a21d['WindCnt'];break;case _0x1de203['PolyFillType']['pftNegative']:_0x25b102=-_0xa6a21d['WindCnt'];break;default:_0x25b102=Math['abs'](_0xa6a21d['WindCnt']);break;}switch(_0x4c017e){case _0x1de203['PolyFillType']['pftPositive']:_0x39eb1e=_0x3f5466['WindCnt'];break;case _0x1de203['PolyFillType']['pftNegative']:_0x39eb1e=-_0x3f5466['WindCnt'];break;default:_0x39eb1e=Math['abs'](_0x3f5466['WindCnt']);break;}if(_0x31577d&&_0xd69da1)_0x25b102!==0x0&&_0x25b102!==0x1||_0x39eb1e!==0x0&&_0x39eb1e!==0x1||_0xa6a21d['PolyTyp']!==_0x3f5466['PolyTyp']&&this['m_ClipType']!==_0x1de203['ClipType']['ctXor']?this['AddLocalMaxPoly'](_0xa6a21d,_0x3f5466,_0x2dccb5):(this['AddOutPt'](_0xa6a21d,_0x2dccb5),this['AddOutPt'](_0x3f5466,_0x2dccb5),_0x1de203['Clipper']['SwapSides'](_0xa6a21d,_0x3f5466),_0x1de203['Clipper']['SwapPolyIndexes'](_0xa6a21d,_0x3f5466));else {if(_0x31577d)(_0x39eb1e===0x0||_0x39eb1e===0x1)&&(this['AddOutPt'](_0xa6a21d,_0x2dccb5),_0x1de203['Clipper']['SwapSides'](_0xa6a21d,_0x3f5466),_0x1de203['Clipper']['SwapPolyIndexes'](_0xa6a21d,_0x3f5466));else {if(_0xd69da1)(_0x25b102===0x0||_0x25b102===0x1)&&(this['AddOutPt'](_0x3f5466,_0x2dccb5),_0x1de203['Clipper']['SwapSides'](_0xa6a21d,_0x3f5466),_0x1de203['Clipper']['SwapPolyIndexes'](_0xa6a21d,_0x3f5466));else {if((_0x25b102===0x0||_0x25b102===0x1)&&(_0x39eb1e===0x0||_0x39eb1e===0x1)){var _0x444e6e,_0x46acae;switch(_0xc0c410){case _0x1de203['PolyFillType']['pftPositive']:_0x444e6e=_0xa6a21d['WindCnt2'];break;case _0x1de203['PolyFillType']['pftNegative']:_0x444e6e=-_0xa6a21d['WindCnt2'];break;default:_0x444e6e=Math['abs'](_0xa6a21d['WindCnt2']);break;}switch(_0x161673){case _0x1de203['PolyFillType']['pftPositive']:_0x46acae=_0x3f5466['WindCnt2'];break;case _0x1de203['PolyFillType']['pftNegative']:_0x46acae=-_0x3f5466['WindCnt2'];break;default:_0x46acae=Math['abs'](_0x3f5466['WindCnt2']);break;}if(_0xa6a21d['PolyTyp']!==_0x3f5466['PolyTyp'])this['AddLocalMinPoly'](_0xa6a21d,_0x3f5466,_0x2dccb5);else {if(_0x25b102===0x1&&_0x39eb1e===0x1)switch(this['m_ClipType']){case _0x1de203['ClipType']['ctIntersection']:if(_0x444e6e>0x0&&_0x46acae>0x0)this['AddLocalMinPoly'](_0xa6a21d,_0x3f5466,_0x2dccb5);break;case _0x1de203['ClipType']['ctUnion']:if(_0x444e6e<=0x0&&_0x46acae<=0x0)this['AddLocalMinPoly'](_0xa6a21d,_0x3f5466,_0x2dccb5);break;case _0x1de203['ClipType']['ctDifference']:if(_0xa6a21d['PolyTyp']===_0x1de203['PolyType']['ptClip']&&_0x444e6e>0x0&&_0x46acae>0x0||_0xa6a21d['PolyTyp']===_0x1de203['PolyType']['ptSubject']&&_0x444e6e<=0x0&&_0x46acae<=0x0)this['AddLocalMinPoly'](_0xa6a21d,_0x3f5466,_0x2dccb5);break;case _0x1de203['ClipType']['ctXor']:this['AddLocalMinPoly'](_0xa6a21d,_0x3f5466,_0x2dccb5);break;}else _0x1de203['Clipper']['SwapSides'](_0xa6a21d,_0x3f5466);}}}}}},_0x1de203['Clipper']['prototype']['DeleteFromSEL']=function(_0x42f0f4){var _0x4a666d=_0x42f0f4['PrevInSEL'],_0x4a7ceb=_0x42f0f4['NextInSEL'];if(_0x4a666d===null&&_0x4a7ceb===null&&_0x42f0f4!==this['m_SortedEdges'])return;if(_0x4a666d!==null)_0x4a666d['NextInSEL']=_0x4a7ceb;else this['m_SortedEdges']=_0x4a7ceb;if(_0x4a7ceb!==null)_0x4a7ceb['PrevInSEL']=_0x4a666d;_0x42f0f4['NextInSEL']=null,_0x42f0f4['PrevInSEL']=null;},_0x1de203['Clipper']['prototype']['ProcessHorizontals']=function(){var _0x2b2f0d={};while(this['PopEdgeFromSEL'](_0x2b2f0d)){this['ProcessHorizontal'](_0x2b2f0d['v']);}},_0x1de203['Clipper']['prototype']['GetHorzDirection']=function(_0x370245,_0x4a38cc){_0x370245['Bot']['X']<_0x370245['Top']['X']?(_0x4a38cc['Left']=_0x370245['Bot']['X'],_0x4a38cc['Right']=_0x370245['Top']['X'],_0x4a38cc['Dir']=_0x1de203['Direction']['dLeftToRight']):(_0x4a38cc['Left']=_0x370245['Top']['X'],_0x4a38cc['Right']=_0x370245['Bot']['X'],_0x4a38cc['Dir']=_0x1de203['Direction']['dRightToLeft']);},_0x1de203['Clipper']['prototype']['ProcessHorizontal']=function(_0x1e5be1){var _0x13087d={'Dir':null,'Left':null,'Right':null};this['GetHorzDirection'](_0x1e5be1,_0x13087d);var _0x5b5346=_0x13087d['Dir'],_0x11887c=_0x13087d['Left'],_0x4c7831=_0x13087d['Right'],_0x31669b=_0x1e5be1['WindDelta']===0x0,_0x4d057a=_0x1e5be1,_0x3c2c85=null;while(_0x4d057a['NextInLML']!==null&&_0x1de203['ClipperBase']['IsHorizontal'](_0x4d057a['NextInLML']))_0x4d057a=_0x4d057a['NextInLML'];if(_0x4d057a['NextInLML']===null)_0x3c2c85=this['GetMaximaPair'](_0x4d057a);var _0xbe62a=this['m_Maxima'];if(_0xbe62a!==null){if(_0x5b5346===_0x1de203['Direction']['dLeftToRight']){while(_0xbe62a!==null&&_0xbe62a['X']<=_0x1e5be1['Bot']['X']){_0xbe62a=_0xbe62a['Next'];}_0xbe62a!==null&&_0xbe62a['X']>=_0x4d057a['Top']['X']&&(_0xbe62a=null);}else {while(_0xbe62a['Next']!==null&&_0xbe62a['Next']['X']<_0x1e5be1['Bot']['X']){_0xbe62a=_0xbe62a['Next'];}_0xbe62a['X']<=_0x4d057a['Top']['X']&&(_0xbe62a=null);}}var _0x56239a=null;for(;;){var _0x10d418=_0x1e5be1===_0x4d057a,_0x34ca14=this['GetNextInAEL'](_0x1e5be1,_0x5b5346);while(_0x34ca14!==null){if(_0xbe62a!==null){if(_0x5b5346===_0x1de203['Direction']['dLeftToRight'])while(_0xbe62a!==null&&_0xbe62a['X']<_0x34ca14['Curr']['X']){_0x1e5be1['OutIdx']>=0x0&&!_0x31669b&&this['AddOutPt'](_0x1e5be1,new _0x1de203['IntPoint2'](_0xbe62a['X'],_0x1e5be1['Bot']['Y'])),_0xbe62a=_0xbe62a['Next'];}else while(_0xbe62a!==null&&_0xbe62a['X']>_0x34ca14['Curr']['X']){_0x1e5be1['OutIdx']>=0x0&&!_0x31669b&&this['AddOutPt'](_0x1e5be1,new _0x1de203['IntPoint2'](_0xbe62a['X'],_0x1e5be1['Bot']['Y'])),_0xbe62a=_0xbe62a['Prev'];}}if(_0x5b5346===_0x1de203['Direction']['dLeftToRight']&&_0x34ca14['Curr']['X']>_0x4c7831||_0x5b5346===_0x1de203['Direction']['dRightToLeft']&&_0x34ca14['Curr']['X']<_0x11887c)break;if(_0x34ca14['Curr']['X']===_0x1e5be1['Top']['X']&&_0x1e5be1['NextInLML']!==null&&_0x34ca14['Dx']<_0x1e5be1['NextInLML']['Dx'])break;if(_0x1e5be1['OutIdx']>=0x0&&!_0x31669b){if(_0x1de203['use_xyz']){if(_0x5b5346===_0x1de203['Direction']['dLeftToRight'])this['SetZ'](_0x34ca14['Curr'],_0x1e5be1,_0x34ca14);else this['SetZ'](_0x34ca14['Curr'],_0x34ca14,_0x1e5be1);}_0x56239a=this['AddOutPt'](_0x1e5be1,_0x34ca14['Curr']);var _0x153262=this['m_SortedEdges'];while(_0x153262!==null){if(_0x153262['OutIdx']>=0x0&&this['HorzSegmentsOverlap'](_0x1e5be1['Bot']['X'],_0x1e5be1['Top']['X'],_0x153262['Bot']['X'],_0x153262['Top']['X'])){var _0x58be39=this['GetLastOutPt'](_0x153262);this['AddJoin'](_0x58be39,_0x56239a,_0x153262['Top']);}_0x153262=_0x153262['NextInSEL'];}this['AddGhostJoin'](_0x56239a,_0x1e5be1['Bot']);}if(_0x34ca14===_0x3c2c85&&_0x10d418){_0x1e5be1['OutIdx']>=0x0&&this['AddLocalMaxPoly'](_0x1e5be1,_0x3c2c85,_0x1e5be1['Top']);this['DeleteFromAEL'](_0x1e5be1),this['DeleteFromAEL'](_0x3c2c85);return;}if(_0x5b5346===_0x1de203['Direction']['dLeftToRight']){var _0x3d9ef6=new _0x1de203['IntPoint2'](_0x34ca14['Curr']['X'],_0x1e5be1['Curr']['Y']);this['IntersectEdges'](_0x1e5be1,_0x34ca14,_0x3d9ef6);}else {var _0x3d9ef6=new _0x1de203['IntPoint2'](_0x34ca14['Curr']['X'],_0x1e5be1['Curr']['Y']);this['IntersectEdges'](_0x34ca14,_0x1e5be1,_0x3d9ef6);}var _0x11ffbb=this['GetNextInAEL'](_0x34ca14,_0x5b5346);this['SwapPositionsInAEL'](_0x1e5be1,_0x34ca14),_0x34ca14=_0x11ffbb;}if(_0x1e5be1['NextInLML']===null||!_0x1de203['ClipperBase']['IsHorizontal'](_0x1e5be1['NextInLML']))break;_0x1e5be1=this['UpdateEdgeIntoAEL'](_0x1e5be1),_0x1e5be1['OutIdx']>=0x0&&this['AddOutPt'](_0x1e5be1,_0x1e5be1['Bot']),_0x13087d={'Dir':_0x5b5346,'Left':_0x11887c,'Right':_0x4c7831},this['GetHorzDirection'](_0x1e5be1,_0x13087d),_0x5b5346=_0x13087d['Dir'],_0x11887c=_0x13087d['Left'],_0x4c7831=_0x13087d['Right'];}if(_0x1e5be1['OutIdx']>=0x0&&_0x56239a===null){_0x56239a=this['GetLastOutPt'](_0x1e5be1);var _0x153262=this['m_SortedEdges'];while(_0x153262!==null){if(_0x153262['OutIdx']>=0x0&&this['HorzSegmentsOverlap'](_0x1e5be1['Bot']['X'],_0x1e5be1['Top']['X'],_0x153262['Bot']['X'],_0x153262['Top']['X'])){var _0x58be39=this['GetLastOutPt'](_0x153262);this['AddJoin'](_0x58be39,_0x56239a,_0x153262['Top']);}_0x153262=_0x153262['NextInSEL'];}this['AddGhostJoin'](_0x56239a,_0x1e5be1['Top']);}if(_0x1e5be1['NextInLML']!==null){if(_0x1e5be1['OutIdx']>=0x0){_0x56239a=this['AddOutPt'](_0x1e5be1,_0x1e5be1['Top']),_0x1e5be1=this['UpdateEdgeIntoAEL'](_0x1e5be1);if(_0x1e5be1['WindDelta']===0x0)return;var _0x2b1dfd=_0x1e5be1['PrevInAEL'],_0x11ffbb=_0x1e5be1['NextInAEL'];if(_0x2b1dfd!==null&&_0x2b1dfd['Curr']['X']===_0x1e5be1['Bot']['X']&&_0x2b1dfd['Curr']['Y']===_0x1e5be1['Bot']['Y']&&_0x2b1dfd['WindDelta']===0x0&&(_0x2b1dfd['OutIdx']>=0x0&&_0x2b1dfd['Curr']['Y']>_0x2b1dfd['Top']['Y']&&_0x1de203['ClipperBase']['SlopesEqual3'](_0x1e5be1,_0x2b1dfd,this['m_UseFullRange']))){var _0x58be39=this['AddOutPt'](_0x2b1dfd,_0x1e5be1['Bot']);this['AddJoin'](_0x56239a,_0x58be39,_0x1e5be1['Top']);}else {if(_0x11ffbb!==null&&_0x11ffbb['Curr']['X']===_0x1e5be1['Bot']['X']&&_0x11ffbb['Curr']['Y']===_0x1e5be1['Bot']['Y']&&_0x11ffbb['WindDelta']!==0x0&&_0x11ffbb['OutIdx']>=0x0&&_0x11ffbb['Curr']['Y']>_0x11ffbb['Top']['Y']&&_0x1de203['ClipperBase']['SlopesEqual3'](_0x1e5be1,_0x11ffbb,this['m_UseFullRange'])){var _0x58be39=this['AddOutPt'](_0x11ffbb,_0x1e5be1['Bot']);this['AddJoin'](_0x56239a,_0x58be39,_0x1e5be1['Top']);}}}else _0x1e5be1=this['UpdateEdgeIntoAEL'](_0x1e5be1);}else _0x1e5be1['OutIdx']>=0x0&&this['AddOutPt'](_0x1e5be1,_0x1e5be1['Top']),this['DeleteFromAEL'](_0x1e5be1);},_0x1de203['Clipper']['prototype']['GetNextInAEL']=function(_0x185367,_0x44fd9c){return _0x44fd9c===_0x1de203['Direction']['dLeftToRight']?_0x185367['NextInAEL']:_0x185367['PrevInAEL'];},_0x1de203['Clipper']['prototype']['IsMinima']=function(_0x34502a){return _0x34502a!==null&&_0x34502a['Prev']['NextInLML']!==_0x34502a&&_0x34502a['Next']['NextInLML']!==_0x34502a;},_0x1de203['Clipper']['prototype']['IsMaxima']=function(_0x4e319e,_0x837aa1){return _0x4e319e!==null&&_0x4e319e['Top']['Y']===_0x837aa1&&_0x4e319e['NextInLML']===null;},_0x1de203['Clipper']['prototype']['IsIntermediate']=function(_0x5bfe80,_0x423596){return _0x5bfe80['Top']['Y']===_0x423596&&_0x5bfe80['NextInLML']!==null;},_0x1de203['Clipper']['prototype']['GetMaximaPair']=function(_0x56f77e){return _0x1de203['IntPoint']['op_Equality'](_0x56f77e['Next']['Top'],_0x56f77e['Top'])&&_0x56f77e['Next']['NextInLML']===null?_0x56f77e['Next']:_0x1de203['IntPoint']['op_Equality'](_0x56f77e['Prev']['Top'],_0x56f77e['Top'])&&_0x56f77e['Prev']['NextInLML']===null?_0x56f77e['Prev']:null;},_0x1de203['Clipper']['prototype']['GetMaximaPairEx']=function(_0x298148){var _0x484594=this['GetMaximaPair'](_0x298148);if(_0x484594===null||_0x484594['OutIdx']===_0x1de203['ClipperBase']['Skip']||_0x484594['NextInAEL']===_0x484594['PrevInAEL']&&!_0x1de203['ClipperBase']['IsHorizontal'](_0x484594))return null;return _0x484594;},_0x1de203['Clipper']['prototype']['ProcessIntersections']=function(_0x27642c){if(this['m_ActiveEdges']===null)return !![];try{this['BuildIntersectList'](_0x27642c);if(this['m_IntersectList']['length']===0x0)return !![];if(this['m_IntersectList']['length']===0x1||this['FixupIntersectionOrder']())this['ProcessIntersectList']();else return ![];}catch(_0x3053c1){this['m_SortedEdges']=null,this['m_IntersectList']['length']=0x0,_0x1de203['Error']('ProcessIntersections\x20error');}return this['m_SortedEdges']=null,!![];},_0x1de203['Clipper']['prototype']['BuildIntersectList']=function(_0x20e567){if(this['m_ActiveEdges']===null)return;var _0x3433e7=this['m_ActiveEdges'];this['m_SortedEdges']=_0x3433e7;while(_0x3433e7!==null){_0x3433e7['PrevInSEL']=_0x3433e7['PrevInAEL'],_0x3433e7['NextInSEL']=_0x3433e7['NextInAEL'],_0x3433e7['Curr']['X']=_0x1de203['Clipper']['TopX'](_0x3433e7,_0x20e567),_0x3433e7=_0x3433e7['NextInAEL'];}var _0x22cbd7=!![];while(_0x22cbd7&&this['m_SortedEdges']!==null){_0x22cbd7=![],_0x3433e7=this['m_SortedEdges'];while(_0x3433e7['NextInSEL']!==null){var _0xbdbf5a=_0x3433e7['NextInSEL'],_0x1a2f4a=new _0x1de203['IntPoint0']();if(_0x3433e7['Curr']['X']>_0xbdbf5a['Curr']['X']){this['IntersectPoint'](_0x3433e7,_0xbdbf5a,_0x1a2f4a);_0x1a2f4a['Y']<_0x20e567&&(_0x1a2f4a=new _0x1de203['IntPoint2'](_0x1de203['Clipper']['TopX'](_0x3433e7,_0x20e567),_0x20e567));var _0x141e3d=new _0x1de203['IntersectNode']();_0x141e3d['Edge1']=_0x3433e7,_0x141e3d['Edge2']=_0xbdbf5a,_0x141e3d['Pt']['X']=_0x1a2f4a['X'],_0x141e3d['Pt']['Y']=_0x1a2f4a['Y'];if(_0x1de203['use_xyz'])_0x141e3d['Pt']['Z']=_0x1a2f4a['Z'];this['m_IntersectList']['push'](_0x141e3d),this['SwapPositionsInSEL'](_0x3433e7,_0xbdbf5a),_0x22cbd7=!![];}else _0x3433e7=_0xbdbf5a;}if(_0x3433e7['PrevInSEL']!==null)_0x3433e7['PrevInSEL']['NextInSEL']=null;else break;}this['m_SortedEdges']=null;},_0x1de203['Clipper']['prototype']['EdgesAdjacent']=function(_0x3990f5){return _0x3990f5['Edge1']['NextInSEL']===_0x3990f5['Edge2']||_0x3990f5['Edge1']['PrevInSEL']===_0x3990f5['Edge2'];},_0x1de203['Clipper']['IntersectNodeSort']=function(_0xe4b3eb,_0xb39ae2){return _0xb39ae2['Pt']['Y']-_0xe4b3eb['Pt']['Y'];},_0x1de203['Clipper']['prototype']['FixupIntersectionOrder']=function(){this['m_IntersectList']['sort'](this['m_IntersectNodeComparer']),this['CopyAELToSEL']();var _0x132133=this['m_IntersectList']['length'];for(var _0x3b6cec=0x0;_0x3b6cec<_0x132133;_0x3b6cec++){if(!this['EdgesAdjacent'](this['m_IntersectList'][_0x3b6cec])){var _0x1006f7=_0x3b6cec+0x1;while(_0x1006f7<_0x132133&&!this['EdgesAdjacent'](this['m_IntersectList'][_0x1006f7]))_0x1006f7++;if(_0x1006f7===_0x132133)return ![];var _0x48f303=this['m_IntersectList'][_0x3b6cec];this['m_IntersectList'][_0x3b6cec]=this['m_IntersectList'][_0x1006f7],this['m_IntersectList'][_0x1006f7]=_0x48f303;}this['SwapPositionsInSEL'](this['m_IntersectList'][_0x3b6cec]['Edge1'],this['m_IntersectList'][_0x3b6cec]['Edge2']);}return !![];},_0x1de203['Clipper']['prototype']['ProcessIntersectList']=function(){for(var _0x2dba82=0x0,_0x3fc299=this['m_IntersectList']['length'];_0x2dba82<_0x3fc299;_0x2dba82++){var _0x5bbb00=this['m_IntersectList'][_0x2dba82];this['IntersectEdges'](_0x5bbb00['Edge1'],_0x5bbb00['Edge2'],_0x5bbb00['Pt']),this['SwapPositionsInAEL'](_0x5bbb00['Edge1'],_0x5bbb00['Edge2']);}this['m_IntersectList']['length']=0x0;};var _0x5a36bd=function(_0x225a4f){return _0x225a4f<0x0?Math['ceil'](_0x225a4f-0.5):Math['round'](_0x225a4f);},_0xf08003=function(_0x26cd9e){return _0x26cd9e<0x0?Math['ceil'](_0x26cd9e-0.5):Math['floor'](_0x26cd9e+0.5);},_0x552076=function(_0x8a4708){return _0x8a4708<0x0?-Math['round'](Math['abs'](_0x8a4708)):Math['round'](_0x8a4708);},_0xdb6cf0=function(_0x424ffc){return _0x424ffc<0x0?(_0x424ffc-=0.5,_0x424ffc<-0x80000000?Math['ceil'](_0x424ffc):_0x424ffc|0x0):(_0x424ffc+=0.5,_0x424ffc>0x7fffffff?Math['floor'](_0x424ffc):_0x424ffc|0x0);};if(_0x5b454d['msie'])_0x1de203['Clipper']['Round']=_0x5a36bd;else {if(_0x5b454d['chromium'])_0x1de203['Clipper']['Round']=_0x552076;else {if(_0x5b454d['safari'])_0x1de203['Clipper']['Round']=_0xdb6cf0;else _0x1de203['Clipper']['Round']=_0xf08003;}}_0x1de203['Clipper']['TopX']=function(_0x381c11,_0x2e8416){if(_0x2e8416===_0x381c11['Top']['Y'])return _0x381c11['Top']['X'];return _0x381c11['Bot']['X']+_0x1de203['Clipper']['Round'](_0x381c11['Dx']*(_0x2e8416-_0x381c11['Bot']['Y']));},_0x1de203['Clipper']['prototype']['IntersectPoint']=function(_0x2b5f0f,_0x293ca4,_0x5f0c29){_0x5f0c29['X']=0x0,_0x5f0c29['Y']=0x0;var _0x2e6e77,_0x329157;if(_0x2b5f0f['Dx']===_0x293ca4['Dx']){_0x5f0c29['Y']=_0x2b5f0f['Curr']['Y'],_0x5f0c29['X']=_0x1de203['Clipper']['TopX'](_0x2b5f0f,_0x5f0c29['Y']);return;}if(_0x2b5f0f['Delta']['X']===0x0)_0x5f0c29['X']=_0x2b5f0f['Bot']['X'],_0x1de203['ClipperBase']['IsHorizontal'](_0x293ca4)?_0x5f0c29['Y']=_0x293ca4['Bot']['Y']:(_0x329157=_0x293ca4['Bot']['Y']-_0x293ca4['Bot']['X']/_0x293ca4['Dx'],_0x5f0c29['Y']=_0x1de203['Clipper']['Round'](_0x5f0c29['X']/_0x293ca4['Dx']+_0x329157));else {if(_0x293ca4['Delta']['X']===0x0)_0x5f0c29['X']=_0x293ca4['Bot']['X'],_0x1de203['ClipperBase']['IsHorizontal'](_0x2b5f0f)?_0x5f0c29['Y']=_0x2b5f0f['Bot']['Y']:(_0x2e6e77=_0x2b5f0f['Bot']['Y']-_0x2b5f0f['Bot']['X']/_0x2b5f0f['Dx'],_0x5f0c29['Y']=_0x1de203['Clipper']['Round'](_0x5f0c29['X']/_0x2b5f0f['Dx']+_0x2e6e77));else {_0x2e6e77=_0x2b5f0f['Bot']['X']-_0x2b5f0f['Bot']['Y']*_0x2b5f0f['Dx'],_0x329157=_0x293ca4['Bot']['X']-_0x293ca4['Bot']['Y']*_0x293ca4['Dx'];var _0x58a588=(_0x329157-_0x2e6e77)/(_0x2b5f0f['Dx']-_0x293ca4['Dx']);_0x5f0c29['Y']=_0x1de203['Clipper']['Round'](_0x58a588);if(Math['abs'](_0x2b5f0f['Dx'])<Math['abs'](_0x293ca4['Dx']))_0x5f0c29['X']=_0x1de203['Clipper']['Round'](_0x2b5f0f['Dx']*_0x58a588+_0x2e6e77);else _0x5f0c29['X']=_0x1de203['Clipper']['Round'](_0x293ca4['Dx']*_0x58a588+_0x329157);}}if(_0x5f0c29['Y']<_0x2b5f0f['Top']['Y']||_0x5f0c29['Y']<_0x293ca4['Top']['Y']){if(_0x2b5f0f['Top']['Y']>_0x293ca4['Top']['Y'])return _0x5f0c29['Y']=_0x2b5f0f['Top']['Y'],_0x5f0c29['X']=_0x1de203['Clipper']['TopX'](_0x293ca4,_0x2b5f0f['Top']['Y']),_0x5f0c29['X']<_0x2b5f0f['Top']['X'];else _0x5f0c29['Y']=_0x293ca4['Top']['Y'];if(Math['abs'](_0x2b5f0f['Dx'])<Math['abs'](_0x293ca4['Dx']))_0x5f0c29['X']=_0x1de203['Clipper']['TopX'](_0x2b5f0f,_0x5f0c29['Y']);else _0x5f0c29['X']=_0x1de203['Clipper']['TopX'](_0x293ca4,_0x5f0c29['Y']);}if(_0x5f0c29['Y']>_0x2b5f0f['Curr']['Y']){_0x5f0c29['Y']=_0x2b5f0f['Curr']['Y'];if(Math['abs'](_0x2b5f0f['Dx'])>Math['abs'](_0x293ca4['Dx']))_0x5f0c29['X']=_0x1de203['Clipper']['TopX'](_0x293ca4,_0x5f0c29['Y']);else _0x5f0c29['X']=_0x1de203['Clipper']['TopX'](_0x2b5f0f,_0x5f0c29['Y']);}},_0x1de203['Clipper']['prototype']['ProcessEdgesAtTopOfScanbeam']=function(_0x3c397c){var _0x36d709=this['m_ActiveEdges'];while(_0x36d709!==null){var _0x3c220f=this['IsMaxima'](_0x36d709,_0x3c397c);if(_0x3c220f){var _0x49c064=this['GetMaximaPairEx'](_0x36d709);_0x3c220f=_0x49c064===null||!_0x1de203['ClipperBase']['IsHorizontal'](_0x49c064);}if(_0x3c220f){this['StrictlySimple']&&this['InsertMaxima'](_0x36d709['Top']['X']);var _0x3a0797=_0x36d709['PrevInAEL'];this['DoMaxima'](_0x36d709);if(_0x3a0797===null)_0x36d709=this['m_ActiveEdges'];else _0x36d709=_0x3a0797['NextInAEL'];}else {if(this['IsIntermediate'](_0x36d709,_0x3c397c)&&_0x1de203['ClipperBase']['IsHorizontal'](_0x36d709['NextInLML'])){_0x36d709=this['UpdateEdgeIntoAEL'](_0x36d709);if(_0x36d709['OutIdx']>=0x0)this['AddOutPt'](_0x36d709,_0x36d709['Bot']);this['AddEdgeToSEL'](_0x36d709);}else _0x36d709['Curr']['X']=_0x1de203['Clipper']['TopX'](_0x36d709,_0x3c397c),_0x36d709['Curr']['Y']=_0x3c397c;if(_0x1de203['use_xyz']){if(_0x36d709['Top']['Y']===_0x3c397c)_0x36d709['Curr']['Z']=_0x36d709['Top']['Z'];else {if(_0x36d709['Bot']['Y']===_0x3c397c)_0x36d709['Curr']['Z']=_0x36d709['Bot']['Z'];else _0x36d709['Curr']['Z']=0x0;}}if(this['StrictlySimple']){var _0x3a0797=_0x36d709['PrevInAEL'];if(_0x36d709['OutIdx']>=0x0&&_0x36d709['WindDelta']!==0x0&&_0x3a0797!==null&&_0x3a0797['OutIdx']>=0x0&&_0x3a0797['Curr']['X']===_0x36d709['Curr']['X']&&_0x3a0797['WindDelta']!==0x0){var _0x103cb8=new _0x1de203['IntPoint1'](_0x36d709['Curr']);_0x1de203['use_xyz']&&this['SetZ'](_0x103cb8,_0x3a0797,_0x36d709);var _0x586783=this['AddOutPt'](_0x3a0797,_0x103cb8),_0x2644a8=this['AddOutPt'](_0x36d709,_0x103cb8);this['AddJoin'](_0x586783,_0x2644a8,_0x103cb8);}}_0x36d709=_0x36d709['NextInAEL'];}}this['ProcessHorizontals'](),this['m_Maxima']=null,_0x36d709=this['m_ActiveEdges'];while(_0x36d709!==null){if(this['IsIntermediate'](_0x36d709,_0x3c397c)){var _0x586783=null;if(_0x36d709['OutIdx']>=0x0)_0x586783=this['AddOutPt'](_0x36d709,_0x36d709['Top']);_0x36d709=this['UpdateEdgeIntoAEL'](_0x36d709);var _0x3a0797=_0x36d709['PrevInAEL'],_0x186371=_0x36d709['NextInAEL'];if(_0x3a0797!==null&&_0x3a0797['Curr']['X']===_0x36d709['Bot']['X']&&_0x3a0797['Curr']['Y']===_0x36d709['Bot']['Y']&&_0x586783!==null&&_0x3a0797['OutIdx']>=0x0&&_0x3a0797['Curr']['Y']===_0x3a0797['Top']['Y']&&_0x1de203['ClipperBase']['SlopesEqual5'](_0x36d709['Curr'],_0x36d709['Top'],_0x3a0797['Curr'],_0x3a0797['Top'],this['m_UseFullRange'])&&_0x36d709['WindDelta']!==0x0&&_0x3a0797['WindDelta']!==0x0){var _0x2644a8=this['AddOutPt'](ePrev2,_0x36d709['Bot']);this['AddJoin'](_0x586783,_0x2644a8,_0x36d709['Top']);}else {if(_0x186371!==null&&_0x186371['Curr']['X']===_0x36d709['Bot']['X']&&_0x186371['Curr']['Y']===_0x36d709['Bot']['Y']&&_0x586783!==null&&_0x186371['OutIdx']>=0x0&&_0x186371['Curr']['Y']===_0x186371['Top']['Y']&&_0x1de203['ClipperBase']['SlopesEqual5'](_0x36d709['Curr'],_0x36d709['Top'],_0x186371['Curr'],_0x186371['Top'],this['m_UseFullRange'])&&_0x36d709['WindDelta']!==0x0&&_0x186371['WindDelta']!==0x0){var _0x2644a8=this['AddOutPt'](_0x186371,_0x36d709['Bot']);this['AddJoin'](_0x586783,_0x2644a8,_0x36d709['Top']);}}}_0x36d709=_0x36d709['NextInAEL'];}},_0x1de203['Clipper']['prototype']['DoMaxima']=function(_0x4d7b30){var _0x317e21=this['GetMaximaPairEx'](_0x4d7b30);if(_0x317e21===null){if(_0x4d7b30['OutIdx']>=0x0)this['AddOutPt'](_0x4d7b30,_0x4d7b30['Top']);this['DeleteFromAEL'](_0x4d7b30);return;}var _0x1dd67e=_0x4d7b30['NextInAEL'];while(_0x1dd67e!==null&&_0x1dd67e!==_0x317e21){this['IntersectEdges'](_0x4d7b30,_0x1dd67e,_0x4d7b30['Top']),this['SwapPositionsInAEL'](_0x4d7b30,_0x1dd67e),_0x1dd67e=_0x4d7b30['NextInAEL'];}if(_0x4d7b30['OutIdx']===-0x1&&_0x317e21['OutIdx']===-0x1)this['DeleteFromAEL'](_0x4d7b30),this['DeleteFromAEL'](_0x317e21);else {if(_0x4d7b30['OutIdx']>=0x0&&_0x317e21['OutIdx']>=0x0){if(_0x4d7b30['OutIdx']>=0x0)this['AddLocalMaxPoly'](_0x4d7b30,_0x317e21,_0x4d7b30['Top']);this['DeleteFromAEL'](_0x4d7b30),this['DeleteFromAEL'](_0x317e21);}else {if(_0x1de203['use_lines']&&_0x4d7b30['WindDelta']===0x0)_0x4d7b30['OutIdx']>=0x0&&(this['AddOutPt'](_0x4d7b30,_0x4d7b30['Top']),_0x4d7b30['OutIdx']=_0x1de203['ClipperBase']['Unassigned']),this['DeleteFromAEL'](_0x4d7b30),_0x317e21['OutIdx']>=0x0&&(this['AddOutPt'](_0x317e21,_0x4d7b30['Top']),_0x317e21['OutIdx']=_0x1de203['ClipperBase']['Unassigned']),this['DeleteFromAEL'](_0x317e21);else _0x1de203['Error']('DoMaxima\x20error');}}},_0x1de203['Clipper']['ReversePaths']=function(_0x1d7b1e){for(var _0x4c94f7=0x0,_0x281111=_0x1d7b1e['length'];_0x4c94f7<_0x281111;_0x4c94f7++)_0x1d7b1e[_0x4c94f7]['reverse']();},_0x1de203['Clipper']['Orientation']=function(_0x4d7c00){return _0x1de203['Clipper']['Area'](_0x4d7c00)>=0x0;},_0x1de203['Clipper']['prototype']['PointCount']=function(_0x54cb2d){if(_0x54cb2d===null)return 0x0;var _0x5a6925=0x0,_0x38b323=_0x54cb2d;do{_0x5a6925++,_0x38b323=_0x38b323['Next'];}while(_0x38b323!==_0x54cb2d);return _0x5a6925;},_0x1de203['Clipper']['prototype']['BuildResult']=function(_0x1acba3){_0x1de203['Clear'](_0x1acba3);for(var _0x33d0f1=0x0,_0x4ae5e7=this['m_PolyOuts']['length'];_0x33d0f1<_0x4ae5e7;_0x33d0f1++){var _0x44b443=this['m_PolyOuts'][_0x33d0f1];if(_0x44b443['Pts']===null)continue;var _0x5eaed3=_0x44b443['Pts']['Prev'],_0x27444a=this['PointCount'](_0x5eaed3);if(_0x27444a<0x2)continue;var _0x3769c5=new Array(_0x27444a);for(var _0xbebcd1=0x0;_0xbebcd1<_0x27444a;_0xbebcd1++){_0x3769c5[_0xbebcd1]=_0x5eaed3['Pt'],_0x5eaed3=_0x5eaed3['Prev'];}_0x1acba3['push'](_0x3769c5);}},_0x1de203['Clipper']['prototype']['BuildResult2']=function(_0x46b2e6){_0x46b2e6['Clear']();for(var _0x2bc672=0x0,_0x56f1fa=this['m_PolyOuts']['length'];_0x2bc672<_0x56f1fa;_0x2bc672++){var _0x2e5a1f=this['m_PolyOuts'][_0x2bc672],_0x26f6c7=this['PointCount'](_0x2e5a1f['Pts']);if(_0x2e5a1f['IsOpen']&&_0x26f6c7<0x2||!_0x2e5a1f['IsOpen']&&_0x26f6c7<0x3)continue;this['FixHoleLinkage'](_0x2e5a1f);var _0x136adc=new _0x1de203['PolyNode']();_0x46b2e6['m_AllPolys']['push'](_0x136adc),_0x2e5a1f['PolyNode']=_0x136adc,_0x136adc['m_polygon']['length']=_0x26f6c7;var _0x57e40e=_0x2e5a1f['Pts']['Prev'];for(var _0x27bf0f=0x0;_0x27bf0f<_0x26f6c7;_0x27bf0f++){_0x136adc['m_polygon'][_0x27bf0f]=_0x57e40e['Pt'],_0x57e40e=_0x57e40e['Prev'];}}for(var _0x2bc672=0x0,_0x56f1fa=this['m_PolyOuts']['length'];_0x2bc672<_0x56f1fa;_0x2bc672++){var _0x2e5a1f=this['m_PolyOuts'][_0x2bc672];if(_0x2e5a1f['PolyNode']===null)continue;else {if(_0x2e5a1f['IsOpen'])_0x2e5a1f['PolyNode']['IsOpen']=!![],_0x46b2e6['AddChild'](_0x2e5a1f['PolyNode']);else {if(_0x2e5a1f['FirstLeft']!==null&&_0x2e5a1f['FirstLeft']['PolyNode']!==null)_0x2e5a1f['FirstLeft']['PolyNode']['AddChild'](_0x2e5a1f['PolyNode']);else _0x46b2e6['AddChild'](_0x2e5a1f['PolyNode']);}}}},_0x1de203['Clipper']['prototype']['FixupOutPolyline']=function(_0x42de67){var _0x24fb69=_0x42de67['Pts'],_0x5b7c2a=_0x24fb69['Prev'];while(_0x24fb69!==_0x5b7c2a){_0x24fb69=_0x24fb69['Next'];if(_0x1de203['IntPoint']['op_Equality'](_0x24fb69['Pt'],_0x24fb69['Prev']['Pt'])){_0x24fb69===_0x5b7c2a&&(_0x5b7c2a=_0x24fb69['Prev']);var _0x2983ab=_0x24fb69['Prev'];_0x2983ab['Next']=_0x24fb69['Next'],_0x24fb69['Next']['Prev']=_0x2983ab,_0x24fb69=_0x2983ab;}}_0x24fb69===_0x24fb69['Prev']&&(_0x42de67['Pts']=null);},_0x1de203['Clipper']['prototype']['FixupOutPolygon']=function(_0x1a15c0){var _0x3d9db8=null;_0x1a15c0['BottomPt']=null;var _0x12286d=_0x1a15c0['Pts'],_0x706d0=this['PreserveCollinear']||this['StrictlySimple'];for(;;){if(_0x12286d['Prev']===_0x12286d||_0x12286d['Prev']===_0x12286d['Next']){_0x1a15c0['Pts']=null;return;}if(_0x1de203['IntPoint']['op_Equality'](_0x12286d['Pt'],_0x12286d['Next']['Pt'])||_0x1de203['IntPoint']['op_Equality'](_0x12286d['Pt'],_0x12286d['Prev']['Pt'])||_0x1de203['ClipperBase']['SlopesEqual4'](_0x12286d['Prev']['Pt'],_0x12286d['Pt'],_0x12286d['Next']['Pt'],this['m_UseFullRange'])&&(!_0x706d0||!this['Pt2IsBetweenPt1AndPt3'](_0x12286d['Prev']['Pt'],_0x12286d['Pt'],_0x12286d['Next']['Pt'])))_0x3d9db8=null,_0x12286d['Prev']['Next']=_0x12286d['Next'],_0x12286d['Next']['Prev']=_0x12286d['Prev'],_0x12286d=_0x12286d['Prev'];else {if(_0x12286d===_0x3d9db8)break;else {if(_0x3d9db8===null)_0x3d9db8=_0x12286d;_0x12286d=_0x12286d['Next'];}}}_0x1a15c0['Pts']=_0x12286d;},_0x1de203['Clipper']['prototype']['DupOutPt']=function(_0x2a8777,_0x73c6fb){var _0x2b6ef2=new _0x1de203['OutPt']();_0x2b6ef2['Pt']['X']=_0x2a8777['Pt']['X'],_0x2b6ef2['Pt']['Y']=_0x2a8777['Pt']['Y'];if(_0x1de203['use_xyz'])_0x2b6ef2['Pt']['Z']=_0x2a8777['Pt']['Z'];return _0x2b6ef2['Idx']=_0x2a8777['Idx'],_0x73c6fb?(_0x2b6ef2['Next']=_0x2a8777['Next'],_0x2b6ef2['Prev']=_0x2a8777,_0x2a8777['Next']['Prev']=_0x2b6ef2,_0x2a8777['Next']=_0x2b6ef2):(_0x2b6ef2['Prev']=_0x2a8777['Prev'],_0x2b6ef2['Next']=_0x2a8777,_0x2a8777['Prev']['Next']=_0x2b6ef2,_0x2a8777['Prev']=_0x2b6ef2),_0x2b6ef2;},_0x1de203['Clipper']['prototype']['GetOverlap']=function(_0x5ac7ce,_0x302b97,_0x113f45,_0x5ad490,_0x38aa81){return _0x5ac7ce<_0x302b97?_0x113f45<_0x5ad490?(_0x38aa81['Left']=Math['max'](_0x5ac7ce,_0x113f45),_0x38aa81['Right']=Math['min'](_0x302b97,_0x5ad490)):(_0x38aa81['Left']=Math['max'](_0x5ac7ce,_0x5ad490),_0x38aa81['Right']=Math['min'](_0x302b97,_0x113f45)):_0x113f45<_0x5ad490?(_0x38aa81['Left']=Math['max'](_0x302b97,_0x113f45),_0x38aa81['Right']=Math['min'](_0x5ac7ce,_0x5ad490)):(_0x38aa81['Left']=Math['max'](_0x302b97,_0x5ad490),_0x38aa81['Right']=Math['min'](_0x5ac7ce,_0x113f45)),_0x38aa81['Left']<_0x38aa81['Right'];},_0x1de203['Clipper']['prototype']['JoinHorz']=function(_0x77170e,_0x211716,_0x2ab397,_0x2f0fc2,_0x19f131,_0x1778ad){var _0x40ec3d=_0x77170e['Pt']['X']>_0x211716['Pt']['X']?_0x1de203['Direction']['dRightToLeft']:_0x1de203['Direction']['dLeftToRight'],_0x3facef=_0x2ab397['Pt']['X']>_0x2f0fc2['Pt']['X']?_0x1de203['Direction']['dRightToLeft']:_0x1de203['Direction']['dLeftToRight'];if(_0x40ec3d===_0x3facef)return ![];if(_0x40ec3d===_0x1de203['Direction']['dLeftToRight']){while(_0x77170e['Next']['Pt']['X']<=_0x19f131['X']&&_0x77170e['Next']['Pt']['X']>=_0x77170e['Pt']['X']&&_0x77170e['Next']['Pt']['Y']===_0x19f131['Y'])_0x77170e=_0x77170e['Next'];if(_0x1778ad&&_0x77170e['Pt']['X']!==_0x19f131['X'])_0x77170e=_0x77170e['Next'];_0x211716=this['DupOutPt'](_0x77170e,!_0x1778ad);if(_0x1de203['IntPoint']['op_Inequality'](_0x211716['Pt'],_0x19f131)){_0x77170e=_0x211716,_0x77170e['Pt']['X']=_0x19f131['X'],_0x77170e['Pt']['Y']=_0x19f131['Y'];if(_0x1de203['use_xyz'])_0x77170e['Pt']['Z']=_0x19f131['Z'];_0x211716=this['DupOutPt'](_0x77170e,!_0x1778ad);}}else {while(_0x77170e['Next']['Pt']['X']>=_0x19f131['X']&&_0x77170e['Next']['Pt']['X']<=_0x77170e['Pt']['X']&&_0x77170e['Next']['Pt']['Y']===_0x19f131['Y'])_0x77170e=_0x77170e['Next'];if(!_0x1778ad&&_0x77170e['Pt']['X']!==_0x19f131['X'])_0x77170e=_0x77170e['Next'];_0x211716=this['DupOutPt'](_0x77170e,_0x1778ad);if(_0x1de203['IntPoint']['op_Inequality'](_0x211716['Pt'],_0x19f131)){_0x77170e=_0x211716,_0x77170e['Pt']['X']=_0x19f131['X'],_0x77170e['Pt']['Y']=_0x19f131['Y'];if(_0x1de203['use_xyz'])_0x77170e['Pt']['Z']=_0x19f131['Z'];_0x211716=this['DupOutPt'](_0x77170e,_0x1778ad);}}if(_0x3facef===_0x1de203['Direction']['dLeftToRight']){while(_0x2ab397['Next']['Pt']['X']<=_0x19f131['X']&&_0x2ab397['Next']['Pt']['X']>=_0x2ab397['Pt']['X']&&_0x2ab397['Next']['Pt']['Y']===_0x19f131['Y'])_0x2ab397=_0x2ab397['Next'];if(_0x1778ad&&_0x2ab397['Pt']['X']!==_0x19f131['X'])_0x2ab397=_0x2ab397['Next'];_0x2f0fc2=this['DupOutPt'](_0x2ab397,!_0x1778ad);if(_0x1de203['IntPoint']['op_Inequality'](_0x2f0fc2['Pt'],_0x19f131)){_0x2ab397=_0x2f0fc2,_0x2ab397['Pt']['X']=_0x19f131['X'],_0x2ab397['Pt']['Y']=_0x19f131['Y'];if(_0x1de203['use_xyz'])_0x2ab397['Pt']['Z']=_0x19f131['Z'];_0x2f0fc2=this['DupOutPt'](_0x2ab397,!_0x1778ad);}}else {while(_0x2ab397['Next']['Pt']['X']>=_0x19f131['X']&&_0x2ab397['Next']['Pt']['X']<=_0x2ab397['Pt']['X']&&_0x2ab397['Next']['Pt']['Y']===_0x19f131['Y'])_0x2ab397=_0x2ab397['Next'];if(!_0x1778ad&&_0x2ab397['Pt']['X']!==_0x19f131['X'])_0x2ab397=_0x2ab397['Next'];_0x2f0fc2=this['DupOutPt'](_0x2ab397,_0x1778ad);if(_0x1de203['IntPoint']['op_Inequality'](_0x2f0fc2['Pt'],_0x19f131)){_0x2ab397=_0x2f0fc2,_0x2ab397['Pt']['X']=_0x19f131['X'],_0x2ab397['Pt']['Y']=_0x19f131['Y'];if(_0x1de203['use_xyz'])_0x2ab397['Pt']['Z']=_0x19f131['Z'];_0x2f0fc2=this['DupOutPt'](_0x2ab397,_0x1778ad);}}return _0x40ec3d===_0x1de203['Direction']['dLeftToRight']===_0x1778ad?(_0x77170e['Prev']=_0x2ab397,_0x2ab397['Next']=_0x77170e,_0x211716['Next']=_0x2f0fc2,_0x2f0fc2['Prev']=_0x211716):(_0x77170e['Next']=_0x2ab397,_0x2ab397['Prev']=_0x77170e,_0x211716['Prev']=_0x2f0fc2,_0x2f0fc2['Next']=_0x211716),!![];},_0x1de203['Clipper']['prototype']['JoinPoints']=function(_0x5e75e7,_0x5bba4b,_0x4bcda7){var _0x56d884=_0x5e75e7['OutPt1'],_0x30ef33=new _0x1de203['OutPt'](),_0x5d065d=_0x5e75e7['OutPt2'],_0x36eb92=new _0x1de203['OutPt'](),_0x323bad=_0x5e75e7['OutPt1']['Pt']['Y']===_0x5e75e7['OffPt']['Y'];if(_0x323bad&&_0x1de203['IntPoint']['op_Equality'](_0x5e75e7['OffPt'],_0x5e75e7['OutPt1']['Pt'])&&_0x1de203['IntPoint']['op_Equality'](_0x5e75e7['OffPt'],_0x5e75e7['OutPt2']['Pt'])){if(_0x5bba4b!==_0x4bcda7)return ![];_0x30ef33=_0x5e75e7['OutPt1']['Next'];while(_0x30ef33!==_0x56d884&&_0x1de203['IntPoint']['op_Equality'](_0x30ef33['Pt'],_0x5e75e7['OffPt']))_0x30ef33=_0x30ef33['Next'];var _0x5605f3=_0x30ef33['Pt']['Y']>_0x5e75e7['OffPt']['Y'];_0x36eb92=_0x5e75e7['OutPt2']['Next'];while(_0x36eb92!==_0x5d065d&&_0x1de203['IntPoint']['op_Equality'](_0x36eb92['Pt'],_0x5e75e7['OffPt']))_0x36eb92=_0x36eb92['Next'];var _0x234da1=_0x36eb92['Pt']['Y']>_0x5e75e7['OffPt']['Y'];if(_0x5605f3===_0x234da1)return ![];return _0x5605f3?(_0x30ef33=this['DupOutPt'](_0x56d884,![]),_0x36eb92=this['DupOutPt'](_0x5d065d,!![]),_0x56d884['Prev']=_0x5d065d,_0x5d065d['Next']=_0x56d884,_0x30ef33['Next']=_0x36eb92,_0x36eb92['Prev']=_0x30ef33,_0x5e75e7['OutPt1']=_0x56d884,_0x5e75e7['OutPt2']=_0x30ef33,!![]):(_0x30ef33=this['DupOutPt'](_0x56d884,!![]),_0x36eb92=this['DupOutPt'](_0x5d065d,![]),_0x56d884['Next']=_0x5d065d,_0x5d065d['Prev']=_0x56d884,_0x30ef33['Prev']=_0x36eb92,_0x36eb92['Next']=_0x30ef33,_0x5e75e7['OutPt1']=_0x56d884,_0x5e75e7['OutPt2']=_0x30ef33,!![]);}else {if(_0x323bad){_0x30ef33=_0x56d884;while(_0x56d884['Prev']['Pt']['Y']===_0x56d884['Pt']['Y']&&_0x56d884['Prev']!==_0x30ef33&&_0x56d884['Prev']!==_0x5d065d)_0x56d884=_0x56d884['Prev'];while(_0x30ef33['Next']['Pt']['Y']===_0x30ef33['Pt']['Y']&&_0x30ef33['Next']!==_0x56d884&&_0x30ef33['Next']!==_0x5d065d)_0x30ef33=_0x30ef33['Next'];if(_0x30ef33['Next']===_0x56d884||_0x30ef33['Next']===_0x5d065d)return ![];_0x36eb92=_0x5d065d;while(_0x5d065d['Prev']['Pt']['Y']===_0x5d065d['Pt']['Y']&&_0x5d065d['Prev']!==_0x36eb92&&_0x5d065d['Prev']!==_0x30ef33)_0x5d065d=_0x5d065d['Prev'];while(_0x36eb92['Next']['Pt']['Y']===_0x36eb92['Pt']['Y']&&_0x36eb92['Next']!==_0x5d065d&&_0x36eb92['Next']!==_0x56d884)_0x36eb92=_0x36eb92['Next'];if(_0x36eb92['Next']===_0x5d065d||_0x36eb92['Next']===_0x56d884)return ![];var _0x267164={'Left':null,'Right':null};if(!this['GetOverlap'](_0x56d884['Pt']['X'],_0x30ef33['Pt']['X'],_0x5d065d['Pt']['X'],_0x36eb92['Pt']['X'],_0x267164))return ![];var _0x1ccc6e=_0x267164['Left'],_0x293366=_0x267164['Right'],_0x459db1=new _0x1de203['IntPoint0'](),_0x1ddd67;if(_0x56d884['Pt']['X']>=_0x1ccc6e&&_0x56d884['Pt']['X']<=_0x293366){_0x459db1['X']=_0x56d884['Pt']['X'],_0x459db1['Y']=_0x56d884['Pt']['Y'];if(_0x1de203['use_xyz'])_0x459db1['Z']=_0x56d884['Pt']['Z'];_0x1ddd67=_0x56d884['Pt']['X']>_0x30ef33['Pt']['X'];}else {if(_0x5d065d['Pt']['X']>=_0x1ccc6e&&_0x5d065d['Pt']['X']<=_0x293366){_0x459db1['X']=_0x5d065d['Pt']['X'],_0x459db1['Y']=_0x5d065d['Pt']['Y'];if(_0x1de203['use_xyz'])_0x459db1['Z']=_0x5d065d['Pt']['Z'];_0x1ddd67=_0x5d065d['Pt']['X']>_0x36eb92['Pt']['X'];}else {if(_0x30ef33['Pt']['X']>=_0x1ccc6e&&_0x30ef33['Pt']['X']<=_0x293366){_0x459db1['X']=_0x30ef33['Pt']['X'],_0x459db1['Y']=_0x30ef33['Pt']['Y'];if(_0x1de203['use_xyz'])_0x459db1['Z']=_0x30ef33['Pt']['Z'];_0x1ddd67=_0x30ef33['Pt']['X']>_0x56d884['Pt']['X'];}else {_0x459db1['X']=_0x36eb92['Pt']['X'],_0x459db1['Y']=_0x36eb92['Pt']['Y'];if(_0x1de203['use_xyz'])_0x459db1['Z']=_0x36eb92['Pt']['Z'];_0x1ddd67=_0x36eb92['Pt']['X']>_0x5d065d['Pt']['X'];}}}return _0x5e75e7['OutPt1']=_0x56d884,_0x5e75e7['OutPt2']=_0x5d065d,this['JoinHorz'](_0x56d884,_0x30ef33,_0x5d065d,_0x36eb92,_0x459db1,_0x1ddd67);}else {_0x30ef33=_0x56d884['Next'];while(_0x1de203['IntPoint']['op_Equality'](_0x30ef33['Pt'],_0x56d884['Pt'])&&_0x30ef33!==_0x56d884)_0x30ef33=_0x30ef33['Next'];var _0x3e10ce=_0x30ef33['Pt']['Y']>_0x56d884['Pt']['Y']||!_0x1de203['ClipperBase']['SlopesEqual4'](_0x56d884['Pt'],_0x30ef33['Pt'],_0x5e75e7['OffPt'],this['m_UseFullRange']);if(_0x3e10ce){_0x30ef33=_0x56d884['Prev'];while(_0x1de203['IntPoint']['op_Equality'](_0x30ef33['Pt'],_0x56d884['Pt'])&&_0x30ef33!==_0x56d884)_0x30ef33=_0x30ef33['Prev'];if(_0x30ef33['Pt']['Y']>_0x56d884['Pt']['Y']||!_0x1de203['ClipperBase']['SlopesEqual4'](_0x56d884['Pt'],_0x30ef33['Pt'],_0x5e75e7['OffPt'],this['m_UseFullRange']))return ![];}_0x36eb92=_0x5d065d['Next'];while(_0x1de203['IntPoint']['op_Equality'](_0x36eb92['Pt'],_0x5d065d['Pt'])&&_0x36eb92!==_0x5d065d)_0x36eb92=_0x36eb92['Next'];var _0x5b03c5=_0x36eb92['Pt']['Y']>_0x5d065d['Pt']['Y']||!_0x1de203['ClipperBase']['SlopesEqual4'](_0x5d065d['Pt'],_0x36eb92['Pt'],_0x5e75e7['OffPt'],this['m_UseFullRange']);if(_0x5b03c5){_0x36eb92=_0x5d065d['Prev'];while(_0x1de203['IntPoint']['op_Equality'](_0x36eb92['Pt'],_0x5d065d['Pt'])&&_0x36eb92!==_0x5d065d)_0x36eb92=_0x36eb92['Prev'];if(_0x36eb92['Pt']['Y']>_0x5d065d['Pt']['Y']||!_0x1de203['ClipperBase']['SlopesEqual4'](_0x5d065d['Pt'],_0x36eb92['Pt'],_0x5e75e7['OffPt'],this['m_UseFullRange']))return ![];}if(_0x30ef33===_0x56d884||_0x36eb92===_0x5d065d||_0x30ef33===_0x36eb92||_0x5bba4b===_0x4bcda7&&_0x3e10ce===_0x5b03c5)return ![];return _0x3e10ce?(_0x30ef33=this['DupOutPt'](_0x56d884,![]),_0x36eb92=this['DupOutPt'](_0x5d065d,!![]),_0x56d884['Prev']=_0x5d065d,_0x5d065d['Next']=_0x56d884,_0x30ef33['Next']=_0x36eb92,_0x36eb92['Prev']=_0x30ef33,_0x5e75e7['OutPt1']=_0x56d884,_0x5e75e7['OutPt2']=_0x30ef33,!![]):(_0x30ef33=this['DupOutPt'](_0x56d884,!![]),_0x36eb92=this['DupOutPt'](_0x5d065d,![]),_0x56d884['Next']=_0x5d065d,_0x5d065d['Prev']=_0x56d884,_0x30ef33['Prev']=_0x36eb92,_0x36eb92['Next']=_0x30ef33,_0x5e75e7['OutPt1']=_0x56d884,_0x5e75e7['OutPt2']=_0x30ef33,!![]);}}},_0x1de203['Clipper']['GetBounds']=function(_0x78ef40){var _0x370464=0x0,_0x5671bf=_0x78ef40['length'];while(_0x370464<_0x5671bf&&_0x78ef40[_0x370464]['length']===0x0)_0x370464++;if(_0x370464===_0x5671bf)return new _0x1de203['IntRect'](0x0,0x0,0x0,0x0);var _0x17c14c=new _0x1de203['IntRect']();_0x17c14c['left']=_0x78ef40[_0x370464][0x0]['X'],_0x17c14c['right']=_0x17c14c['left'],_0x17c14c['top']=_0x78ef40[_0x370464][0x0]['Y'],_0x17c14c['bottom']=_0x17c14c['top'];for(;_0x370464<_0x5671bf;_0x370464++)for(var _0x2a7406=0x0,_0x32816a=_0x78ef40[_0x370464]['length'];_0x2a7406<_0x32816a;_0x2a7406++){if(_0x78ef40[_0x370464][_0x2a7406]['X']<_0x17c14c['left'])_0x17c14c['left']=_0x78ef40[_0x370464][_0x2a7406]['X'];else {if(_0x78ef40[_0x370464][_0x2a7406]['X']>_0x17c14c['right'])_0x17c14c['right']=_0x78ef40[_0x370464][_0x2a7406]['X'];}if(_0x78ef40[_0x370464][_0x2a7406]['Y']<_0x17c14c['top'])_0x17c14c['top']=_0x78ef40[_0x370464][_0x2a7406]['Y'];else {if(_0x78ef40[_0x370464][_0x2a7406]['Y']>_0x17c14c['bottom'])_0x17c14c['bottom']=_0x78ef40[_0x370464][_0x2a7406]['Y'];}}return _0x17c14c;},_0x1de203['Clipper']['prototype']['GetBounds2']=function(_0x42ac90){var _0x25fe0d=_0x42ac90,_0x2a7ff7=new _0x1de203['IntRect']();_0x2a7ff7['left']=_0x42ac90['Pt']['X'],_0x2a7ff7['right']=_0x42ac90['Pt']['X'],_0x2a7ff7['top']=_0x42ac90['Pt']['Y'],_0x2a7ff7['bottom']=_0x42ac90['Pt']['Y'],_0x42ac90=_0x42ac90['Next'];while(_0x42ac90!==_0x25fe0d){if(_0x42ac90['Pt']['X']<_0x2a7ff7['left'])_0x2a7ff7['left']=_0x42ac90['Pt']['X'];if(_0x42ac90['Pt']['X']>_0x2a7ff7['right'])_0x2a7ff7['right']=_0x42ac90['Pt']['X'];if(_0x42ac90['Pt']['Y']<_0x2a7ff7['top'])_0x2a7ff7['top']=_0x42ac90['Pt']['Y'];if(_0x42ac90['Pt']['Y']>_0x2a7ff7['bottom'])_0x2a7ff7['bottom']=_0x42ac90['Pt']['Y'];_0x42ac90=_0x42ac90['Next'];}return _0x2a7ff7;},_0x1de203['Clipper']['PointInPolygon']=function(_0x365de3,_0x109975){var _0x49efbd=0x0,_0x4443d1=_0x109975['length'];if(_0x4443d1<0x3)return 0x0;var _0x1111c4=_0x109975[0x0];for(var _0x278033=0x1;_0x278033<=_0x4443d1;++_0x278033){var _0x4d64d9=_0x278033===_0x4443d1?_0x109975[0x0]:_0x109975[_0x278033];if(_0x4d64d9['Y']===_0x365de3['Y']){if(_0x4d64d9['X']===_0x365de3['X']||_0x1111c4['Y']===_0x365de3['Y']&&_0x4d64d9['X']>_0x365de3['X']===_0x1111c4['X']<_0x365de3['X'])return -0x1;}if(_0x1111c4['Y']<_0x365de3['Y']!==_0x4d64d9['Y']<_0x365de3['Y']){if(_0x1111c4['X']>=_0x365de3['X']){if(_0x4d64d9['X']>_0x365de3['X'])_0x49efbd=0x1-_0x49efbd;else {var _0x2bdbe9=(_0x1111c4['X']-_0x365de3['X'])*(_0x4d64d9['Y']-_0x365de3['Y'])-(_0x4d64d9['X']-_0x365de3['X'])*(_0x1111c4['Y']-_0x365de3['Y']);if(_0x2bdbe9===0x0)return -0x1;else {if(_0x2bdbe9>0x0===_0x4d64d9['Y']>_0x1111c4['Y'])_0x49efbd=0x1-_0x49efbd;}}}else {if(_0x4d64d9['X']>_0x365de3['X']){var _0x2bdbe9=(_0x1111c4['X']-_0x365de3['X'])*(_0x4d64d9['Y']-_0x365de3['Y'])-(_0x4d64d9['X']-_0x365de3['X'])*(_0x1111c4['Y']-_0x365de3['Y']);if(_0x2bdbe9===0x0)return -0x1;else {if(_0x2bdbe9>0x0===_0x4d64d9['Y']>_0x1111c4['Y'])_0x49efbd=0x1-_0x49efbd;}}}}_0x1111c4=_0x4d64d9;}return _0x49efbd;},_0x1de203['Clipper']['prototype']['PointInPolygon']=function(_0x77301f,_0x1253f2){var _0x1db665=0x0,_0x4e63dd=_0x1253f2,_0x4da363=_0x77301f['X'],_0x22fb3=_0x77301f['Y'],_0x3edd95=_0x1253f2['Pt']['X'],_0x187956=_0x1253f2['Pt']['Y'];do{_0x1253f2=_0x1253f2['Next'];var _0x4f33e3=_0x1253f2['Pt']['X'],_0x43a0d5=_0x1253f2['Pt']['Y'];if(_0x43a0d5===_0x22fb3){if(_0x4f33e3===_0x4da363||_0x187956===_0x22fb3&&_0x4f33e3>_0x4da363===_0x3edd95<_0x4da363)return -0x1;}if(_0x187956<_0x22fb3!==_0x43a0d5<_0x22fb3){if(_0x3edd95>=_0x4da363){if(_0x4f33e3>_0x4da363)_0x1db665=0x1-_0x1db665;else {var _0x94291a=(_0x3edd95-_0x4da363)*(_0x43a0d5-_0x22fb3)-(_0x4f33e3-_0x4da363)*(_0x187956-_0x22fb3);if(_0x94291a===0x0)return -0x1;if(_0x94291a>0x0===_0x43a0d5>_0x187956)_0x1db665=0x1-_0x1db665;}}else {if(_0x4f33e3>_0x4da363){var _0x94291a=(_0x3edd95-_0x4da363)*(_0x43a0d5-_0x22fb3)-(_0x4f33e3-_0x4da363)*(_0x187956-_0x22fb3);if(_0x94291a===0x0)return -0x1;if(_0x94291a>0x0===_0x43a0d5>_0x187956)_0x1db665=0x1-_0x1db665;}}}_0x3edd95=_0x4f33e3,_0x187956=_0x43a0d5;}while(_0x4e63dd!==_0x1253f2);return _0x1db665;},_0x1de203['Clipper']['prototype']['Poly2ContainsPoly1']=function(_0x246e46,_0x300514){var _0x4e6ed1=_0x246e46;do{var _0x3579bb=this['PointInPolygon'](_0x4e6ed1['Pt'],_0x300514);if(_0x3579bb>=0x0)return _0x3579bb>0x0;_0x4e6ed1=_0x4e6ed1['Next'];}while(_0x4e6ed1!==_0x246e46);return !![];},_0x1de203['Clipper']['prototype']['FixupFirstLefts1']=function(_0x44a191,_0x5e60dd){var _0x5cf5cc,_0x44de1f;for(var _0x1f8774=0x0,_0x4ca676=this['m_PolyOuts']['length'];_0x1f8774<_0x4ca676;_0x1f8774++){_0x5cf5cc=this['m_PolyOuts'][_0x1f8774],_0x44de1f=_0x1de203['Clipper']['ParseFirstLeft'](_0x5cf5cc['FirstLeft']);if(_0x5cf5cc['Pts']!==null&&_0x44de1f===_0x44a191){if(this['Poly2ContainsPoly1'](_0x5cf5cc['Pts'],_0x5e60dd['Pts']))_0x5cf5cc['FirstLeft']=_0x5e60dd;}}},_0x1de203['Clipper']['prototype']['FixupFirstLefts2']=function(_0x2a72d3,_0xbb5d00){var _0x287eb6=_0xbb5d00['FirstLeft'],_0x8c7373,_0x5a2304;for(var _0x5f55ac=0x0,_0x39cfb2=this['m_PolyOuts']['length'];_0x5f55ac<_0x39cfb2;_0x5f55ac++){_0x8c7373=this['m_PolyOuts'][_0x5f55ac];if(_0x8c7373['Pts']===null||_0x8c7373===_0xbb5d00||_0x8c7373===_0x2a72d3)continue;_0x5a2304=_0x1de203['Clipper']['ParseFirstLeft'](_0x8c7373['FirstLeft']);if(_0x5a2304!==_0x287eb6&&_0x5a2304!==_0x2a72d3&&_0x5a2304!==_0xbb5d00)continue;if(this['Poly2ContainsPoly1'](_0x8c7373['Pts'],_0x2a72d3['Pts']))_0x8c7373['FirstLeft']=_0x2a72d3;else {if(this['Poly2ContainsPoly1'](_0x8c7373['Pts'],_0xbb5d00['Pts']))_0x8c7373['FirstLeft']=_0xbb5d00;else {if(_0x8c7373['FirstLeft']===_0x2a72d3||_0x8c7373['FirstLeft']===_0xbb5d00)_0x8c7373['FirstLeft']=_0x287eb6;}}}},_0x1de203['Clipper']['prototype']['FixupFirstLefts3']=function(_0x3d7dfd,_0x327039){var _0xe75e29,_0x326ee9;for(var _0x360045=0x0,_0x29e867=this['m_PolyOuts']['length'];_0x360045<_0x29e867;_0x360045++){_0xe75e29=this['m_PolyOuts'][_0x360045],_0x326ee9=_0x1de203['Clipper']['ParseFirstLeft'](_0xe75e29['FirstLeft']);if(_0xe75e29['Pts']!==null&&_0x326ee9===_0x3d7dfd)_0xe75e29['FirstLeft']=_0x327039;}},_0x1de203['Clipper']['ParseFirstLeft']=function(_0x15d6a3){while(_0x15d6a3!==null&&_0x15d6a3['Pts']===null)_0x15d6a3=_0x15d6a3['FirstLeft'];return _0x15d6a3;},_0x1de203['Clipper']['prototype']['JoinCommonEdges']=function(){for(var _0x49bbc6=0x0,_0x31129f=this['m_Joins']['length'];_0x49bbc6<_0x31129f;_0x49bbc6++){var _0x5072df=this['m_Joins'][_0x49bbc6],_0x30a027=this['GetOutRec'](_0x5072df['OutPt1']['Idx']),_0x46fc27=this['GetOutRec'](_0x5072df['OutPt2']['Idx']);if(_0x30a027['Pts']===null||_0x46fc27['Pts']===null)continue;if(_0x30a027['IsOpen']||_0x46fc27['IsOpen'])continue;var _0x315999;if(_0x30a027===_0x46fc27)_0x315999=_0x30a027;else {if(this['OutRec1RightOfOutRec2'](_0x30a027,_0x46fc27))_0x315999=_0x46fc27;else {if(this['OutRec1RightOfOutRec2'](_0x46fc27,_0x30a027))_0x315999=_0x30a027;else _0x315999=this['GetLowermostRec'](_0x30a027,_0x46fc27);}}if(!this['JoinPoints'](_0x5072df,_0x30a027,_0x46fc27))continue;if(_0x30a027===_0x46fc27){_0x30a027['Pts']=_0x5072df['OutPt1'],_0x30a027['BottomPt']=null,_0x46fc27=this['CreateOutRec'](),_0x46fc27['Pts']=_0x5072df['OutPt2'],this['UpdateOutPtIdxs'](_0x46fc27);if(this['Poly2ContainsPoly1'](_0x46fc27['Pts'],_0x30a027['Pts'])){_0x46fc27['IsHole']=!_0x30a027['IsHole'],_0x46fc27['FirstLeft']=_0x30a027;if(this['m_UsingPolyTree'])this['FixupFirstLefts2'](_0x46fc27,_0x30a027);if((_0x46fc27['IsHole']^this['ReverseSolution'])==this['Area$1'](_0x46fc27)>0x0)this['ReversePolyPtLinks'](_0x46fc27['Pts']);}else {if(this['Poly2ContainsPoly1'](_0x30a027['Pts'],_0x46fc27['Pts'])){_0x46fc27['IsHole']=_0x30a027['IsHole'],_0x30a027['IsHole']=!_0x46fc27['IsHole'],_0x46fc27['FirstLeft']=_0x30a027['FirstLeft'],_0x30a027['FirstLeft']=_0x46fc27;if(this['m_UsingPolyTree'])this['FixupFirstLefts2'](_0x30a027,_0x46fc27);if((_0x30a027['IsHole']^this['ReverseSolution'])==this['Area$1'](_0x30a027)>0x0)this['ReversePolyPtLinks'](_0x30a027['Pts']);}else {_0x46fc27['IsHole']=_0x30a027['IsHole'],_0x46fc27['FirstLeft']=_0x30a027['FirstLeft'];if(this['m_UsingPolyTree'])this['FixupFirstLefts1'](_0x30a027,_0x46fc27);}}}else {_0x46fc27['Pts']=null,_0x46fc27['BottomPt']=null,_0x46fc27['Idx']=_0x30a027['Idx'],_0x30a027['IsHole']=_0x315999['IsHole'];if(_0x315999===_0x46fc27)_0x30a027['FirstLeft']=_0x46fc27['FirstLeft'];_0x46fc27['FirstLeft']=_0x30a027;if(this['m_UsingPolyTree'])this['FixupFirstLefts3'](_0x46fc27,_0x30a027);}}},_0x1de203['Clipper']['prototype']['UpdateOutPtIdxs']=function(_0x359c0d){var _0x183529=_0x359c0d['Pts'];do{_0x183529['Idx']=_0x359c0d['Idx'],_0x183529=_0x183529['Prev'];}while(_0x183529!==_0x359c0d['Pts']);},_0x1de203['Clipper']['prototype']['DoSimplePolygons']=function(){var _0x1f81df=0x0;while(_0x1f81df<this['m_PolyOuts']['length']){var _0x5be2e2=this['m_PolyOuts'][_0x1f81df++],_0x41d17e=_0x5be2e2['Pts'];if(_0x41d17e===null||_0x5be2e2['IsOpen'])continue;do{var _0x1c6ec2=_0x41d17e['Next'];while(_0x1c6ec2!==_0x5be2e2['Pts']){if(_0x1de203['IntPoint']['op_Equality'](_0x41d17e['Pt'],_0x1c6ec2['Pt'])&&_0x1c6ec2['Next']!==_0x41d17e&&_0x1c6ec2['Prev']!==_0x41d17e){var _0x4a624e=_0x41d17e['Prev'],_0xd1eb9d=_0x1c6ec2['Prev'];_0x41d17e['Prev']=_0xd1eb9d,_0xd1eb9d['Next']=_0x41d17e,_0x1c6ec2['Prev']=_0x4a624e,_0x4a624e['Next']=_0x1c6ec2,_0x5be2e2['Pts']=_0x41d17e;var _0x35bb8b=this['CreateOutRec']();_0x35bb8b['Pts']=_0x1c6ec2,this['UpdateOutPtIdxs'](_0x35bb8b);if(this['Poly2ContainsPoly1'](_0x35bb8b['Pts'],_0x5be2e2['Pts'])){_0x35bb8b['IsHole']=!_0x5be2e2['IsHole'],_0x35bb8b['FirstLeft']=_0x5be2e2;if(this['m_UsingPolyTree'])this['FixupFirstLefts2'](_0x35bb8b,_0x5be2e2);}else {if(this['Poly2ContainsPoly1'](_0x5be2e2['Pts'],_0x35bb8b['Pts'])){_0x35bb8b['IsHole']=_0x5be2e2['IsHole'],_0x5be2e2['IsHole']=!_0x35bb8b['IsHole'],_0x35bb8b['FirstLeft']=_0x5be2e2['FirstLeft'],_0x5be2e2['FirstLeft']=_0x35bb8b;if(this['m_UsingPolyTree'])this['FixupFirstLefts2'](_0x5be2e2,_0x35bb8b);}else {_0x35bb8b['IsHole']=_0x5be2e2['IsHole'],_0x35bb8b['FirstLeft']=_0x5be2e2['FirstLeft'];if(this['m_UsingPolyTree'])this['FixupFirstLefts1'](_0x5be2e2,_0x35bb8b);}}_0x1c6ec2=_0x41d17e;}_0x1c6ec2=_0x1c6ec2['Next'];}_0x41d17e=_0x41d17e['Next'];}while(_0x41d17e!==_0x5be2e2['Pts']);}},_0x1de203['Clipper']['Area']=function(_0x503c5a){if(!Array['isArray'](_0x503c5a))return 0x0;var _0x369132=_0x503c5a['length'];if(_0x369132<0x3)return 0x0;var _0x3b9112=0x0;for(var _0x44754e=0x0,_0x357d89=_0x369132-0x1;_0x44754e<_0x369132;++_0x44754e){_0x3b9112+=(_0x503c5a[_0x357d89]['X']+_0x503c5a[_0x44754e]['X'])*(_0x503c5a[_0x357d89]['Y']-_0x503c5a[_0x44754e]['Y']),_0x357d89=_0x44754e;}return -_0x3b9112*0.5;},_0x1de203['Clipper']['prototype']['Area']=function(_0x117793){var _0x2cd318=_0x117793;if(_0x117793===null)return 0x0;var _0x12e15b=0x0;do{_0x12e15b=_0x12e15b+(_0x117793['Prev']['Pt']['X']+_0x117793['Pt']['X'])*(_0x117793['Prev']['Pt']['Y']-_0x117793['Pt']['Y']),_0x117793=_0x117793['Next'];}while(_0x117793!==_0x2cd318);return _0x12e15b*0.5;},_0x1de203['Clipper']['prototype']['Area$1']=function(_0x51956b){return this['Area'](_0x51956b['Pts']);},_0x1de203['Clipper']['SimplifyPolygon']=function(_0x4642a6,_0x3eea69){var _0x5bc29e=new Array(),_0x37ac08=new _0x1de203['Clipper'](0x0);return _0x37ac08['StrictlySimple']=!![],_0x37ac08['AddPath'](_0x4642a6,_0x1de203['PolyType']['ptSubject'],!![]),_0x37ac08['Execute'](_0x1de203['ClipType']['ctUnion'],_0x5bc29e,_0x3eea69,_0x3eea69),_0x5bc29e;},_0x1de203['Clipper']['SimplifyPolygons']=function(_0xf4f84c,_0x4abecd){if(typeof _0x4abecd==='undefined')_0x4abecd=_0x1de203['PolyFillType']['pftEvenOdd'];var _0xdb591=new Array(),_0x29b8a1=new _0x1de203['Clipper'](0x0);return _0x29b8a1['StrictlySimple']=!![],_0x29b8a1['AddPaths'](_0xf4f84c,_0x1de203['PolyType']['ptSubject'],!![]),_0x29b8a1['Execute'](_0x1de203['ClipType']['ctUnion'],_0xdb591,_0x4abecd,_0x4abecd),_0xdb591;},_0x1de203['Clipper']['DistanceSqrd']=function(_0x2ec217,_0x2a7c08){var _0x214876=_0x2ec217['X']-_0x2a7c08['X'],_0x372cb6=_0x2ec217['Y']-_0x2a7c08['Y'];return _0x214876*_0x214876+_0x372cb6*_0x372cb6;},_0x1de203['Clipper']['DistanceFromLineSqrd']=function(_0x28101b,_0x3b8f10,_0x4fb52d){var _0x1840aa=_0x3b8f10['Y']-_0x4fb52d['Y'],_0x553918=_0x4fb52d['X']-_0x3b8f10['X'],_0x519423=_0x1840aa*_0x3b8f10['X']+_0x553918*_0x3b8f10['Y'];return _0x519423=_0x1840aa*_0x28101b['X']+_0x553918*_0x28101b['Y']-_0x519423,_0x519423*_0x519423/(_0x1840aa*_0x1840aa+_0x553918*_0x553918);},_0x1de203['Clipper']['SlopesNearCollinear']=function(_0x8fd716,_0x2132b3,_0x2b0642,_0x3083d9){if(Math['abs'](_0x8fd716['X']-_0x2132b3['X'])>Math['abs'](_0x8fd716['Y']-_0x2132b3['Y'])){if(_0x8fd716['X']>_0x2132b3['X']===_0x8fd716['X']<_0x2b0642['X'])return _0x1de203['Clipper']['DistanceFromLineSqrd'](_0x8fd716,_0x2132b3,_0x2b0642)<_0x3083d9;else {if(_0x2132b3['X']>_0x8fd716['X']===_0x2132b3['X']<_0x2b0642['X'])return _0x1de203['Clipper']['DistanceFromLineSqrd'](_0x2132b3,_0x8fd716,_0x2b0642)<_0x3083d9;else return _0x1de203['Clipper']['DistanceFromLineSqrd'](_0x2b0642,_0x8fd716,_0x2132b3)<_0x3083d9;}}else {if(_0x8fd716['Y']>_0x2132b3['Y']===_0x8fd716['Y']<_0x2b0642['Y'])return _0x1de203['Clipper']['DistanceFromLineSqrd'](_0x8fd716,_0x2132b3,_0x2b0642)<_0x3083d9;else {if(_0x2132b3['Y']>_0x8fd716['Y']===_0x2132b3['Y']<_0x2b0642['Y'])return _0x1de203['Clipper']['DistanceFromLineSqrd'](_0x2132b3,_0x8fd716,_0x2b0642)<_0x3083d9;else return _0x1de203['Clipper']['DistanceFromLineSqrd'](_0x2b0642,_0x8fd716,_0x2132b3)<_0x3083d9;}}},_0x1de203['Clipper']['PointsAreClose']=function(_0x550675,_0x369d0a,_0x1fdf38){var _0x497f2e=_0x550675['X']-_0x369d0a['X'],_0x2c39fd=_0x550675['Y']-_0x369d0a['Y'];return _0x497f2e*_0x497f2e+_0x2c39fd*_0x2c39fd<=_0x1fdf38;},_0x1de203['Clipper']['ExcludeOp']=function(_0x562f86){var _0x396589=_0x562f86['Prev'];return _0x396589['Next']=_0x562f86['Next'],_0x562f86['Next']['Prev']=_0x396589,_0x396589['Idx']=0x0,_0x396589;},_0x1de203['Clipper']['CleanPolygon']=function(_0x487e16,_0x500351){if(typeof _0x500351==='undefined')_0x500351=1.415;var _0x57c567=_0x487e16['length'];if(_0x57c567===0x0)return new Array();var _0x2b0b4d=new Array(_0x57c567);for(var _0x9b1cef=0x0;_0x9b1cef<_0x57c567;++_0x9b1cef)_0x2b0b4d[_0x9b1cef]=new _0x1de203['OutPt']();for(var _0x9b1cef=0x0;_0x9b1cef<_0x57c567;++_0x9b1cef){_0x2b0b4d[_0x9b1cef]['Pt']=_0x487e16[_0x9b1cef],_0x2b0b4d[_0x9b1cef]['Next']=_0x2b0b4d[(_0x9b1cef+0x1)%_0x57c567],_0x2b0b4d[_0x9b1cef]['Next']['Prev']=_0x2b0b4d[_0x9b1cef],_0x2b0b4d[_0x9b1cef]['Idx']=0x0;}var _0x3dfe27=_0x500351*_0x500351,_0x4a1319=_0x2b0b4d[0x0];while(_0x4a1319['Idx']===0x0&&_0x4a1319['Next']!==_0x4a1319['Prev']){if(_0x1de203['Clipper']['PointsAreClose'](_0x4a1319['Pt'],_0x4a1319['Prev']['Pt'],_0x3dfe27))_0x4a1319=_0x1de203['Clipper']['ExcludeOp'](_0x4a1319),_0x57c567--;else {if(_0x1de203['Clipper']['PointsAreClose'](_0x4a1319['Prev']['Pt'],_0x4a1319['Next']['Pt'],_0x3dfe27))_0x1de203['Clipper']['ExcludeOp'](_0x4a1319['Next']),_0x4a1319=_0x1de203['Clipper']['ExcludeOp'](_0x4a1319),_0x57c567-=0x2;else _0x1de203['Clipper']['SlopesNearCollinear'](_0x4a1319['Prev']['Pt'],_0x4a1319['Pt'],_0x4a1319['Next']['Pt'],_0x3dfe27)?(_0x4a1319=_0x1de203['Clipper']['ExcludeOp'](_0x4a1319),_0x57c567--):(_0x4a1319['Idx']=0x1,_0x4a1319=_0x4a1319['Next']);}}if(_0x57c567<0x3)_0x57c567=0x0;var _0x53cac0=new Array(_0x57c567);for(var _0x9b1cef=0x0;_0x9b1cef<_0x57c567;++_0x9b1cef){_0x53cac0[_0x9b1cef]=new _0x1de203['IntPoint1'](_0x4a1319['Pt']),_0x4a1319=_0x4a1319['Next'];}return _0x2b0b4d=null,_0x53cac0;},_0x1de203['Clipper']['CleanPolygons']=function(_0x10615e,_0x3adefb){var _0x102dcd=new Array(_0x10615e['length']);for(var _0x1dc4bc=0x0,_0x16eef8=_0x10615e['length'];_0x1dc4bc<_0x16eef8;_0x1dc4bc++)_0x102dcd[_0x1dc4bc]=_0x1de203['Clipper']['CleanPolygon'](_0x10615e[_0x1dc4bc],_0x3adefb);return _0x102dcd;},_0x1de203['Clipper']['Minkowski']=function(_0x7747b7,_0x3e7aff,_0x4c8bbe,_0x5c9949){var _0x2a4b92=_0x5c9949?0x1:0x0,_0x5009d5=_0x7747b7['length'],_0x35add5=_0x3e7aff['length'],_0x356192=new Array();if(_0x4c8bbe)for(var _0x2064e7=0x0;_0x2064e7<_0x35add5;_0x2064e7++){var _0x5b1fb6=new Array(_0x5009d5);for(var _0x2286a1=0x0,_0x4786ca=_0x7747b7['length'],_0x16bcef=_0x7747b7[_0x2286a1];_0x2286a1<_0x4786ca;_0x2286a1++,_0x16bcef=_0x7747b7[_0x2286a1])_0x5b1fb6[_0x2286a1]=new _0x1de203['IntPoint2'](_0x3e7aff[_0x2064e7]['X']+_0x16bcef['X'],_0x3e7aff[_0x2064e7]['Y']+_0x16bcef['Y']);_0x356192['push'](_0x5b1fb6);}else for(var _0x2064e7=0x0;_0x2064e7<_0x35add5;_0x2064e7++){var _0x5b1fb6=new Array(_0x5009d5);for(var _0x2286a1=0x0,_0x4786ca=_0x7747b7['length'],_0x16bcef=_0x7747b7[_0x2286a1];_0x2286a1<_0x4786ca;_0x2286a1++,_0x16bcef=_0x7747b7[_0x2286a1])_0x5b1fb6[_0x2286a1]=new _0x1de203['IntPoint2'](_0x3e7aff[_0x2064e7]['X']-_0x16bcef['X'],_0x3e7aff[_0x2064e7]['Y']-_0x16bcef['Y']);_0x356192['push'](_0x5b1fb6);}var _0xd2294e=new Array();for(var _0x2064e7=0x0;_0x2064e7<_0x35add5-0x1+_0x2a4b92;_0x2064e7++)for(var _0x2286a1=0x0;_0x2286a1<_0x5009d5;_0x2286a1++){var _0x1d5e2e=new Array();_0x1d5e2e['push'](_0x356192[_0x2064e7%_0x35add5][_0x2286a1%_0x5009d5]),_0x1d5e2e['push'](_0x356192[(_0x2064e7+0x1)%_0x35add5][_0x2286a1%_0x5009d5]),_0x1d5e2e['push'](_0x356192[(_0x2064e7+0x1)%_0x35add5][(_0x2286a1+0x1)%_0x5009d5]),_0x1d5e2e['push'](_0x356192[_0x2064e7%_0x35add5][(_0x2286a1+0x1)%_0x5009d5]);if(!_0x1de203['Clipper']['Orientation'](_0x1d5e2e))_0x1d5e2e['reverse']();_0xd2294e['push'](_0x1d5e2e);}return _0xd2294e;},_0x1de203['Clipper']['MinkowskiSum']=function(_0x3514be,_0x17fa51,_0x1ae83a){if(!(_0x17fa51[0x0]instanceof Array)){var _0x2f79bd=_0x17fa51,_0x59fd5a=_0x1de203['Clipper']['Minkowski'](_0x3514be,_0x2f79bd,!![],_0x1ae83a),_0x18f903=new _0x1de203['Clipper']();return _0x18f903['AddPaths'](_0x59fd5a,_0x1de203['PolyType']['ptSubject'],!![]),_0x18f903['Execute'](_0x1de203['ClipType']['ctUnion'],_0x59fd5a,_0x1de203['PolyFillType']['pftNonZero'],_0x1de203['PolyFillType']['pftNonZero']),_0x59fd5a;}else {var _0x59fd5a=_0x17fa51,_0xb11314=new _0x1de203['Paths'](),_0x18f903=new _0x1de203['Clipper']();for(var _0x520b2f=0x0;_0x520b2f<_0x59fd5a['length'];++_0x520b2f){var _0x111a64=_0x1de203['Clipper']['Minkowski'](_0x3514be,_0x59fd5a[_0x520b2f],!![],_0x1ae83a);_0x18f903['AddPaths'](_0x111a64,_0x1de203['PolyType']['ptSubject'],!![]);if(_0x1ae83a){var _0x2f79bd=_0x1de203['Clipper']['TranslatePath'](_0x59fd5a[_0x520b2f],_0x3514be[0x0]);_0x18f903['AddPath'](_0x2f79bd,_0x1de203['PolyType']['ptClip'],!![]);}}return _0x18f903['Execute'](_0x1de203['ClipType']['ctUnion'],_0xb11314,_0x1de203['PolyFillType']['pftNonZero'],_0x1de203['PolyFillType']['pftNonZero']),_0xb11314;}},_0x1de203['Clipper']['TranslatePath']=function(_0x4b5cf4,_0x2fe91b){var _0x4e95bf=new _0x1de203['Path']();for(var _0x30ce24=0x0;_0x30ce24<_0x4b5cf4['length'];_0x30ce24++)_0x4e95bf['push'](new _0x1de203['IntPoint2'](_0x4b5cf4[_0x30ce24]['X']+_0x2fe91b['X'],_0x4b5cf4[_0x30ce24]['Y']+_0x2fe91b['Y']));return _0x4e95bf;},_0x1de203['Clipper']['MinkowskiDiff']=function(_0x456ab5,_0x132a84){var _0x1d3806=_0x1de203['Clipper']['Minkowski'](_0x456ab5,_0x132a84,![],!![]),_0x5fb4c1=new _0x1de203['Clipper']();return _0x5fb4c1['AddPaths'](_0x1d3806,_0x1de203['PolyType']['ptSubject'],!![]),_0x5fb4c1['Execute'](_0x1de203['ClipType']['ctUnion'],_0x1d3806,_0x1de203['PolyFillType']['pftNonZero'],_0x1de203['PolyFillType']['pftNonZero']),_0x1d3806;},_0x1de203['Clipper']['PolyTreeToPaths']=function(_0x1b6ca2){var _0x433bab=new Array();return _0x1de203['Clipper']['AddPolyNodeToPaths'](_0x1b6ca2,_0x1de203['Clipper']['NodeType']['ntAny'],_0x433bab),_0x433bab;},_0x1de203['Clipper']['AddPolyNodeToPaths']=function(_0x2f7846,_0x5cd7d2,_0x27cf4b){var _0x165901=!![];switch(_0x5cd7d2){case _0x1de203['Clipper']['NodeType']['ntOpen']:return;case _0x1de203['Clipper']['NodeType']['ntClosed']:_0x165901=!_0x2f7846['IsOpen'];break;}if(_0x2f7846['m_polygon']['length']>0x0&&_0x165901)_0x27cf4b['push'](_0x2f7846['m_polygon']);for(var _0x5685fc=0x0,_0x35f27b=_0x2f7846['Childs'](),_0xb61e1=_0x35f27b['length'],_0x43d2d8=_0x35f27b[_0x5685fc];_0x5685fc<_0xb61e1;_0x5685fc++,_0x43d2d8=_0x35f27b[_0x5685fc])_0x1de203['Clipper']['AddPolyNodeToPaths'](_0x43d2d8,_0x5cd7d2,_0x27cf4b);},_0x1de203['Clipper']['OpenPathsFromPolyTree']=function(_0x4bd5fa){var _0x1e7687=new _0x1de203['Paths']();for(var _0x473fef=0x0,_0x5e60c2=_0x4bd5fa['ChildCount']();_0x473fef<_0x5e60c2;_0x473fef++)if(_0x4bd5fa['Childs']()[_0x473fef]['IsOpen'])_0x1e7687['push'](_0x4bd5fa['Childs']()[_0x473fef]['m_polygon']);return _0x1e7687;},_0x1de203['Clipper']['ClosedPathsFromPolyTree']=function(_0x53ef84){var _0x460a0e=new _0x1de203['Paths']();return _0x1de203['Clipper']['AddPolyNodeToPaths'](_0x53ef84,_0x1de203['Clipper']['NodeType']['ntClosed'],_0x460a0e),_0x460a0e;},_0x5384e4(_0x1de203['Clipper'],_0x1de203['ClipperBase']),_0x1de203['Clipper']['NodeType']={'ntAny':0x0,'ntOpen':0x1,'ntClosed':0x2},_0x1de203['ClipperOffset']=function(_0x3c4544,_0x4e45fe){if(typeof _0x3c4544==='undefined')_0x3c4544=0x2;if(typeof _0x4e45fe==='undefined')_0x4e45fe=_0x1de203['ClipperOffset']['def_arc_tolerance'];this['m_destPolys']=new _0x1de203['Paths'](),this['m_srcPoly']=new _0x1de203['Path'](),this['m_destPoly']=new _0x1de203['Path'](),this['m_normals']=new Array(),this['m_delta']=0x0,this['m_sinA']=0x0,this['m_sin']=0x0,this['m_cos']=0x0,this['m_miterLim']=0x0,this['m_StepsPerRad']=0x0,this['m_lowest']=new _0x1de203['IntPoint0'](),this['m_polyNodes']=new _0x1de203['PolyNode'](),this['MiterLimit']=_0x3c4544,this['ArcTolerance']=_0x4e45fe,this['m_lowest']['X']=-0x1;},_0x1de203['ClipperOffset']['two_pi']=6.28318530717959,_0x1de203['ClipperOffset']['def_arc_tolerance']=0.25,_0x1de203['ClipperOffset']['prototype']['Clear']=function(){_0x1de203['Clear'](this['m_polyNodes']['Childs']()),this['m_lowest']['X']=-0x1;},_0x1de203['ClipperOffset']['Round']=_0x1de203['Clipper']['Round'],_0x1de203['ClipperOffset']['prototype']['AddPath']=function(_0x1136be,_0x7fb89f,_0x16618d){var _0x42905e=_0x1136be['length']-0x1;if(_0x42905e<0x0)return;var _0x9b9b6c=new _0x1de203['PolyNode']();_0x9b9b6c['m_jointype']=_0x7fb89f,_0x9b9b6c['m_endtype']=_0x16618d;if(_0x16618d===_0x1de203['EndType']['etClosedLine']||_0x16618d===_0x1de203['EndType']['etClosedPolygon']){while(_0x42905e>0x0&&_0x1de203['IntPoint']['op_Equality'](_0x1136be[0x0],_0x1136be[_0x42905e]))_0x42905e--;}_0x9b9b6c['m_polygon']['push'](_0x1136be[0x0]);var _0x5003d5=0x0,_0x134162=0x0;for(var _0x3d7a2b=0x1;_0x3d7a2b<=_0x42905e;_0x3d7a2b++)if(_0x1de203['IntPoint']['op_Inequality'](_0x9b9b6c['m_polygon'][_0x5003d5],_0x1136be[_0x3d7a2b])){_0x5003d5++,_0x9b9b6c['m_polygon']['push'](_0x1136be[_0x3d7a2b]);if(_0x1136be[_0x3d7a2b]['Y']>_0x9b9b6c['m_polygon'][_0x134162]['Y']||_0x1136be[_0x3d7a2b]['Y']===_0x9b9b6c['m_polygon'][_0x134162]['Y']&&_0x1136be[_0x3d7a2b]['X']<_0x9b9b6c['m_polygon'][_0x134162]['X'])_0x134162=_0x5003d5;}if(_0x16618d===_0x1de203['EndType']['etClosedPolygon']&&_0x5003d5<0x2)return;this['m_polyNodes']['AddChild'](_0x9b9b6c);if(_0x16618d!==_0x1de203['EndType']['etClosedPolygon'])return;if(this['m_lowest']['X']<0x0)this['m_lowest']=new _0x1de203['IntPoint2'](this['m_polyNodes']['ChildCount']()-0x1,_0x134162);else {var _0x3f6035=this['m_polyNodes']['Childs']()[this['m_lowest']['X']]['m_polygon'][this['m_lowest']['Y']];if(_0x9b9b6c['m_polygon'][_0x134162]['Y']>_0x3f6035['Y']||_0x9b9b6c['m_polygon'][_0x134162]['Y']===_0x3f6035['Y']&&_0x9b9b6c['m_polygon'][_0x134162]['X']<_0x3f6035['X'])this['m_lowest']=new _0x1de203['IntPoint2'](this['m_polyNodes']['ChildCount']()-0x1,_0x134162);}},_0x1de203['ClipperOffset']['prototype']['AddPaths']=function(_0x54e88e,_0x5a1bc9,_0x47f945){for(var _0x402603=0x0,_0x4dacdf=_0x54e88e['length'];_0x402603<_0x4dacdf;_0x402603++)this['AddPath'](_0x54e88e[_0x402603],_0x5a1bc9,_0x47f945);},_0x1de203['ClipperOffset']['prototype']['FixOrientations']=function(){if(this['m_lowest']['X']>=0x0&&!_0x1de203['Clipper']['Orientation'](this['m_polyNodes']['Childs']()[this['m_lowest']['X']]['m_polygon']))for(var _0x1a9da8=0x0;_0x1a9da8<this['m_polyNodes']['ChildCount']();_0x1a9da8++){var _0x35d41=this['m_polyNodes']['Childs']()[_0x1a9da8];if(_0x35d41['m_endtype']===_0x1de203['EndType']['etClosedPolygon']||_0x35d41['m_endtype']===_0x1de203['EndType']['etClosedLine']&&_0x1de203['Clipper']['Orientation'](_0x35d41['m_polygon']))_0x35d41['m_polygon']['reverse']();}else for(var _0x1a9da8=0x0;_0x1a9da8<this['m_polyNodes']['ChildCount']();_0x1a9da8++){var _0x35d41=this['m_polyNodes']['Childs']()[_0x1a9da8];if(_0x35d41['m_endtype']===_0x1de203['EndType']['etClosedLine']&&!_0x1de203['Clipper']['Orientation'](_0x35d41['m_polygon']))_0x35d41['m_polygon']['reverse']();}},_0x1de203['ClipperOffset']['GetUnitNormal']=function(_0x2a4ac6,_0x5639dc){var _0x322a46=_0x5639dc['X']-_0x2a4ac6['X'],_0x209692=_0x5639dc['Y']-_0x2a4ac6['Y'];if(_0x322a46===0x0&&_0x209692===0x0)return new _0x1de203['DoublePoint2'](0x0,0x0);var _0x176861=0x1/Math['sqrt'](_0x322a46*_0x322a46+_0x209692*_0x209692);return _0x322a46*=_0x176861,_0x209692*=_0x176861,new _0x1de203['DoublePoint2'](_0x209692,-_0x322a46);},_0x1de203['ClipperOffset']['prototype']['DoOffset']=function(_0x462ebd){this['m_destPolys']=new Array(),this['m_delta']=_0x462ebd;if(_0x1de203['ClipperBase']['near_zero'](_0x462ebd)){for(var _0x47dc37=0x0;_0x47dc37<this['m_polyNodes']['ChildCount']();_0x47dc37++){var _0x31c564=this['m_polyNodes']['Childs']()[_0x47dc37];if(_0x31c564['m_endtype']===_0x1de203['EndType']['etClosedPolygon'])this['m_destPolys']['push'](_0x31c564['m_polygon']);}return;}if(this['MiterLimit']>0x2)this['m_miterLim']=0x2/(this['MiterLimit']*this['MiterLimit']);else this['m_miterLim']=0.5;var _0x505c5f;if(this['ArcTolerance']<=0x0)_0x505c5f=_0x1de203['ClipperOffset']['def_arc_tolerance'];else {if(this['ArcTolerance']>Math['abs'](_0x462ebd)*_0x1de203['ClipperOffset']['def_arc_tolerance'])_0x505c5f=Math['abs'](_0x462ebd)*_0x1de203['ClipperOffset']['def_arc_tolerance'];else _0x505c5f=this['ArcTolerance'];}var _0x5498a0=3.14159265358979/Math['acos'](0x1-_0x505c5f/Math['abs'](_0x462ebd));this['m_sin']=Math['sin'](_0x1de203['ClipperOffset']['two_pi']/_0x5498a0),this['m_cos']=Math['cos'](_0x1de203['ClipperOffset']['two_pi']/_0x5498a0),this['m_StepsPerRad']=_0x5498a0/_0x1de203['ClipperOffset']['two_pi'];if(_0x462ebd<0x0)this['m_sin']=-this['m_sin'];for(var _0x47dc37=0x0;_0x47dc37<this['m_polyNodes']['ChildCount']();_0x47dc37++){var _0x31c564=this['m_polyNodes']['Childs']()[_0x47dc37];this['m_srcPoly']=_0x31c564['m_polygon'];var _0xeb6002=this['m_srcPoly']['length'];if(_0xeb6002===0x0||_0x462ebd<=0x0&&(_0xeb6002<0x3||_0x31c564['m_endtype']!==_0x1de203['EndType']['etClosedPolygon']))continue;this['m_destPoly']=new Array();if(_0xeb6002===0x1){if(_0x31c564['m_jointype']===_0x1de203['JoinType']['jtRound']){var _0x203c60=0x1,_0x17b473=0x0;for(var _0x2d50eb=0x1;_0x2d50eb<=_0x5498a0;_0x2d50eb++){this['m_destPoly']['push'](new _0x1de203['IntPoint2'](_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][0x0]['X']+_0x203c60*_0x462ebd),_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][0x0]['Y']+_0x17b473*_0x462ebd)));var _0x2f96f3=_0x203c60;_0x203c60=_0x203c60*this['m_cos']-this['m_sin']*_0x17b473,_0x17b473=_0x2f96f3*this['m_sin']+_0x17b473*this['m_cos'];}}else {var _0x203c60=-0x1,_0x17b473=-0x1;for(var _0x2d50eb=0x0;_0x2d50eb<0x4;++_0x2d50eb){this['m_destPoly']['push'](new _0x1de203['IntPoint2'](_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][0x0]['X']+_0x203c60*_0x462ebd),_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][0x0]['Y']+_0x17b473*_0x462ebd)));if(_0x203c60<0x0)_0x203c60=0x1;else {if(_0x17b473<0x0)_0x17b473=0x1;else _0x203c60=-0x1;}}}this['m_destPolys']['push'](this['m_destPoly']);continue;}this['m_normals']['length']=0x0;for(var _0x2d50eb=0x0;_0x2d50eb<_0xeb6002-0x1;_0x2d50eb++)this['m_normals']['push'](_0x1de203['ClipperOffset']['GetUnitNormal'](this['m_srcPoly'][_0x2d50eb],this['m_srcPoly'][_0x2d50eb+0x1]));if(_0x31c564['m_endtype']===_0x1de203['EndType']['etClosedLine']||_0x31c564['m_endtype']===_0x1de203['EndType']['etClosedPolygon'])this['m_normals']['push'](_0x1de203['ClipperOffset']['GetUnitNormal'](this['m_srcPoly'][_0xeb6002-0x1],this['m_srcPoly'][0x0]));else this['m_normals']['push'](new _0x1de203['DoublePoint1'](this['m_normals'][_0xeb6002-0x2]));if(_0x31c564['m_endtype']===_0x1de203['EndType']['etClosedPolygon']){var _0x4b1fc3=_0xeb6002-0x1;for(var _0x2d50eb=0x0;_0x2d50eb<_0xeb6002;_0x2d50eb++)_0x4b1fc3=this['OffsetPoint'](_0x2d50eb,_0x4b1fc3,_0x31c564['m_jointype']);this['m_destPolys']['push'](this['m_destPoly']);}else {if(_0x31c564['m_endtype']===_0x1de203['EndType']['etClosedLine']){var _0x4b1fc3=_0xeb6002-0x1;for(var _0x2d50eb=0x0;_0x2d50eb<_0xeb6002;_0x2d50eb++)_0x4b1fc3=this['OffsetPoint'](_0x2d50eb,_0x4b1fc3,_0x31c564['m_jointype']);this['m_destPolys']['push'](this['m_destPoly']),this['m_destPoly']=new Array();var _0xf40163=this['m_normals'][_0xeb6002-0x1];for(var _0x2d50eb=_0xeb6002-0x1;_0x2d50eb>0x0;_0x2d50eb--)this['m_normals'][_0x2d50eb]=new _0x1de203['DoublePoint2'](-this['m_normals'][_0x2d50eb-0x1]['X'],-this['m_normals'][_0x2d50eb-0x1]['Y']);this['m_normals'][0x0]=new _0x1de203['DoublePoint2'](-_0xf40163['X'],-_0xf40163['Y']),_0x4b1fc3=0x0;for(var _0x2d50eb=_0xeb6002-0x1;_0x2d50eb>=0x0;_0x2d50eb--)_0x4b1fc3=this['OffsetPoint'](_0x2d50eb,_0x4b1fc3,_0x31c564['m_jointype']);this['m_destPolys']['push'](this['m_destPoly']);}else {var _0x4b1fc3=0x0;for(var _0x2d50eb=0x1;_0x2d50eb<_0xeb6002-0x1;++_0x2d50eb)_0x4b1fc3=this['OffsetPoint'](_0x2d50eb,_0x4b1fc3,_0x31c564['m_jointype']);var _0x129e6f;if(_0x31c564['m_endtype']===_0x1de203['EndType']['etOpenButt']){var _0x2d50eb=_0xeb6002-0x1;_0x129e6f=new _0x1de203['IntPoint2'](_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][_0x2d50eb]['X']+this['m_normals'][_0x2d50eb]['X']*_0x462ebd),_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][_0x2d50eb]['Y']+this['m_normals'][_0x2d50eb]['Y']*_0x462ebd)),this['m_destPoly']['push'](_0x129e6f),_0x129e6f=new _0x1de203['IntPoint2'](_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][_0x2d50eb]['X']-this['m_normals'][_0x2d50eb]['X']*_0x462ebd),_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][_0x2d50eb]['Y']-this['m_normals'][_0x2d50eb]['Y']*_0x462ebd)),this['m_destPoly']['push'](_0x129e6f);}else {var _0x2d50eb=_0xeb6002-0x1;_0x4b1fc3=_0xeb6002-0x2,this['m_sinA']=0x0,this['m_normals'][_0x2d50eb]=new _0x1de203['DoublePoint2'](-this['m_normals'][_0x2d50eb]['X'],-this['m_normals'][_0x2d50eb]['Y']);if(_0x31c564['m_endtype']===_0x1de203['EndType']['etOpenSquare'])this['DoSquare'](_0x2d50eb,_0x4b1fc3);else this['DoRound'](_0x2d50eb,_0x4b1fc3);}for(var _0x2d50eb=_0xeb6002-0x1;_0x2d50eb>0x0;_0x2d50eb--)this['m_normals'][_0x2d50eb]=new _0x1de203['DoublePoint2'](-this['m_normals'][_0x2d50eb-0x1]['X'],-this['m_normals'][_0x2d50eb-0x1]['Y']);this['m_normals'][0x0]=new _0x1de203['DoublePoint2'](-this['m_normals'][0x1]['X'],-this['m_normals'][0x1]['Y']),_0x4b1fc3=_0xeb6002-0x1;for(var _0x2d50eb=_0x4b1fc3-0x1;_0x2d50eb>0x0;--_0x2d50eb)_0x4b1fc3=this['OffsetPoint'](_0x2d50eb,_0x4b1fc3,_0x31c564['m_jointype']);if(_0x31c564['m_endtype']===_0x1de203['EndType']['etOpenButt'])_0x129e6f=new _0x1de203['IntPoint2'](_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][0x0]['X']-this['m_normals'][0x0]['X']*_0x462ebd),_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][0x0]['Y']-this['m_normals'][0x0]['Y']*_0x462ebd)),this['m_destPoly']['push'](_0x129e6f),_0x129e6f=new _0x1de203['IntPoint2'](_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][0x0]['X']+this['m_normals'][0x0]['X']*_0x462ebd),_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][0x0]['Y']+this['m_normals'][0x0]['Y']*_0x462ebd)),this['m_destPoly']['push'](_0x129e6f);else {_0x4b1fc3=0x1,this['m_sinA']=0x0;if(_0x31c564['m_endtype']===_0x1de203['EndType']['etOpenSquare'])this['DoSquare'](0x0,0x1);else this['DoRound'](0x0,0x1);}this['m_destPolys']['push'](this['m_destPoly']);}}}},_0x1de203['ClipperOffset']['prototype']['Execute']=function(){var _0x398e61=arguments,_0x55bf8e=_0x398e61[0x0]instanceof _0x1de203['PolyTree'];if(!_0x55bf8e){var _0x1e91c7=_0x398e61[0x0],_0x5d34e9=_0x398e61[0x1];_0x1de203['Clear'](_0x1e91c7),this['FixOrientations'](),this['DoOffset'](_0x5d34e9);var _0x198568=new _0x1de203['Clipper'](0x0);_0x198568['AddPaths'](this['m_destPolys'],_0x1de203['PolyType']['ptSubject'],!![]);if(_0x5d34e9>0x0)_0x198568['Execute'](_0x1de203['ClipType']['ctUnion'],_0x1e91c7,_0x1de203['PolyFillType']['pftPositive'],_0x1de203['PolyFillType']['pftPositive']);else {var _0x23f8b4=_0x1de203['Clipper']['GetBounds'](this['m_destPolys']),_0x35f815=new _0x1de203['Path']();_0x35f815['push'](new _0x1de203['IntPoint2'](_0x23f8b4['left']-0xa,_0x23f8b4['bottom']+0xa)),_0x35f815['push'](new _0x1de203['IntPoint2'](_0x23f8b4['right']+0xa,_0x23f8b4['bottom']+0xa)),_0x35f815['push'](new _0x1de203['IntPoint2'](_0x23f8b4['right']+0xa,_0x23f8b4['top']-0xa)),_0x35f815['push'](new _0x1de203['IntPoint2'](_0x23f8b4['left']-0xa,_0x23f8b4['top']-0xa)),_0x198568['AddPath'](_0x35f815,_0x1de203['PolyType']['ptSubject'],!![]),_0x198568['ReverseSolution']=!![],_0x198568['Execute'](_0x1de203['ClipType']['ctUnion'],_0x1e91c7,_0x1de203['PolyFillType']['pftNegative'],_0x1de203['PolyFillType']['pftNegative']);if(_0x1e91c7['length']>0x0)_0x1e91c7['splice'](0x0,0x1);}}else {var _0x1e91c7=_0x398e61[0x0],_0x5d34e9=_0x398e61[0x1];_0x1e91c7['Clear'](),this['FixOrientations'](),this['DoOffset'](_0x5d34e9);var _0x198568=new _0x1de203['Clipper'](0x0);_0x198568['AddPaths'](this['m_destPolys'],_0x1de203['PolyType']['ptSubject'],!![]);if(_0x5d34e9>0x0)_0x198568['Execute'](_0x1de203['ClipType']['ctUnion'],_0x1e91c7,_0x1de203['PolyFillType']['pftPositive'],_0x1de203['PolyFillType']['pftPositive']);else {var _0x23f8b4=_0x1de203['Clipper']['GetBounds'](this['m_destPolys']),_0x35f815=new _0x1de203['Path']();_0x35f815['push'](new _0x1de203['IntPoint2'](_0x23f8b4['left']-0xa,_0x23f8b4['bottom']+0xa)),_0x35f815['push'](new _0x1de203['IntPoint2'](_0x23f8b4['right']+0xa,_0x23f8b4['bottom']+0xa)),_0x35f815['push'](new _0x1de203['IntPoint2'](_0x23f8b4['right']+0xa,_0x23f8b4['top']-0xa)),_0x35f815['push'](new _0x1de203['IntPoint2'](_0x23f8b4['left']-0xa,_0x23f8b4['top']-0xa)),_0x198568['AddPath'](_0x35f815,_0x1de203['PolyType']['ptSubject'],!![]),_0x198568['ReverseSolution']=!![],_0x198568['Execute'](_0x1de203['ClipType']['ctUnion'],_0x1e91c7,_0x1de203['PolyFillType']['pftNegative'],_0x1de203['PolyFillType']['pftNegative']);if(_0x1e91c7['ChildCount']()===0x1&&_0x1e91c7['Childs']()[0x0]['ChildCount']()>0x0){var _0x663f84=_0x1e91c7['Childs']()[0x0];_0x1e91c7['Childs']()[0x0]=_0x663f84['Childs']()[0x0],_0x1e91c7['Childs']()[0x0]['m_Parent']=_0x1e91c7;for(var _0x20dd4a=0x1;_0x20dd4a<_0x663f84['ChildCount']();_0x20dd4a++)_0x1e91c7['AddChild'](_0x663f84['Childs']()[_0x20dd4a]);}else _0x1e91c7['Clear']();}}},_0x1de203['ClipperOffset']['prototype']['OffsetPoint']=function(_0x17c6e3,_0x1e83f4,_0x562709){this['m_sinA']=this['m_normals'][_0x1e83f4]['X']*this['m_normals'][_0x17c6e3]['Y']-this['m_normals'][_0x17c6e3]['X']*this['m_normals'][_0x1e83f4]['Y'];if(Math['abs'](this['m_sinA']*this['m_delta'])<0x1){var _0x36ea89=this['m_normals'][_0x1e83f4]['X']*this['m_normals'][_0x17c6e3]['X']+this['m_normals'][_0x17c6e3]['Y']*this['m_normals'][_0x1e83f4]['Y'];if(_0x36ea89>0x0)return this['m_destPoly']['push'](new _0x1de203['IntPoint2'](_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][_0x17c6e3]['X']+this['m_normals'][_0x1e83f4]['X']*this['m_delta']),_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][_0x17c6e3]['Y']+this['m_normals'][_0x1e83f4]['Y']*this['m_delta']))),_0x1e83f4;}else {if(this['m_sinA']>0x1)this['m_sinA']=0x1;else {if(this['m_sinA']<-0x1)this['m_sinA']=-0x1;}}if(this['m_sinA']*this['m_delta']<0x0)this['m_destPoly']['push'](new _0x1de203['IntPoint2'](_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][_0x17c6e3]['X']+this['m_normals'][_0x1e83f4]['X']*this['m_delta']),_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][_0x17c6e3]['Y']+this['m_normals'][_0x1e83f4]['Y']*this['m_delta']))),this['m_destPoly']['push'](new _0x1de203['IntPoint1'](this['m_srcPoly'][_0x17c6e3])),this['m_destPoly']['push'](new _0x1de203['IntPoint2'](_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][_0x17c6e3]['X']+this['m_normals'][_0x17c6e3]['X']*this['m_delta']),_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][_0x17c6e3]['Y']+this['m_normals'][_0x17c6e3]['Y']*this['m_delta'])));else switch(_0x562709){case _0x1de203['JoinType']['jtMiter']:{var _0x36abeb=0x1+(this['m_normals'][_0x17c6e3]['X']*this['m_normals'][_0x1e83f4]['X']+this['m_normals'][_0x17c6e3]['Y']*this['m_normals'][_0x1e83f4]['Y']);if(_0x36abeb>=this['m_miterLim'])this['DoMiter'](_0x17c6e3,_0x1e83f4,_0x36abeb);else this['DoSquare'](_0x17c6e3,_0x1e83f4);break;}case _0x1de203['JoinType']['jtSquare']:this['DoSquare'](_0x17c6e3,_0x1e83f4);break;case _0x1de203['JoinType']['jtRound']:this['DoRound'](_0x17c6e3,_0x1e83f4);break;}return _0x1e83f4=_0x17c6e3,_0x1e83f4;},_0x1de203['ClipperOffset']['prototype']['DoSquare']=function(_0xab3e7f,_0x499cc9){var _0x5529ee=Math['tan'](Math['atan2'](this['m_sinA'],this['m_normals'][_0x499cc9]['X']*this['m_normals'][_0xab3e7f]['X']+this['m_normals'][_0x499cc9]['Y']*this['m_normals'][_0xab3e7f]['Y'])/0x4);this['m_destPoly']['push'](new _0x1de203['IntPoint2'](_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][_0xab3e7f]['X']+this['m_delta']*(this['m_normals'][_0x499cc9]['X']-this['m_normals'][_0x499cc9]['Y']*_0x5529ee)),_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][_0xab3e7f]['Y']+this['m_delta']*(this['m_normals'][_0x499cc9]['Y']+this['m_normals'][_0x499cc9]['X']*_0x5529ee)))),this['m_destPoly']['push'](new _0x1de203['IntPoint2'](_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][_0xab3e7f]['X']+this['m_delta']*(this['m_normals'][_0xab3e7f]['X']+this['m_normals'][_0xab3e7f]['Y']*_0x5529ee)),_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][_0xab3e7f]['Y']+this['m_delta']*(this['m_normals'][_0xab3e7f]['Y']-this['m_normals'][_0xab3e7f]['X']*_0x5529ee))));},_0x1de203['ClipperOffset']['prototype']['DoMiter']=function(_0x29bae3,_0x262a0f,_0x57873a){var _0x4d7a6b=this['m_delta']/_0x57873a;this['m_destPoly']['push'](new _0x1de203['IntPoint2'](_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][_0x29bae3]['X']+(this['m_normals'][_0x262a0f]['X']+this['m_normals'][_0x29bae3]['X'])*_0x4d7a6b),_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][_0x29bae3]['Y']+(this['m_normals'][_0x262a0f]['Y']+this['m_normals'][_0x29bae3]['Y'])*_0x4d7a6b)));},_0x1de203['ClipperOffset']['prototype']['DoRound']=function(_0x12cea4,_0x4228ad){var _0x362616=Math['atan2'](this['m_sinA'],this['m_normals'][_0x4228ad]['X']*this['m_normals'][_0x12cea4]['X']+this['m_normals'][_0x4228ad]['Y']*this['m_normals'][_0x12cea4]['Y']),_0x46b2ee=Math['max'](_0x1de203['Cast_Int32'](_0x1de203['ClipperOffset']['Round'](this['m_StepsPerRad']*Math['abs'](_0x362616))),0x1),_0x5b3307=this['m_normals'][_0x4228ad]['X'],_0x33fec7=this['m_normals'][_0x4228ad]['Y'],_0x2a1962;for(var _0x2f7377=0x0;_0x2f7377<_0x46b2ee;++_0x2f7377){this['m_destPoly']['push'](new _0x1de203['IntPoint2'](_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][_0x12cea4]['X']+_0x5b3307*this['m_delta']),_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][_0x12cea4]['Y']+_0x33fec7*this['m_delta']))),_0x2a1962=_0x5b3307,_0x5b3307=_0x5b3307*this['m_cos']-this['m_sin']*_0x33fec7,_0x33fec7=_0x2a1962*this['m_sin']+_0x33fec7*this['m_cos'];}this['m_destPoly']['push'](new _0x1de203['IntPoint2'](_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][_0x12cea4]['X']+this['m_normals'][_0x12cea4]['X']*this['m_delta']),_0x1de203['ClipperOffset']['Round'](this['m_srcPoly'][_0x12cea4]['Y']+this['m_normals'][_0x12cea4]['Y']*this['m_delta'])));},_0x1de203['Error']=function(_0x176e8e){try{throw new Error(_0x176e8e);}catch(_0x1c6f9c){alert(_0x1c6f9c['message']);}},_0x1de203['JS']={},_0x1de203['JS']['AreaOfPolygon']=function(_0x28fef4,_0x3b747d){if(!_0x3b747d)_0x3b747d=0x1;return _0x1de203['Clipper']['Area'](_0x28fef4)/(_0x3b747d*_0x3b747d);},_0x1de203['JS']['AreaOfPolygons']=function(_0x367eda,_0x37bb61){if(!_0x37bb61)_0x37bb61=0x1;var _0x2ab09a=0x0;for(var _0x419e6d=0x0;_0x419e6d<_0x367eda['length'];_0x419e6d++){_0x2ab09a+=_0x1de203['Clipper']['Area'](_0x367eda[_0x419e6d]);}return _0x2ab09a/(_0x37bb61*_0x37bb61);},_0x1de203['JS']['BoundsOfPath']=function(_0x39978a,_0x4892b1){return _0x1de203['JS']['BoundsOfPaths']([_0x39978a],_0x4892b1);},_0x1de203['JS']['BoundsOfPaths']=function(_0xb5da49,_0x3f7b11){if(!_0x3f7b11)_0x3f7b11=0x1;var _0x4ca935=_0x1de203['Clipper']['GetBounds'](_0xb5da49);return _0x4ca935['left']/=_0x3f7b11,_0x4ca935['bottom']/=_0x3f7b11,_0x4ca935['right']/=_0x3f7b11,_0x4ca935['top']/=_0x3f7b11,_0x4ca935;},_0x1de203['JS']['Clean']=function(_0x24e4e6,_0xe27f80){if(!(_0x24e4e6 instanceof Array))return [];var _0x19d3d5=_0x24e4e6[0x0]instanceof Array,_0x24e4e6=_0x1de203['JS']['Clone'](_0x24e4e6);if(typeof _0xe27f80!=='number'||_0xe27f80===null)return _0x1de203['Error']('Delta\x20is\x20not\x20a\x20number\x20in\x20Clean().'),_0x24e4e6;if(_0x24e4e6['length']===0x0||_0x24e4e6['length']===0x1&&_0x24e4e6[0x0]['length']===0x0||_0xe27f80<0x0)return _0x24e4e6;if(!_0x19d3d5)_0x24e4e6=[_0x24e4e6];var _0x5c01d2=_0x24e4e6['length'],_0x35ad84,_0x317f23,_0x4dc9db,_0x576c15,_0x454c89,_0x179d66,_0x15c2b6,_0x36b6de=[];for(var _0x3b5723=0x0;_0x3b5723<_0x5c01d2;_0x3b5723++){_0x317f23=_0x24e4e6[_0x3b5723],_0x35ad84=_0x317f23['length'];if(_0x35ad84===0x0)continue;else {if(_0x35ad84<0x3){_0x4dc9db=_0x317f23,_0x36b6de['push'](_0x4dc9db);continue;}}_0x4dc9db=_0x317f23,_0x576c15=_0xe27f80*_0xe27f80,_0x454c89=_0x317f23[0x0],_0x179d66=0x1;for(_0x15c2b6=0x1;_0x15c2b6<_0x35ad84;_0x15c2b6++){if((_0x317f23[_0x15c2b6]['X']-_0x454c89['X'])*(_0x317f23[_0x15c2b6]['X']-_0x454c89['X'])+(_0x317f23[_0x15c2b6]['Y']-_0x454c89['Y'])*(_0x317f23[_0x15c2b6]['Y']-_0x454c89['Y'])<=_0x576c15)continue;_0x4dc9db[_0x179d66]=_0x317f23[_0x15c2b6],_0x454c89=_0x317f23[_0x15c2b6],_0x179d66++;}_0x454c89=_0x317f23[_0x179d66-0x1];if((_0x317f23[0x0]['X']-_0x454c89['X'])*(_0x317f23[0x0]['X']-_0x454c89['X'])+(_0x317f23[0x0]['Y']-_0x454c89['Y'])*(_0x317f23[0x0]['Y']-_0x454c89['Y'])<=_0x576c15)_0x179d66--;if(_0x179d66<_0x35ad84)_0x4dc9db['splice'](_0x179d66,_0x35ad84-_0x179d66);if(_0x4dc9db['length'])_0x36b6de['push'](_0x4dc9db);}if(!_0x19d3d5&&_0x36b6de['length'])_0x36b6de=_0x36b6de[0x0];else {if(!_0x19d3d5&&_0x36b6de['length']===0x0)_0x36b6de=[];else {if(_0x19d3d5&&_0x36b6de['length']===0x0)_0x36b6de=[[]];}}return _0x36b6de;},_0x1de203['JS']['Clone']=function(_0xaea234){if(!(_0xaea234 instanceof Array))return [];if(_0xaea234['length']===0x0)return [];else {if(_0xaea234['length']===0x1&&_0xaea234[0x0]['length']===0x0)return [[]];}var _0xb89de5=_0xaea234[0x0]instanceof Array;if(!_0xb89de5)_0xaea234=[_0xaea234];var _0x39c680=_0xaea234['length'],_0x2184a5,_0x250ca3,_0x3aa870,_0x25ddac,_0x4c0f1a=new Array(_0x39c680);for(_0x250ca3=0x0;_0x250ca3<_0x39c680;_0x250ca3++){_0x2184a5=_0xaea234[_0x250ca3]['length'],_0x25ddac=new Array(_0x2184a5);for(_0x3aa870=0x0;_0x3aa870<_0x2184a5;_0x3aa870++){_0x25ddac[_0x3aa870]={'X':_0xaea234[_0x250ca3][_0x3aa870]['X'],'Y':_0xaea234[_0x250ca3][_0x3aa870]['Y']};}_0x4c0f1a[_0x250ca3]=_0x25ddac;}if(!_0xb89de5)_0x4c0f1a=_0x4c0f1a[0x0];return _0x4c0f1a;},_0x1de203['JS']['Lighten']=function(_0x4605a0,_0x2c5b60){if(!(_0x4605a0 instanceof Array))return [];if(typeof _0x2c5b60!=='number'||_0x2c5b60===null)return _0x1de203['Error']('Tolerance\x20is\x20not\x20a\x20number\x20in\x20Lighten().'),_0x1de203['JS']['Clone'](_0x4605a0);if(_0x4605a0['length']===0x0||_0x4605a0['length']===0x1&&_0x4605a0[0x0]['length']===0x0||_0x2c5b60<0x0)return _0x1de203['JS']['Clone'](_0x4605a0);var _0x3a04a6=_0x4605a0[0x0]instanceof Array;if(!_0x3a04a6)_0x4605a0=[_0x4605a0];var _0x322cd0,_0x5b3982,_0xa78698,_0x68afe9,_0x56a1e9,_0x3b02e5,_0xef70d4,_0x2edec5,_0x260c52,_0x50684f,_0x5d0861,_0x56db7b,_0x45f67f,_0x5beefa,_0x38ba96,_0x1203f6,_0x5588a8,_0x4f4fdb=_0x4605a0['length'],_0x484e45=_0x2c5b60*_0x2c5b60,_0x189b50=[];for(_0x322cd0=0x0;_0x322cd0<_0x4f4fdb;_0x322cd0++){_0xa78698=_0x4605a0[_0x322cd0],_0x3b02e5=_0xa78698['length'];if(_0x3b02e5===0x0)continue;for(_0x68afe9=0x0;_0x68afe9<0xf4240;_0x68afe9++){_0x56a1e9=[],_0x3b02e5=_0xa78698['length'];if(_0xa78698[_0x3b02e5-0x1]['X']!==_0xa78698[0x0]['X']||_0xa78698[_0x3b02e5-0x1]['Y']!==_0xa78698[0x0]['Y'])_0x56db7b=0x1,_0xa78698['push']({'X':_0xa78698[0x0]['X'],'Y':_0xa78698[0x0]['Y']}),_0x3b02e5=_0xa78698['length'];else _0x56db7b=0x0;_0x5d0861=[];for(_0x5b3982=0x0;_0x5b3982<_0x3b02e5-0x2;_0x5b3982++){_0xef70d4=_0xa78698[_0x5b3982],_0x260c52=_0xa78698[_0x5b3982+0x1],_0x2edec5=_0xa78698[_0x5b3982+0x2],_0x1203f6=_0xef70d4['X'],_0x5588a8=_0xef70d4['Y'],_0x45f67f=_0x2edec5['X']-_0x1203f6,_0x5beefa=_0x2edec5['Y']-_0x5588a8;if(_0x45f67f!==0x0||_0x5beefa!==0x0){_0x38ba96=((_0x260c52['X']-_0x1203f6)*_0x45f67f+(_0x260c52['Y']-_0x5588a8)*_0x5beefa)/(_0x45f67f*_0x45f67f+_0x5beefa*_0x5beefa);if(_0x38ba96>0x1)_0x1203f6=_0x2edec5['X'],_0x5588a8=_0x2edec5['Y'];else _0x38ba96>0x0&&(_0x1203f6+=_0x45f67f*_0x38ba96,_0x5588a8+=_0x5beefa*_0x38ba96);}_0x45f67f=_0x260c52['X']-_0x1203f6,_0x5beefa=_0x260c52['Y']-_0x5588a8,_0x50684f=_0x45f67f*_0x45f67f+_0x5beefa*_0x5beefa,_0x50684f<=_0x484e45&&(_0x5d0861[_0x5b3982+0x1]=0x1,_0x5b3982++);}_0x56a1e9['push']({'X':_0xa78698[0x0]['X'],'Y':_0xa78698[0x0]['Y']});for(_0x5b3982=0x1;_0x5b3982<_0x3b02e5-0x1;_0x5b3982++)if(!_0x5d0861[_0x5b3982])_0x56a1e9['push']({'X':_0xa78698[_0x5b3982]['X'],'Y':_0xa78698[_0x5b3982]['Y']});_0x56a1e9['push']({'X':_0xa78698[_0x3b02e5-0x1]['X'],'Y':_0xa78698[_0x3b02e5-0x1]['Y']});if(_0x56db7b)_0xa78698['pop']();if(!_0x5d0861['length'])break;else _0xa78698=_0x56a1e9;}_0x3b02e5=_0x56a1e9['length'];_0x56a1e9[_0x3b02e5-0x1]['X']===_0x56a1e9[0x0]['X']&&_0x56a1e9[_0x3b02e5-0x1]['Y']===_0x56a1e9[0x0]['Y']&&_0x56a1e9['pop']();if(_0x56a1e9['length']>0x2)_0x189b50['push'](_0x56a1e9);}return !_0x3a04a6&&(_0x189b50=_0x189b50[0x0]),typeof _0x189b50==='undefined'&&(_0x189b50=[]),_0x189b50;},_0x1de203['JS']['PerimeterOfPath']=function(_0x3c7c33,_0x168e3d,_0x3381b4){if(typeof _0x3c7c33==='undefined')return 0x0;var _0x4fa8aa=Math['sqrt'],_0x2f6e6c=0x0,_0x25ed46,_0x20f674,_0x49e344=0x0,_0x35b8cd=0x0,_0x22eb54=0x0,_0x3b19a1=0x0,_0x50f693=_0x3c7c33['length'];if(_0x50f693<0x2)return 0x0;_0x168e3d&&(_0x3c7c33[_0x50f693]=_0x3c7c33[0x0],_0x50f693++);while(--_0x50f693){_0x25ed46=_0x3c7c33[_0x50f693],_0x49e344=_0x25ed46['X'],_0x35b8cd=_0x25ed46['Y'],_0x20f674=_0x3c7c33[_0x50f693-0x1],_0x22eb54=_0x20f674['X'],_0x3b19a1=_0x20f674['Y'],_0x2f6e6c+=_0x4fa8aa((_0x49e344-_0x22eb54)*(_0x49e344-_0x22eb54)+(_0x35b8cd-_0x3b19a1)*(_0x35b8cd-_0x3b19a1));}if(_0x168e3d)_0x3c7c33['pop']();return _0x2f6e6c/_0x3381b4;},_0x1de203['JS']['PerimeterOfPaths']=function(_0x2a490f,_0x27e01e,_0x1453fe){if(!_0x1453fe)_0x1453fe=0x1;var _0x5dbfaa=0x0;for(var _0x1c5ab9=0x0;_0x1c5ab9<_0x2a490f['length'];_0x1c5ab9++){_0x5dbfaa+=_0x1de203['JS']['PerimeterOfPath'](_0x2a490f[_0x1c5ab9],_0x27e01e,_0x1453fe);}return _0x5dbfaa;},_0x1de203['JS']['ScaleDownPath']=function(_0x26df83,_0x57947e){var _0x4ea2fe,_0x1ada9c;if(!_0x57947e)_0x57947e=0x1;_0x4ea2fe=_0x26df83['length'];while(_0x4ea2fe--){_0x1ada9c=_0x26df83[_0x4ea2fe],_0x1ada9c['X']=_0x1ada9c['X']/_0x57947e,_0x1ada9c['Y']=_0x1ada9c['Y']/_0x57947e;}},_0x1de203['JS']['ScaleDownPaths']=function(_0x5d3b16,_0x48a3e4){var _0x23cfd1,_0x254fa9,_0x4d87cb;if(!_0x48a3e4)_0x48a3e4=0x1;_0x23cfd1=_0x5d3b16['length'];while(_0x23cfd1--){_0x254fa9=_0x5d3b16[_0x23cfd1]['length'];while(_0x254fa9--){_0x4d87cb=_0x5d3b16[_0x23cfd1][_0x254fa9],_0x4d87cb['X']=_0x4d87cb['X']/_0x48a3e4,_0x4d87cb['Y']=_0x4d87cb['Y']/_0x48a3e4;}}},_0x1de203['JS']['ScaleUpPath']=function(_0x67d9d8,_0x36ca50){var _0x576d40,_0x2ef9ec,_0x15c7ec=Math['round'];if(!_0x36ca50)_0x36ca50=0x1;_0x576d40=_0x67d9d8['length'];while(_0x576d40--){_0x2ef9ec=_0x67d9d8[_0x576d40],_0x2ef9ec['X']=_0x15c7ec(_0x2ef9ec['X']*_0x36ca50),_0x2ef9ec['Y']=_0x15c7ec(_0x2ef9ec['Y']*_0x36ca50);}},_0x1de203['JS']['ScaleUpPaths']=function(_0x5e2213,_0x5a77a5){var _0x517cc6,_0x3a448d,_0x4fcabe,_0x103f64=Math['round'];if(!_0x5a77a5)_0x5a77a5=0x1;_0x517cc6=_0x5e2213['length'];while(_0x517cc6--){_0x3a448d=_0x5e2213[_0x517cc6]['length'];while(_0x3a448d--){_0x4fcabe=_0x5e2213[_0x517cc6][_0x3a448d],_0x4fcabe['X']=_0x103f64(_0x4fcabe['X']*_0x5a77a5),_0x4fcabe['Y']=_0x103f64(_0x4fcabe['Y']*_0x5a77a5);}}},_0x1de203['ExPolygons']=function(){return [];},_0x1de203['ExPolygon']=function(){this['outer']=null,this['holes']=null;},_0x1de203['JS']['AddOuterPolyNodeToExPolygons']=function(_0x5e743f,_0x1103ab){var _0x46107f=new _0x1de203['ExPolygon']();_0x46107f['outer']=_0x5e743f['Contour']();var _0x25643f=_0x5e743f['Childs'](),_0x3a1b8f=_0x25643f['length'];_0x46107f['holes']=new Array(_0x3a1b8f);var _0x23d54e,_0x7e4b2a,_0x73dc80,_0x5169ea,_0x10581e,_0x23964b;for(_0x73dc80=0x0;_0x73dc80<_0x3a1b8f;_0x73dc80++){_0x23d54e=_0x25643f[_0x73dc80],_0x46107f['holes'][_0x73dc80]=_0x23d54e['Contour']();for(_0x5169ea=0x0,_0x10581e=_0x23d54e['Childs'](),_0x23964b=_0x10581e['length'];_0x5169ea<_0x23964b;_0x5169ea++){_0x7e4b2a=_0x10581e[_0x5169ea],_0x1de203['JS']['AddOuterPolyNodeToExPolygons'](_0x7e4b2a,_0x1103ab);}}_0x1103ab['push'](_0x46107f);},_0x1de203['JS']['ExPolygonsToPaths']=function(_0x57290a){var _0x59f640,_0x26c597,_0x487dc5,_0x39f57f,_0x485dac=new _0x1de203['Paths']();for(_0x59f640=0x0,_0x487dc5=_0x57290a['length'];_0x59f640<_0x487dc5;_0x59f640++){_0x485dac['push'](_0x57290a[_0x59f640]['outer']);for(_0x26c597=0x0,_0x39f57f=_0x57290a[_0x59f640]['holes']['length'];_0x26c597<_0x39f57f;_0x26c597++){_0x485dac['push'](_0x57290a[_0x59f640]['holes'][_0x26c597]);}}return _0x485dac;},_0x1de203['JS']['PolyTreeToExPolygons']=function(_0x15d14){var _0x45edfe=new _0x1de203['ExPolygons'](),_0x228d2f,_0x4de91c,_0x12fe22,_0x5c605a;for(_0x4de91c=0x0,_0x12fe22=_0x15d14['Childs'](),_0x5c605a=_0x12fe22['length'];_0x4de91c<_0x5c605a;_0x4de91c++){_0x228d2f=_0x12fe22[_0x4de91c],_0x1de203['JS']['AddOuterPolyNodeToExPolygons'](_0x228d2f,_0x45edfe);}return _0x45edfe;};}());}(clipper));var clipperExports=clipper['exports'];getDefaultExportFromCjs(clipperExports);
|
|
129
|
+
|
|
130
|
+
const PathType={'Fill':'Fill','Stroke':'Stroke','Shading':'Shading'},TextRenderingMode={'Fill':0x0,'Stroke':0x1,'FillStroke':0x2,'Invisible':0x3,'FillAddToPath':0x4,'StrokeAddToPath':0x5,'FillStrokeAddToPath':0x6,'AddToPath':0x7,'FillStrokeMask':0x3,'AddToPathFlag':0x4},MIN_FONT_SIZE=0x10,MAX_FONT_SIZE=0x64,IDENTITY_MATRIX=[0x1,0x0,0x0,0x1,0x0,0x0],FONT_IDENTITY_MATRIX=[0.001,0x0,0x0,0.001,0x0,0x0],NORMAL_CLIP={},EO_CLIP={},tempColor=new THREE['Color'](),tempMatrix4=new THREE['Matrix4']();let zOrder=0x0;const zOrderStep=0.01;class PdfLoader extends THREE['Loader']{constructor(_0x55df8e){super(),this['contentVisible']=!![],this['markedContentStack']=[],this['stateStack']=[],this['current']=new CanvasExtraState(0x1,0x1),this['tempSMask']=null,this['pendingEOFill']=![],this['activeLayoutName']='Model',this['defaultLayerId']='0',this['currentLayerId']='0',this['layers']={'0':{'name':'0','id':'0','index':'0','visible':!![]}},this['loadedEntityCount']=0x0,this['viewportScale']=0x1,this['baseTransform']=new THREE['Matrix4'](),this['currentTransform']=new THREE['Matrix4'](),this['transformStack']=[],this['clipType']=clipperExports.PolyFillType['pftNonZero'],this['paths']=[],this['pointsMaterials']={},this['lineBasicMaterials']={},this['meshBasicMaterials']={},this['lineWithWidthCount']=0x0;if(pdfjsLib===undefined)throw '[PdfLoader]\x20need\x20load\x20pdf.js\x20first';pdfjsLib['version']!=='3.8.162'&&log['warn']('[PdfLoader]\x20The\x20pdf.js\x20version\x20we\x20are\x20using\x20now\x20is\x203.8.162,if\x20not\x20maybe\x20wrong.'),this['fontManager']=_0x55df8e['font'],pdfjsLib['GlobalWorkerOptions']['workerSrc']=_0x55df8e['pdfWorker'];}['load'](_0x139cd5,_0x4cf11b,_0x311e5b,_0x32fbbe){this['loadAsync'](_0x139cd5,_0x311e5b)['then'](_0x44e936=>{_0x4cf11b(_0x44e936);})['catch'](_0x703788=>{_0x32fbbe(_0x703788);});}async['loadAsync'](_0x121c19,_0x1f3752){var _0x7dc6f0,_0x17532b,_0x521292;const _0x1f86f6=CommonUtils['getUpdateProgressFunc'](_0x1f3752),_0x5dbd8b=CommonUtils['getUpdateSubProgressFunc'](0x0,0xa,_0x1f3752);_0x1f86f6(0x0);const {src:_0x22cc12}=_0x121c19;this['modelCfg']=_0x121c19;const _0x2d5e4b=_0x121c19['modelId']||_0x22cc12;let _0x4c1a78=Date['now']();const _0x4e1e82=pdfjsLib['getDocument'](_0x22cc12);_0x4e1e82['onProgress']=_0x5dbd8b;const _0x182963=await _0x4e1e82['promise'];return this['pdf']=_0x182963,log['info']('[PdfLoader]\x20Pdf\x20document\x20loaded\x20in\x20'+(Date['now']()-_0x4c1a78)/0x3e8+'s'),_0x4c1a78=Date['now'](),log['info'](_0x182963),this['pdfDocumentGroup']=new THREE['Group'](),this['pdfDocumentGroup']['name']='PdfDocument-'+_0x2d5e4b,this['optionalContentConfig']=await _0x182963['getOptionalContentConfig'](),await((_0x7dc6f0=this['fontManager'])===null||_0x7dc6f0===void 0x0?void 0x0:_0x7dc6f0['getFontFromIndexeddb']()),log['info']('[PdfLoader]\x20Font\x20loaded.'),_0x182963['numPages']>0x1&&log['info']('[PdfLoader]\x20Only\x20the\x20first\x20page\x20can\x20be\x20render\x20others\x20will\x20be\x20ignore.'),await this['loadPage'](0x1,_0x1f3752),((_0x17532b=this['fontManager'])===null||_0x17532b===void 0x0?void 0x0:_0x17532b['missingFonts'])&&log['warn']('[PdfLoader]\x20Missing\x20fonts\x20and\x20reference\x20count:',(_0x521292=this['fontManager'])===null||_0x521292===void 0x0?void 0x0:_0x521292['missingFonts'],',\x20used\x20other\x20fonts\x20instead.'),this['lineWithWidthCount']>0x0&&log['warn']('[PdfLoader]\x20Found\x20'+this['lineWithWidthCount']+'\x20line(s)\x20with\x20width,\x20line\x20width\x20is\x20not\x20supported\x20and\x20was\x20ignored.'),!this['progressiveLoadCallback']&&(_0x1f86f6(0x64),log['info']('[PdfLoader]\x20Loaded\x20\x27'+_0x121c19['src']+'\x27\x20in\x20'+(Date['now']()-_0x4c1a78)/0x3e8+'s,\x20adding\x20to\x20scene...')),{'modelId':_0x2d5e4b,'pdfData':{'threejsObject':this['pdfDocumentGroup'],'layers':this['layers']||[],'layersAndThreejsObjects':this['layersAndThreejsObjects'],'loadedEntityCount':this['loadedEntityCount']}};}async['loadPage'](_0x5581ae,_0x1558bc){var _0x19f330,_0x610614,_0x3f4159,_0x21fc22,_0xcd9369;if(!this['pdf'])return Promise['reject']('load\x20pdf\x20page\x20failed');if(_0x5581ae>this['pdf']['numPages'])return Promise['reject']('load\x20pdf\x20page\x20failed');this['pdfPage']&&this['pdfPageGroup']&&((_0x19f330=this['pdfPageGroup'])===null||_0x19f330===void 0x0?void 0x0:_0x19f330['removeFromParent'](),(_0x610614=this['pdfPageGroup'])===null||_0x610614===void 0x0?void 0x0:_0x610614['traverse'](_0x57ce50=>{_0x57ce50['geometry']&&_0x57ce50['geometry']['dispose'](),_0x57ce50['material']&&_0x57ce50['material']['dispose']();}),(_0x3f4159=this['pdfPageGroup'])===null||_0x3f4159===void 0x0?void 0x0:_0x3f4159['clear'](),this['pdfPageGroup']=undefined,this['tryCleanup'](),this['pdfPage']['objs']['clear'](),this['pdfPage']['cleanup'](),this['objs']=undefined,this['pdfPage']=undefined,(_0x21fc22=this['viewportMesh'])===null||_0x21fc22===void 0x0?void 0x0:_0x21fc22['removeFromParent'](),this['viewportMesh']=undefined,this['layersAndThreejsObjects']=undefined);const _0xcfb72b=CommonUtils['getUpdateProgressFunc'](_0x1558bc),_0x444e0f=CommonUtils['getUpdateSubProgressFunc'](0x1e,0x5a,_0x1558bc);let _0x2d1067=Date['now']();const _0x38309b=await this['pdf']['getPage'](_0x5581ae);_0xcfb72b(0x14),log['info']('[PdfLoader]\x20Pdf\x20page\x20loaded\x20in\x20'+(Date['now']()-_0x2d1067)/0x3e8+'s'),_0x2d1067=Date['now'](),log['info'](_0x38309b),this['pdfPage']=_0x38309b,this['pdfPageGroup']=new THREE['Group'](),this['pdfPageGroup']['name']=PdfLoader['MODEL_LAYOUT_NAME'],(_0xcd9369=this['pdfDocumentGroup'])===null||_0xcd9369===void 0x0?void 0x0:_0xcd9369['add'](this['pdfPageGroup']),this['commonObjs']=this['pdf']['_transport']['commonObjs'],this['objs']=_0x38309b['objs'];const _0x6381f5=_0x38309b['view'],_0x47f438=Math['max'](_0x6381f5[0x2]-_0x6381f5[0x0],_0x6381f5[0x3]-_0x6381f5[0x1]),_0x5c21c3=0x2000,_0x38747d=_0x5c21c3/_0x47f438,_0x228550=0x12c,_0x4b8b50=_0x228550/0x48,_0x3ba79f=Math['min'](_0x4b8b50,_0x38747d),_0x382fef=_0x38309b['getViewport']({'scale':_0x3ba79f});this['beginDrawing'](_0x382fef),this['current']=new CanvasExtraState(_0x382fef['width'],_0x382fef['height']),await this['buildLayers'](_0x38309b),_0xcfb72b(0x1e),await this['getOperatorList'](_0x444e0f);}['getPageCount'](){if(!this['pdf'])return;return this['pdf']['numPages'];}async['getOperatorList'](_0x2d8a1b){const _0x1d595a=this['pdfPage'];if(!_0x1d595a)return;const _0x2049c2='display',_0x301708=pdfjsLib['AnnotationMode']['ENABLE'],_0x41b7f0=null,_0x3d66c3=_0x1d595a['_transport']['getRenderingIntent'](_0x2049c2,_0x301708,_0x41b7f0,!![]);let _0x579fc4=_0x1d595a['_intentStates']['get'](_0x3d66c3['cacheKey']);!_0x579fc4&&(_0x579fc4=Object['create'](null),_0x1d595a['_intentStates']['set'](_0x3d66c3['cacheKey'],_0x579fc4));let _0x42779c;function _0x606f18(){_0x579fc4['operatorList']['lastChunk']&&(_0x579fc4['opListReadCapability']['resolve'](_0x579fc4['operatorList']),_0x579fc4['renderTasks']['delete'](_0x42779c));}return !_0x579fc4['opListReadCapability']&&(_0x42779c=Object['create'](null),_0x42779c['operatorListChanged']=_0x606f18,_0x579fc4['opListReadCapability']=new pdfjsLib['PromiseCapability'](),(_0x579fc4['renderTasks']||(_0x579fc4['renderTasks']=new Set()))['add'](_0x42779c),_0x579fc4['operatorList']={'fnArray':[],'argsArray':[],'lastChunk':![],'separateAnnots':null}),await this['_pumpOperatorList'](_0x3d66c3,_0x2d8a1b);}async['_pumpOperatorList'](_0x1a4aef,_0x19c858){const _0x485040=this['pdfPage'];if(!_0x485040)return;const {renderingIntent:_0xab0a2f,cacheKey:_0x5b619a,annotationStorageSerializable:_0x4f2809}=_0x1a4aef,{map:_0x240cf6,transfers:_0x34b06b}=_0x4f2809,_0x378b53=_0x485040['_transport']['messageHandler']['sendWithStream']('GetOperatorList',{'pageIndex':_0x485040['_pageIndex'],'intent':_0xab0a2f,'cacheKey':_0x5b619a,'annotationStorage':_0x240cf6},_0x34b06b),_0x5973a6=_0x378b53['getReader'](),_0x3cd441=_0x485040['_intentStates']['get'](_0x5b619a);_0x3cd441['streamReader']=_0x5973a6;const _0x54be56=_0x3cd441['operatorList']['argsArray']['length'],_0x5a54ae=_0x54be56<0xbb8;log['info']('[PdfLoader]\x20Operation\x20count:\x20'+_0x54be56+',\x20isVerboseProgress:\x20'+_0x5a54ae);let _0x51679e=0x0;const _0x2d7e78=CommonUtils['getUpdateProgressFunc'](_0x19c858);_0x2d7e78(0x0);const _0xb8961f=async()=>{var _0x555fc9;try{const {value:_0x2d9577,done:_0x23b981}=await _0x5973a6['read']();if(_0x23b981){_0x3cd441['streamReader']=null;!this['progressiveLoadCallback']&&_0x2d7e78(0x64);return;}if(_0x485040['_transport']['destroyed'])return;const _0x3c5e4a=_0x2d9577,_0x327f15=_0x3c5e4a['argsArray']['length'],_0xe1b3c1=_0x51679e*0x64/_0x54be56,_0x268fe8=(_0x51679e+_0x327f15)*0x64/_0x54be56;if(_0x5a54ae){const _0x382fd5=CommonUtils['getUpdateSubProgressFunc'](_0xe1b3c1,_0x268fe8,_0x19c858);await this['executeOperatorList'](_0x3c5e4a,_0x382fd5);}else await this['executeOperatorList'](_0x3c5e4a),_0x2d7e78(_0x268fe8);const _0x24cb8f=this['progressiveLoadCallback'],_0x3e446b=_0x3c5e4a['lastChunk'];_0x24cb8f?window['requestAnimationFrame'](()=>{var _0x485931,_0xf16bee;((_0x485931=this['modelCfg'])===null||_0x485931===void 0x0?void 0x0:_0x485931['merge'])&&this['mergePdfObjects'](),_0x24cb8f(zOrder,_0x3e446b),(_0xf16bee=this['pdfPageGroup'])===null||_0xf16bee===void 0x0?void 0x0:_0xf16bee['updateMatrixWorld'](!![]);}):((_0x555fc9=this['modelCfg'])===null||_0x555fc9===void 0x0?void 0x0:_0x555fc9['merge'])&&this['mergePdfObjects'](),_0x3c5e4a['lastChunk']&&this['endDrawing'](),_0x51679e+=_0x327f15,_0x24cb8f?_0xb8961f():await _0xb8961f();}catch(_0x1ec32e){_0x3cd441['streamReader']=null;if(_0x485040['_transport']['destroyed'])return;if(_0x3cd441['operatorList']){_0x3cd441['operatorList']['lastChunk']=!![];for(const _0x39a2f9 of _0x3cd441['renderTasks']){_0x39a2f9['operatorListChanged']();}this['tryCleanup']();}if(_0x3cd441['displayReadyCapability'])_0x3cd441['displayReadyCapability']['reject'](_0x1ec32e);else {if(_0x3cd441['opListReadCapability'])_0x3cd441['opListReadCapability']['reject'](_0x1ec32e);else throw _0x1ec32e;}}};await _0xb8961f();}['tryCleanup'](){const _0x362143=this['pdfPage'];if(!_0x362143)return;_0x362143['_intentStates']['clear']();}['mergePdfObjects'](){for(const _0x3022ff in this['layersAndThreejsObjects']){const _0x18cc3f=this['layersAndThreejsObjects'][_0x3022ff];if(_0x18cc3f['length']<=0x1)continue;const _0x30eb4d=MergeUtils['deepMerge'](_0x18cc3f,this['pdfPageGroup'],![],![],![]),_0x1773be=_0x30eb4d['added'],_0x5903ee=_0x30eb4d['removed'];_0x5903ee['forEach'](_0x450376=>{var _0xaaa9fb,_0x550083;(_0xaaa9fb=this['pdfPageGroup'])===null||_0xaaa9fb===void 0x0?void 0x0:_0xaaa9fb['remove'](_0x450376);const _0x397603=_0x450376;_0x397603['geometry']['dispose'](),_0x397603['material']['dispose'](),(_0x550083=_0x397603['material']['map'])===null||_0x550083===void 0x0?void 0x0:_0x550083['dispose']();}),_0x1773be['forEach'](_0xeb635c=>{var _0xc17c9f;(_0xc17c9f=this['pdfPageGroup'])===null||_0xc17c9f===void 0x0?void 0x0:_0xc17c9f['add'](_0xeb635c);});const _0x35abb6=_0x18cc3f['filter'](_0x1b69bc=>!_0x5903ee['includes'](_0x1b69bc));_0x35abb6['push'](..._0x1773be),this['layersAndThreejsObjects'][_0x3022ff]=_0x35abb6;}}['getPointsMaterial'](_0x3c99fd,_0x5ea57e=0x1){return !this['pointsMaterials'][_0x3c99fd+'-'+_0x5ea57e]&&(this['pointsMaterials'][_0x3c99fd+'-'+_0x5ea57e]=new THREE['PointsMaterial']({'color':_0x3c99fd,'transparent':!![],'opacity':_0x5ea57e})),this['pointsMaterials'][_0x3c99fd+'-'+_0x5ea57e];}['getLineBasicMaterial'](_0x28b765,_0x74ac46=0x1){return !this['lineBasicMaterials'][_0x28b765+'-'+_0x74ac46]&&(this['lineBasicMaterials'][_0x28b765+'-'+_0x74ac46]=new THREE['LineBasicMaterial']({'color':_0x28b765,'transparent':!![],'opacity':_0x74ac46})),this['lineBasicMaterials'][_0x28b765+'-'+_0x74ac46];}['getMeshBasicMaterial'](_0x2f5687,_0x51a10d=0x1){return !this['meshBasicMaterials'][_0x2f5687+'-'+_0x51a10d]&&(this['meshBasicMaterials'][_0x2f5687+'-'+_0x51a10d]=new THREE['MeshBasicMaterial']({'color':_0x2f5687,'transparent':!![],'opacity':_0x51a10d,'side':THREE['DoubleSide']})),this['meshBasicMaterials'][_0x2f5687+'-'+_0x51a10d];}['getTransformByMatrix4'](_0x677c2c){return [_0x677c2c['elements'][0x0],_0x677c2c['elements'][0x1],_0x677c2c['elements'][0x4],_0x677c2c['elements'][0x5],_0x677c2c['elements'][0xc],_0x677c2c['elements'][0xd]];}['getObject'](_0x4073b8,_0x3a44eb=null){if(typeof _0x4073b8==='string')return _0x4073b8['startsWith']('g_')?this['commonObjs']['get'](_0x4073b8):this['objs']['get'](_0x4073b8);return _0x3a44eb;}['beginDrawing'](_0x576165){var _0xaf6fe6,_0x47dda6,_0x24249a,_0xff5c02;log['info']('beginDrawing',_0x576165),this['viewportScale']=_0x576165['scale'];const [_0x21bcaf,_0x159884,_0x491fa6,_0x64e515,_0x4ef5bf,_0x3851cb]=_0x576165['transform'];this['baseTransform']['set'](_0x21bcaf,_0x491fa6,0x0,_0x4ef5bf,_0x159884,_0x64e515,0x0,_0x3851cb,0x0,0x0,0x1,0x0,0x0,0x0,0x0,0x1),this['currentTransform']['copy'](this['baseTransform']),(_0xaf6fe6=this['pdfPageGroup'])===null||_0xaf6fe6===void 0x0?void 0x0:_0xaf6fe6['applyMatrix4'](this['baseTransform']),(_0x47dda6=this['pdfPageGroup'])===null||_0x47dda6===void 0x0?void 0x0:_0x47dda6['rotateZ'](THREE['MathUtils']['degToRad'](-_0x576165['rotation'])),(_0x24249a=this['pdfPageGroup'])===null||_0x24249a===void 0x0?void 0x0:_0x24249a['updateMatrix']();const _0x93147e=0xffffff,{width:_0x513ba3,height:_0x3b81e8}=_0x576165,_0x5d704a=new THREE['BufferGeometry']()['setFromPoints']([new THREE['Vector3'](0x0,0x0,0x0),new THREE['Vector3'](_0x513ba3,0x0,0x0),new THREE['Vector3'](_0x513ba3,_0x3b81e8,0x0),new THREE['Vector3'](0x0,0x0,0x0),new THREE['Vector3'](_0x513ba3,_0x3b81e8,0x0),new THREE['Vector3'](0x0,_0x3b81e8,0x0)]),_0x4471ab=new THREE['MeshBasicMaterial']({'color':_0x93147e}),_0x279977=new THREE['Mesh'](_0x5d704a,_0x4471ab);_0x279977['name']='PDF-viewport',_0x279977['renderOrder']=-0x3e7,_0x279977['layers']['disable'](LayerForHitableObjects),this['viewportMesh']=_0x279977,(_0xff5c02=this['pdfPageGroup'])===null||_0xff5c02===void 0x0?void 0x0:_0xff5c02['add'](_0x279977);}['endDrawing'](){var _0x1f1672;(_0x1f1672=this['pdfPageGroup'])===null||_0x1f1672===void 0x0?void 0x0:_0x1f1672['updateMatrixWorld'](!![]);}['releaseData'](){var _0x32afda;(_0x32afda=this['fontManager'])===null||_0x32afda===void 0x0?void 0x0:_0x32afda['releaseFontData'](),this['operatorList']=undefined,this['optionalContentConfig']=undefined,this['commonObjs']=undefined,this['objs']=undefined,this['pdfPage']=undefined,this['pdf']=undefined;}async['buildLayers'](_0x161e23){if(!this['pdf'])return;const _0x4b7a5b=await _0x161e23['getOperatorList'](),_0x432fee=_0x4b7a5b['fnArray'],_0x3a846e=_0x4b7a5b['argsArray'],_0x247212={};let _0x10331e=0x1;for(let _0x4d6cee=0x0;_0x432fee&&_0x4d6cee<_0x432fee['length'];_0x4d6cee++){const _0x519c29=_0x432fee[_0x4d6cee];if(_0x519c29===pdfjsLib['OPS']['beginMarkedContentProps']){if(_0x3a846e[_0x4d6cee]&&_0x3a846e[_0x4d6cee][0x0]=='OC'&&_0x3a846e[_0x4d6cee][0x1]!==null){let _0x3d931f;typeof _0x3a846e[_0x4d6cee][0x1]=='object'?_0x3d931f=_0x3a846e[_0x4d6cee][0x1]['id']:_0x3d931f=_0x3a846e[_0x4d6cee][0x1],_0x247212[_0x3d931f]===undefined&&(_0x247212[_0x3d931f]=_0x10331e++);}}}const _0x45f6ed=this['optionalContentConfig'],_0x286174={'0':{'name':'0','id':'0','index':'0','visible':!![]}};let _0x159223=0x1;for(const _0x5d0840 in _0x247212){const _0x11db8a=_0x45f6ed['getGroup'](_0x5d0840);!_0x11db8a?_0x247212[_0x5d0840]=0x0:(_0x159223++,_0x286174[_0x11db8a['name']]={'name':_0x11db8a['name'],'id':_0x5d0840,'index':_0x247212[_0x5d0840],'visible':_0x11db8a['visible']});}return log['info']('buildLayers',_0x286174),this['layers']=_0x286174,{'layerCount':_0x159223,'layersMap':_0x286174,'layers':_0x247212};}['addObjectToModel'](_0x16e381){var _0x1e72d8,_0x3a9852;!this['layersAndThreejsObjects']&&(this['layersAndThreejsObjects']={});const _0x2663ab=this['layers'][this['currentLayerId']],_0x5d472c=(_0x2663ab===null||_0x2663ab===void 0x0?void 0x0:_0x2663ab['name'])||this['defaultLayerId'];!this['layersAndThreejsObjects'][_0x5d472c]&&(this['layersAndThreejsObjects'][_0x5d472c]=[]);_0x16e381['userData']['layerName']=_0x5d472c,this['layersAndThreejsObjects'][_0x5d472c]['push'](_0x16e381),this['loadedEntityCount']++,_0x16e381['layers']['enableAll']();const _0x2c3d12=_0x16e381;_0x2c3d12['geometry']&&_0x2c3d12['geometry']['hasAttribute']('normal')&&_0x2c3d12['geometry']['deleteAttribute']('normal'),_0x2c3d12['material']&&!_0x2c3d12['material']['map']&&_0x2c3d12['geometry']&&_0x2c3d12['geometry']['hasAttribute']('uv')&&_0x2c3d12['geometry']['deleteAttribute']('uv'),((_0x1e72d8=this['modelCfg'])===null||_0x1e72d8===void 0x0?void 0x0:_0x1e72d8['merge'])&&_0x2c3d12['geometry']&&(_0x2c3d12['geometry']['translate'](0x0,0x0,zOrder),zOrder+=zOrderStep),(_0x3a9852=this['pdfPageGroup'])===null||_0x3a9852===void 0x0?void 0x0:_0x3a9852['add'](_0x16e381);}async['executeOperatorList'](_0x1c71fd,_0x31d386){var _0x5a310e;const _0x38aaec=_0x1c71fd['argsArray'],_0x1b7283=_0x1c71fd['fnArray'],_0xee3a93=_0x38aaec['length'],_0x388472=CommonUtils['getUpdateProgressFuncForLoop'](_0xee3a93,_0x31d386),_0x73833f=this['commonObjs'],_0x43343e=this['objs'];let _0x3858cb=0x0;while(_0x3858cb<_0xee3a93){const _0x33c00e=_0x1b7283[_0x3858cb];if(_0x33c00e!==pdfjsLib['OPS']['dependency'])(_0x5a310e=this[_0x33c00e])===null||_0x5a310e===void 0x0?void 0x0:_0x5a310e['apply'](this,_0x38aaec[_0x3858cb]);else for(const _0x3ee5cf of _0x38aaec[_0x3858cb]){const _0x852cb=_0x3ee5cf['startsWith']('g_')?_0x73833f:_0x43343e;!_0x852cb['has'](_0x3ee5cf)&&console['warn']('Why\x20it\x20runs\x20here?!');}_0x3858cb++,await _0x388472(_0x3858cb);}}['setLineWidth'](_0x5f50d2){this['current']['lineWidth']=_0x5f50d2,_0x5f50d2>0x1&&this['lineWithWidthCount']++;}['setLineCap'](_0x29d8fc){this['current']['lineCap']=_0x29d8fc;}['setLineJoin'](_0x42ec23){this['current']['lineJoin']=_0x42ec23;}['setMiterLimit'](_0x530d66){this['current']['miterLimit']=_0x530d66;}['setDash'](_0x407026,_0x34142){}['setRenderingIntent'](_0x4ddef1){}['setFlatness'](_0x7de121){}['setGState'](_0x5b0948){for(const [_0x46d2c3,_0x51ed49]of _0x5b0948){switch(_0x46d2c3){case'LW':this['setLineWidth'](_0x51ed49);break;case'LC':this['setLineCap'](_0x51ed49);break;case'LJ':this['setLineJoin'](_0x51ed49);break;case'ML':this['setMiterLimit'](_0x51ed49);break;case'D':this['setDash'](_0x51ed49[0x0],_0x51ed49[0x1]);break;case'RI':this['setRenderingIntent'](_0x51ed49);break;case'FL':this['setFlatness'](_0x51ed49);break;case'Font':this['setFont'](_0x51ed49[0x0],_0x51ed49[0x1]);break;case'CA':this['current']['strokeAlpha']=_0x51ed49;break;case'ca':this['current']['fillAlpha']=_0x51ed49;break;case'BM':break;case'SMask':this['current']['activeSMask']=_0x51ed49?this['tempSMask']:null,this['tempSMask']=null;break;}}}['save'](){const _0x4ade70=this['current'];this['transformStack']['push'](this['currentTransform']['clone']()),this['stateStack']['push'](_0x4ade70),this['current']=_0x4ade70['clone']();}['restore'](){this['stateStack']['length']!==0x0&&(this['current']=this['stateStack']['pop']()),this['transformStack']['length']!==0x0&&this['currentTransform']['copy'](this['transformStack']['pop']()),this['pendingClip']=null,this['paths']=[];}['transform'](_0x3bb7a6,_0x260aca,_0xdc320e,_0x22f045,_0x5d68a3,_0x32bcab){const _0x12b89b=tempMatrix4['set'](_0x3bb7a6,_0xdc320e,0x0,_0x5d68a3,_0x260aca,_0x22f045,0x0,_0x32bcab,0x0,0x0,0x1,0x0,0x0,0x0,0x0,0x1);this['currentTransform']['multiply'](_0x12b89b);}['moveTo'](){}['lineTo'](){}['curveTo'](){}['curveTo2'](){}['curveTo3'](){}['closePath'](){this['currentPath']&&this['currentPath']['curves']['length']>0x0&&(this['currentPath']['closePath'](),this['paths']['push'](this['currentPath']['clone']()),this['currentPath']=undefined);}['rectangle'](){}['stroke'](_0x4acf65=!![]){if(this['contentVisible']){const _0x36ed18=this['current']['strokeColor'],_0x1d6e1f=this['current']['strokeAlpha'],_0x22470c=[],_0x3a7b5d=[];for(let _0x28a9e1=0x0;_0x28a9e1<this['paths']['length'];_0x28a9e1++){const _0x496d8=this['paths'][_0x28a9e1],_0x5da291=_0x496d8['getPoints'](),_0x35962c=_0x5da291['length']===0x1,_0x5c82b2=new THREE['BufferGeometry']()['setFromPoints'](_0x496d8['getPoints']());_0x5c82b2['applyMatrix4'](this['currentTransform']),_0x35962c?_0x22470c['push'](_0x5c82b2):_0x3a7b5d['push'](_0x5c82b2);}if(_0x22470c['length']>0x0){const _0x1eba4c=THREEAddons['BufferGeometryUtils']['mergeGeometries'](_0x22470c),_0x239c43=new THREE['Points'](_0x1eba4c,this['getPointsMaterial'](_0x36ed18,_0x1d6e1f));this['addObjectToModel'](_0x239c43);}if(_0x3a7b5d['length']>0x0){const _0x2bfebb=THREEAddons['BufferGeometryUtils']['mergeGeometries'](_0x3a7b5d),_0x42ead8=new THREE['Line'](_0x2bfebb,this['getLineBasicMaterial'](_0x36ed18,_0x1d6e1f));this['addObjectToModel'](_0x42ead8);}}_0x4acf65&&this['consumePath'](this['current']['getClippedPathBoundingBox']());}['closeStroke'](){this['closePath'](),this['stroke']();}['fill'](_0x5ed7d0=!![]){if(this['paths']['length']===0x0)return;this['current']['patternFill']&&log['warn']('[PdfLoader]\x20fill\x20pattern\x20not\x20supported\x20now.');const _0x511944=this['current']['getClippedPathBoundingBox']();if(this['contentVisible']&&_0x511944!==null){const _0x4aba01=[];if(this['clipPaths']){const _0x24da49=new clipperExports.PolyTree(),_0x139890=new clipperExports.Clipper(),_0x5c73fd=this['paths']['map'](_0x1aff32=>{return _0x1aff32['getPoints']()['map'](_0x43a1f8=>{return {'X':_0x43a1f8['x'],'Y':_0x43a1f8['y']};});}),_0x58e766=this['clipPaths']['map'](_0x5a1c44=>{return _0x5a1c44['getPoints']()['map'](_0x1c552d=>{return {'X':_0x1c552d['x'],'Y':_0x1c552d['y']};});}),_0x4c7e4f=0x64;clipperExports.JS['ScaleUpPaths'](_0x5c73fd,_0x4c7e4f),clipperExports.JS['ScaleUpPaths'](_0x58e766,_0x4c7e4f),_0x139890['AddPaths'](_0x5c73fd,clipperExports.PolyType['ptSubject'],!![]),_0x139890['AddPaths'](_0x58e766,clipperExports.PolyType['ptClip'],!![]),_0x139890['Execute'](clipperExports.ClipType['ctIntersection'],_0x24da49,this['pendingEOFill']?clipperExports.PolyFillType['pftEvenOdd']:clipperExports.PolyFillType['pftNonZero'],this['clipType']);const _0x12b660=clipperExports.JS['PolyTreeToExPolygons'](_0x24da49);for(let _0x4ffbe5=0x0;_0x4ffbe5<_0x12b660['length'];_0x4ffbe5++){const {outer:_0x37a1a7,holes:_0x58264f}=_0x12b660[_0x4ffbe5],_0x2b2234=new THREE['Shape']();_0x2b2234['setFromPoints'](_0x37a1a7['map'](_0x2ef466=>new THREE['Vector2'](_0x2ef466['X']/_0x4c7e4f,_0x2ef466['Y']/_0x4c7e4f))),_0x58264f['length']>0x0&&_0x58264f['forEach'](_0x42af1c=>{const _0x276bd0=new THREE['Shape']();_0x276bd0['setFromPoints'](_0x42af1c['map'](_0x2e9894=>new THREE['Vector2'](_0x2e9894['X']/_0x4c7e4f,_0x2e9894['Y']/_0x4c7e4f))),_0x2b2234['holes']['push'](_0x276bd0);}),_0x4aba01['push'](_0x2b2234);}this['clipPaths']=undefined;}let _0x2fc3ed;if(_0x4aba01['length']>0x0)_0x2fc3ed=new THREE['ShapeGeometry'](_0x4aba01);else {const _0x116011=this['paths']['map'](_0x26e59c=>new THREE['ShapeGeometry'](_0x26e59c));_0x2fc3ed=THREEAddons['BufferGeometryUtils']['mergeGeometries'](_0x116011);}_0x2fc3ed['applyMatrix4'](this['currentTransform']);const _0x1a166f=this['current']['fillColor'],_0x3613ea=this['current']['fillAlpha'],_0x2b5c53=new THREE['Mesh'](_0x2fc3ed,this['getMeshBasicMaterial'](_0x1a166f,_0x3613ea));this['addObjectToModel'](_0x2b5c53),this['pendingEOFill']=![];}_0x5ed7d0&&this['consumePath'](_0x511944);}['eoFill'](){this['pendingEOFill']=!![],this['fill']();}['fillStroke'](){this['fill'](![]),this['consumePath']();}['eoFillStroke'](){this['pendingEOFill']=!![],this['fillStroke']();}['closeFillStroke'](){this['closePath'](),this['fillStroke']();}['closeEOFillStroke'](){this['pendingEOFill']=!![],this['closePath'](),this['fillStroke']();}['endPath'](){this['consumePath']();}['clip'](){this['pendingClip']=NORMAL_CLIP;}['eoClip'](){this['pendingClip']=EO_CLIP;}['beginText'](){this['current']['textMatrix']=IDENTITY_MATRIX,this['current']['textMatrixScale']=0x1,this['current']['x']=this['current']['lineX']=0x0,this['current']['y']=this['current']['lineY']=0x0;}['endText'](){this['currentPath']=new THREE['Shape']();}['setCharSpacing'](_0x363345){this['current']['charSpacing']=_0x363345;}['setWordSpacing'](_0xa89753){this['current']['wordSpacing']=_0xa89753;}['setHScale'](_0xd4a00){this['current']['textHScale']=_0xd4a00/0x64;}['setLeading'](_0xefeff0){this['current']['leading']=-_0xefeff0;}['setFont'](_0x27a73b,_0x15fe77){const _0x47ab52=this['commonObjs']['get'](_0x27a73b),_0x50e71c=this['current'];if(!_0x47ab52)throw new Error('Can\x27t\x20find\x20font\x20for\x20'+_0x27a73b);_0x50e71c['fontMatrix']=_0x47ab52['fontMatrix']||FONT_IDENTITY_MATRIX;(_0x50e71c['fontMatrix'][0x0]===0x0||_0x50e71c['fontMatrix'][0x3]===0x0)&&log['warn']('Invalid\x20font\x20matrix\x20for\x20font\x20'+_0x27a73b);_0x15fe77<0x0?(_0x15fe77=-_0x15fe77,_0x50e71c['fontDirection']=-0x1):_0x50e71c['fontDirection']=0x1;this['current']['font']=_0x47ab52,this['current']['fontSize']=_0x15fe77;if(_0x47ab52['isType3Font'])return;let _0x347382=_0x15fe77;if(_0x15fe77<MIN_FONT_SIZE)_0x347382=MIN_FONT_SIZE;else _0x15fe77>MAX_FONT_SIZE&&(_0x347382=MAX_FONT_SIZE);this['current']['fontSizeScale']=_0x15fe77/_0x347382,this['current']['browserFontSize']=_0x347382;}['setTextRenderingMode'](_0x12b3d3){this['current']['textRenderingMode']=_0x12b3d3;}['setTextRise'](_0x44249b){this['current']['textRise']=_0x44249b;}['moveText'](_0x295f16,_0x45ae2c){this['current']['x']=this['current']['lineX']+=_0x295f16,this['current']['y']=this['current']['lineY']+=_0x45ae2c;}['setLeadingMoveText'](){}['setTextMatrix'](_0x1a99dc,_0x3a68e6,_0x428324,_0x37a2b3,_0x23b718,_0x667862){this['current']['textMatrix']=[_0x1a99dc,_0x3a68e6,_0x428324,_0x37a2b3,_0x23b718,_0x667862],this['current']['textMatrixScale']=Math['hypot'](_0x1a99dc,_0x3a68e6),this['current']['x']=this['current']['lineX']=0x0,this['current']['y']=this['current']['lineY']=0x0;}['nextLine'](){this['moveText'](0x0,this['current']['leading']);}['paintChar'](_0x202d83,_0x2add94,_0x3aa6fe){var _0x1f910d,_0x565455,_0x2cd91a,_0x4465fa;const _0x384d65=this['current'],_0xd2ab36=_0x384d65['font'],_0x2d487b=_0x384d65['textRenderingMode'],_0x4a56df=_0x384d65['fontSize']/_0x384d65['fontSizeScale'],_0x2c6b79=_0x2d487b&TextRenderingMode['FillStrokeMask'],_0x301be1=!!(_0x2d487b&TextRenderingMode['AddToPathFlag']),_0x3849c3=_0x384d65['patternFill']&&!_0xd2ab36['missingFile'];let _0x2dd32a;(_0xd2ab36['disableFontFace']||_0x301be1||_0x3849c3)&&(_0x2dd32a=_0xd2ab36['getPathGenerator'](this['commonObjs'],_0x202d83));let _0x3c0c1a;return _0xd2ab36['disableFontFace']||_0x3849c3?log['info']('paintChar\x20path:',_0x2dd32a,_0x4a56df,_0x2c6b79):((_0x2c6b79===TextRenderingMode['Fill']||_0x2c6b79===TextRenderingMode['FillStroke'])&&(_0x3c0c1a=(_0x1f910d=this['fontManager'])===null||_0x1f910d===void 0x0?void 0x0:_0x1f910d['getCharShape'](_0x202d83,(_0x565455=this['current']['font'])===null||_0x565455===void 0x0?void 0x0:_0x565455['name'],this['current']['browserFontSize']*0.8)),(_0x2c6b79===TextRenderingMode['Stroke']||_0x2c6b79===TextRenderingMode['FillStroke'])&&(_0x3c0c1a=(_0x2cd91a=this['fontManager'])===null||_0x2cd91a===void 0x0?void 0x0:_0x2cd91a['getCharShape'](_0x202d83,(_0x4465fa=this['current']['font'])===null||_0x4465fa===void 0x0?void 0x0:_0x4465fa['name'],this['current']['browserFontSize']*0.8))),_0x3c0c1a;}['showText'](_0x47a03b){var _0x3f9de5,_0x20891a;const _0x18b34b=this['current'],_0x43a78f=_0x18b34b['font'];if(_0x43a78f['isType3Font'])return this['showType3Text'](_0x47a03b);const _0x1979fa=_0x18b34b['fontSize'];if(_0x1979fa===0x0)return undefined;const _0x7e321=_0x18b34b['fontSizeScale'],_0x310029=_0x18b34b['charSpacing'],_0x22bfa6=_0x18b34b['wordSpacing'],_0x2666ec=_0x18b34b['fontDirection'],_0x197b53=_0x18b34b['textHScale']*_0x2666ec,_0x5e02b2=_0x47a03b['length'],_0x5344b0=_0x43a78f['vertical'],_0x234b9f=_0x5344b0?0x1:-0x1,_0xcc8e82=_0x43a78f['defaultVMetrics'],_0x5b4980=_0x1979fa*_0x18b34b['fontMatrix'][0x0],_0x26d516=_0x18b34b['textRenderingMode']===TextRenderingMode['Fill']&&!_0x43a78f['disableFontFace']&&!_0x18b34b['patternFill'],[_0x327df0,_0x47789b,_0x42d232,_0xd051ed,_0x38c058,_0x346fd9]=_0x18b34b['textMatrix'],_0x468410=this['currentTransform']['clone']();_0x468410['multiply'](tempMatrix4['set'](_0x327df0,_0x42d232,0x0,_0x38c058,_0x47789b,_0xd051ed,0x0,_0x346fd9,0x0,0x0,0x1,0x0,0x0,0x0,0x0,0x1)),_0x468410['multiply'](tempMatrix4['makeTranslation'](_0x18b34b['x'],_0x18b34b['y']+_0x18b34b['textRise'],0x0));_0x2666ec>0x0?_0x468410['scale'](new THREE['Vector3'](_0x197b53,0x1,0x1)):_0x468410['scale'](new THREE['Vector3'](_0x197b53,-0x1,0x1));let _0x13615a=_0x18b34b['lineWidth'];const _0x441685=_0x18b34b['textMatrixScale'];if(_0x441685===0x0||_0x13615a===0x0){_0x18b34b['textRenderingMode']&TextRenderingMode['FillStrokeMask'];}else _0x13615a/=_0x441685;_0x7e321!==0x1&&(_0x468410['scale'](new THREE['Vector3'](_0x7e321,_0x7e321,0x1)),_0x13615a/=_0x7e321);let _0x152ee7=0x0,_0x2f462d;const _0x199019=[];for(_0x2f462d=0x0;_0x2f462d<_0x5e02b2;++_0x2f462d){const _0x58d7a8=_0x47a03b[_0x2f462d];if(typeof _0x58d7a8==='number'){_0x152ee7+=_0x234b9f*_0x58d7a8*_0x1979fa/0x3e8;continue;}const _0x200463=(_0x58d7a8['isSpace']?_0x22bfa6:0x0)+_0x310029,_0x1c0f99=_0x58d7a8['unicode'],_0x4de0f8=_0x58d7a8['accent'];let _0x171882,_0x1da6cd,_0x557352=_0x58d7a8['width'];if(_0x5344b0){const _0x2e7d03=_0x58d7a8['vmetric']||_0xcc8e82,_0x409a2f=-(_0x58d7a8['vmetric']?_0x2e7d03[0x1]:_0x557352*0.5)*_0x5b4980,_0x2c8fef=_0x2e7d03[0x2]*_0x5b4980;_0x557352=_0x2e7d03?-_0x2e7d03[0x0]:_0x557352,_0x171882=_0x409a2f/_0x7e321,_0x1da6cd=(_0x152ee7+_0x2c8fef)/_0x7e321;}else _0x171882=_0x152ee7/_0x7e321,_0x1da6cd=0x0;if(_0x43a78f['remeasure']&&_0x557352>0x0);if(this['contentVisible']&&(_0x58d7a8['isInFont']||_0x43a78f['missingFile'])){if(_0x26d516&&!_0x4de0f8){const _0x3de41b=(_0x3f9de5=this['fontManager'])===null||_0x3f9de5===void 0x0?void 0x0:_0x3f9de5['getCharShape'](_0x1c0f99,(_0x20891a=this['current']['font'])===null||_0x20891a===void 0x0?void 0x0:_0x20891a['name'],this['current']['browserFontSize']);_0x3de41b&&(_0x3de41b['translate'](_0x171882,_0x1da6cd,0x0),_0x3de41b['applyMatrix4'](_0x468410),_0x199019['push'](_0x3de41b));}else {const _0x2326f7=this['paintChar'](_0x1c0f99,_0x171882,_0x1da6cd);_0x2326f7&&(_0x2326f7['translate'](_0x171882,_0x1da6cd,0x0),_0x2326f7['applyMatrix4'](_0x468410),_0x199019['push'](_0x2326f7));}}let _0x5e6b2a;_0x5344b0?_0x5e6b2a=_0x557352*_0x5b4980-_0x200463*_0x2666ec:_0x5e6b2a=_0x557352*_0x5b4980+_0x200463*_0x2666ec;_0x152ee7+=_0x5e6b2a;}if(_0x199019['length']>0x0){const _0x82732=_0x199019['filter'](_0x2a30f6=>_0x2a30f6 instanceof THREE['ExtrudeGeometry']),_0x1e3519=_0x199019['filter'](_0x5cbb98=>!(_0x5cbb98 instanceof THREE['ExtrudeGeometry']));if(_0x82732['length']>0x0){const _0x40c670=_0x82732['length']>0x1?THREEAddons['BufferGeometryUtils']['mergeGeometries'](_0x82732):_0x82732[0x0],_0x5133a3=new THREE['Mesh'](_0x40c670,this['getMeshBasicMaterial'](this['current']['fillColor']));this['addObjectToModel'](_0x5133a3),_0x5133a3['layers']['disable'](LayerForSnapableObjects);}if(_0x1e3519['length']>0x0){const _0x307959=_0x1e3519['length']>0x1?THREEAddons['BufferGeometryUtils']['mergeGeometries'](_0x1e3519):_0x1e3519[0x0],_0x43747b=new THREE['LineSegments'](_0x307959,this['getLineBasicMaterial'](this['current']['fillColor']));this['addObjectToModel'](_0x43747b),_0x43747b['layers']['disable'](LayerForSnapableObjects);}}_0x5344b0?_0x18b34b['y']-=_0x152ee7:_0x18b34b['x']+=_0x152ee7*_0x197b53;}['showType3Text'](_0x1b5123){}['setCharWidth'](_0x2b5891,_0xc2950f){}['setCharWidthAndBounds'](_0x544b77,_0x528f30,_0x31890b,_0x253250,_0x23c955,_0x5c9875){}['setStrokeColor'](){}['setStrokeColorN'](){}['setFillColorN'](){this['current']['patternFill']=!![];}['setStrokeRGBColor'](_0x11f581,_0xf320e0,_0x36e36f){this['current']['strokeColor']=tempColor['setRGB'](_0x11f581/0xff,_0xf320e0/0xff,_0x36e36f/0xff)['convertSRGBToLinear']()['getHex']();}['setFillRGBColor'](_0x3ab0fd,_0x3453cb,_0x111053){this['current']['fillColor']=tempColor['setRGB'](_0x3ab0fd/0xff,_0x3453cb/0xff,_0x111053/0xff)['convertSRGBToLinear']()['getHex'](),this['current']['patternFill']=![];}['shadingFill'](){}['beginInlineImage'](){}['beginImageData'](){}['markPoint'](_0x5a2f43){}['markPointProps'](_0x56bdd7,_0x11fbc0){}['beginMarkedContent'](_0x4c84b1){log['info']('beginMarkedContent',_0x4c84b1),this['markedContentStack']['push']({'visible':!![]});}['beginMarkedContentProps'](_0x28bb72,_0xe9abb2){if(_0x28bb72==='OC'){this['markedContentStack']['push']({'visible':this['optionalContentConfig']['isVisible'](_0xe9abb2)});const _0x340877=this['optionalContentConfig']['getGroup'](_0xe9abb2===null||_0xe9abb2===void 0x0?void 0x0:_0xe9abb2['id']);this['currentLayerId']=(_0x340877===null||_0x340877===void 0x0?void 0x0:_0x340877['name'])||this['defaultLayerId'];}else this['markedContentStack']['push']({'visible':!![]});this['contentVisible']=this['isContentVisible']();}['endMarkedContent'](){this['markedContentStack']['pop'](),this['contentVisible']=this['isContentVisible']();}['beginCompat'](){}['endCompat'](){}['consumePath'](_0x113240){const _0x49ad13=this['current']['isEmptyClip']();this['pendingClip']&&this['current']['updateClipFromPath']();if(!this['pendingClip']);this['pendingClip']&&(!_0x49ad13&&(this['pendingClip']===EO_CLIP?this['clipType']=clipperExports.PolyFillType['pftEvenOdd']:this['clipType']=clipperExports.PolyFillType['pftNonZero'],this['clipPaths']=this['paths']['slice']()),this['pendingClip']=null),this['current']['startNewPathAndClipBox'](this['current']['clipBox']),this['paths']=[],this['currentPath']=undefined;}['paintFormXObjectBegin'](_0x4e7127,_0x5daf00){log['info']('paintFormXObjectBegin',_0x4e7127,_0x5daf00);}['paintFormXObjectEnd'](){}['beginGroup'](){}['endGroup'](){}['beginAnnotation'](){}['endAnnotation'](){}['paintImageMaskXObject'](){}['paintImageMaskXObjectGroup'](){}['paintImageXObject'](_0xa81368){if(!this['contentVisible'])return;const _0x39e750=this['getObject'](_0xa81368);if(!_0x39e750){log['warn']('Dependent\x20image\x20isn\x27t\x20ready\x20yet');return;}this['paintInlineImageXObject'](_0x39e750);}['paintInlineImageXObject'](_0x4dfe53){if(!this['contentVisible'])return;log['info']('paintInlineImageXObject',_0x4dfe53),this['save']();const {bitmap:_0x35b2c7,width:_0xa38a74,height:_0x3685a4}=_0x4dfe53;this['currentTransform']['multiply'](tempMatrix4['makeScale'](0x1/_0xa38a74,-0x1/_0x3685a4,0x1));const _0x4ab0ee=new THREE['CanvasTexture'](_0x35b2c7),_0xc9b450=new THREE['MeshBasicMaterial']({'map':_0x4ab0ee,'transparent':!![]}),_0x437ef8=new THREE['PlaneGeometry'](_0xa38a74,_0x3685a4),_0x2edf97=new THREE['Mesh'](_0x437ef8,_0xc9b450);_0x2edf97['translateX'](_0xa38a74/0x2),_0x2edf97['translateY'](-_0x3685a4/0x2),_0x2edf97['applyMatrix4'](this['currentTransform']),this['addObjectToModel'](_0x2edf97),this['restore']();}['paintInlineImageXObjectGroup'](){}['paintImageXObjectRepeat'](){}['paintImageMaskXObjectRepeat'](){}['paintSolidColorImageMask'](){}['_scaleImage'](_0x159f72,_0x1e9ace){const _0x394a96=_0x159f72['width'],_0x58d8a8=_0x159f72['height'];let _0x237f30=Math['max'](Math['hypot'](_0x1e9ace['elements'][0x0],_0x1e9ace['elements'][0x4]),0x1),_0x3ea5f5=Math['max'](Math['hypot'](_0x1e9ace['elements'][0x1],_0x1e9ace['elements'][0x5]),0x1),_0x12f5ed=_0x394a96,_0x238c22=_0x58d8a8,_0x5d022c=_0x12f5ed,_0x1b147f=_0x238c22;while(_0x237f30>0x2&&_0x12f5ed>0x1||_0x3ea5f5>0x2&&_0x238c22>0x1){_0x237f30>0x2&&_0x12f5ed>0x1&&(_0x5d022c=_0x12f5ed>=0x4000?Math['floor'](_0x12f5ed/0x2)-0x1||0x1:Math['ceil'](_0x12f5ed/0x2),_0x237f30/=_0x12f5ed/_0x5d022c),_0x3ea5f5>0x2&&_0x238c22>0x1&&(_0x1b147f=_0x238c22>=0x4000?Math['floor'](_0x238c22/0x2)-0x1||0x1:Math['ceil'](_0x238c22)/0x2,_0x3ea5f5/=_0x238c22/_0x1b147f),_0x12f5ed=_0x5d022c,_0x238c22=_0x1b147f;}return {'paintWidth':_0x12f5ed,'paintHeight':_0x238c22};}['constructPath'](_0x4c86b5,_0x4f4f89,_0x11c814){const _0x3fe59b=this['current'];let _0x30809a=_0x3fe59b['x'],_0x36138a=_0x3fe59b['y'],_0x13d66d,_0x47d470;const _0x1fe2c5=[this['currentTransform']['elements'][0x0],this['currentTransform']['elements'][0x1],this['currentTransform']['elements'][0x4],this['currentTransform']['elements'][0x5],this['currentTransform']['elements'][0xc],this['currentTransform']['elements'][0xd]],_0x353523=_0x1fe2c5[0x0]===0x0&&_0x1fe2c5[0x3]===0x0||_0x1fe2c5[0x1]===0x0&&_0x1fe2c5[0x2]===0x0,_0x4f2abf=_0x353523?_0x11c814['slice'](0x0):null;for(let _0x1dafac=0x0,_0x234c25=0x0,_0x28a578=_0x4c86b5['length'];_0x1dafac<_0x28a578;_0x1dafac++){!this['currentPath']&&(this['currentPath']=new THREE['Shape']());switch(_0x4c86b5[_0x1dafac]|0x0){case pdfjsLib['OPS']['rectangle']:{_0x30809a=_0x4f4f89[_0x234c25++],_0x36138a=_0x4f4f89[_0x234c25++];const _0x2975c0=_0x4f4f89[_0x234c25++],_0x479530=_0x4f4f89[_0x234c25++],_0x235ef2=_0x30809a+_0x2975c0,_0x47f399=_0x36138a+_0x479530;this['currentPath']['moveTo'](_0x30809a,_0x36138a),_0x2975c0===0x0||_0x479530===0x0?this['currentPath']['lineTo'](_0x235ef2,_0x47f399):(this['currentPath']['lineTo'](_0x235ef2,_0x36138a),this['currentPath']['lineTo'](_0x235ef2,_0x47f399),this['currentPath']['lineTo'](_0x30809a,_0x47f399)),!_0x353523&&_0x3fe59b['updateRectMinMax'](_0x1fe2c5,[_0x30809a,_0x36138a,_0x235ef2,_0x47f399]),this['currentPath']['closePath'](),this['paths']['push'](this['currentPath']['clone']()),this['currentPath']=undefined;}break;case pdfjsLib['OPS']['moveTo']:_0x30809a=_0x4f4f89[_0x234c25++],_0x36138a=_0x4f4f89[_0x234c25++],this['currentPath']['moveTo'](_0x30809a,_0x36138a);!_0x353523&&_0x3fe59b['updatePathMinMax'](_0x1fe2c5,_0x30809a,_0x36138a);break;case pdfjsLib['OPS']['lineTo']:_0x30809a=_0x4f4f89[_0x234c25++],_0x36138a=_0x4f4f89[_0x234c25++],this['currentPath']['lineTo'](_0x30809a,_0x36138a);!_0x353523&&_0x3fe59b['updatePathMinMax'](_0x1fe2c5,_0x30809a,_0x36138a);break;case pdfjsLib['OPS']['curveTo']:_0x13d66d=_0x30809a,_0x47d470=_0x36138a,_0x30809a=_0x4f4f89[_0x234c25+0x4],_0x36138a=_0x4f4f89[_0x234c25+0x5],this['currentPath']['bezierCurveTo'](_0x4f4f89[_0x234c25],_0x4f4f89[_0x234c25+0x1],_0x4f4f89[_0x234c25+0x2],_0x4f4f89[_0x234c25+0x3],_0x30809a,_0x36138a),_0x3fe59b['updateCurvePathMinMax'](_0x1fe2c5,_0x13d66d,_0x47d470,_0x4f4f89[_0x234c25],_0x4f4f89[_0x234c25+0x1],_0x4f4f89[_0x234c25+0x2],_0x4f4f89[_0x234c25+0x3],_0x30809a,_0x36138a,_0x4f2abf),_0x234c25+=0x6;break;case pdfjsLib['OPS']['curveTo2']:_0x13d66d=_0x30809a,_0x47d470=_0x36138a,this['currentPath']['bezierCurveTo'](_0x30809a,_0x36138a,_0x4f4f89[_0x234c25],_0x4f4f89[_0x234c25+0x1],_0x4f4f89[_0x234c25+0x2],_0x4f4f89[_0x234c25+0x3]),_0x3fe59b['updateCurvePathMinMax'](_0x1fe2c5,_0x13d66d,_0x47d470,_0x30809a,_0x36138a,_0x4f4f89[_0x234c25],_0x4f4f89[_0x234c25+0x1],_0x4f4f89[_0x234c25+0x2],_0x4f4f89[_0x234c25+0x3],_0x4f2abf),_0x30809a=_0x4f4f89[_0x234c25+0x2],_0x36138a=_0x4f4f89[_0x234c25+0x3],_0x234c25+=0x4;break;case pdfjsLib['OPS']['curveTo3']:_0x13d66d=_0x30809a,_0x47d470=_0x36138a,_0x30809a=_0x4f4f89[_0x234c25+0x2],_0x36138a=_0x4f4f89[_0x234c25+0x3],this['currentPath']['bezierCurveTo'](_0x4f4f89[_0x234c25],_0x4f4f89[_0x234c25+0x1],_0x30809a,_0x36138a,_0x30809a,_0x36138a),_0x3fe59b['updateCurvePathMinMax'](_0x1fe2c5,_0x13d66d,_0x47d470,_0x4f4f89[_0x234c25],_0x4f4f89[_0x234c25+0x1],_0x30809a,_0x36138a,_0x30809a,_0x36138a,_0x4f2abf),_0x234c25+=0x4;break;case pdfjsLib['OPS']['closePath']:this['paths']['push'](this['currentPath']['clone']()),this['currentPath']=undefined;break;}}this['currentPath']&&this['paths']['push'](this['currentPath']['clone']()),_0x353523&&_0x3fe59b['updateScalingPathMinMax'](_0x1fe2c5,_0x4f2abf),this['current']['setCurrentPoint'](_0x30809a,_0x36138a);}['isContentVisible'](){for(let _0x807db0=this['markedContentStack']['length']-0x1;_0x807db0>=0x0;_0x807db0--){if(!this['markedContentStack'][_0x807db0]['visible'])return ![];}return !![];}}PdfLoader['MODEL_LAYOUT_NAME']='Model';if(window['pdfjsLib'])for(const op in pdfjsLib['OPS']){PdfLoader['prototype'][op]!==undefined&&(PdfLoader['prototype'][pdfjsLib['OPS'][op]]=PdfLoader['prototype'][op]);}class CanvasExtraState{constructor(_0x2a2acb,_0x424aed){this['textMatrix']=IDENTITY_MATRIX,this['fontMatrix']=FONT_IDENTITY_MATRIX,this['textRenderingMode']=TextRenderingMode['Fill'],this['fillColor']=0x0,this['strokeColor']=0x0,this['activeSMask']=null,this['lineCap']=0x0,this['lineJoin']=0x0,this['miterLimit']=0x0,this['alphaIsShape']=![],this['fontSize']=0x0,this['fontSizeScale']=0x1,this['browserFontSize']=0x1,this['textMatrix']=IDENTITY_MATRIX,this['textMatrixScale']=0x1,this['fontMatrix']=FONT_IDENTITY_MATRIX,this['leading']=0x0,this['x']=0x0,this['y']=0x0,this['lineX']=0x0,this['lineY']=0x0,this['charSpacing']=0x0,this['wordSpacing']=0x0,this['textHScale']=0x1,this['textRenderingMode']=TextRenderingMode['Fill'],this['textRise']=0x0,this['fillColor']=0x0,this['strokeColor']=0x0,this['patternFill']=![],this['fillAlpha']=0x1,this['strokeAlpha']=0x1,this['lineWidth']=0x1,this['activeSMask']=null,this['transferMaps']='none',this['ctxMatrix']=new THREE['Matrix3'](),this['clipBox']=[0x0,0x0,_0x2a2acb,_0x424aed],this['minX']=Infinity,this['minY']=Infinity,this['maxX']=0x0,this['maxY']=0x0;}['clone'](){const _0x837e6d=Object['create'](this);return _0x837e6d;}['setCurrentPoint'](_0x238988,_0x5195f6){this['x']=_0x238988,this['y']=_0x5195f6;}['startNewPathAndClipBox'](_0x599410){this['clipBox']=_0x599410,this['minX']=Infinity,this['minY']=Infinity,this['maxX']=0x0,this['maxY']=0x0;}['updatePathMinMax'](_0x5a417,_0x91d0e3,_0x2a8372){[_0x91d0e3,_0x2a8372]=pdfjsLib['Util']['applyTransform']([_0x91d0e3,_0x2a8372],_0x5a417),this['minX']=Math['min'](this['minX'],_0x91d0e3),this['minY']=Math['min'](this['minY'],_0x2a8372),this['maxX']=Math['max'](this['maxX'],_0x91d0e3),this['maxY']=Math['max'](this['maxY'],_0x2a8372);}['getPathBoundingBox'](_0x8c977d=PathType['Fill'],_0x132db2=null){const _0x3cd366=[this['minX'],this['minY'],this['maxX'],this['maxY']];if(_0x8c977d===PathType['Stroke']){if(!_0x132db2)throw new Error('Stroke\x20bounding\x20box\x20must\x20include\x20transform.');const _0x1c9181=pdfjsLib['Util']['singularValueDecompose2dScale'](_0x132db2),_0x352361=_0x1c9181[0x0]*this['lineWidth']/0x2,_0x2eba53=_0x1c9181[0x1]*this['lineWidth']/0x2;_0x3cd366[0x0]-=_0x352361,_0x3cd366[0x1]-=_0x2eba53,_0x3cd366[0x2]+=_0x352361,_0x3cd366[0x3]+=_0x2eba53;}return _0x3cd366;}['updateRectMinMax'](_0x58ed56,_0x33d49d){const _0x3f001a=pdfjsLib['Util']['applyTransform'](_0x33d49d,_0x58ed56),_0x2ddbbd=pdfjsLib['Util']['applyTransform'](_0x33d49d['slice'](0x2),_0x58ed56);this['minX']=Math['min'](this['minX'],_0x3f001a[0x0],_0x2ddbbd[0x0]),this['minY']=Math['min'](this['minY'],_0x3f001a[0x1],_0x2ddbbd[0x1]),this['maxX']=Math['max'](this['maxX'],_0x3f001a[0x0],_0x2ddbbd[0x0]),this['maxY']=Math['max'](this['maxY'],_0x3f001a[0x1],_0x2ddbbd[0x1]);}['updateScalingPathMinMax'](_0x36991e,_0x508219){pdfjsLib['Util']['scaleMinMax'](_0x36991e,_0x508219),this['minX']=Math['min'](this['minX'],_0x508219[0x0]),this['maxX']=Math['max'](this['maxX'],_0x508219[0x1]),this['minY']=Math['min'](this['minY'],_0x508219[0x2]),this['maxY']=Math['max'](this['maxY'],_0x508219[0x3]);}['updateCurvePathMinMax'](_0x53d855,_0x5e88dc,_0xa737c1,_0x22f38a,_0x50ab95,_0x3e5712,_0x9848ba,_0x473b40,_0x14cba0,_0x3568bf){const _0x10f79a=pdfjsLib['Util']['bezierBoundingBox'](_0x5e88dc,_0xa737c1,_0x22f38a,_0x50ab95,_0x3e5712,_0x9848ba,_0x473b40,_0x14cba0);if(_0x3568bf){_0x3568bf[0x0]=Math['min'](_0x3568bf[0x0],_0x10f79a[0x0],_0x10f79a[0x2]),_0x3568bf[0x1]=Math['max'](_0x3568bf[0x1],_0x10f79a[0x0],_0x10f79a[0x2]),_0x3568bf[0x2]=Math['min'](_0x3568bf[0x2],_0x10f79a[0x1],_0x10f79a[0x3]),_0x3568bf[0x3]=Math['max'](_0x3568bf[0x3],_0x10f79a[0x1],_0x10f79a[0x3]);return;}this['updateRectMinMax'](_0x53d855,_0x10f79a);}['updateClipFromPath'](){const _0x50e51c=pdfjsLib['Util']['intersect'](this['clipBox'],this['getPathBoundingBox']());this['startNewPathAndClipBox'](_0x50e51c||[0x0,0x0,0x0,0x0]);}['isEmptyClip'](){return this['minX']===Infinity;}['getClippedPathBoundingBox'](_0xdff5e1=PathType['Fill'],_0x11cb6b=null){return pdfjsLib['Util']['intersect'](this['clipBox'],this['getPathBoundingBox'](_0xdff5e1,_0x11cb6b))||[];}}
|
|
131
|
+
|
|
132
|
+
class PdfLoaderPlugin extends Plugin{constructor(_0x40bcf0,_0x162a09){const _0xbc2479=(_0x162a09===null||_0x162a09===void 0x0?void 0x0:_0x162a09['id'])||PdfLoaderPlugin['DEFAULT_ID'];super(_0x40bcf0,{'id':_0xbc2479}),this['cfg']=_0x162a09||{'id':_0xbc2479},this['cfg']['enableProgressiveLoad']==null&&(this['cfg']['enableProgressiveLoad']=!![]);}async['loadAsync'](_0x390840,_0x5abebd){const _0x330925=this['viewer'];_0x330925['getSpinner']()['increaseJobCount']();const _0xbde794=Date['now'](),_0x1806aa=_0x330925['getFontManager'](),_0xe7079d=this['cfg']['pdfWorker'];!this['loader']&&(this['loader']=new PdfLoader({'font':_0x1806aa,'pdfWorker':_0xe7079d}));this['cfg']['enableProgressiveLoad']&&(this['loader']['progressiveLoadCallback']=(_0x348505,_0x23c31f)=>{const _0x41cdd8=_0x330925['camera']['position'];_0x348505&&_0x41cdd8['z']<_0x348505&&_0x330925['getCameraManager']()['setCameraPosition'](new THREE['Vector3'](_0x41cdd8['x'],_0x41cdd8['y'],_0x348505));if(_0x23c31f){const _0x292dbf=CommonUtils['getUpdateProgressFunc'](_0x5abebd);_0x292dbf(0x64),log['info']('[PdfLoader]\x20Progressively\x20loaded\x20\x27'+_0x390840['src']+'\x27\x20in\x20'+(Date['now']()-_0xbde794)/0x3e8+'s'),_0x330925['getSpinner']()['decreaseJobCount']();}_0x330925['enableRender']();});const _0x5b2c54=await this['loader']['loadAsync'](_0x390840,_0x5abebd);return !this['cfg']['enableProgressiveLoad']&&_0x330925['getSpinner']()['decreaseJobCount'](),new Model2d(_0x5b2c54);}async['loadPage'](_0x179be7,_0x2773d2){var _0x15fdcd;return (_0x15fdcd=this['loader'])===null||_0x15fdcd===void 0x0?void 0x0:_0x15fdcd['loadPage'](_0x179be7,_0x2773d2);}['getPageCount'](){var _0xe287df;return ((_0xe287df=this['loader'])===null||_0xe287df===void 0x0?void 0x0:_0xe287df['getPageCount']())||0x0;}['getPdfViewport'](){var _0x33122f;const _0x460335=(_0x33122f=this['loader'])===null||_0x33122f===void 0x0?void 0x0:_0x33122f['viewportMesh'];if(!_0x460335)return undefined;const _0x2198cb=new THREE['Box3']()['setFromObject'](_0x460335);return _0x2198cb;}['worldPosition2PdfPoint'](_0x2d9bba){const _0x1527b3=this['getPdfViewport'](),_0x119345=(_0x1527b3===null||_0x1527b3===void 0x0?void 0x0:_0x1527b3['min'])||new THREE['Vector3'](),_0x588e49=new THREE['Vector3']();_0x1527b3===null||_0x1527b3===void 0x0?void 0x0:_0x1527b3['getSize'](_0x588e49);const _0x1c4b4f=_0x588e49['x'],_0x4cadd8=_0x588e49['y'],_0x3ad561=_0x2d9bba['x']-_0x119345['x'],_0x1bd9a4=_0x2d9bba['y']-_0x119345['y'];return new THREE['Vector2'](_0x3ad561/_0x1c4b4f,_0x1bd9a4/_0x4cadd8);}['pdfPoint2WorldPosition'](_0x3dfc8b){const _0x32b89f=this['getPdfViewport'](),_0x1eb3d1=(_0x32b89f===null||_0x32b89f===void 0x0?void 0x0:_0x32b89f['min'])||new THREE['Vector3'](),_0x3409f3=new THREE['Vector3']();_0x32b89f===null||_0x32b89f===void 0x0?void 0x0:_0x32b89f['getSize'](_0x3409f3);const _0x1ed40b=_0x3409f3['x'],_0x486b33=_0x3409f3['y'];return new THREE['Vector2'](_0x3dfc8b['x']*_0x1ed40b+_0x1eb3d1['x'],_0x3dfc8b['y']*_0x486b33+_0x1eb3d1['y']);}}PdfLoaderPlugin['DEFAULT_ID']='PdfLoaderPlugin';
|
|
133
|
+
|
|
134
|
+
class LocalDxfUploader extends IUploader{constructor(_0x38fe09,_0x56413a,_0xd2a30e){super(_0x38fe09,_0x56413a,_0xd2a30e),this['pdfWorker']='',this['defaultModelConfig']={'src':'','merge':!![]},(!this['formats']||this['_formats']['length']===0x0)&&(this['_formats']=['dwg','dxf','pdf']);}['setPdfWorker'](_0x1da1b3){this['pdfWorker']=_0x1da1b3;}['formats'](){return this['_formats'];}['uploadFiles'](_0x752556){for(let _0x329a3d=0x0;_0x329a3d<_0x752556['length'];_0x329a3d++){const _0x135e37=_0x752556[_0x329a3d];if(_0x135e37['name']['match'](/\.(dxf|dwg)$/i))this['uploadSingleDxf'](_0x135e37);else _0x135e37['name']['match'](/\.(pdf)$/i)&&this['uploadSinglePdf'](_0x135e37);}}async['uploadSingleDxf'](_0x1a3316){const _0xcfc930=_0x2b5820=>{const _0x40a9c0=Math['floor'](_0x2b5820['loaded']*0x64/_0x2b5820['total']);log['info']('[Uploader]\x20Loading\x20'+(_0x1a3316===null||_0x1a3316===void 0x0?void 0x0:_0x1a3316['name'])+',\x20'+_0x40a9c0+'%');},_0x9c3214=Object['assign'](Object['assign']({},this['defaultModelConfig']),{'src':URL['createObjectURL'](_0x1a3316),'modelId':_0x1a3316['name']});await this['viewer']['loadModel'](_0x9c3214,_0xcfc930);}async['uploadSinglePdf'](_0x4ea144){const _0x49abc7=_0x27454f=>{const _0x5218cf=Math['floor'](_0x27454f['loaded']*0x64/_0x27454f['total']);log['info']('[Uploader]\x20Loading\x20'+(_0x4ea144===null||_0x4ea144===void 0x0?void 0x0:_0x4ea144['name'])+',\x20'+_0x5218cf+'%');};try{const _0x5a1826=this['viewer'],_0x172480={'font':_0x5a1826['fontManager'],'pdfWorker':this['pdfWorker'],'enableProgressiveLoad':!![]},_0x3950ed={'merge':!![],'src':URL['createObjectURL'](_0x4ea144),'modelId':_0x4ea144['name']},_0x179a6a=new PdfLoaderPlugin(_0x5a1826,_0x172480);_0x179a6a['loadAsync'](_0x3950ed,_0x49abc7)['then'](_0x345683=>{this['viewer']['addModel'](_0x345683),this['onSuccess']&&this['onSuccess']({});});}catch(_0x5bcc0d){log['info'](_0x5bcc0d);}}}
|
|
135
|
+
|
|
136
|
+
var MarkupType;(function(_0x1ba7a8){_0x1ba7a8['Arrow']='ArrowMarkup',_0x1ba7a8['Circle']='CircleMarkup',_0x1ba7a8['CloudLine']='CloudLineMarkup',_0x1ba7a8['CloudLineRectangle']='CloudRectMarkup',_0x1ba7a8['CloudRectWithText']='CloudRectWithTextMarkup',_0x1ba7a8['Dot']='DotMarkup',_0x1ba7a8['Ellipse']='EllipseMarkup',_0x1ba7a8['LeaderLine']='LeaderLineMarkup',_0x1ba7a8['PolyLine']='PolylineMarkup',_0x1ba7a8['Rectangle']='RectMarkup',_0x1ba7a8['Text']='TextMarkup',_0x1ba7a8['X']='XMarkup';}(MarkupType||(MarkupType={})));
|
|
137
|
+
|
|
138
|
+
class ArrowMarkup extends BaseMarkup{constructor(_0x34e2ca,_0x24b7ac){super(_0x34e2ca),this['type']=MarkupType['Arrow'],this['update'](_0x24b7ac);}['draw'](_0x13bb60,_0x5d9159){const _0x206382=this['points']['map'](_0x4d1860=>this['transToScreenCoord'](_0x4d1860,_0x5d9159)),_0x6e6131=0xa,[_0x2511fb,_0x1b1f5d]=this['points'],_0x3dcdb3=new THREE['Vector3']()['subVectors'](_0x2511fb,_0x1b1f5d)['length']()/0xa/this['tolerance'];this['drawArrowLine'](_0x13bb60,_0x206382,_0x3dcdb3),this['drawArrowHead'](_0x13bb60,_0x206382[0x0],_0x206382[0x1],_0x6e6131,_0x3dcdb3);}['drawArrowLine'](_0x518fe5,_0x502210,_0x379182){_0x518fe5['save'](),_0x518fe5['lineWidth']=this['lineWidth'],_0x518fe5['strokeStyle']=ColorUtils['floatArray2CssColor'](this['lineColor']);const [_0x396b77,_0x2ae98f]=_0x502210,_0x242227=new THREE['Vector2']()['subVectors'](_0x2ae98f,_0x396b77)['normalize']();_0x518fe5['beginPath'](),_0x518fe5['moveTo'](_0x396b77['x'],_0x396b77['y']);const _0x1e22ee=_0x2ae98f['clone']()['sub'](_0x242227['multiplyScalar'](_0x379182));_0x518fe5['lineTo'](_0x1e22ee['x'],_0x1e22ee['y']),_0x518fe5['closePath'](),_0x518fe5['stroke'](),_0x518fe5['restore']();}['drawArrowHead'](_0x58308a,_0x114824,_0x2316a8,_0x4433d9,_0x4ea790){const _0x3dd399=Math['atan2'](_0x114824['y']-_0x2316a8['y'],_0x114824['x']-_0x2316a8['x'])*0xb4/Math['PI'],_0x2e85cd=(_0x3dd399+_0x4433d9)*Math['PI']/0xb4,_0x58b7e0=(_0x3dd399-_0x4433d9)*Math['PI']/0xb4,_0x397ab1=_0x4ea790*Math['cos'](_0x2e85cd),_0x4b9efe=_0x4ea790*Math['sin'](_0x2e85cd),_0x2d2ac2=_0x4ea790*Math['cos'](_0x58b7e0),_0x1aaaeb=_0x4ea790*Math['sin'](_0x58b7e0),_0x4f9bea=new THREE['Vector2'](_0x2316a8['x']+_0x397ab1,_0x2316a8['y']+_0x4b9efe),_0x449fb3=new THREE['Vector2'](_0x2316a8['x']+_0x2d2ac2,_0x2316a8['y']+_0x1aaaeb);_0x58308a['save'](),_0x58308a['fillStyle']=ColorUtils['floatArray2CssColor'](this['lineColor']),_0x58308a['beginPath'](),_0x58308a['moveTo'](_0x2316a8['x'],_0x2316a8['y']),_0x58308a['lineTo'](_0x4f9bea['x'],_0x4f9bea['y']),_0x58308a['lineTo'](_0x449fb3['x'],_0x449fb3['y']),_0x58308a['closePath'](),_0x58308a['fill'](),_0x58308a['restore']();}['isPointInPath'](_0x141079){return GeometryUtils['isPointOnLineSegments'](_0x141079,this['points'],this['tolerance']);}['getClassType'](){return 'ArrowMarkup';}}CanvasRender['_registerDrawableClass'](ArrowMarkup);
|
|
139
|
+
|
|
140
|
+
const tempVec2$2=new THREE['Vector2'](),tempVec3$1=new THREE['Vector3']();class CircleMarkup extends BaseMarkup{constructor(_0x41d29f,_0xe5c40a){super(_0x41d29f),this['radius']=0x1,this['type']=MarkupType['Circle'],this['update'](_0xe5c40a);}['getVertexes'](){const _0x49a3b7=this['points'][0x0],_0x1c113f=this['radius']*this['tolerance'];return [new THREE['Vector3'](_0x49a3b7['x']-_0x1c113f,_0x49a3b7['y']-_0x1c113f,_0x49a3b7['z']),new THREE['Vector3'](_0x49a3b7['x']+_0x1c113f,_0x49a3b7['y']-_0x1c113f,_0x49a3b7['z']),new THREE['Vector3'](_0x49a3b7['x']+_0x1c113f,_0x49a3b7['y']+_0x1c113f,_0x49a3b7['z']),new THREE['Vector3'](_0x49a3b7['x']-_0x1c113f,_0x49a3b7['y']+_0x1c113f,_0x49a3b7['z'])];}['draw'](_0xfdced5,_0x2e530c){const [_0x481c7d,_0x40dd1c]=this['points']['map'](_0x18a5c9=>this['transToScreenCoord'](_0x18a5c9,_0x2e530c));this['radius']=tempVec2$2['subVectors'](_0x40dd1c,_0x481c7d)['length'](),_0xfdced5['save'](),_0xfdced5['lineWidth']=this['lineWidth'],_0xfdced5['strokeStyle']=ColorUtils['floatArray2CssColor'](this['lineColor']),_0xfdced5['fillStyle']=ColorUtils['floatArray2CssColor'](this['fillColor']),_0xfdced5['beginPath'](),_0xfdced5['arc'](_0x481c7d['x'],_0x481c7d['y'],this['radius'],0x0,Math['PI']*0x2),_0xfdced5['closePath'](),_0xfdced5['stroke'](),_0xfdced5['restore']();}['isPointInPath'](_0x283c53){const [_0x17cdcd,_0xf6b370]=this['points'],_0x426a59=tempVec3$1['subVectors'](_0x17cdcd,_0xf6b370)['length']();return Math['abs'](_0x283c53['distanceTo'](_0x17cdcd)-_0x426a59)<=this['tolerance']*0x2;}['getClassType'](){return 'CircleMarkup';}}CanvasRender['_registerDrawableClass'](CircleMarkup);
|
|
141
|
+
|
|
142
|
+
class CloudLineMarkup extends BaseMarkup{constructor(_0x289f2a,_0x3761f8){super(_0x289f2a),this['type']=MarkupType['CloudLine'],this['update'](_0x3761f8);}['draw'](_0x419907,_0x379052){const _0x50d7b6=this['points'],_0x598677=[];_0x419907['save'](),_0x419907['lineWidth']=this['lineWidth'],_0x419907['strokeStyle']=ColorUtils['floatArray2CssColor'](this['lineColor']),_0x419907['fillStyle']=ColorUtils['floatArray2CssColor'](this['fillColor']),_0x419907['beginPath']();for(let _0x2cca4f=0x0;_0x2cca4f<_0x50d7b6['length']-0x1;_0x2cca4f++){const _0x17e879=this['transToScreenCoord'](_0x50d7b6[_0x2cca4f],_0x379052),_0x41f614=this['transToScreenCoord'](_0x50d7b6[_0x2cca4f+0x1],_0x379052),_0x5ccd42=CloudLineMarkup['getControlPointByTwoPoints'](_0x17e879,_0x41f614);_0x2cca4f===0x0&&_0x419907['moveTo'](_0x17e879['x'],_0x17e879['y']),_0x419907['quadraticCurveTo'](_0x5ccd42['x'],_0x5ccd42['y'],_0x41f614['x'],_0x41f614['y']),_0x598677['push'](_0x50d7b6[_0x2cca4f],_0x50d7b6[_0x2cca4f+0x1],CoordinateUtils['screen2World'](_0x5ccd42,_0x379052,this['ctx']['canvas']));}_0x419907['stroke'](),_0x419907['restore']();}static['getControlPointByTwoPoints'](_0x5506a1,_0x446ad2){const _0x334c70=new THREE['Vector2']()['subVectors'](_0x446ad2,_0x5506a1),_0x72c93d=_0x334c70['angle'](),_0x494b7e=_0x334c70['length'](),_0x2fcaf3=THREE['MathUtils']['degToRad'](0x2d),_0x20ecd8=_0x494b7e/0x2/Math['cos'](_0x2fcaf3);return new THREE['Vector2'](_0x5506a1['x']+_0x20ecd8*Math['cos'](_0x2fcaf3-_0x72c93d),_0x5506a1['y']-_0x20ecd8*Math['sin'](_0x2fcaf3-_0x72c93d));}['getClassType'](){return 'CloudLineMarkup';}}CanvasRender['_registerDrawableClass'](CloudLineMarkup);
|
|
143
|
+
|
|
144
|
+
class CloudRectMarkup extends BaseMarkup{constructor(_0x911603,_0x4ea848){super(_0x911603),this['type']=MarkupType['CloudLineRectangle'],this['update'](_0x4ea848);}['draw'](_0x501b62,_0x282fa9){_0x501b62['save'](),_0x501b62['lineWidth']=this['lineWidth'],_0x501b62['strokeStyle']=ColorUtils['floatArray2CssColor'](this['lineColor']),_0x501b62['fillStyle']=ColorUtils['floatArray2CssColor'](this['fillColor']),_0x501b62['beginPath']();const _0x344ae4=this['getVertexes']();_0x344ae4['push'](_0x344ae4[0x0]);let _0x267566;const _0x543668=[],_0xc8ce2e=new THREE['Vector3']();for(let _0x1b63dc=0x0;_0x1b63dc<_0x344ae4['length']-0x1;_0x1b63dc++){const _0xe5c7a=_0x344ae4[_0x1b63dc],_0x3887fb=_0x344ae4[_0x1b63dc+0x1];_0xc8ce2e['subVectors'](_0x3887fb,_0xe5c7a);!_0x267566&&(_0x267566=_0xc8ce2e['length']()/0xa);const _0x223141=_0xc8ce2e['length'](),_0x37f734=_0xc8ce2e['normalize'](),_0x3adadc=Math['round'](_0x223141/_0x267566);for(let _0x1d37c4=0x0;_0x1d37c4<_0x3adadc;_0x1d37c4++){_0x543668['push'](_0xe5c7a['clone']()['add'](_0x37f734['clone']()['multiplyScalar'](_0x267566*_0x1d37c4)));}}_0x543668['push'](_0x543668[0x0]),this['vertexes']=[];for(let _0x271595=0x0;_0x271595<_0x543668['length']-0x1;_0x271595++){const _0xae0f67=_0x543668[_0x271595],_0x18e1ef=_0x543668[_0x271595+0x1],_0x18bc90=this['transToScreenCoord'](_0xae0f67,_0x282fa9),_0x58ea04=this['transToScreenCoord'](_0x18e1ef,_0x282fa9),_0x4f1b1b=CloudLineMarkup['getControlPointByTwoPoints'](_0x18bc90,_0x58ea04);this['vertexes']['push'](_0xae0f67,_0x18e1ef,CoordinateUtils['screen2World'](_0x4f1b1b,_0x282fa9,this['ctx']['canvas'])),_0x271595===0x0&&_0x501b62['moveTo'](_0x18bc90['x'],_0x18bc90['y']),_0x501b62['quadraticCurveTo'](_0x4f1b1b['x'],_0x4f1b1b['y'],_0x58ea04['x'],_0x58ea04['y']);}_0x501b62['closePath'](),_0x501b62['stroke'](),_0x501b62['restore']();}['isPointInPath'](_0x1a47e6){const _0x5d0c9a=this['getVertexes'](),_0xffb870=[];for(let _0xe67644=0x0;_0xe67644<_0x5d0c9a['length'];_0xe67644++){const _0x2733f2=_0x5d0c9a[_0xe67644],_0x1a5761=_0x5d0c9a[_0xe67644+0x1]||_0x5d0c9a[0x0];_0xffb870['push'](_0x2733f2,_0x1a5761);}return GeometryUtils['isPointOnLineSegments'](_0x1a47e6,_0xffb870,this['tolerance']*0x3);}['getClassType'](){return 'CloudRectMarkup';}}CanvasRender['_registerDrawableClass'](CloudRectMarkup);
|
|
145
|
+
|
|
146
|
+
class DotMarkup extends BaseMarkup{constructor(_0x9873e2,_0x22e4b5){super(_0x9873e2),this['radius']=0x8,this['update'](_0x22e4b5);}['getVertexes'](){const _0x58ba99=this['points'][0x0],_0x514137=this['radius']*0x2*this['tolerance'],_0x4f8f51=this['radius']*0x2*this['tolerance'];return [new THREE['Vector3'](_0x58ba99['x']-_0x514137/0x2,_0x58ba99['y']+_0x4f8f51/0x2,_0x58ba99['z']),new THREE['Vector3'](_0x58ba99['x']+_0x514137/0x2,_0x58ba99['y']+_0x4f8f51/0x2,_0x58ba99['z']),new THREE['Vector3'](_0x58ba99['x']+_0x514137/0x2,_0x58ba99['y']-_0x4f8f51/0x2,_0x58ba99['z']),new THREE['Vector3'](_0x58ba99['x']-_0x514137/0x2,_0x58ba99['y']-_0x4f8f51/0x2,_0x58ba99['z'])];}['draw'](_0x1da29f,_0xe087a4){const _0x141ac7=this['transToScreenCoord'](this['points'][0x0],_0xe087a4);this['width']=this['radius']*0x2*this['tolerance'],this['height']=this['radius']*0x2*this['tolerance'],this['x']=this['points'][0x0]['x']-this['radius']*this['tolerance'],this['y']=this['points'][0x0]['y']+this['radius']*this['tolerance'],_0x1da29f['save'](),_0x1da29f['lineWidth']=this['lineWidth'],_0x1da29f['strokeStyle']=ColorUtils['floatArray2CssColor'](this['lineColor']),_0x1da29f['fillStyle']=ColorUtils['floatArray2CssColor'](this['fillColor']),_0x1da29f['beginPath'](),_0x1da29f['arc'](_0x141ac7['x'],_0x141ac7['y'],this['radius'],0x0,Math['PI']*0x2),_0x1da29f['closePath'](),_0x1da29f['fill'](),_0x1da29f['stroke'](),_0x1da29f['restore']();}['getClassType'](){return 'DotMarkup';}}CanvasRender['_registerDrawableClass'](DotMarkup);
|
|
147
|
+
|
|
148
|
+
class EllipseMarkup extends BaseMarkup{constructor(_0x5a76ef,_0x22b90c){super(_0x5a76ef),this['radiusX']=0x1,this['radiusY']=0x1,this['type']=MarkupType['Ellipse'],this['update'](_0x22b90c);}['draw'](_0x5c3ae4,_0x20176f){const [_0xb5b63f,_0x3e4047]=this['points']['map'](_0x586ad5=>this['transToScreenCoord'](_0x586ad5,_0x20176f)),_0x924ca7=new THREE['Vector2']()['lerpVectors'](_0xb5b63f,_0x3e4047,0.5);this['radiusX']=Math['abs'](_0x3e4047['x']-_0xb5b63f['x'])/0x2,this['radiusY']=Math['abs'](_0x3e4047['y']-_0xb5b63f['y'])/0x2,_0x5c3ae4['save'](),_0x5c3ae4['lineWidth']=this['lineWidth'],_0x5c3ae4['strokeStyle']=ColorUtils['floatArray2CssColor'](this['lineColor']),_0x5c3ae4['fillStyle']=ColorUtils['floatArray2CssColor'](this['fillColor']),_0x5c3ae4['beginPath'](),_0x5c3ae4['ellipse'](_0x924ca7['x'],_0x924ca7['y'],this['radiusX'],this['radiusY'],0x0,0x0,Math['PI']*0x2),_0x5c3ae4['closePath'](),_0x5c3ae4['stroke'](),_0x5c3ae4['restore']();}['isPointInPath'](_0x4d752a){const [_0x4db735,_0x36cd43]=this['points'],_0xbca1f5=new THREE['Vector3']()['lerpVectors'](_0x4db735,_0x36cd43,0.5),_0x1c9194=Math['pow'](_0x4d752a['x']-_0xbca1f5['x'],0x2),_0x48f559=Math['pow'](_0x4d752a['y']-_0xbca1f5['y'],0x2),_0x4e30bb=0x2*this['tolerance'],_0x23bc93=Math['abs'](_0x36cd43['x']-_0x4db735['x'])/0x2-_0x4e30bb,_0x209a06=Math['abs'](_0x36cd43['y']-_0x4db735['y'])/0x2-_0x4e30bb,_0x457493=_0x1c9194/(_0x23bc93*_0x23bc93),_0x16dec7=_0x48f559/(_0x209a06*_0x209a06),_0x339afc=Math['abs'](_0x36cd43['x']-_0x4db735['x'])/0x2+_0x4e30bb,_0x5e82a7=Math['abs'](_0x36cd43['y']-_0x4db735['y'])/0x2+_0x4e30bb,_0x1d587d=_0x1c9194/(_0x339afc*_0x339afc),_0x573ade=_0x48f559/(_0x5e82a7*_0x5e82a7);return _0x457493+_0x16dec7>=0x1&&_0x1d587d+_0x573ade<=0x1;}['getClassType'](){return 'EllipseMarkup';}}CanvasRender['_registerDrawableClass'](EllipseMarkup);
|
|
149
|
+
|
|
150
|
+
var TextMarkupEvent;(function(_0x38bbab){_0x38bbab['EnterEditing']='enterediting',_0x38bbab['ExitEditing']='exitediting';}(TextMarkupEvent||(TextMarkupEvent={})));class TextMarkup extends BaseMarkup{constructor(_0x20050f,_0x1d7d86,_0x3d2a7c){super(_0x20050f),this['text']='',this['fontSize']=0xc,this['type']=MarkupType['Text'],this['padding']=0x12c,this['inputStatus']='CHAR_TYPING',this['isEditing']=![],this['handleClick']=()=>{},this['handleKeydown']=_0xb8ed9a=>{if(!this['textInput'])return;if(_0xb8ed9a['key']==='Enter'){const _0xb97b85=parseInt(this['textInput']['style']['height']);this['textInput']['style']['height']=Math['round'](_0xb97b85+this['fontSize']/this['tolerance'])+'px';}else _0xb8ed9a['code']==='Escape'&&this['exitEditing']();},this['handleInput']=()=>{var _0x2cf94a;if(!this['textInput']||!this['manager']||this['inputStatus']==='CHINESE_TYPING')return;const _0x20c77e=this['textInput']['value'],_0x7ed56e=((_0x2cf94a=this['manager']['overlayRender'])===null||_0x2cf94a===void 0x0?void 0x0:_0x2cf94a['measureTextLength'](_0x20c77e,this['fontSize']/this['tolerance']+'px\x20Arial'))||0x0;_0x7ed56e>TextMarkup['DEFAULT_INPUT_WIDTH']&&(this['textInput']['style']['width']=Math['round'](_0x7ed56e+this['padding']/this['tolerance']*0x2)+'px'),this['inputStatus']='CHAR_TYPING',this['text']=_0x20c77e;},this['handleCompositionStart']=()=>{this['inputStatus']='CHINESE_TYPING';},this['handleCompositionEnd']=()=>{var _0x5dee61;if(!this['textInput']||!this['manager']||this['inputStatus']!=='CHINESE_TYPING')return;const _0x816831=this['textInput']['value'],_0x48429e=((_0x5dee61=this['manager']['overlayRender'])===null||_0x5dee61===void 0x0?void 0x0:_0x5dee61['measureTextLength'](_0x816831,this['fontSize']/this['tolerance']+'px\x20Arial'))||0x0;_0x48429e>TextMarkup['DEFAULT_INPUT_WIDTH']&&(this['textInput']['style']['width']=Math['round'](_0x48429e+this['padding']/this['tolerance']*0x2)+'px'),this['text']=_0x816831,this['inputStatus']='CHAR_TYPING';},this['handleBlur']=()=>{this['exitEditing']();},this['handleFoucs']=()=>{},this['update'](_0x1d7d86),this['text']=_0x3d2a7c;}['draw'](_0x800f5e,_0x36ae76){!this['isEditing']&&this['drawText'](_0x800f5e,_0x36ae76,this['text']);}['drawText'](_0x47c60c,_0x47114a,_0x10196a){const _0x371011=this['transToScreenCoord'](new THREE['Vector3'](this['x'],this['y'],0x0),_0x47114a),_0x388e0b=_0x10196a['split']('\x0a'),_0x213663=this['fontSize']/this['tolerance'];let _0x174620=0x0;_0x47c60c['save'](),_0x47c60c['lineWidth']=this['lineWidth'],_0x47c60c['strokeStyle']=ColorUtils['floatArray2CssColor'](this['lineColor']),_0x47c60c['fillStyle']=ColorUtils['floatArray2CssColor'](this['lineColor']),_0x47c60c['textAlign']='left',_0x47c60c['textBaseline']='top',_0x47c60c['font']=_0x213663+'px\x20Arial';for(let _0x3c4aad=0x0;_0x3c4aad<_0x388e0b['length'];_0x3c4aad++){const _0x13e330=_0x388e0b[_0x3c4aad],_0x3fb402=_0x47c60c['measureText'](_0x13e330)['width'];_0x3fb402>_0x174620&&(_0x174620=_0x3fb402);}const _0x18d69d=this['padding']/this['tolerance'],_0x14b88e=new THREE['Vector2'](_0x371011['x'],_0x371011['y']);for(let _0x43db9d=0x0;_0x43db9d<_0x388e0b['length'];_0x43db9d++){const _0x4d57d1=_0x388e0b[_0x43db9d];_0x47c60c['fillText'](_0x4d57d1,_0x14b88e['x']+_0x18d69d,_0x14b88e['y']+_0x18d69d+_0x43db9d*_0x213663,_0x174620+_0x18d69d*0x2);}_0x47c60c['strokeRect'](_0x14b88e['x'],_0x14b88e['y'],_0x174620+_0x18d69d*0x2,_0x388e0b['length']*_0x213663+_0x18d69d*0x2),_0x47c60c['restore'](),this['width']=(_0x174620+_0x18d69d*0x2)*this['tolerance'],this['height']=(_0x388e0b['length']*_0x213663+_0x18d69d*0x2)*this['tolerance'];}['setFontSize'](_0xea7839){this['fontSize']=_0xea7839,this['padding']=_0xea7839/0x2;}['update'](_0x1dfe07){const _0x45bb10=_0x1dfe07[0x0];return this['x']=_0x45bb10['x'],this['y']=_0x45bb10['y'],this['points']=[_0x45bb10],this;}['getVertexes'](){return [new THREE['Vector3'](this['x'],this['y'],0x0),new THREE['Vector3'](this['x']+this['width'],this['y'],0x0),new THREE['Vector3'](this['x']+this['width'],this['y']-this['height'],0x0),new THREE['Vector3'](this['x'],this['y']-this['height'],0x0)];}['setData'](_0x47e5bd){super['setData'](_0x47e5bd),this['text']=_0x47e5bd['text']||'',this['setFontSize'](_0x47e5bd['fontSize']||0xc),this['padding']=_0x47e5bd['fontSize']/0x2;}['updateText'](_0x558d57){this['text']=_0x558d57;}['getData'](){return {'id':this['id'],'points':this['points']['map'](_0x509f43=>[_0x509f43['x'],_0x509f43['y']]),'text':this['text'],'lineWidth':this['lineWidth'],'lineColor':this['lineColor'],'fillColor':this['fillColor'],'fontSize':this['fontSize'],'type':this['getClassType']()};}['getClassType'](){return 'TextMarkup';}['addInput'](_0xc384fd,_0x26a662,_0x17ef85){var _0xa99a07;!this['textInput']&&(this['textInput']=document['createElement']('textarea'),this['textInput']['style']['cssText']='\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20position:\x20absolute;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20border:\x20'+this['lineWidth']+'px\x20solid\x20'+ColorUtils['floatArray2CssColor'](this['lineColor'])+';\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20background:\x20transparent;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20outline:\x20none;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20resize:\x20none;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20overflow:\x20hidden;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20z-index:\x201000;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20box-sizing:\x20content-box;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20display:\x20inline-block;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20padding:\x20'+this['padding']/this['tolerance']+'px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20whiteSpace:\x20\x27nowrap\x27;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20color:\x20'+this['lineColor'],this['textInput']['style']['display']='inline-block',(_0xa99a07=_0xc384fd['viewerCanvas']['parentElement'])===null||_0xa99a07===void 0x0?void 0x0:_0xa99a07['appendChild'](this['textInput']),this['addInputEvents']()),this['manager']=_0xc384fd,this['enterEditing'](),this['textInput']['style']['left']=_0x26a662+'px',this['textInput']['style']['top']=_0x17ef85+'px',this['textInput']['style']['width']=TextMarkup['DEFAULT_INPUT_WIDTH']+'px',this['textInput']['style']['height']=this['fontSize']/this['tolerance']+'px',this['textInput']['style']['lineHeight']=this['fontSize']/this['tolerance']+'px',this['textInput']['style']['fontSize']=this['fontSize']/this['tolerance']+'px',this['textInput']['style']['color']=ColorUtils['floatArray2CssColor'](this['lineColor']);}['addInputEvents'](){var _0x3e50bf,_0x344860,_0x2695e4,_0x621a05,_0x261afe,_0x121275,_0xa0adb7;(_0x3e50bf=this['textInput'])===null||_0x3e50bf===void 0x0?void 0x0:_0x3e50bf['addEventListener']('click',this['handleClick']),(_0x344860=this['textInput'])===null||_0x344860===void 0x0?void 0x0:_0x344860['addEventListener']('blur',this['handleBlur']),(_0x2695e4=this['textInput'])===null||_0x2695e4===void 0x0?void 0x0:_0x2695e4['addEventListener']('foucs',this['handleFoucs']),(_0x621a05=this['textInput'])===null||_0x621a05===void 0x0?void 0x0:_0x621a05['addEventListener']('keydown',this['handleKeydown']),(_0x261afe=this['textInput'])===null||_0x261afe===void 0x0?void 0x0:_0x261afe['addEventListener']('input',this['handleInput']),(_0x121275=this['textInput'])===null||_0x121275===void 0x0?void 0x0:_0x121275['addEventListener']('compositionstart',this['handleCompositionStart']),(_0xa0adb7=this['textInput'])===null||_0xa0adb7===void 0x0?void 0x0:_0xa0adb7['addEventListener']('compositionend',this['handleCompositionEnd']);}['enterEditing'](){if(!this['textInput'])return;this['textInput']['value']=this['text'],this['textInput']['focus'](),this['isEditing']=!![],this['dispatchEvent'](TextMarkupEvent['EnterEditing']);}['exitEditing'](){var _0x5c5962,_0x8edd8c,_0x416990,_0x3543f,_0x52b474,_0x457c19,_0xc5752,_0x32e020;(_0x5c5962=this['textInput'])===null||_0x5c5962===void 0x0?void 0x0:_0x5c5962['removeEventListener']('click',this['handleClick']),(_0x8edd8c=this['textInput'])===null||_0x8edd8c===void 0x0?void 0x0:_0x8edd8c['removeEventListener']('blur',this['handleBlur']),(_0x416990=this['textInput'])===null||_0x416990===void 0x0?void 0x0:_0x416990['removeEventListener']('foucs',this['handleFoucs']),(_0x3543f=this['textInput'])===null||_0x3543f===void 0x0?void 0x0:_0x3543f['removeEventListener']('keydown',this['handleKeydown']),(_0x52b474=this['textInput'])===null||_0x52b474===void 0x0?void 0x0:_0x52b474['removeEventListener']('input',this['handleInput']),(_0x457c19=this['textInput'])===null||_0x457c19===void 0x0?void 0x0:_0x457c19['removeEventListener']('compositionstart',this['handleCompositionStart']),(_0xc5752=this['textInput'])===null||_0xc5752===void 0x0?void 0x0:_0xc5752['removeEventListener']('compositionend',this['handleCompositionEnd']),(_0x32e020=this['textInput'])===null||_0x32e020===void 0x0?void 0x0:_0x32e020['remove'](),this['textInput']=undefined,this['isEditing']=![],this['dispatchEvent'](TextMarkupEvent['ExitEditing']);}}TextMarkup['DEFAULT_INPUT_WIDTH']=0x32,CanvasRender['_registerDrawableClass'](TextMarkup);
|
|
151
|
+
|
|
152
|
+
const tempVec2$1=new THREE['Vector2'](),xAxis$1=new THREE['Vector2'](0x1,0x0),yAxis$1=new THREE['Vector2'](0x0,-0x1);class LeaderLineMarkup extends TextMarkup{constructor(_0x4cd2bb,_0x1032f6,_0x5b6966){super(_0x4cd2bb,_0x1032f6,_0x5b6966),this['type']=MarkupType['LeaderLine'],this['text']='LeaderLine',this['fontSize']=0xc,this['textBounds']=new THREE['Box3'](),this['handleInput']=()=>{if(!this['textInput']||!this['manager']||this['inputStatus']==='CHINESE_TYPING')return;this['text']=this['textInput']['value'],this['calcuTextInputPositionByText'](this['text']),this['inputStatus']='CHAR_TYPING';},this['handleCompositionEnd']=()=>{if(!this['textInput']||!this['manager']||this['inputStatus']!=='CHINESE_TYPING')return;this['text']=this['textInput']['value'],this['calcuTextInputPositionByText'](this['text']),this['inputStatus']='CHAR_TYPING';};}['draw'](_0x281f24,_0x3acb4b){if(this['points']['length']<0x2)return;const _0x534ad1=this['points']['map'](_0x6c2e8e=>this['transToScreenCoord'](_0x6c2e8e,_0x3acb4b)),_0x56130f=0xa,[_0x3ca0c7,_0x3d2a3f]=this['points'],_0x6ed7ea=new THREE['Vector3']()['subVectors'](_0x3ca0c7,_0x3d2a3f)['length']()/0xa/this['tolerance'];this['drawArrowLine'](_0x281f24,_0x534ad1,_0x6ed7ea),this['drawArrowHead'](_0x281f24,_0x534ad1[0x1],_0x534ad1[0x0],_0x56130f,_0x6ed7ea),!this['isEditing']&&this['text']['length']>0x0&&this['drawText'](_0x281f24,_0x3acb4b,this['text']);}['drawArrowHead'](_0x3a76f1,_0x1353d4,_0x206bcf,_0x15c69f,_0x15a2cc){const _0xc841a7=Math['atan2'](_0x1353d4['y']-_0x206bcf['y'],_0x1353d4['x']-_0x206bcf['x'])*0xb4/Math['PI'],_0x9a77fd=(_0xc841a7+_0x15c69f)*Math['PI']/0xb4,_0x23af5b=(_0xc841a7-_0x15c69f)*Math['PI']/0xb4,_0x2658fd=_0x15a2cc*Math['cos'](_0x9a77fd),_0x4e3a70=_0x15a2cc*Math['sin'](_0x9a77fd),_0x4e056b=_0x15a2cc*Math['cos'](_0x23af5b),_0x576fb1=_0x15a2cc*Math['sin'](_0x23af5b),_0x264b46=new THREE['Vector2'](_0x206bcf['x']+_0x2658fd,_0x206bcf['y']+_0x4e3a70),_0xf74435=new THREE['Vector2'](_0x206bcf['x']+_0x4e056b,_0x206bcf['y']+_0x576fb1);_0x3a76f1['save'](),_0x3a76f1['fillStyle']=ColorUtils['floatArray2CssColor'](this['lineColor']),_0x3a76f1['beginPath'](),_0x3a76f1['moveTo'](_0x206bcf['x'],_0x206bcf['y']),_0x3a76f1['lineTo'](_0x264b46['x'],_0x264b46['y']),_0x3a76f1['lineTo'](_0xf74435['x'],_0xf74435['y']),_0x3a76f1['closePath'](),_0x3a76f1['fill'](),_0x3a76f1['restore']();}['drawArrowLine'](_0x3ae712,_0x4ebdaa,_0x626931){_0x3ae712['save'](),_0x3ae712['lineWidth']=this['lineWidth'],_0x3ae712['strokeStyle']=ColorUtils['floatArray2CssColor'](this['lineColor']);const [_0xbe6d2a,_0x56d033]=_0x4ebdaa,_0x545e0f=new THREE['Vector2']()['subVectors'](_0xbe6d2a,_0x56d033)['normalize']();_0x3ae712['beginPath'](),_0x3ae712['moveTo'](_0x56d033['x'],_0x56d033['y']);const _0x190853=_0xbe6d2a['clone']()['sub'](_0x545e0f['multiplyScalar'](_0x626931));_0x3ae712['lineTo'](_0x190853['x'],_0x190853['y']),_0x3ae712['closePath'](),_0x3ae712['stroke'](),_0x3ae712['restore']();}['drawText'](_0x44bb50,_0x43a8dc,_0x474240){const [_0x1f71de,_0x2b89c8]=this['points']['map'](_0x122f91=>this['transToScreenCoord'](_0x122f91,_0x43a8dc)),_0x1c59f7=new THREE['Vector2']()['subVectors'](_0x2b89c8,_0x1f71de)['normalize'](),_0x4176e6=_0x1c59f7['cross'](yAxis$1)<0x0,_0x18b516=_0x1c59f7['cross'](xAxis$1)<0x0,_0x23f81b=_0x474240['split']('\x0a'),_0x170ced=this['fontSize']/this['tolerance'];let _0x117666=0x0;_0x44bb50['save'](),_0x44bb50['lineWidth']=this['lineWidth'],_0x44bb50['strokeStyle']=ColorUtils['floatArray2CssColor'](this['lineColor']),_0x44bb50['fillStyle']=ColorUtils['floatArray2CssColor'](this['lineColor']),_0x44bb50['textAlign']='left',_0x44bb50['textBaseline']='top',_0x44bb50['font']=_0x170ced+'px\x20Arial';for(let _0x447d50=0x0;_0x447d50<_0x23f81b['length'];_0x447d50++){const _0x47e925=_0x23f81b[_0x447d50],_0x1e4a3c=_0x44bb50['measureText'](_0x47e925)['width'];_0x1e4a3c>_0x117666&&(_0x117666=_0x1e4a3c);}const _0x356a63=this['padding']/this['tolerance'],_0x27e0cb=_0x356a63+_0x170ced/0x2,_0x493607=_0x23f81b['length']*_0x170ced+_0x356a63*0x2,_0x3bc52b=new THREE['Vector2'](_0x4176e6?_0x2b89c8['x']:_0x2b89c8['x']-_0x117666-_0x356a63*0x2,_0x18b516?_0x2b89c8['y']-_0x27e0cb:_0x2b89c8['y']-_0x493607+(_0x493607-_0x27e0cb));for(let _0xc9c5b=0x0;_0xc9c5b<_0x23f81b['length'];_0xc9c5b++){const _0x5c12b3=_0x23f81b[_0xc9c5b];_0x44bb50['fillText'](_0x5c12b3,_0x3bc52b['x']+_0x356a63,_0x3bc52b['y']+_0x356a63+_0xc9c5b*_0x170ced,_0x117666+_0x356a63*0x2);}_0x44bb50['strokeRect'](_0x3bc52b['x'],_0x3bc52b['y'],_0x117666+_0x356a63*0x2,_0x23f81b['length']*_0x170ced+_0x356a63*0x2),_0x44bb50['restore']();const _0x45e419=CoordinateUtils['screen2World'](tempVec2$1['set'](_0x3bc52b['x'],_0x3bc52b['y']),_0x43a8dc,this['ctx']['canvas']);_0x45e419['z']=0x0;const _0x4baae7=CoordinateUtils['screen2World'](tempVec2$1['set'](_0x3bc52b['x']+_0x117666+_0x356a63*0x2,_0x3bc52b['y']+_0x493607),_0x43a8dc,this['ctx']['canvas']);_0x4baae7['z']=0x0,this['textBounds']['setFromPoints']([_0x45e419,_0x4baae7]);}['getVertexes'](){return this['points'];}['update'](_0x2aa9f3){const [_0x53edf7,_0x2d101b]=_0x2aa9f3;return this['points']=_0x2aa9f3,this['x']=Math['min'](_0x53edf7['x'],_0x2d101b['x']),this['y']=Math['max'](_0x53edf7['y'],_0x2d101b['y']),this['width']=Math['abs'](_0x2d101b['x']-_0x53edf7['x']),this['height']=Math['abs'](_0x2d101b['y']-_0x53edf7['y']),this;}['getData'](){return {'id':this['id'],'points':this['points']['map'](_0x4d2084=>[_0x4d2084['x'],_0x4d2084['y']]),'text':this['text'],'lineWidth':this['lineWidth'],'lineColor':this['lineColor'],'fillColor':this['fillColor'],'fontSize':this['fontSize'],'type':this['getClassType']()};}['isPointInPath'](_0x10e4ae){return GeometryUtils['isPointOnLineSegments'](_0x10e4ae,this['points'],this['tolerance'])||this['textBounds']['containsPoint'](_0x10e4ae);}['updateText'](_0xf7f8e1){this['text']=_0xf7f8e1;}['getClassType'](){return 'LeaderLineMarkup';}['addInput'](_0x4f7a32,_0x5c3d7d,_0x6ee04){const [_0x4df2fe,_0x5cfbdd]=this['points']['map'](_0x503f7b=>CoordinateUtils['world2Screen'](_0x503f7b,_0x4f7a32['camera'],_0x4f7a32['viewerCanvas'])),_0x4474d6=new THREE['Vector2']()['subVectors'](_0x5cfbdd,_0x4df2fe)['normalize'](),_0x1722b5=_0x4474d6['cross'](yAxis$1)<0x0,_0x263064=_0x4474d6['cross'](xAxis$1)<0x0,_0xa554a2=this['fontSize']/this['tolerance'],_0x5790e7=this['padding']/this['tolerance'],_0x611eae=_0x5790e7+_0xa554a2/0x2,_0x2d3b7a=TextMarkup['DEFAULT_INPUT_WIDTH'],_0x1fb975=_0xa554a2;super['addInput'](_0x4f7a32,_0x1722b5?_0x5c3d7d:_0x5c3d7d-_0x2d3b7a-_0x5790e7*0x2,_0x263064?_0x6ee04-_0x611eae:_0x6ee04-_0x1fb975+(_0x1fb975-_0x611eae));}['calcuTextInputPositionByText'](_0x322833){var _0xc0b650;if(!this['textInput']||!this['manager'])return;const _0x7234a5=((_0xc0b650=this['manager']['overlayRender'])===null||_0xc0b650===void 0x0?void 0x0:_0xc0b650['measureTextLength'](_0x322833,this['fontSize']/this['tolerance']+'px\x20Arial'))||0x0;if(_0x7234a5>TextMarkup['DEFAULT_INPUT_WIDTH']){const _0x278ea2=this['points'][0x1],_0x2ba392=CoordinateUtils['world2Screen'](this['points'][0x0],this['manager']['camera'],this['manager']['viewerCanvas']),_0x2ca05f=CoordinateUtils['world2Screen'](_0x278ea2,this['manager']['camera'],this['manager']['viewerCanvas']),_0x10c321=_0x2ca05f['clone']()['sub'](_0x2ba392)['normalize'](),_0x29618e=_0x10c321['cross'](new THREE['Vector2'](0x0,-0x1))<0x0,_0x3228f4=CoordinateUtils['world2Screen'](_0x278ea2,this['manager']['camera'],this['manager']['viewerCanvas']);!_0x29618e&&(this['textInput']['style']['left']=_0x3228f4['x']-_0x7234a5-this['padding']/this['tolerance']*0x2+'px'),this['textInput']['style']['width']=Math['round'](_0x7234a5)+'px';}}}CanvasRender['_registerDrawableClass'](LeaderLineMarkup);
|
|
153
|
+
|
|
154
|
+
class PolylineMarkup extends BaseMarkup{constructor(_0x363ed9,_0x4281b5){super(_0x363ed9),this['type']=MarkupType['PolyLine'],this['update'](_0x4281b5);}['draw'](_0x1cd777,_0x28e0a7){_0x1cd777['save'](),_0x1cd777['lineWidth']=this['lineWidth'],_0x1cd777['strokeStyle']=ColorUtils['floatArray2CssColor'](this['lineColor']),_0x1cd777['fillStyle']=ColorUtils['floatArray2CssColor'](this['fillColor']);const _0x351e37=this['points'];_0x1cd777['beginPath'](),_0x351e37['forEach']((_0x32af95,_0x7b53c9)=>{const _0x5ba46f=this['transToScreenCoord'](_0x32af95,_0x28e0a7);_0x7b53c9===0x0?_0x1cd777['moveTo'](_0x5ba46f['x'],_0x5ba46f['y']):_0x1cd777['lineTo'](_0x5ba46f['x'],_0x5ba46f['y']);}),_0x1cd777['stroke'](),_0x1cd777['restore']();}['isPointInPath'](_0x2391ea){const _0x3d7be3=this['points'],_0x5c7948=[];for(let _0x25af8c=0x0;_0x25af8c<_0x3d7be3['length']-0x1;_0x25af8c++){_0x5c7948['push'](_0x3d7be3[_0x25af8c],_0x3d7be3[_0x25af8c+0x1]);}return GeometryUtils['isPointOnLineSegments'](_0x2391ea,_0x5c7948,this['tolerance']*0x1);}['getClassType'](){return 'PolylineMarkup';}}CanvasRender['_registerDrawableClass'](PolylineMarkup);
|
|
155
|
+
|
|
156
|
+
class RectMarkup extends BaseMarkup{constructor(_0x2f8e70,_0x5a5cc3){super(_0x2f8e70),this['type']=MarkupType['Rectangle'],this['update'](_0x5a5cc3);}['getVertexes'](){const _0x454ec5=new THREE['Box3']()['setFromPoints'](this['points']);return [new THREE['Vector3'](_0x454ec5['min']['x'],_0x454ec5['min']['y'],0x0),new THREE['Vector3'](_0x454ec5['max']['x'],_0x454ec5['min']['y'],0x0),new THREE['Vector3'](_0x454ec5['max']['x'],_0x454ec5['max']['y'],0x0),new THREE['Vector3'](_0x454ec5['min']['x'],_0x454ec5['max']['y'],0x0)];}['draw'](_0x5600fe,_0x4a2fec){_0x5600fe['save'](),_0x5600fe['lineWidth']=this['lineWidth'],_0x5600fe['strokeStyle']=ColorUtils['floatArray2CssColor'](this['lineColor']),_0x5600fe['fillStyle']=ColorUtils['floatArray2CssColor'](this['fillColor']),_0x5600fe['beginPath']();const _0x169a7d=this['getVertexes']();_0x169a7d['forEach']((_0x427945,_0x2cf44a)=>{const _0x13d2e5=this['transToScreenCoord'](_0x427945,_0x4a2fec);_0x2cf44a===0x0?_0x5600fe['moveTo'](_0x13d2e5['x'],_0x13d2e5['y']):_0x5600fe['lineTo'](_0x13d2e5['x'],_0x13d2e5['y']);}),_0x5600fe['closePath'](),_0x5600fe['stroke'](),_0x5600fe['restore']();}['isPointInPath'](_0x5ab3fa){const _0x3ef7dd=this['getVertexes'](),_0x1f6d8b=[];for(let _0x3407f1=0x0;_0x3407f1<_0x3ef7dd['length'];_0x3407f1++){const _0x4bc482=_0x3ef7dd[_0x3407f1],_0x49421b=_0x3ef7dd[_0x3407f1+0x1]||_0x3ef7dd[0x0];_0x1f6d8b['push'](_0x4bc482,_0x49421b);}return GeometryUtils['isPointOnLineSegments'](_0x5ab3fa,_0x1f6d8b,this['tolerance']*0x2);}['getClassType'](){return 'RectMarkup';}}CanvasRender['_registerDrawableClass'](RectMarkup);
|
|
157
|
+
|
|
158
|
+
class XMarkup extends BaseMarkup{constructor(_0x1786bc,_0x29d6fe){super(_0x1786bc),this['type']=MarkupType['X'],this['update'](_0x29d6fe);}['draw'](_0x5de5ee,_0x1b2dc4){_0x5de5ee['save'](),_0x5de5ee['lineWidth']=this['lineWidth'],_0x5de5ee['strokeStyle']=ColorUtils['floatArray2CssColor'](this['lineColor']),_0x5de5ee['beginPath']();const [_0x2a2c7b,_0x157ac7,_0x4e31af,_0x6db511]=this['getVertexes']()['map'](_0x1f2471=>this['transToScreenCoord'](_0x1f2471,_0x1b2dc4));_0x5de5ee['moveTo'](_0x2a2c7b['x'],_0x2a2c7b['y']),_0x5de5ee['lineTo'](_0x4e31af['x'],_0x4e31af['y']),_0x5de5ee['moveTo'](_0x157ac7['x'],_0x157ac7['y']),_0x5de5ee['lineTo'](_0x6db511['x'],_0x6db511['y']),_0x5de5ee['closePath'](),_0x5de5ee['stroke'](),_0x5de5ee['restore']();}['isPointInPath'](_0x243dfe){const [_0x10690a,_0x5a4165,_0xb2bfbc,_0x4eab43]=this['getVertexes']();return GeometryUtils['isPointOnLineSegments'](_0x243dfe,[_0x10690a,_0xb2bfbc,_0x5a4165,_0x4eab43],0.1);}['getClassType'](){return 'XMarkup';}}CanvasRender['_registerDrawableClass'](XMarkup);
|
|
159
|
+
|
|
160
|
+
const tempBox=new THREE['Box3'](),tempVec3=new THREE['Vector3'](),tempVec2=new THREE['Vector2'](),xAxis=new THREE['Vector2'](0x1,0x0),yAxis=new THREE['Vector2'](0x0,-0x1);class CloudRectWithTextMarkup extends TextMarkup{constructor(_0x301580,_0x466169,_0x1ca2e8=''){super(_0x301580,_0x466169,_0x1ca2e8),this['type']=MarkupType['CloudRectWithText'],this['textPosition']=new THREE['Vector3'](),this['textBounds']=new THREE['Box3'](),this['text']='CloudRectWithText',this['fontSize']=0xc,this['handleClick']=()=>{var _0x5cc5b6;(_0x5cc5b6=this['textInput'])===null||_0x5cc5b6===void 0x0?void 0x0:_0x5cc5b6['blur']();},this['handleInput']=()=>{if(!this['textInput']||!this['manager']||this['inputStatus']==='CHINESE_TYPING')return;this['text']=this['textInput']['value'],this['calcInputPositionByText'](this['text']),this['inputStatus']='CHAR_TYPING';},this['handleCompositionEnd']=()=>{if(!this['textInput']||!this['manager']||this['inputStatus']!=='CHINESE_TYPING')return;this['text']=this['textInput']['value'],this['calcInputPositionByText'](this['text']),this['inputStatus']='CHAR_TYPING';};}['draw'](_0x2350d3,_0x4acf71){this['drawCloudRect'](_0x2350d3,_0x4acf71),(this['isEditing']||this['text']['length']>0x0)&&this['drawLeaderLine'](_0x2350d3,_0x4acf71),!this['isEditing']&&this['text']['length']>0x0&&this['drawText'](_0x2350d3,_0x4acf71,this['text']);}['drawCloudRect'](_0x3be745,_0x5e2ae4){_0x3be745['save'](),_0x3be745['lineWidth']=this['lineWidth'],_0x3be745['strokeStyle']=ColorUtils['floatArray2CssColor'](this['lineColor']),_0x3be745['fillStyle']=ColorUtils['floatArray2CssColor'](this['fillColor']),_0x3be745['beginPath']();const _0x219c5f=this['getCloudPoints']();_0x219c5f['push'](_0x219c5f[0x0]);let _0x2e29ac;const _0x3ff8d3=[];for(let _0x2fd965=0x0;_0x2fd965<_0x219c5f['length']-0x1;_0x2fd965++){const _0x4d9b3f=_0x219c5f[_0x2fd965],_0x11a04e=_0x219c5f[_0x2fd965+0x1],_0x229b6f=tempVec3['subVectors'](_0x11a04e,_0x4d9b3f);!_0x2e29ac&&(_0x2e29ac=_0x229b6f['length']()/0xa);const _0x3e0e51=_0x229b6f['length'](),_0x1a8944=_0x229b6f['normalize'](),_0x2292f1=Math['round'](_0x3e0e51/_0x2e29ac);for(let _0x352f43=0x0;_0x352f43<_0x2292f1;_0x352f43++){_0x3ff8d3['push'](_0x4d9b3f['clone']()['add'](_0x1a8944['clone']()['multiplyScalar'](_0x2e29ac*_0x352f43)));}}_0x3ff8d3['push'](_0x3ff8d3[0x0]),this['controlPoints']=[],this['vertexes']=[];for(let _0x1eb4b5=0x0;_0x1eb4b5<_0x3ff8d3['length']-0x1;_0x1eb4b5++){const _0x4b26af=_0x3ff8d3[_0x1eb4b5],_0x1f6060=_0x3ff8d3[_0x1eb4b5+0x1],_0x5cfe8f=this['transToScreenCoord'](_0x4b26af,_0x5e2ae4),_0x58df2a=this['transToScreenCoord'](_0x1f6060,_0x5e2ae4),_0x5f1d03=CloudLineMarkup['getControlPointByTwoPoints'](_0x5cfe8f,_0x58df2a);this['controlPoints']['push'](_0x5cfe8f,_0x58df2a),this['vertexes']['push'](_0x4b26af,_0x1f6060,CoordinateUtils['screen2World'](_0x5f1d03,_0x5e2ae4,this['ctx']['canvas'])),_0x1eb4b5===0x0&&_0x3be745['moveTo'](_0x5cfe8f['x'],_0x5cfe8f['y']),_0x3be745['quadraticCurveTo'](_0x5f1d03['x'],_0x5f1d03['y'],_0x58df2a['x'],_0x58df2a['y']);}_0x3be745['closePath'](),_0x3be745['stroke'](),_0x3be745['restore']();}['drawLeaderLine'](_0x100969,_0xaa473){if(!this['controlPoints'])return;const _0x42374f=this['transToScreenCoord'](this['textPosition'],_0xaa473);this['controlPoints']['sort']((_0x58d2ce,_0x5c9a22)=>_0x42374f['distanceTo'](_0x58d2ce)-_0x42374f['distanceTo'](_0x5c9a22));const _0x41c3de=this['controlPoints'][0x0];_0x100969['save'](),_0x100969['lineWidth']=CloudRectWithTextMarkup['LEADER_LINE_WIDTH'],_0x100969['strokeStyle']=ColorUtils['floatArray2CssColor'](this['lineColor']),_0x100969['beginPath'](),_0x100969['moveTo'](_0x41c3de['x'],_0x41c3de['y']),_0x100969['lineTo'](_0x42374f['x'],_0x42374f['y']),_0x100969['closePath'](),_0x100969['stroke'](),_0x100969['restore']();}['drawText'](_0x338933,_0x8ac763,_0x1665a2){const _0x17bfa3=this['transToScreenCoord'](this['points'][0x0],_0x8ac763),_0x3c4c2b=this['transToScreenCoord'](this['textPosition'],_0x8ac763),_0x31d579=tempVec2['subVectors'](_0x3c4c2b,_0x17bfa3)['normalize'](),_0x5d691e=_0x31d579['cross'](xAxis)<0x0,_0x2ba841=_0x31d579['cross'](yAxis)<0x0,_0x5329e7=_0x1665a2['split']('\x0a'),_0x3ba47e=this['fontSize']/this['tolerance'];let _0x53f025=0x0;_0x338933['save'](),_0x338933['lineWidth']=this['lineWidth'],_0x338933['strokeStyle']=ColorUtils['floatArray2CssColor'](this['lineColor']),_0x338933['fillStyle']=ColorUtils['floatArray2CssColor'](this['lineColor']),_0x338933['textAlign']='left',_0x338933['textBaseline']='top',_0x338933['font']=_0x3ba47e+'px\x20Arial';for(let _0x116d4d=0x0;_0x116d4d<_0x5329e7['length'];_0x116d4d++){const _0x322062=_0x5329e7[_0x116d4d],_0x300c2b=_0x338933['measureText'](_0x322062)['width'];_0x300c2b>_0x53f025&&(_0x53f025=_0x300c2b);}const _0x3d0a28=this['padding']/this['tolerance'],_0x6dd9ce=_0x3d0a28+_0x3ba47e/0x2,_0x7ea418=_0x5329e7['length']*_0x3ba47e+_0x3d0a28*0x2,_0x218fc5=new THREE['Vector2'](_0x2ba841?_0x3c4c2b['x']:_0x3c4c2b['x']-_0x53f025-_0x3d0a28*0x2,_0x5d691e?_0x3c4c2b['y']-_0x6dd9ce:_0x3c4c2b['y']-_0x7ea418+(_0x7ea418-_0x6dd9ce));for(let _0x4cbea4=0x0;_0x4cbea4<_0x5329e7['length'];_0x4cbea4++){const _0x2f7c2c=_0x5329e7[_0x4cbea4];_0x338933['fillText'](_0x2f7c2c,_0x218fc5['x']+_0x3d0a28,_0x218fc5['y']+_0x3d0a28+_0x4cbea4*_0x3ba47e,_0x53f025+_0x3d0a28*0x2);}_0x338933['strokeRect'](_0x218fc5['x'],_0x218fc5['y'],_0x53f025+_0x3d0a28*0x2,_0x5329e7['length']*_0x3ba47e+_0x3d0a28*0x2),_0x338933['restore']();const _0x3d854b=CoordinateUtils['screen2World'](tempVec2['set'](_0x218fc5['x'],_0x218fc5['y']),_0x8ac763,this['ctx']['canvas']);_0x3d854b['z']=0x0;const _0x59b217=CoordinateUtils['screen2World'](tempVec2['set'](_0x218fc5['x']+_0x53f025+_0x3d0a28*0x2,_0x218fc5['y']+_0x7ea418),_0x8ac763,this['ctx']['canvas']);_0x59b217['z']=0x0,this['textBounds']['setFromPoints']([_0x3d854b,_0x59b217]);}['translate'](_0x55a415,_0x22de7d){const _0x68e094=tempVec3['set'](_0x55a415,_0x22de7d,0x0);this['points']['forEach'](_0x2f5fc7=>_0x2f5fc7['add'](_0x68e094)),this['textPosition']['add'](_0x68e094);const [_0x58b99a,_0x1ff617]=this['points'];return this['x']=Math['min'](_0x58b99a['x'],_0x1ff617['x']),this['y']=Math['max'](_0x58b99a['y'],_0x1ff617['y']),this['width']=Math['abs'](_0x1ff617['x']-_0x58b99a['x']),this['height']=Math['abs'](_0x1ff617['y']-_0x58b99a['y']),this;}['update'](_0x186ad5){const [_0x5eda5a,_0x5859ff]=_0x186ad5;return this['points']=_0x186ad5,this['x']=Math['min'](_0x5eda5a['x'],_0x5859ff['x']),this['y']=Math['max'](_0x5eda5a['y'],_0x5859ff['y']),this['width']=Math['abs'](_0x5859ff['x']-_0x5eda5a['x']),this['height']=Math['abs'](_0x5859ff['y']-_0x5eda5a['y']),!this['textPosition']&&(this['textPosition']=new THREE['Vector3']()),this['textPosition']['set'](Math['max'](_0x5eda5a['x'],_0x5859ff['x']),Math['max'](_0x5eda5a['y'],_0x5859ff['y']),0x0),this;}['getCloudPoints'](){const _0x2d3437=new THREE['Vector3'](this['x'],this['y'],0x0),_0x179f71=new THREE['Vector3'](this['x']+this['width'],this['y'],0x0),_0x13b20b=new THREE['Vector3'](this['x']+this['width'],this['y']-this['height'],0x0),_0x549938=new THREE['Vector3'](this['x'],this['y']-this['height'],0x0);return [_0x2d3437,_0x179f71,_0x13b20b,_0x549938];}['getBounds'](){return tempBox['setFromPoints']([...this['points'],...this['vertexes']||[]]),tempBox['union'](this['textBounds']);}['getVertexes'](){const _0x9c91bd=this['getBounds'](),_0x1c376a=_0x9c91bd['min'],_0x1e7c54=_0x9c91bd['getSize'](tempVec3),_0x4000bf=new THREE['Vector3'](_0x1c376a['x'],_0x1c376a['y'],0x0),_0x7185fd=new THREE['Vector3'](_0x1c376a['x']+_0x1e7c54['x'],_0x1c376a['y'],0x0),_0xa151b0=new THREE['Vector3'](_0x1c376a['x']+_0x1e7c54['x'],_0x1c376a['y']+_0x1e7c54['y'],0x0),_0x23f236=new THREE['Vector3'](_0x1c376a['x'],_0x1c376a['y']+_0x1e7c54['y'],0x0);return [_0x4000bf,_0x7185fd,_0xa151b0,_0x23f236];}['isLeaderTextSelected'](_0x925fb1){return this['textBounds']['containsPoint'](_0x925fb1);}['translateLeaderText'](_0x4ca5cc,_0x54d9fa){const _0x11a629=new THREE['Vector3'](_0x4ca5cc,_0x54d9fa,0x0);return this['textPosition']['add'](_0x11a629),this;}['isPointInPath'](_0x2687a2){const _0x2a7349=this['getCloudPoints'](),_0x2512e0=[];for(let _0x126745=0x0;_0x126745<_0x2a7349['length'];_0x126745++){const _0x2ca3ab=_0x2a7349[_0x126745],_0x23672b=_0x2a7349[(_0x126745+0x1)%_0x2a7349['length']];_0x2512e0['push'](_0x2ca3ab,_0x23672b);}return GeometryUtils['isPointOnLineSegments'](_0x2687a2,_0x2512e0,this['tolerance']*0x3)||this['textBounds']['containsPoint'](_0x2687a2);}['setData'](_0x123ec4){super['setData'](_0x123ec4);const _0x5b059d=_0x123ec4['textPosition']||[0x0,0x0];this['textPosition']['set'](_0x5b059d[0x0],_0x5b059d[0x1],0x0);}['updateText'](_0x10a7d4){this['text']=_0x10a7d4;}['getData'](){return {'id':this['id'],'points':this['points']['map'](_0x5c61b3=>[_0x5c61b3['x'],_0x5c61b3['y']]),'lineWidth':this['lineWidth'],'lineColor':this['lineColor'],'fillColor':this['fillColor'],'fontSize':this['fontSize'],'text':this['text'],'textPosition':[this['textPosition']['x'],this['textPosition']['y']],'type':this['getClassType']()};}['getClassType'](){return 'CloudRectWithTextMarkup';}['addInput'](_0x25a2e4,_0x30d6bd,_0x5dfe7f){const _0x303e02=this['padding']/this['tolerance']+this['fontSize']/this['tolerance']/0x2;super['addInput'](_0x25a2e4,_0x30d6bd,_0x5dfe7f-_0x303e02);}['updateInputPosition'](_0x4d0a8a,_0x2a875d){var _0x37f8fb;if(!this['manager']||!this['textInput'])return;const _0x379cd4=_0x2a875d['clone']()['sub'](_0x4d0a8a)['normalize'](),_0x467fdb=_0x379cd4['cross'](new THREE['Vector2'](0x0,-0x1))<0x0,_0x2c1aa2=this['textInput']['value'],_0x41f71c=((_0x37f8fb=this['manager']['overlayRender'])===null||_0x37f8fb===void 0x0?void 0x0:_0x37f8fb['measureTextLength'](_0x2c1aa2,this['fontSize']/this['tolerance']+'px\x20Arial'))||TextMarkup['DEFAULT_INPUT_WIDTH'],_0x50800d=this['padding']/this['tolerance']+this['fontSize']/this['tolerance']/0x2;this['textInput']['style']['left']=(_0x467fdb?_0x2a875d['x']:_0x2a875d['x']-this['padding']/this['tolerance']*0x2-_0x41f71c)+'px',this['textInput']['style']['top']=_0x2a875d['y']-_0x50800d+'px',this['textPosition']['copy'](CoordinateUtils['screen2World'](_0x2a875d,this['manager']['camera'],this['manager']['viewerCanvas']));}['calcInputPositionByText'](_0x58c577){var _0x5e3a89;if(!this['textInput']||!this['manager'])return;const _0x42409d=((_0x5e3a89=this['manager']['overlayRender'])===null||_0x5e3a89===void 0x0?void 0x0:_0x5e3a89['measureTextLength'](_0x58c577,this['fontSize']/this['tolerance']+'px\x20Arial'))||0x0;if(_0x42409d>TextMarkup['DEFAULT_INPUT_WIDTH']){const _0x1902cd=CoordinateUtils['world2Screen'](this['points'][0x0],this['manager']['camera'],this['manager']['viewerCanvas']),_0xcaba31=CoordinateUtils['world2Screen'](this['textPosition'],this['manager']['camera'],this['manager']['viewerCanvas']),_0x2f13b5=_0xcaba31['clone']()['sub'](_0x1902cd)['normalize'](),_0x131428=_0x2f13b5['cross'](new THREE['Vector2'](0x0,-0x1))<0x0,_0x43c6ec=CoordinateUtils['world2Screen'](this['textPosition'],this['manager']['camera'],this['manager']['viewerCanvas']);!_0x131428&&(this['textInput']['style']['left']=_0x43c6ec['x']-_0x42409d-this['padding']/this['tolerance']*0x2+'px'),this['textInput']['style']['width']=Math['round'](_0x42409d)+'px';}}}CloudRectWithTextMarkup['LEADER_LINE_WIDTH']=0x1,CanvasRender['_registerDrawableClass'](CloudRectWithTextMarkup);
|
|
161
|
+
|
|
162
|
+
class AddMarkupCommand extends Command{constructor(_0x1f5b25,_0x3fdc3f){super('AddMarkup'),this['manager']=_0x1f5b25,this['data']=_0x3fdc3f;}['undo'](){const _0x2c9d43=this['manager']['getMarkupById'](this['data']['id']);return _0x2c9d43?(this['manager']['removeMarkup'](_0x2c9d43),!![]):![];}['redo'](){const _0x284ba6=this['manager']['createMarkup'](this['data']);return _0x284ba6?(this['manager']['addMarkup'](_0x284ba6),!![]):![];}}
|
|
163
|
+
|
|
164
|
+
class RemoveMarkupCommand extends Command{constructor(_0x5f1724,_0x2caf08){super('RemoveMarkup'),this['manager']=_0x5f1724,this['data']=_0x2caf08;}['undo'](){const _0xa34767=this['manager']['createMarkup'](this['data']);return _0xa34767?(this['manager']['addMarkup'](_0xa34767),!![]):![];}['redo'](){const _0x5261b2=this['manager']['getMarkupById'](this['data']['id']);return _0x5261b2?(this['manager']['removeMarkup'](_0x5261b2),!![]):![];}}
|
|
165
|
+
|
|
166
|
+
class UpdateMarkupCommand extends Command{constructor(_0x507a80,_0x1c0262,_0x3d502e){super('UpdateMarkup'),this['manager']=_0x507a80,this['oldData']=_0x1c0262,this['newData']=_0x3d502e;}['undo'](){const _0x4c3b85=this['manager']['getMarkupById'](this['oldData']['id']);return _0x4c3b85?(this['manager']['updateMarkup'](_0x4c3b85,this['oldData']),!![]):![];}['redo'](){const _0x2ff03c=this['manager']['getMarkupById'](this['newData']['id']);return _0x2ff03c?(this['manager']['updateMarkup'](_0x2ff03c,this['newData']),!![]):![];}}
|
|
167
|
+
|
|
168
|
+
const tempVector3=new THREE['Vector3']();var MarkupPluginEvent;(function(_0x9c4940){_0x9c4940['StartDraw']='StartDraw',_0x9c4940['EndDraw']='EndDraw',_0x9c4940['EndEdit']='EndEdit';}(MarkupPluginEvent||(MarkupPluginEvent={})));class MarkupPlugin extends Plugin{constructor(_0x110590){super(_0x110590,{'id':MarkupPlugin['DEFAULT_ID']}),this['drawableList']=new DrawableList('markup'),this['lineWidth']=0x2,this['lineColor']=[0x1,0x0,0x0,0x1],this['fillColor']=[0x1,0x0,0x0,0.3],this['fontSize']=0x14,this['mouseDown']=![],this['mouseDownPositionX']=undefined,this['mouseDownPositionY']=undefined,this['isSelectLeaderText']=![],this['isDrawing']=![],this['tempPoints']=[],this['activated']=![],this['handleDbClick']=()=>{},this['handleInputMousemove']=_0x28f2bc=>{if(!this['mouseDown']&&this['type']===MarkupType['CloudRectWithText']&&this['isDrawing']&&this['creatingShape']){const _0x4f502c=CoordinateUtils['getScreenCoordinateByEvent'](_0x28f2bc,this['viewerCanvas']);this['creatingShape']['updateInputPosition'](this['mousedownPoint'],_0x4f502c),this['render']();}},this['mousedown']=_0x41c94c=>{var _0x9de551;if(_0x41c94c['pointers']&&_0x41c94c['pointers']['length']>0x1)return;const _0x36c570=new THREE['Vector2'](_0x41c94c['x'],_0x41c94c['y']);let _0x4a3f0d=this['pickPositionByScreenPoint'](_0x36c570);if(!_0x4a3f0d)return;_0x4a3f0d['z']=0x0,this['mouseDownPositionX']=_0x4a3f0d['x'],this['mouseDownPositionY']=_0x4a3f0d['y'],this['mousedownPoint']=new THREE['Vector2'](_0x41c94c['x'],_0x41c94c['y']);_0x41c94c['button']===0x0&&(this['mouseDown']=!![]);if(_0x41c94c['button']===0x2){this['isDrawing']&&this['endDraw'](this['creatingShape']);return;}this['selectedShape']&&(this['selectedShape']['selected']=![],this['selectedShape']=undefined,this['render']());if(!this['isDrawing']){const _0x2fff95=this['drawableList']['getDrawableByPosition'](_0x4a3f0d);_0x2fff95&&(this['selectedShape']=_0x2fff95,_0x2fff95['selected']=!![],_0x2fff95 instanceof CloudRectWithTextMarkup&&(this['isSelectLeaderText']=_0x2fff95['isLeaderTextSelected'](_0x4a3f0d)),this['render']());}if(this['isCreateTextMode']()&&this['mouseDown']&&!this['selectedShape']){!this['creatingShape']&&(this['creatingShape']=this['drawText'](_0x4a3f0d,''));const _0x5a1a96=this['creatingShape'];_0x5a1a96['text']['length']===0x0?(_0x5a1a96['setTolerance'](this['viewer']['getPixelSizeInWorldCoord']()),_0x5a1a96['update']([_0x4a3f0d]),_0x5a1a96['addInput'](this,_0x41c94c['x'],_0x41c94c['y'])):(_0x5a1a96['exitEditing'](),this['addMarkup'](_0x5a1a96,![]),this['endDraw'](_0x5a1a96)),this['render']();}if(this['isCreateLineMode']()&&this['mouseDown']&&!this['selectedShape']){if(this['tempPoints']['length']>0x0){const _0x5774be=this['tempPoints'][0x0];if(tempVector3['subVectors'](_0x5774be,_0x4a3f0d)['length']()<this['viewer']['getPixelSizeInWorldCoord']()*0x5){_0x4a3f0d=this['tempPoints'][0x0]['clone'](),this['tempPoints']['push'](_0x4a3f0d),this['endDraw'](this['creatingShape']);return;}}this['isDrawing']=!![],this['tempPoints']['push'](_0x4a3f0d);if(!this['creatingShape']){const _0xe810e0=this['creatingShape']=this['drawLine']([...this['tempPoints'],_0x4a3f0d]);_0xe810e0&&this['addMarkup'](_0xe810e0,![]);}this['creatingShape']&&(this['creatingShape']['update']([...this['tempPoints'],_0x4a3f0d]),this['render']()),this['dispatchEvent'](MarkupPluginEvent['StartDraw'],this['creatingShape']);}if(this['isCreateDotMode']()&&this['mouseDown']&&!this['selectedShape']){if(!this['creatingShape']){const _0x19bc0a=this['creatingShape']=this['drawShape'](_0x4a3f0d);_0x19bc0a&&this['addMarkup'](_0x19bc0a,![]);}this['isDrawing']=!![],this['render']();}(_0x9de551=this['creatingShape'])===null||_0x9de551===void 0x0?void 0x0:_0x9de551['setTolerance'](this['viewer']['getPixelSizeInWorldCoord']());},this['mousemove']=_0x4cd187=>{if(_0x4cd187['pointers']&&_0x4cd187['pointers']['length']>0x1)return;const _0x1fae0d=new THREE['Vector2'](_0x4cd187['x'],_0x4cd187['y']);let _0x350c74=this['pickPositionByScreenPoint'](_0x1fae0d);if(!_0x350c74)return;if(this['selectedShape']){if(this['mouseDown']&&this['mouseDownPositionX']!==undefined&&this['mouseDownPositionY']!==undefined){!this['isEditing']()&&(this['initialDataForEditing']=this['selectedShape']['getData']());const _0x51ae28=_0x350c74['x']-this['mouseDownPositionX'],_0x2e8d9d=_0x350c74['y']-this['mouseDownPositionY'];this['selectedShape']instanceof CloudRectWithTextMarkup&&this['isSelectLeaderText']?this['selectedShape']['translateLeaderText'](_0x51ae28,_0x2e8d9d):this['selectedShape']['translate'](_0x51ae28,_0x2e8d9d),this['render'](),this['mouseDownPositionX']=_0x350c74['x'],this['mouseDownPositionY']=_0x350c74['y'];}}else {if(this['isCreateDotMode']())return;if(this['mouseDown']&&this['isCreateShapeMode']()&&this['mouseDownPositionX']!==undefined&&this['mouseDownPositionY']!==undefined){const _0x457216=new THREE['Vector3'](this['mouseDownPositionX'],this['mouseDownPositionY'],0x0);if(!this['creatingShape']){const _0xcc765b=this['creatingShape']=this['drawShape'](_0x457216,_0x350c74);_0xcc765b&&this['addMarkup'](_0xcc765b,![]);}this['creatingShape']['update']([_0x457216,_0x350c74]),this['isDrawing']=!![],this['render']();}if(this['isCreateLineMode']()&&this['tempPoints']['length']>0x0&&this['isDrawing']){const _0x4153bb=this['tempPoints'][0x0];tempVector3['subVectors'](_0x4153bb,_0x350c74)['length']()<this['viewer']['getPixelSizeInWorldCoord']()*0x5&&(_0x350c74=this['tempPoints'][0x0]['clone']()),this['creatingShape']['update']([...this['tempPoints'],_0x350c74]),this['render']();}}},this['mouseup']=_0x230458=>{this['mouseDown']=![];this['selectedShape']&&this['isEditing']()&&this['endEdit'](this['selectedShape']);if(this['isCreateShapeMode']()&&this['isDrawing']&&this['creatingShape']){if(this['type']===MarkupType['LeaderLine']){const _0x33bfd8=this['creatingShape'];_0x33bfd8['isEditing']?_0x33bfd8['exitEditing']():(_0x33bfd8['setFontSize'](this['fontSize']*this['viewer']['getPixelSizeInWorldCoord']()),_0x33bfd8['addInput'](this,_0x230458['x'],_0x230458['y'])),_0x33bfd8['addEventListener'](TextMarkupEvent['ExitEditing'],()=>{this['isDrawing']=![],this['endDraw'](this['creatingShape']);});}else {if(this['type']===MarkupType['CloudRectWithText']){const _0x5f5ab5=this['creatingShape'];_0x5f5ab5['setFontSize'](this['fontSize']*this['viewer']['getPixelSizeInWorldCoord']()),_0x5f5ab5['addInput'](this,_0x230458['x'],_0x230458['y']),_0x5f5ab5['addEventListener'](TextMarkupEvent['ExitEditing'],()=>{this['isDrawing']=![],this['endDraw'](this['creatingShape']);});}else this['endDraw'](this['creatingShape']);}}},this['keydown']=_0x775c20=>{if(_0x775c20['code']==='Delete')this['selectedShape']&&(this['viewer']['hasEventListener'](ViewerEvent['BeforeRemoveMarkup'])?this['viewer']['dispatchEvent'](ViewerEvent['BeforeRemoveMarkup'],this['confirmToRemove']['bind'](this)):(this['removeMarkup'](this['selectedShape']),this['undoMgr']['addCommand'](new RemoveMarkupCommand(this,this['selectedShape']['getData']())),this['selectedShape']=undefined));else _0x775c20['code']==='Escape'&&this['cancelDraw'](this['creatingShape']);},this['viewer']=_0x110590,this['inputManager']=_0x110590['getInputManager'](),this['overlayRender']=this['viewer']['getOverlayRender'](),this['overlayRender']['addDrawableList'](this['drawableList']);}get['viewerCanvas'](){return this['overlayRender']['getCanvas']();}get['camera'](){return this['viewer']['camera'];}get['raycaster'](){return this['viewer']['getRaycaster']();}get['undoMgr'](){return this['viewer']['getUndoManager']();}['setMarkupVisibility'](_0x408dad,_0x1bf94f){const _0x129fca=this['drawableList']['getDrawables'](),_0x2d8183=_0x129fca['get'](_0x408dad);if(!_0x2d8183)return ![];return _0x2d8183['visible']!==_0x1bf94f&&(_0x2d8183['visible']=_0x1bf94f,this['render']()),!![];}['setMarkupsVisibility'](_0x3c2d4c){let _0x5f5c3d=![];this['drawableList']['getDrawables']()['forEach'](_0x1bd76d=>{_0x1bd76d['visible']!==_0x3c2d4c&&(_0x1bd76d['visible']=_0x3c2d4c,_0x5f5c3d=!![]);}),_0x5f5c3d&&this['render']();}['clear'](){this['drawableList']['clear'](),this['isDrawing']&&this['reset'](),this['render']();}['isActive'](){return this['activated'];}['activate'](){this['activated']=!![],DeviceUtils['isMobile']?(this['inputManager']['addEventListener']('touchstart',this['mousedown']),this['inputManager']['addEventListener']('touchmove',this['mousemove']),this['inputManager']['addEventListener']('touchend',this['mouseup'])):(this['inputManager']['addEventListener']('mousedown',this['mousedown']),this['inputManager']['addEventListener']('mousemove',this['mousemove']),this['inputManager']['addEventListener']('mouseup',this['mouseup']),this['inputManager']['addEventListener']('dblclick',this['handleDbClick'])),this['inputManager']['addEventListener']('keydown',this['keydown']),window['addEventListener']('mousemove',this['handleInputMousemove']),this['viewer']['getCameraManager']()['enableMouseLeft'](![]),this['viewer']['getCameraManager']()['enableKeyControl'](![]),this['render']();}['deactivate'](){this['activated']=![],DeviceUtils['isMobile']?(this['inputManager']['removeEventListener']('touchstart',this['mousedown']),this['inputManager']['removeEventListener']('touchmove',this['mousemove']),this['inputManager']['removeEventListener']('touchend',this['mouseup'])):(this['inputManager']['removeEventListener']('mousedown',this['mousedown']),this['inputManager']['removeEventListener']('mousemove',this['mousemove']),this['inputManager']['removeEventListener']('mouseup',this['mouseup']),this['inputManager']['removeEventListener']('dblclick',this['handleDbClick'])),this['inputManager']['removeEventListener']('keydown',this['keydown']),window['removeEventListener']('mousemove',this['handleInputMousemove']),this['viewer']['getCameraManager']()['enableMouseLeft'](!![]),this['viewer']['getCameraManager']()['enableKeyControl'](!![]),this['mouseDown']=![],this['tempPoints']=[],this['isDrawing']=![],this['creatingShape']=undefined,this['selectedShape']&&(this['selectedShape']['selected']=![],this['selectedShape']=undefined),this['render']();}['getActiveMarkupType'](){return this['type'];}['setDrawType'](_0x14d091){this['type']=_0x14d091,this['reset']();}['setLineWidth'](_0x1eb86a){this['lineWidth']=_0x1eb86a;}['getLineWidth'](){return this['lineWidth'];}['setLineColor'](_0x26f2a5){this['lineColor']=_0x26f2a5;}['getLineColor'](){return this['lineColor'];}['setFillColor'](_0x1f8e03){this['fillColor']=_0x1f8e03;}['getFillColor'](){return this['fillColor'];}['setFontSize'](_0x4ecc87){this['fontSize']=_0x4ecc87;}['getFontSize'](){return this['fontSize'];}['pickPositionByScreenPoint'](_0x451936){var _0x9d155;return (_0x9d155=this['viewer']['pickObject'](_0x451936))===null||_0x9d155===void 0x0?void 0x0:_0x9d155['point'];}['confirmToRemove'](_0x5e13e5){if(!this['selectedShape'])return;if(_0x5e13e5)this['removeMarkup'](this['selectedShape']),this['undoMgr']['addCommand'](new RemoveMarkupCommand(this,this['selectedShape']['getData']())),this['selectedShape']=undefined;}['isEditing'](){return !!this['initialDataForEditing'];}['endEdit'](_0x161588){if(!this['initialDataForEditing'])return;const _0x5ee07c=_0x161588['getData']();this['viewer']['dispatchEvent'](ViewerEvent['MarkupUpdate'],{'oldData':this['initialDataForEditing'],'newData':_0x5ee07c}),this['dispatchEvent'](MarkupPluginEvent['EndEdit'],_0x161588),this['undoMgr']['addCommand'](new UpdateMarkupCommand(this,this['initialDataForEditing'],_0x5ee07c)),this['initialDataForEditing']=undefined,this['isSelectLeaderText']=![];}['endDraw'](_0xa186f4){this['type']===MarkupType['PolyLine']&&this['creatingShape']&&(this['tempPoints']['length']<0x2?(this['removeMarkup'](this['creatingShape'],![]),this['creatingShape']=undefined):this['creatingShape']['update'](this['tempPoints']));if(_0xa186f4){const _0x26a54f=_0xa186f4['getData']();this['viewer']['dispatchEvent'](ViewerEvent['MarkupAdd'],_0x26a54f),this['undoMgr']['addCommand'](new AddMarkupCommand(this,_0x26a54f));}this['dispatchEvent'](MarkupPluginEvent['EndDraw'],_0xa186f4),this['reset']();}['cancelDraw'](_0x4b72d7){_0x4b72d7&&this['removeMarkup'](_0x4b72d7,![]),this['reset']();}['reset'](){this['tempPoints']=[],this['isDrawing']=![],this['creatingShape']=undefined,this['mouseDownPositionX']=undefined,this['mouseDownPositionY']=undefined,this['mousedownPoint']=undefined,this['isSelectLeaderText']=![],this['selectedShape']&&(this['selectedShape']['selected']=![],this['selectedShape']=undefined),this['render']();}['render'](){var _0x280dfd;(_0x280dfd=this['overlayRender'])===null||_0x280dfd===void 0x0?void 0x0:_0x280dfd['render']();}['addMarkup'](_0x513cb5,_0x5958c7=!![]){this['drawableList']['addDrawable'](_0x513cb5),this['render'](),_0x5958c7&&this['viewer']['dispatchEvent'](ViewerEvent['MarkupAdd'],_0x513cb5['getData']());}['updateMarkup'](_0x4f4d81,_0xada586,_0x4ac526=!![]){this['drawableList']['updateDrawable'](_0x4f4d81,_0xada586),this['render'](),_0x4ac526&&this['viewer']['dispatchEvent'](ViewerEvent['MarkupUpdate'],{'oldData':_0x4f4d81['getData'](),'newData':_0xada586});}['removeMarkup'](_0x5ab1be,_0x45adec=!![]){this['drawableList']['removeDrawable'](_0x5ab1be),this['render'](),_0x45adec&&this['viewer']['dispatchEvent'](ViewerEvent['MarkupRemove'],_0x5ab1be['getData']());}['removeMarkupById'](_0x50f88b){const _0x1c0631=this['getMarkupById'](_0x50f88b);if(!_0x1c0631)return ![];return this['removeMarkup'](_0x1c0631,![]),!![];}['createMarkup'](_0x1d7b7b){return CanvasRender['createDrawable'](_0x1d7b7b);}['getMarkupById'](_0x3547f7){return this['drawableList']['getDrawableById'](_0x3547f7);}['getData'](){return this['drawableList']['getDrawableDatas']();}['setData'](_0x2352dd){this['undoMgr']['startTransaction'](),_0x2352dd['forEach'](_0x57c71a=>{this['addMarkup'](this['createMarkup'](_0x57c71a)),this['undoMgr']['addCommand'](new AddMarkupCommand(this,_0x57c71a));}),this['undoMgr']['endTransaction'](),this['render']();}['isCreateLineMode'](){return [MarkupType['PolyLine'],MarkupType['CloudLine']]['includes'](this['type']);}['isCreateDotMode'](){return [MarkupType['Dot']]['includes'](this['type']);}['isCreateTextMode'](){return [MarkupType['Text']]['includes'](this['type']);}['isCreateShapeMode'](){return [MarkupType['X'],MarkupType['Rectangle'],MarkupType['CloudLineRectangle'],MarkupType['Circle'],MarkupType['Ellipse'],MarkupType['Arrow'],MarkupType['LeaderLine'],MarkupType['CloudRectWithText'],MarkupType['Dot']]['includes'](this['type']);}['drawShape'](_0x428607,_0x1fffc1){const _0x595c46=[[_0x428607['x'],_0x428607['y']]];return _0x1fffc1&&_0x595c46['push']([_0x1fffc1['x'],_0x1fffc1['y']]),CanvasRender['createDrawable']({'id':CommonUtils['guid'](),'lineWidth':this['lineWidth'],'lineColor':this['lineColor'],'fillColor':this['fillColor'],'type':this['type'],'points':_0x595c46});}['drawLine'](_0x1f90b5){return CanvasRender['createDrawable']({'id':CommonUtils['guid'](),'lineWidth':this['lineWidth'],'lineColor':this['lineColor'],'fillColor':this['fillColor'],'type':this['type'],'points':_0x1f90b5['map'](_0x46df9d=>[_0x46df9d['x'],_0x46df9d['y']])});}['drawText'](_0x47087e,_0x3e4ff6){return CanvasRender['createDrawable']({'id':CommonUtils['guid'](),'lineWidth':this['lineWidth'],'lineColor':this['lineColor'],'fillColor':this['fillColor'],'fontSize':this['fontSize']*this['viewer']['getPixelSizeInWorldCoord'](),'type':this['type'],'text':_0x3e4ff6,'points':[[_0x47087e['x'],_0x47087e['y']]]});}['destroy'](){this['deactivate'](),this['clear']();}}MarkupPlugin['DEFAULT_ID']='MarkupPlugin';
|
|
169
|
+
|
|
170
|
+
var css_248z$7 = "#navCube{bottom:10px;cursor:pointer;height:135px;pointer-events:none;position:absolute;right:10px;width:135px;z-index:1}#navCube:hover{opacity:1}.css3d-navcube .navcube-plane{backface-visibility:hidden;transition:all .2s;z-index:1}.css3d-navcube .navcube-plane.outer{background:linear-gradient(-45deg,transparent 15px,#efefef 0) 100% 100%,linear-gradient(-135deg,transparent 15px,#efefef 0) 100% 0,linear-gradient(135deg,transparent 15px,#efefef 0) 0 0,linear-gradient(45deg,transparent 15px,#efefef 0) 0 100%;background-repeat:no-repeat;background-size:70% 70%;opacity:.7}.css3d-navcube .navcube-plane.inner{background:linear-gradient(-45deg,transparent 14px,#2c7be5 0) 100% 100%,linear-gradient(-135deg,transparent 14px,#2c7be5 0) 100% 0,linear-gradient(135deg,transparent 14px,#2c7be5 0) 0 0,linear-gradient(45deg,transparent 14px,#2c7be5 0) 0 100%;background-repeat:no-repeat;background-size:70% 70%;font-size:30px;line-height:100px;margin:2px;text-align:center}.css3d-navcube .navcube-plane:hover{opacity:1!important}.css3d-navcube .navcube-edge{opacity:0;transition:all .2s;z-index:2}.css3d-navcube .navcube-edge:hover{opacity:1!important}.css3d-navcube .navcube-corner{backface-visibility:hidden;box-sizing:content-box;opacity:.7;top:4px;transform-origin:50% 33%;transition:all .2s;z-index:3}.css3d-navcube .navcube-corner-plane{backface-visibility:hidden;opacity:0;top:-6.5px;transform-origin:bottom;transition:all .2s;z-index:3}.css3d-navcube .highlight{opacity:1}";
|
|
171
|
+
styleInject(css_248z$7);
|
|
172
|
+
|
|
173
|
+
const en$6={'front':'Front','back':'Back','top':'Top','bottom':'Bottom','left':'Left','right':'Right'};const cn$6={'front':'前','back':'后','top':'上','bottom':'下','left':'左','right':'右'};const i18n$6=i18next['createInstance']();const lng$6='en';i18n$6['init']({'lng':lng$6,'debug':![],'resources':{'en':{'translation':en$6},'cn':{'translation':cn$6}}});
|
|
174
|
+
|
|
175
|
+
const navCubeColor='#2C7BE5',halfPI=Math['PI']/0x2,quarterPI=Math['PI']/0x4,posAndRot=([_0x3eefc6,_0x2fa2e8,_0x376e12],[_0x27c41e,_0x170c28,_0x12ef1a])=>({'position':new THREE['Vector3'](_0x3eefc6,_0x2fa2e8,_0x376e12),'rotation':new THREE['Euler'](_0x27c41e,_0x170c28,_0x12ef1a)}),plane={[ViewDirection['Front']]:Object['assign'](Object['assign']({},posAndRot([0x0,0x0,0x1],[0x0,0x0,0x0])),{'label':'front'}),[ViewDirection['Right']]:Object['assign'](Object['assign']({},posAndRot([0x1,0x0,0x0],[0x0,halfPI,0x0])),{'label':'right'}),[ViewDirection['Back']]:Object['assign'](Object['assign']({},posAndRot([0x0,0x0,-0x1],[0x0,Math['PI'],0x0])),{'label':'back'}),[ViewDirection['Left']]:Object['assign'](Object['assign']({},posAndRot([-0x1,0x0,0x0],[0x0,-halfPI,0x0])),{'label':'left'}),[ViewDirection['Top']]:Object['assign'](Object['assign']({},posAndRot([0x0,0x1,0x0],[-halfPI,0x0,0x0])),{'label':'top'}),[ViewDirection['Bottom']]:Object['assign'](Object['assign']({},posAndRot([0x0,-0x1,0x0],[halfPI,0x0,0x0])),{'label':'bottom'})},edge=[posAndRot([0x0,0x1,0x1],[-quarterPI,0x0,-halfPI]),posAndRot([0x0,0x1,-0x1],[-0x3*quarterPI,0x0,-halfPI]),posAndRot([0x0,-0x1,0x1],[quarterPI,0x0,-halfPI]),posAndRot([0x0,-0x1,-0x1],[0x3*quarterPI,0x0,-halfPI]),posAndRot([0x1,0x1,0x0],[-halfPI,quarterPI,0x0]),posAndRot([0x1,-0x1,0x0],[-halfPI,0x3*quarterPI,0x0]),posAndRot([-0x1,0x1,0x0],[-halfPI,-quarterPI,0x0]),posAndRot([-0x1,-0x1,0x0],[-halfPI,-0x3*quarterPI,0x0]),posAndRot([0x1,0x0,0x1],[0x0,quarterPI,0x0]),posAndRot([0x1,0x0,-0x1],[0x0,0x3*quarterPI,0x0]),posAndRot([-0x1,0x0,0x1],[0x0,-quarterPI,0x0]),posAndRot([-0x1,0x0,-0x1],[0x0,-0x3*quarterPI,0x0])],corner=[{'position':new THREE['Vector3'](0x1,0x1,0x1),'rotation':[new THREE['Euler'](-halfPI,halfPI,-quarterPI),new THREE['Euler'](-halfPI,0x0,quarterPI),new THREE['Euler'](0x0,0x0,0x3*quarterPI)]},{'position':new THREE['Vector3'](0x1,0x1,-0x1),'rotation':[new THREE['Euler'](0x0,halfPI,0x3*quarterPI),new THREE['Euler'](-halfPI,0x0,0x3*quarterPI),new THREE['Euler'](0x0,Math['PI'],-0x3*quarterPI)]},{'position':new THREE['Vector3'](-0x1,0x1,-0x1),'rotation':[new THREE['Euler'](Math['PI'],-halfPI,quarterPI),new THREE['Euler'](-halfPI,0x0,-0x3*quarterPI),new THREE['Euler'](0x0,Math['PI'],0x3*quarterPI)]},{'position':new THREE['Vector3'](-0x1,0x1,0x1),'rotation':[new THREE['Euler'](0x0,-halfPI,0x3*quarterPI),new THREE['Euler'](-halfPI,0x0,-quarterPI),new THREE['Euler'](0x0,0x0,-0x3*quarterPI)]},{'position':new THREE['Vector3'](0x1,-0x1,0x1),'rotation':[new THREE['Euler'](0x0,halfPI,-quarterPI),new THREE['Euler'](-halfPI,Math['PI'],-quarterPI),new THREE['Euler'](0x0,0x0,quarterPI)]},{'position':new THREE['Vector3'](0x1,-0x1,-0x1),'rotation':[new THREE['Euler'](-halfPI,halfPI,0x3*quarterPI),new THREE['Euler'](halfPI,0x0,quarterPI),new THREE['Euler'](0x0,Math['PI'],-quarterPI)]},{'position':new THREE['Vector3'](-0x1,-0x1,0x1),'rotation':[new THREE['Euler'](0x0,-halfPI,quarterPI),new THREE['Euler'](halfPI,0x0,-0x3*quarterPI),new THREE['Euler'](0x0,0x0,-quarterPI)]},{'position':new THREE['Vector3'](-0x1,-0x1,-0x1),'rotation':[new THREE['Euler'](0x0,-halfPI,-quarterPI),new THREE['Euler'](halfPI,0x0,-quarterPI),new THREE['Euler'](0x0,Math['PI'],quarterPI)]}];class NavCube extends THREE['Object3D']{constructor(_0x3f61ba={}){super(),this['NAVCUBE_SIZE']=0x64,this['clickHandler']=_0x3f61ba['onClick'],forEach(plane,_0x505635=>{this['createPlane'](_0x505635);}),forEach(edge,_0x13e8b1=>{this['createEdge'](_0x13e8b1);}),forEach(corner,(_0x17c946,_0x1e9719)=>{this['createCorner'](_0x17c946,_0x1e9719);});}['createPlane'](_0x3992b1){const _0x1f8bff=_0x3992b1['position']['clone']()['multiplyScalar'](this['NAVCUBE_SIZE']/0x2),{rotation:_0x9a6e44,label:_0x4a0932}=_0x3992b1,_0x4d9ce6=document['createElement']('div');_0x4d9ce6['style']['width']=this['NAVCUBE_SIZE']+'px',_0x4d9ce6['style']['height']=this['NAVCUBE_SIZE']+'px',_0x4d9ce6['classList']['add']('navcube-plane'),_0x4d9ce6['classList']['add']('outer');const _0x1e561a=document['createElement']('div');_0x1e561a['style']['width']=this['NAVCUBE_SIZE']-0x4+'px',_0x1e561a['style']['height']=this['NAVCUBE_SIZE']-0x4+'px',_0x1e561a['innerHTML']=i18n$6['t'](_0x4a0932),_0x1e561a['classList']['add']('navcube-plane'),_0x1e561a['classList']['add']('inner'),_0x4d9ce6['appendChild'](_0x1e561a);const _0x340372=new THREEAddons['CSS3DObject'](_0x4d9ce6);_0x340372['position']['copy'](_0x1f8bff),_0x340372['rotation']['copy'](_0x9a6e44),this['add'](_0x340372),_0x4d9ce6['addEventListener']('click',()=>{this['clickHandler']&&this['clickHandler'](_0x1f8bff['clone']()['normalize'](),_0x9a6e44);});}['createEdge'](_0x2e5ac9){const _0x1736d6=_0x2e5ac9['position']['clone']()['multiplyScalar'](this['NAVCUBE_SIZE']/0x2),_0x47ab7d=document['createElement']('div');_0x47ab7d['style']['width']=0x4+'px',_0x47ab7d['style']['height']=this['NAVCUBE_SIZE']-0x28+'px',_0x47ab7d['style']['background']=navCubeColor,_0x47ab7d['classList']['add']('navcube-edge');const _0x24e5b9=new THREEAddons['CSS3DObject'](_0x47ab7d);_0x24e5b9['position']['copy'](_0x1736d6),_0x24e5b9['rotation']['copy'](_0x2e5ac9['rotation']),this['add'](_0x24e5b9),_0x47ab7d['addEventListener']('click',()=>{this['clickHandler']&&this['clickHandler'](_0x1736d6['clone']()['normalize'](),_0x2e5ac9['rotation']);});}['createCorner'](_0x44d76f,_0x1050af){const _0x1d1c11=_0x49b414=>{_0x49b414['addEventListener']('click',()=>{this['clickHandler']&&this['clickHandler'](_0x44d76f['position']['clone']()['normalize'](),new THREE['Euler']());}),_0x49b414['addEventListener']('mouseenter',()=>{const _0x4493e4=document['getElementsByClassName']('group-'+_0x1050af);Array['from'](_0x4493e4)['forEach'](_0x118b3e=>{_0x118b3e instanceof HTMLElement&&_0x118b3e['classList']['add']('highlight');});}),_0x49b414['addEventListener']('mouseleave',()=>{const _0x2dee8c=document['getElementsByClassName']('group-'+_0x1050af);Array['from'](_0x2dee8c)['forEach'](_0x421196=>{_0x421196 instanceof HTMLElement&&_0x421196['classList']['remove']('highlight');});});},_0x2e1bca=_0x44d76f['position']['clone']()['multiplyScalar'](this['NAVCUBE_SIZE']/0x2+0.5),_0x49133d=document['createElement']('div');_0x49133d['style']['borderTop']=0xe*Math['sqrt'](0x3)+'px\x20solid\x20'+'#efefef',_0x49133d['style']['borderLeft']=0xe+'px\x20solid\x20transparent',_0x49133d['style']['borderRight']=0xe+'px\x20solid\x20transparent',_0x49133d['classList']['add']('navcube-corner'),_0x49133d['classList']['add']('group-'+_0x1050af);const _0x229751=new THREEAddons['CSS3DObject'](_0x49133d);_0x229751['position']['copy'](_0x2e1bca)['lerp'](_0x44d76f['position'],0.14);const _0x4f4eb0=Math['atan2'](_0x2e1bca['z'],_0x2e1bca['x']);_0x229751['rotateY'](_0x2e1bca['z']*_0x2e1bca['x']<0x0?Math['PI']+_0x4f4eb0:_0x4f4eb0);const _0x33cc74=new THREE['Euler']()['setFromVector3'](_0x2e1bca['clone']()['normalize']());_0x229751['rotateX'](-_0x33cc74['y']),_0x2e1bca['y']<0x0&&_0x229751['rotateZ'](Math['PI']),this['add'](_0x229751);const _0x202066=(_0x69e863,_0x29f05b,_0x4b4db6)=>{const _0x474915=document['createElement']('div');_0x474915['style']['borderTop']=0xd+'px\x20solid\x20'+navCubeColor,_0x474915['style']['borderLeft']=0xd+'px\x20solid\x20transparent',_0x474915['style']['borderRight']=0xd+'px\x20solid\x20transparent',_0x474915['classList']['add']('navcube-corner-plane'),_0x474915['classList']['add']('group-'+_0x29f05b);const _0x14b430=new THREEAddons['CSS3DObject'](_0x474915),_0x4be256=_0x44d76f['position']['clone']();_0x4be256['setComponent'](_0x4b4db6,0x0),_0x14b430['position']['copy'](_0x2e1bca)['sub'](_0x4be256),_0x14b430['rotateX'](_0x69e863['x']),_0x14b430['rotateY'](_0x69e863['y']),_0x14b430['rotateZ'](_0x69e863['z']),this['add'](_0x14b430),_0x1d1c11(_0x474915);};forEach(_0x44d76f['rotation'],(_0x18ea29,_0x29e4d7)=>{_0x202066(_0x18ea29,_0x1050af,_0x29e4d7);}),_0x1d1c11(_0x49133d);}}
|
|
176
|
+
|
|
177
|
+
class NavCubePlugin extends Plugin{constructor(_0x3d3d89,_0x25f790){const _0x78b49d=(_0x25f790===null||_0x25f790===void 0x0?void 0x0:_0x25f790['id'])||NavCubePlugin['DEFAULT_ID'];super(_0x3d3d89,{'id':_0x78b49d}),this['cfg']=_0x25f790||{'id':_0x78b49d},this['init']();}['init'](){this['initLocalization'](),this['initRenderer'](),this['initScene'](),this['animate']();}['initLocalization'](){const _0x22e4a5=this['cfg']['language']||DefaultLanguage;i18n$6['changeLanguage'](_0x22e4a5);}['initRenderer'](){var _0x3cdbe3;let _0x1ce2ac=0x87,_0x49f9b0=0x87,_0x85c0c3;this['cfg']['containerId']&&(_0x85c0c3=document['getElementById'](this['cfg']['containerId']),_0x85c0c3&&(_0x1ce2ac=_0x85c0c3['clientWidth'],_0x49f9b0=_0x85c0c3['clientHeight']));if(!_0x85c0c3){const _0x12c300='navCube';_0x85c0c3=document['createElement']('div'),_0x85c0c3['id']=_0x12c300,(_0x3cdbe3=this['viewer']['widgetContainer'])===null||_0x3cdbe3===void 0x0?void 0x0:_0x3cdbe3['appendChild'](_0x85c0c3);}this['renderer']=new THREEAddons['CSS3DRenderer'](),this['renderer']['setSize'](_0x1ce2ac,_0x49f9b0),this['renderer']['domElement']['classList']['add']('css3d-navcube'),_0x85c0c3['appendChild'](this['renderer']['domElement']);}['initScene'](){this['scene']=new THREE['Scene']();const _0x374020=window['innerWidth']/window['innerHeight'],_0x37000e=0xc8;this['camera']=new THREE['OrthographicCamera'](_0x37000e*_0x374020/-0x2,_0x37000e*_0x374020/0x2,_0x37000e/0x2,_0x37000e/-0x2,0x1,0x3e8),this['camera']['position']['set'](-0xc8,0xc8,0xc8),this['scene']['add'](this['camera']),this['navCube']=new NavCube({'onClick':_0x32804e=>this['viewer']['flyToDirection'](_0x32804e)}),this['scene']['add'](this['navCube']);}['render'](){this['renderer']&&this['scene']&&this['camera']&&(this['update'](),this['renderer']['render'](this['scene'],this['camera']));}['animate'](){requestAnimationFrame(this['animate']['bind'](this)),this['render']();}['update'](){const _0x5e08e6=this['viewer']['camera'];if(_0x5e08e6){const _0x1af708=new THREE['Vector3']();_0x5e08e6['getWorldDirection'](_0x1af708);const _0x5f224e=_0x5e08e6['up'];this['updateCameraDirection'](_0x1af708,_0x5f224e);}}['updateCameraDirection'](_0x3a2483,_0x39373c){if(!this['camera']||!_0x3a2483)return;_0x3a2483['normalize']();const _0x392d23=0x14,_0x59be4c=0x0;this['camera']['position']['set'](-_0x3a2483['x']*_0x392d23+_0x59be4c,-_0x3a2483['y']*_0x392d23+_0x59be4c,-_0x3a2483['z']*_0x392d23+_0x59be4c),this['camera']['lookAt'](_0x59be4c,_0x59be4c,_0x59be4c),this['camera']['up']=_0x39373c;}['destroy'](){super['destroy']();if(!this['scene']||!this['camera']||!this['navCube'])return;this['scene']['clear'](),this['camera']=undefined,this['navCube']=undefined,this['scene']=undefined;}}NavCubePlugin['DEFAULT_ID']='NavCubePlugin';
|
|
178
|
+
|
|
179
|
+
var css_248z$6 = ".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,width .25s ease}.property.collapsed{transform:translateX(calc(100% - 1px))}.property .collapse-toggle{align-items:center;background:#fff;border:none;border-radius:6px 0 0 6px;box-shadow:0 2px 6px rgba(0,0,0,.12);cursor:pointer;display:flex;font-family:monospace;font-weight:600;height:30px;justify-content:center;left:-20px;position:absolute;top:12px;user-select:none;width:20px;z-index:100}.property .header{display:none!important}.property .content .prop-tabs-bar{color:rgba(0,0,0,.533)}.property .content .prop-tabs-bar .prop-tab{cursor:pointer;display:inline-block;padding:4px 8px}.property .content .prop-tabs-bar .prop-tab:hover{color:#4096ff}.property .content .prop-tabs-bar .active{color:#000}.property .content .prop-tabs-bar .disabled{color:rgba(0,0,0,.333);cursor:default}.property .content .prop-tabs-bar .disabled:hover{color:rgba(0,0,0,.333)}.property .content .prop-details{max-height:calc(100% - 36px);overflow:auto;padding:8px}.property .content .prop-details .prop-node-mode-btn{background:#fff;border:1px solid #ddd;border-radius:3px;cursor:pointer;font-size:13px;padding:4px 8px}.property .content .prop-details .prop-node-mode-btn.active{background:#0078d4;border-color:#0065b3;color:#fff}.property .content .prop-details input[type=number],.property .content .prop-details input[type=text]{border:1px solid #ddd;border-radius:3px;box-sizing:border-box;font-size:13px;padding:4px 6px;width:70px}";
|
|
180
|
+
styleInject(css_248z$6);
|
|
181
|
+
|
|
182
|
+
const en$5={'property':'Property'};const cn$5={'property':'属性'};const i18n$5=i18next['createInstance']();const lng$5='en';i18n$5['init']({'lng':lng$5,'debug':![],'resources':{'en':{'translation':en$5},'cn':{'translation':cn$5}}});
|
|
183
|
+
|
|
184
|
+
class PropertyPlugin extends Plugin{constructor(_0x59dc94,_0x9a0ccc){const _0x6ebe52=(_0x9a0ccc===null||_0x9a0ccc===void 0x0?void 0x0:_0x9a0ccc['id'])||PropertyPlugin['DEFAULT_ID'];super(_0x59dc94,{'id':_0x6ebe52}),this['lastActiveTabIdx']=0x0,this['onObjectSelected']=()=>{var _0x3eb799;((_0x3eb799=this['basePanel'])===null||_0x3eb799===void 0x0?void 0x0:_0x3eb799['isVisible']())&&(this['updateContent'](),this['viewer']['enableRender']());},this['onObjectDeselected']=()=>{var _0x391a00;((_0x391a00=this['basePanel'])===null||_0x391a00===void 0x0?void 0x0:_0x391a00['isVisible']())&&(this['updateContent'](),this['viewer']['enableRender']());},this['cfg']=_0x9a0ccc||{'id':_0x6ebe52},this['initLocalization'](),this['cfg']['visible']!==![]&&this['updateContent'](),this['viewer']['addEventListener'](ViewerEvent['ObjectSelected'],this['onObjectSelected']),this['viewer']['addEventListener'](ViewerEvent['ObjectDeselected'],this['onObjectDeselected']);}['updateContent'](){var _0x35d692,_0x715369,_0x50ce5b,_0x1352c0;const _0x2da77e=this['viewer'];this['cfg']['containerId']&&(this['container']=document['getElementById'](this['cfg']['containerId']));!this['container']&&(this['container']=_0x2da77e['widgetContainer']);if(!this['basePanel']){this['basePanel']=new BasePanel({'container':this['container'],'title':i18n$5['t']('property'),'cssClass':'property','onClose':()=>this['onClose'](),'viewportContainer':this['viewer']['viewerContainer']}),this['content']=(_0x35d692=this['basePanel'])===null||_0x35d692===void 0x0?void 0x0:_0x35d692['content'];const _0x387917=((_0x50ce5b=(_0x715369=this['basePanel'])===null||_0x715369===void 0x0?void 0x0:_0x715369['content'])===null||_0x50ce5b===void 0x0?void 0x0:_0x50ce5b['parentElement'])||((_0x1352c0=this['basePanel'])===null||_0x1352c0===void 0x0?void 0x0:_0x1352c0['root']);if(_0x387917){const _0x5a2a42=document['createElement']('button');_0x5a2a42['className']='collapse-toggle',_0x5a2a42['type']='button',_0x5a2a42['title']='Collapse\x20/\x20Expand',_0x5a2a42['innerText']='>',_0x387917['appendChild'](_0x5a2a42);const _0x4feb90=_0x5d1400=>{_0x387917['classList']['toggle']('collapsed',_0x5d1400),_0x5a2a42['innerText']=_0x5d1400?'<':'>';};_0x5a2a42['addEventListener']('click',_0x5db91d=>{_0x5db91d['stopPropagation']();const _0x19b884=_0x387917['classList']['contains']('collapsed');_0x4feb90(!_0x19b884);});}}this['addContent']();}['initLocalization'](){const _0x55973d=this['cfg']['language']||DefaultLanguage;i18n$5['changeLanguage'](_0x55973d);}['setVisible'](_0x4216c6){_0x4216c6&&this['updateContent'](),this['basePanel']&&(this['basePanel']['setVisible'](_0x4216c6),this['dispatchEvent']('visibilitychange',_0x4216c6));}['isVisible'](){var _0x580aab;return !!((_0x580aab=this['basePanel'])===null||_0x580aab===void 0x0?void 0x0:_0x580aab['isVisible']());}['onClose'](){this['dispatchEvent']('visibilitychange',![]);}['destroy'](){var _0x33a81c;super['destroy'](),this['viewer']['removeEventListener'](ViewerEvent['ObjectSelected'],this['onObjectSelected']),this['viewer']['removeEventListener'](ViewerEvent['ObjectDeselected'],this['onObjectDeselected']),(_0x33a81c=this['basePanel'])===null||_0x33a81c===void 0x0?void 0x0:_0x33a81c['destroy'](),this['nodePanel']=undefined,this['nodeModeButtons']=undefined,this['nodeInputs']=undefined,this['geometrySection']=undefined,this['boundingBoxSection']=undefined;}['addContent'](){if(!this['content'])return;this['content']['innerHTML']='';const _0x4a0fd5=document['createElement']('div');_0x4a0fd5['className']='prop-tabs-bar';const _0x949fda=[],_0x587fba=document['createElement']('div');_0x587fba['className']='prop-details';let _0x1fc1f8=-0x1,_0x2b2a95=!![];const _0x235f00=(_0x19b804,_0xb8cd9,_0x5d0140)=>{const _0x20b61e=document['createElement']('div');_0x20b61e['className']='prop-tab',_0x20b61e['textContent']=_0xb8cd9,_0x20b61e['dataset']['index']=String(_0x19b804),!_0x5d0140&&_0x20b61e['classList']['add']('disabled'),_0x19b804===this['lastActiveTabIdx']&&(_0x2b2a95=_0x5d0140),_0x5d0140&&_0x1fc1f8<0x0&&(_0x1fc1f8=_0x19b804),_0x4a0fd5['appendChild'](_0x20b61e),_0x949fda['push'](_0x20b61e),_0x20b61e['addEventListener']('click',()=>{_0x949fda['forEach'](_0x3a281f=>_0x3a281f['classList']['remove']('active')),_0x20b61e['classList']['add']('active'),this['lastActiveTabIdx']=_0x19b804,this['renderTab'](_0x19b804);});};_0x235f00(0x0,'Material',this['isMaterialTabEnabled']()),_0x235f00(0x1,'Node',this['isNodeTabEnabled']()),_0x235f00(0x2,'Property',this['isPropertyTabEnabled']()),this['content']['appendChild'](_0x4a0fd5),this['content']['appendChild'](_0x587fba),this['details']=_0x587fba;let _0x316f3b=0x0;if(_0x2b2a95)_0x316f3b=this['lastActiveTabIdx'];else _0x1fc1f8<0x0?_0x316f3b=this['lastActiveTabIdx']:_0x316f3b=_0x1fc1f8;_0x949fda[_0x316f3b]['classList']['add']('active'),this['renderTab'](_0x316f3b);}['isMaterialTabEnabled'](){const _0x3908c8=this['viewer']['getHighlightedObject']();if(!_0x3908c8)return ![];const _0x13e4da=_0x3908c8;if(!_0x13e4da['geometry']||!_0x13e4da['material'])return ![];return !![];}['isNodeTabEnabled'](){const _0x50e680=this['viewer']['getHighlightedObject']();return !!_0x50e680;}['isPropertyTabEnabled'](){const _0x5eff2e=this['viewer']['getHighlightedObject']();return !!_0x5eff2e;}['renderTab'](_0x37e65e){const _0x24896b=this['viewer']['getHighlightedObject']();if(_0x37e65e===0x0)this['renderMaterial'](_0x24896b);else {if(_0x37e65e===0x1)this['renderNode'](_0x24896b);else _0x37e65e===0x2&&this['renderProperty'](_0x24896b);}}['clearDetails'](){this['details']&&(this['details']['innerHTML']='');}['renderMaterial'](_0x1d7d04){const _0x35a16d=this['details'];if(!_0x35a16d)return;this['clearDetails']();if(!_0x1d7d04){_0x35a16d['innerHTML']='<p>Nothing\x20selected.</p>';return;}const _0x574156=_0x1d7d04;if(!_0x574156['isMesh']){_0x35a16d['innerHTML']='<p>Target\x20is\x20not\x20a\x20Mesh.</p>';return;}if(!_0x574156['material']){_0x35a16d['innerHTML']='<p>No\x20material\x20found.</p>';return;}if(Array['isArray'](_0x574156['material'])&&_0x574156['material']['length']>0x0){const _0x22cb80=document['createElement']('div');_0x22cb80['innerHTML']='There\x20are\x20'+_0x574156['material']['length']+'\x20materials,\x20will\x20show\x20the\x20first\x20one!',_0x35a16d['appendChild'](_0x22cb80);}let _0x4145e0,_0x1611b2;Array['isArray'](_0x574156['material'])?(_0x4145e0=_0x574156['userData']['originalMaterial'][0x0],_0x1611b2=_0x574156['material'][0x0]):(_0x4145e0=_0x574156['userData']['originalMaterial'],_0x1611b2=_0x574156['material']);const _0x7c769e=document['createElement']('div');_0x7c769e['style']['marginBottom']='6px';const _0x50658f=document['createElement']('label');_0x50658f['textContent']='Name:\x20';const _0x3d6a8d=document['createElement']('input');_0x3d6a8d['type']='text',_0x3d6a8d['value']=_0x4145e0['name']||'',_0x3d6a8d['style']['width']='200px',_0x3d6a8d['placeholder']='<empty>',_0x3d6a8d['addEventListener']('change',_0x5484c9=>{_0x5484c9['stopPropagation'](),_0x4145e0['name']=_0x3d6a8d['value'],_0x4145e0['needsUpdate']=!![],_0x1611b2['name']=_0x4145e0['name'],_0x1611b2['needsUpdate']=!![];}),_0x7c769e['appendChild'](_0x50658f),_0x7c769e['appendChild'](_0x3d6a8d),_0x35a16d['appendChild'](_0x7c769e);const _0x4b8a14=document['createElement']('div');_0x4b8a14['style']['marginBottom']='6px',_0x4b8a14['textContent']='uuid:\x20'+(_0x4145e0['uuid']||''),_0x35a16d['appendChild'](_0x4b8a14);const _0x130847=document['createElement']('div');_0x130847['style']['marginBottom']='6px';const _0xb0a564=document['createElement']('label'),_0x3df935=document['createElement']('input');_0x3df935['type']='checkbox',_0x3df935['checked']=_0x4145e0['side']===THREE['DoubleSide'],_0x3df935['addEventListener']('change',()=>{_0x4145e0['side']=_0x3df935['checked']?THREE['DoubleSide']:THREE['FrontSide'],_0x4145e0['needsUpdate']=!![],_0x1611b2['side']=_0x4145e0['side'],_0x1611b2['needsUpdate']=!![],this['viewer']['enableRender']();}),_0xb0a564['appendChild'](_0x3df935),_0xb0a564['appendChild'](document['createTextNode']('\x20Double\x20sided')),_0x130847['appendChild'](_0xb0a564),_0x35a16d['appendChild'](_0x130847);const _0x4b41f1=document['createElement']('div');_0x4b41f1['style']['marginBottom']='6px';const _0x8e725a=document['createElement']('label'),_0x5d3f01=document['createElement']('input');_0x5d3f01['type']='checkbox',_0x5d3f01['disabled']=_0x4145e0['wireframe']==null,_0x5d3f01['checked']=!!_0x4145e0['wireframe'],_0x5d3f01['addEventListener']('change',()=>{_0x4145e0['wireframe']=_0x5d3f01['checked'],_0x4145e0['needsUpdate']=!![],_0x1611b2['wireframe']=_0x5d3f01['checked'],_0x1611b2['needsUpdate']=!![],this['viewer']['enableRender']();}),_0x8e725a['appendChild'](_0x5d3f01),_0x8e725a['appendChild'](document['createTextNode']('\x20Wireframe')),_0x4b41f1['appendChild'](_0x8e725a),_0x35a16d['appendChild'](_0x4b41f1);}['renderNode'](_0x2b6a68){const _0x565924=this['details'];if(!_0x565924)return;this['clearDetails']();if(!_0x2b6a68){_0x565924['innerHTML']='<p>Nothing\x20selected.</p>';return;}if(!this['nodePanel']){const _0x410003=document['createElement']('div');_0x410003['style']['marginBottom']='8px';const _0x4ce1c1=document['createElement']('div');_0x4ce1c1['style']['display']='flex',_0x4ce1c1['style']['gap']='8px',_0x4ce1c1['style']['marginBottom']='8px';const _0xd6dc58=document['createElement']('button');_0xd6dc58['type']='button',_0xd6dc58['textContent']='Local',_0xd6dc58['className']='prop-node-mode-btn\x20active';const _0x581c7f=document['createElement']('button');_0x581c7f['type']='button',_0x581c7f['textContent']='Global',_0x581c7f['className']='prop-node-mode-btn';const _0x2d8919=_0x5064b6=>{_0xd6dc58['classList']['toggle']('active',_0x5064b6),_0x581c7f['classList']['toggle']('active',!_0x5064b6);const _0x31707e=this['viewer']['getHighlightedObject']();_0x31707e&&this['updateNodeInputs'](_0x31707e);};_0xd6dc58['addEventListener']('click',_0x49516c=>{_0x49516c['stopPropagation'](),_0x2d8919(!![]);}),_0x581c7f['addEventListener']('click',_0x284a96=>{_0x284a96['stopPropagation'](),_0x2d8919(![]);}),_0x4ce1c1['appendChild'](_0xd6dc58),_0x4ce1c1['appendChild'](_0x581c7f),_0x410003['appendChild'](_0x4ce1c1),this['nodeModeButtons']={'local':_0xd6dc58,'global':_0x581c7f};const _0x3d6231=_0x3a2c25=>{const _0x454073=document['createElement']('div');_0x454073['style']['marginBottom']='6px';const _0x2bf007=document['createElement']('div');_0x2bf007['textContent']=_0x3a2c25,_0x2bf007['style']['fontWeight']='600',_0x454073['appendChild'](_0x2bf007);const _0xc64116=document['createElement']('div');_0xc64116['style']['display']='flex',_0xc64116['style']['gap']='6px';const _0x1a3ef7=[];return ['x','y','z']['forEach'](()=>{const _0x3744fc=document['createElement']('input');_0x3744fc['type']='number',_0x3744fc['style']['width']='70px',_0x3744fc['addEventListener']('change',()=>{const _0x54b451=this['viewer']['getHighlightedObject']();_0x54b451&&this['applyNodeInputs'](_0x54b451);}),_0xc64116['appendChild'](_0x3744fc),_0x1a3ef7['push'](_0x3744fc);}),_0x454073['appendChild'](_0xc64116),_0x410003['appendChild'](_0x454073),_0x1a3ef7;},_0x3fc988=_0x3d6231('Translation'),_0x27e165=_0x3d6231('Rotation\x20(deg)'),_0x2582cd=_0x3d6231('Scale');this['nodeInputs']={'translation':_0x3fc988,'rotation':_0x27e165,'scale':_0x2582cd};const _0x3ae5f2=document['createElement']('div');_0x3ae5f2['style']['marginBottom']='12px',_0x3ae5f2['style']['display']='none';const _0x360506=document['createElement']('div');_0x360506['style']['fontWeight']='600',_0x360506['style']['marginBottom']='6px',_0x360506['textContent']='Geometry',_0x3ae5f2['appendChild'](_0x360506);const _0x104d37=document['createElement']('div');_0x104d37['style']['paddingLeft']='12px';const _0x2109fc=document['createElement']('div');_0x2109fc['className']='geometry-vertices',_0x104d37['appendChild'](_0x2109fc);const _0x50bf2e=document['createElement']('div');_0x50bf2e['className']='geometry-triangles',_0x104d37['appendChild'](_0x50bf2e),_0x3ae5f2['appendChild'](_0x104d37),_0x410003['appendChild'](_0x3ae5f2);const _0x25f1df=document['createElement']('div');_0x25f1df['style']['marginBottom']='12px',_0x25f1df['style']['display']='none';const _0x401ab8=document['createElement']('div');_0x401ab8['style']['fontWeight']='600',_0x401ab8['style']['marginBottom']='6px',_0x401ab8['textContent']='Bounding\x20Box',_0x25f1df['appendChild'](_0x401ab8);const _0x5156f5=document['createElement']('div');_0x5156f5['style']['paddingLeft']='12px';const _0x152853=document['createElement']('div');_0x152853['className']='boundingbox-size',_0x5156f5['appendChild'](_0x152853),_0x25f1df['appendChild'](_0x5156f5),_0x410003['appendChild'](_0x25f1df),this['geometrySection']=_0x3ae5f2,this['boundingBoxSection']=_0x25f1df,this['nodePanel']=_0x410003;}_0x565924['appendChild'](this['nodePanel']),this['updateNodeInputs'](_0x2b6a68),this['updateGeometryInfo'](_0x2b6a68),this['updateBoundingBoxInfo'](_0x2b6a68);}['updateNodeInputs'](_0xc00b2a){var _0xa697e8;if(!this['nodeInputs'])return;const {translation:_0x5c9c41,rotation:_0x59e18d,scale:_0x56c194}=this['nodeInputs'],_0xf4fae2=!!((_0xa697e8=this['nodeModeButtons'])===null||_0xa697e8===void 0x0?void 0x0:_0xa697e8['local']['classList']['contains']('active'));if(_0xf4fae2){const _0x2af691=_0xc00b2a['position'];_0x5c9c41[0x0]['value']=_0x2af691['x']['toFixed'](0x3),_0x5c9c41[0x1]['value']=_0x2af691['y']['toFixed'](0x3),_0x5c9c41[0x2]['value']=_0x2af691['z']['toFixed'](0x3);const _0xcce8c9=_0xc00b2a['rotation'];_0x59e18d[0x0]['value']=THREE['MathUtils']['radToDeg'](_0xcce8c9['x'])['toFixed'](0x3),_0x59e18d[0x1]['value']=THREE['MathUtils']['radToDeg'](_0xcce8c9['y'])['toFixed'](0x3),_0x59e18d[0x2]['value']=THREE['MathUtils']['radToDeg'](_0xcce8c9['z'])['toFixed'](0x3);const _0xb4eb04=_0xc00b2a['scale'];_0x56c194[0x0]['value']=_0xb4eb04['x']['toFixed'](0x3),_0x56c194[0x1]['value']=_0xb4eb04['y']['toFixed'](0x3),_0x56c194[0x2]['value']=_0xb4eb04['z']['toFixed'](0x3);}else {const _0x1c8009=_0xc00b2a['matrixWorld'],_0x33a754=new THREE['Vector3'](),_0x47b746=new THREE['Quaternion'](),_0x3fd932=new THREE['Vector3']();_0x1c8009['decompose'](_0x33a754,_0x47b746,_0x3fd932),_0x5c9c41[0x0]['value']=_0x33a754['x']['toFixed'](0x3),_0x5c9c41[0x1]['value']=_0x33a754['y']['toFixed'](0x3),_0x5c9c41[0x2]['value']=_0x33a754['z']['toFixed'](0x3);const _0x26f98f=new THREE['Euler']()['setFromQuaternion'](_0x47b746,_0xc00b2a['rotation']['order']);_0x59e18d[0x0]['value']=THREE['MathUtils']['radToDeg'](_0x26f98f['x'])['toFixed'](0x3),_0x59e18d[0x1]['value']=THREE['MathUtils']['radToDeg'](_0x26f98f['y'])['toFixed'](0x3),_0x59e18d[0x2]['value']=THREE['MathUtils']['radToDeg'](_0x26f98f['z'])['toFixed'](0x3),_0x56c194[0x0]['value']=_0x3fd932['x']['toFixed'](0x3),_0x56c194[0x1]['value']=_0x3fd932['y']['toFixed'](0x3),_0x56c194[0x2]['value']=_0x3fd932['z']['toFixed'](0x3);}}['applyNodeInputs'](_0x397fd0){var _0x14565c;if(!this['nodeInputs'])return;const {translation:_0x1a024a,rotation:_0x17c29a,scale:_0x357a1d}=this['nodeInputs'],_0x365caf=parseFloat(_0x1a024a[0x0]['value'])||0x0,_0x917f9f=parseFloat(_0x1a024a[0x1]['value'])||0x0,_0x5deab2=parseFloat(_0x1a024a[0x2]['value'])||0x0,_0x128786=parseFloat(_0x17c29a[0x0]['value'])||0x0,_0x2b2892=parseFloat(_0x17c29a[0x1]['value'])||0x0,_0x4ac0e3=parseFloat(_0x17c29a[0x2]['value'])||0x0,_0x46bc3e=parseFloat(_0x357a1d[0x0]['value'])||0x1,_0x35cae8=parseFloat(_0x357a1d[0x1]['value'])||0x1,_0xff84f0=parseFloat(_0x357a1d[0x2]['value'])||0x1,_0x4ce78f=!!((_0x14565c=this['nodeModeButtons'])===null||_0x14565c===void 0x0?void 0x0:_0x14565c['local']['classList']['contains']('active'));if(_0x4ce78f)_0x397fd0['position']['set'](_0x365caf,_0x917f9f,_0x5deab2),_0x397fd0['rotation']['set'](THREE['MathUtils']['degToRad'](_0x128786),THREE['MathUtils']['degToRad'](_0x2b2892),THREE['MathUtils']['degToRad'](_0x4ac0e3)),_0x397fd0['scale']['set'](_0x46bc3e,_0x35cae8,_0xff84f0),_0x397fd0['updateMatrixWorld'](!![]);else {const _0x2c9b05=new THREE['Vector3'](_0x365caf,_0x917f9f,_0x5deab2),_0x2eb9b0=new THREE['Euler'](THREE['MathUtils']['degToRad'](_0x128786),THREE['MathUtils']['degToRad'](_0x2b2892),THREE['MathUtils']['degToRad'](_0x4ac0e3),_0x397fd0['rotation']['order']),_0x249521=new THREE['Quaternion']()['setFromEuler'](_0x2eb9b0),_0x5bd0cd=new THREE['Vector3'](_0x46bc3e,_0x35cae8,_0xff84f0),_0x55b91b=new THREE['Matrix4']()['compose'](_0x2c9b05,_0x249521,_0x5bd0cd),_0x311538=new THREE['Vector3'](),_0x210427=new THREE['Quaternion'](),_0x742f20=new THREE['Vector3']();if(_0x397fd0['parent']){const _0x2507c4=new THREE['Matrix4']();_0x2507c4['copy'](_0x397fd0['parent']['matrixWorld']),_0x2507c4['invert']();const _0x308c17=_0x2507c4['multiply'](_0x55b91b);_0x308c17['decompose'](_0x311538,_0x210427,_0x742f20);}else _0x55b91b['decompose'](_0x311538,_0x210427,_0x742f20);_0x397fd0['position']['copy'](_0x311538),_0x397fd0['quaternion']['copy'](_0x210427),_0x397fd0['scale']['copy'](_0x742f20),_0x397fd0['updateMatrixWorld'](!![]);}this['updateBoundingBoxInfo'](_0x397fd0),this['viewer']['enableRender']();}['updateGeometryInfo'](_0x2e7f1f){const _0x125bc8=this['geometrySection'];if(!_0x125bc8)return;const _0x1582cc=_0x2e7f1f['geometry'];if(_0x1582cc){const _0x17b8de=_0x125bc8['querySelector']('.geometry-vertices'),_0x1dcc98=_0x125bc8['querySelector']('.geometry-triangles');if(_0x17b8de&&_0x1dcc98){const _0x44affd=this['getVertexCount'](_0x2e7f1f),_0x13ca25=this['getTriangleCount'](_0x2e7f1f);_0x17b8de['textContent']='Vertices:\x20'+_0x44affd,_0x1dcc98['textContent']='Triangles:\x20'+_0x13ca25;}_0x125bc8['style']['display']='block';}else _0x125bc8['style']['display']='none';}['updateBoundingBoxInfo'](_0x2192c9){const _0x56eb03=this['boundingBoxSection'];if(!_0x56eb03)return;const _0x5bd05f=_0x2192c9['geometry'];if(_0x5bd05f){const _0x4d144d=_0x56eb03['querySelector']('.boundingbox-size');if(_0x4d144d){const _0x2202e1=this['getGlobalSize'](_0x2192c9);_0x4d144d['textContent']='Global\x20size:\x20W\x20'+_0x2202e1['width']['toFixed'](0x3)+',\x20H\x20'+_0x2202e1['height']['toFixed'](0x3)+',\x20L\x20'+_0x2202e1['length']['toFixed'](0x3);}_0x56eb03['style']['display']='block';}else _0x56eb03['style']['display']='none';}['getVertexCount'](_0x21194b){var _0x33a0ae,_0x26935e;const _0x4823d9=_0x21194b['geometry'];return ((_0x26935e=(_0x33a0ae=_0x4823d9===null||_0x4823d9===void 0x0?void 0x0:_0x4823d9['attributes'])===null||_0x33a0ae===void 0x0?void 0x0:_0x33a0ae['position'])===null||_0x26935e===void 0x0?void 0x0:_0x26935e['count'])||0x0;}['getTriangleCount'](_0x5731ac){const _0x478e40=_0x5731ac['geometry'],_0x534832=_0x478e40===null||_0x478e40===void 0x0?void 0x0:_0x478e40['index'];return _0x534832?_0x534832['count']/0x3:0x0;}['getGlobalSize'](_0x3afc1d){const _0x38af5a=new THREE['Box3']()['setFromObject'](_0x3afc1d),_0xaee708=new THREE['Vector3']();return _0x38af5a['getSize'](_0xaee708),{'width':_0xaee708['x'],'height':_0xaee708['y'],'length':_0xaee708['z']};}['renderProperty'](_0x2e8f4b){const _0x31da5f=this['details'];if(!_0x31da5f)return;this['clearDetails']();if(!_0x2e8f4b){_0x31da5f['innerHTML']='<p>Nothing\x20selected.</p>';return;}const _0x3d047f=_0x2e8f4b['userData']||{};if(!_0x3d047f||Object['keys'](_0x3d047f)['length']===0x0){_0x31da5f['innerHTML']='<p>No\x20userData\x20properties.</p>';return;}const _0x1bc2f4=['originalMaterial','isHighlight'],_0x2a5ffd=document['createElement']('table');_0x2a5ffd['style']['width']='100%',_0x2a5ffd['style']['borderCollapse']='collapse';for(const _0x329af1 of Object['keys'](_0x3d047f)){if(_0x1bc2f4['includes'](_0x329af1))continue;const _0x3dcb28=_0x30e389=>{const _0x2ec0f3=document['createElement']('tr'),_0x229461=document['createElement']('td');_0x229461['style']['padding']='4px\x206px',_0x229461['style']['fontWeight']='600',_0x229461['style']['verticalAlign']='top',_0x229461['textContent']=_0x329af1;const _0x25abd8=document['createElement']('td');_0x25abd8['style']['padding']='4px\x206px',_0x25abd8['textContent']=_0x30e389,_0x2ec0f3['appendChild'](_0x229461),_0x2ec0f3['appendChild'](_0x25abd8),_0x2a5ffd['appendChild'](_0x2ec0f3);},_0x3d348e=_0x3d047f[_0x329af1];_0x3d348e!==null&&typeof _0x3d348e==='object'&&Object['prototype']['toString']['call'](_0x3d348e)==='[object\x20Object]'?_0x3dcb28(JSON['stringify'](_0x3d348e)):_0x3dcb28(_0x3d348e);}_0x31da5f['appendChild'](_0x2a5ffd);}}PropertyPlugin['DEFAULT_ID']='PropertyPlugin';
|
|
185
|
+
|
|
186
|
+
var css_248z$5 = ".statsOutput{left:1px;opacity:.6;position:absolute;top:1px;z-index:99}";
|
|
187
|
+
styleInject(css_248z$5);
|
|
188
|
+
|
|
189
|
+
var stats_min = {exports: {}};
|
|
190
|
+
|
|
191
|
+
(function(_0x440624,_0x2a064b){(function(_0x5a188b,_0x56b8e7){_0x440624['exports']=_0x56b8e7();}(commonjsGlobal,function(){var _0x47be9b=function(){function _0x3ac5ad(_0x3d1485){return _0x3faa3f['appendChild'](_0x3d1485['dom']),_0x3d1485;}function _0x3292b1(_0x1d7043){for(var _0x42e3f2=0x0;_0x42e3f2<_0x3faa3f['children']['length'];_0x42e3f2++)_0x3faa3f['children'][_0x42e3f2]['style']['display']=_0x42e3f2===_0x1d7043?'block':'none';_0x519a31=_0x1d7043;}var _0x519a31=0x0,_0x3faa3f=document['createElement']('div');_0x3faa3f['style']['cssText']='position:fixed;top:0;left:0;cursor:pointer;opacity:0.9;z-index:10000',_0x3faa3f['addEventListener']('click',function(_0x2e2a67){_0x2e2a67['preventDefault'](),_0x3292b1(++_0x519a31%_0x3faa3f['children']['length']);},!0x1);var _0x5c7c5c=(performance||Date)['now'](),_0x56d54a=_0x5c7c5c,_0x51aed2=0x0,_0x26d85e=_0x3ac5ad(new _0x47be9b['Panel']('FPS','#0ff','#002')),_0x5460de=_0x3ac5ad(new _0x47be9b['Panel']('MS','#0f0','#020'));if(self['performance']&&self['performance']['memory'])var _0x54f743=_0x3ac5ad(new _0x47be9b['Panel']('MB','#f08','#201'));return _0x3292b1(0x0),{'REVISION':0x10,'dom':_0x3faa3f,'addPanel':_0x3ac5ad,'showPanel':_0x3292b1,'begin':function(){_0x5c7c5c=(performance||Date)['now']();},'end':function(){_0x51aed2++;var _0x4615dc=(performance||Date)['now']();_0x5460de['update'](_0x4615dc-_0x5c7c5c,0xc8);if(_0x4615dc>_0x56d54a+0x3e8&&(_0x26d85e['update'](0x3e8*_0x51aed2/(_0x4615dc-_0x56d54a),0x64),_0x56d54a=_0x4615dc,_0x51aed2=0x0,_0x54f743)){var _0x52ef0=performance['memory'];_0x54f743['update'](_0x52ef0['usedJSHeapSize']/0x100000,_0x52ef0['jsHeapSizeLimit']/0x100000);}return _0x4615dc;},'update':function(){_0x5c7c5c=this['end']();},'domElement':_0x3faa3f,'setMode':_0x3292b1};};return _0x47be9b['Panel']=function(_0x4ae042,_0x2131ea,_0xd5be02){var _0x48a267=Infinity,_0x589c90=0x0,_0x597ff9=Math['round'],_0x563dea=_0x597ff9(window['devicePixelRatio']||0x1),_0x1e1ca9=0x50*_0x563dea,_0x4e2a8a=0x30*_0x563dea,_0x164183=0x3*_0x563dea,_0x107282=0x2*_0x563dea,_0x29c0e1=0x3*_0x563dea,_0x13a080=0xf*_0x563dea,_0x220dd3=0x4a*_0x563dea,_0x59dbeb=0x1e*_0x563dea,_0xcd1d4b=document['createElement']('canvas');_0xcd1d4b['width']=_0x1e1ca9,_0xcd1d4b['height']=_0x4e2a8a,_0xcd1d4b['style']['cssText']='width:80px;height:48px';var _0x3924e1=_0xcd1d4b['getContext']('2d');return _0x3924e1['font']='bold\x20'+0x9*_0x563dea+'px\x20Helvetica,Arial,sans-serif',_0x3924e1['textBaseline']='top',_0x3924e1['fillStyle']=_0xd5be02,_0x3924e1['fillRect'](0x0,0x0,_0x1e1ca9,_0x4e2a8a),_0x3924e1['fillStyle']=_0x2131ea,_0x3924e1['fillText'](_0x4ae042,_0x164183,_0x107282),_0x3924e1['fillRect'](_0x29c0e1,_0x13a080,_0x220dd3,_0x59dbeb),_0x3924e1['fillStyle']=_0xd5be02,_0x3924e1['globalAlpha']=0.9,_0x3924e1['fillRect'](_0x29c0e1,_0x13a080,_0x220dd3,_0x59dbeb),{'dom':_0xcd1d4b,'update':function(_0x50afda,_0x4923e5){_0x48a267=Math['min'](_0x48a267,_0x50afda),_0x589c90=Math['max'](_0x589c90,_0x50afda),_0x3924e1['fillStyle']=_0xd5be02,_0x3924e1['globalAlpha']=0x1,_0x3924e1['fillRect'](0x0,0x0,_0x1e1ca9,_0x13a080),_0x3924e1['fillStyle']=_0x2131ea,_0x3924e1['fillText'](_0x597ff9(_0x50afda)+'\x20'+_0x4ae042+'\x20('+_0x597ff9(_0x48a267)+'-'+_0x597ff9(_0x589c90)+')',_0x164183,_0x107282),_0x3924e1['drawImage'](_0xcd1d4b,_0x29c0e1+_0x563dea,_0x13a080,_0x220dd3-_0x563dea,_0x59dbeb,_0x29c0e1,_0x13a080,_0x220dd3-_0x563dea,_0x59dbeb),_0x3924e1['fillRect'](_0x29c0e1+_0x220dd3-_0x563dea,_0x13a080,_0x563dea,_0x59dbeb),_0x3924e1['fillStyle']=_0xd5be02,_0x3924e1['globalAlpha']=0.9,_0x3924e1['fillRect'](_0x29c0e1+_0x220dd3-_0x563dea,_0x13a080,_0x563dea,_0x597ff9((0x1-_0x50afda/_0x4923e5)*_0x59dbeb));}};},_0x47be9b;}));}(stats_min));var stats_minExports=stats_min['exports'];var _0x57638d = getDefaultExportFromCjs(stats_minExports);
|
|
192
|
+
|
|
193
|
+
class StatsPlugin extends Plugin{constructor(_0x115bb0){const _0x489fc4='StatsPlugin';super(_0x115bb0,{'id':_0x489fc4}),this['init']();}['init'](){var _0x3d2b82;const _0x3b5602=new _0x57638d();_0x3b5602['setMode'](0x0);const _0x1c3f2c=document['createElement']('div');_0x1c3f2c['classList']['add']('statsOutput'),_0x1c3f2c['appendChild'](_0x3b5602['domElement']),(_0x3d2b82=this['viewer']['widgetContainer'])===null||_0x3d2b82===void 0x0?void 0x0:_0x3d2b82['append'](_0x1c3f2c),this['stats']=_0x3b5602,this['viewer']['addEventListener'](ViewerEvent['OnAnimate'],()=>{var _0x14a8f0;(_0x14a8f0=this['stats'])===null||_0x14a8f0===void 0x0?void 0x0:_0x14a8f0['update']();});}['show'](){var _0x102377;(_0x102377=this['stats'])===null||_0x102377===void 0x0?void 0x0:_0x102377['showPanel'](0x0);}['hide'](){var _0x5efc25;(_0x5efc25=this['stats'])===null||_0x5efc25===void 0x0?void 0x0:_0x5efc25['showPanel'](-0x1);}['destroy'](){super['destroy'](),this['stats']=undefined;}}
|
|
194
|
+
|
|
195
|
+
class GradientColorSkybox extends THREE['Mesh']{constructor(_0x58c4ba,_0x5c5beb,_0x42505e,_0x3232d8=0xfa0,_0x296c62=0x20,_0xb6b179=0xf,_0x100af7=new THREE['Vector3'](),_0x489766=new THREE['Vector3'](0x0,0.7,0.5)){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.y;\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 _0x1f58f3={'topColor':{'value':_0x58c4ba},'skylineColor':{'value':_0x5c5beb},'bottomColor':{'value':_0x42505e},'offset':{'value':0x190},'exponent':{'value':0.9},'skyCenter':{'value':_0x100af7||new THREE['Vector3']()},'sunDirection':{'value':_0x489766['normalize']()}};this['geometry']=new THREE['SphereGeometry'](_0x3232d8,_0x296c62,_0xb6b179),this['material']=new THREE['ShaderMaterial']({'uniforms':_0x1f58f3,'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']=0xfa0,GradientColorSkybox['MAX_SKY_RADIUS']=0x4e20;
|
|
196
|
+
|
|
197
|
+
class SkyboxPlugin extends Plugin{constructor(_0x21384d,_0x1974d8){const _0x211001=(_0x1974d8===null||_0x1974d8===void 0x0?void 0x0:_0x1974d8['id'])||SkyboxPlugin['DEFAULT_ID'];super(_0x21384d,{'id':_0x211001}),(_0x1974d8===null||_0x1974d8===void 0x0?void 0x0:_0x1974d8['color'])?this['setSkyboxByColor'](_0x1974d8['color']):this['setSkyboxByGradientColors'](),_0x21384d['addEventListener'](ViewerEvent['ModelLoad'],()=>{let _0x5f074e=_0x21384d['getBBox']();const _0x553c90=this['viewer']['getHomeView']();if(_0x5f074e){_0x5f074e=_0x5f074e['clone']();if(_0x553c90&&_0x553c90['eye']&&_0x553c90['look']){const _0x3dae7c=_0x553c90&&CommonUtils['arrayToVector3'](_0x553c90['eye']),_0xa98796=_0x553c90&&CommonUtils['arrayToVector3'](_0x553c90['look']),_0xcee2=new THREE['Box3']();_0xcee2['setFromPoints']([_0x3dae7c,_0xa98796]),_0x5f074e['union'](_0xcee2);}this['updateGradientColorSkybox'](_0x5f074e);}});}['setSkyboxByColor'](_0xddcee9=[0.92,0.95,0.96]){this['gradientColorSkybox']&&(this['gradientColorSkybox']['visible']=![]),this['viewer']['getSceneManager']()['setBackground'](this['rgb2Color'](_0xddcee9)),this['viewer']['enableRender']();}['setSkyboxByGradientColors'](_0x2a94d1=[0.52,0.71,0.96],_0x26c009=[0x1,0x1,0x1],_0x382df4=[0.6,0.6,0.6]){this['gradientColorSkybox']&&(this['gradientColorSkybox']['removeFromParent'](),this['gradientColorSkybox']=undefined);const _0x267614=this['rgb2Color'](_0x2a94d1),_0x1d2372=this['rgb2Color'](_0x26c009),_0x495be8=this['rgb2Color'](_0x382df4);this['gradientColorSkybox']=new GradientColorSkybox(_0x267614,_0x1d2372,_0x495be8),this['viewer']['scene']['add'](this['gradientColorSkybox']),this['viewer']['enableRender']();}['setSkyboxByCubeTexture'](_0x259484){this['gradientColorSkybox']&&(this['gradientColorSkybox']['visible']=![]);const _0x52dac2=new THREE['CubeTextureLoader']();_0x52dac2['load'](_0x259484,_0x5677c9=>{this['viewer']['getSceneManager']()['setBackground'](_0x5677c9),this['viewer']['enableRender']();});}['updateGradientColorSkybox'](_0x33abb7){if(!this['gradientColorSkybox'])return;const _0x3efe02=_0x33abb7['max']['x']-_0x33abb7['min']['x']+(_0x33abb7['max']['y']-_0x33abb7['min']['y'])+(_0x33abb7['max']['z']-_0x33abb7['min']['z']);let _0x5f477b=_0x3efe02*0x2;if(_0x5f477b<GradientColorSkybox['MIN_SKY_RADIUS'])_0x5f477b=GradientColorSkybox['MIN_SKY_RADIUS'];else _0x5f477b>GradientColorSkybox['MAX_SKY_RADIUS']&&(_0x5f477b=GradientColorSkybox['MAX_SKY_RADIUS']);this['gradientColorSkybox']['geometry']=new THREE['SphereGeometry'](_0x5f477b,0x20,0xf);const _0x51ecb2=this['viewer']['getCameraManager'](),_0x27fabe=_0x5f477b*0x2;_0x51ecb2['camera']['far']<=_0x27fabe&&log['warn']('[Skybox]\x20camera.far\x20is\x20'+_0x51ecb2['camera']['far']+',\x20which\x20is\x20too\x20small,\x20suggest\x20to\x20changed\x20to\x20'+_0x27fabe),this['viewer']['enableRender']();}['destroy'](){var _0x28e362;super['destroy'](),(_0x28e362=this['gradientColorSkybox'])===null||_0x28e362===void 0x0?void 0x0:_0x28e362['removeFromParent'](),this['gradientColorSkybox']=undefined,this['viewer']['getSceneManager']()['setBackground'](null);}['rgb2Color'](_0x4ea288){const _0xfc5566=_0x4ea288[0x0]||0x0,_0x5ed589=_0x4ea288[0x1]||0x0,_0x13c679=_0x4ea288[0x2]||0x0,_0x58c237=new THREE['Color']();return _0x58c237['setRGB'](_0xfc5566,_0x5ed589,_0x13c679),_0x58c237;}}SkyboxPlugin['DEFAULT_ID']='SkyboxPlugin';
|
|
198
|
+
|
|
199
|
+
var css_248z$4 = ".settings-2d{height:300px;right:20px;top:30px;width:330px}.settings-2d .content .color-input{border:1px solid gray;cursor:pointer;font-size:0;height:20px;width:20px}.settings-2d .content .color-input:hover{border:1px solid blue}.settings-2d .content .setting{list-style:none;margin-bottom:5px}.settings-2d .content .setting li{list-style:none;margin:2px;padding:8px;vertical-align:text-top}.settings-2d .content .setting li:hover{background:linear-gradient(90deg,#ebebff,rgba(235,235,255,0))}.settings-2d .content .setting span{display:inline-block;margin-right:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:50%}.settings-2d .content .setting select{border:1px solid #000;vertical-align:bottom;width:45%}";
|
|
200
|
+
styleInject(css_248z$4);
|
|
201
|
+
|
|
202
|
+
const en$4={'settings':'Settings','hideSmallObjects':'Hide\x20Small\x20Objects','backgroundColor':'Background\x20Color','scaleRate':'Scale\x20Rate(curr:'};const cn$4={'settings':'设置','hideSmallObjects':'隐藏较小实体','backgroundColor':'背景色','scaleRate':'缩放比例(当前:'};const i18n$4=i18next['createInstance']();const lng$4='en';i18n$4['init']({'lng':lng$4,'debug':![],'resources':{'en':{'translation':en$4},'cn':{'translation':cn$4}}});
|
|
203
|
+
|
|
204
|
+
class Settings2dPlugin extends Plugin{constructor(_0x3e2ebb,_0x3f336f){const _0x28b244=(_0x3f336f===null||_0x3f336f===void 0x0?void 0x0:_0x3f336f['id'])||Settings2dPlugin['DEFAULT_ID'];super(_0x3e2ebb,{'id':_0x28b244}),this['cfg']=_0x3f336f||{'id':_0x28b244},this['cfg']['visible']!==![]&&this['init']();}['init'](){var _0xfa3d91;const _0x5f2b0e=this['viewer'];this['cfg']['containerId']&&(this['container']=document['getElementById'](this['cfg']['containerId'])),!this['container']&&(this['container']=_0x5f2b0e['widgetContainer']),this['initLocalization'](),this['basePanel']=new BasePanel({'container':this['container'],'title':i18n$4['t']('settings'),'cssClass':'settings-2d','onClose':()=>this['onClose'](),'viewportContainer':this['viewer']['viewerContainer']}),this['content']=(_0xfa3d91=this['basePanel'])===null||_0xfa3d91===void 0x0?void 0x0:_0xfa3d91['content'],this['addContent'](),this['addEventHandlers']();}['initLocalization'](){const _0x408cdb=this['cfg']['language']||DefaultLanguage;i18n$4['changeLanguage'](_0x408cdb);}['setVisible'](_0x4e251e){_0x4e251e&&!this['basePanel']&&this['init'](),this['basePanel']&&(this['basePanel']['setVisible'](_0x4e251e),this['dispatchEvent']('visibilitychange',_0x4e251e));}['isVisible'](){var _0x202651;return !!((_0x202651=this['basePanel'])===null||_0x202651===void 0x0?void 0x0:_0x202651['isVisible']());}['onClose'](){this['dispatchEvent']('visibilitychange',![]);}['destroy'](){var _0x465780;super['destroy'](),(_0x465780=this['basePanel'])===null||_0x465780===void 0x0?void 0x0:_0x465780['destroy']();}['addContent'](){var _0x3094ed;const _0x439d7d='\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20type=\x22button\x22\x20class=\x22color-input\x22\x20style=\x22background-color:\x20#212830\x22\x20value=\x22#212830\x22\x20/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20type=\x22button\x22\x20class=\x22color-input\x22\x20style=\x22background-color:\x20#080504\x22\x20value=\x22#080504\x22\x20/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20type=\x22button\x22\x20class=\x22color-input\x22\x20style=\x22background-color:\x20#ffffff\x22\x20value=\x22#ffffff\x22\x20/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20type=\x22button\x22\x20class=\x22color-input\x22\x20style=\x22background-color:\x20#888888\x22\x20value=\x22#888888\x22\x20/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20',_0x4be522=this['viewer']['findPlugin']('MeasurementPlugin'),_0x513c17=_0x4be522['getScale'](),_0x27ee6f=document['createElement']('div');_0x27ee6f['classList']['add']('panel-body');const _0x43b546=this['viewer'],_0x44ca56=_0x43b546['isHidingVisuallySmallObjectsEnabled']();_0x27ee6f['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<ul\x20class=\x22setting\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'+i18n$4['t']('hideSmallObjects')+'\x22>'+i18n$4['t']('hideSmallObjects')+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20id=\x22hideSmallObjects\x22\x20type=\x22checkbox\x22\x20'+(_0x44ca56?'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'+i18n$4['t']('backgroundColor')+'\x22>'+i18n$4['t']('backgroundColor')+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<td>'+_0x439d7d+'</td>\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\x20\x20\x20\x20<table>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<tr><td> </td></tr>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<tr>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<td\x20title=\x22We\x20need\x20to\x20set\x20a\x20proper\x20scale\x20rate\x20for\x20PDF\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'+i18n$4['t']('scaleRate')+'<span\x20id=\x22txtCurrScale\x22>'+(_0x513c17||'<None>')+'</span>)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</td>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<td\x20style=\x22font-size:\x2011px;\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<span\x20style=\x22width:\x20100px\x22>Known\x20length:</span>\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<input\x20type=\x22text\x22\x20id=\x22txtActualDist\x22\x20style=\x22width:\x2050px\x22></input></br>\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<span\x20style=\x22width:\x20100px\x22>Measured\x20length:</span>\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<input\x20type=\x22text\x22\x20id=\x22txtDistMeasureResult\x22\x20style=\x22width:\x2050px\x22></input>\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<div>\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\x20\x20\x20\x20Scale:\x20<span\x20id=\x22txtScale\x22></span>\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</div>\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<div>\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\x20\x20\x20\x20<input\x20type=\x22button\x22\x20id=\x22btnSetScale\x22\x20value=\x22Confirm\x22></input>\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\x20\x20\x20\x20<input\x20type=\x22button\x22\x20id=\x22btnClearScale\x22\x20value=\x22Reset\x22></input>\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</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</td>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</tr>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</table>\x0a\x20\x20\x20\x20\x20\x20\x20\x20',(_0x3094ed=this['content'])===null||_0x3094ed===void 0x0?void 0x0:_0x3094ed['appendChild'](_0x27ee6f);}['addEventHandlers'](){var _0x98e355;(_0x98e355=document['getElementById']('hideSmallObjects'))===null||_0x98e355===void 0x0?void 0x0:_0x98e355['addEventListener']('change',_0x3150da=>{const _0x2095f6=_0x3150da['target']['checked'],_0x535a75=this['viewer'];_0x535a75['enableHidingVisuallySmallObjects'](_0x2095f6);});const _0x4b6618=document['querySelectorAll']('input[type=button]'),_0x3201c2=[]['slice']['call'](_0x4b6618,0x0);_0x3201c2['forEach'](_0x5b6189=>{const _0x1f8d03=_0x5b6189;_0x1f8d03['addEventListener']('click',()=>{const _0x33a5a7=this['convertHexToRGB'](_0x1f8d03['value']);this['setBackgroundColor'](_0x33a5a7);});});const _0x34e257=this['viewer']['findPlugin']('MeasurementPlugin'),_0x2f6151=document['getElementById']('txtActualDist'),_0x1a2945=document['getElementById']('txtDistMeasureResult'),_0x2e92b3=document['getElementById']('txtScale'),_0x5804ee=document['getElementById']('txtCurrScale'),_0x390326=document['getElementById']('btnSetScale'),_0x94ab42=document['getElementById']('btnClearScale'),_0x34654b=()=>{const _0x3e17fc=parseFloat(_0x2f6151['value'])/parseFloat(_0x1a2945['value']);_0x2e92b3['innerText']=CommonUtils['numberToString'](_0x3e17fc);};_0x2f6151['oninput']=_0x34654b,_0x1a2945['oninput']=_0x34654b,_0x390326['onclick']=()=>{const _0x359c6e=parseFloat(_0x2f6151['value'])/parseFloat(_0x1a2945['value']);Number['isFinite'](_0x359c6e)&&!Number['isNaN'](_0x359c6e)&&_0x359c6e>0x0&&(_0x34e257['setScale'](_0x359c6e),_0x5804ee['innerText']=CommonUtils['numberToString'](_0x359c6e));},_0x94ab42['onclick']=()=>{_0x34e257['setScale'](0x1),_0x5804ee['innerText']='1';};}['convertHexToRGB'](_0x17558a){const _0x4416da={};return _0x17558a='0x'+_0x17558a['slice'](0x1),_0x4416da['r']=(_0x17558a>>0x10&0xff)/0xff,_0x4416da['g']=(_0x17558a>>0x8&0xff)/0xff,_0x4416da['b']=(_0x17558a&0xff)/0xff,_0x4416da;}['setBackgroundColor'](_0x118795){this['viewer']['setBackgroundColor'](_0x118795['r'],_0x118795['g'],_0x118795['b']);}}Settings2dPlugin['DEFAULT_ID']='Settings2dPlugin';
|
|
205
|
+
|
|
206
|
+
var css_248z$3 = ".settings-3d .content .bim-setting{list-style:none;margin-bottom:5px}.settings-3d .content .bim-setting li{list-style:none;margin:2px;padding:8px;vertical-align:text-top}.settings-3d .content .bim-setting li:hover{background:linear-gradient(90deg,#ebebff,rgba(235,235,255,0))}.settings-3d .content .bim-setting span{display:inline-block;margin-right:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:50%}.settings-3d .content .bim-setting select{border:1px solid #000;vertical-align:bottom;width:45%}";
|
|
207
|
+
styleInject(css_248z$3);
|
|
208
|
+
|
|
209
|
+
const en$3={'settings':'Settings','showOutline':'Show\x20Outline','doubleSidedMaterials':'Double-sided\x20Materials','showGroundGrid':'Show\x20Ground\x20Grid','showViewCube':'Show\x20View\x20Cube','showAxesHelper':'Show\x20AxesHelper','enableGroundShadow':'Enable\x20Ground\x20Shadow','skybox':'Skybox','colorWhite':'White','colorBlack':'Black','colorGray':'Gray','gradientColor1':'Blue/White/Grey','gradientColor2':'Deep\x20Blue/White/Grey','gradientColor3':'Light\x20Blue/White/Yellow','texture1':'Texture\x20-\x20Blue\x20Sky','texture2':'Texture\x20-\x20Cloudy','texture3':'Texture\x20-\x20Starry\x20Sky','setEnvMap':'Set\x20Environment\x20Map','default':'Default','cityStreet':'City\x20Street','grass':'Grass','sunshine':'Sunshine'};const cn$3={'settings':'设置','showOutline':'是否显示轮廓线','doubleSidedMaterials':'使用双面材质','showGroundGrid':'显示地面网格','showViewCube':'显示视图立方体','showAxesHelper':'显示坐标轴辅助线','enableGroundShadow':'启用地面阴影','skybox':'天空盒背景','colorWhite':'纯色\x20-\x20白','colorBlack':'纯色\x20-\x20黑','colorGray':'纯色\x20-\x20灰','gradientColor1':'渐变\x20-\x20蓝/白/灰','gradientColor2':'渐变\x20-\x20湛蓝/白/灰','gradientColor3':'渐变\x20-\x20浅蓝/白/黄','texture1':'贴图\x20-\x20蓝天','texture2':'贴图\x20-\x20多云','texture3':'贴图\x20-\x20星空','setEnvMap':'设置环境贴图','default':'默认','cityStreet':'城市街道','grass':'草地','sunshine':'阳光'};const i18n$3=i18next['createInstance']();const lng$3='en';i18n$3['init']({'lng':lng$3,'debug':![],'resources':{'en':{'translation':en$3},'cn':{'translation':cn$3}}});
|
|
210
|
+
|
|
211
|
+
class Settings3dPlugin extends Plugin{constructor(_0x3d6f2c,_0x4be1e8){const _0x3f09b4=(_0x4be1e8===null||_0x4be1e8===void 0x0?void 0x0:_0x4be1e8['id'])||Settings3dPlugin['DEFAULT_ID'];super(_0x3d6f2c,{'id':_0x3f09b4}),this['cfg']=_0x4be1e8||{'id':_0x3f09b4},this['cfg']['visible']!==![]&&this['init']();}['init'](){var _0x425e98;const _0x333a74=this['viewer'];this['cfg']['containerId']&&(this['container']=document['getElementById'](this['cfg']['containerId'])),!this['container']&&(this['container']=_0x333a74['widgetContainer']),this['skyboxPlugin']=_0x333a74['findPlugin']('SkyboxPlugin'),!this['skyboxPlugin']&&log['warn']('[Settings]\x20SkyboxPlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!'),this['groundGridPlugin']=_0x333a74['findPlugin']('GroundGridPlugin'),!this['groundGridPlugin']&&log['warn']('[Settings]\x20GroundGridPlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!'),this['viewCubePlugin']=_0x333a74['findPlugin']('ViewCubePlugin'),!this['viewCubePlugin']&&log['warn']('[Settings]\x20ViewCubePlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!'),this['axisGizmoPlugin']=_0x333a74['findPlugin']('AxisGizmoPlugin'),!this['axisGizmoPlugin']&&log['warn']('[Settings]\x20AxisGizmoPlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!'),this['groundShadowPlugin']=_0x333a74['findPlugin']('GroundShadowPlugin'),!this['groundShadowPlugin']&&log['warn']('[Settings]\x20GroundShadowPlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!'),this['initLocalization'](),this['basePanel']=new BasePanel({'container':this['container'],'title':i18n$3['t']('settings'),'cssClass':'settings-3d','onClose':()=>this['onClose'](),'viewportContainer':this['viewer']['viewerContainer']}),this['content']=(_0x425e98=this['basePanel'])===null||_0x425e98===void 0x0?void 0x0:_0x425e98['content'],this['addContent'](),this['addEventHandlers']();}['initLocalization'](){const _0x520825=this['cfg']['language']||DefaultLanguage;i18n$3['changeLanguage'](_0x520825);}['setVisible'](_0x2d4b34){_0x2d4b34&&!this['basePanel']&&this['init'](),this['basePanel']&&(this['basePanel']['setVisible'](_0x2d4b34),this['dispatchEvent']('visibilitychange',_0x2d4b34));}['isVisible'](){var _0x4e4e1a;return !!((_0x4e4e1a=this['basePanel'])===null||_0x4e4e1a===void 0x0?void 0x0:_0x4e4e1a['isVisible']());}['onClose'](){this['dispatchEvent']('visibilitychange',![]);}['destroy'](){var _0x36a0a7;super['destroy'](),(_0x36a0a7=this['basePanel'])===null||_0x36a0a7===void 0x0?void 0x0:_0x36a0a7['destroy']();}['addContent'](){var _0x5a5a08,_0x2d151d,_0x19d1e9,_0x3c204d,_0x1cec2b;const _0x44ac06=document['createElement']('div'),_0x327747=(_0x5a5a08=this['groundGridPlugin'])===null||_0x5a5a08===void 0x0?void 0x0:_0x5a5a08['isVisible'](),_0x4ddb40=(_0x2d151d=this['viewCubePlugin'])===null||_0x2d151d===void 0x0?void 0x0:_0x2d151d['isVisible'](),_0x41f9b9=(_0x19d1e9=this['axisGizmoPlugin'])===null||_0x19d1e9===void 0x0?void 0x0:_0x19d1e9['isVisible'](),_0x548b55=(_0x3c204d=this['groundShadowPlugin'])===null||_0x3c204d===void 0x0?void 0x0:_0x3c204d['isEnabled']();_0x44ac06['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'+i18n$3['t']('showOutline')+'\x22>'+i18n$3['t']('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'+i18n$3['t']('doubleSidedMaterials')+'\x22>'+i18n$3['t']('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'+i18n$3['t']('showGroundGrid')+'\x22>'+i18n$3['t']('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'+(_0x327747?'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'+i18n$3['t']('showViewCube')+'\x22>'+i18n$3['t']('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'+(_0x4ddb40?'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'+i18n$3['t']('showAxesHelper')+'\x22>'+i18n$3['t']('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'+(_0x41f9b9?'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'+i18n$3['t']('enableGroundShadow')+'\x22>'+i18n$3['t']('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'+(_0x548b55?'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'+i18n$3['t']('skybox')+'\x22>'+i18n$3['t']('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>\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>'+i18n$3['t']('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>'+i18n$3['t']('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>'+i18n$3['t']('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>'+i18n$3['t']('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>'+i18n$3['t']('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>'+i18n$3['t']('gradientColor3')+'</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=\x22bluesky\x22>'+i18n$3['t']('texture1')+'</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=\x22cloudsky\x22>'+i18n$3['t']('texture2')+'</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=\x22star\x22>'+i18n$3['t']('texture3')+'</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'+i18n$3['t']('setEnvMap')+'\x22>'+i18n$3['t']('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>'+i18n$3['t']('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>'+i18n$3['t']('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>'+i18n$3['t']('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>'+i18n$3['t']('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</ul>\x0a\x20\x20\x20\x20\x20\x20\x20\x20',(_0x1cec2b=this['content'])===null||_0x1cec2b===void 0x0?void 0x0:_0x1cec2b['appendChild'](_0x44ac06);}['addEventHandlers'](){var _0xc05a8a,_0x246c3d,_0x438f76,_0x20184e,_0x2281ac,_0x54ae9c,_0x164d08,_0x4f4476;const _0x2756b1=this['viewer'];(_0xc05a8a=document['getElementById']('enableEdge'))===null||_0xc05a8a===void 0x0?void 0x0:_0xc05a8a['addEventListener']('change',_0x258b39=>{const _0x2810b4=_0x258b39['target']['checked'];_0x2756b1['effect']['enableModelEdges'](_0x2810b4);}),(_0x246c3d=document['getElementById']('doubleSidedMaterials'))===null||_0x246c3d===void 0x0?void 0x0:_0x246c3d['addEventListener']('change',_0x35cd14=>{const _0x1dfea9=_0x35cd14['target']['checked'];_0x1dfea9?_0x2756b1['setDoubleSidedMaterials']():_0x2756b1['revertDoubleSidedMaterials']();}),(_0x438f76=document['getElementById']('groundGridVisible'))===null||_0x438f76===void 0x0?void 0x0:_0x438f76['addEventListener']('change',_0x567acf=>{if(!this['groundGridPlugin']){log['warn']('GroundGridPlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!');return;}const _0x1f6dc5=_0x567acf['target']['checked'];this['groundGridPlugin']['setVisible'](_0x1f6dc5);}),(_0x20184e=document['getElementById']('viewCubeVisible'))===null||_0x20184e===void 0x0?void 0x0:_0x20184e['addEventListener']('change',_0x3f98d7=>{const _0x1c6e44=_0x3f98d7['target']['checked'];if(!this['viewCubePlugin']){log['warn']('ViewCubePlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!');return;}this['viewCubePlugin']['setVisible'](_0x1c6e44);}),(_0x2281ac=document['getElementById']('axesHelperVisible'))===null||_0x2281ac===void 0x0?void 0x0:_0x2281ac['addEventListener']('change',_0x48006e=>{if(!this['axisGizmoPlugin']){log['warn']('AxisGizmoPlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!');return;}const _0x4d84ae=_0x48006e['target']['checked'];this['axisGizmoPlugin']['setVisible'](_0x4d84ae);}),(_0x54ae9c=document['getElementById']('groundShadowEnabled'))===null||_0x54ae9c===void 0x0?void 0x0:_0x54ae9c['addEventListener']('change',_0x22ed2f=>{if(!this['groundShadowPlugin']){log['warn']('GroundShadowPlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!');return;}const _0x42aee1=_0x22ed2f['target']['checked'];this['groundShadowPlugin']['setEnabled'](_0x42aee1);}),(_0x164d08=document['getElementById']('select-skybox'))===null||_0x164d08===void 0x0?void 0x0:_0x164d08['addEventListener']('change',_0x3fa8e8=>{const _0x1d82d4=_0x2756b1['findPlugin']('SkyboxPlugin');if(!_0x1d82d4){log['warn']('SkyboxPlugin\x20doesn\x27t\x20seem\x20to\x20be\x20installed!');return;}const _0x5b6732=_0x3fa8e8['target']['selectedOptions'][0x0]['value'];let _0x13ad41=['right.jpg','left.jpg','top.jpg','bottom.jpg','front.jpg','back.jpg'];if(_0x5b6732==='white')_0x1d82d4['setSkyboxByColor']([0x1,0x1,0x1]);else {if(_0x5b6732==='black')_0x1d82d4['setSkyboxByColor']([0x0,0x0,0x0]);else {if(_0x5b6732==='gray')_0x1d82d4['setSkyboxByColor']([0.5,0.5,0.5]);else {if(_0x5b6732==='gradientBlueGray')_0x1d82d4['setSkyboxByGradientColors']([0.52,0.71,0.96],[0x1,0x1,0x1],[0.6,0.6,0.6]);else {if(_0x5b6732==='gradientDarkBlueGray')_0x1d82d4['setSkyboxByGradientColors']([0.66,0.93,0x1],[0x1,0x1,0x1],[0.41,0.41,0.41]);else {if(_0x5b6732==='gradientBlueYellow')_0x1d82d4['setSkyboxByGradientColors']([0.86,0.93,0x1],[0x1,0x1,0x1],[0.92,0.89,0.79]);else {if(_0x5b6732==='bluesky')_0x13ad41=_0x13ad41['map'](_0x4ef1f0=>'/demo/images/skybox/cloudy/'+_0x4ef1f0),_0x1d82d4['setSkyboxByCubeTexture'](_0x13ad41);else {if(_0x5b6732==='cloudsky')_0x13ad41=_0x13ad41['map'](_0x5b8282=>'/demo/images/skybox/sun25deg/'+_0x5b8282),_0x1d82d4['setSkyboxByCubeTexture'](_0x13ad41);else _0x5b6732==='star'&&(_0x13ad41=_0x13ad41['map'](_0x4f734b=>'/demo/images/skybox/milkyway/'+_0x4f734b),_0x1d82d4['setSkyboxByCubeTexture'](_0x13ad41));}}}}}}}}),(_0x4f4476=document['getElementById']('select-environment'))===null||_0x4f4476===void 0x0?void 0x0:_0x4f4476['addEventListener']('change',_0x3093ab=>{const _0x4c3fbb=this['viewer'],_0x2ec324=_0x3093ab['target']['selectedOptions'][0x0]['value'];if(_0x2ec324==='default')_0x4c3fbb['setEnvironmentData']();else {if(_0x2ec324==='city')_0x4c3fbb['setEnvironment']('/demo/images/envmap/city_street_256.hdr');else {if(_0x2ec324==='footprint')_0x4c3fbb['setEnvironment']('/demo/images/envmap/footprint_court_2k.hdr');else _0x2ec324==='sunset'&&_0x4c3fbb['setEnvironment']('/demo/images/envmap/venice_sunset_1k.hdr');}}});}}Settings3dPlugin['DEFAULT_ID']='Settings3dPlugin';
|
|
212
|
+
|
|
213
|
+
var css_248z$2 = ".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;position:absolute;transform:translate(-50%);user-select:none;z-index:10}.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;word-break:break-word}.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;text-align:center;user-select:none;width:100%}.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;width:0}.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}@media screen and (max-width:768px){.toolbar .toolbar-menu{height:30px;margin:0;width:30px}.toolbar .toolbar-menu .icon+span{display:none}.toolbar .toolbar-parent-menu:after{right:0;top:1px}.toolbar .toolbar-sub-menu{min-width:30px}}";
|
|
214
|
+
styleInject(css_248z$2);
|
|
215
|
+
|
|
216
|
+
const en$2={'homeView':'Home','orthoView':'Ortho\x20View','measurement':'Measure','distanceMeasurement':'Distance','areaMeasurement':'Area','angleMeasurement':'Angle','coordinateMeasurement':'Coordinate','clearMeasurement':'Clear','markupVisibility':'Markup\x20Visibility','markup':'Markup','markupArrow':'Arrow','markupRect':'Rect','markupCloudRect':'CloudRect','markupPolyLine':'PolyLine','markupCloudLine':'CloudLine','markupEllipse':'Ellipse','markupCircle':'Circle','markupDot':'Dot','markupText':'Text','markupX':'X','markupStroke':'Stroke\x20Style','markupLineWidth':'Line\x20Width','markupLineWidth2':'Line\x20Width\x202','markupLineWidth5':'Line\x20Width\x205','markupLineWidth10':'Line\x20Width\x2010','markupFontSize':'Font\x20Size','markupFontSize14':'14','markupFontSize18':'18','markupFontSize24':'24','clearMarkup':'Clear\x20Markup','quitMarkup':'Quit\x20Markup','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','screenshot':'Screenshot'};const cn$2={'homeView':'主视图','orthoView':'正交视图','measurement':'测量','distanceMeasurement':'距离测量','areaMeasurement':'面积测量','angleMeasurement':'角度测量','coordinateMeasurement':'坐标测量','clearMeasurement':'清除测量','markupVisibility':'批注显隐','markup':'批注','markupArrow':'箭头','markupRect':'矩形框','markupCloudRect':'云线框','markupPolyLine':'多段线','markupCloudLine':'云线','markupEllipse':'椭圆','markupCircle':'圆','markupDot':'点','markupText':'文字','markupX':'叉号','markupStroke':'画笔颜色','markupLineWidth':'线宽','markupLineWidth2':'线宽\x202','markupLineWidth5':'线宽\x205','markupLineWidth10':'线宽\x2010','markupFontSize':'字号','markupFontSize14':'14','markupFontSize18':'18','markupFontSize24':'24','clearMarkup':'清除批注','quitMarkup':'退出批注','section':'剖切','axisSection':'轴向剖切','pickSectionPlane':'面剖切','sectionBox':'剖切盒','treeView':'模型树','viewpoint':'视点','annotation':'批注','property':'属性','settings':'设置','compared':'图纸对比','quitCompare':'退出图纸对比','fullscreen':'全屏','layers':'图层','zoomToRectangle':'框选放大','screenshot':'截屏'};const i18n$2=i18next['createInstance']();const lng$2='en';i18n$2['init']({'lng':lng$2,'debug':![],'resources':{'en':{'translation':en$2},'cn':{'translation':cn$2}}});
|
|
217
|
+
|
|
218
|
+
var MenuTypeEnums;(function(_0x34fd66){_0x34fd66[_0x34fd66['ClickEvent']=0x1]='ClickEvent',_0x34fd66[_0x34fd66['Popup']=0x2]='Popup',_0x34fd66[_0x34fd66['SubMenu']=0x3]='SubMenu',_0x34fd66[_0x34fd66['Switch']=0x4]='Switch';}(MenuTypeEnums||(MenuTypeEnums={})));var ToolbarMenuId;(function(_0x2186dc){_0x2186dc['HomeView']='HomeView',_0x2186dc['OrthoMode']='OrthoMode',_0x2186dc['Measure']='Measure',_0x2186dc['MeasureDistance']='MeasureDistance',_0x2186dc['MeasureArea']='MeasureArea',_0x2186dc['MeasureAngle']='MeasureAngle',_0x2186dc['MeasureCoordinate']='MeasureCoordinate',_0x2186dc['MeasureClear']='MeasureClear',_0x2186dc['MarkupVisibility']='MarkupVisibility',_0x2186dc['Markup']='Markup',_0x2186dc['MarkupArrow']='Arrow',_0x2186dc['MarkupRect']='Rect',_0x2186dc['MarkupCloudRect']='CloudRect',_0x2186dc['MarkupPolyLine']='PolyLine',_0x2186dc['MarkupCloudLine']='CloudLine',_0x2186dc['MarkupEllipse']='Ellipse',_0x2186dc['MarkupCircle']='Circle',_0x2186dc['MarkupDot']='Dot',_0x2186dc['MarkupText']='Text',_0x2186dc['MarkupX']='X',_0x2186dc['MarkupStrokeStyle']='StrokeStyle',_0x2186dc['MarkupLineWidth']='LineWidth',_0x2186dc['MarkupLineWidth2']='LineWidth2',_0x2186dc['MarkupLineWidth5']='LineWidth5',_0x2186dc['MarkupLineWidth10']='LineWidth10',_0x2186dc['MarkupFontSize']='FontSize',_0x2186dc['MarkupFontSize14']='FontSize14',_0x2186dc['MarkupFontSize18']='FontSize18',_0x2186dc['MarkupFontSize24']='FontSize24',_0x2186dc['MarkupClear']='MarkupClear',_0x2186dc['MarkupQuit']='MarkupQuit',_0x2186dc['Section']='Section',_0x2186dc['SectionBox']='SectionBox',_0x2186dc['SectionPlane']='SectionPlane',_0x2186dc['SectionAxis']='SectionAxis',_0x2186dc['TreeView']='Tree\x20View',_0x2186dc['Viewpoint']='Viewpoint',_0x2186dc['Annotation']='Annotation',_0x2186dc['Property']='Property',_0x2186dc['Settings']='Settings',_0x2186dc['Compared']='Compared',_0x2186dc['QuitCompare']='QuitCompare',_0x2186dc['Fullscreen']='FullScreen',_0x2186dc['SceneClear']='SceneClear',_0x2186dc['Layers']='Layers',_0x2186dc['ZoomToRectangle']='ZoomToRectangle',_0x2186dc['Screenshot']='GetScreenshot';}(ToolbarMenuId||(ToolbarMenuId={})));const GroupConfig=[[ToolbarMenuId['HomeView'],ToolbarMenuId['OrthoMode'],ToolbarMenuId['Fullscreen'],ToolbarMenuId['ZoomToRectangle'],ToolbarMenuId['Screenshot']],[ToolbarMenuId['Measure'],ToolbarMenuId['Markup'],ToolbarMenuId['MarkupVisibility'],ToolbarMenuId['Section']],[ToolbarMenuId['TreeView'],ToolbarMenuId['Viewpoint'],ToolbarMenuId['Annotation'],ToolbarMenuId['Property'],ToolbarMenuId['Compared'],ToolbarMenuId['QuitCompare'],ToolbarMenuId['Layers']],[ToolbarMenuId['Settings']]];
|
|
219
|
+
|
|
220
|
+
class Toolbar{constructor(_0x250276,_0x1659e6,_0x142e52=[]){this['visible']=!![],this['menuList']=new Map(),this['screenshotDownloadFileName']='',this['keydown']=_0x578c89=>{if(!this['visible'])return;if(_0x578c89['code']==='Escape'){const _0xdf1fb5=this['viewer']['findPlugin'](MeasurementPlugin['DEFAULT_ID']),_0x77fbee=this['viewer']['findPlugin'](MarkupPlugin['DEFAULT_ID']);if((_0xdf1fb5===null||_0xdf1fb5===void 0x0?void 0x0:_0xdf1fb5['isMeasuring']())||(_0x77fbee===null||_0x77fbee===void 0x0?void 0x0:_0x77fbee['isActive']()))return;this['clearActive']();}},this['viewer']=_0x250276,this['menuCfg']=_0x1659e6,this['groupCfg']=_0x142e52,this['init'](),window['addEventListener']('keydown',this['keydown'],![]);}['init'](){var _0x493a57;const _0x5a9f07=document['createElement']('div');_0x5a9f07['classList']['add']('toolbar');const _0x4af243=this['menuCfg'];this['groupCfg']['forEach']((_0x399075,_0x241afa)=>{const _0x18be26=document['createElement']('div');_0x18be26['classList']['add']('toolbar-group');const _0x3685c6=document['createElement']('div');_0x3685c6['classList']['add']('toolbar-group-division'),_0x399075['forEach'](_0x4d1d8d=>{const _0x5695cd=get$1(_0x4af243,_0x4d1d8d);if(_0x5695cd&&_0x5695cd['visible']!==![]){const _0x22ab5c=this['createToolbarMenu'](this['viewer'],_0x4d1d8d,_0x5695cd);_0x18be26['appendChild'](_0x22ab5c['element']);}}),_0x18be26['hasChildNodes']()&&(_0x241afa&&_0x5a9f07['appendChild'](_0x3685c6),_0x5a9f07['appendChild'](_0x18be26));}),this['element']=_0x5a9f07,(_0x493a57=this['viewer']['widgetContainer'])===null||_0x493a57===void 0x0?void 0x0:_0x493a57['appendChild'](_0x5a9f07),_0x5a9f07['oncontextmenu']=_0x118ebb=>{_0x118ebb['preventDefault']();};}['clearActive'](){if(this['activateMenuId']){const _0x3695dd=this['menuList']['get'](this['activateMenuId']);_0x3695dd===null||_0x3695dd===void 0x0?void 0x0:_0x3695dd['setActive'](![]),this['activateMenuId']=undefined;}}['setActive'](_0x718888,_0xdaa6ee){const _0x514b7a=this['menuList']['get'](_0x718888);_0x514b7a===null||_0x514b7a===void 0x0?void 0x0:_0x514b7a['setActive'](_0xdaa6ee),this['activateMenuId']=_0xdaa6ee?_0x718888:undefined;}['isActive'](_0x5e928b){const _0x28d5f2=this['menuList']['get'](_0x5e928b);return !!(_0x28d5f2===null||_0x28d5f2===void 0x0?void 0x0:_0x28d5f2['isActive']());}['setScreenshotDownloadFileName'](_0x594ad9){this['screenshotDownloadFileName']=_0x594ad9||'';}['getScreenshotDownloadFileName'](){return this['screenshotDownloadFileName'];}['createToolbarMenu'](_0x533015,_0x4ae2c1,_0x45e632,_0x197c3a){const _0x5876bf=new ToolbarMenu(_0x533015,this,_0x4ae2c1,_0x45e632,_0x197c3a);this['menuList']['set'](_0x4ae2c1,_0x5876bf);if(_0x45e632['children']){const _0x3fc152=document['createElement']('div');_0x3fc152['classList']['add']('toolbar-sub-menu');const _0x8a2563=document['createElement']('div');_0x8a2563['classList']['add']('toolbar-sub-menu-list'),_0x3fc152['appendChild'](_0x8a2563),forIn(_0x45e632['children'],(_0xa94939,_0x378865)=>{if(_0xa94939&&_0xa94939['visible']!==![]){const _0xa11b5f=this['createToolbarMenu'](_0x533015,_0x378865,_0xa94939,_0x5876bf);_0x8a2563['appendChild'](_0xa11b5f['element']);}}),_0x5876bf['element']['appendChild'](_0x3fc152);}return _0x5876bf;}['updateMenu'](_0x4ad668,_0x41541c){assign(this['menuCfg'][_0x4ad668],_0x41541c),this['refresh']();}['updateMenus'](_0x2d39ba){forEach(_0x2d39ba,({menuId:_0x18edea,config:_0x4513a7})=>{assign(this['menuCfg'][_0x18edea],_0x4513a7);}),this['refresh']();}['addMenu'](_0x41875a,_0x47c8c1,_0xb76be6){if(keys(this['menuCfg'])['includes'](_0x41875a)){log['error']('[Toolbar]',_0x41875a,'exists.');return;}assign(this['menuCfg'],{[_0x41875a]:_0x47c8c1});if(_0xb76be6){const [_0x3833e1,_0x57e01a]=_0xb76be6;if(_0x3833e1>this['groupCfg']['length']-0x1)this['groupCfg']=concat(this['groupCfg'],[[_0x41875a]]);else {const _0xdc5b93=this['groupCfg'][_0x3833e1];this['groupCfg'][_0x3833e1]=_0x57e01a>_0xdc5b93['length']-0x1?concat(_0xdc5b93,_0x41875a):concat(take(_0xdc5b93,_0x57e01a),_0x41875a,takeRight(_0xdc5b93,_0xdc5b93['length']-_0x57e01a));}}else this['groupCfg']=concat(this['groupCfg'],[[_0x41875a]]);this['refresh']();}['refresh'](){this['element']&&this['element']['remove'](),this['element']=undefined,this['menuList']['clear'](),this['init']();}['show'](){this['element']&&(this['element']['style']['display']=''),this['visible']=!![];}['hide'](){this['element']&&(this['element']['style']['display']='none'),this['visible']=![];}['destroy'](){this['element']&&this['element']['remove'](),this['element']=undefined,this['menuList']['clear'](),window['removeEventListener']('keydown',this['keydown'],![]);}}class ToolbarMenu{constructor(_0x54f126,_0x4a0cec,_0x508f61,_0x88df3f,_0x128f3c){this['eventBus']=_0x10e79b(),this['toolbar']=_0x4a0cec,this['menuId']=_0x508f61,this['active']=_0x88df3f['defaultActive']||![],this['element']=_0x88df3f['customElement']&&_0x88df3f['customElement'](_0x54f126,this['menuId'],_0x88df3f)||this['createButton'](_0x54f126,this['menuId'],_0x88df3f),this['eventBus']['on']('activitychange',_0x50fb85=>{var _0x3cdce8,_0x4b472a;_0x50fb85?(this['element']['classList']['add']('active'),forEach(_0x88df3f['mutexIds'],_0x51d12d=>{var _0x9357a9;const _0x51db6b=(_0x9357a9=this['toolbar'])===null||_0x9357a9===void 0x0?void 0x0:_0x9357a9['menuList']['get'](_0x51d12d);_0x51db6b&&_0x51db6b['active']&&_0x51db6b['setActive'](![]);}),(_0x3cdce8=_0x88df3f['onActive'])===null||_0x3cdce8===void 0x0?void 0x0:_0x3cdce8['call'](_0x88df3f,_0x54f126,_0x4a0cec)):(this['element']['classList']['remove']('active'),(_0x4b472a=_0x88df3f['onDeactive'])===null||_0x4b472a===void 0x0?void 0x0:_0x4b472a['call'](_0x88df3f,_0x54f126)),this['element']['firstChild']instanceof HTMLElement&&setIcon(this['element']['firstChild']['classList'],_0x88df3f['icon'],this['active']),_0x128f3c&&_0x128f3c['setActive'](_0x50fb85);}),DeviceUtils['isMobile']?(this['element']['ontouchstart']=_0x90c036=>{this['element']['classList']['toggle']('toolbar-parent-menu-active'),this['element']['classList']['toggle']('toolbar-menu-active'),_0x90c036['stopPropagation']();switch(_0x88df3f['type']){case MenuTypeEnums['ClickEvent']:{_0x88df3f['onClick']&&_0x88df3f['onClick'](_0x54f126,this['toolbar'],_0x90c036);break;}case MenuTypeEnums['Switch']:{_0x88df3f['onClick']&&_0x88df3f['onClick'](_0x54f126,this['toolbar'],_0x90c036),this['active']=!this['active'],this['toolbar']['activateMenuId']=this['menuId'],this['eventBus']['emit']('activitychange',this['active']);break;}}},this['element']['addEventListener']('touchend',()=>{_0x128f3c&&_0x128f3c['element']['classList']['remove']('toolbar-parent-menu-active');})):(this['element']['onclick']=_0x294615=>{_0x294615['stopPropagation']();switch(_0x88df3f['type']){case MenuTypeEnums['ClickEvent']:{_0x88df3f['onClick']&&_0x88df3f['onClick'](_0x54f126,this['toolbar'],_0x294615);break;}case MenuTypeEnums['Switch']:{_0x88df3f['onClick']&&_0x88df3f['onClick'](_0x54f126,this['toolbar'],_0x294615),this['active']=!this['active'],this['toolbar']['activateMenuId']=this['menuId'],this['eventBus']['emit']('activitychange',this['active']);break;}}_0x128f3c&&_0x128f3c['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'](_0x4526fe,_0x3a6c0d,_0x1f7eea){const _0x36d98e=document['createElement']('div');_0x36d98e['id']=_0x3a6c0d,_0x36d98e['classList']['add']('toolbar-menu'),_0x1f7eea['defaultActive']&&_0x36d98e['classList']['add']('active'),_0x1f7eea['children']&&_0x36d98e['classList']['add']('toolbar-parent-menu');const {default:_0x3475fe='icon-new',iconFont:iconFont=IconfontClass}=_0x1f7eea['icon'];return _0x36d98e['innerHTML']='<div\x20class=\x22icon\x20'+iconFont+'\x20'+_0x3475fe+'\x22></div>',_0x36d98e['title']=i18n$2['t'](_0x1f7eea['menuName']),_0x36d98e['innerHTML']+='<span>'+_0x36d98e['title']+'</span>',_0x36d98e;}['setActive'](_0x33226b){this['active']=_0x33226b,_0x33226b?this['element']['classList']['add']('toolbar-menu-active'):this['element']['classList']['remove']('toolbar-menu-active'),this['eventBus']['emit']('activitychange',this['active']);}['isActive'](){return this['active'];}}
|
|
221
|
+
|
|
222
|
+
const markupPlugin$1=_0x36adc8=>{return _0x36adc8['findPlugin'](MarkupPlugin['DEFAULT_ID']);},activate=(_0x203c5b,_0xf22d6)=>{const _0x4fdb46=markupPlugin$1(_0x203c5b);if(!_0x4fdb46)return;!_0x4fdb46['isActive']()&&_0x4fdb46['activate'](),_0x4fdb46['setDrawType'](_0xf22d6);},deactivate=_0x1cbb2c=>{const _0x266a92=markupPlugin$1(_0x1cbb2c);_0x266a92===null||_0x266a92===void 0x0?void 0x0:_0x266a92['deactivate']();};const DefaultMarkupToolbarConfig={[ToolbarMenuId['MarkupArrow']]:{'menuName':'markupArrow','icon':{'default':'icon-arrow'},'type':MenuTypeEnums['Switch'],'onActive':_0x473f44=>{activate(_0x473f44,MarkupType['Arrow']);},'onDeactive'(_0x251f89){deactivate(_0x251f89);},'mutexIds':[ToolbarMenuId['MarkupRect'],ToolbarMenuId['MarkupCloudRect'],ToolbarMenuId['MarkupPolyLine'],ToolbarMenuId['MarkupCloudLine'],ToolbarMenuId['MarkupEllipse'],ToolbarMenuId['MarkupCircle'],ToolbarMenuId['MarkupDot'],ToolbarMenuId['MarkupText'],ToolbarMenuId['MarkupX']]},[ToolbarMenuId['MarkupRect']]:{'defaultActive':![],'menuName':'markupRect','icon':{'default':'icon-rectangle'},'type':MenuTypeEnums['Switch'],'onActive':_0x1af60b=>{activate(_0x1af60b,MarkupType['Rectangle']);},'onDeactive'(_0x2e2083){deactivate(_0x2e2083);},'mutexIds':[ToolbarMenuId['MarkupArrow'],ToolbarMenuId['MarkupCloudRect'],ToolbarMenuId['MarkupPolyLine'],ToolbarMenuId['MarkupCloudLine'],ToolbarMenuId['MarkupEllipse'],ToolbarMenuId['MarkupCircle'],ToolbarMenuId['MarkupDot'],ToolbarMenuId['MarkupText'],ToolbarMenuId['MarkupX']]},[ToolbarMenuId['MarkupCloudRect']]:{'defaultActive':!![],'menuName':'markupCloudRect','icon':{'default':'icon-cloud'},'type':MenuTypeEnums['Switch'],'onActive':_0x35407c=>{activate(_0x35407c,MarkupType['CloudRectWithText']);},'onDeactive'(_0x52d573){deactivate(_0x52d573);},'mutexIds':[ToolbarMenuId['MarkupRect'],ToolbarMenuId['MarkupArrow'],ToolbarMenuId['MarkupPolyLine'],ToolbarMenuId['MarkupCloudLine'],ToolbarMenuId['MarkupEllipse'],ToolbarMenuId['MarkupCircle'],ToolbarMenuId['MarkupDot'],ToolbarMenuId['MarkupText'],ToolbarMenuId['MarkupX']]},[ToolbarMenuId['MarkupPolyLine']]:{'menuName':'markupPolyLine','icon':{'default':'icon-polyline'},'type':MenuTypeEnums['Switch'],'onActive':_0xdcc13d=>{activate(_0xdcc13d,MarkupType['PolyLine']);},'onDeactive'(_0x408900){deactivate(_0x408900);},'mutexIds':[ToolbarMenuId['MarkupRect'],ToolbarMenuId['MarkupArrow'],ToolbarMenuId['MarkupCloudRect'],ToolbarMenuId['MarkupCloudLine'],ToolbarMenuId['MarkupEllipse'],ToolbarMenuId['MarkupCircle'],ToolbarMenuId['MarkupDot'],ToolbarMenuId['MarkupText'],ToolbarMenuId['MarkupX']]},[ToolbarMenuId['MarkupCloudLine']]:{'menuName':'markupCloudLine','icon':{'default':'icon-cloud-segment'},'type':MenuTypeEnums['Switch'],'onActive':_0x1d821f=>{activate(_0x1d821f,MarkupType['CloudLine']);},'onDeactive'(_0x264f6f){deactivate(_0x264f6f);},'mutexIds':[ToolbarMenuId['MarkupRect'],ToolbarMenuId['MarkupCloudRect'],ToolbarMenuId['MarkupPolyLine'],ToolbarMenuId['MarkupArrow'],ToolbarMenuId['MarkupEllipse'],ToolbarMenuId['MarkupCircle'],ToolbarMenuId['MarkupDot'],ToolbarMenuId['MarkupText'],ToolbarMenuId['MarkupX']]},[ToolbarMenuId['MarkupEllipse']]:{'menuName':'markupEllipse','icon':{'default':'icon-oval'},'type':MenuTypeEnums['Switch'],'onActive':_0x411471=>{activate(_0x411471,MarkupType['Ellipse']);},'onDeactive'(_0x38a610){deactivate(_0x38a610);},'mutexIds':[ToolbarMenuId['MarkupRect'],ToolbarMenuId['MarkupCloudRect'],ToolbarMenuId['MarkupPolyLine'],ToolbarMenuId['MarkupCloudLine'],ToolbarMenuId['MarkupArrow'],ToolbarMenuId['MarkupCircle'],ToolbarMenuId['MarkupDot'],ToolbarMenuId['MarkupText'],ToolbarMenuId['MarkupX']]},[ToolbarMenuId['MarkupCircle']]:{'menuName':'markupCircle','icon':{'default':'icon-round'},'type':MenuTypeEnums['Switch'],'onActive':_0x8b3fc0=>{activate(_0x8b3fc0,MarkupType['Circle']);},'onDeactive'(_0x3a1366){deactivate(_0x3a1366);},'mutexIds':[ToolbarMenuId['MarkupRect'],ToolbarMenuId['MarkupCloudRect'],ToolbarMenuId['MarkupPolyLine'],ToolbarMenuId['MarkupCloudLine'],ToolbarMenuId['MarkupEllipse'],ToolbarMenuId['MarkupArrow'],ToolbarMenuId['MarkupDot'],ToolbarMenuId['MarkupText'],ToolbarMenuId['MarkupX']]},[ToolbarMenuId['MarkupDot']]:{'menuName':'markupDot','icon':{'default':'icon-round'},'type':MenuTypeEnums['Switch'],'onActive':_0x274876=>{activate(_0x274876,MarkupType['Dot']);},'onDeactive'(_0x1f3986){deactivate(_0x1f3986);},'mutexIds':[ToolbarMenuId['MarkupRect'],ToolbarMenuId['MarkupCloudRect'],ToolbarMenuId['MarkupPolyLine'],ToolbarMenuId['MarkupCloudLine'],ToolbarMenuId['MarkupEllipse'],ToolbarMenuId['MarkupArrow'],ToolbarMenuId['MarkupCircle'],ToolbarMenuId['MarkupText'],ToolbarMenuId['MarkupX']]},[ToolbarMenuId['MarkupX']]:{'menuName':'markupX','icon':{'default':'icon-cross'},'type':MenuTypeEnums['Switch'],'onActive':_0x3d2de1=>{activate(_0x3d2de1,MarkupType['X']);},'onDeactive'(_0x56c063){deactivate(_0x56c063);},'mutexIds':[ToolbarMenuId['MarkupRect'],ToolbarMenuId['MarkupCloudRect'],ToolbarMenuId['MarkupPolyLine'],ToolbarMenuId['MarkupCloudLine'],ToolbarMenuId['MarkupEllipse'],ToolbarMenuId['MarkupCircle'],ToolbarMenuId['MarkupDot'],ToolbarMenuId['MarkupArrow'],ToolbarMenuId['MarkupText']]},[ToolbarMenuId['MarkupText']]:{'menuName':'markupText','icon':{'default':'icon-text'},'type':MenuTypeEnums['Switch'],'onActive':_0x4d8133=>{activate(_0x4d8133,MarkupType['Text']);},'onDeactive'(_0x1c2eff){deactivate(_0x1c2eff);},'mutexIds':[ToolbarMenuId['MarkupRect'],ToolbarMenuId['MarkupCloudRect'],ToolbarMenuId['MarkupPolyLine'],ToolbarMenuId['MarkupCloudLine'],ToolbarMenuId['MarkupEllipse'],ToolbarMenuId['MarkupCircle'],ToolbarMenuId['MarkupDot'],ToolbarMenuId['MarkupArrow'],ToolbarMenuId['MarkupX']]},[ToolbarMenuId['MarkupStrokeStyle']]:{'menuName':'markupStroke','icon':{'default':'icon-color-red'},'type':MenuTypeEnums['ClickEvent'],'onClick':(_0x4bc916,_0x1c08e0,_0x284efb)=>{const _0x5a1d85=markupPlugin$1(_0x4bc916),_0x3be161=_0x284efb['target']['parentElement'],_0x1fd471=_0x3be161===null||_0x3be161===void 0x0?void 0x0:_0x3be161['firstElementChild'],_0x3a216f=document['createElement']('input');_0x3a216f['setAttribute']('type','color'),_0x3a216f['value']=ColorUtils['floatArray2CssColor'](_0x5a1d85===null||_0x5a1d85===void 0x0?void 0x0:_0x5a1d85['getLineColor']()),_0x3a216f['click'](),_0x3a216f['oninput']=_0x4be1d8=>{const _0x213c36=_0x4be1d8['target']['value'];_0x5a1d85===null||_0x5a1d85===void 0x0?void 0x0:_0x5a1d85['setLineColor'](ColorUtils['color2rgba'](_0x213c36)),_0x1fd471['style']['color']=_0x213c36;};}},[ToolbarMenuId['MarkupLineWidth']]:{'menuName':'markupLineWidth','icon':{'default':'icon-line'},'customElement'(_0x337961,_0x463bfc,_0x95529b){const _0x7a59b8=document['createElement']('div');return _0x7a59b8['id']=_0x463bfc,_0x7a59b8['classList']['add']('toolbar-menu'),_0x95529b['children']&&_0x7a59b8['classList']['add']('toolbar-parent-menu'),_0x7a59b8['title']=i18n$2['t'](_0x95529b['menuName']),_0x7a59b8['innerHTML']+='<span>'+_0x7a59b8['title']+'</span>',_0x7a59b8;},'type':MenuTypeEnums['SubMenu'],'children':{[ToolbarMenuId['MarkupLineWidth2']]:{'defaultActive':!![],'icon':{'default':'icon-line-2'},'onClick':_0x1d1e41=>{const _0x536bb9=markupPlugin$1(_0x1d1e41);_0x536bb9===null||_0x536bb9===void 0x0?void 0x0:_0x536bb9['setLineWidth'](0x2);},'type':MenuTypeEnums['Switch'],'menuName':'markupLineWidth2','mutexIds':[ToolbarMenuId['MarkupLineWidth5'],ToolbarMenuId['MarkupLineWidth10']]},[ToolbarMenuId['MarkupLineWidth5']]:{'icon':{'default':'icon-line-3'},'onClick':_0x46beaa=>{const _0x389008=markupPlugin$1(_0x46beaa);_0x389008===null||_0x389008===void 0x0?void 0x0:_0x389008['setLineWidth'](0x3);},'type':MenuTypeEnums['Switch'],'menuName':'markupLineWidth5','mutexIds':[ToolbarMenuId['MarkupLineWidth2'],ToolbarMenuId['MarkupLineWidth10']]},[ToolbarMenuId['MarkupLineWidth10']]:{'icon':{'default':'icon-line-4'},'onClick':_0x50b434=>{const _0x107785=markupPlugin$1(_0x50b434);_0x107785===null||_0x107785===void 0x0?void 0x0:_0x107785['setLineWidth'](0x4);},'type':MenuTypeEnums['Switch'],'menuName':'markupLineWidth10','mutexIds':[ToolbarMenuId['MarkupLineWidth2'],ToolbarMenuId['MarkupLineWidth5']]}}},[ToolbarMenuId['MarkupFontSize']]:{'menuName':'markupFontSize','icon':{'default':'icon-font'},'customElement'(_0x21067f,_0x2234c7,_0x4c2fe2){const _0xb3ea5a=document['createElement']('div');return _0xb3ea5a['id']=_0x2234c7,_0xb3ea5a['classList']['add']('toolbar-menu'),_0x4c2fe2['children']&&_0xb3ea5a['classList']['add']('toolbar-parent-menu'),_0xb3ea5a['title']=i18n$2['t'](_0x4c2fe2['menuName']),_0xb3ea5a['innerHTML']+='<span>'+_0xb3ea5a['title']+'</span>',_0xb3ea5a;},'type':MenuTypeEnums['SubMenu'],'children':{[ToolbarMenuId['MarkupFontSize14']]:{'icon':{'default':'icon-font14'},'onClick':_0x34e274=>{const _0x1ab224=markupPlugin$1(_0x34e274);_0x1ab224===null||_0x1ab224===void 0x0?void 0x0:_0x1ab224['setFontSize'](0xe);},'type':MenuTypeEnums['Switch'],'menuName':'','mutexIds':[ToolbarMenuId['MarkupFontSize18'],ToolbarMenuId['MarkupFontSize24']]},[ToolbarMenuId['MarkupFontSize18']]:{'defaultActive':!![],'icon':{'default':'icon-font18'},'onClick':_0x2ebc98=>{const _0x52a4aa=markupPlugin$1(_0x2ebc98);_0x52a4aa===null||_0x52a4aa===void 0x0?void 0x0:_0x52a4aa['setFontSize'](0x12);},'type':MenuTypeEnums['Switch'],'menuName':'','mutexIds':[ToolbarMenuId['MarkupFontSize14'],ToolbarMenuId['MarkupFontSize24']]},[ToolbarMenuId['MarkupFontSize24']]:{'icon':{'default':'icon-font24'},'onClick':_0x4ff194=>{const _0x355f67=markupPlugin$1(_0x4ff194);_0x355f67===null||_0x355f67===void 0x0?void 0x0:_0x355f67['setFontSize'](0x18);},'type':MenuTypeEnums['Switch'],'menuName':'','mutexIds':[ToolbarMenuId['MarkupFontSize14'],ToolbarMenuId['MarkupFontSize18']]}}},[ToolbarMenuId['MarkupClear']]:{'icon':{'default':'icon-eraser'},'onClick':_0x597f64=>{log['info']('[Toolbar]','Clear\x20Markup',_0x597f64);const _0x128ac6=markupPlugin$1(_0x597f64);_0x128ac6===null||_0x128ac6===void 0x0?void 0x0:_0x128ac6['clear']();},'type':MenuTypeEnums['ClickEvent'],'menuName':'clearMarkup'},[ToolbarMenuId['MarkupQuit']]:{'icon':{'default':''},'customElement'(_0x15d92c,_0x4ce01f,_0x37d628){const _0x143c8e=document['createElement']('div');return _0x143c8e['id']=_0x4ce01f,_0x143c8e['classList']['add']('toolbar-menu'),_0x37d628['children']&&_0x143c8e['classList']['add']('toolbar-parent-menu'),_0x143c8e['title']=i18n$2['t'](_0x37d628['menuName']),_0x143c8e['innerHTML']+='<span>'+_0x143c8e['title']+'</span>',_0x143c8e;},'onClick':_0x452040=>{const _0x423e70=markupPlugin$1(_0x452040);_0x423e70===null||_0x423e70===void 0x0?void 0x0:_0x423e70['deactivate'](),_0x452040['dispatchEvent'](ViewerEvent['MarkupDeactivate']);},'type':MenuTypeEnums['ClickEvent'],'menuName':'quitMarkup'}};const MarkupGroupConfig=[[ToolbarMenuId['MarkupArrow'],ToolbarMenuId['MarkupRect'],ToolbarMenuId['MarkupCloudRect'],ToolbarMenuId['MarkupPolyLine'],ToolbarMenuId['MarkupEllipse'],ToolbarMenuId['MarkupCircle'],ToolbarMenuId['MarkupText'],ToolbarMenuId['MarkupStrokeStyle'],ToolbarMenuId['MarkupFontSize'],ToolbarMenuId['MarkupClear'],ToolbarMenuId['MarkupQuit']]];class MarkupToolbar extends Toolbar{constructor(_0x764690,_0x202777,_0x722602=[]){super(_0x764690,_0x202777,_0x722602),this['keydown']=()=>{};}}
|
|
223
|
+
|
|
224
|
+
class AxisSectionPopPanel extends PopPanel{constructor(_0x47451c){const _0x107c2b=i18n$7['t']('axisSection');super('axis-section-pop-panel',_0x107c2b,_0x47451c['widgetContainer']),this['axis']='x',this['isVisible']=!![],this['keydown']=_0x20a819=>{_0x20a819['code']==='Escape'&&this['destroy']();};const _0x2b0e0d=_0x47451c['findPlugin'](SectionPlugin['DEFAULT_ID']);this['section']=_0x2b0e0d['getActiveSection'](),this['createGroupSelectLayout'](),this['addGroupSelectItems'](),this['createActiveSelectLayout'](),this['addActiveItems'](),window['addEventListener']('keydown',this['keydown']);}['destroy'](){super['destroy'](),window['removeEventListener']('keydown',this['keydown']);}['createGroupSelectLayout'](){const _0x38a60d=document['createElement']('div');_0x38a60d['classList']['add']('pop-panel-group-select'),this['body']['appendChild'](_0x38a60d),this['groupSelectNode']=_0x38a60d;}['addGroupSelectItems'](){const _0x3ec3cf=(_0x5b16cd,_0x245069,_0x443ce6=![])=>{const _0x5a6323=document['createElement']('div');return _0x5a6323['classList']['add']('pop-panel-item'),_0x5a6323['setAttribute']('itemName',_0x5b16cd),_0x5a6323['append'](_0x245069),_0x443ce6&&_0x5a6323['classList']['add']('active'),this['groupSelectNode']&&this['groupSelectNode']['appendChild'](_0x5a6323),_0x5a6323;},_0x1fb4c4=()=>{_0x1332fb['classList']['remove']('active'),_0x4f61b2['classList']['remove']('active'),_0x41df34['classList']['remove']('active');},_0x38dd26=(_0x3d4e6b,_0x213832)=>{return _0x1d7606=>{_0x1d7606['stopPropagation']();if(this['activeItem']===_0x3d4e6b)return;_0x1fb4c4(),this['activeItem']=_0x3d4e6b,_0x213832['classList']['add']('active'),this['section']['setActiveAxis'](_0x3d4e6b);};},_0x1332fb=_0x3ec3cf(AxisType['X'],'X',!![]);_0x1332fb['onclick']=_0x38dd26(AxisType['X'],_0x1332fb);const _0x4f61b2=_0x3ec3cf(AxisType['Y'],'Y');_0x4f61b2['onclick']=_0x38dd26(AxisType['Y'],_0x4f61b2);const _0x41df34=_0x3ec3cf(AxisType['Z'],'Z');_0x41df34['onclick']=_0x38dd26(AxisType['Z'],_0x41df34);}['createActiveSelectLayout'](){const _0x1ea4c5=document['createElement']('div');_0x1ea4c5['classList']['add']('pop-panel-active-select'),this['body']['appendChild'](_0x1ea4c5),this['activeSelectNode']=_0x1ea4c5;}['addActiveItems'](){const _0x173e82=(_0x32349f,_0x9755ea)=>{const _0xaa8221=document['createElement']('i');_0xaa8221['classList']['add'](IconfontClass2),_0xaa8221['classList']['add'](_0x9755ea),_0x32349f['innerHTML']='',_0x32349f['appendChild'](_0xaa8221);},_0x1aaed7=(_0x1557b4,_0x55a2b7,_0x5e0ca8='')=>{const _0x58ff41=document['createElement']('div');return _0x58ff41['classList']['add']('pop-panel-item'),_0x55a2b7&&_0x58ff41['setAttribute']('title',_0x55a2b7),_0x58ff41['setAttribute']('itemName',_0x1557b4),_0x58ff41['setAttribute']('isActive','false'),_0x173e82(_0x58ff41,_0x5e0ca8),_0x58ff41;},_0x1de607=i18n$7['t']('hideSectionPlane'),_0x431134=i18n$7['t']('showSectionPlane'),_0xdf5896=_0x1aaed7('visible',_0x1de607,'icon-hidesectionplane');_0xdf5896['onclick']=()=>{this['isVisible']=!this['isVisible'],this['isVisible']?(_0x173e82(_0xdf5896,'icon-hidesectionplane'),_0xdf5896['setAttribute']('title',_0x1de607)):(_0x173e82(_0xdf5896,'icon-showsectionplane'),_0xdf5896['setAttribute']('title',_0x431134)),this['section']['setSectionPlaneVisible'](this['isVisible']);},this['activeSelectNode']&&this['activeSelectNode']['appendChild'](_0xdf5896);}}
|
|
225
|
+
|
|
226
|
+
class PickSectionPopPanel extends PopPanel{constructor(_0x571c01){super('pick-section-pop-panel','拾取面剖切',_0x571c01['widgetContainer']),this['isVisible']=!![],this['enabled']=!![],this['keydown']=_0xe7a0ed=>{_0xe7a0ed['code']==='Escape'&&this['destroy']();};const _0x231342=_0x571c01['findPlugin'](SectionPlugin['DEFAULT_ID']);this['section']=_0x231342['getActiveSection'](),this['createActiveSelectLayout'](),this['addActiveItems'](),window['addEventListener']('keydown',this['keydown']);}['destroy'](){super['destroy'](),window['removeEventListener']('keydown',this['keydown']);}['createActiveSelectLayout'](){const _0x82cba0=document['createElement']('div');_0x82cba0['classList']['add']('pop-panel-active-select'),this['body']['appendChild'](_0x82cba0),this['activeSelectNode']=_0x82cba0;}['addActiveItems'](){const _0x58a9c5=(_0x46bb7d,_0x452731)=>{const _0x2c49fe=document['createElement']('i');_0x2c49fe['classList']['add'](IconfontClass2),_0x2c49fe['classList']['add'](_0x452731),_0x46bb7d['innerHTML']='',_0x46bb7d['appendChild'](_0x2c49fe);},_0x5a20c9=(_0x166b75,_0x505444,_0x474bba='')=>{const _0x34ed2b=document['createElement']('div');return _0x34ed2b['classList']['add']('pop-panel-item'),_0x505444&&_0x34ed2b['setAttribute']('title',_0x505444),_0x34ed2b['setAttribute']('itemName',_0x166b75),_0x34ed2b['setAttribute']('isActive','false'),_0x58a9c5(_0x34ed2b,_0x474bba),_0x34ed2b;},_0x2e6dcd=i18n$7['t']('hideSectionPlane'),_0x10d189=i18n$7['t']('showSectionPlane'),_0x2ed749=i18n$7['t']('reset'),_0xd67a8=_0x5a20c9('visible',_0x2e6dcd,'icon-hidesectionplane');_0xd67a8['onclick']=()=>{if(!this['enabled'])return;this['isVisible']=!this['isVisible'],this['isVisible']?(_0x58a9c5(_0xd67a8,'icon-hidesectionplane'),_0xd67a8['setAttribute']('title',_0x2e6dcd)):(_0x58a9c5(_0xd67a8,'icon-showsectionplane'),_0xd67a8['setAttribute']('title',_0x10d189)),this['section']['setSectionPlaneVisible'](this['isVisible']);};this['activeSelectNode']&&this['activeSelectNode']['appendChild'](_0xd67a8);this['visibleNode']=_0xd67a8;const _0x54c13e=_0x5a20c9('reset',_0x2ed749,'icon-reset');_0x54c13e['onclick']=_0x5cf9f5=>{_0x5cf9f5['stopPropagation']();if(!this['enabled'])return;this['isVisible']=!![],_0x58a9c5(_0xd67a8,'icon-hidesectionplane'),_0xd67a8['setAttribute']('title',_0x2e6dcd),this['section']['reset']();},this['activeSelectNode']&&this['activeSelectNode']['appendChild'](_0x54c13e),this['resetNode']=_0x54c13e;}['enable'](){this['enabled']=!![],this['visibleNode']&&this['visibleNode']['classList']['remove']('disable');}['disable'](){this['enabled']=![],this['visibleNode']&&this['visibleNode']['classList']['add']('disable');}}
|
|
227
|
+
|
|
228
|
+
var css_248z$1 = ".tree-view .content .tree-node{border-top:1px solid hsla(0,0%,100%,.533)}.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(0,0,0,.067)}.tree-view .content .tree-node .tree-node-item.selected{background:rgba(0,0,0,.2)}.tree-view .content .tree-node .tree-node-item span{display:inline-block;margin-right:3px;vertical-align:middle}.tree-view .content .tree-node .tree-node-item .expander{cursor:pointer;display:inline-block;margin-left:6px;margin-right:5px;transform:rotate(0deg);-webkit-transform:rotate(0deg);transition:transform .25s ease;-moz-transition:transform .25s ease;-webkit-transition:transform .25s ease}.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;text-overflow:ellipsis;white-space:nowrap}.tree-view .content .tree-node .tree-node-item .node-type{color:#000;content:\"?\";font-size:12px;opacity:.6}.tree-view .content .tree-node .tree-node-item .node-type:hover{opacity:1}.tree-view .content .tree-node .tree-node-item .node-type-group:before{content:\"G\"}.tree-view .content .tree-node .tree-node-item .node-type-mesh:before{content:\"M\"}.tree-view .content .tree-node .tree-node-item .node-type-line:before{content:\"L\"}.tree-view .content .tree-node .tree-node-item .node-type-object3d:before{content:\"O\"}.tree-view .content .tree-node .tree-node-item .node-type-unknown:before{content:\"?\"}.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 .tree-pop-menu{background:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 2px 8px rgba(0,0,0,.15);font-size:14px;min-width:120px;padding:4px 0;position:fixed;user-select:none;z-index:9999}.tree-view .tree-pop-menu div{transition:background .2s}.tree-view .tree-pop-menu .item{cursor:pointer;padding:6px 16px}.tree-view .tree-pop-menu .item:hover{background-color:#f5f5f5}.tree-view .tree-pop-menu .last-item-in-section{border-bottom:1px solid rgba(0,0,0,.2)}";
|
|
229
|
+
styleInject(css_248z$1);
|
|
230
|
+
|
|
231
|
+
const en$1={'treeView':'Tree\x20View'};const cn$1={'treeView':'模型树'};const i18n$1=i18next['createInstance']();const lng$1='en';i18n$1['init']({'lng':lng$1,'debug':![],'resources':{'en':{'translation':en$1},'cn':{'translation':cn$1}}});
|
|
232
|
+
|
|
233
|
+
class TreeViewPlugin extends Plugin{constructor(_0x16a8a0,_0x44f8e5){const _0x7d1431=(_0x44f8e5===null||_0x44f8e5===void 0x0?void 0x0:_0x44f8e5['id'])||TreeViewPlugin['DEFAULT_ID'];super(_0x16a8a0,{'id':_0x7d1431}),this['onModelLoadOrRemove']=()=>{var _0x3e7e88;((_0x3e7e88=this['basePanel'])===null||_0x3e7e88===void 0x0?void 0x0:_0x3e7e88['isVisible']())&&(this['updateContent'](),this['viewer']['enableRender']());},this['onObjectSelected']=_0x2517ea=>{var _0x1171a3;if(_0x2517ea==this['lastHighlightedObject'])return;this['lastHighlightedObject']=_0x2517ea,(_0x1171a3=this['content'])===null||_0x1171a3===void 0x0?void 0x0:_0x1171a3['querySelectorAll']('.tree-node-item.selected')['forEach'](_0x3ae3c9=>_0x3ae3c9['classList']['remove']('selected')),this['highlightTreeNodeBySceneObject'](_0x2517ea);},this['onObjectDeselected']=_0x33ae00=>{var _0x2acf05;if(this['lastHighlightedObject']!==_0x33ae00)return;this['lastHighlightedObject']=undefined,(_0x2acf05=this['content'])===null||_0x2acf05===void 0x0?void 0x0:_0x2acf05['querySelectorAll']('.tree-node-item.selected')['forEach'](_0xf58c63=>_0xf58c63['classList']['remove']('selected'));},this['handleSingleClick']=_0x3521d3=>{_0x3521d3['stopPropagation'](),this['handleClick'](_0x3521d3);},this['handleDoubleClick']=_0x2131ce=>{_0x2131ce['stopPropagation'](),this['handleClick'](_0x2131ce,!![]);},this['handleClick']=(_0x3d462d,_0x26be34=![])=>{var _0x3289ee;const _0x195d9f=_0x3d462d['target'],_0x364db8=_0x195d9f['closest']('.tree-node');if(!_0x364db8)return;const _0x387e8b=_0x195d9f['closest']('.tree-node-item');if(!_0x387e8b)return;const _0x54fabb=_0x387e8b['querySelector']('.expander'),_0x1e07be=_0x387e8b['querySelector']('.visibility-checkbox'),_0xf17530=_0x364db8['querySelector']('.children');let _0xd26572;const _0x41b1cf=_0x364db8['dataset']['uuid'];_0x41b1cf&&(_0xd26572=this['findObjectByUuid'](_0x41b1cf));if(!_0xd26572)return;if(_0x195d9f===_0x54fabb){if(_0x26be34)return;_0xf17530['style']['display']==='none'?(_0xf17530['style']['display']='',_0x54fabb['classList']['add']('expander-expanded')):(_0xf17530['style']['display']='none',_0x54fabb['classList']['remove']('expander-expanded'));}else {if(_0x195d9f===_0x1e07be){if(_0x26be34)return;_0xd26572['visible']=_0x1e07be['checked'];_0xf17530&&this['updateChildrenVisibility'](_0xf17530,_0x1e07be['checked']);const _0x55805a=this['getClosestParentTreeNode'](_0x364db8['parentElement']);this['updateParentVisibility'](_0x55805a,_0x1e07be['checked']),this['viewer']['enableRender']();}else {if(_0x195d9f['classList']['contains']('ellipse-btn')){if(_0x26be34)return;this['showPopMenu'](_0x3d462d);}else {if(!_0x26be34){const _0x5f0149=_0x387e8b['classList']['contains']('selected');(_0x3289ee=this['content'])===null||_0x3289ee===void 0x0?void 0x0:_0x3289ee['querySelectorAll']('.tree-node-item.selected')['forEach'](_0x489a6e=>_0x489a6e['classList']['remove']('selected')),this['viewer']['clearHighlight'](),!_0x5f0149&&this['selectTreeNodeAndHighlightSceneObject'](_0x364db8,_0xd26572);}else this['focusSceneObject'](_0xd26572),this['selectTreeNodeAndHighlightSceneObject'](_0x364db8,_0xd26572);}}}},this['cfg']=_0x44f8e5||{'id':_0x7d1431},this['initLocalization'](),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']);}['updateContent'](){var _0xdddd56;const _0x480c93=this['viewer'];this['cfg']['containerId']&&(this['container']=document['getElementById'](this['cfg']['containerId'])),!this['container']&&(this['container']=_0x480c93['widgetContainer']),!this['basePanel']&&(this['basePanel']=new BasePanel({'container':this['container'],'title':i18n$1['t']('treeView'),'cssClass':'tree-view','onClose':()=>this['onClose'](),'viewportContainer':this['viewer']['viewerContainer']}),this['content']=(_0xdddd56=this['basePanel'])===null||_0xdddd56===void 0x0?void 0x0:_0xdddd56['content']),this['addContent']();}['initLocalization'](){const _0x2dc07f=this['cfg']['language']||DefaultLanguage;i18n$1['changeLanguage'](_0x2dc07f);}['setVisible'](_0x2b5801){_0x2b5801&&this['updateContent'](),this['basePanel']&&(this['basePanel']['setVisible'](_0x2b5801),this['dispatchEvent']('visibilitychange',_0x2b5801));}['isVisible'](){var _0x53ba87;return !!((_0x53ba87=this['basePanel'])===null||_0x53ba87===void 0x0?void 0x0:_0x53ba87['isVisible']());}['onClose'](){this['dispatchEvent']('visibilitychange',![]);}['destroy'](){var _0x35605e,_0x2a6887,_0x54c84b;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']),(_0x35605e=this['content'])===null||_0x35605e===void 0x0?void 0x0:_0x35605e['removeEventListener']('click',this['handleSingleClick']),(_0x2a6887=this['content'])===null||_0x2a6887===void 0x0?void 0x0:_0x2a6887['removeEventListener']('dblclick',this['handleDoubleClick']),(_0x54c84b=this['basePanel'])===null||_0x54c84b===void 0x0?void 0x0:_0x54c84b['destroy'](),this['lastHighlightedObject']=undefined;}['addContent'](){if(!this['content'])return;this['content']['removeEventListener']('click',this['handleSingleClick']),this['content']['removeEventListener']('dblclick',this['handleDoubleClick']),this['content']['innerHTML']='';const _0x5f5e0b=this['viewer']['loadedModels']||[];if(_0x5f5e0b['length']===0x0){this['content']['innerHTML']='<p>No\x20models\x20loaded.</p>';return;}for(const _0x48c524 of _0x5f5e0b){if(_0x48c524 instanceof BimTilesModel){log['warn']('TreeViewPlugin:\x20BimTilesModel\x20is\x20not\x20supported\x20yet.');continue;}this['buildTreeForNodeRecursive'](_0x48c524['rootObject'],this['content']);}this['content']['addEventListener']('click',this['handleSingleClick']),this['content']['addEventListener']('dblclick',this['handleDoubleClick']);}['buildTreeForNodeRecursive'](_0x56c206,_0x2558c1,_0x507348=0x0){const _0x24fbc1=document['createElement']('div');_0x24fbc1['classList']['add']('tree-node'),_0x24fbc1['dataset']['uuid']=_0x56c206['uuid'];const _0x55dfa0=document['createElement']('div');_0x55dfa0['classList']['add']('tree-node-item'),_0x55dfa0['style']['paddingLeft']=_0x507348*0x12+'px',_0x24fbc1['appendChild'](_0x55dfa0);const _0x259359=document['createElement']('input');_0x259359['type']='checkbox',_0x259359['classList']['add']('visibility-checkbox'),_0x259359['checked']=_0x56c206['visible'],_0x259359['indeterminate']=![];const _0x180ea5=document['createElement']('span');_0x180ea5['classList']['add']('node-type');if(_0x56c206 instanceof THREE['Group'])_0x180ea5['classList']['add']('node-type-group');else {if(_0x56c206 instanceof THREE['Mesh'])_0x180ea5['classList']['add']('node-type-mesh');else {if(_0x56c206 instanceof THREE['Line'])_0x180ea5['classList']['add']('node-type-line');else _0x56c206 instanceof THREE['Object3D']?_0x180ea5['classList']['add']('node-type-object3d'):_0x180ea5['classList']['add']('node-type-unknown');}}_0x180ea5['title']=_0x56c206['type'];const _0x4b11a8=document['createElement']('span');_0x4b11a8['classList']['add']('node-name'),_0x4b11a8['innerHTML']=_0x56c206['name']||'Unnamed\x20Node',_0x4b11a8['title']=_0x4b11a8['innerHTML'];let _0x3e6506=0x0,_0x167546=null;_0x56c206['children']&&_0x56c206['children']['length']>0x0&&(_0x167546=document['createElement']('span'),_0x167546['classList']['add']('child-count'));const _0x984c4c=document['createElement']('span');_0x984c4c['classList']['add']('ellipse-btn'),_0x984c4c['innerHTML']='⋮',_0x984c4c['title']='More\x20options';let _0x32f080=null;if(_0x56c206['children']&&_0x56c206['children']['length']>0x0){_0x32f080=document['createElement']('div'),_0x32f080['classList']['add']('children'),_0x32f080['style']['display']='none',_0x24fbc1['appendChild'](_0x32f080);for(const _0x5ac477 of _0x56c206['children']){!_0x5ac477['name']['startsWith']('highlighUsage-')&&!_0x5ac477['name']['startsWith']('transparentUsage-')&&!_0x5ac477['userData']['isOutline']&&(this['buildTreeForNodeRecursive'](_0x5ac477,_0x32f080,_0x507348+0x1),_0x3e6506++);}}_0x167546&&(_0x167546['innerHTML']='('+_0x3e6506+')');let _0x2da106=null;_0x3e6506>0x0&&(_0x2da106=document['createElement']('span'),_0x2da106['classList']['add']('expander'),_0x55dfa0['appendChild'](_0x2da106)),_0x55dfa0['appendChild'](_0x259359),_0x55dfa0['appendChild'](_0x180ea5),_0x55dfa0['appendChild'](_0x4b11a8),_0x167546&&_0x55dfa0['appendChild'](_0x167546),_0x55dfa0['appendChild'](_0x984c4c),_0x2558c1['appendChild'](_0x24fbc1);}['selectTreeNodeAndHighlightSceneObject'](_0x3c90fd,_0x3d3e66,_0x943285=!![]){var _0x3728e8,_0x4a26a5;const _0x1561ad=_0x3c90fd['querySelector']('.tree-node-item');_0x1561ad===null||_0x1561ad===void 0x0?void 0x0:_0x1561ad['classList']['add']('selected');_0x943285&&this['highlightSceneObject'](_0x3d3e66);let _0x4c527a=(_0x3728e8=_0x3c90fd['parentElement'])===null||_0x3728e8===void 0x0?void 0x0:_0x3728e8['closest']('.tree-node');while(_0x4c527a){const _0x3673d2=_0x4c527a['querySelector']('.tree-node-item');_0x3673d2&&_0x3673d2['classList']['add']('selected'),_0x4c527a=(_0x4a26a5=_0x4c527a['parentElement'])===null||_0x4a26a5===void 0x0?void 0x0:_0x4a26a5['closest']('.tree-node');}}['highlightTreeNodeBySceneObject'](_0x1ffb63){var _0x27df42;const _0x13a7ba=_0x1ffb63['uuid'],_0x10c043=(_0x27df42=this['content'])===null||_0x27df42===void 0x0?void 0x0:_0x27df42['querySelector']('[data-uuid=\x22'+_0x13a7ba+'\x22]');_0x10c043&&this['selectTreeNodeAndHighlightSceneObject'](_0x10c043,_0x1ffb63,![]);}['highlightSceneObject'](_0x3d0cc2){const _0x25f6a3=this['viewer'];this['lastHighlightedObject']=_0x3d0cc2,_0x25f6a3['clearHighlight'](),_0x25f6a3['setObjectHighlight'](_0x3d0cc2);}['focusSceneObject'](_0x17a26f){const _0x44b13f=this['viewer'];_0x44b13f['flyToObject'](_0x17a26f);}['updateChildrenVisibility'](_0x53cd89,_0x25b81e){const _0x4bae05=_0x53cd89['querySelectorAll']('.tree-node')||[];_0x4bae05['forEach'](_0x29cd87=>{const _0xe299f1=_0x29cd87['querySelector']('.visibility-checkbox');_0xe299f1&&(_0xe299f1['checked']=_0x25b81e,_0xe299f1['indeterminate']=![]);const _0x399a6d=_0x29cd87['dataset']['uuid'];if(_0x399a6d){const _0x51c43b=this['findObjectByUuid'](_0x399a6d);_0x51c43b&&(_0x51c43b['visible']=_0x25b81e);}const _0x24c949=_0x29cd87['querySelector']('.children');_0x24c949&&this['updateChildrenVisibility'](_0x24c949,_0x25b81e);});}['updateParentVisibility'](_0x26f03c,_0x754947){if(!_0x26f03c)return;const _0x4f78f9=_0x26f03c['querySelector'](':scope\x20>\x20.children');if(!_0x4f78f9)return;const _0x1b8ae4=Array['from'](_0x4f78f9['querySelectorAll']('.visibility-checkbox'));if(_0x1b8ae4['length']===0x0)return;const _0x4ff9e3=_0x1b8ae4['every'](_0x1487eb=>_0x1487eb['checked']&&!_0x1487eb['indeterminate']),_0x461201=_0x1b8ae4['every'](_0x4926e5=>!_0x4926e5['checked']&&!_0x4926e5['indeterminate']),_0x329d65=_0x26f03c['querySelector']('.visibility-checkbox');if(_0x329d65){if(_0x4ff9e3)_0x329d65['checked']=!![],_0x329d65['indeterminate']=![];else _0x461201?(_0x329d65['checked']=![],_0x329d65['indeterminate']=![]):(_0x329d65['checked']=![],_0x329d65['indeterminate']=!![]);}const _0x268151=_0x26f03c['dataset']['uuid'];if(_0x268151){const _0x578dc9=this['findObjectByUuid'](_0x268151);_0x578dc9&&(_0x578dc9['visible']=_0x754947||!_0x461201);}this['updateParentVisibility'](this['getClosestParentTreeNode'](_0x26f03c['parentElement']),_0x754947);}['IsModelNode'](_0x5cfbd0){if(!_0x5cfbd0)return ![];if(_0x5cfbd0['userData']&&_0x5cfbd0['userData']['modelId']!==undefined)return !![];return ![];}['showPopMenu'](_0x64bf41){var _0x3d4dcc;document['querySelectorAll']('.tree-pop-menu')['forEach'](_0x3669b4=>_0x3669b4['remove']());const _0xfefe70=_0x64bf41['target'],_0x394974=_0xfefe70['closest']('.tree-node'),_0x40441d=_0xfefe70['closest']('.tree-node-item'),_0x12065b=_0x40441d['querySelector']('.visibility-checkbox');let _0x479cfb;const _0x309e74=_0x394974['dataset']['uuid'];_0x309e74&&(_0x479cfb=this['findObjectByUuid'](_0x309e74));const _0x387168=_0x40441d['classList']['contains']('selected'),_0x38935b=_0x479cfb?_0x479cfb['visible']:![],_0x2b9e19=document['createElement']('div');_0x2b9e19['classList']['add']('tree-pop-menu'),_0x2b9e19['style']['left']=_0x64bf41['clientX']+0x8+'px',_0x2b9e19['style']['top']=_0x64bf41['clientY']+0x8+'px';function _0x6c9ad1(_0x78aec,_0x1b54a1=![],_0x284dea){const _0x316e31=document['createElement']('div');_0x316e31['textContent']=_0x78aec,_0x316e31['classList']['add']('item'),_0x1b54a1&&_0x316e31['classList']['add']('last-item-in-section'),_0x316e31['addEventListener']('click',_0x30aaca=>{_0x30aaca['stopPropagation'](),_0x2b9e19['remove'](),_0x284dea();}),_0x2b9e19['appendChild'](_0x316e31);}_0x6c9ad1('Focus',![],()=>{_0x479cfb&&this['focusSceneObject'](_0x479cfb);}),_0x6c9ad1(_0x387168?'Deselect':'Select',!![],()=>{var _0x18feaf;_0x479cfb&&((_0x18feaf=this['content'])===null||_0x18feaf===void 0x0?void 0x0:_0x18feaf['querySelectorAll']('.tree-node-item.selected')['forEach'](_0x3b1986=>_0x3b1986['classList']['remove']('selected')),_0x387168?(_0x40441d['classList']['remove']('selected'),this['viewer']['clearHighlight']()):(_0x40441d['classList']['add']('selected'),this['selectTreeNodeAndHighlightSceneObject'](_0x394974,_0x479cfb)));}),_0x6c9ad1(_0x38935b?'Hide':'Show',![],()=>{if(_0x479cfb){_0x479cfb['visible']=!_0x38935b,_0x12065b['checked']=!_0x38935b;const _0x2a209a=_0x394974['querySelector']('.children');_0x2a209a&&this['updateChildrenVisibility'](_0x2a209a,!_0x38935b);const _0x4a2d3c=this['getClosestParentTreeNode'](_0x394974['parentElement']);this['updateParentVisibility'](_0x4a2d3c,!_0x38935b),this['viewer']['enableRender']();}}),_0x6c9ad1('Delete',!![],()=>{var _0x385229;if(_0x479cfb){_0x387168&&((_0x385229=this['content'])===null||_0x385229===void 0x0?void 0x0:_0x385229['querySelectorAll']('.tree-node-item.selected')['forEach'](_0x5c3d3c=>_0x5c3d3c['classList']['remove']('selected')),this['viewer']['clearHighlight']());if(this['IsModelNode'](_0x479cfb)){this['viewer']['removeModelById'](_0x479cfb['userData']['modelId']),_0x394974['remove']();return;}const _0x4535ed=this['getClosestParentTreeNode'](_0x394974['parentElement']);_0x479cfb['removeFromParent'](),_0x394974['remove'](),this['updateParentVisibility'](_0x4535ed,!_0x38935b);if(_0x4535ed){const _0x28bd24=_0x4535ed['querySelector']('.child-count'),_0x23caed=parseInt(_0x28bd24['innerHTML']['replace'](/[()]/g,''),0xa);_0x28bd24['innerHTML']='('+(_0x23caed-0x1)+')';}this['viewer']['enableRender']();}});_0x479cfb&&!(this['IsModelNode'](_0x479cfb)||this['IsModelNode'](_0x479cfb['parent']))&&_0x6c9ad1('Duplicate',!![],()=>{var _0x5aa163;if(_0x479cfb&&_0x479cfb['parent']){(_0x5aa163=this['content'])===null||_0x5aa163===void 0x0?void 0x0:_0x5aa163['querySelectorAll']('.tree-node-item.selected')['forEach'](_0x1f75bc=>_0x1f75bc['classList']['remove']('selected')),this['viewer']['clearHighlight']();const _0x36693f=_0x479cfb['clone'](!![]);_0x36693f['name']=_0x479cfb['name']+'_copy',_0x479cfb['parent']['add'](_0x36693f);let _0x53c861=0x0,_0xbc1329=_0x479cfb;while(_0xbc1329){if(_0xbc1329['userData']['modelId']!==undefined)break;_0x53c861++,_0xbc1329=_0xbc1329['parent'];}this['buildTreeForNodeRecursive'](_0x36693f,_0x394974['parentElement'],_0x53c861);const _0x53fd12=this['getClosestParentTreeNode'](_0x394974['parentElement']);if(_0x53fd12){const _0x4a228d=_0x53fd12['querySelector']('.child-count'),_0xab19b2=parseInt(_0x4a228d['innerHTML']['replace'](/[()]/g,''),0xa);_0x4a228d['innerHTML']='('+(_0xab19b2+0x1)+')';}this['selectTreeNodeAndHighlightSceneObject'](_0x394974['parentElement']['lastElementChild'],_0x36693f);}});_0x6c9ad1('Export',![],()=>{if(_0x479cfb){const _0xa26613=this['viewer']['findPlugin']('ExportPlugin');if(!_0xa26613){log['warn']('[Toolbar]\x20ExportPlugin\x20is\x20not\x20installed!');return;}_0xa26613['showExportPanel']('glb',_0x479cfb['name'],_0x479cfb);}}),_0x6c9ad1('Generate\x20Smart\x20UV1',![],()=>{_0x479cfb&&this['viewer']['generateSmartUv1'](_0x479cfb);}),(_0x3d4dcc=this['basePanel'])===null||_0x3d4dcc===void 0x0?void 0x0:_0x3d4dcc['root']['appendChild'](_0x2b9e19);const _0x2dd677=this['viewer']['viewerContainer'];if(_0x2dd677){const _0x3da1c3=_0x2dd677['getBoundingClientRect'](),_0x32e0a1=_0x2b9e19['getBoundingClientRect']();if(_0x32e0a1['right']>_0x3da1c3['right']){let _0x1e9c37=_0x64bf41['clientX']-_0x32e0a1['width']-0x8;_0x1e9c37<_0x3da1c3['left']+0x4&&(_0x1e9c37=_0x3da1c3['left']+0x4),_0x2b9e19['style']['left']=_0x1e9c37+'px';}}setTimeout(()=>{document['addEventListener']('mousedown',_0x3b2611=>{!_0x2b9e19['contains'](_0x3b2611['target'])&&_0x2b9e19['remove']();},{'once':!![]});},0x0);}['getClosestParentTreeNode'](_0x445469){while(_0x445469&&!_0x445469['classList']['contains']('tree-node')){_0x445469=_0x445469['parentElement'];}return _0x445469;}['findObjectByUuid'](_0x54555a){const _0x4b3de9=this['viewer']['loadedModels']||[];for(const _0x5412da of _0x4b3de9){const _0x496240=_0x5412da['getModelObject']()['getObjectByProperty']('uuid',_0x54555a);if(_0x496240)return _0x496240;}return undefined;}}TreeViewPlugin['DEFAULT_ID']='TreeViewPlugin';
|
|
234
|
+
|
|
235
|
+
let sectionPanel;const markupPlugin=_0x28607e=>{return _0x28607e['findPlugin'](MarkupPlugin['DEFAULT_ID']);},measurementPlugin=_0x2dadc0=>{return _0x2dadc0['findPlugin'](MeasurementPlugin['DEFAULT_ID']);},sectionPlugin=_0x2b776d=>{return _0x2b776d['findPlugin'](SectionPlugin['DEFAULT_ID']);},screenshotPlugin=_0x54dc4a=>{return _0x54dc4a['findPlugin'](ScreenshotPlugin['DEFAULT_ID']);},treeViewPlugin=_0x3e6c27=>{return _0x3e6c27['findPlugin'](TreeViewPlugin['DEFAULT_ID']);},setting3dPlugin=_0x14e679=>{return _0x14e679['findPlugin'](Settings3dPlugin['DEFAULT_ID']);},setting2dPlugin=_0x1e5075=>{return _0x1e5075['findPlugin'](Settings2dPlugin['DEFAULT_ID']);},activateMeasurement=_0x210223=>{return _0x3cacc0=>{const _0x1a7bb4=measurementPlugin(_0x3cacc0),_0xb7b5e5=sectionPlugin(_0x3cacc0);_0xb7b5e5===null||_0xb7b5e5===void 0x0?void 0x0:_0xb7b5e5['deactivate'](),_0x1a7bb4===null||_0x1a7bb4===void 0x0?void 0x0:_0x1a7bb4['activate'](_0x210223);};},deactivateMeasurement=_0x54d995=>{const _0x97a766=measurementPlugin(_0x54d995);_0x97a766===null||_0x97a766===void 0x0?void 0x0:_0x97a766['deactivate']();},hideMeasurementData=_0x56bc25=>{const _0x1f0ffe=measurementPlugin(_0x56bc25);if(_0x1f0ffe){_0x1f0ffe['deactivate']();const _0x50d780=_0x1f0ffe['getData']();_0x50d780['forEach'](_0xb34417=>_0x1f0ffe['setVisibleById'](_0xb34417['id'],![]));}},deactivateSection=_0x4b824b=>{const _0x4fb0b4=measurementPlugin(_0x4b824b);if(_0x4fb0b4){_0x4fb0b4['deactivate']();const _0x5ed2ca=_0x4fb0b4['getData']();_0x5ed2ca['forEach'](_0x349548=>_0x4fb0b4['setVisibleById'](_0x349548['id'],!![]));}const _0x48bb64=sectionPlugin(_0x4b824b),_0x4ec60d=![];_0x48bb64===null||_0x48bb64===void 0x0?void 0x0:_0x48bb64['deactivate'](_0x4ec60d),sectionPanel===null||sectionPanel===void 0x0?void 0x0:sectionPanel['destroy'](),sectionPanel=undefined,_0x4b824b['enableRender']();};const DefaultViewer3dToolbarConfig={[ToolbarMenuId['HomeView']]:{'icon':{'default':'icon-home','active':'icon-home-filled','iconFont':IconfontClass2},'menuName':'homeView','type':MenuTypeEnums['ClickEvent'],'onClick':_0x440fd8=>{const _0x32931e=_0x440fd8;_0x32931e['goToHomeView']();}},[ToolbarMenuId['OrthoMode']]:{'icon':{'default':'icon-orthomode','active':'icon-orthomode-filled','iconFont':IconfontClass2},'menuName':'orthoView','type':MenuTypeEnums['Switch'],'onActive':_0x7352e0=>{log['info']('[Toolbar]','Enter\x20OrthoMode');const _0x575511=_0x7352e0;_0x575511['setCameraProjection'](CameraProjection['Orthographic']);},'onDeactive':_0x1fa079=>{log['info']('[Toolbar]','Exit\x20OrthoMode');const _0x471450=_0x1fa079;_0x471450['setCameraProjection'](CameraProjection['Perspective']);}},[ToolbarMenuId['Measure']]:{'icon':{'default':'icon-measure','active':'icon-measure-filled','iconFont':IconfontClass2},'menuName':'measurement','type':MenuTypeEnums['SubMenu'],'children':{[ToolbarMenuId['MeasureDistance']]:{'icon':{'default':'icon-measure-distance'},'menuName':'distanceMeasurement','onActive':activateMeasurement(MeasurementType['Distance']),'onDeactive':deactivateMeasurement,'type':MenuTypeEnums['Switch'],'mutexIds':[ToolbarMenuId['MeasureArea'],ToolbarMenuId['MeasureAngle'],ToolbarMenuId['MeasureCoordinate']]},[ToolbarMenuId['MeasureArea']]:{'icon':{'default':'icon-measure-area-color'},'onActive':activateMeasurement(MeasurementType['Area']),'onDeactive':deactivateMeasurement,'type':MenuTypeEnums['Switch'],'menuName':'areaMeasurement','mutexIds':[ToolbarMenuId['MeasureDistance'],ToolbarMenuId['MeasureAngle'],ToolbarMenuId['MeasureCoordinate']]},[ToolbarMenuId['MeasureAngle']]:{'menuName':'angleMeasurement','icon':{'default':'icon-angle-measure'},'type':MenuTypeEnums['Switch'],'onActive':activateMeasurement(MeasurementType['Angle']),'onDeactive':deactivateMeasurement,'mutexIds':[ToolbarMenuId['MeasureDistance'],ToolbarMenuId['MeasureArea'],ToolbarMenuId['MeasureCoordinate']]},[ToolbarMenuId['MeasureCoordinate']]:{'menuName':'coordinateMeasurement','icon':{'default':'icon-distancemeasure','iconFont':IconfontClass2},'type':MenuTypeEnums['Switch'],'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':_0x363250=>{const _0x1d31a5=measurementPlugin(_0x363250);_0x1d31a5===null||_0x1d31a5===void 0x0?void 0x0:_0x1d31a5['deactivate'](),_0x1d31a5===null||_0x1d31a5===void 0x0?void 0x0:_0x1d31a5['clear']();},'type':MenuTypeEnums['ClickEvent'],'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':MenuTypeEnums['SubMenu'],'children':{[ToolbarMenuId['SectionAxis']]:{'icon':{'default':'icon-sectionplane','active':'icon-sectionplane-filled','iconFont':IconfontClass2},'menuName':'axisSection','type':MenuTypeEnums['Switch'],'onActive':_0x24b2ae=>{hideMeasurementData(_0x24b2ae);const _0x24183f=sectionPlugin(_0x24b2ae);_0x24183f===null||_0x24183f===void 0x0?void 0x0:_0x24183f['activate'](SectionType['AxisPlaneSection']),sectionPanel===null||sectionPanel===void 0x0?void 0x0:sectionPanel['destroy'](),sectionPanel=new AxisSectionPopPanel(_0x24b2ae);},'onDeactive':deactivateSection,'mutexIds':[ToolbarMenuId['SectionBox'],ToolbarMenuId['SectionPlane']]},[ToolbarMenuId['SectionPlane']]:{'icon':{'default':'icon-choosesectionplane','active':'icon-choosesectionplane-filled','iconFont':IconfontClass2},'menuName':'pickSectionPlane','type':MenuTypeEnums['Switch'],'onActive':_0x331822=>{hideMeasurementData(_0x331822);const _0xcd2a66=sectionPlugin(_0x331822);_0xcd2a66===null||_0xcd2a66===void 0x0?void 0x0:_0xcd2a66['activate'](SectionType['PickPlaneSection']),sectionPanel===null||sectionPanel===void 0x0?void 0x0:sectionPanel['destroy'](),sectionPanel=new PickSectionPopPanel(_0x331822);},'onDeactive':deactivateSection,'mutexIds':[ToolbarMenuId['SectionAxis'],ToolbarMenuId['SectionBox']]},[ToolbarMenuId['SectionBox']]:{'icon':{'default':'icon-sectionbox','active':'icon-sectionbox-filled','iconFont':IconfontClass2},'menuName':'sectionBox','type':MenuTypeEnums['Switch'],'onActive':_0x4e6bec=>{hideMeasurementData(_0x4e6bec);const _0x37a07c=sectionPlugin(_0x4e6bec);_0x37a07c===null||_0x37a07c===void 0x0?void 0x0:_0x37a07c['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':MenuTypeEnums['Switch'],'onActive':(_0x4f7af1,_0x2973ea)=>{const _0x4deb7d=treeViewPlugin(_0x4f7af1);if(!_0x4deb7d){log['warn']('[Toolbar]\x20TreeViewPlugin\x20is\x20not\x20installed!');return;}!_0x4deb7d['hasEventListener']('visibilitychange')&&_0x4deb7d['addEventListener']('visibilitychange',_0x574e27=>{if(_0x2973ea){const _0x1a62e8=_0x2973ea['isActive'](ToolbarMenuId['TreeView']);_0x1a62e8!==_0x574e27&&_0x2973ea['setActive'](ToolbarMenuId['TreeView'],_0x574e27);}}),_0x4deb7d['setVisible'](!![]);},'onDeactive':_0x303e36=>{const _0x2992ab=treeViewPlugin(_0x303e36);_0x2992ab===null||_0x2992ab===void 0x0?void 0x0:_0x2992ab['setVisible'](![]);},'visible':!![]},[ToolbarMenuId['Viewpoint']]:{'icon':{'default':'icon-viewpoint','active':'icon-viewpoint-filled','iconFont':IconfontClass2},'menuName':'viewpoint','type':MenuTypeEnums['Switch'],'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':MenuTypeEnums['Switch'],'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':MenuTypeEnums['Switch'],'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':MenuTypeEnums['ClickEvent'],'onClick':(_0x757616,_0x5257a1)=>{const _0x211615=screenshotPlugin(_0x757616),_0x42e9f3=(_0x5257a1===null||_0x5257a1===void 0x0?void 0x0:_0x5257a1['getScreenshotDownloadFileName']())||'';if(!_0x211615){log['warn']('[Toolbar]\x20ScreenshotPlugin\x20is\x20not\x20installed!');return;}_0x211615['getScreenshotAsync'](ScreenshotMode['Default'])['then'](_0x24c99e=>{log['info']('[Toolbar]\x20getScreenshot()\x20returns:',_0x24c99e===null||_0x24c99e===void 0x0?void 0x0:_0x24c99e['base64Image']);if(!(_0x24c99e===null||_0x24c99e===void 0x0?void 0x0:_0x24c99e['base64Image']))throw '[Toolbar]\x20Image\x20data\x20is\x20empty!';const _0x2699c5=document['createElement']('a');_0x2699c5['href']=_0x24c99e===null||_0x24c99e===void 0x0?void 0x0:_0x24c99e['base64Image'],_0x2699c5['download']=_0x42e9f3,_0x2699c5['click']();})['catch'](_0x32cf3e=>{log['error']('[Toolbar]\x20Failed\x20to\x20get\x20screenshot,\x20reason:',_0x32cf3e),_0x5257a1===null||_0x5257a1===void 0x0?void 0x0:_0x5257a1['setActive'](ToolbarMenuId['Screenshot'],![]);});}},[ToolbarMenuId['Settings']]:{'icon':{'default':'icon-settings','active':'icon-settings-filled','iconFont':IconfontClass2},'menuName':'settings','type':MenuTypeEnums['Switch'],'onActive':(_0x4ce8bb,_0x1ac3db)=>{const _0x1a64e4=setting3dPlugin(_0x4ce8bb);if(!_0x1a64e4){log['warn']('[Toolbar]\x20Settings3dPlugin\x20is\x20not\x20installed!');return;}!_0x1a64e4['hasEventListener']('visibilitychange')&&_0x1a64e4['addEventListener']('visibilitychange',_0xf792da=>{if(_0x1ac3db){const _0xa36e06=_0x1ac3db['isActive'](ToolbarMenuId['Settings']);_0xa36e06!==_0xf792da&&_0x1ac3db['setActive'](ToolbarMenuId['Settings'],_0xf792da);}}),_0x1a64e4['setVisible'](!![]);},'onDeactive':_0x291edf=>{const _0x21e49e=setting3dPlugin(_0x291edf);_0x21e49e===null||_0x21e49e===void 0x0?void 0x0:_0x21e49e['setVisible'](![]);},'visible':!![]},[ToolbarMenuId['Fullscreen']]:{'icon':{'default':'icon-fullscreen','active':'icon-fullscreen-filled','iconFont':IconfontClass2},'menuName':'fullscreen','type':MenuTypeEnums['Switch'],'onClick':(_0x451fc4,_0x1c8cd4)=>{var _0x15405e;const _0x233bc8=()=>{const _0x2193f6=_0x1c8cd4===null||_0x1c8cd4===void 0x0?void 0x0:_0x1c8cd4['menuList']['get'](ToolbarMenuId['Fullscreen']);_0x2193f6&&_0x2193f6['setActive'](CommonUtils['isFullScreen']());};CommonUtils['isFullScreen']()?(CommonUtils['exitFullscreen'](),window['removeEventListener']('resize',_0x233bc8)):CommonUtils['fullScreen']((_0x15405e=_0x451fc4['viewerContainer'])===null||_0x15405e===void 0x0?void 0x0:_0x15405e['parentElement']),window['addEventListener']('resize',_0x233bc8);}}};const DefaultViewer2dToolbarConfig={[ToolbarMenuId['HomeView']]:{'icon':{'default':'icon-zhushitu','active':'icon-zhushitu'},'menuName':'homeView','type':MenuTypeEnums['ClickEvent'],'onClick':_0x5e7992=>{_0x5e7992['goToHomeView']();}},[ToolbarMenuId['ZoomToRectangle']]:{'icon':{'default':'icon-kuangxuanfangda','active':'icon-kuangxuanfangda'},'menuName':'zoomToRectangle','type':MenuTypeEnums['Switch'],'onClick':(_0x1d2c79,_0x5c7782)=>{const _0x40cb81=_0x1d2c79;_0x40cb81['removeEventListener'](ViewerEvent['BoxSelectDeactivate']),_0x40cb81['addEventListener'](ViewerEvent['BoxSelectDeactivate'],()=>{_0x5c7782===null||_0x5c7782===void 0x0?void 0x0:_0x5c7782['setActive'](ToolbarMenuId['ZoomToRectangle'],![]);}),_0x40cb81['zoomToRect']();},'mutexIds':[ToolbarMenuId['Screenshot']]},[ToolbarMenuId['Screenshot']]:{'icon':{'default':'icon-frame-clipping','active':'icon-frame-clipping'},'menuName':'screenshot','type':MenuTypeEnums['Switch'],'onClick':(_0x22e76e,_0x71c5be)=>{const _0x2f3f4d=_0x22e76e;_0x2f3f4d['removeEventListener'](ViewerEvent['BoxSelectDeactivate']),_0x2f3f4d['addEventListener'](ViewerEvent['BoxSelectDeactivate'],()=>{_0x71c5be===null||_0x71c5be===void 0x0?void 0x0:_0x71c5be['setActive'](ToolbarMenuId['Screenshot'],![]);});const _0x55e178=screenshotPlugin(_0x22e76e);if(!_0x55e178){log['warn']('[Toolbar]\x20ScreenshotPlugin\x20is\x20not\x20installed!');return;}_0x55e178['getScreenshotAsync'](ScreenshotMode['Default'])['then'](_0xfe8c80=>{log['info']('[Toolbar]\x20getScreenshot()\x20returns:',_0xfe8c80===null||_0xfe8c80===void 0x0?void 0x0:_0xfe8c80['base64Image']);if(!(_0xfe8c80===null||_0xfe8c80===void 0x0?void 0x0:_0xfe8c80['base64Image']))throw '[Toolbar]\x20Image\x20data\x20is\x20empty!';const _0x46abfe=document['createElement']('a');_0x46abfe['href']=_0xfe8c80===null||_0xfe8c80===void 0x0?void 0x0:_0xfe8c80['base64Image'],_0x46abfe['download']='',_0x46abfe['click']();})['catch'](_0x264f4a=>{log['error']('[Toolbar]\x20Failed\x20to\x20get\x20screenshot,\x20reason:',_0x264f4a),_0x71c5be===null||_0x71c5be===void 0x0?void 0x0:_0x71c5be['setActive'](ToolbarMenuId['Screenshot'],![]);});},'mutexIds':[ToolbarMenuId['ZoomToRectangle']]},[ToolbarMenuId['Measure']]:{'icon':{'default':'icon-celiang1','active':'icon-celiang1'},'menuName':'measurement','type':MenuTypeEnums['SubMenu'],'children':{[ToolbarMenuId['MeasureDistance']]:{'icon':{'default':'icon-measure-distance'},'menuName':'distanceMeasurement','onActive':_0x235772=>{const _0x1813f3=measurementPlugin(_0x235772);_0x1813f3===null||_0x1813f3===void 0x0?void 0x0:_0x1813f3['activate'](MeasurementType['Distance']);},'onDeactive':_0x2f4c7d=>{const _0x4dbd0d=measurementPlugin(_0x2f4c7d);_0x4dbd0d===null||_0x4dbd0d===void 0x0?void 0x0:_0x4dbd0d['deactivate']();},'type':MenuTypeEnums['Switch'],'mutexIds':[ToolbarMenuId['MeasureArea'],ToolbarMenuId['MeasureAngle'],ToolbarMenuId['MeasureCoordinate'],ToolbarMenuId['ZoomToRectangle'],ToolbarMenuId['Screenshot']]},[ToolbarMenuId['MeasureArea']]:{'icon':{'default':'icon-measure-area-color'},'onActive':_0x21c278=>{const _0x1b0f52=measurementPlugin(_0x21c278);_0x1b0f52===null||_0x1b0f52===void 0x0?void 0x0:_0x1b0f52['activate'](MeasurementType['Area']);},'onDeactive':_0x1aa395=>{const _0x13149c=measurementPlugin(_0x1aa395);_0x13149c===null||_0x13149c===void 0x0?void 0x0:_0x13149c['deactivate']();},'type':MenuTypeEnums['Switch'],'menuName':'areaMeasurement','mutexIds':[ToolbarMenuId['MeasureDistance'],ToolbarMenuId['MeasureAngle'],ToolbarMenuId['MeasureCoordinate'],ToolbarMenuId['ZoomToRectangle'],ToolbarMenuId['Screenshot']]},[ToolbarMenuId['MeasureAngle']]:{'menuName':'angleMeasurement','icon':{'default':'icon-angle-measure'},'type':MenuTypeEnums['Switch'],'onActive':_0x1a8a56=>{const _0x2b7e10=measurementPlugin(_0x1a8a56);_0x2b7e10===null||_0x2b7e10===void 0x0?void 0x0:_0x2b7e10['activate'](MeasurementType['Angle']);},'onDeactive':_0x3c9913=>{const _0x36b1fd=measurementPlugin(_0x3c9913);_0x36b1fd===null||_0x36b1fd===void 0x0?void 0x0:_0x36b1fd['deactivate']();},'mutexIds':[ToolbarMenuId['MeasureDistance'],ToolbarMenuId['MeasureArea'],ToolbarMenuId['MeasureCoordinate'],ToolbarMenuId['ZoomToRectangle'],ToolbarMenuId['Screenshot']]},[ToolbarMenuId['MeasureCoordinate']]:{'menuName':'coordinateMeasurement','icon':{'default':'icon-distancemeasure','iconFont':IconfontClass2},'type':MenuTypeEnums['Switch'],'onActive':_0x32749c=>{const _0x487d18=measurementPlugin(_0x32749c);_0x487d18===null||_0x487d18===void 0x0?void 0x0:_0x487d18['activate'](MeasurementType['Coordinate']);},'onDeactive':_0x28a6a0=>{const _0x232be2=measurementPlugin(_0x28a6a0);_0x232be2===null||_0x232be2===void 0x0?void 0x0:_0x232be2['deactivate']();},'visible':![],'mutexIds':[ToolbarMenuId['MeasureDistance'],ToolbarMenuId['MeasureArea'],ToolbarMenuId['MeasureAngle'],ToolbarMenuId['ZoomToRectangle'],ToolbarMenuId['Screenshot']]},[ToolbarMenuId['MeasureClear']]:{'icon':{'default':'icon-clear','active':'icon-clear-filled','iconFont':IconfontClass2},'onClick':_0x52cd36=>{const _0xf1e35e=measurementPlugin(_0x52cd36);_0xf1e35e===null||_0xf1e35e===void 0x0?void 0x0:_0xf1e35e['clear']();},'type':MenuTypeEnums['ClickEvent'],'menuName':'clearMeasurement'}}},[ToolbarMenuId['Markup']]:{'icon':{'default':'icon-annotation'},'menuName':'markup','type':MenuTypeEnums['ClickEvent'],'onClick':(_0x111159,_0x74d43c)=>{deactivateMeasurement(_0x111159),_0x74d43c===null||_0x74d43c===void 0x0?void 0x0:_0x74d43c['updateMenu'](ToolbarMenuId['Measure'],{'defaultActive':![]}),_0x74d43c===null||_0x74d43c===void 0x0?void 0x0:_0x74d43c['setActive'](ToolbarMenuId['ZoomToRectangle'],![]);const _0x33f00e=markupPlugin(_0x111159);if(!_0x33f00e){log['warn']('[Toolbar]\x20MarkupPlugin\x20is\x20not\x20installed!');return;}const _0x1fb333=_0x33f00e['getData']();_0x1fb333['forEach'](_0x32766f=>_0x33f00e['setMarkupVisibility'](_0x32766f['id'],!![])),_0x74d43c===null||_0x74d43c===void 0x0?void 0x0:_0x74d43c['setActive'](ToolbarMenuId['MarkupVisibility'],![]),_0x33f00e['activate'](),_0x33f00e['setDrawType'](MarkupType['CloudRectWithText']),_0x111159['dispatchEvent'](ViewerEvent['MarkupActivate']);}},[ToolbarMenuId['MarkupVisibility']]:{'icon':{'default':'icon-annotation-show','active':'icon-annotation-hide'},'menuName':'markupVisibility','type':MenuTypeEnums['Switch'],'onActive':_0x2dbbe7=>{const _0x241fde=markupPlugin(_0x2dbbe7);if(!_0x241fde){log['warn']('[Toolbar]\x20MarkupPlugin\x20is\x20not\x20installed!');return;}const _0x39d2c1=_0x241fde['getData']();_0x39d2c1['forEach'](_0x4c7ced=>_0x241fde['setMarkupVisibility'](_0x4c7ced['id'],![]));},'onDeactive':_0x678090=>{const _0x270c9d=markupPlugin(_0x678090);if(!_0x270c9d){log['warn']('[Toolbar]\x20MarkupPlugin\x20is\x20not\x20installed!');return;}const _0x1f9677=_0x270c9d['getData']();_0x1f9677['forEach'](_0x4f109c=>_0x270c9d['setMarkupVisibility'](_0x4f109c['id'],!![]));},'visible':!![]},[ToolbarMenuId['Settings']]:{'icon':{'default':'icon-settings','active':'icon-settings-filled','iconFont':IconfontClass2},'menuName':'settings','type':MenuTypeEnums['Switch'],'onActive':(_0x31f8d9,_0x373384)=>{const _0xb1490b=setting2dPlugin(_0x31f8d9);if(!_0xb1490b){log['warn']('[Toolbar]\x20Settings2dPlugin\x20is\x20not\x20installed!');return;}!_0xb1490b['hasEventListener']('visibilitychange')&&_0xb1490b['addEventListener']('visibilitychange',_0x40f0bc=>{if(_0x373384){const _0x20fb10=_0x373384['isActive'](ToolbarMenuId['Settings']);_0x20fb10!==_0x40f0bc&&_0x373384['setActive'](ToolbarMenuId['Settings'],_0x40f0bc);}}),_0xb1490b['setVisible'](!![]);},'onDeactive':_0x4bf5c9=>{const _0x484e7c=setting2dPlugin(_0x4bf5c9);_0x484e7c===null||_0x484e7c===void 0x0?void 0x0:_0x484e7c['setVisible'](![]);},'visible':!![]},[ToolbarMenuId['Compared']]:{'icon':{'default':'icon-compared'},'menuName':'compared','type':MenuTypeEnums['Switch'],'onActive':()=>{log['info']('[Toolbar]','Activate\x20Compare');},'onDeactive':()=>{log['info']('[Toolbar]','Deactivate\x20Compare');},'visible':![]},[ToolbarMenuId['QuitCompare']]:{'icon':{'default':'icon-compared'},'menuName':'quitCompare','type':MenuTypeEnums['Switch'],'onActive':()=>{log['info']('[Toolbar]','Activate\x20Compare');},'onDeactive':()=>{log['info']('[Toolbar]','Deactivate\x20Compare');},'visible':![]},[ToolbarMenuId['Layers']]:{'icon':{'default':'icon-tucengkongzhi','active':'icon-tucengkongzhi'},'menuName':'layers','type':MenuTypeEnums['Switch'],'onClick':()=>{}},[ToolbarMenuId['Fullscreen']]:{'icon':{'default':'icon-quanping','active':'icon-quanping'},'menuName':'fullscreen','type':MenuTypeEnums['Switch'],'onClick':(_0x54747b,_0x2b5a0c)=>{var _0x423cf9;const _0x211058=()=>{const _0x2b3e95=_0x2b5a0c===null||_0x2b5a0c===void 0x0?void 0x0:_0x2b5a0c['menuList']['get'](ToolbarMenuId['Fullscreen']);_0x2b3e95&&_0x2b3e95['setActive'](CommonUtils['isFullScreen']());};CommonUtils['isFullScreen']()?(CommonUtils['exitFullscreen'](),window['removeEventListener']('resize',_0x211058)):CommonUtils['fullScreen']((_0x423cf9=_0x54747b['viewerContainer'])===null||_0x423cf9===void 0x0?void 0x0:_0x423cf9['parentElement']),window['addEventListener']('resize',_0x211058);}}};
|
|
236
|
+
|
|
237
|
+
class Viewer2dToolbarPlugin extends Plugin{constructor(_0x4035d5,_0x2942c4){const _0x4ebe3a=(_0x2942c4===null||_0x2942c4===void 0x0?void 0x0:_0x2942c4['id'])||Viewer2dToolbarPlugin['DEFAULT_ID'];super(_0x4035d5,{'id':_0x4ebe3a}),this['onMarkupActivated']=()=>{if(!this['markupToolbar']){const _0x48eb61=merge(this['cfg']['markupMenuCfg']||[],DefaultMarkupToolbarConfig),_0x23c788=merge(this['cfg']['markupGroupCfg']||[],MarkupGroupConfig);this['markupToolbar']=new MarkupToolbar(this['viewer'],_0x48eb61,_0x23c788),this['markupToolbar']['hide']();}this['toolbar']['hide'](),this['markupToolbar']['show']();},this['onMarkupDeactivated']=()=>{var _0x36998b;(_0x36998b=this['markupToolbar'])===null||_0x36998b===void 0x0?void 0x0:_0x36998b['hide'](),this['toolbar']['show']();},this['cfg']=_0x2942c4||{'id':_0x4ebe3a},this['initLocalization']();const _0x30a393=merge({},DefaultViewer2dToolbarConfig,this['cfg']['menuConfig']),_0x4059fa=merge(this['cfg']['groupConfig']||[],GroupConfig);this['toolbar']=new Toolbar(_0x4035d5,_0x30a393,_0x4059fa),this['viewer']['addEventListener'](ViewerEvent['MarkupActivate'],this['onMarkupActivated']),this['viewer']['addEventListener'](ViewerEvent['MarkupDeactivate'],this['onMarkupDeactivated']);}['initLocalization'](){const _0x28790d=this['cfg']['language']||DefaultLanguage;i18n$2['changeLanguage'](_0x28790d);}['getToolbar'](){return this['toolbar'];}['getMarkupToolbar'](){return this['markupToolbar'];}['setActive'](_0x4b75b1,_0x19654c){this['toolbar']['setActive'](_0x4b75b1,_0x19654c);}['isActive'](_0x401c9c){return this['toolbar']['isActive'](_0x401c9c);}['destroy'](){var _0x4b7aba;super['destroy'](),(_0x4b7aba=this['markupToolbar'])===null||_0x4b7aba===void 0x0?void 0x0:_0x4b7aba['destroy'](),this['toolbar']['destroy']();}}Viewer2dToolbarPlugin['DEFAULT_ID']='Viewer2dToolbarPlugin';
|
|
238
|
+
|
|
239
|
+
class Viewer3dToolbarPlugin extends Plugin{constructor(_0x106c32,_0x465a1a){const _0xf481b0=(_0x465a1a===null||_0x465a1a===void 0x0?void 0x0:_0x465a1a['id'])||Viewer3dToolbarPlugin['DEFAULT_ID'];super(_0x106c32,{'id':_0xf481b0}),this['cfg']=_0x465a1a||{'id':_0xf481b0},this['initLocalization']();const _0x82a038=merge({},DefaultViewer3dToolbarConfig,this['cfg']['menuConfig']),_0x219002=merge(this['cfg']['groupConfig']||[],GroupConfig);this['toolbar']=new Toolbar(_0x106c32,_0x82a038,_0x219002);}['initLocalization'](){const _0x29cc79=this['cfg']['language']||DefaultLanguage;i18n$2['changeLanguage'](_0x29cc79);}['getToolbar'](){return this['toolbar'];}['setActive'](_0x52cc1e,_0x2f00d8){this['toolbar']['setActive'](_0x52cc1e,_0x2f00d8);}['isActive'](_0x49a416){return this['toolbar']['isActive'](_0x49a416);}['setScreenshotDownloadFileName'](_0x2cd54b){this['toolbar']['setScreenshotDownloadFileName'](_0x2cd54b);}['destroy'](){super['destroy'](),this['toolbar']['destroy']();}}Viewer3dToolbarPlugin['DEFAULT_ID']='Viewer3dToolbarPlugin';
|
|
240
|
+
|
|
241
|
+
var css_248z = "#x-viewer-viewCube{bottom:10px;height:150px;position:absolute;right:10px;width:150px;z-index:1}";
|
|
242
|
+
styleInject(css_248z);
|
|
243
|
+
|
|
244
|
+
const en={'front':'Front','back':'Back','top':'Top','bottom':'Bottom','left':'Left','right':'Right'};const cn={'front':'前','back':'后','top':'上','bottom':'下','left':'左','right':'右'};const i18n=i18next['createInstance']();const lng='en';i18n['init']({'lng':lng,'debug':![],'resources':{'en':{'translation':en},'cn':{'translation':cn}}});
|
|
245
|
+
|
|
246
|
+
const gradient=(_0x3a869a,_0x58f96a,_0x5ef873)=>{const _0xec0a62=new THREE['Color'](_0x3a869a),_0xc110b8=new THREE['Color'](_0x58f96a);return _0xec0a62['lerp'](_0xc110b8,_0x5ef873)['getHex']();};var ViewCubeElement;(function(_0xe84909){_0xe84909['TopFace']='TopFace',_0xe84909['FrontFace']='FrontFace',_0xe84909['RightFace']='RightFace',_0xe84909['BackFace']='BackFace',_0xe84909['LeftFace']='LeftFace',_0xe84909['BottomFace']='BottomFace',_0xe84909['TopFrontEdge']='TopFrontEdge',_0xe84909['TopRightEdge']='TopRightEdge',_0xe84909['TopBackEdge']='TopBackEdge',_0xe84909['TopLeftEdge']='TopLeftEdge',_0xe84909['FrontRightEdge']='FrontRightEdge',_0xe84909['BackRightEdge']='BackRightEdge',_0xe84909['BackLeftEdge']='BackLeftEdge',_0xe84909['FrontLeftEdge']='FrontLeftEdge',_0xe84909['BottomFrontEdge']='BottomFrontEdge',_0xe84909['BottomRightEdge']='BottomRightEdge',_0xe84909['BottomBackEdge']='BottomBackEdge',_0xe84909['BottomLeftEdge']='BottomLeftEdge',_0xe84909['TopFrontRightCorner']='TopFrontRightCorner',_0xe84909['TopBackRightCorner']='TopBackRightCorner',_0xe84909['TopBackLeftCorner']='TopBackLeftCorner',_0xe84909['TopFrontLeftCorner']='TopFrontLeftCorner',_0xe84909['BottomFrontRightCorner']='BottomFrontRightCorner',_0xe84909['BottomBackRightCorner']='BottomBackRightCorner',_0xe84909['BottomBackLeftCorner']='BottomBackLeftCorner',_0xe84909['BottomFrontLeftCorner']='BottomFrontLeftCorner';}(ViewCubeElement||(ViewCubeElement={})));var Rotation;(function(_0x4bce8c){_0x4bce8c[_0x4bce8c['Rotate0']=0x0]='Rotate0',_0x4bce8c[_0x4bce8c['Rotate90']=Math['PI']/0x2]='Rotate90',_0x4bce8c[_0x4bce8c['Rotate180']=Math['PI']]='Rotate180',_0x4bce8c[_0x4bce8c['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(_0x4b31d4){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.3,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']=(_0x4b31d4===null||_0x4b31d4===void 0x0?void 0x0:_0x4b31d4['showAxes'])||!![],this['lineColor']=(_0x4b31d4===null||_0x4b31d4===void 0x0?void 0x0:_0x4b31d4['lineColor'])||0x90a0a0,this['init']();}['init'](){this['showAxes']&&this['add'](this['createAxes']()),this['add'](this['createViewCubeFaces']()),this['add'](this['createViewCubeEdges']()),this['add'](this['createViewCubeCorners']());}['createAxes'](){const _0x15d976=this['OUTER_CUBE_WIDTH']/0x2+0x1,_0x2a9aaf=new THREE['Object3D'](),_0x33930f=new THREE['Vector3'](-_0x15d976,-_0x15d976,-_0x15d976),_0x40fc66=new THREE['Vector3'](0x1,0x0,0x0),_0x46f96f=new THREE['Vector3'](0x0,0x1,0x0),_0x1ea4ca=new THREE['Vector3'](0x0,0x0,0x1),_0x141a10=this['AXIS_LENGTH']/0xf,_0x3d73f4=this['AXIS_LENGTH']/0x14,_0x2538c7=new THREE['ArrowHelper'](_0x40fc66,_0x33930f,this['AXIS_LENGTH'],this['AXIS_COLOR_X'],_0x141a10,_0x3d73f4),_0x3159d6=new THREE['ArrowHelper'](_0x46f96f,_0x33930f,this['AXIS_LENGTH'],this['AXIS_COLOR_Y'],_0x141a10,_0x3d73f4),_0x5f51af=new THREE['ArrowHelper'](_0x1ea4ca,_0x33930f,this['AXIS_LENGTH'],this['AXIS_COLOR_Z'],_0x141a10,_0x3d73f4);return _0x2a9aaf['add'](_0x2538c7,_0x3159d6,_0x5f51af),_0x2a9aaf;}['createViewCubeFaces'](){const _0x1326f4=new THREE['Object3D'](),_0x1393f7=[],_0x3dfce1=new THREE['MeshStandardMaterial']({'color':this['FACE_BACKGROUND_COLOR'],'opacity':0x0,'transparent':!![]}),_0xbb5b2f=Object['keys'](viewCubeFaces);_0xbb5b2f['forEach'](_0x437f41=>{const _0x1090d3=viewCubeFaces[_0x437f41],_0x3c1e8c=i18n['t'](''+_0x1090d3['text'])||_0x1090d3['text'],_0x49da62=new TextTexture({'text':_0x3c1e8c,'fontSize':0x12,'color':'#333333','backgroundColor':this['FACE_BACKGROUND_COLOR'],'padding':0.8,'fontWeight':'bold'});_0x49da62['redrew']();const _0x5ca407=new THREE['MeshStandardMaterial']({'color':this['FACE_BACKGROUND_COLOR'],'map':_0x49da62,'opacity':0x1,'transparent':!![]});_0x1393f7['push'](_0x5ca407);const _0x3f5b82=this['createViewCubeFace'](_0x1090d3['name'],_0x3dfce1,_0x1090d3['position'],_0x1090d3['rotation']);_0x3f5b82['layers']['enableAll'](),_0x3f5b82['userData']={'material':_0x5ca407,'tick':0x0,'translateTick':0x0},this['faces']['push'](_0x3f5b82);}),_0x1326f4['add'](...this['faces']);const _0x28f51f=new THREE['BoxGeometry'](this['INNER_CUBE_WIDTH'],this['INNER_CUBE_WIDTH'],this['INNER_CUBE_WIDTH']),_0x2ee917=new THREE['Mesh'](_0x28f51f,_0x1393f7);this['innerViewCubeMesh']=_0x2ee917,_0x1326f4['add'](_0x2ee917);const _0x3e2cdf=new THREE['EdgesGeometry'](new THREE['BoxGeometry'](this['OUTER_CUBE_WIDTH'],this['OUTER_CUBE_WIDTH'],this['OUTER_CUBE_WIDTH'])),_0x44ab85=new THREE['MeshBasicMaterial']({'color':this['lineColor']}),_0x3971f4=new THREE['LineSegments'](_0x3e2cdf,_0x44ab85);return _0x1326f4['add'](_0x3971f4),_0x1326f4['position']['set'](0x0,0x0,0x0),_0x1326f4;}['createViewCubeFace'](_0x11dbf5,_0x3ec156,_0x229ac4,_0x52ce51){const _0x26ee1c=new THREE['PlaneGeometry'](this['INNER_CUBE_WIDTH'],this['INNER_CUBE_WIDTH']),_0xcf718=new THREE['Mesh'](_0x26ee1c,_0x3ec156);return _0xcf718['name']=_0x11dbf5,_0xcf718['rotateOnAxis'](_0x52ce51['axis'],_0x52ce51['rad']),_0xcf718['position']['copy'](_0x229ac4),_0xcf718;}['createViewCubeEdges'](){const _0x26f8ca=new THREE['Object3D'](),_0x56bfd0=this['OUTER_CUBE_WIDTH']/0x2+0x1,_0x5786fe=this['createEdge'](ViewCubeElement['TopFrontEdge'],new THREE['Vector3'](0x0,_0x56bfd0,_0x56bfd0),[{'axis':AxisZ,'rad':Rotation['Rotate180']}]),_0x3fca0e=this['createEdge'](ViewCubeElement['TopRightEdge'],new THREE['Vector3'](_0x56bfd0,_0x56bfd0,0x0),[{'axis':AxisX,'rad':Rotation['Rotate180']},{'axis':AxisY,'rad':Rotation['Rotate90']},{'axis':AxisZ,'rad':Rotation['Rotate0']}]),_0x279d43=this['createEdge'](ViewCubeElement['TopBackEdge'],new THREE['Vector3'](0x0,_0x56bfd0,-_0x56bfd0),[{'axis':AxisZ,'rad':Rotation['Rotate180']},{'axis':AxisY,'rad':Rotation['Rotate180']}]),_0x3c4e04=this['createEdge'](ViewCubeElement['TopLeftEdge'],new THREE['Vector3'](-_0x56bfd0,_0x56bfd0,0x0),[{'axis':AxisX,'rad':Rotation['Rotate90']},{'axis':AxisY,'rad':Rotation['Rotate180']},{'axis':AxisZ,'rad':Rotation['Rotate90']}]),_0x1ce45f=this['createEdge'](ViewCubeElement['BottomFrontEdge'],new THREE['Vector3'](0x0,-_0x56bfd0,_0x56bfd0),[{'axis':AxisZ,'rad':Rotation['Rotate0']}]),_0x22f30a=this['createEdge'](ViewCubeElement['BottomRightEdge'],new THREE['Vector3'](_0x56bfd0,-_0x56bfd0,0x0),[{'axis':AxisX,'rad':Rotation['Rotate90']},{'axis':AxisY,'rad':Rotation['Rotate0']},{'axis':AxisZ,'rad':Rotation['Rotate90']}]),_0x423169=this['createEdge'](ViewCubeElement['BottomBackEdge'],new THREE['Vector3'](0x0,-_0x56bfd0,-_0x56bfd0),[{'axis':AxisZ,'rad':Rotation['Rotate0']},{'axis':AxisY,'rad':Rotation['Rotate180']}]),_0x3a54b0=this['createEdge'](ViewCubeElement['BottomLeftEdge'],new THREE['Vector3'](-_0x56bfd0,-_0x56bfd0,0x0),[{'axis':AxisX,'rad':Rotation['Rotate90']},{'axis':AxisY,'rad':Rotation['Rotate270']},{'axis':AxisZ,'rad':Rotation['Rotate90']}]),_0x1a0af4=this['createEdge'](ViewCubeElement['FrontRightEdge'],new THREE['Vector3'](_0x56bfd0,0x0,_0x56bfd0),[{'axis':AxisZ,'rad':Rotation['Rotate90']}]),_0x3a7471=this['createEdge'](ViewCubeElement['BackRightEdge'],new THREE['Vector3'](_0x56bfd0,0x0,-_0x56bfd0),[{'axis':AxisZ,'rad':Rotation['Rotate90']},{'axis':AxisY,'rad':Rotation['Rotate180']}]),_0x4fcf13=this['createEdge'](ViewCubeElement['BackLeftEdge'],new THREE['Vector3'](-_0x56bfd0,0x0,-_0x56bfd0),[{'axis':AxisZ,'rad':Rotation['Rotate270']},{'axis':AxisY,'rad':Rotation['Rotate180']}]),_0x2227de=this['createEdge'](ViewCubeElement['FrontLeftEdge'],new THREE['Vector3'](-_0x56bfd0,0x0,_0x56bfd0),[{'axis':AxisZ,'rad':Rotation['Rotate270']}]);return _0x26f8ca['add'](_0x5786fe),_0x26f8ca['add'](_0x3fca0e),_0x26f8ca['add'](_0x279d43),_0x26f8ca['add'](_0x3c4e04),_0x26f8ca['add'](_0x1ce45f),_0x26f8ca['add'](_0x22f30a),_0x26f8ca['add'](_0x423169),_0x26f8ca['add'](_0x3a54b0),_0x26f8ca['add'](_0x1a0af4),_0x26f8ca['add'](_0x3a7471),_0x26f8ca['add'](_0x4fcf13),_0x26f8ca['add'](_0x2227de),_0x26f8ca;}['createEdge'](_0x3d56f1,_0x34cdc4,_0x2a6fd6){const _0x2688fa=new THREE['Object3D'](),_0x207f12=new THREE['PlaneGeometry'](this['EDGE_SIZE']['x'],this['EDGE_SIZE']['y']),_0x10b94f=new THREE['MeshStandardMaterial']({'color':this['EDGE_COLOUR'],'opacity':this['EDGE_OPACITY'],'transparent':!![]}),_0x30f12b={'tick':0x0},_0xf300ff=new THREE['Mesh'](_0x207f12,_0x10b94f);_0xf300ff['name']=_0x3d56f1,_0xf300ff['userData']=_0x30f12b,_0xf300ff['position']['setY'](this['EDGE_SIZE']['y']/0x2),_0xf300ff['layers']['enableAll']();const _0x9cc1c9=new THREE['Mesh'](_0x207f12,_0x10b94f);return _0x9cc1c9['name']=_0x3d56f1,_0x9cc1c9['userData']=_0x30f12b,_0x9cc1c9['position']['setZ'](-this['EDGE_SIZE']['y']/0x2),_0x9cc1c9['rotateOnAxis'](new THREE['Vector3'](0x1,0x0,0x0),Math['PI']/0x2),_0x9cc1c9['layers']['enableAll'](),_0x2688fa['add'](_0xf300ff),_0x2688fa['add'](_0x9cc1c9),_0x2688fa['position']['copy'](_0x34cdc4),_0x2a6fd6['forEach'](_0x57d63e=>{_0x2688fa['rotateOnAxis'](_0x57d63e['axis'],_0x57d63e['rad']);}),_0x2688fa;}['createViewCubeCorners'](){const _0xf200de=new THREE['Object3D'](),_0x1f301a=this['OUTER_CUBE_WIDTH']/0x2+0x1,_0x599d67=this['createCorner'](ViewCubeElement['TopFrontLeftCorner'],new THREE['Vector3'](-_0x1f301a,_0x1f301a,_0x1f301a),[{'axis':AxisZ,'rad':Rotation['Rotate270']}]),_0x154620=this['createCorner'](ViewCubeElement['TopFrontRightCorner'],new THREE['Vector3'](_0x1f301a,_0x1f301a,_0x1f301a),[{'axis':AxisZ,'rad':Rotation['Rotate180']}]),_0x391f5b=this['createCorner'](ViewCubeElement['TopBackRightCorner'],new THREE['Vector3'](_0x1f301a,_0x1f301a,-_0x1f301a),[{'axis':AxisX,'rad':Rotation['Rotate90']},{'axis':AxisY,'rad':Rotation['Rotate180']},{'axis':AxisZ,'rad':Rotation['Rotate0']}]),_0x3749f7=this['createCorner'](ViewCubeElement['TopBackLeftCorner'],new THREE['Vector3'](-_0x1f301a,_0x1f301a,-_0x1f301a),[{'axis':AxisX,'rad':Rotation['Rotate90']},{'axis':AxisY,'rad':Rotation['Rotate180']},{'axis':AxisZ,'rad':Rotation['Rotate90']}]),_0x4f5089=this['createCorner'](ViewCubeElement['BottomFrontLeftCorner'],new THREE['Vector3'](-_0x1f301a,-_0x1f301a,_0x1f301a),[{'axis':AxisZ,'rad':Rotation['Rotate0']}]),_0x18d22c=this['createCorner'](ViewCubeElement['BottomFrontRightCorner'],new THREE['Vector3'](_0x1f301a,-_0x1f301a,_0x1f301a),[{'axis':AxisZ,'rad':Rotation['Rotate90']}]),_0x8079c9=this['createCorner'](ViewCubeElement['BottomBackRightCorner'],new THREE['Vector3'](_0x1f301a,-_0x1f301a,-_0x1f301a),[{'axis':AxisX,'rad':Rotation['Rotate0']},{'axis':AxisY,'rad':Rotation['Rotate180']},{'axis':AxisZ,'rad':Rotation['Rotate0']}]),_0x4485fc=this['createCorner'](ViewCubeElement['BottomBackLeftCorner'],new THREE['Vector3'](-_0x1f301a,-_0x1f301a,-_0x1f301a),[{'axis':AxisX,'rad':Rotation['Rotate0']},{'axis':AxisY,'rad':Rotation['Rotate180']},{'axis':AxisZ,'rad':Rotation['Rotate90']}]);return _0xf200de['add'](_0x599d67),_0xf200de['add'](_0x154620),_0xf200de['add'](_0x391f5b),_0xf200de['add'](_0x3749f7),_0xf200de['add'](_0x4f5089),_0xf200de['add'](_0x18d22c),_0xf200de['add'](_0x8079c9),_0xf200de['add'](_0x4485fc),_0xf200de;}['createCorner'](_0x2bcfbc,_0x131e37,_0x3d083f){const _0x6d4bee=new THREE['Object3D'](),_0x88c89c=new THREE['PlaneGeometry'](this['CORNER_WIDTH'],this['CORNER_WIDTH']),_0x2084e8=new THREE['MeshStandardMaterial']({'color':this['CORNER_COLOR'],'opacity':this['CORNER_OPACITY'],'transparent':!![]}),_0x44fe9b={'tick':0x0},_0x4000b6=new THREE['Mesh'](_0x88c89c,_0x2084e8);_0x4000b6['name']=_0x2bcfbc,_0x4000b6['userData']=_0x44fe9b,_0x4000b6['position']['set'](this['CORNER_WIDTH']/0x2,this['CORNER_WIDTH']/0x2,0x0),_0x4000b6['layers']['enableAll']();const _0x55d43b=new THREE['Mesh'](_0x88c89c,_0x2084e8);_0x55d43b['name']=_0x2bcfbc,_0x55d43b['userData']=_0x44fe9b,_0x55d43b['position']['set'](this['CORNER_WIDTH']/0x2,0x0,-this['CORNER_WIDTH']/0x2),_0x55d43b['rotateOnAxis'](new THREE['Vector3'](0x1,0x0,0x0),Math['PI']/0x2),_0x55d43b['layers']['enableAll']();const _0x1593ec=new THREE['Mesh'](_0x88c89c,_0x2084e8);return _0x1593ec['name']=_0x2bcfbc,_0x1593ec['userData']=_0x44fe9b,_0x1593ec['position']['set'](0x0,this['CORNER_WIDTH']/0x2,-this['CORNER_WIDTH']/0x2),_0x1593ec['rotateOnAxis'](new THREE['Vector3'](0x0,0x1,0x0),-Math['PI']/0x2),_0x1593ec['layers']['enableAll'](),_0x6d4bee['add'](_0x4000b6),_0x6d4bee['add'](_0x55d43b),_0x6d4bee['add'](_0x1593ec),_0x6d4bee['position']['copy'](_0x131e37),_0x3d083f['forEach'](_0x4b9025=>{_0x6d4bee['rotateOnAxis'](_0x4b9025['axis'],_0x4b9025['rad']);}),_0x6d4bee;}['getBBox'](){const _0x264433=new THREE['Box3']();return _0x264433['setFromObject'](this),_0x264433;}['getDirectionByElement'](_0x43f5ca){switch(_0x43f5ca){case ViewCubeElement['TopFace']:return new THREE['Vector3'](0x0,0x1,0x0);case ViewCubeElement['BottomFace']:return new THREE['Vector3'](0x0,-0x1,0x0);case ViewCubeElement['FrontFace']:return new THREE['Vector3'](0x0,0x0,0x1);case ViewCubeElement['BackFace']:return new THREE['Vector3'](0x0,0x0,-0x1);case ViewCubeElement['LeftFace']:return new THREE['Vector3'](-0x1,0x0,0x0);case ViewCubeElement['RightFace']:return new THREE['Vector3'](0x1,0x0,0x0);case ViewCubeElement['TopFrontEdge']:return new THREE['Vector3'](0x0,0x1,0x1);case ViewCubeElement['TopRightEdge']:return new THREE['Vector3'](0x1,0x1,0x0);case ViewCubeElement['TopBackEdge']:return new THREE['Vector3'](0x0,0x1,-0x1);case ViewCubeElement['TopLeftEdge']:return new THREE['Vector3'](-0x1,0x1,0x0);case ViewCubeElement['BottomFrontEdge']:return new THREE['Vector3'](0x0,-0x1,0x1);case ViewCubeElement['BottomRightEdge']:return new THREE['Vector3'](0x1,-0x1,0x0);case ViewCubeElement['BottomBackEdge']:return new THREE['Vector3'](0x0,-0x1,-0x1);case ViewCubeElement['BottomLeftEdge']:return new THREE['Vector3'](-0x1,-0x1,0x0);case ViewCubeElement['FrontLeftEdge']:return new THREE['Vector3'](-0x1,0x0,0x1);case ViewCubeElement['FrontRightEdge']:return new THREE['Vector3'](0x1,0x0,0x1);case ViewCubeElement['BackRightEdge']:return new THREE['Vector3'](0x1,0x0,-0x1);case ViewCubeElement['BackLeftEdge']:return new THREE['Vector3'](-0x1,0x0,-0x1);case ViewCubeElement['TopFrontLeftCorner']:return new THREE['Vector3'](-0x1,0x1,0x1);case ViewCubeElement['TopFrontRightCorner']:return new THREE['Vector3'](0x1,0x1,0x1);case ViewCubeElement['TopBackRightCorner']:return new THREE['Vector3'](0x1,0x1,-0x1);case ViewCubeElement['TopBackLeftCorner']:return new THREE['Vector3'](-0x1,0x1,-0x1);case ViewCubeElement['BottomFrontLeftCorner']:return new THREE['Vector3'](-0x1,-0x1,0x1);case ViewCubeElement['BottomFrontRightCorner']:return new THREE['Vector3'](0x1,-0x1,0x1);case ViewCubeElement['BottomBackRightCorner']:return new THREE['Vector3'](0x1,-0x1,-0x1);case ViewCubeElement['BottomBackLeftCorner']:return new THREE['Vector3'](-0x1,-0x1,-0x1);}return undefined;}['update'](){this['traverse'](_0x3d43d6=>{_0x3d43d6 instanceof THREE['Mesh']&&this['updateViewCube'](_0x3d43d6);});}['updateViewCube'](_0x5c2e6d){this['updateMeshTick'](_0x5c2e6d);const _0x1fa080=_0x5c2e6d['userData']['tick'];if(_0x5c2e6d['name']['indexOf']('Face')>-0x1){const _0x3fe954=_0x5c2e6d['userData']['material'];if(_0x3fe954){const _0x5f5ca3=gradient(this['FACE_BACKGROUND_COLOR'],this['FACE_HOVER_BACKGROUND_COLOR'],_0x1fa080);_0x1fa080>0x0&&_0x3fe954['color']['set'](_0x5f5ca3);}if(this['innerViewCubeMesh']){this['updateMeshTick'](_0x5c2e6d,'translateTick',0x2);const _0x1a868b=_0x5c2e6d['position']['clone']()['normalize'](),_0x579e4b=Math['max'](_0x5c2e6d['userData']['translateTick']*0x2-0x2,0x0);_0x1a868b['multiplyScalar'](_0x579e4b*this['CORNER_WIDTH']/0x2),_0x579e4b>0x0&&this['innerViewCubeMesh']['position']['copy'](_0x1a868b);}}else {if(_0x5c2e6d['name']['indexOf']('Edge')>-0x1){const _0x393089=_0x5c2e6d['material'],_0x106862=gradient(this['EDGE_COLOUR'],this['FACE_HOVER_BACKGROUND_COLOR'],_0x1fa080);_0x393089['color']['set'](_0x106862),_0x393089['opacity']=Math['max'](_0x1fa080,0.1);}else {if(_0x5c2e6d['name']['indexOf']('Corner')>-0x1){const _0x46c4b8=_0x5c2e6d['material'],_0x7ac1c4=gradient(this['CORNER_COLOR'],this['FACE_HOVER_BACKGROUND_COLOR'],_0x1fa080);_0x46c4b8['color']['set'](_0x7ac1c4);const _0x5afc6e=0x1+_0x1fa080*0.3;if(_0x5c2e6d['parent']){const _0x47c787=_0x5c2e6d['parent'];_0x47c787['scale']['set'](_0x5afc6e,_0x5afc6e,_0x5afc6e);}}}}}['updateMeshTick'](_0x5d8ec6,_0xb85998='tick',_0x597973=0x1){const _0x4f88d7=_0x5d8ec6['userData'],_0x3b00f8=_0x4f88d7[_0xb85998];if(_0x3b00f8===undefined)return;if(_0x5d8ec6['name']===this['activateMeshName']&&_0x3b00f8<_0x597973)_0x4f88d7[_0xb85998]+=0.05;else _0x5d8ec6['name']!==this['activateMeshName']&&_0x3b00f8>0x0&&(_0x4f88d7[_0xb85998]-=0.05);_0x4f88d7[_0xb85998]>0x0&&_0x4f88d7[_0xb85998]<_0x597973&&(this['dirty']=!![]),_0x4f88d7[_0xb85998]=Math['min'](Math['max'](_0x4f88d7[_0xb85998],0x0),_0x597973);}}
|
|
247
|
+
|
|
248
|
+
class ViewCubePlugin extends Plugin{constructor(_0x16c6fd,_0x5cc985){var _0x1edb17;const _0x17aeba=(_0x5cc985===null||_0x5cc985===void 0x0?void 0x0:_0x5cc985['id'])||ViewCubePlugin['DEFAULT_ID'];super(_0x16c6fd,{'id':_0x17aeba}),this['width']=0x0,this['height']=0x0,this['renderEnabled']=![],this['onPointerDown']=_0x3b413f=>{var _0x549785,_0x58c15f;(_0x549785=_0x3b413f['originalEvent'])===null||_0x549785===void 0x0?void 0x0:_0x549785['stopPropagation']();if(!this['viewCube'])return;const _0x36c19d=new THREE['Vector2'](_0x3b413f['x'],_0x3b413f['y']),_0x334fb3=this['pickManager']['pickObject'](_0x36c19d,[this['viewCube']]);if(!_0x334fb3)return;this['lastCoords']=_0x36c19d;const _0x296a9c=_0x334fb3['object']['name'],_0x379f6c=(_0x58c15f=this['viewCube'])===null||_0x58c15f===void 0x0?void 0x0:_0x58c15f['getDirectionByElement'](_0x296a9c);_0x379f6c&&this['updateViewerCamera'](_0x379f6c);},this['onPointerMove']=_0x552e71=>{var _0x43bff9;(_0x43bff9=_0x552e71['originalEvent'])===null||_0x43bff9===void 0x0?void 0x0:_0x43bff9['stopPropagation']();const _0x2f34d5=new THREE['Vector2'](_0x552e71['x'],_0x552e71['y']);this['updateActivateMeshName'](_0x2f34d5),this['lastCoords']=_0x2f34d5;},this['onPointerleave']=_0xc8b126=>{var _0x8398ea,_0x234047;(_0x8398ea=_0xc8b126['originalEvent'])===null||_0x8398ea===void 0x0?void 0x0:_0x8398ea['stopPropagation'](),this['lastCoords']=undefined,((_0x234047=this['viewCube'])===null||_0x234047===void 0x0?void 0x0:_0x234047['activateMeshName'])&&(this['viewCube']['activateMeshName']=undefined);},this['onClick']=_0x390ccd=>{var _0x4d5aec;(_0x4d5aec=_0x390ccd['originalEvent'])===null||_0x4d5aec===void 0x0?void 0x0:_0x4d5aec['stopPropagation']();},this['updateCameraAndMeshName']=()=>{var _0x2b008b;if(!((_0x2b008b=this['viewer'])===null||_0x2b008b===void 0x0?void 0x0:_0x2b008b['camera']))return;const _0x46495a=this['viewer']['camera'],_0x465840=new THREE['Vector3']();_0x46495a['getWorldDirection'](_0x465840);const _0x50816f=_0x46495a['up'];this['updateCameraDirection'](_0x465840,_0x50816f),this['renderEnabled']=!![],this['lastCoords']&&this['updateActivateMeshName'](this['lastCoords']);},this['cfg']=_0x5cc985||{'id':_0x17aeba};let _0x2973f2=this['cfg']['containerId']?document['getElementById'](this['cfg']['containerId']):undefined;if(!_0x2973f2){const _0xfdd180='x-viewer-viewCube';_0x2973f2=document['createElement']('div'),_0x2973f2['id']=_0xfdd180,(_0x1edb17=this['viewer']['widgetContainer'])===null||_0x1edb17===void 0x0?void 0x0:_0x1edb17['appendChild'](_0x2973f2),this['cfg']['containerId']=_0xfdd180;}this['width']=_0x2973f2['clientWidth'],this['height']=_0x2973f2['clientHeight'],this['container']=_0x2973f2,this['inputManager']=new InputManager(this['container']),this['pickManager']=new PickManager(this),this['init'](),this['animate']();}get['viewerContainer'](){return this['container'];}['init'](){this['initLocalization'](),this['initScene'](),this['initRenderer'](),this['initCamera'](),this['initLights'](),this['initViewCube'](),this['initEvents']();}['initLocalization'](){const _0x379ada=this['cfg']['language']||DefaultLanguage;i18n['changeLanguage'](_0x379ada);}['initScene'](){const _0x4c3fcb=new THREE['Scene']();_0x4c3fcb['matrixAutoUpdate']=MatrixAutoUpdate,this['scene']=_0x4c3fcb;}['initCamera'](){if(!this['scene'])return;const _0x539739=new THREE['OrthographicCamera'](-this['width']/0x2,this['width']/0x2,this['height']/0x2,-this['height']/0x2,0.1,0x186a0);_0x539739['position']['set'](0x12c,0x12c,0x12c),_0x539739['lookAt'](0x0,0x0,0x0),_0x539739['zoom']=0xa,_0x539739['updateProjectionMatrix'](),this['scene']['add'](_0x539739),this['camera']=_0x539739;}['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 _0x57b3f0=0xffffff,_0x579396=1.5,_0x40a0d7=new THREE['DirectionalLight'](_0x57b3f0,_0x579396);_0x40a0d7['position']['set'](-0x64,0x50,0x0),_0x40a0d7['name']='sun',this['directionalLight']=_0x40a0d7;const _0x1a67ff=new THREE['AmbientLight'](_0x57b3f0),_0x53ea62=new THREE['HemisphereLight'](_0x57b3f0,0xdddddd,0.5);this['scene']['add'](_0x1a67ff),this['scene']['add'](_0x53ea62),this['scene']['add'](_0x40a0d7),this['scene']['add'](_0x40a0d7['target']);}['initViewCube'](){if(!this['scene'])return;const _0x37cb2c=new ViewCube(this['cfg']);this['viewCube']=_0x37cb2c,this['scene']['add'](_0x37cb2c),this['zoomToBBox'](_0x37cb2c['getBBox']());}['initEvents'](){var _0x2275c6,_0x3d6177,_0x42e3de,_0x44cfa2;(_0x2275c6=this['inputManager'])===null||_0x2275c6===void 0x0?void 0x0:_0x2275c6['addEventListener']('pointerdown',this['onPointerDown']),(_0x3d6177=this['inputManager'])===null||_0x3d6177===void 0x0?void 0x0:_0x3d6177['addEventListener']('pointermove',this['onPointerMove']),(_0x42e3de=this['inputManager'])===null||_0x42e3de===void 0x0?void 0x0:_0x42e3de['addEventListener']('pointerleave',this['onPointerleave']),(_0x44cfa2=this['inputManager'])===null||_0x44cfa2===void 0x0?void 0x0:_0x44cfa2['addEventListener']('click',this['onClick']),this['viewer']['addEventListener'](ViewerEvent['AfterRender'],this['updateCameraAndMeshName']);}['setVisible'](_0x3c901e){this['container']['style']['display']=_0x3c901e?'block':'none';}['isVisible'](){return this['container']['style']['display']!=='none';}['updateViewerCamera'](_0x84752e){_0x84752e['normalize'](),this['viewer']['flyToDirection'](_0x84752e);}['updateActivateMeshName'](_0x27dc63){if(!this['viewCube'])return;const _0x36bd42=this['pickManager']['pickObject'](_0x27dc63,[this['viewCube']]);if(!_0x36bd42)return;this['viewCube']['activateMeshName']&&(this['viewCube']['activateMeshName']=undefined);const _0x4ea95e=_0x36bd42['object'];this['viewCube']['activateMeshName']=_0x4ea95e['name'];}['updateCameraDirection'](_0x418456,_0x47a124){if(!this['camera']||!_0x418456)return;_0x418456['normalize']();const _0x3020c4=0xc8,_0x29d565=0x0;this['camera']['position']['set'](-_0x418456['x']*_0x3020c4+_0x29d565,-_0x418456['y']*_0x3020c4+_0x29d565,-_0x418456['z']*_0x3020c4+_0x29d565),this['camera']['lookAt'](_0x29d565,_0x29d565,_0x29d565),this['camera']['up']=_0x47a124,this['camera']['updateMatrixWorld']();}['animate'](){var _0x4a5988,_0x543a31;this['requestAnimationFrameHandle']=requestAnimationFrame(this['animate']['bind'](this)),this['scene']&&this['camera']&&this['viewCube']&&((this['renderEnabled']||this['viewCube']['dirty'])&&((_0x4a5988=this['renderer'])===null||_0x4a5988===void 0x0?void 0x0:_0x4a5988['render'](this['scene'],this['camera']),this['renderEnabled']=![],this['viewCube']['dirty']=![])),(_0x543a31=this['viewCube'])===null||_0x543a31===void 0x0?void 0x0:_0x543a31['update']();}['zoomToBBox'](_0x18fe8f){if(!this['camera'])return;const _0x1b56b3=this['camera']['right']-this['camera']['left'],_0x3379e=this['camera']['top']-this['camera']['bottom'],_0x248c01=new THREE['Vector3']();_0x18fe8f['getSize'](_0x248c01);const _0x2a0747=Math['sqrt'](Math['pow'](_0x248c01['x'],0x2)+Math['pow'](_0x248c01['y'],0x2)+Math['pow'](_0x248c01['z'],0x2)),_0x267ba8=Math['min'](_0x1b56b3/_0x2a0747,_0x3379e/_0x2a0747);this['camera']['position']['set'](_0x248c01['x']/0x2,_0x248c01['y']/0x2,_0x248c01['z']/0x2),this['camera']['zoom']=_0x267ba8,this['camera']['updateProjectionMatrix']();}['destroy'](){var _0x3503f1,_0x54ca72,_0xb4f50f,_0x3ade3c,_0x6c33c1,_0x44ce3b;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'](),(_0x3503f1=this['scene'])===null||_0x3503f1===void 0x0?void 0x0:_0x3503f1['clear'](),this['scene']=undefined,(_0x54ca72=this['directionalLight'])===null||_0x54ca72===void 0x0?void 0x0:_0x54ca72['dispose'](),this['directionalLight']=undefined,(_0xb4f50f=this['inputManager'])===null||_0xb4f50f===void 0x0?void 0x0:_0xb4f50f['removeEventListener']('pointerdown',this['onPointerDown']),(_0x3ade3c=this['inputManager'])===null||_0x3ade3c===void 0x0?void 0x0:_0x3ade3c['removeEventListener']('pointermove',this['onPointerMove']),(_0x6c33c1=this['inputManager'])===null||_0x6c33c1===void 0x0?void 0x0:_0x6c33c1['removeEventListener']('pointerleave',this['onPointerleave']),(_0x44ce3b=this['inputManager'])===null||_0x44ce3b===void 0x0?void 0x0:_0x44ce3b['removeEventListener']('click',this['onClick']),this['viewer']['removeEventListener'](ViewerEvent['AfterRender'],this['updateCameraAndMeshName']);}}ViewCubePlugin['DEFAULT_ID']='ViewCubePlugin';
|
|
249
|
+
|
|
250
|
+
class ImageDrawable extends Drawable{constructor(_0x5296e1,_0x3a0d21){super(_0x5296e1),this['isHover']=![],this['rotation']=0x0,this['position']=new THREE['Vector3'](),this['x']=0x0,this['y']=0x0,this['width']=0x0,this['height']=0x0,this['imageConfig']=_0x3a0d21;}['draw'](_0x4803ff,_0x2454ba){this['drawImage'](_0x4803ff,_0x2454ba,this['imageConfig']);}['drawSelect'](_0x50574c){}['drawImage'](_0x2af8c1,_0x53ba59,_0x51fe16){const {image:_0x1da7d3,hoverImage:_0x27c578,offset:_0x15ba54,rotationPoint:_0x56de1b,width:_0x4e459f,height:_0x25e034}=_0x51fe16,_0x2767d5=_0x4e459f||_0x1da7d3['width'],_0x5c8791=_0x25e034||_0x1da7d3['height'];this['width']=_0x2767d5*this['tolerance'],this['height']=_0x5c8791*this['tolerance'];let {x:_0x33cb08,y:_0x54eb30}=this['transToScreenCoord'](this['position'],_0x53ba59);_0x33cb08+=_0x15ba54['x'],_0x54eb30+=_0x15ba54['y'],_0x2af8c1['save'](),_0x2af8c1['translate'](_0x33cb08+_0x56de1b['x']+_0x2767d5/0x2,_0x54eb30+_0x56de1b['y']-_0x5c8791/0x2),_0x2af8c1['rotate'](this['rotation']),_0x2af8c1['translate'](-_0x33cb08-_0x56de1b['x']-_0x2767d5/0x2,-_0x54eb30-_0x56de1b['y']+_0x5c8791/0x2),_0x2af8c1['translate'](_0x33cb08,_0x54eb30-_0x5c8791),_0x2af8c1['drawImage'](this['isHover']?_0x27c578:_0x1da7d3,0x0,0x0,_0x2767d5,_0x5c8791),_0x2af8c1['restore']();}['setRotation'](_0x3b729d){this['rotation']=_0x3b729d;}['setPosition'](_0x256dda){this['position']=_0x256dda,this['x']=_0x256dda['x'],this['y']=_0x256dda['z'];}['isPointInPath'](_0x26b29a,_0x3b39c2){var _0x43bd06,_0x420c8e;if(!(_0x3b39c2===null||_0x3b39c2===void 0x0?void 0x0:_0x3b39c2['camera'])||!this['ctx'])return ![];const _0x49470a=Math['max'](devicePixelRatio,0x1),{x:_0x290052,y:_0x35c90d}=this['transToScreenCoord'](_0x26b29a,_0x3b39c2['camera']),_0x22f20d=this['ctx'];_0x22f20d['clearRect'](0x0,0x0,(_0x43bd06=this['ctx'])===null||_0x43bd06===void 0x0?void 0x0:_0x43bd06['canvas']['width'],(_0x420c8e=this['ctx'])===null||_0x420c8e===void 0x0?void 0x0:_0x420c8e['canvas']['height']);const {image:_0x1796f4,hoverImage:_0x27a647,offset:_0x34cc06,rotationPoint:_0x28edd3,width:_0x1313a9,height:_0x111379}=this['imageConfig'],_0x4042c1=_0x1313a9||_0x1796f4['width'],_0x346ea8=_0x111379||_0x1796f4['height'];this['width']=_0x4042c1*this['tolerance'],this['height']=_0x346ea8*this['tolerance'];let {x:_0x56638c,y:_0x36f7c0}=this['transToScreenCoord'](this['position'],_0x3b39c2['camera']);_0x56638c+=_0x34cc06['x'],_0x36f7c0+=_0x34cc06['y'],_0x22f20d['save'](),_0x22f20d['translate'](_0x56638c+_0x28edd3['x']+_0x4042c1/0x2,_0x36f7c0+_0x28edd3['y']-_0x346ea8/0x2),_0x22f20d['rotate'](this['rotation']),_0x22f20d['translate'](-_0x56638c-_0x28edd3['x']-_0x4042c1/0x2,-_0x36f7c0-_0x28edd3['y']+_0x346ea8/0x2),_0x22f20d['translate'](_0x56638c,_0x36f7c0-_0x346ea8),_0x22f20d['drawImage'](this['isHover']?_0x27a647:_0x1796f4,0x0,0x0,_0x4042c1,_0x346ea8);const _0x26badc=this['ctx']['getImageData'](_0x290052*_0x49470a,_0x35c90d*_0x49470a,0x1,0x1);_0x22f20d['restore']();if(_0x26badc&&_0x26badc['data'][0x3]>0x0)return !![];return ![];}['getVertexes'](){const _0x131dfe=new THREE['Vector3'](this['x'],0x0,this['y']),_0x19e47b=new THREE['Vector3'](this['x']+this['width'],0x0,this['y']),_0xb68b18=new THREE['Vector3'](this['x']+this['width'],0x0,this['y']-this['height']),_0x415cc1=new THREE['Vector3'](this['x'],0x0,this['y']-this['height']);return [_0x131dfe,_0x19e47b,_0xb68b18,_0x415cc1];}['getClassType'](){return 'ImageDrawable';}}
|
|
251
|
+
|
|
252
|
+
var img$3 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFgAAABgCAMAAACuYkXGAAAAulBMVEUAAABJSV9pdntRWmdeaHZMW21ZYnJqcH9PV2dSWmtTXmtXX3Jka3tfZ3daY3NXYHBbZHNbZHJaYXNWX3D9/f5cZnT+/v6xs7zKzdKusbr6+vvs7e/Z29/s7e/09faPlaCVmaX6+vz6+vv5+fnw8fP3+Pjh4+Xu7/Da2+Dp6uz+/v719vjz9PX09PRfYXP///+vsLlpa3vDxMv19ffr6+7r6+2lprCHiJZ9fo1zdITNzdObnKeRkp9zdYQN9RLUAAAALnRSTlMAAwQICgYSBwsPDRUMDxcZHRsjH+Mg8TwvIMZ+UpGIMizVtqael3VrZ1zTuq2q+zBSvwAABtBJREFUaN7tmXlD00AQxSW7yeYsPaktKJcgeBRbbsHv/7V8b3ZjTOiRrfylTnoIpD+eb2dmD978j789dtzrjry8HrYWIL8u91Xx+HxgOYG88FHGK2gNbOxUb+7720It2BFNiAh4BXw66bjPMwlKA4gJTWiMUsrgUoZflrL9ra4sMCo0mlilldb4lxY6hQvbU7HDUipQiFjrPLYXvlKiXdAU7a03JCCWyNM8jfFM81znuRI0fmtovW7vr1ANpIGbpmmBSHglSZEiAIcr8JyOtLbDyoUarSGO2MnB/umn4RViOD3ZP0iKIi1yjQDY2EFsiUVwtHLITSaX072rWuydfIwgnG4rzWFsQxYsEkppcPGfn7wH9WUMT99Cth3HINysmQYzceECvU2IXRXv3yYp0YZFA3Abe0PYAG5xWWKvF3fPj/PZbPZ4f7e4KVV/TAr6oQwSb0PWkWsQzIVicuao3+5ntXgo2WcT2JHHSm3Q/Ct5NdI2efvJYam0GU8WPYQdcaxlBNc1DnIN0zcGd3jFAHZ5fHPkqKAbBK8mUzGqCeNWRJZ78zBbGT9unGaIps9rzEB5SmdIU8ddQO7qmH+v3IBm2ryKC3AIg4tiItxvFWSNHZ8mURLbQoGy5U6w3nRaJNGZ47Yin8HmnPnM/r3cYQMw8iz6yPu/z1rEgndeQnKs7AAuFwwfWMdi8M28DXh+Q5snEcbPlsnOipRQcV5E7ynjcdYqHqS6owRmhMsTQ+Y2ZAQyraXBlc17E9hMMwh+KTikExi5Uxoxaxvza5Ec5bDZvHRZ5mM6nBYZHX5qDXaSUSZQDEqzGUlXU2gRTAkK9pN8ic5PyS8Vsw2rGNzohCXnARbJ0wjj5yTXGzxTQhOcsQc/+IDv3fClOeoaAhsWg6vQfLIDPycY9OIgklxmw3jR4JWmE/ueTrjy288wnWhKRtSsMHboMlp85we+w0dOsyhx4GaHDy14irvu/cDP+MgxwbnSMvnVyxn9J0mizlDK2St+sF9kyAu2ZWj8XTPqmf0nirIrxMwv5vxMlqGsCa5lBZNCoeyiqOMLZpRgKnZeVE7I1BFlW4M7NFk18o1r0RDlUYLnW4B3Ac6RyBRcnz2M1N3WgwfFUcq5Lwga2YZZH2O3e4y7nv3ArOmpWKHZ7UVx1TSNyUXx1+0K5DPBhWazB7jeKix425ImmOlmalbYiTQnmE3o2g98yybkrDC1PHbpVhB8tOdb0w9sm71OmcdBo7sBzHTLelNOpb5OnAgYrb7RN6mYiYy06F3Qi7mnE+e9TOYQExqIrE9MRkki78ILL8lPzOIu6yPR0ukbM17AZTHBvXd+kin4C8GsD9PwGF64GSTr9Pwky7pw3KNigMEluV4hkm9Rp9el5KuHtuWMeNft2R7UXLKQLOCCXnSP2C9u2y0KacRwTCeK1K0461aUK0Ka3L24alt+sqg/7zonYhO8OHeBNdKRE3ox+OCz8P4w6O52skTWyA3BCPwq2X4kIvnouP1WYXjkBNvyaFj8a8mSsEZ6g/FQFvXrNzcL4Y4H4Eo962qD01wU0guRPLLk28c1LeLWcmkEBAOslu7WA9lDx1gCZB3aDPI6O+awwXEpmHs9dqA1WwWZ+KC578i3T0ux1/LD4/HICU4xQLUkbnY4DckkdwejQ+YG0YtGsdwTK/lwSL2Sw9wpALsCHMi+n82TZoz65xDt2Hf3j1T6+Hy3IFVsuOgPrF4Wh+aybcV+LJB2n8tEAnJ31B+julfE3rvD/qhLLo3gCtZW3XIwybG1mT4P+v3xl+FK7ACJ1ukIV8HgFVzaI6cKKpdZFT7TaLDPP+81qNMLwVZcdolVYGHLLh0tg/tpS4bTiIP9z1NRPjz+sn9wiO8MaK/4m3CRaeBwE9yskoAHFgBD9C7sABrsRozgbm/X+Ztq1Jw9ytpwOKboM8k0moMosivqgNiexRZJzoQwELzxEEt2qCQDDTbRZLsYIIC1XIDlWM9uzzeRgdaaI1iADD8QhDMGeBKKQetEkdgQIx/K7fkmdKioGXawCEs2ebwE6tSmItcm8MaTQueGNrKxLiy6YwNQJhipxNo0Y2W0PzWlaHEaqsXsKoSawIVcM89U24NvJzpkd1bidUG0C1KZClCLHyoFrPcBckgy0XGaJ0mBB4US6rxltTm5vkf0CkE20FCe5kVKKAtC8TIV1/OUHuMCWWTHuQZf57o8+scglNQd/7+DSLsj2GjrKJGa2NBiPeU6uKAlDM/5AeMbs8vIgUeD62kH4S4ok0IBbVC3RANUxU5FrcDbiy5pVMu3BnQ7dJl+AnZCeeHx5yE0C9us1R8uz//xD8RPQ80FqUsWMbIAAAAASUVORK5CYII=";
|
|
253
|
+
|
|
254
|
+
var img$2 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKoAAACqCAMAAAAKqCSwAAAAh1BMVEUAAABfTP9eTP9fTP9eTP9fTP9fTP9fTf9fTf9fTP9fTP9fTP9fTf9fTP9eTf9eTP9fTP9fTP9eTP9eTP9eTP9fTf9fTf9fTf9fTf9fTf9fTf9eTP9fTf9cSP9dS/9eTP9fTf9fTf9fTP9fTf9cSv9fTf9fTf9fTf9fTf9fTf9fTf9fTf9fTf/hY9QXAAAALXRSTlMARjRhS0HMZ1M5PVgva1wrTyYbFyJwlnx0gaATeAUPH4mmjYUKm5Gvv7m0q8X/SpWnAAAGcklEQVR42tXcCXriMAwFYEFhBsqeQIEGB2jTjc79zzdmFaDEjgmyhU/wf6+yvIUCxxhE8CBj3Kw9iHXZbNYew7p81tSHsEbPe2pDvDVuH6nSrVkdqcMlCB6q2z6jtgRb1aB+pGrpsCXYOq4jdZuqXGtcR2ptl2qrI9Oadi+oO2unMwZ5Q43OqY0DVaR11L2kDvfUfl+cNRl0SQHsqU/CrNmAUlsHqiyrGg+KU316GoGcEY+M1L9yrOnojNo8dQCkirGq5ciSqhhrMkYq6at7aq8nwqrGhEoKQFsHEH5EudThOVVLe5Pw1nSJ1PbFduUy1Ulwq4o01TStkDoLbE1s1P6ROpvNuhBiYKj51GFOqrNFkFwxVHuqSF2EyzWLojK1itRpMGsckVSbeLbKo4ayZoRqTXU6D2NN4tidGsSaxXGMtWrcA5xT3+vgfaTxRQF0Tc0KqSGsKjmnDooKgKb6vvJtzZBarq8i1bc10VRDX20ZUl29ebVmSeLQASZXVK/WVEtdlgCk7qyf/qxqR7Wn2iepznepfn62wdPIMNXRsQO0Cw4sdFqtNPXFk1WlJNWucVrRVF88WbMtNTF2ALK1XpxNK2194bcilU4rWgB92qxOqb58eLCqLDVMK3oMLKKyWpGaklSte4Apob4+A/PITqlGBiqdVpTKbVUHqvPWmlKJlY8a3URdnVHXfFakJnkLK1LNBYDUdRPOh+ACWK8Zc1VFBeCwsL6dqNr6i7kyUXEPYE8Vm9X8ulY1Fa081L0Vqe7NCqlfJ6uQApjmU381Fa1M1Pg+02pL3aCVmWpP9WpnRaibGofUdQnoFXYALIANi7UClRbAWg8t1dSfnxprqsvbDtdb6yFVpGorF1Vbb6PSDnCgftfCpkoP1/nTaqOp2spCNd4EUuqisFlhqt/fDa5U3W5XpjmbQKzVzY76r8GUqlMBWPrqz56KVg8FQKeVvQAwVbT6KABaqxNDB8BmdaD+abBQ3Y+Bc9qsrqlo5acW7AGmZQrgrlZSq873q6vcJQBTRWtVae4xsGvtAJZUkYpW/iWAvgXQZkX7KlLR6nsJ6BmpNFW08lC7tpvAhW21QipaWVarrjFVWqufhlTvZdVSMq0sBUCalbkDoNX/gcWxA9zNqhhOrISK1oAdYJ5XAGRaoZX1wEKpDqlSayWq6dLS7Wz1YWhWaPW6tZ5cXa+ZlwBi5aTSFxaknlarDwsVrR7PVo4LK7VyUOm3K/bV6pfUKrXemdq+U1+l1q+IoQNYD9e0AOiBhUoZa1VL899YaQd4JVQq5TxcD7FWXU8BxLqJgJPqXqs4raiUmdqq3qzwrx+0r+LCSvcARHo36qh6ql+kVomUcwlwfws4UkmdyplWhIqZ+r8Ictta/yNS1mlF+ursQLWfWFHq89KyU+EYiNLKVHwOrlYAtAOglDXVpuGTsPKpolTc4ZrsV4k0yGo1t6a6k0qgYqpFZyuUVh7GWjVRp+WWACKtmmpa4lvrjvuVxVYq5XsAPFznp/qLUuZmVfUiCKX8BYCrFVLJC0vhErCO4TCE9tVTqlr6INR1LOrTBcMS8EqljFtrOq3+kmn1XrCwotRjquQxyH62QilvB3B/Y6UF8IFSP99ZNfN/c23fWaGUi7q8z2MQkxSwAGK6Wu1jHTo2qxci9bSzajhuAtmkANW2KzTVT5QyUqu/W11IxVCneZtAVilStdXxLYDeWrNKARy/te4ZvrN6S4B1ZOV+GmansktBOfw0zNhXVwlwD4dNoGm1eueUIlVbb0sVO4APKSjrtGrZfhuIUuZhP7BYC2DuRwrZjT8MwYXVlxSU6YWlYf/KAqX8w+k5mL6wTP1JIavw20BmKY21wv3qwqsUspuvLHxLAW7+txvepZA5XQUjdZaC76HofpW+W1FqAClAesu0moSQgnL7zGaxpXqWYqzOtdoLJAXl2qxCSDFWSj1KabP6m0K4UXoTqKWzoFJIS/+DiNBSgPIXQaGlkJ2oXfPvrZ5SCD3icqkKkIJa7qgD00WQDClAWuI1sC9CChBZP7ORIgV1ubDSJaAjRQqQmKeVICnAspgqTApqVExtZSBqpIU3gdKkAFF+qgKlAKPcL9iHAqWgclKVKQXI6C8uGzKlAPHVw6VcKcDysgBqcqUAg7MCkC0F1UWqbKm21o8F0BQuBcjae6p8KUCqqY8hBYg19fkhpFvro0gBEhbpfwjbOY5gXmpMAAAAAElFTkSuQmCC";
|
|
255
|
+
|
|
256
|
+
var img$1 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFgAAABgCAMAAACuYkXGAAAAt1BMVEUAAABRUmRVYHFcZHBRWWZia3plb39aYnFeZnVYYXNZYnJPWGdZYnJRWWtZYnJZY3JWYG9eZnVcY3RXXnH+/v7+/v78/P2xs7zKzdKusbr6+vv4+frz9PXn6evs7e/09faPlaCVmaX6+vz09PX5+fns7fDa2+Dp6uzS1Nni4+X+/v7l5+rx8vL9/f1fTf////+vpv9pWP/DvP/19P9zY//r6f/r6P+lm/+Hef99bv/Nx/+bkP+RhP+tEDdkAAAALnRSTlMAAQMGCAsIDQ8UEgsXEB0gGhojJOLx5DwvIMa4m3CRiDIs1aymfWdcV03ShXjTY8FN1QAABtZJREFUaN7tmWlb2kAUhS1knSFAXFBArFtduoAgbtX//7t67gITEsCM+rFHwNZHXs9z5t6bybDzX376hi/5Bx5fxsSTeIBD8qPPUxUndP6f0+fITo0GngUs/ZEPMl0ADVAbKgf3J+siLaxWpOY1HV8yIQvQZlOeJeNedaJWHLhZlrJ94/imKkCjZhAEUYDXSMjCVtN14c4tM/GIAA3CILRhRPyo6HunJrhoVuwCGQIZxqF8t4TH3xK0rqEPmJiwZ4UXx7GN6ZX+AtwHTTYOMkf9DlkqV1MAFO9nZKLK8Iwh0C24hG7UQmv5arphBHcgJf3b35c/9yfQ/mD4+5bxFIx6hriZ6q0arVZsbZL1rwcHkxUdDEcZ0KFkzZ5JW/2qXc6B7fa/g1rV/uUR0FhGVCEHLdo6y5gb0YLFjN2k70dZHGNlIwl6KxdSbmCBTa4X2PvZ09t8Oh6P589Ps8eFawSCqB1586hecqPQIoVjpd49j1f0smAf9xEH6iMQ8nospaBlBm4cZ0c/FQunFb0Kev8oS6Q6dHBU2cAqOEC+KIYjlBek2KrulGyEvCVm4WoORrgPL+ONmj+qZ8QRcdWtn3WLhUOvLbkz2N2s6V8lI+dA04DWcRnM68bcOwfZEsefvkls4EbSGjD3G7oiM8fKrUU+NlR1FIakUSkJDSJOzGgC/R3X0GwCXWeJDXkgrUkCaOLS2JGCeJjWAU8fKea+iS1bXkvmimDD38nGfFxLL9zdJkPNsWWozG1C4KKCawbsYj7oI2Ys4DrLmjCCMJcUxLiupvdkOUXNWYArMS97LklSSvi1Nlgto02WA3SlKggcseGRGPazfG2SxFrpkp2y4ygirhlSy3mA2fLAGFh289MVW4OXDuCUZvCLD/hZlw9kBrsW4Qsdd12SpbeeSUCUxa0xMVfct6JjvoCKYfPDMwltvx8pli8ky4C5peMoaEyYlCJ+8gM/4S2Xqcli6mvFqnSuJYh4gN969gO/4S3nBI65rXcaxdEGLkfc2ud29tKc5kXL0CjSEVdYPFk7Y1oTaOyn6QRqpdzWAJf6GVw4VrCnFAzHq+NCRzFd6tJPgBGFXlRXJ0WEokgFPP0QOEVZVBZPGxqOex9dvJRaJGByybG1Bo7P8VtvHlTt6QE5FrBm7EZQzI4vPtYgw5Z0SECtt2pYo/hoSzvHxcVjMEYFGuSG9mt+YLqg3pBjrWOXBNzTdZQdnx349vQLjc2c6xjgJsAlyzyDWl0aFne+SQxzqmOOuNR6dC8TMviKsph6JjHqEjjWXYsrYwYHvHo5svCy/Ipf77UZHHKDAOjAHEVoMSta+Qlb9jJ80c6pPyw7Lu1X5MpEWfhY1n3hYQ5wRhu4BuSi0ClkefXyNlmevNRtZ+iEkjC8swC2UdmvhGy52z7r+W0Ke4ftnKdxZcuiyxdowbWvJnXbjzf1o3YuY94Cu7qvwFWvyWMoyQjc8dt4d6QmLDtGwkWw7oSk+fL22Xn9W4XeWbvbJcOxcNWwWz2qi8Dy8nXbhz3e1G+/uZkx9xB+5boUuYSd5M6cLbcQhpIf5ltGxKNwOQgj29gq190yUcoIowPytjimiMFxOeEI4DIZKWtbWw1jSX54XYu9n5DOwVXDga3eKrgmCSJYlvVrd06PJ4KelZrlGVjW8Sn8Sm9QETdk31YFO8uoOZA7I5hW9tPznJzO355moEoMV7sdCRhgWbl1jvGQlOXSx553D08mm3RwcrrLOWhv8Cnf+jMnhCyW44TJOci7hxe9TVji5i2pCHc2VKGS9OY/pphTJnc6u3uj4UGJOriCW2DbLeLKfSn8rgW7YzE6akuSTMjIY29vd+/m13DAznvnF79uTvEj4nYxIpZcvRXbdsKCyqA+UTK7hvacQAWWY0izLNFjIT30rapwhEUdyFWHpLk8CA4gqSNYVJnYxcKBSwkTY/OpMU+5gD0jjZTIXbINuqpNWOVyAUdR4eht8znh8tgtzhLDprtd2HbKc1AhYzgGq+eQ2w/tGYwGFNOJVAeUgw7lOR6gils5dVNuCbux6Li56QiSAhE4VXZLoIJN5CxIRwT0DlhLA2i4RhtCJmUByVAJwfIJtY40UY1TaTnpDijqhBJZSKkUQhDyialy3/9wwZ1383k5H54SHDgg8SpHpUrV02OttBrkRRNGajvGQxXGQo0W3KLbWqZ1EZWNpyX7eOGT/yVWPzurx5X+dlk3iQ4envRFlaBYpZa575aHsiMMPXoqdJmtygPr6oO19gMhNcxcL8NVdqMELcwzL8/uY4ay8DPH9ZW+UcQwkeAqHwT5w6va+aLPTPW1QJXTni+QYuW7gr9SHO5/eesfYdwFkua/O6kAAAAASUVORK5CYII=";
|
|
257
|
+
|
|
258
|
+
var img = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKoAAACqCAMAAAAKqCSwAAAB0VBMVEUAAAB5d55fTP9fTf9fTP9eTf9eTP9fTP9fTf5fTf9aYnFfTP9fTP9RV2hfTP9fTf9fTP9fTP9eTP9eTf9eTf9eTP9fTv5fTf9fTP9fTf9fTf9fTP9fTf9fTf9eTP9eTP9fTP9fTf9YX3BaYnRfTf9fTf9fTP9fTP9QVmZeTf9eTf9fTf9fTf9fTP9fTf9fTf9fTf9eTP9fTf9eTf9jantgTv1fTP9fTf9fTf9fTf9fTP9fTf9eTP9eTftfTf9fTf9eTf9fTP9fTf9fTf9gTvxfTf9aY3RaYnJfTf9fTf9fTf9eTf9aYnNZYXJeTP9fTf9eTuxbYnRfTv1cTuBfTvJfTf9eTP1fUPhfUuVcVsJbT91cT9tbWKtcWLFbXpNdVM5ZX3ReTvtcUsxbVMRcU8heUOb8/P5cWLlcVMheTPxZWZ79/v7+/v63ucpcXJvw8fSvs7r29vmVmarp6e7NztNWU7j7+/vR0eH7+/zh4uTy8/Tr7O2wsbr39/z3+Pj3+Pjl5+rKytSnptWpqsqKisD5+vro6PLs7PTa2ulfTf////9zY//r6P/19P9pWP/DvP+Hef+bkP/r6f+vpv/X0v+5sf/h3v/Nx/+lm/+RhP99bv89/FqOAAAAiXRSTlMABMw/RS9kbCdWB092BUIslzo8U180Ko9Zh5syI4RbNjh9DRBxaUd5CWdRrXNhXaNLSYpvCyBNgIGxjHtMG76UkqG6nh60JhnIqKbEExWqtyciFh4jwRkTIR0mGx0iISAdDycZFRjkKCQKGeLxOSeNP6ksby4QxVnUT5yAHsnJuF9HREI213iiZ4OOOrcAAA/ESURBVHja1NhPj5pAGAbwIYrr4gLVXf9lqavJFi3RZtHFblpJe/ATcIAzR7JNeuhemjTp3U/deWccRxjsSTLjYzTG0y9P3nkBURXpxehC4lj1EF1EAsuqX4Z1W6tZdde9AOu204FWfX+LFE/U7tQw1fX9jeLWrIupNdyq+7RpKW3V9DGlukD1AqRsNPuBUmFW1y3vVl2r02VU14dWvWtVrfF9l7f6BK1eK2pNdULlx6qFqQMVrVpTL7Ta8jB14CDl0tSPqO6BOvqknDWyCbW9p9IBINQ7xaxZj1L5rMKxuiXUhVJWzQFqYQBYq4tGE6mTuNmzbeFYsVYbClnTJqbqeeoG9iqjflTFqgWcyvfqGmaVUT8oYo2cIhVuAumsDvbUKyWsmiNQ6wfqiFGvekh+wgLVosdq7eWpK/nWNAjKWl23itRH2VYt5FTeqnu8Vxd76txGUpNsxVaBKrY6n99ItWrhNnDEDYCpa3YJuGuwVm+kWhNKFVsVNgChTnUkK1mMqUFJq/4GNkCx1en0qzRrFOap7fILK6dOJpKsWZRvtctaFQeAtTr5fI9kJGFUYa9SqnCsgPoiw5pFhHriwup5+3uARb7Vl/cSrGkUc6pd2KvlG2AC1IqtGrzJi/+URFF4guoL1Eeg0laHwy6qMsCEcG2WlA6AxfaqB9RR8VhBq8Mlt1ahNIGJvxw6TkQqf7Zie3VU2uryC7NWUadpsk+T9poxaumdFW2VD8Bqlaf2H1AFASIIDfIiZOCnSVRKtWir/OFaPFbD5bJfiZW2aRrG20/DMGmzCBkpH4CSVhl1dNzq9KjV/vfx+aEmxMB5/fGGrRCMT4EqbIDTDyz5AVhi6rfxuaEadc5mv3a7v7MZfAdt+r9WXfL/qjgAvFWgvmuf30qkf153u93v5+cZsWaEGpdT3dJba5H6j1Vz+00iCsJ4vDz4Um8x3qIxYdUYjalGaqJ4ibb1UkFbwQhCiwK1TcHUFrFatfEW4w5QWrHV+tc6c85ujzA7sCDzwusv337nm5lzQNYei0qgweAs/KjDa0RVrCWGymcApipDPdxbVg0aeAVQXq7AN2RF2GAp95hQ3SGQN1bKVSEBCPWyRkXWHgVqn/r6QSQNzEHNtjeg8D4QOBU8VSo9e5x7OImoQre6iA7gjTUUcsNKoSLr4N4eiYqkWtPAR6iWbdv+CbOWhbAlUpVQhxpQ93jNAGebDXDUGGBw8MbenoiqfEqklpWHuo21AoVXiBpA1Nwk1tWrA8LC0sarlzdRkbUHRaQIiqRF+GGrWoPXlqVIc48nUVU5AQiV71amW2mvDt7o79/WA1kJVZG+ysOqRl2uwlvLylFNEqqUAHKuEqo5Vqhq/8i2HpAqp1qWNQe/bKfqkA9bM0Sape8vtAC9BQiqGgPsVqqO3N3WC6cqo1JQ2W5V4F1kZmYml82RqkOCqsIW0JQAhx3U+zt7Ean4/cMUVLr0yZqfwcpOJpNJQdWmyeqERiVSMwMYAyDqmZ3/Q6qTKoikeKaMqBRYi0SazRLqkHysnNF6n6BqI6ph7fZUBUlUdaZMlQE+Sah8smpADXkcq36Nemnn/3x/R1Rs/obTCayURo1Gh3xNVuZYyahds24hqxIqBdWGwXQCayGVUqioasxzt8K+6qdbGQNcGh7e3jWrJrXoTDXVb3g+n0JSpWpMVLVVAhzgqg4/2N5tVOlOpYKqudZhNpVNtDCAeQ6WGytHvdmdrq5V30CdkarASiSS0WR0aCAWGxXerXyijjgGQNRuWGl7Uk21CNWVMq91mEslElFUNU4G2O+FeloMK1HVm9dOdmNVJWogD1ItJJLEGv/XAMfYDCCpyr06rFC7YHXOfzGv6rlHzSWUWQdadSt+FcznVST9F/XR+c7nP2KlBhC5/fTp2NjYLafGsJ5OTKTw+6eTJOpArAF1r2sAM6+ae4CQVlVIAI1671zn3x9RkTR8+zaxGlSqCWRNKK/G0QA7PEdrX8dqsMkAhHqvM111VhFqRKvawDqhUdPRNKLGRkfbvwbyIVBW9d6dc51d/ehNhb6/a4CvL1/Ob6Km0AHpdDoajcViXl41j+z7vK/XjKoc9c6VzkTto+9vRTTq/LulAlAtLS5o1nGSVanKDaA31u5VvbP1ov9DpRuAi7qwRJTVSqVKv/kikiLreFqjxvgLix6teViFzE2gV1g92ERlrHJX1VmlrTq/iJi11bKaVFZqFYDnL4mUDBAnVOZVWq5ZAvA18LpCRVKG2gErTYBoVYus+iIP1fqybWq1AoXvWtW4QkVSn+NKqH0L0KpiXfEpq5uqkcinAqw3zSvlGsDsOKFqVY/sN6iiAeRuNeKBylhlVHSq/v44rdaMpGZthaJinUZSMoD8xCajyqoqVp8e6NNZhah5vVZz1sKX8fHp6bg3aoOqZ8U7Kz1aC6oyXcVYRVH1skKa8qrBB0RF1iejox7HSj9biAnADWCO1SNC5azyAqBQww1zNVtaNCqy8ptAfr963MwA4hBowsqti+3XakJtvADgS8sHQn2iUXfxboVDIHtiI1U5qmQAzipvgOE8iSrL6qJSAnADiI9Bh5rWwLsc1T+rE1VvYd0Waw1mpzKOqgxVJwC/s/Kbq/5YTauyFmFNRl2BD1PTGUJFWduH1XF5ub7LjxVnlXcVGlXCr2FDRl2GwlQmk9Gouzz+ECIYwNe44p+VVEXUN/DHlqsKX6ccVO7V5o31gnC9JqByVpkUUfWpkqsCnxXqE6Oq2QLwhUXIVd5YDSozAGflBqBW1R41g4WkfAZgLyzcq/xYyagya5+zq7Q2AMCUqyrPVWe3OthqsrouG4CzSq//zq76t5oz/5EhCuJ4T4hr3UcciXMY1yJYZwhCTCJGXBnERGYdw65da9Z93yTNYtz8tar6Tc3r6W/XPNpMtpX1C798Ultdd72qX9NJf9FndVm0alCXLA61LP4is3Kj7tithYB6Wv2glbOq+Y8ElYeBOGSH1QXdVrEKQFK9BGTUe/6IjvrBfw2ocsIQGVyuwNWFFiGAWJFU/6wMav6u/xEQbe/6ua5VQZ2Hg0vMrLTA6ib1uLFmUIf8L7pSq5cJVUIAtte6lK41ahWdFZKqapVqdXjA/6ErVVBBq2QAzu6KAxVI9S4wOStWq5kCo9C4/Q2RXuHfv/WreMSEy0t6IwhQkRSFbFU6a1UeBKF89ysvL4e06t4IwhDgLliQFB1rowmYH74bw/r+i195ce0ao15BAzCoEq2c4+B9WhKIpCiCmuXOCrGOROz14zsmZdTz1lanYWptDQCc1U7HZ4WkurGaKpAbltxc+VQLgX7x/VdMyvUKpNaupiW2gvdpgRVJUSQISBvwRoVgP9RoJvCr9pX6QANDB68xap31ZAN1TthWuyJ+tVvRqqBCtHKTZpjVNFdZrWViZVgRAqXWZUAalIEnw1qd0XQcyqiLkjaCkFQfBBnXKi3rZw+ePK5UXj0ZunOQhEkF9SRWrDmpWPUqwJFaI6meBYpaiVUmAVaov8qopr92VJqWjrlVNwTWPWofAEgdxir+qhxhNQ12aa9RIwgKFj2wLv3TaIWkeieQm5YyCmBWS2pRSaBnNXMqNIJcVQB+VkDqrq+tWoX1WAO11GhaKmMLrK1WulBFq0iq+4AQqrCGx1YkJaPV2FZwzlYBLT2AZqtri3+5DMQW8PDmzUGW600yGEhjbAFazTVWF+bBCQOgYmB1k2LbgqfBqlQFVfEAYqvKhEX3AEeKyXYsbvNgBWXErwzawSUagCSBCfyqQuo01uy9+IT1nT9Ec0uaXKJW7asL2F2J3bNq7lkdAlKnVqVxVY2rWWp+pSRDVmV7LXQXsBpsVdWqQuqw1bpaHw5gKfj2nX9DULcog8uuuBDgHFxuKCZcCOoxu0vfYkpAnrGePasYgKQrjpYFFiwbjidaspB5AK2D/4AScJBQeXmFd1ccu9aOEBDOV/cRaWLWeuPifaSwqhrSs7wOoG0EMaq+ZwWfFaHu10jdxioF1m3/a+SbCpRqtHpasVVtxqr3V5ORZmTPKkivnzWPhOibOlcytkqs4WuLOTBi+4uu9QIHqXt2zZXA/bDD+uxXyv1MatYXTzt2AiEHUFAdpO702gyvh0MO6+2I/7RMrGdKsr0GBjBVdq1VZ4Wp9fSkpDJnk+z6Ac0vraPKl/sJtW6rFFhlywK6K4CqBtbkpOICBLVM63bWUeXzbAAXAls9razaKkuhSma1959ITbySQuAOOSwJ/mVC7S+ZVdtAq3FPGVjU2c7UWkiTokrZakpBcVjkqIbz+UI/CbEWT8C1haQreMaof1YJSbFoMYXAYPBlvSdHVTaoFwK1FpWlUO00LG5uNTcRKXYDpMI2XWE6CmDSw4cD0kvFS81anaPvBG5W/erOU225s2RUo1Z2WD/NN1UoHM5eZFb92iLnyletVhOTYoG1TFjJYVHwzwdKzd66GJww7FbPGNmvYisYndUmIE0YsEyB1fiy/IG6UpdlgyOWs0yK91birCBdwbHFfCBNHAWkxGa93qOVpUKBdZpd1sOkJKBVJbVW+qsLT7XzLtSwsg0Unlwl0EKWSXtuMSsfXOLJbWPE5spXgTS5mHu7VYaVd66eskYZla4DDWrLk1vX9tr2tpFmjF5XkbkaVgZllZJMmnTrFN2GFdmv6q8ugFabbFUhTewEmJXbLCQBJwufh07h1wGsreKQHSYs0XRlWxtIMRcUWCbtWUUq5TtxPg62L4SoBYt2GbS03aTm3ppIA9oeEjkPntLHatUOmR0b7G0ixQwrYxRLP/TXHF1nSPg6VD8N29pSqyuBtF32ynhMazQ6ie/uGw9EKI9EbW3lV9tEipkAsxKtEaKkH/vsBh4yu/dXJwNpu58ImGJISYwr65P3AVquhc8GrXb3eh2RDP8hMbyk4UDMf4EBwLK9bQVbZ9UBUnzPQlQq0otJoHsfYDmQtlOtQsuk8g8smegDETPw4jL6QgiRdliaEK1a40NADt9eEwMYD6SdACWRD0oko9iqbAXDazYdIkVelF5Exf6qrQJWdJYUYfGZOKwCcMTW3c2koyi9ylsWsGZDqKuJdDSlqLxlgQXLuFEm9fqU54y2hi/Z2VmtI9JRluNKdyViq7NHn9TLxNlqtL2WClL6stBWoWBZnwpSz9utPLthN4IWpYSU3rUVA1BCwLy0kHreqVa11ew0kXreAfAAoWg1MU2k9K49ttdEq7P6vFRJL+wDiK2mjZTia0wnkFHXpI7U8yZEcgBjAF0pJPUy02Ie4d+aRlLKW9Cv7konKZmroMr+6sa0knrelqY1m65cekk9bxqvL0ojaGyaSclcra2mm5RY54gBTE05KbEuMS2LMaknpQjLIeC/IKVSi7T6f5CSe5068z8hpUS7I6S/ARbzgdCIDH2vAAAAAElFTkSuQmCC";
|
|
259
|
+
|
|
260
|
+
var OverviewMapPluginEvent;(function(_0x4c0a12){_0x4c0a12['RotateCamera']='rotatecamera',_0x4c0a12['TranslateCamera']='translatecamera';}(OverviewMapPluginEvent||(OverviewMapPluginEvent={})));class OverviewModel extends Model{constructor(_0x317ff1,_0x18f539,_0x5c8a26){super(),this['modelId']=_0x317ff1,this['modelObject']=_0x18f539,this['bbox']=_0x5c8a26;}['getModelObject'](){return this['modelObject'];}['getBBox'](){return this['bbox'];}}class OverviewMapViewer extends BaseViewer{constructor(_0x50cf23){super(_0x50cf23),this['drawableList']=new DrawableList('overviewMap'),this['cameraManager']['setProjection'](CameraProjection['Orthographic']),this['cameraManager']['setNavigationMode'](ControlsMode['Plan']);const _0x582bc4=new THREE['Vector3'](0x0,0x64,0x0),_0x3b7f8d=new THREE['Vector3'](0x0,0x0,0x0),_0x4ad433=new THREE['Vector3'](0x0,0x1,0x0);this['cameraManager']['goToViewpoint']({'eye':_0x582bc4,'look':_0x3b7f8d,'up':_0x4ad433}),this['resize'](),this['setupDefaultEvents'](),this['overlayRender']['addDrawableList'](this['drawableList']),this['createCameraDrawable'](),this['addEventListener'](ViewerEvent['BeforeRender'],()=>{this['updateRaycasterThreshold']();});}async['createCameraDrawable'](){const _0x13feb1=await this['getImageBySrc'](img$3),_0x3a898a=await this['getImageBySrc'](img$1),_0x43cb99=await this['getImageBySrc'](img$2),_0x43fa6d=await this['getImageBySrc'](img),_0x15a932=new ImageDrawable('camera',{'image':_0x13feb1,'hoverImage':_0x3a898a,'rotationPoint':new THREE['Vector2'](),'offset':new THREE['Vector2'](-0xa,0xa),'width':0x14,'height':0x14});this['cameraDrawable']=_0x15a932;const _0x48154c=new ImageDrawable('cameraDirection',{'image':_0x43cb99,'hoverImage':_0x43fa6d,'rotationPoint':new THREE['Vector2'](0x15,0x0),'offset':new THREE['Vector2'](-0x2a,0x15),'width':0x2a,'height':0x2a});this['cameraDirectonDrawable']=_0x48154c,this['drawableList']['addDrawable'](_0x48154c),this['drawableList']['addDrawable'](_0x15a932);}get['enableSelection'](){return this['_enableSelection'];}set['enableSelection'](_0x44fbe7){this['_enableSelection']=_0x44fbe7;}['setupDefaultEvents'](){let _0x36cb33,_0x2e1728=![],_0x4e8c55=![],_0x556be3=new THREE['Vector2']();this['inputManager']['addEventListener']('pointerdown',_0x568c7c=>{_0x36cb33&&_0x36cb33===this['cameraDirectonDrawable']&&(this['cameraManager']['enablePan'](![]),_0x2e1728=!![],_0x556be3=new THREE['Vector2'](_0x568c7c['x'],_0x568c7c['y'])),_0x36cb33&&_0x36cb33===this['cameraDrawable']&&(this['cameraManager']['enablePan'](![]),_0x4e8c55=!![],_0x556be3=new THREE['Vector2'](_0x568c7c['x'],_0x568c7c['y']));}),this['inputManager']['addEventListener']('pointermove',_0x22f431=>{if(_0x2e1728){const _0x153efe=new THREE['Vector2'](_0x22f431['x'],_0x22f431['y']);this['handleRotateCamera'](_0x153efe,_0x556be3),_0x556be3=_0x153efe;return;}if(_0x4e8c55){this['handleTranslateCamera'](_0x22f431);return;}_0x36cb33&&(_0x36cb33['isHover']=![],_0x36cb33=undefined);const _0x2873d1=this['pickPosition'](_0x22f431);if(!_0x2873d1)return;const _0x5f49d8=this['pickManager']['pickDrawable'](_0x2873d1)[0x0];_0x5f49d8&&(_0x5f49d8['isHover']=!![],_0x36cb33=_0x5f49d8),this['getOverlayRender']()['render']();}),this['inputManager']['addEventListener']('pointerup',()=>{_0x2e1728&&(this['cameraManager']['enablePan'](!![]),_0x2e1728=![]),_0x4e8c55&&(this['cameraManager']['enablePan'](!![]),_0x4e8c55=![]);}),this['inputManager']['addEventListener']('dblclick',_0x26df5c=>{const _0x2e9d8f=this['pickPosition'](_0x26df5c);if(!_0x2e9d8f)return;this['dispatchEvent'](OverviewMapPluginEvent['TranslateCamera'],{'position':_0x2e9d8f});});}['handleRotateCamera'](_0x539597,_0x2fff05){if(!this['cameraDirectonDrawable'])return;const _0x15a84b=this['cameraDirectonDrawable']['position'],_0x305385=CoordinateUtils['world2Screen'](_0x15a84b,this['camera'],this['viewerContainer']),_0x181535=new THREE['Vector2']()['subVectors'](_0x2fff05,_0x305385),_0xb5c978=new THREE['Vector2']()['subVectors'](_0x539597,_0x305385),_0x410e97=_0xb5c978['cross'](_0x181535),_0x11de2e=_0x410e97<0x0?_0xb5c978['angleTo'](_0x181535):-_0xb5c978['angleTo'](_0x181535);this['cameraDirectonDrawable']['setRotation'](this['cameraDirectonDrawable']['rotation']+_0x11de2e),this['getOverlayRender']()['render'](),this['dispatchEvent'](OverviewMapPluginEvent['RotateCamera'],{'angle':_0x11de2e});}['handleTranslateCamera'](_0x15faab){var _0x57399f,_0x5f628c;const _0x235577=this['pickPosition'](_0x15faab);if(!_0x235577)return;(_0x57399f=this['cameraDrawable'])===null||_0x57399f===void 0x0?void 0x0:_0x57399f['setPosition'](_0x235577),(_0x5f628c=this['cameraDirectonDrawable'])===null||_0x5f628c===void 0x0?void 0x0:_0x5f628c['setPosition'](_0x235577),this['getOverlayRender']()['render'](),this['dispatchEvent'](OverviewMapPluginEvent['TranslateCamera'],{'position':_0x235577});}async['loadModel'](_0x5acbc1,_0x4781c1){const _0x54fcdf=new THREE['TextureLoader']()['load'](_0x5acbc1['src'],undefined,_0x4781c1),{x:_0x58b1f6,y:_0x591230,z:_0x4d5bd9}=_0x5acbc1['min'],{x:_0x5a7901,y:_0x57a34f,z:_0x3de01c}=_0x5acbc1['max'],_0x2c985c=new THREE['BufferGeometry']();_0x2c985c['setFromPoints']([_0x5acbc1['min'],new THREE['Vector3'](_0x5a7901,_0x591230,_0x4d5bd9),_0x5acbc1['max'],new THREE['Vector3'](_0x58b1f6,_0x57a34f,_0x3de01c)]),_0x2c985c['setIndex']([0x0,0x3,0x1,0x1,0x3,0x2]),_0x2c985c['setAttribute']('uv',new THREE['Float32BufferAttribute']([0x0,0x1,0x1,0x1,0x1,0x0,0x0,0x0],0x2));const _0x59e174=new THREE['Mesh'](_0x2c985c,new THREE['MeshBasicMaterial']({'map':_0x54fcdf})),_0x270811=new THREE['Box3'](_0x5acbc1['min'],_0x5acbc1['max']),_0xe4f79=_0x5acbc1['modelId']||_0x5acbc1['src'],_0x33eb55=new OverviewModel(_0xe4f79,_0x59e174,_0x270811);this['addModel'](_0x33eb55),this['zoomToBBox'](_0x270811);const _0x460ce6=new THREE['BufferGeometry']();_0x460ce6['setFromPoints']([_0x5acbc1['min'],new THREE['Vector3'](_0x5a7901,_0x591230,_0x4d5bd9),_0x5acbc1['max'],new THREE['Vector3'](_0x58b1f6,_0x57a34f,_0x3de01c)]),_0x460ce6['scale'](0x186a0,0x1,0x186a0),_0x460ce6['setIndex']([0x0,0x3,0x2,0x0,0x2,0x1]);const _0x5da2c0=new THREE['MeshBasicMaterial']({'color':'#888','side':THREE['DoubleSide']});this['groundPlane']=new THREE['Mesh'](_0x460ce6,_0x5da2c0),this['groundPlane']['visible']=![],this['groundPlane']['name']='groundPlane',this['groundPlane']['renderOrder']=GroundPlaneRenderOrder,this['groundPlane']['layers']['enableAll'](),ObjectUtils['disableLayerChannels'](this['groundPlane'],[LayerForSelectableObjects]),this['scene']['add'](this['groundPlane']),this['enableRender'](0x0);}['asyncMainCameraToDrawable'](_0x459dc4,_0x354996){var _0x452903,_0x450b70,_0x18cd92;const _0x554878=new THREE['Vector3']()['subVectors'](_0x459dc4,_0x354996)['projectOnPlane'](this['camera']['up']),_0x5455c8=Math['atan2'](_0x554878['z'],_0x554878['x']);(_0x452903=this['cameraDrawable'])===null||_0x452903===void 0x0?void 0x0:_0x452903['setPosition'](_0x459dc4),(_0x450b70=this['cameraDirectonDrawable'])===null||_0x450b70===void 0x0?void 0x0:_0x450b70['setRotation'](_0x5455c8),(_0x18cd92=this['cameraDirectonDrawable'])===null||_0x18cd92===void 0x0?void 0x0:_0x18cd92['setPosition'](_0x459dc4),this['getOverlayRender']()['render']();}['getImageBySrc'](_0x407e04){const _0x44d4ed=new Image();return _0x44d4ed['src']=_0x407e04,new Promise((_0x5dc9d3,_0x44b091)=>{_0x44d4ed['onload']=()=>{_0x5dc9d3(_0x44d4ed);},_0x44d4ed['onerror']=_0x248b02=>{_0x44b091(_0x248b02);};});}['pickPosition'](_0x32276c){var _0x481779;const _0x435c7d=[];return this['groundPlane']&&_0x435c7d['push'](this['groundPlane']),(_0x481779=this['pickManager']['pickObject'](new THREE['Vector2'](_0x32276c['x'],_0x32276c['y']),_0x435c7d))===null||_0x481779===void 0x0?void 0x0:_0x481779['point'];}['is3d'](){return !![];}['setObjectHighlight'](_0x462879){throw new Error('Method\x20not\x20implemented.');}['clearHighlight'](){throw new Error('Method\x20not\x20implemented.');}['updateRaycasterThreshold'](){const _0x1e8975=this['getPixelSizeInWorldCoord']()*0x3,_0x362c68=this['getRaycaster']()['params'];!_0x362c68['Line']?_0x362c68['Line']={'threshold':_0x1e8975}:_0x362c68['Line']['threshold']=_0x1e8975,!_0x362c68['Points']?_0x362c68['Points']={'threshold':_0x1e8975}:_0x362c68['Points']['threshold']=_0x1e8975;}}
|
|
261
|
+
|
|
262
|
+
class OverviewMapPlugin extends Plugin{constructor(_0x25f4de,_0x1cf4d9){const _0x535297=(_0x1cf4d9===null||_0x1cf4d9===void 0x0?void 0x0:_0x1cf4d9['id'])||OverviewMapPlugin['DEFAULT_ID'];super(_0x25f4de,{'id':_0x535297}),this['cfg']=_0x1cf4d9||{'id':_0x535297},this['mapViewer']=new OverviewMapViewer({'containerId':this['cfg']['containerId']}),this['mapViewer']['setBackgroundColor'](0x1,0x1,0x1),this['mapViewer']['loadModel']({'src':_0x1cf4d9['image'],'min':_0x1cf4d9['min'],'max':_0x1cf4d9['max']}),this['viewer']['addEventListener'](ViewerEvent['AfterRender'],()=>{const {position:_0x19a740,target:_0x9d4a5b}=this['viewer']['getCameraInfo']();this['mapViewer']['asyncMainCameraToDrawable'](_0x19a740,_0x9d4a5b);}),this['mapViewer']['addEventListener'](OverviewMapPluginEvent['RotateCamera'],({angle:_0xa380cf})=>{const {position:_0x17340d,target:_0x247f15}=this['viewer']['getCameraInfo'](),_0x147697=new THREE['Vector3']()['subVectors'](_0x17340d,_0x247f15)['applyAxisAngle'](this['viewer']['camera']['up'],-_0xa380cf),_0x4a5c02=_0x17340d['clone']()['sub'](_0x147697);this['viewer']['flyTo'](_0x17340d,_0x4a5c02,![]);}),this['mapViewer']['addEventListener'](OverviewMapPluginEvent['TranslateCamera'],({position:_0x3ec58a})=>{const _0x49ae15=this['viewer']['getCameraInfo']();_0x3ec58a['setY'](_0x49ae15['position']['y']);const _0x8c53db=_0x3ec58a['clone']()['sub'](_0x49ae15['position']),_0x1c19f5=_0x49ae15['target']['clone']()['add'](_0x8c53db);this['viewer']['flyTo'](_0x3ec58a,_0x1c19f5,![]);});}get['inputManager'](){return this['mapViewer']['getInputManager']();}['initEvents'](){}}OverviewMapPlugin['DEFAULT_ID']='OverviewMapPlugin';
|
|
263
|
+
|
|
264
|
+
export { ActionType, ArrowMarkup, AxisGizmoPlugin, AxisPlaneSection, AxisType, AxisX$1 as AxisX, AxisY$1 as AxisY, AxisZ$1 as AxisZ, BaseMarkup, BaseMeasureDrawable, BaseMeasurement, BaseSection, BottomBarPlugin, CircleMarkup, CloudLineMarkup, CloudRectMarkup, ContextMenuItems, ContextMenuPlugin, DefaultMarkupToolbarConfig, DefaultViewer2dToolbarConfig, DefaultViewer3dToolbarConfig, DotMarkup, EllipseMarkup, ExplodePlugin, ExportFormats, ExportPlugin, GroundGrassPlugin, GroundGridPlugin, GroundShadowPlugin, GroupConfig, HotpointPlugin, LayerManagerPlugin, LeaderLineMarkup, LocalDxfUploader, LocalModelUploader, MarkupGroupConfig, MarkupPlugin, MarkupPluginEvent, MarkupToolbar, MarkupType, MeasurementPlugin, MeasurementType, MenuTypeEnums, NavCubePlugin, ObjectsBoxSection, OverviewMapPlugin, PdfLoader, PdfLoaderPlugin, PickPlaneSection, PolylineMarkup, PropertyPlugin, RectMarkup, ScreenshotMode, ScreenshotPlugin, SectionPlugin, SectionType, Settings2dPlugin, Settings3dPlugin, SkyboxPlugin, StatsPlugin, TextMarkup, TextMarkupEvent, Toolbar, ToolbarMenu, ToolbarMenuId, TreeViewPlugin, ViewCubePlugin, Viewer2dToolbarPlugin, Viewer3dDatGuiPlugin, Viewer3dToolbarPlugin, XMarkup };
|