/*! * LMV v7.99.1 * * Copyright 2024 Autodesk, Inc. * All rights reserved. * * This computer source code and related instructions and comments are the * unpublished confidential and proprietary information of Autodesk, Inc. * and are protected under Federal copyright and state trade secret law. * They may not be disclosed to, copied or used by any third party without * the prior written consent of Autodesk, Inc. * * Autodesk Viewer SDK Usage Limitations: * * The Autodesk Viewer SDK JavaScript must be delivered from an * Autodesk-hosted URL. */(()=>{var e={8070:e=>{e.exports.l="mouseTracking"},9556:e=>{"use strict";var t=e.exports;t.ESCAPE_EVENT="escape",t.PROGRESS_UPDATE_EVENT="progress",t.FULLSCREEN_MODE_EVENT="fullScreenMode",t.NAVIGATION_MODE_CHANGED_EVENT="navmode",t.VIEWER_STATE_RESTORED_EVENT="viewerStateRestored",t.VIEWER_RESIZE_EVENT="viewerResize",t.VIEWER_INITIALIZED="viewerInitialized",t.VIEWER_UNINITIALIZED="viewerUninitialized",t.LOADER_LOAD_FILE_EVENT="loaderLoadFile",t.LOADER_LOAD_ERROR_EVENT="loaderLoadError",t.LOADER_REPAINT_REQUEST_EVENT="loaderRepaint",t.MODEL_ROOT_LOADED_EVENT="svfLoaded",t.GEOMETRY_LOADED_EVENT="geometryLoaded",t.TEXTURES_LOADED_EVENT="texturesLoaded",t.OBJECT_TREE_CREATED_EVENT="propertyDbLoaded",t.OBJECT_TREE_UNAVAILABLE_EVENT="propertyDbUnavailable",t.OBJECT_TREE_LOAD_PROGRESS_EVENT="propertyDbLoadProgress",t.MODEL_UNLOADED_EVENT="modelUnloaded",t.BEFORE_MODEL_UNLOAD_EVENT="beforeModelUnload",t.MODEL_ADDED_EVENT="modelAdded",t.MODEL_REMOVED_EVENT="modelRemoved",t.MODEL_LAYERS_LOADED_EVENT="modelLayersLoaded",t.MODEL_TRANSFORM_CHANGED_EVENT="modelTransformChanged",t.MODEL_PLACEMENT_CHANGED_EVENT="placementTransformChanged",t.MODEL_VIEWPORT_BOUNDS_CHANGED_EVENT="viewportBoundsChanged",t.MODEL_FRAGMENT_BOUNDING_BOXES_SET_EVENT="fragmentBoundingBoxesSet",t.EXTENSION_PRE_LOADED_EVENT="extensionPreLoaded",t.EXTENSION_LOADED_EVENT="extensionLoaded",t.EXTENSION_PRE_UNLOADED_EVENT="extensionPreUnloaded",t.EXTENSION_UNLOADED_EVENT="extensionUnloaded",t.EXTENSION_PRE_ACTIVATED_EVENT="extensionPreActivated",t.EXTENSION_ACTIVATED_EVENT="extensionActivated",t.EXTENSION_PRE_DEACTIVATED_EVENT="extensionPreDeactivated",t.EXTENSION_DEACTIVATED_EVENT="extensionDeactivated",t.SELECTION_CHANGED_EVENT="selection",t.AGGREGATE_SELECTION_CHANGED_EVENT="aggregateSelection",t.ISOLATE_EVENT="isolate",t.AGGREGATE_ISOLATION_CHANGED_EVENT="aggregateIsolation",t.HIDE_EVENT="hide",t.AGGREGATE_HIDDEN_CHANGED_EVENT="aggregateHidden",t.SHOW_EVENT="show",t.SHOW_PROPERTIES_EVENT="showProperties",t.SHOW_ALL_EVENT="showAll",t.HIDE_ALL_EVENT="hideAll",t.CAMERA_CHANGE_EVENT="cameraChanged",t.EXPLODE_CHANGE_EVENT="explodeChanged",t.FIT_TO_VIEW_EVENT="fitToView",t.AGGREGATE_FIT_TO_VIEW_EVENT="aggregateFitToView",t.CUTPLANES_CHANGE_EVENT="cutplanesChanged",t.TOOL_CHANGE_EVENT="toolChanged",t.RENDER_OPTION_CHANGED_EVENT="renderOptionChanged",t.FINAL_FRAME_RENDERED_CHANGED_EVENT="finalFrameRenderedChanged",t.RENDER_PRESENTED_EVENT="renderPresented",t.LAYER_VISIBILITY_CHANGED_EVENT="layerVisibility",t.PREF_CHANGED_EVENT="PrefChanged",t.PREF_RESET_EVENT="PrefReset",t.RESTORE_DEFAULT_SETTINGS_EVENT="restoreDefaultSettings",t.ANIMATION_READY_EVENT="animationReady",t.CAMERA_TRANSITION_COMPLETED="cameraTransitionCompleted",t.HYPERLINK_EVENT="hyperlink",t.HYPERLINK_NAVIGATE="hyperlink_navigate",t.LOAD_GEOMETRY_EVENT="load_geometry",t.LOAD_MISSING_GEOMETRY="loadMissingGeometry",t.WEBGL_CONTEXT_LOST_EVENT="webglcontextlost",t.WEBGL_CONTEXT_RESTORED_EVENT="webglcontextrestored",t.CANCEL_LEAFLET_SCREENSHOT="cancelLeafletScreenshot",t.SET_VIEW_EVENT="setView",t.RENDER_FIRST_PIXEL="renderFirstPixel",t.PROFILE_CHANGE_EVENT="profileChanged",t.RENDER_SCENE_PART="renderScenePart",t.OBJECT_UNDER_MOUSE_CHANGED="hoverObjectChanged",t.ANIM_ENDED="animEnded",t.TRANSITION_STARTED="transitionStarted",t.TRANSITION_ENDED="transitionEnded",t.FRAGMENTS_LOADED_EVENT="fragmentsLoaded",t.FRAGMENTS_UNLOADED_EVENT="fragmentsUnloaded",t.SCENE_UPDATED_EVENT="sceneUpdated",t.REFRESH_CUSTOM_PROPERTIES="refreshCustomProperties",t.REFRESH_CUSTOM_PROPERTIES_VALUES="refreshCustomPropertiesValues"},2240:(e,t,i)=>{"use strict";i.d(t,{A:()=>r});var n=i(1354),a=i.n(n),s=i(6314),o=i.n(s)()(a());o.push([e.id,'@font-face{font-family:"calibration-icon";src:url("data:application/octet-stream;base64,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") format("woff");font-weight:normal;font-style:normal}[class^=calibration-icon],[class*=" calibration-icon"]{font-family:"calibration-icon";font-style:normal;font-weight:normal;font-variant:normal;line-height:1;padding-top:2px;speak:none;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.adsk-viewing-viewer .calibration-icon:before{content:"a"}.adsk-viewing-viewer .calibration-panel{left:calc(50% - 190px);top:calc(50% - 145px);width:380px;height:auto;z-index:4}.adsk-viewing-viewer .calibration-panel .calibration-table{padding-left:24px;padding-right:24px;margin-top:12px;margin-bottom:12px;box-sizing:border-box}.adsk-viewing-viewer .measure-settings-popup .option-drop-down,.adsk-viewing-viewer .calibration-panel .option-drop-down{width:100%;padding-right:0px;box-sizing:border-box}.adsk-viewing-viewer .measure-settings-popup .adsk-lmv-tftable tr td,.adsk-viewing-viewer .calibration-panel .adsk-lmv-tftable tr td{width:auto;padding:2px 0px 2px 0px;height:56px;font-size:14px}.adsk-viewing-viewer .calibration-panel .adsk-lmv-tftable tr td div{padding:0px}.adsk-viewing-viewer .calibration-panel .adsk-lmv-tftable tr td input{margin:0px;box-sizing:border-box;width:100%;height:36px;font-size:14px}.adsk-viewing-viewer .calibration-panel .adsk-lmv-tftable tr td select{height:36px;font-size:14px}.adsk-viewing-viewer .measure-settings-popup .switch{margin-left:25px}.adsk-viewing-viewer .measure-settings-popup .switch .slider{width:26px}.adsk-viewing-viewer .calibration-textbox::-webkit-inner-spin-button,.adsk-viewing-viewer .calibration-textbox::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.adsk-viewing-viewer .calibration-text{text-align:left;padding:6px 10px 6px 10px;margin:20px 20px 14px 20px;font-size:14px;-webkit-font-smoothing:antialiased}.adsk-viewing-viewer .calibration-button{margin-top:15px}.adsk-viewing-viewer .calibration-button-left{width:calc(50% - 15px);margin-right:5px !important;display:inline-block}.adsk-viewing-viewer .calibration-button-right{width:calc(50% - 15px);margin-left:5px !important;display:inline-block}.adsk-viewing-viewer .calibration-line{position:absolute;display:block;top:0;left:0;pointer-events:none;z-index:0}.adsk-viewing-viewer .calibration-label{display:none;position:absolute;pointer-events:none;text-align:"center";vertical-align:middle;cursor:default;padding:2px;color:#000;background:#fff;border-radius:10px;-webkit-transform-origin:50% 53%}.adsk-viewing-viewer .calibration-label-text{display:inline-block;pointer-events:none;text-align:"center";vertical-align:middle;font-size:12px;cursor:default;padding:2px;color:#000;background:#fff;border-bottom:1px dashed #000;text-decoration:none;text-transform:uppercase;-webkit-font-smoothing:antialiased}.adsk-viewing-viewer .calibration-label-text:hover{color:#039be5;border-bottom:1px dashed #039be5}.adsk-viewing-viewer .calibration-label.visible{display:block}.adsk-viewing-viewer .calibration-endpoint:hover.calibration-endpoint.enable-hover,.adsk-viewing-viewer .calibration-endpoint.edit{background-color:#039be5}.adsk-viewing-viewer .calibration-endpoint:hover.calibration-endpoint.enable-hover>*,.adsk-viewing-viewer .calibration-endpoint.edit>*{color:#fff}.adsk-viewing-viewer .calibration-endpoint.editable{pointer-events:all}.adsk-viewing-viewer .calibration-endpoint{display:none;position:absolute;cursor:move;pointer-events:none;width:30px;height:30px;background-color:#fff;box-shadow:0 4px 8px 0 rgba(0,0,0,.24),0 0 8px 0 rgba(0,0,0,.12);-moz-border-radius:50px;-webkit-border-radius:50px;border-radius:50px;justify-content:center;align-items:center;text-align:center}.adsk-viewing-viewer .calibration-endpoint.visible{display:block}.adsk-viewing-viewer .calibration-endpoint-text{display:inline-block;font-size:14px;vertical-align:middle;cursor:default;margin:5px 5px 5px 5px;vertical-align:middle;text-align:center;color:#039be5;text-decoration:none;text-transform:uppercase;pointer-events:none}.adsk-viewing-viewer .calibration-panel .docking-panel-footer{padding:16px 24px;display:flex;justify-content:flex-end;text-align:center;position:relative;height:auto}.adsk-viewing-viewer .calibration-panel .docking-panel-footer .docking-panel-secondary-button,.adsk-viewing-viewer .calibration-panel .docking-panel-footer .docking-panel-primary-button{padding:0px 16px;margin:0px 0px 0px 8px;font-size:14px}.adsk-viewing-viewer .calibration-panel .docking-panel-title{padding-top:19px;padding-bottom:19px}.adsk-viewing-viewer .calibration-panel .docking-panel-close{margin-top:7.5px}',"",{version:3,sources:["webpack://./extensions/Measure/Calibration.css"],names:[],mappings:"AAAA,WAAW,8BAA8B,CAAC,+1HAA+1H,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,uDAAuD,8BAA8B,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,aAAa,CAAC,eAAe,CAAC,UAAU,CAAC,mBAAmB,CAAC,kCAAkC,CAAC,iCAAiC,CAAC,8CAA8C,WAAW,CAAC,wCAAwC,sBAAsB,CAAC,qBAAqB,CAAC,WAAW,CAAC,WAAW,CAAC,SAAS,CAAC,2DAA2D,iBAAiB,CAAC,kBAAkB,CAAC,eAAe,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,yHAAyH,UAAU,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,qIAAqI,UAAU,CAAC,uBAAuB,CAAC,WAAW,CAAC,cAAc,CAAC,oEAAoE,WAAW,CAAC,sEAAsE,UAAU,CAAC,qBAAqB,CAAC,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,uEAAuE,WAAW,CAAC,cAAc,CAAC,qDAAqD,gBAAgB,CAAC,6DAA6D,UAAU,CAAC,0IAA0I,uBAAuB,CAAC,QAAQ,CAAC,uCAAuC,eAAe,CAAC,yBAAyB,CAAC,0BAA0B,CAAC,cAAc,CAAC,kCAAkC,CAAC,yCAAyC,eAAe,CAAC,8CAA8C,sBAAsB,CAAC,2BAA2B,CAAC,oBAAoB,CAAC,+CAA+C,sBAAsB,CAAC,0BAA0B,CAAC,oBAAoB,CAAC,uCAAuC,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC,wCAAwC,YAAY,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,cAAc,CAAC,WAAW,CAAC,UAAU,CAAC,eAAe,CAAC,kBAAkB,CAAC,gCAAgC,CAAC,6CAA6C,oBAAoB,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,cAAc,CAAC,cAAc,CAAC,WAAW,CAAC,UAAU,CAAC,eAAe,CAAC,6BAA6B,CAAC,oBAAoB,CAAC,wBAAwB,CAAC,kCAAkC,CAAC,mDAAmD,aAAa,CAAC,gCAAgC,CAAC,gDAAgD,aAAa,CAAC,mIAAmI,wBAAwB,CAAC,uIAAuI,UAAU,CAAC,oDAAoD,kBAAkB,CAAC,2CAA2C,YAAY,CAAC,iBAAiB,CAAC,WAAW,CAAC,mBAAmB,CAAC,UAAU,CAAC,WAAW,CAAC,qBAAqB,CAAC,gEAAgE,CAAC,uBAAuB,CAAC,0BAA0B,CAAC,kBAAkB,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,mDAAmD,aAAa,CAAC,gDAAgD,oBAAoB,CAAC,cAAc,CAAC,qBAAqB,CAAC,cAAc,CAAC,sBAAsB,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,aAAa,CAAC,oBAAoB,CAAC,wBAAwB,CAAC,mBAAmB,CAAC,8DAA8D,iBAAiB,CAAC,YAAY,CAAC,wBAAwB,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,WAAW,CAAC,0LAA0L,gBAAgB,CAAC,sBAAsB,CAAC,cAAc,CAAC,6DAA6D,gBAAgB,CAAC,mBAAmB,CAAC,6DAA6D,gBAAgB",sourcesContent:['@font-face{font-family:"calibration-icon";src:url("data:application/octet-stream;base64,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") format("woff");font-weight:normal;font-style:normal}[class^=calibration-icon],[class*=" calibration-icon"]{font-family:"calibration-icon";font-style:normal;font-weight:normal;font-variant:normal;line-height:1;padding-top:2px;speak:none;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.adsk-viewing-viewer .calibration-icon:before{content:"a"}.adsk-viewing-viewer .calibration-panel{left:calc(50% - 190px);top:calc(50% - 145px);width:380px;height:auto;z-index:4}.adsk-viewing-viewer .calibration-panel .calibration-table{padding-left:24px;padding-right:24px;margin-top:12px;margin-bottom:12px;box-sizing:border-box}.adsk-viewing-viewer .measure-settings-popup .option-drop-down,.adsk-viewing-viewer .calibration-panel .option-drop-down{width:100%;padding-right:0px;box-sizing:border-box}.adsk-viewing-viewer .measure-settings-popup .adsk-lmv-tftable tr td,.adsk-viewing-viewer .calibration-panel .adsk-lmv-tftable tr td{width:auto;padding:2px 0px 2px 0px;height:56px;font-size:14px}.adsk-viewing-viewer .calibration-panel .adsk-lmv-tftable tr td div{padding:0px}.adsk-viewing-viewer .calibration-panel .adsk-lmv-tftable tr td input{margin:0px;box-sizing:border-box;width:100%;height:36px;font-size:14px}.adsk-viewing-viewer .calibration-panel .adsk-lmv-tftable tr td select{height:36px;font-size:14px}.adsk-viewing-viewer .measure-settings-popup .switch{margin-left:25px}.adsk-viewing-viewer .measure-settings-popup .switch .slider{width:26px}.adsk-viewing-viewer .calibration-textbox::-webkit-inner-spin-button,.adsk-viewing-viewer .calibration-textbox::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.adsk-viewing-viewer .calibration-text{text-align:left;padding:6px 10px 6px 10px;margin:20px 20px 14px 20px;font-size:14px;-webkit-font-smoothing:antialiased}.adsk-viewing-viewer .calibration-button{margin-top:15px}.adsk-viewing-viewer .calibration-button-left{width:calc(50% - 15px);margin-right:5px !important;display:inline-block}.adsk-viewing-viewer .calibration-button-right{width:calc(50% - 15px);margin-left:5px !important;display:inline-block}.adsk-viewing-viewer .calibration-line{position:absolute;display:block;top:0;left:0;pointer-events:none;z-index:0}.adsk-viewing-viewer .calibration-label{display:none;position:absolute;pointer-events:none;text-align:"center";vertical-align:middle;cursor:default;padding:2px;color:#000;background:#fff;border-radius:10px;-webkit-transform-origin:50% 53%}.adsk-viewing-viewer .calibration-label-text{display:inline-block;pointer-events:none;text-align:"center";vertical-align:middle;font-size:12px;cursor:default;padding:2px;color:#000;background:#fff;border-bottom:1px dashed #000;text-decoration:none;text-transform:uppercase;-webkit-font-smoothing:antialiased}.adsk-viewing-viewer .calibration-label-text:hover{color:#039be5;border-bottom:1px dashed #039be5}.adsk-viewing-viewer .calibration-label.visible{display:block}.adsk-viewing-viewer .calibration-endpoint:hover.calibration-endpoint.enable-hover,.adsk-viewing-viewer .calibration-endpoint.edit{background-color:#039be5}.adsk-viewing-viewer .calibration-endpoint:hover.calibration-endpoint.enable-hover>*,.adsk-viewing-viewer .calibration-endpoint.edit>*{color:#fff}.adsk-viewing-viewer .calibration-endpoint.editable{pointer-events:all}.adsk-viewing-viewer .calibration-endpoint{display:none;position:absolute;cursor:move;pointer-events:none;width:30px;height:30px;background-color:#fff;box-shadow:0 4px 8px 0 rgba(0,0,0,.24),0 0 8px 0 rgba(0,0,0,.12);-moz-border-radius:50px;-webkit-border-radius:50px;border-radius:50px;justify-content:center;align-items:center;text-align:center}.adsk-viewing-viewer .calibration-endpoint.visible{display:block}.adsk-viewing-viewer .calibration-endpoint-text{display:inline-block;font-size:14px;vertical-align:middle;cursor:default;margin:5px 5px 5px 5px;vertical-align:middle;text-align:center;color:#039be5;text-decoration:none;text-transform:uppercase;pointer-events:none}.adsk-viewing-viewer .calibration-panel .docking-panel-footer{padding:16px 24px;display:flex;justify-content:flex-end;text-align:center;position:relative;height:auto}.adsk-viewing-viewer .calibration-panel .docking-panel-footer .docking-panel-secondary-button,.adsk-viewing-viewer .calibration-panel .docking-panel-footer .docking-panel-primary-button{padding:0px 16px;margin:0px 0px 0px 8px;font-size:14px}.adsk-viewing-viewer .calibration-panel .docking-panel-title{padding-top:19px;padding-bottom:19px}.adsk-viewing-viewer .calibration-panel .docking-panel-close{margin-top:7.5px}'],sourceRoot:""}]);const r=o},4660:(e,t,i)=>{"use strict";i.d(t,{A:()=>r});var n=i(1354),a=i.n(n),s=i(6314),o=i.n(s)()(a());o.push([e.id,'.adsk-viewing-viewer .measure-length:hover.measure-length.enable-hover{box-shadow:0 0 16px 3px rgba(0,117,210,.7);-webkit-box-shadow:0 0 16px 3px rgba(0,117,210,.7);-moz-box-shadow:0 0 16px 3px rgba(0,117,210,.7)}.adsk-viewing-viewer .measure-length{display:none;position:absolute;height:19px;left:0px;top:0px;padding:2px 0 2px 0;background-color:#009bea;box-shadow:0px 1px 3px 1px rgba(0,0,0,.25);color:#f4f4f4;font-size:12px;text-align:center;line-height:1.2;white-space:nowrap;border-radius:8px;pointer-events:none;cursor:pointer;z-index:2;-webkit-tap-highlight-color:rgba(0,0,0,0)}.adsk-viewing-viewer .measure-length.visible{display:block}.adsk-viewing-viewer .measure-length.fetching-topology{background-color:rgba(34,34,34,.8);box-shadow:0 .5px 1.5px 0 rgba(0,0,0,.3)}.adsk-viewing-viewer .measure-length-text{display:inline-block;margin:0 5px 0 5px;vertical-align:middle;font-size:16px;pointer-events:none}.adsk-viewing-viewer .measure-delta-text{margin:0 5px 0 5px;align-self:center;font-size:14px;overflow:hidden;white-space:nowrap;height:16px;line-height:16px;vertical-align:middle;pointer-events:none}.adsk-viewing-viewer .measure-length-button{display:inline-block;width:16px;height:16px;font-size:16px;float:right;color:#fff;opacity:.7}.adsk-viewing-viewer .measure-length-button:hover{background-color:rgba(166,194,255,.7);-webkit-transition:all .2s ease;-moz-transition:all .2s ease;-ms-transition:all .2s ease;-o-transition:all .2s ease;transition:all .2s ease}.adsk-viewing-viewer .measure-label:hover.measure-label.enable-hover,.adsk-viewing-viewer .measure-label.on-edit{box-shadow:0 0 4px 4px #0d69ca;-webkit-box-shadow:0 0 4px 4px #0d69ca;-moz-box-shadow:0 0 4px 4px #0d69ca}.adsk-viewing-viewer .measure-label.editable{pointer-events:all}.adsk-viewing-viewer .measure-label{display:none;position:absolute;width:7px;height:7px;cursor:move;pointer-events:none;border-radius:100px}.adsk-viewing-viewer .measure-label-hit-area{display:inline-block;position:absolute;width:44px;height:44px;left:-22px;top:-22px;border-radius:100px;z-index:2}.adsk-viewing-viewer .measure-label-icon{display:inline-block;position:absolute;width:7px;height:7px;left:-2px;top:-2px;background-color:#009bea;border-style:solid;border-width:2px;border-color:#fff;border-radius:100px;box-shadow:0 2px 5px 0 #182a3d;z-index:2}.adsk-viewing-viewer .measure-label.visible{display:block}.adsk-viewing-viewer .measure-label-text{display:inline-block;margin:0px 5px 0px 5px;vertical-align:middle}.adsk-viewing-viewer .measure-horizontal-divider{height:1px;border-top:1px solid rgba(200,200,200,.8)}.adsk-viewing-viewer .measure-submenu-select{display:block;position:relative;width:calc(100% - 40px);padding:10px 20px 0px 20px;opacity:.3}.adsk-viewing-viewer .option-drop-down:disabled{opacity:.3}.adsk-viewing-viewer .measure-submenu-selectlabel{position:relative;display:inline-block;padding-right:20px;padding-bottom:4px}.adsk-viewing-viewer .measure-results{position:relative;display:block;padding:5px 0px 10px 30px}.adsk-viewing-viewer .measure-result-label{display:inline-block;padding-right:10px}.adsk-viewing-viewer .measure-result-number{display:inline-block}.adsk-viewing-viewer .measure-delta-collapse{position:absolute;right:20px;display:inline-block;background-color:rgba(255,255,255,.12);margin:0px 4px 0px 4px;padding:0px 4px 0px 4px;cursor:pointer;text-align:center}.adsk-viewing-viewer .measure-delta-collapse:hover{background-color:rgba(166,194,255,.7);-webkit-transition:all .2s ease;-moz-transition:all .2s ease;-ms-transition:all .2s ease;-o-transition:all .2s ease;transition:all .2s ease}.adsk-viewing-viewer .measure-selection-repick{position:absolute;right:20px;display:inline-block;background-color:rgba(255,255,255,.12);margin:4px 4px 4px 4px;padding:4px 4px 4px 4px;cursor:pointer;text-align:center}.adsk-viewing-viewer .measure-selection-repick:hover{background-color:rgba(166,194,255,.7);-webkit-transition:all .2s ease;-moz-transition:all .2s ease;-ms-transition:all .2s ease;-o-transition:all .2s ease;transition:all .2s ease}.adsk-viewing-viewer .measure-restart{margin:10px 20px 15px 20px;padding:6px 10px 6px 10px;width:calc(100% - 55px);cursor:pointer;text-align:center;border-style:solid;border-width:1px;border-color:rgba(255,255,255,.2);border-radius:3px}.adsk-viewing-viewer .docking-panel:hover .measure-restart{background-color:rgba(255,255,255,.12)}.adsk-viewing-viewer .docking-panel .measure-restart:hover{background-color:rgba(166,194,255,.7);-webkit-transition:all .2s ease;-moz-transition:all .2s ease;-ms-transition:all .2s ease;-o-transition:all .2s ease;transition:all .2s ease}.adsk-viewing-viewer .measure-panel-title{padding-top:0px;padding-left:20px;margin-top:10px}.adsk-viewing-viewer .measure-panel-title:hover{cursor:pointer}.adsk-viewing-viewer .measure-panel-title.collapsed{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyBpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBXaW5kb3dzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkEwMDhBMzY4QTYyODExRTM5REY0Q0MwMTM3MTVFOTMzIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkEwMDhBMzY5QTYyODExRTM5REY0Q0MwMTM3MTVFOTMzIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QTAwOEEzNjZBNjI4MTFFMzlERjRDQzAxMzcxNUU5MzMiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QTAwOEEzNjdBNjI4MTFFMzlERjRDQzAxMzcxNUU5MzMiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6WHWu4AAAAcElEQVR42mL8//8/AzmAiYFMgEtjGSFDcUmGAfEEIOYix6lWQLwUiGXJ8SNI00IgNiIncPiAeCoQ+5ITqsxQA+CAhQhN34C4AoiPkaLxGRAXAfEdUvx4DohjsGkCA1CSw4LrgZgVhxwYM9I9rQIEGACZNDs01yUXlAAAAABJRU5ErkJggg==);background-repeat:no-repeat}.adsk-viewing-viewer .measure-panel-title.expanded{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyBpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBXaW5kb3dzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkE3QzFFQUQ1QTYyODExRTM5NzE2RjcyN0QxQjg0QTREIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkE3QzFFQUQ2QTYyODExRTM5NzE2RjcyN0QxQjg0QTREIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QTdDMUVBRDNBNjI4MTFFMzk3MTZGNzI3RDFCODRBNEQiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QTdDMUVBRDRBNjI4MTFFMzk3MTZGNzI3RDFCODRBNEQiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6XuY60AAAARklEQVR42mL8//8/AzmAiYFMQBeNqSg8kB+JwKlAfAZZjIlIm9JJdSpWTYQ04tSETyNeTbg0EtSETSNRmkCAcegkOYAAAwDGjDZHvY373AAAAABJRU5ErkJggg==);background-repeat:no-repeat}.adsk-viewing-viewer .adsk-viewing-viewer .measure-table td{padding:10px 0px 10px 20px}.adsk-viewing-viewer .measure-selection-one-label{display:inline-block;margin:18px 18px 18px 18px;width:16px;height:16px;font-size:16px;float:left;padding:2px;background-color:#03f;border-radius:10px;opacity:.6}.adsk-viewing-viewer .measure-selection-two-label{display:inline-block;margin:18px 18px 18px 18px;width:16px;height:16px;font-size:16px;float:left;padding:2px;background-color:#03f;border-radius:10px;opacity:.6}.adsk-viewing-viewer .measure-repick{display:inline-block;cursor:default;margin:20px 20px 20px 20px;width:16px;height:16px;font-size:16px;float:right;opacity:.5}.adsk-viewing-viewer .measure-repick:hover{opacity:1}.adsk-viewing-viewer .measure-selection-result{display:inline-block;margin:21px 0px 21px 0px}.adsk-viewing-viewer .measure-distance-icon{display:inline-block;margin:20px 2px 20px 2px;font-size:52px;color:#f90;float:left}.adsk-viewing-viewer .measure-angle-icon{display:inline-block;margin:20px 2px 20px 2px;font-size:52px;color:#f90;float:left}.adsk-viewing-viewer .adsk-viewing-viewer .measure-result{font-size:20px;color:#f90;display:inline-block;margin:38px 0px 38px 0px}.adsk-viewing-viewer .measure-initial{font-size:20px;display:inline-block;margin:38px 0px 38px 56px}.adsk-viewing-viewer .measure-settings-button{cursor:default;position:relative;top:20px;right:20px;width:16px;height:16px;font-size:18px;float:right;opacity:.5}.adsk-viewing-viewer .measure-settings-button:hover{opacity:1}.adsk-viewing-viewer .measure-delta-button{position:relative;top:56px;right:4px;width:16px;height:16px;font-size:16px;float:right;opacity:.5;-webkit-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-ms-transform:rotate(-90deg);-o-transform:rotate(-90deg);transform:rotate(-90deg)}.adsk-viewing-viewer .measure-delta-button.rotated{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.adsk-viewing-viewer .measure-delta-button:hover{opacity:1}.adsk-viewing-viewer .measure-delta-result{display:inline-block;margin:0px 0px 20px 0px;padding:0px 0px 0px 56px}.adsk-viewing-viewer .measure-label-axis{display:none;position:absolute;width:16px;height:16px;left:0px;top:0px;background-color:#f4f4f4;border-radius:8px;pointer-events:none}.adsk-viewing-viewer .measure-label-axis-icon.X{background-color:#f12c2c}.adsk-viewing-viewer .measure-label-axis-icon.Y{background-color:#0bb80b}.adsk-viewing-viewer .measure-label-axis-icon.Z{background-color:#2c2cf1}.adsk-viewing-viewer .measure-label-axis-icon{width:20px;height:18px;color:#f4f4f4;border-radius:8px 0 0 8px;font-size:12px;padding-top:4px;line-height:15px;text-align:center;margin-left:-2px}.adsk-viewing-viewer .measure-label-axis-delta.enableTransition{transition:opacity .1s linear}.adsk-viewing-viewer .measure-label-axis-delta{display:none;position:absolute;font-size:18px;left:0px;top:0px;background-color:#fff;pointer-events:none;opacity:0;border-radius:8px;box-shadow:0px 1px 3px 1px rgba(0,0,0,.25)}.adsk-viewing-viewer .measure-label-axis.visible{display:block}.adsk-viewing-viewer .measure-label-axis-delta.visible{display:flex}.adsk-viewing-viewer .measure-label-axis-x{color:#f12c2c}.adsk-viewing-viewer .measure-label-axis-y{color:#0bb80b}.adsk-viewing-viewer .measure-label-axis-z{color:#2c2cf1}.adsk-viewing-viewer .magnifying-glass.visible{display:block}.adsk-viewing-viewer .magnifying-glass{position:absolute;display:none;-moz-border-radius:100%;-webkit-border-radius:100%;border-radius:100%;background:rgba(0,0,0,0);box-shadow:2px 2px 4px rgba(0,0,0,.5),inset 2px 2px 4px rgba(0,0,0,.5);-webkit-box-shadow:2px 2px 4px rgba(0,0,0,.5),inset 2px 2px 4px rgba(0,0,0,.5);-moz-box-shadow:2px 2px 4px rgba(0,0,0,.5),inset 2px 2px 4px rgba(0,0,0,.5);z-index:4}.adsk-viewing-viewer .measure-fetching-topology{display:inline-block;width:10px;height:10px;background:url("data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 width%3D%2210%22 height%3D%2210%22 viewBox%3D%220 0 10 10%22%3E %3Cdefs%3E %3ClinearGradient id%3D%22linear-gradient%22 y1%3D%225%22 x2%3D%2210%22 y2%3D%225%22 gradientUnits%3D%22userSpaceOnUse%22%3E %3Cstop offset%3D%220%22 stop-color%3D%22%23fff%22 stop-opacity%3D%220%22%2F%3E %3Cstop offset%3D%221%22 stop-color%3D%22%23fff%22%2F%3E %3C%2FlinearGradient%3E %3C%2Fdefs%3E %3Ctitle%3EAsset 6%3C%2Ftitle%3E %3Cg id%3D%22Layer_2%22 data-name%3D%22Layer 2%22%3E %3Cg id%3D%22finals_24px%22%3E %3Cpath d%3D%22M5%2C10A5%2C5%2C0%2C0%2C1%2C0%2C5%2C1.2%2C1.2%2C0%2C0%2C1%2C2.3%2C5%2C2.7%2C2.7%2C0%2C1%2C0%2C5%2C2.3%2C1.2%2C1.2%2C0%2C0%2C1%2C5%2C0%2C5%2C5%2C0%2C0%2C1%2C5%2C10Z%22 fill%3D%22url(%23linear-gradient)%22%2F%3E %3C%2Fg%3E %3C%2Fg%3E%3C%2Fsvg%3E");margin:3px 0px -2px 3px;animation:measure-topology-fetching-anim 1.4s infinite linear;-webkit-animation:measure-topology-fetching-anim 1.4s infinite linear}@keyframes measure-topology-fetching-anim{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes measure-topology-fetching-anim{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.adsk-viewing-viewer .docking-panel.measure-settings-popup{display:flex;justify-content:center;flex-direction:column;bottom:120%;box-sizing:border-box;text-align:left;position:absolute;padding-top:15px;padding-bottom:15px}.adsk-viewing-viewer .adsk-toolbar-vertical .docking-panel.measure-settings-popup{right:120%;bottom:unset;height:max-content;width:max-content}.adsk-viewing-viewer .docking-panel.measure-settings-popup .adsk-lmv-tftable tr.switch-slider-row td{width:auto;padding-bottom:0px;padding-top:0px;vertical-align:inherit}.adsk-viewing-viewer .docking-panel.measure-settings-popup.hide{display:none}.adsk-viewing-viewer .measure-settings-popup tbody{top:15px}.adsk-toolbar .measure-toolbar-seperator{height:18px;width:1px;background-color:#999;float:left;margin:16px 5px}.adsk-toolbar.adsk-toolbar-vertical .measure-toolbar-seperator{height:1px;width:18px;margin:5px 16px}.adsk-viewing-viewer .measure-selection-area{display:block;position:absolute;cursor:pointer;z-index:1;-webkit-tap-highlight-color:rgba(0,0,0,0)}.adsk-viewing-viewer .adsk-toolbar.adsk-toolbar-vertical .adsk-label-button{padding:0px;width:40px}.adsk-viewing-viewer .adsk-toolbar.adsk-toolbar-vertical .adsk-label-button>label{padding:10px 0px}',"",{version:3,sources:["webpack://./extensions/Measure/Measure.css"],names:[],mappings:"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",sourcesContent:[".adsk-viewing-viewer .measure-length:hover.measure-length.enable-hover{box-shadow:0 0 16px 3px rgba(0,117,210,.7);-webkit-box-shadow:0 0 16px 3px rgba(0,117,210,.7);-moz-box-shadow:0 0 16px 3px rgba(0,117,210,.7)}.adsk-viewing-viewer .measure-length{display:none;position:absolute;height:19px;left:0px;top:0px;padding:2px 0 2px 0;background-color:#009bea;box-shadow:0px 1px 3px 1px rgba(0,0,0,.25);color:#f4f4f4;font-size:12px;text-align:center;line-height:1.2;white-space:nowrap;border-radius:8px;pointer-events:none;cursor:pointer;z-index:2;-webkit-tap-highlight-color:rgba(0,0,0,0)}.adsk-viewing-viewer .measure-length.visible{display:block}.adsk-viewing-viewer .measure-length.fetching-topology{background-color:rgba(34,34,34,.8);box-shadow:0 .5px 1.5px 0 rgba(0,0,0,.3)}.adsk-viewing-viewer .measure-length-text{display:inline-block;margin:0 5px 0 5px;vertical-align:middle;font-size:16px;pointer-events:none}.adsk-viewing-viewer .measure-delta-text{margin:0 5px 0 5px;align-self:center;font-size:14px;overflow:hidden;white-space:nowrap;height:16px;line-height:16px;vertical-align:middle;pointer-events:none}.adsk-viewing-viewer .measure-length-button{display:inline-block;width:16px;height:16px;font-size:16px;float:right;color:#fff;opacity:.7}.adsk-viewing-viewer .measure-length-button:hover{background-color:rgba(166,194,255,.7);-webkit-transition:all .2s ease;-moz-transition:all .2s ease;-ms-transition:all .2s ease;-o-transition:all .2s ease;transition:all .2s ease}.adsk-viewing-viewer .measure-label:hover.measure-label.enable-hover,.adsk-viewing-viewer .measure-label.on-edit{box-shadow:0 0 4px 4px #0d69ca;-webkit-box-shadow:0 0 4px 4px #0d69ca;-moz-box-shadow:0 0 4px 4px #0d69ca}.adsk-viewing-viewer .measure-label.editable{pointer-events:all}.adsk-viewing-viewer .measure-label{display:none;position:absolute;width:7px;height:7px;cursor:move;pointer-events:none;border-radius:100px}.adsk-viewing-viewer .measure-label-hit-area{display:inline-block;position:absolute;width:44px;height:44px;left:-22px;top:-22px;border-radius:100px;z-index:2}.adsk-viewing-viewer .measure-label-icon{display:inline-block;position:absolute;width:7px;height:7px;left:-2px;top:-2px;background-color:#009bea;border-style:solid;border-width:2px;border-color:#fff;border-radius:100px;box-shadow:0 2px 5px 0 #182a3d;z-index:2}.adsk-viewing-viewer .measure-label.visible{display:block}.adsk-viewing-viewer .measure-label-text{display:inline-block;margin:0px 5px 0px 5px;vertical-align:middle}.adsk-viewing-viewer .measure-horizontal-divider{height:1px;border-top:1px solid rgba(200,200,200,.8)}.adsk-viewing-viewer .measure-submenu-select{display:block;position:relative;width:calc(100% - 40px);padding:10px 20px 0px 20px;opacity:.3}.adsk-viewing-viewer .option-drop-down:disabled{opacity:.3}.adsk-viewing-viewer .measure-submenu-selectlabel{position:relative;display:inline-block;padding-right:20px;padding-bottom:4px}.adsk-viewing-viewer .measure-results{position:relative;display:block;padding:5px 0px 10px 30px}.adsk-viewing-viewer .measure-result-label{display:inline-block;padding-right:10px}.adsk-viewing-viewer .measure-result-number{display:inline-block}.adsk-viewing-viewer .measure-delta-collapse{position:absolute;right:20px;display:inline-block;background-color:rgba(255,255,255,.12);margin:0px 4px 0px 4px;padding:0px 4px 0px 4px;cursor:pointer;text-align:center}.adsk-viewing-viewer .measure-delta-collapse:hover{background-color:rgba(166,194,255,.7);-webkit-transition:all .2s ease;-moz-transition:all .2s ease;-ms-transition:all .2s ease;-o-transition:all .2s ease;transition:all .2s ease}.adsk-viewing-viewer .measure-selection-repick{position:absolute;right:20px;display:inline-block;background-color:rgba(255,255,255,.12);margin:4px 4px 4px 4px;padding:4px 4px 4px 4px;cursor:pointer;text-align:center}.adsk-viewing-viewer .measure-selection-repick:hover{background-color:rgba(166,194,255,.7);-webkit-transition:all .2s ease;-moz-transition:all .2s ease;-ms-transition:all .2s ease;-o-transition:all .2s ease;transition:all .2s ease}.adsk-viewing-viewer .measure-restart{margin:10px 20px 15px 20px;padding:6px 10px 6px 10px;width:calc(100% - 55px);cursor:pointer;text-align:center;border-style:solid;border-width:1px;border-color:rgba(255,255,255,.2);border-radius:3px}.adsk-viewing-viewer .docking-panel:hover .measure-restart{background-color:rgba(255,255,255,.12)}.adsk-viewing-viewer .docking-panel .measure-restart:hover{background-color:rgba(166,194,255,.7);-webkit-transition:all .2s ease;-moz-transition:all .2s ease;-ms-transition:all .2s ease;-o-transition:all .2s ease;transition:all .2s ease}.adsk-viewing-viewer .measure-panel-title{padding-top:0px;padding-left:20px;margin-top:10px}.adsk-viewing-viewer .measure-panel-title:hover{cursor:pointer}.adsk-viewing-viewer .measure-panel-title.collapsed{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyBpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBXaW5kb3dzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkEwMDhBMzY4QTYyODExRTM5REY0Q0MwMTM3MTVFOTMzIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkEwMDhBMzY5QTYyODExRTM5REY0Q0MwMTM3MTVFOTMzIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QTAwOEEzNjZBNjI4MTFFMzlERjRDQzAxMzcxNUU5MzMiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QTAwOEEzNjdBNjI4MTFFMzlERjRDQzAxMzcxNUU5MzMiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6WHWu4AAAAcElEQVR42mL8//8/AzmAiYFMgEtjGSFDcUmGAfEEIOYix6lWQLwUiGXJ8SNI00IgNiIncPiAeCoQ+5ITqsxQA+CAhQhN34C4AoiPkaLxGRAXAfEdUvx4DohjsGkCA1CSw4LrgZgVhxwYM9I9rQIEGACZNDs01yUXlAAAAABJRU5ErkJggg==);background-repeat:no-repeat}.adsk-viewing-viewer .measure-panel-title.expanded{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyBpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBXaW5kb3dzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkE3QzFFQUQ1QTYyODExRTM5NzE2RjcyN0QxQjg0QTREIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkE3QzFFQUQ2QTYyODExRTM5NzE2RjcyN0QxQjg0QTREIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QTdDMUVBRDNBNjI4MTFFMzk3MTZGNzI3RDFCODRBNEQiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QTdDMUVBRDRBNjI4MTFFMzk3MTZGNzI3RDFCODRBNEQiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6XuY60AAAARklEQVR42mL8//8/AzmAiYFMQBeNqSg8kB+JwKlAfAZZjIlIm9JJdSpWTYQ04tSETyNeTbg0EtSETSNRmkCAcegkOYAAAwDGjDZHvY373AAAAABJRU5ErkJggg==);background-repeat:no-repeat}.adsk-viewing-viewer .adsk-viewing-viewer .measure-table td{padding:10px 0px 10px 20px}.adsk-viewing-viewer .measure-selection-one-label{display:inline-block;margin:18px 18px 18px 18px;width:16px;height:16px;font-size:16px;float:left;padding:2px;background-color:#03f;border-radius:10px;opacity:.6}.adsk-viewing-viewer .measure-selection-two-label{display:inline-block;margin:18px 18px 18px 18px;width:16px;height:16px;font-size:16px;float:left;padding:2px;background-color:#03f;border-radius:10px;opacity:.6}.adsk-viewing-viewer .measure-repick{display:inline-block;cursor:default;margin:20px 20px 20px 20px;width:16px;height:16px;font-size:16px;float:right;opacity:.5}.adsk-viewing-viewer .measure-repick:hover{opacity:1}.adsk-viewing-viewer .measure-selection-result{display:inline-block;margin:21px 0px 21px 0px}.adsk-viewing-viewer .measure-distance-icon{display:inline-block;margin:20px 2px 20px 2px;font-size:52px;color:#f90;float:left}.adsk-viewing-viewer .measure-angle-icon{display:inline-block;margin:20px 2px 20px 2px;font-size:52px;color:#f90;float:left}.adsk-viewing-viewer .adsk-viewing-viewer .measure-result{font-size:20px;color:#f90;display:inline-block;margin:38px 0px 38px 0px}.adsk-viewing-viewer .measure-initial{font-size:20px;display:inline-block;margin:38px 0px 38px 56px}.adsk-viewing-viewer .measure-settings-button{cursor:default;position:relative;top:20px;right:20px;width:16px;height:16px;font-size:18px;float:right;opacity:.5}.adsk-viewing-viewer .measure-settings-button:hover{opacity:1}.adsk-viewing-viewer .measure-delta-button{position:relative;top:56px;right:4px;width:16px;height:16px;font-size:16px;float:right;opacity:.5;-webkit-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-ms-transform:rotate(-90deg);-o-transform:rotate(-90deg);transform:rotate(-90deg)}.adsk-viewing-viewer .measure-delta-button.rotated{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.adsk-viewing-viewer .measure-delta-button:hover{opacity:1}.adsk-viewing-viewer .measure-delta-result{display:inline-block;margin:0px 0px 20px 0px;padding:0px 0px 0px 56px}.adsk-viewing-viewer .measure-label-axis{display:none;position:absolute;width:16px;height:16px;left:0px;top:0px;background-color:#f4f4f4;border-radius:8px;pointer-events:none}.adsk-viewing-viewer .measure-label-axis-icon.X{background-color:#f12c2c}.adsk-viewing-viewer .measure-label-axis-icon.Y{background-color:#0bb80b}.adsk-viewing-viewer .measure-label-axis-icon.Z{background-color:#2c2cf1}.adsk-viewing-viewer .measure-label-axis-icon{width:20px;height:18px;color:#f4f4f4;border-radius:8px 0 0 8px;font-size:12px;padding-top:4px;line-height:15px;text-align:center;margin-left:-2px}.adsk-viewing-viewer .measure-label-axis-delta.enableTransition{transition:opacity .1s linear}.adsk-viewing-viewer .measure-label-axis-delta{display:none;position:absolute;font-size:18px;left:0px;top:0px;background-color:#fff;pointer-events:none;opacity:0;border-radius:8px;box-shadow:0px 1px 3px 1px rgba(0,0,0,.25)}.adsk-viewing-viewer .measure-label-axis.visible{display:block}.adsk-viewing-viewer .measure-label-axis-delta.visible{display:flex}.adsk-viewing-viewer .measure-label-axis-x{color:#f12c2c}.adsk-viewing-viewer .measure-label-axis-y{color:#0bb80b}.adsk-viewing-viewer .measure-label-axis-z{color:#2c2cf1}.adsk-viewing-viewer .magnifying-glass.visible{display:block}.adsk-viewing-viewer .magnifying-glass{position:absolute;display:none;-moz-border-radius:100%;-webkit-border-radius:100%;border-radius:100%;background:rgba(0,0,0,0);box-shadow:2px 2px 4px rgba(0,0,0,.5),inset 2px 2px 4px rgba(0,0,0,.5);-webkit-box-shadow:2px 2px 4px rgba(0,0,0,.5),inset 2px 2px 4px rgba(0,0,0,.5);-moz-box-shadow:2px 2px 4px rgba(0,0,0,.5),inset 2px 2px 4px rgba(0,0,0,.5);z-index:4}.adsk-viewing-viewer .measure-fetching-topology{display:inline-block;width:10px;height:10px;background:url(res/icon-spinner-sm.svg);margin:3px 0px -2px 3px;animation:measure-topology-fetching-anim 1.4s infinite linear;-webkit-animation:measure-topology-fetching-anim 1.4s infinite linear}@keyframes measure-topology-fetching-anim{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes measure-topology-fetching-anim{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.adsk-viewing-viewer .docking-panel.measure-settings-popup{display:flex;justify-content:center;flex-direction:column;bottom:120%;box-sizing:border-box;text-align:left;position:absolute;padding-top:15px;padding-bottom:15px}.adsk-viewing-viewer .adsk-toolbar-vertical .docking-panel.measure-settings-popup{right:120%;bottom:unset;height:max-content;width:max-content}.adsk-viewing-viewer .docking-panel.measure-settings-popup .adsk-lmv-tftable tr.switch-slider-row td{width:auto;padding-bottom:0px;padding-top:0px;vertical-align:inherit}.adsk-viewing-viewer .docking-panel.measure-settings-popup.hide{display:none}.adsk-viewing-viewer .measure-settings-popup tbody{top:15px}.adsk-toolbar .measure-toolbar-seperator{height:18px;width:1px;background-color:#999;float:left;margin:16px 5px}.adsk-toolbar.adsk-toolbar-vertical .measure-toolbar-seperator{height:1px;width:18px;margin:5px 16px}.adsk-viewing-viewer .measure-selection-area{display:block;position:absolute;cursor:pointer;z-index:1;-webkit-tap-highlight-color:rgba(0,0,0,0)}.adsk-viewing-viewer .adsk-toolbar.adsk-toolbar-vertical .adsk-label-button{padding:0px;width:40px}.adsk-viewing-viewer .adsk-toolbar.adsk-toolbar-vertical .adsk-label-button>label{padding:10px 0px}"],sourceRoot:""}]);const r=o},6314:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var i="",n=void 0!==t[5];return t[4]&&(i+="@supports (".concat(t[4],") {")),t[2]&&(i+="@media ".concat(t[2]," {")),n&&(i+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),i+=e(t),n&&(i+="}"),t[2]&&(i+="}"),t[4]&&(i+="}"),i})).join("")},t.i=function(e,i,n,a,s){"string"==typeof e&&(e=[[null,e,void 0]]);var o={};if(n)for(var r=0;r0?" ".concat(A[5]):""," {").concat(A[1],"}")),A[5]=s),i&&(A[2]?(A[1]="@media ".concat(A[2]," {").concat(A[1],"}"),A[2]=i):A[2]=i),a&&(A[4]?(A[1]="@supports (".concat(A[4],") {").concat(A[1],"}"),A[4]=a):A[4]="".concat(a)),t.push(A))}},t}},1354:e=>{"use strict";e.exports=function(e){var t=e[1],i=e[3];if(!i)return t;if("function"==typeof btoa){var n=btoa(unescape(encodeURIComponent(JSON.stringify(i)))),a="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(n),s="/*# ".concat(a," */");return[t].concat([s]).join("\n")}return[t].join("\n")}},5072:e=>{"use strict";var t=[];function i(e){for(var i=-1,n=0;n{"use strict";var t={};e.exports=function(e,i){var n=function(e){if(void 0===t[e]){var i=document.querySelector(e);if(window.HTMLIFrameElement&&i instanceof window.HTMLIFrameElement)try{i=i.contentDocument.head}catch(e){i=null}t[e]=i}return t[e]}(e);if(!n)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");n.appendChild(i)}},540:e=>{"use strict";e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},5056:(e,t,i)=>{"use strict";e.exports=function(e){var t=i.nc;t&&e.setAttribute("nonce",t)}},7825:e=>{"use strict";e.exports=function(e){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var t=e.insertStyleElement(e);return{update:function(i){!function(e,t,i){var n="";i.supports&&(n+="@supports (".concat(i.supports,") {")),i.media&&(n+="@media ".concat(i.media," {"));var a=void 0!==i.layer;a&&(n+="@layer".concat(i.layer.length>0?" ".concat(i.layer):""," {")),n+=i.css,a&&(n+="}"),i.media&&(n+="}"),i.supports&&(n+="}");var s=i.sourceMap;s&&"undefined"!=typeof btoa&&(n+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(s))))," */")),t.styleTagTransform(n,e,t.options)}(t,e,i)},remove:function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(t)}}}},1113:e=>{"use strict";e.exports=function(e,t){if(t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}}},t={};function i(n){var a=t[n];if(void 0!==a)return a.exports;var s=t[n]={id:n,exports:{}};return e[n](s,s.exports,i),s.exports}i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},i.d=(e,t)=>{for(var n in t)i.o(t,n)&&!i.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.nc=void 0;var n={};(()=>{"use strict";i.r(n),i.d(n,{MeasureExtension:()=>Ve});var e=Autodesk.Viewing.MeasureCommon;function t(e){this.viewer=e,this.init(),this.restoredMeasurementData=[]}var a=t.prototype;a.getCurrentMeasurement=function(){return this.currentMeasurement},a.getRestoredMeasurementData=function(){return this.restoredMeasurementData.slice()},a.selectMeasurementById=function(e){var t=this.measurementsList[e];return!!t&&(this.changeCurrentMeasurement(t),this.currentMeasurement)},a.createMeasurement=function(t,i){var n=this.measurementsCounter,a=new e.Measurement(t,n,i);return this.measurementsList[n]=a,this.measurementsCounter++,this.changeCurrentMeasurement(a),this.currentMeasurement},a.createMeasurementFromData=function(t,i,n,a){let s=t.options;if(s){s=JSON.parse(JSON.stringify(s));const e=Object.prototype.hasOwnProperty.call(s,"modelId")&&s.modelId?this.viewer.impl.findModel(s.modelId):this.viewer.model,t=e&&e.getData().globalOffset;if(t&&(0!==t.x||0!==t.y||0!==t.z)){const e=e=>{if(e)for(let i=0;i{const e=this.restoredMeasurementData[this.currentMeasurement.id],t=Object.keys(e),i=[];for(let n=0;n0&&delete this.measurementsList[this.currentMeasurement.id]},a.init=function(){this.reset()},a.destroy=function(){this.reset()},a.reset=function(){this.currentMeasurement=null,this.measurementsList={},this.measurementsCounter=0};var s=Autodesk.Viewing,o=s.MeasureCommon,r=function(e,t,i){this.viewer=e,this.setGlobalManager(e.globalManager),this.measurement=t,this.tool=i,this.snapper=i.getSnapper(),this.materialExtensionLine=null,this.materialExtensionFace=null,this.extensionLines=[],this.extensionFaces=[],this.grayOutPlane=[],this.materialPoint=null,this.materialLine=null,this.materialAngle=null,this.materialAngleOutline=null,this.materialGreyOutPlane=null,this.materialFace=null,this.angleArc=null,this.angleOutline=[],this.arcOutline=[],this.arcTip=[],this.showMeasureResult=!1,this.visibleLabels=[],this.overlayName="measure-indicator-overlay-"+(t.id||""),this.xAxis=this.viewer.autocam.getWorldRightVector(),this.yAxis=this.viewer.autocam.getWorldUpVector(),this.zAxis=this.viewer.autocam.getWorldFrontVector()},l=r.prototype;function c(e){function t(e,t,n,a){this.x=e,this.y=t,this.h=n,this.d=function(e,t,n){for(var a=!1,s=1/0,o=0;ot!=d.y>t&&e<(d.x-h.x)*(t-h.y)/(d.y-h.y)+h.x&&(a=!a),s=Math.min(s,i(e,t,h,d))}return(a?1:-1)*Math.sqrt(s)}(e,t,a),this.max=this.d+this.h*Math.SQRT2}function i(e,t,i,n){var a=i.x,s=i.y,o=n.x-a,r=n.y-s;if(0!==o||0!==r){var l=((e-a)*o+(t-s)*r)/(o*o+r*r);l>1?(a=n.x,s=n.y):l>0&&(a+=o*l,s+=r*l)}return(o=e-a)*o+(r=t-s)*r}function n(e,t){if(!(this instanceof n))return new n(e,t);if(this.data=e||[],this.length=this.data.length,this.compare=t||function(e,t){return et?1:0},this.length>0)for(var i=this.length>>1;i>=0;i--)this._down(i)}if(n.prototype={push:function(e){this.data.push(e),this.length++,this._up(this.length-1)},pop:function(){if(0!==this.length){var e=this.data[0];return this.length--,this.length>0&&(this.data[0]=this.data[this.length],this._down(0)),this.data.pop(),e}},peek:function(){return this.data[0]},_up:function(e){for(var t=this.data,i=this.compare,n=t[e];e>0;){var a=e-1>>1,s=t[a];if(i(n,s)>=0)break;t[e]=s,e=a}t[e]=n},_down:function(e){for(var t=this.data,i=this.compare,n=this.length>>1,a=t[e];e=0)break;t[e]=r,e=s}t[e]=a}},3===e.length)return function(e){for(var t=new THREE.Vector3,i=e.length,n=0;no)&&(o=c.x),(!l||c.y>r)&&(r=c.y)}var A=o-a,h=r-s,d=Math.min(A,h),u=d/2,p=new n(null,(function(e,t){return t.max-e.max}));if(0===d)return[a,s];for(var m=a;mb.d&&(b=C);p.length;){var v=p.pop();v.d>b.d&&(b=v),v.max-b.d<=.01||(u=v.h/2,p.push(new t(v.x-u,v.y-u,u,e)),p.push(new t(v.x+u,v.y-u,u,e)),p.push(new t(v.x-u,v.y+u,u,e)),p.push(new t(v.x+u,v.y+u,u,e)))}return{x:b.x,y:b.y}}s.GlobalManagerMixin.call(l),l.init=function(){return!1},l.updateDistance=function(){return!1},l.updateAngle=function(){return!1},l.clear=function(){return!1},l.updateLabelsPosition=function(){return!1},l.renderFromPoints=function(e,t){this.showMeasureResult=t,this.clear();for(var i=1;i<=Object.keys(e).length;i++){const t=e[i].intersection;this.endpoints[i]||this.createEndpoint(i),this.endpoints[i].position=new THREE.Vector3(t.x,t.y,t.z),this.showClick(i)}this.renderRubberbandFromPoints(e),this.updateLabelsPosition()},l.render=function(e,t){this.showMeasureResult=t,this.clear();for(var i=1;i<=Object.keys(e).length;i++)this.measurement.hasPick(i)&&this.renderPick(i);this.renderRubberband(e),this.updateLabelsPosition()},l.changeEndpointOnEditStyle=function(e,t){return!1},l.handleResize=function(){return!1},l.setNoTopology=function(){return!1},l.setFetchingTopology=function(){return!1},l.setTopologyAvailable=function(){return!1},l.clientToCanvasCoords=function(e){var t=this.viewer.impl.getCanvasBoundingClientRect(),i={};return Object.prototype.hasOwnProperty.call(e,"center")?(e.canvasX=i.x=e.center.x-t.left,e.canvasY=i.y=e.center.y-t.top):(e.canvasX=i.x=e.pointers[0].clientX-t.left,e.canvasY=i.y=e.pointers[0].clientY-t.top),i},l.initLabelMobileGestures=function(e,t){var i=this.viewer.toolController.getTool("magnifyingGlass");this.hammer=new s.Hammer.Manager(e,{recognizers:[s.GestureRecognizers.drag,s.GestureRecognizers.singletap],handlePointerEventMouse:!1,inputClass:s.Hammer.TouchInput}),this.onSingleTapBinded=function(e){var i=this.clientToCanvasCoords(e);this.snapper.onMouseDown(i),this.tool.editEndpoint(e,t,this.measurement.id)}.bind(this),this.onDragStartBinded=function(e){var n=this.clientToCanvasCoords(e);this.snapper.onMouseDown(n),this.tool.editEndpoint(e,t,this.measurement.id),this.tool.editByDrag=!0,e.type="press",i.handlePressHold(e),this.tool.handlePressHold(e),e.type="dragstart",i.handleGesture(e),this.tool.handleGesture(e)}.bind(this),this.onDragMoveBinded=function(e){var t=this.clientToCanvasCoords(e);this.snapper.onMouseDown(t),i.handleGesture(e),this.tool.handleGesture(e)}.bind(this),this.onDragEndBinded=function(e){var t=this.clientToCanvasCoords(e);this.snapper.onMouseDown(t),i.handleGesture(e),this.tool.handleGesture(e),e.type="pressup",i.handlePressHold(e),this.tool.handlePressHold(e),this.tool.handleButtonUp(e)}.bind(this),this.hammer.on("singletap",this.onSingleTapBinded),this.hammer.on("dragstart",this.onDragStartBinded),this.hammer.on("dragmove",this.onDragMoveBinded),this.hammer.on("dragend",this.onDragEndBinded)},l.clearLabelMobileGestures=function(){this.hammer&&(this.hammer.off("singletap",this.onSingleTapBinded),this.hammer.off("dragstart",this.onDragStartBinded),this.hammer.off("dragmove",this.onDragMoveBinded),this.hammer.off("dragend",this.onDragEndBinded),this.hammer=null)},l.updateVisibleLabelsArray=function(e,t){if(t)this.visibleLabels.indexOf(e)>-1||this.visibleLabels.push(e);else{var i=this.visibleLabels.indexOf(e);i>-1&&this.visibleLabels.splice(i,1)}},l.hideEndpoints=function(){for(var e in this.endpoints)if(Object.prototype.hasOwnProperty.call(this.endpoints,e)){var t=this.endpoints[e];t.label&&this.hideLabel(t.label)}},l.showEndpoints=function(){for(var e in this.endpoints)if(Object.prototype.hasOwnProperty.call(this.endpoints,e)){var t=this.endpoints[e];this.measurement.hasPick(e)&&t.label&&this.showLabel(t.label)}},l.hideLabel=function(e){e&&(o.safeToggle(e,"visible",!1),this.updateVisibleLabelsArray(e,!1))},l.showLabel=function(e){e&&(o.safeToggle(e,"visible",!0),this.updateVisibleLabelsArray(e,!0))},l.changeEndpointOnEditStyle=function(e,t){this.endpoints[e]&&this.endpoints[e].label&&o.safeToggle(this.endpoints[e].label,"on-edit",t)},l.changeEndpointEditableStyle=function(e,t){this.endpoints[e]&&this.endpoints[e].label&&o.safeToggle(this.endpoints[e].label,"editable",t)},l.changeAllEndpointsEditableStyle=function(e){for(var t in this.endpoints)Object.prototype.hasOwnProperty.call(this.endpoints,t)&&this.changeEndpointEditableStyle(t,e)},l.changeAllEndpointsOnEditStyle=function(e){for(var t in this.endpoints)Object.prototype.hasOwnProperty.call(this.endpoints,t)&&this.changeEndpointOnEditStyle(t,e)},l.hideLabelsOutsideOfView=function(){this.viewer.model&&!this.viewer.model.is2d()&&this.visibleLabels.forEach(function(e){if(e.point){var t=this.viewer.navigation.isPointVisible(e.point);(e.classList.contains("visible")&&!t||!e.classList.contains("visible")&&t)&&e.classList.toggle("visible",t)}}.bind(this))},l.showClick=function(e){this.tool.getActivePointIndex()!==e&&this.showLabel(this.endpoints[e].label)},l.hideClick=function(e){this.endpoints[e]&&this.hideLabel(this.endpoints[e].label)},l.renderPick=function(e){this.endpoints[e]||this.createEndpoint(e),this.renderEndpointGeometry(e),this.showClick(e)},l.renderEndpointGeometry=function(e){var t=o.getSnapResultPosition(this.measurement.getPick(e),this.viewer);null!==t&&(this.endpoints[e].position=t.clone())},l.drawEdgeAsCylinder=function(e,t,i,n,a){var s,o=[];const r=e.getAttribute("position"),l=new THREE.Vector3,c=new THREE.Vector3;if(1==n)for(let e=0;e=0?o:-o;var r=null,l=t.x-i.x,c=t.y-i.y;r=-((r=t.x90&&(r+=180),e.style.transform="rotate("+r+"deg) translate(0px, "+n+"px)"},l.destroy=function(){for(var e in this.materialPoint=null,this.materialFace=null,this.materialLine=null,this.materialAngle=null,s.isTouchDevice()&&this.clearLabelMobileGestures(),this.endpoints)if(Object.prototype.hasOwnProperty.call(this.endpoints,e)){var t=this.endpoints[e];t.label&&(t.label.removeEventListener(s.isSafari()?"mousedown":"pointerdown",this.onMouseClickBinded),t.label.removeEventListener("mousewheel",this.viewer.toolController.mousewheel),t.label.parentNode.removeChild(t.label),t.label=null)}this.visibleLabels=[]},l.renderRubberbandFromPoints=function(e){const t=Object.keys(e),i=[];for(let n=0;n>>8).getHexString()}function C(e,t,i){r.call(this,e,t,i),this.measureTool=i,this.endpoints=[],this.lines={xyz:{axis:!1,material:this._createLineMaterial(d),className:"adsk-icon-axis-delta-xyz measure-label-axis-delta measure-label-axis-xyz"},x:{axis:!0,material:this._createLineMaterial(u),className:"adsk-icon-axis-delta-x measure-label-axis-delta measure-label-axis-x",iconText:"X"},y:{axis:!0,material:this._createLineMaterial(p),className:"adsk-icon-axis-delta-y measure-label-axis-delta measure-label-axis-y",iconText:"Y"},z:{axis:!0,material:this._createLineMaterial(m),className:"adsk-icon-axis-delta-z measure-label-axis-delta measure-label-axis-z",iconText:"Z"}},this.applyLineColor(this.lines.xyz.material),this.segments=[],this.dashedLines=[],this.simple=!1,this.angleLabel={},this.areaLabel={},this.arcLabel={},this.locationLabel={},this.calloutLabel={},this.labels=[],this.isLeaflet=!1,this.topologyStatus=f,this.tmpVector=new THREE.Vector3,this.surfaceColor=new THREE.MeshBasicMaterial({color:parseInt(d,16),opacity:.15,transparent:!0,depthTest:!1,depthWrite:!1,side:THREE.DoubleSide}),this.applyLineColor(this.surfaceColor)}C.prototype=Object.create(r.prototype),C.prototype.constructor=C;var v=C.prototype,f=0;function E(e){return e.classList.contains("visible")}function w(e,t){return e.right>=t.left&&e.right<=t.right}function y(e,t){return e.left>=t.left&&e.left<=t.right}function x(e,t){return e.left<=t.left&&e.right>=t.right}function k(e,t,i){e.style.left=parseInt(e.style.left,10)+(i.right-t.left)+"px"}function T(e,t,i){e.style.top=parseInt(e.style.top,10)+(i.bottom-t.top)+"px"}function M(e,t){if(e){var i=e.querySelector(".measure-length-text");i&&(i.textContent=t)}}function B(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\n/g,"
")}function L(e){if("string"==typeof e)return B(e);let t="",i=e.fontSize;void 0!==e.fontSize&&10!==e.fontSize?(i=`font-size: ${0|10*i}%;`,t=" "):i="";let n=e.bold;n=void 0!==n?`${t}font-weight: ${n?"bold":"normal"};`:"";const a=B(e.text);return n||i?`${a}`:a}function S(e,t){if(e){var i=e.querySelector(".measure-delta-text");i&&(i.textContent=t)}}function R(e,t,i){if(e){var n=e.querySelector(".measure-fetching-topology");n&&(n.style.display=t&&1===i?"inline-block":"none")}}v.init=function(){var e;switch(this.isLeaflet=this.viewer.model.isLeaflet(),this.onSelectionAreaClickedBinded=this.onSelectionAreaClicked.bind(this),this.lines.xyz.label||((e=this.lines.xyz.label=this.createMeasurementLabel()).addEventListener("mousewheel",this.viewer.toolController.mousewheel),e.addEventListener("click",this.onSelectionAreaClickedBinded),this.viewer.container.appendChild(e)),this.topologyStatus){case 1:this.setFetchingTopology();break;case 2:this.setTopologyAvailable();break;case f:this.setNoTopology()}this.showMeasureResult=!1,this.onCameraChangeBinded=this.onCameraChange.bind(this),this.viewer.addEventListener(A.CAMERA_CHANGE_EVENT,this.onCameraChangeBinded),this.handleButtonUpBinded=this.measureTool.handleButtonUp.bind(this.measureTool),this.addWindowEventListener("mouseup",this.handleButtonUpBinded)},v._hexToCorrectedColor=function(e){return g.set(parseInt(e,16)),this.viewer.impl.is2d||g.multiply(g),g},v._createLineMaterial=function(e){const t=this._hexToCorrectedColor(e);return new THREE.MeshBasicMaterial({color:t.getHex(),depthTest:!1,depthWrite:!1,side:THREE.DoubleSide})},v.createEndpoint=function(e){if(this.endpoints[e]={},2!==e||this.measurement.measurementType!==h.MeasurementTypes.MEASUREMENT_LOCATION&&this.measurement.measurementType!==h.MeasurementTypes.MEASUREMENT_CALLOUT){var t=this.endpoints[e].label=this.createSnapResultLabel(e);this.viewer.container.appendChild(t)}},v.applyLineColor=function(e){if(!e)return;const t=this.measurement.options&&this.measurement.options.format&&this.measurement.options.format.TEXTCOLOR&&"true"===this.measurement.options.format.TEXTCOLOR.Enabled&&this.measurement.options.format.FILLCOLOR&&"true"===this.measurement.options.format.FILLCOLOR.Enabled&&this.measurement.options.format.LINECOLOR&&"true"===this.measurement.options.format.LINECOLOR.Enabled?b(this.measurement.options.format.LINECOLOR.UIntValue):d,i=this._hexToCorrectedColor(t);e.color.set(i)},v.applyLabelColors=function(e){if(!e)return;const t=this.measurement.options&&this.measurement.options.format&&this.measurement.options.format.TEXTCOLOR&&"true"===this.measurement.options.format.TEXTCOLOR.Enabled&&this.measurement.options.format.FILLCOLOR&&"true"===this.measurement.options.format.FILLCOLOR.Enabled&&this.measurement.options.format.LINECOLOR&&"true"===this.measurement.options.format.LINECOLOR.Enabled,i=t?`#${b(this.measurement.options.format.TEXTCOLOR.UIntValue)}`:`#${d}`,n=t?`#${b(this.measurement.options.format.FILLCOLOR.UIntValue)}`:"#f4f4f4";e.style.color=i,e.style.backgroundColor=n},v.updateLabelsPosition=function(){var e,t,i,n;const a=(n,a)=>{t=h.project(e,this.viewer),i.style.top=t.y-a+"px",i.style.left=t.x-n+"px",i.point=e,this.applyLabelColors(i),this.labels.push(i)};for(n in this.endpoints)Object.prototype.hasOwnProperty.call(this.endpoints,n)&&(i=this.endpoints[n].label,e=this.endpoints[n].position,i&&e&&E(i)&&(t=h.project(e,this.viewer),a(i.getBoundingClientRect().width/2,i.getBoundingClientRect().height/2)));for(var s in this.lines)if(Object.prototype.hasOwnProperty.call(this.lines,s)){var o=this.lines[s];if((i=o.label)&&o.p1&&o.p2&&E(i)){if(o.line.visible=o.visible,e={x:(o.p1.x+o.p2.x)/2,y:(o.p1.y+o.p2.y)/2,z:(o.p1.z+o.p2.z)/2},t=h.project(e,this.viewer),i.style.top=t.y-Math.floor(i.clientHeight/2)+"px",i.style.left=t.x-Math.floor(i.clientWidth/2)+"px",this.viewer.model&&this.viewer.model.is2d()){var r=o===this.lines.xyz?0:i.clientHeight,l=h.project(o.p1,this.viewer),c=h.project(o.p2,this.viewer);if(i.clientWidth>=l.distanceTo(c)-this.endpoints[1].label.clientWidth){if(o!==this.lines.xyz){for(s in this.lines.x.line.visible=!1,this.lines.y.line.visible=!1,this.viewer.impl.invalidate(!1,!1,!0),this.lines)if(Object.prototype.hasOwnProperty.call(this.lines,s)&&this.lines[s]!==this.lines.xyz){var A=this.lines[s].label;A&&(A.style.opacity=0)}break}r=i.clientHeight}if(o!==this.lines.xyz){var d=new THREE.Vector3,u=new THREE.Vector3;d.subVectors(this.lines.xyz.p1,this.lines.xyz.p2).normalize(),u.subVectors(o.p1,o.p2).normalize(),d.cross(this.viewer.navigation.getEyeVector()).normalize().dot(u)<0&&(r=-r)}this.alignLabelWithLine(i,o.p1,o.p2,r,this.viewer)}i.style.opacity=1,i.point=e,this.applyLabelColors(i),this.labels.push(i)}}if(this.angleLabel&&(i=this.angleLabel.label)&&this.angleLabel.p1&&this.angleLabel.p2&&E(i)&&(e={x:(this.angleLabel.p1.x+this.angleLabel.p2.x)/2,y:(this.angleLabel.p1.y+this.angleLabel.p2.y)/2,z:(this.angleLabel.p1.z+this.angleLabel.p2.z)/2},t=h.project(e,this.viewer,5),a(Math.floor(i.clientWidth/2),Math.floor(i.clientHeight/2))),this.arcLabel&&(r=0,(i=this.arcLabel.label)&&this.arcLabel.p1&&this.arcLabel.p2&&E(i))){e={x:(this.arcLabel.p1.x+this.arcLabel.p2.x)/2,y:(this.arcLabel.p1.y+this.arcLabel.p2.y)/2,z:(this.arcLabel.p1.z+this.arcLabel.p2.z)/2},t=h.project(e,this.viewer,i.clientHeight),a(Math.floor(i.clientWidth/2),Math.floor(i.clientHeight/2));let n=h.project(this.arcLabel.point1Relative,this.viewer),s=h.project(this.arcLabel.point2Relative,this.viewer);if(i.clientWidth>=n.distanceTo(s)-this.endpoints[1].label.clientWidth){var p=h.project(this.arcLabel.midPointRelative,this.viewer),m=h.project(new THREE.Vector3,this.viewer);r=p.y>m.y?i.clientHeight:-i.clientHeight}this.alignLabelWithLine(i,this.arcLabel.point1Relative,this.arcLabel.point2Relative,r,this.viewer)}if(this.locationLabel&&(i=this.locationLabel.label)&&this.locationLabel.p&&E(i)&&(t=h.project(this.locationLabel.p,this.viewer),a(Math.floor(i.clientWidth/2),Math.floor(i.clientHeight/2))),this.calloutLabel&&(i=this.calloutLabel.label)&&this.calloutLabel.p&&E(i)&&(t=h.project(this.calloutLabel.p,this.viewer),a(Math.floor(i.clientWidth/2),Math.floor(i.clientHeight/2))),this.areaLabel&&(i=this.areaLabel.label)&&this.areaLabel.p1&&this.areaLabel.p2&&E(i)&&(e={x:(this.areaLabel.p1.x+this.areaLabel.p2.x)/2,y:(this.areaLabel.p1.y+this.areaLabel.p2.y)/2,z:(this.areaLabel.p1.z+this.areaLabel.p2.z)/2},t=h.project(e,this.viewer),a(Math.floor(i.clientWidth/2),Math.floor(i.clientHeight/2))),this.viewer.model&&!this.viewer.model.is2d()){var g,b,C=!1;this.labelsStacked=!1;var v=[];for(b=0;bo.top&&(w(d,h)?(n=d,a=h,(i=c).style.left=parseInt(i.style.left,10)-(n.right-a.left)+"px",A=!0):y(d,h)?(k(c,d,h),A=!0):x(d,h)&&(T(c,d,h),A=!0),A)){var u=t.slice(0);u.splice(u.indexOf(e),1),this.labelsOverlapDetection(c,u),c.causeStacking&&e.causeStacking&&(r=!0),c.causeStacking&&this.labelsStacked&&this.stackLabels(this.labels)}}}return r},v.stackLabels=function(e){for(var t=this.lines.xyz.label,i=1;i2&&(this.drawSegmentAndPush(n,i,!this.measurement.closedArea),h.isEqualVectors(n,i,h.EPSILON)||a.push(i),0!==this.measurement.area&&this.drawSurface(a)&&(this.showAreaLabel(c(a)),this.updateArea()))},v.renderAreaMeasurement=function(e){for(var t,i,n=this.measurement.countPicks(),a=[],s=1;s2&&(t=h.getSnapResultPosition(e[1],this.viewer),this.drawSegmentAndPush(t,i,!this.measurement.closedArea),h.isEqualVectors(t,i,h.EPSILON)||a.push(i),0!==this.measurement.area&&this.drawSurface(a)&&(this.showAreaLabel(c(a)),this.updateArea()))},v.clearAngleMeshes=function(){this.angleArc&&(this.viewer.impl.removeOverlay(this.overlayName,this.angleArc,!0),this.angleArc=null),this.angleOutline.length>0&&(this.viewer.impl.removeMultipleOverlays(this.overlayName,this.angleOutline,!0),this.angleOutline.length=0)},v.drawAngle=function(e,t,i,n,a,s,o){var r=.001;this.materialAngle||(this.materialAngle=new THREE.MeshPhongMaterial({color:10066329,opacity:.5,transparent:!0,depthTest:!1,depthWrite:!1,side:THREE.DoubleSide}),this.materialAngleOutline=new THREE.MeshBasicMaterial({color:16750848,depthTest:!1,depthWrite:!1})),this.applyLineColor(this.lines.xyz.material),this.applyLineColor(this.surfaceColor),h.createCommonOverlay(this.viewer,this.overlayName),this.clearAngleMeshes();var l=o||Math.min(e.distanceTo(t),e.distanceTo(i))/4,c=new THREE.CircleBufferGeometry(l,100,0,a*Math.PI/180),A=new THREE.Mesh(c,this.surfaceColor);this.applyLineColor(this.surfaceColor);const d=A.geometry.getAttribute("position");{const e=Array.from(d.array),t=e.slice(0,d.itemSize);d.array=Float32Array.from(e.concat(t)),d.count++,d.needsUpdate=!0}A.position.set(e.x,e.y,e.z);var u=A.position.clone();u.add(n),A.lookAt(u),A.updateMatrixWorld();let p=(new THREE.Vector3).fromBufferAttribute(d,1),m=(new THREE.Vector3).fromBufferAttribute(d,d.count-2);p.applyMatrix4(A.matrixWorld),m.applyMatrix4(A.matrixWorld);var g=new THREE.Vector3,b=new THREE.Vector3,C=new THREE.Vector3,v=new THREE.Vector3;g.subVectors(p,e),b.subVectors(m,e),C.subVectors(t,e),v.subVectors(i,e);var f,E=g.angleTo(C),w=g.angleTo(v),y=b.angleTo(C),x=b.angleTo(v);f=(E<=r&&E>=-.001||w<=r&&w>=-.001)&&(y<=r&&y>=-.001||x<=r&&x>=-.001)?0:(E<=Math.PI+r&&E>=Math.PI-r||w<=Math.PI+r&&w>=Math.PI-r)&&(y<=Math.PI+r&&y>=Math.PI-r||x<=Math.PI+r&&x>=Math.PI-r)?Math.PI:E<=y+r&&E>=y-r||E<=x+r&&E>=x-r?E:w;var k=new THREE.Matrix4;k.makeRotationAxis(n,f),k.multiply(A.matrix),A.matrix=k,A.rotation.setFromRotationMatrix(A.matrix),A.updateMatrixWorld(),p=(new THREE.Vector3).fromBufferAttribute(d,1),m=(new THREE.Vector3).fromBufferAttribute(d,d.count-2),p.applyMatrix4(A.matrixWorld),m.applyMatrix4(A.matrixWorld),g.subVectors(p,e),b.subVectors(m,e),E=g.angleTo(C),w=g.angleTo(v),y=b.angleTo(C),x=b.angleTo(v),E>=r&&w>=r&&((k=new THREE.Matrix4).makeRotationAxis(n,2*-f),k.multiply(A.matrix),A.matrix=k,A.rotation.setFromRotationMatrix(A.matrix));const T=new THREE.CircleBufferGeometry(l,100,0,a*Math.PI/180);{const e=T.getAttribute("position");e.array=e.array.slice(e.itemSize),e.count--,e.needsUpdate=!0}if(A.updateMatrixWorld(),T.applyMatrix4(A.matrixWorld),this.angleOutline=this.drawEdgeAsCylinder(T,this.lines.xyz.material,2,0,this.getNewCylinderGeometry()),this.angleArc=A,this.viewer.impl.addOverlay(this.overlayName,this.angleArc),this.viewer.impl.addMultipleOverlays(this.overlayName,this.angleOutline),s.fromBufferAttribute(d,Math.round(d.count/2)-1),s.applyMatrix4(A.matrixWorld),!o){var M=new THREE.Vector3;M.subVectors(s,e).normalize(),M.multiplyScalar(l/2),s.add(M)}},v.createArcLabel=function(){var e=this.createMeasurementLabel();return this.viewer.container.appendChild(e),e.addEventListener("mousewheel",this.viewer.toolController.mousewheel),e.addEventListener("click",this.onSelectionAreaClickedBinded),e},v.clearArcMeshes=function(){this.arcOutline&&this.arcOutline.length>0&&(this.viewer.impl.removeMultipleOverlays(this.overlayName,this.arcOutline,!0),this.arcOutline.length=0)},v.drawCircularArc=function(e,t,i,n){let a=!(arguments.length>4&&void 0!==arguments[4])||arguments[4];var s=new THREE.BufferGeometry;const o=[new THREE.Vector3,new THREE.Vector3];var r=h.nearestPointInPointToSegment(this.viewer.navigation.getPosition(),e,t),l=this.setScale(r),c=new THREE.Vector3;c.subVectors(e,i);var A=Math.atan2(c.y,c.x),d=new THREE.Vector3;d.subVectors(t,i);var u=Math.atan2(d.y,d.x);this.arcLabel.point1Relative=c.clone(),this.arcLabel.point2Relative=d.clone().normalize().multiplyScalar(n);var p=u-A;p>Math.PI?p-=2*Math.PI:p<-Math.PI&&(p+=2*Math.PI);var m=new THREE.CircleBufferGeometry(n,100,A,p),g=new THREE.Mesh(m,this.lines.xyz.material);g.position.set(i.x,i.y,i.z);{const e=m.getAttribute("position");e.array=e.array.slice(e.itemSize),e.count--,e.needsUpdate=!0}function b(e,t){o[0].addVectors(e,t.clone().multiplyScalar(2*l)),o[1].subVectors(e,t.clone().multiplyScalar(2*l)),s.setFromPoints(o);var i=this.drawLineAsCylinder(s,this.lines.xyz.material,3,this.overlayName);this.arcTip.push(i)}g.updateMatrixWorld(),m.applyMatrix4(g.matrixWorld),h.createCommonOverlay(this.viewer,this.overlayName),this.clearArcMeshes(),this.arcOutline=this.drawEdgeAsCylinder(m,this.lines.xyz.material,4,0,this.getNewCylinderGeometry()),this.viewer.impl.addMultipleOverlays(this.overlayName,this.arcOutline),a&&(b.call(this,e,c.normalize()),b.call(this,t,d.normalize()));var C=new THREE.Vector3,v=A+.5*p;C.x=Math.cos(v)*n,C.y=Math.sin(v)*n,this.arcLabel.midPointRelative=C.clone(),C.applyMatrix4(g.matrixWorld),this.showArcLabel(C)},v.renderAngleMeasurementFromPoints=function(e){var t=[];const i=Object.keys(e);for(var n=0;nd.x||e===this.lines.y&&u.y>d.y||e===this.lines.z&&u.z>d.z)&&(l=d.clone(),d=u.clone(),u=l.clone()),e.line=null,A?this.hideLabel(A):A=this.createDistanceLabel(e),(this.isLeaflet&&e!==this.lines.z||d.distanceTo(u)>=h.EPSILON)&&r)if(e.p1=d,e.p2=u,e===this.lines.xyz)this.drawXYZLine(e),this.showLabel(A),this.updateDistance();else{c=e.line=this.drawLineSegment(d,u,2,e.material);var p=!this.simple&&this.showMeasureResult;c.visible=p,e.visible=p,p?this.showLabel(A):this.hideLabel(A)}},v.renderDistanceMeasurementFromPoints=function(e,t){this.updateLine(this.lines.xyz,e.x,e.y,e.z,t.x,t.y,t.z,!0);var i=this.viewer.navigation.getAlignedUpVector(),n=Math.abs(i.x),a=Math.abs(i.y),s=Math.abs(i.z),o=!1;s>n&&s>a?(this.updateLine(this.lines.x,e.x,e.y,e.z,t.x,e.y,e.z,o),this.updateLine(this.lines.y,t.x,e.y,e.z,t.x,t.y,e.z,o),this.updateLine(this.lines.z,t.x,t.y,e.z,t.x,t.y,t.z,o)):a>n&&a>s?(this.updateLine(this.lines.x,e.x,e.y,e.z,t.x,e.y,e.z,o),this.updateLine(this.lines.z,t.x,e.y,e.z,t.x,e.y,t.z,o),this.updateLine(this.lines.y,t.x,e.y,t.z,t.x,t.y,t.z,o)):(this.updateLine(this.lines.y,e.x,e.y,e.z,e.x,t.y,e.z,o),this.updateLine(this.lines.z,e.x,t.y,e.z,e.x,t.y,t.z,o),this.updateLine(this.lines.x,e.x,t.y,t.z,t.x,t.y,t.z,o))},v.renderDistanceMeasurement=function(e,t){var i=this;this.updateLine(this.lines.xyz,e.x,e.y,e.z,t.x,t.y,t.z,!0);var n=this.viewer.navigation.getAlignedUpVector(),a=Math.abs(n.x),s=Math.abs(n.y),o=Math.abs(n.z),r=function(e,t){return i.tmpVector.subVectors(e,t),i.tmpVector.normalize(),!h.isParallel(i.tmpVector,i.xAxis)&&!h.isParallel(i.tmpVector,i.yAxis)&&!h.isParallel(i.tmpVector,i.zAxis)}(e,t);o>a&&o>s?(this.updateLine(this.lines.x,e.x,e.y,e.z,t.x,e.y,e.z,r),this.updateLine(this.lines.y,t.x,e.y,e.z,t.x,t.y,e.z,r),this.updateLine(this.lines.z,t.x,t.y,e.z,t.x,t.y,t.z,r)):s>a&&s>o?(this.updateLine(this.lines.x,e.x,e.y,e.z,t.x,e.y,e.z,r),this.updateLine(this.lines.z,t.x,e.y,e.z,t.x,e.y,t.z,r),this.updateLine(this.lines.y,t.x,e.y,t.z,t.x,t.y,t.z,r)):(this.updateLine(this.lines.y,e.x,e.y,e.z,e.x,t.y,e.z,r),this.updateLine(this.lines.z,e.x,t.y,e.z,e.x,t.y,t.z,r),this.updateLine(this.lines.x,e.x,t.y,t.z,t.x,t.y,t.z,r))},v.updateResults=function(){this.updateDistance(),this.updateAngle(),this.updateArea(),this.updateArcLength(),setTimeout(function(){this.viewer.impl&&this.updateLabelsPosition()}.bind(this),0)},v.updateDistance=function(){function e(e,t){e&&(e.style.width=t)}function t(e){return e?e.clientWidth:0}Object.keys(this.lines).forEach(function(t){e(this.lines[t].label,"")}.bind(this)),S(this.lines.x.label,"~ "+this.measureTool.getDistanceX(this.measurement)),S(this.lines.y.label,"~ "+this.measureTool.getDistanceY(this.measurement)),S(this.lines.z.label,"~ "+this.measureTool.getDistanceZ(this.measurement)),M(this.lines.xyz.label,"~ "+this.measureTool.getDistanceXYZ(this.measurement)),this.viewer.model&&this.viewer.model.is3d()&&setTimeout(function(){var i=Math.max(t(this.lines.x.label),t(this.lines.y.label),t(this.lines.z.label),t(this.lines.xyz.label));Object.keys(this.lines).forEach(function(t){e(this.lines[t].label,i+"px")}.bind(this))}.bind(this),0)},v.updateAngle=function(){M(this.angleLabel.label,"~ "+this.measureTool.getAngle(this.measurement))},v.updateLocation=function(){M(this.locationLabel.label,("~ "+this.measureTool.getLocation(this.measurement)).split("\n").join("\n~ "))},v.updateCallout=function(){!function(e,t){if("string"==typeof t)return void M(e,t);var i=e.querySelector(".measure-length-text");i&&(Array.isArray(t)?i.innerHTML=t.map(L).join(""):i.innerHTML=L(t))}(this.calloutLabel.label,this.measureTool.getCallout(this.measurement))},v.updateArea=function(){M(this.areaLabel.label,"~ "+this.measureTool.getArea(this.measurement))},v.updateArcLength=function(){M(this.arcLabel.label,"~ "+this.measureTool.getArc(this.measurement))},v.setSimple=function(e){if(this.simple!=e){this.simple=e;var t=!e;this.setLineVisible(this.lines.x,t),this.setLineVisible(this.lines.y,t),this.setLineVisible(this.lines.z,t),this.updateLabelsPosition(),this.viewer.impl.invalidate(!1,!1,!0)}},v.setLineVisible=function(e,t){e.line&&(e.line.visible=t,e.visible=t,e.label&&(t?this.showLabel(e.label):(this.hideLabel(e.label),e.label.style.opacity=0)))},v.enableLabelsTouchEvents=function(e){var t=e?"all":"none";this.lines.xyz.label&&(this.lines.xyz.label.style.pointerEvents=t),this.angleLabel.label&&(this.angleLabel.label.style.pointerEvents=t),this.areaLabel.label&&(this.areaLabel.label.style.pointerEvents=t),this.arcLabel.label&&(this.arcLabel.label.style.pointerEvents=t)},v.setLabelsZIndex=function(e){for(var t in this.lines)if(Object.prototype.hasOwnProperty.call(this.lines,t)){var i=this.lines[t];i.label&&(i.label.style.zIndex=e)}for(t in this.angleLabel&&this.angleLabel.label&&(this.angleLabel.label.style.zIndex=e),this.locationLabel&&this.locationLabel.label&&(this.locationLabel.label.style.zIndex=e),this.calloutLabel&&this.calloutLabel.label&&(this.calloutLabel.label.style.zIndex=e),this.areaLabel&&this.areaLabel.label&&(this.areaLabel.label.style.zIndex=e),this.arcLabel&&this.arcLabel.label&&(this.arcLabel.label.style.zIndex=e),this.endpoints)if(Object.prototype.hasOwnProperty.call(this.endpoints,t)){var n=this.endpoints[t];n.label&&(n.label.style.zIndex=e-1)}},v.focusLabels=function(){this.setLabelsZIndex(3)},v.unfocusLabels=function(){this.setLabelsZIndex(2)},v.clear=function(){var e;for(e in this.endpoints)if(Object.prototype.hasOwnProperty.call(this.endpoints,e)){var t=this.endpoints[e];t.label&&this.hideLabel(t.label)}for(e in this.lines)if(Object.prototype.hasOwnProperty.call(this.lines,e)){var i=this.lines[e];i.line&&(i.line.visible=!1,i.visible=!1,i.tips&&i.tips.forEach((function(e){e.visible=!1}))),i.label&&(this.hideLabel(i.label),i.label.style.opacity=0,i.label.style.zIndex=2)}this.angleLabel&&this.angleLabel.label&&this.hideLabel(this.angleLabel.label),this.locationLabel&&this.locationLabel.label&&this.hideLabel(this.locationLabel.label),this.calloutLabel&&this.calloutLabel.label&&this.hideLabel(this.calloutLabel.label),this.areaLabel&&this.areaLabel.label&&this.hideLabel(this.areaLabel.label),this.arcLabel&&this.arcLabel.label&&this.hideLabel(this.arcLabel.label),this.clearSelectionAreas(),this.segments=[],this.dashedLines=[],this.viewer.impl.clearOverlay(this.overlayName,!0),h.createCommonOverlay(this.viewer,this.overlayName)},v.hideClick=function(e){for(var t in r.prototype.hideClick.call(this,e),this.lines)if(Object.prototype.hasOwnProperty.call(this.lines,t)){var i=this.lines[t];i.line&&(i.line.visible=!1,i.visible=!1,i.tips&&i.tips.forEach((function(e){e.visible=!1}))),i.label&&(this.hideLabel(i.label),i.label.style.opacity=0)}this.angleLabel&&this.angleLabel.label&&this.hideLabel(this.angleLabel.label),this.areaLabel&&this.areaLabel.label&&this.hideLabel(this.areaLabel.label),this.arcLabel&&this.arcLabel.label&&this.hideLabel(this.arcLabel.label),this.enableSelectionAreas(i.selectionArea,!1)},v.destroy=function(){var e;for(e in r.prototype.destroy.call(this),this.lines)if(Object.prototype.hasOwnProperty.call(this.lines,e)){var t=this.lines[e];t.line&&(this.viewer.impl.clearOverlay(self.overlayName,!0),t.material=t.line=t.geometry=null),t.label&&("xyz"===e&&(t.label.addEventListener("mousewheel",this.viewer.toolController.mousewheel),t.label.removeEventListener("click",this.onSelectionAreaClickedBinded)),t.label.parentNode.removeChild(t.label),t.label=null),t.material=t.line=t.geometry=t.label=t.p1=t.p2=null}this.clearAngleMeshes(),this.angleLabel&&this.angleLabel.label&&(this.angleLabel.label.parentNode.removeChild(this.angleLabel.label),this.angleLabel.label.removeEventListener("mousewheel",this.viewer.toolController.mousewheel),this.angleLabel.label.removeEventListener("click",this.onSelectionAreaClickedBinded),this.angleLabel.label=this.angleLabel.p1=this.angleLabel.p2=null),this.clearArcMeshes(),this.arcLabel&&this.arcLabel.label&&(this.arcLabel.label.parentNode.removeChild(this.arcLabel.label),this.arcLabel.label.removeEventListener("mousewheel",this.viewer.toolController.mousewheel),this.arcLabel.label.removeEventListener("click",this.onSelectionAreaClickedBinded),this.arcLabel.label=this.arcLabel.midPoint=null),this.locationLabel&&this.locationLabel.label&&(this.locationLabel.label.parentNode.removeChild(this.locationLabel.label),this.locationLabel.label.removeEventListener("mousewheel",this.viewer.toolController.mousewheel),this.locationLabel.label=this.locationLabel.p=null),this.calloutLabel&&this.calloutLabel.label&&(this.calloutLabel.label.parentNode.removeChild(this.calloutLabel.label),this.calloutLabel.label.removeEventListener("mousewheel",this.viewer.toolController.mousewheel),this.calloutLabel.label=this.calloutLabel.p=null),this.areaLabel&&this.areaLabel.label&&(this.areaLabel.label.parentNode.removeChild(this.areaLabel.label),this.areaLabel.label.removeEventListener("mousewheel",this.viewer.toolController.mousewheel),this.areaLabel.label.removeEventListener("click",this.onSelectionAreaClickedBinded),this.areaLabel.label=this.areaLabel.p1=this.areaLabel.p2=null),this.viewer.impl.overlayScenes[this.overlayName]&&this.viewer.impl.removeOverlayScene(this.overlayName),this.viewer.removeEventListener(A.CAMERA_CHANGE_EVENT,this.onCameraChangeBinded),this.removeWindowEventListener("mouseup",this.handleButtonUpBinded)},v.clearXYZLine=function(){this.viewer.impl.removeOverlay(this.overlayName,this.lines.xyz.line,!0),this.lines.xyz.tips&&this.lines.xyz.tips.forEach(function(e){this.viewer.impl.removeOverlay(this.overlayName,e,!0)}.bind(this))},v.updateScale=function(){var e;for(e in this.angleOutline.forEach((e=>this.setCylinderScale(e))),this.arcOutline.forEach((e=>this.setCylinderScale(e))),this.lines)if(Object.prototype.hasOwnProperty.call(this.lines,e)){var t=this.lines[e];t.line&&t!==this.lines.xyz&&this.setCylinderScale(t.line,t.p1,t.p2)}for(e in this.segments)if(Object.prototype.hasOwnProperty.call(this.segments,e)){var i=this.segments[e];i.line&&this.setCylinderScale(i.line,i.p1,i.p2)}this.measurement.measurementType===h.MeasurementTypes.MEASUREMENT_DISTANCE&&this.measurement.isComplete()&&(this.clearXYZLine(),this.drawXYZLine(this.lines.xyz)),this.measurement.measurementType===h.MeasurementTypes.MEASUREMENT_ARC&&this.arcTip.forEach((e=>{var t=this.setScale(e.position);if(Object.prototype.hasOwnProperty.call(e,"lmv_line_width")){var i=t*e.lmv_line_width;e.scale.x=i,e.scale.z=i}var n=4*t;e.scale.y=n}))},v.setNoTopology=function(){this.topologyStatus=f,this.lines.xyz.label&&(R(this.lines.xyz.label,!1,this.topologyStatus),this.lines.xyz.label.classList.remove("fetching-topology"))},v.setFetchingTopology=function(){this.topologyStatus=1,this.lines.xyz.label&&(R(this.lines.xyz.label,!0,this.topologyStatus),this.lines.xyz.label.classList.add("fetching-topology"))},v.setTopologyAvailable=function(){this.topologyStatus=2,this.lines.xyz.label&&(R(this.lines.xyz.label,!1,this.topologyStatus),this.lines.xyz.label.classList.remove("fetching-topology"))},v.createMeasurementLabel=function(){const e=this.getDocument();var t=e.createElement("div");t.className="measure-length";var i=e.createElement("div");i.className="measure-fetching-topology",i.style.display="none",t.appendChild(i);var n=e.createElement("div");n.className="measure-length-text",t.appendChild(n);var a=e.createElement("div");return a.className="measure-delta-text",t.appendChild(a),t.causeStacking=!0,A.isMobileDevice()||h.safeToggle(t,"enable-hover",!0),t},v.createSnapResultLabel=function(e){const t=this.getDocument();var i=t.createElement("div");i.className="measure-label";var n=t.createElement("div");if(n.className="measure-label-icon",i.appendChild(n),A.isTouchDevice()){this.initLabelMobileGestures(i,e,this.measureTool);var a=t.createElement("div");a.className="measure-label-hit-area",i.appendChild(a)}return A.isMobileDevice()||(this.initMouseEvent(i,e),i.addEventListener("mousewheel",this.viewer.toolController.mousewheel),h.safeToggle(i,"enable-hover",!0)),i.causeStacking=!1,i},v.showAngleLabel=function(e){var t=this.angleLabel.label;t||(t=this.angleLabel.label=this.createMeasurementLabel(),this.viewer.container.appendChild(t),t.addEventListener("mousewheel",this.viewer.toolController.mousewheel),t.addEventListener("click",this.onSelectionAreaClickedBinded)),this.updateAngle(),this.showLabel(t),this.angleLabel.p1=e.clone(),this.angleLabel.p2=e.clone()},v.showArcLabel=function(e){var t=this.arcLabel.label;t?this.hideLabel(t):this.arcLabel.label=t=this.createArcLabel(),this.updateArcLength(),this.showLabel(t),this.arcLabel.p1=e.clone(),this.arcLabel.p2=e.clone()},v.showLocationLabel=function(e){var t=this.locationLabel.label;t||((t=this.locationLabel.label=this.createMeasurementLabel()).style.whiteSpace="pre-line",t.style.height="auto",t.style.textAlign="start",t.querySelector(".measure-delta-text").style.display="none",this.viewer.container.appendChild(t),t.addEventListener("mousewheel",this.viewer.toolController.mousewheel)),this.updateLocation(),this.showLabel(t),this.locationLabel.p=e.clone()},v.showCalloutLabel=function(e){var t=this.calloutLabel.label;t||((t=this.calloutLabel.label=this.createMeasurementLabel()).style.whiteSpace="pre-line",t.style.height="auto",t.style.textAlign="start",this.measurement.options&&this.measurement.options.width&&(t.style.width=this.measurement.options.width+"px"),t.querySelector(".measure-delta-text").style.display="none",this.viewer.container.appendChild(t),t.addEventListener("mousewheel",this.viewer.toolController.mousewheel)),this.updateCallout(),this.showLabel(t),this.calloutLabel.p=e.clone()},v.showAreaLabel=function(e){var t=this.areaLabel.label;t||(t=this.areaLabel.label=this.createMeasurementLabel(),this.viewer.container.appendChild(t),t.addEventListener("mousewheel",this.viewer.toolController.mousewheel),t.addEventListener("click",this.onSelectionAreaClickedBinded)),this.updateArea(),this.showLabel(t),this.areaLabel.p1=e,this.areaLabel.p2=e},v.onSelectionAreaClicked=function(){this.viewer.dispatchEvent({type:h.Events.SELECT_MEASUREMENT,data:{id:this.measurement.id}}),this.measureTool.selectMeasurementById(this.measurement.id)},v.createSelectionArea=function(){var e=this.getDocument().createElement("div");return e.id="measurement-selection-area-"+this.measurement.id,this.viewer.container.appendChild(e),e.className="measure-selection-area",e.style.display="none",e.addEventListener("mousewheel",this.viewer.toolController.mousewheel),e.addEventListener("click",this.onSelectionAreaClickedBinded),e},v.updateSelectionArea=function(){this.segments.forEach(function(e){if(e.p1&&e.p2){var t=h.project(e.p1,this.viewer),i=h.project(e.p2,this.viewer);e.selectionArea||(e.selectionArea=this.createSelectionArea());var n=e.selectionArea,a=new THREE.Vector2;n.style.top=t.y-7.5+"px",n.style.left=t.x+"px",n.style.width=a.subVectors(t,i).length()+"px",n.style.height="15px";var s,o=t.x-i.x,r=t.y-i.y;s=180*Math.atan2(-r,-o)/Math.PI,n.style.transform="rotate("+s+"deg)",n.style.transformOrigin="0px 7.5px"}}.bind(this)),this.measureTool.areAllPicksSet()&&this.enableSelectionAreas(!0)},v.clearSelectionAreas=function(){const e=this.getDocument();this.segments.forEach(function(t){if(t.selectionArea){t.selectionArea.removeEventListener("mousewheel",this.viewer.toolController.mousewheel),t.selectionArea.removeEventListener("click",this.onSelectionAreaClickedBinded);var i=e.getElementById("measurement-selection-area-"+this.measurement.id);i&&i.parentNode.removeChild(i),t.selectionArea=null}}.bind(this))},v.enableSelectionAreas=function(e){this.segments.forEach(function(t){t.selectionArea&&(t.selectionArea.style.display=e?"block":"none")}.bind(this))},v.render=function(e,t){r.prototype.render.call(this,e,t),this.updateSelectionArea()},v.renderFromPoints=function(e,t){r.prototype.renderFromPoints.call(this,e,t),this.updateSelectionArea()},v.onCameraChange=function(){this.redrawDashedLines(),this.updateSelectionArea(),this.hideLabelsOutsideOfView(),this.updateLabelsPosition()},v.handleResize=function(){this.redrawDashedLines(),this.updateSelectionArea(),this.updateLabelsPosition()};var D=i(8070),N=i(9556);const P=THREE,I=Autodesk.Viewing,O=Autodesk.Viewing.Private;function V(e,i,n,a){var s=e,o=["measure"];this.setGlobalManager(e.globalManager);var r=n,l=Autodesk.Viewing,c=Autodesk.Viewing.MeasureCommon,A=!1,h=!1,d=!1,u=0,p=!1,m=!1,g=null,b=null,v=!1,f=new t(s),E=null,w=null,y=[],x=null,k=!1,T=a,M=!1,B=[],L=null,S=null,R=c.MeasurementTypes.MEASUREMENT_DISTANCE,I=!0,V=null,z=!1;function U(e){const t=(e=e||E).clonePicks(),i=[];for(let n=0;n0;)E=f.measurementsList[Object.keys(f.measurementsList)[0]],f.changeCurrentMeasurement(E),this.clearCurrentMeasurement(),E=null;T&&T.isActive()&&s.toolController.deactivateTool("snapper"),s.toolController.deactivateTool("magnifyingGlass"),s.impl.pauseHighlight(!1),f.destroy(),s.removeEventListener(l.CAMERA_CHANGE_EVENT,this.onCameraChange),s.removeEventListener(c.Events.MEASUREMENT_CHANGED_EVENT,this.onMeasurementChangedBinded),s.removeEventListener(l.SHOW_ALL_EVENT,this.onShowAllEvent)},this.clearIncompleteMeasurement=function(){this.areAllPicksSet()||(this.isEditingEndpoint?this.undoEditEndpoint():this.clearCurrentMeasurement())},this.update=function(){return!1},this.getUnits=function(){return r.units},this.setUnits=function(e){if(r.units!==e)for(var t in r.units=e,f.measurementsList)if(Object.prototype.hasOwnProperty.call(f.measurementsList,t)){var i=f.measurementsList[t];i.indicator&&i.indicator.updateResults()}},this.getPrecision=function(){return r.precision},this.setPrecision=function(e){if(Number.isInteger(e)&&!(e<0)&&r.precision!==e)for(var t in r.precision=e,f.measurementsList)if(Object.prototype.hasOwnProperty.call(f.measurementsList,t)){var i=f.measurementsList[t];i.indicator&&i.indicator.updateResults()}},this.getDistanceXYZ=function(e){var t;return e||(e=E),this.getDistanceAux(e.distanceXYZ,null===(t=e.result)||void 0===t?void 0:t.units)},this.getDistanceX=function(e){var t;return e||(e=E),this.getDistanceAux(e.distanceX,null===(t=e.result)||void 0===t?void 0:t.units)},this.getDistanceY=function(e){var t;return e||(e=E),this.getDistanceAux(e.distanceY,null===(t=e.result)||void 0===t?void 0:t.units)},this.getDistanceZ=function(e){var t;return e||(e=E),this.getDistanceAux(e.distanceZ,null===(t=e.result)||void 0===t?void 0:t.units)},this.getDistanceAux=function(e,t){if(s.model){let i=s.model.getUnitString();r.useViewportInfo&&t&&null===r.calibrationFactor&&(i=t);const n=Autodesk.Viewing.Private.convertUnits(i,r.units,r.calibrationFactor,e||0);return Autodesk.Viewing.Private.formatValueWithUnits(n,r.units,3,r.precision)}},this.getAngle=function(e){e||(e=E);var t=e.angle;return Autodesk.Viewing.Private.formatValueWithUnits(t,String.fromCharCode(176),3,r.precision)},this.getArc=function(e){if(s.model){e||(e=E);let i=s.model.getUnitString();var t=e.arc;const n=Autodesk.Viewing.Private.convertUnits(i,r.units,r.calibrationFactor,t||0);return Autodesk.Viewing.Private.formatValueWithUnits(n,r.units,3,r.precision)}},this.getLocation=function(e){e||(e=E);var t=e.location||{x:0,y:0,z:0};return"X: "+this.getDistanceAux(t.x)+"\nY: "+this.getDistanceAux(t.y)+"\nZ: "+this.getDistanceAux(t.z)},this.getCallout=function(e){return e||(e=E),e.text||""},this.getArea=function(e){if(s.model){var t;e||(e=E);let i=s.model.getUnitString();const n=null===(t=e.result)||void 0===t?void 0:t.units;r.useViewportInfo&&n&&null===r.calibrationFactor&&(i=n);const a=Autodesk.Viewing.Private.convertUnits(i,r.units,r.calibrationFactor,e.area,"square");return r.units?Autodesk.Viewing.Private.formatValueWithUnits(a,r.units+"^2",3,r.precision):Autodesk.Viewing.Private.formatValueWithUnits(a,null,3,r.precision)}},this.snapToFirstPick=function(t,i){if(E.hasPick(1)&&u>3&&!E.closedArea){var n=E.getPick(1),a=c.getSnapResultPosition(n,s),o=c.project(a,e),r=c.getSnapResultPosition(t,s),l=c.project(r,e);(i||l.distanceTo(o)<25)&&(T.onMouseMove(o),n.copyTo(t))}},this.render=function(e){this.isCalibrationSetOnPage()?G(0,!0):k&&x&&x.picks.length>0&&G(x.picks[0].viewportIndex2d);var t=E.computeResult(E.picks,s,T);return E.indicator.render(E.picks,p||!!e),t},this.setUseLastViewport=function(e){k=e},this.getUseLastViewport=function(){return k},this.setMeasurements=function(e){if(e&&0!==(e=Array.isArray(e)?e:[e]).length){for(let i=0;i{E=e,e.attachIndicator(s,this,C),w instanceof Function&&(w(),w=null),H(!1)},r=()=>{const e=f.getRestoredMeasurementData()[E.id];u=e.length};f.createMeasurementFromData(n,a,o,r)}this.deselectAllMeasurements()}function t(e){let t;switch(e.type){case"Distance":t=c.MeasurementTypes.MEASUREMENT_DISTANCE;break;case"Angle":t=c.MeasurementTypes.MEASUREMENT_ANGLE;break;case"Area":t=c.MeasurementTypes.MEASUREMENT_AREA;break;case"Arc":t=c.MeasurementTypes.MEASUREMENT_ARC;break;case"Location":t=c.MeasurementTypes.MEASUREMENT_LOCATION;break;case"Callout":t=c.MeasurementTypes.MEASUREMENT_CALLOUT;break;default:return}return t}},this.getMeasurement=function(e,t){if(!E)return null;r.units=e||r.units,r.precision=t||r.precision;var i=["Vertex","Edge","Face","Circular Arc","Curved Edge","Curved Face"],n=U(),a=Y();return{from:i[E.getGeometry(1).type],to:i[E.getGeometry(2).type],distance:this.getDistanceXYZ(),deltaX:this.getDistanceX(),deltaY:this.getDistanceY(),deltaZ:this.getDistanceZ(),angle:this.getAngle(),area:this.getArea(),arc:this.getArc(),location:this.getLocation(),text:this.getCallout(),unitType:r.units,precision:r.precision,picks:n,type:a}},this.getMeasurementPoints=function(){return E.clonePicks()},this.getMeasurementList=function(e,t){var i=[],n=null,a=["Vertex","Edge","Face","Circular Arc","Curved Edge","Curved Face"],o=Object.keys(f.measurementsList);for(let h=0;h{if(e)for(let t=0;t3},this.undoEditEndpoint=function(){for(var e in E.indicator.clear(),E.picks)Object.prototype.hasOwnProperty.call(E.picks,e)&&E.setPick(e,B[e].clone());E.indicator.changeEndpointOnEditStyle(u,!1),this.isEditingEndpoint=!1,this.updateViewportId(!0),this.allPicksSet(),this.render(!0)},this.updateResults=function(){E.indicator.updateResults(),E.indicator.showEndpoints(),E.indicator.focusLabels(),E.isComplete()&&this.isolateMeasurement()},this.deleteMeasurements=function(){const e=f.measurementsList,t=Object.keys(e);for(let i=0;i1)this.setPrecision(null===(n=e[i])||void 0===n?void 0:n.precision)}},this.setNoTopology=function(){_("setNoTopology"),w=function(){E.indicator.setNoTopology()}},this.setFetchingTopology=function(){w=function(){y.push(E),E.indicator.setFetchingTopology()},E&&E.indicator&&w()},this.setTopologyAvailable=function(){_("setTopologyAvailable"),w=function(){E.indicator.setTopologyAvailable()}},this.getSnapper=function(){return T},this.correctPickPosition=function(){var t=this.getActivePick();if(t&&!t.getGeometry()&&L&&(t.geomType=c.SnapType.SNAP_VERTEX,t.geomVertex=L,t.intersectPoint=L),this.hasPreviousPick()){var i=this.getPreviousPick();if(!c.correctPerpendicularPicks(i,t,e,T)){var n=(t.id+1)%(E.countPicks()+1);if(0===n&&(n=1),n!==t.id&&E.hasPick(n)){var a=E.getPick(n);c.correctPerpendicularPicks(a,t,e,T)}}E.measurementType==c.MeasurementTypes.MEASUREMENT_AREA&&this.snapToFirstPick(t)}},this._handleMouseEvent=function(t){var i=!1;if(T.isSnapped()){var n;if((this.areAllPicksSet()||this.isNoPicksSet())&&(this.startNewMeasurement(),u=1),T.copyResults(this.getActivePick()),!s.model.is2d()){let i=s.container.getBoundingClientRect(),n=t.canvasX||t.clientX-i.left,r=t.canvasY||t.clientY-i.top,l=this.getActivePick(),c=e.impl.hitTestViewport(e.impl.clientToViewport(n,r));if(l){var a,o;const e=s.model.getFragmentList(),t=new P.Matrix4;null!==(a=l.geomFace)&&void 0!==a&&a.fragId||0===(null===(o=l.geomFace)||void 0===o?void 0:o.fragId)?this.getActivePick().fragId=l.geomFace.fragId:this.getActivePick().fragId=null==c?void 0:c.fragId,e.getWorldMatrix(this.getActivePick().fragId,t);const i=(new P.Vector3).applyMatrix4(t);this.getActivePick().fragPos={x:i.x,y:i.y,z:i.z}}}if(p&&(null===(n=E)||void 0===n?void 0:n.measurementType)===c.MeasurementTypes.MEASUREMENT_ARC&&(!E.getPick(1).circularArcCenter||E.hasPick(2)&&(!c.isEqualVectors(E.getPick(1).circularArcCenter,E.getPick(2).circularArcCenter,0)||E.getPick(1).circularArcRadius!==E.getPick(2).circularArcRadius)))return!1;i=!0}else{if(t&&s.model){var r=s.container.getBoundingClientRect(),l=t.canvasX||t.clientX-r.left,A=t.canvasY||t.clientY-r.top;if(l&&A){let e;if(s.impl.is2d)e=!0;else{const t=[];s.impl.renderer().idAtPixel(l,A,t);const i=t[1];if(i>0){const t=s.impl.modelQueue().findModel(i);e=null==t?void 0:t.is2d()}}L=e?c.inverseProject({x:l,y:A},s):null}}if(p&&E&&!this.isEditingEndpoint&&u===E.getMaxNumberOfPicks()+1)return!0;var h=this.getActivePick();h&&h.clear()}if(E&&(this.correctPickPosition(),p&&this._doConsumeSingleClick(),!this.isNoPicksSet())){var d=this.render();E.hasPick(2)&&(i&=d)}return i},this._doConsumeSingleClick=function(){var e;if(E.measurementType===c.MeasurementTypes.MEASUREMENT_AREA&&!E.closedArea){var t=E.countPicks(),i=E.getPick(1),n=E.getPick(t);t>=3&&E.hasEqualPicks(i,n)&&(n.clear(),delete E.picks[t],E.closedArea=!0)}this.updateResults();var a=E.isComplete();this.updateViewportId(a),s.dispatchEvent({type:D.l,mode:a?"end":"start"}),O.analytics.track("viewer.measure",{action:"Measurement",type:c.MeasurementTypesToAnalytics[E.measurementType],snapping:(null===(e=this.getActivePick())||void 0===e?void 0:e.geomType)!==c.SnapType.RASTER_PIXEL})},this.handleButtonDown=function(e,t){return l.isMobileDevice()||(h=!0,s.dispatchEvent({type:D.l,mode:"start"}),0!==t||e.ctrlKey||e.metaKey||e.shiftKey||e.altKey||(p=!0,g=e.canvasX,b=e.canvasY)),!1},this.handleMouseMove=function(t){return l.isMobileDevice()||(t.canvasX===g&&t.canvasY===b||(p=!1),d=this.isEditingEndpoint,this.isNoPicksSet()||this.areAllPicksSet()||(this.clearPick(u),this._handleMouseEvent(t)),function(){var t;if(E||T.setArc(!0),(null===(t=E)||void 0===t?void 0:t.measurementType)===c.MeasurementTypes.MEASUREMENT_ARC&&e.model.is2d()){var i=E&&E.getPick(1),n=E&&E.hasPick(2)&&E.getPick(2);const e=!i||E.countPicks().length>2||c.isEqualVectors(i.circularArcCenter,n.circularArcCenter,0)&&i.circularArcRadius===n.circularArcRadius;T.setArc(e)}}(),T.indicator.render()),!1},this.restoreMouseListeners=function(){s.toolController.getTool("gestures").controller.enableMouseButtons(!0)},this.handlePressHold=function(e){if(p=!1,l.isTouchDevice())switch(e.type){case"press":return M=!0,(this.areAllPicksSet()||this.isNoPicksSet())&&(this.startNewMeasurement(),v&&this.clearIsolate(),u=1),this._handleMouseEvent(e),T.indicator.render(),!0;case"pressup":return p=!0,this.restoreMouseListeners(),m=!m,this.handleSingleClick(e),M=!1,!0}return!1},this.handleGesture=function(e){if(l.isTouchDevice()){if(p=!1,M)switch(this.clearPick(u),e.type){case"dragstart":case"dragmove":return this._handleMouseEvent(e),T.indicator.render(),!0;case"dragend":return M=!1,p=!0,this.editByDrag||(m=!m,this.handleSingleClick(e)),this.editByDrag=!1,this.restoreMouseListeners(),!0;case"pinchstart":case"pinchmove":this._handleMouseEvent(e),T.indicator.render();break;case"pinchend":return p=!0,m=!m,this.handleSingleClick(e),this.restoreMouseListeners(),!0}if(-1!==e.type.indexOf("pinch"))for(var t in f.measurementsList){if(Object.prototype.hasOwnProperty.call(f.measurementsList,t))f.measurementsList[t].indicator.updateScale()}}return!1},this.handleButtonUp=function(e,t){return h=!1,s.dispatchEvent({type:D.l,mode:"end"}),g=null,b=null,d&&(p=!0,m=!m,this.handleSingleClick(e),d=!1),!1},this.handleSingleClick=function(e,t){return p&&(T.indicator.clearOverlays(),E&&E.indicator.changeEndpointOnEditStyle(u,!1),this._handleMouseEvent(e)?(this.updateResults(),u++):this.isEditingEndpoint?this.undoEditEndpoint():E&&E.measurementType===c.MeasurementTypes.MEASUREMENT_AREA&&this.canCloseArea()?(this.snapToFirstPick(this.getActivePick(),!0),this._handleMouseEvent()):this.clearCurrentMeasurement(),E&&E.isComplete()&&this.allPicksSet(),p=!1,m=!m,this.isEditingEndpoint=!1,T.clearSnapped()),!0},this.handleDoubleClick=function(e){return!0},this.onCameraChange=function(){for(var e in f.measurementsList){if(Object.prototype.hasOwnProperty.call(f.measurementsList,e))f.measurementsList[e].indicator.updateScale()}T.indicator.onCameraChange()},this.handleSingleTap=function(e){return m||(p=!0,T.onMouseDown({x:e.canvasX,y:e.canvasY}),this.handleSingleClick(e)),m=!m,!0},this.handleDoubleTap=function(t){if(E&&E.measurementType===c.MeasurementTypes.MEASUREMENT_AREA&&E.countPicks()>2){var i=E.getPick(1),n=c.getSnapResultPosition(i,s),a=c.project(n,e);t.canvasX=a.x,t.canvasY=a.y,p=!0,T.onMouseDown(a),this.handleSingleClick(t),m=!m}return!0},this.handleResize=function(){for(var e in f.measurementsList)if(Object.prototype.hasOwnProperty.call(f.measurementsList,e)){var t=f.measurementsList[e];t.indicator&&t.indicator.handleResize()}},this.handleKeyDown=function(e,t){switch(t){case Autodesk.Viewing.KeyCode.BACKSPACE:case Autodesk.Viewing.KeyCode.DELETE:return E&&E.measurementType===c.MeasurementTypes.MEASUREMENT_AREA&&!this.areAllPicksSet()&&E.countPicks()>2?this.deleteCurrentPick():this.deleteCurrentMeasurement(),!0}return!1},this.isCalibrationSetOnPage=function(){return i.calibrateWithPage&&null!=r.calibrationFactor}}I.GlobalManagerMixin.call(V.prototype);var z=Autodesk.Viewing,U=Autodesk.Viewing.MeasureCommon;function G(e,t,i){r.call(this,e,t,i),this.calibrationTool=i,this.calibrationLabel=null,this.endpoints=null,this.tmpVector=new THREE.Vector3,this.p1=null,this.p2=null,this.rubberbandDefaultMaterial=new THREE.MeshBasicMaterial({color:15249964,opacity:1,transparent:!1,depthTest:!1,depthWrite:!1,side:THREE.DoubleSide}),this.rubberbandSnappedMaterial=new THREE.MeshBasicMaterial({color:23502,opacity:1,transparent:!1,depthTest:!1,depthWrite:!1,side:THREE.DoubleSide}),this.rubberbandTipMaterial=new THREE.MeshBasicMaterial({color:0,opacity:1,transparent:!1,depthTest:!1,depthWrite:!1,side:THREE.DoubleSide})}G.prototype=Object.create(r.prototype),G.prototype.constructor=G;var Y=G.prototype;function H(e,t){return e.right>=t.left&&e.right<=t.right}function _(e,t){return e.left>=t.left&&e.left<=t.right}function F(e,t){return e.left<=t.left&&e.right>=t.right}function W(e,t,i){e.style.left=parseInt(e.style.left,10)+(i.right-t.left)+"px"}function j(e,t,i){e.style.top=parseInt(e.style.top,10)+(i.bottom-t.top)+"px"}Y.createEndpoint=function(e){this.endpoints[e]={},this.endpoints[e].position=null;const t=this.getDocument();var i=this.endpoints[e].label=t.createElement("div");i.className="calibration-endpoint",this.viewer.container.appendChild(i);var n=t.createElement("div");n.className="calibration-endpoint-text",n.textContent=e.toString(),i.appendChild(n),z.isTouchDevice()&&this.initLabelMobileGestures(i,e,this.calibrationTool),z.isMobileDevice()||(U.safeToggle(i,"enable-hover",!0),this.initMouseEvent(i,e),i.addEventListener("mousewheel",this.viewer.toolController.mousewheel))},Y.init=function(){if(U.createCommonOverlay(this.viewer,this.overlayName),!this.calibrationLabel){const t=this.getDocument();this.calibrationLabel=t.createElement("div"),this.calibrationLabel.className="calibration-label",this.hideLabel(this.calibrationLabel),this.viewer.container.appendChild(this.calibrationLabel),this.calibrationLabel.addEventListener("mousewheel",this.viewer.toolController.mousewheel);var e=t.createElement("div");e.className="calibration-label-text",this.calibrationLabel.appendChild(e)}this.endpoints=[],this.handleButtonUpBinded=this.calibrationTool.handleButtonUp.bind(this.calibrationTool),this.addWindowEventListener("mouseup",this.handleButtonUpBinded),this.onCameraChangeBinded=this.onCameraChange.bind(this),this.viewer.addEventListener(z.CAMERA_CHANGE_EVENT,this.onCameraChangeBinded)},Y.destroy=function(){this.clear(),r.prototype.destroy.call(this),this.calibrationLabel&&(this.calibrationLabel.removeEventListener("mousewheel",this.viewer.toolController.mousewheel),this.viewer.container.removeChild(this.calibrationLabel),this.calibrationLabel=null),this.viewer.impl.clearOverlay(this.overlayName,!0),this.viewer.impl.removeOverlayScene(this.overlayName),this.removeWindowEventListener("mouseup",this.handleButtonUpBinded),this.viewer.removeEventListener(z.CAMERA_CHANGE_EVENT,this.onCameraChangeBinded)},Y.clearRubberband=function(){this.viewer.impl.clearOverlay(this.overlayName,!0)},Y.clear=function(){for(var e in this.clearRubberband(),this.hideLabel(this.calibrationLabel),this.endpoints)Object.prototype.hasOwnProperty.call(this.endpoints,e)&&(this.hideClick(e),this.endpoints[e].position=null)},Y.updateLabelValue=function(e){e&&""!==e?(this.calibrationLabel.childNodes[0].setAttribute("data-i18n",e),this.calibrationLabel.childNodes[0].textContent=z.i18n.translate(e),this.showLabel(this.calibrationLabel),this.calibrationTool.render()):(this.calibrationLabel.childNodes[0].textContent=null,this.hideLabel(this.calibrationLabel))},Y.changeLabelClickableMode=function(e){this.calibrationLabel.childNodes[0].style.pointerEvents=e?"all":"none"},Y.showAddCalibrationLabel=function(){var e=this;this.updateLabelValue("Add Calibration"),this.changeLabelClickableMode(!0),this.calibrationTool.render(),this.calibrationLabel.addEventListener("click",(function t(){e.calibrationLabel.childNodes[0].style.pointerEvents="none",e.calibrationTool.render(),e.updateLabelValue(null),e.calibrationTool.showPanel(),e.calibrationLabel.removeEventListener("click",t)}))},Y.updateLabelsPosition=function(){for(var e=1;e<=Object.keys(this.endpoints).length;e++)if(this.endpoints[e].position){var t=this.endpoints[e].label,i=U.project(this.endpoints[e].position,this.viewer,15);t.style.left=i.x-parseInt(t.clientWidth)/2+"px",t.style.top=i.y-parseInt(t.clientHeight)/2+"px",t.point=this.endpoints[e].position,this.labelsOverlapDetection(this.endpoints[e].label,this.endpoints)}this.hideLabelsOutsideOfView()},Y.labelsOverlapDetection=function(e,t){for(var i=1;i<=Object.keys(t).length;i++){var n=t[i].label;if(e!==n){var a=e.getBoundingClientRect(),s=n.getBoundingClientRect();A=a,(c=s).topA.top&&(H(s,a)?(r=s,l=a,(o=n).style.left=parseInt(o.style.left,10)-(r.right-l.left)+"px"):_(s,a)?W(n,s,a):F(s,a)&&j(n,s,a))}}var o,r,l,c,A},Y.renderCalibrationLabel=function(){if(this.showMeasureResult&&this.calibrationLabel&&this.p1&&this.p2){var e={x:(this.p1.x+this.p2.x)/2,y:(this.p1.y+this.p2.y)/2,z:(this.p1.z+this.p2.z)/2},t=U.project(e,this.viewer);this.labelPosition=new THREE.Vector2(t.x,t.y),this.calibrationLabel.childNodes[0].textContent&&this.showLabel(this.calibrationLabel),this.calibrationLabel.style.top=this.labelPosition.y-Math.floor(this.calibrationLabel.clientHeight/2)+"px",this.calibrationLabel.style.left=this.labelPosition.x-Math.floor(this.calibrationLabel.clientWidth/2)+"px",this.calibrationLabel.point=e,this.viewer.model.is2d()&&this.alignLabelWithLine(this.calibrationLabel,this.p1,this.p2,this.calibrationLabel.clientHeight,this.viewer)}},Y.drawMeasurementLineTip=function(e,t,i,n){const a=[new THREE.Vector3,new THREE.Vector3],s=new THREE.BufferGeometry;var o=this.setScale(e);n=n?-1:1;var r=this.snapper.isSnapped()&&!this.showMeasureResult?this.rubberbandSnappedMaterial:this.rubberbandTipMaterial;a[0].addVectors(e,i.clone().multiplyScalar(5*o)),a[1].subVectors(e,i.clone().multiplyScalar(5*o)),s.setFromPoints(a),this.drawLineAsCylinder(s,r,1.5,this.overlayName),a[0].copy(e),a[1].subVectors(e,t.clone().multiplyScalar(5*o*n)),s.setFromPoints(a),this.drawLineAsCylinder(s,r,1.5,this.overlayName),a[0].addVectors(e,i.clone().multiplyScalar(3*o)),a[1].subVectors(e,i.clone().multiplyScalar(3*o)),s.setFromPoints(a),this.drawLineAsCylinder(s,this.rubberbandDefaultMaterial,2,this.overlayName),a[0].addVectors(e,i.clone().multiplyScalar(3*o)),a[0].addVectors(a[0],t.clone().multiplyScalar(3*o)),a[1].subVectors(e,i.clone().multiplyScalar(3*o)),a[1].subVectors(a[1],t.clone().multiplyScalar(3*o)),s.setFromPoints(a),this.drawLineAsCylinder(s,this.rubberbandDefaultMaterial,2,this.overlayName)},Y.renderDistanceMeasurement=function(e,t){if(this.viewer.impl.clearOverlay(this.overlayName,!0),e&&t){var i=(new THREE.Vector3).subVectors(t,e).normalize(),n=i.clone().cross(this.viewer.navigation.getEyeVector()).normalize(),a=this.setScale(e),s=2*a,o=1*a,r=(Math.abs(e.x-t.x)<=.1||Math.abs(e.y-t.y)<=.1||this.snapper.getSnapResult().isPerpendicular)&&!this.showMeasureResult?this.rubberbandSnappedMaterial:this.rubberbandDefaultMaterial;if(this.showMeasureResult){const i=(new THREE.BufferGeometry).setFromPoints([e,t]);this.drawLineAsCylinder(i,r,3,this.overlayName)}else this.drawDashedLine(e,t,s,o,r,3,this.overlayName);this.drawMeasurementLineTip(e,i,n,!1),this.showMeasureResult&&this.drawMeasurementLineTip(t,i,n,!0),this.p1=e,this.p2=t,this.renderCalibrationLabel()}},Y.onCameraChange=function(){this.measurement.isComplete()&&this.renderDistanceMeasurement(this.p1,this.p2),this.updateLabelsPosition()};var Q=Autodesk.Viewing,Z=Autodesk.Viewing.Extensions,J=Autodesk.Viewing.Private,X=Autodesk.Viewing.UI,q=Autodesk.Viewing.MeasureCommon;const K=X&&X.DockingPanel||class{},$=Z&&Z.ViewerPanelMixin||function(){},ee=Q.getGlobal().document;var te=function(e,t,i,n,a){var s=this;(a=a||{}).addFooter=!1,K.call(this,t.container,i,n,a),this.viewer=t,this.calibrationTool=e,this.parentContainer=t.container,this.container.style.left="0px",this.container.style.top="0px",this.container.style.resize="none",this.container.classList.add("calibration-panel"),this.setGlobalManager&&this.setGlobalManager(t.globalManager),this.addEventListener(this.closer,"click",(function(e){s.cancel()})),a.heightAdjustment||(a.heightAdjustment=40),a.marginTop||(a.marginTop=0),a.left=!1,this.createScrollContainer(a);const o=this.getDocument&&this.getDocument()||ee;this.calibrationMenu=o.createElement("div"),this.scrollContainer.appendChild(this.calibrationMenu),this.table=o.createElement("table"),this.table.className="adsk-lmv-tftable calibration-table",this.tbody=o.createElement("tbody"),this.table.appendChild(this.tbody),this.calibrationMenu.appendChild(this.table),this.row=this.tbody.insertRow(0),this.requestedSizeTextbox=o.createElement("input"),this.requestedSizeTextbox.className="docking-panel-textbox",this.requestedSizeTextbox.type="text",this.requestedSizeTextbox.autofocus="true",this.addEventListener(this.requestedSizeTextbox,"keyup",(function(e){var t=s.requestedSizeTextbox.value;""!==t&&""===t.split(".")[0]&&(s.requestedSizeTextbox.value="0"+t),s.updateLabel()})),this.addEventListener(this.requestedSizeTextbox,"keypress",(function(e){var t=e.key||String.fromCharCode(e.keyCode);if("Backspace"!=t&&"ArrowLeft"!=t&&"ArrowRight"!=t)if(e.keyCode!=Q.KeyCode.ESCAPE){if(e.keyCode==Q.KeyCode.ENTER){var i=s.unitList.selectedIndex,n=s.units[i].units;s.calibrationTool.calibrate(n,s.requestedSizeTextbox.value)}var a=s.requestedSizeTextbox.value,o=s.requestedSizeTextbox.selectionStart;if("."!=(a=[a.slice(0,o),t,a.slice(o)].join(""))){var r=s.units[s.unitList.selectedIndex].simpleInput;(!ie(a)||r&&(!ne(a)||Autodesk.Viewing.Private.calculatePrecision(a)>s.calibrationTool.getMaxPrecision()))&&e.preventDefault()}}else s.cancel()}));var r="Define Size",l=this.row.insertCell(0);this.caption=o.createElement("div"),this.caption.setAttribute("data-i18n",r),this.caption.textContent=Q.i18n.translate(r),l.appendChild(this.caption),(l=this.row.insertCell(1)).appendChild(this.requestedSizeTextbox),this.units=[{name:"Feet and fractional inches",units:"ft-and-fractional-in",matches:["ft-and-fractional-in","fractional-in"],simpleInput:!1},{name:"Feet and decimal inches",units:"ft-and-decimal-in",matches:["ft","decimal-ft","in","decimal-in","ft-and-decimal-in"],simpleInput:!1},{name:"Meters",units:"m",matches:["m","m-and-cm"],simpleInput:!0},{name:"Centimeters",units:"cm",matches:["cm"],simpleInput:!0},{name:"Millimeters",units:"mm",matches:["mm"],simpleInput:!0}];for(var c=[],A=0;A=0};te.prototype=Object.create(K.prototype),$.call(te.prototype),te.prototype.uninitialize=function(){this.viewer=null,K.prototype.uninitialize.call(this)},te.prototype.cancel=function(){this.setVisible(!1),this.calibrationTool.clearSize(),this.calibrationTool.showAddCalibrationLabel()},te.prototype.findUnits=function(){var e,t,i=this.calibrationTool.getCurrentUnits();for(e=0;ethis.viewer.canvas.clientWidth||s<0||s+r>this.viewer.canvas.clientHeight)&&(a=Math.floor((this.viewer.canvas.clientWidth-o)/2),s=Math.floor((this.viewer.canvas.clientHeight-r)/2))}else a=Math.floor((this.viewer.canvas.clientWidth-o)/2),s=Math.floor((this.viewer.canvas.clientHeight-r)/2);this.container.style.left=a+"px",this.container.style.top=s+"px"};var ae=function(e,t,i,n,a){var s=this;(a=a||{}).addFooter=!1,K.call(this,t.container,i,n,a),this.viewer=t,this.measureExt=e,this.parentContainer=t.container,this.container.classList.add("calibration-panel"),this.setGlobalManager&&this.setGlobalManager(t.globalManager),a.heightAdjustment||(a.heightAdjustment=70),a.marginTop||(a.marginTop=0),a.left=!1;const o=this.getDocument&&this.getDocument()||ee;this.createScrollContainer(a),this.dialogBox=o.createElement("div"),this.scrollContainer.appendChild(this.dialogBox);var r=o.createElement("div");r.className="calibration-text";var l="Calibration Message";r.setAttribute("data-i18n",l),r.textContent=Q.i18n.translate(l),this.dialogBox.appendChild(r);var c=o.createElement("div");c.className="calibration-buttons-wrapper",this.dialogBox.appendChild(c);var A=o.createElement("div");A.classList.add("docking-panel-secondary-button"),A.classList.add("calibration-button-left"),A.setAttribute("data-i18n","Cancel"),A.textContent=Q.i18n.translate("Cancel"),A.addEventListener("click",(function(){s.setVisible(!1)}),!1),c.appendChild(A);var h=o.createElement("div");h.classList.add("docking-panel-primary-button"),h.classList.add("calibration-button-right"),h.setAttribute("data-i18n","Calibrate Now"),h.textContent=Q.i18n.translate("Calibrate Now"),h.addEventListener("click",(function(){s.measureExt.enableCalibrationTool(!0),s.setVisible(!1)}),!1),c.appendChild(h)};ae.prototype=Object.create(K.prototype),$.call(ae.prototype),ae.prototype.uninitialize=function(){this.viewer=null,K.prototype.uninitialize.call(this)};const se=Autodesk.Viewing;var oe=function(e,t,i,n){var a=Autodesk.Viewing,s=Autodesk.Viewing.MeasureCommon,o=["calibration"],r=e,l=new s.Measurement(s.MeasurementTypes.MEASUREMENT_DISTANCE),c=t||{};this.setGlobalManager(e.globalManager);var A=i,h=t.maxPrecision||5,d=null!=i.calibrationFactor,u=n,p=!1,m=!1,g=!1,b=null,C=!1,v=null,f=null,E=null,w=null,y=!1,x=[],k=null,T=0,M=!1,B=!1,L=!1,S=null,R=null,N=null,P=Autodesk.Viewing.GuiViewer3D&&e instanceof Autodesk.Viewing.GuiViewer3D;function I(){switch(T){case 0:return null;case 1:case 2:return l.getPick(T);case 3:return l.getPick(l.countPicks())}}function O(){switch(T){case 0:return null;case 1:return l.getPick(l.countPicks());case 2:case 3:return l.getPick(1)}}function V(){T=0}function z(){T=3,l.indicator.changeAllEndpointsEditableStyle(!0)}function U(){return 0===T}function Y(){return 3===T}this.register=function(){P&&!N&&(N=new te(this,r,"calibration-panel","Calibration",c),r.addPanel(N)),this.onCameraChangeBinded=this.onCameraChange.bind(this),this.screenSizeChangedBinded=this.screenSizeChanged.bind(this)},this.deregister=function(){this.deactivate(),N&&(r.removePanel(N),N.uninitialize(),N=null)},this.isActive=function(){return p},this.getNames=function(){return o},this.getName=function(){return o[0]},this.getPriority=function(){return 50},this.getCursor=function(){return m?null:"url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAYCAYAAAD+vg1LAAAAAXNSR0IArs4c6QAAAwZJREFUSA2tVEtLW0EUvjGJefoqSY0x0WBSiY+oNWiUINkU6ioLaaAlG1eudNVFoT+grgopiCkEIbUK1o0lusmurRSEWmmKG6MNtNhNosWqyU2CZPpN8cr15nFD7YHDzHnON2fOGYZhmHkw4XEW+wD4xkT4lMvl6CE0+Y2ohh+dz+cZn89HVS/5+n/d/wVMkXq9Xor2v5SBgsmymQwZHx+vOqlKpXKDXWI3eU6Tg+kqSjSh3W4/s9lsvzUajaNcAK3xY7Dyci3nd6WXSCS60dHRvMfjSRcKBfWV4SYbrVarB8p0PB5nY7HYmdVq/aDX67WlckpKKcvpOjs7X09OTvoPDw8z2Wy2Bu+imJqa+npycnJXGHOt3YRGoSyVSvvMZrNkYWFBs7GxkaoBAXFJcDJhcCW5rq5ur62trQ/EOhyOBhDT2Nj4qVKMqA31ve1yub7Rfufo/PycDA4OxpuamhqECaouhVqtfuD3+1tqa2uZQCCQDoVCWTwknVQDDvIKE1clI1ja09Ozg0cjx8fHpL+/P+50OhMU8f7+Punt7f2I5NdqXRXi9fV1z9jYWCuIWV5eziSTyWAqlXq1urqaw6AwOMiCG4lOYtEturu732xubhK0FQHSvfr6+lsog4HWPIPvIBqNErRiqCiwkkKpVFowZd8xZSQYDLImk+kJ52+xWJ4tLS3hU8yTkZGRBD2Ms4mu6Nun4XA4f3p6SoaGhuJ0+rgg/Bsmt9udYFmWzM3NZdDT05ztWsE5JV0R1AqUCfTt0fb2tjESiRRmZmaOUOcI3w9DY5mdnb03PDzMoDQ/MZFRzM20lO/E38vl8vt46UdAq0WNJWixlEwmu8B1bXioOxwjpgXJ0hMTE1og1qysrDghf+HnKtoD7c7u7i5ZXFzMGY3GF7iFuRR3dHTMr62tXWxtbZH29vZ3RYmECozu54ODAzpdP2hphHZOVigUVjChvgMDA+85fdm1q6vrrU6n+4WR9Zd1ujQ0Nzc/NBgMScSExXwZ2j5oL5Wo46UD/ZvxUemo+AdW1zJzUYr16wAAAABJRU5ErkJggg==), auto"},this.activate=function(){if(p=!0,m=!1,this.isEditingEndpoint=!1,this.editByDrag=!1,V(),r.toolController.activateTool(u.getName()),r.toolController.activateTool("magnifyingGlass"),l.indicator||l.attachIndicator(r,this,G),l.indicator.clear(),C&&E&&w){l.setPick(1,E.clone()),l.setPick(2,w.clone()),z();var e=Autodesk.Viewing.Private.UnitParser.parsePositiveNumber(v,f);l.indicator.updateLabelValue(Autodesk.Viewing.Private.formatValueWithUnits(e,f,3,A.precision)),b=l.distanceXYZ,l.indicator.changeLabelClickableMode(!1),y=!0;var t=this.render();l.indicator.changeAllEndpointsEditableStyle(!0),t&&(N&&N.setPanelValue(v),this.showPanel())}else if(P){const e={messageKey:"Select two points",messageDefaultValue:"Select two points to calibrate drawing",position:"top"};Autodesk.Viewing.Private.HudMessage.displayMessage(r.container,e)}r.addEventListener(Autodesk.Viewing.CAMERA_CHANGE_EVENT,this.onCameraChangeBinded),r.addEventListener(Autodesk.Viewing.VIEWER_RESIZE_EVENT,this.screenSizeChangedBinded)},this.deactivate=function(){p&&(r.dispatchEvent({type:D.l,mode:"end"}),p=!1,Autodesk.Viewing.Private.HudMessage.dismiss(),this.hidePanel(),this.updateViewportId(!0),y=!1,l.clearAllPicks(),u&&u.isActive()&&r.toolController.deactivateTool(u.getName()),r.toolController.deactivateTool("magnifyingGlass"),l.indicator&&(l.indicator.clear(),l.indicator.destroy(),l.indicator=null),r.removeEventListener(Autodesk.Viewing.CAMERA_CHANGE_EVENT,this.onCameraChangeBinded),r.removeEventListener(Autodesk.Viewing.VIEWER_RESIZE_EVENT,this.screenSizeChangedBinded))},this.getActivePointIndex=function(){return T},this.setCalibrationFactor=function(e){A.calibrationFactor=e},this.getCalibrationFactor=function(){return A.calibrationFactor},this.updateLabelValue=function(e){l.indicator.updateLabelValue(e)},this.isCalibrationValid=function(e,t){var i=Autodesk.Viewing.Private.UnitParser.parsePositiveNumber(t,e);return!isNaN(i)},this.calibrate=function(e,t){var i=null,n=Autodesk.Viewing.Private.UnitParser.parsePositiveNumber(t,e);if(!isNaN(n)){var a=Autodesk.Viewing.Private.convertUnits(r.model.getUnitString(),e,1,b);if(0!==a&&!isNaN(a)){i=n/a,A.calibrationFactor=i,A.units=e;var o=r.model.is2d()?3:1,c=Autodesk.Viewing.Private.calculatePrecision(t);A.precision=Math.max(A.precision?A.precision:o,c),v=t,f=e,d=!0,C=!0,E=l.getPick(1).clone(),w=l.getPick(2).clone()}}i&&(r.getExtension("Autodesk.Measure").enableCalibrationTool(!1),r.dispatchEvent({type:s.Events.FINISHED_CALIBRATION,units:e,scaleFactor:i,size:t}))},this.calibrateByScale=function(e,t){A.calibrationFactor=t,A.units!==e&&(A.units=e,f=e),d=!0},this.getCurrentUnits=function(){return A.units},this.hidePanel=function(){N?N.setVisible(!1):r.dispatchEvent({type:s.Events.CLOSE_CALIBRATION_PANEL_EVENT})},this.showPanel=function(){Autodesk.Viewing.Private.HudMessage.dismiss();var e=this;const t=this.getWindow();N?(t.setTimeout((function(){N.requestedSizeTextbox.focus()}),0),N.setVisible(!0),N.updatePanelPosition(l.indicator.labelPosition,l.indicator.p1,l.indicator.p2,l.indicator.calibrationLabel.clientHeight),N.updateUnits(),e.addWindowEventListener("keyup",(function t(i){"Escape"==(i.key||String.fromCharCode(i.keyCode))&&e.isActive()&&(e.hidePanel(),e.clearSize(),e.showAddCalibrationLabel(),e.removeWindowEventListener("keyup",t))}))):r.dispatchEvent({type:s.Events.OPEN_CALIBRATION_PANEL_EVENT,data:{size:v,units:f}})},this.updateCalibrationPanel=function(){N&&N.updateUnits()},this.showAddCalibrationLabel=function(){l.indicator.showAddCalibrationLabel()},this.isCalibrated=function(){return d},this.clearSize=function(){l.indicator.updateLabelValue(null),N?N.requestedSizeTextbox.value="":r.dispatchEvent({type:s.Events.CLEAR_CALIBRATION_SIZE_EVENT})},this.getMaxPrecision=function(){return h},this.clearMeasurement=function(){V(),this.clearPick(1),this.clearPick(2),l.indicator.clear(),this.updateViewportId(!0),this.hidePanel(),y=!1},this.clearPick=function(e){l.hasPick(e)&&(l.clearPick(e),l.indicator.hideClick(e))},this.repickEndpoint=function(e){this.clearPick(e),this.editEndpoint(null,e)},this.getSnapper=function(){return u},this._handleMouseEvent=function(e){var t=!1;if(u.isSnapped())(Y()||U())&&(this.clearMeasurement(),T=1),u.copyResults(I()),t=!0;else{if(e&&r.model.is2d()){var i=r.container.getBoundingClientRect(),n=e.canvasX||e.clientX-i.left,a=e.canvasY||e.clientY-i.top;n&&a&&(k=s.inverseProject({x:n,y:a},r))}if(B&&l&&!this.isEditingEndpoint&&T===l.getMaxNumberOfPicks()+1)return!0;var o=I();o&&o.clear()}if(this.correctPickPosition(),B&&this._doConsumeSingleClick(t),!U()){var c=this.render();l.hasPick(2)&&(t&=c)}return B&&(l.isComplete()&&t?(b=l.distanceXYZ,this.clearSize(),this.showPanel(),y=!0,r.dispatchEvent({type:D.l,mode:"end"})):(r.dispatchEvent({type:D.l,mode:"start"}),this.hidePanel(),l.indicator.updateLabelValue(null),y=!1)),t},this.updateViewportId=function(t){if(r.model&&r.model.is2d())if(t||U())e.impl.updateViewportId(0),u.setViewportId(null);else if(!g){var i=O().viewportIndex2d||I().viewportIndex2d;e.impl.updateViewportId(i),u&&u.setViewportId(i)}},this._doConsumeSingleClick=function(e){this.updateViewportId(l.isComplete()),l.indicator.clear()},this.handleButtonDown=function(e,t){return a.isMobileDevice()||(m=!0,0!==t||e.ctrlKey||e.metaKey||e.shiftKey||e.altKey||(B=!0,S=e.canvasX,R=e.canvasY)),!1},this.handleMouseMove=function(e){return a.isMobileDevice()||(e.canvasX===S&&e.canvasY===R||(B=!1),M=this.isEditingEndpoint,U()||Y()||(this.clearPick(T),this._handleMouseEvent(e)),u.indicator.render()),!1},this.restoreMouseListeners=function(){r.toolController.getTool("gestures").controller.enableMouseButtons(!0)},this.handlePressHold=function(e){if(B=!1,a.isTouchDevice())switch(e.type){case"press":return g=!0,Y()?this.clearMeasurement():this.clearPick(T),this._handleMouseEvent(e),u.indicator.render(),!0;case"pressup":return B=!0,this.restoreMouseListeners(),L=!L,this.handleSingleClick(e),g=!1,!0}return!1},this.correctPickPosition=function(){var t=I();if(t&&!t.getGeometry()&&k&&(t.geomType=s.SnapType.SNAP_VERTEX,t.geomVertex=k,t.intersectPoint=k),function(){switch(T){case 0:return!1;case 1:return l.hasPick(l.countPicks());case 2:case 3:return l.hasPick(1)}}()){var i=O();s.correctPerpendicularPicks(i,t,e,u)}},this.render=function(){var e=l.computeResult(l.picks,r,u);return l.indicator.render(l.picks,B||y),e},this.editEndpoint=function(e,t){if(T===t)return l.indicator.changeEndpointOnEditStyle(t,!1),void this.undoEditEndpoint();for(var i in T=t,this.isEditingEndpoint=!0,l.indicator.changeEndpointOnEditStyle(t,!0),l.indicator.changeAllEndpointsEditableStyle(!1),l.picks)Object.prototype.hasOwnProperty.call(l.picks,i)&&(x[i]=l.getPick(i).clone());this.updateViewportId(),r.dispatchEvent({type:D.l,mode:"start"}),this.hidePanel(),l.indicator.updateLabelValue(null),y=!1,a.isMobileDevice()||this._handleMouseEvent(e)},this.undoEditEndpoint=function(){for(var e in l.indicator.clear(),l.picks)Object.prototype.hasOwnProperty.call(l.picks,e)&&l.setPick(e,x[e].clone());this.updateViewportId(!0),this.isEditingEndpoint=!1,y=!0,z(),this.render()&&this.showPanel()},this.handleGesture=function(e){if(a.isTouchDevice()&&(B=!1,g))switch(this.clearPick(T),e.type){case"dragstart":case"dragmove":return this._handleMouseEvent(e),u.indicator.render(),!0;case"dragend":return g=!1,B=!0,this.editByDrag||(L=!L,this.handleSingleClick(e)),this.editByDrag=!1,this.restoreMouseListeners(),!0;case"pinchend":return B=!0,L=!L,this.handleSingleClick(e),this.restoreMouseListeners(),!0}return!1},this.handleButtonUp=function(e){return m=!1,S=null,R=null,M&&(B=!0,L=!L,this.handleSingleClick(e),M=!1),!1},this.handleSingleClick=function(e){return B&&(u.indicator.clearOverlays(),l.indicator.changeEndpointOnEditStyle(T,!1),this._handleMouseEvent(e)?(l.indicator.showEndpoints(),l.indicator.updateLabelsPosition(),T++):this.isEditingEndpoint?this.undoEditEndpoint():this.clearMeasurement(),l.isComplete()&&z(),B=!1,L=!L,this.isEditingEndpoint=!1,u.clearSnapped()),!0},this.handleDoubleClick=function(){return!0},this.handleSingleTap=function(e){return L||(B=!0,u.onMouseDown({x:e.canvasX,y:e.canvasY}),this.handleSingleClick(e)),L=!L,!0},this.handleDoubleTap=function(){return!0},this.handleResize=function(){l.indicator&&l.indicator.handleResize()},this.onCameraChange=function(){u.indicator&&u.indicator.onCameraChange()},this.screenSizeChanged=function(e){this.onCameraChange()}};se.GlobalManagerMixin.call(oe.prototype);const re=Autodesk.Viewing;var le=function(e){var t=e,i=!1,n=["magnifyingGlass"],a=!1,s=null,o=null,r=null,l=null,c=null,A=!1,h=Autodesk.Viewing;this.setGlobalManager(e.globalManager),this.register=function(){this.updateMagnifyingGlassBinded=this.updateMagnifyingGlass.bind(this)},this.isActive=function(){return i},this.activate=function(){i=!0},this.updateMagnifyingGlass=function(){const e=this.getWindow(),i=this.getDocument();if(A)s&&s.classList.remove("visible"),A=!1;else{var n=e.devicePixelRatio,a=120,h=a*n,d=n*(l-30),u=n*(c-30);s||((s=i.createElement("canvas")).className="magnifying-glass",s.width=h,s.height=h,s.style.width=a+"px",s.style.height=a+"px",s.getContext("2d").translate(0,h),s.getContext("2d").scale(1,-1),t.container.appendChild(s),o=s.getContext("2d").createImageData(Math.ceil(h/2),Math.ceil(h/2)),r=new Uint8Array(o.data.buffer));var p=s.getContext("2d"),m=t.impl.glrenderer().getContext();m.readPixels(d,t.canvas.height-u-o.height,o.width,o.height,m.RGBA,m.UNSIGNED_BYTE,r),p.putImageData(o,0,0),p.drawImage(s,0,0,o.width,o.height,0,0,h,h),this.setGlassPosition(s,l,c,a,15),s.classList.toggle("visible",!0)}},this.deactivate=function(){this.clearMagnifyingGlass(),i=!1},this.getNames=function(){return n},this.getName=function(){return n[0]},this.getPriority=function(){return 70},this.setGlassPosition=function(e,t,i,n,a){e.style.left=t-n/2+"px",e.style.top=i-n-a>0?i-n-a+"px":i+a+"px"},this.requestUpdate=function(){t.hasEventListener(Autodesk.Viewing.RENDER_PRESENTED_EVENT,this.updateMagnifyingGlassBinded)||t.addEventListener(Autodesk.Viewing.RENDER_PRESENTED_EVENT,this.updateMagnifyingGlassBinded,{once:!0})},this.drawMagnifyingGlass=function(e,i){A=!1,l=e,c=i,t.impl.invalidate(!1,!1,!0),this.requestUpdate()},this.clearMagnifyingGlass=function(){A=!0,this.requestUpdate()},this.handlePressHold=function(e){if(h.isTouchDevice())switch(e.type){case"press":a=!0,this.drawMagnifyingGlass(e.canvasX,e.canvasY);break;case"pressup":this.clearMagnifyingGlass(),a=!1}return!1},this.handleGesture=function(e){if(a&&h.isTouchDevice())switch(e.type){case"dragstart":case"dragmove":case"pinchstart":case"pinchmove":this.drawMagnifyingGlass(e.canvasX,e.canvasY);break;case"dragend":this.clearMagnifyingGlass(),a=!1;break;case"pinchend":this.clearMagnifyingGlass()}return!1},this.handleMouseMove=function(e){return!1},this.handleWheelInput=function(e){return!1},this.handleButtonUp=function(e,t){return!1}};re.GlobalManagerMixin.call(le.prototype);var ce=Autodesk.Viewing,Ae=Autodesk.Viewing.UI,he=Autodesk.Viewing.Private,de=Autodesk.Viewing.MeasureCommon;function ue(e){this.measureExtension=e,this.measureTool=this.measureExtension.measureTool,this.viewer=this.measureExtension.viewer,this.setGlobalManager(this.viewer.globalManager),this.visible=!1,this.buttonsList=[]}var pe=ue.prototype;ce.GlobalManagerMixin.call(ue.prototype),pe.onUnitChange=function(e,t){t?this.measureTool.setUnits(e):(this.updateSettingsPanel(),he.logger.track({category:"pref_changed",name:"measure/units",value:e}))},pe.onPrecisionChange=function(e,t){t?this.measureTool.setPrecision(e):(this.updateSettingsPanel(),he.logger.track({category:"pref_changed",name:"measure/precision",value:e}))},pe.init=function(){var e=this;const t=this.getDocument();this.onUnitChangeBound=this.onUnitChange.bind(this),this.viewer.addEventListener(de.Events.DISPLAY_UNITS_CHANGED,this.onUnitChangeBound),this.onPrecisionChangeBound=this.onPrecisionChange.bind(this),this.viewer.addEventListener(de.Events.PRECISION_CHANGED,this.onPrecisionChangeBound);var i=this.viewer.getToolbar(),n=i.getControl(Autodesk.Viewing.TOOLBAR.NAVTOOLSID),a={};a.index=i.indexOf(n)+1,this.measureToolbar=new Ae.ControlGroup(Autodesk.Viewing.TOOLBAR.MEASURETOOLSID),this.measureToolbar.setGlobalManager(this.globalManager),i.addControl(this.measureToolbar,a),this.measureSimpleDistanceBtn=new Ae.Button("toolbar-measureTool-simple-distance"),this.measureSimpleDistanceBtn.setGlobalManager(this.globalManager),this.measureSimpleDistanceBtn.setToolTip("Distance"),this.measureSimpleDistanceBtn.setIcon("adsk-icon-measure-distance-new"),this.measureSimpleDistanceBtn.onClick=function(){e.measureSimpleDistanceBtn.getState()!==Ae.Button.State.ACTIVE?e.measureExtension.activate("distance"):e.measureTool.deselectAllMeasurements()},this.measureToolbar.addControl(this.measureSimpleDistanceBtn),this.buttonsList[de.MeasurementTypes.MEASUREMENT_DISTANCE]=this.measureSimpleDistanceBtn,this.measureAngleBtn=new Ae.Button("toolbar-measureTool-angle"),this.measureAngleBtn.setGlobalManager(this.globalManager),this.measureAngleBtn.setToolTip("Angle"),this.measureAngleBtn.setIcon("adsk-icon-measure-angle-new"),this.measureAngleBtn.onClick=function(){e.measureAngleBtn.getState()!==Ae.Button.State.ACTIVE?e.measureExtension.activate("angle"):e.measureTool.deselectAllMeasurements()},this.measureToolbar.addControl(this.measureAngleBtn),this.buttonsList[de.MeasurementTypes.MEASUREMENT_ANGLE]=this.measureAngleBtn,this.viewer.model&&this.viewer.model.is2d()&&(this.measureAreaBtn=new Ae.Button("toolbar-measureTool-area"),this.measureAreaBtn.setGlobalManager(this.globalManager),this.measureAreaBtn.setToolTip("Area"),this.measureAreaBtn.setIcon("adsk-icon-measure-area-new"),this.measureAreaBtn.onClick=function(){e.measureAreaBtn.getState()!==Ae.Button.State.ACTIVE?e.measureExtension.activate("area"):e.measureTool.deselectAllMeasurements()},this.measureToolbar.addControl(this.measureAreaBtn),this.buttonsList[de.MeasurementTypes.MEASUREMENT_AREA]=this.measureAreaBtn),this.viewer.model&&this.viewer.model.is2d()&&(this.measureArcBtn=new Ae.Button("toolbar-measureTool-arc"),this.measureArcBtn.setGlobalManager(this.globalManager),this.measureArcBtn.setToolTip("Arc"),this.measureArcBtn.setIcon("adsk-icon-measure-arc-new"),this.measureArcBtn.onClick=function(){e.measureArcBtn.getState()!==Ae.Button.State.ACTIVE?e.measureExtension.activate("arc"):e.measureTool.deselectAllMeasurements()},this.measureToolbar.addControl(this.measureArcBtn),this.buttonsList[de.MeasurementTypes.MEASUREMENT_ARC]=this.measureArcBtn),this.calibrationToolBtn=new Ae.Button("toolbar-calibrationTool"),this.calibrationToolBtn.setGlobalManager(this.globalManager),this.calibrationToolBtn.setToolTip("Calibrate"),this.calibrationToolBtn.setIcon("adsk-icon-measure-calibration"),this.calibrationToolBtn.onClick=function(t){e.calibrationToolBtn.getState()!==Ae.Button.State.ACTIVE?e.measureExtension.activate("calibrate"):e.measureExtension.enableCalibrationTool(!1)},this.measureToolbar.addControl(this.calibrationToolBtn),this.buttonsList[de.MeasurementTypes.CALIBRATION]=this.calibrationToolBtn;var s=t.createElement("div");s.className="measure-toolbar-seperator",this.measureToolbar.container.appendChild(s),this.deleteBtn=new Ae.Button("toolbar-delete"),this.deleteBtn.setGlobalManager(this.globalManager),this.deleteBtn.setToolTip("Delete measurement"),this.deleteBtn.setIcon("adsk-icon-measure-trash"),this.deleteBtn.onClick=function(){e.measureExtension.deleteCurrentMeasurement()},this.measureToolbar.addControl(this.deleteBtn),this.settingsBtn=new Ae.Button("toolbar-settings"),this.settingsBtn.setGlobalManager(this.globalManager),this.settingsBtn.setToolTip("Measure settings"),this.settingsBtn.setIcon("adsk-icon-measure-settings"),this.settingsControlPanel=t.createElement("div"),this.settingsControlPanel.classList.add("docking-panel"),this.settingsControlPanel.classList.add("docking-panel-container-solid-color-b"),this.settingsControlPanel.classList.add("measure-settings-popup"),this.settingsControlPanel.classList.add("hide"),this.settingsBtn.onClick=function(e){this.settingsControlPanel.classList.contains("hide")?(this.settingsControlPanel.classList.remove("hide"),this.setButtonActive(this.settingsBtn)):(this.settingsControlPanel.classList.add("hide"),this.setButtonInactive(this.settingsBtn))}.bind(this),this.measureToolbar.container.appendChild(this.settingsControlPanel),this.settingsControlPanel.root=this.settingsBtn,this.measureToolbar.addControl(this.settingsBtn),this.table=t.createElement("table"),this.table.classList.add("adsk-lmv-tftable"),this.table.classList.add("calibration-table"),this.tbody=t.createElement("tbody"),this.table.appendChild(this.tbody),this.settingsControlPanel.appendChild(this.table),this.units=[{name:"Unknown",units:"",matches:[""]},{name:"Decimal feet",units:"decimal-ft",matches:["ft","decimal-ft"]},{name:"Feet and fractional inches",units:"ft-and-fractional-in",matches:["ft-and-fractional-in"]},{name:"Feet and decimal inches",units:"ft-and-decimal-in",matches:["ft-and-decimal-in"]},{name:"Decimal inches",units:"decimal-in",matches:["in","decimal-in"]},{name:"Fractional inches",units:"fractional-in",matches:["fractional-in"]},{name:"Meters",units:"m",matches:["m"]},{name:"Centimeters",units:"cm",matches:["cm"]},{name:"Millimeters",units:"mm",matches:["mm"]},{name:"Meters and centimeters",units:"m-and-cm",matches:["m-and-cm"]},{name:"Points",units:"pt",matches:["pt"]}];var o=this.findUnits(),r=[];ce.isSafari()&&this.viewer.model&&this.viewer.model.getDisplayUnit()&&this.units.shift();for(var l=0;l{this.setActive(e),e||this.deactivate()};return this.measureTool=new V(t,i,this.sharedMeasureConfig,this.snapper),t.toolController.registerTool(this.measureTool,n),this.calibrationTool=new oe(t,this.options,this.sharedMeasureConfig,this.snapper),t.toolController.registerTool(this.calibrationTool,n),this.magnifyingGlass=new le(t),t.toolController.registerTool(this.magnifyingGlass),this.calibration={},this.onFinishedCalibration=function(t){e.measureToolbar&&e.measureToolbar.updateSettingsPanel(),e.activateInitiator&&e.activateInitiator(),e.calibration.units=t.units,e.calibration.scaleFactor=t.scaleFactor,e.calibration.size=t.size,e.calibration.precision=e.sharedMeasureConfig.precision},t.addEventListener("finished-calibration",this.onFinishedCalibration),this.onMeasurementChanged=function(t){var i=t.data.type;e.changeMeasurementType(i)},t.addEventListener(Ie.Events.MEASUREMENT_CHANGED_EVENT,this.onMeasurementChanged),t.model?this._onModelLoaded({model:t.model}):t.addEventListener(De.MODEL_ROOT_LOADED_EVENT,this._onModelLoaded,{once:!0}),this.onModelRemoved=function(){e.measurementToolbarButton&&(e.viewer.model||(e.measurementToolbarButton.setState(Autodesk.Viewing.UI.Button.State.DISABLED),e.exitMeasurementMode()))},this.onModelAdded=function(){e.measurementToolbarButton&&(1===e.viewer.getVisibleModels().length&&e.measurementToolbarButton&&e.measurementToolbarButton.setState(Autodesk.Viewing.UI.Button.State.INACTIVE))},t.addEventListener(De.MODEL_ADDED_EVENT,this.onModelAdded),t.addEventListener(De.MODEL_REMOVED_EVENT,this.onModelRemoved),this.viewer.prefs.addListeners(Ne.Prefs.DISPLAY_UNITS,this._onDisplayUnitsPrefChanged,this._onDisplayUnitsPrefChanged),this.viewer.prefs.addListeners(Ne.Prefs.DISPLAY_UNITS_PRECISION,this._onPrecisionPrefChanged,this._onPrecisionPrefChanged),this.hasNotEntered=!0,!0},Ve.prototype._onDisplayUnitsPrefChanged=function(e){var t;""!==e&&(this.setUnits(e),null===(t=this.measureToolbar)||void 0===t||t.updateSettingsPanel(),this.calibrationTool.updateCalibrationPanel())},Ve.prototype._onPrecisionPrefChanged=function(e){var t;"number"==typeof e&&(this.setPrecision(e),null===(t=this.measureToolbar)||void 0===t||t.updateSettingsPanel())},Ve.prototype._onModelLoaded=function(e){var t=e.model;const i=!!t.isPdf(!0)&&!this.viewer.prefs.get(Ne.Prefs2D.FORCE_PDF_CALIBRATION),n=!!t.isLeaflet()&&!this.viewer.prefs.get(Ne.Prefs2D.FORCE_LEAFLET_CALIBRATION);let a,s=3;var o;((t.isSmartPdf()||this.viewer.prefs.get(Ne.Prefs2D.USE_PDF_VIEWPORT_INFO))&&t.getData().viewports&&t.getData().viewports.length>1&&(a=Ne.fixUnitString(t.getData().viewports[1].units),Number.isInteger(t.getData().viewports[1].precision)&&t.getData().viewports[1].precision>=0&&(s=t.getData().viewports[1].precision),this.sharedMeasureConfig.useViewportInfo=!0),this.sharedMeasureConfig.units=this.options.calibrationUnits||this.viewer.prefs.get(Ne.Prefs.DISPLAY_UNITS)||a||t.getDisplayUnit(),this.sharedMeasureConfig.units)||(null===(o=this.measureToolbar)||void 0===o||o.disableUnitOption());!i&&!n||t.getMetadata("page_dimensions","model_units",null)||a||(this.sharedMeasureConfig.units="pt");const r=this.viewer.prefs.get(Ne.Prefs.DISPLAY_UNITS_PRECISION);this.sharedMeasureConfig.precision="number"==typeof r?r:t.is2d()?s:1,this.options.calibrationUnits&&!isNaN(this.options.calibrationFactor)&&this.calibrationTool.calibrateByScale(this.options.calibrationUnits,this.options.calibrationFactor)},Ve.prototype.unload=function(){var e=this.viewer;return this.destroyUI(),e.removeEventListener(V.EXPLODE_CHANGE_EVENT,V.onExplodedChange),e.removeEventListener("finished-calibration",this.onFinishedCalibration),e.removeEventListener(Ie.Events.MEASUREMENT_CHANGED_EVENT,this.onMeasurementChanged),e.removeEventListener(De.MODEL_ADDED_EVENT,this.onModelAdded),e.removeEventListener(De.MODEL_REMOVED_EVENT,this.onModelRemoved),e.removeEventListener(De.MODEL_ROOT_LOADED_EVENT,this._onModelLoaded),e.toolController.deregisterTool(this.snapper),this.snapper=null,e.toolController.deregisterTool(this.measureTool),this.measureTool=null,e.toolController.deregisterTool(this.calibrationTool),this.calibrationTool=null,e.toolController.deregisterTool(this.magnifyingGlass),this.magnifyingGlass=null,this.unloaded=!0,e.prefs.removeListeners(Ne.Prefs.DISPLAY_UNITS,this._onDisplayUnitsPrefChanged,this._onDisplayUnitsPrefChanged),e.prefs.removeListeners(Ne.Prefs.DISPLAY_UNITS_PRECISION,this._onPrecisionPrefChanged,this._onPrecisionPrefChanged),!0},Ve.prototype.setActive=function(e){return this.enableMeasureTool(e)},Ve.prototype.toggle=function(){return this.isActive()?this.enableMeasureTool(!1):this.enableMeasureTool(!0),this.isActive()},Ve.prototype.getMeasurement=function(e,t){var i=null;return this.measureTool.isActive()&&(i=this.measureTool.getMeasurement(e,t)),i},Ve.prototype.getMeasurementList=function(e,t){var i=[];return this.measureTool.isActive()&&(i=this.measureTool.getMeasurementList(e,t)),i},Ve.prototype.setMeasurements=function(e){this.measureTool.isActive()&&this.measureTool.setMeasurements(e)},Ve.prototype.getUnitOptions=function(){return[{name:"Unknown",type:""},{name:"Decimal feet",type:"decimal-ft"},{name:"Feet and fractional inches",type:"ft"},{name:"Feet and decimal inches",type:"ft-and-decimal-in"},{name:"Decimal inches",type:"decimal-in"},{name:"Fractional inches",type:"fractional-in"},{name:"Meters",type:"m"},{name:"Centimeters",type:"cm"},{name:"Millimeters",type:"mm"},{name:"Meters and centimeters",type:"m-and-cm"},{name:"Points",type:"pt"}]},Ve.prototype.getPrecisionOptions=function(e){return e?["1","1/2","1/4","1/8","1/16","1/32","1/64"]:["0","0.1","0.01","0.001","0.0001","0.00001"]},Ve.prototype.getDefaultUnit=function(){return this.viewer.model.getDisplayUnit()},Ve.prototype.openCalibrationRequiredDialog=function(e){this.hasUI?(this.CalibrationRequiredDialog||(this.CalibrationRequiredDialog=new ae(this,this.viewer,"calibration-required","Calibration Required",this.options)),this.CalibrationRequiredDialog.setVisible(!0)):this.viewer.dispatchEvent({type:Ie.Events.CALIBRATION_REQUIRED_EVENT}),"measure"===e?this.activateInitiator=function(){this.enableMeasureTool(!0,Oe),this.activateInitiator=null}:"dimension"===e&&(this.activateInitiator=function(){this.viewer.dispatchEvent({type:Ie.Events.FINISHED_CALIBRATION_FOR_DIMENSION_EVENT}),this.activateInitiator=null})},Ve.prototype.getCalibration=function(){return this.calibration},Ve.prototype.activate=function(e){if(this.activeStatus&&this.mode===e)return!0;var t;switch(this.enterMeasurementMode(),e){default:e="distance";case"distance":t=this.enableMeasureTool(!0,Ie.MeasurementTypes.MEASUREMENT_DISTANCE);break;case"angle":t=this.enableMeasureTool(!0,Ie.MeasurementTypes.MEASUREMENT_ANGLE);break;case"area":this.viewer.model.is2d()?t=this.enableMeasureTool(!0,Ie.MeasurementTypes.MEASUREMENT_AREA):console.warn("Area mode is applicable on 2D models only");break;case"arc":!this.viewer.model.is2d()||this.viewer.model.isPdf()?console.warn("Arc mode is applicable on 2D models only"):t=this.enableMeasureTool(!0,Ie.MeasurementTypes.MEASUREMENT_ARC);break;case"calibrate":t=this.enableCalibrationTool(!0)}return this.mode=t?e:"",this.activeStatus=!0,!0},Ve.prototype.deactivate=function(){return this.activeStatus&&(this.exitMeasurementMode(),this.enableMeasureTool(!1),this.activeStatus=!1),!0},Ve.prototype.setForcePDFCalibrate=function(e){this.viewer.prefs.set(Ne.Prefs2D.FORCE_PDF_CALIBRATION,e)},Ve.prototype.setForceLeafletCalibrate=function(e){this.viewer.prefs.set(Ne.Prefs2D.FORCE_LEAFLET_CALIBRATION,e)},Ve.prototype.setRestoreSessionMeasurements=function(e){this.viewer.prefs.set(Ne.Prefs.RESTORE_SESSION_MEASUREMENTS,e)},Ve.prototype.enableMeasureTool=function(e,t){var i;if(t===Ie.MeasurementTypes.MEASUREMENT_AREA&&this.viewer.model&&!this.viewer.model.is2d())return!1;if(t===Ie.MeasurementTypes.MEASUREMENT_ARC&&this.viewer.model&&!this.viewer.model.is2d())return!1;const n=t===Ie.MeasurementTypes.MEASUREMENT_ARC&&(null===(i=this.viewer.model)||void 0===i?void 0:i.is2d());this.snapper.setSnapToArc(n);var a=this.viewer.toolController,s=1===this.selectedTool;if(!this.viewer.model||!e&&s)return this.measureTool.isActive()&&(a.deactivateTool("measure"),this.measureToolbar&&this.measureToolbar.deactivateAllButtons(),this.selectedTool=0),!0;const o=this.viewer.impl.is2d,r=o&&this.viewer.model.isPdf(!0)&&this.viewer.prefs.get(Ne.Prefs2D.FORCE_PDF_CALIBRATION),l=o&&this.viewer.model.isLeaflet()&&this.viewer.prefs.get(Ne.Prefs2D.FORCE_LEAFLET_CALIBRATION);return this.forceCalibrate|=l||r,t||(t=Oe),e&&!s?(this.checkAndFetchTopology(a.getTool("measure")),!this.forceCalibrate||this.forceCalibrate&&this.calibrationTool.isCalibrated()||t===Ie.MeasurementTypes.MEASUREMENT_ANGLE?(this.calibrationTool.isActive()&&a.deactivateTool("calibration"),this.measureToolbar&&this.measureToolbar.updateSettingsPanel(),a.activateTool("measure"),this.selectedTool=1,this.changeMeasurementType(t),!0):(this.viewer.addEventListener(Re.OPEN_TOOL_AFTER_CALIBRAION,function(){this.enableMeasureTool(!0)}.bind(this),{once:!0}),this.openCalibrationRequiredDialog("measure"),!1)):!(!e||!s)&&(!this.forceCalibrate||this.forceCalibrate&&this.calibrationTool.isCalibrated()||t===Ie.MeasurementTypes.MEASUREMENT_ANGLE?(this.changeMeasurementType(t),!0):(this.openCalibrationRequiredDialog("measure"),!1))},Ve.prototype.changeMeasurementType=function(e){switch(this.measureTool.changeMeasurementType(e),this.measureToolbar&&(this.measureToolbar.deactivateAllButtons(),this.measureToolbar.activateButtonByType(e)),e){case Ie.MeasurementTypes.MEASUREMENT_DISTANCE:this.mode="distance";break;case Ie.MeasurementTypes.MEASUREMENT_ANGLE:this.mode="angle";break;case Ie.MeasurementTypes.MEASUREMENT_AREA:this.mode="area";break;case Ie.MeasurementTypes.MEASUREMENT_ARC:this.mode="arc";break;default:this.mode=""}},Ve.prototype.setIsolateMeasure=function(e){this.measureTool.setIsolateMeasure(e),e?this.measureTool.isolateMeasurement():this.measureTool.clearIsolate()},Ve.prototype.enableCalibrationTool=function(e){var t=this.viewer.toolController,i=2==this.selectedTool;return e&&!i?(this.measureTool.isActive()&&t.deactivateTool("measure"),t.activateTool("calibration"),this.viewer.dispatchEvent({type:Ie.Events.UNITS_CALIBRATION_STARTS_EVENT}),this.measureToolbar&&(this.measureToolbar.deactivateAllButtons(),this.measureToolbar.activateButtonByType(Ie.MeasurementTypes.CALIBRATION)),this.selectedTool=2,!0):!(e||!i)&&(this.calibrationTool.isActive()&&(this.mode="",t.deactivateTool("calibration"),this.measureToolbar&&this.measureToolbar.deactivateAllButtons()),this.selectedTool=0,!0)},Ve.prototype.enterMeasurementMode=function(){if(!this._measurementMode&&(this._measurementMode=!0,this.viewer.dispatchEvent({type:Ie.Events.MEASUREMENT_MODE_ENTER}),this.viewer.getToolbar)){for(var e=this.viewer.getToolbar(),t=e.container,i=t.children.length,n=0;n