From 8942d7564dae0b6298f767db9bd046a6ca01e5fc Mon Sep 17 00:00:00 2001 From: lovebird Date: Tue, 3 Sep 2024 13:24:23 +0200 Subject: [PATCH] latest --- cad/joints/cad-report-Default.json | 78 - .../20-60-120_Shield_x2_1mm_INOX.SLDPRT | 4 +- .../SlideDual-20ID-50H-100W-Nema23.SLDASM | 4 +- .../SlideDual-20ID-50H-100W-Nema23.html | 2 +- .../SlideDual-20ID-50H-100W-Nema23.jpg | 4 +- .../SlideDual-20ID-50H-100W-Nema23.json | 50 +- .../SlideDual-20ID-50H-100W-Nema23.smg | Bin 0 -> 114311 bytes .../SlideDual-20ID-50H-100W-Nema23.step | 4 +- .../SlideDual-20ID-50H-100W-Nema23.tree.json | 5182 ++++++++--------- .../SlideDual-20ID-50H-100W-Nema23.x_t | 4 +- .../SlideDual-20ID-60D-120W.SLDPRT | 4 +- .../SlideDual-20ID-60H-120W.SLDASM | 4 +- .../SlideDual-20ID-60H-120W.SLDPRT | 3 + .../SlideDual-20ID-60H-120W.html | 2 +- .../SlideDual-20ID-60H-120W.jpg | 4 +- .../SlideDual-20ID-60H-120W.json | 18 +- .../SlideDual-20ID-60H-120W.step | 4 +- .../SlideDual-20ID-60H-120W.tree.json | 1306 +++-- .../SlideDual-20ID-60H-120W.x_t | 4 +- .../cad-report-Default.json | 103 + .../slide-clamp-20ID-120-60/toolbox.svg | 157 - .../hdpe/assets/DSC02732_thumb_thumb.jpg | 3 - .../hdpe/assets/DSC02734_thumb_thumb.jpg | 3 - .../hdpe/assets/DSC02735_thumb_thumb.jpg | 3 - .../hdpe/assets/DSC02737_thumb_thumb.jpg | 3 - .../hdpe/assets/DSC02738_thumb_thumb.jpg | 3 - .../hdpe/assets/DSC02739_thumb_thumb.jpg | 3 - .../hdpe/assets/DSC02740_thumb_thumb.jpg | 3 - .../{pp => hdpe}/assets/washed/DSC02841.jpg | 0 .../{pp => hdpe}/assets/washed/DSC02846.JPG | 0 .../{pp => hdpe}/assets/washed/DSC02847.jpg | 0 .../{pp => hdpe}/assets/washed/DSC02849.JPG | 0 .../assets/washed/raw/DSC02841.jpg | 0 .../assets/washed/raw/DSC02846.JPG | 0 .../assets/washed/raw/DSC02847.jpg | 0 .../assets/washed/raw/DSC02849.JPG | 0 .../{pp => hdpe}/assets/washed/readme.md | 0 37 files changed, 3595 insertions(+), 3367 deletions(-) create mode 100644 cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.smg create mode 100644 cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.SLDPRT create mode 100644 cad/joints/slide-clamp-20ID-120-60/cad-report-Default.json delete mode 100644 cad/joints/slide-clamp-20ID-120-60/toolbox.svg delete mode 100644 resources/material/hdpe/assets/DSC02732_thumb_thumb.jpg delete mode 100644 resources/material/hdpe/assets/DSC02734_thumb_thumb.jpg delete mode 100644 resources/material/hdpe/assets/DSC02735_thumb_thumb.jpg delete mode 100644 resources/material/hdpe/assets/DSC02737_thumb_thumb.jpg delete mode 100644 resources/material/hdpe/assets/DSC02738_thumb_thumb.jpg delete mode 100644 resources/material/hdpe/assets/DSC02739_thumb_thumb.jpg delete mode 100644 resources/material/hdpe/assets/DSC02740_thumb_thumb.jpg rename resources/material/{pp => hdpe}/assets/washed/DSC02841.jpg (100%) rename resources/material/{pp => hdpe}/assets/washed/DSC02846.JPG (100%) rename resources/material/{pp => hdpe}/assets/washed/DSC02847.jpg (100%) rename resources/material/{pp => hdpe}/assets/washed/DSC02849.JPG (100%) rename resources/material/{pp => hdpe}/assets/washed/raw/DSC02841.jpg (100%) rename resources/material/{pp => hdpe}/assets/washed/raw/DSC02846.JPG (100%) rename resources/material/{pp => hdpe}/assets/washed/raw/DSC02847.jpg (100%) rename resources/material/{pp => hdpe}/assets/washed/raw/DSC02849.JPG (100%) rename resources/material/{pp => hdpe}/assets/washed/readme.md (100%) diff --git a/cad/joints/cad-report-Default.json b/cad/joints/cad-report-Default.json index 5b2bb5b..13de8b4 100644 --- a/cad/joints/cad-report-Default.json +++ b/cad/joints/cad-report-Default.json @@ -682,17 +682,8 @@ } }, { - "code": 0, - "command": "convert.exe --source=\"C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W-Nema23.SLDASM\" --target=\"C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W-Nema23.jpg\" --configuration=\"Default\" --view=\"*Render\" --hidden=true --width=1024 --height=1024 --swv=30 --renderer=solidworks --quality=2", - "messages": [ - "Changed view: *Render", - "Failed to change configuration: Default", - "IPC error:timeout", - "Conversion successful. Output file saved to: C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W-Nema23.jpg " - ], "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W-Nema23.SLDASM", "target": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W-Nema23.jpg", - "failed": false, "options": { "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/**/Slide*.+(SLDASM)", "dst": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\Slide*.+(jpg|html|step|json|x_t)", @@ -826,12 +817,8 @@ } }, { - "code": 0, - "command": "ExportHTML.exe \"C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W-Nema23.SLDASM\" \"C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W-Nema23.html\"", - "messages": [], "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W-Nema23.SLDASM", "target": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W-Nema23.html", - "failed": false, "options": { "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/**/Slide*.+(SLDASM)", "dst": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\Slide*.+(jpg|html|step|json|x_t)", @@ -965,17 +952,8 @@ } }, { - "code": 0, - "command": "convert.exe --source=\"C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W-Nema23.SLDASM\" --target=\"C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W-Nema23.step\" --configuration=\"Default\" --view=\"*Render\" --hidden=true --width=1024 --height=1024 --swv=30 --renderer=solidworks --quality=2", - "messages": [ - "Changed view: *Render", - "Failed to change configuration: Default", - "IPC error:timeout", - "Conversion successful. Output file saved to: C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W-Nema23.step " - ], "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W-Nema23.SLDASM", "target": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W-Nema23.step", - "failed": false, "options": { "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/**/Slide*.+(SLDASM)", "dst": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\Slide*.+(jpg|html|step|json|x_t)", @@ -1109,16 +1087,8 @@ } }, { - "code": 0, - "command": "model-reader.exe --source=\"C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W-Nema23.SLDASM\" --target=\"C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W-Nema23.json\"", - "messages": [ - "Failed to change configuration C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W-Nema23.SLDASM : Default", - "Serialized to C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W-Nema23.json", - "Serialized Tree to C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W-Nema23.tree.json" - ], "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W-Nema23.SLDASM", "target": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W-Nema23.json", - "failed": false, "options": { "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/**/Slide*.+(SLDASM)", "dst": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\Slide*.+(jpg|html|step|json|x_t)", @@ -1252,17 +1222,8 @@ } }, { - "code": 0, - "command": "convert.exe --source=\"C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W-Nema23.SLDASM\" --target=\"C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W-Nema23.x_t\" --configuration=\"Default\" --view=\"*Render\" --hidden=true --width=1024 --height=1024 --swv=30 --renderer=solidworks --quality=2", - "messages": [ - "Changed view: *Render", - "Failed to change configuration: Default", - "IPC error:timeout", - "Conversion successful. Output file saved to: C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W-Nema23.x_t " - ], "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W-Nema23.SLDASM", "target": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W-Nema23.x_t", - "failed": false, "options": { "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/**/Slide*.+(SLDASM)", "dst": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\Slide*.+(jpg|html|step|json|x_t)", @@ -1396,17 +1357,8 @@ } }, { - "code": 0, - "command": "convert.exe --source=\"C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W.SLDASM\" --target=\"C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.jpg\" --configuration=\"Default\" --view=\"*Render\" --hidden=true --width=1024 --height=1024 --swv=30 --renderer=solidworks --quality=2", - "messages": [ - "Changed view: *Render", - "Failed to change configuration: Default", - "IPC error:timeout", - "Conversion successful. Output file saved to: C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.jpg " - ], "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W.SLDASM", "target": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.jpg", - "failed": false, "options": { "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/**/Slide*.+(SLDASM)", "dst": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\Slide*.+(jpg|html|step|json|x_t)", @@ -1540,12 +1492,8 @@ } }, { - "code": 0, - "command": "ExportHTML.exe \"C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W.SLDASM\" \"C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.html\"", - "messages": [], "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W.SLDASM", "target": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.html", - "failed": false, "options": { "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/**/Slide*.+(SLDASM)", "dst": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\Slide*.+(jpg|html|step|json|x_t)", @@ -1679,17 +1627,8 @@ } }, { - "code": 0, - "command": "convert.exe --source=\"C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W.SLDASM\" --target=\"C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.step\" --configuration=\"Default\" --view=\"*Render\" --hidden=true --width=1024 --height=1024 --swv=30 --renderer=solidworks --quality=2", - "messages": [ - "Changed view: *Render", - "Failed to change configuration: Default", - "IPC error:timeout", - "Conversion successful. Output file saved to: C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.step " - ], "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W.SLDASM", "target": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.step", - "failed": false, "options": { "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/**/Slide*.+(SLDASM)", "dst": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\Slide*.+(jpg|html|step|json|x_t)", @@ -1823,16 +1762,8 @@ } }, { - "code": 0, - "command": "model-reader.exe --source=\"C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.SLDASM\" --target=\"C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.json\"", - "messages": [ - "Failed to change configuration C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.SLDASM : Default", - "Serialized to C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.json", - "Serialized Tree to C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.tree.json" - ], "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W.SLDASM", "target": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.json", - "failed": false, "options": { "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/**/Slide*.+(SLDASM)", "dst": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\Slide*.+(jpg|html|step|json|x_t)", @@ -1966,17 +1897,8 @@ } }, { - "code": 0, - "command": "convert.exe --source=\"C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W.SLDASM\" --target=\"C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.x_t\" --configuration=\"Default\" --view=\"*Render\" --hidden=true --width=1024 --height=1024 --swv=30 --renderer=solidworks --quality=2", - "messages": [ - "Changed view: *Render", - "Failed to change configuration: Default", - "IPC error:timeout", - "Conversion successful. Output file saved to: C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.x_t " - ], "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-100-50/SlideDual-20ID-50H-100W.SLDASM", "target": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.x_t", - "failed": false, "options": { "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/**/Slide*.+(SLDASM)", "dst": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\Slide*.+(jpg|html|step|json|x_t)", diff --git a/cad/joints/slide-clamp-20ID-120-60/20-60-120_Shield_x2_1mm_INOX.SLDPRT b/cad/joints/slide-clamp-20ID-120-60/20-60-120_Shield_x2_1mm_INOX.SLDPRT index 7110873..3b8b70f 100644 --- a/cad/joints/slide-clamp-20ID-120-60/20-60-120_Shield_x2_1mm_INOX.SLDPRT +++ b/cad/joints/slide-clamp-20ID-120-60/20-60-120_Shield_x2_1mm_INOX.SLDPRT @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5dba9a3015f0c10194311e2e0aa0edfce6e798a77ee84137ddea862bd0dbd1b9 -size 112024 +oid sha256:36987a6f59492a7342ea339ad699f7d08f86ac1bfc3f8d6c9e13c87f9a1558f4 +size 107787 diff --git a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.SLDASM b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.SLDASM index 1b2e2fd..0929fea 100644 --- a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.SLDASM +++ b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.SLDASM @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:80b3e7df3d4e2051feb63f9b29db8f3be39eb5744e02eb2131348c23d5209b52 -size 327215 +oid sha256:e8d5f1a420eff5c4b39bb3aa726faa89b76a5dc37f1e4b0afd305e287c51ea09 +size 362229 diff --git a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.html b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.html index 1c6522c..7366803 100644 --- a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.html +++ b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.html @@ -8360,7 +8360,7 @@ var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){fun // Copyright 2018-2021 Dassault Systemes SolidWorks Corporation. All rights reserved. var __extends=this&&this.__extends||function(){var extendStatics=function(d,b){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,b){d.__proto__=b}||function(d,b){for(var p in b)if(b.hasOwnProperty(p))d[p]=b[p]};return extendStatics(d,b)};return function(d,b){extendStatics(d,b);function __(){this.constructor=d}d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}();var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P((function(resolve){resolve(value)}))}return new(P||(P=Promise))((function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())}))};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]=this.mSelObjs.length)return[2,null];this.dehighlightAllTemporaryEntity();toRemove=this.mSelObjs[idx];this.mSelObjs.splice(idx,1);if(!utils.isNumber(this.isItemSelected(toRemove))){this.deColorEntity(toRemove)}return[4,this.updateResult(this.mSelObjs,this.mAuxGeoSelected)];case 1:updated=_a.sent();if(!(updated||this.mSelObjs.length===0))return[3,3];return[4,this.resetImmediateResults()];case 2:_a.sent();return[3,4];case 3:this.mAuxGeoImmediate.regeneratePicks(this.mSelObjs);_a.label=4;case 4:this.updatePanelResult();return[2,toRemove]}}))}))};eDwMeasureEntities.prototype.setSelectedEntityColor=function(iColor){this.mSelMeasureEntColor=iColor};eDwMeasureEntities.prototype.setMeasureUnit=function(iUserUnits){var _this=this;this.mViewer.getModel().setUserUnits(iUserUnits);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.resetImmediateResults()];case 1:_a.sent();return[2]}}))}))})();this.mAuxGeoSelected.syncUnits();this.updatePanelResult();this.mViewer.getHCMarkupManager().refreshMarkup()};eDwMeasureEntities.prototype.updatePointToPoint=function(iEnable){eDwMeasureEntities.PointToPoint=iEnable;this.reset();this.mAuxGeoSelected.updateResultLabels();this.mAuxGeoImmediate.updateResultLabels();this.mViewer.getHCMarkupManager().refreshMarkup()};eDwMeasureEntities.prototype.updateDelta=function(iEnable){eDwMeasureEntities.ShowDelta=iEnable;this.mAuxGeoSelected.updateResultLabels();this.mAuxGeoImmediate.updateResultLabels();this.updatePanelResult();this.mViewer.getHCMarkupManager().refreshMarkup()};eDwMeasureEntities.prototype.updatePanelResult=function(){var userUnits=this.mViewer.getModel().getUserUnits();this.mPanelInfo.updatePanelResult(this.mSelObjs,userUnits)};eDwMeasureEntities.prototype.reset=function(){this.deColorAll();this.mAuxGeoSelected.reset();this.mAuxGeoImmediate.reset();this.mSelObjs=[];this.updatePanelResult()};eDwMeasureEntities.prototype.draw=function(){this.mAuxGeoSelected.draw();this.mAuxGeoImmediate.draw()};eDwMeasureEntities.prototype.getClassName=function(){return"eDwMeasureEntities"};eDwMeasureEntities.prototype.isItemSelected=function(iSelObj){if(utils.isNumber(iSelObj.getIDHC())){for(var i=0;i0){result=new MeasureResultString("Info","Invalid combination");ioAuxGeo.addMessage(result,iSelObjs[n-1].getPosition(),eDwTypes_1.HC.Color.red())}ioAuxGeo.updateResultLabels();return[2,isValid]}}))}))};eDwMeasureEntities.prototype.updateSingleVert=function(iSelObjs){if(1!==iSelObjs.length)return false;var vertObj=iSelObjs[0];return vertObj.getPointEntity()?true:false};eDwMeasureEntities.prototype.updateSingleEdge=function(iSelObjs){if(1!==iSelObjs.length)return false;var edgeObj=iSelObjs[0];if(edgeObj.getLineEntity())return true;return false};eDwMeasureEntities.prototype.updateSingleFace=function(iSelPropsHC,iSelObjs){if(1!==iSelObjs.length)return false;var faceObj=iSelObjs[0];var faceProp=iSelPropsHC[0];if(!faceObj.getFaceEntity()||!faceProp)return false;if(faceProp instanceof eDwTypes_1.HC.SubentityProperties.CylinderElement){return true}else if(faceProp instanceof eDwTypes_1.HC.SubentityProperties.PlaneElement){return true}return false};eDwMeasureEntities.prototype.updateVertVert=function(iSelObjs,iAuxGeo){if(2!==iSelObjs.length)return false;if(iSelObjs[0].getPointEntity()&&iSelObjs[1].getPointEntity()){var vertObj0=iSelObjs[0];var vertObj1=iSelObjs[1];if(vertObj0.equals(vertObj1))return false;iAuxGeo.setByVertexVertex(vertObj0,vertObj1);return true}return false};eDwMeasureEntities.prototype.updateVertEdge=function(iSelPropsHC,iSelObjs,iAuxGeo){if(2!==iSelObjs.length)return false;var edgeProp=iSelPropsHC[0];var edgeObj=iSelObjs[0];var vertObj=iSelObjs[1];if(iSelObjs[1].getLineEntity()&&iSelObjs[0].getPointEntity()){edgeProp=iSelPropsHC[1];edgeObj=iSelObjs[1];vertObj=iSelObjs[0]}if(!vertObj.getPointEntity())return false;if(edgeProp instanceof eDwTypes_1.HC.SubentityProperties.LineElement){iAuxGeo.setByVertexLine(vertObj,edgeProp,edgeObj);return true}else if(edgeProp instanceof eDwTypes_1.HC.SubentityProperties.CircleElement){iAuxGeo.setByVertexCircle(vertObj,edgeProp,edgeObj);return true}return false};eDwMeasureEntities.prototype.updateVertFace=function(iSelPropsHC,iSelObjs,iAuxGeo){return __awaiter(this,void 0,void 0,(function(){var vertObj,faceProp,faceObj,minDistInfo;return __generator(this,(function(_a){switch(_a.label){case 0:if(2!==iSelObjs.length)return[2,false];vertObj=iSelObjs[0];faceProp=iSelPropsHC[1];faceObj=iSelObjs[1];if(iSelObjs[1].getPointEntity()&&iSelObjs[0].getFaceEntity()){vertObj=iSelObjs[1];faceProp=iSelPropsHC[0];faceObj=iSelObjs[0]}if(!vertObj.getPointEntity())return[2,false];if(!(faceProp instanceof eDwTypes_1.HC.SubentityProperties.PlaneElement))return[3,2];return[4,eDwSelObj.getMinDistInfo(iSelPropsHC,iSelObjs,this.mViewer.getModel())];case 1:minDistInfo=_a.sent();iAuxGeo.setByVertexPlane(vertObj,faceProp,faceObj,minDistInfo);return[2,true];case 2:return[2,false]}}))}))};eDwMeasureEntities.prototype.updateEdgeFace=function(iSelPropsHC,iSelObjs,iAuxGeo){return __awaiter(this,void 0,void 0,(function(){var edgeProp,edgeObj,faceProp,faceObj,minDistInfo;return __generator(this,(function(_a){switch(_a.label){case 0:if(2!==iSelObjs.length)return[2,false];edgeProp=iSelPropsHC[0];edgeObj=iSelObjs[0];faceProp=iSelPropsHC[1];faceObj=iSelObjs[1];if(iSelObjs[1].getLineEntity()&&iSelObjs[0].getFaceEntity()){edgeProp=iSelPropsHC[1];edgeObj=iSelObjs[1];faceProp=iSelPropsHC[0];faceObj=iSelObjs[0]}if(!(edgeProp instanceof eDwTypes_1.HC.SubentityProperties.LineElement&&faceProp instanceof eDwTypes_1.HC.SubentityProperties.PlaneElement))return[3,1];iAuxGeo.setByPlaneLine(faceProp,edgeProp,faceObj,edgeObj);return[2,true];case 1:if(!(edgeProp instanceof eDwTypes_1.HC.SubentityProperties.CircleElement&&faceProp instanceof eDwTypes_1.HC.SubentityProperties.PlaneElement))return[3,3];return[4,eDwSelObj.getMinDistInfo(iSelPropsHC,iSelObjs,this.mViewer.getModel())];case 2:minDistInfo=_a.sent();iAuxGeo.setByCirclePlane(edgeProp,faceProp,edgeObj,faceObj,minDistInfo);return[2,true];case 3:return[2,false]}}))}))};eDwMeasureEntities.prototype.updateEdgeEdge=function(iSelPropsHC,iSelObjs,iAuxGeo){if(2!==iSelObjs.length)return false;if(!iSelObjs[0].getLineEntity()||!iSelObjs[1].getLineEntity()){return false}var edgeObj0=iSelObjs[0];var edgeProp0=iSelPropsHC[0];var edgeObj1=iSelObjs[1];var edgeProp1=iSelPropsHC[1];if(edgeObj0.equals(edgeObj1))return false;if(edgeProp0 instanceof eDwTypes_1.HC.SubentityProperties.LineElement&&edgeProp1 instanceof eDwTypes_1.HC.SubentityProperties.LineElement){iAuxGeo.setByLineLine(edgeProp0,edgeProp1,edgeObj0,edgeObj1)}else if(edgeProp0 instanceof eDwTypes_1.HC.SubentityProperties.LineElement&&edgeProp1 instanceof eDwTypes_1.HC.SubentityProperties.CircleElement){iAuxGeo.setByCircleLine(edgeProp1,edgeProp0,edgeObj1,edgeObj0)}else if(edgeProp0 instanceof eDwTypes_1.HC.SubentityProperties.CircleElement&&edgeProp1 instanceof eDwTypes_1.HC.SubentityProperties.LineElement){iAuxGeo.setByCircleLine(edgeProp0,edgeProp1,edgeObj0,edgeObj1)}else if(edgeProp0 instanceof eDwTypes_1.HC.SubentityProperties.CircleElement&&edgeProp1 instanceof eDwTypes_1.HC.SubentityProperties.CircleElement){iAuxGeo.setByCircleCircle(edgeProp0,edgeProp1,edgeObj0,edgeObj1)}this.updateEdges(iSelPropsHC,iSelObjs,iAuxGeo);return true};eDwMeasureEntities.prototype.updateFaceFace=function(iSelPropsHC,iSelObjs,iAuxGeo){return __awaiter(this,void 0,void 0,(function(){var faceObj0,faceProp0,faceObj1,faceProp1,minDistInfo;return __generator(this,(function(_a){switch(_a.label){case 0:if(2!==iSelObjs.length)return[2,false];if(!iSelObjs[0].getFaceEntity()||!iSelObjs[1].getFaceEntity()){return[2,false]}faceObj0=iSelObjs[0];faceProp0=iSelPropsHC[0];faceObj1=iSelObjs[1];faceProp1=iSelPropsHC[1];if(faceObj0.equals(faceObj1))return[2,false];if(!faceObj1.getFaceEntity()||!faceProp1)return[2,false];if(!(faceProp0 instanceof eDwTypes_1.HC.SubentityProperties.PlaneElement&&faceProp1 instanceof eDwTypes_1.HC.SubentityProperties.PlaneElement))return[3,2];return[4,eDwSelObj.getMinDistInfo(iSelPropsHC,iSelObjs,this.mViewer.getModel())];case 1:minDistInfo=_a.sent();iAuxGeo.setByPlanePlane(faceProp1,faceProp0,faceObj1,faceObj0,minDistInfo);return[2,true];case 2:return[2,false]}}))}))};eDwMeasureEntities.prototype.updateEdges=function(iSelPropsHC,iSelObjs,ioAuxGeo){var n=iSelObjs.length;var len=0;var ids=[];for(var i=0;i1){var result=new MeasureResultDistance("Total Length",len);pos=iSelObjs[n-1].getPosition();ioAuxGeo.addOtherResult(result,pos);return true}return false};eDwMeasureEntities.prototype.highlightEntityAt=function(iIndex,iHighlight){if(iHighlight===void 0){iHighlight=true}var n=this.mSelObjs.length;if(iIndex<0||iIndex>=n)return;eDwMeasureEntities.highlightEntity(this.mSelObjs[iIndex],this.mViewer.getModel(),iHighlight)};eDwMeasureEntities.prototype.addAllForEntity=function(iSelObj){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.addObjs(iSelObj)];case 1:_a.sent();return[4,this.updateResult(this.mSelObjs,this.mAuxGeoSelected)];case 2:_a.sent();return[4,this.resetImmediateResults()];case 3:_a.sent();this.colorEntity(iSelObj);return[2,true]}}))}))};eDwMeasureEntities.PointToPoint=false;eDwMeasureEntities.ShowDelta=false;return eDwMeasureEntities}(eDwTypes_1.HC.Markup.MarkupItem);var LabelItem=function(_super){__extends(LabelItem,_super);function LabelItem(iViewer,iLabel){var _this=_super.call(this)||this;_this.mLabel=iLabel;return _this}LabelItem.prototype.setStringContent=function(){this.mLabel.setStringContent()};LabelItem.prototype.draw=function(){this.mLabel.drawLabel()};LabelItem.prototype.hit=function(iPos){var box=this.mLabel.getLabelBox();if(!box)return false;var xMin=box.Min.x;var xMax=box.Max.x;var yMin=box.Min.y;var yMax=box.Max.y;return iPos.x<=xMax&&iPos.x>=xMin&&iPos.y<=yMax&&iPos.y>=yMin};LabelItem.prototype.onDragStart=function(iPos){this.mDragPos=iPos.copy();return true};LabelItem.prototype.onDragMove=function(iPos){var delta=eDwTypes_1.HC.Point2.subtract(iPos,this.mDragPos);var endPos=this.mLabel.getLeaderEndPos();if(!eDwGeomUtils.isValidHCPoint(endPos)||!eDwGeomUtils.isValidHCPoint(delta))return true;endPos.add(delta);this.mLabel.setLeaderEndPos(endPos);this.mDragPos=iPos.copy();return true};LabelItem.prototype.onDragEnd=function(iPos){return true};return LabelItem}(eDwTypes_1.HC.Markup.MarkupItem);var MeasureResultItem=function(){function MeasureResultItem(iName){this.mName=iName}Object.defineProperty(MeasureResultItem.prototype,"Value",{get:function(){return":NOVALUE:"},enumerable:false,configurable:true});Object.defineProperty(MeasureResultItem.prototype,"Name",{get:function(){return this.mName},enumerable:false,configurable:true});return MeasureResultItem}();var MeasureResultString=function(_super){__extends(MeasureResultString,_super);function MeasureResultString(iName,iValue){var _this=_super.call(this,iName)||this;_this.mValue=iValue;return _this}Object.defineProperty(MeasureResultString.prototype,"Value",{get:function(){return this.mValue},enumerable:false,configurable:true});return MeasureResultString}(MeasureResultItem);var MeasureResultNumber=function(_super){__extends(MeasureResultNumber,_super);function MeasureResultNumber(iName,iValueKind){var _this=_super.call(this,iName)||this;_this.mValueKind=iValueKind;return _this}Object.defineProperty(MeasureResultNumber.prototype,"Value",{get:function(){return l_Model.getValueWithUnit(this.mValue,this.mValueKind)},enumerable:false,configurable:true});return MeasureResultNumber}(MeasureResultItem);var MeasureResultDistance=function(_super){__extends(MeasureResultDistance,_super);function MeasureResultDistance(iName,iValue){var _this=_super.call(this,iName,cLength)||this;_this.mValue=iValue;return _this}return MeasureResultDistance}(MeasureResultNumber);var MeasureResultArea=function(_super){__extends(MeasureResultArea,_super);function MeasureResultArea(iName,iValue){var _this=_super.call(this,iName,"Area")||this;_this.mValue=iValue;return _this}return MeasureResultArea}(MeasureResultNumber);var MeasureResultAngle=function(_super){__extends(MeasureResultAngle,_super);function MeasureResultAngle(iName,iValue){var _this=_super.call(this,iName,"Angle")||this;_this.mValue=iValue;return _this}return MeasureResultAngle}(MeasureResultNumber);var MeasureResultPoint3D=function(_super){__extends(MeasureResultPoint3D,_super);function MeasureResultPoint3D(iName,iValue){var _this=_super.call(this,iName)||this;_this.mValue=iValue.copy();return _this}Object.defineProperty(MeasureResultPoint3D.prototype,"Value",{get:function(){return l_Model.getValueWithUnit(this.mValue.x,"Length")+","+l_Model.getValueWithUnit(this.mValue.y,"Length")+","+l_Model.getValueWithUnit(this.mValue.z,"Length")},enumerable:false,configurable:true});return MeasureResultPoint3D}(MeasureResultItem);var MeasureLabelItem=function(){function MeasureLabelItem(iViewer,iResult,iColor){this.mViewer=iViewer;this.mResult=iResult;this.mColor=iColor;this.mNameTextBox=undefined;this.mValueTextBox=undefined;this.mNameBox=undefined;this.mValueBox=undefined}MeasureLabelItem.prototype.drawItem=function(){var renderer=this.mViewer.getHCMarkupManager().getRenderer();if(this.mNameBox)renderer.drawRectangle(this.mNameBox);if(this.mValueBox)renderer.drawRectangle(this.mValueBox);if(this.mNameTextBox)renderer.drawTextBox(this.mNameTextBox);if(this.mValueTextBox)renderer.drawTextBox(this.mValueTextBox)};MeasureLabelItem.prototype.setPosition=function(ioPos,iNameWidth,iValueWidth){if(!this.mNameBox||!this.mValueBox||!this.mNameTextBox||!this.mValueTextBox){this.mNameBox=new eDwTypes_1.HC.Markup.Shape.Rectangle;this.mNameBox.setFillColor(this.mColor?this.mColor:cGreyColor);this.mValueBox=new eDwTypes_1.HC.Markup.Shape.Rectangle;this.mValueBox.setFillColor(eDwTypes_1.HC.Color.white());this.mNameTextBox=new eDwTypes_1.HC.Markup.Shape.TextBox;this.mNameTextBox.getBoxPortion().setFillColor(eDwTypes_1.HC.Color.white());this.mNameTextBox.getBoxPortion().setStrokeWidth(0);this.mNameTextBox.getTextPortion().setFillColor(eDwTypes_1.HC.Color.white());this.mNameTextBox.getBoxPortion().setFillOpacity(0);this.mNameTextBox.getTextPortion().setFontFamily("arial");this.mValueTextBox=new eDwTypes_1.HC.Markup.Shape.TextBox;this.mValueTextBox.getBoxPortion().setFillColor(eDwTypes_1.HC.Color.white());this.mValueTextBox.getBoxPortion().setStrokeWidth(0);this.mValueTextBox.getTextPortion().setFillColor(cGreyColor);this.mValueTextBox.getBoxPortion().setFillOpacity(0);this.mValueTextBox.getTextPortion().setFontFamily("arial")}var renderer=this.mViewer.getHCMarkupManager().getRenderer();var nameSize=renderer.measureTextBox(this.mNameTextBox);var valueSize=renderer.measureTextBox(this.mValueTextBox);var height=Math.max(nameSize.y,valueSize.y);this.mNameBox.setSize(new eDwTypes_1.HC.Point2(iNameWidth,height));this.mValueBox.setSize(new eDwTypes_1.HC.Point2(iValueWidth,height));var namePos=ioPos.copy();var valuePos=ioPos.copy();valuePos.x+=iNameWidth;this.mNameBox.setPosition(namePos);this.mNameTextBox.setPosition(namePos);this.mValueBox.setPosition(valuePos);this.mValueTextBox.setPosition(valuePos);ioPos.y+=height};MeasureLabelItem.prototype.getWidth=function(){var renderer=this.mViewer.getHCMarkupManager().getRenderer();var nameSize=this.mNameTextBox?renderer.measureTextBox(this.mNameTextBox):{x:0,y:0};var valueSize=this.mValueTextBox?renderer.measureTextBox(this.mValueTextBox):{x:0,y:0};return{NameWidth:nameSize.x,ValueWidth:valueSize.x}};MeasureLabelItem.prototype.setStringContent=function(){if(this.mNameTextBox){this.mNameTextBox.setTextString(this.mResult.Name)}if(this.mValueTextBox){this.mValueTextBox.setTextString(this.mResult.Value)}};MeasureLabelItem.prototype.getText=function(){return this.mResult.Name+": "+this.mResult.Value};MeasureLabelItem.prototype.getBoundingBox=function(){if(!this.mNameBox||!this.mValueBox){return null}var size1=this.mValueBox.getSize();var posS=this.mNameBox.getPosition().copy();var pos1=this.mValueBox.getPosition();var posE=new eDwTypes_1.HC.Point2(pos1.x+size1.x,pos1.y+size1.y);var min=new eDwTypes_1.HC.Point2(Math.min(posS.x,posE.x),Math.min(posS.y,posE.y));var max=new eDwTypes_1.HC.Point2(Math.max(posS.x,posE.x),Math.max(posS.y,posE.y));return{Min:min,Max:max}};return MeasureLabelItem}();var MeasureBaseLine=function(){function MeasureBaseLine(iViewer,iPntWCHC0,iPntWCHC1,iLineColor){this.mViewer=iViewer;this.mColor=iLineColor||cGreyColor;this.setWCPts(iPntWCHC0,iPntWCHC1)}MeasureBaseLine.prototype.draw=function(){if(!this.isValid())return;if(this.mLine)this.updateLinePts();else this.createHCLine();var renderer=this.mViewer.getHCMarkupManager().getRenderer();renderer.drawLine(this.mLine)};MeasureBaseLine.prototype.getLineColorHC=function(){return this.mColor};MeasureBaseLine.prototype.getMiddleWCPtHC=function(){var middle=eDwTypes_1.HC.Point3.scale(eDwTypes_1.HC.Point3.add(this.mWCEndPtHC0,this.mWCEndPntHC1),.5);return middle};MeasureBaseLine.prototype.setLineColor=function(iColor){this.mColor=iColor;if(this.mLine)this.setColorOnHCLine(iColor);else this.createHCLine()};MeasureBaseLine.prototype.isValid=function(){return this.mWCEndPtHC0&&this.mWCEndPntHC1&&eDwGeomUtils.isValidHCPoint(this.mWCEndPtHC0)&&eDwGeomUtils.isValidHCPoint(this.mWCEndPntHC1)};MeasureBaseLine.prototype.createHCLine=function(){this.mLine=new eDwTypes_1.HC.Markup.Shape.Line;this.setColorOnHCLine(this.mColor);this.updateLinePts();return this};MeasureBaseLine.prototype.copyFrom=function(iSrcLine){if(iSrcLine.mLine){this.mLine.setStrokeWidth(iSrcLine.mLine.getStrokeWidth());this.mLine.setEndcapType(iSrcLine.mLine.getEndEndcapType());this.mLine.setStartEndcapSize(iSrcLine.mLine.getStartEndcapSize());this.mLine.setEndEndcapSize(iSrcLine.mLine.getEndEndcapSize());this.mLine.setStartEndcapColor(iSrcLine.mLine.getStartEndcapColor());this.mLine.setEndEndcapColor(iSrcLine.mLine.getEndEndcapColor())}this.setWCPts(iSrcLine.mWCEndPtHC0,iSrcLine.mWCEndPntHC1);this.mColor=iSrcLine.mColor};MeasureBaseLine.prototype.setWCPts=function(iWCStartPntHC,iWCEndPntHC){if(!iWCStartPntHC||!iWCEndPntHC||!eDwGeomUtils.isValidHCPoint(iWCStartPntHC)||!eDwGeomUtils.isValidHCPoint(iWCEndPntHC)){console.warn("One or more measure points are invalid");return}this.mWCEndPtHC0=iWCStartPntHC.copy();this.mWCEndPntHC1=iWCEndPntHC.copy()};MeasureBaseLine.prototype.updateLinePts=function(){var viewHC=this.mViewer.getHCView();this.mLine.setP1(eDwTypes_1.HC.Point2.fromPoint3(viewHC.projectPoint(this.mWCEndPtHC0)));this.mLine.setP2(eDwTypes_1.HC.Point2.fromPoint3(viewHC.projectPoint(this.mWCEndPntHC1)))};MeasureBaseLine.prototype.setColorOnHCLine=function(iColor){this.mLine.setStrokeColor(iColor);this.mLine.setEndEndcapColor(iColor);this.mLine.setStartEndcapColor(iColor)};return MeasureBaseLine}();var MeasureLine=function(_super){__extends(MeasureLine,_super);function MeasureLine(iViewer,iPntHC0,iPntHC1,iLineColor){var _this=_super.call(this,iViewer,iPntHC0,iPntHC1,iLineColor)||this;if(!_this.isValid())_this.createHCLine();return _this}MeasureLine.prototype.copy=function(){var copy=new MeasureLine(this.mViewer,this.mWCEndPtHC0,this.mWCEndPntHC1,this.getLineColorHC());copy.copyFrom(this);return copy};MeasureLine.prototype.createHCLine=function(){_super.prototype.createHCLine.call(this).setWidthAndEndCapsOnHCLine();return this};MeasureLine.prototype.setWidthAndEndCapsOnHCLine=function(){this.mLine.setStrokeWidth(3);this.mLine.setEndcapType(eDwTypes_1.HC.Markup.Shape.EndcapType.None)};return MeasureLine}(MeasureBaseLine);var MeasureLeaderLine=function(_super){__extends(MeasureLeaderLine,_super);function MeasureLeaderLine(iViewer,iPntHC0,iPntHC1,iLineColor){var _this=_super.call(this,iViewer,iPntHC0,iPntHC1,iLineColor)||this;if(!_this.isValid())_this.createHCLine();return _this}MeasureLeaderLine.prototype.copy=function(){var copy=new MeasureLeaderLine(this.mViewer,this.mWCEndPtHC0,this.mWCEndPntHC1,this.getLineColorHC());copy.copyFrom(this);return copy};MeasureLeaderLine.prototype.getLeaderStartPos=function(){return l_getPosForPnt(this.mViewer,this.mWCEndPtHC0)};MeasureLeaderLine.prototype.getLeaderEndPos=function(){return l_getPosForPnt(this.mViewer,this.mWCEndPntHC1)};MeasureLeaderLine.prototype.setLeaderEndPos=function(iPos){this.setWCPts(this.mWCEndPtHC0,eDwGeomUtils.screenToWorld(iPos,this.mViewer.getHCView()))};MeasureLeaderLine.prototype.setLeaderEnd=function(iPoint){this.mWCEndPntHC1=iPoint.copy()};MeasureLeaderLine.prototype.getLeaderStart=function(){return this.mWCEndPtHC0};return MeasureLeaderLine}(MeasureBaseLine);var MeasureDistLine=function(_super){__extends(MeasureDistLine,_super);function MeasureDistLine(iViewer,iPntHC0,iSelObj0,iPntHC1,iSelObj1,iLineColor,iUseArrowEnds){if(iUseArrowEnds===void 0){iUseArrowEnds=true}var _this=_super.call(this,iViewer,iPntHC0,iPntHC1,iLineColor)||this;_this.mStartSelObj=iSelObj0;_this.mEndSelObj=iSelObj1;_this.mDistColor=iLineColor||cLineDistanceColor;_this.mUseArrowEnds=iUseArrowEnds;if(!_this.isValid())_this.createHCLine();return _this}MeasureDistLine.prototype.copy=function(){var copy=new MeasureDistLine(this.mViewer,this.mWCEndPtHC0,this.mStartSelObj,this.mWCEndPntHC1,this.mEndSelObj,this.getLineColorHC(),this.mUseArrowEnds);copy.copyFrom(this);return copy};MeasureDistLine.prototype.setSelObjEndPts=function(iWCStartPntHC,iStartSelObj,iWCEndPntHC,iEndSelObj){_super.prototype.setWCPts.call(this,iWCStartPntHC,iWCEndPntHC);this.mStartSelObj=iStartSelObj;this.mEndSelObj=iEndSelObj};MeasureDistLine.prototype.getDistance=function(){var localPt0HC=this.mStartSelObj.getAsLocalPoint(this.mWCEndPtHC0);var localPt1HC=this.mEndSelObj.getAsLocalPoint(this.mWCEndPntHC1);return eDwTypes_1.HC.Point3.subtract(localPt0HC,localPt1HC).length()};MeasureDistLine.prototype.createHCLine=function(){_super.prototype.createHCLine.call(this).setHCLineAttributes();return this};MeasureDistLine.prototype.setHCLineAttributes=function(){this.mLine.setStrokeWidth(3);if(this.mUseArrowEnds){this.mLine.setEndcapType(eDwTypes_1.HC.Markup.Shape.EndcapType.Arrowhead)}this.mLine.setStartEndcapSize(5);this.mLine.setEndEndcapSize(5);this.mLine.setStartEndcapColor(this.mDistColor);this.mLine.setEndEndcapColor(this.mDistColor);this.mLine.setStrokeColor(this.mDistColor)};return MeasureDistLine}(MeasureBaseLine);var MeasureLabel=function(){function MeasureLabel(iViewer,iPnt3DHC,iDrawEnabled){if(iDrawEnabled===void 0){iDrawEnabled=true}this.mViewer=iViewer;this.mItems=[];this.mDrawEnabled=iDrawEnabled;this.createLeaderIfPointValid(iPnt3DHC,iPnt3DHC)}MeasureLabel.prototype.reset=function(){this.mItems=[]};MeasureLabel.prototype.drawLabel=function(){if(!this.isValid()||!this.mDrawEnabled)return;this.setLabelPosition(this.mLeader.getLeaderEndPos());var n=this.mItems.length;if(0===n)return;this.mLeader.draw();for(var i=0;icanvasSize.x&&bboxSize.xcanvasSize.y&&bboxSize.y1){this.mLineDist.draw();if(!this.mLineNormal&&eDwMeasureEntities.ShowDelta&&this.mDelta){this.mDelta.draw(iImmediateDrawMode)}var viewHC=this.mViewer.getHCView();this.mEndGlyph0.setCenter(eDwTypes_1.HC.Point2.fromPoint3(viewHC.projectPoint(this.mWCPntsHC[0])));this.mEndGlyph1.setCenter(eDwTypes_1.HC.Point2.fromPoint3(viewHC.projectPoint(this.mWCPntsHC[1])));if(!iImmediateDrawMode){var renderer=this.mViewer.getHCMarkupManager().getRenderer();renderer.drawCircle(this.mEndGlyph0);renderer.drawCircle(this.mEndGlyph1)}}};MeasureAuxDelta.prototype.getLabelData=function(){var labelData={};var labelName=this.mLineNormal?cNormalDistance:this.mSomeCoordsArcCenters?cCenterDistance:cDistance;labelData[cDistance]=new MeasureResultDistance(labelName,this.getDistance());var minResultDist=new MeasureResultDistance(cMinDistance,this.mModelSpaceMinDist);if(parseFloat(minResultDist.Value)>0){labelData[cMinDistance]=minResultDist}var maxResultDist=new MeasureResultDistance(cMaxDistance,this.mModelSpaceMaxDist);if(parseFloat(maxResultDist.Value)>0){labelData[cMaxDistance]=maxResultDist}if(!this.mLineNormal&&eDwMeasureEntities.ShowDelta&&this.mDelta){$.extend(labelData,this.mDelta.getLabelData())}return labelData};MeasureAuxDelta.prototype.getLabels=function(){var labels=[];if(this.getDistance()1&&this.mLineDist?eDwTypes_1.HC.Point3.subtract(this.mWCPntsHC[0],this.mWCPntsHC[1]):eDwTypes_1.HC.Point3.zero()};MeasureAuxDelta.prototype.getDistance=function(){return this.mLineDist?this.mLineDist.getDistance():0};MeasureAuxDelta.prototype.setDistLineColor=function(iColor){this.mLineColor=iColor};MeasureAuxDelta.prototype.setPointColor=function(iColor){this.mEndGlyph0.setFillColor(iColor);this.mEndGlyph1.setFillColor(iColor)};MeasureAuxDelta.prototype.setMinDist=function(iDist){this.mModelSpaceMinDist=iDist};MeasureAuxDelta.prototype.setMaxDist=function(iDist){this.mModelSpaceMaxDist=iDist};Object.defineProperty(MeasureAuxDelta.prototype,"LineNormal",{get:function(){return this.mLineNormal},set:function(iEnable){this.mLineNormal=iEnable},enumerable:false,configurable:true});Object.defineProperty(MeasureAuxDelta.prototype,"SomeCoordsArcCenters",{get:function(){return this.mSomeCoordsArcCenters},set:function(iEnable){this.mSomeCoordsArcCenters=iEnable},enumerable:false,configurable:true});MeasureAuxDelta.prototype.hasDistance=function(){var deltaDist=this.getDistance();return deltaDist>cLengthTol?true:false};return MeasureAuxDelta}();var MeasureDelta=function(){function MeasureDelta(iViewer){this.mViewer=iViewer;this.reset()}MeasureDelta.prototype.set=function(iStartWCPtHC,iEndWCPtHC,iSelObj0,iSelObj1){var deltas=l_getDeltas(iStartWCPtHC,iEndWCPtHC,iSelObj0,iSelObj1);var deltaWCPt0HC=deltas[0];var deltaWCPt1HC=deltas[1];this.mLineDeltaMap[cDeltaX].setSelObjEndPts(iStartWCPtHC,iSelObj0,deltaWCPt0HC,iSelObj1);this.mLineDeltaMap[cDeltaY].setSelObjEndPts(deltaWCPt0HC,iSelObj0,deltaWCPt1HC,iSelObj1);this.mLineDeltaMap[cDeltaZ].setSelObjEndPts(deltaWCPt1HC,iSelObj1,iEndWCPtHC,iSelObj1)};MeasureDelta.prototype.getLabels=function(){var labelData=this.getLabelData();var numNonZeroLabelData=0;var nonZeroLabelData={};for(var _i=0,_a=[cDeltaX,cDeltaY,cDeltaZ];_i<_a.length;_i++){var deltaKey=_a[_i];var dist=this.mLineDeltaMap[deltaKey].getDistance();if(dist>cLengthTol){nonZeroLabelData[deltaKey]=labelData[deltaKey];numNonZeroLabelData++}}if(numNonZeroLabelData===1)nonZeroLabelData={};var labels=[];for(var key in nonZeroLabelData){var lineDelta=this.mLineDeltaMap[key];var label=new MeasureLabel(this.mViewer,lineDelta.getMiddleWCPtHC());label.addItem(labelData[key],lineDelta.getLineColorHC());if(label.isValid())labels.push(label)}return labels};MeasureDelta.prototype.draw=function(iImmediateDrawMode){if(this.isDeltaEnabled()){for(var key in this.mLineDeltaMap){var deltaLine=this.mLineDeltaMap[key];if(deltaLine.getDistance()>cLengthTol)deltaLine.draw()}}};MeasureDelta.prototype.reset=function(){this.mLineDeltaMap={}};MeasureDelta.prototype.copy=function(){var auxDeltaCopy=new MeasureDelta(this.mViewer);for(var key in this.mLineDeltaMap){auxDeltaCopy.mLineDeltaMap[key]=this.mLineDeltaMap[key].copy()}return auxDeltaCopy};MeasureDelta.prototype.getLabelData=function(){var labelData={};if(this.isDeltaEnabled()){for(var _i=0,_a=[cDeltaX,cDeltaY,cDeltaZ];_i<_a.length;_i++){var delta=_a[_i];labelData[delta]=new MeasureResultDistance(delta,this.mLineDeltaMap[delta].getDistance())}}return labelData};MeasureDelta.prototype.getText=function(){if(this.isDeltaEnabled()){var data=this.getLabelData();return"Delta : "+data[cDeltaX].Value+", "+data[cDeltaY].Value+", "+(""+data[cDeltaZ].Value)}return""};MeasureDelta.create=function(iViewer,iStartWCPtHC,iEndWCPtHC,iSelObj0,iSelObj1){var measureDelta=new MeasureDelta(iViewer);var deltas=l_getDeltas(iStartWCPtHC,iEndWCPtHC,iSelObj0,iSelObj1);var deltaWCPt0HC=deltas[0];var deltaWCPt1HC=deltas[1];measureDelta.mLineDeltaMap[cDeltaX]=new MeasureDistLine(iViewer,iStartWCPtHC,iSelObj0,deltaWCPt0HC,iSelObj1,eDwTypes_1.HC.Color.red(),false);measureDelta.mLineDeltaMap[cDeltaY]=new MeasureDistLine(iViewer,deltaWCPt0HC,iSelObj0,deltaWCPt1HC,iSelObj1,new eDwTypes_1.HC.Color(0,128,0),false);measureDelta.mLineDeltaMap[cDeltaZ]=new MeasureDistLine(iViewer,deltaWCPt1HC,iSelObj1,iEndWCPtHC,iSelObj1,eDwTypes_1.HC.Color.blue(),false);return measureDelta};MeasureDelta.prototype.isDeltaEnabled=function(){return eDwMeasureEntities.ShowDelta&&!!this.mLineDeltaMap[cDeltaX]};return MeasureDelta}();var MeasureAuxDistance=function(){function MeasureAuxDistance(iViewer){this.mViewer=iViewer;this.mDistLine=new MeasureAuxDelta(iViewer);this.mNDistLine=new MeasureAuxDelta(iViewer,cAuxDistanceNormalDistanceLineColor,true);this.mNDistLine.setPointColor(cAuxDistanceNormalDistancePointColor);this.mNormalDistExtLines=[]}MeasureAuxDistance.prototype.reset=function(){this.mDistLine.reset();this.mNDistLine.reset();this.mNDistLine.setDistLineColor(cAuxDistanceNormalDistanceLineColor);this.mNDistLine.LineNormal=true;this.mNDistLine.setPointColor(cAuxDistanceNormalDistancePointColor);this.mNormalDistExtLines=[]};MeasureAuxDistance.prototype.draw=function(iImmediateDrawMode){if(!this.getLabels().length)return;this.mDistLine.draw(iImmediateDrawMode);this.mNDistLine.draw(iImmediateDrawMode);for(var _i=0,_a=this.mNormalDistExtLines;_i<_a.length;_i++){var normalExtLine=_a[_i];normalExtLine.draw()}};MeasureAuxDistance.prototype.setByPointPoint=function(iWCPntHC0,iSelObj0,iWCPntHC1,iSelObj1,isSomeCoordsArcCenters){if(isSomeCoordsArcCenters===void 0){isSomeCoordsArcCenters=false}this.reset();this.mDistLine.setWCDeltaEnds([iWCPntHC0,iWCPntHC1],[iSelObj0,iSelObj1]);this.mDistLine.SomeCoordsArcCenters=isSomeCoordsArcCenters;this.mNDistLine.setWCDeltaEnds([iWCPntHC0,iWCPntHC1],[iSelObj0,iSelObj1]);this.setNormalDistExtPoints([iWCPntHC0,iWCPntHC0,iWCPntHC1,iWCPntHC1]);this.avoidDuplication()};MeasureAuxDistance.prototype.setByPointLine=function(iPntWCHC,iSelObj0,iEdgeHC,iSelObj1,isSomeCoordsArcCenters){if(isSomeCoordsArcCenters===void 0){isSomeCoordsArcCenters=false}var pickPntWCHC=iSelObj1.getPosition();var endPntsWCHC=l_getLineEndPts(iSelObj1);var vecWCHC=eDwTypes_1.HC.Point3.subtract(endPntsWCHC.P0HC,endPntsWCHC.P1HC);if(vecWCHC.length()<1e-6)return;vecWCHC.normalize();var k=eDwTypes_1.HC.Point3.dot(eDwTypes_1.HC.Point3.subtract(iPntWCHC,pickPntWCHC),vecWCHC);var basePntWCHC=eDwTypes_1.HC.Point3.add(pickPntWCHC,eDwTypes_1.HC.Point3.scale(vecWCHC,k));var vecWCHC0=eDwTypes_1.HC.Point3.subtract(endPntsWCHC.P0HC,basePntWCHC);var vecWCHC1=eDwTypes_1.HC.Point3.subtract(endPntsWCHC.P1HC,basePntWCHC);if(eDwTypes_1.HC.Point3.dot(vecWCHC0,vecWCHC1)<0){this.setByPointPoint(iPntWCHC,iSelObj0,basePntWCHC,iSelObj1,isSomeCoordsArcCenters)}else{this.reset();var pntWCHC=vecWCHC0.length()normalDist){result.push(cDistance+": "+labelData[cDistance].Value)}if(this.mNDistLine.getWCDeltaEnds().length&&normalDist){result.push((this.mNDistLine.LineNormal?"Normal ":"")+cDistance+": "+labelData[cDistance].Value)}var minDistResultItem=labelData[cMinDistance];if(minDistResultItem){result.push(cMinDistance+": "+minDistResultItem.Value)}var maxDistResultItem=labelData[cMaxDistance];if(maxDistResultItem){result.push(cMaxDistance+": "+maxDistResultItem.Value)}if(eDwMeasureEntities.ShowDelta){var nDeltaPt=this.mNDistLine.getDelta();var deltaPt=this.mNDistLine.LineNormal?this.mDistLine.getDelta():nDeltaPt;if(!deltaPt.equalsWithTolerance(eDwTypes_1.HC.Point3.zero(),cLengthTol)){result.push(distLine.getText())}}return result.join("\n")};MeasureAuxDistance.getAngle=function(iV0,iV1){var vec0=iV0.copy();var vec1=iV1.copy();vec0.normalize();vec1.normalize();var dotVal=eDwTypes_1.HC.Point3.dot(vec0,vec1);if(0===dotVal)return 90;dotVal=Math.min(dotVal,1);dotVal=Math.max(dotVal,-1);var angle=Math.acos(dotVal);var angleDgree=angle*180/Math.PI;var n=eDwTypes_1.HC.Point3.cross(vec0,vec1);n.normalize();if(isNaN(n.x)||isNaN(n.y)||isNaN(n.z))return 0;return angleDgree};MeasureAuxDistance.prototype.setMinMaxForCircles=function(iCircleHC0,iCircleHC1){function setMinMax(ioAuxDelta,iNominalDist,iRadiiDist){if(!ioAuxDelta.getWCDeltaEnds().length){return}if(iNominalDist>iRadiiDist){ioAuxDelta.setMinDist(iNominalDist-iRadiiDist)}ioAuxDelta.setMaxDist(iNominalDist+iRadiiDist)}var circlePlaneHC0=eDwTypes_1.HC.Plane.createFromPointAndNormal(iCircleHC0.origin,iCircleHC0.normal);var projPnt=eDwGeomUtils.dropPointOnPlane(iCircleHC1.origin,circlePlaneHC0);var dot=eDwTypes_1.HC.Point3.dot(iCircleHC0.normal,iCircleHC1.normal);var dist=projPnt.subtract(iCircleHC0.origin).length();console.debugLog("Measure","2 circles/arcs: dot = "+dot+" dist = "+dist);if(1-Math.abs(dot)cLengthTol){var radiiDist=iCircleHC0.radius+iCircleHC1.radius;setMinMax(this.mDistLine,dist,radiiDist);setMinMax(this.mNDistLine,dist,radiiDist)}};MeasureAuxDistance.prototype.avoidDuplication=function(){var delta0=this.mDistLine.getDelta();var delta1=this.mNDistLine.getDelta();var len0=delta0.length();var len1=delta1.length();var lenMax=Math.max(len0,len1);var lenDiff=Math.abs(len0-len1);if(0===lenMax||lenDiff/lenMax1){this.addDisplayMarker(iSelObjs[0]);delete this.mDelta;delete this.mDistLine}this.addDisplayMarker(iSelObjs[n-1]);if(eDwMeasureEntities.PointToPoint&&this.mPntData.length===2){var selObj0=this.mPntData[0].SelObj;var selObj1=this.mPntData[1].SelObj;var pntWCHC0=selObj0.getPosition();var pntWCHC1=selObj1.getPosition();var absLenTol=eDwGeomUtils.cAbsLengthTol;if(!pntWCHC0.equalsWithTolerance(pntWCHC1,absLenTol)){this.mDistLine=new MeasureDistLine(this.mViewer,pntWCHC0,selObj0,pntWCHC1,selObj1);this.mDistLine.draw();this.mDelta=MeasureDelta.create(this.mViewer,pntWCHC1,pntWCHC0,selObj1,selObj0)}}};MeasureAuxPick.prototype.getText=function(){var text="";if(eDwMeasureEntities.PointToPoint){text=this.mDistResultText;if(this.mDelta)text+="\n"+this.mDelta.getText()}return text};MeasureAuxPick.prototype.addDisplayMarker=function(iSelObj){var cWidthEdge=3;var cPointSize=7;var pntWCHC=iSelObj.getPosition().copy();var shapeCircleHC=new eDwTypes_1.HC.Markup.Shape.Circle;shapeCircleHC.setCenter(eDwTypes_1.HC.Point2.fromPoint3(this.mViewer.getHCView().projectPoint(pntWCHC)));shapeCircleHC.setFillColor(cAuxPickPointFillColor);shapeCircleHC.setStrokeColor(cAuxPickPointStrokeColor);shapeCircleHC.setStrokeWidth(cWidthEdge);shapeCircleHC.setRadius(cPointSize);this.mPntData.push({SelObj:iSelObj,Circle:shapeCircleHC});return shapeCircleHC};MeasureAuxPick.prototype.drawEndPnts=function(){var viewHC=this.mViewer.getHCView();var renderer=this.mViewer.getHCMarkupManager().getRenderer();for(var i=0;i0?n-1:n}for(var i=startIdx;i0){labelsToBeDistributed=this.mInfoLabels.slice().concat(this.mResultLabels)}}this.distributeLabels(labelsToBeDistributed);if(!this.mImmediateDrawMode){this.addMarkupLabels()}};MeasureAuxGeo.prototype.updateLastInfoLabels=function(){this.updateInfoLabel(this.getLabels().length-1)};MeasureAuxGeo.prototype.updateInfoLabel=function(iIndex){this.mInfoLabels=[];function addTo(iCurrIndex,iLabels,ioLabels){if(iLabels.length>iCurrIndex&&iCurrIndex>=0){var label=iLabels[iCurrIndex];if(label.setDefaultEndPos()){label.setStringContent();ioLabels.push(label)}}}addTo(iIndex,this.getLabels(),this.mInfoLabels)};MeasureAuxGeo.prototype.getInfoLabelText=function(){var output=[];var labels=this.getLabels();for(var i=0;icAngleTol?angleRange+Math.PI:angleRange;var percRange=angleRange/(2*Math.PI);len*=percRange;area*=percRange;angle*=percRange}var circularArc={OriginWCHC:iSelObj.getAsLocalPoint(ioCircleHC.origin),NormalWCHC:ioCircleHC.normal,StartPtWCHC:startPt,EndPtWCHC:endPt,Length:len,Area:area,Diameter:ioCircleHC.radius*2,Angle:angle};return circularArc}function l_closestPoints(iPntHC0,iPntHC1){var pntHC0=iPntHC0[0].copy();var pntHC1=iPntHC1[0].copy();var minDist=eDwTypes_1.HC.Point3.subtract(iPntHC0[0],iPntHC1[0]).length();for(var i=0;i0||eDwTypes_1.HC.Point3.dot(vecL0P0HC,vecL0P1HC)>0){var closePnts=l_closestPoints(pntsL0HC,pntsL1HC);distPntHC0=closePnts.P0HC;distPntHC1=closePnts.P1HC}return{PntHC0:origPntHC0,PntHC1:origPntHC1,PntHC2:distPntHC0,PntHC3:distPntHC1}}function l_distanceLineLinePara(iLineHC0,iLineHC1,iPntHC0,iPntHC1){var vecHC0=eDwTypes_1.HC.Point3.subtract(iLineHC0.P0HC,iLineHC0.P1HC);vecHC0.normalize();var k=eDwTypes_1.HC.Point3.dot(vecHC0,eDwTypes_1.HC.Point3.subtract(iPntHC1,iPntHC0))/eDwTypes_1.HC.Point3.dot(vecHC0,vecHC0);var basePnt1HC=eDwTypes_1.HC.Point3.add(iPntHC0,eDwTypes_1.HC.Point3.scale(vecHC0,k));var vecL0P0HC=eDwTypes_1.HC.Point3.subtract(iLineHC0.P0HC,basePnt1HC);var vecL0P1HC=eDwTypes_1.HC.Point3.subtract(iLineHC0.P1HC,basePnt1HC);if(eDwTypes_1.HC.Point3.dot(vecL0P0HC,vecL0P1HC)<0){return{PntHC0:basePnt1HC.copy(),PntHC1:iPntHC1.copy(),PntHC2:basePnt1HC.copy(),PntHC3:iPntHC1.copy()}}var tmp=l_closestPoints([iLineHC1.P0HC,iLineHC1.P1HC],[iLineHC0.P0HC,iLineHC0.P1HC]);return{PntHC0:basePnt1HC.copy(),PntHC1:iPntHC1,PntHC2:tmp.P1HC,PntHC3:tmp.P0HC}}function l_adjustLeaderEndByStart(iPoints){if(0===iPoints.length)return[];function computeAngle(iVect){var angle=Math.atan2(iVect.y,iVect.x);var degrees=180*angle/Math.PI;return(360+Math.round(degrees))%360}function compare(iA,iB){if(iA.angiB.ang)return 1;return 0}var targetRadius=90;var center=new eDwTypes_1.HC.Point2(0,0);for(var i=0;i-1){this.mSelObjs.splice(idx,1)}}return[2]}}))}))})()};eDwMeasureOperator.prototype.clearMeasureEntities=function(){this.mMeasureEntities.reset()};eDwMeasureOperator.prototype.highlightEntityTempAt=function(idx){this.mMeasureEntities.highlightTemporaryEntityAt(idx)};eDwMeasureOperator.prototype.dehighlightAllTemporaryEntity=function(){this.mMeasureEntities.dehighlightAllTemporaryEntity();this.resetTempHighlight()};eDwMeasureOperator.prototype.getMeasureMode=function(){return this.mMeasureMode};eDwMeasureOperator.prototype.setMeasureMode=function(iMode){this.mMeasureMode=iMode};eDwMeasureOperator.prototype.setPointToPointMode=function(iEnable){this.mMeasureEntities.updatePointToPoint(iEnable)};eDwMeasureOperator.prototype.setShowDelta=function(iEnable){this.mMeasureEntities.updateDelta(iEnable)};eDwMeasureOperator.prototype.highlightMeasuringItem=function(iSelObj){this.mSelObjs.push(iSelObj);this.Viewer.HCViewer.selectionManager.add(iSelObj)};eDwMeasureOperator.prototype.dehighlightMeasuringItems=function(){this.mSelObjs=[];this.Viewer.HCViewer.selectionManager.clear()};eDwMeasureOperator.prototype.removeMeasuringItemTempHighlight=function(){for(var _i=0,_a=this.mSelObjs;_i<_a.length;_i++){var selObj=_a[_i];eDwMeasureEntities.highlightEntity(selObj,this.Viewer.getModel(),false)}};eDwMeasureOperator.prototype.resetTempHighlight=function(){eDwMeasureEntities.highlightEntity(this.mTempHighlightItem,this.Viewer.getModel(),false);this.removeMeasuringItemTempHighlight()};eDwMeasureOperator.prototype.resetSelections=function(){var model=this.Viewer.getModel();var modelHC=model.getHCModel();var arraySize=this.mSelectionArray.length;for(var i=0;i"+"
"+""+entityClass+"-"+entityIndex+" "+""+desc+"
"+"
";_b.label=10;case 10:++i;return[3,1];case 11:return[2,generatedHTML]}}))}))};return eDwUIMeasureHTMLGenerator}(eDwUIHTMLGenerator_1.eDwUIHTMLGenerator);return eDwUIMeasureHTMLGenerator}));define("eDwUIMeasurePlugin",["require","exports","eDwEventMgr","eDwKeyMgr","eDwUIUtils","eDwMeasureMgr","eDwUIMeasureHTMLGenerator","eDwTypes","eDwUIBasePlugin","eDwEvents","eDwMeasureEvents","eDwUIShortcutMenu"],(function(require,exports,eDwEventMgr,eDwKeyMgr_1,eDwUIUtils,eDwMeasureMgr,eDwUIMeasureHTMLGenerator,eDwTypes_3,eDwUIBasePlugin_1,eDwEvents_2,eDwMeasureEvents_2,eDwUIShortcutMenu_1){"use strict";var eDwUIMeasurePlugin=function(_super){__extends(eDwUIMeasurePlugin,_super);function eDwUIMeasurePlugin(iViewer,iViewerFeatOpts){var _this=this;var buttonInfo={ID:"#edrawings-button-measure"};_this=_super.call(this,"Measure",iViewer,buttonInfo,iViewerFeatOpts)||this;_this.initPluginButton();return _this}eDwUIMeasurePlugin.prototype.init=function(){return __awaiter(this,void 0,void 0,(function(){var panelsToLoad,model,value,measureButton;return __generator(this,(function(_a){switch(_a.label){case 0:panelsToLoad=[{ID:c_measurePanelID,HTML:"measurepanel.html"}];return[4,_super.prototype.init.call(this,panelsToLoad)];case 1:_a.sent();model=this.mViewer.getModel();value=model.getProperty("measure");eDwUIUtils.hide("#edrawings-button-measure",false);measureButton=$("#edrawings-button-measure");measureButton[value==="true"?"removeClass":"addClass"]("edrawings-disabled-button");this.mMeasureMgr=new eDwMeasureMgr(this.mViewer);eDwUIUtils.setUIGenerator(c_measurePanelID,new eDwUIMeasureHTMLGenerator(this.mViewer,c_measurePanelID));return[2]}}))}))};eDwUIMeasurePlugin.prototype.onClick=function(iActivate){_super.prototype.onClick.call(this,iActivate);if(iActivate){eDwUIUtils.activateUI(this.PluginButtonID,c_measurePanelID)}};eDwUIMeasurePlugin.prototype.onActivate=function(iButtonJQ){var _this=this;if(!_super.prototype.onActivate.call(this,iButtonJQ))return false;eDwUIUtils.addPanelModeEvents(c_measurePanelID,c_eventIDSuffix,"#"+iButtonJQ.attr("id"));var shortcutMenu=eDwUIShortcutMenu_1.eDwUIShortcutMenu.get();if(!shortcutMenu.isEmpty()){shortcutMenu.addMenuSeparator(this.PluginGroupName)}shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-measure-remove",(function(iEvent,iUIItemJQ,iArg){var selMeasureItem=$(c_measurePanelID+" .edrawings-list-selected");if(selMeasureItem){var indexStr=selMeasureItem.attr("index");if(indexStr){var index=parseInt(indexStr);_this.mMeasureMgr.removeMeasureEntityAt(index)}}eDwUIShortcutMenu_1.eDwUIShortcutMenu.hide()}));shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-measure-clear",(function(iEvent,iUIItemJQ,iArg){_this.mMeasureMgr.clearMeasureEntities();_this.mMeasureMgr.dehighlightAllSelectEntity();eDwUIShortcutMenu_1.eDwUIShortcutMenu.hide()}));var selectorName=c_measurePanelID+" .edrawings-measure-entities-list-item";this.mUIHTMLEventMgr.addDelegatedEventHandler(selectorName,"click",(function(iEvent){var targetJQ=$(iEvent.target);if(!targetJQ||!targetJQ.length)return;eDwUIShortcutMenu_1.eDwUIShortcutMenu.hide();_this.updateMeasureSelection(targetJQ[0],selectorName)}));this.mUIHTMLEventMgr.addDelegatedEventHandler(selectorName,"mousedown",(function(iEvent){var eventJQ=iEvent;if(!eDwKeyMgr_1.eDwKeyMgr.isRMBPressed(eventJQ)){return}_this.updateMeasureSelection(eventJQ.target,selectorName);(function(){return __awaiter(_this,void 0,void 0,(function(){var screenPos;return __generator(this,(function(_a){switch(_a.label){case 0:screenPos=new eDwTypes_3.HC.Point2(eventJQ.clientX,eventJQ.clientY);return[4,eDwEventMgr.get().fireEvent(eDwEvents_2.RightClickEvent,this.mViewer,screenPos,null,this.PluginGroupName)];case 1:_a.sent();return[2]}}))}))})()}));this.mUIHTMLEventMgr.addDelegatedEventHandler(c_measurePanelID+" .edrawings-measure-entities-remove","click",(function(iEvent){var targetJQ=$(iEvent.target);var idxStr=targetJQ.parent().attr("index");if(!idxStr)return;var idx=parseInt(idxStr,10);_this.mMeasureMgr.removeMeasureEntityAt(idx)}));this.mUIHTMLEventMgr.addDelegatedEventHandler(c_measurePanelID+" .measure-filter-button","click",(function(iEvent){var target=$(iEvent.target);if(target.hasClass("state-on-button")){target.removeClass("state-on-button")}else{target.addClass("state-on-button")}_this.mMeasureMgr.setMeasureMode(l_getCurrentMeasureMode())}));this.mUIHTMLEventMgr.addDelegatedEventHandler(c_measurePanelID+" .edrawings-measure-delta-button","click",(function(iEvent){var target=$(iEvent.target);_this.mMeasureMgr.setMeasureDelta(!target.hasClass("state-on-button"));target.toggleClass("state-on-button")}));this.mUIHTMLEventMgr.addDelegatedEventHandler(c_measurePanelID+" .edrawings-measure-pickpoint-button","click",(function(iEvent){var target=$(iEvent.target);var isSelected=target.hasClass("state-on-button");_this.mMeasureMgr.setPointToPointMode(!isSelected);target.toggleClass("state-on-button")}));this.mUIHTMLEventMgr.addDelegatedEventHandler(c_measurePanelID+" .measure-unit-selector","change",(function(iEvent){var lengthUnit=$("#edrawings-measure-distant-unit").val();var angleUnit=$("#edrawings-measure-angle-unit").val();_this.mMeasureMgr.setMeasureUnits(lengthUnit,angleUnit)}));var eventMgr=eDwEventMgr.get();eventMgr.addEventHandlerFunc(eDwMeasureEvents_2.MeasurementRefreshEvent,l_onMeasurementRefresh);eventMgr.addEventHandlerFunc(eDwMeasureEvents_2.MeasurementSelectionEvent,l_onMeasurementSelected);eventMgr.addEventHandlerFunc(eDwMeasureEvents_2.MeasurementDeselectAllEvent,l_onMeasurementDeselectAll);this.addAppObjEvent(eDwEvents_2.ModelViewChangeEvent,"onModelViewChange",true);this.mMeasureMgr.activateMeasure(this.mMeasureMgr.getMeasureMode());l_syncMeasureModeUI(this.mMeasureMgr,this.mViewer.getModel().getUserUnits());return true};eDwUIMeasurePlugin.prototype.onDeactivate=function(iButtonJQ){if(!_super.prototype.onDeactivate.call(this,iButtonJQ))return false;eDwUIUtils.deactivateMoveInput(c_eventIDSuffix);this.mMeasureMgr.deactivateMeasure();var shortcutMenu=eDwUIShortcutMenu_1.eDwUIShortcutMenu.get();shortcutMenu.removeAllMenuItems(this.PluginGroupName);this.mUIHTMLEventMgr.removeAllEventHandlers();var eventMgr=eDwEventMgr.get();eventMgr.removeEventHandlerFunc(eDwMeasureEvents_2.MeasurementRefreshEvent,"l_onMeasurementRefresh");eventMgr.removeEventHandlerFunc(eDwMeasureEvents_2.MeasurementSelectionEvent,"l_onMeasurementSelected");eventMgr.removeEventHandlerFunc(eDwMeasureEvents_2.MeasurementDeselectAllEvent,"l_onMeasurementDeselectAll");this.addAppObjEvent(eDwEvents_2.ModelViewChangeEvent,"onModelViewChange",false);return true};eDwUIMeasurePlugin.prototype.updateMeasureSelection=function(iTarget,iSelectorName){var targetJQ=$(iTarget);var idxStr=targetJQ.attr("index");if(!idxStr)return;var idx=parseInt(idxStr,10);var measureMgr=this.mMeasureMgr;$(iSelectorName).removeClass("edrawings-list-selected");measureMgr.dehighlightAllSelectEntity();targetJQ.addClass("edrawings-list-selected");measureMgr.highlightSelectEntityAt(idx)};eDwUIMeasurePlugin.prototype.onModelViewChange=function(iViewer,iNewModelView,iIsAssembly){this.mMeasureMgr.dehighlightAllSelectEntity();this.mMeasureMgr.clearMeasureEntities()};return eDwUIMeasurePlugin}(eDwUIBasePlugin_1.eDwUIBasePlugin);var c_measurePanelID="#edrawings-measure-panel";var c_eventIDSuffix=".edw.measure";function l_onMeasurementDeselectAll(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){$(".edrawings-measure-entities-list-item").removeClass("edrawings-list-selected");return[2]}))}))}function l_onMeasurementSelected(iSelListIndex){return __awaiter(this,void 0,void 0,(function(){var selector,itemJQ;return __generator(this,(function(_a){selector='.edrawings-measure-entities-list-item[index="'+iSelListIndex+'"]';itemJQ=$(selector);if(itemJQ.length&&!itemJQ.hasClass("edrawings-list-selected")){eDwUIUtils.scrollToTarget(itemJQ,"fast")}$(".edrawings-measure-entities-list-item").removeClass("edrawings-list-selected");itemJQ.addClass("edrawings-list-selected");return[2]}))}))}function l_onMeasurementRefresh(iMeasureResult){return __awaiter(this,void 0,void 0,(function(){var list,gen,_a,_b;return __generator(this,(function(_c){switch(_c.label){case 0:list=$("#edrawings-measure-submenu-list");$("#edrawings-measure-result").text("");list.empty();$("#edrawings-measure-result").text(iMeasureResult.Message);gen=eDwUIUtils.getUIGenerator(c_measurePanelID);gen.setMeasureResult(iMeasureResult);_b=(_a=list).append;return[4,gen.generateHTML("")];case 1:_b.apply(_a,[_c.sent()]);eDwUIUtils.fixMenuPanelInwardToolbar($(c_measurePanelID));return[2]}}))}))}function l_getCurrentMeasureMode(){var vertexEnabled=eDwUIUtils.isStateOn("#edrawings-measure-vertex-button")?eDwTypes_3.EntityMode.VERTEX:0;var edgeEnabled=eDwUIUtils.isStateOn("#edrawings-measure-edge-button")?eDwTypes_3.EntityMode.EDGE:0;var faceEnabled=eDwUIUtils.isStateOn("#edrawings-measure-face-button")?eDwTypes_3.EntityMode.FACE:0;var holeEnabled=eDwUIUtils.isStateOn("#edrawings-measure-hole-button")?eDwTypes_3.EntityMode.HOLE:0;return vertexEnabled|edgeEnabled|faceEnabled|holeEnabled}function l_syncMeasureModeUI(iMeasureMgr,iUserUnits){function setMeasureButton(iID,iMeasureModes,iTargetModes){var method=iMeasureModes&iTargetModes?"addClass":"removeClass";$(iID)[method]("state-on-button")}$("#edrawings-measure-distant-unit").val(iUserUnits.Length);$("#edrawings-measure-angle-unit").val(iUserUnits.Angle);var measureMode=iMeasureMgr.getMeasureMode();setMeasureButton("#edrawings-measure-vertex-button",measureMode,eDwTypes_3.EntityMode.VERTEX);setMeasureButton("#edrawings-measure-edge-button",measureMode,eDwTypes_3.EntityMode.EDGE);setMeasureButton("#edrawings-measure-face-button",measureMode,eDwTypes_3.EntityMode.FACE)}return eDwUIMeasurePlugin})); // Copyright 2018-2021 Dassault Systemes SolidWorks Corporation. All rights reserved. -var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P((function(resolve){resolve(value)}))}return new(P||(P=Promise))((function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())}))};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]-1){return}var augmentedMsg=iMsg;var stack=(new Error).stack;if(stack){var stackLine=stack.split("\n")[2];if(!stackLine)return;var callerLine=stackLine.slice(stackLine.lastIndexOf("("),stackLine.lastIndexOf(")")+1);if(!callerLine){callerLine=stackLine.slice(stackLine.lastIndexOf("@")+1);callerLine="("+callerLine+")"}augmentedMsg=callerLine+" "+iMsg}if(console.debugLogCategories.indexOf(iCategory)>-1||console.debugLogCategories.indexOf("*")>-1){if(iParams&&iParams.length)console.log(augmentedMsg,iParams);else console.log(augmentedMsg)}};define("eDrawingsWebViewer",["require","exports","eDwUI","eDwServiceMgr","eDwUIMessageReporter","eDrawingsWebViewerUtils","utils","eDwUIUtils"],(function(require,exports,eDwUI_1,eDwServiceMgr,eDwUIMessageReporter,eDrawingsWebViewerUtils,Utils,eDwUIUtils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.start=void 0;function start(iViewerOpts,iServerURL){eDrawingsWebViewerUtils.startViewer(iServerURL||c_server,"edrawings-canvas",iViewerOpts,l_init,eDwUIMessageReporter.showResultPanel)}exports.start=start;function l_init(ioViewerOpts,iContainerElemID){c_eDrawingsUI.initUIEvents(ioViewerOpts);var modelContents="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";if(modelContents!==""){eDwServiceMgr.get().disableAdvancedServices();ioViewerOpts.URL="";eDwUIUtils.viewFile("SlideDual-20ID-50H-100W-Nema23",null,ioViewerOpts,iContainerElemID,Utils.getUint8Array(modelContents))}}var c_eDrawingsUI=new eDwUI_1.eDwUI;var c_server=location.origin+location.pathname.slice(0,location.pathname.lastIndexOf("/")+1)}));define("eDrawingsWebViewerUtils",["require","exports","eDwEventMgr","eDwServiceMgr","eDwResultError","eDwAJAXError","eDwUIPluginMgr","eDwTypes","eDwEvents","eDwUIUtils","utils"],(function(require,exports,eDwEventMgr,eDwServiceMgr,eDwResultError,eDwAJAXError,eDwUIPluginMgr,eDwTypes_1,eDwEvents_1,eDwUIUtils,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.removeModelStreamCache=exports.shutdownViewer=exports.startViewer=exports.getViewerVersion=void 0;function getViewerVersion(){return"30.5.0.0019"}exports.getViewerVersion=getViewerVersion;function startViewer(iServerURL,iCanvasID,iViewerOpts,iInit,iOnError){var _this=this;l_ModelLoadEvents=function(iState){var viewerCanvasID="#"+iCanvasID;if(iState==="init"){var viewerJQ=$(viewerCanvasID);viewerJQ.on("edw:ModelLoaded",(function(iEvent,iViewer){var viewHC=iViewer.getHCView();viewHC.setPointSize(0,eDwTypes_1.HC.PointSizeUnit.ScreenPixels);viewHC.setHardEdgesEnabled(false);(function(){return __awaiter(_this,void 0,void 0,(function(){var iExcp_1;return __generator(this,(function(_a){switch(_a.label){case 0:_a.trys.push([0,2,,3]);return[4,l_processProductStructure(iViewer,iServerURL)];case 1:_a.sent();return[3,3];case 2:iExcp_1=_a.sent();l_displayError(iExcp_1,iOnError);return[3,3];case 3:return[2]}}))}))})()}));viewerJQ.on("edw:ModelLoadFailed",(function(iEvent,iViewer,iModelName,iReason){if(iOnError){iOnError({ErrorCode:"ModelLoadInViewerFailed",ErrorData:[iReason,iModelName]})}}))}else{var viewerJQ=$(viewerCanvasID);viewerJQ.off("edw:ModelLoaded");viewerJQ.off("edw:ModelLoadFailed")}};var viewerFeatOpts={};$.extend(viewerFeatOpts,c_featOps);if(iViewerOpts){$.extend(viewerFeatOpts,iViewerOpts)}else{eDwUIUtils.getRequestedQueryStringParams(location.href,viewerFeatOpts)}if(viewerFeatOpts.Debug){if(!console.debugLogCategories||console.debugLogCategories.length===0){console.debugLogCategories=[];console.debugLogCategories.push("*")}}eDwServiceMgr.create(iServerURL);(function(){return __awaiter(_this,void 0,void 0,(function(){var iExcp_2;return __generator(this,(function(_a){switch(_a.label){case 0:_a.trys.push([0,2,,3]);l_ModelLoadEvents("init");return[4,l_init(iCanvasID,viewerFeatOpts,iInit)];case 1:_a.sent();return[3,3];case 2:iExcp_2=_a.sent();l_displayError(iExcp_2,iOnError);return[3,3];case 3:return[2]}}))}))})()}exports.startViewer=startViewer;function shutdownViewer(iViewer){l_ModelLoadEvents("shutdown");iViewer.unregister()}exports.shutdownViewer=shutdownViewer;function removeModelStreamCache(iViewer,iServer){return __awaiter(this,void 0,void 0,(function(){var modelKey,serviceMgr,iExcp_3;return __generator(this,(function(_a){switch(_a.label){case 0:modelKey=iViewer.getCurrModelKey();if(!modelKey||!iViewer.ViewerFeatureOpts.DeleteModelCacheFileWhenDone){return[2]}console.debugLog("ModelLoad","Attempting to remove cached model: "+modelKey);serviceMgr=eDwServiceMgr.get();_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,serviceMgr.removeNamedCache(modelKey,iViewer.ViewerFeatureOpts.DeleteModelCacheFileWhenDone)];case 2:_a.sent();console.debugLog("ModelLoad","Removed cached model: "+modelKey);return[3,4];case 3:iExcp_3=_a.sent();console.debugLog("ModelLoad","Failed to remove cached model: "+modelKey);console.debugLog("ModelLoad",iExcp_3.message);throw iExcp_3;case 4:return[2]}}))}))}exports.removeModelStreamCache=removeModelStreamCache;function l_init(iContainerElemID,ioViewerOpts,iInit){return __awaiter(this,void 0,void 0,(function(){var serviceMgr;var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:serviceMgr=eDwServiceMgr.get();serviceMgr.disableAdvancedServices(utils.getExtension(ioViewerOpts.URL)==="scs");(function(){return __awaiter(_this,void 0,void 0,(function(){var pluginFiles,_i,pluginFiles_1,pluginFile,pluginClassName;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,serviceMgr.getPluginFiles()];case 1:pluginFiles=_a.sent();_i=0,pluginFiles_1=pluginFiles;_a.label=2;case 2:if(!(_i-1))return[3,4];return[4,exclusiveCmds[i].commit()];case 2:_a.sent();_a.label=3;case 3:--i;return[3,1];case 4:this.mActiveCmds=this.mActiveCmds.filter((function(iCmd){return!iCmd.Exclusive}));_a.label=5;case 5:return[2]}}))}))};eDwCommandMgr.prototype.detach=function(iCmd){var cmdPos=this.mActiveCmds.indexOf(iCmd);if(cmdPos===-1)return false;var removedCmds=this.mActiveCmds.splice(cmdPos,1);return removedCmds.length===1?true:false};return eDwCommandMgr}();return eDwCommandMgr}));define("eDwCompositeCmd",["require","exports","eDwSupportsHistoryCmd","eDwHistoryMgr","eDwCommandMgr","utils"],(function(require,exports,eDwSupportsHistoryCmd,eDwHistoryMgr,eDwCommandMgr,Utils){"use strict";var eDwCompositeCmd=function(_super){__extends(eDwCompositeCmd,_super);function eDwCompositeCmd(iViewer){var _this=_super.call(this,iViewer)||this;_this.mSubCmds=[];eDwHistoryMgr.get().pushStack();return _this}eDwCompositeCmd.prototype.initCmdActionImplementation=function(iHistoryActions){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.mCmdHistoryActions=iHistoryActions;if(!(this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeInit))return[3,2];return[4,this.mCmdHistoryActions.compositeInit(this)];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))};eDwCompositeCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){var actionExists,_a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!_super.prototype.undo.call(this))return[2,false];actionExists=this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeUndo;if(!actionExists)return[3,2];return[4,this.mCmdHistoryActions.compositeUndo(this)];case 1:_a=_b.sent();return[3,4];case 2:return[4,this.undoSubCmds()];case 3:_a=_b.sent();_b.label=4;case 4:return[2,_a]}}))}))};eDwCompositeCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){var actionExists,_a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!_super.prototype.redo.call(this))return[2,false];actionExists=this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeRedo;if(!actionExists)return[3,2];return[4,this.mCmdHistoryActions.compositeRedo(this)];case 1:_a=_b.sent();return[3,4];case 2:return[4,this.redoSubCmds()];case 3:_a=_b.sent();_b.label=4;case 4:return[2,_a]}}))}))};eDwCompositeCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.mSubCmds=eDwHistoryMgr.get().popStack();return[4,_super.prototype.commit.call(this)];case 1:_a.sent();if(!(this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeCommit))return[3,3];return[4,this.mCmdHistoryActions.compositeCommit(this)];case 2:_a.sent();_a.label=3;case 3:return[2]}}))}))};eDwCompositeCmd.prototype.cancel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.mSubCmds=eDwHistoryMgr.get().popStack();return[4,_super.prototype.cancel.call(this)];case 1:_a.sent();if(!(this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeCancel))return[3,3];return[4,this.mCmdHistoryActions.compositeCancel(this)];case 2:_a.sent();return[3,5];case 3:return[4,this.cancelSubCmds()];case 4:_a.sent();_a.label=5;case 5:this.clearSubCmds();return[2]}}))}))};eDwCompositeCmd.prototype.isCommitted=function(){return _super.prototype.isCommitted.call(this)&&!(this.InitialState===undefined)&&!(this.FinalState===undefined)};Object.defineProperty(eDwCompositeCmd.prototype,"AllowsAggregation",{get:function(){return true},enumerable:false,configurable:true});eDwCompositeCmd.prototype.undoSubCmds=function(){return __awaiter(this,void 0,void 0,(function(){var isSuccessful,lastCmdIndex,i,cmd,ret;return __generator(this,(function(_a){switch(_a.label){case 0:isSuccessful=true;lastCmdIndex=this.mSubCmds.length-1;i=lastCmdIndex;_a.label=1;case 1:if(!(i>-1))return[3,4];cmd=this.mSubCmds[i];return[4,cmd.undo()];case 2:ret=_a.sent();console.debugLog("History","Undo subcommand history at index "+i+(ret?" succeeded.":" failed.")+" Object Type = "+Utils.getObjectTypeName(cmd)+".");if(!ret){isSuccessful=false}_a.label=3;case 3:i--;return[3,1];case 4:return[2,isSuccessful]}}))}))};eDwCompositeCmd.prototype.cancelSubCmds=function(){return __awaiter(this,void 0,void 0,(function(){var cmdMgr,lastCmdIndex,i;return __generator(this,(function(_a){switch(_a.label){case 0:cmdMgr=eDwCommandMgr.get();lastCmdIndex=this.mSubCmds.length-1;i=lastCmdIndex;_a.label=1;case 1:if(!(i>-1))return[3,4];return[4,cmdMgr.remove(this.mSubCmds[i],"cancel")];case 2:_a.sent();_a.label=3;case 3:i--;return[3,1];case 4:delete this.InitialState;delete this.FinalState;return[2]}}))}))};eDwCompositeCmd.prototype.redoSubCmds=function(){return __awaiter(this,void 0,void 0,(function(){var isSuccessful,numCmds,i,cmd,ret;return __generator(this,(function(_a){switch(_a.label){case 0:isSuccessful=true;numCmds=this.mSubCmds.length;i=0;_a.label=1;case 1:if(!(i-1){eventHandlerMaps.splice(index,1);++numRemoved}}}return numRemoved};eDwEventMgr.prototype.removeAllEventHandlers=function(){this.mEventHandlers.clear()};eDwEventMgr.prototype.removeEventHandlers=function(iEvent){this.mEventHandlers.delete(iEvent)};eDwEventMgr.prototype.fireEvent=function(iEvent){var iArgs=[];for(var _i=1;_i-1){changedPropAttribNames.push(attribName)}}return changedPropAttribNames};eDwHierarchyNode.isHierarchyNode=function(iNode){return iNode.Name};eDwHierarchyNode.sPropagatingAttribNames=["Visible","Opaque"];return eDwHierarchyNode}();return eDwHierarchyNode}));define("eDwHistoryMgr",["require","exports","utils"],(function(require,exports,Utils){"use strict";var eDwHistoryMgr=function(){function eDwHistoryMgr(){this.clear()}eDwHistoryMgr.get=function(){if(!eDwHistoryMgr.sHistoryMgr){eDwHistoryMgr.sHistoryMgr=new eDwHistoryMgr}return eDwHistoryMgr.sHistoryMgr};eDwHistoryMgr.prototype.undo=function(){var currStacksElem=this.getCurrStackElem();var currStack=currStacksElem.Stack;var currStackCmdIndex=currStacksElem.getCurrCmdIndex();if(currStackCmdIndex<0||currStack.length===0){console.debugLog("History","Already before first command.");return null}currStacksElem.incrementCurrCmdIndex(-1);var cmd=currStack[currStackCmdIndex];cmd.undo();console.debugLog("History","Undoing command at index "+currStackCmdIndex+" Object type: "+Utils.getObjectTypeName(cmd));return cmd};eDwHistoryMgr.prototype.redo=function(){var currStacksElem=this.getCurrStackElem();var currStack=currStacksElem.Stack;var nextStackCmdIndex=currStacksElem.getCurrCmdIndex()+1;if(nextStackCmdIndex>=currStack.length){console.debugLog("History","Already after last command.");return null}currStacksElem.incrementCurrCmdIndex(1);var cmd=currStack[nextStackCmdIndex];cmd.redo();console.debugLog("History","Redoing command at index "+nextStackCmdIndex+" Object type: "+Utils.getObjectTypeName(cmd));return cmd};eDwHistoryMgr.prototype.push=function(iCmd){if(!iCmd)return;var currStacksElem=this.getCurrStackElem();var currStack=currStacksElem.Stack;var currStackSize=currStack.length;var currStackCmdIndex=currStacksElem.getCurrCmdIndex();if(currStackCmdIndex!==currStackSize-1){currStack.splice(currStackCmdIndex+1);console.debugLog("History","Truncated history to "+(currStackCmdIndex+1)+" elements.")}currStack.push(iCmd);currStacksElem.incrementCurrCmdIndex(1);console.debugLog("History","Adding command to history at index "+(currStackCmdIndex+1)+" Object Type = "+Utils.getObjectTypeName(iCmd)+".")};eDwHistoryMgr.prototype.clear=function(){console.debugLog("History","Clear all history.");this.mCmdStacksStack=[];this.pushStack()};eDwHistoryMgr.prototype.pushStack=function(){console.debugLog("History","Add a new history stack at index "+this.mCmdStacksStack.length+".");this.mCmdStacksStack.push(new eDwCmdStacksElem)};eDwHistoryMgr.prototype.popStack=function(){console.debugLog("History","Remove history stack from index "+(this.mCmdStacksStack.length-1)+" down to 0.");var activeCmds=[];var currStackElem=this.mCmdStacksStack.pop();if(currStackElem){var currCmdIndex=currStackElem.getCurrCmdIndex()+1;for(var i=0;i-1&&iKeyInfo[key]){keyModifiers+=key+"-"}}return keyModifiers?keyModifiers.substring(0,keyModifiers.length-1):"none"}}));define("eDwLayer",["require","exports","eDwNodeAttributes","utils"],(function(require,exports,eDwNodeAttributes_2,utils){"use strict";var eDwLayer=function(){function eDwLayer(iLayerName,iLayerIDHC,iAttribs){this.mName=iLayerName;this.mIDHC=iLayerIDHC;this.mInitAttribs=eDwNodeAttributes_2.eDwNodeAttributes.initAttribs(iAttribs);this.mAttribs=eDwNodeAttributes_2.eDwNodeAttributes.initAttribs(iAttribs);this.mNodeIDHCToHierNodeMap={}}eDwLayer.prototype.addNodes=function(iNodeIDsHC,iModel){for(var _i=0,iNodeIDsHC_1=iNodeIDsHC;_i.5){footVal*=signFactor;formattedString=utils.formatString("${footVal}ft ${formattedInches}",footVal.toFixed(0),formattedString)}return formattedString},area:function(iVal){var userUnits=_this.mUserUnits["Length"];var func=basicUserUnitResults[userUnits];var valueWithUnits=func.call(_this,iVal);return utils.formatString(cCommonUnitFormat,valueWithUnits,"^2")}};var unit=this.mUserUnits[iUnitType];unit=unit||iUnitType.toLowerCase();var func=basicUserUnitResults[unit];return func?func.call(this,iValue):iValue.toString()};eDwModel.prototype.setAttribOnHierNodes=function(iHierNodes,iAttribs){return __awaiter(this,void 0,void 0,(function(){var changedHierNodes,changedAncestorHierNodeMap,_i,iHierNodes_1,hierNode,changedAttribNames,propagatingAttribNames,changedChildHierNodes,parentHierNode,_a,propagatingAttribNames_1,attribName,attrib,parentAttrib,value,mergedAttrib,parentIDHC,parentIDHC,changedHierNodesAndAttribs,changedHCNodeID,ancHierNode;return __generator(this,(function(_b){switch(_b.label){case 0:changedHierNodes=[];changedAncestorHierNodeMap={};for(_i=0,iHierNodes_1=iHierNodes;_i0){var sceneData=$(data[0]);this.mOrigin=sceneData.attr("origin");switch(sceneData.attr("type")){case"drawing":this.mCategory="DRAWING";break;case"part":this.mCategory="PART";break;case"assembly":this.mCategory="ASSEMBLY";break;default:break}}this.mProperties=docJQ.find("property");var lengthUnit=this.getProperty("lengthunit");var isValidUnit=eDwUnits_1.LengthTypeValues.indexOf(lengthUnit)>-1;this.mUserUnits.Length=isValidUnit?lengthUnit:this.mUserUnits.Length;var angleUnit=this.getProperty("angleunit");isValidUnit=eDwUnits_1.AngleTypeValues.indexOf(angleUnit)>-1;this.mUserUnits.Angle=isValidUnit?angleUnit:this.mUserUnits.Angle;if(this.mCategory==="DRAWING"){this.parseModelViews(docJQ,"sheet","views","Unnamed Sheet","sheet");this.processLayers(iPropsMapHC)}else{this.parseModelViews(docJQ,"configuration","hierarchy","Unnamed Config","config");if(this.mCategory==="ASSEMBLY"){var modelViews=this.getModelViews();for(var _i=0,modelViews_3=modelViews;_i (HC values) | ";for(var _i=0,_a=this.mModelViews;_i<_a.length;_i++){var modelView=_a[_i];var nodeIDHC=modelView.Hierarchy.HOOPSID;msg+=modelView.Name+" - "+this.isVisibleForNodeHC(nodeIDHC)+" | "}console.debugLog("NodeVisibility",msg);console.debugLog("NodeVisibility","Active model view = "+this.mActiveModelView.Name);var hierNodes=this.mActiveModelView.getNodes();for(var _b=0,hierNodes_1=hierNodes;_b0&&ioHierachyNode){for(var i=0;i"){props.Name=props.Name.replace("<","<");props.Name=props.Name.replace(">",">")}props.Visible=trueFalseOrIndeterminate(iElemJQ.attr("visible"));props.Opaque=falseTrueOrIndeterminate(iElemJQ.attr("transparent"));props.Selectable=trueFalseOrIndeterminate(iElemJQ.attr("selectable"));props.HOOPSID=parseInt(iElemJQ.attr("id"),10)}return props}function l_getPropsAsAttribs(iNodeProps){var nodeAttribs={};eDwNodeAttributes_3.eDwNodeAttributes.setAttribs(nodeAttribs,iNodeProps);return nodeAttribs}function l_getDefaultCamera(iElemJQ){var perspectiveStr=iElemJQ.attr("camPerspective");if(!perspectiveStr)return undefined;var posPtHC=new eDwTypes_7.HC.Point3(parseFloat(iElemJQ.attr("camPosX")),parseFloat(iElemJQ.attr("camPosY")),parseFloat(iElemJQ.attr("camPosZ")));var tgtPtHC=new eDwTypes_7.HC.Point3(parseFloat(iElemJQ.attr("camTgtX")),parseFloat(iElemJQ.attr("camTgtY")),parseFloat(iElemJQ.attr("camTgtZ")));var upVecHC=new eDwTypes_7.HC.Point3(parseFloat(iElemJQ.attr("upX")),parseFloat(iElemJQ.attr("upY")),parseFloat(iElemJQ.attr("upZ")));var width=parseFloat(iElemJQ.attr("camFieldWidth"));var height=parseFloat(iElemJQ.attr("camFieldHeight"));var projHC=perspectiveStr==="true"?eDwTypes_7.HC.Projection.Perspective:eDwTypes_7.HC.Projection.Orthographic;return eDwTypes_7.HC.Camera.create(posPtHC,tgtPtHC,upVecHC,projHC,width,height)}function l_makeNodeAttribArray(iHierNodes,iAttrib,iIgnoreActive){if(iAttrib===void 0){iAttrib=null}if(iIgnoreActive===void 0){iIgnoreActive=true}return iHierNodes.map((function(iHierNode){var attrib={};$.extend(attrib,iHierNode.getAttribs(iIgnoreActive));if(iAttrib)$.extend(attrib,iAttrib);return{HierNode:iHierNode,Attribs:attrib}}))}function l_notifyModelViewChange(iViewer,iModelView,iIsPart){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_2.ModelViewChangeEvent,iViewer,iModelView,!iIsPart)];case 1:_a.sent();return[2]}}))}))}return eDwModel}));define("eDwModelView",["require","exports","eDwHierarchyNode"],(function(require,exports,eDwHierarchyNode){"use strict";var eDwModelView=function(){function eDwModelView(Name,Category,iAttribs,iNodeIDHC,iModel,iDefCameraHC){if(iDefCameraHC===void 0){iDefCameraHC=null}this.Name=Name;this.Category=Category;this.Nodes={};this.mDefCameraHC=iDefCameraHC;this.Hierarchy=new eDwHierarchyNode(this.Name,this.Category,iAttribs,iNodeIDHC,null,this);this.Model=iModel}eDwModelView.prototype.getNodes=function(){var hierNodes=[];for(var hierNodeName in this.Nodes){hierNodes.push(this.Nodes[hierNodeName])}return hierNodes};eDwModelView.prototype.getDefaultCamera=function(){return this.mDefCameraHC};eDwModelView.prototype.resetAttribs=function(){return this.Hierarchy.resetAttribs()};return eDwModelView}();return eDwModelView}));define("eDwMoveSectionPlaneCmd",["require","exports","eDwTypes","eDwSupportsHistoryCmd"],(function(require,exports,eDwTypes_8,eDwSupportsHistoryCmd){"use strict";var eDwMoveSectionPlaneCmd=function(_super){__extends(eDwMoveSectionPlaneCmd,_super);function eDwMoveSectionPlaneCmd(iViewer){var _this=_super.call(this,iViewer)||this;_this.mInitialPntOnPlane=_this.mViewer.XSectionMgr.projectPoint(new eDwTypes_8.HC.Point3(0,0,0));return _this}eDwMoveSectionPlaneCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){var altDir;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];altDir=this.mDir.copy().negate();this.mViewer.XSectionMgr.moveCurrentAlongNormal(altDir);return[2,true]}}))}))};eDwMoveSectionPlaneCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.XSectionMgr.moveCurrentAlongNormal(this.mDir);return[2,true]}}))}))};eDwMoveSectionPlaneCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.commit.call(this)];case 1:_a.sent();this.mFinalPntOnPlane=this.mViewer.XSectionMgr.projectPoint(new eDwTypes_8.HC.Point3(0,0,0));this.mDir=this.mFinalPntOnPlane.subtract(this.mInitialPntOnPlane);return[2]}}))}))};eDwMoveSectionPlaneCmd.prototype.isCommitted=function(){return _super.prototype.isCommitted.call(this)&&!!this.mInitialPntOnPlane&&!!this.mFinalPntOnPlane};Object.defineProperty(eDwMoveSectionPlaneCmd.prototype,"Aggregable",{get:function(){return true},enumerable:false,configurable:true});return eDwMoveSectionPlaneCmd}(eDwSupportsHistoryCmd);return eDwMoveSectionPlaneCmd}));define("eDwNodeAttributes",["require","exports","utils"],(function(require,exports,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.NodeDisplayState=exports.eDwNodeAttributes=void 0;var eDwNodeAttributes=function(){function eDwNodeAttributes(){}eDwNodeAttributes.initAttribs=function(iSourceAttribs){var targetAttribs={};targetAttribs=eDwNodeAttributes.mergeAttribs(targetAttribs,iSourceAttribs);return targetAttribs};eDwNodeAttributes.setAttribs=function(ioTargetAttribs,iSourceAttribs){var changedAttribNames=[];for(var attribKey in iSourceAttribs){if(ioTargetAttribs[attribKey]!==iSourceAttribs[attribKey]){ioTargetAttribs[attribKey]=iSourceAttribs[attribKey];changedAttribNames.push(attribKey)}}return changedAttribNames};eDwNodeAttributes.mergeAttribs=function(ioTargetAttribs,iSourceAttribs){return eDwNodeAttributes.combineAttribs(ioTargetAttribs,iSourceAttribs,(function(iTargetValue,iSourceValue){return iTargetValue||iSourceValue}))};eDwNodeAttributes.intersectAttribs=function(iSrcAttrib1,iSrcAttrib2){return eDwNodeAttributes.combineAttribs(iSrcAttrib1,iSrcAttrib2,(function(iTargetValue,iSourceValue){return iTargetValue&&iSourceValue}))};eDwNodeAttributes.combineAttribs=function(iSrcAttrib1,iSrcAttrib2,iCombineFunc){var fullAttribs={};if(iSrcAttrib1&&iSrcAttrib2){fullAttribs=l_syncAttributeKeys(iSrcAttrib1,iSrcAttrib2);for(var attribKey in fullAttribs){var value=iCombineFunc(iSrcAttrib1[attribKey],iSrcAttrib2[attribKey]);if(value!==undefined)fullAttribs[attribKey]=value;else delete fullAttribs[attribKey]}}return utils.isEqual(fullAttribs,{})?undefined:fullAttribs};return eDwNodeAttributes}();exports.eDwNodeAttributes=eDwNodeAttributes;var NodeDisplayState;(function(NodeDisplayState){NodeDisplayState["Visible"]="Visible";NodeDisplayState["Invisible"]="Invisible";NodeDisplayState["Opaque"]="Opaque";NodeDisplayState["Transparent"]="Transparent"})(NodeDisplayState=exports.NodeDisplayState||(exports.NodeDisplayState={}));function l_syncAttributeKeys(ioTargetAttribs,iSourceAttribs){var attribs=$.extend({},ioTargetAttribs);for(var attribKey in iSourceAttribs){if(!attribs[attribKey]){attribs[attribKey]=undefined}}return attribs}}));define("eDwNodeColorInfo",["require","exports","eDwTypes"],(function(require,exports,eDwTypes_9){"use strict";var eDwNodeColorInfo=function(){function eDwNodeColorInfo(iNodeID,iSecondaryID,iColor,iType){this.mNodeID=iNodeID;this.mSecondID=iSecondaryID;this.mType=iType}eDwNodeColorInfo.prototype.reset=function(iModelHC){switch(this.mType){case eDwTypes_9.EntityMode.EDGE:iModelHC.unsetNodeLineColor(this.mNodeID,this.mSecondID);break;case eDwTypes_9.EntityMode.FACE:iModelHC.unsetNodeFaceColor(this.mNodeID,this.mSecondID);break;case eDwTypes_9.EntityMode.VERTEX:default:break}};return eDwNodeColorInfo}();return eDwNodeColorInfo}));define("eDwOperationMixin",["require","exports"],(function(require,exports){"use strict";var eDwOperationMixin=function(){function eDwOperationMixin(){this.mExclusive=true}Object.defineProperty(eDwOperationMixin.prototype,"Exclusive",{get:function(){return this.mExclusive},enumerable:false,configurable:true});Object.defineProperty(eDwOperationMixin.prototype,"AllowsAggregation",{get:function(){return false},enumerable:false,configurable:true});Object.defineProperty(eDwOperationMixin.prototype,"Aggregable",{get:function(){return false},enumerable:false,configurable:true});return eDwOperationMixin}();return eDwOperationMixin}));define("eDwOperatorBaseDeps",["require","exports","eDwSelObj","eDwKeyMgr","eDwTypes","utils","eDwGeomUtils"],(function(require,exports,eDwSelObj,eDwKeyMgr_1,eDwTypes_10,utils,eDwGeomUtils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.eDwBaseOperator=exports.OperatorHC=exports.eDwOperatorMgr=void 0;var eDwOperatorMgr=function(){function eDwOperatorMgr(iViewer){this.mOpsData={};this.mOperatorMgrHC=iViewer.HCViewer.getOperatorManager();this.resetToDefault();var cameraZoomOp=this.mOperatorMgrHC.getOperator(eDwTypes_10.HC.OperatorId.Zoom);cameraZoomOp.setMouseWheelZoomInverted(false)}eDwOperatorMgr.prototype.registerCustomOperator=function(ioOp,iActivate){if(iActivate===void 0){iActivate=false}ioOp.OperatorID=this.mOperatorMgrHC.registerCustomOperator(ioOp);this.mOpsData[ioOp.OperatorID]={Op:ioOp,ActivatedByDefault:iActivate};if(iActivate)this.push(ioOp.OperatorID);return ioOp.OperatorID};eDwOperatorMgr.prototype.unregisterCustomOperator=function(iOp){this.unregisterCustomOperatorByID(iOp.OperatorID)};eDwOperatorMgr.prototype.unregisterCustomOperatorByID=function(iOpID){if(this.popToOp(iOpID)===iOpID){this.pop()}this.mOperatorMgrHC.unregisterCustomOperator(iOpID);delete this.mOpsData[iOpID]};eDwOperatorMgr.prototype.unregisterAll=function(){var _this=this;utils.forAll((function(iOpID,iOpData){_this.unregisterCustomOperatorByID(iOpID)}),this.mOpsData)};eDwOperatorMgr.prototype.push=function(iOpID){var activeOpID=this.getActiveOperatorID();if(activeOpID!==iOpID){return this.mOperatorMgrHC.push(iOpID)}return false};eDwOperatorMgr.prototype.pop=function(iOpID){var retOpID=eDwTypes_10.HC.OperatorId.None;if(!iOpID||iOpID&&this.getActiveOperatorID()===iOpID){retOpID=this.mOperatorMgrHC.pop()||eDwTypes_10.HC.OperatorId.None}return retOpID};eDwOperatorMgr.prototype.popToOp=function(iOpID){var retOpID=eDwTypes_10.HC.OperatorId.None;var opStackPos=this.mOperatorMgrHC.indexOf(iOpID);if(opStackPos>-1){while(this.getActiveOperatorID()!==iOpID){this.pop()}retOpID=iOpID}return retOpID};eDwOperatorMgr.prototype.getOperator=function(iOpID){return this.mOperatorMgrHC.getOperator(iOpID)};eDwOperatorMgr.prototype.getActiveOperatorID=function(){return this.mOperatorMgrHC.peek()};eDwOperatorMgr.prototype.getOperatorIndex=function(iOp){var opsStack=[];var numOps=this.mOperatorMgrHC.size();var index=-1;for(var i=0;i=0;i++){this.mOperatorMgrHC.push(opsStack[i])}return index};eDwOperatorMgr.prototype.setOpID=function(iOpID,iIndex){return this.mOperatorMgrHC.set(iOpID,iIndex)};eDwOperatorMgr.prototype.set=function(iOp,iIndex){return this.setOpID(iOp.OperatorID,iIndex)};eDwOperatorMgr.prototype.resetToDefault=function(){var _this=this;for(var opID=eDwTypes_10.HC.OperatorId.NavCube;opID>eDwTypes_10.HC.OperatorId.Navigate;opID--){this.pop(opID)}utils.forAll((function(iOpID,iOpData){if(iOpData.ActivatedByDefault){_this.push(iOpData.Op.OperatorID)}}),this.mOpsData)};return eDwOperatorMgr}();exports.eDwOperatorMgr=eDwOperatorMgr;var OperatorHC=function(){function OperatorHC(iOp){this.mOp=iOp;this.OperatorID=NaN}OperatorHC.prototype.onActivate=function(){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp)return[2];_a=this.mOp.onActivate;if(!_a)return[3,2];return[4,this.mOp.onActivate()];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onDeactivate=function(){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp)return[2];_a=this.mOp.onDeactivate;if(!_a)return[3,2];return[4,this.mOp.onDeactivate()];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onMouseDown=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioMouseEvent)return[2];_a=this.mOp.onMouseDown;if(!_a)return[3,2];return[4,this.mOp.onMouseDown(ioMouseEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onMouseMove=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioMouseEvent)return[2];_a=this.mOp.onMouseMove;if(!_a)return[3,2];return[4,this.mOp.onMouseMove(ioMouseEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onMouseUp=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioMouseEvent)return[2];_a=this.mOp.onMouseUp;if(!_a)return[3,2];return[4,this.mOp.onMouseUp(ioMouseEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onMousewheel=function(ioMouseEveent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioMouseEveent)return[2];_a=this.mOp.onMousewheel;if(!_a)return[3,2];return[4,this.mOp.onMousewheel(ioMouseEveent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onTouchStart=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioTouchEvent)return[2];_a=this.mOp.onTouchStart;if(!_a)return[3,2];return[4,this.mOp.onTouchStart(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onTouchMove=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioTouchEvent)return[2];_a=this.mOp.onTouchMove;if(!_a)return[3,2];return[4,this.mOp.onTouchMove(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onTouchEnd=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioTouchEvent)return[2];_a=this.mOp.onTouchEnd;if(!_a)return[3,2];return[4,this.mOp.onTouchEnd(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onKeyDown=function(ioKeyEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioKeyEvent)return[2];_a=this.mOp.onKeyDown;if(!_a)return[3,2];return[4,this.mOp.onKeyDown(ioKeyEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onKeyUp=function(ioKeyEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioKeyEvent)return[2];_a=this.mOp.onKeyUp;if(!_a)return[3,2];return[4,this.mOp.onKeyUp(ioKeyEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onViewOrientationChange=function(){return __awaiter(this,void 0,void 0,(function(){var op,_a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp)return[2];op=this.mOp;_a=op.onViewOrientationChange;if(!_a)return[3,2];return[4,op.onViewOrientationChange()];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.stopInteraction=function(){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp)return[2];_a=this.mOp.stopInteraction;if(!_a)return[3,2];return[4,this.mOp.stopInteraction()];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};return OperatorHC}();exports.OperatorHC=OperatorHC;var OperatorBaseHC=function(){function OperatorBaseHC(iViewer,iClickCB,iDoubleClickCB){this.Viewer=iViewer;this.CurrTouches=[];this.DragPt=undefined;this.CurrInputInfo=undefined;this.ActiveMouseButton="none";this.mDoPickTimeOutHandle=NaN;this.mClickCB=iClickCB;this.mDoubleClickCB=iDoubleClickCB}OperatorBaseHC.prototype.onMouseDown=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){if(!ioMouseEvent)return[2];if(eDwKeyMgr_1.eDwKeyMgr.isAnyPressed(ioMouseEvent)){this.setMouse(ioMouseEvent);this.ActiveMouseButton=eDwKeyMgr_1.eDwKeyMgr.getMouseButtonPressed(ioMouseEvent)}return[2]}))}))};OperatorBaseHC.prototype.onMouseMove=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var pos,oldInputInfo;return __generator(this,(function(_a){if(!ioMouseEvent)return[2];pos=ioMouseEvent.getPosition();if(this.CurrInputInfo){oldInputInfo=this.CurrInputInfo;this.setMouse(ioMouseEvent);if(!oldInputInfo.DragPt.equals(this.CurrInputInfo.DragPt)){this.DragPt=this.CurrInputInfo.DragPt}}console.debugLog("Operator","move screen pt = "+JSON.stringify(pos));return[2]}))}))};OperatorBaseHC.prototype.onMouseUp=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){if(!ioMouseEvent)return[2];this.onUp(ioMouseEvent);delete this.DragPt;delete this.CurrInputInfo;return[2]}))}))};OperatorBaseHC.prototype.onTouchStart=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){if(!ioTouchEvent)return[2];console.debugLog("TouchOp","Start - touch ID = "+ioTouchEvent.getId());this.addTouch(ioTouchEvent);return[2]}))}))};OperatorBaseHC.prototype.onTouchMove=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){if(!ioTouchEvent)return[2];console.debugLog("TouchOp","Move - touch ID = "+ioTouchEvent.getId());if(!this.hasTouchMoved(ioTouchEvent)){ioTouchEvent.setHandled(true);return[2]}this.updateTouch(ioTouchEvent);return[2]}))}))};OperatorBaseHC.prototype.onTouchEnd=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){if(!ioTouchEvent)return[2];console.debugLog("TouchOp","End - touch ID = "+ioTouchEvent.getId());ioTouchEvent.setHandled(false);this.removeTouchById(ioTouchEvent.getId());return[2]}))}))};OperatorBaseHC.prototype.onDeactivate=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){delete this.DragPt;return[2]}))}))};OperatorBaseHC.getAsMouseEvent=function(iTouchEvent,iMouseInputType,iButton){if(iButton===void 0){iButton=eDwTypes_10.HC.Buttons.Left}if(iTouchEvent){var pos=iTouchEvent.getPosition();var mouseEvent=new eDwTypes_10.HC.Event.MouseInputEvent(pos.x,pos.y,eDwTypes_10.HC.Button.None,iButton,eDwTypes_10.HC.KeyModifiers.None,iMouseInputType);mouseEvent.setHandled(iTouchEvent.getHandled());return mouseEvent}return null};OperatorBaseHC.prototype.isDragging=function(){return!!this.DragPt};OperatorBaseHC.prototype.addTouch=function(ioTouchEvent){if(!this.getTouchById(ioTouchEvent.getId())){var pnt3DHC=eDwGeomUtils.screenToWorld(ioTouchEvent.getPosition(),this.Viewer.getHCView());if(pnt3DHC){this.CurrTouches.push({Event:ioTouchEvent,DragPt:pnt3DHC,Pos:ioTouchEvent.getPosition()})}}};OperatorBaseHC.prototype.getTouchById=function(iTouchID){for(var i=0;iepsX&&Math.abs(delta.y)>epsY};OperatorBaseHC.prototype.updateTouch=function(ioTouchEvent){var touch=this.getTouchById(ioTouchEvent.getId());if(touch){var pos2DHC=ioTouchEvent.getPosition();var pnt3DHC=eDwGeomUtils.screenToWorld(pos2DHC,this.Viewer.getHCView());if(pnt3DHC){touch.Pos=pos2DHC;touch.DragPt=pnt3DHC}}};OperatorBaseHC.prototype.setMouse=function(ioMouseEvent){var pos2DHC=ioMouseEvent.getPosition();var pnt3DHC=eDwGeomUtils.screenToWorld(pos2DHC,this.Viewer.getHCView());if(!pnt3DHC)return;this.CurrInputInfo={Event:ioMouseEvent,DragPt:pnt3DHC,Pos:pos2DHC}};OperatorBaseHC.prototype.onClick=function(ioInputEvent){return this.mClickCB?this.mClickCB(ioInputEvent):false};OperatorBaseHC.prototype.onDoubleClick=function(ioInputEvent){return this.mDoubleClickCB?this.mDoubleClickCB(ioInputEvent):false};OperatorBaseHC.prototype.onUp=function(ioMouseEvent){var _this=this;var clearPickTimeOut=function(){if(utils.isNaN(_this.mDoPickTimeOutHandle))return;clearTimeout(_this.mDoPickTimeOutHandle);_this.mDoPickTimeOutHandle=NaN;_this.ActiveMouseButton="none"};var processClick=function(ioMouseEvent){_this.onClick(ioMouseEvent);clearPickTimeOut()};var stopFurtherProcessing=false;if(this.ActiveMouseButton==="left"){stopFurtherProcessing=true;if(utils.isNaN(this.mDoPickTimeOutHandle)){this.mDoPickTimeOutHandle=setTimeout((function(){processClick(ioMouseEvent)}),500)}else{clearPickTimeOut();stopFurtherProcessing=this.onDoubleClick(ioMouseEvent)}}else if(this.ActiveMouseButton!=="none"){processClick(ioMouseEvent);stopFurtherProcessing=true}return stopFurtherProcessing};return OperatorBaseHC}();var eDwBaseOperator=function(_super){__extends(eDwBaseOperator,_super);function eDwBaseOperator(iViewer){var _this=this;var clickCB=function(ioInputEvent){return _this.onClick(ioInputEvent)};var doubleClickCB=function(ioInputEvent){return _this.onDoubleClick(ioInputEvent)};_this=_super.call(this,new OperatorBaseHC(iViewer,clickCB,doubleClickCB))||this;return _this}eDwBaseOperator.prototype.onTouchStart=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;var _this=this;return __generator(this,(function(_b){switch(_b.label){case 0:if(!ioTouchEvent)return[2];if(!(this.CurrTouches.length>1))return[3,3];if(!this.mOp)return[2];_a=this.mOp.onTouchStart;if(!_a)return[3,2];return[4,this.mOp.onTouchStart(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[3,5];case 3:return[4,this.wrapAndCallAsMouseEvent(ioTouchEvent,eDwTypes_10.HC.MouseInputType.Down,(function(ioMouseEvent){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.onMouseDown(ioMouseEvent)];case 1:_a.sent();return[2]}}))}))}))];case 4:_b.sent();_b.label=5;case 5:return[2]}}))}))};eDwBaseOperator.prototype.onTouchMove=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;var _this=this;return __generator(this,(function(_b){switch(_b.label){case 0:if(!ioTouchEvent)return[2];if(!(this.CurrTouches.length>1))return[3,3];if(!this.mOp)return[2];_a=this.mOp.onTouchMove;if(!_a)return[3,2];return[4,this.mOp.onTouchMove(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[3,5];case 3:return[4,this.wrapAndCallAsMouseEvent(ioTouchEvent,eDwTypes_10.HC.MouseInputType.Move,(function(ioMouseEvent){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.onMouseMove(ioMouseEvent)];case 1:_a.sent();return[2]}}))}))}))];case 4:_b.sent();_b.label=5;case 5:return[2]}}))}))};eDwBaseOperator.prototype.onTouchEnd=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;var _this=this;return __generator(this,(function(_b){switch(_b.label){case 0:if(!ioTouchEvent)return[2];if(!(this.CurrTouches.length>1))return[3,3];if(!this.mOp)return[2];_a=this.mOp.onTouchEnd;if(!_a)return[3,2];return[4,this.mOp.onTouchEnd(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[3,5];case 3:return[4,this.wrapAndCallAsMouseEvent(ioTouchEvent,eDwTypes_10.HC.MouseInputType.Up,(function(ioMouseEvent){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.onMouseUp(ioMouseEvent)];case 1:_a.sent();return[2]}}))}))}),this.convertTouchToButtonHC(ioTouchEvent))];case 4:_b.sent();_b.label=5;case 5:return[2]}}))}))};Object.defineProperty(eDwBaseOperator.prototype,"Viewer",{get:function(){return this.mOp.Viewer},enumerable:false,configurable:true});Object.defineProperty(eDwBaseOperator.prototype,"CurrInputInfo",{get:function(){return this.mOp.CurrInputInfo},set:function(iInputInfo){this.mOp.CurrInputInfo=iInputInfo},enumerable:false,configurable:true});Object.defineProperty(eDwBaseOperator.prototype,"CurrTouches",{get:function(){return this.mOp.CurrTouches},enumerable:false,configurable:true});Object.defineProperty(eDwBaseOperator.prototype,"ActiveMouseButton",{get:function(){return this.mOp.ActiveMouseButton},set:function(iActiveMouseButton){this.mOp.ActiveMouseButton=iActiveMouseButton},enumerable:false,configurable:true});Object.defineProperty(eDwBaseOperator.prototype,"DragPt",{get:function(){return this.mOp.DragPt},set:function(iPnt3DHC){this.mOp.DragPt=iPnt3DHC},enumerable:false,configurable:true});eDwBaseOperator.prototype.isDragging=function(){return this.mOp.isDragging()};eDwBaseOperator.prototype.hasTouchMoved=function(ioTouchEvent){return this.mOp.hasTouchMoved(ioTouchEvent)};eDwBaseOperator.prototype.addTouch=function(ioTouchEvent){this.mOp.addTouch(ioTouchEvent)};eDwBaseOperator.prototype.getTouchById=function(iTouchID){return this.mOp.getTouchById(iTouchID)};eDwBaseOperator.prototype.removeTouchById=function(iTouchID){this.mOp.removeTouchById(iTouchID)};eDwBaseOperator.prototype.wrapAndCallAsMouseEvent=function(ioTouchEvent,iInputType,iMouseFunc,iButton){if(iButton===void 0){iButton=eDwTypes_10.HC.Buttons.Left}return __awaiter(this,void 0,void 0,(function(){var mouseEvent;return __generator(this,(function(_a){switch(_a.label){case 0:mouseEvent=OperatorBaseHC.getAsMouseEvent(ioTouchEvent,iInputType,iButton);if(!mouseEvent)return[3,2];console.debugLog("TouchAsMouse","Touch handled as mouse button "+iButton);this.ActiveMouseButton=eDwKeyMgr_1.eDwKeyMgr.getMouseButtonPressed(mouseEvent);return[4,iMouseFunc(mouseEvent)];case 1:_a.sent();ioTouchEvent.setHandled(mouseEvent.getHandled());_a.label=2;case 2:return[2]}}))}))};eDwBaseOperator.prototype.onClick=function(ioInputEvent){console.debugLog("Click","In eDwBaseOperator.onClick()");return false};eDwBaseOperator.prototype.onDoubleClick=function(ioInputEvent){console.debugLog("Click","In eDwBaseOperator.onDoubleClick()");return false};eDwBaseOperator.getPickResult=function(iEvent,iViewMgr,iPickConfig){if(iPickConfig===void 0){iPickConfig=new eDwTypes_10.HC.PickConfig(eDwTypes_10.HC.SelectionMask.All)}return __awaiter(this,void 0,void 0,(function(){var selObj;return __generator(this,(function(_a){switch(_a.label){case 0:selObj=eDwSelObj.createEmpty();if(!(iEvent&&iViewMgr))return[3,2];return[4,iViewMgr.pickFromPoint(iEvent.getPosition(),iPickConfig)];case 1:selObj=_a.sent();_a.label=2;case 2:return[2,selObj]}}))}))};eDwBaseOperator.prototype.convertTouchToButtonHC=function(ioTouchEvent){var buttonHC=eDwTypes_10.HC.Buttons.None;if(ioTouchEvent){buttonHC=eDwTypes_10.HC.Buttons.Left;if(!this.hasTouchMoved(ioTouchEvent)){var touchInfo=this.getTouchById(ioTouchEvent.getId());var startTime=touchInfo?touchInfo.Event.getDate().getTime():(new Date).getTime();if((new Date).getTime()-startTime>1e3){buttonHC=eDwTypes_10.HC.Buttons.Right}}}return buttonHC};return eDwBaseOperator}(OperatorHC);exports.eDwBaseOperator=eDwBaseOperator}));define("eDwPerspectiveCmd",["require","exports","eDwSupportsHistoryCmd"],(function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwPerspectiveCmd=function(_super){__extends(eDwPerspectiveCmd,_super);function eDwPerspectiveCmd(iViewer,iNewState){var _this=_super.call(this,iViewer)||this;_this.mInitiallyActive=iViewer.getPerspectiveMode();_this.mFinallyActive=iNewState;return _this}eDwPerspectiveCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.setPerspectiveMode(this.mInitiallyActive);return[2,true]}}))}))};eDwPerspectiveCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.setPerspectiveMode(this.mFinallyActive);return[2,true]}}))}))};eDwPerspectiveCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.commit.call(this)];case 1:_a.sent();this.mViewer.setPerspectiveMode(this.mFinallyActive);return[2]}}))}))};Object.defineProperty(eDwPerspectiveCmd.prototype,"Aggregable",{get:function(){return true},enumerable:false,configurable:true});return eDwPerspectiveCmd}(eDwSupportsHistoryCmd);return eDwPerspectiveCmd}));define("eDwResetCmd",["require","exports","eDwSupportsHistoryCmd","eDwEventMgr","eDwEvents"],(function(require,exports,eDwSupportsHistoryCmd,eDwEventMgr,eDwEvents_3){"use strict";var eDwResetCmd=function(_super){__extends(eDwResetCmd,_super);function eDwResetCmd(iViewer){var _this=_super.call(this,iViewer)||this;_this.mPerspective=iViewer.getPerspectiveMode();_this.mExplosionLevel=iViewer.getExplosionLevel();_this.mDrawMode=iViewer.getDrawMode();_this.mAmbientOcclusion=iViewer.getHCView().getAmbientOcclusionEnabled();_this.mCamera=iViewer.getHCView().getCamera();_this.resetToHome();return _this}eDwResetCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];return[4,this.resetToPrevious()];case 2:_a.sent();return[2,true]}}))}))};eDwResetCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];return[4,this.resetToHome()];case 2:_a.sent();return[2,true]}}))}))};eDwResetCmd.prototype.resetToHome=function(){return __awaiter(this,void 0,void 0,(function(){var viewMgr;return __generator(this,(function(_a){switch(_a.label){case 0:viewMgr=this.mViewer.ViewMgr;viewMgr.reset();return[4,this.mViewer.SelectionMgr.unSelectAllObjects()];case 1:_a.sent();this.mViewer.OperatorMgr.resetToDefault();this.mViewer.setPerspectiveMode(false);return[4,this.mViewer.getModel().resetToDefault()];case 2:_a.sent();this.mViewer.setExplosionLevel(0);this.mViewer.resetDrawMode();this.mViewer.ViewMgr.enableAmbientOcclusion(false);return[4,eDwEventMgr.get().fireEvent(eDwEvents_3.ResetSceneEvent,true)];case 3:_a.sent();return[2]}}))}))};eDwResetCmd.prototype.resetToPrevious=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.mViewer.setPerspectiveMode(this.mPerspective);this.mViewer.ViewMgr.setCamera(this.mCamera);this.mViewer.setExplosionLevel(this.mExplosionLevel);this.mViewer.setDrawMode(this.mDrawMode);this.mViewer.ViewMgr.enableAmbientOcclusion(this.mAmbientOcclusion);return[4,eDwEventMgr.get().fireEvent(eDwEvents_3.ResetSceneEvent,false)];case 1:_a.sent();return[2]}}))}))};return eDwResetCmd}(eDwSupportsHistoryCmd);return eDwResetCmd}));define("eDwResultError",["require","exports","eDwBaseError"],(function(require,exports,eDwBaseError){"use strict";var eDwResultError=function(_super){__extends(eDwResultError,_super);function eDwResultError(iResult){var _this=_super.call(this,"Result Error")||this;_this.Result=iResult;return _this}return eDwResultError}(eDwBaseError);return eDwResultError}));define("eDwSectionFlipCmd",["require","exports","eDwSupportsHistoryCmd"],(function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwSectionFlipCmd=function(_super){__extends(eDwSectionFlipCmd,_super);function eDwSectionFlipCmd(iViewer){return _super.call(this,iViewer)||this}eDwSectionFlipCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.XSectionMgr.flipSectionPlane();return[2,true]}}))}))};eDwSectionFlipCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.XSectionMgr.flipSectionPlane();return[2,true]}}))}))};eDwSectionFlipCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.commit.call(this)];case 1:_a.sent();this.mViewer.XSectionMgr.flipSectionPlane();return[2]}}))}))};Object.defineProperty(eDwSectionFlipCmd.prototype,"Aggregable",{get:function(){return true},enumerable:false,configurable:true});return eDwSectionFlipCmd}(eDwSupportsHistoryCmd);return eDwSectionFlipCmd}));define("eDwSectionShowCmd",["require","exports","eDwSupportsHistoryCmd"],(function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwSectionShowCmd=function(_super){__extends(eDwSectionShowCmd,_super);function eDwSectionShowCmd(iViewer,iShow){var _this=_super.call(this,iViewer)||this;_this.mInitialShow=true;_this.mFinalShow=iShow;return _this}eDwSectionShowCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.XSectionMgr.SectionVisibility=this.mInitialShow;return[2,true]}}))}))};eDwSectionShowCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.XSectionMgr.SectionVisibility=this.mFinalShow;return[2,true]}}))}))};eDwSectionShowCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.commit.call(this)];case 1:_a.sent();this.mViewer.XSectionMgr.SectionVisibility=this.mFinalShow;return[2]}}))}))};Object.defineProperty(eDwSectionShowCmd.prototype,"Aggregable",{get:function(){return true},enumerable:false,configurable:true});return eDwSectionShowCmd}(eDwSupportsHistoryCmd);return eDwSectionShowCmd}));define("eDwSelMgr",["require","exports","eDwSelObj","eDwSelectionOperator","eDwEventMgr","eDwKeyMgr","eDwTypes","eDwEvents","utils"],(function(require,exports,eDwSelObj,eDwSelectionOperator,eDwEventMgr,eDwKeyMgr_2,eDwTypes_11,eDwEvents_4,utils){"use strict";var eDwSelMgr=function(){function eDwSelMgr(iViewer){iViewer.SelectionMgr=this;this.mViewer=iViewer;this.mSelMgrHC=iViewer.HCViewer.selectionManager;this.mSelectableObjsHC=[];var selectOp=new eDwSelectionOperator(iViewer,this);var opMgr=this.mViewer.OperatorMgr;this.mSelectOperatorIDHC=opMgr.registerCustomOperator(selectOp,true);this.mSelectOverlayNotifiers={}}eDwSelMgr.prototype.setColorForViewMode=function(mode){var _this=this;var nodeSelColor;var nodeSelOutlineColor=new eDwTypes_11.HC.Color(0,255,0);var nodeElmtSelColor;var nodeElmtSelOutlineColor=new eDwTypes_11.HC.Color(255,255,0);var beautifulGreen=new eDwTypes_11.HC.Color(4,200,5);switch(mode){case eDwTypes_11.HC.DrawMode.WireframeOnShaded:nodeSelColor=beautifulGreen;nodeElmtSelColor=beautifulGreen;break;case eDwTypes_11.HC.DrawMode.Shaded:nodeSelColor=beautifulGreen;nodeElmtSelColor=beautifulGreen;break;case eDwTypes_11.HC.DrawMode.Wireframe:case eDwTypes_11.HC.DrawMode.HiddenLine:nodeSelColor=eDwTypes_11.HC.Color.white();nodeElmtSelColor=eDwTypes_11.HC.Color.white();break;default:var msg="Unknown draw mode: "+mode;console.debugLog("Selection",msg);throw new Error(msg)}this.mSelMgrHC.setNodeSelectionColor(nodeSelColor);this.mSelMgrHC.setNodeSelectionOutlineColor(nodeSelOutlineColor);this.mSelMgrHC.setNodeElementSelectionColor(nodeElmtSelColor);this.mSelMgrHC.setNodeElementSelectionOutlineColor(nodeElmtSelOutlineColor);if(this.mViewer.getModel().isDrawing()&&!this.mViewer.ViewerFeatureOpts.Debug){this.mSelMgrHC.setNodeSelectionHighlightMode(eDwTypes_11.HC.SelectionHighlightMode.OutlineOnly);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.mSelMgrHC.setHighlightNodeSelection(false)];case 1:_a.sent();return[2]}}))}))})()}};eDwSelMgr.prototype.unregister=function(){this.mViewer.OperatorMgr.unregisterCustomOperatorByID(this.mSelectOperatorIDHC);this.mViewer.SelectionMgr=null};eDwSelMgr.prototype.addSelectOverlayNotifier=function(iTypeIndex,iNotifier){if(!this.mSelectOverlayNotifiers[iTypeIndex]){this.mSelectOverlayNotifiers[iTypeIndex]=[]}this.mSelectOverlayNotifiers[iTypeIndex].push(iNotifier)};eDwSelMgr.prototype.removeSelectOverlayNotifier=function(iTypeIndex,iNotifier){var typeNotifiers=this.mSelectOverlayNotifiers[iTypeIndex];var pos=typeNotifiers.indexOf(iNotifier);if(pos>-1){typeNotifiers.splice(pos,1)}return false};eDwSelMgr.prototype.getSelectedNodeIDIndex=function(iHCNodeID){return this.getSelectableIDsHC().indexOf(iHCNodeID)};eDwSelMgr.prototype.onSelection=function(iSelectionEvent){return __awaiter(this,void 0,void 0,(function(){var keyMgr,ctrlKeyDown,shiftKeyDown,hierNodeSelObj,selObjIDHC,existingIdx,selectedAlready,selObjExists,numOfSelObjsAtStart;return __generator(this,(function(_a){switch(_a.label){case 0:keyMgr=eDwKeyMgr_2.eDwKeyMgr.get();ctrlKeyDown=keyMgr.isDown("Control");shiftKeyDown=keyMgr.isDown("Shift");hierNodeSelObj=this.createHierNodeSelObj(eDwSelObj.extendHCSelObj(iSelectionEvent.getSelection()));selObjIDHC=hierNodeSelObj.getIDHC();existingIdx=this.getSelectedNodeIDIndex(selObjIDHC);selectedAlready=existingIdx>-1;l_debugDumpSelection(hierNodeSelObj.getIDHC(),hierNodeSelObj.getSelectionType());selObjExists=utils.isNumber(selObjIDHC);numOfSelObjsAtStart=this.mSelectableObjsHC.length;if(!(numOfSelObjsAtStart&&!ctrlKeyDown&&!shiftKeyDown))return[3,2];return[4,this.unSelectAllObjects(false)];case 1:_a.sent();selectedAlready=false;return[3,5];case 2:if(!(ctrlKeyDown&&!shiftKeyDown&&selectedAlready&&selObjExists))return[3,4];this.mSelectableObjsHC.splice(existingIdx,1);return[4,this.unSelectObjs([hierNodeSelObj],this.mViewer.getModel().isDrawing())];case 3:_a.sent();return[2];case 4:if(!ctrlKeyDown&&shiftKeyDown&&selectedAlready&&selObjExists){return[2]}_a.label=5;case 5:if(!selObjExists)return[3,7];if(!selectedAlready)this.mSelectableObjsHC.push(hierNodeSelObj);return[4,eDwEventMgr.get().fireEvent(eDwEvents_4.SelectEvent,this.mViewer,[hierNodeSelObj])];case 6:_a.sent();return[3,9];case 7:if(!!numOfSelObjsAtStart)return[3,9];return[4,eDwEventMgr.get().fireEvent(eDwEvents_4.LeftClickEvent,this.mViewer)];case 8:_a.sent();_a.label=9;case 9:return[2]}}))}))};eDwSelMgr.prototype.selectByID=function(iID){return utils.isNumber(iID)?this.executeSelection(iID):false};eDwSelMgr.prototype.select=function(iCoords,iPickConfig){return __awaiter(this,void 0,void 0,(function(){var pickCfg,selObj,hierNodeSelObj;return __generator(this,(function(_a){switch(_a.label){case 0:pickCfg=iPickConfig?iPickConfig:new eDwTypes_11.HC.PickConfig(eDwTypes_11.HC.SelectionMask.Face);return[4,this.mViewer.ViewMgr.pickFromPoint(iCoords,pickCfg)];case 1:selObj=_a.sent();if(this.isSelectionHandled(selObj)){return[2,false]}hierNodeSelObj=this.createHierNodeSelObj(selObj);if(utils.isNumber(hierNodeSelObj.getIDHC())){return[2,this.executeSelection(hierNodeSelObj)]}this.mSelMgrHC.set(null);return[2,false]}}))}))};eDwSelMgr.prototype.isSelected=function(iHCNodeID){return this.getSelectableIDsHC().indexOf(iHCNodeID)<0?false:true};eDwSelMgr.prototype.append=function(iSelObj){this.mSelMgrHC.add(iSelObj)};eDwSelMgr.prototype.unSelectAllObjects=function(iClearHCSelList){if(iClearHCSelList===void 0){iClearHCSelList=true}return __awaiter(this,void 0,void 0,(function(){var unselectedHCObjs;return __generator(this,(function(_a){switch(_a.label){case 0:unselectedHCObjs=this.mSelectableObjsHC;this.mSelectableObjsHC=[];return[4,this.unSelectObjs(unselectedHCObjs,this.mViewer.getModel().isDrawing())];case 1:_a.sent();if(unselectedHCObjs.length>0&&iClearHCSelList){this.mSelMgrHC.selectNode(null)}return[2]}}))}))};eDwSelMgr.prototype.setViewToSelectedFace=function(){var camera=null;var selObjs=this.mSelMgrHC.getResults();for(var _i=0,selObjs_1=selObjs;_i0){return selIDsHC[selIDsHC.length-1]}return NaN};eDwSelMgr.prototype.getLastSelHierarchyNode=function(){var modelView=this.mViewer.getModel().getActiveModelView();return modelView.Nodes[this.getLastSelIDHC()]};eDwSelMgr.prototype.getSelectableIDsHC=function(){var selIDsHC=[];for(var _i=0,_a=this.mSelectableObjsHC;_i<_a.length;_i++){var selObjHC=_a[_i];var selIDHC=selObjHC.getNodeId();if(utils.isNumber(selIDHC))selIDsHC.push(selIDHC)}return selIDsHC};eDwSelMgr.prototype.getSelHierarchyNodes=function(){var selHierNodes=[];var modelView=this.mViewer.getModel().getActiveModelView();var seoIDsHC=this.getSelectableIDsHC();for(var _i=0,seoIDsHC_1=seoIDsHC;_i-1){iSelMgr.mSelectableObjsHC.splice(index,1)}var unselObjsHC_1=iSelMgr.mSelectableObjsHC;iSelMgr.mSelectableObjsHC=[];(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,iSelMgr.unSelectObjs(unselObjsHC_1,true)];case 1:_a.sent();return[4,hierNode.showBoundingBox(viewer,"on")];case 2:_a.sent();return[2]}}))}))})();shown=true}else{(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,hierNode.showBoundingBox(viewer,"toggle")];case 1:_a.sent();return[2]}}))}))})();shown=index>-1?false:true}if(shown){var selObjDupHC_1=eDwTypes_11.HC.Selection.SelectionItem.create(hierNode.HOOPSID);iSelMgr.addUniqueToSelectableObjsHC(selObjDupHC_1);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_4.SelectEvent,viewer,[selObjDupHC_1])];case 1:_a.sent();l_debugDumpSelection(selObjDupHC_1.getNodeId(),selObjDupHC_1.getSelectionType());return[2]}}))}))})()}}else{var selMgrHC=iSelMgr.mSelMgrHC;if(!selObjHC){selMgrHC.selectNode(nodeIDHC,iSelModeHC);var selObj=eDwSelObj.extendHCSelObj(selMgrHC.getLast());if(selObj.getIDHC()===nodeIDHC){iSelMgr.addUniqueToSelectableObjsHC(selObj)}}else{if(iSelModeHC===eDwTypes_11.HC.SelectionMode.Add){selMgrHC.add(selObjHC)}else if(iSelModeHC===eDwTypes_11.HC.SelectionMode.Set){selMgrHC.set(selObjHC)}else{var wasSelected=selMgrHC.isSelected(selObjHC);selMgrHC.toggle(selObjHC);if(wasSelected){var index=iSelMgr.mSelectableObjsHC.indexOf(selObjHC);if(index>-1){iSelMgr.mSelectableObjsHC.splice(index,1)}}}if(selMgrHC.isSelected(selObjHC)){iSelMgr.addUniqueToSelectableObjsHC(selObjHC)}}}return eDwTypes_11.HC.SelectionType.Part}return eDwTypes_11.HC.SelectionType.None}var ret=false;try{var selType=eDwTypes_11.HC.SelectionType.None;var keyMgr=eDwKeyMgr_2.eDwKeyMgr.get();if(!keyMgr.isDown("Control")&&!keyMgr.isDown("Shift")){selType=selectNodeHC(this,eDwTypes_11.HC.SelectionMode.Set);ret=true}else{var existingIdx=this.getSelectedNodeIDIndex(nodeIDHC);if(existingIdx>-1){if(keyMgr.isDown("Control")){this.mSelMgrHC.remove(this.mSelectableObjsHC[existingIdx]);this.mSelectableObjsHC.splice(existingIdx,1)}else if(keyMgr.isDown("Shift")){ret=true}}else{selType=selectNodeHC(this,eDwTypes_11.HC.SelectionMode.Add);if(this.getSelectedNodeIDIndex(nodeIDHC)>-1){ret=true}}}if(selType!==eDwTypes_11.HC.SelectionType.None){l_debugDumpSelection(nodeIDHC,selType)}}catch(iErr){console.log("eDwSelMgr.selectByID failed")}return ret};return eDwSelMgr}();function l_debugDumpSelection(iID,iSelType){console.debugLog("Selection","Selected Obj ID: "+iID+" - type: "+eDwTypes_11.HC.SelectionType[iSelType])}return eDwSelMgr}));define("eDwSelObj",["require","exports","eDwTypes","eDwGeomUtils","utils"],(function(require,exports,eDwTypes_12,eDwGeomUtils_1,utils){"use strict";var eDwSelObj=function(){function eDwSelObj(iSelObjHC,iToLocalTransformHC){if(iToLocalTransformHC===void 0){iToLocalTransformHC=null}utils.populateMixinObjectFromClasses(this,[eDwTypes_12.HC.Selection.SelectionItem]);$.extend(true,this,iSelObjHC);this.setPointInLocalSpace(iSelObjHC.getPosition(),iToLocalTransformHC)}eDwSelObj.prototype.getIDHC=function(){var nodeIDHC=this.getNodeId();return utils.isNumber(nodeIDHC)?nodeIDHC:NaN};eDwSelObj.prototype.getLocalPoint=function(){return this.mLocalPnt};eDwSelObj.prototype.getWorldPoint=function(){return this.getPosition()};eDwSelObj.prototype.getAsLocalPoint=function(iWorldPtHC){return this.mToLocalTransformHC&&iWorldPtHC?this.mToLocalTransformHC.transform(iWorldPtHC):iWorldPtHC};eDwSelObj.prototype.getAsWorldPoint=function(iLocalPtHC){var toWorldTransformHC=this.mToLocalTransformHC?eDwTypes_12.HC.Matrix.inverse(this.mToLocalTransformHC):null;return toWorldTransformHC&&iLocalPtHC?toWorldTransformHC.transform(iLocalPtHC):iLocalPtHC};eDwSelObj.prototype.getLocalVector=function(){var _this=this;return this.getVectorInfo((function(iPntWCHC){return _this.getAsLocalPoint(iPntWCHC)})).Vec};eDwSelObj.prototype.getWorldVector=function(){return this.getVectorInfo().Vec};eDwSelObj.prototype.getAsLocalVector=function(iWorldVecHC){var normalMatrix=this.mToLocalTransformHC?this.mToLocalTransformHC.normalMatrix():null;return iWorldVecHC&&normalMatrix?normalMatrix.transform(iWorldVecHC):null};eDwSelObj.prototype.getAsWorldVector=function(iLocalVecHC){var toWorldTransformHC=this.mToLocalTransformHC?eDwTypes_12.HC.Matrix.inverse(this.mToLocalTransformHC):null;var normalMatrix=toWorldTransformHC?toWorldTransformHC.normalMatrix():null;return iLocalVecHC&&normalMatrix?normalMatrix.transform(iLocalVecHC):null};eDwSelObj.prototype.getToLocalTransform=function(){return this.mToLocalTransformHC};eDwSelObj.prototype.findAngle=function(iSelObj){var _this=this;var selObj1Type=eDwSelObj.getSubEntityInfo(this).SubEntityTypeName;var selObj2Type=eDwSelObj.getSubEntityInfo(iSelObj).SubEntityTypeName;if(!selObj1Type||!selObj2Type||selObj2Type==="Point"||selObj1Type==="Point"){return NaN}var toLocalFunc;if(this.getToLocalTransform().equals(iSelObj.getToLocalTransform())){toLocalFunc=function(iPntWCHC){return _this.getAsLocalPoint(iPntWCHC)}}var selObjVecInfo1=this.getVectorInfo(toLocalFunc);var selObjVecInfo2=iSelObj.getVectorInfo(toLocalFunc);if(selObj1Type!==selObj2Type){var curveVecInfo=selObjVecInfo1;var faceVecInfo=selObjVecInfo2;if(selObj1Type==="Face"){curveVecInfo=selObjVecInfo2;faceVecInfo=selObjVecInfo1}var surfPlane=eDwTypes_12.HC.Plane.createFromPointAndNormal(faceVecInfo.Pts[0],faceVecInfo.Vec);faceVecInfo.Pts[0]=eDwGeomUtils_1.dropPointOnPlane(curveVecInfo.Pts[0],surfPlane);faceVecInfo.Pts[1]=eDwGeomUtils_1.dropPointOnPlane(curveVecInfo.Pts[1],surfPlane);faceVecInfo.Vec=eDwTypes_12.HC.Point3.subtract(faceVecInfo.Pts[0],faceVecInfo.Pts[1])}if(!selObjVecInfo1.Vec||!selObjVecInfo1.Pts||!selObjVecInfo2.Vec||!selObjVecInfo2.Pts)return NaN;var normal3DHC=eDwTypes_12.HC.Point3.cross(selObjVecInfo1.Vec,selObjVecInfo2.Vec);if(!eDwGeomUtils_1.isValidHCPoint(normal3DHC)||normal3DHC.length()newVec23DHC.length())vec13DHC=newVec13DHC;var newVec33DHC=eDwTypes_12.HC.Point3.subtract(pts3DHC[2],intPt3DHC);var newVec43DHC=eDwTypes_12.HC.Point3.subtract(pts3DHC[3],intPt3DHC);var vec23DHC=newVec43DHC;if(newVec33DHC.length()>newVec43DHC.length())vec23DHC=newVec33DHC;vec13DHC.normalize();vec23DHC.normalize();return Math.acos(eDwTypes_12.HC.Point3.dot(vec13DHC,vec23DHC))*180/Math.PI};eDwSelObj.extendHCSelObj=function(ioSelObj,iToLocalTransformHC){if(iToLocalTransformHC===void 0){iToLocalTransformHC=null}utils.populateMixinObjectFromClasses(ioSelObj,[eDwSelObj]);if(utils.isInstanceOf(ioSelObj,eDwSelObj)){var pos2DHC=ioSelObj.getPosition();if(pos2DHC){ioSelObj.setPointInLocalSpace(pos2DHC,iToLocalTransformHC)}return ioSelObj}throw new TypeError("eDwSelObj is undefined")};eDwSelObj.createEmpty=function(){return new eDwSelObj(eDwTypes_12.HC.Selection.SelectionItem.create())};eDwSelObj.getLocalTransform=function(ioSelObjHC,iModel){var toLocalTransformHC=new eDwTypes_12.HC.Matrix;var subEntityInfo=eDwSelObj.getSubEntityInfo(ioSelObjHC);if(subEntityInfo.SubEntity){var selObj=eDwSelObj.extendHCSelObj(ioSelObjHC);var selObjIDHC=selObj.getIDHC();var selHierNode=iModel.getHierarchyNode(selObjIDHC);if(selHierNode&&selHierNode.Category==="view"){var modelHC=iModel.getHCModel();var parentNodeHC=modelHC.getNodeParent(selHierNode.HOOPSID);var parentNetMatrixHC=modelHC.getNodeNetMatrix(parentNodeHC);var selNetMatrixHC=modelHC.getNodeNetMatrix(selObjIDHC);var invParentNetMatrix=parentNetMatrixHC.inverseAndDeterminant()[0]||new eDwTypes_12.HC.Matrix;var matrixHC=eDwTypes_12.HC.Matrix.multiply(selNetMatrixHC,invParentNetMatrix);toLocalTransformHC=eDwTypes_12.HC.Matrix.inverse(matrixHC)||new eDwTypes_12.HC.Matrix}}return toLocalTransformHC};eDwSelObj.getMinDistInfo=function(iSelPropsHC,iSelObjs,iModel){return __awaiter(this,void 0,void 0,(function(){function getMinDistPtToFace(iPointHC,iSelObj,iFaceSelObj,iModelHC){return __awaiter(this,void 0,void 0,(function(){var lineRay;return __generator(this,(function(_a){switch(_a.label){case 0:lineRay=new eDwTypes_12.HC.Ray(iPointHC,new eDwTypes_12.HC.Point3(0,0,0));return[4,getMinDistLineToFace(lineRay,iSelObj,iFaceSelObj,iModelHC)];case 1:return[2,_a.sent()]}}))}))}function getMinDistLineToFace(iRayHC,iSelObj,iFaceSelObj,iModelHC){return __awaiter(this,void 0,void 0,(function(){var distItem;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,iModelHC.computeMinimumFaceLineDistance(iFaceSelObj.getNodeId(),iFaceSelObj.getFaceEntity().getCadFaceIndex(),iRayHC)];case 1:distItem=_a.sent();return[2,adjustDistance(iSelObj,iFaceSelObj,distItem)]}}))}))}function adjustDistance(iSelObj,iFaceSelObj,ioDistItem){var toLocalTransformHC=iSelObj.getToLocalTransform();var toLocalTransformForFaceHC=iFaceSelObj.getToLocalTransform();if(toLocalTransformHC&&toLocalTransformForFaceHC&&toLocalTransformHC.equals(toLocalTransformForFaceHC)){ioDistItem.distance*=toLocalTransformHC.upperLeft3x3Determinant()}return ioDistItem}var selEntInfoHC0,selEntInfoHC1,modelHC,vertSelObj,faceSelObj,faceProp,pos2DHC,faceSelObj0,faceSelObj1,faceProp0,faceProp1,distItem,edgeSelObj,edgeProp,faceSelObj,faceProp,pntsWCHC,lineHC;return __generator(this,(function(_a){switch(_a.label){case 0:if(2!==iSelObjs.length)return[2,null];selEntInfoHC0=eDwSelObj.getSubEntityInfo(iSelObjs[0]);selEntInfoHC1=eDwSelObj.getSubEntityInfo(iSelObjs[1]);modelHC=iModel.getHCModel();if(!(selEntInfoHC0.SubEntityTypeName==="Point"&&selEntInfoHC1.SubEntityTypeName==="Face"||selEntInfoHC1.SubEntityTypeName==="Point"&&selEntInfoHC0.SubEntityTypeName==="Face"))return[3,3];vertSelObj=iSelObjs[0];faceSelObj=iSelObjs[1];faceProp=iSelPropsHC[1];if(selEntInfoHC1.SubEntityTypeName==="Point"&&selEntInfoHC0.SubEntityTypeName==="Face"){vertSelObj=iSelObjs[1];faceSelObj=iSelObjs[0];faceProp=iSelPropsHC[0]}pos2DHC=vertSelObj.getPosition();if(!pos2DHC){throw new TypeError("vertSelObj position is undefined")}if(!(faceProp instanceof eDwTypes_12.HC.SubentityProperties.PlaneElement))return[3,2];return[4,getMinDistPtToFace(vertSelObj.getPosition(),vertSelObj,faceSelObj,modelHC)];case 1:return[2,_a.sent()];case 2:return[3,10];case 3:if(!(selEntInfoHC0.SubEntityTypeName==="Face"&&selEntInfoHC1.SubEntityTypeName==="Face"))return[3,6];faceSelObj0=iSelObjs[0],faceSelObj1=iSelObjs[1];faceProp0=iSelPropsHC[0],faceProp1=iSelPropsHC[1];if(!(faceProp0 instanceof eDwTypes_12.HC.SubentityProperties.PlaneElement&&faceProp1 instanceof eDwTypes_12.HC.SubentityProperties.PlaneElement))return[3,5];return[4,modelHC.computeMinimumFaceFaceDistance(faceSelObj0.getNodeId(),faceSelObj0.getFaceEntity().getCadFaceIndex(),faceSelObj1.getNodeId(),faceSelObj1.getFaceEntity().getCadFaceIndex())];case 4:distItem=_a.sent();return[2,adjustDistance(faceSelObj0,faceSelObj1,distItem)];case 5:return[3,10];case 6:if(!(selEntInfoHC0.SubEntityTypeName==="Line"&&selEntInfoHC1.SubEntityTypeName==="Face"||selEntInfoHC1.SubEntityTypeName==="Line"&&selEntInfoHC0.SubEntityTypeName==="Face"))return[3,10];edgeSelObj=iSelObjs[0];edgeProp=iSelPropsHC[0];faceSelObj=iSelObjs[1];faceProp=iSelPropsHC[1];if(selEntInfoHC1.SubEntityTypeName==="Line"&&selEntInfoHC0.SubEntityTypeName==="Face"){faceSelObj=iSelObjs[0];faceProp=iSelPropsHC[0];edgeSelObj=iSelObjs[1];edgeProp=iSelPropsHC[1]}if(!(edgeProp instanceof eDwTypes_12.HC.SubentityProperties.CircleElement&&faceProp instanceof eDwTypes_12.HC.SubentityProperties.PlaneElement))return[3,8];return[4,getMinDistPtToFace(edgeProp.origin,edgeSelObj,faceSelObj,modelHC)];case 7:return[2,_a.sent()];case 8:if(!(edgeProp instanceof eDwTypes_12.HC.SubentityProperties.LineElement&&faceProp instanceof eDwTypes_12.HC.SubentityProperties.PlaneElement))return[3,10];pntsWCHC=edgeSelObj.getLineEntity().getPoints();if(!(pntsWCHC.length===2))return[3,10];lineHC=new eDwTypes_12.HC.Ray(pntsWCHC[0],pntsWCHC[1]);return[4,getMinDistLineToFace(lineHC,edgeSelObj,faceSelObj,modelHC)];case 9:return[2,_a.sent()];case 10:return[2,null]}}))}))};eDwSelObj.getSelObjProperty=function(iSelObjHC,iModel){return __awaiter(this,void 0,void 0,(function(){var subEntityProperty,subEntityInfo,subEntityTypeName,selObj,subEntityID,modelHC,_a;return __generator(this,(function(_b){switch(_b.label){case 0:subEntityProperty=null;subEntityInfo=eDwSelObj.getSubEntityInfo(iSelObjHC);subEntityTypeName="Unknown";if(!subEntityInfo.SubEntity)return[3,6];selObj=eDwSelObj.extendHCSelObj(iSelObjHC);subEntityTypeName=subEntityInfo.SubEntityTypeName;subEntityID=eDwSelObj.getSubEntityID(subEntityInfo.SubEntity);modelHC=iModel.getHCModel();_a=subEntityTypeName;switch(_a){case"Line":return[3,1];case"Face":return[3,3];case"Point":return[3,5]}return[3,5];case 1:return[4,modelHC.getEdgeProperty(selObj.getIDHC(),subEntityID)];case 2:subEntityProperty=_b.sent();return[3,6];case 3:return[4,modelHC.getFaceProperty(selObj.getIDHC(),subEntityID)];case 4:subEntityProperty=_b.sent();return[3,6];case 5:return[3,6];case 6:return[2,{Property:subEntityProperty,Name:subEntityTypeName}]}}))}))};eDwSelObj.setSelObjSubEntityColor=function(iSelObjsHC,iModel,iColor){return eDwSelObj.setSelObjSubEntity(iSelObjsHC,iModel,iColor)};eDwSelObj.setSelObjSubEntityHighlight=function(iSelObjsHC,iModel,iHighlight){return eDwSelObj.setSelObjSubEntity(iSelObjsHC,iModel,iHighlight)};eDwSelObj.getSubEntityInfo=function(iSelObjHC){function checkIfSelectable(iSubEntity,iSelTypeMask){return eDwSelObj.getSubEntityBits(iSubEntity)&iSelTypeMask?true:false}var subEntity=null;var typeName="";var isSelectable=false;if(iSelObjHC){if(subEntity=iSelObjHC.getPointEntity()){typeName="Point";isSelectable=true}else if(subEntity=iSelObjHC.getLineEntity()){typeName="Line";var cEdgeSelMeasureHC=4;isSelectable=checkIfSelectable(subEntity,cEdgeSelMeasureHC)}else if(subEntity=iSelObjHC.getFaceEntity()){typeName="Face";var cFaceSelMeasureHC=1;isSelectable=checkIfSelectable(subEntity,cFaceSelMeasureHC)}}return{SubEntity:subEntity,SubEntityTypeName:typeName,IsSelectable:isSelectable}};eDwSelObj.getSubEntityTypeName=function(iSubEntityType){if(!iSubEntityType)return"";return utils.getObjectTypeName(iSubEntityType).slice(0,-6)};eDwSelObj.getSubEntityID=function(iSubEntity){return iSubEntity?iSubEntity._elementIndex:NaN};eDwSelObj.getSubEntityBits=function(iSubEntity){return iSubEntity?iSubEntity._elementBits:NaN};eDwSelObj.prototype.setPointInLocalSpace=function(iWorldPtHC,iToLocalTransformHC){if(iToLocalTransformHC){this.mLocalPnt=iWorldPtHC?iToLocalTransformHC.transform(iWorldPtHC):null;this.mToLocalTransformHC=iToLocalTransformHC}};eDwSelObj.setSelObjSubEntity=function(iSelObjsHC,iModel,iSetting){if(!iSelObjsHC||!iSelObjsHC.length)return[];var modelHC=iModel.getHCModel();var subEntityIDs=[];for(var _i=0,iSelObjsHC_2=iSelObjsHC;_i1){startCrvPt3DHC=iTransformPointFunc(crvPtsWC3DHC[0]);endCrvPt3DHC=iTransformPointFunc(crvPtsWC3DHC[numPts-1]);vec3DHC=eDwTypes_12.HC.Point3.subtract(endCrvPt3DHC,startCrvPt3DHC);if(vec3DHC.length()-1;--i){currentNode=childHierarchyMap[children[i]];viewIDsHC.push(currentNode.HOOPSID)}pickConfig=new eDwTypes_13.HC.PickConfig(eDwTypes_13.HC.SelectionMask.All);return[4,this.Viewer.ViewMgr.pickFromPoint(iCoords,pickConfig)];case 1:selObj=_a.sent();selObjIDHC=selObj.getIDHC();if(!utils.isNaN(selObjIDHC))return[3,3];return[4,this.Viewer.SelectionMgr.select(iCoords)];case 2:selSuccess=_a.sent();_a.label=3;case 3:hierNode=model.getHierarchyNode(selObjIDHC);if(!hierNode)return[3,6];if(!(viewIDsHC.indexOf(hierNode.HOOPSID)>-1))return[3,5];return[4,this.Viewer.SelectionMgr.selectByID(hierNode.HOOPSID)];case 4:selSuccess=_a.sent();_a.label=5;case 5:return[3,10];case 6:_i=0,viewIDsHC_1=viewIDsHC;_a.label=7;case 7:if(!(_i0){pluginName=matches[1]}else{console.warn("Could not locate external plugin name in file "+iPluginFile)}return[3,5];case 4:iExcp_11=_a.sent();console.warn("Failed to load external plugin - "+iExcp_11.message);return[3,5];case 5:return[2,pluginName]}}))}))};eDwServiceMgr.prototype.getPluginFiles=function(){return __awaiter(this,void 0,void 0,(function(){var _a,_b,iExcp_12;return __generator(this,(function(_c){switch(_c.label){case 0:if(!eDwServiceMgr.usesWebServices())return[2,this.mPluginFiles];if(!!this.mPluginFiles.length)return[3,7];_c.label=1;case 1:_c.trys.push([1,6,,7]);if(!this.mAdvancedServicesDisabled)return[3,3];console.debugLog("ServiceMgr","Loading static plugin list");_a=this;return[4,this.ajax("GET","js/staticPluginList.json",{})];case 2:_a.mPluginFiles=_c.sent();return[3,5];case 3:console.debugLog("ServiceMgr","Finding plugins...");_b=this;return[4,this.ajax("GET","EDrawingsService.svc/GetPlugins",{})];case 4:_b.mPluginFiles=_c.sent();_c.label=5;case 5:return[3,7];case 6:iExcp_12=_c.sent();console.warn("No plugins available.");return[3,7];case 7:return[2,this.mPluginFiles]}}))}))};eDwServiceMgr.prototype.extendLicense=function(iKey){return __awaiter(this,void 0,void 0,(function(){var params;return __generator(this,(function(_a){switch(_a.label){case 0:if(this.mAdvancedServicesDisabled||!eDwServiceMgr.usesWebServices()){return[2]}params={data:{iKey:iKey},cache:false};return[4,this.ajax("GET","EDrawingsService.svc/ExtendLicense",params)];case 1:_a.sent();return[2]}}))}))};eDwServiceMgr.prototype.getBaseCacheDirs=function(){return __awaiter(this,void 0,void 0,(function(){var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:if(!!this.mBaseCacheDirs.length)return[3,2];this.mBaseCacheDirs=[];this.mGetBaseCacheDirsPromise=$.get("cacheDirs.xml",(function(iDoc){var cacheDirs=iDoc.getElementsByTagName("modelSearchDirectory");var numDirs=cacheDirs.length;for(var i=0;i-1){foundPluginFileName=pluginFileName}}return[2,foundPluginFileName]}}))}))};eDwServiceMgr.prototype.ajax=function(iMethod,iService,iParams){return __awaiter(this,void 0,void 0,(function(){var paramsObj,retAJAX,iExcp_13;return __generator(this,(function(_a){switch(_a.label){case 0:paramsObj={type:iMethod,url:this.mServerURL+"/"+iService,async:true};if(iParams)$.extend(paramsObj,iParams);_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,$.ajax(paramsObj)];case 2:retAJAX=_a.sent();return[3,4];case 3:iExcp_13=_a.sent();console.warn("AJAX "+iMethod+" failed for "+iService+": "+iExcp_13.message);throw iExcp_13;case 4:return[2,retAJAX]}}))}))};return eDwServiceMgr}();return eDwServiceMgr}));define("eDwSetHierNodeAttribsCmd",["require","exports","eDwSupportsHistoryCmd"],(function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwSetHierNodeAttribsCmd=function(_super){__extends(eDwSetHierNodeAttribsCmd,_super);function eDwSetHierNodeAttribsCmd(iViewer,iHierNodes,iAttrib){var _this=_super.call(this,iViewer)||this;_this.mInitialHierNodeAttribs=[];_this.mFinalHierNodeAttribs=[];var finalAttrib=$.extend(true,{},iAttrib);for(var _i=0,iHierNodes_2=iHierNodes;_i-1){this.mTouchOpIDs.splice(opIndex,1);this.mViewer.OperatorMgr.unregisterCustomOperatorByID(iOpID)}};eDwTouchOpsMgr.isTouchEnabled=function(){function matchMedia(iFeature){return window.matchMedia&&window.matchMedia(iFeature).matches?true:false}var enabled=false;if("PointerEvent"in window&&"maxTouchPoints"in navigator){var maxTouchPoints=navigator.maxTouchPoints;if(utils.isNumber(maxTouchPoints)){if(navigator.maxTouchPoints>0){enabled=true}else if(navigator.maxTouchPoints===0&&matchMedia("(any-pointer:coarse)")){enabled=true}}}else{if(matchMedia("(any-pointer:coarse)")){enabled=true}else if("TouchEvent"in window||"ontouchstart"in window){enabled=true}}console.debugLog("TouchOps","Touch enabled = "+enabled);return enabled};return eDwTouchOpsMgr}();return eDwTouchOpsMgr}));define("eDwTypes",["require","exports"],(function(require,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.EntityMode=exports.SectionPlaneOrientation=exports.HCI=exports.HC=void 0;var HC=Communicator;exports.HC=HC;var HCI=Communicator.Internal;exports.HCI=HCI;exports.SectionPlaneOrientation={XY:{Plane:HC.Plane.createFromPointAndNormal(new HC.Point3(0,0,0),new HC.Point3(0,0,1)),Index:0},YZ:{Plane:HC.Plane.createFromPointAndNormal(new HC.Point3(0,0,0),new HC.Point3(1,0,0)),Index:1},ZX:{Plane:HC.Plane.createFromPointAndNormal(new HC.Point3(0,0,0),new HC.Point3(0,1,0)),Index:2}};exports.EntityMode={FACE:1,EDGE:2,VERTEX:4,HOLE:8,ALL:4294967295}}));define("eDwUI",["require","exports","eDwTypes","eDwKeyMgr","eDwUIBaseEventHandlers","eDwCommandMgr","eDwZoomToFitCmd","eDwDrawModeCmd","eDwAnimateCmd","eDwAmbientOcclusionCmd","eDwPerspectiveCmd","eDwSetViewCmd","eDwSetViewCameraCmd","eDwCompositeCmd","eDwSectionFlipCmd","eDwSetViewNormalToSectionCmd","eDwShowSectionCapCmd","eDwSectionShowCmd","eDwChangeSectionPlaneCmd","eDwUIPluginMgr","eDwEventMgr","eDwUIMessageReporter","eDwUIShortcutMenu","eDwUIUtils","eDrawingsWebViewerUtils","eDwEvents","utils"],(function(require,exports,eDwTypes_14,eDwKeyMgr_3,eDwUIBaseEventHandlers,eDwCommandMgr,eDwZoomToFitCmd,eDwDrawModeCmd,eDwAnimateCmd,eDwAmbientOcclusionCmd,eDwPerspectiveCmd,eDwSetViewCmd,eDwSetViewCameraCmd,eDwCompositeCmd,eDwSectionFlipCmd,eDwSetViewNormalToSectionCmd,eDwShowSectionCapCmd,eDwSectionShowCmd,eDwChangeSectionPlaneCmd,eDwUIPluginMgr,eDwEventMgr,eDwUIMessageReporter,eDwUIShortcutMenu_1,eDwUIUtils,eDrawingsWVUtils,eDwEvents,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.eDwUI=void 0;var eDwUI=function(){function eDwUI(){this.mUIEventHandlers=new UIEventHandlers(this,eDwUIUtils.getViewerElementName(),c_canvasID);this.mItemActiveCallbacks={};this.mItemDeactiveCallbacks={};solidworks.web.touch.support();this.awfulUIHacks()}eDwUI.prototype.initUIEvents=function(iViewerFeatOpts){this.mViewerFeatureOpts=iViewerFeatOpts;this.registerHTMLEvents()};eDwUI.prototype.init=function(iViewer){var _this=this;this.mViewer=iViewer;this.centerBottomBar();this.mViewer.XSectionMgr.SectionCapVisibility=true;$("#edrawings-section-capping-button").addClass("state-on-button");$("#edrawings-section-show-button").addClass("state-on-button");eDwUIUtils.hide(".edrawings-ui-main",false);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents.ResetSceneEvent,true)];case 1:_a.sent();return[2]}}))}))})()};eDwUI.prototype.toggleFullScreen=function(){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){var methodName,viewerElem,iExcp_14;return __generator(this,(function(_a){switch(_a.label){case 0:methodName="exitFullScreen()";_a.label=1;case 1:_a.trys.push([1,6,,7]);if(!l_isFullScreen())return[3,3];document.exitFullscreen=document.exitFullscreen||utils.getFirstMatchedMethodObj(document,"xitFullscreen");if(!document.exitFullscreen){console.warn("exitFullscreen() does not exist.");return[2]}return[4,document.exitFullscreen()];case 2:_a.sent();return[3,5];case 3:methodName="requestFullscreen()";viewerElem=$("#edrawings-viewer")[0];viewerElem.requestFullscreen=viewerElem.requestFullscreen||utils.getFirstMatchedMethodObj(viewerElem,"equestFullscreen");if(!viewerElem.requestFullscreen){console.warn("requestFullscreen() does not exist.");return[2]}return[4,viewerElem.requestFullscreen()];case 4:_a.sent();_a.label=5;case 5:return[3,7];case 6:iExcp_14=_a.sent();console.warn(methodName+" failed. It took too long.");return[3,7];case 7:return[2]}}))}))})()};eDwUI.prototype.unregister=function(){this.unregisterHTMLEvents();UIEventHandlers.doModelDataUnloadActions(this.mViewer)};eDwUI.prototype.setDrawMode=function(iValue){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){var drawModeCmd;return __generator(this,(function(_a){switch(_a.label){case 0:drawModeCmd=new eDwDrawModeCmd(this.mViewer,iValue);return[4,eDwCommandMgr.get().run(drawModeCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()};eDwUI.prototype.setInitialDrawMode=function(){if(!this.mViewer.ViewerFeatureOpts.RenderType)return;this.setDrawMode(this.mViewer.ViewerFeatureOpts.RenderType)};eDwUI.prototype.setPerspectiveMode=function(iValue){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){var perspectiveCmd;return __generator(this,(function(_a){switch(_a.label){case 0:perspectiveCmd=new eDwPerspectiveCmd(this.mViewer,iValue);return[4,eDwCommandMgr.get().run(perspectiveCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()};eDwUI.prototype.hideAllOtherPanels=function(iPanelCSSClassName){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iPanelCSSClassName!==".edrawings-hud-menu"))return[3,2];return[4,this.hideActiveHUDMenu()];case 1:_a.sent();_a.label=2;case 2:if(!(iPanelCSSClassName!==".edrawings-submenu"))return[3,4];return[4,this.hideActiveSubmenu()];case 3:_a.sent();_a.label=4;case 4:eDwUIShortcutMenu_1.eDwUIShortcutMenu.hide();return[2]}}))}))};eDwUI.prototype.onClick=function(iID,iActivate){var activateCallback=this.mItemActiveCallbacks[iID];var deactivateCallback=this.mItemDeactiveCallbacks[iID];if(iActivate){if(activateCallback)activateCallback()}else{if(deactivateCallback)deactivateCallback()}return activateCallback||deactivateCallback?true:false};eDwUI.prototype.registerHTMLEvents=function(){var _this=this;this.mUIEventHandlers.addHTMLEventHandlers(this.mViewerFeatureOpts);this.mModelDataLoadCompleteHandler=function(iEvent,iViewer){_this.mViewer=iViewer;eDwUIBaseEventHandlers.doModelDataLoadCompleteActions(_this.mUIEventHandlers,iViewer)};$("#"+c_canvasID).on("edw:ModelDataLoadComplete",this.mModelDataLoadCompleteHandler);var self=this;this.registerButtonForClickEffect("edrawings-section-flip-button",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){var sectionFlipCmd;return __generator(this,(function(_a){switch(_a.label){case 0:sectionFlipCmd=new eDwSectionFlipCmd(this.mViewer);return[4,eDwCommandMgr.get().run(sectionFlipCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}));this.registerButtonForClickEffect("edrawings-section-normal-button",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){var setViewNormalToSectionCmd;return __generator(this,(function(_a){switch(_a.label){case 0:setViewNormalToSectionCmd=new eDwSetViewNormalToSectionCmd(this.mViewer);return[4,eDwCommandMgr.get().run(setViewNormalToSectionCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}));function setXSectionOrientation(iEvent,iUI,iOrientation){iUI.setXSectionOrientation(iOrientation);eDwUIUtils.scrollToTarget(eDwUIUtils.getAsJQueryObj(iEvent.currentTarget))}$("#edrawings-section-xz-button").on("click.edw",(function(iEvent){return setXSectionOrientation(iEvent,_this,eDwTypes_14.SectionPlaneOrientation.ZX)}));$("#edrawings-section-yz-button").on("click.edw",(function(iEvent){return setXSectionOrientation(iEvent,_this,eDwTypes_14.SectionPlaneOrientation.YZ)}));$("#edrawings-section-xy-button").on("click.edw",(function(iEvent){return setXSectionOrientation(iEvent,_this,eDwTypes_14.SectionPlaneOrientation.XY)}));$("#edrawings-section-capping-button").on("click.edw",(function(iEvent){var buttonJQ=eDwUIUtils.getAsJQueryObj(iEvent.currentTarget);var visibility=!buttonJQ.hasClass("state-on-button");(function(){return __awaiter(_this,void 0,void 0,(function(){var showCapsCmd;return __generator(this,(function(_a){switch(_a.label){case 0:showCapsCmd=new eDwShowSectionCapCmd(this.mViewer,visibility);return[4,eDwCommandMgr.get().run(showCapsCmd,"commit")];case 1:_a.sent();return[2]}}))}))})();buttonJQ.toggleClass("state-on-button");eDwUIUtils.scrollToTarget(buttonJQ)}));$("#edrawings-section-show-button").on("click.edw",(function(iEvent){var buttonJQ=eDwUIUtils.getAsJQueryObj(iEvent.currentTarget);var showSection=!buttonJQ.hasClass("state-on-button");(function(){return __awaiter(_this,void 0,void 0,(function(){var showSectionCmd;return __generator(this,(function(_a){switch(_a.label){case 0:showSectionCmd=new eDwSectionShowCmd(this.mViewer,showSection);return[4,eDwCommandMgr.get().run(showSectionCmd,"commit")];case 1:_a.sent();return[2]}}))}))})();buttonJQ.toggleClass("state-on-button");eDwUIUtils.scrollToTarget(buttonJQ)}));this.mItemActiveCallbacks["#edrawings-button-section"]=function(){return __awaiter(_this,void 0,void 0,(function(){function compositeSectionDone(ioCmd){ioCmd.clearSubCmds();self.mViewer.XSectionMgr.deactivateCurrent();self.mViewer.XSectionMgr.turnOnSectionPlane(false)}var self;var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:eDwUIUtils.addPanelModeEvents("#edrawings-section-menu",".edw.section","#edrawings-button-section");this.mCompositeXSectionCmd=new eDwCompositeCmd(this.mViewer);eDwCommandMgr.get().add(this.mCompositeXSectionCmd);this.mCompositeXSectionCmd.initCmdActionImplementation({compositeInit:function(ioCmd){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){this.mViewer.XSectionMgr.turnOnSectionPlane(true);this.setXSectionOrientation();return[2]}))}))},compositeUndo:function(ioCmd){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){return[2,true]}))}))},compositeRedo:function(ioCmd){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){return[2,true]}))}))},compositeCommit:function(ioCmd){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){compositeSectionDone(ioCmd);return[2]}))}))},compositeCancel:function(ioCmd){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){compositeSectionDone(ioCmd);return[2]}))}))}});self=this;if(!!this.mViewer.getModel().isDrawing())return[3,2];return[4,this.setActiveSubmenu("#edrawings-button-section","#edrawings-section-menu")];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))};this.mItemDeactiveCallbacks["#edrawings-button-section"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:eDwUIUtils.deactivateMoveInput(".edw.section");return[4,eDwCommandMgr.get().remove(this.mCompositeXSectionCmd,"cancel")];case 1:_a.sent();return[2]}}))}))};eDwEventMgr.get().addEventHandlerFunc(eDwEvents.DeactivateUIOpEvent,(function(iActiveButtonsJQ){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iActiveButtonsJQ[0].id==="edrawings-button-section"))return[3,2];return[4,this.mItemDeactiveCallbacks["#edrawings-button-section"]()];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))}));function activateDebugPanel(iActivate,iHandlers){return __awaiter(this,void 0,void 0,(function(){var shortcutMenu;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,togglePanel(iActivate,"#edrawings-button-debug","#edrawings-debug-menu",".edw.debug",iHandlers)];case 1:_a.sent();if(iActivate){shortcutMenu=eDwUIShortcutMenu_1.eDwUIShortcutMenu.get();if(!shortcutMenu.isEmpty()){shortcutMenu.addMenuSeparator(c_debugGroupName)}shortcutMenu.addMenuItem(c_debugGroupName,"edrawings-debug-node-matrices",(function(iEvent,iUIItemJQ,iArg){if(utils.isOfType(iArg,"attr")){var nodeIDHC=parseInt(iArg.attr("data-hoopsid"),10);if(utils.isNumber(nodeIDHC)){var modelHC=self.mViewer.getModel().getHCModel();var matrixHC=modelHC.getNodeMatrix(nodeIDHC);var msg="
Matrix = "+JSON.stringify(matrixHC)+"
";matrixHC=modelHC.getNodeNetMatrix(nodeIDHC);msg+="
Net matrix = "+JSON.stringify(matrixHC)+"
";eDwUIMessageReporter.showMessageInDebugPanel(msg)}}eDwUIShortcutMenu_1.eDwUIShortcutMenu.hide()}))}else{eDwUIShortcutMenu_1.eDwUIShortcutMenu.get().removeAllMenuItems(c_debugGroupName)}return[2]}}))}))}this.mItemActiveCallbacks["#edrawings-button-debug"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateDebugPanel(true,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};this.mItemDeactiveCallbacks["#edrawings-button-debug"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateDebugPanel(false,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};eDwEventMgr.get().addEventHandlerFunc(eDwEvents.DeactivateUIOpEvent,(function(iActiveButtonsJQ){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iActiveButtonsJQ[0].id==="edrawings-button-debug"))return[3,2];return[4,this.mItemDeactiveCallbacks["#edrawings-button-debug"]()];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))}));this.mItemActiveCallbacks["#edrawings-button-reset"]=function(){return __awaiter(_this,void 0,void 0,(function(){var _this=this;return __generator(this,(function(_a){eDwUIUtils.resetToHomeView(this.mViewer);window.setTimeout((function(){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.deactivateUI()];case 1:_a.sent();return[2]}}))}))})()}),1e3);return[2]}))}))};$(document).on(c_fullScreenChange,(function(iEvent){if(l_isFullScreen()){l_fullScreenBtnJS.removeClass(c_restoreClass)}else{l_fullScreenBtnJS.addClass(c_restoreClass);$("#edrawings-canvas-canvas-container").css({"background-color":""})}}));$("#edrawings-button-fs").on("click.edw",(function(){_this.toggleFullScreen()}));function clickDrawMode(iUI,iMode){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:iUI.setDrawMode(iMode);return[4,iUI.hideActiveHUDMenu()];case 1:_a.sent();return[2]}}))}))})()}$("#edrawings-button-shaded-hlrr").on("click.edw",(function(){clickDrawMode(_this,"HiddenLinesRemoved")}));$("#edrawings-button-shaded-hlrv").on("click.edw",(function(){clickDrawMode(_this,"HiddenLinesVisible")}));$("#edrawings-button-shaded-wireframe").on("click.edw",(function(){clickDrawMode(_this,"Wireframe")}));$("#edrawings-button-shaded-full").on("click.edw",(function(){clickDrawMode(_this,"ShadedWithEdges")}));$("#edrawings-button-shaded-noedges").on("click.edw",(function(){clickDrawMode(_this,"Shaded")}));this.mItemActiveCallbacks["#edrawings-button-animate"]=function(){return __awaiter(_this,void 0,void 0,(function(){var animateCmd;return __generator(this,(function(_a){switch(_a.label){case 0:animateCmd=new eDwAnimateCmd(this.mViewer);return[4,eDwCommandMgr.get().run(animateCmd,"commit")];case 1:_a.sent();return[2]}}))}))};this.mItemDeactiveCallbacks["#edrawings-button-animate"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.mItemActiveCallbacks["#edrawings-button-animate"]()];case 1:_a.sent();return[2]}}))}))};$("#edrawings-button-frame-file-open").on("click.edw",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.hideActiveHUDMenu()];case 1:_a.sent();return[2]}}))}))})()}));this.mItemActiveCallbacks["#edrawings-button-view"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.setActiveHUDMenu("#edrawings-button-view","#edrawings-hud-view-menu")];case 1:_a.sent();return[2]}}))}))};this.mItemActiveCallbacks["#edrawings-button-help"]=function(){return __awaiter(_this,void 0,void 0,(function(){var version,viewerHC;return __generator(this,(function(_a){switch(_a.label){case 0:version="
Version #: "+eDrawingsWVUtils.getViewerVersion()+"
";if(this.mViewerFeatureOpts.Debug){viewerHC=this.mViewer.HCViewer;version+="
HC Version:"+viewerHC.getViewerVersionString()+"
Format Version: "+viewerHC.getFormatVersionString()+"
"}$("#edrawings-version").html(version);return[4,this.setActiveHUDMenu("#edrawings-button-help","#edrawings-hud-help-menu")];case 1:_a.sent();return[2]}}))}))};$("#edrawings-hud-help-close").on("click.edw",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.hideActiveHUDMenu()];case 1:_a.sent();return[2]}}))}))})()}));this.mItemActiveCallbacks["#edrawings-button-zoomtofit"]=function(){return __awaiter(_this,void 0,void 0,(function(){var viewHC,curModelView,nodeID,zoomToFitCmd;return __generator(this,(function(_a){switch(_a.label){case 0:viewHC=this.mViewer.getHCView();curModelView=this.mViewer.getModel().getActiveModelView();nodeID=curModelView.Hierarchy.HOOPSID;zoomToFitCmd=new eDwZoomToFitCmd(this.mViewer,nodeID,viewHC.getCamera());return[4,eDwCommandMgr.get().run(zoomToFitCmd,"commit")];case 1:_a.sent();return[2]}}))}))};this.mItemActiveCallbacks["#edrawings-button-shaded"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.setActiveHUDMenu("#edrawings-button-shaded","#edrawings-hud-shaded-menu")];case 1:_a.sent();return[2]}}))}))};function togglePanel(iActivate,iButtonID,iPanelID,iInputEventIDSuffix,iHandlers){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!iActivate)return[3,2];return[4,self.setActiveSubmenu(iButtonID,iPanelID)];case 1:_a.sent();eDwUIUtils.addPanelModeEvents(iPanelID,iInputEventIDSuffix,iButtonID);return[3,3];case 2:eDwUIUtils.deactivateMoveInput(iInputEventIDSuffix);_a.label=3;case 3:return[2]}}))}))}function activateSheetPanel(iActivate,iHandlers){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,togglePanel(iActivate,"#edrawings-button-sheet-tree","#edrawings-sheet-tree-menu",".edw.sheet",iHandlers)];case 1:_a.sent();return[2]}}))}))}this.mItemActiveCallbacks["#edrawings-button-sheet-tree"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateSheetPanel(true,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};this.mItemDeactiveCallbacks["#edrawings-button-sheet-tree"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateSheetPanel(false,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};eDwEventMgr.get().addEventHandlerFunc(eDwEvents.DeactivateUIOpEvent,(function(iActiveButtonsJQ){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iActiveButtonsJQ[0].id==="edrawings-button-sheet-tree"))return[3,2];return[4,this.mItemDeactiveCallbacks["#edrawings-button-sheet-tree"]()];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))}));function activateLayerPanel(iActivate,iHandlers){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,togglePanel(iActivate,"#edrawings-button-layer-control","#edrawings-layer-control-menu",".edw.layer",iHandlers)];case 1:_a.sent();return[2]}}))}))}this.mItemActiveCallbacks["#edrawings-button-layer-control"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateLayerPanel(true,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};this.mItemDeactiveCallbacks["#edrawings-button-layer-control"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateLayerPanel(false,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};eDwEventMgr.get().addEventHandlerFunc(eDwEvents.DeactivateUIOpEvent,(function(iActiveButtonsJQ){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iActiveButtonsJQ[0].id==="edrawings-button-layer-control"))return[3,2];return[4,this.mItemDeactiveCallbacks["#edrawings-button-layer-control"]()];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))}));eDwKeyMgr_3.eDwKeyMgr.get().add({key:"F11"},"keydown",(function(iEvent){iEvent.preventDefault();_this.toggleFullScreen();iEvent.stopPropagation()}));this.mItemActiveCallbacks["#edrawings-button-view-settings"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.setActiveHUDMenu("#edrawings-button-view-settings","#edrawings-hud-view-settings-menu")];case 1:_a.sent();return[2]}}))}))};var ambientOcc=$("#edrawings-button-view-ambient-occlusion");ambientOcc.on("click.edw",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){var buttonActive,ambientOcclCmd;return __generator(this,(function(_a){switch(_a.label){case 0:buttonActive=ambientOcc.hasClass("state-on-button");return[4,this.hideActiveHUDMenu()];case 1:_a.sent();if(buttonActive)ambientOcc.removeClass("state-on-button");else ambientOcc.addClass("state-on-button");ambientOcclCmd=new eDwAmbientOcclusionCmd(this.mViewer,!buttonActive);return[4,eDwCommandMgr.get().run(ambientOcclCmd,"commit")];case 2:_a.sent();return[2]}}))}))})()}));$("#edrawings-button-view-perspective").on("click.edw",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){var perspectiveMode;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.hideActiveHUDMenu()];case 1:_a.sent();perspectiveMode=!this.mViewer.getPerspectiveMode();this.setPerspectiveMode(perspectiveMode);return[2]}}))}))})()}));this.registerButtonForClickEffect("edrawings-button-view-top",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Top)}));this.registerButtonForClickEffect("edrawings-button-view-bottom",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Bottom)}));this.registerButtonForClickEffect("edrawings-button-view-left",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Left)}));this.registerButtonForClickEffect("edrawings-button-view-right",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Right)}));this.registerButtonForClickEffect("edrawings-button-view-front",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Front)}));this.registerButtonForClickEffect("edrawings-button-view-back",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Back)}));this.registerButtonForClickEffect("edrawings-button-view-iso",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Iso)}))};eDwUI.prototype.unregisterHTMLEvents=function(){this.mUIEventHandlers.removeHTMLEventHandlers();$("#"+c_canvasID).off("edw:ModelDataLoadComplete",this.mModelDataLoadCompleteHandler);$("#edrawings-section-xz-button").off("click.edw");$("#edrawings-section-yz-button").off("click.edw");$("#edrawings-section-xy-button").off("click.edw");$("#edrawings-section-capping-button").off("click.edw");$("#edrawings-section-show-button").off("click.edw");$("#edrawings-button-fs").off("click.edw");$("#edrawings-button-shaded-hlrr").off("click.edw");$("#edrawings-button-shaded-hlrv").off("click.edw");$("#edrawings-button-shaded-wireframe").off("click.edw");$("#edrawings-button-shaded-full").off("click.edw");$("#edrawings-button-shaded-noedges").off("click.edw");$("#edrawings-button-sheets").off("click.edw");$("#edrawings-button-frame-file-open").off("click.edw");$("#edrawings-button-view-ambient-occlusion").off("click.edw");$("#edrawings-button-view-perspective").off("click.edw");$("#edrawings-hud-help-close").off("click.edw");$(document).off(c_fullScreenChange);$(document).off("click.edw");$(document).off("mousedown.edw");$(document).off("dblclick.edw");this.unregisterButtonForClickEffect("edrawings-section-flip-button");this.unregisterButtonForClickEffect("edrawings-section-normal-button");this.unregisterButtonForClickEffect("edrawings-face-normal-button");this.unregisterButtonForClickEffect("edrawings-button-view-top");this.unregisterButtonForClickEffect("edrawings-button-view-bottom");this.unregisterButtonForClickEffect("edrawings-button-view-left");this.unregisterButtonForClickEffect("edrawings-button-view-right");this.unregisterButtonForClickEffect("edrawings-button-view-front");this.unregisterButtonForClickEffect("edrawings-button-view-back");this.unregisterButtonForClickEffect("edrawings-button-view-iso")};eDwUI.prototype.setActiveSubmenu=function(iButtonID,iPanelID){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.activateUI(iButtonID,iPanelID)];case 1:_a.sent();return[2]}}))}))};eDwUI.prototype.hideActiveSubmenu=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.deactivateUI(".edrawings-tool-button",".edrawings-submenu")];case 1:_a.sent();return[2]}}))}))};eDwUI.prototype.centerBottomBar=function(iWidth,iHeight){$(".tool-bar").css({height:"auto"});var barJQ=$(".tool-bar");var viewerElemJQ=$(eDwUIUtils.getViewerElementID());var leftButtonsJQ=$(".edrawings-icon-set.left");var rightButtonsJQ=$(".edrawings-icon-set.right");var centerButtonsJQ=$(".edrawings-icon-set.center");var width=(iWidth?iWidth:viewerElemJQ.width())-1;if(navigator.userAgent.indexOf("Trident")>=0){width=viewerElemJQ[0].clientWidth-1}barJQ.css({position:"absolute"});leftButtonsJQ.css({left:1+"px",position:"absolute"});rightButtonsJQ.css({right:1+"px",position:"absolute"});centerButtonsJQ.css({left:width/2-52/2+"px",position:"absolute"})};eDwUI.prototype.setActiveHUDMenu=function(iButtonID,iPanelID){return __awaiter(this,void 0,void 0,(function(){var buttonJQ,buttonOffset,posx,posy,canvasWidth,panelJQ,panelWidth;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.hideActiveHUDMenu()];case 1:_a.sent();return[4,eDwUIUtils.activateUI(iButtonID,iPanelID)];case 2:_a.sent();if(iButtonID!=="#edrawings-button-help"){buttonJQ=$(iButtonID);buttonOffset=buttonJQ.offset();posx=buttonOffset.left;posy=buttonOffset.top+parseInt(buttonJQ.css("marginTop"))+parseInt(buttonJQ.css("borderTopWidth"))+buttonJQ.height();canvasWidth=$("#edrawings-canvas").width();panelJQ=$(iPanelID);panelWidth=panelJQ[0].offsetWidth;if(posx+panelWidth>canvasWidth){posx=canvasWidth-panelWidth-10}panelJQ.css({top:posy+"px",left:posx+"px"})}return[2]}}))}))};eDwUI.prototype.hideActiveHUDMenu=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.deactivateUI(".edrawings-hud-button",".edrawings-hud-menu")];case 1:_a.sent();return[2]}}))}))};eDwUI.prototype.registerButtonForClickEffect=function(iButtonID,iHandler){var butJQ=$("#"+iButtonID);butJQ.on("mousedown.edw",(function(){butJQ.addClass("edrawings-on-state");eDwUIUtils.scrollToTarget(butJQ)}));butJQ.on("mouseup.edw",(function(){butJQ.removeClass("edrawings-on-state");iHandler()}))};eDwUI.prototype.unregisterButtonForClickEffect=function(iButtonID){var butJQ=$("#"+iButtonID);butJQ.off("mousedown.edw");butJQ.off("mouseup.edw")};eDwUI.prototype.setViewOrientation=function(iOrientation){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){var setViewCmd;return __generator(this,(function(_a){switch(_a.label){case 0:setViewCmd=new eDwSetViewCmd(this.mViewer,iOrientation);return[4,eDwCommandMgr.get().run(setViewCmd,"commit")];case 1:_a.sent();return[4,this.hideActiveHUDMenu()];case 2:_a.sent();return[2]}}))}))})()};eDwUI.prototype.setXSectionOrientation=function(iNewSection){var _this=this;function setActive(iButtonID,iIsActive){$(iButtonID)[iIsActive?"addClass":"removeClass"]("state-on-button")}var sectionMgr=this.mViewer.XSectionMgr;var sectionIndex=iNewSection?iNewSection.Index:sectionMgr.SectionIndex;var planeFromEnum=null;switch(sectionIndex){case eDwTypes_14.SectionPlaneOrientation.YZ.Index:setActive("#edrawings-section-xy-button",false);setActive("#edrawings-section-yz-button",true);setActive("#edrawings-section-xz-button",false);planeFromEnum=eDwTypes_14.SectionPlaneOrientation.YZ;break;case eDwTypes_14.SectionPlaneOrientation.ZX.Index:setActive("#edrawings-section-xy-button",false);setActive("#edrawings-section-yz-button",false);setActive("#edrawings-section-xz-button",true);planeFromEnum=eDwTypes_14.SectionPlaneOrientation.ZX;break;case eDwTypes_14.SectionPlaneOrientation.XY.Index:eDwUIUtils.hide("#edrawings-section-xy-button",false);eDwUIUtils.hide("#edrawings-section-yz-button",false);eDwUIUtils.hide("#edrawings-section-xz-button",false);setActive("#edrawings-section-xy-button",true);setActive("#edrawings-section-yz-button",false);setActive("#edrawings-section-xz-button",false);planeFromEnum=eDwTypes_14.SectionPlaneOrientation.XY;break;default:console.debugLog("UI","Unsupported section plane orientation");break}var origPlaneEnum=null;if(sectionIndex!==sectionMgr.SectionIndex){switch(sectionMgr.SectionIndex){case eDwTypes_14.SectionPlaneOrientation.YZ.Index:origPlaneEnum=eDwTypes_14.SectionPlaneOrientation.YZ;break;case eDwTypes_14.SectionPlaneOrientation.ZX.Index:origPlaneEnum=eDwTypes_14.SectionPlaneOrientation.ZX;break;case eDwTypes_14.SectionPlaneOrientation.XY.Index:origPlaneEnum=eDwTypes_14.SectionPlaneOrientation.XY;break;default:console.debugLog("UI","Unsupported initial section plane orientation");break}if(planeFromEnum&&origPlaneEnum){(function(){return __awaiter(_this,void 0,void 0,(function(){var changeSectionPlaneCmd;return __generator(this,(function(_a){switch(_a.label){case 0:changeSectionPlaneCmd=new eDwChangeSectionPlaneCmd(this.mViewer,origPlaneEnum,planeFromEnum);return[4,eDwCommandMgr.get().run(changeSectionPlaneCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}}};eDwUI.prototype.awfulUIHacks=function(){var _this=this;l_init=function(){$("#edrawings-face-normal-button").removeClass("edrawings-inactive");_this.registerButtonForClickEffect("edrawings-face-normal-button",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){var setViewCameraCmd;return __generator(this,(function(_a){switch(_a.label){case 0:setViewCameraCmd=new eDwSetViewCameraCmd(this.mViewer);return[4,eDwCommandMgr.get().run(setViewCameraCmd,"commit")];case 1:_a.sent();return[4,this.hideActiveHUDMenu()];case 2:_a.sent();return[2]}}))}))})()}))};l_uninit=function(){$("#edrawings-face-normal-button").addClass("edrawings-inactive");_this.unregisterButtonForClickEffect("edrawings-face-normal-button")}};return eDwUI}();exports.eDwUI=eDwUI;var UIEventHandlers=function(_super){__extends(UIEventHandlers,_super);function UIEventHandlers(iUI,iViewerHTMLID,iViewerHTMLCanvasID){var _this=_super.call(this,iViewerHTMLID,iViewerHTMLCanvasID)||this;_this.mUI=iUI;return _this}UIEventHandlers.prototype.addHTMLEventHandlers=function(iViewerFeatOpts){var _this=this;_super.prototype.addHTMLEventHandlers.call(this,iViewerFeatOpts);$("#edrawings-viewer").on("click.edw",".edrawings-tool-button",(function(iEvent){_this.onClick(iEvent,".edrawings-tool-button")}));$("#edrawings-viewer").on("click.edw",".edrawings-hud-button",(function(iEvent){_this.onClick(iEvent,".edrawings-hud-button",".edrawings-submenu")}));this.mUIHTMLEventMgr.addEventHandler("window","beforeunload",(function(iEvent){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){this.mUI.unregister();return[2]}))}))}));this.mUIHTMLEventMgr.addEventHandler("window","Timeout",(function(iEvent){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){this.mUI.unregister();return[2]}))}))}));$(".edrawings-menu-close").on("click.edw",(function(iEvent){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.deactivateActiveButton(".edrawings-tool-button")];case 1:_a.sent();return[2]}}))}))})()}));var viewerJQ=$(eDwUIUtils.getViewerElementID());viewerJQ.on("edw:ChangeViewerStyling",(function(iEvent,iStyleClassName){viewerJQ.removeClass("edrawings-viewer-regular");viewerJQ.removeClass("edrawings-viewer-timeout");if(iStyleClassName)viewerJQ.addClass(iStyleClassName)}));viewerJQ.on("edw:HidePanels",(function(iEvent,iSkipPanelsWithClass){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.mUI.hideAllOtherPanels(iSkipPanelsWithClass)];case 1:_a.sent();return[2]}}))}))})()}));viewerJQ.on("edw:ReInitViewer",(function(iEvent,iViewerFeatOpts){_this.mUI.unregister();_this.mUI.initUIEvents(iViewerFeatOpts)}))};UIEventHandlers.prototype.removeHTMLEventHandlers=function(){_super.prototype.removeHTMLEventHandlers.call(this);$(".edrawings-menu-close").off("click.edw");$("#edrawings-viewer").off("click.edw",".edrawings-tool-button");$("#edrawings-viewer").off("click.edw",".edrawings-hud-button");var viewerJQ=$(eDwUIUtils.getViewerElementID());viewerJQ.off("edw:ChangeViewerStyling");viewerJQ.off("edw:HidePanels");viewerJQ.off("edw:ReInitViewer")};UIEventHandlers.doModelDataUnloadActions=function(iViewer){eDwUIBaseEventHandlers.doModelDataUnloadActions(iViewer)};UIEventHandlers.prototype.onInit=function(iViewer){var viewerFeatureOpts=iViewer.ViewerFeatureOpts;var model=iViewer.getModel();var isDrawing=model.isDrawing();eDwUIUtils.hide("#edrawings-button-reset",false);eDwUIUtils.hide("#edrawings-button-shaded",isDrawing);eDwUIUtils.hide("#edrawings-button-view-settings",isDrawing);eDwUIUtils.hide("#edrawings-button-animate",isDrawing);eDwUIUtils.hide("#edrawings-button-section",isDrawing);eDwUIUtils.hide("#edrawings-button-view",isDrawing);eDwUIUtils.hide("#edrawings-button-debug",!viewerFeatureOpts.Debug);eDwUIUtils.hide("#edrawings-button-tables-control",isDrawing||iViewer.TableMgr.numTables()===0);eDwUIUtils.hide("#edrawings-button-sheet-tree",!isDrawing);eDwUIUtils.hide("#edrawings-button-layer-control",!isDrawing);eDwUIUtils.hide(".edrawings-icon-set.center",isDrawing);this.removeHTMLEventHandlers()};UIEventHandlers.prototype.onInitFullUI=function(iViewer){_super.prototype.onInitFullUI.call(this,iViewer);this.addHTMLEventHandlers(iViewer.ViewerFeatureOpts);this.mUI.init(iViewer);eDwUIUtils.hide("#WaitBanner",true)};UIEventHandlers.prototype.onSelect=function(iViewer,iSelObjs){_super.prototype.onSelect.call(this,iViewer,iSelObjs);if(l_init)l_init()};UIEventHandlers.prototype.onUnselect=function(iViewer,iSelObjs){_super.prototype.onUnselect.call(this,iViewer,iSelObjs);if(l_uninit)l_uninit()};UIEventHandlers.prototype.onTimeout=function(iViewer){eDwUIUtils.hide("#TimeoutBanner",false);$(eDwUIUtils.getViewerElementID()).trigger("edw:ChangeViewerStyling","edrawings-viewer-timeout")};UIEventHandlers.prototype.onStartAnimation=function(iViewer){var eDwViewer=iViewer;$("#edrawings-canvas").on("click.edw",(function(){eDwViewer.ViewMgr.stop()}));var animateBtnJQ=$("#edrawings-button-animate");animateBtnJQ.removeClass("edrawings-animate-play-icon");animateBtnJQ.addClass("edrawings-animate-pause-icon")};UIEventHandlers.prototype.onStopAnimation=function(iViewer){var animateBtnJQ=$("#edrawings-button-animate");animateBtnJQ.addClass("edrawings-animate-play-icon");animateBtnJQ.removeClass("edrawings-animate-pause-icon")};UIEventHandlers.prototype.onAmbientOcclusionChange=function(iViewer,iAmbientOcclusionOn){var ambientOccButton=$("#edrawings-button-view-ambient-occlusion");if(iAmbientOcclusionOn){if(!ambientOccButton.hasClass("state-on-button")){ambientOccButton.addClass("state-on-button")}}else{if(ambientOccButton.hasClass("state-on-button")){ambientOccButton.removeClass("state-on-button")}}};UIEventHandlers.prototype.onProjectionModeChange=function(iViewer,iPerspectiveOn){var perspectiveButton=$("#edrawings-button-view-perspective");if(iPerspectiveOn){if(!perspectiveButton.hasClass("state-on-button")){perspectiveButton.addClass("state-on-button")}}else{if(perspectiveButton.hasClass("state-on-button")){perspectiveButton.removeClass("state-on-button")}}};UIEventHandlers.prototype.onDrawModeChange=function(iViewer,iDrawMode){function setActive(iButtonID,iIsActive){if(iIsActive&&!$(iButtonID).hasClass("state-on-button")){$(iButtonID).addClass("state-on-button")}else if(!iIsActive&&$(iButtonID).hasClass("state-on-button")){$(iButtonID).removeClass("state-on-button")}}function setActiveInGroup(iButtonID){setActive("#edrawings-button-shaded-full",false);setActive("#edrawings-button-shaded-noedges",false);setActive("#edrawings-button-shaded-wireframe",false);setActive("#edrawings-button-shaded-hlrr",false);setActive("#edrawings-button-shaded-hlrv",false);setActive(iButtonID,true)}switch(iDrawMode){case"ShadedWithEdges":setActiveInGroup("#edrawings-button-shaded-full");break;case"Shaded":setActiveInGroup("#edrawings-button-shaded-noedges");break;case"HiddenLinesRemoved":setActiveInGroup("#edrawings-button-shaded-hlrr");break;case"HiddenLinesVisible":setActiveInGroup("#edrawings-button-shaded-hlrv");break;case"Wireframe":setActiveInGroup("#edrawings-button-shaded-wireframe");break;default:throw new Error("Unknown draw mode in UI:"+iDrawMode)}};UIEventHandlers.prototype.onClick=function(iEvent,iButtonCSSClassName,iPanelCSSClassName){var _this=this;if(iPanelCSSClassName===void 0){iPanelCSSClassName=""}(function(){return __awaiter(_this,void 0,void 0,(function(){var targetJQ,buttonClickedID,deactivatedButtonID;return __generator(this,(function(_a){switch(_a.label){case 0:targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);buttonClickedID=targetJQ.closest(iButtonCSSClassName).attr("id");return[4,this.deactivateActiveButton(iButtonCSSClassName,iPanelCSSClassName)];case 1:deactivatedButtonID=_a.sent();if(deactivatedButtonID===buttonClickedID)return[2];this.handleClick("#"+buttonClickedID,true);return[2]}}))}))})()};UIEventHandlers.prototype.deactivateActiveButton=function(iButtonCSSClassName,iPanelCSSClassName){if(iPanelCSSClassName===void 0){iPanelCSSClassName=""}return __awaiter(this,void 0,void 0,(function(){var activeButtonID,activeButtonJQ;return __generator(this,(function(_a){switch(_a.label){case 0:activeButtonID="";activeButtonJQ=$(iButtonCSSClassName+".active-button");return[4,this.mUI.hideAllOtherPanels(iPanelCSSClassName)];case 1:_a.sent();if(activeButtonJQ.length){activeButtonID=activeButtonJQ[0].id;this.handleClick("#"+activeButtonID,false)}return[2,activeButtonID]}}))}))};UIEventHandlers.prototype.handleClick=function(iButtonID,iActivate){eDwUIUtils.scrollToTarget($(iButtonID));if(!this.mUI.onClick(iButtonID,iActivate)){var pluginMgr=eDwUIPluginMgr.get();pluginMgr.onClick(iButtonID,iActivate)}};return UIEventHandlers}(eDwUIBaseEventHandlers);var c_fullScreenChange="fullscreenchange.edw MSFullscreenChange.edw"+" webkitfullscreenchange.edw";var c_restoreClass="edrawings-button-fs-restore";var c_canvasID="edrawings-canvas";var c_debugGroupName="Debug";var l_fullScreenBtnJS;var l_init;var l_uninit;function l_isFullScreen(){if(!l_fullScreenBtnJS)l_fullScreenBtnJS=$("#edrawings-button-fs");return l_fullScreenBtnJS.hasClass(c_restoreClass)}}));define("eDwUIBaseEventHandlers",["require","exports","eDwEventMgr","eDwUIHTMLEventMgr","eDwCommandMgr","eDwChangeModelViewCmd","eDwCompositeCmd","eDwSetLayerVisibilityCmd","eDwUIPluginMgr","eDwEvents","eDwUIUtils","eDwUIShortcutMenu","utils"],(function(require,exports,eDwEventMgr,eDwUIHTMLEventMgr,eDwCommandMgr,eDwChangeModelViewCmd,eDwCompositeCmd,eDwSetLayerVisibilityCmd,eDwUIPluginMgr,eDwEvents,eDwUIUtils,eDwUIShortcutMenu_2,utils){"use strict";var eDwUIBaseEventHandlers=function(){function eDwUIBaseEventHandlers(iViewerHTMLID,iViewerHTMLCanvasID){this.mViewerHTMLID=iViewerHTMLID;this.mViewerHTMLCanvasID=iViewerHTMLCanvasID;this.mUIHTMLEventMgr=new eDwUIHTMLEventMgr}eDwUIBaseEventHandlers.prototype.addHTMLEventHandlers=function(iViewerFeatOpts){var _this=this;this.mViewerFeatureOpts=iViewerFeatOpts;var eventMgrHTML=this.mUIHTMLEventMgr;eventMgrHTML.addEventHandler("window","resize",(function(iEvent){_this.onResize(iEvent,_this.mViewer)}));eDwEventMgr.get().addEventHandlerFunc(eDwEvents.ResetSceneEvent,l_onResize);eDwUIUtils.addSubTreeArrowEventHandler(eventMgrHTML,"#edrawings-sheet-tree-menu");eventMgrHTML.addDelegatedEventHandler("#edrawings-sheet-tree-menu .edrawings-submenu-list-item","dblclick",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.scrollToTarget(targetJQ);if(targetJQ.hasClass("edrawings-root")){return}var selObjIDHC=eDwUIUtils.getIDHC(targetJQ);if(isNaN(selObjIDHC)||selObjIDHC<0){return}(function(){return __awaiter(_this,void 0,void 0,(function(){var cmdMgr,zoomToViewCmd,targetModelView,model,modelHC,modelViews,_i,modelViews_4,modelView,configIDHC,configChildren,activeModelView,changeModelViewCmd;return __generator(this,(function(_a){switch(_a.label){case 0:cmdMgr=eDwCommandMgr.get();zoomToViewCmd=new eDwCompositeCmd(this.mViewer);zoomToViewCmd.initCmdActionImplementation();return[4,cmdMgr.add(zoomToViewCmd)];case 1:_a.sent();targetModelView=null;model=this.mViewer.getModel();modelHC=model.getHCModel();modelViews=model.getModelViews();for(_i=0,modelViews_4=modelViews;_i-1){console.excludeDebugLogCategories.slice(pos,1)}}}));var selectorName="#edrawings-debug-menu .edrawings-submenu-list-item";eventMgrHTML.addDelegatedEventHandler(selectorName,"click",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.scrollToTarget(targetJQ);var id=eDwUIUtils.getIDHC(targetJQ);if(isNaN(id))return;$(selectorName).removeClass("edrawings-list-selected");$(targetJQ).addClass("edrawings-list-selected");_this.mViewer.SelectionMgr.selectByID(id)}));eventMgrHTML.addDelegatedEventHandler("#edrawings-debug-menu .edrawings-submenu-list-item","dblclick",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.scrollToTarget(targetJQ);var id=eDwUIUtils.getIDHC(targetJQ);if(isNaN(id))return;_this.onLeftDoubleClick(_this.mViewer)}));eventMgrHTML.addEventHandler("#edrawings-debug-menu .edrawings-menu-search-cancel","click",(function(iEvent){$("#edrawings-debug-menu "+".edrawings-menu-search-input").val("");var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.searchPanelList(_this.mViewer,targetJQ)}));eventMgrHTML.addEventHandler("#edrawings-debug-menu .edrawings-menu-search-input","keyup",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.searchPanelList(_this.mViewer,targetJQ)}));eventMgrHTML.addDelegatedEventHandler("#edrawings-layer-control-menu .item-layer-checkbox","click",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);var layerName=eDwUIUtils.getSpanText(targetJQ.next("span.item-tree-text"));var isVisible=targetJQ.prop("checked");_this.setOneLayerVisibility(layerName,isVisible)}));eventMgrHTML.addDelegatedEventHandler("#edrawings-layer-control-menu .layer-all","click",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);var isVisible=targetJQ.prop("checked");_this.setAllLayerVisibility(isVisible)}));eventMgrHTML.addEventHandler("#edrawings-filename-block","mouseover",(function(iEvent){var filenameJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);if(filenameJQ.length===1&&filenameJQ[0].scrollWidth>filenameJQ.width()){var mouseEvent=iEvent;l_positionTicker(mouseEvent,filenameJQ,$("#edrawings-filename-text").text())}}));eventMgrHTML.addEventHandler("#edrawings-filename-block","mouseout",(function(iEvent){l_hideTicker()}));eventMgrHTML.addDelegatedEventHandler("document .edrawings-submenu-list-item","mouseover",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);var itemTreeTextJQ=targetJQ.find(".item-tree-text");var edrawingsSubmenuListJQ=targetJQ.closest(".edrawings-submenu-list");if(edrawingsSubmenuListJQ.length===1&&itemTreeTextJQ.length===1&&itemTreeTextJQ[0].scrollWidth>itemTreeTextJQ.width()){var mouseEvent=iEvent;l_positionTicker(mouseEvent,itemTreeTextJQ,itemTreeTextJQ.text())}}));eventMgrHTML.addDelegatedEventHandler("document .edrawings-submenu-list-item","mouseout",(function(iEvent){l_hideTicker()}));eventMgrHTML.addEventHandler("#edrawings-hud-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-left)","click",(function(iEvent){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_scrollUIBar($("#edrawings-hud-bar .edrawings-hud-bar-content"),".edrawings-hud-button",".edrawings-hud-menu",-c_hudBarIconWidth)];case 1:_a.sent();return[2]}}))}))})()}));eventMgrHTML.addEventHandler("#edrawings-hud-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-right)","click",(function(iEvent){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_scrollUIBar($("#edrawings-hud-bar .edrawings-hud-bar-content"),".edrawings-hud-button",".edrawings-hud-menu",c_hudBarIconWidth)];case 1:_a.sent();return[2]}}))}))})()}));eDwUIUtils.enableScrollOnTouch(eventMgrHTML,"#edrawings-hud-bar .edrawings-hud-bar-content","#edrawings-hud-bar",(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.deactivateUI(".edrawings-hud-button",".edrawings-hud-menu")];case 1:_a.sent();return[2]}}))}))}));eventMgrHTML.addEventHandler("#edrawings-left-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-up)","click",(function(iEvent){var barJQ=$("#edrawings-left-bar");var contentJQ=barJQ.find(".edrawings-tool-bar-content");(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_scrollUIBar(contentJQ,".edrawings-tool-button",".edrawings-submenu",-c_toolBarIconWidth,barJQ)];case 1:_a.sent();return[2]}}))}))})()}));eventMgrHTML.addEventHandler("#edrawings-left-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-down)","click",(function(iEvent){var barJQ=$("#edrawings-left-bar");var contentJQ=barJQ.find(".edrawings-tool-bar-content");(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_scrollUIBar(contentJQ,".edrawings-tool-button",".edrawings-submenu",c_toolBarIconWidth,barJQ)];case 1:_a.sent();return[2]}}))}))})()}));eDwUIUtils.enableScrollOnTouch(eventMgrHTML,"#edrawings-left-bar .edrawings-tool-bar-content","#edrawings-left-bar",(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.deactivateUI(".edrawings-tool-button",".edrawings-submenu")];case 1:_a.sent();return[2]}}))}))}))};eDwUIBaseEventHandlers.prototype.addDefaultHTMLPanelCloseEventHandlers=function(){if(this.mViewerFeatureOpts.Debug){eDwUIUtils.addCloseEventHandler("#edrawings-debug-menu",this.mUIHTMLEventMgr)}eDwUIUtils.addCloseEventHandler("#edrawings-sheet-tree-menu",this.mUIHTMLEventMgr);eDwUIUtils.addCloseEventHandler("#edrawings-layer-control-menu",this.mUIHTMLEventMgr)};eDwUIBaseEventHandlers.doModelDataLoadCompleteActions=function(ioEventHandlerObj,iViewer){ioEventHandlerObj.mViewer=iViewer;l_loadUIPlugins(iViewer);var handlerObj=ioEventHandlerObj;var eventMgr=eDwEventMgr.get();eventMgr.addEventHandlerObj(eDwEvents.InitEvent,handlerObj,"onInit");eventMgr.addEventHandlerObj(eDwEvents.InitFullUIEvent,handlerObj,"onInitFullUI");eventMgr.addEventHandlerObj(eDwEvents.SelectEvent,handlerObj,"onSelect");eventMgr.addEventHandlerObj(eDwEvents.UnselectEvent,handlerObj,"onUnselect");eventMgr.addEventHandlerObj(eDwEvents.StartAnimationEvent,handlerObj,"onStartAnimation");eventMgr.addEventHandlerObj(eDwEvents.StopAnimationEvent,handlerObj,"onStopAnimation");eventMgr.addEventHandlerObj(eDwEvents.LeftDoubleClickEvent,handlerObj,"onLeftDoubleClick");eventMgr.addEventHandlerObj(eDwEvents.TimeoutEvent,handlerObj,"onTimeout");eventMgr.addEventHandlerObj(eDwEvents.DrawModeChangeEvent,handlerObj,"onDrawModeChange");eventMgr.addEventHandlerObj(eDwEvents.ProjModeChangeEvent,handlerObj,"onProjectionModeChange");eventMgr.addEventHandlerObj(eDwEvents.NodeAttribChangeEvent,handlerObj,"onNodeAttribChanged");eventMgr.addEventHandlerObj(eDwEvents.ResetSceneEvent,handlerObj,"onResetScene");eventMgr.addEventHandlerObj(eDwEvents.AmbientOcclChangeEvent,handlerObj,"onAmbientOcclusionChange");eventMgr.addEventHandlerObj(eDwEvents.DoneEvent,handlerObj,"onDone");eventMgr.addEventHandlerObj(eDwEvents.ModelViewChangeEvent,handlerObj,"onModelViewChange")};eDwUIBaseEventHandlers.prototype.removeHTMLEventHandlers=function(){eDwUIUtils.disableScrollOnTouch(this.mUIHTMLEventMgr,"#edrawings-hud-bar .edrawings-hud-bar-content");eDwUIUtils.disableScrollOnTouch(this.mUIHTMLEventMgr,"#edrawings-left-bar .edrawings-tool-bar-content");this.mUIHTMLEventMgr.removeAllEventHandlers();eDwUIShortcutMenu_2.eDwUIShortcutMenu.destroy()};eDwUIBaseEventHandlers.doModelDataUnloadActions=function(iViewer){l_unloadUIPlugins();if(iViewer)iViewer.unregister();eDwEventMgr.get().removeAllEventHandlers()};eDwUIBaseEventHandlers.prototype.onInit=function(iViewer){this.mViewer=iViewer};eDwUIBaseEventHandlers.prototype.onInitFullUI=function(iViewer){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.updateUI(iViewer,iViewer.getModel().getActiveModelView(),true)];case 1:_a.sent();return[2]}}))}))})()};eDwUIBaseEventHandlers.prototype.onDone=function(iViewer){iViewer.destroy()};eDwUIBaseEventHandlers.prototype.onSelect=function(iViewer,iSelObjs){this.handleSelectionChange(iViewer,iSelObjs,true)};eDwUIBaseEventHandlers.prototype.onUnselect=function(iViewer,iSelObjs){this.handleSelectionChange(iViewer,iSelObjs,false)};eDwUIBaseEventHandlers.prototype.onLeftDoubleClick=function(iViewer){eDwUIUtils.zoomToFit(iViewer);eDwUIShortcutMenu_2.eDwUIShortcutMenu.hide()};eDwUIBaseEventHandlers.prototype.onModelViewChange=function(iViewer,iNewModelView,iIsAssembly){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.updateUI(iViewer,iNewModelView)];case 1:_a.sent();return[2]}}))}))})()};eDwUIBaseEventHandlers.prototype.onNodeAttribChanged=function(iViewer,iHierNodesAndAttribs){if(iViewer.ViewerFeatureOpts.Debug){for(var _i=0,iHierNodesAndAttribs_3=iHierNodesAndAttribs;_i1){hudBarJQ.offset({left:Math.ceil(filenameBlockRight),top:hudBarOffset.top});l_resizeTopBar()}else if(hudBarContentJQ[0].scrollWidth===0||hudBarContentJQ.width()>=hudBarContentJQ[0].scrollWidth){topBarJQ.removeClass("edrawings-collided-hud-bar");hudBarJQ.removeClass("edrawings-collided");hudBarJQ.css({left:""})}}else{if(filenameBlockOffset.left!==hudBarOffset.left&&filenameBlockRight>hudBarOffset.left){hudBarJQ.offset({left:Math.ceil(filenameBlockRight),top:hudBarOffset.top});topBarJQ.addClass("edrawings-collided-hud-bar");hudBarJQ.addClass("edrawings-collided")}}eDwUIUtils.adjustScrollArrows(hudBarContentJQ[0].scrollLeft,hudBarContentJQ[0].scrollWidth,hudBarContentJQ.width(),true,leftButtonWrapperJQ,rightButtonWrapperJQ,hudBarJQ);if(topBarJQ.hasClass("edrawings-collided-hud-bar")){if(hudBarContentJQ.innerWidth()c_filenameBlockThresholdWidth){if(topBarJQ.hasClass("edrawings-out-of-view")){topBarJQ.removeClass("edrawings-out-of-view")}}else{topBarJQ.addClass("edrawings-out-of-view")}}else{if(filenameBlockJQ[0].scrollWidth-filenameBlockInnerWidth>1){if(filenameBlockJQ.width()0&&toolBarContentJQ[0].scrollHeight<=leftBarContentJQ.innerHeight()){leftBarJQ.removeClass("edrawings-collided")}}else{if(leftBarContentJQ[0].scrollHeight>0&&leftBarContentJQ[0].scrollHeight>Math.round(leftBarContentJQ.innerHeight())){leftBarJQ.addClass("edrawings-collided")}}eDwUIUtils.adjustScrollArrows(toolBarContentJQ[0].scrollTop,toolBarContentJQ[0].scrollHeight,toolBarContentJQ.height(),false,upButtonWrapperJQ,downButtonWrapperJQ,leftBarJQ);if(leftBarJQ.hasClass("edrawings-collided")){if(toolBarContentJQ.innerHeight()=window.innerWidth){var diff=iMouseEvent.clientX+iItemJQ[0].scrollWidth+scrollWidthPadding-window.innerWidth;if(iMouseEvent.clientX>=diff){tickerLeft=iMouseEvent.clientX-diff;tickerWidth=iItemJQ[0].scrollWidth+scrollWidthPadding}else{tickerLeft=0;tickerAnimation=true;if(window.innerWidth>tickerMinWidth){tickerWidth=window.innerWidth}else{tickerWidth=tickerMinWidth}var threeTimes=[iText,iText,iText].join(" ");tickerJQ.text(threeTimes)}}if(itemOffset.top-tickerMinHeight<=0){if(itemOffset.top+iItemJQ[0].clientHeight+tickerMinHeight<=window.innerHeight){tickerTop=itemOffset.top+iItemJQ[0].clientHeight}else{var diff=iMouseEvent.clientY+tickerMinHeight-window.innerHeight;if(iMouseEvent.clientY>diff){tickerTop=iMouseEvent.clientY-diff}else{tickerTop=0}}}var tickerwrapJQ=tickerJQ.closest(".edrawings-ticker-wrapper");tickerwrapJQ.offset({left:tickerLeft,top:tickerTop}).css("width",tickerWidth).removeClass("edrawings-ui-hide");if(tickerAnimation){tickerwrapJQ.addClass("edrawings-animation")}}function l_hideTicker(){var tickerwrapJQ=$(".edrawings-ticker-wrapper");if(!tickerwrapJQ.hasClass("edrawings-ui-hide")){var tickerJQ=tickerwrapJQ.find(".edrawings-ticker");tickerJQ.text("");tickerwrapJQ.addClass("edrawings-ui-hide").removeClass("edrawings-animation").css("left","").css("top","").css("width","")}}function l_positionMenuPanelCollapseButton(){var activeButtonsJQ=$(".edrawings-tool-button.active-button");if(activeButtonsJQ.length){if(eDwUIUtils.scrollToTarget(activeButtonsJQ)){l_resizeToolBar()}var collapsedPanelsJQ=$(".edrawings-submenu.active.edrawings-collapsed");if(collapsedPanelsJQ.length){var attrStyle=collapsedPanelsJQ.find(".edrawings-menu-panel-arrow-collapse").attr("style");if(!!attrStyle){eDwUIUtils.positionMenuPanelArrowCollapseButton(collapsedPanelsJQ,activeButtonsJQ)}}}}function l_fixMenuPanelInwardToolbar(){var panelsJQ=$(".edrawings-submenu.active:not(.edrawings-collapsed), .edrawings-hud-menu.active");panelsJQ.each((function(iIndex,iPanel){var panelJQ=$(iPanel);eDwUIUtils.fixMenuPanelInwardToolbar(panelJQ)}))}function l_scrollUIBar(iContentJQ,iDeactivateButtonClass,iDeactivateMenuClass,iScrollDist,iBarJQ){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iContentJQ&&iContentJQ.length>0))return[3,2];return[4,eDwUIUtils.deactivateUI(iDeactivateButtonClass,iDeactivateMenuClass)];case 1:_a.sent();eDwUIUtils.executeScrolling(iScrollDist,0,iContentJQ,iBarJQ);_a.label=2;case 2:return[2]}}))}))}return eDwUIBaseEventHandlers}));define("eDwUIBasePlugin",["require","exports","eDwUIHTMLEventMgr","eDwEventMgr","eDwEvents","eDwUIShortcutMenu","eDwUIUtils","utils"],(function(require,exports,eDwUIHTMLEventMgr,eDwEventMgr,eDwEvents_6,eDwUIShortcutMenu_3,eDwUIUtils,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.eDwUIBasePlugin=void 0;var eDwUIBasePlugin=function(){function eDwUIBasePlugin(iPluginGroupName,iViewer,iButtonInfo,iViewerFeatOpts){var _this=this;if(iViewer===void 0){iViewer=null}if(iButtonInfo===void 0){iButtonInfo=null}if(iViewerFeatOpts===void 0){iViewerFeatOpts=null}console.debugLog("UIPlugin","Constructed "+iPluginGroupName+" plugin.");this.mPluginGroupName=iPluginGroupName;this.mViewer=iViewer;this.mViewerFeatOpts=iViewerFeatOpts||iViewer&&iViewer.ViewerFeatureOpts;this.mUIHTMLEventMgr=new eDwUIHTMLEventMgr;this.mPluginDependencies=[];this.mPluginButtonInfo=iButtonInfo;if(iViewer){eDwUIShortcutMenu_3.eDwUIShortcutMenu.get().setPluginCheck(iPluginGroupName,(function(iPluginName){return _this.check(iPluginName)}))}}eDwUIBasePlugin.prototype.init=function(iPanelsToLoad){return __awaiter(this,void 0,void 0,(function(){var promises,_i,iPanelsToLoad_1,panelToLoad;return __generator(this,(function(_a){switch(_a.label){case 0:this.addAppObjEvent(eDwEvents_6.ActivateUIOpEvent,"onActivate",true);this.addAppObjEvent(eDwEvents_6.DeactivateUIOpEvent,"onDeactivate",true);if(!iPanelsToLoad)return[3,2];promises=[];for(_i=0,iPanelsToLoad_1=iPanelsToLoad;_i-1?true:false};eDwUIBasePlugin.prototype.addEventHandlers=function(){};eDwUIBasePlugin.prototype.removeEventHandlers=function(){this.mUIHTMLEventMgr.removeAllEventHandlers()};eDwUIBasePlugin.prototype.onActivate=function(iButtonJQ){return this.isButtonForThisPlugin(iButtonJQ)};eDwUIBasePlugin.prototype.onDeactivate=function(iButtonJQ){return this.isButtonForThisPlugin(iButtonJQ)};eDwUIBasePlugin.prototype.addAppObjEvent=function(iAppEvent,iEventObjMethod,iAdd){var eventMgr=eDwEventMgr.get();var eventMgrMethod=iAdd?"addEventHandlerObj":"removeEventHandlerObj";eventMgr[eventMgrMethod](iAppEvent,this,iEventObjMethod)};eDwUIBasePlugin.prototype.loadPanel=function(iPanelID,iHTMLFileName){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.loadPanel(iPanelID,iHTMLFileName)];case 1:return[2,_a.sent()]}}))}))};Object.defineProperty(eDwUIBasePlugin.prototype,"PluginGroupName",{get:function(){return this.mPluginGroupName},enumerable:false,configurable:true});Object.defineProperty(eDwUIBasePlugin.prototype,"PluginButtonID",{get:function(){return this.mPluginButtonInfo?this.mPluginButtonInfo.ID:""},enumerable:false,configurable:true});Object.defineProperty(eDwUIBasePlugin.prototype,"Dependencies",{get:function(){return this.mPluginDependencies},enumerable:false,configurable:true});return eDwUIBasePlugin}();exports.eDwUIBasePlugin=eDwUIBasePlugin}));define("eDwUIDebugHTMLGenerator",["require","exports","eDwUIHTMLGenerator","eDwTypes"],(function(require,exports,eDwUIHTMLGenerator_1,eDwTypes_15){"use strict";var _a;var eDwUIDebugHTMLGenerator=function(_super){__extends(eDwUIDebugHTMLGenerator,_super);function eDwUIDebugHTMLGenerator(iViewer,iPanelUIID){var _this=_super.call(this,iViewer,iPanelUIID)||this;_this.mHCModel=iViewer.getModel().getHCModel();return _this}eDwUIDebugHTMLGenerator.prototype.getNodeFromID=function(iNodeID){return l_getHCNode(iNodeID)};eDwUIDebugHTMLGenerator.prototype.getPostSpanHTML=function(iAdditionalClasses){return""};eDwUIDebugHTMLGenerator.prototype.forNodeGetName=function(iNode){return this.mHCModel.getNodeName(l_getHCNode(iNode))||"unknown node name"};eDwUIDebugHTMLGenerator.prototype.forNodeGetID=function(iNode){return l_getHCNode(iNode)};eDwUIDebugHTMLGenerator.prototype.forNodeGetParentID=function(iNode){return this.mHCModel.getNodeParent(l_getHCNode(iNode))||NaN};eDwUIDebugHTMLGenerator.prototype.forNodeGetChildren=function(iNode){return this.mHCModel.getNodeChildren(l_getHCNode(iNode))};eDwUIDebugHTMLGenerator.prototype.forNodeHasChildren=function(iNode){return this.forNodeGetChildren(iNode).length>0};eDwUIDebugHTMLGenerator.prototype.forNodeGetDataAttributes=function(iNode){return _super.prototype.forNodeGetDataAttributes.call(this,iNode)};eDwUIDebugHTMLGenerator.prototype.forNodeGetElementContent=function(iNode){var _this=this;var nodeIDHC=this.forNodeGetID(iNode);(function(){return __awaiter(_this,void 0,void 0,(function(){var meshIDs,numMeshIDs;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.mHCModel.getMeshIds([nodeIDHC])];case 1:meshIDs=_a.sent();numMeshIDs=meshIDs.length;console.log("Node ID: "+nodeIDHC+" Num mesh IDs: "+numMeshIDs);return[2]}}))}))})();return this.forNodeGetName(iNode)+" ID: "+nodeIDHC+" TYPE: "+c_nodeTypes[this.mHCModel.getNodeType(nodeIDHC)]+" VISIBLE: "+this.mHCModel.getNodeVisibility(nodeIDHC)};eDwUIDebugHTMLGenerator.prototype.forNodeGetDisplayStateCSSClass=function(iNode){return"edrawings-body-visible"};return eDwUIDebugHTMLGenerator}(eDwUIHTMLGenerator_1.eDwUIHTMLGenerator);var c_nodeTypes=(_a={},_a[eDwTypes_15.HC.NodeType.AssemblyNode]="Assembly",_a[eDwTypes_15.HC.NodeType.Body]="Body",_a[eDwTypes_15.HC.NodeType.BodyInstance]="Body Instance",_a[eDwTypes_15.HC.NodeType.BrepBody]="BRep Body",_a[eDwTypes_15.HC.NodeType.CadView]="CAD View",_a[eDwTypes_15.HC.NodeType.DrawingSheet]="Drawing Sheet",_a[eDwTypes_15.HC.NodeType.Part]="Part",_a[eDwTypes_15.HC.NodeType.PartInstance]="Part Instance",_a[eDwTypes_15.HC.NodeType.Pmi]="PMI",_a[eDwTypes_15.HC.NodeType.PmiBody]="PMI Body",_a[eDwTypes_15.HC.NodeType.PointsBody]="Points Body",_a[eDwTypes_15.HC.NodeType.TessBody]="Tessellation Body",_a[eDwTypes_15.HC.NodeType.Unknown]="Unknown",_a[eDwTypes_15.HC.NodeType.ViewFrame]="View Frame",_a[eDwTypes_15.HC.NodeType.WireBody]="Wire Body",_a);function l_isHCNode(iNode){return!isNaN(iNode)}function l_getHCNode(iNode){if(!l_isHCNode(iNode)){throw new Error("Not an HC node:\n"+JSON.stringify(iNode))}return iNode}return eDwUIDebugHTMLGenerator}));define("eDwUIHTMLEventMgr",["require","exports","eDwUIUtils"],(function(require,exports,eDwUIUtils){"use strict";var eDwUIHTMLEventMgr=function(){function eDwUIHTMLEventMgr(){this.mEventHandlerData={}}eDwUIHTMLEventMgr.prototype.addDelegatedEventHandler=function(iElemSelector,iEventName,iEventHandler){if(!iElemSelector||!iEventName||!iEventHandler)return false;var selectors=iElemSelector.split(" ");if(selectors.length<2)return false;var ancestorElementID=selectors.shift();return this.commonAddEventHandler(ancestorElementID,iEventName,iEventHandler,selectors.join().replace(".",""))};eDwUIHTMLEventMgr.prototype.addEventHandler=function(iElemID,iEventName,iEventHandler){if(!iElemID||!iEventName||!iEventHandler)return false;return this.commonAddEventHandler(iElemID,iEventName,iEventHandler)};eDwUIHTMLEventMgr.prototype.removeAllEventHandlers=function(){for(var eventName in this.mEventHandlerData){if(this.mEventHandlerData.hasOwnProperty(eventName)){var handlersOfEvent=this.mEventHandlerData[eventName];for(var elemID in handlersOfEvent){if(handlersOfEvent.hasOwnProperty(elemID)){this.removeEventHandlersByID(elemID,eventName,handlersOfEvent)}}delete this.mEventHandlerData[eventName]}}this.mEventHandlerData={}};eDwUIHTMLEventMgr.prototype.removeEventHandlers=function(iElemID,iEventName){var handlersRemoved=false;if(this.mEventHandlerData.hasOwnProperty(iEventName)){var handlersOfEvent=this.mEventHandlerData[iEventName];if(handlersOfEvent.hasOwnProperty(iElemID)){handlersRemoved=this.removeEventHandlersByID(iElemID,iEventName,handlersOfEvent)}}return handlersRemoved};eDwUIHTMLEventMgr.prototype.commonAddEventHandler=function(iElemID,iEventName,iEventHandler,iElemClasses){if(iElemClasses===void 0){iElemClasses=""}if(!iElemID)return false;var elements=[];if(iElemID==="window")elements.push(window);else if(iElemID==="document")elements.push(document);else elements=$(iElemID).toArray();if(!elements.length)return false;var handlersOfEvent=this.mEventHandlerData[iEventName];if(!handlersOfEvent){handlersOfEvent=this.mEventHandlerData[iEventName]={}}var elemHandlers=handlersOfEvent[iElemID];if(!elemHandlers){elemHandlers=handlersOfEvent[iElemID]={MainDispatcher:null,Handlers:[]}}if(elemHandlers.MainDispatcher){for(var _i=0,elements_1=elements;_i-1||highlight===""?"":" edrawings-list-option";var currOffset=utils.isNaN(iLeftPaddingInPX)?this.mInitialLeftPaddingInPX+"px":iLeftPaddingInPX+"px";var generatedHTML="
";generatedHTML+=this.getPreSpanHTML(iNode,additionalClasses,expanded,iIgnoreChildren);generatedHTML+=""+this.forNodeGetElementContent(iNode)+"";generatedHTML+=this.getPostSpanHTML(nonRootClass+" "+additionalClasses);generatedHTML+="
";return generatedHTML};eDwUIHTMLGenerator.prototype.generateHTML=function(iAdditionalClasses){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){return[2,""]}))}))};eDwUIHTMLGenerator.prototype.getNodeFromID=function(iNodeID){var modelViews=this.mViewer.getModel().getModelViews();for(var _i=0,modelViews_5=modelViews;_i
";return generatedHTML};eDwUIHTMLGenerator.prototype.getPostSpanHTML=function(iAdditionalClasses){return"
"};eDwUIHTMLGenerator.prototype.computeOffset=function(iLeftPaddingInPX){if(iLeftPaddingInPX===void 0){iLeftPaddingInPX=NaN}return utils.isNaN(iLeftPaddingInPX)?this.mInitialLeftPaddingInPX:iLeftPaddingInPX+this.mLeftPaddingInPX};eDwUIHTMLGenerator.prototype.forNodeGetName=function(iNode){return l_getHierarchyNode(iNode).Name};eDwUIHTMLGenerator.prototype.forNodeGetID=function(iNode){return l_getHierarchyNode(iNode).HOOPSID};eDwUIHTMLGenerator.prototype.forNodeGetParentID=function(iNode){var parentHierNode=l_getHierarchyNode(iNode).Parent;return parentHierNode?parentHierNode.HOOPSID:NaN};eDwUIHTMLGenerator.prototype.forNodeGetChildren=function(iNode){var childrenObj=l_getHierarchyNode(iNode).getChildrenAndKeys();return Object.keys(childrenObj).map((function(key){return childrenObj[key]}))};eDwUIHTMLGenerator.prototype.forNodeHasChildren=function(iNode){return this.forNodeGetChildren(iNode).length>0};eDwUIHTMLGenerator.prototype.forNodeGetDataAttributes=function(iNode){var parentNodeID=this.forNodeGetParentID(iNode);return" data-hoopsid='"+this.forNodeGetID(iNode)+"' "+(parentNodeID!==undefined?"data-hoopsparentid='"+parentNodeID+"' ":"")};eDwUIHTMLGenerator.prototype.forNodeGetElementContent=function(iNode){return this.forNodeGetName(iNode)};eDwUIHTMLGenerator.prototype.forNodeGetDisplayStateCSSClass=function(iNode){return eDwUIHTMLGenerator.getDisplayStateCSSClass(l_getHierarchyNode(iNode))};return eDwUIHTMLGenerator}();exports.eDwUIHTMLGenerator=eDwUIHTMLGenerator;function l_getHierarchyNode(iNode){if(!eDwHierarchyNode.isHierarchyNode(iNode)){throw new Error("Not a hierarchy node:\n"+JSON.stringify(iNode))}return iNode}}));define("eDwUIHierNodeVisMenuItemsPlugin",["require","exports","eDwCommandMgr","eDwSetHierNodeAttribsCmd","eDwShowOnlyCmd","eDwUIUtils","eDwEventMgr","eDwUIShortcutMenu","eDwKeyMgr","eDwEvents","eDwTypes","eDwUIBasePlugin","utils"],(function(require,exports,eDwCommandMgr,eDwSetHierNodeAttribsCmd,eDwShowOnlyCmd,eDwUIUtils,eDwEventMgr,eDwUIShortcutMenu_4,eDwKeyMgr_4,eDwEvents_7,eDwTypes_16,eDwUIBasePlugin_1,utils){"use strict";var eDwUIHierNodeVisMenuItemPlugin=function(_super){__extends(eDwUIHierNodeVisMenuItemPlugin,_super);function eDwUIHierNodeVisMenuItemPlugin(iViewer,iViewerFeatOpts){return _super.call(this,"HideShow",iViewer)||this}eDwUIHierNodeVisMenuItemPlugin.prototype.init=function(){return __awaiter(this,void 0,void 0,(function(){function isNotPartModel(iViewer){return!iViewer.getModel().isPart()}var shortcutMenu,isVisibleForASMAndDRW,isVisibleForASM,isVisibleNonRootForASMAndDRW;var _this=this;return __generator(this,(function(_a){_super.prototype.init.call(this);shortcutMenu=eDwUIShortcutMenu_4.eDwUIShortcutMenu.get();if(!shortcutMenu.isEmpty()){shortcutMenu.addMenuSeparator(this.PluginGroupName)}isVisibleForASMAndDRW=function(iViewer,iIsSelected){return iIsSelected&&isNotPartModel(iViewer)};isVisibleForASM=function(iViewer,iIsSelected){return iIsSelected&&iViewer.getModel().isAssembly()};isVisibleNonRootForASMAndDRW=function(iViewer,iIsSelected){var model=iViewer.getModel();var modelViewHierNode=model.getActiveModelView().Hierarchy;var lastSelHierNode=iViewer.SelectionMgr.getLastSelHierarchyNode();return iIsSelected&&(model.isDrawing()||model.isAssembly()&&modelViewHierNode!==lastSelHierNode.Parent)};shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-hide-show",(function(iEvent,iUIItemJQ,iArg){var selMgr=_this.mViewer.SelectionMgr;var selHierNodes=selMgr.getSelHierarchyNodes();if(selHierNodes&&selHierNodes.length){(function(){return __awaiter(_this,void 0,void 0,(function(){var attrib,selHideShowCmd;return __generator(this,(function(_a){switch(_a.label){case 0:attrib={Visible:!selHierNodes[0].getAttribs().Visible};selHideShowCmd=new eDwSetHierNodeAttribsCmd(this.mViewer,selHierNodes,attrib);return[4,eDwCommandMgr.get().run(selHideShowCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}eDwUIShortcutMenu_4.eDwUIShortcutMenu.hide()}),isVisibleForASMAndDRW);shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-transp-solid",(function(iEvent,iUIItemJQ,iArg){(function(){return __awaiter(_this,void 0,void 0,(function(){var selMgr,selHierNodes,attrib,selTransSolidCmd;return __generator(this,(function(_a){switch(_a.label){case 0:selMgr=this.mViewer.SelectionMgr;selHierNodes=selMgr.getSelHierarchyNodes();if(!(selHierNodes&&selHierNodes.length))return[3,2];attrib={Opaque:!selHierNodes[0].getAttribs().Opaque};selTransSolidCmd=new eDwSetHierNodeAttribsCmd(this.mViewer,selHierNodes,attrib);return[4,eDwCommandMgr.get().run(selTransSolidCmd,"commit")];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))})();eDwUIShortcutMenu_4.eDwUIShortcutMenu.hide()}),isVisibleForASM);shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-isolate",(function(iEvent,iUIItemJQ,iArg){(function(){return __awaiter(_this,void 0,void 0,(function(){var selMgr,showOnlyCmd;return __generator(this,(function(_a){switch(_a.label){case 0:selMgr=this.mViewer.SelectionMgr;showOnlyCmd=new eDwShowOnlyCmd(this.mViewer,selMgr.getSelHierarchyNodes());return[4,eDwCommandMgr.get().run(showOnlyCmd,"commit")];case 1:_a.sent();return[2]}}))}))})();eDwUIShortcutMenu_4.eDwUIShortcutMenu.hide()}),isVisibleNonRootForASMAndDRW);shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-show-all",(function(iEvent,iUIItemJQ,iArg){(function(){return __awaiter(_this,void 0,void 0,(function(){var showAllCmd;return __generator(this,(function(_a){switch(_a.label){case 0:showAllCmd=new eDwShowOnlyCmd(this.mViewer);return[4,eDwCommandMgr.get().run(showAllCmd,"commit")];case 1:_a.sent();return[2]}}))}))})();eDwUIShortcutMenu_4.eDwUIShortcutMenu.hide()}),isNotPartModel);this.mUIHTMLEventMgr.addDelegatedEventHandler("document .edrawings-submenu-list-item-button","click",(function(iEvent){console.debugLog("UIPlugin","HideShow menu button click");var selected=false;var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);var parentJQ=targetJQ.parent();eDwUIUtils.scrollToTarget(parentJQ);var selIDHC=eDwUIUtils.getIDHC(parentJQ);if(!isNaN(selIDHC)){var existingIdx=_this.mViewer.SelectionMgr.getSelectedNodeIDIndex(selIDHC);selected=existingIdx>-1?true:_this.mViewer.SelectionMgr.selectByID(selIDHC)}if(selected){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.fireEvent(iEvent,eDwEvents_7.RightClickEvent)];case 1:_a.sent();return[2]}}))}))})()}}));console.debugLog("UIPlugin","Added HideShow click event handler");this.mUIHTMLEventMgr.addDelegatedEventHandler("document .edrawings-submenu-list-item","mouseup",(function(iEvent){console.debugLog("UIPlugin","HideShow menu mouseup");var eventJQ=$(iEvent);var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.scrollToTarget(targetJQ);if(!targetJQ||!targetJQ.length||!eventJQ||!eventJQ.length||targetJQ.hasClass("edrawings-root")||targetJQ.hasClass("edrawings-tree-arrow")||targetJQ.hasClass("edrawings-tree-expanded")||targetJQ.hasClass("edrawings-tree-icon")){return}if(!targetJQ.hasClass("edrawings-submenu-list-item"))return;var mouseEvent=iEvent;var pressedRMB=eDwKeyMgr_4.eDwKeyMgr.isRMBPressed(mouseEvent);var selected=false;var selIDHC=eDwUIUtils.getIDHC(targetJQ);if(utils.isNumber(selIDHC)){if(!eDwKeyMgr_4.eDwKeyMgr.get().isDown("Shift")){selected=_this.mViewer.SelectionMgr.selectByID(selIDHC)}else{var selector=".edrawings-submenu-list-item"+".edrawings-list-selected:has([data-hoopsid])";var filter=".edrawings-submenu-list-item:has([data-hoopsid])";var collectionPrevJQ=targetJQ.prevUntil(selector,filter);if(collectionPrevJQ.length===0||collectionPrevJQ.last().prev(selector).length===0){collectionPrevJQ=$([])}var collectionNextJQ=targetJQ.nextUntil(selector,filter);if(collectionNextJQ.length===0||collectionNextJQ.last().next(selector).length===0){collectionNextJQ=$([])}var collectionJQ=$([]).add(collectionPrevJQ).add(targetJQ).add(collectionNextJQ);collectionJQ.each((function(iIdx,iElement){var elementJQ=$(iElement);var selIDHC=eDwUIUtils.getIDHC(elementJQ);_this.mViewer.SelectionMgr.selectByID(selIDHC)}));selected=true;iEvent.preventDefault()}}else{selected=!targetJQ.hasClass("edrawings-list-selected");targetJQ[selected?"addClass":"removeClass"]("edrawings-list-selected")}(function(){return __awaiter(_this,void 0,void 0,(function(){var eventMgr,onSelectDoRMB;var _this=this;return __generator(this,(function(_a){eventMgr=eDwEventMgr.get();onSelectDoRMB=function(iViewer){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:eventMgr.removeEventHandlerFunc(eDwEvents_7.SelectEvent,"onSelectDoRMB");return[4,this.fireEvent(iEvent,eDwEvents_7.RightClickEvent)];case 1:_a.sent();return[2]}}))}))};if(selected&&pressedRMB){eventMgr.addEventHandlerFunc(eDwEvents_7.SelectEvent,onSelectDoRMB)}return[2]}))}))})()}));console.debugLog("UIPlugin","Added HideShow mouseup event handler");return[2]}))}))};eDwUIHierNodeVisMenuItemPlugin.prototype.check=function(iPluginName){return _super.prototype.check.call(this,iPluginName)||iPluginName===undefined};eDwUIHierNodeVisMenuItemPlugin.prototype.fireEvent=function(iEvent,iAppEvent){return __awaiter(this,void 0,void 0,(function(){var screenPos;return __generator(this,(function(_a){switch(_a.label){case 0:if(!iEvent||!iAppEvent||!this.mViewer)return[2];if(!(iAppEvent===eDwEvents_7.RightClickEvent))return[3,3];if(!utils.isOfType(iEvent,"clientX"))return[3,2];screenPos=new eDwTypes_16.HC.Point2(iEvent.clientX,iEvent.clientY);return[4,eDwEventMgr.get().fireEvent(iAppEvent,this.mViewer,screenPos,$(iEvent.target),this.PluginGroupName)];case 1:_a.sent();_a.label=2;case 2:return[3,5];case 3:if(!(iAppEvent===eDwEvents_7.UnselectEvent))return[3,5];return[4,eDwEventMgr.get().fireEvent(iAppEvent,this.mViewer,[])];case 4:_a.sent();_a.label=5;case 5:return[2]}}))}))};return eDwUIHierNodeVisMenuItemPlugin}(eDwUIBasePlugin_1.eDwUIBasePlugin);return eDwUIHierNodeVisMenuItemPlugin}));define("eDwUILayerHTMLGenerator",["require","exports","eDwUIHTMLGenerator","eDwLayer","utils"],(function(require,exports,eDwUIHTMLGenerator_2,eDwLayer,utils){"use strict";var eDwUILayerHTMLGenerator=function(_super){__extends(eDwUILayerHTMLGenerator,_super);function eDwUILayerHTMLGenerator(iViewer,iPanelUIID){return _super.call(this,iViewer,iPanelUIID)||this}eDwUILayerHTMLGenerator.prototype.generateHTML=function(iAdditionalClasses){return __awaiter(this,void 0,void 0,(function(){var generatedHTML,layers,_i,layers_2,layer;return __generator(this,(function(_a){generatedHTML="";layers=this.mViewer.getModel().getLayers();if(layers.length){generatedHTML+="
"+" "+""+"Name
"+"
"}for(_i=0,layers_2=layers;_i"};eDwUILayerHTMLGenerator.prototype.getPostSpanHTML=function(iAdditionalClasses){return""};eDwUILayerHTMLGenerator.prototype.shouldIncludeNode=function(iLayer){return true};eDwUILayerHTMLGenerator.prototype.forNodeGetName=function(iNode){return l_getLayer(iNode).getName()};eDwUILayerHTMLGenerator.prototype.forNodeGetID=function(iNode){return l_getLayer(iNode).getIDHC()};eDwUILayerHTMLGenerator.prototype.forNodeGetParentID=function(iNode){return NaN};eDwUILayerHTMLGenerator.prototype.forNodeGetChildren=function(iNode){var childNodes=[];if(this.mViewer.ViewerFeatureOpts.Debug){childNodes=l_getLayer(iNode).getNodeIDsHC()}return childNodes};eDwUILayerHTMLGenerator.prototype.forNodeGetDataAttributes=function(iNode){return""};eDwUILayerHTMLGenerator.prototype.forNodeGetDisplayStateCSSClass=function(iNode){return""};return eDwUILayerHTMLGenerator}(eDwUIHTMLGenerator_2.eDwUIHTMLGenerator);function l_getLayer(iNode){if(!utils.isInstanceOf(iNode,eDwLayer)){throw new Error("Not a layer:\n"+JSON.stringify(iNode))}return iNode}return eDwUILayerHTMLGenerator}));define("eDwUIMessageReporter",["require","exports","eDwUIUtils","utils"],(function(require,exports,eDwUIUtils,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.showMessageInDebugPanel=exports.showMessagePanelFromCSScontent=exports.showResultPanel=exports.showServerLoadErrorPanel=void 0;function showServerLoadErrorPanel(iServerID,iModelCacheName){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_addParagraphToPanelText({},"edrawings-server-load-failure-1")];case 1:_a.sent();return[4,l_showServerError(iServerID,iModelCacheName)];case 2:_a.sent();return[2]}}))}))}exports.showServerLoadErrorPanel=showServerLoadErrorPanel;function showResultPanel(iResult){return __awaiter(this,void 0,void 0,(function(){var showButtons,_a;return __generator(this,(function(_b){switch(_b.label){case 0:showButtons=false;if(!utils.isOfType(iResult,"ServerID"))return[3,2];return[4,l_showConversionResultPanel(iResult)];case 1:showButtons=_b.sent();return[3,5];case 2:_a=iResult.ErrorCode;return[3,3];case 3:return[4,l_showPanelGeneric(iResult)];case 4:showButtons=_b.sent();return[3,5];case 5:return[2,showButtons]}}))}))}exports.showResultPanel=showResultPanel;function showMessagePanelFromCSScontent(iTextClass,iOptions){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_addParagraphToPanelText(!!iOptions?iOptions:{},iTextClass)];case 1:_a.sent();return[4,l_showMessagePanel()];case 2:_a.sent();return[2]}}))}))}exports.showMessagePanelFromCSScontent=showMessagePanelFromCSScontent;function showMessageInDebugPanel(iMsg){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_showMessagePanel(iMsg,true,true)];case 1:_a.sent();return[2]}}))}))}exports.showMessageInDebugPanel=showMessageInDebugPanel;function l_showConversionResultPanel(iResult){return __awaiter(this,void 0,void 0,(function(){var showButtons,_a;return __generator(this,(function(_b){switch(_b.label){case 0:showButtons=l_shouldShowButtons();_a=iResult.ErrorCode;switch(_a){case"URLNotAccessible":return[3,1];case"UnsupportedFileType":return[3,4];case"UnknownLicenseError":return[3,7];case"LicenseVersionMismatch":return[3,10];case"NoMoreLicenses":return[3,13];case"CannotConnectToLicenseServer":return[3,16];case"LicenseExpired":return[3,19];case"UnknownError":return[3,22]}return[3,25];case 1:return[4,l_addParagraphToPanelText({"data-file-url":iResult.ErrorData[0]},"edrawings-server-url-inaccessible")];case 2:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-error-title edrawings-dialog-no-close")];case 3:_b.sent();return[3,29];case 4:return[4,l_addParagraphToPanelText({"data-file":iResult.FileName},"edrawings-server-unsupported-file-type")];case 5:_b.sent();return[4,l_showMessagePanel("",true,showButtons,"edrawings-error-title edrawings-dialog-no-close")];case 6:_b.sent();return[3,29];case 7:return[4,l_addParagraphToPanelText({},"edrawings-unknown-license-error")];case 8:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 9:_b.sent();return[3,29];case 10:return[4,l_addParagraphToPanelText({},"edrawings-license-version-mismatch-error")];case 11:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 12:_b.sent();return[3,29];case 13:return[4,l_addParagraphToPanelText({},"edrawings-no-licenses-error")];case 14:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 15:_b.sent();return[3,29];case 16:return[4,l_addParagraphToPanelText({},"edrawings-license-server-connection-error")];case 17:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 18:_b.sent();return[3,29];case 19:return[4,l_addParagraphToPanelText({},"edrawings-license-expired-error")];case 20:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 21:_b.sent();return[3,29];case 22:return[4,l_addParagraphToPanelText({},"edrawings-unknown-error")];case 23:_b.sent();return[4,l_showServerError(iResult.ServerID,iResult.ModelCacheName)];case 24:_b.sent();return[3,29];case 25:if(!l_isDebug())return[3,27];return[4,l_showPanelGeneric(iResult)];case 26:_b.sent();return[3,28];case 27:showServerLoadErrorPanel(iResult.ServerID,iResult.ModelCacheName);_b.label=28;case 28:return[3,29];case 29:return[2,showButtons]}}))}))}function l_showPanelGeneric(iResult){return __awaiter(this,void 0,void 0,(function(){var _a,msg,classes,_i,_b,data;return __generator(this,(function(_c){switch(_c.label){case 0:_a=iResult.ErrorCode;switch(_a){case"AJAXFailure":return[3,1];case"IncompleteFileProcessing":return[3,4];case"ModelLoadInViewerFailed":return[3,7]}return[3,11];case 1:return[4,l_addParagraphToPanelText({},"edrawings-server-ajax-failure")];case 2:_c.sent();return[4,l_showMessagePanel("",true,false,"edrawings-error-title edrawings-dialog-no-close")];case 3:_c.sent();return[3,13];case 4:return[4,l_addParagraphToPanelText({},"edrawings-unable-process-file")];case 5:_c.sent();return[4,l_showMessagePanel("",true,true,"edrawings-error-title edrawings-dialog-no-close")];case 6:_c.sent();return[3,13];case 7:return[4,l_addParagraphToPanelText({"data-error-message":iResult.ErrorData[0]},"edrawings-viewer-load-failure")];case 8:_c.sent();return[4,l_addParagraphToPanelText({"data-model-cache-name":iResult.ErrorData[1]},"edrawings-server-load-failure-3")];case 9:_c.sent();return[4,l_showMessagePanel("",true,true,"edrawings-error-title edrawings-dialog-no-close")];case 10:_c.sent();return[3,13];case 11:msg="";classes="edrawings-dialog-no-close";switch(iResult.ErrorCode){case"Error":classes+=" edrawings-error-title";break;case"Warn":classes+=" edrawings-warn-title";break;default:classes+=" edrawings-info-title";msg+="
"+iResult.ErrorCode+"
";break}for(_i=0,_b=iResult.ErrorData;_i<_b.length;_i++){data=_b[_i];msg+="
"+data+"
"}return[4,l_showMessagePanel(msg,true,false,classes)];case 12:_c.sent();return[3,13];case 13:return[2,l_shouldShowButtons()]}}))}))}function l_addParagraphToPanelText(iOptions,iTextClass){return __awaiter(this,void 0,void 0,(function(){function getValue(iValue){return typeof iValue==="string"?"'"+iValue+"'":iValue.toString()}var msgPanelTextJQ,div,optionKeys,_i,optionKeys_1,optionKey;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_getDialogPanelTextElem()];case 1:msgPanelTextJQ=_a.sent();div="
";msgPanelTextJQ.append(div);return[2]}}))}))}function l_showMessagePanel(iMsg,iModal,iShowButtons,iDlgClasses){if(iMsg===void 0){iMsg=""}if(iModal===void 0){iModal=true}if(iShowButtons===void 0){iShowButtons=false}if(iDlgClasses===void 0){iDlgClasses="edrawings-info-title edrawings-dialog-no-close"}return __awaiter(this,void 0,void 0,(function(){var msgPanelTextJQ,opts,msgPanel,msgPanelTitleJQ,text;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_getDialogPanelTextElem()];case 1:msgPanelTextJQ=_a.sent();if(iMsg)msgPanelTextJQ.html(iMsg);opts={modal:iModal,width:window.innerWidth*.6,minWidth:200,dialogClass:iDlgClasses,closeOnEscape:iShowButtons};msgPanel=$("#edrawings-dialog-panel");if(iShowButtons){$.extend(opts,{buttons:{Ok:function(){msgPanel.dialog("close")}},close:function(iEvent){$(".edrawings-dialog-content").remove()}})}$.extend(opts,{beforeClose:function(iEvent){eDwUIUtils.getAsJQueryObj(iEvent.target).closest(".ui-dialog").siblings(".ui-widget-overlay").addBack().off("drop")},open:function(iEvent){eDwUIUtils.getAsJQueryObj(iEvent.target).closest(".ui-dialog").siblings(".ui-widget-overlay").addBack().on("drop",(function(iEvent2){iEvent2.preventDefault();iEvent2.stopPropagation()}))}});eDwUIUtils.hide("#WaitBanner",true);msgPanel.dialog(opts);if(iDlgClasses.indexOf("edrawings")>-1&&iDlgClasses.indexOf("title")>-1){msgPanelTitleJQ=msgPanel.prev().find(".ui-dialog-title");text="";if(msgPanelTitleJQ){text=msgPanelTitleJQ.css("content").replace(/^['"]+|\\|(;\s?})+|['"]$/g,"")}msgPanelTitleJQ.text(text)}return[2]}}))}))}function l_shouldShowButtons(){var viewerHTMLElem=$(eDwUIUtils.getViewerElementID()).get(0);return $._data(viewerHTMLElem,"events").dragover}function l_isDebug(){var viewerFeatOpts={Debug:false};eDwUIUtils.getRequestedQueryStringParams(location.href,viewerFeatOpts,false);return viewerFeatOpts.Debug||false}function l_getDialogPanelTextElem(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!!lDialogTextJQ.length)return[3,2];return[4,eDwUIUtils.loadPanel("#edrawings-dialog-panel","dialogpanel.html")];case 1:_a.sent();lDialogTextJQ=$("#edrawings-dialog-panel-text");_a.label=2;case 2:return[2,lDialogTextJQ]}}))}))}function l_showServerError(iServerID,iModelCacheName){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_addParagraphToPanelText({"data-server-id":iServerID},"edrawings-server-load-failure-2")];case 1:_a.sent();return[4,l_addParagraphToPanelText({"data-model-cache-name":iModelCacheName},"edrawings-server-load-failure-3")];case 2:_a.sent();return[4,l_showMessagePanel("",true,false,"edrawings-error-title edrawings-dialog-no-close")];case 3:_a.sent();return[2]}}))}))}var lDialogTextJQ=$()}));define("eDwUIModelViewHTMLGenerator",["require","exports","eDwUIHTMLGenerator"],(function(require,exports,eDwUIHTMLGenerator_3){"use strict";var eDwUIModelViewHTMLGenerator=function(_super){__extends(eDwUIModelViewHTMLGenerator,_super);function eDwUIModelViewHTMLGenerator(iViewer,iPanelUIID){return _super.call(this,iViewer,iPanelUIID)||this}eDwUIModelViewHTMLGenerator.prototype.generateHTML=function(iAdditionalClasses){return __awaiter(this,void 0,void 0,(function(){var generatedHTML,modelViews,_i,modelViews_6,modelView,modelViewHierNode;return __generator(this,(function(_a){generatedHTML="";modelViews=this.mViewer.getModel().getModelViews();for(_i=0,modelViews_6=modelViews;_iparentRect.Width){posx=parentRect.Width-menuWidth-5}if(posy+menuHeight>parentRect.Height){posy=parentRect.Height-menuHeight-5}menuJQ.css({top:posy+"px",left:posx+"px"});eDwUIUtils.hide(c_menuID,false)};eDwUIShortcutMenu.hide=function(){eDwUIUtils.hide(c_menuID,true);eDwUIUtils.hide(c_menuID+" ul",true);eDwUIUtils.hide(c_menuID+" li",true)};return eDwUIShortcutMenu}();exports.eDwUIShortcutMenu=eDwUIShortcutMenu;var c_menuID="#edrawings-shortcut-menu";var c_divider="-";var c_dummyText="dummy";function l_validatePlugin(iPluginName){if(!iPluginName){console.debugLog("shortcutmenu","Missing menu group name.");throw new eDwGenericError("Missing menu group name.")}}function l_insertInMenu(iElementStyle,iPluginName,iCSSClassName,iParentMenuJQ){l_validatePlugin(iPluginName);var text=iCSSClassName==="edrawings-shortcut-divider"?c_divider:c_dummyText;var menuElemJQ=$("<"+iElementStyle+" class ='"+iCSSClassName+" edrawings-shortcut-menu-text'>"+text+"");menuElemJQ.attr("plugin-name",iPluginName);if(!menuElemJQ.attr("id")){menuElemJQ.attr("id",iCSSClassName+"-id")}iParentMenuJQ.append(menuElemJQ);iParentMenuJQ.menu("refresh");if(text===c_dummyText)menuElemJQ.text("");return menuElemJQ}function l_removeFromMenu(iParentMenuSelector,iPluginName,iMenuItemCSSClassName){return $(iParentMenuSelector).find("[plugin-name='"+iPluginName+"']"+iMenuItemCSSClassName).remove()}function l_getNumVisMenuItems(iPluginName){var menuItems=$(c_menuID+" li");var hiddenMenuItems=$(c_menuID+" li.edrawings-ui-hide");if(iPluginName){menuItems=menuItems.find("[plugin-name='"+iPluginName+"']");hiddenMenuItems=hiddenMenuItems.find("[plugin-name='"+iPluginName+"']")}return menuItems.length-hiddenMenuItems.length}function l_shouldBeVisible(iViewer,iArg){return typeof iArg==="boolean"?false:true}}));define("eDwUITableHTMLGenerator",["require","exports","eDwUIHTMLGenerator"],(function(require,exports,eDwUIHTMLGenerator_5){"use strict";var eDwUITableHTMLGenerator=function(_super){__extends(eDwUITableHTMLGenerator,_super);function eDwUITableHTMLGenerator(iViewer,iPanelUIID){return _super.call(this,iViewer,iPanelUIID)||this}eDwUITableHTMLGenerator.prototype.generateHTML=function(iAdditionalClasses){return __awaiter(this,void 0,void 0,(function(){var generatedHTML,activeModelView,tableNodes,_i,tableNodes_1,tableNode;return __generator(this,(function(_a){generatedHTML="";activeModelView=this.mViewer.getModel().getActiveModelView();if(activeModelView&&activeModelView.Hierarchy){tableNodes=activeModelView.Hierarchy.find("Category","table");for(_i=0,tableNodes_1=tableNodes;_i0))}}exports.searchPanelList=searchPanelList;function updateModelViewTargets(iModelView,iFilter,iTargetClass){var targetSpans=$("span[data-hoopsid='"+iModelView.Hierarchy.HOOPSID+"']");if(targetSpans.length>0){var viewTab=targetSpans.filter(iFilter);if(viewTab.length>0){var parentJQ=viewTab.parent();parentJQ.addClass(iTargetClass);scrollToTarget(parentJQ)}}}exports.updateModelViewTargets=updateModelViewTargets;function switchModelView(iEvent,iViewer,iClassForNodeID){var _this=this;if(!iEvent)return;var targetJQ=getAsJQueryObj(iEvent.target);if(!targetJQ.length)return;var modelViewDivJQ=$(iClassForNodeID,targetJQ);if(!modelViewDivJQ.length)return;var model=iViewer.getModel();var nodeIDHC=parseInt(modelViewDivJQ.data("hoopsid"),10);var modelViewHierNode=model.getHierarchyNode(nodeIDHC);var newModelView=modelViewHierNode.getModelView();var currModelView=model.getActiveModelView();if(newModelView===currModelView)return;(function(){return __awaiter(_this,void 0,void 0,(function(){var changeModelViewCmd;return __generator(this,(function(_a){switch(_a.label){case 0:changeModelViewCmd=new eDwChangeModelViewCmd(iViewer,newModelView);return[4,eDwCommandMgr.get().run(changeModelViewCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}exports.switchModelView=switchModelView;function expandSelected(iViewer,iSelHierNode){var activeModelView=iViewer.getModel().getActiveModelView();function expandNode(iTargetJQ){if(!iTargetJQ.length)return;if(!iTargetJQ.hasClass("edrawings-tree-expanded")){var panelUIID=getUIPanelID(iTargetJQ);if(!$(panelUIID).is(":visible"))return;var gen=getUIGenerator(panelUIID);var offset=parseInt($(iTargetJQ).css("padding-left"),10);var nodeToExpand=parseInt(iTargetJQ.data("hoopsid"),10);var hierarchyNode=activeModelView.Nodes[nodeToExpand];var appendNode=iTargetJQ.closest(".edrawings-submenu-list-item");appendNode.after(gen.generateHTMLForChildNodes(hierarchyNode,false,offset));iTargetJQ.addClass("edrawings-tree-expanded")}}var hierNode=iSelHierNode.Parent;while(hierNode&&hierNode!==activeModelView.Hierarchy){var expandNodes=$('[data-hoopsid="'+hierNode.HOOPSID+'"][class~="edrawings-tree-arrow"]');$.each(expandNodes,(function(iIdx,iTarget){expandNode($(iTarget))}));hierNode=hierNode.Parent}}exports.expandSelected=expandSelected;function scrollToTreeNode(iSelHierNode,iSetSelected){var treeItem={node:$("span[data-hoopsid='"+iSelHierNode.HOOPSID+"']:not(.config-tab-text)"),ownerNode:$("div[data-hoopsid='"+iSelHierNode.HOOPSID+"']")};if(treeItem.ownerNode.length){var classAction_1=iSetSelected?"addClass":"removeClass";$.each(treeItem.node,(function(iIdx,iTarget){$(iTarget)[classAction_1]("edrawings-list-selected")}));$.each(treeItem.ownerNode,(function(iIdx,iTarget){var targetJQ=$(iTarget);targetJQ[classAction_1]("edrawings-list-selected");if(!targetJQ.hasClass("edrawings-submenu-list-item")){return}targetJQ.find(".edrawings-submenu-list-item-button")[classAction_1]("edrawings-list-option");var panel=targetJQ.closest(".edrawings-menu");var panelHiddenState=panel.is(":hidden");hide(panel.attr("id"),false);if(iSetSelected){scrollToTarget(targetJQ,panelHiddenState?"none":"slow")}hide(panel.attr("id"),panelHiddenState)}))}}exports.scrollToTreeNode=scrollToTreeNode;function addCloseEventHandler(iPanelID,iUIHTMLEventMgr){iUIHTMLEventMgr.addDelegatedEventHandler(iPanelID+" .edrawings-menu-close","click",(function(iEvent){hide(iPanelID,true)}))}exports.addCloseEventHandler=addCloseEventHandler;function deactivateMoveInput(iInputEventIDSuffix){$(document).off("mousemove"+iInputEventIDSuffix);$(document).off("mousedown"+iInputEventIDSuffix);$(document).off("mouseup"+iInputEventIDSuffix);$(document).off("click"+iInputEventIDSuffix)}exports.deactivateMoveInput=deactivateMoveInput;function loadComponentHTML(){return __awaiter(this,void 0,void 0,(function(){var loadPromises;return __generator(this,(function(_a){switch(_a.label){case 0:loadPromises=[];utils.appendToArray(loadPanel("#edrawings-sheet-tree-menu","sheetspanel.html"),loadPromises);utils.appendToArray(loadPanel("#edrawings-layer-control-menu","layerspanel.html"),loadPromises);utils.appendToArray(loadPanel("#edrawings-debug-menu","debugpanel.html"),loadPromises);return[4,Promise.all(loadPromises)];case 1:_a.sent();return[2]}}))}))}exports.loadComponentHTML=loadComponentHTML;function inhibitEventBehavior(iEvent){iEvent.preventDefault();iEvent.stopPropagation()}exports.inhibitEventBehavior=inhibitEventBehavior;function populateModelViewPanel(iViewer,iPanelUIID,iTextClass){return __awaiter(this,void 0,void 0,(function(){var listModelViewMenu,gen,_a,_b;return __generator(this,(function(_c){switch(_c.label){case 0:listModelViewMenu=$(iPanelUIID+" .edrawings-submenu-list");listModelViewMenu.empty();gen=getUIGenerator(iPanelUIID);_b=(_a=listModelViewMenu).append;return[4,gen.generateHTML(iTextClass)];case 1:_b.apply(_a,[_c.sent()]);return[2]}}))}))}exports.populateModelViewPanel=populateModelViewPanel;function addPanelModeEvents(iPanelID,iInputEventIDSuffix,iButtonID){var click="click"+iInputEventIDSuffix;$(document).on(click,iPanelID+" .edrawings-menu-panel-arrow-collapse",(function(iJQEvent){var msg="Panel resize: "+click;console.debugLog("UIPanelResize",msg);iJQEvent.preventDefault();var panelJQ=$(iPanelID);panelJQ.toggleClass("edrawings-collapsed");var activeButtonJQ=iButtonID?$(iButtonID):undefined;positionMenuPanelArrowCollapseButton(panelJQ,activeButtonJQ);iJQEvent.stopImmediatePropagation()}));var panelJQ=$(iPanelID);panelJQ.removeClass("edrawings-collapsed");l_setMenuPanelArrowCollapseButtonPosition(panelJQ);fixMenuPanelInwardToolbar(panelJQ)}exports.addPanelModeEvents=addPanelModeEvents;function getText(iElement){return $(iElement).text().trim()}exports.getText=getText;function getTarget(iTargetJQ){return iTargetJQ.hasClass("config-tab-text")?iTargetJQ.parent():iTargetJQ}exports.getTarget=getTarget;function getSpanText(iTargetJQ){var target=getTarget(iTargetJQ);if(!target.is("span")){target=target.find("span")}if(!target||!target.length)return"";return target[0].innerText}exports.getSpanText=getSpanText;function loadPanel(iElemOrClassID,iPanelHTML){return __awaiter(this,void 0,void 0,(function(){var loaded,iExcp_16;return __generator(this,(function(_a){switch(_a.label){case 0:if(!eDwServiceMgr.usesWebServices())return[2,false];loaded=false;_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,eDwServiceMgr.get().load(iElemOrClassID,iPanelHTML)];case 2:_a.sent();loaded=true;console.debugLog("PanelLoad","Loaded panel id = "+iElemOrClassID+" HTML file = "+iPanelHTML);return[3,4];case 3:iExcp_16=_a.sent();console.debugLog("PanelLoad","Failed to load "+iPanelHTML+": "+iExcp_16.message);return[3,4];case 4:return[2,loaded]}}))}))}exports.loadPanel=loadPanel;function hide(iSelector,iOff){var selJQ=$(iSelector);selJQ[iOff?"addClass":"removeClass"]("edrawings-ui-hide");return selJQ}exports.hide=hide;function getRequestedQueryStringParams(iURL,ioViewerFeatOpts,iWarnOfOtherParams){if(iWarnOfOtherParams===void 0){iWarnOfOtherParams=true}var hashes=iURL.slice(iURL.indexOf("?")+1).split("&");for(var i=0;i1){var strVal=hash[1];var val=strVal==="true"?true:strVal==="false"?false:strVal;if(ioViewerFeatOpts.hasOwnProperty(hash[0])){ioViewerFeatOpts[hash[0]]=val}else if(iWarnOfOtherParams){console.warn(hash[0]+" is not a valid query parameter.")}}}}exports.getRequestedQueryStringParams=getRequestedQueryStringParams;function getPosition(iTargetJQ){var ret={top:0,left:0};if(iTargetJQ)ret=iTargetJQ.position();return ret}exports.getPosition=getPosition;function scrollToTarget(iTargetJQ,iAnimationSpeed){if(iAnimationSpeed===void 0){iAnimationSpeed="slow"}var animationSpeed=iAnimationSpeed;var targetOffset=iTargetJQ.offset();var targetParentJQ=iTargetJQ.parent();if(targetParentJQ.length&&targetParentJQ[0]===$(document)[0]){return false}var targetParentOffset=targetParentJQ.offset();var updated=false;if(targetParentJQ[0].scrollWidth>targetParentJQ.width()){var targetParentPaddingLeft=parseInt(targetParentJQ.css("paddingLeft"));var diff=l_computeTargetMinimalAdjustment(targetOffset.left,parseInt(iTargetJQ.css("marginLeft"))+parseInt(iTargetJQ.css("borderLeftWidth"))+iTargetJQ[0].scrollWidth+parseInt(iTargetJQ.css("borderRightWidth"))+parseInt(iTargetJQ.css("marginRight")),targetParentOffset.left+parseInt(targetParentJQ.css("marginLeft"))+parseInt(targetParentJQ.css("borderLeftWidth"))+targetParentPaddingLeft,targetParentJQ[0].clientWidth-targetParentPaddingLeft-parseInt(targetParentJQ.css("paddingRight")));if(diff!==0){var pos=targetParentJQ.scrollLeft()+diff;if(Math.abs(diff)>targetParentJQ.width()){var targetJQpostionLeft=iTargetJQ.position().left;pos=targetParentJQ.scrollLeft()+targetJQpostionLeft}else{animationSpeed="none"}l_scrollToTarget(targetParentJQ,pos,animationSpeed,"scrollLeft");updated=true}}if(targetParentJQ[0].scrollHeight>targetParentJQ.height()){var targetParentPaddingTop=parseInt(targetParentJQ.css("paddingTop"));var diff=l_computeTargetMinimalAdjustment(targetOffset.top,parseInt(iTargetJQ.css("marginTop"))+parseInt(iTargetJQ.css("borderTopWidth"))+iTargetJQ[0].scrollHeight+parseInt(iTargetJQ.css("borderBottomWidth"))+parseInt(iTargetJQ.css("marginBottom")),targetParentOffset.top+parseInt(targetParentJQ.css("marginTop"))+parseInt(targetParentJQ.css("borderTopWidth"))+targetParentPaddingTop,targetParentJQ[0].clientHeight-targetParentPaddingTop-parseInt(targetParentJQ.css("paddingBottom")));if(diff!==0){var pos=targetParentJQ.scrollTop()+diff;if(Math.abs(diff)>targetParentJQ.height()){var targetJQpostionTop=iTargetJQ.position().top;pos=targetParentJQ.scrollTop()+targetJQpostionTop}else{animationSpeed="none"}l_scrollToTarget(targetParentJQ,pos,animationSpeed,"scrollTop");updated=true}}return updated}exports.scrollToTarget=scrollToTarget;function getIDHC(iTargetJQ){if(!iTargetJQ)return Number.NaN;return parseInt(iTargetJQ.data("hoopsid"),10)}exports.getIDHC=getIDHC;function activateUI(iButtonID,iPanelID){return __awaiter(this,void 0,void 0,(function(){var panelJQ,buttonJQ;return __generator(this,(function(_a){switch(_a.label){case 0:if(iPanelID){panelJQ=hide(iPanelID,false).addClass("active");fixMenuPanelInwardToolbar(panelJQ)}if(!iButtonID)return[3,2];buttonJQ=$(iButtonID);buttonJQ.addClass("active-button");scrollToTarget(buttonJQ,"none");return[4,eDwEventMgr.get().fireEvent(eDwEvents_9.ActivateUIOpEvent,buttonJQ)];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))}exports.activateUI=activateUI;function deactivateUI(iButtonCSSClassName,iPanelCSSClassName){if(iButtonCSSClassName===void 0){iButtonCSSClassName=""}if(iPanelCSSClassName===void 0){iPanelCSSClassName=""}return __awaiter(this,void 0,void 0,(function(){var activeButtonsJQ,panelsJQ;return __generator(this,(function(_a){switch(_a.label){case 0:activeButtonsJQ=$(iButtonCSSClassName+".active-button");if(!activeButtonsJQ.length)return[3,2];return[4,eDwEventMgr.get().fireEvent(eDwEvents_9.DeactivateUIOpEvent,activeButtonsJQ)];case 1:_a.sent();activeButtonsJQ.removeClass("active-button");_a.label=2;case 2:panelsJQ=hide(iPanelCSSClassName+".active",true).removeClass("active");panelsJQ.each((function(iIdx,iPanel){fixMenuPanelInwardToolbar($(iPanel),true)}));return[2,activeButtonsJQ]}}))}))}exports.deactivateUI=deactivateUI;function isIDInJQuery(iListJQ,iID){var inJQList=false;for(var key in iListJQ){if(iListJQ[key].id===iID){inJQList=true;break}}return inJQList}exports.isIDInJQuery=isIDInJQuery;function isStateOn(iID){return $(iID).hasClass("state-on-button")}exports.isStateOn=isStateOn;function resetToHomeView(iViewer){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){var resetCmd;return __generator(this,(function(_a){switch(_a.label){case 0:resetCmd=new eDwResetCmd(iViewer);return[4,eDwCommandMgr.get().run(resetCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}exports.resetToHomeView=resetToHomeView;function getViewerElementName(){return"edrawings-viewer"}exports.getViewerElementName=getViewerElementName;function getViewerElementID(){return"#"+getViewerElementName()}exports.getViewerElementID=getViewerElementID;function makeResult(iExcp){var result={ErrorCode:"UnknownError",ErrorData:[]};if(iExcp instanceof eDwResultError){result=iExcp.Result}else if(iExcp instanceof eDwAJAXError){result.ErrorCode=iExcp.ErrorCode;result.ErrorData=[iExcp.message]}else{result.ErrorCode=iExcp.name;result.ErrorData=[iExcp.message]}return result}exports.makeResult=makeResult;function viewFile(iModelName,iModelKey,iParams,iContainerName,iModelData){return __awaiter(this,void 0,void 0,(function(){function createViewer(iWebSocketEndpoint){if(iWebSocketEndpoint===""){return null}var streamAlways=iParams.StreamAlwaysConnected;var streamModes=eDwTypes_17.HC.StreamingMode;var webViewerInfo={};webViewerInfo.containerId=iContainerName;webViewerInfo.model=iModelKey;webViewerInfo.endpointUri=iWebSocketEndpoint;webViewerInfo.streamingMode=streamAlways?streamModes.Interactive:streamModes.All;webViewerInfo.streamingMode=iModelData?null:webViewerInfo.streamingMode;webViewerInfo.buffer=iModelData;webViewerInfo.boundingPreviewMode=eDwTypes_17.HC.BoundingPreviewMode.None;eDwEventMgr.get().addEventHandlerFunc(eDwEvents_9.GLContextLostEvent,c_onContextLost);var viewer=new eDwView(webViewerInfo,iParams);hide("#"+iContainerName,false);if(iModelName){$("#edrawings-filename-text").html(decodeURIComponent(iModelName))}var modelName=!iModelName&&iModelKey?iModelKey:iModelName;if(!modelName)return null;if(modelName.search(".zip")>-1){modelName=modelName.substring(0,modelName.length-4)}console.debugLog("ModelLoad","Created new edw viewer");return viewer}var wsEndPt,_a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!iModelData)return[3,1];_a=null;return[3,3];case 1:return[4,eDwServiceMgr.get().getWebSocketEndpoint(iModelKey,iParams.WebSocketEndpoint)];case 2:_a=_b.sent();_b.label=3;case 3:wsEndPt=_a;return[2,createViewer(wsEndPt)]}}))}))}exports.viewFile=viewFile;function fixMenuPanelInwardToolbar(iPanelJQ,iToClear){if(iToClear===void 0){iToClear=false}if(iToClear){iPanelJQ.removeClass("edrawings-collided");return}if(iPanelJQ.hasClass("edrawings-hud-menu")){var panel=iPanelJQ[0];if(panel.scrollHeight>panel.clientHeight){iPanelJQ.addClass("edrawings-collided")}else{iPanelJQ.removeClass("edrawings-collided")}}else if(iPanelJQ.hasClass("edrawings-submenu")){var wrapperJQ=iPanelJQ.find(".edrawings-menu-panel-wrapper");var wasCollided=iPanelJQ.hasClass("edrawings-collided");if(iPanelJQ[0].scrollHeight>iPanelJQ[0].clientHeight&&iPanelJQ[0].scrollHeight-iPanelJQ[0].clientHeight>1||wrapperJQ[0].scrollHeight>wrapperJQ[0].clientHeight&&wrapperJQ[0].scrollHeight-wrapperJQ[0].clientHeight>1){if(!wasCollided){iPanelJQ.addClass("edrawings-collided")}iPanelJQ.addClass("edrawings-wiggle");setTimeout((function(){iPanelJQ.removeClass("edrawings-wiggle")}),0)}else{iPanelJQ.removeClass("edrawings-collided");if(wasCollided){fixMenuPanelInwardToolbar(iPanelJQ)}}}}exports.fixMenuPanelInwardToolbar=fixMenuPanelInwardToolbar;function positionMenuPanelArrowCollapseButton(iPanelJQ,iButtonJQ){if(!iPanelJQ.hasClass("edrawings-collapsed")){l_setMenuPanelArrowCollapseButtonPosition(iPanelJQ);fixMenuPanelInwardToolbar(iPanelJQ)}else{if(iButtonJQ){var arrowCollapseButtonJQ=iPanelJQ.find(".edrawings-menu-panel-arrow-collapse");var activeButtonRect=iButtonJQ[0].getBoundingClientRect();var arrowCollapseButtonRect=arrowCollapseButtonJQ[0].getBoundingClientRect();var diffTop=activeButtonRect.top-arrowCollapseButtonRect.top;l_setMenuPanelArrowCollapseButtonPosition(arrowCollapseButtonJQ,arrowCollapseButtonJQ.position().top+diffTop)}fixMenuPanelInwardToolbar(iPanelJQ,true)}}exports.positionMenuPanelArrowCollapseButton=positionMenuPanelArrowCollapseButton;function executeScrolling(iDiffX,iDiffY,iContentJQ,iBarJQ){var contentParentJQ=iContentJQ.parent();var leftButtonWrapperJQ=contentParentJQ.find(".edrawings-arrow-wrapper:has(> .edrawings-arrow-left)");var rightButtonWrapperJQ=contentParentJQ.find(".edrawings-arrow-wrapper:has(> .edrawings-arrow-right)");var upButtonWrapperJQ=contentParentJQ.find(".edrawings-arrow-wrapper:has(> .edrawings-arrow-up)");var downButtonWrapperJQ=contentParentJQ.find(".edrawings-arrow-wrapper:has(> .edrawings-arrow-down)");if(iContentJQ[0].scrollWidth>iContentJQ.width()){var scrollLeft=iContentJQ.scrollLeft();var newScrollLeft=scrollLeft+iDiffX;iContentJQ.scrollLeft(newScrollLeft);adjustScrollArrows(iContentJQ.scrollLeft(),iContentJQ[0].scrollWidth,iContentJQ.width(),true,leftButtonWrapperJQ,rightButtonWrapperJQ,iBarJQ)}if(iContentJQ[0].scrollHeight>iContentJQ.height()){var scrollTop=iContentJQ.scrollTop();var newScrollTop=scrollTop+iDiffY;iContentJQ.scrollTop(newScrollTop);adjustScrollArrows(iContentJQ.scrollTop(),iContentJQ[0].scrollHeight,iContentJQ.height(),false,upButtonWrapperJQ,downButtonWrapperJQ,iBarJQ)}return iDiffX!==0||iDiffY!==0}exports.executeScrolling=executeScrolling;function enableScrollOnTouch(ioUIHTMLEventMgr,iContentJqSel,iBarJqSel,iHandlerOnScroll){var _this=this;var contentJQ=$(iContentJqSel);var barJQ=iBarJqSel?$(iBarJqSel):undefined;var hasScrolled=false;var stopClickTarget;var stopClickPropagation=false;ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"touchstart",(function(iEventStart){hasScrolled=false;stopClickPropagation=false;stopClickTarget=undefined;var touchEventStart=iEventStart;var lastScreenX=touchEventStart.changedTouches[0].screenX;var lastScreenY=touchEventStart.changedTouches[0].screenY;ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchmove");ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"touchmove",(function(iEventMove){var touchEventMove=iEventMove;var xDiff=touchEventMove.changedTouches[0].screenX-lastScreenX;lastScreenX=touchEventMove.changedTouches[0].screenX;var yDiff=touchEventMove.changedTouches[0].screenY-lastScreenY;lastScreenY=touchEventMove.changedTouches[0].screenY;var updated=executeScrolling(-xDiff,-yDiff,contentJQ,barJQ);if(updated&&iHandlerOnScroll){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,iHandlerOnScroll()];case 1:_a.sent();return[2]}}))}))})()}hasScrolled=hasScrolled||updated}))}));ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"touchend",(function(iEvent){var touchEvent=iEvent;ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchmove");if(hasScrolled){touchEvent.preventDefault();touchEvent.stopPropagation();stopClickPropagation=true;stopClickTarget=touchEvent.target}else{stopClickPropagation=false;stopClickTarget=undefined}hasScrolled=false}));ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"touchcancel",(function(iEvent){ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchmove");hasScrolled=false;stopClickPropagation=false}));ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"mousedown",(function(iEvent){hasScrolled=false;stopClickPropagation=false;if(!eDwKeyMgr_5.eDwKeyMgr.isLMBPressed(iEvent)){return}var eventDown=iEvent;var lastScreenX=eventDown.screenX;var lastScreenY=eventDown.screenY;ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mousemove");ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"mousemove",(function(iEventMove){var eventMove=iEventMove;var xDiff=eventMove.screenX-lastScreenX;var yDiff=eventMove.screenY-lastScreenY;lastScreenX=eventMove.screenX;lastScreenY=eventMove.screenY;var updated=executeScrolling(-xDiff,-yDiff,contentJQ,barJQ);if(updated&&iHandlerOnScroll){iHandlerOnScroll()}hasScrolled=hasScrolled||updated}))}));ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"mouseup",(function(iEvent){ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mousemove");if(hasScrolled){iEvent.stopImmediatePropagation();iEvent.preventDefault();stopClickPropagation=true;stopClickTarget=iEvent.target}else{stopClickPropagation=false;stopClickTarget=undefined}hasScrolled=false}));var propagationHandler=function(iEvent2){if(stopClickPropagation&&iEvent2.target===stopClickTarget){iEvent2.stopImmediatePropagation();iEvent2.preventDefault()}stopClickPropagation=false;stopClickTarget=undefined};var nameSpace=iContentJqSel.replace(/[\.\s]/g,"");var dataKey="click.edw."+nameSpace;contentJQ.off(dataKey,"*");contentJQ.on(dataKey,"*",propagationHandler)}exports.enableScrollOnTouch=enableScrollOnTouch;function disableScrollOnTouch(iUIHTMLEventMgr,iContentJqSel){iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchstart");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchmove");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchend");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchcancel");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mousedown");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mousemove");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mouseup");var contentJQ=$(iContentJqSel);var nameSpace=iContentJqSel.replace(/[\.\s]/g,"");var dataKey="click.edw."+nameSpace;contentJQ.off(dataKey,"*")}exports.disableScrollOnTouch=disableScrollOnTouch;function adjustScrollArrows(iOffset,iRange,iVisibleRange,isHorizonatalScrolling,iDecreaseWrapperJQ,iIncreaseWrapperJQ,iBarJQ){if(iOffset<=0){iDecreaseWrapperJQ.addClass("edrawings-disabled-button");if(iBarJQ){iBarJQ.addClass(isHorizonatalScrolling?"edrawings-removed-arrow-left":"edrawings-removed-arrow-up")}}else{iDecreaseWrapperJQ.removeClass("edrawings-disabled-button");if(iBarJQ){iBarJQ.removeClass(isHorizonatalScrolling?"edrawings-removed-arrow-left":"edrawings-removed-arrow-up")}}if(iOffset+iVisibleRange>=iRange){iIncreaseWrapperJQ.addClass("edrawings-disabled-button");if(iBarJQ){iBarJQ.addClass(isHorizonatalScrolling?"edrawings-removed-arrow-right":"edrawings-removed-arrow-down")}}else{iIncreaseWrapperJQ.removeClass("edrawings-disabled-button");if(iBarJQ){iBarJQ.removeClass(isHorizonatalScrolling?"edrawings-removed-arrow-right":"edrawings-removed-arrow-down")}}}exports.adjustScrollArrows=adjustScrollArrows;function getAsJQueryObj(iObj){return iObj?$(iObj):$()}exports.getAsJQueryObj=getAsJQueryObj;var l_generators={};function l_getAllDisplayStateCSSClasses(iHierNode){var classes="";for(var displayState in eDwNodeAttributes_4.NodeDisplayState){classes+="edrawings-"+iHierNode.Category+"-"+displayState.toLowerCase()+" "}return classes}function l_populatePanel(iViewer,iCategoryName,iListID,iPanelUIID,iAdditionalClasses){if(iAdditionalClasses===void 0){iAdditionalClasses=""}return __awaiter(this,void 0,void 0,(function(){var activeModelView,list,gen,_a,_b;return __generator(this,(function(_c){switch(_c.label){case 0:activeModelView=iViewer.getModel().getActiveModelView();if(!activeModelView||!activeModelView.Hierarchy)return[2];list=$(iListID);list.empty();gen=getUIGenerator(iPanelUIID);_b=(_a=list).append;return[4,gen.generateHTML(iAdditionalClasses)];case 1:_b.apply(_a,[_c.sent()]);return[2]}}))}))}function l_populateLayerPanel(iViewer){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_populatePanel(iViewer,"layer","#edrawings-layer-control-list","#edrawings-layer-control-menu")];case 1:_a.sent();return[2]}}))}))}function l_populateDebugPanel(iViewer){var list=$("#edrawings-debug-menu .edrawings-submenu-list");list.empty();var gen=getUIGenerator("#edrawings-debug-menu");var model=iViewer.getModel();var modelView=model.getActiveModelView();if(modelView&&modelView.Hierarchy){var layers=model.getLayers();for(var _i=0,layers_3=layers;_iiReferenceSide+iReferenceOffset){diff=iTargetSide+iTargetOffset-(iReferenceSide+iReferenceOffset)}return diff}function l_scrollToTarget(iTargetJQ,iPos,iAnimationSpeed,iStartPos){var _a;if(iAnimationSpeed===void 0){iAnimationSpeed="slow"}if(iStartPos===void 0){iStartPos="scrollTop"}if(!iTargetJQ)return;if(iAnimationSpeed==="none"){iTargetJQ[iStartPos](iPos)}else{iTargetJQ.animate((_a={},_a[iStartPos]=iPos,_a),iAnimationSpeed)}}}));define("eDwUnits",["require","exports"],(function(require,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.cDefaultAngleUnit=exports.cDefaultLengthUnit=exports.LengthTypeValues=exports.AngleTypeValues=void 0;exports.AngleTypeValues=["degree","radian"];exports.LengthTypeValues=["millimeter","centimeter","meter","inch","foot","footAndInch"];exports.cDefaultLengthUnit="millimeter";exports.cDefaultAngleUnit="degree"}));define("eDwView",["require","exports","eDwSelMgr","eDwXSectionMgr","eDwViewMgr","eDwTimer","eDwOperatorBaseDeps","eDwEventMgr","eDwHistoryMgr","eDwModel","eDwTypes","eDwEvents","eDwTouchOpsMgr","eDwTableMgr"],(function(require,exports,eDwSelMgr,eDwXSectionMgr,eDwViewMgr,eDwTimer,eDwOperatorBaseDeps_2,eDwEventMgr,eDwHistoryMgr,eDwModel,eDwTypes_18,eDwEvents_10,eDwTouchOpsMgr,eDwTableMgr){"use strict";var eDwView=function(){function eDwView(iViewerInfo,iFeatureOptions){this.mElemID=iViewerInfo.containerId||"";this.HCViewer=new eDwTypes_18.HC.WebViewer(iViewerInfo);this.mTimer=new eDwTimer;this.ViewerFeatureOpts=iFeatureOptions;this.mDrawMode=iFeatureOptions.RenderType||"ShadedWithEdges";this.OperatorMgr=new eDwOperatorBaseDeps_2.eDwOperatorMgr(this);this.TableMgr=new eDwTableMgr(this);var streamAll=this.HCViewer.getStreamingMode()===eDwTypes_18.HC.StreamingMode.All;var timeBeforeTimeout=streamAll?14400:120;var timeBeforeWarnTimeout=timeBeforeTimeout-10;this.HCViewer.setClientTimeout(timeBeforeTimeout,timeBeforeWarnTimeout);this.mInitCamera=null;this.mModelKey=iViewerInfo.model||"";this.setupWebViewer()}eDwView.prototype.getHCView=function(){return this.HCViewer.view};eDwView.prototype.getHCMarkupManager=function(){return this.HCViewer.markupManager};eDwView.prototype.getModel=function(){if(!this.mModel){this.mModel=new eDwModel(this)}return this.mModel};eDwView.prototype.processProductStructure=function(){return __awaiter(this,void 0,void 0,(function(){var model,activeModelView,modelViewDefCamera;var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:this.mInitCamera=this.getHCView().getCamera();model=this.getModel();activeModelView=model.getActiveModelView();modelViewDefCamera=activeModelView.getDefaultCamera();if(modelViewDefCamera)this.mInitCamera=modelViewDefCamera;this.ViewMgr.setCamera(this.mInitCamera);$("#"+this.mElemID).trigger("edw:ModelDataLoadComplete",this);return[4,this.finishInit()];case 1:_a.sent();if(this.HCViewer.getStreamingMode()===eDwTypes_18.HC.StreamingMode.All){this.HCViewer.waitForIdle().then((function(){l_closeHCConnection(_this)}))}return[2]}}))}))};eDwView.prototype.setupWebViewer=function(){var _this=this;var processingSelection=false;var eventMgr=eDwEventMgr.get();function deprecatedCallback(iDeprecatedFuncName){var argArray=[];for(var key in arguments){argArray.push(arguments[key])}console.debugLog("Deprecated","Deprecated call: "+argArray.join("."))}this.mHCCallbacksObj={sceneReady:function(){console.debugLog("ViewerLoad","Scene ready");_this.HCViewer.resizeCanvas()},streamingActivated:function(){console.debugLog("Viewer","Streaming activated")},streamingDeactivated:function(){console.debugLog("Viewer","Streaming deactivated")},selection:function(iSelEvent){if(!processingSelection){processingSelection=true;try{(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){this.SelectionMgr.onSelection(iSelEvent);return[2]}))}))})()}catch(iException){}processingSelection=false}},timeoutWarning:function(iRemainingMinutes){console.debugLog("Viewer","Inactivity timeout pending in "+iRemainingMinutes+" minutes.");_this.mTimer.ellapsed();_this.mTimer.dumpToConsole()},timeout:function(){console.debugLog("Viewer","Inactivity timeout");_this.mTimer.ellapsed();_this.mTimer.dumpToConsole();(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.TimeoutEvent,this)];case 1:_a.sent();return[2]}}))}))})();l_closeHCConnection(_this)},modelLoadFailure:function(iModelName,iReason){console.warn("Model "+iModelName+" load failed: "+iReason);$("#"+_this.mElemID).trigger("edw:ModelLoadFailed",[_this,iModelName,iReason]);l_closeHCConnection(_this)},deprecated:deprecatedCallback,info:function(iInfoType,iMsg){console.debugLog("Debug",iInfoType.toString()+" "+iMsg)},missingModel:function(iModelPath){console.debugLog("Debug","Missing model: "+iModelPath);l_closeHCConnection(_this)},webGlContextLost:function(){console.debugLog("Debug","Browser lost GL context! Render incomplete!!");(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.GLContextLostEvent,this)];case 1:_a.sent();return[2]}}))}))})();l_closeHCConnection(_this)},assemblyTreeReady:function(){console.debugLog("ViewerLoad","Assembly tree ready.")},modelStructureReady:function(){console.debugLog("ViewerLoad","Model structure ready.");$("#"+_this.mElemID).trigger("edw:ModelLoaded",_this)},modelSwitched:function(){console.debugLog("ViewerLoad","Model switch done.");$("#"+_this.mElemID).trigger("edw:ModelLoaded",_this)},viewCreated:function(iHCView){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.ViewCreatedEvent,iHCView)];case 1:_a.sent();return[2]}}))}))})()},viewLoaded:function(iHCView){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.ViewLoadedEvent,iHCView)];case 1:_a.sent();return[2]}}))}))})()},viewDeleted:function(iHCView){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.ViewDeletedEvent,iHCView)];case 1:_a.sent();return[2]}}))}))})()},camera:function(iCamera){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.CameraChangeEvent,iCamera)];case 1:_a.sent();return[2]}}))}))})()}};this.HCViewer.setCallbacks(this.mHCCallbacksObj);this.HCViewer.start()};eDwView.prototype.getInitCamera=function(){return this.mInitCamera};eDwView.prototype.getCurrModelKey=function(){return this.mModelKey};eDwView.prototype.unregister=function(){var _this=this;if(this.HCViewer)this.HCViewer.unsetCallbacks(this.mHCCallbacksObj);this.OperatorMgr.unregisterAll();(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_10.DoneEvent,this)];case 1:_a.sent();return[2]}}))}))})()};eDwView.prototype.destroy=function(){this.HCViewer.shutdown()};eDwView.prototype.setExplosionLevel=function(iLevel){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.HCViewer.explodeManager.setMagnitude(iLevel)];case 1:_a.sent();return[4,eDwEventMgr.get().fireEvent(eDwEvents_10.ExplodeLevelChangeEvent,this,iLevel)];case 2:_a.sent();return[2]}}))}))})()};eDwView.prototype.getExplosionLevel=function(){return this.HCViewer.explodeManager.getMagnitude()};eDwView.prototype.getDrawMode=function(){return this.mDrawMode};eDwView.prototype.setDrawMode=function(iValue){var _this=this;var viewHC=this.getHCView();var settingsHC=viewHC.getHiddenLineSettings();switch(iValue){case"ShadedWithEdges":viewHC.setDrawMode(eDwTypes_18.HC.DrawMode.WireframeOnShaded);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.WireframeOnShaded);break;case"Shaded":viewHC.setDrawMode(eDwTypes_18.HC.DrawMode.Shaded);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.Shaded);break;case"HiddenLinesRemoved":settingsHC.setObscuredLineOpacity(0);viewHC.setDrawMode(eDwTypes_18.HC.DrawMode.HiddenLine);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.HiddenLine);break;case"HiddenLinesVisible":settingsHC.setObscuredLineOpacity(.5);viewHC.setDrawMode(eDwTypes_18.HC.DrawMode.HiddenLine);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.HiddenLine);break;case"Wireframe":settingsHC.setObscuredLineOpacity(1);viewHC.setDrawMode(eDwTypes_18.HC.DrawMode.HiddenLine);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.HiddenLine);break;default:throw new Error("Unknown draw mode: "+iValue)}(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.mDrawMode=iValue;return[4,eDwEventMgr.get().fireEvent(eDwEvents_10.DrawModeChangeEvent,this,iValue)];case 1:_a.sent();return[2]}}))}))})()};eDwView.prototype.getPerspectiveMode=function(){return this.getHCView().getProjectionMode()===eDwTypes_18.HC.Projection.Perspective};eDwView.prototype.setPerspectiveMode=function(iValue){var _this=this;if(!iValue){this.getHCView().setProjectionMode(eDwTypes_18.HC.Projection.Orthographic)}else{this.getHCView().setProjectionMode(eDwTypes_18.HC.Projection.Perspective)}(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_10.ProjModeChangeEvent,this,iValue)];case 1:_a.sent();return[2]}}))}))})();return iValue};eDwView.prototype.resetDrawMode=function(){this.setDrawMode(this.ViewerFeatureOpts.RenderType||"ShadedWithEdges")};eDwView.prototype.initializeManagers=function(){new eDwSelMgr(this);new eDwXSectionMgr(this);new eDwViewMgr(this);new eDwTouchOpsMgr(this)};eDwView.prototype.drawDebugBoundingBox=function(iBBox){return __awaiter(this,void 0,void 0,(function(){var modelHC,beautifulGreen,vmin,vmax,p0,p1,p2,p3,p4,p5,p6,p7,polylineData0,polylineData1,polylineData2,polylineData3,rgba,i,tmp,boxMesh,key,meshInstance;return __generator(this,(function(_a){switch(_a.label){case 0:modelHC=this.getModel().getHCModel();beautifulGreen=new eDwTypes_18.HC.Color(0,255,0);vmin=iBBox.min;vmax=iBBox.max;p0=new eDwTypes_18.HC.Point3(vmin.x,vmin.y,vmax.z);p1=new eDwTypes_18.HC.Point3(vmin.x,vmax.y,vmax.z);p2=new eDwTypes_18.HC.Point3(vmax.x,vmax.y,vmax.z);p3=new eDwTypes_18.HC.Point3(vmax.x,vmin.y,vmax.z);p4=new eDwTypes_18.HC.Point3(vmin.x,vmin.y,vmin.z);p5=new eDwTypes_18.HC.Point3(vmin.x,vmax.y,vmin.z);p6=new eDwTypes_18.HC.Point3(vmax.x,vmax.y,vmin.z);p7=new eDwTypes_18.HC.Point3(vmax.x,vmin.y,vmin.z);polylineData0=[p0.x,p0.y,p0.z,p1.x,p1.y,p1.z,p2.x,p2.y,p2.z,p3.x,p3.y,p3.z,p0.x,p0.y,p0.z];polylineData1=[p4.x,p4.y,p4.z,p5.x,p5.y,p5.z,p6.x,p6.y,p6.z,p7.x,p7.y,p7.z,p4.x,p4.y,p4.z];polylineData2=[p4.x,p4.y,p4.z,p0.x,p0.y,p0.z,p1.x,p1.y,p1.z,p5.x,p5.y,p5.z,p4.x,p4.y,p4.z];polylineData3=[p7.x,p7.y,p7.z,p3.x,p3.y,p3.z,p2.x,p2.y,p2.z,p6.x,p6.y,p6.z,p7.x,p7.y,p7.z];rgba=[];for(i=0;i<5;i++){tmp=[beautifulGreen.r,beautifulGreen.g,beautifulGreen.b,255];rgba=rgba.concat(tmp)}boxMesh=new eDwTypes_18.HC.MeshData;boxMesh.addPolyline(polylineData0,rgba);boxMesh.addPolyline(polylineData1,rgba);boxMesh.addPolyline(polylineData2,rgba);boxMesh.addPolyline(polylineData3,rgba);return[4,modelHC.createMesh(boxMesh)];case 1:key=_a.sent();meshInstance=new eDwTypes_18.HC.MeshInstanceData(key);return[2,modelHC.createMeshInstance(meshInstance)]}}))}))};eDwView.prototype.finishInit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_10.InitEvent,this)];case 1:_a.sent();this.HCViewer.sheetManager.setBackgroundSheetEnabled(false);eDwHistoryMgr.get().clear();return[2]}}))}))};return eDwView}();function l_closeHCConnection(iViewer){if(!iViewer)return;var viewHC=iViewer.getHCView();viewHC.setCamera(viewHC.getCamera());console.debugLog("Viewer","Closing viewer connection...");iViewer.HCViewer.closeConnection()}return eDwView}));define("eDwViewMgr",["require","exports","eDwEventMgr","eDwSelObj","eDwEvents","eDwTypes"],(function(require,exports,eDwEventMgr,eDwSelObj,eDwEvents_11,eDwTypes_19){"use strict";var eDwViewMgr=function(){function eDwViewMgr(iViewer){if(!iViewer)throw new Error("Must have viewer object");iViewer.ViewMgr=this;this.mViewAnimationIndex=0;this.mViewAnimationActive=false;this.mAnimationTimeOutID=-1;this.mViewer=iViewer}eDwViewMgr.prototype.start=function(){var _this=this;if(this.mViewer.getModel().isDrawing())return;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_11.StartAnimationEvent,this.mViewer)];case 1:_a.sent();return[2]}}))}))})();this.mViewAnimationActive=true;this.animateNextView()};eDwViewMgr.prototype.stop=function(){var _this=this;this.mViewAnimationActive=false;if(this.mAnimationTimeOutID>-1){window.clearTimeout(this.mAnimationTimeOutID);this.mAnimationTimeOutID=-1}(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_11.StopAnimationEvent,this.mViewer)];case 1:_a.sent();return[2]}}))}))})()};eDwViewMgr.prototype.reset=function(){this.stop();this.mViewAnimationIndex=0};eDwViewMgr.prototype.isActive=function(){return this.mViewAnimationActive};eDwViewMgr.prototype.setViewOrientation=function(iEyeDirHC,iDuration){var _this=this;if(iDuration===void 0){iDuration=400}var centerHC=this.mViewer.getModel().getBoundingBox().center();var viewHC=this.mViewer.getHCView();var cameraHC=viewHC.getCamera().copy();var upVecHC=cameraHC.getUp();var eyeVecHC=cameraHC.getTarget().subtract(cameraHC.getPosition());var dist=eyeVecHC.length();switch(iEyeDirHC){case eDwTypes_19.HC.ViewOrientation.Front:eyeVecHC.set(0,0,1).scale(dist);upVecHC.set(0,1,0);break;case eDwTypes_19.HC.ViewOrientation.Back:eyeVecHC.set(0,0,-1).scale(dist);upVecHC.set(0,1,0);break;case eDwTypes_19.HC.ViewOrientation.Left:eyeVecHC.set(-1,0,0).scale(dist);upVecHC.set(0,1,0);break;case eDwTypes_19.HC.ViewOrientation.Right:eyeVecHC.set(1,0,0).scale(dist);upVecHC.set(0,1,0);break;case eDwTypes_19.HC.ViewOrientation.Top:eyeVecHC.set(0,1,0).scale(dist);upVecHC.set(0,0,-1);break;case eDwTypes_19.HC.ViewOrientation.Bottom:eyeVecHC.set(0,-1,0).scale(dist);upVecHC.set(0,0,1);break;case eDwTypes_19.HC.ViewOrientation.Iso:eyeVecHC.set(1,1,1).normalize().scale(dist);upVecHC.set(-.408204,.816541,-.408204);break;default:throw new Error("Unsupported orientation: "+iEyeDirHC)}this.adjustOrientation(eyeVecHC,upVecHC);cameraHC.setPosition(eyeVecHC.add(centerHC));cameraHC.setUp(upVecHC);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,viewHC.fitWorld(iDuration,cameraHC)];case 1:_a.sent();return[2]}}))}))})();return cameraHC};eDwViewMgr.prototype.setViewOrientationToDirection=function(normal){var camera=this.mViewer.getHCView().getCamera();var position=camera.getPosition();var target=camera.getTarget();var up=camera.getUp();var delta=target.subtract(position);var distance=delta.length();var bbox=this.mViewer.getModel().getBoundingBox();var bbox_min=bbox.min;var bbox_max=bbox.max;target=eDwTypes_19.HC.Point3.add(bbox_max,bbox_min).scale(.5);var eyeVec=eDwTypes_19.HC.Point3.scale(normal,distance);position=eDwTypes_19.HC.Point3.add(target,eyeVec);var vTest=new eDwTypes_19.HC.Point3(1,0,0);var isParallel=eDwTypes_19.HC.Point3.dot(vTest,normal);if(Math.abs(Math.abs(isParallel)-1)<.001){vTest.set(0,1,0);var vec=eDwTypes_19.HC.Point3.cross(normal,vTest);vec=vec.normalize();up=eDwTypes_19.HC.Point3.cross(vec,normal);up=up.normalize()}else{up=eDwTypes_19.HC.Point3.cross(normal,vTest);up=up.normalize()}var dotProd=eDwTypes_19.HC.Point3.dot(up,new eDwTypes_19.HC.Point3(1,0,0));if(Math.abs(Math.abs(dotProd)-1)<.001&&dotProd<0){up=up.negate()}dotProd=eDwTypes_19.HC.Point3.dot(up,new eDwTypes_19.HC.Point3(0,1,0));if(Math.abs(Math.abs(dotProd)-1)<.001&&dotProd<0){up=up.negate()}dotProd=eDwTypes_19.HC.Point3.dot(up,new eDwTypes_19.HC.Point3(0,0,1));if(Math.abs(Math.abs(dotProd)-1)<.001&&dotProd<0){up=up.negate()}camera.setPosition(position);camera.setTarget(target);camera.setUp(up);this.setCamera(camera,500);return camera};eDwViewMgr.prototype.setCamera=function(iCameraHC,iTimeInMS){if(iTimeInMS===void 0){iTimeInMS=400}if(!iCameraHC)return false;var cameraHC=iCameraHC.copy();cameraHC.setProjection(this.mViewer.getHCView().getCamera().getProjection());return this.mViewer.getHCView().setCamera(cameraHC,iTimeInMS)};eDwViewMgr.prototype.enableAmbientOcclusion=function(iEnable){var _this=this;this.mViewer.getHCView().setAmbientOcclusionEnabled(iEnable);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_11.AmbientOcclChangeEvent,this,iEnable)];case 1:_a.sent();return[2]}}))}))})()};eDwViewMgr.prototype.fitScreenToNodes=function(iNodeIDsHC,ioCamera){return __awaiter(this,void 0,void 0,(function(){var model,bboxHC,subtract,viewVec,centerHC,add,ratio,boxMaxLen;return __generator(this,(function(_a){switch(_a.label){case 0:if(!ioCamera)return[2];model=this.mViewer.getModel();return[4,model.getBoundingBoxOfIDsHC(iNodeIDsHC)];case 1:bboxHC=_a.sent();if(bboxHC.isDegenerate())return[2];subtract=eDwTypes_19.HC.Point3.subtract;viewVec=subtract(ioCamera.getPosition(),ioCamera.getTarget());centerHC=bboxHC.center().copy();ioCamera.setTarget(centerHC);add=eDwTypes_19.HC.Point3.add;ioCamera.setPosition(add(centerHC,viewVec));ratio=ioCamera.getWidth()/ioCamera.getHeight();if(this.mViewer.getModel().isDrawing()){bboxHC.min.z=bboxHC.max.z=0}boxMaxLen=bboxHC.extents().length();ioCamera.setHeight(boxMaxLen);ioCamera.setWidth(boxMaxLen*ratio);this.setCamera(ioCamera,400);return[2]}}))}))};eDwViewMgr.prototype.pickFromPoint=function(iPnt2DHC,iPickConfig){return __awaiter(this,void 0,void 0,(function(){var selObjHC,toLocalTransformHC,viewHC,iExcp_17;return __generator(this,(function(_a){switch(_a.label){case 0:selObjHC=eDwTypes_19.HC.Selection.SelectionItem.create();toLocalTransformHC=new eDwTypes_19.HC.Matrix;_a.label=1;case 1:_a.trys.push([1,3,,4]);viewHC=this.mViewer.getHCView();return[4,viewHC.pickFromPoint(iPnt2DHC,iPickConfig)];case 2:selObjHC=_a.sent();console.debugLog("eDwViewMgr","eDwViewMgr.pickFromPoint() - "+selObjHC.getNodeId()+" - "+JSON.stringify(iPnt2DHC));console.assert(!isNaN(toLocalTransformHC.m[0]),"Not number before");toLocalTransformHC=eDwSelObj.getLocalTransform(selObjHC,this.mViewer.getModel());console.assert(!isNaN(toLocalTransformHC.m[0]),"Not number after");return[3,4];case 3:iExcp_17=_a.sent();console.debugLog("eDwViewMgr","eDwViewMgr.pickFromPoint() failed - "+iExcp_17.message);return[3,4];case 4:console.assert(!isNaN(toLocalTransformHC.m[0]),"Not number after 2");return[2,new eDwSelObj(selObjHC,toLocalTransformHC)]}}))}))};eDwViewMgr.prototype.onCameraUpdate=function(){this.mViewAnimationIndex+=1;if(this.mViewAnimationIndex>=eDwViewMgr.viewAnimations.length){this.mViewAnimationIndex=0;this.mViewAnimationActive=false;this.stop()}if(this.mViewAnimationActive){this.animateNextView()}};eDwViewMgr.prototype.animateNextView=function(){var _this=this;if(this.mViewAnimationActive){this.setViewOrientation(eDwViewMgr.viewAnimations[this.mViewAnimationIndex],2e3);this.mAnimationTimeOutID=window.setTimeout((function(){_this.onCameraUpdate()}),2e3)}};eDwViewMgr.prototype.adjustOrientation=function(ioEveVecHC,ioUpVecHC){if(this.mViewer.getModel().getProperty("zUp")==="true"){cCamZUpMat.transform(ioEveVecHC,ioEveVecHC);cCamZUpMat.transform(ioUpVecHC,ioUpVecHC)}};eDwViewMgr.viewAnimations=[eDwTypes_19.HC.ViewOrientation.Front,eDwTypes_19.HC.ViewOrientation.Back,eDwTypes_19.HC.ViewOrientation.Left,eDwTypes_19.HC.ViewOrientation.Right,eDwTypes_19.HC.ViewOrientation.Bottom,eDwTypes_19.HC.ViewOrientation.Top,eDwTypes_19.HC.ViewOrientation.Iso];return eDwViewMgr}();var cCamZUpMat=eDwTypes_19.HC.Matrix.createFromArray([0,1,0,0,0,0,1,0,1,0,0,0,0,0,0,1]);return eDwViewMgr}));define("eDwXSectionMgr",["require","exports","eDwXSectionOperator","eDwGeomUtils","eDwTypes","eDwTypes"],(function(require,exports,eDwXSectionOperator,eDwGeomUtils,eDwTypes_20,eDwTypes_21){"use strict";var eDwXSectionMgr=function(){function eDwXSectionMgr(iViewer){iViewer.XSectionMgr=this;this.mViewer=iViewer;var xSectionOp=new eDwXSectionOperator(iViewer);this.mXSectionOpID=iViewer.OperatorMgr.registerCustomOperator(xSectionOp);this.HCXSectionMgr=iViewer.HCViewer.cuttingManager;this.SectionCapVisibility=false;this.mXSectionIndex=eDwTypes_20.SectionPlaneOrientation.XY.Index;this.mSectionVisibility=true;this.mSectionsVisibilityState=[false,false,false]}eDwXSectionMgr.prototype.unregister=function(){this.mViewer.OperatorMgr.unregisterCustomOperatorByID(this.mXSectionOpID);this.mViewer.XSectionMgr=null};eDwXSectionMgr.prototype.turnOnSectionPlane=function(iOn){var _this=this;if(this.getXSectionHC()){if(iOn){(function(){return __awaiter(_this,void 0,void 0,(function(){var ret;return __generator(this,(function(_a){switch(_a.label){case 0:ret=this.mViewer.OperatorMgr.push(this.mXSectionOpID);console.debugLog("Section","Section plane operator push ret = "+ret);return[4,this.HCXSectionMgr.setCappingGeometryVisibility(true)];case 1:_a.sent();return[2]}}))}))})()}else{var opID=this.mViewer.OperatorMgr.pop();console.debugLog("Section","Popped op ID = "+opID+" xSection op ID = "+this.mXSectionOpID)}}};eDwXSectionMgr.prototype.activateCurrent=function(){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.getXSectionHC().activate()];case 1:_a.sent();return[4,this.setToCurrentSectionPlane()];case 2:_a.sent();if(!!this.mSectionVisibility)return[3,4];return[4,this.updateSectionVisibility(false)];case 3:_a.sent();_a.label=4;case 4:return[2]}}))}))})()};eDwXSectionMgr.prototype.deactivateCurrent=function(){var _this=this;this.mSectionsVisibilityState=[false,false,false];(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.getXSectionHC().deactivate()];case 1:_a.sent();return[2]}}))}))})()};eDwXSectionMgr.prototype.isCurrentActive=function(){return this.getXSectionHC().isActive()};Object.defineProperty(eDwXSectionMgr.prototype,"SectionIndex",{get:function(){return this.mXSectionIndex},enumerable:false,configurable:true});eDwXSectionMgr.prototype.setSectionPlane=function(ioSection,iAllowActivation){if(iAllowActivation===void 0){iAllowActivation=true}return __awaiter(this,void 0,void 0,(function(){var bbox,bboxExtents,sectionHC,boxCenter,sectionPlane,minPlanePt,maxPlanePt,vec,centerPt,dir,mirrorPlaneNormal,mirrorPlane,maxOnPlnPt,minOnPlnPt,mirrorPlaneDist,distDir,revDistDir,pts;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.mViewer.getModel().calculateBoundingBox()];case 1:bbox=_a.sent();bboxExtents=bbox.extents();if(!ioSection||bboxExtents.equals(eDwTypes_21.HC.Point3.zero()))return[2];sectionHC=this.getXSectionHC();if(!(ioSection.Index!==this.mXSectionIndex))return[3,6];if(!sectionHC)return[3,5];if(!sectionHC.isActive())return[3,3];return[4,sectionHC.deactivate()];case 2:_a.sent();_a.label=3;case 3:return[4,this.HCXSectionMgr.refreshPlaneGeometry()];case 4:_a.sent();_a.label=5;case 5:this.mXSectionIndex=ioSection.Index;sectionHC=this.getXSectionHC();_a.label=6;case 6:boxCenter=bbox.center();if(!(sectionHC.getCount()<1))return[3,9];sectionPlane=ioSection.Plane.copy();sectionPlane.d=-sectionPlane.distanceToPoint(boxCenter);minPlanePt=eDwGeomUtils.dropPointOnPlane(bbox.min,sectionPlane);maxPlanePt=eDwGeomUtils.dropPointOnPlane(bbox.max,sectionPlane);vec=maxPlanePt.copy().subtract(minPlanePt);vec=vec.scale(.55);centerPt=eDwGeomUtils.dropPointOnPlane(boxCenter,sectionPlane);dir=sectionPlane.normal.copy();centerPt=centerPt.add(dir.scale(sectionPlane.d));mirrorPlaneNormal=eDwTypes_21.HC.Point3.zero();eDwTypes_21.HC.Util.oneVectorCross(sectionPlane.normal.copy(),mirrorPlaneNormal);mirrorPlane=eDwTypes_21.HC.Plane.createFromPointAndNormal(centerPt,mirrorPlaneNormal);maxOnPlnPt=eDwTypes_21.HC.Point3.add(centerPt,vec);minOnPlnPt=eDwTypes_21.HC.Point3.add(centerPt,vec.scale(-1));mirrorPlaneDist=mirrorPlane.distanceToPoint(maxOnPlnPt);distDir=mirrorPlaneNormal.copy().scale(2*mirrorPlaneDist);revDistDir=distDir.copy().scale(-1);pts=[];pts.push(minOnPlnPt);pts.push(eDwTypes_21.HC.Point3.add(maxOnPlnPt,revDistDir));pts.push(maxOnPlnPt);pts.push(eDwTypes_21.HC.Point3.add(minOnPlnPt,distDir));sectionHC=this.getXSectionHC();return[4,sectionHC.addPlane(sectionPlane,pts)];case 7:_a.sent();return[4,sectionHC.setColor(eDwTypes_21.HC.Color.createFromFloat(0,1,0))];case 8:_a.sent();_a.label=9;case 9:return[4,this.updateSectionVisibility(this.mSectionVisibility)];case 10:_a.sent();return[4,this.HCXSectionMgr.setStandinGeometryPickable(true)];case 11:_a.sent();return[2]}}))}))};eDwXSectionMgr.prototype.flipSectionPlane=function(){var _this=this;var sectionHC=this.getXSectionHC();if(!sectionHC)return;var sectionPlane=sectionHC.getPlane(0);if(!sectionPlane)return;sectionPlane.normal.negate();sectionPlane.d=-sectionPlane.d;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,sectionHC.updatePlane(0,sectionPlane)];case 1:_a.sent();return[2]}}))}))})()};eDwXSectionMgr.prototype.setViewToSectionPlane=function(){var sectionHC=this.getXSectionHC();if(!sectionHC)return null;var sectionPlane=sectionHC.getPlane(0);if(!sectionPlane)return null;return this.mViewer.ViewMgr.setViewOrientationToDirection(sectionPlane.normal.copy())};eDwXSectionMgr.prototype.moveCurrentAlongNormal=function(iDistVec){var _this=this;var camera=this.mViewer.getHCView().getCamera();var camPosition=camera.getPosition();var camTarget=camera.getTarget();var camUp=camera.getUp();var camZ=camTarget.subtract(camPosition);camZ=camZ.normalize();var camY=camUp.normalize();var camX=eDwTypes_21.HC.Point3.cross(camZ,camY);var realVec=camX.scale(iDistVec.x).add(camY.scale(iDistVec.y));realVec.add(camZ.scale(iDistVec.z));var sectionHC=this.getXSectionHC();var sectionPlaneHC=sectionHC.getPlane(0);var normal=sectionPlaneHC.normal.copy();normal=normal.normalize();var distance=eDwTypes_21.HC.Point3.dot(realVec,normal);if(Math.abs(distance)<1e-6)return;sectionPlaneHC.d-=distance;var lenVec=normal.scale(distance);var newPosMat=new eDwTypes_21.HC.Matrix;newPosMat=newPosMat.setTranslationComponent(lenVec.x,lenVec.y,lenVec.z);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,sectionHC.updatePlane(0,sectionPlaneHC,newPosMat,true,false)];case 1:_a.sent();return[2]}}))}))})()};eDwXSectionMgr.prototype.disableSectionCapVisibility=function(iDisable){this.setSectionCapVisibility(iDisable?false:this.mEnableSectionCaps)};eDwXSectionMgr.prototype.projectPoint=function(iPnt){var sectionHC=this.getXSectionHC();var sectionPlaneHC=sectionHC.getPlane(0);return eDwGeomUtils.dropPointOnPlane(iPnt,sectionPlaneHC)};eDwXSectionMgr.prototype.getXSectionHC=function(){return this.HCXSectionMgr.getCuttingSection(this.mXSectionIndex)};eDwXSectionMgr.prototype.setSectionCapVisibility=function(iEnable){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.HCXSectionMgr.setCappingFaceColor(iEnable?cSectionCapFaceColor:null)];case 1:_a.sent();return[4,this.HCXSectionMgr.setCappingLineColor(iEnable?null:cSectionCapOutlineColor)];case 2:_a.sent();return[2]}}))}))})()};eDwXSectionMgr.prototype.updateSectionVisibility=function(iVisible){return __awaiter(this,void 0,void 0,(function(){var activePlaneX,isSectionVisible,iExcp_18;return __generator(this,(function(_a){switch(_a.label){case 0:activePlaneX=this.getXSectionHC();activePlaneX.setOpacity(iVisible?cSectionPlaneOpacity:0);isSectionVisible=this.mSectionsVisibilityState[this.mXSectionIndex];this.mSectionsVisibilityState[this.mXSectionIndex]=iVisible;if(!iVisible)return[3,7];if(!(activePlaneX.isActive()&&isSectionVisible))return[3,4];_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,activePlaneX.deactivate()];case 2:_a.sent();return[3,4];case 3:iExcp_18=_a.sent();return[3,4];case 4:return[4,this.HCXSectionMgr.refreshPlaneGeometry()];case 5:_a.sent();return[4,activePlaneX.activate()];case 6:_a.sent();_a.label=7;case 7:return[2]}}))}))};eDwXSectionMgr.prototype.setToCurrentSectionPlane=function(){return __awaiter(this,void 0,void 0,(function(){var orientation,orientations,_a,_b,_i,orientationName;return __generator(this,(function(_c){switch(_c.label){case 0:orientations=eDwTypes_20.SectionPlaneOrientation;_a=[];for(_b in orientations)_a.push(_b);_i=0;_c.label=1;case 1:if(!(_i<_a.length))return[3,4];orientationName=_a[_i];orientation=orientations[orientationName];if(!(orientation.Index===this.mXSectionIndex))return[3,3];return[4,this.setSectionPlane(orientation)];case 2:_c.sent();return[2];case 3:_i++;return[3,1];case 4:return[2]}}))}))};Object.defineProperty(eDwXSectionMgr.prototype,"SectionCapVisibility",{get:function(){return this.mEnableSectionCaps},set:function(iEnable){this.mEnableSectionCaps=iEnable;this.setSectionCapVisibility(iEnable)},enumerable:false,configurable:true});Object.defineProperty(eDwXSectionMgr.prototype,"SectionVisibility",{set:function(iVisible){var _this=this;this.mSectionVisibility=iVisible;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.updateSectionVisibility(this.mSectionVisibility)];case 1:_a.sent();return[2]}}))}))})()},enumerable:false,configurable:true});return eDwXSectionMgr}();var cSectionPlaneOpacity=.3;var cSectionCapFaceColor=new eDwTypes_21.HC.Color(128,128,128);var cSectionCapOutlineColor=new eDwTypes_21.HC.Color(255,0,0);return eDwXSectionMgr}));define("eDwXSectionOperator",["require","exports","eDwTypes","eDwOperatorBaseDeps","eDwCommandMgr","eDwMoveSectionPlaneCmd","utils"],(function(require,exports,eDwTypes_22,eDwOperatorBaseDeps_3,eDwCommandMgr,eDwMoveSectionPlaneCmd,utils){"use strict";var eDwXSectionOperator=function(_super){__extends(eDwXSectionOperator,_super);function eDwXSectionOperator(iViewer){return _super.call(this,iViewer)||this}eDwXSectionOperator.prototype.onActivate=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.onActivate.call(this)];case 1:_a.sent();this.Viewer.XSectionMgr.activateCurrent();return[2]}}))}))};eDwXSectionOperator.prototype.onDeactivate=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.Viewer.XSectionMgr.deactivateCurrent();return[4,_super.prototype.onDeactivate.call(this)];case 1:_a.sent();return[2]}}))}))};eDwXSectionOperator.prototype.onMouseDown=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var selObj,selObjNodeIDHC,sectionMgr,typeOfSel,objHC,sectionMgrHC;var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:if(!ioMouseEvent||!this.Viewer.XSectionMgr.isCurrentActive()){ioMouseEvent.setHandled(true);return[2]}return[4,eDwOperatorBaseDeps_3.eDwBaseOperator.getPickResult(ioMouseEvent,this.Viewer.ViewMgr)];case 1:selObj=_a.sent();selObjNodeIDHC=selObj.getIDHC();if(utils.isNaN(selObjNodeIDHC)||selObjNodeIDHC>=0){ioMouseEvent.setHandled(false);return[2]}return[4,_super.prototype.onMouseDown.call(this,ioMouseEvent)];case 2:_a.sent();sectionMgr=this.Viewer.XSectionMgr;sectionMgr.disableSectionCapVisibility(true);ioMouseEvent.setHandled(true);if(selObjNodeIDHC){typeOfSel=selObj.getSelectionType();objHC=typeOfSel===eDwTypes_22.HC.SelectionType.None?null:selObj;console.debugLog("Section","sel obj = "+JSON.stringify(objHC));sectionMgrHC=this.Viewer.XSectionMgr.HCXSectionMgr;if(sectionMgrHC.getCuttingSectionFromNodeId(selObjNodeIDHC)){this.mSectionDragPtHC=this.screenToWorld(ioMouseEvent.getPosition())||this.mSectionDragPtHC}}(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!this.mMoveSectionCmd)return[3,2];return[4,this.mMoveSectionCmd.cancel()];case 1:_a.sent();_a.label=2;case 2:this.mMoveSectionCmd=new eDwMoveSectionPlaneCmd(this.Viewer);return[2]}}))}))})();return[2]}}))}))};eDwXSectionOperator.prototype.onMouseMove=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var crossSectionMgr,pos2DHC,pnt3DHC,delta;return __generator(this,(function(_a){ioMouseEvent.setHandled(false);crossSectionMgr=this.Viewer.XSectionMgr;if(!crossSectionMgr.isCurrentActive()){return[2]}if(this.CurrInputInfo&&this.mSectionDragPtHC){pos2DHC=ioMouseEvent.getPosition();pnt3DHC=this.screenToWorld(pos2DHC);if(!pnt3DHC)return[2];delta=eDwTypes_22.HC.Point3.subtract(pnt3DHC,this.mSectionDragPtHC);this.Viewer.XSectionMgr.moveCurrentAlongNormal(delta);this.mSectionDragPtHC=pnt3DHC;ioMouseEvent.setHandled(true)}return[2]}))}))};eDwXSectionOperator.prototype.onMouseUp=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.onMouseUp.call(this,ioMouseEvent)];case 1:_a.sent();this.Viewer.XSectionMgr.disableSectionCapVisibility(false);ioMouseEvent.setHandled(false);delete this.mSectionDragPtHC;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!this.mMoveSectionCmd)return[3,2];return[4,eDwCommandMgr.get().run(this.mMoveSectionCmd,"commit")];case 1:_a.sent();_a.label=2;case 2:delete this.mMoveSectionCmd;return[2]}}))}))})();return[2]}}))}))};eDwXSectionOperator.prototype.needsSelection=function(iEventType){return iEventType===eDwTypes_22.HC.EventType.MouseDown||iEventType===eDwTypes_22.HC.EventType.TouchStart};eDwXSectionOperator.prototype.screenToWorld=function(iPos2DHC){var viewHC=this.Viewer.getHCView();var normScrPos2DHC=viewHC.pointToWindowPosition(iPos2DHC);var inPnt3DHC=new eDwTypes_22.HC.Point3(normScrPos2DHC.x,normScrPos2DHC.y,0);var projMatHC=viewHC.getProjectionMatrix();projMatHC.m[15]=1;var invMatHC=eDwTypes_22.HC.Matrix.inverse(projMatHC);if(!invMatHC)return null;var tMatHC=invMatHC.transpose();var worldPnt3D=eDwTypes_22.HC.Point3.zero();var div=inPnt3DHC.x*tMatHC.m[3]+inPnt3DHC.y*tMatHC.m[7]+inPnt3DHC.z*tMatHC.m[11]+tMatHC.m[15];worldPnt3D.x=(inPnt3DHC.x*tMatHC.m[0]+inPnt3DHC.y*tMatHC.m[1]+inPnt3DHC.z*tMatHC.m[2]+tMatHC.m[3])/div;worldPnt3D.y=(inPnt3DHC.x*tMatHC.m[4]+inPnt3DHC.y*tMatHC.m[5]+inPnt3DHC.z*tMatHC.m[6]+tMatHC.m[7])/div;worldPnt3D.z=(inPnt3DHC.x*tMatHC.m[8]+inPnt3DHC.y*tMatHC.m[9]+inPnt3DHC.z*tMatHC.m[10]+tMatHC.m[11])/div;return worldPnt3D};return eDwXSectionOperator}(eDwOperatorBaseDeps_3.eDwBaseOperator);return eDwXSectionOperator}));define("eDwZoomToFitCmd",["require","exports","eDwSupportsHistoryCmd"],(function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwZoomToFitCmd=function(_super){__extends(eDwZoomToFitCmd,_super);function eDwZoomToFitCmd(iViewer,iNodeID,iCamera){var _this=_super.call(this,iViewer)||this;_this.mInitialCamera=iCamera.copy();_this.mFinalCamera=iCamera.copy();_this.mNodeIDHC=iNodeID;return _this}eDwZoomToFitCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.ViewMgr.setCamera(this.mInitialCamera);return[2,true]}}))}))};eDwZoomToFitCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.ViewMgr.setCamera(this.mFinalCamera);return[2,true]}}))}))};eDwZoomToFitCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.commit.call(this)];case 1:_a.sent();return[4,this.mViewer.ViewMgr.fitScreenToNodes([this.mNodeIDHC],this.mFinalCamera)];case 2:_a.sent();return[2]}}))}))};Object.defineProperty(eDwZoomToFitCmd.prototype,"Aggregable",{get:function(){return true},enumerable:false,configurable:true});return eDwZoomToFitCmd}(eDwSupportsHistoryCmd);return eDwZoomToFitCmd}));requirejs.config({baseUrl:"./js/3rdParty",paths:{jquery:"jquery.min","jquery-ui":"jquery-ui.min","jquery.fullscreen":"jquery.fullscreen.min","jquery.iframe-transport":"jquery.iframe-transport","jquery.fileupload":"jquery.fileupload","solidworks.web":"solidworks.web"},map:{"jquery.fileupload":{"jquery-ui/ui/widget":"jquery-ui"}},shim:{eDrawingsBase:{deps:["jquery"]},"jquery-ui":{deps:["jquery"]},"jquery.fullscreen":{deps:["jquery"]},"jquery.iframe-transport":{deps:["jquery"]},"jquery-ajax-native":{deps:["jquery"]}}});requirejs(["eDrawingsWebViewer"],(function(eDwWebViewer){console.excludeDebugLogCategories=["UIEvents","BaseSelOp","Operator"];eDwWebViewer.start()}));define("utils",["require","exports"],(function(require,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.makeArray=exports.getFirstMatchedMethodObj=exports.formatString=exports.ReversibleStringEnum=exports.deepCopyArray=exports.getExtension=exports.isEqual=exports.isNumber=exports.isNaN=exports.appendToArray=exports.isOfType=exports.getObjectTypeName=exports.isInstanceOf=exports.populateMixinObjectFromClasses=exports.populateMixinObject=exports.MixinBase=exports.getUint8Array=exports.forAll=void 0;function forAll(iFunc,iDictionary){if(!iDictionary)return;Object.keys(iDictionary).forEach((function(iKeyString){var key=parseInt(iKeyString,10);iFunc(key,iDictionary[key])}))}exports.forAll=forAll;function getUint8Array(iBase64EncodedString){var binString=window.atob(iBase64EncodedString);var len=binString.length;var bytes=new Uint8Array(len);for(var i=0;i-1?true:false}return iInstance instanceof iConstructor?true:isMixinInstance()}exports.isInstanceOf=isInstanceOf;function getObjectTypeName(iObj){if(!iObj)return"";return iObj.constructor.toString().split(" ")[1].split("(")[0]}exports.getObjectTypeName=getObjectTypeName;function isOfType(iArg,iDiscriminator){var argType=typeof iArg;return iArg&&(argType==="object"||argType==="function")?iDiscriminator in iArg:false}exports.isOfType=isOfType;function appendToArray(iElemForArray,ioArray){if(!iElemForArray||!ioArray)return;if(iElemForArray instanceof Promise){ioArray.push(iElemForArray.catch((function(iExcp){return iExcp})))}else{ioArray.push(iElemForArray)}}exports.appendToArray=appendToArray;function isNaN(iInput){return!isNumber(iInput)}exports.isNaN=isNaN;var cOrigNaN=window.isNaN;window.isNaN=isNaN;function isNumber(iInput){return typeof iInput==="number"&&(iInput===0||!cOrigNaN(iInput))?true:false}exports.isNumber=isNumber;function isEqual(iFirstObj,iSecondObj,iStrict){if(iStrict===void 0){iStrict=false}if(iFirstObj===iSecondObj)return true;if(!iFirstObj||!iSecondObj)return false;if(typeof iFirstObj!==typeof iSecondObj)return false;var numKeys=Object.keys(iFirstObj).length;if(iStrict&&numKeys!==Object.keys(iSecondObj).length)return false;var matchKeys=0;for(var key in iFirstObj){if(iFirstObj[key]===iSecondObj[key])++matchKeys}return numKeys===matchKeys?true:false}exports.isEqual=isEqual;function getExtension(iString){if(!iString)return"";var pos=iString.lastIndexOf(".");return pos===-1?"":iString.substr(pos+1).toLowerCase()}exports.getExtension=getExtension;function deepCopyArray(iArray){return JSON.parse(JSON.stringify(iArray))}exports.deepCopyArray=deepCopyArray;var ReversibleStringEnum=function(){function ReversibleStringEnum(iReversibleMapData){this.mMapping=iReversibleMapData;this.mReverseMapping={};for(var key in iReversibleMapData){this.mReverseMapping[iReversibleMapData[key]]=key}}ReversibleStringEnum.prototype.getValue=function(iKey){var value=this.mMapping[iKey];return value?value:this.mReverseMapping[iKey]};return ReversibleStringEnum}();exports.ReversibleStringEnum=ReversibleStringEnum;function formatString(iFormat){var iArgs=[];for(var _i=1;_i-1?iKey:null}));return props.length?iObj[props[0]]:null}exports.getFirstMatchedMethodObj=getFirstMatchedMethodObj;function makeArray(iObj){return iObj?Object.keys(iObj).map((function(iKey){return iObj[iKey]})):[]}exports.makeArray=makeArray})); +var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P((function(resolve){resolve(value)}))}return new(P||(P=Promise))((function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())}))};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]-1){return}var augmentedMsg=iMsg;var stack=(new Error).stack;if(stack){var stackLine=stack.split("\n")[2];if(!stackLine)return;var callerLine=stackLine.slice(stackLine.lastIndexOf("("),stackLine.lastIndexOf(")")+1);if(!callerLine){callerLine=stackLine.slice(stackLine.lastIndexOf("@")+1);callerLine="("+callerLine+")"}augmentedMsg=callerLine+" "+iMsg}if(console.debugLogCategories.indexOf(iCategory)>-1||console.debugLogCategories.indexOf("*")>-1){if(iParams&&iParams.length)console.log(augmentedMsg,iParams);else console.log(augmentedMsg)}};define("eDrawingsWebViewer",["require","exports","eDwUI","eDwServiceMgr","eDwUIMessageReporter","eDrawingsWebViewerUtils","utils","eDwUIUtils"],(function(require,exports,eDwUI_1,eDwServiceMgr,eDwUIMessageReporter,eDrawingsWebViewerUtils,Utils,eDwUIUtils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.start=void 0;function start(iViewerOpts,iServerURL){eDrawingsWebViewerUtils.startViewer(iServerURL||c_server,"edrawings-canvas",iViewerOpts,l_init,eDwUIMessageReporter.showResultPanel)}exports.start=start;function l_init(ioViewerOpts,iContainerElemID){c_eDrawingsUI.initUIEvents(ioViewerOpts);var modelContents="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WHZa2WTEAeX0uFYuRGD3DAk2k0yfA2IRvFd6zLF87hJo5pq5A14x036xY9h+hG4n53QdUE9fi8QOVdfxitBJ5twB+ZyxLx6wkZ+VITMiRQd20qziKHkpZghkyGqKBh3bnLHiLQPbBEKpKuPp2jBOhUAjgW02iaAPJU1gm1QUqodjN0wqbTeoFtlml7Q+ZOKEbWbYgoih01XyLGwbGR2wTWSkPrw6gJUb9ELUAb1mX0RaMEj4sM25qDZ0AAorl2gDohHkxfIG2I4FeINKanJY3hxp345FUxbSSGBYlPnDBCJGFlakGpCxL9YK8gsKGjIctphmiPSXQRAByzeKFB6dlGa61gEyrTpjKyCCE2y0tmxAUUAEJ6ambrIXkyT+U1STy1r0rVKIMPLZA0f////////////////////////////////v7u7u7u7u7u7u/v/u////7u7u7u7u7u7u7u7u/v///////9/d3d39////////////////////7u7u7u7u////////////////v/////////////+3Czqz/////////////////////1eD/////////7/5HPz///3///////8/t6EJ2uQ2xAHwWPdXoQthQCL3BGOcuQGVEMPNFyFHkYefP21gZOk7XzS0uaBGSzeoAA9DYtNZxEe1Zl1bzpQu3d3d3d3d3d3d3d3d3d3d3d3d3d1d5qL7qq07joPu7kE9uru7u3sHlO7u7u4GBNXd3U1IRXd3BxrUjTale8ig7u7u7u7u7k5zxYC3iSAvDSCot6mE+JbBik8JqZhqAHc4IWnMQXAXFGhQW4wYF7SIDyDalDN3QBkgA8Ehg8688WOtzMWrf1oIi2S+HNQDedX2KpaLQr46V0rqSsZx8EMjGfb////////v7rZv59vd/exGa6F8siNbuRnB0eUrgUGXexERsfwlba7ym4zZlDsRA1Vy/ynCID+KXSJuCgpp4JuVCSueWarTe07CkDPimlBeFNshsu5Te+SFxITeO6QMA8JO89Ew6GtpqhrQmCONJvRpd1ntJ4K06KSKXRSqDQHRDUzYBsh61mGaFNXACQ2DCyyoAEYyGANBh+BJRSlkwCj6gNAWVG0MRJstlaCVuAo41ALEEdA8ij6c+hvXqMfHxz/+VYwVAHz84+PnX+nAz6ceP/8qmZ//KzLPxz8+fj7+8/Hz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DfCk1e5pcb+d/pYrcfbrDLBdGIOkB64lWwwX25BBISuM5DDLURi7hp8VhULAfSZ6MNbcE/Zo5uctRyLFaB819pqUnltuAyIjHibYlTL+7ru0z7951ee/qSOhE2CbswMfsPYftBEV/mzgYwfO1bjlOiyyi6CgY7/Rervl7t68QSuzi+QtuuU+VFq2GGB74VS75UJceRljaFu22HHL1Q3o1d/vPIZ0fDS0M8Y+z3Pj5t3vfnc0tLN5nhkZq9Xqr1ar1bnPvffe5z73au+999mxanZEvLn6jIZ2NkPpnJtMC6+WzkJ3QOmsdoV1zVREBxduVCcXK8xsclHqEVAqJO24ethy9oyqs2QMIXzzZyDnQfGC238RiAtNDgR/Rl0Ibc/V6dsYtWy5CK4ZglZZkohZn8l81mCRaN3rXve613NW3ete97rXve513b3v3s9KLnB2kXPz3n6JofYdmxs3CSVzbNCtf0fYkrqpjkjrXve6+153P9fdz3Wve6973Xvd6+47FY3Tvffe+9zn3th77733Ps99nq16Tded9p32vaapc03XtF1/uqbt+tP0XX+avutP173udfe9++67n6nzdZJqzquqt9etC9xkuQFpiNldOwCtZqOEVT+MaXaMOkMk32ysjpUMzq1ntWRH1q1V7LDOx8MwxP7CJKb6QFQwsHYBOLzttMhsQFDqrFYhNvwnTUwcvZ07/qb1yfqEhM4tAZ66p6gArElgyvw3KDJvsRAX7jS5EoUQ06xStrDLiSt1rztd03Wve033uvde0773mq5p3+te077XdPed9t133+ma9p3uvvvuu6d9p3333XdP077Tvvvuu+817ele0zXd/ezpmu6+0zU9077TfqZn2nd6ps41TZ2pM03XNHWmztS5pqkzfa2rdNpc03WVrulrXaVruqazCCBJUdf0ta7SNV3TNW3XVbqm7bpK17RdV+mavtZVuqbrKl3TNX2tq3RN2/Wna7r+dE3XdE3XdP3pmrbrT9e0XX+6pu360zVd0/Wna9rTtv90Tdd0/ema9p+u6Zqu6frTtF1/2tO2/3RN13RN17T/dE3XdE3Xn/Z0/Wna07b/9F1/2q4/XdO2/3RN13RN0zXt6bv+tKdt/+m7/rRdf7rutv+97nWvu+++173uvvte97r77nvd6153332ve93r7rvvvvvue919991333333Xfffffd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";if(modelContents!==""){eDwServiceMgr.get().disableAdvancedServices();ioViewerOpts.URL="";eDwUIUtils.viewFile("SlideDual-20ID-50H-100W-Nema23",null,ioViewerOpts,iContainerElemID,Utils.getUint8Array(modelContents))}}var c_eDrawingsUI=new eDwUI_1.eDwUI;var c_server=location.origin+location.pathname.slice(0,location.pathname.lastIndexOf("/")+1)}));define("eDrawingsWebViewerUtils",["require","exports","eDwEventMgr","eDwServiceMgr","eDwResultError","eDwAJAXError","eDwUIPluginMgr","eDwTypes","eDwEvents","eDwUIUtils","utils"],(function(require,exports,eDwEventMgr,eDwServiceMgr,eDwResultError,eDwAJAXError,eDwUIPluginMgr,eDwTypes_1,eDwEvents_1,eDwUIUtils,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.removeModelStreamCache=exports.shutdownViewer=exports.startViewer=exports.getViewerVersion=void 0;function getViewerVersion(){return"30.5.0.0019"}exports.getViewerVersion=getViewerVersion;function startViewer(iServerURL,iCanvasID,iViewerOpts,iInit,iOnError){var _this=this;l_ModelLoadEvents=function(iState){var viewerCanvasID="#"+iCanvasID;if(iState==="init"){var viewerJQ=$(viewerCanvasID);viewerJQ.on("edw:ModelLoaded",(function(iEvent,iViewer){var viewHC=iViewer.getHCView();viewHC.setPointSize(0,eDwTypes_1.HC.PointSizeUnit.ScreenPixels);viewHC.setHardEdgesEnabled(false);(function(){return __awaiter(_this,void 0,void 0,(function(){var iExcp_1;return __generator(this,(function(_a){switch(_a.label){case 0:_a.trys.push([0,2,,3]);return[4,l_processProductStructure(iViewer,iServerURL)];case 1:_a.sent();return[3,3];case 2:iExcp_1=_a.sent();l_displayError(iExcp_1,iOnError);return[3,3];case 3:return[2]}}))}))})()}));viewerJQ.on("edw:ModelLoadFailed",(function(iEvent,iViewer,iModelName,iReason){if(iOnError){iOnError({ErrorCode:"ModelLoadInViewerFailed",ErrorData:[iReason,iModelName]})}}))}else{var viewerJQ=$(viewerCanvasID);viewerJQ.off("edw:ModelLoaded");viewerJQ.off("edw:ModelLoadFailed")}};var viewerFeatOpts={};$.extend(viewerFeatOpts,c_featOps);if(iViewerOpts){$.extend(viewerFeatOpts,iViewerOpts)}else{eDwUIUtils.getRequestedQueryStringParams(location.href,viewerFeatOpts)}if(viewerFeatOpts.Debug){if(!console.debugLogCategories||console.debugLogCategories.length===0){console.debugLogCategories=[];console.debugLogCategories.push("*")}}eDwServiceMgr.create(iServerURL);(function(){return __awaiter(_this,void 0,void 0,(function(){var iExcp_2;return __generator(this,(function(_a){switch(_a.label){case 0:_a.trys.push([0,2,,3]);l_ModelLoadEvents("init");return[4,l_init(iCanvasID,viewerFeatOpts,iInit)];case 1:_a.sent();return[3,3];case 2:iExcp_2=_a.sent();l_displayError(iExcp_2,iOnError);return[3,3];case 3:return[2]}}))}))})()}exports.startViewer=startViewer;function shutdownViewer(iViewer){l_ModelLoadEvents("shutdown");iViewer.unregister()}exports.shutdownViewer=shutdownViewer;function removeModelStreamCache(iViewer,iServer){return __awaiter(this,void 0,void 0,(function(){var modelKey,serviceMgr,iExcp_3;return __generator(this,(function(_a){switch(_a.label){case 0:modelKey=iViewer.getCurrModelKey();if(!modelKey||!iViewer.ViewerFeatureOpts.DeleteModelCacheFileWhenDone){return[2]}console.debugLog("ModelLoad","Attempting to remove cached model: "+modelKey);serviceMgr=eDwServiceMgr.get();_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,serviceMgr.removeNamedCache(modelKey,iViewer.ViewerFeatureOpts.DeleteModelCacheFileWhenDone)];case 2:_a.sent();console.debugLog("ModelLoad","Removed cached model: "+modelKey);return[3,4];case 3:iExcp_3=_a.sent();console.debugLog("ModelLoad","Failed to remove cached model: "+modelKey);console.debugLog("ModelLoad",iExcp_3.message);throw iExcp_3;case 4:return[2]}}))}))}exports.removeModelStreamCache=removeModelStreamCache;function l_init(iContainerElemID,ioViewerOpts,iInit){return __awaiter(this,void 0,void 0,(function(){var serviceMgr;var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:serviceMgr=eDwServiceMgr.get();serviceMgr.disableAdvancedServices(utils.getExtension(ioViewerOpts.URL)==="scs");(function(){return __awaiter(_this,void 0,void 0,(function(){var pluginFiles,_i,pluginFiles_1,pluginFile,pluginClassName;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,serviceMgr.getPluginFiles()];case 1:pluginFiles=_a.sent();_i=0,pluginFiles_1=pluginFiles;_a.label=2;case 2:if(!(_i-1))return[3,4];return[4,exclusiveCmds[i].commit()];case 2:_a.sent();_a.label=3;case 3:--i;return[3,1];case 4:this.mActiveCmds=this.mActiveCmds.filter((function(iCmd){return!iCmd.Exclusive}));_a.label=5;case 5:return[2]}}))}))};eDwCommandMgr.prototype.detach=function(iCmd){var cmdPos=this.mActiveCmds.indexOf(iCmd);if(cmdPos===-1)return false;var removedCmds=this.mActiveCmds.splice(cmdPos,1);return removedCmds.length===1?true:false};return eDwCommandMgr}();return eDwCommandMgr}));define("eDwCompositeCmd",["require","exports","eDwSupportsHistoryCmd","eDwHistoryMgr","eDwCommandMgr","utils"],(function(require,exports,eDwSupportsHistoryCmd,eDwHistoryMgr,eDwCommandMgr,Utils){"use strict";var eDwCompositeCmd=function(_super){__extends(eDwCompositeCmd,_super);function eDwCompositeCmd(iViewer){var _this=_super.call(this,iViewer)||this;_this.mSubCmds=[];eDwHistoryMgr.get().pushStack();return _this}eDwCompositeCmd.prototype.initCmdActionImplementation=function(iHistoryActions){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.mCmdHistoryActions=iHistoryActions;if(!(this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeInit))return[3,2];return[4,this.mCmdHistoryActions.compositeInit(this)];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))};eDwCompositeCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){var actionExists,_a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!_super.prototype.undo.call(this))return[2,false];actionExists=this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeUndo;if(!actionExists)return[3,2];return[4,this.mCmdHistoryActions.compositeUndo(this)];case 1:_a=_b.sent();return[3,4];case 2:return[4,this.undoSubCmds()];case 3:_a=_b.sent();_b.label=4;case 4:return[2,_a]}}))}))};eDwCompositeCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){var actionExists,_a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!_super.prototype.redo.call(this))return[2,false];actionExists=this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeRedo;if(!actionExists)return[3,2];return[4,this.mCmdHistoryActions.compositeRedo(this)];case 1:_a=_b.sent();return[3,4];case 2:return[4,this.redoSubCmds()];case 3:_a=_b.sent();_b.label=4;case 4:return[2,_a]}}))}))};eDwCompositeCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.mSubCmds=eDwHistoryMgr.get().popStack();return[4,_super.prototype.commit.call(this)];case 1:_a.sent();if(!(this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeCommit))return[3,3];return[4,this.mCmdHistoryActions.compositeCommit(this)];case 2:_a.sent();_a.label=3;case 3:return[2]}}))}))};eDwCompositeCmd.prototype.cancel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.mSubCmds=eDwHistoryMgr.get().popStack();return[4,_super.prototype.cancel.call(this)];case 1:_a.sent();if(!(this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeCancel))return[3,3];return[4,this.mCmdHistoryActions.compositeCancel(this)];case 2:_a.sent();return[3,5];case 3:return[4,this.cancelSubCmds()];case 4:_a.sent();_a.label=5;case 5:this.clearSubCmds();return[2]}}))}))};eDwCompositeCmd.prototype.isCommitted=function(){return _super.prototype.isCommitted.call(this)&&!(this.InitialState===undefined)&&!(this.FinalState===undefined)};Object.defineProperty(eDwCompositeCmd.prototype,"AllowsAggregation",{get:function(){return true},enumerable:false,configurable:true});eDwCompositeCmd.prototype.undoSubCmds=function(){return __awaiter(this,void 0,void 0,(function(){var isSuccessful,lastCmdIndex,i,cmd,ret;return __generator(this,(function(_a){switch(_a.label){case 0:isSuccessful=true;lastCmdIndex=this.mSubCmds.length-1;i=lastCmdIndex;_a.label=1;case 1:if(!(i>-1))return[3,4];cmd=this.mSubCmds[i];return[4,cmd.undo()];case 2:ret=_a.sent();console.debugLog("History","Undo subcommand history at index "+i+(ret?" succeeded.":" failed.")+" Object Type = "+Utils.getObjectTypeName(cmd)+".");if(!ret){isSuccessful=false}_a.label=3;case 3:i--;return[3,1];case 4:return[2,isSuccessful]}}))}))};eDwCompositeCmd.prototype.cancelSubCmds=function(){return __awaiter(this,void 0,void 0,(function(){var cmdMgr,lastCmdIndex,i;return __generator(this,(function(_a){switch(_a.label){case 0:cmdMgr=eDwCommandMgr.get();lastCmdIndex=this.mSubCmds.length-1;i=lastCmdIndex;_a.label=1;case 1:if(!(i>-1))return[3,4];return[4,cmdMgr.remove(this.mSubCmds[i],"cancel")];case 2:_a.sent();_a.label=3;case 3:i--;return[3,1];case 4:delete this.InitialState;delete this.FinalState;return[2]}}))}))};eDwCompositeCmd.prototype.redoSubCmds=function(){return __awaiter(this,void 0,void 0,(function(){var isSuccessful,numCmds,i,cmd,ret;return __generator(this,(function(_a){switch(_a.label){case 0:isSuccessful=true;numCmds=this.mSubCmds.length;i=0;_a.label=1;case 1:if(!(i-1){eventHandlerMaps.splice(index,1);++numRemoved}}}return numRemoved};eDwEventMgr.prototype.removeAllEventHandlers=function(){this.mEventHandlers.clear()};eDwEventMgr.prototype.removeEventHandlers=function(iEvent){this.mEventHandlers.delete(iEvent)};eDwEventMgr.prototype.fireEvent=function(iEvent){var iArgs=[];for(var _i=1;_i-1){changedPropAttribNames.push(attribName)}}return changedPropAttribNames};eDwHierarchyNode.isHierarchyNode=function(iNode){return iNode.Name};eDwHierarchyNode.sPropagatingAttribNames=["Visible","Opaque"];return eDwHierarchyNode}();return eDwHierarchyNode}));define("eDwHistoryMgr",["require","exports","utils"],(function(require,exports,Utils){"use strict";var eDwHistoryMgr=function(){function eDwHistoryMgr(){this.clear()}eDwHistoryMgr.get=function(){if(!eDwHistoryMgr.sHistoryMgr){eDwHistoryMgr.sHistoryMgr=new eDwHistoryMgr}return eDwHistoryMgr.sHistoryMgr};eDwHistoryMgr.prototype.undo=function(){var currStacksElem=this.getCurrStackElem();var currStack=currStacksElem.Stack;var currStackCmdIndex=currStacksElem.getCurrCmdIndex();if(currStackCmdIndex<0||currStack.length===0){console.debugLog("History","Already before first command.");return null}currStacksElem.incrementCurrCmdIndex(-1);var cmd=currStack[currStackCmdIndex];cmd.undo();console.debugLog("History","Undoing command at index "+currStackCmdIndex+" Object type: "+Utils.getObjectTypeName(cmd));return cmd};eDwHistoryMgr.prototype.redo=function(){var currStacksElem=this.getCurrStackElem();var currStack=currStacksElem.Stack;var nextStackCmdIndex=currStacksElem.getCurrCmdIndex()+1;if(nextStackCmdIndex>=currStack.length){console.debugLog("History","Already after last command.");return null}currStacksElem.incrementCurrCmdIndex(1);var cmd=currStack[nextStackCmdIndex];cmd.redo();console.debugLog("History","Redoing command at index "+nextStackCmdIndex+" Object type: "+Utils.getObjectTypeName(cmd));return cmd};eDwHistoryMgr.prototype.push=function(iCmd){if(!iCmd)return;var currStacksElem=this.getCurrStackElem();var currStack=currStacksElem.Stack;var currStackSize=currStack.length;var currStackCmdIndex=currStacksElem.getCurrCmdIndex();if(currStackCmdIndex!==currStackSize-1){currStack.splice(currStackCmdIndex+1);console.debugLog("History","Truncated history to "+(currStackCmdIndex+1)+" elements.")}currStack.push(iCmd);currStacksElem.incrementCurrCmdIndex(1);console.debugLog("History","Adding command to history at index "+(currStackCmdIndex+1)+" Object Type = "+Utils.getObjectTypeName(iCmd)+".")};eDwHistoryMgr.prototype.clear=function(){console.debugLog("History","Clear all history.");this.mCmdStacksStack=[];this.pushStack()};eDwHistoryMgr.prototype.pushStack=function(){console.debugLog("History","Add a new history stack at index "+this.mCmdStacksStack.length+".");this.mCmdStacksStack.push(new eDwCmdStacksElem)};eDwHistoryMgr.prototype.popStack=function(){console.debugLog("History","Remove history stack from index "+(this.mCmdStacksStack.length-1)+" down to 0.");var activeCmds=[];var currStackElem=this.mCmdStacksStack.pop();if(currStackElem){var currCmdIndex=currStackElem.getCurrCmdIndex()+1;for(var i=0;i-1&&iKeyInfo[key]){keyModifiers+=key+"-"}}return keyModifiers?keyModifiers.substring(0,keyModifiers.length-1):"none"}}));define("eDwLayer",["require","exports","eDwNodeAttributes","utils"],(function(require,exports,eDwNodeAttributes_2,utils){"use strict";var eDwLayer=function(){function eDwLayer(iLayerName,iLayerIDHC,iAttribs){this.mName=iLayerName;this.mIDHC=iLayerIDHC;this.mInitAttribs=eDwNodeAttributes_2.eDwNodeAttributes.initAttribs(iAttribs);this.mAttribs=eDwNodeAttributes_2.eDwNodeAttributes.initAttribs(iAttribs);this.mNodeIDHCToHierNodeMap={}}eDwLayer.prototype.addNodes=function(iNodeIDsHC,iModel){for(var _i=0,iNodeIDsHC_1=iNodeIDsHC;_i.5){footVal*=signFactor;formattedString=utils.formatString("${footVal}ft ${formattedInches}",footVal.toFixed(0),formattedString)}return formattedString},area:function(iVal){var userUnits=_this.mUserUnits["Length"];var func=basicUserUnitResults[userUnits];var valueWithUnits=func.call(_this,iVal);return utils.formatString(cCommonUnitFormat,valueWithUnits,"^2")}};var unit=this.mUserUnits[iUnitType];unit=unit||iUnitType.toLowerCase();var func=basicUserUnitResults[unit];return func?func.call(this,iValue):iValue.toString()};eDwModel.prototype.setAttribOnHierNodes=function(iHierNodes,iAttribs){return __awaiter(this,void 0,void 0,(function(){var changedHierNodes,changedAncestorHierNodeMap,_i,iHierNodes_1,hierNode,changedAttribNames,propagatingAttribNames,changedChildHierNodes,parentHierNode,_a,propagatingAttribNames_1,attribName,attrib,parentAttrib,value,mergedAttrib,parentIDHC,parentIDHC,changedHierNodesAndAttribs,changedHCNodeID,ancHierNode;return __generator(this,(function(_b){switch(_b.label){case 0:changedHierNodes=[];changedAncestorHierNodeMap={};for(_i=0,iHierNodes_1=iHierNodes;_i0){var sceneData=$(data[0]);this.mOrigin=sceneData.attr("origin");switch(sceneData.attr("type")){case"drawing":this.mCategory="DRAWING";break;case"part":this.mCategory="PART";break;case"assembly":this.mCategory="ASSEMBLY";break;default:break}}this.mProperties=docJQ.find("property");var lengthUnit=this.getProperty("lengthunit");var isValidUnit=eDwUnits_1.LengthTypeValues.indexOf(lengthUnit)>-1;this.mUserUnits.Length=isValidUnit?lengthUnit:this.mUserUnits.Length;var angleUnit=this.getProperty("angleunit");isValidUnit=eDwUnits_1.AngleTypeValues.indexOf(angleUnit)>-1;this.mUserUnits.Angle=isValidUnit?angleUnit:this.mUserUnits.Angle;if(this.mCategory==="DRAWING"){this.parseModelViews(docJQ,"sheet","views","Unnamed Sheet","sheet");this.processLayers(iPropsMapHC)}else{this.parseModelViews(docJQ,"configuration","hierarchy","Unnamed Config","config");if(this.mCategory==="ASSEMBLY"){var modelViews=this.getModelViews();for(var _i=0,modelViews_3=modelViews;_i (HC values) | ";for(var _i=0,_a=this.mModelViews;_i<_a.length;_i++){var modelView=_a[_i];var nodeIDHC=modelView.Hierarchy.HOOPSID;msg+=modelView.Name+" - "+this.isVisibleForNodeHC(nodeIDHC)+" | "}console.debugLog("NodeVisibility",msg);console.debugLog("NodeVisibility","Active model view = "+this.mActiveModelView.Name);var hierNodes=this.mActiveModelView.getNodes();for(var _b=0,hierNodes_1=hierNodes;_b0&&ioHierachyNode){for(var i=0;i"){props.Name=props.Name.replace("<","<");props.Name=props.Name.replace(">",">")}props.Visible=trueFalseOrIndeterminate(iElemJQ.attr("visible"));props.Opaque=falseTrueOrIndeterminate(iElemJQ.attr("transparent"));props.Selectable=trueFalseOrIndeterminate(iElemJQ.attr("selectable"));props.HOOPSID=parseInt(iElemJQ.attr("id"),10)}return props}function l_getPropsAsAttribs(iNodeProps){var nodeAttribs={};eDwNodeAttributes_3.eDwNodeAttributes.setAttribs(nodeAttribs,iNodeProps);return nodeAttribs}function l_getDefaultCamera(iElemJQ){var perspectiveStr=iElemJQ.attr("camPerspective");if(!perspectiveStr)return undefined;var posPtHC=new eDwTypes_7.HC.Point3(parseFloat(iElemJQ.attr("camPosX")),parseFloat(iElemJQ.attr("camPosY")),parseFloat(iElemJQ.attr("camPosZ")));var tgtPtHC=new eDwTypes_7.HC.Point3(parseFloat(iElemJQ.attr("camTgtX")),parseFloat(iElemJQ.attr("camTgtY")),parseFloat(iElemJQ.attr("camTgtZ")));var upVecHC=new eDwTypes_7.HC.Point3(parseFloat(iElemJQ.attr("upX")),parseFloat(iElemJQ.attr("upY")),parseFloat(iElemJQ.attr("upZ")));var width=parseFloat(iElemJQ.attr("camFieldWidth"));var height=parseFloat(iElemJQ.attr("camFieldHeight"));var projHC=perspectiveStr==="true"?eDwTypes_7.HC.Projection.Perspective:eDwTypes_7.HC.Projection.Orthographic;return eDwTypes_7.HC.Camera.create(posPtHC,tgtPtHC,upVecHC,projHC,width,height)}function l_makeNodeAttribArray(iHierNodes,iAttrib,iIgnoreActive){if(iAttrib===void 0){iAttrib=null}if(iIgnoreActive===void 0){iIgnoreActive=true}return iHierNodes.map((function(iHierNode){var attrib={};$.extend(attrib,iHierNode.getAttribs(iIgnoreActive));if(iAttrib)$.extend(attrib,iAttrib);return{HierNode:iHierNode,Attribs:attrib}}))}function l_notifyModelViewChange(iViewer,iModelView,iIsPart){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_2.ModelViewChangeEvent,iViewer,iModelView,!iIsPart)];case 1:_a.sent();return[2]}}))}))}return eDwModel}));define("eDwModelView",["require","exports","eDwHierarchyNode"],(function(require,exports,eDwHierarchyNode){"use strict";var eDwModelView=function(){function eDwModelView(Name,Category,iAttribs,iNodeIDHC,iModel,iDefCameraHC){if(iDefCameraHC===void 0){iDefCameraHC=null}this.Name=Name;this.Category=Category;this.Nodes={};this.mDefCameraHC=iDefCameraHC;this.Hierarchy=new eDwHierarchyNode(this.Name,this.Category,iAttribs,iNodeIDHC,null,this);this.Model=iModel}eDwModelView.prototype.getNodes=function(){var hierNodes=[];for(var hierNodeName in this.Nodes){hierNodes.push(this.Nodes[hierNodeName])}return hierNodes};eDwModelView.prototype.getDefaultCamera=function(){return this.mDefCameraHC};eDwModelView.prototype.resetAttribs=function(){return this.Hierarchy.resetAttribs()};return eDwModelView}();return eDwModelView}));define("eDwMoveSectionPlaneCmd",["require","exports","eDwTypes","eDwSupportsHistoryCmd"],(function(require,exports,eDwTypes_8,eDwSupportsHistoryCmd){"use strict";var eDwMoveSectionPlaneCmd=function(_super){__extends(eDwMoveSectionPlaneCmd,_super);function eDwMoveSectionPlaneCmd(iViewer){var _this=_super.call(this,iViewer)||this;_this.mInitialPntOnPlane=_this.mViewer.XSectionMgr.projectPoint(new eDwTypes_8.HC.Point3(0,0,0));return _this}eDwMoveSectionPlaneCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){var altDir;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];altDir=this.mDir.copy().negate();this.mViewer.XSectionMgr.moveCurrentAlongNormal(altDir);return[2,true]}}))}))};eDwMoveSectionPlaneCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.XSectionMgr.moveCurrentAlongNormal(this.mDir);return[2,true]}}))}))};eDwMoveSectionPlaneCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.commit.call(this)];case 1:_a.sent();this.mFinalPntOnPlane=this.mViewer.XSectionMgr.projectPoint(new eDwTypes_8.HC.Point3(0,0,0));this.mDir=this.mFinalPntOnPlane.subtract(this.mInitialPntOnPlane);return[2]}}))}))};eDwMoveSectionPlaneCmd.prototype.isCommitted=function(){return _super.prototype.isCommitted.call(this)&&!!this.mInitialPntOnPlane&&!!this.mFinalPntOnPlane};Object.defineProperty(eDwMoveSectionPlaneCmd.prototype,"Aggregable",{get:function(){return true},enumerable:false,configurable:true});return eDwMoveSectionPlaneCmd}(eDwSupportsHistoryCmd);return eDwMoveSectionPlaneCmd}));define("eDwNodeAttributes",["require","exports","utils"],(function(require,exports,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.NodeDisplayState=exports.eDwNodeAttributes=void 0;var eDwNodeAttributes=function(){function eDwNodeAttributes(){}eDwNodeAttributes.initAttribs=function(iSourceAttribs){var targetAttribs={};targetAttribs=eDwNodeAttributes.mergeAttribs(targetAttribs,iSourceAttribs);return targetAttribs};eDwNodeAttributes.setAttribs=function(ioTargetAttribs,iSourceAttribs){var changedAttribNames=[];for(var attribKey in iSourceAttribs){if(ioTargetAttribs[attribKey]!==iSourceAttribs[attribKey]){ioTargetAttribs[attribKey]=iSourceAttribs[attribKey];changedAttribNames.push(attribKey)}}return changedAttribNames};eDwNodeAttributes.mergeAttribs=function(ioTargetAttribs,iSourceAttribs){return eDwNodeAttributes.combineAttribs(ioTargetAttribs,iSourceAttribs,(function(iTargetValue,iSourceValue){return iTargetValue||iSourceValue}))};eDwNodeAttributes.intersectAttribs=function(iSrcAttrib1,iSrcAttrib2){return eDwNodeAttributes.combineAttribs(iSrcAttrib1,iSrcAttrib2,(function(iTargetValue,iSourceValue){return iTargetValue&&iSourceValue}))};eDwNodeAttributes.combineAttribs=function(iSrcAttrib1,iSrcAttrib2,iCombineFunc){var fullAttribs={};if(iSrcAttrib1&&iSrcAttrib2){fullAttribs=l_syncAttributeKeys(iSrcAttrib1,iSrcAttrib2);for(var attribKey in fullAttribs){var value=iCombineFunc(iSrcAttrib1[attribKey],iSrcAttrib2[attribKey]);if(value!==undefined)fullAttribs[attribKey]=value;else delete fullAttribs[attribKey]}}return utils.isEqual(fullAttribs,{})?undefined:fullAttribs};return eDwNodeAttributes}();exports.eDwNodeAttributes=eDwNodeAttributes;var NodeDisplayState;(function(NodeDisplayState){NodeDisplayState["Visible"]="Visible";NodeDisplayState["Invisible"]="Invisible";NodeDisplayState["Opaque"]="Opaque";NodeDisplayState["Transparent"]="Transparent"})(NodeDisplayState=exports.NodeDisplayState||(exports.NodeDisplayState={}));function l_syncAttributeKeys(ioTargetAttribs,iSourceAttribs){var attribs=$.extend({},ioTargetAttribs);for(var attribKey in iSourceAttribs){if(!attribs[attribKey]){attribs[attribKey]=undefined}}return attribs}}));define("eDwNodeColorInfo",["require","exports","eDwTypes"],(function(require,exports,eDwTypes_9){"use strict";var eDwNodeColorInfo=function(){function eDwNodeColorInfo(iNodeID,iSecondaryID,iColor,iType){this.mNodeID=iNodeID;this.mSecondID=iSecondaryID;this.mType=iType}eDwNodeColorInfo.prototype.reset=function(iModelHC){switch(this.mType){case eDwTypes_9.EntityMode.EDGE:iModelHC.unsetNodeLineColor(this.mNodeID,this.mSecondID);break;case eDwTypes_9.EntityMode.FACE:iModelHC.unsetNodeFaceColor(this.mNodeID,this.mSecondID);break;case eDwTypes_9.EntityMode.VERTEX:default:break}};return eDwNodeColorInfo}();return eDwNodeColorInfo}));define("eDwOperationMixin",["require","exports"],(function(require,exports){"use strict";var eDwOperationMixin=function(){function eDwOperationMixin(){this.mExclusive=true}Object.defineProperty(eDwOperationMixin.prototype,"Exclusive",{get:function(){return this.mExclusive},enumerable:false,configurable:true});Object.defineProperty(eDwOperationMixin.prototype,"AllowsAggregation",{get:function(){return false},enumerable:false,configurable:true});Object.defineProperty(eDwOperationMixin.prototype,"Aggregable",{get:function(){return false},enumerable:false,configurable:true});return eDwOperationMixin}();return eDwOperationMixin}));define("eDwOperatorBaseDeps",["require","exports","eDwSelObj","eDwKeyMgr","eDwTypes","utils","eDwGeomUtils"],(function(require,exports,eDwSelObj,eDwKeyMgr_1,eDwTypes_10,utils,eDwGeomUtils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.eDwBaseOperator=exports.OperatorHC=exports.eDwOperatorMgr=void 0;var eDwOperatorMgr=function(){function eDwOperatorMgr(iViewer){this.mOpsData={};this.mOperatorMgrHC=iViewer.HCViewer.getOperatorManager();this.resetToDefault();var cameraZoomOp=this.mOperatorMgrHC.getOperator(eDwTypes_10.HC.OperatorId.Zoom);cameraZoomOp.setMouseWheelZoomInverted(false)}eDwOperatorMgr.prototype.registerCustomOperator=function(ioOp,iActivate){if(iActivate===void 0){iActivate=false}ioOp.OperatorID=this.mOperatorMgrHC.registerCustomOperator(ioOp);this.mOpsData[ioOp.OperatorID]={Op:ioOp,ActivatedByDefault:iActivate};if(iActivate)this.push(ioOp.OperatorID);return ioOp.OperatorID};eDwOperatorMgr.prototype.unregisterCustomOperator=function(iOp){this.unregisterCustomOperatorByID(iOp.OperatorID)};eDwOperatorMgr.prototype.unregisterCustomOperatorByID=function(iOpID){if(this.popToOp(iOpID)===iOpID){this.pop()}this.mOperatorMgrHC.unregisterCustomOperator(iOpID);delete this.mOpsData[iOpID]};eDwOperatorMgr.prototype.unregisterAll=function(){var _this=this;utils.forAll((function(iOpID,iOpData){_this.unregisterCustomOperatorByID(iOpID)}),this.mOpsData)};eDwOperatorMgr.prototype.push=function(iOpID){var activeOpID=this.getActiveOperatorID();if(activeOpID!==iOpID){return this.mOperatorMgrHC.push(iOpID)}return false};eDwOperatorMgr.prototype.pop=function(iOpID){var retOpID=eDwTypes_10.HC.OperatorId.None;if(!iOpID||iOpID&&this.getActiveOperatorID()===iOpID){retOpID=this.mOperatorMgrHC.pop()||eDwTypes_10.HC.OperatorId.None}return retOpID};eDwOperatorMgr.prototype.popToOp=function(iOpID){var retOpID=eDwTypes_10.HC.OperatorId.None;var opStackPos=this.mOperatorMgrHC.indexOf(iOpID);if(opStackPos>-1){while(this.getActiveOperatorID()!==iOpID){this.pop()}retOpID=iOpID}return retOpID};eDwOperatorMgr.prototype.getOperator=function(iOpID){return this.mOperatorMgrHC.getOperator(iOpID)};eDwOperatorMgr.prototype.getActiveOperatorID=function(){return this.mOperatorMgrHC.peek()};eDwOperatorMgr.prototype.getOperatorIndex=function(iOp){var opsStack=[];var numOps=this.mOperatorMgrHC.size();var index=-1;for(var i=0;i=0;i++){this.mOperatorMgrHC.push(opsStack[i])}return index};eDwOperatorMgr.prototype.setOpID=function(iOpID,iIndex){return this.mOperatorMgrHC.set(iOpID,iIndex)};eDwOperatorMgr.prototype.set=function(iOp,iIndex){return this.setOpID(iOp.OperatorID,iIndex)};eDwOperatorMgr.prototype.resetToDefault=function(){var _this=this;for(var opID=eDwTypes_10.HC.OperatorId.NavCube;opID>eDwTypes_10.HC.OperatorId.Navigate;opID--){this.pop(opID)}utils.forAll((function(iOpID,iOpData){if(iOpData.ActivatedByDefault){_this.push(iOpData.Op.OperatorID)}}),this.mOpsData)};return eDwOperatorMgr}();exports.eDwOperatorMgr=eDwOperatorMgr;var OperatorHC=function(){function OperatorHC(iOp){this.mOp=iOp;this.OperatorID=NaN}OperatorHC.prototype.onActivate=function(){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp)return[2];_a=this.mOp.onActivate;if(!_a)return[3,2];return[4,this.mOp.onActivate()];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onDeactivate=function(){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp)return[2];_a=this.mOp.onDeactivate;if(!_a)return[3,2];return[4,this.mOp.onDeactivate()];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onMouseDown=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioMouseEvent)return[2];_a=this.mOp.onMouseDown;if(!_a)return[3,2];return[4,this.mOp.onMouseDown(ioMouseEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onMouseMove=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioMouseEvent)return[2];_a=this.mOp.onMouseMove;if(!_a)return[3,2];return[4,this.mOp.onMouseMove(ioMouseEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onMouseUp=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioMouseEvent)return[2];_a=this.mOp.onMouseUp;if(!_a)return[3,2];return[4,this.mOp.onMouseUp(ioMouseEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onMousewheel=function(ioMouseEveent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioMouseEveent)return[2];_a=this.mOp.onMousewheel;if(!_a)return[3,2];return[4,this.mOp.onMousewheel(ioMouseEveent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onTouchStart=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioTouchEvent)return[2];_a=this.mOp.onTouchStart;if(!_a)return[3,2];return[4,this.mOp.onTouchStart(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onTouchMove=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioTouchEvent)return[2];_a=this.mOp.onTouchMove;if(!_a)return[3,2];return[4,this.mOp.onTouchMove(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onTouchEnd=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioTouchEvent)return[2];_a=this.mOp.onTouchEnd;if(!_a)return[3,2];return[4,this.mOp.onTouchEnd(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onKeyDown=function(ioKeyEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioKeyEvent)return[2];_a=this.mOp.onKeyDown;if(!_a)return[3,2];return[4,this.mOp.onKeyDown(ioKeyEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onKeyUp=function(ioKeyEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioKeyEvent)return[2];_a=this.mOp.onKeyUp;if(!_a)return[3,2];return[4,this.mOp.onKeyUp(ioKeyEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onViewOrientationChange=function(){return __awaiter(this,void 0,void 0,(function(){var op,_a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp)return[2];op=this.mOp;_a=op.onViewOrientationChange;if(!_a)return[3,2];return[4,op.onViewOrientationChange()];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.stopInteraction=function(){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp)return[2];_a=this.mOp.stopInteraction;if(!_a)return[3,2];return[4,this.mOp.stopInteraction()];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};return OperatorHC}();exports.OperatorHC=OperatorHC;var OperatorBaseHC=function(){function OperatorBaseHC(iViewer,iClickCB,iDoubleClickCB){this.Viewer=iViewer;this.CurrTouches=[];this.DragPt=undefined;this.CurrInputInfo=undefined;this.ActiveMouseButton="none";this.mDoPickTimeOutHandle=NaN;this.mClickCB=iClickCB;this.mDoubleClickCB=iDoubleClickCB}OperatorBaseHC.prototype.onMouseDown=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){if(!ioMouseEvent)return[2];if(eDwKeyMgr_1.eDwKeyMgr.isAnyPressed(ioMouseEvent)){this.setMouse(ioMouseEvent);this.ActiveMouseButton=eDwKeyMgr_1.eDwKeyMgr.getMouseButtonPressed(ioMouseEvent)}return[2]}))}))};OperatorBaseHC.prototype.onMouseMove=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var pos,oldInputInfo;return __generator(this,(function(_a){if(!ioMouseEvent)return[2];pos=ioMouseEvent.getPosition();if(this.CurrInputInfo){oldInputInfo=this.CurrInputInfo;this.setMouse(ioMouseEvent);if(!oldInputInfo.DragPt.equals(this.CurrInputInfo.DragPt)){this.DragPt=this.CurrInputInfo.DragPt}}console.debugLog("Operator","move screen pt = "+JSON.stringify(pos));return[2]}))}))};OperatorBaseHC.prototype.onMouseUp=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){if(!ioMouseEvent)return[2];this.onUp(ioMouseEvent);delete this.DragPt;delete this.CurrInputInfo;return[2]}))}))};OperatorBaseHC.prototype.onTouchStart=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){if(!ioTouchEvent)return[2];console.debugLog("TouchOp","Start - touch ID = "+ioTouchEvent.getId());this.addTouch(ioTouchEvent);return[2]}))}))};OperatorBaseHC.prototype.onTouchMove=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){if(!ioTouchEvent)return[2];console.debugLog("TouchOp","Move - touch ID = "+ioTouchEvent.getId());if(!this.hasTouchMoved(ioTouchEvent)){ioTouchEvent.setHandled(true);return[2]}this.updateTouch(ioTouchEvent);return[2]}))}))};OperatorBaseHC.prototype.onTouchEnd=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){if(!ioTouchEvent)return[2];console.debugLog("TouchOp","End - touch ID = "+ioTouchEvent.getId());ioTouchEvent.setHandled(false);this.removeTouchById(ioTouchEvent.getId());return[2]}))}))};OperatorBaseHC.prototype.onDeactivate=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){delete this.DragPt;return[2]}))}))};OperatorBaseHC.getAsMouseEvent=function(iTouchEvent,iMouseInputType,iButton){if(iButton===void 0){iButton=eDwTypes_10.HC.Buttons.Left}if(iTouchEvent){var pos=iTouchEvent.getPosition();var mouseEvent=new eDwTypes_10.HC.Event.MouseInputEvent(pos.x,pos.y,eDwTypes_10.HC.Button.None,iButton,eDwTypes_10.HC.KeyModifiers.None,iMouseInputType);mouseEvent.setHandled(iTouchEvent.getHandled());return mouseEvent}return null};OperatorBaseHC.prototype.isDragging=function(){return!!this.DragPt};OperatorBaseHC.prototype.addTouch=function(ioTouchEvent){if(!this.getTouchById(ioTouchEvent.getId())){var pnt3DHC=eDwGeomUtils.screenToWorld(ioTouchEvent.getPosition(),this.Viewer.getHCView());if(pnt3DHC){this.CurrTouches.push({Event:ioTouchEvent,DragPt:pnt3DHC,Pos:ioTouchEvent.getPosition()})}}};OperatorBaseHC.prototype.getTouchById=function(iTouchID){for(var i=0;iepsX&&Math.abs(delta.y)>epsY};OperatorBaseHC.prototype.updateTouch=function(ioTouchEvent){var touch=this.getTouchById(ioTouchEvent.getId());if(touch){var pos2DHC=ioTouchEvent.getPosition();var pnt3DHC=eDwGeomUtils.screenToWorld(pos2DHC,this.Viewer.getHCView());if(pnt3DHC){touch.Pos=pos2DHC;touch.DragPt=pnt3DHC}}};OperatorBaseHC.prototype.setMouse=function(ioMouseEvent){var pos2DHC=ioMouseEvent.getPosition();var pnt3DHC=eDwGeomUtils.screenToWorld(pos2DHC,this.Viewer.getHCView());if(!pnt3DHC)return;this.CurrInputInfo={Event:ioMouseEvent,DragPt:pnt3DHC,Pos:pos2DHC}};OperatorBaseHC.prototype.onClick=function(ioInputEvent){return this.mClickCB?this.mClickCB(ioInputEvent):false};OperatorBaseHC.prototype.onDoubleClick=function(ioInputEvent){return this.mDoubleClickCB?this.mDoubleClickCB(ioInputEvent):false};OperatorBaseHC.prototype.onUp=function(ioMouseEvent){var _this=this;var clearPickTimeOut=function(){if(utils.isNaN(_this.mDoPickTimeOutHandle))return;clearTimeout(_this.mDoPickTimeOutHandle);_this.mDoPickTimeOutHandle=NaN;_this.ActiveMouseButton="none"};var processClick=function(ioMouseEvent){_this.onClick(ioMouseEvent);clearPickTimeOut()};var stopFurtherProcessing=false;if(this.ActiveMouseButton==="left"){stopFurtherProcessing=true;if(utils.isNaN(this.mDoPickTimeOutHandle)){this.mDoPickTimeOutHandle=setTimeout((function(){processClick(ioMouseEvent)}),500)}else{clearPickTimeOut();stopFurtherProcessing=this.onDoubleClick(ioMouseEvent)}}else if(this.ActiveMouseButton!=="none"){processClick(ioMouseEvent);stopFurtherProcessing=true}return stopFurtherProcessing};return OperatorBaseHC}();var eDwBaseOperator=function(_super){__extends(eDwBaseOperator,_super);function eDwBaseOperator(iViewer){var _this=this;var clickCB=function(ioInputEvent){return _this.onClick(ioInputEvent)};var doubleClickCB=function(ioInputEvent){return _this.onDoubleClick(ioInputEvent)};_this=_super.call(this,new OperatorBaseHC(iViewer,clickCB,doubleClickCB))||this;return _this}eDwBaseOperator.prototype.onTouchStart=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;var _this=this;return __generator(this,(function(_b){switch(_b.label){case 0:if(!ioTouchEvent)return[2];if(!(this.CurrTouches.length>1))return[3,3];if(!this.mOp)return[2];_a=this.mOp.onTouchStart;if(!_a)return[3,2];return[4,this.mOp.onTouchStart(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[3,5];case 3:return[4,this.wrapAndCallAsMouseEvent(ioTouchEvent,eDwTypes_10.HC.MouseInputType.Down,(function(ioMouseEvent){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.onMouseDown(ioMouseEvent)];case 1:_a.sent();return[2]}}))}))}))];case 4:_b.sent();_b.label=5;case 5:return[2]}}))}))};eDwBaseOperator.prototype.onTouchMove=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;var _this=this;return __generator(this,(function(_b){switch(_b.label){case 0:if(!ioTouchEvent)return[2];if(!(this.CurrTouches.length>1))return[3,3];if(!this.mOp)return[2];_a=this.mOp.onTouchMove;if(!_a)return[3,2];return[4,this.mOp.onTouchMove(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[3,5];case 3:return[4,this.wrapAndCallAsMouseEvent(ioTouchEvent,eDwTypes_10.HC.MouseInputType.Move,(function(ioMouseEvent){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.onMouseMove(ioMouseEvent)];case 1:_a.sent();return[2]}}))}))}))];case 4:_b.sent();_b.label=5;case 5:return[2]}}))}))};eDwBaseOperator.prototype.onTouchEnd=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;var _this=this;return __generator(this,(function(_b){switch(_b.label){case 0:if(!ioTouchEvent)return[2];if(!(this.CurrTouches.length>1))return[3,3];if(!this.mOp)return[2];_a=this.mOp.onTouchEnd;if(!_a)return[3,2];return[4,this.mOp.onTouchEnd(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[3,5];case 3:return[4,this.wrapAndCallAsMouseEvent(ioTouchEvent,eDwTypes_10.HC.MouseInputType.Up,(function(ioMouseEvent){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.onMouseUp(ioMouseEvent)];case 1:_a.sent();return[2]}}))}))}),this.convertTouchToButtonHC(ioTouchEvent))];case 4:_b.sent();_b.label=5;case 5:return[2]}}))}))};Object.defineProperty(eDwBaseOperator.prototype,"Viewer",{get:function(){return this.mOp.Viewer},enumerable:false,configurable:true});Object.defineProperty(eDwBaseOperator.prototype,"CurrInputInfo",{get:function(){return this.mOp.CurrInputInfo},set:function(iInputInfo){this.mOp.CurrInputInfo=iInputInfo},enumerable:false,configurable:true});Object.defineProperty(eDwBaseOperator.prototype,"CurrTouches",{get:function(){return this.mOp.CurrTouches},enumerable:false,configurable:true});Object.defineProperty(eDwBaseOperator.prototype,"ActiveMouseButton",{get:function(){return this.mOp.ActiveMouseButton},set:function(iActiveMouseButton){this.mOp.ActiveMouseButton=iActiveMouseButton},enumerable:false,configurable:true});Object.defineProperty(eDwBaseOperator.prototype,"DragPt",{get:function(){return this.mOp.DragPt},set:function(iPnt3DHC){this.mOp.DragPt=iPnt3DHC},enumerable:false,configurable:true});eDwBaseOperator.prototype.isDragging=function(){return this.mOp.isDragging()};eDwBaseOperator.prototype.hasTouchMoved=function(ioTouchEvent){return this.mOp.hasTouchMoved(ioTouchEvent)};eDwBaseOperator.prototype.addTouch=function(ioTouchEvent){this.mOp.addTouch(ioTouchEvent)};eDwBaseOperator.prototype.getTouchById=function(iTouchID){return this.mOp.getTouchById(iTouchID)};eDwBaseOperator.prototype.removeTouchById=function(iTouchID){this.mOp.removeTouchById(iTouchID)};eDwBaseOperator.prototype.wrapAndCallAsMouseEvent=function(ioTouchEvent,iInputType,iMouseFunc,iButton){if(iButton===void 0){iButton=eDwTypes_10.HC.Buttons.Left}return __awaiter(this,void 0,void 0,(function(){var mouseEvent;return __generator(this,(function(_a){switch(_a.label){case 0:mouseEvent=OperatorBaseHC.getAsMouseEvent(ioTouchEvent,iInputType,iButton);if(!mouseEvent)return[3,2];console.debugLog("TouchAsMouse","Touch handled as mouse button "+iButton);this.ActiveMouseButton=eDwKeyMgr_1.eDwKeyMgr.getMouseButtonPressed(mouseEvent);return[4,iMouseFunc(mouseEvent)];case 1:_a.sent();ioTouchEvent.setHandled(mouseEvent.getHandled());_a.label=2;case 2:return[2]}}))}))};eDwBaseOperator.prototype.onClick=function(ioInputEvent){console.debugLog("Click","In eDwBaseOperator.onClick()");return false};eDwBaseOperator.prototype.onDoubleClick=function(ioInputEvent){console.debugLog("Click","In eDwBaseOperator.onDoubleClick()");return false};eDwBaseOperator.getPickResult=function(iEvent,iViewMgr,iPickConfig){if(iPickConfig===void 0){iPickConfig=new eDwTypes_10.HC.PickConfig(eDwTypes_10.HC.SelectionMask.All)}return __awaiter(this,void 0,void 0,(function(){var selObj;return __generator(this,(function(_a){switch(_a.label){case 0:selObj=eDwSelObj.createEmpty();if(!(iEvent&&iViewMgr))return[3,2];return[4,iViewMgr.pickFromPoint(iEvent.getPosition(),iPickConfig)];case 1:selObj=_a.sent();_a.label=2;case 2:return[2,selObj]}}))}))};eDwBaseOperator.prototype.convertTouchToButtonHC=function(ioTouchEvent){var buttonHC=eDwTypes_10.HC.Buttons.None;if(ioTouchEvent){buttonHC=eDwTypes_10.HC.Buttons.Left;if(!this.hasTouchMoved(ioTouchEvent)){var touchInfo=this.getTouchById(ioTouchEvent.getId());var startTime=touchInfo?touchInfo.Event.getDate().getTime():(new Date).getTime();if((new Date).getTime()-startTime>1e3){buttonHC=eDwTypes_10.HC.Buttons.Right}}}return buttonHC};return eDwBaseOperator}(OperatorHC);exports.eDwBaseOperator=eDwBaseOperator}));define("eDwPerspectiveCmd",["require","exports","eDwSupportsHistoryCmd"],(function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwPerspectiveCmd=function(_super){__extends(eDwPerspectiveCmd,_super);function eDwPerspectiveCmd(iViewer,iNewState){var _this=_super.call(this,iViewer)||this;_this.mInitiallyActive=iViewer.getPerspectiveMode();_this.mFinallyActive=iNewState;return _this}eDwPerspectiveCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.setPerspectiveMode(this.mInitiallyActive);return[2,true]}}))}))};eDwPerspectiveCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.setPerspectiveMode(this.mFinallyActive);return[2,true]}}))}))};eDwPerspectiveCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.commit.call(this)];case 1:_a.sent();this.mViewer.setPerspectiveMode(this.mFinallyActive);return[2]}}))}))};Object.defineProperty(eDwPerspectiveCmd.prototype,"Aggregable",{get:function(){return true},enumerable:false,configurable:true});return eDwPerspectiveCmd}(eDwSupportsHistoryCmd);return eDwPerspectiveCmd}));define("eDwResetCmd",["require","exports","eDwSupportsHistoryCmd","eDwEventMgr","eDwEvents"],(function(require,exports,eDwSupportsHistoryCmd,eDwEventMgr,eDwEvents_3){"use strict";var eDwResetCmd=function(_super){__extends(eDwResetCmd,_super);function eDwResetCmd(iViewer){var _this=_super.call(this,iViewer)||this;_this.mPerspective=iViewer.getPerspectiveMode();_this.mExplosionLevel=iViewer.getExplosionLevel();_this.mDrawMode=iViewer.getDrawMode();_this.mAmbientOcclusion=iViewer.getHCView().getAmbientOcclusionEnabled();_this.mCamera=iViewer.getHCView().getCamera();_this.resetToHome();return _this}eDwResetCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];return[4,this.resetToPrevious()];case 2:_a.sent();return[2,true]}}))}))};eDwResetCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];return[4,this.resetToHome()];case 2:_a.sent();return[2,true]}}))}))};eDwResetCmd.prototype.resetToHome=function(){return __awaiter(this,void 0,void 0,(function(){var viewMgr;return __generator(this,(function(_a){switch(_a.label){case 0:viewMgr=this.mViewer.ViewMgr;viewMgr.reset();return[4,this.mViewer.SelectionMgr.unSelectAllObjects()];case 1:_a.sent();this.mViewer.OperatorMgr.resetToDefault();this.mViewer.setPerspectiveMode(false);return[4,this.mViewer.getModel().resetToDefault()];case 2:_a.sent();this.mViewer.setExplosionLevel(0);this.mViewer.resetDrawMode();this.mViewer.ViewMgr.enableAmbientOcclusion(false);return[4,eDwEventMgr.get().fireEvent(eDwEvents_3.ResetSceneEvent,true)];case 3:_a.sent();return[2]}}))}))};eDwResetCmd.prototype.resetToPrevious=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.mViewer.setPerspectiveMode(this.mPerspective);this.mViewer.ViewMgr.setCamera(this.mCamera);this.mViewer.setExplosionLevel(this.mExplosionLevel);this.mViewer.setDrawMode(this.mDrawMode);this.mViewer.ViewMgr.enableAmbientOcclusion(this.mAmbientOcclusion);return[4,eDwEventMgr.get().fireEvent(eDwEvents_3.ResetSceneEvent,false)];case 1:_a.sent();return[2]}}))}))};return eDwResetCmd}(eDwSupportsHistoryCmd);return eDwResetCmd}));define("eDwResultError",["require","exports","eDwBaseError"],(function(require,exports,eDwBaseError){"use strict";var eDwResultError=function(_super){__extends(eDwResultError,_super);function eDwResultError(iResult){var _this=_super.call(this,"Result Error")||this;_this.Result=iResult;return _this}return eDwResultError}(eDwBaseError);return eDwResultError}));define("eDwSectionFlipCmd",["require","exports","eDwSupportsHistoryCmd"],(function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwSectionFlipCmd=function(_super){__extends(eDwSectionFlipCmd,_super);function eDwSectionFlipCmd(iViewer){return _super.call(this,iViewer)||this}eDwSectionFlipCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.XSectionMgr.flipSectionPlane();return[2,true]}}))}))};eDwSectionFlipCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.XSectionMgr.flipSectionPlane();return[2,true]}}))}))};eDwSectionFlipCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.commit.call(this)];case 1:_a.sent();this.mViewer.XSectionMgr.flipSectionPlane();return[2]}}))}))};Object.defineProperty(eDwSectionFlipCmd.prototype,"Aggregable",{get:function(){return true},enumerable:false,configurable:true});return eDwSectionFlipCmd}(eDwSupportsHistoryCmd);return eDwSectionFlipCmd}));define("eDwSectionShowCmd",["require","exports","eDwSupportsHistoryCmd"],(function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwSectionShowCmd=function(_super){__extends(eDwSectionShowCmd,_super);function eDwSectionShowCmd(iViewer,iShow){var _this=_super.call(this,iViewer)||this;_this.mInitialShow=true;_this.mFinalShow=iShow;return _this}eDwSectionShowCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.XSectionMgr.SectionVisibility=this.mInitialShow;return[2,true]}}))}))};eDwSectionShowCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.XSectionMgr.SectionVisibility=this.mFinalShow;return[2,true]}}))}))};eDwSectionShowCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.commit.call(this)];case 1:_a.sent();this.mViewer.XSectionMgr.SectionVisibility=this.mFinalShow;return[2]}}))}))};Object.defineProperty(eDwSectionShowCmd.prototype,"Aggregable",{get:function(){return true},enumerable:false,configurable:true});return eDwSectionShowCmd}(eDwSupportsHistoryCmd);return eDwSectionShowCmd}));define("eDwSelMgr",["require","exports","eDwSelObj","eDwSelectionOperator","eDwEventMgr","eDwKeyMgr","eDwTypes","eDwEvents","utils"],(function(require,exports,eDwSelObj,eDwSelectionOperator,eDwEventMgr,eDwKeyMgr_2,eDwTypes_11,eDwEvents_4,utils){"use strict";var eDwSelMgr=function(){function eDwSelMgr(iViewer){iViewer.SelectionMgr=this;this.mViewer=iViewer;this.mSelMgrHC=iViewer.HCViewer.selectionManager;this.mSelectableObjsHC=[];var selectOp=new eDwSelectionOperator(iViewer,this);var opMgr=this.mViewer.OperatorMgr;this.mSelectOperatorIDHC=opMgr.registerCustomOperator(selectOp,true);this.mSelectOverlayNotifiers={}}eDwSelMgr.prototype.setColorForViewMode=function(mode){var _this=this;var nodeSelColor;var nodeSelOutlineColor=new eDwTypes_11.HC.Color(0,255,0);var nodeElmtSelColor;var nodeElmtSelOutlineColor=new eDwTypes_11.HC.Color(255,255,0);var beautifulGreen=new eDwTypes_11.HC.Color(4,200,5);switch(mode){case eDwTypes_11.HC.DrawMode.WireframeOnShaded:nodeSelColor=beautifulGreen;nodeElmtSelColor=beautifulGreen;break;case eDwTypes_11.HC.DrawMode.Shaded:nodeSelColor=beautifulGreen;nodeElmtSelColor=beautifulGreen;break;case eDwTypes_11.HC.DrawMode.Wireframe:case eDwTypes_11.HC.DrawMode.HiddenLine:nodeSelColor=eDwTypes_11.HC.Color.white();nodeElmtSelColor=eDwTypes_11.HC.Color.white();break;default:var msg="Unknown draw mode: "+mode;console.debugLog("Selection",msg);throw new Error(msg)}this.mSelMgrHC.setNodeSelectionColor(nodeSelColor);this.mSelMgrHC.setNodeSelectionOutlineColor(nodeSelOutlineColor);this.mSelMgrHC.setNodeElementSelectionColor(nodeElmtSelColor);this.mSelMgrHC.setNodeElementSelectionOutlineColor(nodeElmtSelOutlineColor);if(this.mViewer.getModel().isDrawing()&&!this.mViewer.ViewerFeatureOpts.Debug){this.mSelMgrHC.setNodeSelectionHighlightMode(eDwTypes_11.HC.SelectionHighlightMode.OutlineOnly);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.mSelMgrHC.setHighlightNodeSelection(false)];case 1:_a.sent();return[2]}}))}))})()}};eDwSelMgr.prototype.unregister=function(){this.mViewer.OperatorMgr.unregisterCustomOperatorByID(this.mSelectOperatorIDHC);this.mViewer.SelectionMgr=null};eDwSelMgr.prototype.addSelectOverlayNotifier=function(iTypeIndex,iNotifier){if(!this.mSelectOverlayNotifiers[iTypeIndex]){this.mSelectOverlayNotifiers[iTypeIndex]=[]}this.mSelectOverlayNotifiers[iTypeIndex].push(iNotifier)};eDwSelMgr.prototype.removeSelectOverlayNotifier=function(iTypeIndex,iNotifier){var typeNotifiers=this.mSelectOverlayNotifiers[iTypeIndex];var pos=typeNotifiers.indexOf(iNotifier);if(pos>-1){typeNotifiers.splice(pos,1)}return false};eDwSelMgr.prototype.getSelectedNodeIDIndex=function(iHCNodeID){return this.getSelectableIDsHC().indexOf(iHCNodeID)};eDwSelMgr.prototype.onSelection=function(iSelectionEvent){return __awaiter(this,void 0,void 0,(function(){var keyMgr,ctrlKeyDown,shiftKeyDown,hierNodeSelObj,selObjIDHC,existingIdx,selectedAlready,selObjExists,numOfSelObjsAtStart;return __generator(this,(function(_a){switch(_a.label){case 0:keyMgr=eDwKeyMgr_2.eDwKeyMgr.get();ctrlKeyDown=keyMgr.isDown("Control");shiftKeyDown=keyMgr.isDown("Shift");hierNodeSelObj=this.createHierNodeSelObj(eDwSelObj.extendHCSelObj(iSelectionEvent.getSelection()));selObjIDHC=hierNodeSelObj.getIDHC();existingIdx=this.getSelectedNodeIDIndex(selObjIDHC);selectedAlready=existingIdx>-1;l_debugDumpSelection(hierNodeSelObj.getIDHC(),hierNodeSelObj.getSelectionType());selObjExists=utils.isNumber(selObjIDHC);numOfSelObjsAtStart=this.mSelectableObjsHC.length;if(!(numOfSelObjsAtStart&&!ctrlKeyDown&&!shiftKeyDown))return[3,2];return[4,this.unSelectAllObjects(false)];case 1:_a.sent();selectedAlready=false;return[3,5];case 2:if(!(ctrlKeyDown&&!shiftKeyDown&&selectedAlready&&selObjExists))return[3,4];this.mSelectableObjsHC.splice(existingIdx,1);return[4,this.unSelectObjs([hierNodeSelObj],this.mViewer.getModel().isDrawing())];case 3:_a.sent();return[2];case 4:if(!ctrlKeyDown&&shiftKeyDown&&selectedAlready&&selObjExists){return[2]}_a.label=5;case 5:if(!selObjExists)return[3,7];if(!selectedAlready)this.mSelectableObjsHC.push(hierNodeSelObj);return[4,eDwEventMgr.get().fireEvent(eDwEvents_4.SelectEvent,this.mViewer,[hierNodeSelObj])];case 6:_a.sent();return[3,9];case 7:if(!!numOfSelObjsAtStart)return[3,9];return[4,eDwEventMgr.get().fireEvent(eDwEvents_4.LeftClickEvent,this.mViewer)];case 8:_a.sent();_a.label=9;case 9:return[2]}}))}))};eDwSelMgr.prototype.selectByID=function(iID){return utils.isNumber(iID)?this.executeSelection(iID):false};eDwSelMgr.prototype.select=function(iCoords,iPickConfig){return __awaiter(this,void 0,void 0,(function(){var pickCfg,selObj,hierNodeSelObj;return __generator(this,(function(_a){switch(_a.label){case 0:pickCfg=iPickConfig?iPickConfig:new eDwTypes_11.HC.PickConfig(eDwTypes_11.HC.SelectionMask.Face);return[4,this.mViewer.ViewMgr.pickFromPoint(iCoords,pickCfg)];case 1:selObj=_a.sent();if(this.isSelectionHandled(selObj)){return[2,false]}hierNodeSelObj=this.createHierNodeSelObj(selObj);if(utils.isNumber(hierNodeSelObj.getIDHC())){return[2,this.executeSelection(hierNodeSelObj)]}this.mSelMgrHC.set(null);return[2,false]}}))}))};eDwSelMgr.prototype.isSelected=function(iHCNodeID){return this.getSelectableIDsHC().indexOf(iHCNodeID)<0?false:true};eDwSelMgr.prototype.append=function(iSelObj){this.mSelMgrHC.add(iSelObj)};eDwSelMgr.prototype.unSelectAllObjects=function(iClearHCSelList){if(iClearHCSelList===void 0){iClearHCSelList=true}return __awaiter(this,void 0,void 0,(function(){var unselectedHCObjs;return __generator(this,(function(_a){switch(_a.label){case 0:unselectedHCObjs=this.mSelectableObjsHC;this.mSelectableObjsHC=[];return[4,this.unSelectObjs(unselectedHCObjs,this.mViewer.getModel().isDrawing())];case 1:_a.sent();if(unselectedHCObjs.length>0&&iClearHCSelList){this.mSelMgrHC.selectNode(null)}return[2]}}))}))};eDwSelMgr.prototype.setViewToSelectedFace=function(){var camera=null;var selObjs=this.mSelMgrHC.getResults();for(var _i=0,selObjs_1=selObjs;_i0){return selIDsHC[selIDsHC.length-1]}return NaN};eDwSelMgr.prototype.getLastSelHierarchyNode=function(){var modelView=this.mViewer.getModel().getActiveModelView();return modelView.Nodes[this.getLastSelIDHC()]};eDwSelMgr.prototype.getSelectableIDsHC=function(){var selIDsHC=[];for(var _i=0,_a=this.mSelectableObjsHC;_i<_a.length;_i++){var selObjHC=_a[_i];var selIDHC=selObjHC.getNodeId();if(utils.isNumber(selIDHC))selIDsHC.push(selIDHC)}return selIDsHC};eDwSelMgr.prototype.getSelHierarchyNodes=function(){var selHierNodes=[];var modelView=this.mViewer.getModel().getActiveModelView();var seoIDsHC=this.getSelectableIDsHC();for(var _i=0,seoIDsHC_1=seoIDsHC;_i-1){iSelMgr.mSelectableObjsHC.splice(index,1)}var unselObjsHC_1=iSelMgr.mSelectableObjsHC;iSelMgr.mSelectableObjsHC=[];(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,iSelMgr.unSelectObjs(unselObjsHC_1,true)];case 1:_a.sent();return[4,hierNode.showBoundingBox(viewer,"on")];case 2:_a.sent();return[2]}}))}))})();shown=true}else{(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,hierNode.showBoundingBox(viewer,"toggle")];case 1:_a.sent();return[2]}}))}))})();shown=index>-1?false:true}if(shown){var selObjDupHC_1=eDwTypes_11.HC.Selection.SelectionItem.create(hierNode.HOOPSID);iSelMgr.addUniqueToSelectableObjsHC(selObjDupHC_1);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_4.SelectEvent,viewer,[selObjDupHC_1])];case 1:_a.sent();l_debugDumpSelection(selObjDupHC_1.getNodeId(),selObjDupHC_1.getSelectionType());return[2]}}))}))})()}}else{var selMgrHC=iSelMgr.mSelMgrHC;if(!selObjHC){selMgrHC.selectNode(nodeIDHC,iSelModeHC);var selObj=eDwSelObj.extendHCSelObj(selMgrHC.getLast());if(selObj.getIDHC()===nodeIDHC){iSelMgr.addUniqueToSelectableObjsHC(selObj)}}else{if(iSelModeHC===eDwTypes_11.HC.SelectionMode.Add){selMgrHC.add(selObjHC)}else if(iSelModeHC===eDwTypes_11.HC.SelectionMode.Set){selMgrHC.set(selObjHC)}else{var wasSelected=selMgrHC.isSelected(selObjHC);selMgrHC.toggle(selObjHC);if(wasSelected){var index=iSelMgr.mSelectableObjsHC.indexOf(selObjHC);if(index>-1){iSelMgr.mSelectableObjsHC.splice(index,1)}}}if(selMgrHC.isSelected(selObjHC)){iSelMgr.addUniqueToSelectableObjsHC(selObjHC)}}}return eDwTypes_11.HC.SelectionType.Part}return eDwTypes_11.HC.SelectionType.None}var ret=false;try{var selType=eDwTypes_11.HC.SelectionType.None;var keyMgr=eDwKeyMgr_2.eDwKeyMgr.get();if(!keyMgr.isDown("Control")&&!keyMgr.isDown("Shift")){selType=selectNodeHC(this,eDwTypes_11.HC.SelectionMode.Set);ret=true}else{var existingIdx=this.getSelectedNodeIDIndex(nodeIDHC);if(existingIdx>-1){if(keyMgr.isDown("Control")){this.mSelMgrHC.remove(this.mSelectableObjsHC[existingIdx]);this.mSelectableObjsHC.splice(existingIdx,1)}else if(keyMgr.isDown("Shift")){ret=true}}else{selType=selectNodeHC(this,eDwTypes_11.HC.SelectionMode.Add);if(this.getSelectedNodeIDIndex(nodeIDHC)>-1){ret=true}}}if(selType!==eDwTypes_11.HC.SelectionType.None){l_debugDumpSelection(nodeIDHC,selType)}}catch(iErr){console.log("eDwSelMgr.selectByID failed")}return ret};return eDwSelMgr}();function l_debugDumpSelection(iID,iSelType){console.debugLog("Selection","Selected Obj ID: "+iID+" - type: "+eDwTypes_11.HC.SelectionType[iSelType])}return eDwSelMgr}));define("eDwSelObj",["require","exports","eDwTypes","eDwGeomUtils","utils"],(function(require,exports,eDwTypes_12,eDwGeomUtils_1,utils){"use strict";var eDwSelObj=function(){function eDwSelObj(iSelObjHC,iToLocalTransformHC){if(iToLocalTransformHC===void 0){iToLocalTransformHC=null}utils.populateMixinObjectFromClasses(this,[eDwTypes_12.HC.Selection.SelectionItem]);$.extend(true,this,iSelObjHC);this.setPointInLocalSpace(iSelObjHC.getPosition(),iToLocalTransformHC)}eDwSelObj.prototype.getIDHC=function(){var nodeIDHC=this.getNodeId();return utils.isNumber(nodeIDHC)?nodeIDHC:NaN};eDwSelObj.prototype.getLocalPoint=function(){return this.mLocalPnt};eDwSelObj.prototype.getWorldPoint=function(){return this.getPosition()};eDwSelObj.prototype.getAsLocalPoint=function(iWorldPtHC){return this.mToLocalTransformHC&&iWorldPtHC?this.mToLocalTransformHC.transform(iWorldPtHC):iWorldPtHC};eDwSelObj.prototype.getAsWorldPoint=function(iLocalPtHC){var toWorldTransformHC=this.mToLocalTransformHC?eDwTypes_12.HC.Matrix.inverse(this.mToLocalTransformHC):null;return toWorldTransformHC&&iLocalPtHC?toWorldTransformHC.transform(iLocalPtHC):iLocalPtHC};eDwSelObj.prototype.getLocalVector=function(){var _this=this;return this.getVectorInfo((function(iPntWCHC){return _this.getAsLocalPoint(iPntWCHC)})).Vec};eDwSelObj.prototype.getWorldVector=function(){return this.getVectorInfo().Vec};eDwSelObj.prototype.getAsLocalVector=function(iWorldVecHC){var normalMatrix=this.mToLocalTransformHC?this.mToLocalTransformHC.normalMatrix():null;return iWorldVecHC&&normalMatrix?normalMatrix.transform(iWorldVecHC):null};eDwSelObj.prototype.getAsWorldVector=function(iLocalVecHC){var toWorldTransformHC=this.mToLocalTransformHC?eDwTypes_12.HC.Matrix.inverse(this.mToLocalTransformHC):null;var normalMatrix=toWorldTransformHC?toWorldTransformHC.normalMatrix():null;return iLocalVecHC&&normalMatrix?normalMatrix.transform(iLocalVecHC):null};eDwSelObj.prototype.getToLocalTransform=function(){return this.mToLocalTransformHC};eDwSelObj.prototype.findAngle=function(iSelObj){var _this=this;var selObj1Type=eDwSelObj.getSubEntityInfo(this).SubEntityTypeName;var selObj2Type=eDwSelObj.getSubEntityInfo(iSelObj).SubEntityTypeName;if(!selObj1Type||!selObj2Type||selObj2Type==="Point"||selObj1Type==="Point"){return NaN}var toLocalFunc;if(this.getToLocalTransform().equals(iSelObj.getToLocalTransform())){toLocalFunc=function(iPntWCHC){return _this.getAsLocalPoint(iPntWCHC)}}var selObjVecInfo1=this.getVectorInfo(toLocalFunc);var selObjVecInfo2=iSelObj.getVectorInfo(toLocalFunc);if(selObj1Type!==selObj2Type){var curveVecInfo=selObjVecInfo1;var faceVecInfo=selObjVecInfo2;if(selObj1Type==="Face"){curveVecInfo=selObjVecInfo2;faceVecInfo=selObjVecInfo1}var surfPlane=eDwTypes_12.HC.Plane.createFromPointAndNormal(faceVecInfo.Pts[0],faceVecInfo.Vec);faceVecInfo.Pts[0]=eDwGeomUtils_1.dropPointOnPlane(curveVecInfo.Pts[0],surfPlane);faceVecInfo.Pts[1]=eDwGeomUtils_1.dropPointOnPlane(curveVecInfo.Pts[1],surfPlane);faceVecInfo.Vec=eDwTypes_12.HC.Point3.subtract(faceVecInfo.Pts[0],faceVecInfo.Pts[1])}if(!selObjVecInfo1.Vec||!selObjVecInfo1.Pts||!selObjVecInfo2.Vec||!selObjVecInfo2.Pts)return NaN;var normal3DHC=eDwTypes_12.HC.Point3.cross(selObjVecInfo1.Vec,selObjVecInfo2.Vec);if(!eDwGeomUtils_1.isValidHCPoint(normal3DHC)||normal3DHC.length()newVec23DHC.length())vec13DHC=newVec13DHC;var newVec33DHC=eDwTypes_12.HC.Point3.subtract(pts3DHC[2],intPt3DHC);var newVec43DHC=eDwTypes_12.HC.Point3.subtract(pts3DHC[3],intPt3DHC);var vec23DHC=newVec43DHC;if(newVec33DHC.length()>newVec43DHC.length())vec23DHC=newVec33DHC;vec13DHC.normalize();vec23DHC.normalize();return Math.acos(eDwTypes_12.HC.Point3.dot(vec13DHC,vec23DHC))*180/Math.PI};eDwSelObj.extendHCSelObj=function(ioSelObj,iToLocalTransformHC){if(iToLocalTransformHC===void 0){iToLocalTransformHC=null}utils.populateMixinObjectFromClasses(ioSelObj,[eDwSelObj]);if(utils.isInstanceOf(ioSelObj,eDwSelObj)){var pos2DHC=ioSelObj.getPosition();if(pos2DHC){ioSelObj.setPointInLocalSpace(pos2DHC,iToLocalTransformHC)}return ioSelObj}throw new TypeError("eDwSelObj is undefined")};eDwSelObj.createEmpty=function(){return new eDwSelObj(eDwTypes_12.HC.Selection.SelectionItem.create())};eDwSelObj.getLocalTransform=function(ioSelObjHC,iModel){var toLocalTransformHC=new eDwTypes_12.HC.Matrix;var subEntityInfo=eDwSelObj.getSubEntityInfo(ioSelObjHC);if(subEntityInfo.SubEntity){var selObj=eDwSelObj.extendHCSelObj(ioSelObjHC);var selObjIDHC=selObj.getIDHC();var selHierNode=iModel.getHierarchyNode(selObjIDHC);if(selHierNode&&selHierNode.Category==="view"){var modelHC=iModel.getHCModel();var parentNodeHC=modelHC.getNodeParent(selHierNode.HOOPSID);var parentNetMatrixHC=modelHC.getNodeNetMatrix(parentNodeHC);var selNetMatrixHC=modelHC.getNodeNetMatrix(selObjIDHC);var invParentNetMatrix=parentNetMatrixHC.inverseAndDeterminant()[0]||new eDwTypes_12.HC.Matrix;var matrixHC=eDwTypes_12.HC.Matrix.multiply(selNetMatrixHC,invParentNetMatrix);toLocalTransformHC=eDwTypes_12.HC.Matrix.inverse(matrixHC)||new eDwTypes_12.HC.Matrix}}return toLocalTransformHC};eDwSelObj.getMinDistInfo=function(iSelPropsHC,iSelObjs,iModel){return __awaiter(this,void 0,void 0,(function(){function getMinDistPtToFace(iPointHC,iSelObj,iFaceSelObj,iModelHC){return __awaiter(this,void 0,void 0,(function(){var lineRay;return __generator(this,(function(_a){switch(_a.label){case 0:lineRay=new eDwTypes_12.HC.Ray(iPointHC,new eDwTypes_12.HC.Point3(0,0,0));return[4,getMinDistLineToFace(lineRay,iSelObj,iFaceSelObj,iModelHC)];case 1:return[2,_a.sent()]}}))}))}function getMinDistLineToFace(iRayHC,iSelObj,iFaceSelObj,iModelHC){return __awaiter(this,void 0,void 0,(function(){var distItem;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,iModelHC.computeMinimumFaceLineDistance(iFaceSelObj.getNodeId(),iFaceSelObj.getFaceEntity().getCadFaceIndex(),iRayHC)];case 1:distItem=_a.sent();return[2,adjustDistance(iSelObj,iFaceSelObj,distItem)]}}))}))}function adjustDistance(iSelObj,iFaceSelObj,ioDistItem){var toLocalTransformHC=iSelObj.getToLocalTransform();var toLocalTransformForFaceHC=iFaceSelObj.getToLocalTransform();if(toLocalTransformHC&&toLocalTransformForFaceHC&&toLocalTransformHC.equals(toLocalTransformForFaceHC)){ioDistItem.distance*=toLocalTransformHC.upperLeft3x3Determinant()}return ioDistItem}var selEntInfoHC0,selEntInfoHC1,modelHC,vertSelObj,faceSelObj,faceProp,pos2DHC,faceSelObj0,faceSelObj1,faceProp0,faceProp1,distItem,edgeSelObj,edgeProp,faceSelObj,faceProp,pntsWCHC,lineHC;return __generator(this,(function(_a){switch(_a.label){case 0:if(2!==iSelObjs.length)return[2,null];selEntInfoHC0=eDwSelObj.getSubEntityInfo(iSelObjs[0]);selEntInfoHC1=eDwSelObj.getSubEntityInfo(iSelObjs[1]);modelHC=iModel.getHCModel();if(!(selEntInfoHC0.SubEntityTypeName==="Point"&&selEntInfoHC1.SubEntityTypeName==="Face"||selEntInfoHC1.SubEntityTypeName==="Point"&&selEntInfoHC0.SubEntityTypeName==="Face"))return[3,3];vertSelObj=iSelObjs[0];faceSelObj=iSelObjs[1];faceProp=iSelPropsHC[1];if(selEntInfoHC1.SubEntityTypeName==="Point"&&selEntInfoHC0.SubEntityTypeName==="Face"){vertSelObj=iSelObjs[1];faceSelObj=iSelObjs[0];faceProp=iSelPropsHC[0]}pos2DHC=vertSelObj.getPosition();if(!pos2DHC){throw new TypeError("vertSelObj position is undefined")}if(!(faceProp instanceof eDwTypes_12.HC.SubentityProperties.PlaneElement))return[3,2];return[4,getMinDistPtToFace(vertSelObj.getPosition(),vertSelObj,faceSelObj,modelHC)];case 1:return[2,_a.sent()];case 2:return[3,10];case 3:if(!(selEntInfoHC0.SubEntityTypeName==="Face"&&selEntInfoHC1.SubEntityTypeName==="Face"))return[3,6];faceSelObj0=iSelObjs[0],faceSelObj1=iSelObjs[1];faceProp0=iSelPropsHC[0],faceProp1=iSelPropsHC[1];if(!(faceProp0 instanceof eDwTypes_12.HC.SubentityProperties.PlaneElement&&faceProp1 instanceof eDwTypes_12.HC.SubentityProperties.PlaneElement))return[3,5];return[4,modelHC.computeMinimumFaceFaceDistance(faceSelObj0.getNodeId(),faceSelObj0.getFaceEntity().getCadFaceIndex(),faceSelObj1.getNodeId(),faceSelObj1.getFaceEntity().getCadFaceIndex())];case 4:distItem=_a.sent();return[2,adjustDistance(faceSelObj0,faceSelObj1,distItem)];case 5:return[3,10];case 6:if(!(selEntInfoHC0.SubEntityTypeName==="Line"&&selEntInfoHC1.SubEntityTypeName==="Face"||selEntInfoHC1.SubEntityTypeName==="Line"&&selEntInfoHC0.SubEntityTypeName==="Face"))return[3,10];edgeSelObj=iSelObjs[0];edgeProp=iSelPropsHC[0];faceSelObj=iSelObjs[1];faceProp=iSelPropsHC[1];if(selEntInfoHC1.SubEntityTypeName==="Line"&&selEntInfoHC0.SubEntityTypeName==="Face"){faceSelObj=iSelObjs[0];faceProp=iSelPropsHC[0];edgeSelObj=iSelObjs[1];edgeProp=iSelPropsHC[1]}if(!(edgeProp instanceof eDwTypes_12.HC.SubentityProperties.CircleElement&&faceProp instanceof eDwTypes_12.HC.SubentityProperties.PlaneElement))return[3,8];return[4,getMinDistPtToFace(edgeProp.origin,edgeSelObj,faceSelObj,modelHC)];case 7:return[2,_a.sent()];case 8:if(!(edgeProp instanceof eDwTypes_12.HC.SubentityProperties.LineElement&&faceProp instanceof eDwTypes_12.HC.SubentityProperties.PlaneElement))return[3,10];pntsWCHC=edgeSelObj.getLineEntity().getPoints();if(!(pntsWCHC.length===2))return[3,10];lineHC=new eDwTypes_12.HC.Ray(pntsWCHC[0],pntsWCHC[1]);return[4,getMinDistLineToFace(lineHC,edgeSelObj,faceSelObj,modelHC)];case 9:return[2,_a.sent()];case 10:return[2,null]}}))}))};eDwSelObj.getSelObjProperty=function(iSelObjHC,iModel){return __awaiter(this,void 0,void 0,(function(){var subEntityProperty,subEntityInfo,subEntityTypeName,selObj,subEntityID,modelHC,_a;return __generator(this,(function(_b){switch(_b.label){case 0:subEntityProperty=null;subEntityInfo=eDwSelObj.getSubEntityInfo(iSelObjHC);subEntityTypeName="Unknown";if(!subEntityInfo.SubEntity)return[3,6];selObj=eDwSelObj.extendHCSelObj(iSelObjHC);subEntityTypeName=subEntityInfo.SubEntityTypeName;subEntityID=eDwSelObj.getSubEntityID(subEntityInfo.SubEntity);modelHC=iModel.getHCModel();_a=subEntityTypeName;switch(_a){case"Line":return[3,1];case"Face":return[3,3];case"Point":return[3,5]}return[3,5];case 1:return[4,modelHC.getEdgeProperty(selObj.getIDHC(),subEntityID)];case 2:subEntityProperty=_b.sent();return[3,6];case 3:return[4,modelHC.getFaceProperty(selObj.getIDHC(),subEntityID)];case 4:subEntityProperty=_b.sent();return[3,6];case 5:return[3,6];case 6:return[2,{Property:subEntityProperty,Name:subEntityTypeName}]}}))}))};eDwSelObj.setSelObjSubEntityColor=function(iSelObjsHC,iModel,iColor){return eDwSelObj.setSelObjSubEntity(iSelObjsHC,iModel,iColor)};eDwSelObj.setSelObjSubEntityHighlight=function(iSelObjsHC,iModel,iHighlight){return eDwSelObj.setSelObjSubEntity(iSelObjsHC,iModel,iHighlight)};eDwSelObj.getSubEntityInfo=function(iSelObjHC){function checkIfSelectable(iSubEntity,iSelTypeMask){return eDwSelObj.getSubEntityBits(iSubEntity)&iSelTypeMask?true:false}var subEntity=null;var typeName="";var isSelectable=false;if(iSelObjHC){if(subEntity=iSelObjHC.getPointEntity()){typeName="Point";isSelectable=true}else if(subEntity=iSelObjHC.getLineEntity()){typeName="Line";var cEdgeSelMeasureHC=4;isSelectable=checkIfSelectable(subEntity,cEdgeSelMeasureHC)}else if(subEntity=iSelObjHC.getFaceEntity()){typeName="Face";var cFaceSelMeasureHC=1;isSelectable=checkIfSelectable(subEntity,cFaceSelMeasureHC)}}return{SubEntity:subEntity,SubEntityTypeName:typeName,IsSelectable:isSelectable}};eDwSelObj.getSubEntityTypeName=function(iSubEntityType){if(!iSubEntityType)return"";return utils.getObjectTypeName(iSubEntityType).slice(0,-6)};eDwSelObj.getSubEntityID=function(iSubEntity){return iSubEntity?iSubEntity._elementIndex:NaN};eDwSelObj.getSubEntityBits=function(iSubEntity){return iSubEntity?iSubEntity._elementBits:NaN};eDwSelObj.prototype.setPointInLocalSpace=function(iWorldPtHC,iToLocalTransformHC){if(iToLocalTransformHC){this.mLocalPnt=iWorldPtHC?iToLocalTransformHC.transform(iWorldPtHC):null;this.mToLocalTransformHC=iToLocalTransformHC}};eDwSelObj.setSelObjSubEntity=function(iSelObjsHC,iModel,iSetting){if(!iSelObjsHC||!iSelObjsHC.length)return[];var modelHC=iModel.getHCModel();var subEntityIDs=[];for(var _i=0,iSelObjsHC_2=iSelObjsHC;_i1){startCrvPt3DHC=iTransformPointFunc(crvPtsWC3DHC[0]);endCrvPt3DHC=iTransformPointFunc(crvPtsWC3DHC[numPts-1]);vec3DHC=eDwTypes_12.HC.Point3.subtract(endCrvPt3DHC,startCrvPt3DHC);if(vec3DHC.length()-1;--i){currentNode=childHierarchyMap[children[i]];viewIDsHC.push(currentNode.HOOPSID)}pickConfig=new eDwTypes_13.HC.PickConfig(eDwTypes_13.HC.SelectionMask.All);return[4,this.Viewer.ViewMgr.pickFromPoint(iCoords,pickConfig)];case 1:selObj=_a.sent();selObjIDHC=selObj.getIDHC();if(!utils.isNaN(selObjIDHC))return[3,3];return[4,this.Viewer.SelectionMgr.select(iCoords)];case 2:selSuccess=_a.sent();_a.label=3;case 3:hierNode=model.getHierarchyNode(selObjIDHC);if(!hierNode)return[3,6];if(!(viewIDsHC.indexOf(hierNode.HOOPSID)>-1))return[3,5];return[4,this.Viewer.SelectionMgr.selectByID(hierNode.HOOPSID)];case 4:selSuccess=_a.sent();_a.label=5;case 5:return[3,10];case 6:_i=0,viewIDsHC_1=viewIDsHC;_a.label=7;case 7:if(!(_i0){pluginName=matches[1]}else{console.warn("Could not locate external plugin name in file "+iPluginFile)}return[3,5];case 4:iExcp_11=_a.sent();console.warn("Failed to load external plugin - "+iExcp_11.message);return[3,5];case 5:return[2,pluginName]}}))}))};eDwServiceMgr.prototype.getPluginFiles=function(){return __awaiter(this,void 0,void 0,(function(){var _a,_b,iExcp_12;return __generator(this,(function(_c){switch(_c.label){case 0:if(!eDwServiceMgr.usesWebServices())return[2,this.mPluginFiles];if(!!this.mPluginFiles.length)return[3,7];_c.label=1;case 1:_c.trys.push([1,6,,7]);if(!this.mAdvancedServicesDisabled)return[3,3];console.debugLog("ServiceMgr","Loading static plugin list");_a=this;return[4,this.ajax("GET","js/staticPluginList.json",{})];case 2:_a.mPluginFiles=_c.sent();return[3,5];case 3:console.debugLog("ServiceMgr","Finding plugins...");_b=this;return[4,this.ajax("GET","EDrawingsService.svc/GetPlugins",{})];case 4:_b.mPluginFiles=_c.sent();_c.label=5;case 5:return[3,7];case 6:iExcp_12=_c.sent();console.warn("No plugins available.");return[3,7];case 7:return[2,this.mPluginFiles]}}))}))};eDwServiceMgr.prototype.extendLicense=function(iKey){return __awaiter(this,void 0,void 0,(function(){var params;return __generator(this,(function(_a){switch(_a.label){case 0:if(this.mAdvancedServicesDisabled||!eDwServiceMgr.usesWebServices()){return[2]}params={data:{iKey:iKey},cache:false};return[4,this.ajax("GET","EDrawingsService.svc/ExtendLicense",params)];case 1:_a.sent();return[2]}}))}))};eDwServiceMgr.prototype.getBaseCacheDirs=function(){return __awaiter(this,void 0,void 0,(function(){var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:if(!!this.mBaseCacheDirs.length)return[3,2];this.mBaseCacheDirs=[];this.mGetBaseCacheDirsPromise=$.get("cacheDirs.xml",(function(iDoc){var cacheDirs=iDoc.getElementsByTagName("modelSearchDirectory");var numDirs=cacheDirs.length;for(var i=0;i-1){foundPluginFileName=pluginFileName}}return[2,foundPluginFileName]}}))}))};eDwServiceMgr.prototype.ajax=function(iMethod,iService,iParams){return __awaiter(this,void 0,void 0,(function(){var paramsObj,retAJAX,iExcp_13;return __generator(this,(function(_a){switch(_a.label){case 0:paramsObj={type:iMethod,url:this.mServerURL+"/"+iService,async:true};if(iParams)$.extend(paramsObj,iParams);_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,$.ajax(paramsObj)];case 2:retAJAX=_a.sent();return[3,4];case 3:iExcp_13=_a.sent();console.warn("AJAX "+iMethod+" failed for "+iService+": "+iExcp_13.message);throw iExcp_13;case 4:return[2,retAJAX]}}))}))};return eDwServiceMgr}();return eDwServiceMgr}));define("eDwSetHierNodeAttribsCmd",["require","exports","eDwSupportsHistoryCmd"],(function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwSetHierNodeAttribsCmd=function(_super){__extends(eDwSetHierNodeAttribsCmd,_super);function eDwSetHierNodeAttribsCmd(iViewer,iHierNodes,iAttrib){var _this=_super.call(this,iViewer)||this;_this.mInitialHierNodeAttribs=[];_this.mFinalHierNodeAttribs=[];var finalAttrib=$.extend(true,{},iAttrib);for(var _i=0,iHierNodes_2=iHierNodes;_i-1){this.mTouchOpIDs.splice(opIndex,1);this.mViewer.OperatorMgr.unregisterCustomOperatorByID(iOpID)}};eDwTouchOpsMgr.isTouchEnabled=function(){function matchMedia(iFeature){return window.matchMedia&&window.matchMedia(iFeature).matches?true:false}var enabled=false;if("PointerEvent"in window&&"maxTouchPoints"in navigator){var maxTouchPoints=navigator.maxTouchPoints;if(utils.isNumber(maxTouchPoints)){if(navigator.maxTouchPoints>0){enabled=true}else if(navigator.maxTouchPoints===0&&matchMedia("(any-pointer:coarse)")){enabled=true}}}else{if(matchMedia("(any-pointer:coarse)")){enabled=true}else if("TouchEvent"in window||"ontouchstart"in window){enabled=true}}console.debugLog("TouchOps","Touch enabled = "+enabled);return enabled};return eDwTouchOpsMgr}();return eDwTouchOpsMgr}));define("eDwTypes",["require","exports"],(function(require,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.EntityMode=exports.SectionPlaneOrientation=exports.HCI=exports.HC=void 0;var HC=Communicator;exports.HC=HC;var HCI=Communicator.Internal;exports.HCI=HCI;exports.SectionPlaneOrientation={XY:{Plane:HC.Plane.createFromPointAndNormal(new HC.Point3(0,0,0),new HC.Point3(0,0,1)),Index:0},YZ:{Plane:HC.Plane.createFromPointAndNormal(new HC.Point3(0,0,0),new HC.Point3(1,0,0)),Index:1},ZX:{Plane:HC.Plane.createFromPointAndNormal(new HC.Point3(0,0,0),new HC.Point3(0,1,0)),Index:2}};exports.EntityMode={FACE:1,EDGE:2,VERTEX:4,HOLE:8,ALL:4294967295}}));define("eDwUI",["require","exports","eDwTypes","eDwKeyMgr","eDwUIBaseEventHandlers","eDwCommandMgr","eDwZoomToFitCmd","eDwDrawModeCmd","eDwAnimateCmd","eDwAmbientOcclusionCmd","eDwPerspectiveCmd","eDwSetViewCmd","eDwSetViewCameraCmd","eDwCompositeCmd","eDwSectionFlipCmd","eDwSetViewNormalToSectionCmd","eDwShowSectionCapCmd","eDwSectionShowCmd","eDwChangeSectionPlaneCmd","eDwUIPluginMgr","eDwEventMgr","eDwUIMessageReporter","eDwUIShortcutMenu","eDwUIUtils","eDrawingsWebViewerUtils","eDwEvents","utils"],(function(require,exports,eDwTypes_14,eDwKeyMgr_3,eDwUIBaseEventHandlers,eDwCommandMgr,eDwZoomToFitCmd,eDwDrawModeCmd,eDwAnimateCmd,eDwAmbientOcclusionCmd,eDwPerspectiveCmd,eDwSetViewCmd,eDwSetViewCameraCmd,eDwCompositeCmd,eDwSectionFlipCmd,eDwSetViewNormalToSectionCmd,eDwShowSectionCapCmd,eDwSectionShowCmd,eDwChangeSectionPlaneCmd,eDwUIPluginMgr,eDwEventMgr,eDwUIMessageReporter,eDwUIShortcutMenu_1,eDwUIUtils,eDrawingsWVUtils,eDwEvents,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.eDwUI=void 0;var eDwUI=function(){function eDwUI(){this.mUIEventHandlers=new UIEventHandlers(this,eDwUIUtils.getViewerElementName(),c_canvasID);this.mItemActiveCallbacks={};this.mItemDeactiveCallbacks={};solidworks.web.touch.support();this.awfulUIHacks()}eDwUI.prototype.initUIEvents=function(iViewerFeatOpts){this.mViewerFeatureOpts=iViewerFeatOpts;this.registerHTMLEvents()};eDwUI.prototype.init=function(iViewer){var _this=this;this.mViewer=iViewer;this.centerBottomBar();this.mViewer.XSectionMgr.SectionCapVisibility=true;$("#edrawings-section-capping-button").addClass("state-on-button");$("#edrawings-section-show-button").addClass("state-on-button");eDwUIUtils.hide(".edrawings-ui-main",false);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents.ResetSceneEvent,true)];case 1:_a.sent();return[2]}}))}))})()};eDwUI.prototype.toggleFullScreen=function(){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){var methodName,viewerElem,iExcp_14;return __generator(this,(function(_a){switch(_a.label){case 0:methodName="exitFullScreen()";_a.label=1;case 1:_a.trys.push([1,6,,7]);if(!l_isFullScreen())return[3,3];document.exitFullscreen=document.exitFullscreen||utils.getFirstMatchedMethodObj(document,"xitFullscreen");if(!document.exitFullscreen){console.warn("exitFullscreen() does not exist.");return[2]}return[4,document.exitFullscreen()];case 2:_a.sent();return[3,5];case 3:methodName="requestFullscreen()";viewerElem=$("#edrawings-viewer")[0];viewerElem.requestFullscreen=viewerElem.requestFullscreen||utils.getFirstMatchedMethodObj(viewerElem,"equestFullscreen");if(!viewerElem.requestFullscreen){console.warn("requestFullscreen() does not exist.");return[2]}return[4,viewerElem.requestFullscreen()];case 4:_a.sent();_a.label=5;case 5:return[3,7];case 6:iExcp_14=_a.sent();console.warn(methodName+" failed. It took too long.");return[3,7];case 7:return[2]}}))}))})()};eDwUI.prototype.unregister=function(){this.unregisterHTMLEvents();UIEventHandlers.doModelDataUnloadActions(this.mViewer)};eDwUI.prototype.setDrawMode=function(iValue){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){var drawModeCmd;return __generator(this,(function(_a){switch(_a.label){case 0:drawModeCmd=new eDwDrawModeCmd(this.mViewer,iValue);return[4,eDwCommandMgr.get().run(drawModeCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()};eDwUI.prototype.setInitialDrawMode=function(){if(!this.mViewer.ViewerFeatureOpts.RenderType)return;this.setDrawMode(this.mViewer.ViewerFeatureOpts.RenderType)};eDwUI.prototype.setPerspectiveMode=function(iValue){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){var perspectiveCmd;return __generator(this,(function(_a){switch(_a.label){case 0:perspectiveCmd=new eDwPerspectiveCmd(this.mViewer,iValue);return[4,eDwCommandMgr.get().run(perspectiveCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()};eDwUI.prototype.hideAllOtherPanels=function(iPanelCSSClassName){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iPanelCSSClassName!==".edrawings-hud-menu"))return[3,2];return[4,this.hideActiveHUDMenu()];case 1:_a.sent();_a.label=2;case 2:if(!(iPanelCSSClassName!==".edrawings-submenu"))return[3,4];return[4,this.hideActiveSubmenu()];case 3:_a.sent();_a.label=4;case 4:eDwUIShortcutMenu_1.eDwUIShortcutMenu.hide();return[2]}}))}))};eDwUI.prototype.onClick=function(iID,iActivate){var activateCallback=this.mItemActiveCallbacks[iID];var deactivateCallback=this.mItemDeactiveCallbacks[iID];if(iActivate){if(activateCallback)activateCallback()}else{if(deactivateCallback)deactivateCallback()}return activateCallback||deactivateCallback?true:false};eDwUI.prototype.registerHTMLEvents=function(){var _this=this;this.mUIEventHandlers.addHTMLEventHandlers(this.mViewerFeatureOpts);this.mModelDataLoadCompleteHandler=function(iEvent,iViewer){_this.mViewer=iViewer;eDwUIBaseEventHandlers.doModelDataLoadCompleteActions(_this.mUIEventHandlers,iViewer)};$("#"+c_canvasID).on("edw:ModelDataLoadComplete",this.mModelDataLoadCompleteHandler);var self=this;this.registerButtonForClickEffect("edrawings-section-flip-button",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){var sectionFlipCmd;return __generator(this,(function(_a){switch(_a.label){case 0:sectionFlipCmd=new eDwSectionFlipCmd(this.mViewer);return[4,eDwCommandMgr.get().run(sectionFlipCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}));this.registerButtonForClickEffect("edrawings-section-normal-button",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){var setViewNormalToSectionCmd;return __generator(this,(function(_a){switch(_a.label){case 0:setViewNormalToSectionCmd=new eDwSetViewNormalToSectionCmd(this.mViewer);return[4,eDwCommandMgr.get().run(setViewNormalToSectionCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}));function setXSectionOrientation(iEvent,iUI,iOrientation){iUI.setXSectionOrientation(iOrientation);eDwUIUtils.scrollToTarget(eDwUIUtils.getAsJQueryObj(iEvent.currentTarget))}$("#edrawings-section-xz-button").on("click.edw",(function(iEvent){return setXSectionOrientation(iEvent,_this,eDwTypes_14.SectionPlaneOrientation.ZX)}));$("#edrawings-section-yz-button").on("click.edw",(function(iEvent){return setXSectionOrientation(iEvent,_this,eDwTypes_14.SectionPlaneOrientation.YZ)}));$("#edrawings-section-xy-button").on("click.edw",(function(iEvent){return setXSectionOrientation(iEvent,_this,eDwTypes_14.SectionPlaneOrientation.XY)}));$("#edrawings-section-capping-button").on("click.edw",(function(iEvent){var buttonJQ=eDwUIUtils.getAsJQueryObj(iEvent.currentTarget);var visibility=!buttonJQ.hasClass("state-on-button");(function(){return __awaiter(_this,void 0,void 0,(function(){var showCapsCmd;return __generator(this,(function(_a){switch(_a.label){case 0:showCapsCmd=new eDwShowSectionCapCmd(this.mViewer,visibility);return[4,eDwCommandMgr.get().run(showCapsCmd,"commit")];case 1:_a.sent();return[2]}}))}))})();buttonJQ.toggleClass("state-on-button");eDwUIUtils.scrollToTarget(buttonJQ)}));$("#edrawings-section-show-button").on("click.edw",(function(iEvent){var buttonJQ=eDwUIUtils.getAsJQueryObj(iEvent.currentTarget);var showSection=!buttonJQ.hasClass("state-on-button");(function(){return __awaiter(_this,void 0,void 0,(function(){var showSectionCmd;return __generator(this,(function(_a){switch(_a.label){case 0:showSectionCmd=new eDwSectionShowCmd(this.mViewer,showSection);return[4,eDwCommandMgr.get().run(showSectionCmd,"commit")];case 1:_a.sent();return[2]}}))}))})();buttonJQ.toggleClass("state-on-button");eDwUIUtils.scrollToTarget(buttonJQ)}));this.mItemActiveCallbacks["#edrawings-button-section"]=function(){return __awaiter(_this,void 0,void 0,(function(){function compositeSectionDone(ioCmd){ioCmd.clearSubCmds();self.mViewer.XSectionMgr.deactivateCurrent();self.mViewer.XSectionMgr.turnOnSectionPlane(false)}var self;var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:eDwUIUtils.addPanelModeEvents("#edrawings-section-menu",".edw.section","#edrawings-button-section");this.mCompositeXSectionCmd=new eDwCompositeCmd(this.mViewer);eDwCommandMgr.get().add(this.mCompositeXSectionCmd);this.mCompositeXSectionCmd.initCmdActionImplementation({compositeInit:function(ioCmd){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){this.mViewer.XSectionMgr.turnOnSectionPlane(true);this.setXSectionOrientation();return[2]}))}))},compositeUndo:function(ioCmd){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){return[2,true]}))}))},compositeRedo:function(ioCmd){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){return[2,true]}))}))},compositeCommit:function(ioCmd){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){compositeSectionDone(ioCmd);return[2]}))}))},compositeCancel:function(ioCmd){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){compositeSectionDone(ioCmd);return[2]}))}))}});self=this;if(!!this.mViewer.getModel().isDrawing())return[3,2];return[4,this.setActiveSubmenu("#edrawings-button-section","#edrawings-section-menu")];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))};this.mItemDeactiveCallbacks["#edrawings-button-section"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:eDwUIUtils.deactivateMoveInput(".edw.section");return[4,eDwCommandMgr.get().remove(this.mCompositeXSectionCmd,"cancel")];case 1:_a.sent();return[2]}}))}))};eDwEventMgr.get().addEventHandlerFunc(eDwEvents.DeactivateUIOpEvent,(function(iActiveButtonsJQ){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iActiveButtonsJQ[0].id==="edrawings-button-section"))return[3,2];return[4,this.mItemDeactiveCallbacks["#edrawings-button-section"]()];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))}));function activateDebugPanel(iActivate,iHandlers){return __awaiter(this,void 0,void 0,(function(){var shortcutMenu;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,togglePanel(iActivate,"#edrawings-button-debug","#edrawings-debug-menu",".edw.debug",iHandlers)];case 1:_a.sent();if(iActivate){shortcutMenu=eDwUIShortcutMenu_1.eDwUIShortcutMenu.get();if(!shortcutMenu.isEmpty()){shortcutMenu.addMenuSeparator(c_debugGroupName)}shortcutMenu.addMenuItem(c_debugGroupName,"edrawings-debug-node-matrices",(function(iEvent,iUIItemJQ,iArg){if(utils.isOfType(iArg,"attr")){var nodeIDHC=parseInt(iArg.attr("data-hoopsid"),10);if(utils.isNumber(nodeIDHC)){var modelHC=self.mViewer.getModel().getHCModel();var matrixHC=modelHC.getNodeMatrix(nodeIDHC);var msg="
Matrix = "+JSON.stringify(matrixHC)+"
";matrixHC=modelHC.getNodeNetMatrix(nodeIDHC);msg+="
Net matrix = "+JSON.stringify(matrixHC)+"
";eDwUIMessageReporter.showMessageInDebugPanel(msg)}}eDwUIShortcutMenu_1.eDwUIShortcutMenu.hide()}))}else{eDwUIShortcutMenu_1.eDwUIShortcutMenu.get().removeAllMenuItems(c_debugGroupName)}return[2]}}))}))}this.mItemActiveCallbacks["#edrawings-button-debug"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateDebugPanel(true,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};this.mItemDeactiveCallbacks["#edrawings-button-debug"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateDebugPanel(false,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};eDwEventMgr.get().addEventHandlerFunc(eDwEvents.DeactivateUIOpEvent,(function(iActiveButtonsJQ){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iActiveButtonsJQ[0].id==="edrawings-button-debug"))return[3,2];return[4,this.mItemDeactiveCallbacks["#edrawings-button-debug"]()];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))}));this.mItemActiveCallbacks["#edrawings-button-reset"]=function(){return __awaiter(_this,void 0,void 0,(function(){var _this=this;return __generator(this,(function(_a){eDwUIUtils.resetToHomeView(this.mViewer);window.setTimeout((function(){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.deactivateUI()];case 1:_a.sent();return[2]}}))}))})()}),1e3);return[2]}))}))};$(document).on(c_fullScreenChange,(function(iEvent){if(l_isFullScreen()){l_fullScreenBtnJS.removeClass(c_restoreClass)}else{l_fullScreenBtnJS.addClass(c_restoreClass);$("#edrawings-canvas-canvas-container").css({"background-color":""})}}));$("#edrawings-button-fs").on("click.edw",(function(){_this.toggleFullScreen()}));function clickDrawMode(iUI,iMode){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:iUI.setDrawMode(iMode);return[4,iUI.hideActiveHUDMenu()];case 1:_a.sent();return[2]}}))}))})()}$("#edrawings-button-shaded-hlrr").on("click.edw",(function(){clickDrawMode(_this,"HiddenLinesRemoved")}));$("#edrawings-button-shaded-hlrv").on("click.edw",(function(){clickDrawMode(_this,"HiddenLinesVisible")}));$("#edrawings-button-shaded-wireframe").on("click.edw",(function(){clickDrawMode(_this,"Wireframe")}));$("#edrawings-button-shaded-full").on("click.edw",(function(){clickDrawMode(_this,"ShadedWithEdges")}));$("#edrawings-button-shaded-noedges").on("click.edw",(function(){clickDrawMode(_this,"Shaded")}));this.mItemActiveCallbacks["#edrawings-button-animate"]=function(){return __awaiter(_this,void 0,void 0,(function(){var animateCmd;return __generator(this,(function(_a){switch(_a.label){case 0:animateCmd=new eDwAnimateCmd(this.mViewer);return[4,eDwCommandMgr.get().run(animateCmd,"commit")];case 1:_a.sent();return[2]}}))}))};this.mItemDeactiveCallbacks["#edrawings-button-animate"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.mItemActiveCallbacks["#edrawings-button-animate"]()];case 1:_a.sent();return[2]}}))}))};$("#edrawings-button-frame-file-open").on("click.edw",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.hideActiveHUDMenu()];case 1:_a.sent();return[2]}}))}))})()}));this.mItemActiveCallbacks["#edrawings-button-view"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.setActiveHUDMenu("#edrawings-button-view","#edrawings-hud-view-menu")];case 1:_a.sent();return[2]}}))}))};this.mItemActiveCallbacks["#edrawings-button-help"]=function(){return __awaiter(_this,void 0,void 0,(function(){var version,viewerHC;return __generator(this,(function(_a){switch(_a.label){case 0:version="
Version #: "+eDrawingsWVUtils.getViewerVersion()+"
";if(this.mViewerFeatureOpts.Debug){viewerHC=this.mViewer.HCViewer;version+="
HC Version:"+viewerHC.getViewerVersionString()+"
Format Version: "+viewerHC.getFormatVersionString()+"
"}$("#edrawings-version").html(version);return[4,this.setActiveHUDMenu("#edrawings-button-help","#edrawings-hud-help-menu")];case 1:_a.sent();return[2]}}))}))};$("#edrawings-hud-help-close").on("click.edw",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.hideActiveHUDMenu()];case 1:_a.sent();return[2]}}))}))})()}));this.mItemActiveCallbacks["#edrawings-button-zoomtofit"]=function(){return __awaiter(_this,void 0,void 0,(function(){var viewHC,curModelView,nodeID,zoomToFitCmd;return __generator(this,(function(_a){switch(_a.label){case 0:viewHC=this.mViewer.getHCView();curModelView=this.mViewer.getModel().getActiveModelView();nodeID=curModelView.Hierarchy.HOOPSID;zoomToFitCmd=new eDwZoomToFitCmd(this.mViewer,nodeID,viewHC.getCamera());return[4,eDwCommandMgr.get().run(zoomToFitCmd,"commit")];case 1:_a.sent();return[2]}}))}))};this.mItemActiveCallbacks["#edrawings-button-shaded"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.setActiveHUDMenu("#edrawings-button-shaded","#edrawings-hud-shaded-menu")];case 1:_a.sent();return[2]}}))}))};function togglePanel(iActivate,iButtonID,iPanelID,iInputEventIDSuffix,iHandlers){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!iActivate)return[3,2];return[4,self.setActiveSubmenu(iButtonID,iPanelID)];case 1:_a.sent();eDwUIUtils.addPanelModeEvents(iPanelID,iInputEventIDSuffix,iButtonID);return[3,3];case 2:eDwUIUtils.deactivateMoveInput(iInputEventIDSuffix);_a.label=3;case 3:return[2]}}))}))}function activateSheetPanel(iActivate,iHandlers){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,togglePanel(iActivate,"#edrawings-button-sheet-tree","#edrawings-sheet-tree-menu",".edw.sheet",iHandlers)];case 1:_a.sent();return[2]}}))}))}this.mItemActiveCallbacks["#edrawings-button-sheet-tree"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateSheetPanel(true,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};this.mItemDeactiveCallbacks["#edrawings-button-sheet-tree"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateSheetPanel(false,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};eDwEventMgr.get().addEventHandlerFunc(eDwEvents.DeactivateUIOpEvent,(function(iActiveButtonsJQ){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iActiveButtonsJQ[0].id==="edrawings-button-sheet-tree"))return[3,2];return[4,this.mItemDeactiveCallbacks["#edrawings-button-sheet-tree"]()];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))}));function activateLayerPanel(iActivate,iHandlers){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,togglePanel(iActivate,"#edrawings-button-layer-control","#edrawings-layer-control-menu",".edw.layer",iHandlers)];case 1:_a.sent();return[2]}}))}))}this.mItemActiveCallbacks["#edrawings-button-layer-control"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateLayerPanel(true,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};this.mItemDeactiveCallbacks["#edrawings-button-layer-control"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateLayerPanel(false,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};eDwEventMgr.get().addEventHandlerFunc(eDwEvents.DeactivateUIOpEvent,(function(iActiveButtonsJQ){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iActiveButtonsJQ[0].id==="edrawings-button-layer-control"))return[3,2];return[4,this.mItemDeactiveCallbacks["#edrawings-button-layer-control"]()];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))}));eDwKeyMgr_3.eDwKeyMgr.get().add({key:"F11"},"keydown",(function(iEvent){iEvent.preventDefault();_this.toggleFullScreen();iEvent.stopPropagation()}));this.mItemActiveCallbacks["#edrawings-button-view-settings"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.setActiveHUDMenu("#edrawings-button-view-settings","#edrawings-hud-view-settings-menu")];case 1:_a.sent();return[2]}}))}))};var ambientOcc=$("#edrawings-button-view-ambient-occlusion");ambientOcc.on("click.edw",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){var buttonActive,ambientOcclCmd;return __generator(this,(function(_a){switch(_a.label){case 0:buttonActive=ambientOcc.hasClass("state-on-button");return[4,this.hideActiveHUDMenu()];case 1:_a.sent();if(buttonActive)ambientOcc.removeClass("state-on-button");else ambientOcc.addClass("state-on-button");ambientOcclCmd=new eDwAmbientOcclusionCmd(this.mViewer,!buttonActive);return[4,eDwCommandMgr.get().run(ambientOcclCmd,"commit")];case 2:_a.sent();return[2]}}))}))})()}));$("#edrawings-button-view-perspective").on("click.edw",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){var perspectiveMode;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.hideActiveHUDMenu()];case 1:_a.sent();perspectiveMode=!this.mViewer.getPerspectiveMode();this.setPerspectiveMode(perspectiveMode);return[2]}}))}))})()}));this.registerButtonForClickEffect("edrawings-button-view-top",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Top)}));this.registerButtonForClickEffect("edrawings-button-view-bottom",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Bottom)}));this.registerButtonForClickEffect("edrawings-button-view-left",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Left)}));this.registerButtonForClickEffect("edrawings-button-view-right",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Right)}));this.registerButtonForClickEffect("edrawings-button-view-front",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Front)}));this.registerButtonForClickEffect("edrawings-button-view-back",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Back)}));this.registerButtonForClickEffect("edrawings-button-view-iso",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Iso)}))};eDwUI.prototype.unregisterHTMLEvents=function(){this.mUIEventHandlers.removeHTMLEventHandlers();$("#"+c_canvasID).off("edw:ModelDataLoadComplete",this.mModelDataLoadCompleteHandler);$("#edrawings-section-xz-button").off("click.edw");$("#edrawings-section-yz-button").off("click.edw");$("#edrawings-section-xy-button").off("click.edw");$("#edrawings-section-capping-button").off("click.edw");$("#edrawings-section-show-button").off("click.edw");$("#edrawings-button-fs").off("click.edw");$("#edrawings-button-shaded-hlrr").off("click.edw");$("#edrawings-button-shaded-hlrv").off("click.edw");$("#edrawings-button-shaded-wireframe").off("click.edw");$("#edrawings-button-shaded-full").off("click.edw");$("#edrawings-button-shaded-noedges").off("click.edw");$("#edrawings-button-sheets").off("click.edw");$("#edrawings-button-frame-file-open").off("click.edw");$("#edrawings-button-view-ambient-occlusion").off("click.edw");$("#edrawings-button-view-perspective").off("click.edw");$("#edrawings-hud-help-close").off("click.edw");$(document).off(c_fullScreenChange);$(document).off("click.edw");$(document).off("mousedown.edw");$(document).off("dblclick.edw");this.unregisterButtonForClickEffect("edrawings-section-flip-button");this.unregisterButtonForClickEffect("edrawings-section-normal-button");this.unregisterButtonForClickEffect("edrawings-face-normal-button");this.unregisterButtonForClickEffect("edrawings-button-view-top");this.unregisterButtonForClickEffect("edrawings-button-view-bottom");this.unregisterButtonForClickEffect("edrawings-button-view-left");this.unregisterButtonForClickEffect("edrawings-button-view-right");this.unregisterButtonForClickEffect("edrawings-button-view-front");this.unregisterButtonForClickEffect("edrawings-button-view-back");this.unregisterButtonForClickEffect("edrawings-button-view-iso")};eDwUI.prototype.setActiveSubmenu=function(iButtonID,iPanelID){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.activateUI(iButtonID,iPanelID)];case 1:_a.sent();return[2]}}))}))};eDwUI.prototype.hideActiveSubmenu=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.deactivateUI(".edrawings-tool-button",".edrawings-submenu")];case 1:_a.sent();return[2]}}))}))};eDwUI.prototype.centerBottomBar=function(iWidth,iHeight){$(".tool-bar").css({height:"auto"});var barJQ=$(".tool-bar");var viewerElemJQ=$(eDwUIUtils.getViewerElementID());var leftButtonsJQ=$(".edrawings-icon-set.left");var rightButtonsJQ=$(".edrawings-icon-set.right");var centerButtonsJQ=$(".edrawings-icon-set.center");var width=(iWidth?iWidth:viewerElemJQ.width())-1;if(navigator.userAgent.indexOf("Trident")>=0){width=viewerElemJQ[0].clientWidth-1}barJQ.css({position:"absolute"});leftButtonsJQ.css({left:1+"px",position:"absolute"});rightButtonsJQ.css({right:1+"px",position:"absolute"});centerButtonsJQ.css({left:width/2-52/2+"px",position:"absolute"})};eDwUI.prototype.setActiveHUDMenu=function(iButtonID,iPanelID){return __awaiter(this,void 0,void 0,(function(){var buttonJQ,buttonOffset,posx,posy,canvasWidth,panelJQ,panelWidth;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.hideActiveHUDMenu()];case 1:_a.sent();return[4,eDwUIUtils.activateUI(iButtonID,iPanelID)];case 2:_a.sent();if(iButtonID!=="#edrawings-button-help"){buttonJQ=$(iButtonID);buttonOffset=buttonJQ.offset();posx=buttonOffset.left;posy=buttonOffset.top+parseInt(buttonJQ.css("marginTop"))+parseInt(buttonJQ.css("borderTopWidth"))+buttonJQ.height();canvasWidth=$("#edrawings-canvas").width();panelJQ=$(iPanelID);panelWidth=panelJQ[0].offsetWidth;if(posx+panelWidth>canvasWidth){posx=canvasWidth-panelWidth-10}panelJQ.css({top:posy+"px",left:posx+"px"})}return[2]}}))}))};eDwUI.prototype.hideActiveHUDMenu=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.deactivateUI(".edrawings-hud-button",".edrawings-hud-menu")];case 1:_a.sent();return[2]}}))}))};eDwUI.prototype.registerButtonForClickEffect=function(iButtonID,iHandler){var butJQ=$("#"+iButtonID);butJQ.on("mousedown.edw",(function(){butJQ.addClass("edrawings-on-state");eDwUIUtils.scrollToTarget(butJQ)}));butJQ.on("mouseup.edw",(function(){butJQ.removeClass("edrawings-on-state");iHandler()}))};eDwUI.prototype.unregisterButtonForClickEffect=function(iButtonID){var butJQ=$("#"+iButtonID);butJQ.off("mousedown.edw");butJQ.off("mouseup.edw")};eDwUI.prototype.setViewOrientation=function(iOrientation){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){var setViewCmd;return __generator(this,(function(_a){switch(_a.label){case 0:setViewCmd=new eDwSetViewCmd(this.mViewer,iOrientation);return[4,eDwCommandMgr.get().run(setViewCmd,"commit")];case 1:_a.sent();return[4,this.hideActiveHUDMenu()];case 2:_a.sent();return[2]}}))}))})()};eDwUI.prototype.setXSectionOrientation=function(iNewSection){var _this=this;function setActive(iButtonID,iIsActive){$(iButtonID)[iIsActive?"addClass":"removeClass"]("state-on-button")}var sectionMgr=this.mViewer.XSectionMgr;var sectionIndex=iNewSection?iNewSection.Index:sectionMgr.SectionIndex;var planeFromEnum=null;switch(sectionIndex){case eDwTypes_14.SectionPlaneOrientation.YZ.Index:setActive("#edrawings-section-xy-button",false);setActive("#edrawings-section-yz-button",true);setActive("#edrawings-section-xz-button",false);planeFromEnum=eDwTypes_14.SectionPlaneOrientation.YZ;break;case eDwTypes_14.SectionPlaneOrientation.ZX.Index:setActive("#edrawings-section-xy-button",false);setActive("#edrawings-section-yz-button",false);setActive("#edrawings-section-xz-button",true);planeFromEnum=eDwTypes_14.SectionPlaneOrientation.ZX;break;case eDwTypes_14.SectionPlaneOrientation.XY.Index:eDwUIUtils.hide("#edrawings-section-xy-button",false);eDwUIUtils.hide("#edrawings-section-yz-button",false);eDwUIUtils.hide("#edrawings-section-xz-button",false);setActive("#edrawings-section-xy-button",true);setActive("#edrawings-section-yz-button",false);setActive("#edrawings-section-xz-button",false);planeFromEnum=eDwTypes_14.SectionPlaneOrientation.XY;break;default:console.debugLog("UI","Unsupported section plane orientation");break}var origPlaneEnum=null;if(sectionIndex!==sectionMgr.SectionIndex){switch(sectionMgr.SectionIndex){case eDwTypes_14.SectionPlaneOrientation.YZ.Index:origPlaneEnum=eDwTypes_14.SectionPlaneOrientation.YZ;break;case eDwTypes_14.SectionPlaneOrientation.ZX.Index:origPlaneEnum=eDwTypes_14.SectionPlaneOrientation.ZX;break;case eDwTypes_14.SectionPlaneOrientation.XY.Index:origPlaneEnum=eDwTypes_14.SectionPlaneOrientation.XY;break;default:console.debugLog("UI","Unsupported initial section plane orientation");break}if(planeFromEnum&&origPlaneEnum){(function(){return __awaiter(_this,void 0,void 0,(function(){var changeSectionPlaneCmd;return __generator(this,(function(_a){switch(_a.label){case 0:changeSectionPlaneCmd=new eDwChangeSectionPlaneCmd(this.mViewer,origPlaneEnum,planeFromEnum);return[4,eDwCommandMgr.get().run(changeSectionPlaneCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}}};eDwUI.prototype.awfulUIHacks=function(){var _this=this;l_init=function(){$("#edrawings-face-normal-button").removeClass("edrawings-inactive");_this.registerButtonForClickEffect("edrawings-face-normal-button",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){var setViewCameraCmd;return __generator(this,(function(_a){switch(_a.label){case 0:setViewCameraCmd=new eDwSetViewCameraCmd(this.mViewer);return[4,eDwCommandMgr.get().run(setViewCameraCmd,"commit")];case 1:_a.sent();return[4,this.hideActiveHUDMenu()];case 2:_a.sent();return[2]}}))}))})()}))};l_uninit=function(){$("#edrawings-face-normal-button").addClass("edrawings-inactive");_this.unregisterButtonForClickEffect("edrawings-face-normal-button")}};return eDwUI}();exports.eDwUI=eDwUI;var UIEventHandlers=function(_super){__extends(UIEventHandlers,_super);function UIEventHandlers(iUI,iViewerHTMLID,iViewerHTMLCanvasID){var _this=_super.call(this,iViewerHTMLID,iViewerHTMLCanvasID)||this;_this.mUI=iUI;return _this}UIEventHandlers.prototype.addHTMLEventHandlers=function(iViewerFeatOpts){var _this=this;_super.prototype.addHTMLEventHandlers.call(this,iViewerFeatOpts);$("#edrawings-viewer").on("click.edw",".edrawings-tool-button",(function(iEvent){_this.onClick(iEvent,".edrawings-tool-button")}));$("#edrawings-viewer").on("click.edw",".edrawings-hud-button",(function(iEvent){_this.onClick(iEvent,".edrawings-hud-button",".edrawings-submenu")}));this.mUIHTMLEventMgr.addEventHandler("window","beforeunload",(function(iEvent){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){this.mUI.unregister();return[2]}))}))}));this.mUIHTMLEventMgr.addEventHandler("window","Timeout",(function(iEvent){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){this.mUI.unregister();return[2]}))}))}));$(".edrawings-menu-close").on("click.edw",(function(iEvent){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.deactivateActiveButton(".edrawings-tool-button")];case 1:_a.sent();return[2]}}))}))})()}));var viewerJQ=$(eDwUIUtils.getViewerElementID());viewerJQ.on("edw:ChangeViewerStyling",(function(iEvent,iStyleClassName){viewerJQ.removeClass("edrawings-viewer-regular");viewerJQ.removeClass("edrawings-viewer-timeout");if(iStyleClassName)viewerJQ.addClass(iStyleClassName)}));viewerJQ.on("edw:HidePanels",(function(iEvent,iSkipPanelsWithClass){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.mUI.hideAllOtherPanels(iSkipPanelsWithClass)];case 1:_a.sent();return[2]}}))}))})()}));viewerJQ.on("edw:ReInitViewer",(function(iEvent,iViewerFeatOpts){_this.mUI.unregister();_this.mUI.initUIEvents(iViewerFeatOpts)}))};UIEventHandlers.prototype.removeHTMLEventHandlers=function(){_super.prototype.removeHTMLEventHandlers.call(this);$(".edrawings-menu-close").off("click.edw");$("#edrawings-viewer").off("click.edw",".edrawings-tool-button");$("#edrawings-viewer").off("click.edw",".edrawings-hud-button");var viewerJQ=$(eDwUIUtils.getViewerElementID());viewerJQ.off("edw:ChangeViewerStyling");viewerJQ.off("edw:HidePanels");viewerJQ.off("edw:ReInitViewer")};UIEventHandlers.doModelDataUnloadActions=function(iViewer){eDwUIBaseEventHandlers.doModelDataUnloadActions(iViewer)};UIEventHandlers.prototype.onInit=function(iViewer){var viewerFeatureOpts=iViewer.ViewerFeatureOpts;var model=iViewer.getModel();var isDrawing=model.isDrawing();eDwUIUtils.hide("#edrawings-button-reset",false);eDwUIUtils.hide("#edrawings-button-shaded",isDrawing);eDwUIUtils.hide("#edrawings-button-view-settings",isDrawing);eDwUIUtils.hide("#edrawings-button-animate",isDrawing);eDwUIUtils.hide("#edrawings-button-section",isDrawing);eDwUIUtils.hide("#edrawings-button-view",isDrawing);eDwUIUtils.hide("#edrawings-button-debug",!viewerFeatureOpts.Debug);eDwUIUtils.hide("#edrawings-button-tables-control",isDrawing||iViewer.TableMgr.numTables()===0);eDwUIUtils.hide("#edrawings-button-sheet-tree",!isDrawing);eDwUIUtils.hide("#edrawings-button-layer-control",!isDrawing);eDwUIUtils.hide(".edrawings-icon-set.center",isDrawing);this.removeHTMLEventHandlers()};UIEventHandlers.prototype.onInitFullUI=function(iViewer){_super.prototype.onInitFullUI.call(this,iViewer);this.addHTMLEventHandlers(iViewer.ViewerFeatureOpts);this.mUI.init(iViewer);eDwUIUtils.hide("#WaitBanner",true)};UIEventHandlers.prototype.onSelect=function(iViewer,iSelObjs){_super.prototype.onSelect.call(this,iViewer,iSelObjs);if(l_init)l_init()};UIEventHandlers.prototype.onUnselect=function(iViewer,iSelObjs){_super.prototype.onUnselect.call(this,iViewer,iSelObjs);if(l_uninit)l_uninit()};UIEventHandlers.prototype.onTimeout=function(iViewer){eDwUIUtils.hide("#TimeoutBanner",false);$(eDwUIUtils.getViewerElementID()).trigger("edw:ChangeViewerStyling","edrawings-viewer-timeout")};UIEventHandlers.prototype.onStartAnimation=function(iViewer){var eDwViewer=iViewer;$("#edrawings-canvas").on("click.edw",(function(){eDwViewer.ViewMgr.stop()}));var animateBtnJQ=$("#edrawings-button-animate");animateBtnJQ.removeClass("edrawings-animate-play-icon");animateBtnJQ.addClass("edrawings-animate-pause-icon")};UIEventHandlers.prototype.onStopAnimation=function(iViewer){var animateBtnJQ=$("#edrawings-button-animate");animateBtnJQ.addClass("edrawings-animate-play-icon");animateBtnJQ.removeClass("edrawings-animate-pause-icon")};UIEventHandlers.prototype.onAmbientOcclusionChange=function(iViewer,iAmbientOcclusionOn){var ambientOccButton=$("#edrawings-button-view-ambient-occlusion");if(iAmbientOcclusionOn){if(!ambientOccButton.hasClass("state-on-button")){ambientOccButton.addClass("state-on-button")}}else{if(ambientOccButton.hasClass("state-on-button")){ambientOccButton.removeClass("state-on-button")}}};UIEventHandlers.prototype.onProjectionModeChange=function(iViewer,iPerspectiveOn){var perspectiveButton=$("#edrawings-button-view-perspective");if(iPerspectiveOn){if(!perspectiveButton.hasClass("state-on-button")){perspectiveButton.addClass("state-on-button")}}else{if(perspectiveButton.hasClass("state-on-button")){perspectiveButton.removeClass("state-on-button")}}};UIEventHandlers.prototype.onDrawModeChange=function(iViewer,iDrawMode){function setActive(iButtonID,iIsActive){if(iIsActive&&!$(iButtonID).hasClass("state-on-button")){$(iButtonID).addClass("state-on-button")}else if(!iIsActive&&$(iButtonID).hasClass("state-on-button")){$(iButtonID).removeClass("state-on-button")}}function setActiveInGroup(iButtonID){setActive("#edrawings-button-shaded-full",false);setActive("#edrawings-button-shaded-noedges",false);setActive("#edrawings-button-shaded-wireframe",false);setActive("#edrawings-button-shaded-hlrr",false);setActive("#edrawings-button-shaded-hlrv",false);setActive(iButtonID,true)}switch(iDrawMode){case"ShadedWithEdges":setActiveInGroup("#edrawings-button-shaded-full");break;case"Shaded":setActiveInGroup("#edrawings-button-shaded-noedges");break;case"HiddenLinesRemoved":setActiveInGroup("#edrawings-button-shaded-hlrr");break;case"HiddenLinesVisible":setActiveInGroup("#edrawings-button-shaded-hlrv");break;case"Wireframe":setActiveInGroup("#edrawings-button-shaded-wireframe");break;default:throw new Error("Unknown draw mode in UI:"+iDrawMode)}};UIEventHandlers.prototype.onClick=function(iEvent,iButtonCSSClassName,iPanelCSSClassName){var _this=this;if(iPanelCSSClassName===void 0){iPanelCSSClassName=""}(function(){return __awaiter(_this,void 0,void 0,(function(){var targetJQ,buttonClickedID,deactivatedButtonID;return __generator(this,(function(_a){switch(_a.label){case 0:targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);buttonClickedID=targetJQ.closest(iButtonCSSClassName).attr("id");return[4,this.deactivateActiveButton(iButtonCSSClassName,iPanelCSSClassName)];case 1:deactivatedButtonID=_a.sent();if(deactivatedButtonID===buttonClickedID)return[2];this.handleClick("#"+buttonClickedID,true);return[2]}}))}))})()};UIEventHandlers.prototype.deactivateActiveButton=function(iButtonCSSClassName,iPanelCSSClassName){if(iPanelCSSClassName===void 0){iPanelCSSClassName=""}return __awaiter(this,void 0,void 0,(function(){var activeButtonID,activeButtonJQ;return __generator(this,(function(_a){switch(_a.label){case 0:activeButtonID="";activeButtonJQ=$(iButtonCSSClassName+".active-button");return[4,this.mUI.hideAllOtherPanels(iPanelCSSClassName)];case 1:_a.sent();if(activeButtonJQ.length){activeButtonID=activeButtonJQ[0].id;this.handleClick("#"+activeButtonID,false)}return[2,activeButtonID]}}))}))};UIEventHandlers.prototype.handleClick=function(iButtonID,iActivate){eDwUIUtils.scrollToTarget($(iButtonID));if(!this.mUI.onClick(iButtonID,iActivate)){var pluginMgr=eDwUIPluginMgr.get();pluginMgr.onClick(iButtonID,iActivate)}};return UIEventHandlers}(eDwUIBaseEventHandlers);var c_fullScreenChange="fullscreenchange.edw MSFullscreenChange.edw"+" webkitfullscreenchange.edw";var c_restoreClass="edrawings-button-fs-restore";var c_canvasID="edrawings-canvas";var c_debugGroupName="Debug";var l_fullScreenBtnJS;var l_init;var l_uninit;function l_isFullScreen(){if(!l_fullScreenBtnJS)l_fullScreenBtnJS=$("#edrawings-button-fs");return l_fullScreenBtnJS.hasClass(c_restoreClass)}}));define("eDwUIBaseEventHandlers",["require","exports","eDwEventMgr","eDwUIHTMLEventMgr","eDwCommandMgr","eDwChangeModelViewCmd","eDwCompositeCmd","eDwSetLayerVisibilityCmd","eDwUIPluginMgr","eDwEvents","eDwUIUtils","eDwUIShortcutMenu","utils"],(function(require,exports,eDwEventMgr,eDwUIHTMLEventMgr,eDwCommandMgr,eDwChangeModelViewCmd,eDwCompositeCmd,eDwSetLayerVisibilityCmd,eDwUIPluginMgr,eDwEvents,eDwUIUtils,eDwUIShortcutMenu_2,utils){"use strict";var eDwUIBaseEventHandlers=function(){function eDwUIBaseEventHandlers(iViewerHTMLID,iViewerHTMLCanvasID){this.mViewerHTMLID=iViewerHTMLID;this.mViewerHTMLCanvasID=iViewerHTMLCanvasID;this.mUIHTMLEventMgr=new eDwUIHTMLEventMgr}eDwUIBaseEventHandlers.prototype.addHTMLEventHandlers=function(iViewerFeatOpts){var _this=this;this.mViewerFeatureOpts=iViewerFeatOpts;var eventMgrHTML=this.mUIHTMLEventMgr;eventMgrHTML.addEventHandler("window","resize",(function(iEvent){_this.onResize(iEvent,_this.mViewer)}));eDwEventMgr.get().addEventHandlerFunc(eDwEvents.ResetSceneEvent,l_onResize);eDwUIUtils.addSubTreeArrowEventHandler(eventMgrHTML,"#edrawings-sheet-tree-menu");eventMgrHTML.addDelegatedEventHandler("#edrawings-sheet-tree-menu .edrawings-submenu-list-item","dblclick",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.scrollToTarget(targetJQ);if(targetJQ.hasClass("edrawings-root")){return}var selObjIDHC=eDwUIUtils.getIDHC(targetJQ);if(isNaN(selObjIDHC)||selObjIDHC<0){return}(function(){return __awaiter(_this,void 0,void 0,(function(){var cmdMgr,zoomToViewCmd,targetModelView,model,modelHC,modelViews,_i,modelViews_4,modelView,configIDHC,configChildren,activeModelView,changeModelViewCmd;return __generator(this,(function(_a){switch(_a.label){case 0:cmdMgr=eDwCommandMgr.get();zoomToViewCmd=new eDwCompositeCmd(this.mViewer);zoomToViewCmd.initCmdActionImplementation();return[4,cmdMgr.add(zoomToViewCmd)];case 1:_a.sent();targetModelView=null;model=this.mViewer.getModel();modelHC=model.getHCModel();modelViews=model.getModelViews();for(_i=0,modelViews_4=modelViews;_i-1){console.excludeDebugLogCategories.slice(pos,1)}}}));var selectorName="#edrawings-debug-menu .edrawings-submenu-list-item";eventMgrHTML.addDelegatedEventHandler(selectorName,"click",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.scrollToTarget(targetJQ);var id=eDwUIUtils.getIDHC(targetJQ);if(isNaN(id))return;$(selectorName).removeClass("edrawings-list-selected");$(targetJQ).addClass("edrawings-list-selected");_this.mViewer.SelectionMgr.selectByID(id)}));eventMgrHTML.addDelegatedEventHandler("#edrawings-debug-menu .edrawings-submenu-list-item","dblclick",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.scrollToTarget(targetJQ);var id=eDwUIUtils.getIDHC(targetJQ);if(isNaN(id))return;_this.onLeftDoubleClick(_this.mViewer)}));eventMgrHTML.addEventHandler("#edrawings-debug-menu .edrawings-menu-search-cancel","click",(function(iEvent){$("#edrawings-debug-menu "+".edrawings-menu-search-input").val("");var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.searchPanelList(_this.mViewer,targetJQ)}));eventMgrHTML.addEventHandler("#edrawings-debug-menu .edrawings-menu-search-input","keyup",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.searchPanelList(_this.mViewer,targetJQ)}));eventMgrHTML.addDelegatedEventHandler("#edrawings-layer-control-menu .item-layer-checkbox","click",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);var layerName=eDwUIUtils.getSpanText(targetJQ.next("span.item-tree-text"));var isVisible=targetJQ.prop("checked");_this.setOneLayerVisibility(layerName,isVisible)}));eventMgrHTML.addDelegatedEventHandler("#edrawings-layer-control-menu .layer-all","click",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);var isVisible=targetJQ.prop("checked");_this.setAllLayerVisibility(isVisible)}));eventMgrHTML.addEventHandler("#edrawings-filename-block","mouseover",(function(iEvent){var filenameJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);if(filenameJQ.length===1&&filenameJQ[0].scrollWidth>filenameJQ.width()){var mouseEvent=iEvent;l_positionTicker(mouseEvent,filenameJQ,$("#edrawings-filename-text").text())}}));eventMgrHTML.addEventHandler("#edrawings-filename-block","mouseout",(function(iEvent){l_hideTicker()}));eventMgrHTML.addDelegatedEventHandler("document .edrawings-submenu-list-item","mouseover",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);var itemTreeTextJQ=targetJQ.find(".item-tree-text");var edrawingsSubmenuListJQ=targetJQ.closest(".edrawings-submenu-list");if(edrawingsSubmenuListJQ.length===1&&itemTreeTextJQ.length===1&&itemTreeTextJQ[0].scrollWidth>itemTreeTextJQ.width()){var mouseEvent=iEvent;l_positionTicker(mouseEvent,itemTreeTextJQ,itemTreeTextJQ.text())}}));eventMgrHTML.addDelegatedEventHandler("document .edrawings-submenu-list-item","mouseout",(function(iEvent){l_hideTicker()}));eventMgrHTML.addEventHandler("#edrawings-hud-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-left)","click",(function(iEvent){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_scrollUIBar($("#edrawings-hud-bar .edrawings-hud-bar-content"),".edrawings-hud-button",".edrawings-hud-menu",-c_hudBarIconWidth)];case 1:_a.sent();return[2]}}))}))})()}));eventMgrHTML.addEventHandler("#edrawings-hud-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-right)","click",(function(iEvent){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_scrollUIBar($("#edrawings-hud-bar .edrawings-hud-bar-content"),".edrawings-hud-button",".edrawings-hud-menu",c_hudBarIconWidth)];case 1:_a.sent();return[2]}}))}))})()}));eDwUIUtils.enableScrollOnTouch(eventMgrHTML,"#edrawings-hud-bar .edrawings-hud-bar-content","#edrawings-hud-bar",(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.deactivateUI(".edrawings-hud-button",".edrawings-hud-menu")];case 1:_a.sent();return[2]}}))}))}));eventMgrHTML.addEventHandler("#edrawings-left-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-up)","click",(function(iEvent){var barJQ=$("#edrawings-left-bar");var contentJQ=barJQ.find(".edrawings-tool-bar-content");(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_scrollUIBar(contentJQ,".edrawings-tool-button",".edrawings-submenu",-c_toolBarIconWidth,barJQ)];case 1:_a.sent();return[2]}}))}))})()}));eventMgrHTML.addEventHandler("#edrawings-left-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-down)","click",(function(iEvent){var barJQ=$("#edrawings-left-bar");var contentJQ=barJQ.find(".edrawings-tool-bar-content");(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_scrollUIBar(contentJQ,".edrawings-tool-button",".edrawings-submenu",c_toolBarIconWidth,barJQ)];case 1:_a.sent();return[2]}}))}))})()}));eDwUIUtils.enableScrollOnTouch(eventMgrHTML,"#edrawings-left-bar .edrawings-tool-bar-content","#edrawings-left-bar",(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.deactivateUI(".edrawings-tool-button",".edrawings-submenu")];case 1:_a.sent();return[2]}}))}))}))};eDwUIBaseEventHandlers.prototype.addDefaultHTMLPanelCloseEventHandlers=function(){if(this.mViewerFeatureOpts.Debug){eDwUIUtils.addCloseEventHandler("#edrawings-debug-menu",this.mUIHTMLEventMgr)}eDwUIUtils.addCloseEventHandler("#edrawings-sheet-tree-menu",this.mUIHTMLEventMgr);eDwUIUtils.addCloseEventHandler("#edrawings-layer-control-menu",this.mUIHTMLEventMgr)};eDwUIBaseEventHandlers.doModelDataLoadCompleteActions=function(ioEventHandlerObj,iViewer){ioEventHandlerObj.mViewer=iViewer;l_loadUIPlugins(iViewer);var handlerObj=ioEventHandlerObj;var eventMgr=eDwEventMgr.get();eventMgr.addEventHandlerObj(eDwEvents.InitEvent,handlerObj,"onInit");eventMgr.addEventHandlerObj(eDwEvents.InitFullUIEvent,handlerObj,"onInitFullUI");eventMgr.addEventHandlerObj(eDwEvents.SelectEvent,handlerObj,"onSelect");eventMgr.addEventHandlerObj(eDwEvents.UnselectEvent,handlerObj,"onUnselect");eventMgr.addEventHandlerObj(eDwEvents.StartAnimationEvent,handlerObj,"onStartAnimation");eventMgr.addEventHandlerObj(eDwEvents.StopAnimationEvent,handlerObj,"onStopAnimation");eventMgr.addEventHandlerObj(eDwEvents.LeftDoubleClickEvent,handlerObj,"onLeftDoubleClick");eventMgr.addEventHandlerObj(eDwEvents.TimeoutEvent,handlerObj,"onTimeout");eventMgr.addEventHandlerObj(eDwEvents.DrawModeChangeEvent,handlerObj,"onDrawModeChange");eventMgr.addEventHandlerObj(eDwEvents.ProjModeChangeEvent,handlerObj,"onProjectionModeChange");eventMgr.addEventHandlerObj(eDwEvents.NodeAttribChangeEvent,handlerObj,"onNodeAttribChanged");eventMgr.addEventHandlerObj(eDwEvents.ResetSceneEvent,handlerObj,"onResetScene");eventMgr.addEventHandlerObj(eDwEvents.AmbientOcclChangeEvent,handlerObj,"onAmbientOcclusionChange");eventMgr.addEventHandlerObj(eDwEvents.DoneEvent,handlerObj,"onDone");eventMgr.addEventHandlerObj(eDwEvents.ModelViewChangeEvent,handlerObj,"onModelViewChange")};eDwUIBaseEventHandlers.prototype.removeHTMLEventHandlers=function(){eDwUIUtils.disableScrollOnTouch(this.mUIHTMLEventMgr,"#edrawings-hud-bar .edrawings-hud-bar-content");eDwUIUtils.disableScrollOnTouch(this.mUIHTMLEventMgr,"#edrawings-left-bar .edrawings-tool-bar-content");this.mUIHTMLEventMgr.removeAllEventHandlers();eDwUIShortcutMenu_2.eDwUIShortcutMenu.destroy()};eDwUIBaseEventHandlers.doModelDataUnloadActions=function(iViewer){l_unloadUIPlugins();if(iViewer)iViewer.unregister();eDwEventMgr.get().removeAllEventHandlers()};eDwUIBaseEventHandlers.prototype.onInit=function(iViewer){this.mViewer=iViewer};eDwUIBaseEventHandlers.prototype.onInitFullUI=function(iViewer){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.updateUI(iViewer,iViewer.getModel().getActiveModelView(),true)];case 1:_a.sent();return[2]}}))}))})()};eDwUIBaseEventHandlers.prototype.onDone=function(iViewer){iViewer.destroy()};eDwUIBaseEventHandlers.prototype.onSelect=function(iViewer,iSelObjs){this.handleSelectionChange(iViewer,iSelObjs,true)};eDwUIBaseEventHandlers.prototype.onUnselect=function(iViewer,iSelObjs){this.handleSelectionChange(iViewer,iSelObjs,false)};eDwUIBaseEventHandlers.prototype.onLeftDoubleClick=function(iViewer){eDwUIUtils.zoomToFit(iViewer);eDwUIShortcutMenu_2.eDwUIShortcutMenu.hide()};eDwUIBaseEventHandlers.prototype.onModelViewChange=function(iViewer,iNewModelView,iIsAssembly){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.updateUI(iViewer,iNewModelView)];case 1:_a.sent();return[2]}}))}))})()};eDwUIBaseEventHandlers.prototype.onNodeAttribChanged=function(iViewer,iHierNodesAndAttribs){if(iViewer.ViewerFeatureOpts.Debug){for(var _i=0,iHierNodesAndAttribs_3=iHierNodesAndAttribs;_i1){hudBarJQ.offset({left:Math.ceil(filenameBlockRight),top:hudBarOffset.top});l_resizeTopBar()}else if(hudBarContentJQ[0].scrollWidth===0||hudBarContentJQ.width()>=hudBarContentJQ[0].scrollWidth){topBarJQ.removeClass("edrawings-collided-hud-bar");hudBarJQ.removeClass("edrawings-collided");hudBarJQ.css({left:""})}}else{if(filenameBlockOffset.left!==hudBarOffset.left&&filenameBlockRight>hudBarOffset.left){hudBarJQ.offset({left:Math.ceil(filenameBlockRight),top:hudBarOffset.top});topBarJQ.addClass("edrawings-collided-hud-bar");hudBarJQ.addClass("edrawings-collided")}}eDwUIUtils.adjustScrollArrows(hudBarContentJQ[0].scrollLeft,hudBarContentJQ[0].scrollWidth,hudBarContentJQ.width(),true,leftButtonWrapperJQ,rightButtonWrapperJQ,hudBarJQ);if(topBarJQ.hasClass("edrawings-collided-hud-bar")){if(hudBarContentJQ.innerWidth()c_filenameBlockThresholdWidth){if(topBarJQ.hasClass("edrawings-out-of-view")){topBarJQ.removeClass("edrawings-out-of-view")}}else{topBarJQ.addClass("edrawings-out-of-view")}}else{if(filenameBlockJQ[0].scrollWidth-filenameBlockInnerWidth>1){if(filenameBlockJQ.width()0&&toolBarContentJQ[0].scrollHeight<=leftBarContentJQ.innerHeight()){leftBarJQ.removeClass("edrawings-collided")}}else{if(leftBarContentJQ[0].scrollHeight>0&&leftBarContentJQ[0].scrollHeight>Math.round(leftBarContentJQ.innerHeight())){leftBarJQ.addClass("edrawings-collided")}}eDwUIUtils.adjustScrollArrows(toolBarContentJQ[0].scrollTop,toolBarContentJQ[0].scrollHeight,toolBarContentJQ.height(),false,upButtonWrapperJQ,downButtonWrapperJQ,leftBarJQ);if(leftBarJQ.hasClass("edrawings-collided")){if(toolBarContentJQ.innerHeight()=window.innerWidth){var diff=iMouseEvent.clientX+iItemJQ[0].scrollWidth+scrollWidthPadding-window.innerWidth;if(iMouseEvent.clientX>=diff){tickerLeft=iMouseEvent.clientX-diff;tickerWidth=iItemJQ[0].scrollWidth+scrollWidthPadding}else{tickerLeft=0;tickerAnimation=true;if(window.innerWidth>tickerMinWidth){tickerWidth=window.innerWidth}else{tickerWidth=tickerMinWidth}var threeTimes=[iText,iText,iText].join(" ");tickerJQ.text(threeTimes)}}if(itemOffset.top-tickerMinHeight<=0){if(itemOffset.top+iItemJQ[0].clientHeight+tickerMinHeight<=window.innerHeight){tickerTop=itemOffset.top+iItemJQ[0].clientHeight}else{var diff=iMouseEvent.clientY+tickerMinHeight-window.innerHeight;if(iMouseEvent.clientY>diff){tickerTop=iMouseEvent.clientY-diff}else{tickerTop=0}}}var tickerwrapJQ=tickerJQ.closest(".edrawings-ticker-wrapper");tickerwrapJQ.offset({left:tickerLeft,top:tickerTop}).css("width",tickerWidth).removeClass("edrawings-ui-hide");if(tickerAnimation){tickerwrapJQ.addClass("edrawings-animation")}}function l_hideTicker(){var tickerwrapJQ=$(".edrawings-ticker-wrapper");if(!tickerwrapJQ.hasClass("edrawings-ui-hide")){var tickerJQ=tickerwrapJQ.find(".edrawings-ticker");tickerJQ.text("");tickerwrapJQ.addClass("edrawings-ui-hide").removeClass("edrawings-animation").css("left","").css("top","").css("width","")}}function l_positionMenuPanelCollapseButton(){var activeButtonsJQ=$(".edrawings-tool-button.active-button");if(activeButtonsJQ.length){if(eDwUIUtils.scrollToTarget(activeButtonsJQ)){l_resizeToolBar()}var collapsedPanelsJQ=$(".edrawings-submenu.active.edrawings-collapsed");if(collapsedPanelsJQ.length){var attrStyle=collapsedPanelsJQ.find(".edrawings-menu-panel-arrow-collapse").attr("style");if(!!attrStyle){eDwUIUtils.positionMenuPanelArrowCollapseButton(collapsedPanelsJQ,activeButtonsJQ)}}}}function l_fixMenuPanelInwardToolbar(){var panelsJQ=$(".edrawings-submenu.active:not(.edrawings-collapsed), .edrawings-hud-menu.active");panelsJQ.each((function(iIndex,iPanel){var panelJQ=$(iPanel);eDwUIUtils.fixMenuPanelInwardToolbar(panelJQ)}))}function l_scrollUIBar(iContentJQ,iDeactivateButtonClass,iDeactivateMenuClass,iScrollDist,iBarJQ){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iContentJQ&&iContentJQ.length>0))return[3,2];return[4,eDwUIUtils.deactivateUI(iDeactivateButtonClass,iDeactivateMenuClass)];case 1:_a.sent();eDwUIUtils.executeScrolling(iScrollDist,0,iContentJQ,iBarJQ);_a.label=2;case 2:return[2]}}))}))}return eDwUIBaseEventHandlers}));define("eDwUIBasePlugin",["require","exports","eDwUIHTMLEventMgr","eDwEventMgr","eDwEvents","eDwUIShortcutMenu","eDwUIUtils","utils"],(function(require,exports,eDwUIHTMLEventMgr,eDwEventMgr,eDwEvents_6,eDwUIShortcutMenu_3,eDwUIUtils,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.eDwUIBasePlugin=void 0;var eDwUIBasePlugin=function(){function eDwUIBasePlugin(iPluginGroupName,iViewer,iButtonInfo,iViewerFeatOpts){var _this=this;if(iViewer===void 0){iViewer=null}if(iButtonInfo===void 0){iButtonInfo=null}if(iViewerFeatOpts===void 0){iViewerFeatOpts=null}console.debugLog("UIPlugin","Constructed "+iPluginGroupName+" plugin.");this.mPluginGroupName=iPluginGroupName;this.mViewer=iViewer;this.mViewerFeatOpts=iViewerFeatOpts||iViewer&&iViewer.ViewerFeatureOpts;this.mUIHTMLEventMgr=new eDwUIHTMLEventMgr;this.mPluginDependencies=[];this.mPluginButtonInfo=iButtonInfo;if(iViewer){eDwUIShortcutMenu_3.eDwUIShortcutMenu.get().setPluginCheck(iPluginGroupName,(function(iPluginName){return _this.check(iPluginName)}))}}eDwUIBasePlugin.prototype.init=function(iPanelsToLoad){return __awaiter(this,void 0,void 0,(function(){var promises,_i,iPanelsToLoad_1,panelToLoad;return __generator(this,(function(_a){switch(_a.label){case 0:this.addAppObjEvent(eDwEvents_6.ActivateUIOpEvent,"onActivate",true);this.addAppObjEvent(eDwEvents_6.DeactivateUIOpEvent,"onDeactivate",true);if(!iPanelsToLoad)return[3,2];promises=[];for(_i=0,iPanelsToLoad_1=iPanelsToLoad;_i-1?true:false};eDwUIBasePlugin.prototype.addEventHandlers=function(){};eDwUIBasePlugin.prototype.removeEventHandlers=function(){this.mUIHTMLEventMgr.removeAllEventHandlers()};eDwUIBasePlugin.prototype.onActivate=function(iButtonJQ){return this.isButtonForThisPlugin(iButtonJQ)};eDwUIBasePlugin.prototype.onDeactivate=function(iButtonJQ){return this.isButtonForThisPlugin(iButtonJQ)};eDwUIBasePlugin.prototype.addAppObjEvent=function(iAppEvent,iEventObjMethod,iAdd){var eventMgr=eDwEventMgr.get();var eventMgrMethod=iAdd?"addEventHandlerObj":"removeEventHandlerObj";eventMgr[eventMgrMethod](iAppEvent,this,iEventObjMethod)};eDwUIBasePlugin.prototype.loadPanel=function(iPanelID,iHTMLFileName){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.loadPanel(iPanelID,iHTMLFileName)];case 1:return[2,_a.sent()]}}))}))};Object.defineProperty(eDwUIBasePlugin.prototype,"PluginGroupName",{get:function(){return this.mPluginGroupName},enumerable:false,configurable:true});Object.defineProperty(eDwUIBasePlugin.prototype,"PluginButtonID",{get:function(){return this.mPluginButtonInfo?this.mPluginButtonInfo.ID:""},enumerable:false,configurable:true});Object.defineProperty(eDwUIBasePlugin.prototype,"Dependencies",{get:function(){return this.mPluginDependencies},enumerable:false,configurable:true});return eDwUIBasePlugin}();exports.eDwUIBasePlugin=eDwUIBasePlugin}));define("eDwUIDebugHTMLGenerator",["require","exports","eDwUIHTMLGenerator","eDwTypes"],(function(require,exports,eDwUIHTMLGenerator_1,eDwTypes_15){"use strict";var _a;var eDwUIDebugHTMLGenerator=function(_super){__extends(eDwUIDebugHTMLGenerator,_super);function eDwUIDebugHTMLGenerator(iViewer,iPanelUIID){var _this=_super.call(this,iViewer,iPanelUIID)||this;_this.mHCModel=iViewer.getModel().getHCModel();return _this}eDwUIDebugHTMLGenerator.prototype.getNodeFromID=function(iNodeID){return l_getHCNode(iNodeID)};eDwUIDebugHTMLGenerator.prototype.getPostSpanHTML=function(iAdditionalClasses){return""};eDwUIDebugHTMLGenerator.prototype.forNodeGetName=function(iNode){return this.mHCModel.getNodeName(l_getHCNode(iNode))||"unknown node name"};eDwUIDebugHTMLGenerator.prototype.forNodeGetID=function(iNode){return l_getHCNode(iNode)};eDwUIDebugHTMLGenerator.prototype.forNodeGetParentID=function(iNode){return this.mHCModel.getNodeParent(l_getHCNode(iNode))||NaN};eDwUIDebugHTMLGenerator.prototype.forNodeGetChildren=function(iNode){return this.mHCModel.getNodeChildren(l_getHCNode(iNode))};eDwUIDebugHTMLGenerator.prototype.forNodeHasChildren=function(iNode){return this.forNodeGetChildren(iNode).length>0};eDwUIDebugHTMLGenerator.prototype.forNodeGetDataAttributes=function(iNode){return _super.prototype.forNodeGetDataAttributes.call(this,iNode)};eDwUIDebugHTMLGenerator.prototype.forNodeGetElementContent=function(iNode){var _this=this;var nodeIDHC=this.forNodeGetID(iNode);(function(){return __awaiter(_this,void 0,void 0,(function(){var meshIDs,numMeshIDs;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.mHCModel.getMeshIds([nodeIDHC])];case 1:meshIDs=_a.sent();numMeshIDs=meshIDs.length;console.log("Node ID: "+nodeIDHC+" Num mesh IDs: "+numMeshIDs);return[2]}}))}))})();return this.forNodeGetName(iNode)+" ID: "+nodeIDHC+" TYPE: "+c_nodeTypes[this.mHCModel.getNodeType(nodeIDHC)]+" VISIBLE: "+this.mHCModel.getNodeVisibility(nodeIDHC)};eDwUIDebugHTMLGenerator.prototype.forNodeGetDisplayStateCSSClass=function(iNode){return"edrawings-body-visible"};return eDwUIDebugHTMLGenerator}(eDwUIHTMLGenerator_1.eDwUIHTMLGenerator);var c_nodeTypes=(_a={},_a[eDwTypes_15.HC.NodeType.AssemblyNode]="Assembly",_a[eDwTypes_15.HC.NodeType.Body]="Body",_a[eDwTypes_15.HC.NodeType.BodyInstance]="Body Instance",_a[eDwTypes_15.HC.NodeType.BrepBody]="BRep Body",_a[eDwTypes_15.HC.NodeType.CadView]="CAD View",_a[eDwTypes_15.HC.NodeType.DrawingSheet]="Drawing Sheet",_a[eDwTypes_15.HC.NodeType.Part]="Part",_a[eDwTypes_15.HC.NodeType.PartInstance]="Part Instance",_a[eDwTypes_15.HC.NodeType.Pmi]="PMI",_a[eDwTypes_15.HC.NodeType.PmiBody]="PMI Body",_a[eDwTypes_15.HC.NodeType.PointsBody]="Points Body",_a[eDwTypes_15.HC.NodeType.TessBody]="Tessellation Body",_a[eDwTypes_15.HC.NodeType.Unknown]="Unknown",_a[eDwTypes_15.HC.NodeType.ViewFrame]="View Frame",_a[eDwTypes_15.HC.NodeType.WireBody]="Wire Body",_a);function l_isHCNode(iNode){return!isNaN(iNode)}function l_getHCNode(iNode){if(!l_isHCNode(iNode)){throw new Error("Not an HC node:\n"+JSON.stringify(iNode))}return iNode}return eDwUIDebugHTMLGenerator}));define("eDwUIHTMLEventMgr",["require","exports","eDwUIUtils"],(function(require,exports,eDwUIUtils){"use strict";var eDwUIHTMLEventMgr=function(){function eDwUIHTMLEventMgr(){this.mEventHandlerData={}}eDwUIHTMLEventMgr.prototype.addDelegatedEventHandler=function(iElemSelector,iEventName,iEventHandler){if(!iElemSelector||!iEventName||!iEventHandler)return false;var selectors=iElemSelector.split(" ");if(selectors.length<2)return false;var ancestorElementID=selectors.shift();return this.commonAddEventHandler(ancestorElementID,iEventName,iEventHandler,selectors.join().replace(".",""))};eDwUIHTMLEventMgr.prototype.addEventHandler=function(iElemID,iEventName,iEventHandler){if(!iElemID||!iEventName||!iEventHandler)return false;return this.commonAddEventHandler(iElemID,iEventName,iEventHandler)};eDwUIHTMLEventMgr.prototype.removeAllEventHandlers=function(){for(var eventName in this.mEventHandlerData){if(this.mEventHandlerData.hasOwnProperty(eventName)){var handlersOfEvent=this.mEventHandlerData[eventName];for(var elemID in handlersOfEvent){if(handlersOfEvent.hasOwnProperty(elemID)){this.removeEventHandlersByID(elemID,eventName,handlersOfEvent)}}delete this.mEventHandlerData[eventName]}}this.mEventHandlerData={}};eDwUIHTMLEventMgr.prototype.removeEventHandlers=function(iElemID,iEventName){var handlersRemoved=false;if(this.mEventHandlerData.hasOwnProperty(iEventName)){var handlersOfEvent=this.mEventHandlerData[iEventName];if(handlersOfEvent.hasOwnProperty(iElemID)){handlersRemoved=this.removeEventHandlersByID(iElemID,iEventName,handlersOfEvent)}}return handlersRemoved};eDwUIHTMLEventMgr.prototype.commonAddEventHandler=function(iElemID,iEventName,iEventHandler,iElemClasses){if(iElemClasses===void 0){iElemClasses=""}if(!iElemID)return false;var elements=[];if(iElemID==="window")elements.push(window);else if(iElemID==="document")elements.push(document);else elements=$(iElemID).toArray();if(!elements.length)return false;var handlersOfEvent=this.mEventHandlerData[iEventName];if(!handlersOfEvent){handlersOfEvent=this.mEventHandlerData[iEventName]={}}var elemHandlers=handlersOfEvent[iElemID];if(!elemHandlers){elemHandlers=handlersOfEvent[iElemID]={MainDispatcher:null,Handlers:[]}}if(elemHandlers.MainDispatcher){for(var _i=0,elements_1=elements;_i-1||highlight===""?"":" edrawings-list-option";var currOffset=utils.isNaN(iLeftPaddingInPX)?this.mInitialLeftPaddingInPX+"px":iLeftPaddingInPX+"px";var generatedHTML="
";generatedHTML+=this.getPreSpanHTML(iNode,additionalClasses,expanded,iIgnoreChildren);generatedHTML+=""+this.forNodeGetElementContent(iNode)+"";generatedHTML+=this.getPostSpanHTML(nonRootClass+" "+additionalClasses);generatedHTML+="
";return generatedHTML};eDwUIHTMLGenerator.prototype.generateHTML=function(iAdditionalClasses){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){return[2,""]}))}))};eDwUIHTMLGenerator.prototype.getNodeFromID=function(iNodeID){var modelViews=this.mViewer.getModel().getModelViews();for(var _i=0,modelViews_5=modelViews;_i
";return generatedHTML};eDwUIHTMLGenerator.prototype.getPostSpanHTML=function(iAdditionalClasses){return"
"};eDwUIHTMLGenerator.prototype.computeOffset=function(iLeftPaddingInPX){if(iLeftPaddingInPX===void 0){iLeftPaddingInPX=NaN}return utils.isNaN(iLeftPaddingInPX)?this.mInitialLeftPaddingInPX:iLeftPaddingInPX+this.mLeftPaddingInPX};eDwUIHTMLGenerator.prototype.forNodeGetName=function(iNode){return l_getHierarchyNode(iNode).Name};eDwUIHTMLGenerator.prototype.forNodeGetID=function(iNode){return l_getHierarchyNode(iNode).HOOPSID};eDwUIHTMLGenerator.prototype.forNodeGetParentID=function(iNode){var parentHierNode=l_getHierarchyNode(iNode).Parent;return parentHierNode?parentHierNode.HOOPSID:NaN};eDwUIHTMLGenerator.prototype.forNodeGetChildren=function(iNode){var childrenObj=l_getHierarchyNode(iNode).getChildrenAndKeys();return Object.keys(childrenObj).map((function(key){return childrenObj[key]}))};eDwUIHTMLGenerator.prototype.forNodeHasChildren=function(iNode){return this.forNodeGetChildren(iNode).length>0};eDwUIHTMLGenerator.prototype.forNodeGetDataAttributes=function(iNode){var parentNodeID=this.forNodeGetParentID(iNode);return" data-hoopsid='"+this.forNodeGetID(iNode)+"' "+(parentNodeID!==undefined?"data-hoopsparentid='"+parentNodeID+"' ":"")};eDwUIHTMLGenerator.prototype.forNodeGetElementContent=function(iNode){return this.forNodeGetName(iNode)};eDwUIHTMLGenerator.prototype.forNodeGetDisplayStateCSSClass=function(iNode){return eDwUIHTMLGenerator.getDisplayStateCSSClass(l_getHierarchyNode(iNode))};return eDwUIHTMLGenerator}();exports.eDwUIHTMLGenerator=eDwUIHTMLGenerator;function l_getHierarchyNode(iNode){if(!eDwHierarchyNode.isHierarchyNode(iNode)){throw new Error("Not a hierarchy node:\n"+JSON.stringify(iNode))}return iNode}}));define("eDwUIHierNodeVisMenuItemsPlugin",["require","exports","eDwCommandMgr","eDwSetHierNodeAttribsCmd","eDwShowOnlyCmd","eDwUIUtils","eDwEventMgr","eDwUIShortcutMenu","eDwKeyMgr","eDwEvents","eDwTypes","eDwUIBasePlugin","utils"],(function(require,exports,eDwCommandMgr,eDwSetHierNodeAttribsCmd,eDwShowOnlyCmd,eDwUIUtils,eDwEventMgr,eDwUIShortcutMenu_4,eDwKeyMgr_4,eDwEvents_7,eDwTypes_16,eDwUIBasePlugin_1,utils){"use strict";var eDwUIHierNodeVisMenuItemPlugin=function(_super){__extends(eDwUIHierNodeVisMenuItemPlugin,_super);function eDwUIHierNodeVisMenuItemPlugin(iViewer,iViewerFeatOpts){return _super.call(this,"HideShow",iViewer)||this}eDwUIHierNodeVisMenuItemPlugin.prototype.init=function(){return __awaiter(this,void 0,void 0,(function(){function isNotPartModel(iViewer){return!iViewer.getModel().isPart()}var shortcutMenu,isVisibleForASMAndDRW,isVisibleForASM,isVisibleNonRootForASMAndDRW;var _this=this;return __generator(this,(function(_a){_super.prototype.init.call(this);shortcutMenu=eDwUIShortcutMenu_4.eDwUIShortcutMenu.get();if(!shortcutMenu.isEmpty()){shortcutMenu.addMenuSeparator(this.PluginGroupName)}isVisibleForASMAndDRW=function(iViewer,iIsSelected){return iIsSelected&&isNotPartModel(iViewer)};isVisibleForASM=function(iViewer,iIsSelected){return iIsSelected&&iViewer.getModel().isAssembly()};isVisibleNonRootForASMAndDRW=function(iViewer,iIsSelected){var model=iViewer.getModel();var modelViewHierNode=model.getActiveModelView().Hierarchy;var lastSelHierNode=iViewer.SelectionMgr.getLastSelHierarchyNode();return iIsSelected&&(model.isDrawing()||model.isAssembly()&&modelViewHierNode!==lastSelHierNode.Parent)};shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-hide-show",(function(iEvent,iUIItemJQ,iArg){var selMgr=_this.mViewer.SelectionMgr;var selHierNodes=selMgr.getSelHierarchyNodes();if(selHierNodes&&selHierNodes.length){(function(){return __awaiter(_this,void 0,void 0,(function(){var attrib,selHideShowCmd;return __generator(this,(function(_a){switch(_a.label){case 0:attrib={Visible:!selHierNodes[0].getAttribs().Visible};selHideShowCmd=new eDwSetHierNodeAttribsCmd(this.mViewer,selHierNodes,attrib);return[4,eDwCommandMgr.get().run(selHideShowCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}eDwUIShortcutMenu_4.eDwUIShortcutMenu.hide()}),isVisibleForASMAndDRW);shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-transp-solid",(function(iEvent,iUIItemJQ,iArg){(function(){return __awaiter(_this,void 0,void 0,(function(){var selMgr,selHierNodes,attrib,selTransSolidCmd;return __generator(this,(function(_a){switch(_a.label){case 0:selMgr=this.mViewer.SelectionMgr;selHierNodes=selMgr.getSelHierarchyNodes();if(!(selHierNodes&&selHierNodes.length))return[3,2];attrib={Opaque:!selHierNodes[0].getAttribs().Opaque};selTransSolidCmd=new eDwSetHierNodeAttribsCmd(this.mViewer,selHierNodes,attrib);return[4,eDwCommandMgr.get().run(selTransSolidCmd,"commit")];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))})();eDwUIShortcutMenu_4.eDwUIShortcutMenu.hide()}),isVisibleForASM);shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-isolate",(function(iEvent,iUIItemJQ,iArg){(function(){return __awaiter(_this,void 0,void 0,(function(){var selMgr,showOnlyCmd;return __generator(this,(function(_a){switch(_a.label){case 0:selMgr=this.mViewer.SelectionMgr;showOnlyCmd=new eDwShowOnlyCmd(this.mViewer,selMgr.getSelHierarchyNodes());return[4,eDwCommandMgr.get().run(showOnlyCmd,"commit")];case 1:_a.sent();return[2]}}))}))})();eDwUIShortcutMenu_4.eDwUIShortcutMenu.hide()}),isVisibleNonRootForASMAndDRW);shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-show-all",(function(iEvent,iUIItemJQ,iArg){(function(){return __awaiter(_this,void 0,void 0,(function(){var showAllCmd;return __generator(this,(function(_a){switch(_a.label){case 0:showAllCmd=new eDwShowOnlyCmd(this.mViewer);return[4,eDwCommandMgr.get().run(showAllCmd,"commit")];case 1:_a.sent();return[2]}}))}))})();eDwUIShortcutMenu_4.eDwUIShortcutMenu.hide()}),isNotPartModel);this.mUIHTMLEventMgr.addDelegatedEventHandler("document .edrawings-submenu-list-item-button","click",(function(iEvent){console.debugLog("UIPlugin","HideShow menu button click");var selected=false;var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);var parentJQ=targetJQ.parent();eDwUIUtils.scrollToTarget(parentJQ);var selIDHC=eDwUIUtils.getIDHC(parentJQ);if(!isNaN(selIDHC)){var existingIdx=_this.mViewer.SelectionMgr.getSelectedNodeIDIndex(selIDHC);selected=existingIdx>-1?true:_this.mViewer.SelectionMgr.selectByID(selIDHC)}if(selected){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.fireEvent(iEvent,eDwEvents_7.RightClickEvent)];case 1:_a.sent();return[2]}}))}))})()}}));console.debugLog("UIPlugin","Added HideShow click event handler");this.mUIHTMLEventMgr.addDelegatedEventHandler("document .edrawings-submenu-list-item","mouseup",(function(iEvent){console.debugLog("UIPlugin","HideShow menu mouseup");var eventJQ=$(iEvent);var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.scrollToTarget(targetJQ);if(!targetJQ||!targetJQ.length||!eventJQ||!eventJQ.length||targetJQ.hasClass("edrawings-root")||targetJQ.hasClass("edrawings-tree-arrow")||targetJQ.hasClass("edrawings-tree-expanded")||targetJQ.hasClass("edrawings-tree-icon")){return}if(!targetJQ.hasClass("edrawings-submenu-list-item"))return;var mouseEvent=iEvent;var pressedRMB=eDwKeyMgr_4.eDwKeyMgr.isRMBPressed(mouseEvent);var selected=false;var selIDHC=eDwUIUtils.getIDHC(targetJQ);if(utils.isNumber(selIDHC)){if(!eDwKeyMgr_4.eDwKeyMgr.get().isDown("Shift")){selected=_this.mViewer.SelectionMgr.selectByID(selIDHC)}else{var selector=".edrawings-submenu-list-item"+".edrawings-list-selected:has([data-hoopsid])";var filter=".edrawings-submenu-list-item:has([data-hoopsid])";var collectionPrevJQ=targetJQ.prevUntil(selector,filter);if(collectionPrevJQ.length===0||collectionPrevJQ.last().prev(selector).length===0){collectionPrevJQ=$([])}var collectionNextJQ=targetJQ.nextUntil(selector,filter);if(collectionNextJQ.length===0||collectionNextJQ.last().next(selector).length===0){collectionNextJQ=$([])}var collectionJQ=$([]).add(collectionPrevJQ).add(targetJQ).add(collectionNextJQ);collectionJQ.each((function(iIdx,iElement){var elementJQ=$(iElement);var selIDHC=eDwUIUtils.getIDHC(elementJQ);_this.mViewer.SelectionMgr.selectByID(selIDHC)}));selected=true;iEvent.preventDefault()}}else{selected=!targetJQ.hasClass("edrawings-list-selected");targetJQ[selected?"addClass":"removeClass"]("edrawings-list-selected")}(function(){return __awaiter(_this,void 0,void 0,(function(){var eventMgr,onSelectDoRMB;var _this=this;return __generator(this,(function(_a){eventMgr=eDwEventMgr.get();onSelectDoRMB=function(iViewer){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:eventMgr.removeEventHandlerFunc(eDwEvents_7.SelectEvent,"onSelectDoRMB");return[4,this.fireEvent(iEvent,eDwEvents_7.RightClickEvent)];case 1:_a.sent();return[2]}}))}))};if(selected&&pressedRMB){eventMgr.addEventHandlerFunc(eDwEvents_7.SelectEvent,onSelectDoRMB)}return[2]}))}))})()}));console.debugLog("UIPlugin","Added HideShow mouseup event handler");return[2]}))}))};eDwUIHierNodeVisMenuItemPlugin.prototype.check=function(iPluginName){return _super.prototype.check.call(this,iPluginName)||iPluginName===undefined};eDwUIHierNodeVisMenuItemPlugin.prototype.fireEvent=function(iEvent,iAppEvent){return __awaiter(this,void 0,void 0,(function(){var screenPos;return __generator(this,(function(_a){switch(_a.label){case 0:if(!iEvent||!iAppEvent||!this.mViewer)return[2];if(!(iAppEvent===eDwEvents_7.RightClickEvent))return[3,3];if(!utils.isOfType(iEvent,"clientX"))return[3,2];screenPos=new eDwTypes_16.HC.Point2(iEvent.clientX,iEvent.clientY);return[4,eDwEventMgr.get().fireEvent(iAppEvent,this.mViewer,screenPos,$(iEvent.target),this.PluginGroupName)];case 1:_a.sent();_a.label=2;case 2:return[3,5];case 3:if(!(iAppEvent===eDwEvents_7.UnselectEvent))return[3,5];return[4,eDwEventMgr.get().fireEvent(iAppEvent,this.mViewer,[])];case 4:_a.sent();_a.label=5;case 5:return[2]}}))}))};return eDwUIHierNodeVisMenuItemPlugin}(eDwUIBasePlugin_1.eDwUIBasePlugin);return eDwUIHierNodeVisMenuItemPlugin}));define("eDwUILayerHTMLGenerator",["require","exports","eDwUIHTMLGenerator","eDwLayer","utils"],(function(require,exports,eDwUIHTMLGenerator_2,eDwLayer,utils){"use strict";var eDwUILayerHTMLGenerator=function(_super){__extends(eDwUILayerHTMLGenerator,_super);function eDwUILayerHTMLGenerator(iViewer,iPanelUIID){return _super.call(this,iViewer,iPanelUIID)||this}eDwUILayerHTMLGenerator.prototype.generateHTML=function(iAdditionalClasses){return __awaiter(this,void 0,void 0,(function(){var generatedHTML,layers,_i,layers_2,layer;return __generator(this,(function(_a){generatedHTML="";layers=this.mViewer.getModel().getLayers();if(layers.length){generatedHTML+="
"+" "+""+"Name
"+"
"}for(_i=0,layers_2=layers;_i"};eDwUILayerHTMLGenerator.prototype.getPostSpanHTML=function(iAdditionalClasses){return""};eDwUILayerHTMLGenerator.prototype.shouldIncludeNode=function(iLayer){return true};eDwUILayerHTMLGenerator.prototype.forNodeGetName=function(iNode){return l_getLayer(iNode).getName()};eDwUILayerHTMLGenerator.prototype.forNodeGetID=function(iNode){return l_getLayer(iNode).getIDHC()};eDwUILayerHTMLGenerator.prototype.forNodeGetParentID=function(iNode){return NaN};eDwUILayerHTMLGenerator.prototype.forNodeGetChildren=function(iNode){var childNodes=[];if(this.mViewer.ViewerFeatureOpts.Debug){childNodes=l_getLayer(iNode).getNodeIDsHC()}return childNodes};eDwUILayerHTMLGenerator.prototype.forNodeGetDataAttributes=function(iNode){return""};eDwUILayerHTMLGenerator.prototype.forNodeGetDisplayStateCSSClass=function(iNode){return""};return eDwUILayerHTMLGenerator}(eDwUIHTMLGenerator_2.eDwUIHTMLGenerator);function l_getLayer(iNode){if(!utils.isInstanceOf(iNode,eDwLayer)){throw new Error("Not a layer:\n"+JSON.stringify(iNode))}return iNode}return eDwUILayerHTMLGenerator}));define("eDwUIMessageReporter",["require","exports","eDwUIUtils","utils"],(function(require,exports,eDwUIUtils,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.showMessageInDebugPanel=exports.showMessagePanelFromCSScontent=exports.showResultPanel=exports.showServerLoadErrorPanel=void 0;function showServerLoadErrorPanel(iServerID,iModelCacheName){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_addParagraphToPanelText({},"edrawings-server-load-failure-1")];case 1:_a.sent();return[4,l_showServerError(iServerID,iModelCacheName)];case 2:_a.sent();return[2]}}))}))}exports.showServerLoadErrorPanel=showServerLoadErrorPanel;function showResultPanel(iResult){return __awaiter(this,void 0,void 0,(function(){var showButtons,_a;return __generator(this,(function(_b){switch(_b.label){case 0:showButtons=false;if(!utils.isOfType(iResult,"ServerID"))return[3,2];return[4,l_showConversionResultPanel(iResult)];case 1:showButtons=_b.sent();return[3,5];case 2:_a=iResult.ErrorCode;return[3,3];case 3:return[4,l_showPanelGeneric(iResult)];case 4:showButtons=_b.sent();return[3,5];case 5:return[2,showButtons]}}))}))}exports.showResultPanel=showResultPanel;function showMessagePanelFromCSScontent(iTextClass,iOptions){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_addParagraphToPanelText(!!iOptions?iOptions:{},iTextClass)];case 1:_a.sent();return[4,l_showMessagePanel()];case 2:_a.sent();return[2]}}))}))}exports.showMessagePanelFromCSScontent=showMessagePanelFromCSScontent;function showMessageInDebugPanel(iMsg){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_showMessagePanel(iMsg,true,true)];case 1:_a.sent();return[2]}}))}))}exports.showMessageInDebugPanel=showMessageInDebugPanel;function l_showConversionResultPanel(iResult){return __awaiter(this,void 0,void 0,(function(){var showButtons,_a;return __generator(this,(function(_b){switch(_b.label){case 0:showButtons=l_shouldShowButtons();_a=iResult.ErrorCode;switch(_a){case"URLNotAccessible":return[3,1];case"UnsupportedFileType":return[3,4];case"UnknownLicenseError":return[3,7];case"LicenseVersionMismatch":return[3,10];case"NoMoreLicenses":return[3,13];case"CannotConnectToLicenseServer":return[3,16];case"LicenseExpired":return[3,19];case"UnknownError":return[3,22]}return[3,25];case 1:return[4,l_addParagraphToPanelText({"data-file-url":iResult.ErrorData[0]},"edrawings-server-url-inaccessible")];case 2:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-error-title edrawings-dialog-no-close")];case 3:_b.sent();return[3,29];case 4:return[4,l_addParagraphToPanelText({"data-file":iResult.FileName},"edrawings-server-unsupported-file-type")];case 5:_b.sent();return[4,l_showMessagePanel("",true,showButtons,"edrawings-error-title edrawings-dialog-no-close")];case 6:_b.sent();return[3,29];case 7:return[4,l_addParagraphToPanelText({},"edrawings-unknown-license-error")];case 8:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 9:_b.sent();return[3,29];case 10:return[4,l_addParagraphToPanelText({},"edrawings-license-version-mismatch-error")];case 11:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 12:_b.sent();return[3,29];case 13:return[4,l_addParagraphToPanelText({},"edrawings-no-licenses-error")];case 14:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 15:_b.sent();return[3,29];case 16:return[4,l_addParagraphToPanelText({},"edrawings-license-server-connection-error")];case 17:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 18:_b.sent();return[3,29];case 19:return[4,l_addParagraphToPanelText({},"edrawings-license-expired-error")];case 20:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 21:_b.sent();return[3,29];case 22:return[4,l_addParagraphToPanelText({},"edrawings-unknown-error")];case 23:_b.sent();return[4,l_showServerError(iResult.ServerID,iResult.ModelCacheName)];case 24:_b.sent();return[3,29];case 25:if(!l_isDebug())return[3,27];return[4,l_showPanelGeneric(iResult)];case 26:_b.sent();return[3,28];case 27:showServerLoadErrorPanel(iResult.ServerID,iResult.ModelCacheName);_b.label=28;case 28:return[3,29];case 29:return[2,showButtons]}}))}))}function l_showPanelGeneric(iResult){return __awaiter(this,void 0,void 0,(function(){var _a,msg,classes,_i,_b,data;return __generator(this,(function(_c){switch(_c.label){case 0:_a=iResult.ErrorCode;switch(_a){case"AJAXFailure":return[3,1];case"IncompleteFileProcessing":return[3,4];case"ModelLoadInViewerFailed":return[3,7]}return[3,11];case 1:return[4,l_addParagraphToPanelText({},"edrawings-server-ajax-failure")];case 2:_c.sent();return[4,l_showMessagePanel("",true,false,"edrawings-error-title edrawings-dialog-no-close")];case 3:_c.sent();return[3,13];case 4:return[4,l_addParagraphToPanelText({},"edrawings-unable-process-file")];case 5:_c.sent();return[4,l_showMessagePanel("",true,true,"edrawings-error-title edrawings-dialog-no-close")];case 6:_c.sent();return[3,13];case 7:return[4,l_addParagraphToPanelText({"data-error-message":iResult.ErrorData[0]},"edrawings-viewer-load-failure")];case 8:_c.sent();return[4,l_addParagraphToPanelText({"data-model-cache-name":iResult.ErrorData[1]},"edrawings-server-load-failure-3")];case 9:_c.sent();return[4,l_showMessagePanel("",true,true,"edrawings-error-title edrawings-dialog-no-close")];case 10:_c.sent();return[3,13];case 11:msg="";classes="edrawings-dialog-no-close";switch(iResult.ErrorCode){case"Error":classes+=" edrawings-error-title";break;case"Warn":classes+=" edrawings-warn-title";break;default:classes+=" edrawings-info-title";msg+="
"+iResult.ErrorCode+"
";break}for(_i=0,_b=iResult.ErrorData;_i<_b.length;_i++){data=_b[_i];msg+="
"+data+"
"}return[4,l_showMessagePanel(msg,true,false,classes)];case 12:_c.sent();return[3,13];case 13:return[2,l_shouldShowButtons()]}}))}))}function l_addParagraphToPanelText(iOptions,iTextClass){return __awaiter(this,void 0,void 0,(function(){function getValue(iValue){return typeof iValue==="string"?"'"+iValue+"'":iValue.toString()}var msgPanelTextJQ,div,optionKeys,_i,optionKeys_1,optionKey;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_getDialogPanelTextElem()];case 1:msgPanelTextJQ=_a.sent();div="
";msgPanelTextJQ.append(div);return[2]}}))}))}function l_showMessagePanel(iMsg,iModal,iShowButtons,iDlgClasses){if(iMsg===void 0){iMsg=""}if(iModal===void 0){iModal=true}if(iShowButtons===void 0){iShowButtons=false}if(iDlgClasses===void 0){iDlgClasses="edrawings-info-title edrawings-dialog-no-close"}return __awaiter(this,void 0,void 0,(function(){var msgPanelTextJQ,opts,msgPanel,msgPanelTitleJQ,text;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_getDialogPanelTextElem()];case 1:msgPanelTextJQ=_a.sent();if(iMsg)msgPanelTextJQ.html(iMsg);opts={modal:iModal,width:window.innerWidth*.6,minWidth:200,dialogClass:iDlgClasses,closeOnEscape:iShowButtons};msgPanel=$("#edrawings-dialog-panel");if(iShowButtons){$.extend(opts,{buttons:{Ok:function(){msgPanel.dialog("close")}},close:function(iEvent){$(".edrawings-dialog-content").remove()}})}$.extend(opts,{beforeClose:function(iEvent){eDwUIUtils.getAsJQueryObj(iEvent.target).closest(".ui-dialog").siblings(".ui-widget-overlay").addBack().off("drop")},open:function(iEvent){eDwUIUtils.getAsJQueryObj(iEvent.target).closest(".ui-dialog").siblings(".ui-widget-overlay").addBack().on("drop",(function(iEvent2){iEvent2.preventDefault();iEvent2.stopPropagation()}))}});eDwUIUtils.hide("#WaitBanner",true);msgPanel.dialog(opts);if(iDlgClasses.indexOf("edrawings")>-1&&iDlgClasses.indexOf("title")>-1){msgPanelTitleJQ=msgPanel.prev().find(".ui-dialog-title");text="";if(msgPanelTitleJQ){text=msgPanelTitleJQ.css("content").replace(/^['"]+|\\|(;\s?})+|['"]$/g,"")}msgPanelTitleJQ.text(text)}return[2]}}))}))}function l_shouldShowButtons(){var viewerHTMLElem=$(eDwUIUtils.getViewerElementID()).get(0);return $._data(viewerHTMLElem,"events").dragover}function l_isDebug(){var viewerFeatOpts={Debug:false};eDwUIUtils.getRequestedQueryStringParams(location.href,viewerFeatOpts,false);return viewerFeatOpts.Debug||false}function l_getDialogPanelTextElem(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!!lDialogTextJQ.length)return[3,2];return[4,eDwUIUtils.loadPanel("#edrawings-dialog-panel","dialogpanel.html")];case 1:_a.sent();lDialogTextJQ=$("#edrawings-dialog-panel-text");_a.label=2;case 2:return[2,lDialogTextJQ]}}))}))}function l_showServerError(iServerID,iModelCacheName){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_addParagraphToPanelText({"data-server-id":iServerID},"edrawings-server-load-failure-2")];case 1:_a.sent();return[4,l_addParagraphToPanelText({"data-model-cache-name":iModelCacheName},"edrawings-server-load-failure-3")];case 2:_a.sent();return[4,l_showMessagePanel("",true,false,"edrawings-error-title edrawings-dialog-no-close")];case 3:_a.sent();return[2]}}))}))}var lDialogTextJQ=$()}));define("eDwUIModelViewHTMLGenerator",["require","exports","eDwUIHTMLGenerator"],(function(require,exports,eDwUIHTMLGenerator_3){"use strict";var eDwUIModelViewHTMLGenerator=function(_super){__extends(eDwUIModelViewHTMLGenerator,_super);function eDwUIModelViewHTMLGenerator(iViewer,iPanelUIID){return _super.call(this,iViewer,iPanelUIID)||this}eDwUIModelViewHTMLGenerator.prototype.generateHTML=function(iAdditionalClasses){return __awaiter(this,void 0,void 0,(function(){var generatedHTML,modelViews,_i,modelViews_6,modelView,modelViewHierNode;return __generator(this,(function(_a){generatedHTML="";modelViews=this.mViewer.getModel().getModelViews();for(_i=0,modelViews_6=modelViews;_iparentRect.Width){posx=parentRect.Width-menuWidth-5}if(posy+menuHeight>parentRect.Height){posy=parentRect.Height-menuHeight-5}menuJQ.css({top:posy+"px",left:posx+"px"});eDwUIUtils.hide(c_menuID,false)};eDwUIShortcutMenu.hide=function(){eDwUIUtils.hide(c_menuID,true);eDwUIUtils.hide(c_menuID+" ul",true);eDwUIUtils.hide(c_menuID+" li",true)};return eDwUIShortcutMenu}();exports.eDwUIShortcutMenu=eDwUIShortcutMenu;var c_menuID="#edrawings-shortcut-menu";var c_divider="-";var c_dummyText="dummy";function l_validatePlugin(iPluginName){if(!iPluginName){console.debugLog("shortcutmenu","Missing menu group name.");throw new eDwGenericError("Missing menu group name.")}}function l_insertInMenu(iElementStyle,iPluginName,iCSSClassName,iParentMenuJQ){l_validatePlugin(iPluginName);var text=iCSSClassName==="edrawings-shortcut-divider"?c_divider:c_dummyText;var menuElemJQ=$("<"+iElementStyle+" class ='"+iCSSClassName+" edrawings-shortcut-menu-text'>"+text+"");menuElemJQ.attr("plugin-name",iPluginName);if(!menuElemJQ.attr("id")){menuElemJQ.attr("id",iCSSClassName+"-id")}iParentMenuJQ.append(menuElemJQ);iParentMenuJQ.menu("refresh");if(text===c_dummyText)menuElemJQ.text("");return menuElemJQ}function l_removeFromMenu(iParentMenuSelector,iPluginName,iMenuItemCSSClassName){return $(iParentMenuSelector).find("[plugin-name='"+iPluginName+"']"+iMenuItemCSSClassName).remove()}function l_getNumVisMenuItems(iPluginName){var menuItems=$(c_menuID+" li");var hiddenMenuItems=$(c_menuID+" li.edrawings-ui-hide");if(iPluginName){menuItems=menuItems.find("[plugin-name='"+iPluginName+"']");hiddenMenuItems=hiddenMenuItems.find("[plugin-name='"+iPluginName+"']")}return menuItems.length-hiddenMenuItems.length}function l_shouldBeVisible(iViewer,iArg){return typeof iArg==="boolean"?false:true}}));define("eDwUITableHTMLGenerator",["require","exports","eDwUIHTMLGenerator"],(function(require,exports,eDwUIHTMLGenerator_5){"use strict";var eDwUITableHTMLGenerator=function(_super){__extends(eDwUITableHTMLGenerator,_super);function eDwUITableHTMLGenerator(iViewer,iPanelUIID){return _super.call(this,iViewer,iPanelUIID)||this}eDwUITableHTMLGenerator.prototype.generateHTML=function(iAdditionalClasses){return __awaiter(this,void 0,void 0,(function(){var generatedHTML,activeModelView,tableNodes,_i,tableNodes_1,tableNode;return __generator(this,(function(_a){generatedHTML="";activeModelView=this.mViewer.getModel().getActiveModelView();if(activeModelView&&activeModelView.Hierarchy){tableNodes=activeModelView.Hierarchy.find("Category","table");for(_i=0,tableNodes_1=tableNodes;_i0))}}exports.searchPanelList=searchPanelList;function updateModelViewTargets(iModelView,iFilter,iTargetClass){var targetSpans=$("span[data-hoopsid='"+iModelView.Hierarchy.HOOPSID+"']");if(targetSpans.length>0){var viewTab=targetSpans.filter(iFilter);if(viewTab.length>0){var parentJQ=viewTab.parent();parentJQ.addClass(iTargetClass);scrollToTarget(parentJQ)}}}exports.updateModelViewTargets=updateModelViewTargets;function switchModelView(iEvent,iViewer,iClassForNodeID){var _this=this;if(!iEvent)return;var targetJQ=getAsJQueryObj(iEvent.target);if(!targetJQ.length)return;var modelViewDivJQ=$(iClassForNodeID,targetJQ);if(!modelViewDivJQ.length)return;var model=iViewer.getModel();var nodeIDHC=parseInt(modelViewDivJQ.data("hoopsid"),10);var modelViewHierNode=model.getHierarchyNode(nodeIDHC);var newModelView=modelViewHierNode.getModelView();var currModelView=model.getActiveModelView();if(newModelView===currModelView)return;(function(){return __awaiter(_this,void 0,void 0,(function(){var changeModelViewCmd;return __generator(this,(function(_a){switch(_a.label){case 0:changeModelViewCmd=new eDwChangeModelViewCmd(iViewer,newModelView);return[4,eDwCommandMgr.get().run(changeModelViewCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}exports.switchModelView=switchModelView;function expandSelected(iViewer,iSelHierNode){var activeModelView=iViewer.getModel().getActiveModelView();function expandNode(iTargetJQ){if(!iTargetJQ.length)return;if(!iTargetJQ.hasClass("edrawings-tree-expanded")){var panelUIID=getUIPanelID(iTargetJQ);if(!$(panelUIID).is(":visible"))return;var gen=getUIGenerator(panelUIID);var offset=parseInt($(iTargetJQ).css("padding-left"),10);var nodeToExpand=parseInt(iTargetJQ.data("hoopsid"),10);var hierarchyNode=activeModelView.Nodes[nodeToExpand];var appendNode=iTargetJQ.closest(".edrawings-submenu-list-item");appendNode.after(gen.generateHTMLForChildNodes(hierarchyNode,false,offset));iTargetJQ.addClass("edrawings-tree-expanded")}}var hierNode=iSelHierNode.Parent;while(hierNode&&hierNode!==activeModelView.Hierarchy){var expandNodes=$('[data-hoopsid="'+hierNode.HOOPSID+'"][class~="edrawings-tree-arrow"]');$.each(expandNodes,(function(iIdx,iTarget){expandNode($(iTarget))}));hierNode=hierNode.Parent}}exports.expandSelected=expandSelected;function scrollToTreeNode(iSelHierNode,iSetSelected){var treeItem={node:$("span[data-hoopsid='"+iSelHierNode.HOOPSID+"']:not(.config-tab-text)"),ownerNode:$("div[data-hoopsid='"+iSelHierNode.HOOPSID+"']")};if(treeItem.ownerNode.length){var classAction_1=iSetSelected?"addClass":"removeClass";$.each(treeItem.node,(function(iIdx,iTarget){$(iTarget)[classAction_1]("edrawings-list-selected")}));$.each(treeItem.ownerNode,(function(iIdx,iTarget){var targetJQ=$(iTarget);targetJQ[classAction_1]("edrawings-list-selected");if(!targetJQ.hasClass("edrawings-submenu-list-item")){return}targetJQ.find(".edrawings-submenu-list-item-button")[classAction_1]("edrawings-list-option");var panel=targetJQ.closest(".edrawings-menu");var panelHiddenState=panel.is(":hidden");hide(panel.attr("id"),false);if(iSetSelected){scrollToTarget(targetJQ,panelHiddenState?"none":"slow")}hide(panel.attr("id"),panelHiddenState)}))}}exports.scrollToTreeNode=scrollToTreeNode;function addCloseEventHandler(iPanelID,iUIHTMLEventMgr){iUIHTMLEventMgr.addDelegatedEventHandler(iPanelID+" .edrawings-menu-close","click",(function(iEvent){hide(iPanelID,true)}))}exports.addCloseEventHandler=addCloseEventHandler;function deactivateMoveInput(iInputEventIDSuffix){$(document).off("mousemove"+iInputEventIDSuffix);$(document).off("mousedown"+iInputEventIDSuffix);$(document).off("mouseup"+iInputEventIDSuffix);$(document).off("click"+iInputEventIDSuffix)}exports.deactivateMoveInput=deactivateMoveInput;function loadComponentHTML(){return __awaiter(this,void 0,void 0,(function(){var loadPromises;return __generator(this,(function(_a){switch(_a.label){case 0:loadPromises=[];utils.appendToArray(loadPanel("#edrawings-sheet-tree-menu","sheetspanel.html"),loadPromises);utils.appendToArray(loadPanel("#edrawings-layer-control-menu","layerspanel.html"),loadPromises);utils.appendToArray(loadPanel("#edrawings-debug-menu","debugpanel.html"),loadPromises);return[4,Promise.all(loadPromises)];case 1:_a.sent();return[2]}}))}))}exports.loadComponentHTML=loadComponentHTML;function inhibitEventBehavior(iEvent){iEvent.preventDefault();iEvent.stopPropagation()}exports.inhibitEventBehavior=inhibitEventBehavior;function populateModelViewPanel(iViewer,iPanelUIID,iTextClass){return __awaiter(this,void 0,void 0,(function(){var listModelViewMenu,gen,_a,_b;return __generator(this,(function(_c){switch(_c.label){case 0:listModelViewMenu=$(iPanelUIID+" .edrawings-submenu-list");listModelViewMenu.empty();gen=getUIGenerator(iPanelUIID);_b=(_a=listModelViewMenu).append;return[4,gen.generateHTML(iTextClass)];case 1:_b.apply(_a,[_c.sent()]);return[2]}}))}))}exports.populateModelViewPanel=populateModelViewPanel;function addPanelModeEvents(iPanelID,iInputEventIDSuffix,iButtonID){var click="click"+iInputEventIDSuffix;$(document).on(click,iPanelID+" .edrawings-menu-panel-arrow-collapse",(function(iJQEvent){var msg="Panel resize: "+click;console.debugLog("UIPanelResize",msg);iJQEvent.preventDefault();var panelJQ=$(iPanelID);panelJQ.toggleClass("edrawings-collapsed");var activeButtonJQ=iButtonID?$(iButtonID):undefined;positionMenuPanelArrowCollapseButton(panelJQ,activeButtonJQ);iJQEvent.stopImmediatePropagation()}));var panelJQ=$(iPanelID);panelJQ.removeClass("edrawings-collapsed");l_setMenuPanelArrowCollapseButtonPosition(panelJQ);fixMenuPanelInwardToolbar(panelJQ)}exports.addPanelModeEvents=addPanelModeEvents;function getText(iElement){return $(iElement).text().trim()}exports.getText=getText;function getTarget(iTargetJQ){return iTargetJQ.hasClass("config-tab-text")?iTargetJQ.parent():iTargetJQ}exports.getTarget=getTarget;function getSpanText(iTargetJQ){var target=getTarget(iTargetJQ);if(!target.is("span")){target=target.find("span")}if(!target||!target.length)return"";return target[0].innerText}exports.getSpanText=getSpanText;function loadPanel(iElemOrClassID,iPanelHTML){return __awaiter(this,void 0,void 0,(function(){var loaded,iExcp_16;return __generator(this,(function(_a){switch(_a.label){case 0:if(!eDwServiceMgr.usesWebServices())return[2,false];loaded=false;_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,eDwServiceMgr.get().load(iElemOrClassID,iPanelHTML)];case 2:_a.sent();loaded=true;console.debugLog("PanelLoad","Loaded panel id = "+iElemOrClassID+" HTML file = "+iPanelHTML);return[3,4];case 3:iExcp_16=_a.sent();console.debugLog("PanelLoad","Failed to load "+iPanelHTML+": "+iExcp_16.message);return[3,4];case 4:return[2,loaded]}}))}))}exports.loadPanel=loadPanel;function hide(iSelector,iOff){var selJQ=$(iSelector);selJQ[iOff?"addClass":"removeClass"]("edrawings-ui-hide");return selJQ}exports.hide=hide;function getRequestedQueryStringParams(iURL,ioViewerFeatOpts,iWarnOfOtherParams){if(iWarnOfOtherParams===void 0){iWarnOfOtherParams=true}var hashes=iURL.slice(iURL.indexOf("?")+1).split("&");for(var i=0;i1){var strVal=hash[1];var val=strVal==="true"?true:strVal==="false"?false:strVal;if(ioViewerFeatOpts.hasOwnProperty(hash[0])){ioViewerFeatOpts[hash[0]]=val}else if(iWarnOfOtherParams){console.warn(hash[0]+" is not a valid query parameter.")}}}}exports.getRequestedQueryStringParams=getRequestedQueryStringParams;function getPosition(iTargetJQ){var ret={top:0,left:0};if(iTargetJQ)ret=iTargetJQ.position();return ret}exports.getPosition=getPosition;function scrollToTarget(iTargetJQ,iAnimationSpeed){if(iAnimationSpeed===void 0){iAnimationSpeed="slow"}var animationSpeed=iAnimationSpeed;var targetOffset=iTargetJQ.offset();var targetParentJQ=iTargetJQ.parent();if(targetParentJQ.length&&targetParentJQ[0]===$(document)[0]){return false}var targetParentOffset=targetParentJQ.offset();var updated=false;if(targetParentJQ[0].scrollWidth>targetParentJQ.width()){var targetParentPaddingLeft=parseInt(targetParentJQ.css("paddingLeft"));var diff=l_computeTargetMinimalAdjustment(targetOffset.left,parseInt(iTargetJQ.css("marginLeft"))+parseInt(iTargetJQ.css("borderLeftWidth"))+iTargetJQ[0].scrollWidth+parseInt(iTargetJQ.css("borderRightWidth"))+parseInt(iTargetJQ.css("marginRight")),targetParentOffset.left+parseInt(targetParentJQ.css("marginLeft"))+parseInt(targetParentJQ.css("borderLeftWidth"))+targetParentPaddingLeft,targetParentJQ[0].clientWidth-targetParentPaddingLeft-parseInt(targetParentJQ.css("paddingRight")));if(diff!==0){var pos=targetParentJQ.scrollLeft()+diff;if(Math.abs(diff)>targetParentJQ.width()){var targetJQpostionLeft=iTargetJQ.position().left;pos=targetParentJQ.scrollLeft()+targetJQpostionLeft}else{animationSpeed="none"}l_scrollToTarget(targetParentJQ,pos,animationSpeed,"scrollLeft");updated=true}}if(targetParentJQ[0].scrollHeight>targetParentJQ.height()){var targetParentPaddingTop=parseInt(targetParentJQ.css("paddingTop"));var diff=l_computeTargetMinimalAdjustment(targetOffset.top,parseInt(iTargetJQ.css("marginTop"))+parseInt(iTargetJQ.css("borderTopWidth"))+iTargetJQ[0].scrollHeight+parseInt(iTargetJQ.css("borderBottomWidth"))+parseInt(iTargetJQ.css("marginBottom")),targetParentOffset.top+parseInt(targetParentJQ.css("marginTop"))+parseInt(targetParentJQ.css("borderTopWidth"))+targetParentPaddingTop,targetParentJQ[0].clientHeight-targetParentPaddingTop-parseInt(targetParentJQ.css("paddingBottom")));if(diff!==0){var pos=targetParentJQ.scrollTop()+diff;if(Math.abs(diff)>targetParentJQ.height()){var targetJQpostionTop=iTargetJQ.position().top;pos=targetParentJQ.scrollTop()+targetJQpostionTop}else{animationSpeed="none"}l_scrollToTarget(targetParentJQ,pos,animationSpeed,"scrollTop");updated=true}}return updated}exports.scrollToTarget=scrollToTarget;function getIDHC(iTargetJQ){if(!iTargetJQ)return Number.NaN;return parseInt(iTargetJQ.data("hoopsid"),10)}exports.getIDHC=getIDHC;function activateUI(iButtonID,iPanelID){return __awaiter(this,void 0,void 0,(function(){var panelJQ,buttonJQ;return __generator(this,(function(_a){switch(_a.label){case 0:if(iPanelID){panelJQ=hide(iPanelID,false).addClass("active");fixMenuPanelInwardToolbar(panelJQ)}if(!iButtonID)return[3,2];buttonJQ=$(iButtonID);buttonJQ.addClass("active-button");scrollToTarget(buttonJQ,"none");return[4,eDwEventMgr.get().fireEvent(eDwEvents_9.ActivateUIOpEvent,buttonJQ)];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))}exports.activateUI=activateUI;function deactivateUI(iButtonCSSClassName,iPanelCSSClassName){if(iButtonCSSClassName===void 0){iButtonCSSClassName=""}if(iPanelCSSClassName===void 0){iPanelCSSClassName=""}return __awaiter(this,void 0,void 0,(function(){var activeButtonsJQ,panelsJQ;return __generator(this,(function(_a){switch(_a.label){case 0:activeButtonsJQ=$(iButtonCSSClassName+".active-button");if(!activeButtonsJQ.length)return[3,2];return[4,eDwEventMgr.get().fireEvent(eDwEvents_9.DeactivateUIOpEvent,activeButtonsJQ)];case 1:_a.sent();activeButtonsJQ.removeClass("active-button");_a.label=2;case 2:panelsJQ=hide(iPanelCSSClassName+".active",true).removeClass("active");panelsJQ.each((function(iIdx,iPanel){fixMenuPanelInwardToolbar($(iPanel),true)}));return[2,activeButtonsJQ]}}))}))}exports.deactivateUI=deactivateUI;function isIDInJQuery(iListJQ,iID){var inJQList=false;for(var key in iListJQ){if(iListJQ[key].id===iID){inJQList=true;break}}return inJQList}exports.isIDInJQuery=isIDInJQuery;function isStateOn(iID){return $(iID).hasClass("state-on-button")}exports.isStateOn=isStateOn;function resetToHomeView(iViewer){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){var resetCmd;return __generator(this,(function(_a){switch(_a.label){case 0:resetCmd=new eDwResetCmd(iViewer);return[4,eDwCommandMgr.get().run(resetCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}exports.resetToHomeView=resetToHomeView;function getViewerElementName(){return"edrawings-viewer"}exports.getViewerElementName=getViewerElementName;function getViewerElementID(){return"#"+getViewerElementName()}exports.getViewerElementID=getViewerElementID;function makeResult(iExcp){var result={ErrorCode:"UnknownError",ErrorData:[]};if(iExcp instanceof eDwResultError){result=iExcp.Result}else if(iExcp instanceof eDwAJAXError){result.ErrorCode=iExcp.ErrorCode;result.ErrorData=[iExcp.message]}else{result.ErrorCode=iExcp.name;result.ErrorData=[iExcp.message]}return result}exports.makeResult=makeResult;function viewFile(iModelName,iModelKey,iParams,iContainerName,iModelData){return __awaiter(this,void 0,void 0,(function(){function createViewer(iWebSocketEndpoint){if(iWebSocketEndpoint===""){return null}var streamAlways=iParams.StreamAlwaysConnected;var streamModes=eDwTypes_17.HC.StreamingMode;var webViewerInfo={};webViewerInfo.containerId=iContainerName;webViewerInfo.model=iModelKey;webViewerInfo.endpointUri=iWebSocketEndpoint;webViewerInfo.streamingMode=streamAlways?streamModes.Interactive:streamModes.All;webViewerInfo.streamingMode=iModelData?null:webViewerInfo.streamingMode;webViewerInfo.buffer=iModelData;webViewerInfo.boundingPreviewMode=eDwTypes_17.HC.BoundingPreviewMode.None;eDwEventMgr.get().addEventHandlerFunc(eDwEvents_9.GLContextLostEvent,c_onContextLost);var viewer=new eDwView(webViewerInfo,iParams);hide("#"+iContainerName,false);if(iModelName){$("#edrawings-filename-text").html(decodeURIComponent(iModelName))}var modelName=!iModelName&&iModelKey?iModelKey:iModelName;if(!modelName)return null;if(modelName.search(".zip")>-1){modelName=modelName.substring(0,modelName.length-4)}console.debugLog("ModelLoad","Created new edw viewer");return viewer}var wsEndPt,_a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!iModelData)return[3,1];_a=null;return[3,3];case 1:return[4,eDwServiceMgr.get().getWebSocketEndpoint(iModelKey,iParams.WebSocketEndpoint)];case 2:_a=_b.sent();_b.label=3;case 3:wsEndPt=_a;return[2,createViewer(wsEndPt)]}}))}))}exports.viewFile=viewFile;function fixMenuPanelInwardToolbar(iPanelJQ,iToClear){if(iToClear===void 0){iToClear=false}if(iToClear){iPanelJQ.removeClass("edrawings-collided");return}if(iPanelJQ.hasClass("edrawings-hud-menu")){var panel=iPanelJQ[0];if(panel.scrollHeight>panel.clientHeight){iPanelJQ.addClass("edrawings-collided")}else{iPanelJQ.removeClass("edrawings-collided")}}else if(iPanelJQ.hasClass("edrawings-submenu")){var wrapperJQ=iPanelJQ.find(".edrawings-menu-panel-wrapper");var wasCollided=iPanelJQ.hasClass("edrawings-collided");if(iPanelJQ[0].scrollHeight>iPanelJQ[0].clientHeight&&iPanelJQ[0].scrollHeight-iPanelJQ[0].clientHeight>1||wrapperJQ[0].scrollHeight>wrapperJQ[0].clientHeight&&wrapperJQ[0].scrollHeight-wrapperJQ[0].clientHeight>1){if(!wasCollided){iPanelJQ.addClass("edrawings-collided")}iPanelJQ.addClass("edrawings-wiggle");setTimeout((function(){iPanelJQ.removeClass("edrawings-wiggle")}),0)}else{iPanelJQ.removeClass("edrawings-collided");if(wasCollided){fixMenuPanelInwardToolbar(iPanelJQ)}}}}exports.fixMenuPanelInwardToolbar=fixMenuPanelInwardToolbar;function positionMenuPanelArrowCollapseButton(iPanelJQ,iButtonJQ){if(!iPanelJQ.hasClass("edrawings-collapsed")){l_setMenuPanelArrowCollapseButtonPosition(iPanelJQ);fixMenuPanelInwardToolbar(iPanelJQ)}else{if(iButtonJQ){var arrowCollapseButtonJQ=iPanelJQ.find(".edrawings-menu-panel-arrow-collapse");var activeButtonRect=iButtonJQ[0].getBoundingClientRect();var arrowCollapseButtonRect=arrowCollapseButtonJQ[0].getBoundingClientRect();var diffTop=activeButtonRect.top-arrowCollapseButtonRect.top;l_setMenuPanelArrowCollapseButtonPosition(arrowCollapseButtonJQ,arrowCollapseButtonJQ.position().top+diffTop)}fixMenuPanelInwardToolbar(iPanelJQ,true)}}exports.positionMenuPanelArrowCollapseButton=positionMenuPanelArrowCollapseButton;function executeScrolling(iDiffX,iDiffY,iContentJQ,iBarJQ){var contentParentJQ=iContentJQ.parent();var leftButtonWrapperJQ=contentParentJQ.find(".edrawings-arrow-wrapper:has(> .edrawings-arrow-left)");var rightButtonWrapperJQ=contentParentJQ.find(".edrawings-arrow-wrapper:has(> .edrawings-arrow-right)");var upButtonWrapperJQ=contentParentJQ.find(".edrawings-arrow-wrapper:has(> .edrawings-arrow-up)");var downButtonWrapperJQ=contentParentJQ.find(".edrawings-arrow-wrapper:has(> .edrawings-arrow-down)");if(iContentJQ[0].scrollWidth>iContentJQ.width()){var scrollLeft=iContentJQ.scrollLeft();var newScrollLeft=scrollLeft+iDiffX;iContentJQ.scrollLeft(newScrollLeft);adjustScrollArrows(iContentJQ.scrollLeft(),iContentJQ[0].scrollWidth,iContentJQ.width(),true,leftButtonWrapperJQ,rightButtonWrapperJQ,iBarJQ)}if(iContentJQ[0].scrollHeight>iContentJQ.height()){var scrollTop=iContentJQ.scrollTop();var newScrollTop=scrollTop+iDiffY;iContentJQ.scrollTop(newScrollTop);adjustScrollArrows(iContentJQ.scrollTop(),iContentJQ[0].scrollHeight,iContentJQ.height(),false,upButtonWrapperJQ,downButtonWrapperJQ,iBarJQ)}return iDiffX!==0||iDiffY!==0}exports.executeScrolling=executeScrolling;function enableScrollOnTouch(ioUIHTMLEventMgr,iContentJqSel,iBarJqSel,iHandlerOnScroll){var _this=this;var contentJQ=$(iContentJqSel);var barJQ=iBarJqSel?$(iBarJqSel):undefined;var hasScrolled=false;var stopClickTarget;var stopClickPropagation=false;ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"touchstart",(function(iEventStart){hasScrolled=false;stopClickPropagation=false;stopClickTarget=undefined;var touchEventStart=iEventStart;var lastScreenX=touchEventStart.changedTouches[0].screenX;var lastScreenY=touchEventStart.changedTouches[0].screenY;ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchmove");ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"touchmove",(function(iEventMove){var touchEventMove=iEventMove;var xDiff=touchEventMove.changedTouches[0].screenX-lastScreenX;lastScreenX=touchEventMove.changedTouches[0].screenX;var yDiff=touchEventMove.changedTouches[0].screenY-lastScreenY;lastScreenY=touchEventMove.changedTouches[0].screenY;var updated=executeScrolling(-xDiff,-yDiff,contentJQ,barJQ);if(updated&&iHandlerOnScroll){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,iHandlerOnScroll()];case 1:_a.sent();return[2]}}))}))})()}hasScrolled=hasScrolled||updated}))}));ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"touchend",(function(iEvent){var touchEvent=iEvent;ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchmove");if(hasScrolled){touchEvent.preventDefault();touchEvent.stopPropagation();stopClickPropagation=true;stopClickTarget=touchEvent.target}else{stopClickPropagation=false;stopClickTarget=undefined}hasScrolled=false}));ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"touchcancel",(function(iEvent){ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchmove");hasScrolled=false;stopClickPropagation=false}));ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"mousedown",(function(iEvent){hasScrolled=false;stopClickPropagation=false;if(!eDwKeyMgr_5.eDwKeyMgr.isLMBPressed(iEvent)){return}var eventDown=iEvent;var lastScreenX=eventDown.screenX;var lastScreenY=eventDown.screenY;ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mousemove");ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"mousemove",(function(iEventMove){var eventMove=iEventMove;var xDiff=eventMove.screenX-lastScreenX;var yDiff=eventMove.screenY-lastScreenY;lastScreenX=eventMove.screenX;lastScreenY=eventMove.screenY;var updated=executeScrolling(-xDiff,-yDiff,contentJQ,barJQ);if(updated&&iHandlerOnScroll){iHandlerOnScroll()}hasScrolled=hasScrolled||updated}))}));ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"mouseup",(function(iEvent){ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mousemove");if(hasScrolled){iEvent.stopImmediatePropagation();iEvent.preventDefault();stopClickPropagation=true;stopClickTarget=iEvent.target}else{stopClickPropagation=false;stopClickTarget=undefined}hasScrolled=false}));var propagationHandler=function(iEvent2){if(stopClickPropagation&&iEvent2.target===stopClickTarget){iEvent2.stopImmediatePropagation();iEvent2.preventDefault()}stopClickPropagation=false;stopClickTarget=undefined};var nameSpace=iContentJqSel.replace(/[\.\s]/g,"");var dataKey="click.edw."+nameSpace;contentJQ.off(dataKey,"*");contentJQ.on(dataKey,"*",propagationHandler)}exports.enableScrollOnTouch=enableScrollOnTouch;function disableScrollOnTouch(iUIHTMLEventMgr,iContentJqSel){iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchstart");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchmove");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchend");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchcancel");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mousedown");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mousemove");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mouseup");var contentJQ=$(iContentJqSel);var nameSpace=iContentJqSel.replace(/[\.\s]/g,"");var dataKey="click.edw."+nameSpace;contentJQ.off(dataKey,"*")}exports.disableScrollOnTouch=disableScrollOnTouch;function adjustScrollArrows(iOffset,iRange,iVisibleRange,isHorizonatalScrolling,iDecreaseWrapperJQ,iIncreaseWrapperJQ,iBarJQ){if(iOffset<=0){iDecreaseWrapperJQ.addClass("edrawings-disabled-button");if(iBarJQ){iBarJQ.addClass(isHorizonatalScrolling?"edrawings-removed-arrow-left":"edrawings-removed-arrow-up")}}else{iDecreaseWrapperJQ.removeClass("edrawings-disabled-button");if(iBarJQ){iBarJQ.removeClass(isHorizonatalScrolling?"edrawings-removed-arrow-left":"edrawings-removed-arrow-up")}}if(iOffset+iVisibleRange>=iRange){iIncreaseWrapperJQ.addClass("edrawings-disabled-button");if(iBarJQ){iBarJQ.addClass(isHorizonatalScrolling?"edrawings-removed-arrow-right":"edrawings-removed-arrow-down")}}else{iIncreaseWrapperJQ.removeClass("edrawings-disabled-button");if(iBarJQ){iBarJQ.removeClass(isHorizonatalScrolling?"edrawings-removed-arrow-right":"edrawings-removed-arrow-down")}}}exports.adjustScrollArrows=adjustScrollArrows;function getAsJQueryObj(iObj){return iObj?$(iObj):$()}exports.getAsJQueryObj=getAsJQueryObj;var l_generators={};function l_getAllDisplayStateCSSClasses(iHierNode){var classes="";for(var displayState in eDwNodeAttributes_4.NodeDisplayState){classes+="edrawings-"+iHierNode.Category+"-"+displayState.toLowerCase()+" "}return classes}function l_populatePanel(iViewer,iCategoryName,iListID,iPanelUIID,iAdditionalClasses){if(iAdditionalClasses===void 0){iAdditionalClasses=""}return __awaiter(this,void 0,void 0,(function(){var activeModelView,list,gen,_a,_b;return __generator(this,(function(_c){switch(_c.label){case 0:activeModelView=iViewer.getModel().getActiveModelView();if(!activeModelView||!activeModelView.Hierarchy)return[2];list=$(iListID);list.empty();gen=getUIGenerator(iPanelUIID);_b=(_a=list).append;return[4,gen.generateHTML(iAdditionalClasses)];case 1:_b.apply(_a,[_c.sent()]);return[2]}}))}))}function l_populateLayerPanel(iViewer){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_populatePanel(iViewer,"layer","#edrawings-layer-control-list","#edrawings-layer-control-menu")];case 1:_a.sent();return[2]}}))}))}function l_populateDebugPanel(iViewer){var list=$("#edrawings-debug-menu .edrawings-submenu-list");list.empty();var gen=getUIGenerator("#edrawings-debug-menu");var model=iViewer.getModel();var modelView=model.getActiveModelView();if(modelView&&modelView.Hierarchy){var layers=model.getLayers();for(var _i=0,layers_3=layers;_iiReferenceSide+iReferenceOffset){diff=iTargetSide+iTargetOffset-(iReferenceSide+iReferenceOffset)}return diff}function l_scrollToTarget(iTargetJQ,iPos,iAnimationSpeed,iStartPos){var _a;if(iAnimationSpeed===void 0){iAnimationSpeed="slow"}if(iStartPos===void 0){iStartPos="scrollTop"}if(!iTargetJQ)return;if(iAnimationSpeed==="none"){iTargetJQ[iStartPos](iPos)}else{iTargetJQ.animate((_a={},_a[iStartPos]=iPos,_a),iAnimationSpeed)}}}));define("eDwUnits",["require","exports"],(function(require,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.cDefaultAngleUnit=exports.cDefaultLengthUnit=exports.LengthTypeValues=exports.AngleTypeValues=void 0;exports.AngleTypeValues=["degree","radian"];exports.LengthTypeValues=["millimeter","centimeter","meter","inch","foot","footAndInch"];exports.cDefaultLengthUnit="millimeter";exports.cDefaultAngleUnit="degree"}));define("eDwView",["require","exports","eDwSelMgr","eDwXSectionMgr","eDwViewMgr","eDwTimer","eDwOperatorBaseDeps","eDwEventMgr","eDwHistoryMgr","eDwModel","eDwTypes","eDwEvents","eDwTouchOpsMgr","eDwTableMgr"],(function(require,exports,eDwSelMgr,eDwXSectionMgr,eDwViewMgr,eDwTimer,eDwOperatorBaseDeps_2,eDwEventMgr,eDwHistoryMgr,eDwModel,eDwTypes_18,eDwEvents_10,eDwTouchOpsMgr,eDwTableMgr){"use strict";var eDwView=function(){function eDwView(iViewerInfo,iFeatureOptions){this.mElemID=iViewerInfo.containerId||"";this.HCViewer=new eDwTypes_18.HC.WebViewer(iViewerInfo);this.mTimer=new eDwTimer;this.ViewerFeatureOpts=iFeatureOptions;this.mDrawMode=iFeatureOptions.RenderType||"ShadedWithEdges";this.OperatorMgr=new eDwOperatorBaseDeps_2.eDwOperatorMgr(this);this.TableMgr=new eDwTableMgr(this);var streamAll=this.HCViewer.getStreamingMode()===eDwTypes_18.HC.StreamingMode.All;var timeBeforeTimeout=streamAll?14400:120;var timeBeforeWarnTimeout=timeBeforeTimeout-10;this.HCViewer.setClientTimeout(timeBeforeTimeout,timeBeforeWarnTimeout);this.mInitCamera=null;this.mModelKey=iViewerInfo.model||"";this.setupWebViewer()}eDwView.prototype.getHCView=function(){return this.HCViewer.view};eDwView.prototype.getHCMarkupManager=function(){return this.HCViewer.markupManager};eDwView.prototype.getModel=function(){if(!this.mModel){this.mModel=new eDwModel(this)}return this.mModel};eDwView.prototype.processProductStructure=function(){return __awaiter(this,void 0,void 0,(function(){var model,activeModelView,modelViewDefCamera;var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:this.mInitCamera=this.getHCView().getCamera();model=this.getModel();activeModelView=model.getActiveModelView();modelViewDefCamera=activeModelView.getDefaultCamera();if(modelViewDefCamera)this.mInitCamera=modelViewDefCamera;this.ViewMgr.setCamera(this.mInitCamera);$("#"+this.mElemID).trigger("edw:ModelDataLoadComplete",this);return[4,this.finishInit()];case 1:_a.sent();if(this.HCViewer.getStreamingMode()===eDwTypes_18.HC.StreamingMode.All){this.HCViewer.waitForIdle().then((function(){l_closeHCConnection(_this)}))}return[2]}}))}))};eDwView.prototype.setupWebViewer=function(){var _this=this;var processingSelection=false;var eventMgr=eDwEventMgr.get();function deprecatedCallback(iDeprecatedFuncName){var argArray=[];for(var key in arguments){argArray.push(arguments[key])}console.debugLog("Deprecated","Deprecated call: "+argArray.join("."))}this.mHCCallbacksObj={sceneReady:function(){console.debugLog("ViewerLoad","Scene ready");_this.HCViewer.resizeCanvas()},streamingActivated:function(){console.debugLog("Viewer","Streaming activated")},streamingDeactivated:function(){console.debugLog("Viewer","Streaming deactivated")},selection:function(iSelEvent){if(!processingSelection){processingSelection=true;try{(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){this.SelectionMgr.onSelection(iSelEvent);return[2]}))}))})()}catch(iException){}processingSelection=false}},timeoutWarning:function(iRemainingMinutes){console.debugLog("Viewer","Inactivity timeout pending in "+iRemainingMinutes+" minutes.");_this.mTimer.ellapsed();_this.mTimer.dumpToConsole()},timeout:function(){console.debugLog("Viewer","Inactivity timeout");_this.mTimer.ellapsed();_this.mTimer.dumpToConsole();(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.TimeoutEvent,this)];case 1:_a.sent();return[2]}}))}))})();l_closeHCConnection(_this)},modelLoadFailure:function(iModelName,iReason){console.warn("Model "+iModelName+" load failed: "+iReason);$("#"+_this.mElemID).trigger("edw:ModelLoadFailed",[_this,iModelName,iReason]);l_closeHCConnection(_this)},deprecated:deprecatedCallback,info:function(iInfoType,iMsg){console.debugLog("Debug",iInfoType.toString()+" "+iMsg)},missingModel:function(iModelPath){console.debugLog("Debug","Missing model: "+iModelPath);l_closeHCConnection(_this)},webGlContextLost:function(){console.debugLog("Debug","Browser lost GL context! Render incomplete!!");(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.GLContextLostEvent,this)];case 1:_a.sent();return[2]}}))}))})();l_closeHCConnection(_this)},assemblyTreeReady:function(){console.debugLog("ViewerLoad","Assembly tree ready.")},modelStructureReady:function(){console.debugLog("ViewerLoad","Model structure ready.");$("#"+_this.mElemID).trigger("edw:ModelLoaded",_this)},modelSwitched:function(){console.debugLog("ViewerLoad","Model switch done.");$("#"+_this.mElemID).trigger("edw:ModelLoaded",_this)},viewCreated:function(iHCView){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.ViewCreatedEvent,iHCView)];case 1:_a.sent();return[2]}}))}))})()},viewLoaded:function(iHCView){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.ViewLoadedEvent,iHCView)];case 1:_a.sent();return[2]}}))}))})()},viewDeleted:function(iHCView){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.ViewDeletedEvent,iHCView)];case 1:_a.sent();return[2]}}))}))})()},camera:function(iCamera){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.CameraChangeEvent,iCamera)];case 1:_a.sent();return[2]}}))}))})()}};this.HCViewer.setCallbacks(this.mHCCallbacksObj);this.HCViewer.start()};eDwView.prototype.getInitCamera=function(){return this.mInitCamera};eDwView.prototype.getCurrModelKey=function(){return this.mModelKey};eDwView.prototype.unregister=function(){var _this=this;if(this.HCViewer)this.HCViewer.unsetCallbacks(this.mHCCallbacksObj);this.OperatorMgr.unregisterAll();(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_10.DoneEvent,this)];case 1:_a.sent();return[2]}}))}))})()};eDwView.prototype.destroy=function(){this.HCViewer.shutdown()};eDwView.prototype.setExplosionLevel=function(iLevel){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.HCViewer.explodeManager.setMagnitude(iLevel)];case 1:_a.sent();return[4,eDwEventMgr.get().fireEvent(eDwEvents_10.ExplodeLevelChangeEvent,this,iLevel)];case 2:_a.sent();return[2]}}))}))})()};eDwView.prototype.getExplosionLevel=function(){return this.HCViewer.explodeManager.getMagnitude()};eDwView.prototype.getDrawMode=function(){return this.mDrawMode};eDwView.prototype.setDrawMode=function(iValue){var _this=this;var viewHC=this.getHCView();var settingsHC=viewHC.getHiddenLineSettings();switch(iValue){case"ShadedWithEdges":viewHC.setDrawMode(eDwTypes_18.HC.DrawMode.WireframeOnShaded);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.WireframeOnShaded);break;case"Shaded":viewHC.setDrawMode(eDwTypes_18.HC.DrawMode.Shaded);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.Shaded);break;case"HiddenLinesRemoved":settingsHC.setObscuredLineOpacity(0);viewHC.setDrawMode(eDwTypes_18.HC.DrawMode.HiddenLine);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.HiddenLine);break;case"HiddenLinesVisible":settingsHC.setObscuredLineOpacity(.5);viewHC.setDrawMode(eDwTypes_18.HC.DrawMode.HiddenLine);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.HiddenLine);break;case"Wireframe":settingsHC.setObscuredLineOpacity(1);viewHC.setDrawMode(eDwTypes_18.HC.DrawMode.HiddenLine);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.HiddenLine);break;default:throw new Error("Unknown draw mode: "+iValue)}(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.mDrawMode=iValue;return[4,eDwEventMgr.get().fireEvent(eDwEvents_10.DrawModeChangeEvent,this,iValue)];case 1:_a.sent();return[2]}}))}))})()};eDwView.prototype.getPerspectiveMode=function(){return this.getHCView().getProjectionMode()===eDwTypes_18.HC.Projection.Perspective};eDwView.prototype.setPerspectiveMode=function(iValue){var _this=this;if(!iValue){this.getHCView().setProjectionMode(eDwTypes_18.HC.Projection.Orthographic)}else{this.getHCView().setProjectionMode(eDwTypes_18.HC.Projection.Perspective)}(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_10.ProjModeChangeEvent,this,iValue)];case 1:_a.sent();return[2]}}))}))})();return iValue};eDwView.prototype.resetDrawMode=function(){this.setDrawMode(this.ViewerFeatureOpts.RenderType||"ShadedWithEdges")};eDwView.prototype.initializeManagers=function(){new eDwSelMgr(this);new eDwXSectionMgr(this);new eDwViewMgr(this);new eDwTouchOpsMgr(this)};eDwView.prototype.drawDebugBoundingBox=function(iBBox){return __awaiter(this,void 0,void 0,(function(){var modelHC,beautifulGreen,vmin,vmax,p0,p1,p2,p3,p4,p5,p6,p7,polylineData0,polylineData1,polylineData2,polylineData3,rgba,i,tmp,boxMesh,key,meshInstance;return __generator(this,(function(_a){switch(_a.label){case 0:modelHC=this.getModel().getHCModel();beautifulGreen=new eDwTypes_18.HC.Color(0,255,0);vmin=iBBox.min;vmax=iBBox.max;p0=new eDwTypes_18.HC.Point3(vmin.x,vmin.y,vmax.z);p1=new eDwTypes_18.HC.Point3(vmin.x,vmax.y,vmax.z);p2=new eDwTypes_18.HC.Point3(vmax.x,vmax.y,vmax.z);p3=new eDwTypes_18.HC.Point3(vmax.x,vmin.y,vmax.z);p4=new eDwTypes_18.HC.Point3(vmin.x,vmin.y,vmin.z);p5=new eDwTypes_18.HC.Point3(vmin.x,vmax.y,vmin.z);p6=new eDwTypes_18.HC.Point3(vmax.x,vmax.y,vmin.z);p7=new eDwTypes_18.HC.Point3(vmax.x,vmin.y,vmin.z);polylineData0=[p0.x,p0.y,p0.z,p1.x,p1.y,p1.z,p2.x,p2.y,p2.z,p3.x,p3.y,p3.z,p0.x,p0.y,p0.z];polylineData1=[p4.x,p4.y,p4.z,p5.x,p5.y,p5.z,p6.x,p6.y,p6.z,p7.x,p7.y,p7.z,p4.x,p4.y,p4.z];polylineData2=[p4.x,p4.y,p4.z,p0.x,p0.y,p0.z,p1.x,p1.y,p1.z,p5.x,p5.y,p5.z,p4.x,p4.y,p4.z];polylineData3=[p7.x,p7.y,p7.z,p3.x,p3.y,p3.z,p2.x,p2.y,p2.z,p6.x,p6.y,p6.z,p7.x,p7.y,p7.z];rgba=[];for(i=0;i<5;i++){tmp=[beautifulGreen.r,beautifulGreen.g,beautifulGreen.b,255];rgba=rgba.concat(tmp)}boxMesh=new eDwTypes_18.HC.MeshData;boxMesh.addPolyline(polylineData0,rgba);boxMesh.addPolyline(polylineData1,rgba);boxMesh.addPolyline(polylineData2,rgba);boxMesh.addPolyline(polylineData3,rgba);return[4,modelHC.createMesh(boxMesh)];case 1:key=_a.sent();meshInstance=new eDwTypes_18.HC.MeshInstanceData(key);return[2,modelHC.createMeshInstance(meshInstance)]}}))}))};eDwView.prototype.finishInit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_10.InitEvent,this)];case 1:_a.sent();this.HCViewer.sheetManager.setBackgroundSheetEnabled(false);eDwHistoryMgr.get().clear();return[2]}}))}))};return eDwView}();function l_closeHCConnection(iViewer){if(!iViewer)return;var viewHC=iViewer.getHCView();viewHC.setCamera(viewHC.getCamera());console.debugLog("Viewer","Closing viewer connection...");iViewer.HCViewer.closeConnection()}return eDwView}));define("eDwViewMgr",["require","exports","eDwEventMgr","eDwSelObj","eDwEvents","eDwTypes"],(function(require,exports,eDwEventMgr,eDwSelObj,eDwEvents_11,eDwTypes_19){"use strict";var eDwViewMgr=function(){function eDwViewMgr(iViewer){if(!iViewer)throw new Error("Must have viewer object");iViewer.ViewMgr=this;this.mViewAnimationIndex=0;this.mViewAnimationActive=false;this.mAnimationTimeOutID=-1;this.mViewer=iViewer}eDwViewMgr.prototype.start=function(){var _this=this;if(this.mViewer.getModel().isDrawing())return;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_11.StartAnimationEvent,this.mViewer)];case 1:_a.sent();return[2]}}))}))})();this.mViewAnimationActive=true;this.animateNextView()};eDwViewMgr.prototype.stop=function(){var _this=this;this.mViewAnimationActive=false;if(this.mAnimationTimeOutID>-1){window.clearTimeout(this.mAnimationTimeOutID);this.mAnimationTimeOutID=-1}(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_11.StopAnimationEvent,this.mViewer)];case 1:_a.sent();return[2]}}))}))})()};eDwViewMgr.prototype.reset=function(){this.stop();this.mViewAnimationIndex=0};eDwViewMgr.prototype.isActive=function(){return this.mViewAnimationActive};eDwViewMgr.prototype.setViewOrientation=function(iEyeDirHC,iDuration){var _this=this;if(iDuration===void 0){iDuration=400}var centerHC=this.mViewer.getModel().getBoundingBox().center();var viewHC=this.mViewer.getHCView();var cameraHC=viewHC.getCamera().copy();var upVecHC=cameraHC.getUp();var eyeVecHC=cameraHC.getTarget().subtract(cameraHC.getPosition());var dist=eyeVecHC.length();switch(iEyeDirHC){case eDwTypes_19.HC.ViewOrientation.Front:eyeVecHC.set(0,0,1).scale(dist);upVecHC.set(0,1,0);break;case eDwTypes_19.HC.ViewOrientation.Back:eyeVecHC.set(0,0,-1).scale(dist);upVecHC.set(0,1,0);break;case eDwTypes_19.HC.ViewOrientation.Left:eyeVecHC.set(-1,0,0).scale(dist);upVecHC.set(0,1,0);break;case eDwTypes_19.HC.ViewOrientation.Right:eyeVecHC.set(1,0,0).scale(dist);upVecHC.set(0,1,0);break;case eDwTypes_19.HC.ViewOrientation.Top:eyeVecHC.set(0,1,0).scale(dist);upVecHC.set(0,0,-1);break;case eDwTypes_19.HC.ViewOrientation.Bottom:eyeVecHC.set(0,-1,0).scale(dist);upVecHC.set(0,0,1);break;case eDwTypes_19.HC.ViewOrientation.Iso:eyeVecHC.set(1,1,1).normalize().scale(dist);upVecHC.set(-.408204,.816541,-.408204);break;default:throw new Error("Unsupported orientation: "+iEyeDirHC)}this.adjustOrientation(eyeVecHC,upVecHC);cameraHC.setPosition(eyeVecHC.add(centerHC));cameraHC.setUp(upVecHC);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,viewHC.fitWorld(iDuration,cameraHC)];case 1:_a.sent();return[2]}}))}))})();return cameraHC};eDwViewMgr.prototype.setViewOrientationToDirection=function(normal){var camera=this.mViewer.getHCView().getCamera();var position=camera.getPosition();var target=camera.getTarget();var up=camera.getUp();var delta=target.subtract(position);var distance=delta.length();var bbox=this.mViewer.getModel().getBoundingBox();var bbox_min=bbox.min;var bbox_max=bbox.max;target=eDwTypes_19.HC.Point3.add(bbox_max,bbox_min).scale(.5);var eyeVec=eDwTypes_19.HC.Point3.scale(normal,distance);position=eDwTypes_19.HC.Point3.add(target,eyeVec);var vTest=new eDwTypes_19.HC.Point3(1,0,0);var isParallel=eDwTypes_19.HC.Point3.dot(vTest,normal);if(Math.abs(Math.abs(isParallel)-1)<.001){vTest.set(0,1,0);var vec=eDwTypes_19.HC.Point3.cross(normal,vTest);vec=vec.normalize();up=eDwTypes_19.HC.Point3.cross(vec,normal);up=up.normalize()}else{up=eDwTypes_19.HC.Point3.cross(normal,vTest);up=up.normalize()}var dotProd=eDwTypes_19.HC.Point3.dot(up,new eDwTypes_19.HC.Point3(1,0,0));if(Math.abs(Math.abs(dotProd)-1)<.001&&dotProd<0){up=up.negate()}dotProd=eDwTypes_19.HC.Point3.dot(up,new eDwTypes_19.HC.Point3(0,1,0));if(Math.abs(Math.abs(dotProd)-1)<.001&&dotProd<0){up=up.negate()}dotProd=eDwTypes_19.HC.Point3.dot(up,new eDwTypes_19.HC.Point3(0,0,1));if(Math.abs(Math.abs(dotProd)-1)<.001&&dotProd<0){up=up.negate()}camera.setPosition(position);camera.setTarget(target);camera.setUp(up);this.setCamera(camera,500);return camera};eDwViewMgr.prototype.setCamera=function(iCameraHC,iTimeInMS){if(iTimeInMS===void 0){iTimeInMS=400}if(!iCameraHC)return false;var cameraHC=iCameraHC.copy();cameraHC.setProjection(this.mViewer.getHCView().getCamera().getProjection());return this.mViewer.getHCView().setCamera(cameraHC,iTimeInMS)};eDwViewMgr.prototype.enableAmbientOcclusion=function(iEnable){var _this=this;this.mViewer.getHCView().setAmbientOcclusionEnabled(iEnable);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_11.AmbientOcclChangeEvent,this,iEnable)];case 1:_a.sent();return[2]}}))}))})()};eDwViewMgr.prototype.fitScreenToNodes=function(iNodeIDsHC,ioCamera){return __awaiter(this,void 0,void 0,(function(){var model,bboxHC,subtract,viewVec,centerHC,add,ratio,boxMaxLen;return __generator(this,(function(_a){switch(_a.label){case 0:if(!ioCamera)return[2];model=this.mViewer.getModel();return[4,model.getBoundingBoxOfIDsHC(iNodeIDsHC)];case 1:bboxHC=_a.sent();if(bboxHC.isDegenerate())return[2];subtract=eDwTypes_19.HC.Point3.subtract;viewVec=subtract(ioCamera.getPosition(),ioCamera.getTarget());centerHC=bboxHC.center().copy();ioCamera.setTarget(centerHC);add=eDwTypes_19.HC.Point3.add;ioCamera.setPosition(add(centerHC,viewVec));ratio=ioCamera.getWidth()/ioCamera.getHeight();if(this.mViewer.getModel().isDrawing()){bboxHC.min.z=bboxHC.max.z=0}boxMaxLen=bboxHC.extents().length();ioCamera.setHeight(boxMaxLen);ioCamera.setWidth(boxMaxLen*ratio);this.setCamera(ioCamera,400);return[2]}}))}))};eDwViewMgr.prototype.pickFromPoint=function(iPnt2DHC,iPickConfig){return __awaiter(this,void 0,void 0,(function(){var selObjHC,toLocalTransformHC,viewHC,iExcp_17;return __generator(this,(function(_a){switch(_a.label){case 0:selObjHC=eDwTypes_19.HC.Selection.SelectionItem.create();toLocalTransformHC=new eDwTypes_19.HC.Matrix;_a.label=1;case 1:_a.trys.push([1,3,,4]);viewHC=this.mViewer.getHCView();return[4,viewHC.pickFromPoint(iPnt2DHC,iPickConfig)];case 2:selObjHC=_a.sent();console.debugLog("eDwViewMgr","eDwViewMgr.pickFromPoint() - "+selObjHC.getNodeId()+" - "+JSON.stringify(iPnt2DHC));console.assert(!isNaN(toLocalTransformHC.m[0]),"Not number before");toLocalTransformHC=eDwSelObj.getLocalTransform(selObjHC,this.mViewer.getModel());console.assert(!isNaN(toLocalTransformHC.m[0]),"Not number after");return[3,4];case 3:iExcp_17=_a.sent();console.debugLog("eDwViewMgr","eDwViewMgr.pickFromPoint() failed - "+iExcp_17.message);return[3,4];case 4:console.assert(!isNaN(toLocalTransformHC.m[0]),"Not number after 2");return[2,new eDwSelObj(selObjHC,toLocalTransformHC)]}}))}))};eDwViewMgr.prototype.onCameraUpdate=function(){this.mViewAnimationIndex+=1;if(this.mViewAnimationIndex>=eDwViewMgr.viewAnimations.length){this.mViewAnimationIndex=0;this.mViewAnimationActive=false;this.stop()}if(this.mViewAnimationActive){this.animateNextView()}};eDwViewMgr.prototype.animateNextView=function(){var _this=this;if(this.mViewAnimationActive){this.setViewOrientation(eDwViewMgr.viewAnimations[this.mViewAnimationIndex],2e3);this.mAnimationTimeOutID=window.setTimeout((function(){_this.onCameraUpdate()}),2e3)}};eDwViewMgr.prototype.adjustOrientation=function(ioEveVecHC,ioUpVecHC){if(this.mViewer.getModel().getProperty("zUp")==="true"){cCamZUpMat.transform(ioEveVecHC,ioEveVecHC);cCamZUpMat.transform(ioUpVecHC,ioUpVecHC)}};eDwViewMgr.viewAnimations=[eDwTypes_19.HC.ViewOrientation.Front,eDwTypes_19.HC.ViewOrientation.Back,eDwTypes_19.HC.ViewOrientation.Left,eDwTypes_19.HC.ViewOrientation.Right,eDwTypes_19.HC.ViewOrientation.Bottom,eDwTypes_19.HC.ViewOrientation.Top,eDwTypes_19.HC.ViewOrientation.Iso];return eDwViewMgr}();var cCamZUpMat=eDwTypes_19.HC.Matrix.createFromArray([0,1,0,0,0,0,1,0,1,0,0,0,0,0,0,1]);return eDwViewMgr}));define("eDwXSectionMgr",["require","exports","eDwXSectionOperator","eDwGeomUtils","eDwTypes","eDwTypes"],(function(require,exports,eDwXSectionOperator,eDwGeomUtils,eDwTypes_20,eDwTypes_21){"use strict";var eDwXSectionMgr=function(){function eDwXSectionMgr(iViewer){iViewer.XSectionMgr=this;this.mViewer=iViewer;var xSectionOp=new eDwXSectionOperator(iViewer);this.mXSectionOpID=iViewer.OperatorMgr.registerCustomOperator(xSectionOp);this.HCXSectionMgr=iViewer.HCViewer.cuttingManager;this.SectionCapVisibility=false;this.mXSectionIndex=eDwTypes_20.SectionPlaneOrientation.XY.Index;this.mSectionVisibility=true;this.mSectionsVisibilityState=[false,false,false]}eDwXSectionMgr.prototype.unregister=function(){this.mViewer.OperatorMgr.unregisterCustomOperatorByID(this.mXSectionOpID);this.mViewer.XSectionMgr=null};eDwXSectionMgr.prototype.turnOnSectionPlane=function(iOn){var _this=this;if(this.getXSectionHC()){if(iOn){(function(){return __awaiter(_this,void 0,void 0,(function(){var ret;return __generator(this,(function(_a){switch(_a.label){case 0:ret=this.mViewer.OperatorMgr.push(this.mXSectionOpID);console.debugLog("Section","Section plane operator push ret = "+ret);return[4,this.HCXSectionMgr.setCappingGeometryVisibility(true)];case 1:_a.sent();return[2]}}))}))})()}else{var opID=this.mViewer.OperatorMgr.pop();console.debugLog("Section","Popped op ID = "+opID+" xSection op ID = "+this.mXSectionOpID)}}};eDwXSectionMgr.prototype.activateCurrent=function(){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.getXSectionHC().activate()];case 1:_a.sent();return[4,this.setToCurrentSectionPlane()];case 2:_a.sent();if(!!this.mSectionVisibility)return[3,4];return[4,this.updateSectionVisibility(false)];case 3:_a.sent();_a.label=4;case 4:return[2]}}))}))})()};eDwXSectionMgr.prototype.deactivateCurrent=function(){var _this=this;this.mSectionsVisibilityState=[false,false,false];(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.getXSectionHC().deactivate()];case 1:_a.sent();return[2]}}))}))})()};eDwXSectionMgr.prototype.isCurrentActive=function(){return this.getXSectionHC().isActive()};Object.defineProperty(eDwXSectionMgr.prototype,"SectionIndex",{get:function(){return this.mXSectionIndex},enumerable:false,configurable:true});eDwXSectionMgr.prototype.setSectionPlane=function(ioSection,iAllowActivation){if(iAllowActivation===void 0){iAllowActivation=true}return __awaiter(this,void 0,void 0,(function(){var bbox,bboxExtents,sectionHC,boxCenter,sectionPlane,minPlanePt,maxPlanePt,vec,centerPt,dir,mirrorPlaneNormal,mirrorPlane,maxOnPlnPt,minOnPlnPt,mirrorPlaneDist,distDir,revDistDir,pts;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.mViewer.getModel().calculateBoundingBox()];case 1:bbox=_a.sent();bboxExtents=bbox.extents();if(!ioSection||bboxExtents.equals(eDwTypes_21.HC.Point3.zero()))return[2];sectionHC=this.getXSectionHC();if(!(ioSection.Index!==this.mXSectionIndex))return[3,6];if(!sectionHC)return[3,5];if(!sectionHC.isActive())return[3,3];return[4,sectionHC.deactivate()];case 2:_a.sent();_a.label=3;case 3:return[4,this.HCXSectionMgr.refreshPlaneGeometry()];case 4:_a.sent();_a.label=5;case 5:this.mXSectionIndex=ioSection.Index;sectionHC=this.getXSectionHC();_a.label=6;case 6:boxCenter=bbox.center();if(!(sectionHC.getCount()<1))return[3,9];sectionPlane=ioSection.Plane.copy();sectionPlane.d=-sectionPlane.distanceToPoint(boxCenter);minPlanePt=eDwGeomUtils.dropPointOnPlane(bbox.min,sectionPlane);maxPlanePt=eDwGeomUtils.dropPointOnPlane(bbox.max,sectionPlane);vec=maxPlanePt.copy().subtract(minPlanePt);vec=vec.scale(.55);centerPt=eDwGeomUtils.dropPointOnPlane(boxCenter,sectionPlane);dir=sectionPlane.normal.copy();centerPt=centerPt.add(dir.scale(sectionPlane.d));mirrorPlaneNormal=eDwTypes_21.HC.Point3.zero();eDwTypes_21.HC.Util.oneVectorCross(sectionPlane.normal.copy(),mirrorPlaneNormal);mirrorPlane=eDwTypes_21.HC.Plane.createFromPointAndNormal(centerPt,mirrorPlaneNormal);maxOnPlnPt=eDwTypes_21.HC.Point3.add(centerPt,vec);minOnPlnPt=eDwTypes_21.HC.Point3.add(centerPt,vec.scale(-1));mirrorPlaneDist=mirrorPlane.distanceToPoint(maxOnPlnPt);distDir=mirrorPlaneNormal.copy().scale(2*mirrorPlaneDist);revDistDir=distDir.copy().scale(-1);pts=[];pts.push(minOnPlnPt);pts.push(eDwTypes_21.HC.Point3.add(maxOnPlnPt,revDistDir));pts.push(maxOnPlnPt);pts.push(eDwTypes_21.HC.Point3.add(minOnPlnPt,distDir));sectionHC=this.getXSectionHC();return[4,sectionHC.addPlane(sectionPlane,pts)];case 7:_a.sent();return[4,sectionHC.setColor(eDwTypes_21.HC.Color.createFromFloat(0,1,0))];case 8:_a.sent();_a.label=9;case 9:return[4,this.updateSectionVisibility(this.mSectionVisibility)];case 10:_a.sent();return[4,this.HCXSectionMgr.setStandinGeometryPickable(true)];case 11:_a.sent();return[2]}}))}))};eDwXSectionMgr.prototype.flipSectionPlane=function(){var _this=this;var sectionHC=this.getXSectionHC();if(!sectionHC)return;var sectionPlane=sectionHC.getPlane(0);if(!sectionPlane)return;sectionPlane.normal.negate();sectionPlane.d=-sectionPlane.d;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,sectionHC.updatePlane(0,sectionPlane)];case 1:_a.sent();return[2]}}))}))})()};eDwXSectionMgr.prototype.setViewToSectionPlane=function(){var sectionHC=this.getXSectionHC();if(!sectionHC)return null;var sectionPlane=sectionHC.getPlane(0);if(!sectionPlane)return null;return this.mViewer.ViewMgr.setViewOrientationToDirection(sectionPlane.normal.copy())};eDwXSectionMgr.prototype.moveCurrentAlongNormal=function(iDistVec){var _this=this;var camera=this.mViewer.getHCView().getCamera();var camPosition=camera.getPosition();var camTarget=camera.getTarget();var camUp=camera.getUp();var camZ=camTarget.subtract(camPosition);camZ=camZ.normalize();var camY=camUp.normalize();var camX=eDwTypes_21.HC.Point3.cross(camZ,camY);var realVec=camX.scale(iDistVec.x).add(camY.scale(iDistVec.y));realVec.add(camZ.scale(iDistVec.z));var sectionHC=this.getXSectionHC();var sectionPlaneHC=sectionHC.getPlane(0);var normal=sectionPlaneHC.normal.copy();normal=normal.normalize();var distance=eDwTypes_21.HC.Point3.dot(realVec,normal);if(Math.abs(distance)<1e-6)return;sectionPlaneHC.d-=distance;var lenVec=normal.scale(distance);var newPosMat=new eDwTypes_21.HC.Matrix;newPosMat=newPosMat.setTranslationComponent(lenVec.x,lenVec.y,lenVec.z);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,sectionHC.updatePlane(0,sectionPlaneHC,newPosMat,true,false)];case 1:_a.sent();return[2]}}))}))})()};eDwXSectionMgr.prototype.disableSectionCapVisibility=function(iDisable){this.setSectionCapVisibility(iDisable?false:this.mEnableSectionCaps)};eDwXSectionMgr.prototype.projectPoint=function(iPnt){var sectionHC=this.getXSectionHC();var sectionPlaneHC=sectionHC.getPlane(0);return eDwGeomUtils.dropPointOnPlane(iPnt,sectionPlaneHC)};eDwXSectionMgr.prototype.getXSectionHC=function(){return this.HCXSectionMgr.getCuttingSection(this.mXSectionIndex)};eDwXSectionMgr.prototype.setSectionCapVisibility=function(iEnable){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.HCXSectionMgr.setCappingFaceColor(iEnable?cSectionCapFaceColor:null)];case 1:_a.sent();return[4,this.HCXSectionMgr.setCappingLineColor(iEnable?null:cSectionCapOutlineColor)];case 2:_a.sent();return[2]}}))}))})()};eDwXSectionMgr.prototype.updateSectionVisibility=function(iVisible){return __awaiter(this,void 0,void 0,(function(){var activePlaneX,isSectionVisible,iExcp_18;return __generator(this,(function(_a){switch(_a.label){case 0:activePlaneX=this.getXSectionHC();activePlaneX.setOpacity(iVisible?cSectionPlaneOpacity:0);isSectionVisible=this.mSectionsVisibilityState[this.mXSectionIndex];this.mSectionsVisibilityState[this.mXSectionIndex]=iVisible;if(!iVisible)return[3,7];if(!(activePlaneX.isActive()&&isSectionVisible))return[3,4];_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,activePlaneX.deactivate()];case 2:_a.sent();return[3,4];case 3:iExcp_18=_a.sent();return[3,4];case 4:return[4,this.HCXSectionMgr.refreshPlaneGeometry()];case 5:_a.sent();return[4,activePlaneX.activate()];case 6:_a.sent();_a.label=7;case 7:return[2]}}))}))};eDwXSectionMgr.prototype.setToCurrentSectionPlane=function(){return __awaiter(this,void 0,void 0,(function(){var orientation,orientations,_a,_b,_i,orientationName;return __generator(this,(function(_c){switch(_c.label){case 0:orientations=eDwTypes_20.SectionPlaneOrientation;_a=[];for(_b in orientations)_a.push(_b);_i=0;_c.label=1;case 1:if(!(_i<_a.length))return[3,4];orientationName=_a[_i];orientation=orientations[orientationName];if(!(orientation.Index===this.mXSectionIndex))return[3,3];return[4,this.setSectionPlane(orientation)];case 2:_c.sent();return[2];case 3:_i++;return[3,1];case 4:return[2]}}))}))};Object.defineProperty(eDwXSectionMgr.prototype,"SectionCapVisibility",{get:function(){return this.mEnableSectionCaps},set:function(iEnable){this.mEnableSectionCaps=iEnable;this.setSectionCapVisibility(iEnable)},enumerable:false,configurable:true});Object.defineProperty(eDwXSectionMgr.prototype,"SectionVisibility",{set:function(iVisible){var _this=this;this.mSectionVisibility=iVisible;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.updateSectionVisibility(this.mSectionVisibility)];case 1:_a.sent();return[2]}}))}))})()},enumerable:false,configurable:true});return eDwXSectionMgr}();var cSectionPlaneOpacity=.3;var cSectionCapFaceColor=new eDwTypes_21.HC.Color(128,128,128);var cSectionCapOutlineColor=new eDwTypes_21.HC.Color(255,0,0);return eDwXSectionMgr}));define("eDwXSectionOperator",["require","exports","eDwTypes","eDwOperatorBaseDeps","eDwCommandMgr","eDwMoveSectionPlaneCmd","utils"],(function(require,exports,eDwTypes_22,eDwOperatorBaseDeps_3,eDwCommandMgr,eDwMoveSectionPlaneCmd,utils){"use strict";var eDwXSectionOperator=function(_super){__extends(eDwXSectionOperator,_super);function eDwXSectionOperator(iViewer){return _super.call(this,iViewer)||this}eDwXSectionOperator.prototype.onActivate=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.onActivate.call(this)];case 1:_a.sent();this.Viewer.XSectionMgr.activateCurrent();return[2]}}))}))};eDwXSectionOperator.prototype.onDeactivate=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.Viewer.XSectionMgr.deactivateCurrent();return[4,_super.prototype.onDeactivate.call(this)];case 1:_a.sent();return[2]}}))}))};eDwXSectionOperator.prototype.onMouseDown=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var selObj,selObjNodeIDHC,sectionMgr,typeOfSel,objHC,sectionMgrHC;var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:if(!ioMouseEvent||!this.Viewer.XSectionMgr.isCurrentActive()){ioMouseEvent.setHandled(true);return[2]}return[4,eDwOperatorBaseDeps_3.eDwBaseOperator.getPickResult(ioMouseEvent,this.Viewer.ViewMgr)];case 1:selObj=_a.sent();selObjNodeIDHC=selObj.getIDHC();if(utils.isNaN(selObjNodeIDHC)||selObjNodeIDHC>=0){ioMouseEvent.setHandled(false);return[2]}return[4,_super.prototype.onMouseDown.call(this,ioMouseEvent)];case 2:_a.sent();sectionMgr=this.Viewer.XSectionMgr;sectionMgr.disableSectionCapVisibility(true);ioMouseEvent.setHandled(true);if(selObjNodeIDHC){typeOfSel=selObj.getSelectionType();objHC=typeOfSel===eDwTypes_22.HC.SelectionType.None?null:selObj;console.debugLog("Section","sel obj = "+JSON.stringify(objHC));sectionMgrHC=this.Viewer.XSectionMgr.HCXSectionMgr;if(sectionMgrHC.getCuttingSectionFromNodeId(selObjNodeIDHC)){this.mSectionDragPtHC=this.screenToWorld(ioMouseEvent.getPosition())||this.mSectionDragPtHC}}(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!this.mMoveSectionCmd)return[3,2];return[4,this.mMoveSectionCmd.cancel()];case 1:_a.sent();_a.label=2;case 2:this.mMoveSectionCmd=new eDwMoveSectionPlaneCmd(this.Viewer);return[2]}}))}))})();return[2]}}))}))};eDwXSectionOperator.prototype.onMouseMove=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var crossSectionMgr,pos2DHC,pnt3DHC,delta;return __generator(this,(function(_a){ioMouseEvent.setHandled(false);crossSectionMgr=this.Viewer.XSectionMgr;if(!crossSectionMgr.isCurrentActive()){return[2]}if(this.CurrInputInfo&&this.mSectionDragPtHC){pos2DHC=ioMouseEvent.getPosition();pnt3DHC=this.screenToWorld(pos2DHC);if(!pnt3DHC)return[2];delta=eDwTypes_22.HC.Point3.subtract(pnt3DHC,this.mSectionDragPtHC);this.Viewer.XSectionMgr.moveCurrentAlongNormal(delta);this.mSectionDragPtHC=pnt3DHC;ioMouseEvent.setHandled(true)}return[2]}))}))};eDwXSectionOperator.prototype.onMouseUp=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.onMouseUp.call(this,ioMouseEvent)];case 1:_a.sent();this.Viewer.XSectionMgr.disableSectionCapVisibility(false);ioMouseEvent.setHandled(false);delete this.mSectionDragPtHC;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!this.mMoveSectionCmd)return[3,2];return[4,eDwCommandMgr.get().run(this.mMoveSectionCmd,"commit")];case 1:_a.sent();_a.label=2;case 2:delete this.mMoveSectionCmd;return[2]}}))}))})();return[2]}}))}))};eDwXSectionOperator.prototype.needsSelection=function(iEventType){return iEventType===eDwTypes_22.HC.EventType.MouseDown||iEventType===eDwTypes_22.HC.EventType.TouchStart};eDwXSectionOperator.prototype.screenToWorld=function(iPos2DHC){var viewHC=this.Viewer.getHCView();var normScrPos2DHC=viewHC.pointToWindowPosition(iPos2DHC);var inPnt3DHC=new eDwTypes_22.HC.Point3(normScrPos2DHC.x,normScrPos2DHC.y,0);var projMatHC=viewHC.getProjectionMatrix();projMatHC.m[15]=1;var invMatHC=eDwTypes_22.HC.Matrix.inverse(projMatHC);if(!invMatHC)return null;var tMatHC=invMatHC.transpose();var worldPnt3D=eDwTypes_22.HC.Point3.zero();var div=inPnt3DHC.x*tMatHC.m[3]+inPnt3DHC.y*tMatHC.m[7]+inPnt3DHC.z*tMatHC.m[11]+tMatHC.m[15];worldPnt3D.x=(inPnt3DHC.x*tMatHC.m[0]+inPnt3DHC.y*tMatHC.m[1]+inPnt3DHC.z*tMatHC.m[2]+tMatHC.m[3])/div;worldPnt3D.y=(inPnt3DHC.x*tMatHC.m[4]+inPnt3DHC.y*tMatHC.m[5]+inPnt3DHC.z*tMatHC.m[6]+tMatHC.m[7])/div;worldPnt3D.z=(inPnt3DHC.x*tMatHC.m[8]+inPnt3DHC.y*tMatHC.m[9]+inPnt3DHC.z*tMatHC.m[10]+tMatHC.m[11])/div;return worldPnt3D};return eDwXSectionOperator}(eDwOperatorBaseDeps_3.eDwBaseOperator);return eDwXSectionOperator}));define("eDwZoomToFitCmd",["require","exports","eDwSupportsHistoryCmd"],(function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwZoomToFitCmd=function(_super){__extends(eDwZoomToFitCmd,_super);function eDwZoomToFitCmd(iViewer,iNodeID,iCamera){var _this=_super.call(this,iViewer)||this;_this.mInitialCamera=iCamera.copy();_this.mFinalCamera=iCamera.copy();_this.mNodeIDHC=iNodeID;return _this}eDwZoomToFitCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.ViewMgr.setCamera(this.mInitialCamera);return[2,true]}}))}))};eDwZoomToFitCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.ViewMgr.setCamera(this.mFinalCamera);return[2,true]}}))}))};eDwZoomToFitCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.commit.call(this)];case 1:_a.sent();return[4,this.mViewer.ViewMgr.fitScreenToNodes([this.mNodeIDHC],this.mFinalCamera)];case 2:_a.sent();return[2]}}))}))};Object.defineProperty(eDwZoomToFitCmd.prototype,"Aggregable",{get:function(){return true},enumerable:false,configurable:true});return eDwZoomToFitCmd}(eDwSupportsHistoryCmd);return eDwZoomToFitCmd}));requirejs.config({baseUrl:"./js/3rdParty",paths:{jquery:"jquery.min","jquery-ui":"jquery-ui.min","jquery.fullscreen":"jquery.fullscreen.min","jquery.iframe-transport":"jquery.iframe-transport","jquery.fileupload":"jquery.fileupload","solidworks.web":"solidworks.web"},map:{"jquery.fileupload":{"jquery-ui/ui/widget":"jquery-ui"}},shim:{eDrawingsBase:{deps:["jquery"]},"jquery-ui":{deps:["jquery"]},"jquery.fullscreen":{deps:["jquery"]},"jquery.iframe-transport":{deps:["jquery"]},"jquery-ajax-native":{deps:["jquery"]}}});requirejs(["eDrawingsWebViewer"],(function(eDwWebViewer){console.excludeDebugLogCategories=["UIEvents","BaseSelOp","Operator"];eDwWebViewer.start()}));define("utils",["require","exports"],(function(require,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.makeArray=exports.getFirstMatchedMethodObj=exports.formatString=exports.ReversibleStringEnum=exports.deepCopyArray=exports.getExtension=exports.isEqual=exports.isNumber=exports.isNaN=exports.appendToArray=exports.isOfType=exports.getObjectTypeName=exports.isInstanceOf=exports.populateMixinObjectFromClasses=exports.populateMixinObject=exports.MixinBase=exports.getUint8Array=exports.forAll=void 0;function forAll(iFunc,iDictionary){if(!iDictionary)return;Object.keys(iDictionary).forEach((function(iKeyString){var key=parseInt(iKeyString,10);iFunc(key,iDictionary[key])}))}exports.forAll=forAll;function getUint8Array(iBase64EncodedString){var binString=window.atob(iBase64EncodedString);var len=binString.length;var bytes=new Uint8Array(len);for(var i=0;i-1?true:false}return iInstance instanceof iConstructor?true:isMixinInstance()}exports.isInstanceOf=isInstanceOf;function getObjectTypeName(iObj){if(!iObj)return"";return iObj.constructor.toString().split(" ")[1].split("(")[0]}exports.getObjectTypeName=getObjectTypeName;function isOfType(iArg,iDiscriminator){var argType=typeof iArg;return iArg&&(argType==="object"||argType==="function")?iDiscriminator in iArg:false}exports.isOfType=isOfType;function appendToArray(iElemForArray,ioArray){if(!iElemForArray||!ioArray)return;if(iElemForArray instanceof Promise){ioArray.push(iElemForArray.catch((function(iExcp){return iExcp})))}else{ioArray.push(iElemForArray)}}exports.appendToArray=appendToArray;function isNaN(iInput){return!isNumber(iInput)}exports.isNaN=isNaN;var cOrigNaN=window.isNaN;window.isNaN=isNaN;function isNumber(iInput){return typeof iInput==="number"&&(iInput===0||!cOrigNaN(iInput))?true:false}exports.isNumber=isNumber;function isEqual(iFirstObj,iSecondObj,iStrict){if(iStrict===void 0){iStrict=false}if(iFirstObj===iSecondObj)return true;if(!iFirstObj||!iSecondObj)return false;if(typeof iFirstObj!==typeof iSecondObj)return false;var numKeys=Object.keys(iFirstObj).length;if(iStrict&&numKeys!==Object.keys(iSecondObj).length)return false;var matchKeys=0;for(var key in iFirstObj){if(iFirstObj[key]===iSecondObj[key])++matchKeys}return numKeys===matchKeys?true:false}exports.isEqual=isEqual;function getExtension(iString){if(!iString)return"";var pos=iString.lastIndexOf(".");return pos===-1?"":iString.substr(pos+1).toLowerCase()}exports.getExtension=getExtension;function deepCopyArray(iArray){return JSON.parse(JSON.stringify(iArray))}exports.deepCopyArray=deepCopyArray;var ReversibleStringEnum=function(){function ReversibleStringEnum(iReversibleMapData){this.mMapping=iReversibleMapData;this.mReverseMapping={};for(var key in iReversibleMapData){this.mReverseMapping[iReversibleMapData[key]]=key}}ReversibleStringEnum.prototype.getValue=function(iKey){var value=this.mMapping[iKey];return value?value:this.mReverseMapping[iKey]};return ReversibleStringEnum}();exports.ReversibleStringEnum=ReversibleStringEnum;function formatString(iFormat){var iArgs=[];for(var _i=1;_i-1?iKey:null}));return props.length?iObj[props[0]]:null}exports.getFirstMatchedMethodObj=getFirstMatchedMethodObj;function makeArray(iObj){return iObj?Object.keys(iObj).map((function(iKey){return iObj[iKey]})):[]}exports.makeArray=makeArray})); // Copyright 2018-2021 Dassault Systemes SolidWorks Corporation. All rights reserved. diff --git a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.jpg b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.jpg index eb9c445..cf1bfeb 100644 --- a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.jpg +++ b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.jpg @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e727d74b030a395325e7e855ba57d1892f126f1f05d5e44707813986652351b7 -size 206767 +oid sha256:2c868c2c3105b3f90d0550e77dd080803264439ad03a6dba5ed9744e39213e7d +size 138268 diff --git a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.json b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.json index 9e07751..1c22cad 100644 --- a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.json +++ b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.json @@ -2,31 +2,6 @@ { "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-50H-100W-Nema23.SLDASM" }, - { - "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\20-40-100_WasherM6_x4_1mm_INOX.SLDPRT" - }, - { - "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50D-100W.SLDPRT", - "Total Bounding Box Length": "100", - "Total Bounding Box Width": "50", - "Total Bounding Box Thickness": "50", - "Total Bounding Box Volume": "250000" - }, - { - "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\20-50-100_Shield_x2_1mm_INOX.SLDPRT" - }, - { - "File Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt" - }, - { - "File Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt" - }, - { - "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM" - }, - { - "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.SLDASM" - }, { "File Path": "c:\\solidworks data (2)\\browser\\iso\\bolts and screws\\cross-recessed head screws\\pan head cross recess screw_iso.sldprt" }, @@ -36,6 +11,31 @@ { "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\servos\\nema23\\default\\cad\\Nema23.SLDASM" }, + { + "File Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt" + }, + { + "File Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt" + }, + { + "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM" + }, + { + "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT" + }, + { + "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_Shield_x2_1mm_INOX.SLDPRT" + }, + { + "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60D-120W.SLDPRT", + "Total Bounding Box Length": "120", + "Total Bounding Box Width": "60", + "Total Bounding Box Thickness": "50", + "Total Bounding Box Volume": "360000" + }, + { + "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60H-120W.SLDASM" + }, { "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\servos\\nema17\\default\\cad_en\\nema17-stepper-motor-9.snapshot.1\\Nema17-Default.SLDPRT" } diff --git a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.smg b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.smg new file mode 100644 index 0000000000000000000000000000000000000000..db5bc656446f015ff41217f0a83bac8f1bd0dadb GIT binary patch literal 114311 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

*G}tmElnz2WR2sEV`8kZ$_%t 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

OEuN6Oh3m4m^LM>tesgxx&1Qov-0^bBeVJ^ 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 Y`9IeB6XHMP;NRE9_dVcy#*ZKW3to!aX8-^I literal 0 HcmV?d00001 diff --git a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.step b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.step index 67e7e5c..862c0be 100644 --- a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.step +++ b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.step @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:20a0a4bc50267f2b33f37e73d7a01f80eefdfbbbd749ec997be59c3e54c79473 -size 1343747 +oid sha256:e23a207a9ddb861f468dce3871502d125c15b51d2980eb1b88a7e9a593899385 +size 1414381 diff --git a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.tree.json b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.tree.json index 46eeffb..714567d 100644 --- a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.tree.json +++ b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.tree.json @@ -1,143 +1,13 @@ { "assembly": { "Components": [ - { - "Name": "SlideDual-20ID-50H-100W-1", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.SLDASM", - "IsSuppressed": false - }, - { - "Name": "SlideDual-20ID-50H-100W-1/20-40-100_WasherM6_x4_1mm_INOX-1", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\20-40-100_WasherM6_x4_1mm_INOX.SLDPRT", - "IsSuppressed": false - }, - { - "Name": "SlideDual-20ID-50H-100W-1/SlideDual-20ID-50D-100W-2", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50D-100W.SLDPRT", - "IsSuppressed": true - }, - { - "Name": "SlideDual-20ID-50H-100W-1/SlideDual-20ID-50D-100W-1", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50D-100W.SLDPRT", - "IsSuppressed": false - }, - { - "Name": "SlideDual-20ID-50H-100W-1/20-50-100_Shield_x2_1mm_INOX-1", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\20-50-100_Shield_x2_1mm_INOX.SLDPRT", - "IsSuppressed": false - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "IsSuppressed": false - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/6355015-1", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", - "IsSuppressed": true - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/formed hex screw_am-2", - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "IsSuppressed": true - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/formed hex screw_am-3", - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "IsSuppressed": false - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/hex nut jam_am-1", - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", - "IsSuppressed": false - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/formed hex screw_am-4", - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "IsSuppressed": false - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/hex nut jam_am-2", - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", - "IsSuppressed": false - }, - { - "Name": "SlideDual-20ID-50H-100W-1/20-40-100_WasherM6_x4_1mm_INOX-2", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\20-40-100_WasherM6_x4_1mm_INOX.SLDPRT", - "IsSuppressed": false - }, - { - "Name": "SlideDual-20ID-50H-100W-1/20-50-100_Shield_x2_1mm_INOX-2", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\20-50-100_Shield_x2_1mm_INOX.SLDPRT", - "IsSuppressed": false - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "IsSuppressed": false - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/6355015-1", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", - "IsSuppressed": true - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/formed hex screw_am-2", - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "IsSuppressed": true - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/formed hex screw_am-3", - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "IsSuppressed": false - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/hex nut jam_am-1", - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", - "IsSuppressed": false - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/formed hex screw_am-4", - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "IsSuppressed": false - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/hex nut jam_am-2", - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", - "IsSuppressed": false - }, - { - "Name": "SlideDual-20ID-50H-100W-1/20-40-100_WasherM6_x4_1mm_INOX-3", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\20-40-100_WasherM6_x4_1mm_INOX.SLDPRT", - "IsSuppressed": false - }, - { - "Name": "SlideDual-20ID-50H-100W-1/20-40-100_WasherM6_x4_1mm_INOX-4", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\20-40-100_WasherM6_x4_1mm_INOX.SLDPRT", - "IsSuppressed": false - }, - { - "Name": "SlideDual-20ID-50H-100W-1/SlideSingle-20ID-50D-50W-1", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideSingle-20ID-50D-50W.SLDPRT", - "IsSuppressed": true - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Test-Body-1", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-40\\Test-Body.SLDPRT", - "IsSuppressed": true - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Stock-120-60-1", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-40\\Stock-120-60.SLDPRT", - "IsSuppressed": true - }, { "Name": "Nema23-1", "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\servos\\nema23\\default\\cad\\Nema23.SLDASM", "IsSuppressed": false }, { - "Name": "Nema23-1/pan head cross recess screw_iso-4", + "Name": "Nema23-1/pan head cross recess screw_iso-1", "Path": "c:\\solidworks data (2)\\browser\\iso\\bolts and screws\\cross-recessed head screws\\pan head cross recess screw_iso.sldprt", "IsSuppressed": false }, @@ -151,14 +21,144 @@ "Path": "c:\\solidworks data (2)\\browser\\iso\\bolts and screws\\cross-recessed head screws\\pan head cross recess screw_iso.sldprt", "IsSuppressed": false }, + { + "Name": "Nema23-1/pan head cross recess screw_iso-4", + "Path": "c:\\solidworks data (2)\\browser\\iso\\bolts and screws\\cross-recessed head screws\\pan head cross recess screw_iso.sldprt", + "IsSuppressed": false + }, { "Name": "Nema23-1/pan head cross recess screw_iso-3", "Path": "c:\\solidworks data (2)\\browser\\iso\\bolts and screws\\cross-recessed head screws\\pan head cross recess screw_iso.sldprt", "IsSuppressed": false }, { - "Name": "Nema23-1/pan head cross recess screw_iso-1", - "Path": "c:\\solidworks data (2)\\browser\\iso\\bolts and screws\\cross-recessed head screws\\pan head cross recess screw_iso.sldprt", + "Name": "SlideDual-20ID-60H-120W-1", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60H-120W.SLDASM", + "IsSuppressed": false + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "IsSuppressed": false + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/formed hex screw_am-4", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "IsSuppressed": false + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/hex nut jam_am-1", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "IsSuppressed": false + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/hex nut jam_am-2", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "IsSuppressed": true + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/formed hex screw_am-2", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "IsSuppressed": true + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/6355015-1", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", + "IsSuppressed": true + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/formed hex screw_am-3", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "IsSuppressed": false + }, + { + "Name": "SlideDual-20ID-60H-120W-1/20-60-120_WasherM6_x4_1mm_INOX-4", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT", + "IsSuppressed": false + }, + { + "Name": "SlideDual-20ID-60H-120W-1/20-60-120_WasherM6_x4_1mm_INOX-5", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT", + "IsSuppressed": false + }, + { + "Name": "SlideDual-20ID-60H-120W-1/20-60-120_WasherM6_x4_1mm_INOX-6", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT", + "IsSuppressed": false + }, + { + "Name": "SlideDual-20ID-60H-120W-1/20-60-120_Shield_x2_1mm_INOX-2", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_Shield_x2_1mm_INOX.SLDPRT", + "IsSuppressed": false + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Stock-120-60-1", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-40\\Stock-120-60.SLDPRT", + "IsSuppressed": true + }, + { + "Name": "SlideDual-20ID-60H-120W-1/SlideDual-20ID-60D-120W-2", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60D-120W.SLDPRT", + "IsSuppressed": true + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "IsSuppressed": false + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/formed hex screw_am-4", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "IsSuppressed": false + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/hex nut jam_am-1", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "IsSuppressed": false + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/hex nut jam_am-2", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "IsSuppressed": true + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/formed hex screw_am-2", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "IsSuppressed": true + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/6355015-1", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", + "IsSuppressed": true + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/formed hex screw_am-3", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "IsSuppressed": false + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Test-Body-1", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-40\\Test-Body.SLDPRT", + "IsSuppressed": true + }, + { + "Name": "SlideDual-20ID-60H-120W-1/20-60-120_WasherM6_x4_1mm_INOX-1", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT", + "IsSuppressed": false + }, + { + "Name": "SlideDual-20ID-60H-120W-1/20-60-120_Shield_x2_1mm_INOX-1", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_Shield_x2_1mm_INOX.SLDPRT", + "IsSuppressed": false + }, + { + "Name": "SlideDual-20ID-60H-120W-1/SlideSingle-20ID-50D-50W-1", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideSingle-20ID-50D-50W.SLDPRT", + "IsSuppressed": true + }, + { + "Name": "SlideDual-20ID-60H-120W-1/SlideDual-20ID-60D-120W-1", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60D-120W.SLDPRT", "IsSuppressed": false }, { @@ -171,2424 +171,11 @@ "root": { "Name": "SlideDual-20ID-50H-100W-Nema23", "Children": [ - { - "Name": "SlideDual-20ID-50H-100W-1", - "Children": [ - { - "Name": "SlideDual-20ID-50H-100W-1/20-40-100_WasherM6_x4_1mm_INOX-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\20-40-100_WasherM6_x4_1mm_INOX.SLDPRT", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.SLDASM", - "Properties": { - "Default": {} - }, - "Equations": {}, - "Mass": { - "Mass": 0.0007406922613335518, - "Density": 1000.0, - "Volume": 7.406922613335519E-07, - "SurfaceArea": 0.0016499951383480782, - "CenterOfMassX": -3.8388862744855453E-19, - "CenterOfMassY": -3.8388862744855453E-19, - "CenterOfMassZ": 0.0005 - }, - "Box": { - "MinX": 0.03399999999999997, - "MinY": -0.02499999999999991, - "MinZ": -0.026000000000000092, - "MaxX": 0.04999999999999997, - "MaxY": 0.0250000000000001, - "MaxZ": -0.024999999999999918 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/SlideDual-20ID-50D-100W-2", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50D-100W.SLDPRT", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.SLDASM", - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/SlideDual-20ID-50D-100W-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50D-100W.SLDPRT", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.SLDASM", - "Properties": { - "SwivelClamp": {}, - "2xM8": { - "Total Bounding Box Length": "100", - "Total Bounding Box Width": "50", - "Total Bounding Box Thickness": "50", - "Total Bounding Box Volume": "250000" - }, - "CAM": { - "Total Bounding Box Length": "100", - "Total Bounding Box Width": "50", - "Total Bounding Box Thickness": "50", - "Total Bounding Box Volume": "250000" - } - }, - "Equations": {}, - "Mass": { - "Mass": 0.19684469995615742, - "Density": 1019.9999999999999, - "Volume": 0.00019298499995701709, - "SurfaceArea": 0.03852958426116594, - "CenterOfMassX": -1.5430474937710945E-18, - "CenterOfMassY": -4.806754779888563E-18, - "CenterOfMassZ": 0.02499999999999981 - }, - "Box": { - "MinX": -0.05, - "MinY": -0.025000000000000088, - "MinZ": -0.02500000000000009, - "MaxX": 0.05, - "MaxY": 0.025000000000000088, - "MaxZ": 0.025000000000000085 - }, - "Material": { - "Material": "ABS", - "Materials": "SOLIDWORKS Materials" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/20-50-100_Shield_x2_1mm_INOX-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\20-50-100_Shield_x2_1mm_INOX.SLDPRT", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.SLDASM", - "Properties": { - "Default": {} - }, - "Equations": {}, - "Mass": { - "Mass": 0.0040503649033062075, - "Density": 1000.0000000000001, - "Volume": 4.050364903306207E-06, - "SurfaceArea": 0.00877663242888108, - "CenterOfMassX": -2.1188211581214323E-18, - "CenterOfMassY": -6.381991440124796E-19, - "CenterOfMassZ": 0.0005 - }, - "Box": { - "MinX": -0.05, - "MinY": 0.024999999999999915, - "MinZ": -0.024999999999999915, - "MaxX": 0.05, - "MaxY": 0.02600000000000009, - "MaxZ": 0.025000000000000095 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1", - "Children": [ - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/6355015-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/formed hex screw_am-2", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/formed hex screw_am-3", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, - "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, - "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, - "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} - }, - "Equations": { - "D3@Sketch1": 15.0, - "D4@Sketch1": 15.0, - "D5@Sketch1": 15.0, - "Thread_minor@ThreadCosmetic": 17.252, - "D1@Sketch3": 15.0, - "D1@Sketch5": 15.0, - "Head_ch_ang@Sketch5": 30.000000000000206, - "D1@Sketch4": 30.0, - "D1@Sketch6": 26.25, - "D1@Indent": 1.61, - "Thread_length@ThreadCosmetic": 27.5, - "Thread_minor@ThdSchSke": 17.252, - "Diameter@ThdSchSke": 20.0, - "Overcut@ThdSchSke": 25.0, - "Start@ThdSchSke": 15.380000000000003, - "Num_threads@ThdSchPat": 10.0, - "Advance@ThdSchPat": 2.75 - }, - "Mass": { - "Mass": 0.018448476549526794, - "Density": 1000.0000000000001, - "Volume": 1.8448476549526793E-05, - "SurfaceArea": 0.004817801875137061, - "CenterOfMassX": 0.01753955213482699, - "CenterOfMassY": -9.082730693577985E-06, - "CenterOfMassZ": -1.5685995711674708E-06 - }, - "Box": { - "MinX": 0.03699999999999997, - "MinY": -0.023273502691896264, - "MinZ": -0.030150000000000014, - "MaxX": 0.04699999999999998, - "MaxY": -0.01172649730810373, - "MaxZ": 0.003999999999999986 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/hex nut jam_am-1", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.4.5M - Hex jam nut, M6 x 1 --D-N": {} - }, - "Equations": { - "D2@BaseNutSke": 5.0, - "D3@BaseNutSke": 5.0, - "D1@Sketch3": 5.0, - "D1@Sketch4": 5.0, - "D4@BaseNutSke": 5.0, - "Thread_major@ThdSchSke": 6.0, - "Tap_Drill@ThdSchSke": 5.0, - "OverCut@ThdSchSke": 2.5, - "Num_threads@ThdSchPat": 0.0, - "Advance@ThdSchPat": 0.7873, - "ThreadMajor@Sketch5": 3.0, - "ChamferDepth@Sketch5": 0.5499999999999999, - "Offset1@Sketch5": 3.2254, - "Offset2@Sketch5": 3.2762000000000002 - }, - "Mass": { - "Mass": 0.00020897265062795267, - "Density": 1000.0, - "Volume": 2.0897265062795267E-07, - "SurfaceArea": 0.0002798294711277528, - "CenterOfMassX": 4.060604266497328E-19, - "CenterOfMassY": 2.5991347688293234E-09, - "CenterOfMassZ": -0.0015985116157014817 - }, - "Box": { - "MinX": 0.03699999999999998, - "MinY": -0.02327350269189628, - "MinZ": 0.003999999999999983, - "MaxX": 0.046999999999999986, - "MaxY": -0.011726497308103722, - "MaxZ": 0.007199999999999991 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/formed hex screw_am-4", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, - "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, - "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, - "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} - }, - "Equations": { - "D3@Sketch1": 15.0, - "D4@Sketch1": 15.0, - "D5@Sketch1": 15.0, - "Thread_minor@ThreadCosmetic": 17.252, - "D1@Sketch3": 15.0, - "D1@Sketch5": 15.0, - "Head_ch_ang@Sketch5": 30.000000000000206, - "D1@Sketch4": 30.0, - "D1@Sketch6": 26.25, - "D1@Indent": 1.61, - "Thread_length@ThreadCosmetic": 27.5, - "Thread_minor@ThdSchSke": 17.252, - "Diameter@ThdSchSke": 20.0, - "Overcut@ThdSchSke": 25.0, - "Start@ThdSchSke": 15.380000000000003, - "Num_threads@ThdSchPat": 10.0, - "Advance@ThdSchPat": 2.75 - }, - "Mass": { - "Mass": 0.018448476549526794, - "Density": 1000.0000000000001, - "Volume": 1.8448476549526793E-05, - "SurfaceArea": 0.004817801875137061, - "CenterOfMassX": 0.01753955213482699, - "CenterOfMassY": -9.082730693577985E-06, - "CenterOfMassZ": -1.5685995711674708E-06 - }, - "Box": { - "MinX": 0.03699999999999996, - "MinY": 0.01172649730810373, - "MinZ": -0.030150000000000014, - "MaxX": 0.046999999999999965, - "MaxY": 0.023273502691896264, - "MaxZ": 0.003999999999999986 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/hex nut jam_am-2", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.4.5M - Hex jam nut, M6 x 1 --D-N": {} - }, - "Equations": { - "D2@BaseNutSke": 5.0, - "D3@BaseNutSke": 5.0, - "D1@Sketch3": 5.0, - "D1@Sketch4": 5.0, - "D4@BaseNutSke": 5.0, - "Thread_major@ThdSchSke": 6.0, - "Tap_Drill@ThdSchSke": 5.0, - "OverCut@ThdSchSke": 2.5, - "Num_threads@ThdSchPat": 0.0, - "Advance@ThdSchPat": 0.7873, - "ThreadMajor@Sketch5": 3.0, - "ChamferDepth@Sketch5": 0.5499999999999999, - "Offset1@Sketch5": 3.2254, - "Offset2@Sketch5": 3.2762000000000002 - }, - "Mass": { - "Mass": 0.00020897265062795267, - "Density": 1000.0, - "Volume": 2.0897265062795267E-07, - "SurfaceArea": 0.0002798294711277528, - "CenterOfMassX": 4.060604266497328E-19, - "CenterOfMassY": 2.5991347688293234E-09, - "CenterOfMassZ": -0.0015985116157014817 - }, - "Box": { - "MinX": 0.036999999999999963, - "MinY": 0.011726497308103722, - "MinZ": 0.00399999999999999, - "MaxX": 0.04699999999999997, - "MaxY": 0.02327350269189628, - "MaxZ": 0.007199999999999998 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - } - ], - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.SLDASM", - "Properties": { - "Swivel-M6": {}, - "2xM8": {} - }, - "Equations": {}, - "Mass": { - "Mass": 0.0027551470639894, - "Density": 999.9999999999999, - "Volume": 2.7551470639894004E-06, - "SurfaceArea": 0.0023286938765703785, - "CenterOfMassX": 7.520514186491668E-07, - "CenterOfMassY": 0.07332721044234486, - "CenterOfMassZ": -0.03138646730666885 - }, - "Box": { - "MinX": 0.036999999999999963, - "MinY": -0.023273502691896278, - "MinZ": -0.030150000000000017, - "MaxX": 0.046999999999999986, - "MaxY": 0.023273502691896278, - "MaxZ": 0.007199999999999998 - }, - "Material": { - "formed hex screw_am-3": "", - "hex nut jam_am-1": "", - "formed hex screw_am-4": "", - "hex nut jam_am-2": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/20-40-100_WasherM6_x4_1mm_INOX-2", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\20-40-100_WasherM6_x4_1mm_INOX.SLDPRT", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.SLDASM", - "Properties": { - "Default": {} - }, - "Equations": {}, - "Mass": { - "Mass": 0.0007406922613335518, - "Density": 1000.0, - "Volume": 7.406922613335519E-07, - "SurfaceArea": 0.0016499951383480782, - "CenterOfMassX": -3.8388862744855453E-19, - "CenterOfMassY": -3.8388862744855453E-19, - "CenterOfMassZ": 0.0005 - }, - "Box": { - "MinX": -0.04999999999999997, - "MinY": -0.02499999999999991, - "MinZ": -0.026000000000000092, - "MaxX": -0.03399999999999997, - "MaxY": 0.0250000000000001, - "MaxZ": -0.024999999999999918 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/20-50-100_Shield_x2_1mm_INOX-2", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\20-50-100_Shield_x2_1mm_INOX.SLDPRT", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.SLDASM", - "Properties": { - "Default": {} - }, - "Equations": {}, - "Mass": { - "Mass": 0.0040503649033062075, - "Density": 1000.0000000000001, - "Volume": 4.050364903306207E-06, - "SurfaceArea": 0.00877663242888108, - "CenterOfMassX": -2.1188211581214323E-18, - "CenterOfMassY": -6.381991440124796E-19, - "CenterOfMassZ": 0.0005 - }, - "Box": { - "MinX": -0.05, - "MinY": -0.02600000000000009, - "MinZ": -0.025000000000000095, - "MaxX": 0.05, - "MaxY": -0.024999999999999915, - "MaxZ": 0.024999999999999915 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2", - "Children": [ - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/6355015-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/formed hex screw_am-2", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/formed hex screw_am-3", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, - "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, - "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, - "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} - }, - "Equations": { - "D3@Sketch1": 15.0, - "D4@Sketch1": 15.0, - "D5@Sketch1": 15.0, - "Thread_minor@ThreadCosmetic": 17.252, - "D1@Sketch3": 15.0, - "D1@Sketch5": 15.0, - "Head_ch_ang@Sketch5": 30.000000000000206, - "D1@Sketch4": 30.0, - "D1@Sketch6": 26.25, - "D1@Indent": 1.61, - "Thread_length@ThreadCosmetic": 27.5, - "Thread_minor@ThdSchSke": 17.252, - "Diameter@ThdSchSke": 20.0, - "Overcut@ThdSchSke": 25.0, - "Start@ThdSchSke": 15.380000000000003, - "Num_threads@ThdSchPat": 10.0, - "Advance@ThdSchPat": 2.75 - }, - "Mass": { - "Mass": 0.018448476549526794, - "Density": 1000.0000000000001, - "Volume": 1.8448476549526793E-05, - "SurfaceArea": 0.004817801875137061, - "CenterOfMassX": 0.01753955213482699, - "CenterOfMassY": -9.082730693577985E-06, - "CenterOfMassZ": -1.5685995711674708E-06 - }, - "Box": { - "MinX": -0.04699999999999998, - "MinY": 0.01172649730810373, - "MinZ": -0.030150000000000014, - "MaxX": -0.03699999999999997, - "MaxY": 0.023273502691896264, - "MaxZ": 0.003999999999999986 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/hex nut jam_am-1", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.4.5M - Hex jam nut, M6 x 1 --D-N": {} - }, - "Equations": { - "D2@BaseNutSke": 5.0, - "D3@BaseNutSke": 5.0, - "D1@Sketch3": 5.0, - "D1@Sketch4": 5.0, - "D4@BaseNutSke": 5.0, - "Thread_major@ThdSchSke": 6.0, - "Tap_Drill@ThdSchSke": 5.0, - "OverCut@ThdSchSke": 2.5, - "Num_threads@ThdSchPat": 0.0, - "Advance@ThdSchPat": 0.7873, - "ThreadMajor@Sketch5": 3.0, - "ChamferDepth@Sketch5": 0.5499999999999999, - "Offset1@Sketch5": 3.2254, - "Offset2@Sketch5": 3.2762000000000002 - }, - "Mass": { - "Mass": 0.00020897265062795267, - "Density": 1000.0, - "Volume": 2.0897265062795267E-07, - "SurfaceArea": 0.0002798294711277528, - "CenterOfMassX": 4.060604266497328E-19, - "CenterOfMassY": 2.5991347688293234E-09, - "CenterOfMassZ": -0.0015985116157014817 - }, - "Box": { - "MinX": -0.046999999999999986, - "MinY": 0.011726497308103722, - "MinZ": 0.003999999999999983, - "MaxX": -0.03699999999999998, - "MaxY": 0.02327350269189628, - "MaxZ": 0.007199999999999991 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/formed hex screw_am-4", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, - "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, - "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, - "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} - }, - "Equations": { - "D3@Sketch1": 15.0, - "D4@Sketch1": 15.0, - "D5@Sketch1": 15.0, - "Thread_minor@ThreadCosmetic": 17.252, - "D1@Sketch3": 15.0, - "D1@Sketch5": 15.0, - "Head_ch_ang@Sketch5": 30.000000000000206, - "D1@Sketch4": 30.0, - "D1@Sketch6": 26.25, - "D1@Indent": 1.61, - "Thread_length@ThreadCosmetic": 27.5, - "Thread_minor@ThdSchSke": 17.252, - "Diameter@ThdSchSke": 20.0, - "Overcut@ThdSchSke": 25.0, - "Start@ThdSchSke": 15.380000000000003, - "Num_threads@ThdSchPat": 10.0, - "Advance@ThdSchPat": 2.75 - }, - "Mass": { - "Mass": 0.018448476549526794, - "Density": 1000.0000000000001, - "Volume": 1.8448476549526793E-05, - "SurfaceArea": 0.004817801875137061, - "CenterOfMassX": 0.01753955213482699, - "CenterOfMassY": -9.082730693577985E-06, - "CenterOfMassZ": -1.5685995711674708E-06 - }, - "Box": { - "MinX": -0.046999999999999965, - "MinY": -0.023273502691896264, - "MinZ": -0.030150000000000014, - "MaxX": -0.03699999999999996, - "MaxY": -0.01172649730810373, - "MaxZ": 0.003999999999999986 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/hex nut jam_am-2", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.4.5M - Hex jam nut, M6 x 1 --D-N": {} - }, - "Equations": { - "D2@BaseNutSke": 5.0, - "D3@BaseNutSke": 5.0, - "D1@Sketch3": 5.0, - "D1@Sketch4": 5.0, - "D4@BaseNutSke": 5.0, - "Thread_major@ThdSchSke": 6.0, - "Tap_Drill@ThdSchSke": 5.0, - "OverCut@ThdSchSke": 2.5, - "Num_threads@ThdSchPat": 0.0, - "Advance@ThdSchPat": 0.7873, - "ThreadMajor@Sketch5": 3.0, - "ChamferDepth@Sketch5": 0.5499999999999999, - "Offset1@Sketch5": 3.2254, - "Offset2@Sketch5": 3.2762000000000002 - }, - "Mass": { - "Mass": 0.00020897265062795267, - "Density": 1000.0, - "Volume": 2.0897265062795267E-07, - "SurfaceArea": 0.0002798294711277528, - "CenterOfMassX": 4.060604266497328E-19, - "CenterOfMassY": 2.5991347688293234E-09, - "CenterOfMassZ": -0.0015985116157014817 - }, - "Box": { - "MinX": -0.04699999999999997, - "MinY": -0.02327350269189628, - "MinZ": 0.00399999999999999, - "MaxX": -0.036999999999999963, - "MaxY": -0.011726497308103722, - "MaxZ": 0.007199999999999998 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - } - ], - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.SLDASM", - "Properties": { - "Swivel-M6": {}, - "2xM8": {} - }, - "Equations": {}, - "Mass": { - "Mass": 0.0027551470639894, - "Density": 999.9999999999999, - "Volume": 2.7551470639894004E-06, - "SurfaceArea": 0.0023286938765703785, - "CenterOfMassX": 7.520514186491658E-07, - "CenterOfMassY": 0.07332721044234486, - "CenterOfMassZ": -0.03138646730666885 - }, - "Box": { - "MinX": -0.046999999999999986, - "MinY": -0.023273502691896278, - "MinZ": -0.030150000000000017, - "MaxX": -0.036999999999999963, - "MaxY": 0.023273502691896278, - "MaxZ": 0.007199999999999998 - }, - "Material": { - "formed hex screw_am-3": "", - "hex nut jam_am-1": "", - "formed hex screw_am-4": "", - "hex nut jam_am-2": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/20-40-100_WasherM6_x4_1mm_INOX-3", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\20-40-100_WasherM6_x4_1mm_INOX.SLDPRT", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.SLDASM", - "Properties": { - "Default": {} - }, - "Equations": {}, - "Mass": { - "Mass": 0.0007406922613335518, - "Density": 1000.0, - "Volume": 7.406922613335519E-07, - "SurfaceArea": 0.0016499951383480782, - "CenterOfMassX": -3.8388862744855453E-19, - "CenterOfMassY": -3.8388862744855453E-19, - "CenterOfMassZ": 0.0005 - }, - "Box": { - "MinX": -0.04999999999999997, - "MinY": -0.02499999999999991, - "MinZ": 0.02499999999999992, - "MaxX": -0.03399999999999997, - "MaxY": 0.0250000000000001, - "MaxZ": 0.026000000000000096 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/20-40-100_WasherM6_x4_1mm_INOX-4", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\20-40-100_WasherM6_x4_1mm_INOX.SLDPRT", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.SLDASM", - "Properties": { - "Default": {} - }, - "Equations": {}, - "Mass": { - "Mass": 0.0007406922613335518, - "Density": 1000.0, - "Volume": 7.406922613335519E-07, - "SurfaceArea": 0.0016499951383480782, - "CenterOfMassX": -3.8388862744855453E-19, - "CenterOfMassY": -3.8388862744855453E-19, - "CenterOfMassZ": 0.0005 - }, - "Box": { - "MinX": 0.03399999999999997, - "MinY": -0.02499999999999991, - "MinZ": 0.024999999999999918, - "MaxX": 0.04999999999999997, - "MaxY": 0.0250000000000001, - "MaxZ": 0.026000000000000092 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/SlideSingle-20ID-50D-50W-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideSingle-20ID-50D-50W.SLDPRT", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.SLDASM", - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Test-Body-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-40\\Test-Body.SLDPRT", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.SLDASM", - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Stock-120-60-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-40\\Stock-120-60.SLDPRT", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.SLDASM", - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - } - ], - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50H-100W.SLDASM", - "Parent": null, - "Properties": { - "Swivel-M6": {}, - "2xM8": {}, - "CAM": {} - }, - "Equations": {}, - "Mass": { - "Mass": 0.21341849293608284, - "Density": 1018.4182202285435, - "Volume": 0.00020955879293694247, - "SurfaceArea": 0.06734021742546119, - "CenterOfMassX": -7.620254629083721E-19, - "CenterOfMassY": 1.7730243618648602E-16, - "CenterOfMassZ": -0.0003221778821077368 - }, - "Box": { - "MinX": -0.05, - "MinY": -0.02600000000000009, - "MinZ": -0.030150000000000017, - "MaxX": 0.05, - "MaxY": 0.02600000000000009, - "MaxZ": 0.0260000000000001 - }, - "Material": { - "20-40-100_WasherM6_x4_1mm_INOX-1": "", - "SlideDual-20ID-50D-100W-1": "ABS", - "20-50-100_Shield_x2_1mm_INOX-1": "", - "Fasteners-M6-1/formed hex screw_am-3": "", - "Fasteners-M6-1/hex nut jam_am-1": "", - "Fasteners-M6-1/formed hex screw_am-4": "", - "Fasteners-M6-1/hex nut jam_am-2": "", - "20-40-100_WasherM6_x4_1mm_INOX-2": "", - "20-50-100_Shield_x2_1mm_INOX-2": "", - "Fasteners-M6-2/formed hex screw_am-3": "", - "Fasteners-M6-2/hex nut jam_am-1": "", - "Fasteners-M6-2/formed hex screw_am-4": "", - "Fasteners-M6-2/hex nut jam_am-2": "", - "20-40-100_WasherM6_x4_1mm_INOX-3": "", - "20-40-100_WasherM6_x4_1mm_INOX-4": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/20-40-100_WasherM6_x4_1mm_INOX-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\20-40-100_WasherM6_x4_1mm_INOX.SLDPRT", - "Parent": null, - "Properties": { - "Default": {} - }, - "Equations": {}, - "Mass": { - "Mass": 0.0007406922613335518, - "Density": 1000.0, - "Volume": 7.406922613335519E-07, - "SurfaceArea": 0.0016499951383480782, - "CenterOfMassX": -3.8388862744855453E-19, - "CenterOfMassY": -3.8388862744855453E-19, - "CenterOfMassZ": 0.0005 - }, - "Box": { - "MinX": 0.03399999999999997, - "MinY": -0.02499999999999991, - "MinZ": -0.026000000000000092, - "MaxX": 0.04999999999999997, - "MaxY": 0.0250000000000001, - "MaxZ": -0.024999999999999918 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/SlideDual-20ID-50D-100W-2", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50D-100W.SLDPRT", - "Parent": null, - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/SlideDual-20ID-50D-100W-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideDual-20ID-50D-100W.SLDPRT", - "Parent": null, - "Properties": { - "SwivelClamp": {}, - "2xM8": { - "Total Bounding Box Length": "100", - "Total Bounding Box Width": "50", - "Total Bounding Box Thickness": "50", - "Total Bounding Box Volume": "250000" - }, - "CAM": { - "Total Bounding Box Length": "100", - "Total Bounding Box Width": "50", - "Total Bounding Box Thickness": "50", - "Total Bounding Box Volume": "250000" - } - }, - "Equations": {}, - "Mass": { - "Mass": 0.19684469995615742, - "Density": 1019.9999999999999, - "Volume": 0.00019298499995701709, - "SurfaceArea": 0.03852958426116594, - "CenterOfMassX": -1.5430474937710945E-18, - "CenterOfMassY": -4.806754779888563E-18, - "CenterOfMassZ": 0.02499999999999981 - }, - "Box": { - "MinX": -0.05, - "MinY": -0.025000000000000088, - "MinZ": -0.02500000000000009, - "MaxX": 0.05, - "MaxY": 0.025000000000000088, - "MaxZ": 0.025000000000000085 - }, - "Material": { - "Material": "ABS", - "Materials": "SOLIDWORKS Materials" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/20-50-100_Shield_x2_1mm_INOX-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\20-50-100_Shield_x2_1mm_INOX.SLDPRT", - "Parent": null, - "Properties": { - "Default": {} - }, - "Equations": {}, - "Mass": { - "Mass": 0.0040503649033062075, - "Density": 1000.0000000000001, - "Volume": 4.050364903306207E-06, - "SurfaceArea": 0.00877663242888108, - "CenterOfMassX": -2.1188211581214323E-18, - "CenterOfMassY": -6.381991440124796E-19, - "CenterOfMassZ": 0.0005 - }, - "Box": { - "MinX": -0.05, - "MinY": 0.024999999999999915, - "MinZ": -0.024999999999999915, - "MaxX": 0.05, - "MaxY": 0.02600000000000009, - "MaxZ": 0.025000000000000095 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1", - "Children": [ - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/6355015-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/formed hex screw_am-2", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/formed hex screw_am-3", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, - "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, - "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, - "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} - }, - "Equations": { - "D3@Sketch1": 15.0, - "D4@Sketch1": 15.0, - "D5@Sketch1": 15.0, - "Thread_minor@ThreadCosmetic": 17.252, - "D1@Sketch3": 15.0, - "D1@Sketch5": 15.0, - "Head_ch_ang@Sketch5": 30.000000000000206, - "D1@Sketch4": 30.0, - "D1@Sketch6": 26.25, - "D1@Indent": 1.61, - "Thread_length@ThreadCosmetic": 27.5, - "Thread_minor@ThdSchSke": 17.252, - "Diameter@ThdSchSke": 20.0, - "Overcut@ThdSchSke": 25.0, - "Start@ThdSchSke": 15.380000000000003, - "Num_threads@ThdSchPat": 10.0, - "Advance@ThdSchPat": 2.75 - }, - "Mass": { - "Mass": 0.018448476549526794, - "Density": 1000.0000000000001, - "Volume": 1.8448476549526793E-05, - "SurfaceArea": 0.004817801875137061, - "CenterOfMassX": 0.01753955213482699, - "CenterOfMassY": -9.082730693577985E-06, - "CenterOfMassZ": -1.5685995711674708E-06 - }, - "Box": { - "MinX": 0.03699999999999997, - "MinY": -0.023273502691896264, - "MinZ": -0.030150000000000014, - "MaxX": 0.04699999999999998, - "MaxY": -0.01172649730810373, - "MaxZ": 0.003999999999999986 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/hex nut jam_am-1", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.4.5M - Hex jam nut, M6 x 1 --D-N": {} - }, - "Equations": { - "D2@BaseNutSke": 5.0, - "D3@BaseNutSke": 5.0, - "D1@Sketch3": 5.0, - "D1@Sketch4": 5.0, - "D4@BaseNutSke": 5.0, - "Thread_major@ThdSchSke": 6.0, - "Tap_Drill@ThdSchSke": 5.0, - "OverCut@ThdSchSke": 2.5, - "Num_threads@ThdSchPat": 0.0, - "Advance@ThdSchPat": 0.7873, - "ThreadMajor@Sketch5": 3.0, - "ChamferDepth@Sketch5": 0.5499999999999999, - "Offset1@Sketch5": 3.2254, - "Offset2@Sketch5": 3.2762000000000002 - }, - "Mass": { - "Mass": 0.00020897265062795267, - "Density": 1000.0, - "Volume": 2.0897265062795267E-07, - "SurfaceArea": 0.0002798294711277528, - "CenterOfMassX": 4.060604266497328E-19, - "CenterOfMassY": 2.5991347688293234E-09, - "CenterOfMassZ": -0.0015985116157014817 - }, - "Box": { - "MinX": 0.03699999999999998, - "MinY": -0.02327350269189628, - "MinZ": 0.003999999999999983, - "MaxX": 0.046999999999999986, - "MaxY": -0.011726497308103722, - "MaxZ": 0.007199999999999991 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/formed hex screw_am-4", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, - "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, - "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, - "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} - }, - "Equations": { - "D3@Sketch1": 15.0, - "D4@Sketch1": 15.0, - "D5@Sketch1": 15.0, - "Thread_minor@ThreadCosmetic": 17.252, - "D1@Sketch3": 15.0, - "D1@Sketch5": 15.0, - "Head_ch_ang@Sketch5": 30.000000000000206, - "D1@Sketch4": 30.0, - "D1@Sketch6": 26.25, - "D1@Indent": 1.61, - "Thread_length@ThreadCosmetic": 27.5, - "Thread_minor@ThdSchSke": 17.252, - "Diameter@ThdSchSke": 20.0, - "Overcut@ThdSchSke": 25.0, - "Start@ThdSchSke": 15.380000000000003, - "Num_threads@ThdSchPat": 10.0, - "Advance@ThdSchPat": 2.75 - }, - "Mass": { - "Mass": 0.018448476549526794, - "Density": 1000.0000000000001, - "Volume": 1.8448476549526793E-05, - "SurfaceArea": 0.004817801875137061, - "CenterOfMassX": 0.01753955213482699, - "CenterOfMassY": -9.082730693577985E-06, - "CenterOfMassZ": -1.5685995711674708E-06 - }, - "Box": { - "MinX": 0.03699999999999996, - "MinY": 0.01172649730810373, - "MinZ": -0.030150000000000014, - "MaxX": 0.046999999999999965, - "MaxY": 0.023273502691896264, - "MaxZ": 0.003999999999999986 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/hex nut jam_am-2", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.4.5M - Hex jam nut, M6 x 1 --D-N": {} - }, - "Equations": { - "D2@BaseNutSke": 5.0, - "D3@BaseNutSke": 5.0, - "D1@Sketch3": 5.0, - "D1@Sketch4": 5.0, - "D4@BaseNutSke": 5.0, - "Thread_major@ThdSchSke": 6.0, - "Tap_Drill@ThdSchSke": 5.0, - "OverCut@ThdSchSke": 2.5, - "Num_threads@ThdSchPat": 0.0, - "Advance@ThdSchPat": 0.7873, - "ThreadMajor@Sketch5": 3.0, - "ChamferDepth@Sketch5": 0.5499999999999999, - "Offset1@Sketch5": 3.2254, - "Offset2@Sketch5": 3.2762000000000002 - }, - "Mass": { - "Mass": 0.00020897265062795267, - "Density": 1000.0, - "Volume": 2.0897265062795267E-07, - "SurfaceArea": 0.0002798294711277528, - "CenterOfMassX": 4.060604266497328E-19, - "CenterOfMassY": 2.5991347688293234E-09, - "CenterOfMassZ": -0.0015985116157014817 - }, - "Box": { - "MinX": 0.036999999999999963, - "MinY": 0.011726497308103722, - "MinZ": 0.00399999999999999, - "MaxX": 0.04699999999999997, - "MaxY": 0.02327350269189628, - "MaxZ": 0.007199999999999998 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - } - ], - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Parent": null, - "Properties": { - "Swivel-M6": {}, - "2xM8": {} - }, - "Equations": {}, - "Mass": { - "Mass": 0.0027551470639894, - "Density": 999.9999999999999, - "Volume": 2.7551470639894004E-06, - "SurfaceArea": 0.0023286938765703785, - "CenterOfMassX": 7.520514186491715E-07, - "CenterOfMassY": 0.07332721044234486, - "CenterOfMassZ": -0.03138646730666885 - }, - "Box": { - "MinX": 0.036999999999999963, - "MinY": -0.023273502691896278, - "MinZ": -0.030150000000000017, - "MaxX": 0.046999999999999986, - "MaxY": 0.023273502691896278, - "MaxZ": 0.007199999999999998 - }, - "Material": { - "formed hex screw_am-3": "", - "hex nut jam_am-1": "", - "formed hex screw_am-4": "", - "hex nut jam_am-2": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/6355015-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", - "Parent": null, - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/formed hex screw_am-2", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "Parent": null, - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/formed hex screw_am-3", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "Parent": null, - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, - "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, - "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, - "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} - }, - "Equations": { - "D3@Sketch1": 15.0, - "D4@Sketch1": 15.0, - "D5@Sketch1": 15.0, - "Thread_minor@ThreadCosmetic": 17.252, - "D1@Sketch3": 15.0, - "D1@Sketch5": 15.0, - "Head_ch_ang@Sketch5": 30.000000000000206, - "D1@Sketch4": 30.0, - "D1@Sketch6": 26.25, - "D1@Indent": 1.61, - "Thread_length@ThreadCosmetic": 27.5, - "Thread_minor@ThdSchSke": 17.252, - "Diameter@ThdSchSke": 20.0, - "Overcut@ThdSchSke": 25.0, - "Start@ThdSchSke": 15.380000000000003, - "Num_threads@ThdSchPat": 10.0, - "Advance@ThdSchPat": 2.75 - }, - "Mass": { - "Mass": 0.018448476549526794, - "Density": 1000.0000000000001, - "Volume": 1.8448476549526793E-05, - "SurfaceArea": 0.004817801875137061, - "CenterOfMassX": 0.01753955213482699, - "CenterOfMassY": -9.082730693577985E-06, - "CenterOfMassZ": -1.5685995711674708E-06 - }, - "Box": { - "MinX": 0.03699999999999997, - "MinY": -0.023273502691896264, - "MinZ": -0.030150000000000014, - "MaxX": 0.04699999999999998, - "MaxY": -0.01172649730810373, - "MaxZ": 0.003999999999999986 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/hex nut jam_am-1", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", - "Parent": null, - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.4.5M - Hex jam nut, M6 x 1 --D-N": {} - }, - "Equations": { - "D2@BaseNutSke": 5.0, - "D3@BaseNutSke": 5.0, - "D1@Sketch3": 5.0, - "D1@Sketch4": 5.0, - "D4@BaseNutSke": 5.0, - "Thread_major@ThdSchSke": 6.0, - "Tap_Drill@ThdSchSke": 5.0, - "OverCut@ThdSchSke": 2.5, - "Num_threads@ThdSchPat": 0.0, - "Advance@ThdSchPat": 0.7873, - "ThreadMajor@Sketch5": 3.0, - "ChamferDepth@Sketch5": 0.5499999999999999, - "Offset1@Sketch5": 3.2254, - "Offset2@Sketch5": 3.2762000000000002 - }, - "Mass": { - "Mass": 0.00020897265062795267, - "Density": 1000.0, - "Volume": 2.0897265062795267E-07, - "SurfaceArea": 0.0002798294711277528, - "CenterOfMassX": 4.060604266497328E-19, - "CenterOfMassY": 2.5991347688293234E-09, - "CenterOfMassZ": -0.0015985116157014817 - }, - "Box": { - "MinX": 0.03699999999999998, - "MinY": -0.02327350269189628, - "MinZ": 0.003999999999999983, - "MaxX": 0.046999999999999986, - "MaxY": -0.011726497308103722, - "MaxZ": 0.007199999999999991 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/formed hex screw_am-4", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "Parent": null, - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, - "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, - "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, - "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} - }, - "Equations": { - "D3@Sketch1": 15.0, - "D4@Sketch1": 15.0, - "D5@Sketch1": 15.0, - "Thread_minor@ThreadCosmetic": 17.252, - "D1@Sketch3": 15.0, - "D1@Sketch5": 15.0, - "Head_ch_ang@Sketch5": 30.000000000000206, - "D1@Sketch4": 30.0, - "D1@Sketch6": 26.25, - "D1@Indent": 1.61, - "Thread_length@ThreadCosmetic": 27.5, - "Thread_minor@ThdSchSke": 17.252, - "Diameter@ThdSchSke": 20.0, - "Overcut@ThdSchSke": 25.0, - "Start@ThdSchSke": 15.380000000000003, - "Num_threads@ThdSchPat": 10.0, - "Advance@ThdSchPat": 2.75 - }, - "Mass": { - "Mass": 0.018448476549526794, - "Density": 1000.0000000000001, - "Volume": 1.8448476549526793E-05, - "SurfaceArea": 0.004817801875137061, - "CenterOfMassX": 0.01753955213482699, - "CenterOfMassY": -9.082730693577985E-06, - "CenterOfMassZ": -1.5685995711674708E-06 - }, - "Box": { - "MinX": 0.03699999999999996, - "MinY": 0.01172649730810373, - "MinZ": -0.030150000000000014, - "MaxX": 0.046999999999999965, - "MaxY": 0.023273502691896264, - "MaxZ": 0.003999999999999986 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/hex nut jam_am-2", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", - "Parent": null, - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.4.5M - Hex jam nut, M6 x 1 --D-N": {} - }, - "Equations": { - "D2@BaseNutSke": 5.0, - "D3@BaseNutSke": 5.0, - "D1@Sketch3": 5.0, - "D1@Sketch4": 5.0, - "D4@BaseNutSke": 5.0, - "Thread_major@ThdSchSke": 6.0, - "Tap_Drill@ThdSchSke": 5.0, - "OverCut@ThdSchSke": 2.5, - "Num_threads@ThdSchPat": 0.0, - "Advance@ThdSchPat": 0.7873, - "ThreadMajor@Sketch5": 3.0, - "ChamferDepth@Sketch5": 0.5499999999999999, - "Offset1@Sketch5": 3.2254, - "Offset2@Sketch5": 3.2762000000000002 - }, - "Mass": { - "Mass": 0.00020897265062795267, - "Density": 1000.0, - "Volume": 2.0897265062795267E-07, - "SurfaceArea": 0.0002798294711277528, - "CenterOfMassX": 4.060604266497328E-19, - "CenterOfMassY": 2.5991347688293234E-09, - "CenterOfMassZ": -0.0015985116157014817 - }, - "Box": { - "MinX": 0.036999999999999963, - "MinY": 0.011726497308103722, - "MinZ": 0.00399999999999999, - "MaxX": 0.04699999999999997, - "MaxY": 0.02327350269189628, - "MaxZ": 0.007199999999999998 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/20-40-100_WasherM6_x4_1mm_INOX-2", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\20-40-100_WasherM6_x4_1mm_INOX.SLDPRT", - "Parent": null, - "Properties": { - "Default": {} - }, - "Equations": {}, - "Mass": { - "Mass": 0.0007406922613335518, - "Density": 1000.0, - "Volume": 7.406922613335519E-07, - "SurfaceArea": 0.0016499951383480782, - "CenterOfMassX": -3.8388862744855453E-19, - "CenterOfMassY": -3.8388862744855453E-19, - "CenterOfMassZ": 0.0005 - }, - "Box": { - "MinX": -0.04999999999999997, - "MinY": -0.02499999999999991, - "MinZ": -0.026000000000000092, - "MaxX": -0.03399999999999997, - "MaxY": 0.0250000000000001, - "MaxZ": -0.024999999999999918 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/20-50-100_Shield_x2_1mm_INOX-2", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\20-50-100_Shield_x2_1mm_INOX.SLDPRT", - "Parent": null, - "Properties": { - "Default": {} - }, - "Equations": {}, - "Mass": { - "Mass": 0.0040503649033062075, - "Density": 1000.0000000000001, - "Volume": 4.050364903306207E-06, - "SurfaceArea": 0.00877663242888108, - "CenterOfMassX": -2.1188211581214323E-18, - "CenterOfMassY": -6.381991440124796E-19, - "CenterOfMassZ": 0.0005 - }, - "Box": { - "MinX": -0.05, - "MinY": -0.02600000000000009, - "MinZ": -0.025000000000000095, - "MaxX": 0.05, - "MaxY": -0.024999999999999915, - "MaxZ": 0.024999999999999915 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2", - "Children": [ - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/6355015-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/formed hex screw_am-2", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/formed hex screw_am-3", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, - "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, - "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, - "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} - }, - "Equations": { - "D3@Sketch1": 15.0, - "D4@Sketch1": 15.0, - "D5@Sketch1": 15.0, - "Thread_minor@ThreadCosmetic": 17.252, - "D1@Sketch3": 15.0, - "D1@Sketch5": 15.0, - "Head_ch_ang@Sketch5": 30.000000000000206, - "D1@Sketch4": 30.0, - "D1@Sketch6": 26.25, - "D1@Indent": 1.61, - "Thread_length@ThreadCosmetic": 27.5, - "Thread_minor@ThdSchSke": 17.252, - "Diameter@ThdSchSke": 20.0, - "Overcut@ThdSchSke": 25.0, - "Start@ThdSchSke": 15.380000000000003, - "Num_threads@ThdSchPat": 10.0, - "Advance@ThdSchPat": 2.75 - }, - "Mass": { - "Mass": 0.018448476549526794, - "Density": 1000.0000000000001, - "Volume": 1.8448476549526793E-05, - "SurfaceArea": 0.004817801875137061, - "CenterOfMassX": 0.01753955213482699, - "CenterOfMassY": -9.082730693577985E-06, - "CenterOfMassZ": -1.5685995711674708E-06 - }, - "Box": { - "MinX": -0.04699999999999998, - "MinY": 0.01172649730810373, - "MinZ": -0.030150000000000014, - "MaxX": -0.03699999999999997, - "MaxY": 0.023273502691896264, - "MaxZ": 0.003999999999999986 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/hex nut jam_am-1", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.4.5M - Hex jam nut, M6 x 1 --D-N": {} - }, - "Equations": { - "D2@BaseNutSke": 5.0, - "D3@BaseNutSke": 5.0, - "D1@Sketch3": 5.0, - "D1@Sketch4": 5.0, - "D4@BaseNutSke": 5.0, - "Thread_major@ThdSchSke": 6.0, - "Tap_Drill@ThdSchSke": 5.0, - "OverCut@ThdSchSke": 2.5, - "Num_threads@ThdSchPat": 0.0, - "Advance@ThdSchPat": 0.7873, - "ThreadMajor@Sketch5": 3.0, - "ChamferDepth@Sketch5": 0.5499999999999999, - "Offset1@Sketch5": 3.2254, - "Offset2@Sketch5": 3.2762000000000002 - }, - "Mass": { - "Mass": 0.00020897265062795267, - "Density": 1000.0, - "Volume": 2.0897265062795267E-07, - "SurfaceArea": 0.0002798294711277528, - "CenterOfMassX": 4.060604266497328E-19, - "CenterOfMassY": 2.5991347688293234E-09, - "CenterOfMassZ": -0.0015985116157014817 - }, - "Box": { - "MinX": -0.046999999999999986, - "MinY": 0.011726497308103722, - "MinZ": 0.003999999999999983, - "MaxX": -0.03699999999999998, - "MaxY": 0.02327350269189628, - "MaxZ": 0.007199999999999991 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/formed hex screw_am-4", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, - "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, - "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, - "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} - }, - "Equations": { - "D3@Sketch1": 15.0, - "D4@Sketch1": 15.0, - "D5@Sketch1": 15.0, - "Thread_minor@ThreadCosmetic": 17.252, - "D1@Sketch3": 15.0, - "D1@Sketch5": 15.0, - "Head_ch_ang@Sketch5": 30.000000000000206, - "D1@Sketch4": 30.0, - "D1@Sketch6": 26.25, - "D1@Indent": 1.61, - "Thread_length@ThreadCosmetic": 27.5, - "Thread_minor@ThdSchSke": 17.252, - "Diameter@ThdSchSke": 20.0, - "Overcut@ThdSchSke": 25.0, - "Start@ThdSchSke": 15.380000000000003, - "Num_threads@ThdSchPat": 10.0, - "Advance@ThdSchPat": 2.75 - }, - "Mass": { - "Mass": 0.018448476549526794, - "Density": 1000.0000000000001, - "Volume": 1.8448476549526793E-05, - "SurfaceArea": 0.004817801875137061, - "CenterOfMassX": 0.01753955213482699, - "CenterOfMassY": -9.082730693577985E-06, - "CenterOfMassZ": -1.5685995711674708E-06 - }, - "Box": { - "MinX": -0.046999999999999965, - "MinY": -0.023273502691896264, - "MinZ": -0.030150000000000014, - "MaxX": -0.03699999999999996, - "MaxY": -0.01172649730810373, - "MaxZ": 0.003999999999999986 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/hex nut jam_am-2", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.4.5M - Hex jam nut, M6 x 1 --D-N": {} - }, - "Equations": { - "D2@BaseNutSke": 5.0, - "D3@BaseNutSke": 5.0, - "D1@Sketch3": 5.0, - "D1@Sketch4": 5.0, - "D4@BaseNutSke": 5.0, - "Thread_major@ThdSchSke": 6.0, - "Tap_Drill@ThdSchSke": 5.0, - "OverCut@ThdSchSke": 2.5, - "Num_threads@ThdSchPat": 0.0, - "Advance@ThdSchPat": 0.7873, - "ThreadMajor@Sketch5": 3.0, - "ChamferDepth@Sketch5": 0.5499999999999999, - "Offset1@Sketch5": 3.2254, - "Offset2@Sketch5": 3.2762000000000002 - }, - "Mass": { - "Mass": 0.00020897265062795267, - "Density": 1000.0, - "Volume": 2.0897265062795267E-07, - "SurfaceArea": 0.0002798294711277528, - "CenterOfMassX": 4.060604266497328E-19, - "CenterOfMassY": 2.5991347688293234E-09, - "CenterOfMassZ": -0.0015985116157014817 - }, - "Box": { - "MinX": -0.04699999999999997, - "MinY": -0.02327350269189628, - "MinZ": 0.00399999999999999, - "MaxX": -0.036999999999999963, - "MaxY": -0.011726497308103722, - "MaxZ": 0.007199999999999998 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - } - ], - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\Fasteners-M6.SLDASM", - "Parent": null, - "Properties": { - "Swivel-M6": {}, - "2xM8": {} - }, - "Equations": {}, - "Mass": { - "Mass": 0.0027551470639894, - "Density": 999.9999999999999, - "Volume": 2.7551470639894004E-06, - "SurfaceArea": 0.0023286938765703785, - "CenterOfMassX": 7.520514186491824E-07, - "CenterOfMassY": 0.07332721044234486, - "CenterOfMassZ": -0.03138646730666885 - }, - "Box": { - "MinX": -0.046999999999999986, - "MinY": -0.023273502691896278, - "MinZ": -0.030150000000000017, - "MaxX": -0.036999999999999963, - "MaxY": 0.023273502691896278, - "MaxZ": 0.007199999999999998 - }, - "Material": { - "formed hex screw_am-3": "", - "hex nut jam_am-1": "", - "formed hex screw_am-4": "", - "hex nut jam_am-2": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/6355015-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", - "Parent": null, - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/formed hex screw_am-2", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "Parent": null, - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/formed hex screw_am-3", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "Parent": null, - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, - "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, - "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, - "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} - }, - "Equations": { - "D3@Sketch1": 15.0, - "D4@Sketch1": 15.0, - "D5@Sketch1": 15.0, - "Thread_minor@ThreadCosmetic": 17.252, - "D1@Sketch3": 15.0, - "D1@Sketch5": 15.0, - "Head_ch_ang@Sketch5": 30.000000000000206, - "D1@Sketch4": 30.0, - "D1@Sketch6": 26.25, - "D1@Indent": 1.61, - "Thread_length@ThreadCosmetic": 27.5, - "Thread_minor@ThdSchSke": 17.252, - "Diameter@ThdSchSke": 20.0, - "Overcut@ThdSchSke": 25.0, - "Start@ThdSchSke": 15.380000000000003, - "Num_threads@ThdSchPat": 10.0, - "Advance@ThdSchPat": 2.75 - }, - "Mass": { - "Mass": 0.018448476549526794, - "Density": 1000.0000000000001, - "Volume": 1.8448476549526793E-05, - "SurfaceArea": 0.004817801875137061, - "CenterOfMassX": 0.01753955213482699, - "CenterOfMassY": -9.082730693577985E-06, - "CenterOfMassZ": -1.5685995711674708E-06 - }, - "Box": { - "MinX": -0.04699999999999998, - "MinY": 0.01172649730810373, - "MinZ": -0.030150000000000014, - "MaxX": -0.03699999999999997, - "MaxY": 0.023273502691896264, - "MaxZ": 0.003999999999999986 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/hex nut jam_am-1", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", - "Parent": null, - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.4.5M - Hex jam nut, M6 x 1 --D-N": {} - }, - "Equations": { - "D2@BaseNutSke": 5.0, - "D3@BaseNutSke": 5.0, - "D1@Sketch3": 5.0, - "D1@Sketch4": 5.0, - "D4@BaseNutSke": 5.0, - "Thread_major@ThdSchSke": 6.0, - "Tap_Drill@ThdSchSke": 5.0, - "OverCut@ThdSchSke": 2.5, - "Num_threads@ThdSchPat": 0.0, - "Advance@ThdSchPat": 0.7873, - "ThreadMajor@Sketch5": 3.0, - "ChamferDepth@Sketch5": 0.5499999999999999, - "Offset1@Sketch5": 3.2254, - "Offset2@Sketch5": 3.2762000000000002 - }, - "Mass": { - "Mass": 0.00020897265062795267, - "Density": 1000.0, - "Volume": 2.0897265062795267E-07, - "SurfaceArea": 0.0002798294711277528, - "CenterOfMassX": 4.060604266497328E-19, - "CenterOfMassY": 2.5991347688293234E-09, - "CenterOfMassZ": -0.0015985116157014817 - }, - "Box": { - "MinX": -0.046999999999999986, - "MinY": 0.011726497308103722, - "MinZ": 0.003999999999999983, - "MaxX": -0.03699999999999998, - "MaxY": 0.02327350269189628, - "MaxZ": 0.007199999999999991 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/formed hex screw_am-4", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "Parent": null, - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, - "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, - "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, - "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} - }, - "Equations": { - "D3@Sketch1": 15.0, - "D4@Sketch1": 15.0, - "D5@Sketch1": 15.0, - "Thread_minor@ThreadCosmetic": 17.252, - "D1@Sketch3": 15.0, - "D1@Sketch5": 15.0, - "Head_ch_ang@Sketch5": 30.000000000000206, - "D1@Sketch4": 30.0, - "D1@Sketch6": 26.25, - "D1@Indent": 1.61, - "Thread_length@ThreadCosmetic": 27.5, - "Thread_minor@ThdSchSke": 17.252, - "Diameter@ThdSchSke": 20.0, - "Overcut@ThdSchSke": 25.0, - "Start@ThdSchSke": 15.380000000000003, - "Num_threads@ThdSchPat": 10.0, - "Advance@ThdSchPat": 2.75 - }, - "Mass": { - "Mass": 0.018448476549526794, - "Density": 1000.0000000000001, - "Volume": 1.8448476549526793E-05, - "SurfaceArea": 0.004817801875137061, - "CenterOfMassX": 0.01753955213482699, - "CenterOfMassY": -9.082730693577985E-06, - "CenterOfMassZ": -1.5685995711674708E-06 - }, - "Box": { - "MinX": -0.046999999999999965, - "MinY": -0.023273502691896264, - "MinZ": -0.030150000000000014, - "MaxX": -0.03699999999999996, - "MaxY": -0.01172649730810373, - "MaxZ": 0.003999999999999986 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/hex nut jam_am-2", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", - "Parent": null, - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.4.5M - Hex jam nut, M6 x 1 --D-N": {} - }, - "Equations": { - "D2@BaseNutSke": 5.0, - "D3@BaseNutSke": 5.0, - "D1@Sketch3": 5.0, - "D1@Sketch4": 5.0, - "D4@BaseNutSke": 5.0, - "Thread_major@ThdSchSke": 6.0, - "Tap_Drill@ThdSchSke": 5.0, - "OverCut@ThdSchSke": 2.5, - "Num_threads@ThdSchPat": 0.0, - "Advance@ThdSchPat": 0.7873, - "ThreadMajor@Sketch5": 3.0, - "ChamferDepth@Sketch5": 0.5499999999999999, - "Offset1@Sketch5": 3.2254, - "Offset2@Sketch5": 3.2762000000000002 - }, - "Mass": { - "Mass": 0.00020897265062795267, - "Density": 1000.0, - "Volume": 2.0897265062795267E-07, - "SurfaceArea": 0.0002798294711277528, - "CenterOfMassX": 4.060604266497328E-19, - "CenterOfMassY": 2.5991347688293234E-09, - "CenterOfMassZ": -0.0015985116157014817 - }, - "Box": { - "MinX": -0.04699999999999997, - "MinY": -0.02327350269189628, - "MinZ": 0.00399999999999999, - "MaxX": -0.036999999999999963, - "MaxY": -0.011726497308103722, - "MaxZ": 0.007199999999999998 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/20-40-100_WasherM6_x4_1mm_INOX-3", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\20-40-100_WasherM6_x4_1mm_INOX.SLDPRT", - "Parent": null, - "Properties": { - "Default": {} - }, - "Equations": {}, - "Mass": { - "Mass": 0.0007406922613335518, - "Density": 1000.0, - "Volume": 7.406922613335519E-07, - "SurfaceArea": 0.0016499951383480782, - "CenterOfMassX": -3.8388862744855453E-19, - "CenterOfMassY": -3.8388862744855453E-19, - "CenterOfMassZ": 0.0005 - }, - "Box": { - "MinX": -0.04999999999999997, - "MinY": -0.02499999999999991, - "MinZ": 0.02499999999999992, - "MaxX": -0.03399999999999997, - "MaxY": 0.0250000000000001, - "MaxZ": 0.026000000000000096 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/20-40-100_WasherM6_x4_1mm_INOX-4", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\20-40-100_WasherM6_x4_1mm_INOX.SLDPRT", - "Parent": null, - "Properties": { - "Default": {} - }, - "Equations": {}, - "Mass": { - "Mass": 0.0007406922613335518, - "Density": 1000.0, - "Volume": 7.406922613335519E-07, - "SurfaceArea": 0.0016499951383480782, - "CenterOfMassX": -3.8388862744855453E-19, - "CenterOfMassY": -3.8388862744855453E-19, - "CenterOfMassZ": 0.0005 - }, - "Box": { - "MinX": 0.03399999999999997, - "MinY": -0.02499999999999991, - "MinZ": 0.024999999999999918, - "MaxX": 0.04999999999999997, - "MaxY": 0.0250000000000001, - "MaxZ": 0.026000000000000092 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/SlideSingle-20ID-50D-50W-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideSingle-20ID-50D-50W.SLDPRT", - "Parent": null, - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Test-Body-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-40\\Test-Body.SLDPRT", - "Parent": null, - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-50H-100W-1/Stock-120-60-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-40\\Stock-120-60.SLDPRT", - "Parent": null, - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, { "Name": "Nema23-1", "Children": [ { - "Name": "Nema23-1/pan head cross recess screw_iso-4", + "Name": "Nema23-1/pan head cross recess screw_iso-1", "Children": null, "Path": "c:\\solidworks data (2)\\browser\\iso\\bolts and screws\\cross-recessed head screws\\pan head cross recess screw_iso.sldprt", "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\servos\\nema23\\default\\cad\\Nema23.SLDASM", @@ -2620,16 +207,16 @@ "Volume": 2.5700640192777437E-07, "SurfaceArea": 0.0003704816726620429, "CenterOfMassX": 0.014609978760297177, - "CenterOfMassY": 5.98106536098062E-13, - "CenterOfMassZ": -1.6309008876002757E-11 + "CenterOfMassY": 5.981065359016192E-13, + "CenterOfMassZ": -1.63090088793914E-11 }, "Box": { - "MinX": 0.02103799711071043, + "MinX": -0.030264773497787247, "MinY": 0.028245795120089588, - "MinZ": 0.011543074584737231, - "MaxX": 0.026678459874845566, + "MinZ": 0.011440303976239671, + "MaxX": -0.024418769516656825, "MaxY": 0.060599999999999966, - "MaxZ": 0.01718353734887248 + "MaxZ": 0.017286307957370208 }, "Material": { "Material": "", @@ -2653,21 +240,21 @@ }, "Equations": {}, "Mass": { - "Mass": 0.21597980822069154, + "Mass": 0.21597980822069157, "Density": 1000.0000000000001, - "Volume": 0.00021597980822069153, + "Volume": 0.00021597980822069156, "SurfaceArea": 0.026522022664107133, - "CenterOfMassX": -1.1131821965511205E-05, - "CenterOfMassY": -5.684654664240791E-07, - "CenterOfMassZ": 0.03740612065587373 + "CenterOfMassX": -1.1131821965511203E-05, + "CenterOfMassY": -5.684654664248107E-07, + "CenterOfMassZ": 0.03740612065587374 }, "Box": { "MinX": -0.04024177150722201, "MinY": 0.0065999999999999115, - "MinZ": -0.029636694033195465, + "MinZ": -0.029636694033195375, "MaxX": 0.026758228492777994, "MaxY": 0.10360000000000011, - "MaxZ": 0.027363305966805106 + "MaxZ": 0.027363305966805196 }, "Material": { "Material": "", @@ -2711,16 +298,69 @@ "Volume": 2.5700640192777437E-07, "SurfaceArea": 0.0003704816726620429, "CenterOfMassX": 0.014609978760297177, - "CenterOfMassY": 5.98106536098062E-13, - "CenterOfMassZ": -1.6309008876002757E-11 + "CenterOfMassY": 5.981065359016192E-13, + "CenterOfMassZ": -1.63090088793914E-11 }, "Box": { "MinX": 0.021055918035890065, "MinY": 0.0282457951200897, - "MinZ": -0.01943900449008317, + "MinZ": -0.01943900449008308, "MaxX": 0.026660538949665937, "MaxY": 0.06060000000000008, - "MaxZ": -0.013834383576307188 + "MaxZ": -0.013834383576307098 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "Nema23-1/pan head cross recess screw_iso-4", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\iso\\bolts and screws\\cross-recessed head screws\\pan head cross recess screw_iso.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\servos\\nema23\\default\\cad\\Nema23.SLDASM", + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "ISO 7045 - M2 x 4 - Z --- 4N": {}, + "ISO 7045 - M3 x 30 - Z - 30N": {} + }, + "Equations": { + "D1@Sketch3": 1.4, + "D2@Sketch3": 0.37, + "Depth@RecCorSke": 1.75, + "D1@Sketch4": 0.74, + "D2@Sketch4": 1.0549646636378625, + "D3@Sketch4": 0.37, + "D4@Sketch4": 0.527482331818931, + "Thread_length@ThreadCosmetic": 29.0, + "Thread_minor@ThdSchSke": 2.439, + "Diameter@ThdSchSke": 3.0, + "Overcut@ThdSchSke": 3.75, + "Start@ThdSchSke": 3.3999999999999986, + "Num_threads@ThdSchPat": 59.0, + "Advance@ThdSchPat": 0.5 + }, + "Mass": { + "Mass": 0.0002570064019277744, + "Density": 1000.0, + "Volume": 2.5700640192777437E-07, + "SurfaceArea": 0.0003704816726620429, + "CenterOfMassX": 0.014609978760297177, + "CenterOfMassY": 5.981065359016192E-13, + "CenterOfMassZ": -1.63090088793914E-11 + }, + "Box": { + "MinX": 0.02103799711071043, + "MinY": 0.028245795120089588, + "MinZ": 0.011543074584737321, + "MaxX": 0.026678459874845566, + "MaxY": 0.060599999999999966, + "MaxZ": 0.017183537348872572 }, "Material": { "Material": "", @@ -2764,69 +404,16 @@ "Volume": 2.5700640192777437E-07, "SurfaceArea": 0.0003704816726620429, "CenterOfMassX": 0.014609978760297177, - "CenterOfMassY": 5.98106536098062E-13, - "CenterOfMassZ": -1.6309008876002757E-11 + "CenterOfMassY": 5.981065359016192E-13, + "CenterOfMassZ": -1.63090088793914E-11 }, "Box": { "MinX": -0.030159434964806865, "MinY": 0.0282457951200897, - "MinZ": -0.01945435749078007, + "MinZ": -0.01945435749077998, "MaxX": -0.024524108049637193, "MaxY": 0.06060000000000008, - "MaxZ": -0.013819030575610288 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "Nema23-1/pan head cross recess screw_iso-1", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\iso\\bolts and screws\\cross-recessed head screws\\pan head cross recess screw_iso.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\servos\\nema23\\default\\cad\\Nema23.SLDASM", - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "ISO 7045 - M2 x 4 - Z --- 4N": {}, - "ISO 7045 - M3 x 30 - Z - 30N": {} - }, - "Equations": { - "D1@Sketch3": 1.4, - "D2@Sketch3": 0.37, - "Depth@RecCorSke": 1.75, - "D1@Sketch4": 0.74, - "D2@Sketch4": 1.0549646636378625, - "D3@Sketch4": 0.37, - "D4@Sketch4": 0.527482331818931, - "Thread_length@ThreadCosmetic": 29.0, - "Thread_minor@ThdSchSke": 2.439, - "Diameter@ThdSchSke": 3.0, - "Overcut@ThdSchSke": 3.75, - "Start@ThdSchSke": 3.3999999999999986, - "Num_threads@ThdSchPat": 59.0, - "Advance@ThdSchPat": 0.5 - }, - "Mass": { - "Mass": 0.0002570064019277744, - "Density": 1000.0, - "Volume": 2.5700640192777437E-07, - "SurfaceArea": 0.0003704816726620429, - "CenterOfMassX": 0.014609978760297177, - "CenterOfMassY": 5.98106536098062E-13, - "CenterOfMassZ": -1.6309008876002757E-11 - }, - "Box": { - "MinX": -0.030264773497787247, - "MinY": 0.028245795120089588, - "MinZ": 0.011440303976239581, - "MaxX": -0.024418769516656825, - "MaxY": 0.060599999999999966, - "MaxZ": 0.017286307957370118 + "MaxZ": -0.013819030575610198 }, "Material": { "Material": "", @@ -2849,24 +436,24 @@ "Density": 1000.0000000000001, "Volume": 0.0002170078338284026, "SurfaceArea": 0.028003949354755305, - "CenterOfMassX": -0.0017528505946941507, + "CenterOfMassX": -0.0017528505946941503, "CenterOfMassY": 0.0011361282607055807, "CenterOfMassZ": 0.13430097144598613 }, "Box": { "MinX": -0.04024177150722201, "MinY": 0.006599999999999898, - "MinZ": -0.02963669403319547, + "MinZ": -0.029636694033195375, "MaxX": 0.026758228492777994, "MaxY": 0.10360000000000012, - "MaxZ": 0.027363305966805102 + "MaxZ": 0.027363305966805196 }, "Material": { - "pan head cross recess screw_iso-4": "", + "pan head cross recess screw_iso-1": "", "Body_nema23_23HS30-2804S-1": "", "pan head cross recess screw_iso-2": "", - "pan head cross recess screw_iso-3": "", - "pan head cross recess screw_iso-1": "" + "pan head cross recess screw_iso-4": "", + "pan head cross recess screw_iso-3": "" }, "States": {}, "LaserParts": null, @@ -2874,7 +461,7 @@ "activeConfiguration": null }, { - "Name": "Nema23-1/pan head cross recess screw_iso-4", + "Name": "Nema23-1/pan head cross recess screw_iso-1", "Children": null, "Path": "c:\\solidworks data (2)\\browser\\iso\\bolts and screws\\cross-recessed head screws\\pan head cross recess screw_iso.sldprt", "Parent": null, @@ -2906,16 +493,16 @@ "Volume": 2.5700640192777437E-07, "SurfaceArea": 0.0003704816726620429, "CenterOfMassX": 0.014609978760297177, - "CenterOfMassY": 5.98106536098062E-13, - "CenterOfMassZ": -1.6309008876002757E-11 + "CenterOfMassY": 5.981065359016192E-13, + "CenterOfMassZ": -1.63090088793914E-11 }, "Box": { - "MinX": 0.02103799711071043, + "MinX": -0.030264773497787247, "MinY": 0.028245795120089588, - "MinZ": 0.011543074584737231, - "MaxX": 0.026678459874845566, + "MinZ": 0.011440303976239671, + "MaxX": -0.024418769516656825, "MaxY": 0.060599999999999966, - "MaxZ": 0.01718353734887248 + "MaxZ": 0.017286307957370208 }, "Material": { "Material": "", @@ -2939,21 +526,21 @@ }, "Equations": {}, "Mass": { - "Mass": 0.21597980822069154, + "Mass": 0.21597980822069157, "Density": 1000.0000000000001, - "Volume": 0.00021597980822069153, + "Volume": 0.00021597980822069156, "SurfaceArea": 0.026522022664107133, - "CenterOfMassX": -1.1131821965511205E-05, - "CenterOfMassY": -5.684654664240791E-07, - "CenterOfMassZ": 0.03740612065587373 + "CenterOfMassX": -1.1131821965511203E-05, + "CenterOfMassY": -5.684654664248107E-07, + "CenterOfMassZ": 0.03740612065587374 }, "Box": { "MinX": -0.04024177150722201, "MinY": 0.0065999999999999115, - "MinZ": -0.029636694033195465, + "MinZ": -0.029636694033195375, "MaxX": 0.026758228492777994, "MaxY": 0.10360000000000011, - "MaxZ": 0.027363305966805106 + "MaxZ": 0.027363305966805196 }, "Material": { "Material": "", @@ -2997,16 +584,69 @@ "Volume": 2.5700640192777437E-07, "SurfaceArea": 0.0003704816726620429, "CenterOfMassX": 0.014609978760297177, - "CenterOfMassY": 5.98106536098062E-13, - "CenterOfMassZ": -1.6309008876002757E-11 + "CenterOfMassY": 5.981065359016192E-13, + "CenterOfMassZ": -1.63090088793914E-11 }, "Box": { "MinX": 0.021055918035890065, "MinY": 0.0282457951200897, - "MinZ": -0.01943900449008317, + "MinZ": -0.01943900449008308, "MaxX": 0.026660538949665937, "MaxY": 0.06060000000000008, - "MaxZ": -0.013834383576307188 + "MaxZ": -0.013834383576307098 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "Nema23-1/pan head cross recess screw_iso-4", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\iso\\bolts and screws\\cross-recessed head screws\\pan head cross recess screw_iso.sldprt", + "Parent": null, + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "ISO 7045 - M2 x 4 - Z --- 4N": {}, + "ISO 7045 - M3 x 30 - Z - 30N": {} + }, + "Equations": { + "D1@Sketch3": 1.4, + "D2@Sketch3": 0.37, + "Depth@RecCorSke": 1.75, + "D1@Sketch4": 0.74, + "D2@Sketch4": 1.0549646636378625, + "D3@Sketch4": 0.37, + "D4@Sketch4": 0.527482331818931, + "Thread_length@ThreadCosmetic": 29.0, + "Thread_minor@ThdSchSke": 2.439, + "Diameter@ThdSchSke": 3.0, + "Overcut@ThdSchSke": 3.75, + "Start@ThdSchSke": 3.3999999999999986, + "Num_threads@ThdSchPat": 59.0, + "Advance@ThdSchPat": 0.5 + }, + "Mass": { + "Mass": 0.0002570064019277744, + "Density": 1000.0, + "Volume": 2.5700640192777437E-07, + "SurfaceArea": 0.0003704816726620429, + "CenterOfMassX": 0.014609978760297177, + "CenterOfMassY": 5.981065359016192E-13, + "CenterOfMassZ": -1.63090088793914E-11 + }, + "Box": { + "MinX": 0.02103799711071043, + "MinY": 0.028245795120089588, + "MinZ": 0.011543074584737321, + "MaxX": 0.026678459874845566, + "MaxY": 0.060599999999999966, + "MaxZ": 0.017183537348872572 }, "Material": { "Material": "", @@ -3050,16 +690,16 @@ "Volume": 2.5700640192777437E-07, "SurfaceArea": 0.0003704816726620429, "CenterOfMassX": 0.014609978760297177, - "CenterOfMassY": 5.98106536098062E-13, - "CenterOfMassZ": -1.6309008876002757E-11 + "CenterOfMassY": 5.981065359016192E-13, + "CenterOfMassZ": -1.63090088793914E-11 }, "Box": { "MinX": -0.030159434964806865, "MinY": 0.0282457951200897, - "MinZ": -0.01945435749078007, + "MinZ": -0.01945435749077998, "MaxX": -0.024524108049637193, "MaxY": 0.06060000000000008, - "MaxZ": -0.013819030575610288 + "MaxZ": -0.013819030575610198 }, "Material": { "Material": "", @@ -3071,48 +711,1214 @@ "activeConfiguration": null }, { - "Name": "Nema23-1/pan head cross recess screw_iso-1", + "Name": "SlideDual-20ID-60H-120W-1", + "Children": [ + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2", + "Children": [ + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/formed hex screw_am-4", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, + "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, + "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, + "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} + }, + "Equations": { + "D3@Sketch1": 15.0, + "D4@Sketch1": 15.0, + "D5@Sketch1": 15.0, + "Thread_minor@ThreadCosmetic": 17.252, + "D1@Sketch3": 15.0, + "D1@Sketch5": 15.0, + "Head_ch_ang@Sketch5": 30.000000000000206, + "D1@Sketch4": 30.0, + "D1@Sketch6": 26.25, + "D1@Indent": 1.61, + "Thread_length@ThreadCosmetic": 27.5, + "Thread_minor@ThdSchSke": 17.252, + "Diameter@ThdSchSke": 20.0, + "Overcut@ThdSchSke": 25.0, + "Start@ThdSchSke": 15.380000000000003, + "Num_threads@ThdSchPat": 10.0, + "Advance@ThdSchPat": 2.75 + }, + "Mass": { + "Mass": 0.018448476549526794, + "Density": 1000.0000000000001, + "Volume": 1.8448476549526793E-05, + "SurfaceArea": 0.004817801875137061, + "CenterOfMassX": 0.01753955213482699, + "CenterOfMassY": -9.082730693577895E-06, + "CenterOfMassZ": -1.5685995711674357E-06 + }, + "Box": { + "MinX": -0.057000000000000016, + "MinY": 0.011726497308103717, + "MinZ": -0.03515, + "MaxX": -0.04700000000000001, + "MaxY": 0.02327350269189625, + "MaxZ": -0.0010000000000000009 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/hex nut jam_am-1", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.4.5M - Hex jam nut, M6 x 1 --D-N": {} + }, + "Equations": { + "D2@BaseNutSke": 5.0, + "D3@BaseNutSke": 5.0, + "D1@Sketch3": 5.0, + "D1@Sketch4": 5.0, + "D4@BaseNutSke": 5.0, + "Thread_major@ThdSchSke": 6.0, + "Tap_Drill@ThdSchSke": 5.0, + "OverCut@ThdSchSke": 2.5, + "Num_threads@ThdSchPat": 0.0, + "Advance@ThdSchPat": 0.7873, + "ThreadMajor@Sketch5": 3.0, + "ChamferDepth@Sketch5": 0.5499999999999999, + "Offset1@Sketch5": 3.2254, + "Offset2@Sketch5": 3.2762000000000002 + }, + "Mass": { + "Mass": 0.00020897265062795264, + "Density": 1000.0, + "Volume": 2.0897265062795264E-07, + "SurfaceArea": 0.0002798294711277528, + "CenterOfMassX": 4.848209432870686E-19, + "CenterOfMassY": 2.5991347688215926E-09, + "CenterOfMassZ": -0.0015985116157014817 + }, + "Box": { + "MinX": -0.056999999999999995, + "MinY": -0.023273502691896295, + "MinZ": -0.0010000000000000009, + "MaxX": -0.046999999999999986, + "MaxY": -0.011726497308103736, + "MaxZ": 0.0022000000000000075 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/hex nut jam_am-2", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/formed hex screw_am-2", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/6355015-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/formed hex screw_am-3", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, + "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, + "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, + "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} + }, + "Equations": { + "D3@Sketch1": 15.0, + "D4@Sketch1": 15.0, + "D5@Sketch1": 15.0, + "Thread_minor@ThreadCosmetic": 17.252, + "D1@Sketch3": 15.0, + "D1@Sketch5": 15.0, + "Head_ch_ang@Sketch5": 30.000000000000206, + "D1@Sketch4": 30.0, + "D1@Sketch6": 26.25, + "D1@Indent": 1.61, + "Thread_length@ThreadCosmetic": 27.5, + "Thread_minor@ThdSchSke": 17.252, + "Diameter@ThdSchSke": 20.0, + "Overcut@ThdSchSke": 25.0, + "Start@ThdSchSke": 15.380000000000003, + "Num_threads@ThdSchPat": 10.0, + "Advance@ThdSchPat": 2.75 + }, + "Mass": { + "Mass": 0.018448476549526794, + "Density": 1000.0000000000001, + "Volume": 1.8448476549526793E-05, + "SurfaceArea": 0.004817801875137061, + "CenterOfMassX": 0.01753955213482699, + "CenterOfMassY": -9.082730693577895E-06, + "CenterOfMassZ": -1.5685995711674357E-06 + }, + "Box": { + "MinX": -0.057, + "MinY": -0.023273502691896278, + "MinZ": -0.03515, + "MaxX": -0.04699999999999999, + "MaxY": -0.011726497308103745, + "MaxZ": -0.0010000000000000009 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + } + ], + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60H-120W.SLDASM", + "Properties": { + "Swivel-M6": {}, + "2xM8": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.002546174413361448, + "Density": 999.9999999999999, + "Volume": 2.546174413361448E-06, + "SurfaceArea": 0.0020488644054426257, + "CenterOfMassX": 8.137746759176258E-07, + "CenterOfMassY": 0.0718905720500137, + "CenterOfMassZ": -0.03287032743612125 + }, + "Box": { + "MinX": -0.05700000000000001, + "MinY": -0.023273502691896306, + "MinZ": -0.035149999999999994, + "MaxX": -0.046999999999999986, + "MaxY": 0.02327350269189625, + "MaxZ": 0.0022000000000000075 + }, + "Material": { + "formed hex screw_am-4": "", + "hex nut jam_am-1": "", + "formed hex screw_am-3": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/20-60-120_WasherM6_x4_1mm_INOX-4", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60H-120W.SLDASM", + "Properties": { + "Default": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.0007406922613335518, + "Density": 1000.0, + "Volume": 7.406922613335519E-07, + "SurfaceArea": 0.0016499951383480782, + "CenterOfMassX": -2.617422459876508E-19, + "CenterOfMassY": -3.8388862744855453E-19, + "CenterOfMassZ": 0.0005 + }, + "Box": { + "MinX": 0.044, + "MinY": -0.024999999999999897, + "MinZ": 0.02999999999999991, + "MaxX": 0.06, + "MaxY": 0.025000000000000112, + "MaxZ": 0.031000000000000083 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/20-60-120_WasherM6_x4_1mm_INOX-5", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60H-120W.SLDASM", + "Properties": { + "Default": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.0007406922613335518, + "Density": 1000.0, + "Volume": 7.406922613335519E-07, + "SurfaceArea": 0.0016499951383480782, + "CenterOfMassX": -2.617422459876508E-19, + "CenterOfMassY": -3.8388862744855453E-19, + "CenterOfMassZ": 0.0005 + }, + "Box": { + "MinX": -0.06, + "MinY": -0.024999999999999897, + "MinZ": -0.031000000000000083, + "MaxX": -0.044, + "MaxY": 0.025000000000000112, + "MaxZ": -0.02999999999999991 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/20-60-120_WasherM6_x4_1mm_INOX-6", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60H-120W.SLDASM", + "Properties": { + "Default": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.0007406922613335518, + "Density": 1000.0, + "Volume": 7.406922613335519E-07, + "SurfaceArea": 0.0016499951383480782, + "CenterOfMassX": -2.617422459876508E-19, + "CenterOfMassY": -3.8388862744855453E-19, + "CenterOfMassZ": 0.0005 + }, + "Box": { + "MinX": -0.06, + "MinY": -0.024999999999999897, + "MinZ": 0.02999999999999991, + "MaxX": -0.044, + "MaxY": 0.025000000000000112, + "MaxZ": 0.031000000000000083 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/20-60-120_Shield_x2_1mm_INOX-2", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_Shield_x2_1mm_INOX.SLDPRT", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60H-120W.SLDASM", + "Properties": { + "Default": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.0061177896933247156, + "Density": 1000.0, + "Volume": 6.117789693324716E-06, + "SurfaceArea": 0.012984048379532454, + "CenterOfMassX": 2.5013676669742918E-18, + "CenterOfMassY": -1.2802608160358285E-18, + "CenterOfMassZ": 0.0005 + }, + "Box": { + "MinX": -0.06, + "MinY": -0.026000000000000106, + "MinZ": -0.030000000000000093, + "MaxX": 0.06, + "MaxY": -0.024999999999999897, + "MaxZ": 0.029999999999999912 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Stock-120-60-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-40\\Stock-120-60.SLDPRT", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60H-120W.SLDASM", + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/SlideDual-20ID-60D-120W-2", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60D-120W.SLDPRT", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60H-120W.SLDASM", + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1", + "Children": [ + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/formed hex screw_am-4", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, + "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, + "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, + "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} + }, + "Equations": { + "D3@Sketch1": 15.0, + "D4@Sketch1": 15.0, + "D5@Sketch1": 15.0, + "Thread_minor@ThreadCosmetic": 17.252, + "D1@Sketch3": 15.0, + "D1@Sketch5": 15.0, + "Head_ch_ang@Sketch5": 30.000000000000206, + "D1@Sketch4": 30.0, + "D1@Sketch6": 26.25, + "D1@Indent": 1.61, + "Thread_length@ThreadCosmetic": 27.5, + "Thread_minor@ThdSchSke": 17.252, + "Diameter@ThdSchSke": 20.0, + "Overcut@ThdSchSke": 25.0, + "Start@ThdSchSke": 15.380000000000003, + "Num_threads@ThdSchPat": 10.0, + "Advance@ThdSchPat": 2.75 + }, + "Mass": { + "Mass": 0.018448476549526794, + "Density": 1000.0000000000001, + "Volume": 1.8448476549526793E-05, + "SurfaceArea": 0.004817801875137061, + "CenterOfMassX": 0.01753955213482699, + "CenterOfMassY": -9.082730693577895E-06, + "CenterOfMassZ": -1.5685995711674357E-06 + }, + "Box": { + "MinX": 0.04699999999999998, + "MinY": 0.011726497308103717, + "MinZ": -0.03515, + "MaxX": 0.05699999999999999, + "MaxY": 0.02327350269189625, + "MaxZ": -0.0010000000000000009 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/hex nut jam_am-1", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.4.5M - Hex jam nut, M6 x 1 --D-N": {} + }, + "Equations": { + "D2@BaseNutSke": 5.0, + "D3@BaseNutSke": 5.0, + "D1@Sketch3": 5.0, + "D1@Sketch4": 5.0, + "D4@BaseNutSke": 5.0, + "Thread_major@ThdSchSke": 6.0, + "Tap_Drill@ThdSchSke": 5.0, + "OverCut@ThdSchSke": 2.5, + "Num_threads@ThdSchPat": 0.0, + "Advance@ThdSchPat": 0.7873, + "ThreadMajor@Sketch5": 3.0, + "ChamferDepth@Sketch5": 0.5499999999999999, + "Offset1@Sketch5": 3.2254, + "Offset2@Sketch5": 3.2762000000000002 + }, + "Mass": { + "Mass": 0.00020897265062795264, + "Density": 1000.0, + "Volume": 2.0897265062795264E-07, + "SurfaceArea": 0.0002798294711277528, + "CenterOfMassX": 4.848209432870686E-19, + "CenterOfMassY": 2.5991347688215926E-09, + "CenterOfMassZ": -0.0015985116157014817 + }, + "Box": { + "MinX": 0.047, + "MinY": -0.023273502691896295, + "MinZ": -0.0010000000000000009, + "MaxX": 0.05700000000000001, + "MaxY": -0.011726497308103736, + "MaxZ": 0.0022000000000000075 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/hex nut jam_am-2", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/formed hex screw_am-2", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/6355015-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/formed hex screw_am-3", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, + "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, + "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, + "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} + }, + "Equations": { + "D3@Sketch1": 15.0, + "D4@Sketch1": 15.0, + "D5@Sketch1": 15.0, + "Thread_minor@ThreadCosmetic": 17.252, + "D1@Sketch3": 15.0, + "D1@Sketch5": 15.0, + "Head_ch_ang@Sketch5": 30.000000000000206, + "D1@Sketch4": 30.0, + "D1@Sketch6": 26.25, + "D1@Indent": 1.61, + "Thread_length@ThreadCosmetic": 27.5, + "Thread_minor@ThdSchSke": 17.252, + "Diameter@ThdSchSke": 20.0, + "Overcut@ThdSchSke": 25.0, + "Start@ThdSchSke": 15.380000000000003, + "Num_threads@ThdSchPat": 10.0, + "Advance@ThdSchPat": 2.75 + }, + "Mass": { + "Mass": 0.018448476549526794, + "Density": 1000.0000000000001, + "Volume": 1.8448476549526793E-05, + "SurfaceArea": 0.004817801875137061, + "CenterOfMassX": 0.01753955213482699, + "CenterOfMassY": -9.082730693577895E-06, + "CenterOfMassZ": -1.5685995711674357E-06 + }, + "Box": { + "MinX": 0.04699999999999999, + "MinY": -0.023273502691896278, + "MinZ": -0.03515, + "MaxX": 0.057, + "MaxY": -0.011726497308103745, + "MaxZ": -0.0010000000000000009 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + } + ], + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60H-120W.SLDASM", + "Properties": { + "Swivel-M6": {}, + "2xM8": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.0025461744133614475, + "Density": 999.9999999999999, + "Volume": 2.5461744133614477E-06, + "SurfaceArea": 0.0020488644054426257, + "CenterOfMassX": 8.137746759176161E-07, + "CenterOfMassY": 0.07189057205001372, + "CenterOfMassZ": -0.032870327436121255 + }, + "Box": { + "MinX": 0.046999999999999986, + "MinY": -0.023273502691896306, + "MinZ": -0.035149999999999994, + "MaxX": 0.05700000000000001, + "MaxY": 0.02327350269189625, + "MaxZ": 0.0022000000000000075 + }, + "Material": { + "formed hex screw_am-4": "", + "hex nut jam_am-1": "", + "formed hex screw_am-3": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Test-Body-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-40\\Test-Body.SLDPRT", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60H-120W.SLDASM", + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/20-60-120_WasherM6_x4_1mm_INOX-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60H-120W.SLDASM", + "Properties": { + "Default": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.0007406922613335518, + "Density": 1000.0, + "Volume": 7.406922613335519E-07, + "SurfaceArea": 0.0016499951383480782, + "CenterOfMassX": -2.617422459876508E-19, + "CenterOfMassY": -3.8388862744855453E-19, + "CenterOfMassZ": 0.0005 + }, + "Box": { + "MinX": 0.044, + "MinY": -0.024999999999999897, + "MinZ": -0.031000000000000083, + "MaxX": 0.06, + "MaxY": 0.025000000000000112, + "MaxZ": -0.02999999999999991 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/20-60-120_Shield_x2_1mm_INOX-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_Shield_x2_1mm_INOX.SLDPRT", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60H-120W.SLDASM", + "Properties": { + "Default": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.0061177896933247156, + "Density": 1000.0, + "Volume": 6.117789693324716E-06, + "SurfaceArea": 0.012984048379532454, + "CenterOfMassX": 2.5013676669742918E-18, + "CenterOfMassY": -1.2802608160358285E-18, + "CenterOfMassZ": 0.0005 + }, + "Box": { + "MinX": -0.06, + "MinY": 0.024999999999999897, + "MinZ": -0.029999999999999912, + "MaxX": 0.06, + "MaxY": 0.026000000000000106, + "MaxZ": 0.030000000000000093 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/SlideSingle-20ID-50D-50W-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideSingle-20ID-50D-50W.SLDPRT", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60H-120W.SLDASM", + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/SlideDual-20ID-60D-120W-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60D-120W.SLDPRT", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60H-120W.SLDASM", + "Properties": { + "SwivelClamp": {}, + "2xM8": { + "Total Bounding Box Length": "120", + "Total Bounding Box Width": "60", + "Total Bounding Box Thickness": "50", + "Total Bounding Box Volume": "360000" + }, + "CAM": { + "Total Bounding Box Length": "120", + "Total Bounding Box Width": "60", + "Total Bounding Box Thickness": "50", + "Total Bounding Box Volume": "360000" + } + }, + "Equations": {}, + "Mass": { + "Mass": 0.29389729863245917, + "Density": 1020.0, + "Volume": 0.00028813460650241096, + "SurfaceArea": 0.0482374907385394, + "CenterOfMassX": 1.7686152673515807E-05, + "CenterOfMassY": 1.1542124860126421E-05, + "CenterOfMassZ": 0.025094494956140044 + }, + "Box": { + "MinX": -0.06, + "MinY": -0.025000000000000105, + "MinZ": -0.030000000000000082, + "MaxX": 0.06, + "MaxY": 0.025000000000000105, + "MaxZ": 0.03000000000000009 + }, + "Material": { + "Material": "ABS", + "Materials": "SOLIDWORKS Materials" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + } + ], + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60H-120W.SLDASM", + "Parent": null, + "Properties": { + "Swivel-M6": {}, + "2xM8": {}, + "CAM": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.3141879958911657, + "Density": 1018.6842391326995, + "Volume": 0.00030842530376111747, + "SurfaceArea": 0.0849032968618819, + "CenterOfMassX": 1.6557145996964065E-05, + "CenterOfMassY": -0.00011174790774820135, + "CenterOfMassZ": -0.0002965402238220672 + }, + "Box": { + "MinX": -0.06, + "MinY": -0.026000000000000106, + "MinZ": -0.03515, + "MaxX": 0.06, + "MaxY": 0.026000000000000106, + "MaxZ": 0.031000000000000083 + }, + "Material": { + "Fasteners-M6-2/formed hex screw_am-4": "", + "Fasteners-M6-2/hex nut jam_am-1": "", + "Fasteners-M6-2/formed hex screw_am-3": "", + "20-60-120_WasherM6_x4_1mm_INOX-4": "", + "20-60-120_WasherM6_x4_1mm_INOX-5": "", + "20-60-120_WasherM6_x4_1mm_INOX-6": "", + "20-60-120_Shield_x2_1mm_INOX-2": "", + "Fasteners-M6-1/formed hex screw_am-4": "", + "Fasteners-M6-1/hex nut jam_am-1": "", + "Fasteners-M6-1/formed hex screw_am-3": "", + "20-60-120_WasherM6_x4_1mm_INOX-1": "", + "20-60-120_Shield_x2_1mm_INOX-1": "", + "SlideDual-20ID-60D-120W-1": "ABS" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2", + "Children": [ + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/formed hex screw_am-4", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, + "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, + "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, + "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} + }, + "Equations": { + "D3@Sketch1": 15.0, + "D4@Sketch1": 15.0, + "D5@Sketch1": 15.0, + "Thread_minor@ThreadCosmetic": 17.252, + "D1@Sketch3": 15.0, + "D1@Sketch5": 15.0, + "Head_ch_ang@Sketch5": 30.000000000000206, + "D1@Sketch4": 30.0, + "D1@Sketch6": 26.25, + "D1@Indent": 1.61, + "Thread_length@ThreadCosmetic": 27.5, + "Thread_minor@ThdSchSke": 17.252, + "Diameter@ThdSchSke": 20.0, + "Overcut@ThdSchSke": 25.0, + "Start@ThdSchSke": 15.380000000000003, + "Num_threads@ThdSchPat": 10.0, + "Advance@ThdSchPat": 2.75 + }, + "Mass": { + "Mass": 0.018448476549526794, + "Density": 1000.0000000000001, + "Volume": 1.8448476549526793E-05, + "SurfaceArea": 0.004817801875137061, + "CenterOfMassX": 0.01753955213482699, + "CenterOfMassY": -9.082730693577895E-06, + "CenterOfMassZ": -1.5685995711674357E-06 + }, + "Box": { + "MinX": -0.057000000000000016, + "MinY": 0.011726497308103717, + "MinZ": -0.03515, + "MaxX": -0.04700000000000001, + "MaxY": 0.02327350269189625, + "MaxZ": -0.0010000000000000009 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/hex nut jam_am-1", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.4.5M - Hex jam nut, M6 x 1 --D-N": {} + }, + "Equations": { + "D2@BaseNutSke": 5.0, + "D3@BaseNutSke": 5.0, + "D1@Sketch3": 5.0, + "D1@Sketch4": 5.0, + "D4@BaseNutSke": 5.0, + "Thread_major@ThdSchSke": 6.0, + "Tap_Drill@ThdSchSke": 5.0, + "OverCut@ThdSchSke": 2.5, + "Num_threads@ThdSchPat": 0.0, + "Advance@ThdSchPat": 0.7873, + "ThreadMajor@Sketch5": 3.0, + "ChamferDepth@Sketch5": 0.5499999999999999, + "Offset1@Sketch5": 3.2254, + "Offset2@Sketch5": 3.2762000000000002 + }, + "Mass": { + "Mass": 0.00020897265062795264, + "Density": 1000.0, + "Volume": 2.0897265062795264E-07, + "SurfaceArea": 0.0002798294711277528, + "CenterOfMassX": 4.848209432870686E-19, + "CenterOfMassY": 2.5991347688215926E-09, + "CenterOfMassZ": -0.0015985116157014817 + }, + "Box": { + "MinX": -0.056999999999999995, + "MinY": -0.023273502691896295, + "MinZ": -0.0010000000000000009, + "MaxX": -0.046999999999999986, + "MaxY": -0.011726497308103736, + "MaxZ": 0.0022000000000000075 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/hex nut jam_am-2", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/formed hex screw_am-2", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/6355015-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/formed hex screw_am-3", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, + "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, + "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, + "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} + }, + "Equations": { + "D3@Sketch1": 15.0, + "D4@Sketch1": 15.0, + "D5@Sketch1": 15.0, + "Thread_minor@ThreadCosmetic": 17.252, + "D1@Sketch3": 15.0, + "D1@Sketch5": 15.0, + "Head_ch_ang@Sketch5": 30.000000000000206, + "D1@Sketch4": 30.0, + "D1@Sketch6": 26.25, + "D1@Indent": 1.61, + "Thread_length@ThreadCosmetic": 27.5, + "Thread_minor@ThdSchSke": 17.252, + "Diameter@ThdSchSke": 20.0, + "Overcut@ThdSchSke": 25.0, + "Start@ThdSchSke": 15.380000000000003, + "Num_threads@ThdSchPat": 10.0, + "Advance@ThdSchPat": 2.75 + }, + "Mass": { + "Mass": 0.018448476549526794, + "Density": 1000.0000000000001, + "Volume": 1.8448476549526793E-05, + "SurfaceArea": 0.004817801875137061, + "CenterOfMassX": 0.01753955213482699, + "CenterOfMassY": -9.082730693577895E-06, + "CenterOfMassZ": -1.5685995711674357E-06 + }, + "Box": { + "MinX": -0.057, + "MinY": -0.023273502691896278, + "MinZ": -0.03515, + "MaxX": -0.04699999999999999, + "MaxY": -0.011726497308103745, + "MaxZ": -0.0010000000000000009 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + } + ], + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Parent": null, + "Properties": { + "Swivel-M6": {}, + "2xM8": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.002546174413361447, + "Density": 999.9999999999999, + "Volume": 2.5461744133614473E-06, + "SurfaceArea": 0.0020488644054426257, + "CenterOfMassX": 8.137746759176295E-07, + "CenterOfMassY": 0.07189057205001372, + "CenterOfMassZ": -0.032870327436121255 + }, + "Box": { + "MinX": -0.05700000000000001, + "MinY": -0.023273502691896306, + "MinZ": -0.035149999999999994, + "MaxX": -0.046999999999999986, + "MaxY": 0.02327350269189625, + "MaxZ": 0.0022000000000000075 + }, + "Material": { + "formed hex screw_am-4": "", + "hex nut jam_am-1": "", + "formed hex screw_am-3": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/formed hex screw_am-4", "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\iso\\bolts and screws\\cross-recessed head screws\\pan head cross recess screw_iso.sldprt", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", "Parent": null, "Properties": { "Default": {}, "PreviewCfg": {}, - "ISO 7045 - M2 x 4 - Z --- 4N": {}, - "ISO 7045 - M3 x 30 - Z - 30N": {} + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, + "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, + "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, + "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} }, "Equations": { - "D1@Sketch3": 1.4, - "D2@Sketch3": 0.37, - "Depth@RecCorSke": 1.75, - "D1@Sketch4": 0.74, - "D2@Sketch4": 1.0549646636378625, - "D3@Sketch4": 0.37, - "D4@Sketch4": 0.527482331818931, - "Thread_length@ThreadCosmetic": 29.0, - "Thread_minor@ThdSchSke": 2.439, - "Diameter@ThdSchSke": 3.0, - "Overcut@ThdSchSke": 3.75, - "Start@ThdSchSke": 3.3999999999999986, - "Num_threads@ThdSchPat": 59.0, - "Advance@ThdSchPat": 0.5 + "D3@Sketch1": 15.0, + "D4@Sketch1": 15.0, + "D5@Sketch1": 15.0, + "Thread_minor@ThreadCosmetic": 17.252, + "D1@Sketch3": 15.0, + "D1@Sketch5": 15.0, + "Head_ch_ang@Sketch5": 30.000000000000206, + "D1@Sketch4": 30.0, + "D1@Sketch6": 26.25, + "D1@Indent": 1.61, + "Thread_length@ThreadCosmetic": 27.5, + "Thread_minor@ThdSchSke": 17.252, + "Diameter@ThdSchSke": 20.0, + "Overcut@ThdSchSke": 25.0, + "Start@ThdSchSke": 15.380000000000003, + "Num_threads@ThdSchPat": 10.0, + "Advance@ThdSchPat": 2.75 }, "Mass": { - "Mass": 0.0002570064019277744, - "Density": 1000.0, - "Volume": 2.5700640192777437E-07, - "SurfaceArea": 0.0003704816726620429, - "CenterOfMassX": 0.014609978760297177, - "CenterOfMassY": 5.98106536098062E-13, - "CenterOfMassZ": -1.6309008876002757E-11 + "Mass": 0.018448476549526794, + "Density": 1000.0000000000001, + "Volume": 1.8448476549526793E-05, + "SurfaceArea": 0.004817801875137061, + "CenterOfMassX": 0.01753955213482699, + "CenterOfMassY": -9.082730693577895E-06, + "CenterOfMassZ": -1.5685995711674357E-06 }, "Box": { - "MinX": -0.030264773497787247, - "MinY": 0.028245795120089588, - "MinZ": 0.011440303976239581, - "MaxX": -0.024418769516656825, - "MaxY": 0.060599999999999966, - "MaxZ": 0.017286307957370118 + "MinX": -0.057000000000000016, + "MinY": 0.011726497308103717, + "MinZ": -0.03515, + "MaxX": -0.04700000000000001, + "MaxY": 0.02327350269189625, + "MaxZ": -0.0010000000000000009 }, "Material": { "Material": "", @@ -3123,6 +1929,972 @@ "IsSuppressed": false, "activeConfiguration": null }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/hex nut jam_am-1", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "Parent": null, + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.4.5M - Hex jam nut, M6 x 1 --D-N": {} + }, + "Equations": { + "D2@BaseNutSke": 5.0, + "D3@BaseNutSke": 5.0, + "D1@Sketch3": 5.0, + "D1@Sketch4": 5.0, + "D4@BaseNutSke": 5.0, + "Thread_major@ThdSchSke": 6.0, + "Tap_Drill@ThdSchSke": 5.0, + "OverCut@ThdSchSke": 2.5, + "Num_threads@ThdSchPat": 0.0, + "Advance@ThdSchPat": 0.7873, + "ThreadMajor@Sketch5": 3.0, + "ChamferDepth@Sketch5": 0.5499999999999999, + "Offset1@Sketch5": 3.2254, + "Offset2@Sketch5": 3.2762000000000002 + }, + "Mass": { + "Mass": 0.00020897265062795264, + "Density": 1000.0, + "Volume": 2.0897265062795264E-07, + "SurfaceArea": 0.0002798294711277528, + "CenterOfMassX": 4.848209432870686E-19, + "CenterOfMassY": 2.5991347688215926E-09, + "CenterOfMassZ": -0.0015985116157014817 + }, + "Box": { + "MinX": -0.056999999999999995, + "MinY": -0.023273502691896295, + "MinZ": -0.0010000000000000009, + "MaxX": -0.046999999999999986, + "MaxY": -0.011726497308103736, + "MaxZ": 0.0022000000000000075 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/hex nut jam_am-2", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "Parent": null, + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/formed hex screw_am-2", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": null, + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/6355015-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", + "Parent": null, + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/formed hex screw_am-3", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": null, + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, + "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, + "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, + "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} + }, + "Equations": { + "D3@Sketch1": 15.0, + "D4@Sketch1": 15.0, + "D5@Sketch1": 15.0, + "Thread_minor@ThreadCosmetic": 17.252, + "D1@Sketch3": 15.0, + "D1@Sketch5": 15.0, + "Head_ch_ang@Sketch5": 30.000000000000206, + "D1@Sketch4": 30.0, + "D1@Sketch6": 26.25, + "D1@Indent": 1.61, + "Thread_length@ThreadCosmetic": 27.5, + "Thread_minor@ThdSchSke": 17.252, + "Diameter@ThdSchSke": 20.0, + "Overcut@ThdSchSke": 25.0, + "Start@ThdSchSke": 15.380000000000003, + "Num_threads@ThdSchPat": 10.0, + "Advance@ThdSchPat": 2.75 + }, + "Mass": { + "Mass": 0.018448476549526794, + "Density": 1000.0000000000001, + "Volume": 1.8448476549526793E-05, + "SurfaceArea": 0.004817801875137061, + "CenterOfMassX": 0.01753955213482699, + "CenterOfMassY": -9.082730693577895E-06, + "CenterOfMassZ": -1.5685995711674357E-06 + }, + "Box": { + "MinX": -0.057, + "MinY": -0.023273502691896278, + "MinZ": -0.03515, + "MaxX": -0.04699999999999999, + "MaxY": -0.011726497308103745, + "MaxZ": -0.0010000000000000009 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/20-60-120_WasherM6_x4_1mm_INOX-4", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT", + "Parent": null, + "Properties": { + "Default": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.0007406922613335518, + "Density": 1000.0, + "Volume": 7.406922613335519E-07, + "SurfaceArea": 0.0016499951383480782, + "CenterOfMassX": -2.617422459876508E-19, + "CenterOfMassY": -3.8388862744855453E-19, + "CenterOfMassZ": 0.0005 + }, + "Box": { + "MinX": 0.044, + "MinY": -0.024999999999999897, + "MinZ": 0.02999999999999991, + "MaxX": 0.06, + "MaxY": 0.025000000000000112, + "MaxZ": 0.031000000000000083 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/20-60-120_WasherM6_x4_1mm_INOX-5", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT", + "Parent": null, + "Properties": { + "Default": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.0007406922613335518, + "Density": 1000.0, + "Volume": 7.406922613335519E-07, + "SurfaceArea": 0.0016499951383480782, + "CenterOfMassX": -2.617422459876508E-19, + "CenterOfMassY": -3.8388862744855453E-19, + "CenterOfMassZ": 0.0005 + }, + "Box": { + "MinX": -0.06, + "MinY": -0.024999999999999897, + "MinZ": -0.031000000000000083, + "MaxX": -0.044, + "MaxY": 0.025000000000000112, + "MaxZ": -0.02999999999999991 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/20-60-120_WasherM6_x4_1mm_INOX-6", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT", + "Parent": null, + "Properties": { + "Default": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.0007406922613335518, + "Density": 1000.0, + "Volume": 7.406922613335519E-07, + "SurfaceArea": 0.0016499951383480782, + "CenterOfMassX": -2.617422459876508E-19, + "CenterOfMassY": -3.8388862744855453E-19, + "CenterOfMassZ": 0.0005 + }, + "Box": { + "MinX": -0.06, + "MinY": -0.024999999999999897, + "MinZ": 0.02999999999999991, + "MaxX": -0.044, + "MaxY": 0.025000000000000112, + "MaxZ": 0.031000000000000083 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/20-60-120_Shield_x2_1mm_INOX-2", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_Shield_x2_1mm_INOX.SLDPRT", + "Parent": null, + "Properties": { + "Default": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.0061177896933247156, + "Density": 1000.0, + "Volume": 6.117789693324716E-06, + "SurfaceArea": 0.012984048379532454, + "CenterOfMassX": 2.5013676669742918E-18, + "CenterOfMassY": -1.2802608160358285E-18, + "CenterOfMassZ": 0.0005 + }, + "Box": { + "MinX": -0.06, + "MinY": -0.026000000000000106, + "MinZ": -0.030000000000000093, + "MaxX": 0.06, + "MaxY": -0.024999999999999897, + "MaxZ": 0.029999999999999912 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Stock-120-60-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-40\\Stock-120-60.SLDPRT", + "Parent": null, + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/SlideDual-20ID-60D-120W-2", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60D-120W.SLDPRT", + "Parent": null, + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1", + "Children": [ + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/formed hex screw_am-4", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, + "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, + "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, + "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} + }, + "Equations": { + "D3@Sketch1": 15.0, + "D4@Sketch1": 15.0, + "D5@Sketch1": 15.0, + "Thread_minor@ThreadCosmetic": 17.252, + "D1@Sketch3": 15.0, + "D1@Sketch5": 15.0, + "Head_ch_ang@Sketch5": 30.000000000000206, + "D1@Sketch4": 30.0, + "D1@Sketch6": 26.25, + "D1@Indent": 1.61, + "Thread_length@ThreadCosmetic": 27.5, + "Thread_minor@ThdSchSke": 17.252, + "Diameter@ThdSchSke": 20.0, + "Overcut@ThdSchSke": 25.0, + "Start@ThdSchSke": 15.380000000000003, + "Num_threads@ThdSchPat": 10.0, + "Advance@ThdSchPat": 2.75 + }, + "Mass": { + "Mass": 0.018448476549526794, + "Density": 1000.0000000000001, + "Volume": 1.8448476549526793E-05, + "SurfaceArea": 0.004817801875137061, + "CenterOfMassX": 0.01753955213482699, + "CenterOfMassY": -9.082730693577895E-06, + "CenterOfMassZ": -1.5685995711674357E-06 + }, + "Box": { + "MinX": 0.04699999999999998, + "MinY": 0.011726497308103717, + "MinZ": -0.03515, + "MaxX": 0.05699999999999999, + "MaxY": 0.02327350269189625, + "MaxZ": -0.0010000000000000009 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/hex nut jam_am-1", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.4.5M - Hex jam nut, M6 x 1 --D-N": {} + }, + "Equations": { + "D2@BaseNutSke": 5.0, + "D3@BaseNutSke": 5.0, + "D1@Sketch3": 5.0, + "D1@Sketch4": 5.0, + "D4@BaseNutSke": 5.0, + "Thread_major@ThdSchSke": 6.0, + "Tap_Drill@ThdSchSke": 5.0, + "OverCut@ThdSchSke": 2.5, + "Num_threads@ThdSchPat": 0.0, + "Advance@ThdSchPat": 0.7873, + "ThreadMajor@Sketch5": 3.0, + "ChamferDepth@Sketch5": 0.5499999999999999, + "Offset1@Sketch5": 3.2254, + "Offset2@Sketch5": 3.2762000000000002 + }, + "Mass": { + "Mass": 0.00020897265062795264, + "Density": 1000.0, + "Volume": 2.0897265062795264E-07, + "SurfaceArea": 0.0002798294711277528, + "CenterOfMassX": 4.848209432870686E-19, + "CenterOfMassY": 2.5991347688215926E-09, + "CenterOfMassZ": -0.0015985116157014817 + }, + "Box": { + "MinX": 0.047, + "MinY": -0.023273502691896295, + "MinZ": -0.0010000000000000009, + "MaxX": 0.05700000000000001, + "MaxY": -0.011726497308103736, + "MaxZ": 0.0022000000000000075 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/hex nut jam_am-2", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/formed hex screw_am-2", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/6355015-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/formed hex screw_am-3", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, + "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, + "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, + "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} + }, + "Equations": { + "D3@Sketch1": 15.0, + "D4@Sketch1": 15.0, + "D5@Sketch1": 15.0, + "Thread_minor@ThreadCosmetic": 17.252, + "D1@Sketch3": 15.0, + "D1@Sketch5": 15.0, + "Head_ch_ang@Sketch5": 30.000000000000206, + "D1@Sketch4": 30.0, + "D1@Sketch6": 26.25, + "D1@Indent": 1.61, + "Thread_length@ThreadCosmetic": 27.5, + "Thread_minor@ThdSchSke": 17.252, + "Diameter@ThdSchSke": 20.0, + "Overcut@ThdSchSke": 25.0, + "Start@ThdSchSke": 15.380000000000003, + "Num_threads@ThdSchPat": 10.0, + "Advance@ThdSchPat": 2.75 + }, + "Mass": { + "Mass": 0.018448476549526794, + "Density": 1000.0000000000001, + "Volume": 1.8448476549526793E-05, + "SurfaceArea": 0.004817801875137061, + "CenterOfMassX": 0.01753955213482699, + "CenterOfMassY": -9.082730693577895E-06, + "CenterOfMassZ": -1.5685995711674357E-06 + }, + "Box": { + "MinX": 0.04699999999999999, + "MinY": -0.023273502691896278, + "MinZ": -0.03515, + "MaxX": 0.057, + "MaxY": -0.011726497308103745, + "MaxZ": -0.0010000000000000009 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + } + ], + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Parent": null, + "Properties": { + "Swivel-M6": {}, + "2xM8": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.002546174413361448, + "Density": 999.9999999999999, + "Volume": 2.546174413361448E-06, + "SurfaceArea": 0.0020488644054426257, + "CenterOfMassX": 8.137746759176075E-07, + "CenterOfMassY": 0.0718905720500137, + "CenterOfMassZ": -0.032870327436121255 + }, + "Box": { + "MinX": 0.046999999999999986, + "MinY": -0.023273502691896306, + "MinZ": -0.035149999999999994, + "MaxX": 0.05700000000000001, + "MaxY": 0.02327350269189625, + "MaxZ": 0.0022000000000000075 + }, + "Material": { + "formed hex screw_am-4": "", + "hex nut jam_am-1": "", + "formed hex screw_am-3": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/formed hex screw_am-4", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": null, + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, + "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, + "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, + "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} + }, + "Equations": { + "D3@Sketch1": 15.0, + "D4@Sketch1": 15.0, + "D5@Sketch1": 15.0, + "Thread_minor@ThreadCosmetic": 17.252, + "D1@Sketch3": 15.0, + "D1@Sketch5": 15.0, + "Head_ch_ang@Sketch5": 30.000000000000206, + "D1@Sketch4": 30.0, + "D1@Sketch6": 26.25, + "D1@Indent": 1.61, + "Thread_length@ThreadCosmetic": 27.5, + "Thread_minor@ThdSchSke": 17.252, + "Diameter@ThdSchSke": 20.0, + "Overcut@ThdSchSke": 25.0, + "Start@ThdSchSke": 15.380000000000003, + "Num_threads@ThdSchPat": 10.0, + "Advance@ThdSchPat": 2.75 + }, + "Mass": { + "Mass": 0.018448476549526794, + "Density": 1000.0000000000001, + "Volume": 1.8448476549526793E-05, + "SurfaceArea": 0.004817801875137061, + "CenterOfMassX": 0.01753955213482699, + "CenterOfMassY": -9.082730693577895E-06, + "CenterOfMassZ": -1.5685995711674357E-06 + }, + "Box": { + "MinX": 0.04699999999999998, + "MinY": 0.011726497308103717, + "MinZ": -0.03515, + "MaxX": 0.05699999999999999, + "MaxY": 0.02327350269189625, + "MaxZ": -0.0010000000000000009 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/hex nut jam_am-1", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "Parent": null, + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.4.5M - Hex jam nut, M6 x 1 --D-N": {} + }, + "Equations": { + "D2@BaseNutSke": 5.0, + "D3@BaseNutSke": 5.0, + "D1@Sketch3": 5.0, + "D1@Sketch4": 5.0, + "D4@BaseNutSke": 5.0, + "Thread_major@ThdSchSke": 6.0, + "Tap_Drill@ThdSchSke": 5.0, + "OverCut@ThdSchSke": 2.5, + "Num_threads@ThdSchPat": 0.0, + "Advance@ThdSchPat": 0.7873, + "ThreadMajor@Sketch5": 3.0, + "ChamferDepth@Sketch5": 0.5499999999999999, + "Offset1@Sketch5": 3.2254, + "Offset2@Sketch5": 3.2762000000000002 + }, + "Mass": { + "Mass": 0.00020897265062795264, + "Density": 1000.0, + "Volume": 2.0897265062795264E-07, + "SurfaceArea": 0.0002798294711277528, + "CenterOfMassX": 4.848209432870686E-19, + "CenterOfMassY": 2.5991347688215926E-09, + "CenterOfMassZ": -0.0015985116157014817 + }, + "Box": { + "MinX": 0.047, + "MinY": -0.023273502691896295, + "MinZ": -0.0010000000000000009, + "MaxX": 0.05700000000000001, + "MaxY": -0.011726497308103736, + "MaxZ": 0.0022000000000000075 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/hex nut jam_am-2", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "Parent": null, + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/formed hex screw_am-2", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": null, + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/6355015-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", + "Parent": null, + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/formed hex screw_am-3", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": null, + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, + "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, + "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, + "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} + }, + "Equations": { + "D3@Sketch1": 15.0, + "D4@Sketch1": 15.0, + "D5@Sketch1": 15.0, + "Thread_minor@ThreadCosmetic": 17.252, + "D1@Sketch3": 15.0, + "D1@Sketch5": 15.0, + "Head_ch_ang@Sketch5": 30.000000000000206, + "D1@Sketch4": 30.0, + "D1@Sketch6": 26.25, + "D1@Indent": 1.61, + "Thread_length@ThreadCosmetic": 27.5, + "Thread_minor@ThdSchSke": 17.252, + "Diameter@ThdSchSke": 20.0, + "Overcut@ThdSchSke": 25.0, + "Start@ThdSchSke": 15.380000000000003, + "Num_threads@ThdSchPat": 10.0, + "Advance@ThdSchPat": 2.75 + }, + "Mass": { + "Mass": 0.018448476549526794, + "Density": 1000.0000000000001, + "Volume": 1.8448476549526793E-05, + "SurfaceArea": 0.004817801875137061, + "CenterOfMassX": 0.01753955213482699, + "CenterOfMassY": -9.082730693577895E-06, + "CenterOfMassZ": -1.5685995711674357E-06 + }, + "Box": { + "MinX": 0.04699999999999999, + "MinY": -0.023273502691896278, + "MinZ": -0.03515, + "MaxX": 0.057, + "MaxY": -0.011726497308103745, + "MaxZ": -0.0010000000000000009 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/Test-Body-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-40\\Test-Body.SLDPRT", + "Parent": null, + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/20-60-120_WasherM6_x4_1mm_INOX-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT", + "Parent": null, + "Properties": { + "Default": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.0007406922613335518, + "Density": 1000.0, + "Volume": 7.406922613335519E-07, + "SurfaceArea": 0.0016499951383480782, + "CenterOfMassX": -2.617422459876508E-19, + "CenterOfMassY": -3.8388862744855453E-19, + "CenterOfMassZ": 0.0005 + }, + "Box": { + "MinX": 0.044, + "MinY": -0.024999999999999897, + "MinZ": -0.031000000000000083, + "MaxX": 0.06, + "MaxY": 0.025000000000000112, + "MaxZ": -0.02999999999999991 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/20-60-120_Shield_x2_1mm_INOX-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_Shield_x2_1mm_INOX.SLDPRT", + "Parent": null, + "Properties": { + "Default": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.0061177896933247156, + "Density": 1000.0, + "Volume": 6.117789693324716E-06, + "SurfaceArea": 0.012984048379532454, + "CenterOfMassX": 2.5013676669742918E-18, + "CenterOfMassY": -1.2802608160358285E-18, + "CenterOfMassZ": 0.0005 + }, + "Box": { + "MinX": -0.06, + "MinY": 0.024999999999999897, + "MinZ": -0.029999999999999912, + "MaxX": 0.06, + "MaxY": 0.026000000000000106, + "MaxZ": 0.030000000000000093 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/SlideSingle-20ID-50D-50W-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideSingle-20ID-50D-50W.SLDPRT", + "Parent": null, + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60H-120W-1/SlideDual-20ID-60D-120W-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60D-120W.SLDPRT", + "Parent": null, + "Properties": { + "SwivelClamp": {}, + "2xM8": { + "Total Bounding Box Length": "120", + "Total Bounding Box Width": "60", + "Total Bounding Box Thickness": "50", + "Total Bounding Box Volume": "360000" + }, + "CAM": { + "Total Bounding Box Length": "120", + "Total Bounding Box Width": "60", + "Total Bounding Box Thickness": "50", + "Total Bounding Box Volume": "360000" + } + }, + "Equations": {}, + "Mass": { + "Mass": 0.29389729863245917, + "Density": 1020.0, + "Volume": 0.00028813460650241096, + "SurfaceArea": 0.0482374907385394, + "CenterOfMassX": 1.7686152673515807E-05, + "CenterOfMassY": 1.1542124860126421E-05, + "CenterOfMassZ": 0.025094494956140044 + }, + "Box": { + "MinX": -0.06, + "MinY": -0.025000000000000105, + "MinZ": -0.030000000000000082, + "MaxX": 0.06, + "MaxY": 0.025000000000000105, + "MaxZ": 0.03000000000000009 + }, + "Material": { + "Material": "ABS", + "Materials": "SOLIDWORKS Materials" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, { "Name": "Nema17-Default-1", "Children": null, @@ -3137,9 +2909,9 @@ "Density": 1000.0000000000001, "Volume": 8.229625733425804E-05, "SurfaceArea": 0.020326826130793334, - "CenterOfMassX": 6.771364679961259E-17, + "CenterOfMassX": 6.771244349718415E-17, "CenterOfMassY": 0.023742246253111034, - "CenterOfMassZ": 6.403660987551209E-05 + "CenterOfMassZ": 6.403660987551201E-05 }, "Box": { "MinX": -0.021150000000000002, @@ -3173,36 +2945,34 @@ }, "Equations": {}, "Mass": { - "Mass": 0.5127225840987435, - "Density": 1007.5849509165315, - "Volume": 0.0005088628840996033, - "SurfaceArea": 0.11567099291100982, - "CenterOfMassX": -0.000741887177152593, - "CenterOfMassY": 0.019241785402275023, - "CenterOfMassZ": -0.0006046885531354834 + "Mass": 0.6134920870538266, + "Density": 1009.4823323969239, + "Volume": 0.0006077293949237779, + "SurfaceArea": 0.13323407234743054, + "CenterOfMassX": -0.0006115486441930561, + "CenterOfMassY": 0.016023985134277604, + "CenterOfMassZ": -0.0005451547708001538 }, "Box": null, "Material": { - "SlideDual-20ID-50H-100W-1/20-40-100_WasherM6_x4_1mm_INOX-1": "", - "SlideDual-20ID-50H-100W-1/SlideDual-20ID-50D-100W-1": "ABS", - "SlideDual-20ID-50H-100W-1/20-50-100_Shield_x2_1mm_INOX-1": "", - "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/formed hex screw_am-3": "", - "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/hex nut jam_am-1": "", - "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/formed hex screw_am-4": "", - "SlideDual-20ID-50H-100W-1/Fasteners-M6-1/hex nut jam_am-2": "", - "SlideDual-20ID-50H-100W-1/20-40-100_WasherM6_x4_1mm_INOX-2": "", - "SlideDual-20ID-50H-100W-1/20-50-100_Shield_x2_1mm_INOX-2": "", - "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/formed hex screw_am-3": "", - "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/hex nut jam_am-1": "", - "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/formed hex screw_am-4": "", - "SlideDual-20ID-50H-100W-1/Fasteners-M6-2/hex nut jam_am-2": "", - "SlideDual-20ID-50H-100W-1/20-40-100_WasherM6_x4_1mm_INOX-3": "", - "SlideDual-20ID-50H-100W-1/20-40-100_WasherM6_x4_1mm_INOX-4": "", - "Nema23-1/pan head cross recess screw_iso-4": "", + "Nema23-1/pan head cross recess screw_iso-1": "", "Nema23-1/Body_nema23_23HS30-2804S-1": "", "Nema23-1/pan head cross recess screw_iso-2": "", + "Nema23-1/pan head cross recess screw_iso-4": "", "Nema23-1/pan head cross recess screw_iso-3": "", - "Nema23-1/pan head cross recess screw_iso-1": "", + "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/formed hex screw_am-4": "", + "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/hex nut jam_am-1": "", + "SlideDual-20ID-60H-120W-1/Fasteners-M6-2/formed hex screw_am-3": "", + "SlideDual-20ID-60H-120W-1/20-60-120_WasherM6_x4_1mm_INOX-4": "", + "SlideDual-20ID-60H-120W-1/20-60-120_WasherM6_x4_1mm_INOX-5": "", + "SlideDual-20ID-60H-120W-1/20-60-120_WasherM6_x4_1mm_INOX-6": "", + "SlideDual-20ID-60H-120W-1/20-60-120_Shield_x2_1mm_INOX-2": "", + "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/formed hex screw_am-4": "", + "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/hex nut jam_am-1": "", + "SlideDual-20ID-60H-120W-1/Fasteners-M6-1/formed hex screw_am-3": "", + "SlideDual-20ID-60H-120W-1/20-60-120_WasherM6_x4_1mm_INOX-1": "", + "SlideDual-20ID-60H-120W-1/20-60-120_Shield_x2_1mm_INOX-1": "", + "SlideDual-20ID-60H-120W-1/SlideDual-20ID-60D-120W-1": "ABS", "Nema17-Default-1": "" }, "States": {}, diff --git a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.x_t b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.x_t index a450b90..71bc2b0 100644 --- a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.x_t +++ b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.x_t @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:01b18d3937de293f52615ee2ab6c553a45306a1ec628ac60beaa131638c543f5 -size 422038 +oid sha256:7e82ac0096f989d28008c709232f4df78f11921e0bec679e350dc8a864462c57 +size 438045 diff --git a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60D-120W.SLDPRT b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60D-120W.SLDPRT index 676dd3d..9503c7c 100644 --- a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60D-120W.SLDPRT +++ b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60D-120W.SLDPRT @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bb77b861caf8931b7d37e5143c17ee8f90f9ae900803b6e4126200c05797b55a -size 194748 +oid sha256:becf7a596998f3e8a0bd8d99806b41aa0d6fa4a482eefd361b29888540c91089 +size 249352 diff --git a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.SLDASM b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.SLDASM index 35f7293..fd2cf3a 100644 --- a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.SLDASM +++ b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.SLDASM @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fb8ac4265a55ba03f6eec2faadab37b0e93983f9aaa1cc8a3e60343e8ab6c6cf -size 228044 +oid sha256:a6776848d564cb2f6d50d97388ce2493d7e84ae9f053e5395820eed760aaa7e1 +size 251437 diff --git a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.SLDPRT b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.SLDPRT new file mode 100644 index 0000000..94b3114 --- /dev/null +++ b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.SLDPRT @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11fc3c97195446ff881e6a9aa2d1688881155b385ad11cb4aec84c8a905a1e87 +size 293898 diff --git a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.html b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.html index 8db17dd..13b78bc 100644 --- a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.html +++ b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.html @@ -8360,7 +8360,7 @@ var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){fun // Copyright 2018-2021 Dassault Systemes SolidWorks Corporation. All rights reserved. var __extends=this&&this.__extends||function(){var extendStatics=function(d,b){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,b){d.__proto__=b}||function(d,b){for(var p in b)if(b.hasOwnProperty(p))d[p]=b[p]};return extendStatics(d,b)};return function(d,b){extendStatics(d,b);function __(){this.constructor=d}d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}();var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P((function(resolve){resolve(value)}))}return new(P||(P=Promise))((function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())}))};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]=this.mSelObjs.length)return[2,null];this.dehighlightAllTemporaryEntity();toRemove=this.mSelObjs[idx];this.mSelObjs.splice(idx,1);if(!utils.isNumber(this.isItemSelected(toRemove))){this.deColorEntity(toRemove)}return[4,this.updateResult(this.mSelObjs,this.mAuxGeoSelected)];case 1:updated=_a.sent();if(!(updated||this.mSelObjs.length===0))return[3,3];return[4,this.resetImmediateResults()];case 2:_a.sent();return[3,4];case 3:this.mAuxGeoImmediate.regeneratePicks(this.mSelObjs);_a.label=4;case 4:this.updatePanelResult();return[2,toRemove]}}))}))};eDwMeasureEntities.prototype.setSelectedEntityColor=function(iColor){this.mSelMeasureEntColor=iColor};eDwMeasureEntities.prototype.setMeasureUnit=function(iUserUnits){var _this=this;this.mViewer.getModel().setUserUnits(iUserUnits);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.resetImmediateResults()];case 1:_a.sent();return[2]}}))}))})();this.mAuxGeoSelected.syncUnits();this.updatePanelResult();this.mViewer.getHCMarkupManager().refreshMarkup()};eDwMeasureEntities.prototype.updatePointToPoint=function(iEnable){eDwMeasureEntities.PointToPoint=iEnable;this.reset();this.mAuxGeoSelected.updateResultLabels();this.mAuxGeoImmediate.updateResultLabels();this.mViewer.getHCMarkupManager().refreshMarkup()};eDwMeasureEntities.prototype.updateDelta=function(iEnable){eDwMeasureEntities.ShowDelta=iEnable;this.mAuxGeoSelected.updateResultLabels();this.mAuxGeoImmediate.updateResultLabels();this.updatePanelResult();this.mViewer.getHCMarkupManager().refreshMarkup()};eDwMeasureEntities.prototype.updatePanelResult=function(){var userUnits=this.mViewer.getModel().getUserUnits();this.mPanelInfo.updatePanelResult(this.mSelObjs,userUnits)};eDwMeasureEntities.prototype.reset=function(){this.deColorAll();this.mAuxGeoSelected.reset();this.mAuxGeoImmediate.reset();this.mSelObjs=[];this.updatePanelResult()};eDwMeasureEntities.prototype.draw=function(){this.mAuxGeoSelected.draw();this.mAuxGeoImmediate.draw()};eDwMeasureEntities.prototype.getClassName=function(){return"eDwMeasureEntities"};eDwMeasureEntities.prototype.isItemSelected=function(iSelObj){if(utils.isNumber(iSelObj.getIDHC())){for(var i=0;i0){result=new MeasureResultString("Info","Invalid combination");ioAuxGeo.addMessage(result,iSelObjs[n-1].getPosition(),eDwTypes_1.HC.Color.red())}ioAuxGeo.updateResultLabels();return[2,isValid]}}))}))};eDwMeasureEntities.prototype.updateSingleVert=function(iSelObjs){if(1!==iSelObjs.length)return false;var vertObj=iSelObjs[0];return vertObj.getPointEntity()?true:false};eDwMeasureEntities.prototype.updateSingleEdge=function(iSelObjs){if(1!==iSelObjs.length)return false;var edgeObj=iSelObjs[0];if(edgeObj.getLineEntity())return true;return false};eDwMeasureEntities.prototype.updateSingleFace=function(iSelPropsHC,iSelObjs){if(1!==iSelObjs.length)return false;var faceObj=iSelObjs[0];var faceProp=iSelPropsHC[0];if(!faceObj.getFaceEntity()||!faceProp)return false;if(faceProp instanceof eDwTypes_1.HC.SubentityProperties.CylinderElement){return true}else if(faceProp instanceof eDwTypes_1.HC.SubentityProperties.PlaneElement){return true}return false};eDwMeasureEntities.prototype.updateVertVert=function(iSelObjs,iAuxGeo){if(2!==iSelObjs.length)return false;if(iSelObjs[0].getPointEntity()&&iSelObjs[1].getPointEntity()){var vertObj0=iSelObjs[0];var vertObj1=iSelObjs[1];if(vertObj0.equals(vertObj1))return false;iAuxGeo.setByVertexVertex(vertObj0,vertObj1);return true}return false};eDwMeasureEntities.prototype.updateVertEdge=function(iSelPropsHC,iSelObjs,iAuxGeo){if(2!==iSelObjs.length)return false;var edgeProp=iSelPropsHC[0];var edgeObj=iSelObjs[0];var vertObj=iSelObjs[1];if(iSelObjs[1].getLineEntity()&&iSelObjs[0].getPointEntity()){edgeProp=iSelPropsHC[1];edgeObj=iSelObjs[1];vertObj=iSelObjs[0]}if(!vertObj.getPointEntity())return false;if(edgeProp instanceof eDwTypes_1.HC.SubentityProperties.LineElement){iAuxGeo.setByVertexLine(vertObj,edgeProp,edgeObj);return true}else if(edgeProp instanceof eDwTypes_1.HC.SubentityProperties.CircleElement){iAuxGeo.setByVertexCircle(vertObj,edgeProp,edgeObj);return true}return false};eDwMeasureEntities.prototype.updateVertFace=function(iSelPropsHC,iSelObjs,iAuxGeo){return __awaiter(this,void 0,void 0,(function(){var vertObj,faceProp,faceObj,minDistInfo;return __generator(this,(function(_a){switch(_a.label){case 0:if(2!==iSelObjs.length)return[2,false];vertObj=iSelObjs[0];faceProp=iSelPropsHC[1];faceObj=iSelObjs[1];if(iSelObjs[1].getPointEntity()&&iSelObjs[0].getFaceEntity()){vertObj=iSelObjs[1];faceProp=iSelPropsHC[0];faceObj=iSelObjs[0]}if(!vertObj.getPointEntity())return[2,false];if(!(faceProp instanceof eDwTypes_1.HC.SubentityProperties.PlaneElement))return[3,2];return[4,eDwSelObj.getMinDistInfo(iSelPropsHC,iSelObjs,this.mViewer.getModel())];case 1:minDistInfo=_a.sent();iAuxGeo.setByVertexPlane(vertObj,faceProp,faceObj,minDistInfo);return[2,true];case 2:return[2,false]}}))}))};eDwMeasureEntities.prototype.updateEdgeFace=function(iSelPropsHC,iSelObjs,iAuxGeo){return __awaiter(this,void 0,void 0,(function(){var edgeProp,edgeObj,faceProp,faceObj,minDistInfo;return __generator(this,(function(_a){switch(_a.label){case 0:if(2!==iSelObjs.length)return[2,false];edgeProp=iSelPropsHC[0];edgeObj=iSelObjs[0];faceProp=iSelPropsHC[1];faceObj=iSelObjs[1];if(iSelObjs[1].getLineEntity()&&iSelObjs[0].getFaceEntity()){edgeProp=iSelPropsHC[1];edgeObj=iSelObjs[1];faceProp=iSelPropsHC[0];faceObj=iSelObjs[0]}if(!(edgeProp instanceof eDwTypes_1.HC.SubentityProperties.LineElement&&faceProp instanceof eDwTypes_1.HC.SubentityProperties.PlaneElement))return[3,1];iAuxGeo.setByPlaneLine(faceProp,edgeProp,faceObj,edgeObj);return[2,true];case 1:if(!(edgeProp instanceof eDwTypes_1.HC.SubentityProperties.CircleElement&&faceProp instanceof eDwTypes_1.HC.SubentityProperties.PlaneElement))return[3,3];return[4,eDwSelObj.getMinDistInfo(iSelPropsHC,iSelObjs,this.mViewer.getModel())];case 2:minDistInfo=_a.sent();iAuxGeo.setByCirclePlane(edgeProp,faceProp,edgeObj,faceObj,minDistInfo);return[2,true];case 3:return[2,false]}}))}))};eDwMeasureEntities.prototype.updateEdgeEdge=function(iSelPropsHC,iSelObjs,iAuxGeo){if(2!==iSelObjs.length)return false;if(!iSelObjs[0].getLineEntity()||!iSelObjs[1].getLineEntity()){return false}var edgeObj0=iSelObjs[0];var edgeProp0=iSelPropsHC[0];var edgeObj1=iSelObjs[1];var edgeProp1=iSelPropsHC[1];if(edgeObj0.equals(edgeObj1))return false;if(edgeProp0 instanceof eDwTypes_1.HC.SubentityProperties.LineElement&&edgeProp1 instanceof eDwTypes_1.HC.SubentityProperties.LineElement){iAuxGeo.setByLineLine(edgeProp0,edgeProp1,edgeObj0,edgeObj1)}else if(edgeProp0 instanceof eDwTypes_1.HC.SubentityProperties.LineElement&&edgeProp1 instanceof eDwTypes_1.HC.SubentityProperties.CircleElement){iAuxGeo.setByCircleLine(edgeProp1,edgeProp0,edgeObj1,edgeObj0)}else if(edgeProp0 instanceof eDwTypes_1.HC.SubentityProperties.CircleElement&&edgeProp1 instanceof eDwTypes_1.HC.SubentityProperties.LineElement){iAuxGeo.setByCircleLine(edgeProp0,edgeProp1,edgeObj0,edgeObj1)}else if(edgeProp0 instanceof eDwTypes_1.HC.SubentityProperties.CircleElement&&edgeProp1 instanceof eDwTypes_1.HC.SubentityProperties.CircleElement){iAuxGeo.setByCircleCircle(edgeProp0,edgeProp1,edgeObj0,edgeObj1)}this.updateEdges(iSelPropsHC,iSelObjs,iAuxGeo);return true};eDwMeasureEntities.prototype.updateFaceFace=function(iSelPropsHC,iSelObjs,iAuxGeo){return __awaiter(this,void 0,void 0,(function(){var faceObj0,faceProp0,faceObj1,faceProp1,minDistInfo;return __generator(this,(function(_a){switch(_a.label){case 0:if(2!==iSelObjs.length)return[2,false];if(!iSelObjs[0].getFaceEntity()||!iSelObjs[1].getFaceEntity()){return[2,false]}faceObj0=iSelObjs[0];faceProp0=iSelPropsHC[0];faceObj1=iSelObjs[1];faceProp1=iSelPropsHC[1];if(faceObj0.equals(faceObj1))return[2,false];if(!faceObj1.getFaceEntity()||!faceProp1)return[2,false];if(!(faceProp0 instanceof eDwTypes_1.HC.SubentityProperties.PlaneElement&&faceProp1 instanceof eDwTypes_1.HC.SubentityProperties.PlaneElement))return[3,2];return[4,eDwSelObj.getMinDistInfo(iSelPropsHC,iSelObjs,this.mViewer.getModel())];case 1:minDistInfo=_a.sent();iAuxGeo.setByPlanePlane(faceProp1,faceProp0,faceObj1,faceObj0,minDistInfo);return[2,true];case 2:return[2,false]}}))}))};eDwMeasureEntities.prototype.updateEdges=function(iSelPropsHC,iSelObjs,ioAuxGeo){var n=iSelObjs.length;var len=0;var ids=[];for(var i=0;i1){var result=new MeasureResultDistance("Total Length",len);pos=iSelObjs[n-1].getPosition();ioAuxGeo.addOtherResult(result,pos);return true}return false};eDwMeasureEntities.prototype.highlightEntityAt=function(iIndex,iHighlight){if(iHighlight===void 0){iHighlight=true}var n=this.mSelObjs.length;if(iIndex<0||iIndex>=n)return;eDwMeasureEntities.highlightEntity(this.mSelObjs[iIndex],this.mViewer.getModel(),iHighlight)};eDwMeasureEntities.prototype.addAllForEntity=function(iSelObj){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.addObjs(iSelObj)];case 1:_a.sent();return[4,this.updateResult(this.mSelObjs,this.mAuxGeoSelected)];case 2:_a.sent();return[4,this.resetImmediateResults()];case 3:_a.sent();this.colorEntity(iSelObj);return[2,true]}}))}))};eDwMeasureEntities.PointToPoint=false;eDwMeasureEntities.ShowDelta=false;return eDwMeasureEntities}(eDwTypes_1.HC.Markup.MarkupItem);var LabelItem=function(_super){__extends(LabelItem,_super);function LabelItem(iViewer,iLabel){var _this=_super.call(this)||this;_this.mLabel=iLabel;return _this}LabelItem.prototype.setStringContent=function(){this.mLabel.setStringContent()};LabelItem.prototype.draw=function(){this.mLabel.drawLabel()};LabelItem.prototype.hit=function(iPos){var box=this.mLabel.getLabelBox();if(!box)return false;var xMin=box.Min.x;var xMax=box.Max.x;var yMin=box.Min.y;var yMax=box.Max.y;return iPos.x<=xMax&&iPos.x>=xMin&&iPos.y<=yMax&&iPos.y>=yMin};LabelItem.prototype.onDragStart=function(iPos){this.mDragPos=iPos.copy();return true};LabelItem.prototype.onDragMove=function(iPos){var delta=eDwTypes_1.HC.Point2.subtract(iPos,this.mDragPos);var endPos=this.mLabel.getLeaderEndPos();if(!eDwGeomUtils.isValidHCPoint(endPos)||!eDwGeomUtils.isValidHCPoint(delta))return true;endPos.add(delta);this.mLabel.setLeaderEndPos(endPos);this.mDragPos=iPos.copy();return true};LabelItem.prototype.onDragEnd=function(iPos){return true};return LabelItem}(eDwTypes_1.HC.Markup.MarkupItem);var MeasureResultItem=function(){function MeasureResultItem(iName){this.mName=iName}Object.defineProperty(MeasureResultItem.prototype,"Value",{get:function(){return":NOVALUE:"},enumerable:false,configurable:true});Object.defineProperty(MeasureResultItem.prototype,"Name",{get:function(){return this.mName},enumerable:false,configurable:true});return MeasureResultItem}();var MeasureResultString=function(_super){__extends(MeasureResultString,_super);function MeasureResultString(iName,iValue){var _this=_super.call(this,iName)||this;_this.mValue=iValue;return _this}Object.defineProperty(MeasureResultString.prototype,"Value",{get:function(){return this.mValue},enumerable:false,configurable:true});return MeasureResultString}(MeasureResultItem);var MeasureResultNumber=function(_super){__extends(MeasureResultNumber,_super);function MeasureResultNumber(iName,iValueKind){var _this=_super.call(this,iName)||this;_this.mValueKind=iValueKind;return _this}Object.defineProperty(MeasureResultNumber.prototype,"Value",{get:function(){return l_Model.getValueWithUnit(this.mValue,this.mValueKind)},enumerable:false,configurable:true});return MeasureResultNumber}(MeasureResultItem);var MeasureResultDistance=function(_super){__extends(MeasureResultDistance,_super);function MeasureResultDistance(iName,iValue){var _this=_super.call(this,iName,cLength)||this;_this.mValue=iValue;return _this}return MeasureResultDistance}(MeasureResultNumber);var MeasureResultArea=function(_super){__extends(MeasureResultArea,_super);function MeasureResultArea(iName,iValue){var _this=_super.call(this,iName,"Area")||this;_this.mValue=iValue;return _this}return MeasureResultArea}(MeasureResultNumber);var MeasureResultAngle=function(_super){__extends(MeasureResultAngle,_super);function MeasureResultAngle(iName,iValue){var _this=_super.call(this,iName,"Angle")||this;_this.mValue=iValue;return _this}return MeasureResultAngle}(MeasureResultNumber);var MeasureResultPoint3D=function(_super){__extends(MeasureResultPoint3D,_super);function MeasureResultPoint3D(iName,iValue){var _this=_super.call(this,iName)||this;_this.mValue=iValue.copy();return _this}Object.defineProperty(MeasureResultPoint3D.prototype,"Value",{get:function(){return l_Model.getValueWithUnit(this.mValue.x,"Length")+","+l_Model.getValueWithUnit(this.mValue.y,"Length")+","+l_Model.getValueWithUnit(this.mValue.z,"Length")},enumerable:false,configurable:true});return MeasureResultPoint3D}(MeasureResultItem);var MeasureLabelItem=function(){function MeasureLabelItem(iViewer,iResult,iColor){this.mViewer=iViewer;this.mResult=iResult;this.mColor=iColor;this.mNameTextBox=undefined;this.mValueTextBox=undefined;this.mNameBox=undefined;this.mValueBox=undefined}MeasureLabelItem.prototype.drawItem=function(){var renderer=this.mViewer.getHCMarkupManager().getRenderer();if(this.mNameBox)renderer.drawRectangle(this.mNameBox);if(this.mValueBox)renderer.drawRectangle(this.mValueBox);if(this.mNameTextBox)renderer.drawTextBox(this.mNameTextBox);if(this.mValueTextBox)renderer.drawTextBox(this.mValueTextBox)};MeasureLabelItem.prototype.setPosition=function(ioPos,iNameWidth,iValueWidth){if(!this.mNameBox||!this.mValueBox||!this.mNameTextBox||!this.mValueTextBox){this.mNameBox=new eDwTypes_1.HC.Markup.Shape.Rectangle;this.mNameBox.setFillColor(this.mColor?this.mColor:cGreyColor);this.mValueBox=new eDwTypes_1.HC.Markup.Shape.Rectangle;this.mValueBox.setFillColor(eDwTypes_1.HC.Color.white());this.mNameTextBox=new eDwTypes_1.HC.Markup.Shape.TextBox;this.mNameTextBox.getBoxPortion().setFillColor(eDwTypes_1.HC.Color.white());this.mNameTextBox.getBoxPortion().setStrokeWidth(0);this.mNameTextBox.getTextPortion().setFillColor(eDwTypes_1.HC.Color.white());this.mNameTextBox.getBoxPortion().setFillOpacity(0);this.mNameTextBox.getTextPortion().setFontFamily("arial");this.mValueTextBox=new eDwTypes_1.HC.Markup.Shape.TextBox;this.mValueTextBox.getBoxPortion().setFillColor(eDwTypes_1.HC.Color.white());this.mValueTextBox.getBoxPortion().setStrokeWidth(0);this.mValueTextBox.getTextPortion().setFillColor(cGreyColor);this.mValueTextBox.getBoxPortion().setFillOpacity(0);this.mValueTextBox.getTextPortion().setFontFamily("arial")}var renderer=this.mViewer.getHCMarkupManager().getRenderer();var nameSize=renderer.measureTextBox(this.mNameTextBox);var valueSize=renderer.measureTextBox(this.mValueTextBox);var height=Math.max(nameSize.y,valueSize.y);this.mNameBox.setSize(new eDwTypes_1.HC.Point2(iNameWidth,height));this.mValueBox.setSize(new eDwTypes_1.HC.Point2(iValueWidth,height));var namePos=ioPos.copy();var valuePos=ioPos.copy();valuePos.x+=iNameWidth;this.mNameBox.setPosition(namePos);this.mNameTextBox.setPosition(namePos);this.mValueBox.setPosition(valuePos);this.mValueTextBox.setPosition(valuePos);ioPos.y+=height};MeasureLabelItem.prototype.getWidth=function(){var renderer=this.mViewer.getHCMarkupManager().getRenderer();var nameSize=this.mNameTextBox?renderer.measureTextBox(this.mNameTextBox):{x:0,y:0};var valueSize=this.mValueTextBox?renderer.measureTextBox(this.mValueTextBox):{x:0,y:0};return{NameWidth:nameSize.x,ValueWidth:valueSize.x}};MeasureLabelItem.prototype.setStringContent=function(){if(this.mNameTextBox){this.mNameTextBox.setTextString(this.mResult.Name)}if(this.mValueTextBox){this.mValueTextBox.setTextString(this.mResult.Value)}};MeasureLabelItem.prototype.getText=function(){return this.mResult.Name+": "+this.mResult.Value};MeasureLabelItem.prototype.getBoundingBox=function(){if(!this.mNameBox||!this.mValueBox){return null}var size1=this.mValueBox.getSize();var posS=this.mNameBox.getPosition().copy();var pos1=this.mValueBox.getPosition();var posE=new eDwTypes_1.HC.Point2(pos1.x+size1.x,pos1.y+size1.y);var min=new eDwTypes_1.HC.Point2(Math.min(posS.x,posE.x),Math.min(posS.y,posE.y));var max=new eDwTypes_1.HC.Point2(Math.max(posS.x,posE.x),Math.max(posS.y,posE.y));return{Min:min,Max:max}};return MeasureLabelItem}();var MeasureBaseLine=function(){function MeasureBaseLine(iViewer,iPntWCHC0,iPntWCHC1,iLineColor){this.mViewer=iViewer;this.mColor=iLineColor||cGreyColor;this.setWCPts(iPntWCHC0,iPntWCHC1)}MeasureBaseLine.prototype.draw=function(){if(!this.isValid())return;if(this.mLine)this.updateLinePts();else this.createHCLine();var renderer=this.mViewer.getHCMarkupManager().getRenderer();renderer.drawLine(this.mLine)};MeasureBaseLine.prototype.getLineColorHC=function(){return this.mColor};MeasureBaseLine.prototype.getMiddleWCPtHC=function(){var middle=eDwTypes_1.HC.Point3.scale(eDwTypes_1.HC.Point3.add(this.mWCEndPtHC0,this.mWCEndPntHC1),.5);return middle};MeasureBaseLine.prototype.setLineColor=function(iColor){this.mColor=iColor;if(this.mLine)this.setColorOnHCLine(iColor);else this.createHCLine()};MeasureBaseLine.prototype.isValid=function(){return this.mWCEndPtHC0&&this.mWCEndPntHC1&&eDwGeomUtils.isValidHCPoint(this.mWCEndPtHC0)&&eDwGeomUtils.isValidHCPoint(this.mWCEndPntHC1)};MeasureBaseLine.prototype.createHCLine=function(){this.mLine=new eDwTypes_1.HC.Markup.Shape.Line;this.setColorOnHCLine(this.mColor);this.updateLinePts();return this};MeasureBaseLine.prototype.copyFrom=function(iSrcLine){if(iSrcLine.mLine){this.mLine.setStrokeWidth(iSrcLine.mLine.getStrokeWidth());this.mLine.setEndcapType(iSrcLine.mLine.getEndEndcapType());this.mLine.setStartEndcapSize(iSrcLine.mLine.getStartEndcapSize());this.mLine.setEndEndcapSize(iSrcLine.mLine.getEndEndcapSize());this.mLine.setStartEndcapColor(iSrcLine.mLine.getStartEndcapColor());this.mLine.setEndEndcapColor(iSrcLine.mLine.getEndEndcapColor())}this.setWCPts(iSrcLine.mWCEndPtHC0,iSrcLine.mWCEndPntHC1);this.mColor=iSrcLine.mColor};MeasureBaseLine.prototype.setWCPts=function(iWCStartPntHC,iWCEndPntHC){if(!iWCStartPntHC||!iWCEndPntHC||!eDwGeomUtils.isValidHCPoint(iWCStartPntHC)||!eDwGeomUtils.isValidHCPoint(iWCEndPntHC)){console.warn("One or more measure points are invalid");return}this.mWCEndPtHC0=iWCStartPntHC.copy();this.mWCEndPntHC1=iWCEndPntHC.copy()};MeasureBaseLine.prototype.updateLinePts=function(){var viewHC=this.mViewer.getHCView();this.mLine.setP1(eDwTypes_1.HC.Point2.fromPoint3(viewHC.projectPoint(this.mWCEndPtHC0)));this.mLine.setP2(eDwTypes_1.HC.Point2.fromPoint3(viewHC.projectPoint(this.mWCEndPntHC1)))};MeasureBaseLine.prototype.setColorOnHCLine=function(iColor){this.mLine.setStrokeColor(iColor);this.mLine.setEndEndcapColor(iColor);this.mLine.setStartEndcapColor(iColor)};return MeasureBaseLine}();var MeasureLine=function(_super){__extends(MeasureLine,_super);function MeasureLine(iViewer,iPntHC0,iPntHC1,iLineColor){var _this=_super.call(this,iViewer,iPntHC0,iPntHC1,iLineColor)||this;if(!_this.isValid())_this.createHCLine();return _this}MeasureLine.prototype.copy=function(){var copy=new MeasureLine(this.mViewer,this.mWCEndPtHC0,this.mWCEndPntHC1,this.getLineColorHC());copy.copyFrom(this);return copy};MeasureLine.prototype.createHCLine=function(){_super.prototype.createHCLine.call(this).setWidthAndEndCapsOnHCLine();return this};MeasureLine.prototype.setWidthAndEndCapsOnHCLine=function(){this.mLine.setStrokeWidth(3);this.mLine.setEndcapType(eDwTypes_1.HC.Markup.Shape.EndcapType.None)};return MeasureLine}(MeasureBaseLine);var MeasureLeaderLine=function(_super){__extends(MeasureLeaderLine,_super);function MeasureLeaderLine(iViewer,iPntHC0,iPntHC1,iLineColor){var _this=_super.call(this,iViewer,iPntHC0,iPntHC1,iLineColor)||this;if(!_this.isValid())_this.createHCLine();return _this}MeasureLeaderLine.prototype.copy=function(){var copy=new MeasureLeaderLine(this.mViewer,this.mWCEndPtHC0,this.mWCEndPntHC1,this.getLineColorHC());copy.copyFrom(this);return copy};MeasureLeaderLine.prototype.getLeaderStartPos=function(){return l_getPosForPnt(this.mViewer,this.mWCEndPtHC0)};MeasureLeaderLine.prototype.getLeaderEndPos=function(){return l_getPosForPnt(this.mViewer,this.mWCEndPntHC1)};MeasureLeaderLine.prototype.setLeaderEndPos=function(iPos){this.setWCPts(this.mWCEndPtHC0,eDwGeomUtils.screenToWorld(iPos,this.mViewer.getHCView()))};MeasureLeaderLine.prototype.setLeaderEnd=function(iPoint){this.mWCEndPntHC1=iPoint.copy()};MeasureLeaderLine.prototype.getLeaderStart=function(){return this.mWCEndPtHC0};return MeasureLeaderLine}(MeasureBaseLine);var MeasureDistLine=function(_super){__extends(MeasureDistLine,_super);function MeasureDistLine(iViewer,iPntHC0,iSelObj0,iPntHC1,iSelObj1,iLineColor,iUseArrowEnds){if(iUseArrowEnds===void 0){iUseArrowEnds=true}var _this=_super.call(this,iViewer,iPntHC0,iPntHC1,iLineColor)||this;_this.mStartSelObj=iSelObj0;_this.mEndSelObj=iSelObj1;_this.mDistColor=iLineColor||cLineDistanceColor;_this.mUseArrowEnds=iUseArrowEnds;if(!_this.isValid())_this.createHCLine();return _this}MeasureDistLine.prototype.copy=function(){var copy=new MeasureDistLine(this.mViewer,this.mWCEndPtHC0,this.mStartSelObj,this.mWCEndPntHC1,this.mEndSelObj,this.getLineColorHC(),this.mUseArrowEnds);copy.copyFrom(this);return copy};MeasureDistLine.prototype.setSelObjEndPts=function(iWCStartPntHC,iStartSelObj,iWCEndPntHC,iEndSelObj){_super.prototype.setWCPts.call(this,iWCStartPntHC,iWCEndPntHC);this.mStartSelObj=iStartSelObj;this.mEndSelObj=iEndSelObj};MeasureDistLine.prototype.getDistance=function(){var localPt0HC=this.mStartSelObj.getAsLocalPoint(this.mWCEndPtHC0);var localPt1HC=this.mEndSelObj.getAsLocalPoint(this.mWCEndPntHC1);return eDwTypes_1.HC.Point3.subtract(localPt0HC,localPt1HC).length()};MeasureDistLine.prototype.createHCLine=function(){_super.prototype.createHCLine.call(this).setHCLineAttributes();return this};MeasureDistLine.prototype.setHCLineAttributes=function(){this.mLine.setStrokeWidth(3);if(this.mUseArrowEnds){this.mLine.setEndcapType(eDwTypes_1.HC.Markup.Shape.EndcapType.Arrowhead)}this.mLine.setStartEndcapSize(5);this.mLine.setEndEndcapSize(5);this.mLine.setStartEndcapColor(this.mDistColor);this.mLine.setEndEndcapColor(this.mDistColor);this.mLine.setStrokeColor(this.mDistColor)};return MeasureDistLine}(MeasureBaseLine);var MeasureLabel=function(){function MeasureLabel(iViewer,iPnt3DHC,iDrawEnabled){if(iDrawEnabled===void 0){iDrawEnabled=true}this.mViewer=iViewer;this.mItems=[];this.mDrawEnabled=iDrawEnabled;this.createLeaderIfPointValid(iPnt3DHC,iPnt3DHC)}MeasureLabel.prototype.reset=function(){this.mItems=[]};MeasureLabel.prototype.drawLabel=function(){if(!this.isValid()||!this.mDrawEnabled)return;this.setLabelPosition(this.mLeader.getLeaderEndPos());var n=this.mItems.length;if(0===n)return;this.mLeader.draw();for(var i=0;icanvasSize.x&&bboxSize.xcanvasSize.y&&bboxSize.y1){this.mLineDist.draw();if(!this.mLineNormal&&eDwMeasureEntities.ShowDelta&&this.mDelta){this.mDelta.draw(iImmediateDrawMode)}var viewHC=this.mViewer.getHCView();this.mEndGlyph0.setCenter(eDwTypes_1.HC.Point2.fromPoint3(viewHC.projectPoint(this.mWCPntsHC[0])));this.mEndGlyph1.setCenter(eDwTypes_1.HC.Point2.fromPoint3(viewHC.projectPoint(this.mWCPntsHC[1])));if(!iImmediateDrawMode){var renderer=this.mViewer.getHCMarkupManager().getRenderer();renderer.drawCircle(this.mEndGlyph0);renderer.drawCircle(this.mEndGlyph1)}}};MeasureAuxDelta.prototype.getLabelData=function(){var labelData={};var labelName=this.mLineNormal?cNormalDistance:this.mSomeCoordsArcCenters?cCenterDistance:cDistance;labelData[cDistance]=new MeasureResultDistance(labelName,this.getDistance());var minResultDist=new MeasureResultDistance(cMinDistance,this.mModelSpaceMinDist);if(parseFloat(minResultDist.Value)>0){labelData[cMinDistance]=minResultDist}var maxResultDist=new MeasureResultDistance(cMaxDistance,this.mModelSpaceMaxDist);if(parseFloat(maxResultDist.Value)>0){labelData[cMaxDistance]=maxResultDist}if(!this.mLineNormal&&eDwMeasureEntities.ShowDelta&&this.mDelta){$.extend(labelData,this.mDelta.getLabelData())}return labelData};MeasureAuxDelta.prototype.getLabels=function(){var labels=[];if(this.getDistance()1&&this.mLineDist?eDwTypes_1.HC.Point3.subtract(this.mWCPntsHC[0],this.mWCPntsHC[1]):eDwTypes_1.HC.Point3.zero()};MeasureAuxDelta.prototype.getDistance=function(){return this.mLineDist?this.mLineDist.getDistance():0};MeasureAuxDelta.prototype.setDistLineColor=function(iColor){this.mLineColor=iColor};MeasureAuxDelta.prototype.setPointColor=function(iColor){this.mEndGlyph0.setFillColor(iColor);this.mEndGlyph1.setFillColor(iColor)};MeasureAuxDelta.prototype.setMinDist=function(iDist){this.mModelSpaceMinDist=iDist};MeasureAuxDelta.prototype.setMaxDist=function(iDist){this.mModelSpaceMaxDist=iDist};Object.defineProperty(MeasureAuxDelta.prototype,"LineNormal",{get:function(){return this.mLineNormal},set:function(iEnable){this.mLineNormal=iEnable},enumerable:false,configurable:true});Object.defineProperty(MeasureAuxDelta.prototype,"SomeCoordsArcCenters",{get:function(){return this.mSomeCoordsArcCenters},set:function(iEnable){this.mSomeCoordsArcCenters=iEnable},enumerable:false,configurable:true});MeasureAuxDelta.prototype.hasDistance=function(){var deltaDist=this.getDistance();return deltaDist>cLengthTol?true:false};return MeasureAuxDelta}();var MeasureDelta=function(){function MeasureDelta(iViewer){this.mViewer=iViewer;this.reset()}MeasureDelta.prototype.set=function(iStartWCPtHC,iEndWCPtHC,iSelObj0,iSelObj1){var deltas=l_getDeltas(iStartWCPtHC,iEndWCPtHC,iSelObj0,iSelObj1);var deltaWCPt0HC=deltas[0];var deltaWCPt1HC=deltas[1];this.mLineDeltaMap[cDeltaX].setSelObjEndPts(iStartWCPtHC,iSelObj0,deltaWCPt0HC,iSelObj1);this.mLineDeltaMap[cDeltaY].setSelObjEndPts(deltaWCPt0HC,iSelObj0,deltaWCPt1HC,iSelObj1);this.mLineDeltaMap[cDeltaZ].setSelObjEndPts(deltaWCPt1HC,iSelObj1,iEndWCPtHC,iSelObj1)};MeasureDelta.prototype.getLabels=function(){var labelData=this.getLabelData();var numNonZeroLabelData=0;var nonZeroLabelData={};for(var _i=0,_a=[cDeltaX,cDeltaY,cDeltaZ];_i<_a.length;_i++){var deltaKey=_a[_i];var dist=this.mLineDeltaMap[deltaKey].getDistance();if(dist>cLengthTol){nonZeroLabelData[deltaKey]=labelData[deltaKey];numNonZeroLabelData++}}if(numNonZeroLabelData===1)nonZeroLabelData={};var labels=[];for(var key in nonZeroLabelData){var lineDelta=this.mLineDeltaMap[key];var label=new MeasureLabel(this.mViewer,lineDelta.getMiddleWCPtHC());label.addItem(labelData[key],lineDelta.getLineColorHC());if(label.isValid())labels.push(label)}return labels};MeasureDelta.prototype.draw=function(iImmediateDrawMode){if(this.isDeltaEnabled()){for(var key in this.mLineDeltaMap){var deltaLine=this.mLineDeltaMap[key];if(deltaLine.getDistance()>cLengthTol)deltaLine.draw()}}};MeasureDelta.prototype.reset=function(){this.mLineDeltaMap={}};MeasureDelta.prototype.copy=function(){var auxDeltaCopy=new MeasureDelta(this.mViewer);for(var key in this.mLineDeltaMap){auxDeltaCopy.mLineDeltaMap[key]=this.mLineDeltaMap[key].copy()}return auxDeltaCopy};MeasureDelta.prototype.getLabelData=function(){var labelData={};if(this.isDeltaEnabled()){for(var _i=0,_a=[cDeltaX,cDeltaY,cDeltaZ];_i<_a.length;_i++){var delta=_a[_i];labelData[delta]=new MeasureResultDistance(delta,this.mLineDeltaMap[delta].getDistance())}}return labelData};MeasureDelta.prototype.getText=function(){if(this.isDeltaEnabled()){var data=this.getLabelData();return"Delta : "+data[cDeltaX].Value+", "+data[cDeltaY].Value+", "+(""+data[cDeltaZ].Value)}return""};MeasureDelta.create=function(iViewer,iStartWCPtHC,iEndWCPtHC,iSelObj0,iSelObj1){var measureDelta=new MeasureDelta(iViewer);var deltas=l_getDeltas(iStartWCPtHC,iEndWCPtHC,iSelObj0,iSelObj1);var deltaWCPt0HC=deltas[0];var deltaWCPt1HC=deltas[1];measureDelta.mLineDeltaMap[cDeltaX]=new MeasureDistLine(iViewer,iStartWCPtHC,iSelObj0,deltaWCPt0HC,iSelObj1,eDwTypes_1.HC.Color.red(),false);measureDelta.mLineDeltaMap[cDeltaY]=new MeasureDistLine(iViewer,deltaWCPt0HC,iSelObj0,deltaWCPt1HC,iSelObj1,new eDwTypes_1.HC.Color(0,128,0),false);measureDelta.mLineDeltaMap[cDeltaZ]=new MeasureDistLine(iViewer,deltaWCPt1HC,iSelObj1,iEndWCPtHC,iSelObj1,eDwTypes_1.HC.Color.blue(),false);return measureDelta};MeasureDelta.prototype.isDeltaEnabled=function(){return eDwMeasureEntities.ShowDelta&&!!this.mLineDeltaMap[cDeltaX]};return MeasureDelta}();var MeasureAuxDistance=function(){function MeasureAuxDistance(iViewer){this.mViewer=iViewer;this.mDistLine=new MeasureAuxDelta(iViewer);this.mNDistLine=new MeasureAuxDelta(iViewer,cAuxDistanceNormalDistanceLineColor,true);this.mNDistLine.setPointColor(cAuxDistanceNormalDistancePointColor);this.mNormalDistExtLines=[]}MeasureAuxDistance.prototype.reset=function(){this.mDistLine.reset();this.mNDistLine.reset();this.mNDistLine.setDistLineColor(cAuxDistanceNormalDistanceLineColor);this.mNDistLine.LineNormal=true;this.mNDistLine.setPointColor(cAuxDistanceNormalDistancePointColor);this.mNormalDistExtLines=[]};MeasureAuxDistance.prototype.draw=function(iImmediateDrawMode){if(!this.getLabels().length)return;this.mDistLine.draw(iImmediateDrawMode);this.mNDistLine.draw(iImmediateDrawMode);for(var _i=0,_a=this.mNormalDistExtLines;_i<_a.length;_i++){var normalExtLine=_a[_i];normalExtLine.draw()}};MeasureAuxDistance.prototype.setByPointPoint=function(iWCPntHC0,iSelObj0,iWCPntHC1,iSelObj1,isSomeCoordsArcCenters){if(isSomeCoordsArcCenters===void 0){isSomeCoordsArcCenters=false}this.reset();this.mDistLine.setWCDeltaEnds([iWCPntHC0,iWCPntHC1],[iSelObj0,iSelObj1]);this.mDistLine.SomeCoordsArcCenters=isSomeCoordsArcCenters;this.mNDistLine.setWCDeltaEnds([iWCPntHC0,iWCPntHC1],[iSelObj0,iSelObj1]);this.setNormalDistExtPoints([iWCPntHC0,iWCPntHC0,iWCPntHC1,iWCPntHC1]);this.avoidDuplication()};MeasureAuxDistance.prototype.setByPointLine=function(iPntWCHC,iSelObj0,iEdgeHC,iSelObj1,isSomeCoordsArcCenters){if(isSomeCoordsArcCenters===void 0){isSomeCoordsArcCenters=false}var pickPntWCHC=iSelObj1.getPosition();var endPntsWCHC=l_getLineEndPts(iSelObj1);var vecWCHC=eDwTypes_1.HC.Point3.subtract(endPntsWCHC.P0HC,endPntsWCHC.P1HC);if(vecWCHC.length()<1e-6)return;vecWCHC.normalize();var k=eDwTypes_1.HC.Point3.dot(eDwTypes_1.HC.Point3.subtract(iPntWCHC,pickPntWCHC),vecWCHC);var basePntWCHC=eDwTypes_1.HC.Point3.add(pickPntWCHC,eDwTypes_1.HC.Point3.scale(vecWCHC,k));var vecWCHC0=eDwTypes_1.HC.Point3.subtract(endPntsWCHC.P0HC,basePntWCHC);var vecWCHC1=eDwTypes_1.HC.Point3.subtract(endPntsWCHC.P1HC,basePntWCHC);if(eDwTypes_1.HC.Point3.dot(vecWCHC0,vecWCHC1)<0){this.setByPointPoint(iPntWCHC,iSelObj0,basePntWCHC,iSelObj1,isSomeCoordsArcCenters)}else{this.reset();var pntWCHC=vecWCHC0.length()normalDist){result.push(cDistance+": "+labelData[cDistance].Value)}if(this.mNDistLine.getWCDeltaEnds().length&&normalDist){result.push((this.mNDistLine.LineNormal?"Normal ":"")+cDistance+": "+labelData[cDistance].Value)}var minDistResultItem=labelData[cMinDistance];if(minDistResultItem){result.push(cMinDistance+": "+minDistResultItem.Value)}var maxDistResultItem=labelData[cMaxDistance];if(maxDistResultItem){result.push(cMaxDistance+": "+maxDistResultItem.Value)}if(eDwMeasureEntities.ShowDelta){var nDeltaPt=this.mNDistLine.getDelta();var deltaPt=this.mNDistLine.LineNormal?this.mDistLine.getDelta():nDeltaPt;if(!deltaPt.equalsWithTolerance(eDwTypes_1.HC.Point3.zero(),cLengthTol)){result.push(distLine.getText())}}return result.join("\n")};MeasureAuxDistance.getAngle=function(iV0,iV1){var vec0=iV0.copy();var vec1=iV1.copy();vec0.normalize();vec1.normalize();var dotVal=eDwTypes_1.HC.Point3.dot(vec0,vec1);if(0===dotVal)return 90;dotVal=Math.min(dotVal,1);dotVal=Math.max(dotVal,-1);var angle=Math.acos(dotVal);var angleDgree=angle*180/Math.PI;var n=eDwTypes_1.HC.Point3.cross(vec0,vec1);n.normalize();if(isNaN(n.x)||isNaN(n.y)||isNaN(n.z))return 0;return angleDgree};MeasureAuxDistance.prototype.setMinMaxForCircles=function(iCircleHC0,iCircleHC1){function setMinMax(ioAuxDelta,iNominalDist,iRadiiDist){if(!ioAuxDelta.getWCDeltaEnds().length){return}if(iNominalDist>iRadiiDist){ioAuxDelta.setMinDist(iNominalDist-iRadiiDist)}ioAuxDelta.setMaxDist(iNominalDist+iRadiiDist)}var circlePlaneHC0=eDwTypes_1.HC.Plane.createFromPointAndNormal(iCircleHC0.origin,iCircleHC0.normal);var projPnt=eDwGeomUtils.dropPointOnPlane(iCircleHC1.origin,circlePlaneHC0);var dot=eDwTypes_1.HC.Point3.dot(iCircleHC0.normal,iCircleHC1.normal);var dist=projPnt.subtract(iCircleHC0.origin).length();console.debugLog("Measure","2 circles/arcs: dot = "+dot+" dist = "+dist);if(1-Math.abs(dot)cLengthTol){var radiiDist=iCircleHC0.radius+iCircleHC1.radius;setMinMax(this.mDistLine,dist,radiiDist);setMinMax(this.mNDistLine,dist,radiiDist)}};MeasureAuxDistance.prototype.avoidDuplication=function(){var delta0=this.mDistLine.getDelta();var delta1=this.mNDistLine.getDelta();var len0=delta0.length();var len1=delta1.length();var lenMax=Math.max(len0,len1);var lenDiff=Math.abs(len0-len1);if(0===lenMax||lenDiff/lenMax1){this.addDisplayMarker(iSelObjs[0]);delete this.mDelta;delete this.mDistLine}this.addDisplayMarker(iSelObjs[n-1]);if(eDwMeasureEntities.PointToPoint&&this.mPntData.length===2){var selObj0=this.mPntData[0].SelObj;var selObj1=this.mPntData[1].SelObj;var pntWCHC0=selObj0.getPosition();var pntWCHC1=selObj1.getPosition();var absLenTol=eDwGeomUtils.cAbsLengthTol;if(!pntWCHC0.equalsWithTolerance(pntWCHC1,absLenTol)){this.mDistLine=new MeasureDistLine(this.mViewer,pntWCHC0,selObj0,pntWCHC1,selObj1);this.mDistLine.draw();this.mDelta=MeasureDelta.create(this.mViewer,pntWCHC1,pntWCHC0,selObj1,selObj0)}}};MeasureAuxPick.prototype.getText=function(){var text="";if(eDwMeasureEntities.PointToPoint){text=this.mDistResultText;if(this.mDelta)text+="\n"+this.mDelta.getText()}return text};MeasureAuxPick.prototype.addDisplayMarker=function(iSelObj){var cWidthEdge=3;var cPointSize=7;var pntWCHC=iSelObj.getPosition().copy();var shapeCircleHC=new eDwTypes_1.HC.Markup.Shape.Circle;shapeCircleHC.setCenter(eDwTypes_1.HC.Point2.fromPoint3(this.mViewer.getHCView().projectPoint(pntWCHC)));shapeCircleHC.setFillColor(cAuxPickPointFillColor);shapeCircleHC.setStrokeColor(cAuxPickPointStrokeColor);shapeCircleHC.setStrokeWidth(cWidthEdge);shapeCircleHC.setRadius(cPointSize);this.mPntData.push({SelObj:iSelObj,Circle:shapeCircleHC});return shapeCircleHC};MeasureAuxPick.prototype.drawEndPnts=function(){var viewHC=this.mViewer.getHCView();var renderer=this.mViewer.getHCMarkupManager().getRenderer();for(var i=0;i0?n-1:n}for(var i=startIdx;i0){labelsToBeDistributed=this.mInfoLabels.slice().concat(this.mResultLabels)}}this.distributeLabels(labelsToBeDistributed);if(!this.mImmediateDrawMode){this.addMarkupLabels()}};MeasureAuxGeo.prototype.updateLastInfoLabels=function(){this.updateInfoLabel(this.getLabels().length-1)};MeasureAuxGeo.prototype.updateInfoLabel=function(iIndex){this.mInfoLabels=[];function addTo(iCurrIndex,iLabels,ioLabels){if(iLabels.length>iCurrIndex&&iCurrIndex>=0){var label=iLabels[iCurrIndex];if(label.setDefaultEndPos()){label.setStringContent();ioLabels.push(label)}}}addTo(iIndex,this.getLabels(),this.mInfoLabels)};MeasureAuxGeo.prototype.getInfoLabelText=function(){var output=[];var labels=this.getLabels();for(var i=0;icAngleTol?angleRange+Math.PI:angleRange;var percRange=angleRange/(2*Math.PI);len*=percRange;area*=percRange;angle*=percRange}var circularArc={OriginWCHC:iSelObj.getAsLocalPoint(ioCircleHC.origin),NormalWCHC:ioCircleHC.normal,StartPtWCHC:startPt,EndPtWCHC:endPt,Length:len,Area:area,Diameter:ioCircleHC.radius*2,Angle:angle};return circularArc}function l_closestPoints(iPntHC0,iPntHC1){var pntHC0=iPntHC0[0].copy();var pntHC1=iPntHC1[0].copy();var minDist=eDwTypes_1.HC.Point3.subtract(iPntHC0[0],iPntHC1[0]).length();for(var i=0;i0||eDwTypes_1.HC.Point3.dot(vecL0P0HC,vecL0P1HC)>0){var closePnts=l_closestPoints(pntsL0HC,pntsL1HC);distPntHC0=closePnts.P0HC;distPntHC1=closePnts.P1HC}return{PntHC0:origPntHC0,PntHC1:origPntHC1,PntHC2:distPntHC0,PntHC3:distPntHC1}}function l_distanceLineLinePara(iLineHC0,iLineHC1,iPntHC0,iPntHC1){var vecHC0=eDwTypes_1.HC.Point3.subtract(iLineHC0.P0HC,iLineHC0.P1HC);vecHC0.normalize();var k=eDwTypes_1.HC.Point3.dot(vecHC0,eDwTypes_1.HC.Point3.subtract(iPntHC1,iPntHC0))/eDwTypes_1.HC.Point3.dot(vecHC0,vecHC0);var basePnt1HC=eDwTypes_1.HC.Point3.add(iPntHC0,eDwTypes_1.HC.Point3.scale(vecHC0,k));var vecL0P0HC=eDwTypes_1.HC.Point3.subtract(iLineHC0.P0HC,basePnt1HC);var vecL0P1HC=eDwTypes_1.HC.Point3.subtract(iLineHC0.P1HC,basePnt1HC);if(eDwTypes_1.HC.Point3.dot(vecL0P0HC,vecL0P1HC)<0){return{PntHC0:basePnt1HC.copy(),PntHC1:iPntHC1.copy(),PntHC2:basePnt1HC.copy(),PntHC3:iPntHC1.copy()}}var tmp=l_closestPoints([iLineHC1.P0HC,iLineHC1.P1HC],[iLineHC0.P0HC,iLineHC0.P1HC]);return{PntHC0:basePnt1HC.copy(),PntHC1:iPntHC1,PntHC2:tmp.P1HC,PntHC3:tmp.P0HC}}function l_adjustLeaderEndByStart(iPoints){if(0===iPoints.length)return[];function computeAngle(iVect){var angle=Math.atan2(iVect.y,iVect.x);var degrees=180*angle/Math.PI;return(360+Math.round(degrees))%360}function compare(iA,iB){if(iA.angiB.ang)return 1;return 0}var targetRadius=90;var center=new eDwTypes_1.HC.Point2(0,0);for(var i=0;i-1){this.mSelObjs.splice(idx,1)}}return[2]}}))}))})()};eDwMeasureOperator.prototype.clearMeasureEntities=function(){this.mMeasureEntities.reset()};eDwMeasureOperator.prototype.highlightEntityTempAt=function(idx){this.mMeasureEntities.highlightTemporaryEntityAt(idx)};eDwMeasureOperator.prototype.dehighlightAllTemporaryEntity=function(){this.mMeasureEntities.dehighlightAllTemporaryEntity();this.resetTempHighlight()};eDwMeasureOperator.prototype.getMeasureMode=function(){return this.mMeasureMode};eDwMeasureOperator.prototype.setMeasureMode=function(iMode){this.mMeasureMode=iMode};eDwMeasureOperator.prototype.setPointToPointMode=function(iEnable){this.mMeasureEntities.updatePointToPoint(iEnable)};eDwMeasureOperator.prototype.setShowDelta=function(iEnable){this.mMeasureEntities.updateDelta(iEnable)};eDwMeasureOperator.prototype.highlightMeasuringItem=function(iSelObj){this.mSelObjs.push(iSelObj);this.Viewer.HCViewer.selectionManager.add(iSelObj)};eDwMeasureOperator.prototype.dehighlightMeasuringItems=function(){this.mSelObjs=[];this.Viewer.HCViewer.selectionManager.clear()};eDwMeasureOperator.prototype.removeMeasuringItemTempHighlight=function(){for(var _i=0,_a=this.mSelObjs;_i<_a.length;_i++){var selObj=_a[_i];eDwMeasureEntities.highlightEntity(selObj,this.Viewer.getModel(),false)}};eDwMeasureOperator.prototype.resetTempHighlight=function(){eDwMeasureEntities.highlightEntity(this.mTempHighlightItem,this.Viewer.getModel(),false);this.removeMeasuringItemTempHighlight()};eDwMeasureOperator.prototype.resetSelections=function(){var model=this.Viewer.getModel();var modelHC=model.getHCModel();var arraySize=this.mSelectionArray.length;for(var i=0;i"+"

"+""+entityClass+"-"+entityIndex+" "+""+desc+"
"+"
";_b.label=10;case 10:++i;return[3,1];case 11:return[2,generatedHTML]}}))}))};return eDwUIMeasureHTMLGenerator}(eDwUIHTMLGenerator_1.eDwUIHTMLGenerator);return eDwUIMeasureHTMLGenerator}));define("eDwUIMeasurePlugin",["require","exports","eDwEventMgr","eDwKeyMgr","eDwUIUtils","eDwMeasureMgr","eDwUIMeasureHTMLGenerator","eDwTypes","eDwUIBasePlugin","eDwEvents","eDwMeasureEvents","eDwUIShortcutMenu"],(function(require,exports,eDwEventMgr,eDwKeyMgr_1,eDwUIUtils,eDwMeasureMgr,eDwUIMeasureHTMLGenerator,eDwTypes_3,eDwUIBasePlugin_1,eDwEvents_2,eDwMeasureEvents_2,eDwUIShortcutMenu_1){"use strict";var eDwUIMeasurePlugin=function(_super){__extends(eDwUIMeasurePlugin,_super);function eDwUIMeasurePlugin(iViewer,iViewerFeatOpts){var _this=this;var buttonInfo={ID:"#edrawings-button-measure"};_this=_super.call(this,"Measure",iViewer,buttonInfo,iViewerFeatOpts)||this;_this.initPluginButton();return _this}eDwUIMeasurePlugin.prototype.init=function(){return __awaiter(this,void 0,void 0,(function(){var panelsToLoad,model,value,measureButton;return __generator(this,(function(_a){switch(_a.label){case 0:panelsToLoad=[{ID:c_measurePanelID,HTML:"measurepanel.html"}];return[4,_super.prototype.init.call(this,panelsToLoad)];case 1:_a.sent();model=this.mViewer.getModel();value=model.getProperty("measure");eDwUIUtils.hide("#edrawings-button-measure",false);measureButton=$("#edrawings-button-measure");measureButton[value==="true"?"removeClass":"addClass"]("edrawings-disabled-button");this.mMeasureMgr=new eDwMeasureMgr(this.mViewer);eDwUIUtils.setUIGenerator(c_measurePanelID,new eDwUIMeasureHTMLGenerator(this.mViewer,c_measurePanelID));return[2]}}))}))};eDwUIMeasurePlugin.prototype.onClick=function(iActivate){_super.prototype.onClick.call(this,iActivate);if(iActivate){eDwUIUtils.activateUI(this.PluginButtonID,c_measurePanelID)}};eDwUIMeasurePlugin.prototype.onActivate=function(iButtonJQ){var _this=this;if(!_super.prototype.onActivate.call(this,iButtonJQ))return false;eDwUIUtils.addPanelModeEvents(c_measurePanelID,c_eventIDSuffix,"#"+iButtonJQ.attr("id"));var shortcutMenu=eDwUIShortcutMenu_1.eDwUIShortcutMenu.get();if(!shortcutMenu.isEmpty()){shortcutMenu.addMenuSeparator(this.PluginGroupName)}shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-measure-remove",(function(iEvent,iUIItemJQ,iArg){var selMeasureItem=$(c_measurePanelID+" .edrawings-list-selected");if(selMeasureItem){var indexStr=selMeasureItem.attr("index");if(indexStr){var index=parseInt(indexStr);_this.mMeasureMgr.removeMeasureEntityAt(index)}}eDwUIShortcutMenu_1.eDwUIShortcutMenu.hide()}));shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-measure-clear",(function(iEvent,iUIItemJQ,iArg){_this.mMeasureMgr.clearMeasureEntities();_this.mMeasureMgr.dehighlightAllSelectEntity();eDwUIShortcutMenu_1.eDwUIShortcutMenu.hide()}));var selectorName=c_measurePanelID+" .edrawings-measure-entities-list-item";this.mUIHTMLEventMgr.addDelegatedEventHandler(selectorName,"click",(function(iEvent){var targetJQ=$(iEvent.target);if(!targetJQ||!targetJQ.length)return;eDwUIShortcutMenu_1.eDwUIShortcutMenu.hide();_this.updateMeasureSelection(targetJQ[0],selectorName)}));this.mUIHTMLEventMgr.addDelegatedEventHandler(selectorName,"mousedown",(function(iEvent){var eventJQ=iEvent;if(!eDwKeyMgr_1.eDwKeyMgr.isRMBPressed(eventJQ)){return}_this.updateMeasureSelection(eventJQ.target,selectorName);(function(){return __awaiter(_this,void 0,void 0,(function(){var screenPos;return __generator(this,(function(_a){switch(_a.label){case 0:screenPos=new eDwTypes_3.HC.Point2(eventJQ.clientX,eventJQ.clientY);return[4,eDwEventMgr.get().fireEvent(eDwEvents_2.RightClickEvent,this.mViewer,screenPos,null,this.PluginGroupName)];case 1:_a.sent();return[2]}}))}))})()}));this.mUIHTMLEventMgr.addDelegatedEventHandler(c_measurePanelID+" .edrawings-measure-entities-remove","click",(function(iEvent){var targetJQ=$(iEvent.target);var idxStr=targetJQ.parent().attr("index");if(!idxStr)return;var idx=parseInt(idxStr,10);_this.mMeasureMgr.removeMeasureEntityAt(idx)}));this.mUIHTMLEventMgr.addDelegatedEventHandler(c_measurePanelID+" .measure-filter-button","click",(function(iEvent){var target=$(iEvent.target);if(target.hasClass("state-on-button")){target.removeClass("state-on-button")}else{target.addClass("state-on-button")}_this.mMeasureMgr.setMeasureMode(l_getCurrentMeasureMode())}));this.mUIHTMLEventMgr.addDelegatedEventHandler(c_measurePanelID+" .edrawings-measure-delta-button","click",(function(iEvent){var target=$(iEvent.target);_this.mMeasureMgr.setMeasureDelta(!target.hasClass("state-on-button"));target.toggleClass("state-on-button")}));this.mUIHTMLEventMgr.addDelegatedEventHandler(c_measurePanelID+" .edrawings-measure-pickpoint-button","click",(function(iEvent){var target=$(iEvent.target);var isSelected=target.hasClass("state-on-button");_this.mMeasureMgr.setPointToPointMode(!isSelected);target.toggleClass("state-on-button")}));this.mUIHTMLEventMgr.addDelegatedEventHandler(c_measurePanelID+" .measure-unit-selector","change",(function(iEvent){var lengthUnit=$("#edrawings-measure-distant-unit").val();var angleUnit=$("#edrawings-measure-angle-unit").val();_this.mMeasureMgr.setMeasureUnits(lengthUnit,angleUnit)}));var eventMgr=eDwEventMgr.get();eventMgr.addEventHandlerFunc(eDwMeasureEvents_2.MeasurementRefreshEvent,l_onMeasurementRefresh);eventMgr.addEventHandlerFunc(eDwMeasureEvents_2.MeasurementSelectionEvent,l_onMeasurementSelected);eventMgr.addEventHandlerFunc(eDwMeasureEvents_2.MeasurementDeselectAllEvent,l_onMeasurementDeselectAll);this.addAppObjEvent(eDwEvents_2.ModelViewChangeEvent,"onModelViewChange",true);this.mMeasureMgr.activateMeasure(this.mMeasureMgr.getMeasureMode());l_syncMeasureModeUI(this.mMeasureMgr,this.mViewer.getModel().getUserUnits());return true};eDwUIMeasurePlugin.prototype.onDeactivate=function(iButtonJQ){if(!_super.prototype.onDeactivate.call(this,iButtonJQ))return false;eDwUIUtils.deactivateMoveInput(c_eventIDSuffix);this.mMeasureMgr.deactivateMeasure();var shortcutMenu=eDwUIShortcutMenu_1.eDwUIShortcutMenu.get();shortcutMenu.removeAllMenuItems(this.PluginGroupName);this.mUIHTMLEventMgr.removeAllEventHandlers();var eventMgr=eDwEventMgr.get();eventMgr.removeEventHandlerFunc(eDwMeasureEvents_2.MeasurementRefreshEvent,"l_onMeasurementRefresh");eventMgr.removeEventHandlerFunc(eDwMeasureEvents_2.MeasurementSelectionEvent,"l_onMeasurementSelected");eventMgr.removeEventHandlerFunc(eDwMeasureEvents_2.MeasurementDeselectAllEvent,"l_onMeasurementDeselectAll");this.addAppObjEvent(eDwEvents_2.ModelViewChangeEvent,"onModelViewChange",false);return true};eDwUIMeasurePlugin.prototype.updateMeasureSelection=function(iTarget,iSelectorName){var targetJQ=$(iTarget);var idxStr=targetJQ.attr("index");if(!idxStr)return;var idx=parseInt(idxStr,10);var measureMgr=this.mMeasureMgr;$(iSelectorName).removeClass("edrawings-list-selected");measureMgr.dehighlightAllSelectEntity();targetJQ.addClass("edrawings-list-selected");measureMgr.highlightSelectEntityAt(idx)};eDwUIMeasurePlugin.prototype.onModelViewChange=function(iViewer,iNewModelView,iIsAssembly){this.mMeasureMgr.dehighlightAllSelectEntity();this.mMeasureMgr.clearMeasureEntities()};return eDwUIMeasurePlugin}(eDwUIBasePlugin_1.eDwUIBasePlugin);var c_measurePanelID="#edrawings-measure-panel";var c_eventIDSuffix=".edw.measure";function l_onMeasurementDeselectAll(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){$(".edrawings-measure-entities-list-item").removeClass("edrawings-list-selected");return[2]}))}))}function l_onMeasurementSelected(iSelListIndex){return __awaiter(this,void 0,void 0,(function(){var selector,itemJQ;return __generator(this,(function(_a){selector='.edrawings-measure-entities-list-item[index="'+iSelListIndex+'"]';itemJQ=$(selector);if(itemJQ.length&&!itemJQ.hasClass("edrawings-list-selected")){eDwUIUtils.scrollToTarget(itemJQ,"fast")}$(".edrawings-measure-entities-list-item").removeClass("edrawings-list-selected");itemJQ.addClass("edrawings-list-selected");return[2]}))}))}function l_onMeasurementRefresh(iMeasureResult){return __awaiter(this,void 0,void 0,(function(){var list,gen,_a,_b;return __generator(this,(function(_c){switch(_c.label){case 0:list=$("#edrawings-measure-submenu-list");$("#edrawings-measure-result").text("");list.empty();$("#edrawings-measure-result").text(iMeasureResult.Message);gen=eDwUIUtils.getUIGenerator(c_measurePanelID);gen.setMeasureResult(iMeasureResult);_b=(_a=list).append;return[4,gen.generateHTML("")];case 1:_b.apply(_a,[_c.sent()]);eDwUIUtils.fixMenuPanelInwardToolbar($(c_measurePanelID));return[2]}}))}))}function l_getCurrentMeasureMode(){var vertexEnabled=eDwUIUtils.isStateOn("#edrawings-measure-vertex-button")?eDwTypes_3.EntityMode.VERTEX:0;var edgeEnabled=eDwUIUtils.isStateOn("#edrawings-measure-edge-button")?eDwTypes_3.EntityMode.EDGE:0;var faceEnabled=eDwUIUtils.isStateOn("#edrawings-measure-face-button")?eDwTypes_3.EntityMode.FACE:0;var holeEnabled=eDwUIUtils.isStateOn("#edrawings-measure-hole-button")?eDwTypes_3.EntityMode.HOLE:0;return vertexEnabled|edgeEnabled|faceEnabled|holeEnabled}function l_syncMeasureModeUI(iMeasureMgr,iUserUnits){function setMeasureButton(iID,iMeasureModes,iTargetModes){var method=iMeasureModes&iTargetModes?"addClass":"removeClass";$(iID)[method]("state-on-button")}$("#edrawings-measure-distant-unit").val(iUserUnits.Length);$("#edrawings-measure-angle-unit").val(iUserUnits.Angle);var measureMode=iMeasureMgr.getMeasureMode();setMeasureButton("#edrawings-measure-vertex-button",measureMode,eDwTypes_3.EntityMode.VERTEX);setMeasureButton("#edrawings-measure-edge-button",measureMode,eDwTypes_3.EntityMode.EDGE);setMeasureButton("#edrawings-measure-face-button",measureMode,eDwTypes_3.EntityMode.FACE)}return eDwUIMeasurePlugin})); // Copyright 2018-2021 Dassault Systemes SolidWorks Corporation. All rights reserved. -var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P((function(resolve){resolve(value)}))}return new(P||(P=Promise))((function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())}))};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]-1){return}var augmentedMsg=iMsg;var stack=(new Error).stack;if(stack){var stackLine=stack.split("\n")[2];if(!stackLine)return;var callerLine=stackLine.slice(stackLine.lastIndexOf("("),stackLine.lastIndexOf(")")+1);if(!callerLine){callerLine=stackLine.slice(stackLine.lastIndexOf("@")+1);callerLine="("+callerLine+")"}augmentedMsg=callerLine+" "+iMsg}if(console.debugLogCategories.indexOf(iCategory)>-1||console.debugLogCategories.indexOf("*")>-1){if(iParams&&iParams.length)console.log(augmentedMsg,iParams);else console.log(augmentedMsg)}};define("eDrawingsWebViewer",["require","exports","eDwUI","eDwServiceMgr","eDwUIMessageReporter","eDrawingsWebViewerUtils","utils","eDwUIUtils"],(function(require,exports,eDwUI_1,eDwServiceMgr,eDwUIMessageReporter,eDrawingsWebViewerUtils,Utils,eDwUIUtils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.start=void 0;function start(iViewerOpts,iServerURL){eDrawingsWebViewerUtils.startViewer(iServerURL||c_server,"edrawings-canvas",iViewerOpts,l_init,eDwUIMessageReporter.showResultPanel)}exports.start=start;function l_init(ioViewerOpts,iContainerElemID){c_eDrawingsUI.initUIEvents(ioViewerOpts);var modelContents="VgAAAEQAAABFAAAA/v///wAAAABlAAAA/v///wIAAAAJAAAEAAAAAP3////9////MwAAAP7////9////AAAAAAMAAABjAAAAAAAAAAIAAAAAAAAAAAAAQJqkjD8AAAAgEwHXPwAAACC9XrK/AAAAAAAAAAAAAAAAAAAAAAAAAACX/2C/AAAA4DyCwr8AAAAgJGnHvwAAAOA6Hu+/AAAAIOtLwT8AAAAgjhW2P2UAAAD+////AgAAAAkAAAQAAAAA/f////3///9lAAAA/f///wIAAAALAAAEAAAAAP7///8BAAAATgAAAP3///9YAAAA/v///wAAgD8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAAAAAACAPwAAAAAAAAAAAAAAAGkAAAD+/////f////7///8zAAAA/f////////8AAAAAAgAAAG8AAABAAAAAAQAAALMAAABPAAAACAAAALMAAAAAAAAA//////////+PwnW99P3UvHL5D72PwnU99P3UPLbz/TxCAAAAj8J1vfT91Lxy+Q+9j8J1PfT91Dy28/08AAAAAEIAAACPwnW99P3UvHL5D72PwnU99P3UPLbz/TyzAAAARAAAABADAABaAAAAAQAAAAADAAAQCQAAKLUv/WAQCLUXANQbZAAAAP3///8BFgCAQAMAAgFkMhdBYEAIVEVNMTE0NgACAgQA8D8bAEBAMnhNOAACBU0CU2xpZGVEdWFsLTIwSUQtNjBILTEyMFcgKCkHBgoaHiImKipapTcCKwUABDoJPAo+C0AMJnIfMTIwX3dhc2hlcm02X3g0XzFtbV9pbm94PDQ+IChEZWZhdWx0KYC/QIt2lnsnP83MTD1gy/Ykj8L1PCcicCtzaGllbGRfeDIypzXjp4r0/dS8LVLRpCMeJTELJAti2P4ktvP9vB8aaB9zZGlkZHfNzMw8LEXJJBsKQQlmYXN0ZW5lcnMtbTYCCwwNERUZBgMxCyQLRWS7BwcnMKcyaW5zdGFuY2UoATUIIywkLwcbIBwjBRlKBx5oZXggbnV0IGphbV9hbUIxOC4yLjQuNU0gLSBIZXgsICBNNiB4IDEgLS1ELU4VghgxKVyPvOAtEDsWEZMSZm9ybWVkIHNjcmV3NDMuMkYsLjAzMCAtLTE4VzIxDaUFIzGlJb88cvkPvRINDDO8DgsjCjYzNTUwMTUCHyYgKQYHBAgHAQxbCzI2FhkXHAQSExMWAw4NDxAAAAACAgAAAIDWqKG0BAJgSACQBBAHMFoZEvIYhGHGeKOYFbCgJHoIGjsc4GD1YI+JizuMv2Eshtat6q1U0DbEsN8ofl6l0VUmzArQDieW4g32qcenEs0Y1dpwdNlcvFaUpWITtAniwXtGjvU9oFpdnqd/ufzMUaE0WMvhzyXzL2rxdv6omOezCxZinDGVaA6PA2CD2Gd8O5LuHRNU4goTaxoH0KcLVXp/hiV6wmT57Kjqe8j7BEH9TeVfU6UlAszWSnPl+AgxAa5jzCGxTdyf8oPKYDexK2FNfVXexmYFdkZrhe8F/UPbVyrJbbx4DmPEDVIn/Q2FDofuOb/wgiW6AOqoUW7+j/5EG5E6TUkN/i8TSAI4JJ89rcDHjD6JlXszrFpyawcSiX+uHsTGpmPZsty4wZde7jM2JlKnKXUPWgAAAAEAAAAWAgAAqAoAACi1L/1gqAllEACUD1UAAAAbPFBSSU9SSVRZX0tFWUVEX0RBVEFfU0VOVD4AAE79////UwCAP00FAI/Cdb2PwvW8PTzNzEw9UwGAPwM/QQUmWAV2lnunv8w8LEXJJEn+gf8FAQcBbxKDOjMCU/vycj/s6Gg/ARxYAABACyQLJ0VkuwcBWAdBBweLNeOnivT91LwtUtGkBwcHBwZvEgO8vDwGCAZBCAxYCCc/YMv2JAgICAhBBgYLp2LY/iS28/28BgYGBgKipy+9uwrXo7vf4As9OzsCAwMaWDIxDaUFIzGlJb8pXI88cvkPvQMDAwMCArwCAgQXt1G7IwQYWATgLRA7BAQEBICdqDHNEyZgCT0A4GhGRuoA0rEAAGoAMAQANWAGQogghAgsTEAgkgEMn+AEviGkbW8RaOjP1jI5j1Lx4mOYR37/4DFyMpjoHrWvLNUIZHTZOwpJMGP/Nu/xodu4E5FwizsSJ4nSvYJHHx+KCA63Jj+XzXxbRY9DWiFTBsDXomyQO9VWXM1h5YfnsZn1pU4w4+gB2kO2n2sYrffw7wePd2UGhqOwnO5X4PgfWYvRMfCqtTZcOZkYeWeIjuLGIOaxvnLO/MoyQBn7+HTxbza2RSzAfMB2dMjwc3vbjOyR/8EpFpjDdiUIkGuUMPRkqbt0I+AM5edmDdLeOdW3DBGX5tLsPaQAMjQHip23VPgbe1dcVP//RAAAAJAPAABaAAAAAQAAAIAPAAAkQAAAKLUv/WAkP7V7ALpzxBtAMCJ2AOGrKif6usJsCDxA73t0CYBnokgVKMQYsbnAyAR0zymrZJckWKy59W/MvtSZ7Eza5rvYn8zc1yZ51cudArgBvAGsAXrPOAZazS+e3DZ7ryocnqMlrkCQq4COvSTm0HixLBWw+nAyA6/clgP7DuUjWuGJ17BqChoEQi8w2v1q7YvZQU/QqXTc+0TgFNmxstywwGix9Y14SO5ZvZOcSRxwFRROvrDIIHC1c2a1KQE+OQmPIPBuc6XxibhAbf8j1wflI0qy6XcTKve9STohQlvq+035TvByvzQhW7u3XPV6plU/mJZ/1kRNbt26O5Sl7MUxnaYkmxGm1XVxHMUtjnUoPQGyPkRK+tMNUcETZpF1vYS+P0iSCHp/oC8P2rUy4Z5lrkGkqkgJHa8LPKu+Zwe1u+WyFhRRVQRHSE8h1xcUkvjSC2i7+75/gTmBBMi6X0Dv1AjjL6D9TgzGMKBUVAOjPU9UTQh7Vtubzpe4+j2n7GbIR85EUWID7i1v7e1LFq7LhiReokfAuMkRZBAg+y0YxGXtAYseZt7fn6EJemGEw/8F0Ju29lXct75fZ4U5ZkAyY2t7FexCrKUobs7TBd4H647+e2l726mM6uAzLY7hWPRQEX9wIK7+/drt9PwliBRPIfg9iINAAA2ksQNZRsZWVnLRgahwOAyO41gaA8DoRilVv4yCHLravTSCwco4HbglNb9fxjilz1GfexeONLqRiYm2qaM3uLefc0/C/QJ8hUcQjOS0pDnrSdoUnRvr3Pihm6pJJHu7SQ6oBKyBoaOYi9qhY8YgXR0eWlNfJjlsfYLsW3KHnMABh7B69AjcLgJ7FXw60ONbTCx3f8IoHVhCj8GCx86FNlWmroQOY0buXfkOFEXY/QtKF6cmJuETEwIFTc4mpNYvX0DMM5TzIHxeOnCgdnbAZK6SQky8AMDOJ5JMt98dQqQ3fSNURQEDd/luN8jGYc4gu5Qn/BrJ3LgKeWf0JjZ9NokLct6mZqcEhgQbytwpB6Y2gZD0bojQm9oMuQyyBJ7POWigHeuX5obru1dnDhgKaF5R3p/Swda3BLD5alw3PMi5FUHbGkJq/hxUDQEORa4TX16XFi171w8nN59NbAzXnVDOlRSKyzNC86F3V7tXC7AtmRuEr0ycH6z3PtQOz371lNSLHqD4jidAD/yDUEa/q85qx4rz6EWsLvkHueQ+2xieXtyGyUj0kCIAOmMW32RvEk8EOjwwFhY07LBA0elkODih6GQgFQBawuEQZFXqk8RcXtIq31OgVfRaMb4si+U5WKNifNVEn+1VzMSauEv7mcjMcGZbo9c5eyXrtVHsdtqPXcnE9HlYRbRmo9Jqlrhf+2mPJZuJaFUTVj6bjRJ3vgxNO/NXXiyrB+OoNpq1lQGanV57syg2i4/j4SGgdQd1/yOH6EdbcVGL2bZ8Gk+3hVH3C9vR/3/Kt3aCt+5NPXjZrRcs2fqSSbDbQZFj2Q5JzgMLyrFLib8Aouzpg64c0KPivAC7SV0srSXcFXGwi2Ra8YOAtYHvfy06bcC76h4gChcTG+Ur4iX9ywII1NnMcNkBBNKJiX9ctLAhKG47llYcXYVworsdydQC6bOZ6YIExC3Ef8ooqUUHyBCoO6H0khYYFZkd/Sb/L///c9Sw3+d/5v9sM5x+l5tUlQfFAMWjB///ODh1X4cYK9/JnUR3mDD4C9HrfpGiUw4HspSkdCQ0kvDcnXGQqUWlNGCA8S46O/gp+9ExqVLqg+4ZVuU6Wwy7CTL36cjJIKbeVeSOoCs5pyokKO94tmMl8emSm7oaTgOvSrECtsnsXjfytmR8SzZN3y8jtdSnSLjbrwJxXJyZDBT43yzAriKH1aBPHx0Mq5L6FqvlsdtslLdieS1v7avV3krVTq98lcdOeam2v2756vQaTRL5bLUaLQOxgu+1WL6MDFuWHVYl9aR+37e9vM/CciuWp2ajZkozqbSXZpO60r7tY9ZMZQFH3rU1emLWbq/MW6msNXgx6+NxpnMaWc9nc55hpqIwH+cMNlKJtJHM+sq2RsPMeKxYdj7jqbOUt2LJ6BqvaRxX5s3cerzy2mx0LKnUVrfRMT6rODu1U6naqa1KnZFd+zCrtQ6zz8Ko2TDalpKZiFb5rPbKY6Nl2WsUq7WNxdmLtuujBTo/ZmnR9rEa3Wbx0r76AY0qho1i+Z5a201mrmTW9rJZL5nKOm8ybWaIu7Zp+8abTRxatp2JS1qpbOLLW7lsNpv3krbpEFDtlOuumbWSppvMJs3El/XySNxF2Ep8idd1k77vJq4MkdtKppK5tO+mzcSZTWVNQ7Nk913feI7TS2berHElraVOe95Cvsybtq1s5rWN47Wd10iqVtoHhQWoU5hUUDKGZgQAIAAAAyYCEBSYSoLiMw/jAsNQLBySoUgaoSgOYjicMUYDMJgEIAKYAKE8o74VlcxYvRNRzUHB6Cx6QXxHJoozJfhQ4wPg6mBugEZoDq1dzwYX68Q3eKEaao5jZThubmMYndcSG4yvOLAVBOMY2ihC6YBUobbRBv+aOJXGfU2994hVSXj25qug/pOHuy4JnkY3Lr1dZYxmfEiBKAYuh+Su52a5GjUvJwYc/zYOu/PRLo8zQQ0MTEX0LsCJgk7sCeMAJ5SVTHxe6YHhEJ3MScHmd3AGqX3D75jXwAp4xIG0fu24HN3149R5ulXT0hWmNOEusltdz0rDFYNuXQm1qBM4oquwmtaQhYHxkWh9kt+JLQRTYj/iP9T4Bs9YwYJQPXmm0gjPL9jRHZvr2DxbgP2aqEb/KTQnZrruUwzHhgGa3mEHUUtAC/p3CK3rvJfC6/qkQbLrFDSR4kwr6t8XVnFfhKAdrzvUddmcaQl+xysWBngR23Udh4GMYMjh0nah3f1hVz7gTofW19M8M/CBx9/cEVlo86aHvS28SXlTuxyv9A/twQub8ko1h0/YC7G/ZrDWXpJfPeZX39oXwP5k5Ea7GDQrYJXgmIfUWx2DJh21hV8T5G+gz7bEaA/ChAJ7oNhmweGxGBK9HtYpfN8dyqeFQ9QvVpGhSbXfrQy1OsvqizveH3/reeX3ItzxKCnqDSNket0fSx5CypD98JyDO0yPqxS1aMsMBYj7MTQlXZpaDnPvAUTGML0Ad8Bx4wcY2Q5dujube3X6WQSuWXPyQsY43VLCc/uR9CIitCCFMmNwt7RuL9fHHNilcsVdqxaGpLL5UVxPlmswt/DLLOtgn0IX+9eODmWvBTXWH7gf4+tMtZmTW93ieQRTKnmZMzyyd2aLZun+z5hxrJ3c0CPW6gVacqFbYoqadPUadq8Ap/lbRBYYinIEo2ehdVu17FpzYBIOWhGFY6MPur75k7VBpgid0fyURO+jWA2Dr+615QIcUnqGXxNyT/QrGLAmAjoRz/qA22RUzF4YyG+C2J4Cb9X5YNYBH2Ys9FdD/5dM4L1lsAS3n54A4mlmHrmqGfAGdAfqddETNfl03+o3vQmL2g3Gp3BGEsh77ZJfph8FxiHCAGKZgS9txqt/xKcHvpfoCzgFMqsznqW06Lkhfaq1MwL0WiXezryCOMwPUopmKZan2o7m5orV5bQxvO0SIPFdY0FEumjxqw4hkWDe48C5TbQMAMX9xDAn1x8tDnSc1cDPKt4X2ePQVSzquLhRst0N24OtVgHAB8/zpZ7fz8Si+OL1ExJGESCtHmLCMqD8cmr+usrT3Ckpft0H88Q/OOzy1T77FaOTqsE3g3IHAAvBxSn4gy13MaMCKHi++MarT7EmdCAlFGvTCCSvJIAgyNkWqz5zvlOfQiwQEJo1T5i3ZJ4AUlPPpsegdhRKsOx+aF0P4sVPN7QNK1ENqP1wmlTRZe4aMLYj1pKaMsoGX9v5iqLSwmRENFMwBNitIOegahjc0KTYCna/wI0zi9yrpaHdrDHmFCzdBbaBnBVYhDqXJAl4zZJxRfiBcIOk4NqRwOJ6Z3JvAYccCVnPqLdLeXWkzLrpTdszHKDFbCgI6SZUTnsvh/ZokX9xXN9hIJq8Oq3RTbl+sFHAi5mc2a+fh+d7KctRD+y58rqMoanig3lrt1wpnkkhBRNzbv+StgINvExn59oHwKZoLr6EYl2R5UIzLYi+iGTtPg7lOWjfYATcITBwSrtGkMhNBT8mKfIrBy68xJI+c4NXzBYitF7QhesjsUYLJaPCZfsmaQghSJSheht2LdAMFhuVbTTApevxj+AfvBllggOvt1UsCte3m11rVztJCcREoB7ILDY5as1iiwLAcZHmnGZA36DnrM0B/z6omcOOkibmxkQBJvKyzpuQ2XRFw1cTRQDmjBL3owER+sZoeuBS7Cdo1z0IH8iATA2kEHyWyZVys9mqKYHjG5s0gAJykTjuGk71uDrg/Wopjd7MCnytBzf2TuACVjMHYnh8OeL64+wVqsNdjAd6sYD+C7nYpaUBhv4UCi642urhSTlJRdvsWHzDA6y9adkYqGjYTblZkLnl7g5nyPcWLDZo/nQyEAVQ4Rg4xBJRafFeDEzhUuXPllX+HfL5/K8iS06g2YjbyVX//g4KmphzXoUHV2bVKJioPhxt0sFMc9nmEOR4a6w3TWhCojIprky8nqjuDdy5SxeYtlT9v1CW+WTkt7GHL4w9L9cITqwrKylQA/F+ISU9BhSitGBAlNT25VBOF3oUU/JJCsT0oHpIZQSvZ14LxCv3eGiIaccaxop4IqQg/6XU6U6THbycpdCF3P6Q7mFNNoA4uipIacqZuVUcvbDae5bH8ZkJ1ZVoRSEfDDmFgjSy7wlZDlICOXkvufGTht+iAlyRgr4xNISBJ7spBKQ9rdADirRMB6xoCqiG4Vs2RigxUc0TINykupEBghLXKoBhCT0h+KsRD4hsr02Fh76J4a1xQ28tMWERblMQ7axikjs8Sp0ooWSWARCwZfhMnFgf2Qdaloazy00AUCAYiAqQP6SLVW3KjZmFzhd3AsxwwCzQFCAwo1XiFFU9+VFFwIEUB0C7OKn/xnXHI7t7NHeHVBEvzYMqjSxfQIV5tkZ9Oa/g63bklLNoWUsxcPFi2sxY8A7GYNGu3RcO2PrGcYMkV3l47ZhZqIOhtTaazD14oww8bJdTgCkIBLqRl9CIQvG5EHKl/FQ5/hDJDBnhQ4TwpRJXJcD/Qlk71FsNNU0d/EbLGfelpZXg+N7GQ2Qzj5EPoaYvsA7JU12NmJE//UaYVgvAIoNICJmExA4I1cLm7EocA0Hafxcdfdkbyq1rx6VwRwQ+5SZnEmstsk+unQsfPs51NLpUAAAAAAAAAAAAAAAAAAAATgAAAP3///9aAAAAAQAAAF5XAACoeAEAKLUv/aCoeAEAlboCmjdGhjEQqIwAfzUiIBJ0VPppeJqQalm7FJuEvencVe87R2SknwqVePMraYuSNJKa2OS99977IQghCEQImQKJCRNG5BEZDi5EDpHf3j7kD/l9PWQP2XU5ZA65bfEyXm5rw5Ax5AcP7vJdbtCgLtdlBgzoMl1esMBCtpDT0irkCllNTS7L5bW1uTyX2dgu5AvZgQO7bJchQMiQM+TnU0PWkKHQDXlDdnPrkDvkCBHycl6WIAFEBpHj4kRkEZlCJpEDoGW0jIV1ls+ylVWCnCBXVSHICPLU1IF8IEdFjeWxzLJhOSw7nV/5Kz89eWWv7H2BXCBzPiAPyFoLyAJyzlpZK++9lbdy7wQygfw/V+bKqtqVuzIUFFgGy+tqIBvIUlJiWSxTUZFlsgwAQFkuy1dXCrKCnJVlls1ygIzWbrqu67pt27Zt27Zt27Zt67quK91sN13Xdd22bdu2bdu2bdu2dV3XZYzU5XnJLMojLIVhGIZhGHbp3JhJo3AUjsJROApHYVgKS2EpLIXhKByFYRiGYRiGYRiGW/gJP+En/ISf8BNu4RZu4RaGn/ATdmPWPtvn81mHSEmF1ICdTott+3y2reu6rtu2z2fbtq3ruq7ruq7ruq7rutG2bdu2bdu2bdtWilnlahjTMOa67ROzqn1iVrl0roYxt6V7Pp9P6Uvo0k2n0/g5jWNoPH1C2zaO2zeOxvE0nsbT+I2h8TuN43cax5Cmb/zG73T6Tt/4jdu2beM2duM2dts4nk6nUykZBssx6At93xezyrJEoTHMKtdtXddtpZuv27qupdtWLtjyqG3btm3bMekmn6QVaTSO4ziOp9M4nsYxFBo/oe8bv2Rr4Pu2CfAZt4kBIE3bWErOxosXR+oF4f3e7ogWt+8eFi0oo0COdu+UUqDXq8en+frhlYDumTMyViVPTxNM06eU0smguH3/wqBBM+nqpm3iWrwppns6pk/bq+KR4OuHIQ10D4cfUL8oEHEin2YUDMqY9IilNtNICFHewxcr4vbdi/wAbfSBxAuC3fF2Rr33rlCl1wpTiUABMsV8jfpEkbioIK2ckxm379oEqreBGfYl6+J73zQfvFIM7rx4f9giGcDvIaPd+4WDMo6jrBMdFPhEaiVP4xg7/VWxeQhKKa/t1QPci9tXToFizOUElErhQUqni3bx34lDUzvTS1IDlFoKh1IlRSV8pndS8KRphK90EB+U6RvDkZDWC16XrpmtkVZCEwfadsbjXYxevojrhjJiICM9S3IB/l8KtI2c4JsCFntNgOgAXYTn9Wopar0Xmqy9ETa7vGKN2ufTsixzA2bVGJgMGI5j2KUTk0pdGK6Ep3AMx3AMx3Ds0j2pzAC1kUJkcFlADr7tJhRN7iHbVSsJChHXsEtc6+jKAvcQSWY7aXHLLQSjxyjyzyWEogkahUbhN/pG3+grfaXwKx17pfArhV8p/Erf6Bt9o9AoNPpGoVEYhmExGIZhOG7hMjDsBIZhGIZhGIZhOH7CMAzDMFwJwzAMw3E7fcZTdyVT8oxjF2rsP+NnPHWj7rg849j1bo6esbsXCT7jZ9xOY0QxZLRxO439bMAWjjPLSFuxNK0bl3EDpIXG0Qs4WmgcpoKzhcZYvga0cRu38fONWyBqOD3f+DGRhecb80Bg4vnGbY65Ec93+k5bGoGJnu+0ZXRk5Tl9umsTELH74Uia/tkgyJVqrDOEAAOa5EsiN+ouUJSOEI47liV1SAYy/ouGgGZSSOCuQfJEG+sKuWGOZHHfh4MC+hLnrmtrUcg5AtywBVPivLXEV2UE5EKRFYhSCdR0wfTAxHKRfy+BRjH3fxkQxWTD5nrBWYrf+ja9ZGBmuN7DgaidK9vtAvAiVjuA+TrIlLr70JvoIjvvcu0osZvrzOJLO4BMHyHSM52yufUOSmKACDGGdKvBIBeAGvwq0jkETazKRIYm4jV8oAKaJBZkfEQiSqdI5o5hGZr6Xbqb7R8MkNIuRDruVJ460w9dIr2KAab4obOSek2RlXn/pJWgmW5jLY0MhKKNipjcMMk4bx93AQVUJkxbQy4vChnFu2FkXDAgTcoXhiFkm9nmS8HyYHClzhrfPDMnr9o4p81x4TFKZbGRC0aizCsHhMtL4EaCHZeyRNN4cHS9Npx53+rsvGSZkAGkUTsXDrhdO81SSNumjRupgTtON8ry8FV7BV8H8ZkWCJlpdJEaIpfLY3m/EFG+cXOWWiKb3ugmOYHcLT+aLiAuDC+MFoBtmUw/UrA9Y66UWeS71il7OQxWaJVIqVIoN4mrhaUC2oFO8FWkgNVGh6BJvdYB7pSQN6gflsc3MYRfGDgv0q4hdO5UHDhoICt4L5+aMvnySiy1omJ0rzQloVQI/HkHNTu0WLa2pFtpfFwAa3Ja13Xbto17r1oJNqDal1CrbRXkQdR6Fdn0HIO3pn2aWQOo/XaLz+fTdV3XdV3XdV3XdV3XdV3XfT6fz6iTKLctB26NmOI3N13g5sjFGdKwUIMxL4YJujZu8qiU3GVxdWBDSMOY1pMDWAFvwLxr27Zt27Y1k5JErAkdXZvgkWQ71qeyLcBGQ3sVx6J9+o6Wk4kQnk8fZoCeexCjpE8gTSpJn2QsPZA+j6jBI31SaZQobdu2jdu4bdu2bds2nsaWBujo3DbMqrA4OgZvTdzmoS6OmlkDKIZg9SOOvnk0Jo7+wdqLHUhxiqOSur7itUA002+3OF0ggo0TDWrWuGdXi3Hv1StDrMcCNferRCErFlK3jE0CCTagXhdxiqA2ajRyv+JcehXZ5JJF015CrVeEljuuAawTCvIgym+DLskVE2BJOokMpNTBiDRZb+wyZ5VIzgEI5My+oNI5y+ecMQRcuJYYMWDIcGzkjTQcHWvwGjO4Il9cTOSJ/MULzshh8Bs8Rw5H7shxcBsqVPylYHGIeNgiEMUKLjj498cBeSBvwRG5C86CFxYackNOyAfz8vA6hOAjRpS443Z2F/r4iRN7IrgJE358vI+D4Hh4JDgJ7sf1+B2no9PANXA8zoHXcQwY6Dgdz5CBb9jAPXgQwUXwDzwEFPq6cdd9qvG1NTa2B228ZcAgbQFXm4urMDc3gU/gD3gEDoE7cPDWgKdxN/72BsfhJHAK3IKFOT7H5XgFPsbR0AxwA1yBAjAOxhMk8OJeHAGCL/7Fy8rCuBgZJ+NhYQf4AW7Gz3gXz8oqwAtwLCwuzsWvrghwAtzKagAfsMWpqgIA2OJVW3yLa3EBHIrn7OROrvXKV743y9kozqN4lBTvn6t8iktJPfEn7rkKCdKmvWlLktRpd9qUKHHanPakSZq2Jkwb0460N/ejSrvShgTJ0ra0M+1LihS9WRRoCxI0aBAbQpn7zh0zeRjtRo0cbTyacLbmZtSnTxo/ftb8saNmq9l06GDOqVMnc88eNHx2mo15Zp/ZcbacN4XYbDTbzNazAe1Ae80utA0ZarPb7EOH3Gw3G9FOVKWKESpUKKd82Vu2aNFy5IqUHSXKJJQuXDaX3aRJlp1lK9lYyJCpLFNmyRgvGwyYME2cbCe7y/ayl2wxYpBMJ/flZZEnRJLsJLvIZrIr421lG9lHdnR/2Ui2lD25KXeYLZVabssN75iREQYMIDFk7BkzgtCgMcRG4TY0fGShY+/YIZnjEHK3gHThwgeij52YGKkYuAUFeaxY0WPwsXAX7h6bcKuosWvswM1DyOJ+sSO3jB1kAxGyh+wb+8eW3JD7cR9uHLuxUcgWsh23Djm5EXMTNhxchAh7bm9bggQScXEiKFzYdXV6GDTsu7s+Ozs+uhI7RIgUIECg+LBh4+H5adh9+88Dip23TwBuwF1ip9gZtgm/DduCiF1hT9h8W2+P2Bf22yax97aH3aHD3/7bHPaGTfbud4uJQTd0h4W1u91gYG27bXt5PdgPNhcX22bbAwYw2Ay2AAFqW20HCJC20zYWltk221ZWCXaCXVWFYCPYVFQH9oENAEDZLttXVwq2gp2VdbbPtpYW2kbbW1sL9oJNgMDaXtsFCjTYDXZXl4PtYH99QdgQtgEDz/3cY2PudjfZfnWlqUmTpLaUjhSJ3aze3HRup3bk6Gk/aUaM/v5aU7PvrhUp0lvrQ4d0oZ131oUKcdKc9KBBmXQmHSjQJX1JAwJkSVvSggRh0pg0IUKatCZtyNAmvUkjQtRJd9KJEu299aJFfHPdqJHfXj96pG5VQ4IEtaG0JEnrXjUlSlE7SlfaUxrzz5kzfrQfProMH81Hjx6jR+vBo8Xg0Xg0DNvRduroaB1dR44OI0fLiaO/xNFx3mgub/QbNloLG81GjcaiRqtJo6+k0WnW6Cxr9Jo2eksb3caN7uJGu4GjvcDRcOZoMHP0HC2V0tF0MvU0U2fqOL6j7+TRZPLoPHu0mT16Tx+Npo/uozH1Hz3ESpAgVXSVKVpyip4SRf+IoqNcashLfWmpe1hqy0rNo1JXLtE6luglSnQOJVoJEn0DiUZCqW1QasoiekYRXYSIlkFEE5nUNCb1pBFdw4g2ckTjOKKPJNGNSXQSJtqRiWbSRO9oops40Y9OtJMn2scT/QSKjoSioUjRQKRoKVS0ECqaih6irWi/GHx8MDSMF9rEC/1CUZdQ1IqImgSiRmyhRbTQLVjoECw0C0L9gVATDuoOg3pQUG8Q1IKAWgOgBtQYMKDQKP703Z/+S6EzpNApNB6eCq0iUHMI1IHag4cVeoXOyyvUhRoECENteKhHHOpDrafnQrvQe3uJOnFRn1jUi4y6j1Ezaj8dQzuwa9CgTtfR6TU6TacXLJDTchoNrYKuEKfN4nScVqBAgpagy8re9NuryV79QrUYVEOf2sBTP/XXFwQNQXt5PdAPNBhYm25rdVirW1ePudrVBw64abcIGkEEHUEnSACn4fTZ2QQ9QaelUdAUtJqaBW1BM2Awp+c0G9sFfUE70HZa7dJd2vsCugABzQloAlrrLb2VO3XS0lp506YsnZU1abrSVxkTpipdlS1ZotJUedIkKS2VJUla9Zo3N6E0VH706Ek/ZUiQnNqZI0ViNZspUYrSUblSpSk9lS9dAqAB5EyZrLQVVuaEpbF0zgF0AL23AC1A9z5AD9D/c2kurequfMdRZmaj3CjToaOZNbMcOYqyogwHzqF8KLtxYygbym3aEMqE8po1gXKgjIn5J//JZ874yX5ymTJ8Mp88ZkyenCeLEYMn48lkyOjJerIZM3vynowGTZ/cJ6dJAygDymrUCMqCMhs2g/Kg/OZNoVwox4mDKCPKc+YkyolynTqL8qJsxw6jzCjfyY7yk9iJk2me5iZNpFmalywJk8PkJEm+5C/5yJEuuUs2YmRL3pInJ7FkLHnIkCv5Sg4SpEqukoEAkZKl5MhIKBlK9uHjMl/mHz+i5ChZUnJKnpKFCKGSqWQiRKxkK7lIkSw5S6ak1JK1ZCRIuGQuWYkSL9lLZsIETAaTKyujOZotLeEM5yc5zi4gDw8f82M2NOSReWRCQh1ZR16xojE35sBAHBlHVqHCRraRU6SYkWdkPz8ZWUbm44ORYWQTJhbzYi5RIjEnZj09xIyY9/YUs2I+ceJFfpH7+hgzY/77i5FjZBQoaGQaGRCwRq6RBQVv5Bt5cDBHzpELCx2zY2bBYkfekVu06JF7ZBcZMqqEODWuggpAKkupWWVVv6prlCrDhmpDzZHjhnrDUf0RRA2iPqpCVCMqEiQ9lqhPerTYU9HUNArqnNqmhlA/qNBv59P5eFQH6gMR6ogIKg3Vgiqmkg1QtbzUAlTqk9qlfqkGIKhsJVQSaqHKQlUBp04goHJZ+pRUp5pBxaDufUTfkOr8g36gRlWH+vgZqflfUrXKgaiSe36e70h1oRKqOdQaKg618M/5jT4dVVFdVHuoaaqaGlSFqmuqAxAg8lr8w0PDws+ChYsVPzBQhQoUMz4NGjbe/DZt1qj5bNi4+W+sFPlWrESB+xMmVKgwZ/cvXKgD8iMjf5wo8Uv8yUkiHf6GDRo0YPh2z+deW9p/8MDFy0BISCHFC0UdOm7wcJycDPFPfD4+E3RfTq7PggcOnwPe5/F79PAh+SEhH90+FNru+I2NOf4NtT+/PsHf1+fW1cUl48OAwWj2ycgOiH0D/4WOGF9GWNjYk395KQXMS02N1aLlSoJ/dpb29J3OVesLEEAA7ZeVIfgJPvuhoNSr//U1QG3qq6mhfQDfykqtSswnQ+YMlT9lSpffRerFC5gyf8yYOA0cNGjM/DKWlk727/3//8TFyGSYyS9ZWQF+gP395xzrY119JJ8JkyY809eZOm3a9HOmn68uYbpk6SexUvmf/BaJOhIXP9zbf3u/2T9wgMFnwPYhNPgN/t7e2l9T8Jf8I0e4UGpt/a0Bf0uWn+V36YLlY/lWfpUPR81Xg/nFTP/0d4lA4Ue/1APhR/yKg78Qx3es8Wfc/QyfwhfygcR9Cb/vD/lF9P6IIN8I5Zf8Or6DvwDwC1J9qa/2C3yvj/Wj/tQP8OEf5nP5Sj6RKR/Kn/xZHpPP5Dl5TT7T//BFiCD8hJ/EL5EokSREVrwfP1V8FSlduigCI8e/eTPZpo0RNm7QeDReU5OMJ+MVeZgKlSBTYj+dIpFKj0SV+CRJliyBZMLH69GTJ88kO77O5aWlZaSTQn7QoECBKgESBMlD8oQkUfKU/CFfyEP6ysoeT7hwodzii0xOEiGy6Te9ECGOvCMvKcnIM/I/fizyi7wPH4a8If/42Mf38Tx4ZPpMr0MHHA/HNzaq8Wo8DhxmvBlvw4YYL8bfuDHGj/E5cpzxZ7yj4xq/xu/YEcfH8T28eErKL/6LP+LDeDeaXtPPmdOIDpYhfoi/UgbTY6bxcRlfxiPxRvyjPX6Pb+Tv+CBAPBAfxUPxkyL5SL6Ol+OfeCkej2/ilfhI/8fz8ZW8FZ8lix/vx2vxXWjQkNHCIyIqqvCCgoODhYa+BSDgH4oZvkYNGB6GL/SMPkYNX8O/eJEY6P/+VvgVhD6FV+H/vAt/eLjoFz0LT9jX53figw8RQkQGj4fHoYP/UFd3gc/7+ZnwJkqQIDHCj9DzGDwdnQavYYO383d3dJ7OZ/AcvJ7383sehM/LI+FJeA9+w4MHbBH8+7ZBfeu6cG4LvJpa2toTQhoEBz7ChLkJFObiJMBJ8HD+La1Bm2fgF/g0X8HLyc35OW/BUwADIwsz4L++urB8VpbWgCsv4CqAx/JeBK4IbPkyBAgKiHkDZAfG/JUvMMAX8FxoCci8An92hubRvJkv+x9K9av3uUdN+amqS5csYeqa/JPP2emdUZ5rrzl5KE6dk6a+yefeqXfaVlasZz2UX3umbmlTt+Szl/JUVFbeygPwVYkSEVqEqBsyNOhRd+SIkeahTohQoV5IUJ8+fPxI6pAgPapUabNvdkK9Uf8TqAdi1AF1QZ1PV9QRdUY9Up80qVKv1Cl1SVasVF4506NRMFI6FChinjyp4mRKlB7lUs0lJpUunQqVLUy+UAkTBu7wNEmSIkw6FThwMt24ocOmq/nxQ4iP3pgmjZk1fQ4SJEokhfQhQ4gE6UWKAOlAIvHgiaNHj5w9PQ8MGDpkoMHSKyu1dC3d0pJL5+KlK1nSl/QqvUmXMqVP6WI6nT7ZKSklu2Q30o/0RxwdR+fBo0avMWPHjhs9euToOTpkj+wxaHQaXYcOG91Gd+w3epxux86b/qbX6W36nS6nZ/YsfUuv7Jj9TL/saLqZXqaT6WPGSLu0x33Kx9dXYq+f8OCBAwe8DB0DhjgNILoIEX4o5AAB6Q4pdAsW7ubmTFwA7IGBhysK++AgomBv0bZtCzoaGgIzM7IEZ2diaf0AI6PhIlgPCxvrZF2sGzCg4Mutw8FFmBDXJUiwe3t7OgDR5eTyel6vUKFD79Dj+ob+1/v6UvQUnUVX0SO4dbf+vmzQ7vYFHQECBp1Bf/YGXa2sl/W1tQf9QWfrEPqLbmio2BV7YUfsh52Q0EV30Q17ot2ETqHf9bpO1010rw7WFfQPIXqIToLEiD6i6/USVlZTWFxdBbYCUF1l9SoAHUCf6lQEOlfX6gIEbPWtPqAT6J1vzolz6pl36mqHgorqUVLdd85//09d99x5XzvLSnWp7uxPa9YYUnPmTJkyZPjwPXse5cnTCM8bDgfOnDlN6EjhVaoAsRLHZswMSaOH9+kj6c8fSICWcCVKdCBBsuPIJX/yhIeTS86DRxQehYokSZQoYeFYvHBLXrgXKcck5VIxXJMYLmYM3zSGj4F5JpjDX/glXulLFl6JT8oyhU/ikaZU8kh8s5KSb3JHlEK4I85IiCRnxBdJ/uCLeKIfPngifsjH45VHKloOXcEkxDE5Gs06XFMzk2fyRtwOd4OII+JtuCGuKA6PwzW5HN4ECofC73A9W4LwLTwM58MfPfLD/QTiS5hwJlwH58EtI3kkl8KBTE72MNKDCCfCd/AifDqIs+Fv+BAeiEPigngSDsl78CgHA2YQH8S7dCnEC/FPLJ1UNmGyREkSJEeMUE4WITJESBBJID8ifUA+9uCxQ4djYw4cN2zUoDFDRgwYjC8WFRMRXbQ4ZGFYSDi4QjBQBWAKFH9+fXwnTOyV0CMxQkQIEB/yPHTgsAFPQwYMd3Z1F+jm5CxUoBA3QQJchDe3F+q2zzYIDxywNVhjoLYgDe3MTEGCMgQHyMbEwgyAfXl1FeAiMGBLgFaALKwrKwBVVFNSUezqhHpSv+98ayGSP3w82qBRRxfB+YBNVbOTkiRIjxppKkJkKMuVtReKiC1YFA4Kqkjx13diT29EBjq3NTUFXn9Lit2bE6SvyQLyw0RJI45WTi3tzGfpwWNHa7qlbe+cc57jDLptKkBXZNw9EuNDr+erDGtyrmqkUvOjY4pN0KNUW9TYFYBCq+aw18AsZ+fTFjw9NihWUNmXpzapCoUh5qcp8VRdxiOuF2e7XfHSPjK7qMgmsk8sIuuiBXvIgjVcO7GFLOGqiR1kV6yTWEE2cL3DqmAB1zpsChbF6ob9Y/1WNGwfy7desidYE6sTdo8tsSJh9VgSKyU7ghWxEmFDsCDWIOwHNm/9wXpgO6yQLAd2w8qDxWM1rI5sBhbDCsjesXbrBbaOvbDKsXTs3EqBlWMtrBLYCiyF9Y2NYyesUFYCC7c+2Qjs2/qAdWPftQELZd1VjW3Z54rGtrEQVgXsA9bBioBlYxusY+way2A1wKqxC1YBbBqLtn72jDVbOauATeCsxJaxCJyE2AMsmTMQO8aKOe+wYawBJxsWjP1ypmG92C7nJVuA5XISYQmwA5xB2C1WgPOP1WIDOPnYLBbLuYG9Yq2cDVgAbJVTjaVip5xgrBQb5exiWShWZT/bNZtXTuumNROmS5YqrZRWSWukFdLmI0eNGGkuUpQI0SFDhQgNEhQI0B8/ffjs0ZNnxbPaWTNXOnPkxIGzvlnbsFmjJs2KuZ5ZzaxlyIwRE09haTQMmC9eunDZoiULlitWqlCZIiXKCmV9slqulU2YLFGyJlmPrEbWybXIOmQVskquQNbI1cf6uPZYd6w61sY1x4rjho0aNGbIiAGD8cWiYiKiixaHLAwLCQdXCAauKtYUK4r1z6+P74SJvRJ6JEaICAHiQ56HDhw24GnIgOHObq1b6da51cJaYY1bJ6xwa4TVbX1Xd23XthXC6mBlW9dWBuuCNW09W83WBGvZemAlW8XWsBVs/Vq9ugpwERiwbq1aAbJWrPXKCkAV1dQqtUaxTqgnv/Z16zWv2dnJyWmTpkyYLjktOSlNkuSM5IS0+chRI0ZOTeciRYkQHTLkLOQc5BTkBOT84/TTh88ePXmceJx2Mus46TjnyIkD540bZxvnGqcaJyaaM2bKkBkjJp7C0mgYMF+8dOGyRUsWLFesVKEyRUoUJxTnE6el00llEyZLlCRBcsQI5aSziHOIU4hTEsiPSB+Qjz147NDh2JgDxw0bNWjMkBEDBuOLRcVERBfOFs5DFoaFhIMrBANVAKZwonD6OfucJ5wmnHsl9EiMEBECxIc8Dx2cHJx4GjJguLOru0A3J2ehAoW4CRLgIry5vVC3fbZBeODAyeZcczJwLnCmOdHOzBQkKENwgGxMLMxpwPnl9HIW4CIwYEuAVoAsrCsrAFVUU1JR7Ar1pH7f+dbODNWJ0yZNmTBdslSJ0iRJkSBtPnLUiJHmIkWJEEEdgjJUiNAgQYEA/fHTh88ePXnw3LGTWYfOHDlx4EC9gXLThs0aNWkw0ZwxU4bMGDHxFJZGw4D54qULFBeoLVqyYLlipQqVKVKiQLl8YumksgmTJUqSIDkCZQSKcrIIkSFCgkgC+RHpA/KxB48dOhwbc+C4YQOqBhSNGTJiwGB8saiYiOiixSELw0LCwRWCgSoAoVJAofjz6+M7YWKvhB6JESJCgPiQ56EDhw14GjJAYYC6s6u7QDcnZ6EChbgJEuAivLm9ULd9tkGAegDlgK3BGgO1BWloZ2YKEpQhOEA2JhZmAOzLC6oLqgAXgQFbArQCZGFdWQGoopqSimJX55MK9aF851tDZajcidMmTZkwXbJUidIkSZEgbT5y1OiJ0ZPmIkWJEB0yVIjQIEGBAP3x04fPHj158Nyxk/lU54nOHDlx4Lxx04bNGjVpMNGcMVOGzBgx8RSWPkWfwoD54qULly1asmC5YqUKlSlSokC5fGLppLLJE5OnJUqSIDlihHKyCJEhQoJIAvkR6QPysQePHTqeHJ8ac+C4YaMGjRkyYsBgfLGomIjoosUhC8NCwqfBpxWCgSoAU6D48+vjO2Fir4QeiREiQoD4kOfhqcMThw14GjJguLOru0A3J2ehAoW4CRLgIry5vU/QJ7d9tkF44ICtwRoDtQVpaGdmChKUIThANvYk9hRmAOzLq6sAF4EBWwK0AmRhXVkBqKKakop6Yp9WJ5T6fedbP+Wn3InTJk2ZMF2yVInSJElqJBXS5iNHjRhpLlKUCNEhQ4UIDRIUCNAfP3347FH1qHnw3LGTWYfOHDlx4Lxx04bNGjVpMNGcMVOGjDpGFRNPYWk0DJgvXrpw2aIlC5YrVqpQmSIlChT1kgGDBerZhQt1diodnZxaIS8PhKXqxEmTJSoTJk8qVcscOQjL1AMHxgRVQEAUjIiFhWxqAwQIEqRQV6ywMKgiQs26ChQIEOBqS40QocsCANXKqq1Kb8Tenp3rtiFIQKHPsDCwMgWqgrO/Kf9Ouf+pgYGGeuqJE33qHx+fiTf1fd3eJDidXBQmtLX5Sb9SpZ8p/0x/U1aWKsCDyoEDnprhc/qaNH1MmL6lDRv2Oqgefpw/Z46cL+fToaP5NS9BgvRIEqVP6TNidOgrUrn6vwoFpU79zR8p0p806UlVVXVvrCl1ypEhQ38QDx47VMev6C9a9BM5f6JG6taW2vVEiFChf2hyskikCgnpI/JHYeEjjiEqESKUqhFAgBz5+XvUIZI9evglJh4yqjBgFM5Qa/Tpw+jPF+TIEZ5/5+vRw+czqlOHTua/EyNGjhdHkjxJoqRNw12knKjkcXfABg2IKBAgABCAIgAj1xkIA1EaDWoJiwfka8swiDQEgwwFEABQUBQKRk2sAwAzABIAELB6lrX+z8A3dK5NRCnTWvrw4Voa/wZenGFfPBjQHg1/C1FkN6xeXFhfu7OPqDKMax4mRKPnvEMVsqbFPwu203NtcQp5w8KPDdHQ+Dfw8gxz6cFBd+j8W0gts7Xw4EOamp19RJVlXHgxYS0d/x6qyDesnxnwjYZji1PImxYedohOy7vDl2fsCx8Dskfj3EBqma2lBwvV9PQ33qaDGAW8ubKy3jcVf1qcNXP2CmWecNjiWC5G1T1mxQwDKx4+2AZ1H/vIVaZh7WFCaNCfI+0/WjFjmsXihwXm3YUevvoQgh47Eo7wt5Qyy7luo2XB44mBRXQvGE0q/70wbsGvW2w0jOek+Bf1p//XyHDeXJQjCGrKAs8eeuxva2gc+PYGNrXWksSWlGv2fJvJQS3klbpWyHuljqqs2NXHTMKu9XNFjXvx5odq3BBxJFQXIlUnakEp0hkmVFnQiFQF2Y/UEkEj8g86YOGbboqrKeovAaZjCygac8gkWi+g5sO2im8MnpSD1HCawwBdYUADY5mMngPxc2SVHKOCWwSH4RBHHF7LXNQeL6YMUMBlLUCaXlWO8ID5UbbjhEN+wRGHohIIONkBJT7A2YIwEL6U5jkuIw+U6bom6Vk+QORAXmSi/BIBvjAHCkGkRXTA8xCK8RpmHFgJJGAKm6nadIAfyLRRZCE5GibUh64QHqZFHh2JOTy2xswyLAfTwPPA3DSntTAMrgLmC5EMxsTqUaZHJhh8flbYEA+6BTyQDuGw2DyiD3yI1AiLN5pIHhgGFxC5eERwfMo0eJaMhgniD3Vb7FQxuyQADgLlUNuIvjQnNTAULmHgCyFkJJ40ABnAgUiGCi85hgsJKAyORCc4HvcZO2d7hEkEByI11+NDRjpoAxymE7/Ki+OgQ0pjlRaTZaaBAiTFIACcnzAL3OGjYJpIQXcDsfPJlgGKr5NJDA6IRtitM2zbiueEgXgAOBYDOfwFaeEDSWDBIis+nI3LTsNLA/ADAH3ozcYOEVqLwsIgQX8Un8yL6BKbJ8AlYXAQBIrAAYIHIk06SqhokscwkCPEx3WgCmJCriH2bQxq42QwomM6Dc5rhEu2wztjY4oIPBhIXxawTN87cGIhVfFI7OMnQAJ+8ArYYFrquthWm3t5IISg0Eq+IXzUdvNgYSWShrpR63i8z052RFzDy36MgEIL/Q4CFqhX1BQ4+nuYChJYqN//yeDy9ImLrIAy4uejyz96bUTqyhV5OIu3QYA9KIY4dmdDot3h0jq7mi988piH8+MRDXCAXnFwgJAyTihsDTByN3DspP67eQP7l//nrIAAWp3SdnFcBC6dBTY+TVCywJ64w/fGVYUW4i/ALPcZICXVRmCQskEpwDjd0IqaIkuESTv6FOVJCBnMfHHRp0m5od7JfFa9Y/Aa7lmSMmIto+SbLdMUngkUos76T9yIe8+H8F6/tdcZyay/8vKhNoR0Rgk87Z1nDe8TeXyjtjf5qeusXuLoV5clkDxQjGVqeRoUtGGCNq92x6WDFEAgFphP6YV2c+oPt14sXk7wUuKJYpHjWgnD535lrjMB8ZpHA3HOssAuDdjavp5+X4+c4gOBxC/iXy2EgF9lEdZlP1ztC7nz3cPIMLCi54NJtiPWytlJxcWPMvFqglUEb1dS8DOJhjGEqAshMH/dnrVS4utpi4b9XXmjgVqfaW12ZEo7c18We3nZ38xKbZuCH2Zq+NxvZuY6jn/nIjFJnWax+bwTts0HuSvi7RL6ylBXK3EdNdu0W1E7ubDLJH4KXV/szuEqPEUadGWEeik6Me429xNEOIBuQt0K+pWjIa3qqdQF5nlni2MzIMfaf87oux/1vU6cNJGcYIbNbt3ZhfYD4CBxOweyJylCR3l6lR1Mnq4DvcmVeTcPoB4EXw4t5SJ/JclA9DJGNacd2YHNuBuQ6WXyUOiWxtHjsw2L13CJK16FczFS3ASC5yluq75jJN/AXqOqCNEz7Uxzye0qLXEa3FXwWqm9WkJjjbY1XSPf1Xz8q4NfSf2VCS27eldPYO13WcEKsBZAylCYATDlrbIeMIuYsuoxpxWRHEiL/e6/YMzdpOyMcnQSVtbp5qJAV1E7lIEl2z3fn+NKNwYdiUEEKTMXf25J66aQQPzcPQj8q9PYVHXUNHTnmHCuhRzxuvolfeauN73aiGXnNBrqBNYrhjAVFy3aP++OJ8TKKoSbdkQkDMrEhUs8/MhekHUcKG3E+rq90yt1y3IuSunzZ1dT91edqIJqB3wI9Ak5Qo1+njF7omWzA5QP8O3i2NlbDlcrnx+b43Tn0YsiH03cFzTl2rWS4wEtmHZHK54pUlnn49L4ToOgHUIBjUIh/v7IHRBwe7XqrZZTK8rkODulUC3mjijpoXZ6YhcmvyAdVonEJZsYMuX3Ho90UenxHMyGotJ82A1dd2t6sRPIInnt7PbI7KyjX94vAAGEAoJjIP6AiK7xDEqBprdtaFRun9BVi9CNNLu4tmjw88EHr5TUFkqIQZ1b4rJIF0wk3nR+lOGaDXBC+Mj2HPBFvGyJ+8r27ms+B/qHhxPbwhFXm2bxpcLunwMpfsb4cdHOn5ltxviHi2H5PnWqQqYZkuDyYdSgy28jUETdShM2ExX/oTnANG589WFyeMqvSlkIdWkw/80Go00z6lOlCqOcS/BqcCSazsnk5+n2kk9/cLs4Qm4m0jmx6eZQrOpABM79cAoVkwCk1+JExOzyz3fzr3RClXUj1xfqFP08ZEDXmg9DKq132uvT7VZSQ2ep8U6++LO0Hv1sfx8iRrnd1PMNVWV49ESC3CVgqlCcWspcgbWB5zsLazyNguK/LY/2RSM/7v4XBOmSe4pZ0g9kCdboARVn2FPekSiiES6xyx58bj0M25m5+vKS0q4fT//2qJeKGj4yTrC+vplF1QxFvbT70A3V5thLZNG3reU4vMCBLNgkLuBHQ7ZdU2Tfj3b8PFegQYN5Nyg6ZWUAlkBqg8l/6hpV2u2npYALWD52KeJVQ5YgzT578s6Jynt0X5RE+c0g454gCTNf8GrLdUguepkzTfDFdn1b/aPo6TaydmDVfLdstivHia5Hhzx7a4UQcMZg14XVBxfkIxsu9sQb8wb8aMhGRc5c21vzPYXI2Mz6gaZNLtr1uWh9tOczdu0wkQK6flpvRG6egq3VC9NDl/t03QzcyAFpOYDnYLQaqV74iz+xZU6uS9I2vq/5wWtG5LZPR4nZWgOUaq22WENvqAsy2uHKRw4pC1hQKKxoWdz+Xop3ShXqm5dW2BeTf7q8J0UKLqLMYxzjLbNQIGiFBlFSQ7AQ7CYSXsnegpzQWkGLLgBVCyXydK1y+FOCO53tXF2ywUV0jgekMxZuOV2Ho0QELi7oErpxL5WRYUJ5elOGBVYJOrzMubMCKheC5MbQoeGJ+tD9iYQn6x34FY1I+aB45xxagB3qRbsXx6da5gWxa3jk1PXvIFyH0C0Nod5110wIdfHokc5LIbyxdciQKEP+6yQ8PAp5ho2nvcb3p1Z+wiDB8RA3gJH538Wht1A6kz+QB9RvLA0pHh7gEJH5lu8PAi2J1wMVwmaG9XWWNYKl6U0UayiyRVD2aygW/TnyhxNxY2Sr6StpA639sSxis7tKchj50lOS7tThKEgKrNAYuVp9rz5Bmv0zblObYkqBiwcGOafGxxKg663wFvQ7R4wGQXmIaUrTLR8KtQ/ypqvU6gRCR8OVeErYQM04zCFHyr1QkK7eZK0KARnh3CGk44R3D4IUgNBz2FDgm8h4i/mM/Poa/DwE0du6WEyjzceBngQOQsBcwN0C+v0U6FCOc1MNeLxC2m/CwP4Qtt0Na+HHMv9E60DXOBcBojxYD+j1lmnPGzEpepcPFveHz3mXvg/GzjqeAwxCcizAawntnQjExK/5Z32vOsYdgOT6TOLnpPW9wIBbHAPkSP8QwZiRuKXhfXE4rn+dRTfMaaqI+fQWuksVQdoEEYPJLGWfqYsgySZIs1mIflAmWdL7pY3UTYep2eSLKdsmpzgoWrRLllRNJKwAp684HZz24SLtUhKCQoNMuShgvWMIld4g58gWHb8mMllguTUTUiPEhkLTSAgtBGitQC0K2UDoGwmhhYBbE7glIRoU0uiJcV17WSEbCZZY2ctJZVemEeySQSwlmBKDLCBohQRRIoClBbRkEAUHrZAgSg6g9ICVCGKBoCkcRIkBli6gkoMoGLSFglQytDhi/m/YxgRqUcgGhNaIEC0E2JpAWwrRsNAaRPUHq15rhToVI7qbRaQFE+NeRL7ZMBZb5F1E0BtNxtgWiUe3ylcaRrlWB1NCEKUOqlEjfgFrvyARKVfqdilMFYncRBHPySlHuZNi9rNZF9sRosoA0UdJUAiYNvFSEcGugahMELCeMIWQgamPFrlbXWD9QNAn4dKkKBNSnJgjYrHjG+XJG0+a0nSgLhIrpUU+eUXtUkUmZ0LEcmLKBxamKf6xbxNXnC5TRFIkRSynpjx9VmnEJppgzk4h+4ESSEmvldQT3AqevuHUK0wHK5W8UlrA2VH0LlR6YiZM0HOmJB2ohWTMtPE6MXdEWQ+2whu7OHXF6bJKIj7RxHN2CtkHlEJIohPk5JehuWQT0uQWRB+USS7JIsbZV3wnqJtgUlIIc6OQXtB2wic0EQVycVO4fmeFe2VZuNeOC8tvX7itysI9Z8p+LW736n63+abB2u9W1PyToezXzHcvTcf+QGMllv+YcP0RTmF2JqXJ16rwXhuWeX5cDG525+WXz8JY+lut7nWc++1GY/j30h7aXprE1ltF4j1qGHOvbOPLp3E+Ljrpf9A87qWt/FNp628nW68aTMqzVTWbUK+LavFr1tw8yLy+dnj2MtQZv+72H3/DbnttfovfLVDsW4mZv+Xxa2gUvZwkq77c0M0V8Gvp6IUS9JJuBlP8WmdFrw20Zb5GnJh/tS99O2s8xwR/kxIjuSy3Bvh5+WeHwsJunIrd9HorDs8t4OgLS+jN+7xWVrbRB7Xdo1npMPIWmGTb0dryFxB6wcCao07L8tvfvsvr6qUStMjCyTKDk0V2TjaZWF3DOCdKxOyzOFrOxmkxmREtrzjFpKSb115utg8mHMpliDUp+Dia850XkZWhgQjHofk4Pv5dif4CudsOIbbeU6jcgj15zjhNyI90+y6v85RK0CILJ8sMThbZOdlk4tXVxnGnSojbZXG0yM7ZojKLqHgLlGIuCuzNm8PBQKpcQLE2h49U98D9GzBj2BF76Rl46XL7yrrCiMIwjsPmSyETQ9sf55Id/KGqO9O68RNhTQH9WeHe1GyyFPLh3re/55OCsfkX/wXoA2piGzv00TpgF36gwcV+DyFZGo5WliBFsRsHcil27QqQZSyJboOzRGRpDTOeHkzT22gUXC0vcxIy1DIkMV4TcIaOK2+cVW0dBKJy6hIt70jnTkHIvC0tx8NV+po45IzAPQjHEyUwBteYz4Efy+iQLA01nlCNNQ7CYjaRrsEcQqaWiUa4esU6B8jqLYZEdk8Ody06SmkpGU9ntZw63H8ZTBnmftlJHe5lGP4yjzLM/bKQOox+jaQO9192Uoa5X6dSh4C2MH3MpOxdM9KU9qfDKtjUXGTX0JL54vScO9/GEns7XGbWqzudTRvtf9FGLSX643Luf+uhxYBY83qzMUPdbHP66SbV4EJO/dgZz4oW9KNZtH8i4Xc62ncq2hbfm78bEH7eT7yR9PWecP+JDfsZ1tX8UNPYsGXSzZwRpI/Axvp8HKOvVtKgv7zdJKp3xW9QsR9PeS1HRvxNUfNqrXp43HbS3JbbFZZtJK1sXrMzdE6wDYnJBHww/uSz4ZkbkDD/43eU3nL5wCZEIWtLi3byenMtRIjZJVpBywpM4PHqi7ER7HbQpsvusLBud9wKWkHsgoMuidS2DHSgzfLhXXvZkvtmUjYKk0HPh5XcKJsdnCHCgmtC09Y73n0FmXXYi8GOCzPYNrRdF1l0zFtydgXN7JdiNtpxZ+m08QWzaMZykq36WRyRwUqKp1a0joSinE9EZzT0r53sZ/Fx2qULv/PQDF6efhFz2H8Zwhjmftm/HObFMP46ezHM/bJ8OUynU69uziXasqKDQGj6MqBNYT+xG30J4PQI2z35yisDq7ZLv20f1uKBZb0PIXD4yI6NpDresrj1CINvoBrvb9EiLZ7KZkcAu25zzQ97QKQ8XypfGMEg0C4vlZqtFOKyzpVp0jXMCw6ay00ALNfOkDQPcB+ntxWj24Rz29ah7czENve4tmVWOzuozTGlbRnRzvlsp3PjZQy3O+i/wGSB12Qg5Cjacz5q4PTHE6uwWVBHA9+UhpGlkRW7Yg3snA89sLq0/Tk2IeItMJc0CDqfNSJMNQu6XTM649BwhCw7H2S1G2ozdH/Sbn/nRR0dTf3ECHlkpMxuDZWPaw7zX2Y1hrlfBjWH0S87msP+y4LGcPfrduYw+mUyc9h/XcoY7qth4etA5rD/upExzP0ykzkQUzBhYR9WM0rqBtHBFJcijhC3jLY/z72btpE3m9adFlG6osUmoy280mDzHc4LUO9a2S5cxxV81EdY4pvY+PFpV1KDuejGNki3XGDS04SLvZGMt4ENT7MtNkm61gLvG6grHWZNoyU2HnKDBRLtrtRocY2HG1rFxeqDKmq8o2aDbqck+WpKmoyl2YADqRXpENEFzFEUG0naQoH1TdBeqV4+jRqMzTP2+Xi0HbN8RraJpmXIwLDkZF1j0towPemDdbIJMf41xvAR1OfwzowFCzb2nmkuzGmcm3EroWPLoB0Mxdc2JMdHUyDN6CHP/WLadU+cZnmwVavRkjTts02aWAMuydumpjl2zmCYl0816Z1AhWacQ7PZYuplogwxkvLzsLSROidV6VlKRTPupVkDGE6lJHI+5SNyqVlQnQ0YUZtDPZ96SGEyNTbWUhoM6UaKJPnTKNTIo2htOOZQkDStoOrm3T+LYdg8WSSwdnraEGGjN1h+4qYmZR13C+cwE9cZkmb1TcqDNeM+pcOaTuVorm2u2FV0WC062lgQ2eJk1K1o3DT7Mi+Ou+XmPhNn1xyP22gxa2ZaBo1TDLf1FdQRa9rfzlfz8mSmGtdiDNkH7RCnosEALNvFylxpEWeG1VtYnShnE46HQczmTJmOw7grzufOFnt4YLCkyaSp4hgHRhrY5116H3dpmAVLypykckPKJkzBehfHsd0oOavF4i4Zd8IrMZgt5T6X6WFahoVDBDLawSJPPBUo6dyN5zhOnOWwNCuaVB+sjzOmdBOm85jLdZ7rd5U5LBadeAK3rHN8Vqgxif24UnPn2HQ6cck15OMGvrMWV8NBs4Mp61dERgx61zNf0BYtMwWxiTmk/+CFTXnPCGAXO+cKizhwWL2FvYk2m7DxDeJjjinnKOauNyc6BTFsiSm3msDPXzk+hyt2k5IexynHElxSY+bRhuQm/fXMjDK7sTapxQ7imbvmlVKmoN5HYs7nMtQdsjbeBzGe45R3DDOqcj51IBjD+2zBBBl0Pham+uCJrBzKneeNXUiGkEVrGwslW6CM/Yrs5rhvPoQZ1Wz6GUhoTdI05uQoSF/OQVFMJLHVkQkQd5vxky8sI5vcxBzSDyYbj6ewwdRavjGF5qenZe1w9i0pZHLOFoyEQZFPMyU7IuY3bRiVJ0lnLCX2MyY9i0s07L4pPfRmKaQhMVfvhc3zM0qk9ScyJn8vQTQGweIYrO4Q+MY+2LGJTT11mrvxHMeJsxiWzoqTaoP1ccaUbuJ0HidynXPdrjKGxaITTaAt6xjfCjUmuR+v1Nw5m04mLrGGbNyg76zFajhodjBlvRWREYPueuYL+qJlpiBuYg7pH5zwKe05AixwZ37cLmA4Wk3upM1WPO5B/Zx2yuDK3OXNj0wcO1TIIYA6qT9rM2PHoHH2c5Vaw2kescfNkPma1oab9Dt1jOuC3tPfCvsxd5n30cTBXnTOFITN7iHtjXowYrNPPew0d995hYmbHCKdjSejDaLjzSls4lwfx3E6ze+7ZIbDIhJPqi3nHNkVaCZiP1T03C02R504s+Z83GKbWbPROGh8MGXzFS4jZt7BmS/zAspMWe5jDOE3+OEp0jFyLPDG3LE9YaheXc6kzVZ83IP6mWbK5oq5y58fTRx7qOy4mU+azFrmODBoELjpVE7huo3YuDnqfLlrviaRHcBGt1C0idpy8Zu77H3AxMFYNDMF8aZgSENGdTDKs6dCJhkL1vzAQCjDIbP4hNqgfhRzCpmY1MMsTuf5bZfM4bCIxEm95RwjswLNidiPih7LcnPpQA5rwNMIPaOQM2gOZzgE/6rqBLZ3m/GTL6wjm2xiDOk3eGFT3jMCroMxx9g1YNhehG6CZh02tsF+TGTqKsVYdnOlAzka1k1jfaJkFAejxDlgcPNeGcFdn0DlVreOn2qi4Z5IsPFBm/FVT/+xbA31xIFIzpEZbzULQw4ycsoEqxfh9nmWu4MkbOpdCDwO4i7nN8cQEU1GzkhiJmE8IRNGL2ujxRTqCp9wgIzM7iGqQZk9dZojKHGuPYagYxITjJxncsC5a4yGrsMnbt0et8Z01jZ80B6CUWr+1mnE4sh8rXWTm2OU2ZNDzN1jOXQ/OnHf7kzVCH7IEUYnnizMhHfaeKHsbJH1LCgOctEUlvU/TOF0nn/OMCqaTB9jwphJMGG5cbxhYrZcfrDOeaqs6Uh9+zxrzjBZ0UmCw/QAKmPIyqDQTn3GCGQ8t5xh3JzAhmOFZ64KMtAOWmeDh2IfZkwUjzFwJlE+wdN+zTLqyBc/hPxRGkQ4ydlhXd8CNsbtzjJD+cyaJtAGXWONqW5iIh9HcJfmvV1oDsFFGyfUFnuOwwq78xT7RcvyE3DzvbUsxWpTE+QdLicLeXCUcF6Rqa0ovHlHpWwx3dxE2EPeDXbulIKNfAuAc35slzkcVhM4qWbrGdegjk+fwjeW3cjCTI7N6w1kHyqexrFJlVHsj8bnQETnWjF50z4BxCbq+Km1vZN2p7JxLej69LbWY9lfqc7k+C5hIPjL8MjU9odD+DKKg2hOMlVhLIgRBDMhmE8MBNvwN1sywR50HzumOisT+Zi/XZ73d6E5BBZtPKFb7DkOK+yYh/2AYxnLC2ZysAkwkNnaumk84lG0KXPw4kNQruBMoHwHMr7mYjByghXmECuDKOP3FN7cjAg36ON5fXd7DJVze4ibRXaDKTn1bG5vBLT2RfNr56QNoYXFTDDbajma+NJtgz8ydoNucRtRN+9IEsPEuzISR/O+yDEXszLw4GYiNcRskjeg5YR4C/eBVcTjQ8RH22DBTYQ7nPoWML59qlkrzZom6EHXY3Oq75jIyuHbed7YhXQItWh3Qt5iOU6ssMS82b8jljk2u3TNKzs+WmA5pZNXFbPsZfcIXlqI/c1OPIhIU3k3kjOLeq58kNHh1BTsE2pWZxQfRDC5U5VLQY0gDYRmPm0XWIaRMJmYA8Y4fBHhzpMzi3waCgeh3EjpFFITvCNoR+P5IuZiOKIRhU527uXQ2HnrqJi5qk1UkxnCwoOTNeXkWGDU+bTzRJrFTliDuqPkFNo5qYrVm/b5YZdoOLWIzKS85fDIsQIRE7eft127ZY/NsLHjGjWVjXhtZsluNT2WxA6qi7xmiMghVIPgo2mqeKKMpA+NbD69L7zD40GRTIazCGM8PwjKVOaEvRFrXOB526x6+DQn4xQS48Mnuh0jN3CDFdThHWpuooWMKRM4remsV6hvtwljXO9mrw023JJacUVxqlq9T20ZC4Yj0g4YDectIBJjNDchC/S3FtEJTxAfDjkydxCzfjM72AxUNksurE6lfNr1Xtfu0M/MmEZ7qpSJqLrNytjV1cJF4Js0rkWmOA8ibteX3ee3baZDTri0fi5omDufpsoFlL0tnCXmm+HTXbwPru1pNlge/9upaham7Ls6TG6zzqQjbe8R6wTiDM14/2FD+zKI2qYX+xEm7Fnnyv2cd0vWI26eZZEKaZ/F1jMhOd3XwLpx2HGO24lWlcbeYMvQOlfCIEDMOHD4iyG3Tf212DKXuzFfPVVW21TKE8hzjjwsAJwS3vFGJPSpQnYLsYevUjO/MLtvfnbLwBYGnhiBH+QyjjNcNuI5Aj3oNhyys719vmAZEdlWX/JbyHxF2E3nh+yFPnYEjSNPrW0yOON9BLZmbAfa0QQXczFTph39wyfm0gujtvWrL/OtrY6F8bc2ShicsV1krtvReEdODbc0HSccJyG9MzhXTRhuc0bWAsmXJNm+jpO+jmBhq0eybXfE51Jy5BOEY2okO0facVuIOueathVTYtmfOm32NNdkGDxVaY5sLiSPaYhzp56xEz6P7mONXWWmrbWiTiE2TjYEwniVtW2jdpgNr7ivfSprJ1+r3EHN6dQ3M5Q+SMfdKozdaw/ljX26636I1p29+UoQs8ZsBWB/YMteJsxacS0soO8PjKCusysnfNKEyYo1ecjlE8xlTKQ5uq3VR95C80bzA+gQfCZse+V3gRfV2aM+WkNjp2sjPJjqydJpK47z3cDuRn8m+WD9xwbhxmyMdM+VOrKcLhNTtv20NYI7u5F40/sUNOf9YQw8CNc7lvbN/xEAH4dzMZt+I5hYNJqITaj5LKVmBD44BayMkp5QOe0Ls/w52STHujjmBQBCO7yIs5uXmEG3H7xDxdU4HI6Mdcqukaoa2GckbxdALpi49JxxYYELw3OMPjpc/P0qq9l9xLRcfGwdAXYafazpt/sY/GHxwXKD0cdNZqG09uNgJ6XMVHVbo+Wc6vvmGG0LuQBm3MNW7huztG2R3g7xyEo7YQLs9seF7B23LHTpSmNgPrJvIZ+yXGffHrFiOxo2juxALMKU6O2FnCivzSJZG+4dn7O6Qzq4bfhw2Tcf3NxrM225esOww5TVE1mD2FmY+0lNAo7yJqozZJGb8PXNhnNtctxsZBbdd3qNVHlcuCIm5VcI7vvtMcYE1xleqGK5laibdddwdJlgryDjLHxc+PL81JBMswp8gqvZSudqN9KBq32jcQjb162acAsNnt+PJXXu6nCrnibXetAppqEwj0lpYNujpZlTiFuNF3UGnI5A34Q7U+IdPyJ0+PS803Z4ZN9hzTL2aGfbjh/ZbBE7GOPkD7EYTt4BH+Q0jhouG/E6AjPovhrY2Tt8WKChaEP4iPmBv1E3LDF23PYxL6l/4d9IxiA5wyOMRzsxhc+VspHpjgfGXLRy3jQcNd/u6qD9jHv+pXFwwHCnW01HuzMge59EC1PC1av0oizGklfYgZk0ZbiFJZm2S8a5X0cYwd+vc8yws1Odi+mRv0/HfVDkvdE1Q5TRTxtjaPkz0riZyRY6Nip6dowRjYXlkecxzPXBOSPnjHYzhezkY4jjjiQ3a9kSRbOmiFDXoj+fsiMt3cTLg+jZDYbKJ5iPo7bg6BnnOaFyHGi1gZv7ugrRrphuqdGwxrufNUHQgYbeAux9i6IDjbP5y1lLE+wVlBNDZJoAl4eYV9wA4284b3gVN+HLFnzFymphN/nYXdwXjY5dN9Zon+LpCuNm7OoDjZb5B64w4vR5YaPN1a5SeydNMNoy8MRGG7g9OWhVL5dFZ8TGlBmRGQdaj9HOfAThaz2y4/Ynj/edWucPH40LIz5j06owKrtBu7JlQzjF9eCVUem1lTtONCufY5vkiOGPOCvsJGjIdUE02Di+3uzFc+uGF6bKG3/RTvsVC7eG2UUjcn1i2EY8VSOCn+bEGWOYcbIuyOVDyB0B78YLgpLGobZ/JUYE180C19oPywudNDu4bQ70dnmoK3Md7mZLqS2UWkr90Nil3lvA6hT/h0xQ2Dsau37a7VZMQ/KwePJnRyPUW+OEKKoXi+0uFPcphmUWBlysT+5CQC+rAbiN/23vZlSYgddOzdjCHne7ln175lt9rfheTMrsOVTfFiGnFk7nwAIDzFTVxORIYxy2bUEWYdvIH4OA4iHIGhkFhytTfgjdfZVytx/Wzo/r454XzOm/9OO/MZdbamAZLcsSSYPUPGtGZW35aanuDWUxoatpEya2+TCHJ6v9jGdeMOA7Eiut0/XfcnpJNzD93jNdg+rzkWCsjDbIZk6GSyYXYiJgV1AuPOI2eqY9+VgHc4qNTcvQPoo2ZuHzTkTjP7sUkbErXr+zXVnAbad1+A+xgss44ZZE62HH9SJRT3jP8uHCnYPrLGqOIyUle7Ab6/fagkpZhw0xybhqeQNtarV9X0gML65zqUkX9EnJjNxZgIC9mWljfH93mWyLVztrlJjl1wLCwSztKLS26h1+rycSEY8HVyHrUMWZUxOHsXPRErQpxiQxH5Amgu7xAvd4hGULg++5a5RHOxpJh+Eyn0tcETsj/tyr8S8j2I5tNo04gADekEjZ9TBjLduvPtIApTJojlX7Kj6cDrLMvH6y8pYDwvNgR1nhzbmOa9kJHJCxWzrTijvzeTRrTtCAvG57uxXYlnjWN/TmP/kOvq0ZniznDmV8DqcMR9n6zjhq8GeyW6G2cHBMy2nDRnf2I21yWwtfVXSLuaTCXNGYQt/znVFnfzOfFDDKYfPJoK9JaYasFg7Xdk4qLC9ader3gc5Kz+HAjII7fN0CBgB97lifqW5U3+V83HJK55AqNOHiMtssr+JdgSIZicjzjr61b4f1x78g3h/NrhwBdFRAOCYgkDSNP+qvOFjWZsD+I7WhFuIyu7kpONRGku0Y55hTZkSIYejvLfswFAdTjqNQyzvj4WWOTYERkwkOqvGoKSbzCDo720hwzfgIRG07U0Inufnp/bIGWbfZC23K3C9S5ssOAV+mZy00wvU4ao1sbdcCksH16nJmcdPDEEpipDNH5I77MN1lz5pKl5WPYWfYvnjZW+1YjyUiZomrPjBMOEW87fz9PRMfhTnmkIS4APjhec4CfLAfR1KkiD5Mbj6Ak8oDxQqGfY8t7T15BZZ3mredYmg7pmpEj23lbjBVjegLWYv4GtoxcgHpeTl80C8pLFNg05OZI2Y9STelRlzPnP3OnoGD2mJCPAL6Z4vPukF1NKHJrtX2puyLqZARtGxViT5tRM0lcatH9CUl6q4RuZhAhesJEhtNv2yOch5B4suieQfdSEAxuQwDGnYKsrBulslP7RtBaGsAts/ykSK+I/mnmTnj1J6xg3aVIDcCdrwZOCIuEdmIQJd1U2iGrGmL6F43xc+QlZ3Z1MT2mwUntkGKHUELRoqY60bMDBE5ecRfJWIMHHEzROyZI94SEVs3wh+Hzxuqzjlbj3pRXWnDg32MxbJbLA3IF9mQk4dws7pcn2zL8AhZ5rufNVrqOWQKfX/caAoTxfzyfTcfk+EZAjN1UjR92r7vNZr58bVz7n0NG+pG3ohtxuik/Uvqjfk5m7wLsgELczReHaxqy8CNNFmjOnDTAlGwFqCwOsbNq2FLcUGV6zzl2m8vetNgF05x2Xg/jK4toChFhJsWMCMuseDBxHtCgizXBICIwrqwXpvoGdcUBryWkLiuwJmRrFmI+WZwNpEJQdGjJbHq+hBKsQtbOqvg4Tm7yBUpjXs1Xhd0XorkMAnmWHoyDWIuvySYnNfgnl5dLJz4xYEojd9qswgyfv87NsxaZDcja4jwdBdzCDcU7S8tNtoCPGAfmQ+RPJzPk9n4ZCiGqJFl0v7u0bTmKqbY9/2NRpg058P3f7aZHI94nOknI2HT/n3do2mfeNs5ZvsIG972GZlnyYtV/7gcDwfN2O+spyNGk2yQ1qT/XEbDLlut7Y3E1ri51ETXxMMeC5j7gDW/kfFqIMfmMn6puEMm3NcpW7I13apm0enOOihapFPY1aJxv/uBqHK0sgUhUiIfbE3DxOYRPVOK/p1Zpc1sd9sTAhMQXTiLwDDrmCEs+4gK4y3eW8yBxct3UebMRUehzG5y7HzBlkVYi04YyPz0oZQqmq9yXexC5i0nRd2yLVMH62IADq9Jn/a1GONMQma8lHixWI29TAeg85aLEW2MEM62YoGEZsbruYYN3XcXC8QXrkdW7vKOh67VtZeJM2TRXdQ3gO0GV9JdcTCEjHttYzc5WmMxN0aaFiJr7iR4ENzi2CxeTfgKp4k12H0dIePSednAs/k1MuiaaG3Zl+HN3g4UlHtoFBccEWVj1QVCcxV7JObNzn5550qNUVDtdYBMpxwO5SXMHt1cRHytmsvQ7FrZ8rQAfNu3ac1CUGgkqNGu4X+QnE4LEuftDfOG9NiyJ38Jw20FsHIWtsMEaye5XrZLEDQBhjhsnfLAuFsUF7049Y8FY8ttC8RmUHvshi92LbaM5bIPVd91NN7gZVJ9YpCL8XFsh1sWM8cv5jOVGtMx/s1iO1KVsZKqZ7fC9WaEas3nSsIHpnFQZUZho4B94hbMP6/SJmTngcs3rev4KTo1YjFsPPw0AWbdroBxkhlFRGrPUfAuaa5W/36CaNmBghtZ6MonOBklRIG1lSH12FqoNqJnkQgE+5h8swg45sM3fmc8AY/ipSFSSINjy/3ccL6dMN0EdQskMpiD1YH780GGWI9MCeTsVYQ0C6O0PN5AtwvJUlk1OzA+bIK+s9SfXmyEaHAylsREta9VJHxsMTXI2pXmttdtZGbaMUYG/DWeFy0GX1AsDPj9x3WvB9K8vGe9ZEhZXGHVgikwgWJYQFb1mUFGo2VS/YRkwsKl20IuryDjllXc3wALLxmWVKR93gE6U2IpIDHnT2HgLBrECUrPEfPy5vyj6+4cLXVMik51T+HFbgCINFmZAoajgzMmwnXX/3uQYew71jocXDdxdMBmfF5bFj7pTFW2z9mShbQgftjYrE/K92z4nVn9+p3eLQMYkPHm2NnxTTmMT84CfDfZcG9WMZEGi7a57stCFWhFdho8P8+YaVFL0coCoihy40SUxepdJj8kEm228n7Z9BHtzM3+0XL+nNvRt0+V0Fs84gN/Z7I0O7lsF+ru6ia7sR2cqdGQnU1vVvGMV5unNVfuyPWROO94QQ+hPdULO1pTA8NGY7aBPGmnb/hjqgPVHOnUH8Fo2svDTq9UehrQ3H0ajzbtcCORHe882BQa8foQ3sEQoripxT6mSqsOd+1EBy5QmTal2XVOjabbQFBEdoEKGZHM9Y+J83MNQ9hER5mzQBcYWbNca7UtMpTcb7it7Rk2lYgnDqX5uS2P4bnACvP2lMo2OuCG8MeCGS1GhwGzbWJwct1QJIMvu6h7sLs7gqPGwAQH7bueKe8VFQGzDjjYxw42Dm27KHSwHZw5d9umijDXc8CDb1ehflIo5dp01M7B8DK4JQMFF5mgYXl+CR6vgozo/ti/uoiykk6we90tmiIkyKPreHRI1QGwu22HG6xp3ifgq8fqs+enRuerKzGQG7wKpDTSOedvh2asUQ4nBg/AH8dNzJhkW5TUENi8XLjN4Wk16NaHmAyJQS2d0TQaT8I733JM3WnkntKtWJ7ELtZatICjR5dCc/BrN2KNxWr73QSOK87nU9RdzRFGVnzaciOnbNxuRlijHM5kkHAp9U2nBjYWjIzGdo6YbXYbWd0SCNDpjQM9xJ1xwj2xl1W3nww5ghOMqKORpa9PuDa5vfxb+/ktMyZcv2hx3zLKckegdK7GUmXR9o7BWTUJrKkJlrJn0WzYySCyEaNnLIXv+ndRi0w2cpQ5s6uN50oDNr6XFb92MlsszZzVudXAwnTdQWlhZJOmDWfEbeoez6aIV72NoE+XbF6AjVmJ0pjmr6j0L+6F8G9L3u2CB+wvGzPBXXzogRj2YXlWsaw7MtoqQ+5iIuIzLkLQhglsQStWtckgm4LllYyfMNvHr4qbF9qeppvQrP8OHNSNNgG/TM5HszRbATb3kvWH96QzmSF7BQaNmRCrQkxDC7AIwKbRPAWMskM3x7kWlBbLuXllXVRKmeKBV9Bzuoh9pCSR9s6Va0TrIqcmAdreSnxfZe/8r90q/XVCUMgpQJ3v2ZZAmQMLra7Rbzc9BR0h8bpdt1GSFXqn3QxmkADb69Kb7pKk1YnYJsrCX8McnEoerPZuwVY8aubT/hzh+5Gg4haiXI/jsB7RxJBPjmYF2KfPFfpXNaArRZMPky6wjGk4a3yKEV5/MJ/TrpQ9XMfX6saO6azgf+YS/CaADFTyrFDcNGfek0eR1WGTMWcjinGuh8x8P5+gDn6cyX1R/PF9P9pnq7XYRqIy22kPr64IXZK5+PMAKu4CxbOoNVx+p3RgZDscnXdZWkLmLmdlN41mYKN1xw90Z0f3NK8xHtmPCVaQXt8LeoFe0Ev0mvy1McgXJ5v1o9BdPnMlmHXJa3TEZ0msXrKpvYTVc2IjewP0ol6gF2EvHWz/9l7dccfYy/XiXmAv6KVSellLrwf7T8+NJPWhyxZQr99cQ44NNDnFGI9DWdv8P2hu0lbs+aZRI8uumdmqadMSOwjXjMNiuGnsQ87XDAbfxmlvhOVBI7bwddAAEkdQvuPkh8ioQR+s97Da1tlsZMtmPcbUsNbByIh37g12v97jzZ6NAFnrPtrzzR4P6651hgpGjYMNMBqwbfvZZaAh2FPnWldYfMBMHc3cYD13M/VCI1vQEa4i8AJbuWWoLvtojV2bPD5SlR1cWDjLISK78AgCQZB7RXSMoxgJbWaeDO+06ALFR4qiCe4clEQ8aP+rqjZZsmu0mhGDgOYm2f4aljnJIFd9E5qtwVEEQGmf4Q5ykLca2txAC8QR9pEmdwULKQZCbYF5De0XTm1/86htM2wjubxzCIRliPaFUhtZ9BfthV3RAvuUjjTyzUJYCIH92+D3kPBHmPRyYXN+EBWCbsiU9UiNIOUOxWlAft4Q94ib9ahdC7UVitfDpZzqbEENIhTj6+GOkC7jD/UBsW3+Mhdw0bBKI9FJ4q1DMDdofFkOuLnpR064Q6KFKzZMTwDYge21GFbI6njKwdHmC5jwnRMXlOjI36BxDVU1ZuDYtMwQ8tYMFjZy1st6ctJrRd5hmwW5eIIrI7tiO2SL+KCtI6Nsmr3jbM0yx6UadIsRM9thpIWd+O2RImnJhand4obj+1Vm1TdJGAECOyFb4PIhmqn7kSabCXLFycehGHpuomSFdjL9wkQjTATdkDFDKCv8TqqWmQSH10qCBSycsEOlVkb4WMMIILgFNHbj74nCg2Y9AnTQxp3xsJDrIadLwMeaRzDRFjUDoS142UhgXGIdBQjf5LSRnO+kugYetvtC2RhDcAQIw0BqVqzZCDHutY6Ia9usg1jcCdkCr41cDmR9qHQj57u0daBHrEyBYwEbqWDgbe1IaBblsLaUYuFLvG9qVjNjZMMMxomRSrLwQB5qdRnR0eyBUOkdMhVMxaFaQr8Xig1kSyNE5M9zo8fZGgIBAH9utp79GVC2jeaRgMEy2RGDK8g00kiWK4aiay2wY4ULJbnCVlQQAkcg21L+oBnlptFHFl0zf5nxZVgHLU15KwBAsP7B4hmE+4LZzQZG5Ky1HrfkzR0ZcelOlTQRQ5+DZQv+Nhuwj1lr2IKRdMiKph6pczmTQtkNNihyeDxffljJU7RZiOPAtOmbnFLuhGzwDyKck7IRhkDLQLRe2EWOXcL4xgntMoN9ZgbttmRGuBlVA7IvRAhbWThsRtKKfY74h8IQFgsHx34wmXGZQT6TacVwF2DcspCN1JBgW0GzjVRNGGv9kMF2s6+hlSnzagch/c3FCmLSIMtIhpA1vsgcCzTe+TsQ8tWUjWCOA+sIEmZb3A7V9omGhQYvPkIEO1G4AGJD+wPZRhZv5NgotQ5ctY14bZnZFRMtYHcf66Ho5gcjVmznygtUZGgrZYU9RDrSK1acvmwT168DWbkhMw1aYGqAwojgrKrG0IFwMKJ8NAMTkrzGYZdtB3OOBdvhIu62lnewh44N4SY7Mmz+hYkTt4mRVd+/8vi2gDvOSGXMgrcNN3Ejq/LzsCdTwZe7GPmHYMuzXwafDotD7R55HcSww46h5I6A0+vig3Y+S7hC/4LFb8H8ZTOMINLaaScMEdQ7ZTHEkHVDUgY5EGs8h5ZbMO81phXkH0GcHCQO0WQcZVh19HRkQTaDjMdGcpIJTvG7oNYR0mo62xePoDs68Y7DjdQyIT0GcayfF5NieGGG+FlI5i3yOZx/BTFG8pQRwRpSQwN09ltT1p2SgZt9tKLFkTT1OwQHZ9rih3xDRwuzL86QIQtAsWXCiG8kVvSN2OlmPw+5umOA6cECxzXYcQaWw/Q714F/pNOj5BlOZuUSiQR61cGrZOLtoCPfgACwRrhaYMFqANrm7kBceW8L2O8RrMMSQyeHmyGl1JW+liSMP89B42Nx+T7+Up+TB3okkA8eWPvWn5zv8X8UaOQpN7hYaf//TgAAAP3///9aAAAAAQAAAB5fAADgjwEAKLUv/aDgjwEAlfgCmjZKhTAQmAwDwMlMMgQhYnV/JzQjIrWaU0Wx/DSTAxFuroJeWjWsp2FUSfK49kdKKaWUUgouCP4HIwjYsggucomHXOLLSiykEldSYkocBAPBMRoXFx/xYySuEYkjJzGOSTzpA+vwgX38wDt+4B89cI4euAcPfIMH5iGJHSWxJCSmAYkhbeAZNrANRgyDETPKwC5kYBkvMIsX+AUiVoGIEQvxiUJcOIhLDOJBQEwCEAOawHwmsIlA3BeIAwWxnyAWJMR/hJjQEKMwxIaHOMUhPkzEKxJxoiJuoYgVcQzciOni5OQoYApuuIIbdmPDE9gwGxqOgIbRzLCaGTbDLFuGy8jwGRkmw23rADt4gCE8wA/ScFsaTlvDb2t4TQK2IAFLgMMY4DDcBazhAr4whznM4bk6nFeH6zrgEB1whzusd4fvQOARIDCID3jvA/7gAYvwgD1swHgb8IYM2C4DzoDpcBzOMlBVBYWhnrDUE35qwgSacBMVO1Ex9WMAH3+OlzjmGydtvDuudtw9ZvLYK2EBSlgpAC4QAAcYgKcG4AFR2CoKR1FhLSpMhYUPYGEsLqyAC3N54QVe2AsBHkOAEYThBmE4LAFmkAAn+MJiX/hrC4Nt4a0r3HWFr3AWNoA1pAtpEc6L7qIbKRKii+g+emToGrqMGA26g+7p6Z/75woSVHpLrx8/e+6eS0p65965evTIuXJunTpsLps7Z46aq+bCgRN6Q68bN2fumZsmTZlb5oqKmrlm7ps3aC6aS4fOmrvm2rHT5ra5efLEuXHu6Ciei+eamvK5fG6gQH1un3voEKAL6DZqROgSuo4cFbqF8L2JbiKMsaKrCOsL6WaZUqXK5t28UaI8uU+upiaTy+Q2aWLkGrlKlBC5RO6RI5W38hYpQnkpLxIkltfyJklyeS+vEyeYF/NmZi65S64UKVAulGvFCuflvJ2dVC6V+/mJ5WK5Xrxc7/WGCbPlbrlixIBe0EuGzJf75Y4Zw+VyuWDAaLlabpcu1mu9np5X7pWb5U65iYt38cqQUePWuIyMOC6O6+i44+64NmzwuDyuDh0/7o8bGRnkBrk+fAy5Q66kpJAr5EJCArlA7o0bPW6P+/g4eSdvY2OOm+MqKtK4NO6LFzPujHt4COPCuISELq6LiwLFirvi/v0V3sJbokSKm+KSICF4BS8fn4lr4vb1Bd7A6+c3eAfviROG1/ACArK4LK4KFS1ui4uIGOPGuIl38V7QkCGD3bW7dXV5N+968CDiirgfPuzdvQsCxIg74t7d6V2926FDiBvibtiAd/Hu3ByHy+HGxdFdukuBgtyVu25uFW6Fy8Y24U64aWltt+2amaldtVtW1t72kpGd3bPrwAF72fvgAYQL4aKhRbgR7tra2327EiRYuBYuHByGi+FeuBruldSVul1dVbfqJkiQdbOuAgVbd+suWHDgHrgMGCC4CG6DBmE37I6Nfd2vKybmdb0uGJjW1bpcXFbX6mJhTd2pS0VV4Ba4UVECroD79FS91RsgwL//AgDQb79KSvvuS6Xmmy/nSUn44ru0pK++TU3++jtgANNlulBQTtfpGjBA4BK4V1dK7FNxc4yTZVm2ZVuWbVm2bdu2ZVuWbdu2bVmWxWRZlmVZFpO9fiper9fr9Xq9XjUaWsuyM5jONJ3attViWZZlWZZlR6tMSVnR1Fq2bQSAZTWd2jK6NZZlWZZlWZZl5eaUhjizARQyS0+N4WgVLUWSONC2biOWKDUtrU1LY/Hgy0zTqfACIpbVspvS1bZs27Zt27Jty2o5/aDCsizLsizLsuyW5RwNK2bggk/204oEBuWn1UmPvk8rFQxln1YqfHvspxUUUMln2qcVFBLP06omiY5nmqdVzyARJNatJVuwxLxUXbeUDq1XNUavm6o2Yk4NNcTJO06QLq5amq1TR54xV6tEc/qQ8IFQpytbn+7orkvXIqNVrk8t8LBe1CioyFKmjJnrlJT1Wu+uTzesVpVejUKXgU4zGohcp5pAtG3btizLtizbtmRT9tq2bdv27mqzbdu2bdu2bdu2bdu2bdu2bdu2ZVm2bdu2ZVmWZVmWZVmWZdmsPn5eWJZlWZaVutpkWZZlWRaTxWRZlmVZlmVZlkVyvV6v1+vVUI3lAiTp1wraHGsNLdsQYuKoNXTwZAiPri2EHDxlAqQlrPJ2yIVUqwKLiM82BRNHbCHT6/Vsyex6RuLGFe0E4JVd6lcICAhd1zDDtnJooeuFGlLXNjgmVwmDtK4XFIC5xh3gc6Xgp3etUCPuetWKA+O6JZZ35XKgdu1y8+bqdYjLNUHgvV7DnlxczeQO2WtYWJSrWJZD1weKglwbNGhwdVDIyrWMrurQCRcrngmZLQIwWfEw2gDDy4d1T4eaUffCSjoBjgYPOqtpo9UgQyE3Fs8gqY4xiAzlcuVVV5BYOGI9BAp5BAgkayMAjD6orly3l74hTA2u+nPRSA6062Vc0jVXmVo9rVar9dMwNO/Tal3gRs1qtVqtVvZC2RIrZqiW1Wq1WtE+0dokK1ivAImmpX1macjq+muSBgZoCa3MD80TzVMNblPL7xEQqwo4eIr3dglBPOvUgtMjJMuXZRFrisIAnVVsdawbEhk7q3quVhAgXGSxAuI9ZiGd8mfti3Pg89PTcMoWrs8jOcYYGIJCfrI4IKcwz+3ThdqIz0EJ1k/FO3k+TXC5+2ysuvKpNyHTk0OfFU8bAMhiOLJi3VpC09rzxgp5oDOJVlxcXBkzVkxRquK9XBrEjNESpVoh8b7QFp0ELxdbZ51kUgWBcTGQGos3PxEY6LFibpG4XxrqWIMEEZInRdRs7o+1CFQRtbJ9etkFbtSslaKDlzUgdu8/vHeK8d6qiCZ8CeB771wA+h5v+Rkn7AgKcH11I45hO9pTdpnNuaNsMTu0O+hjXW+72Z8bB//kV96DV/JJjsmz+CfB/TiUHM6Hh3Iy3AvvwrXwL/yLh1ngYo+eOMvX7PgG3sahdpAtZ8fZdTYdboKf4F09rDd44k1cb0C7dBvappsQvz1Cf+t2PJL74IZbc0PZUfgRzsSRy0jkLXiP3WVb9ydPwp1wQ56Cs+ByXAQHwZ/wR16DZ+CMfAaX24kbEXLb2DM2j/1jC3JIfoNPbg57w67bk9vHHrHvNt6W4xR4hQpKXInHxRFyQj7HNewIbbttr62xbbYNAYLaVtss2+52o6Gl7bRtts/2AwfbwS4rI9tku0EDBpvBHhsT22J7wYKwHbYVKADbYDtBAgQbwf768tpe+8CBrt21ubi29tbW0sraWRsL62pfbatdtakMbAN7akpqS+2oKKgNtQsUILAJ7AEDnvbTFrCd9CJFWpFu1IiRZqQfPXKkHelIkTbWkDSkjbHWeefN+fa+776Tkv7+W0mJuqm7Wl3aSxsAAKbNtAPspjKaTJkyoTp0jUazRq95o9m80W/iaDdxdJw6ek4dXSePvpNH5xnVe0b1qKnuY6pNC+k/hXShQ1rQIX0IkR6ESCNKpAkl0olOdaBTfWpIAzKkDfnRpX60H1LNh1ST6tF49Gg9djQdO9qOHC0qR8uBo9vA0XDU6DNqtJo02kwanWaMDjNGj/miu3zRX7joLVw0F09t9dSeWfSULDoLFi0Fi8ZSRW9W0VWsaE4r2soVHeWKvtKpqXTqzk99/dSfoFoLqAYFo72A0WC0GE1Gy1hkZHTUjjZ0DRvahqTOIakld2gdO/SOH7rHD/1DiAYiRAux1JSW2tKIJmJEG3GikTjRTp7oJE/0k0y9JFNnamommloTilYCRUNpoo800U0wdRFMjXmpKy/15RAdZIge4kNP+tA+eGhIHppHpMYRqSNvaBo39I1H3fioH2doxRl6RgydGEPHcKEPXWgXK3ThCr2CUAMSasJB/TeoBwO1X6AOFNQmBLVgCn0ihU6hQqNQoVWw0IYsNIsWGrGFbgFDv4ChYWgZelFvkMuQoYKu8Kbj3vQbm6bAptlYLYHVrHZzS9NpWk3tgX6gIUAo02X67IxMk+m2daAd6LU1M22m29rQNJqGg4ugI+gLFyboCXpuzoK2oOvqMGgM2oMHOk2nRYjgoDloPb0OuoMeMeKD/qBJkMjTebpEiT29p/v6QGgQmo8PT+PpECHstJ2+u9OgNegNWk5nGdAGdFUVlIbSUlJP+kkTINCkm7STE1VTNROT114vLXHNdVLS1ltXq113DQDA118LEKCklXSBAgF0AD01NUAP0FZWUTpKa2lRaSrd1XWlr7QCBVyaSy9Y4KW9NAMGCXQC3aBBmA7TY2MINAItJvalvzQY2Jbe0gcOYGksnaUN5EJ/AgUqzaXZj589eU8eHb2T7+Q8eeLkOLlOHdEsmufMaZPbZDhw2GQ2mQ4dN9lNtmPnTX6T9eiRk+VkUlI8GU82NeWT+WRBgvrkPtmQIUAZUE6UiFAmlB89OpQP5UiRFGVFjDRmlBlB0hpShtRI50a50SJ9F+VFp9nRaT4dlBENyoNyofwnrzmjRo2YLAZMDgWTwYDmMqAZVEseoyVrueYu13y9kj+v5CtTcpYpecpmtrKZN5vkKE1yEyRZE0lGgpmhYGZMInkJkUzEMiuxzJaUuQhlpqzMSSpz5WVmcpkvjeQnRrKRIznzSD7iJEtxkp1w5iqcmZNK7qSSqWDJnlgyFmv2Ys3WLZnMlryFSzbDJXP5ktF8yV/C5DRhcpi8Jp/JNhhp0FDMii/yjBf5xWGGcZgPVeQWKrIKwbxCMAsC5kLADIgip0CRUQRmw8AcOJhZDOZBwuyCMBMi5hiIGTExLybmRBm5howsozHfaMyNjlmHY3bMkXvkyDki84/IHMkjC+GRefjIQ3xkHztykB15h2QGIpklceRJHBnHY4Z8zI/ZRmbMFzTMzXHIHPByHV7G28sd9vIeX77jy3x+OYRf9vvLen/570TuO5FPmMgiTGQTJTKIErkEifyBRCYxInsYkUfk5Q15Oc8uZ7DLdnQ5ji7TyWUKclnOQm6zkC28ZfYtv0nIaRKyBLb8gC2zqWUHalntLJOd5TMIuQxChrCWzdbymltGc8tuE3I7IU+okCNUyBUwZDgMGUO+kDVkKq2s1ZWvunIXWN4Cy2ALsteCvIBBTsAgM2iQwxrkBmMZwVgeE8tfYllMQeZSkBUcyFgH8oGsbCArZ1VlqKpcJZWfpLJUgRygQC7glKlO2QlA/gAygGru1VxNyjspJy1lvpSXmLJnykwCspKALIBAbiKQCUzlAVN5yipHWWWrTJW18CA/iBAFwoEK4UaFcKFT/OgUn+JIkRLhRBnjRXhR1hoShpRzZoQZKcpXEVZkCDsyhA0JwocEYUGmmJApNiXFgEgxqR7cRw/WQwfvoYPpvMF43uA3brAdN9jNGixnDV6TBsNJg9OE4jahOFQNjqMGq2GD57DBbETxHVEsWgfzqYPr5MGleXCeUfxnFI/iQdhPmTJcMBdQPAYUg3bBYrrgLl8wmS/4SxgcBpvBaHCZM/gM9oLBYCtY8BQsGEsnptKJOz1xFU/s+YmvfOJPLTiLFqxlC96CrfiKMzWxEk2sGQUviYKjSMFOpGApnPgJJ+bcxE028SYUDAUzwUkwkiPYyBF8BBMTwcSYRQI04sQxddPTgIKK8WW6nNJOpxROF/VhHH0Xx08mThwdy/g0paVqOq3d00sf06cPIFPTSHs8HiNGivRLQoQcBfKllpZEiFwx+eTpefr1iicJk369/ul/+iBBcsfa9Vy5YqVMBwOmS9/SN7umpmOn4ehXk6o/6Tf9JP+9d/R3YyMNSMgfVKhwcj6x0dhv6NABGfmDSWfSg/QhoKCfHYsPH5OMDpmanulioECJgqiyE6oU5OSxZ0rpVRgxQuPR/MvnjI+kyIqVQ2cWJfKJTrGcZvFpzvg2Z+Z4OzJkLPbFzthpdCBCHh+t3dqr9M4IET74D3ee7c7f1Xm1Ol8359k5P1fBm1XwFeA8KdUfowKTmvpTH8EP8xLe/JuH4RU/gaf/9Ku/yfeh8CgysxJQ/Q4qPgcVGzYAfkC/r8Hv+/H9DHyfT+/H6X09vC4FhJubUX6Uz/mn+EgdXgeOT0XKtyLlS+H0Iaj8FJWngvJYBryBAL4qgA/gv+9fAtyHs8A0wDN5AD4v+SWm72TzL9n8m1/J1/RXaB7Nn/m0D+XxP/4hf9GHIfAIvAJ/4Lf4lJQwPoyf+RnBgHk0YwaKh+LXeNGeyFA31Ev7IH/oir/iCxXK4rN4Q/7UfyHjyajxSY74I56IL/K7/vr73RdB6oh6ZaVP6o66I5/ks4eU9JmSXpKH59HD9/Bv7ijpSpb0Okv6km6n4+lTHLsjZc9C2Sm7Fh6P/bFGl6zRazT2HI29sePoNnqMGR3GjD6jK/bFz363X/Yh/AcXvtwn+z3+jt+h9+mA+h+PxlfxWDxdX/Pot3gu/o+fIz1J59LDKPKIOng7b8OP8HiNvsagL/SOf+tr/ax/4F/9rk/hV/hzHtGv8Jq/yp/yOb2Uz/JNXoU3HP1dPtF3+kev91V8w9/Bj3kw3/4jP8mP9HGegm99As/l0X6NP+NHfiA/yE/0uEfqf37/Sl7Tc3on/kxf1L90So/pjdDwjD7TA/FC/GhP08+86XO6aRftanqpt3pP7+hLvR7vyA/ygvh00n7tl11It/pHvpGP1Hf0Hh2yn/ZDvbJr9ibd0dvxfPwZ37joF/3f3ww/w7u5KXpFP8G/FSqkJ1EiKBxKBwPraB0NTU9vrC8QS6JKoLqBgSHY44OC6uN9W84e19ODGhFnzpo1lxyKllZVleaaS0VxKyssAXzAAG6AGzBAxbfgwGHDQzeOHSQIh4Iy8SWMHT52OB/SO5zOHS8cDC8DytG0aeMG8ISc3DbEu3jXNmTITem+o6TUc87cET/lW9zLiyvgDcjIFvAEcHATuISxsTLOAgIkaJTP4Wr4mzd16uxBxB89YsQZCVCkKBAPdJqV1bl4I66eAAIEtg2cju5CBK6mlgaC5+U9ubtr68Dten+iUpl6E3/S1rbGI+w1cDacO5vOnjMnTpvNpk8fUjz7TW/qS0tJSZ4z4EpKD/iDsxIlTEz1qKinp7C9hcvmsjk5wWwwu0yZNGf2Hi2tAlsfOh6eCBEjOglBQRQo/qZ6mwGrDlYcUqRYoaIPTphQpdZoJ0q0BQn6swcN4jp0aC/CsBcR2oUKXUSINiNG+9GKFYd2doUa+ob9aCtStE/1Pj01FGgDqqvL0OVMTUf3KL87UvfrfX18PQQTU4A2rqMI8C7GN79ibYV0GypUuNA19LUuQQKFHnd42GPFChV8kI1Nr+t1FkTPy2u76x3KyuzaHmFb2Z2dWrRE8XLFmpn5ubdxmJlB6GtbU8qWsqNEIbPJ7NArVLaVIUOMOPIcOXbwIPxTS48eX2TIYPKHoq9PxgFE7sLFCzFkDA2doAjkgYNczBmu5vPL/vwMs8OsUaKECJFCSv5DiBDDIjzJBrJ37NChw3HT4Bp4XR0H7uHyUsgGwnXwyEhD7oCnEOSCgLvIrqzs0UNyQy4uZqDBHYcMySSyMS0tjewiHJHF5OSNxkY5G1xHZmaUKFD6TGwTe3Hxb/9tJUpQINlHNDWbNEHCMRkZFXci3+RUqFjhUngmnzKlCo+yS2w/vxNOFpdsJU2aPHmyCZhkMxHU24KCfJtvL+6+Fy9g1Ng3buTYPEDTcFDQNYX8cofYeXmCHz7UddgcgACRNAM6hpfZNLYMGXt7b7twcVi4V6xo0SJG4358jMTbIECIqJJlxAhOH5sSw6CKbbhZsMCwMWxBwbi6KhsLliviJiSUS7ELExOz9PC0ciufnOyEwRUzZKCbAFdhx224XVdnYcOek5ObQWKXUFJ6429uvOrG3fgSp3JGiDiiQXzRID6I5+F2+B1STsrx8ECb1GlDcuJOBXguwAtMcT7Fp664v+JXWTyNKBfla3gcfogLEtQ9h8Qhdd8v71PK/ZTyUk6I6+Gmf7ghHunPGY+E++ZonJDQjJtxDLxBZ9D39hR0BQn6IYvegkVngdhdIHbEnthf7D9+OJef7Wfr0ZNn54mzR+1sO5sPH9Etus1sMn2f9bP+/17f69UegDfqTk5dvasTIODVvToUlFgX61JSZJ2sU1E96A/SNumevWe/2WnUqEETZ7PpH3pVlYfuoV9dcegcOla36gIG9AH9qUf1A1/9qxfoC/oJQkBAw27YA/uK3gaig+h2PcSOdPnuc3E9bo8LAMABbFLu1N3gul4vhOuFHUOv6oQWOmGXK+TBC/mPnWVzem6JcSUL5+N9JXgf/+OdXBELV+QxnoTAs8T7wC054QcPGXAUbhT7yJHAHbiTbEC+hJNzclAehXtObtnihQsH48HDhbstt0FHjNlo9gW7bbctbA1bgtt22xQovO23XWFP6AF6C8IUgCVA8OV1oItrSysL68qqisrAlFQUVAECA54EOAVoAsBUXVKiJn3f+dY5kC+ODAH16n+oQUtEeCgKoZRkfv2/WTLI/xsiZnt/NmRELHdEMs5Y8eeHdycXtwZhiUEWc0QWBoifWf6hQPzEzMIAEfPb98kXUsJwUHXvEhSFe5VCFb25l3qVxHj6+ZZYPVhnPKXsQMab/myF2WCUeinzRbJZAoYjMeWthqiqVUFU86pmVbzqh+pY9a7qoapV7VDlUB1QtavWVZmqG6oaqr5KV51bWlTNUMVA1azKVS9QkVTjqhaoQ6oVqnBUG1UK1QlUxepbVQJ1RdWt2kZFUY1QZaPuVdeqEFo2Da16Vn3goIysQZVBVWxBmAKwBAi+vA50cVW3qllYV1ZVVAampKKgClQJVJ8EOAVoqgKoVpeUqEmdb51xJEiPHDVaYrSkKBGiQ6eGChEaJCgQoKU/S6Z++pSSjvLZoycPnjt26tCZIycOnDeibtqwWaMmTSiaM2bKkBkjJswSmKUvXrpwAd2i5dPzau3MguWKlSpUpkiJwrmpmQnliZMmTJYoSYLkCOaSkaUiRC4tKymHCAkC5IePHpM8dkhGQurIgeOGjUfHGjQaGRdnyFCMAWMpcemFixaIhyxWGBYSqkgxKBgIiOLEnwm/En0k+Ebs6YkIASIP78Odh6UOSxzs6jZooJvLgEHuQpyFCnAUJrxJcGuLwLamBmGpXWLT0M7MHjgoI2vAYExsQZgCsAQIvrwOdHFtaS1lLWFdWVVRGZiSioIqQGDAkwCnAE0AmKpK1O873zrjpbt0I0F65KgRo0WKEiE6dGqoECGlQUqCAgH6Y+qnTynpKJ89evLguWOnDp05cuLAeaMkquSmDZs1atKEojljpgyZMWLCgPnipQsX0C1aPpU8la7WzixYrlipQmWKlCicm5qZUJ44acJkiZIkSI5gGlEqokTk0rKScoiQIEB++OgxyWOHZCSkjhw4bth4dKxBo1GJUWlxhgzFGDASX7hogXjIYoVhIaGKFIOCgYAolE4o/ZnwK9FHgm/Enp6IECDy8D7ceejAwa5ugwYlOqW5DBjkLsRZqABHYcKbBLe2CGxrahBaNg3tzOyBA6UyJbIGDMbEFoQpAEuA4MvrQBfXllYW1pVVFZWBKakoJSilAgQGPAlwCtAEgKm6RE36vvOtM1aKRIX0yFEjRosUJUJ06NRQIUKDBAUC9MfUT59SUuoolc8ePXnw3LFTh84cOXHgvBF104bNGjVpQtGcMVOGSoY6RkwYMF+8dOECukXLp+fV2pkFyxUrVahMkRKFk7pJzaRCoT5x0oTJEiXUJNQjVEyqkSJELi0rqZRUIdQgVCA/fPSY5EHdQZWMhNSRAwf1BvWR6kitQaORcXEGVQY1BhUGNfGFixaIh1QWVENqIZVQRYpBwUAqIPUE9Y9qwq9EHwk+6giqHlUENQSIPLwPdx46cLCr26CBbi4DBrkLcRYqwFGY8EaVQHVri8C2pgahZdPQzsweOCgja8BgTGxBmAKwBFQE1C+vA11cW1pZWFdWVVQGpqSioAoQGPAkwIkagNoEgKm6pJT0fedbZ0yNBOmRo0aMFiUpSkqE6NCpoUKEBgkKBOiPqZ8+paSjfPboyYPnTpKdpDp05siJA+eNqJs2bNaoSROK5oyZMmTGiAkDJulLkpcuXEC3aPn0vFo7s2C5YqUKlSlSonBuamZCeeKkSRKTpCVKkiA5gmmkCJFLy0rKIUKCAPnho8ckjx2SkZA6ciThSLph49GxBo1GxsUZMhRjwEh84aIF4iGLFYaFSYRJKlIMCgYCojjxZ8KvRB8JvhF7eiJCgMjD+5B0l+ShAwe7ug0a6OYyYJC7EGehAhyFCW8S3NoisK2pQUhqk9g0tDOzBw7KyBowGBNbEKYALAGCL68DXVxbWllYSVdJVlVUBqakoqAKEBjwJMApQBMApuqSEjWp860zTrpJNxKkR44aMVqkKBGiQ6eGChEaJOgH+oD+mPrpU0o6ymePnjx47tipQ2eOnDhw3oi6acPmr/lq0oSiOWOmDJkxYsKA+eKlCxfQLVo+Pa/WzixY/hUZMmJ4GDfAv7fAL/CjoqwMfAYqVGRC8Gtrf23eDQqqS4CAv/SXPng+Pgl+PtCDBw0aMhSx9JaeCBH/9FTphwyho/SWXwSqcKD8zT+nXiqAz/SdnP4AH2nAx/KVl3R0IpqaFGT5A5D+9ZDuvz//KA4c8vJIeBP+Ef5YCkvqY30E/tKICBEKFIT1+b09EL7DZ8/+2S8rC/thvwGKX6JEWRqah/D3V8PjOHGixCCgBzTxqz4X1wIJv23T0ggdWH0GDLy+1ycjE/tiDz6a2Tf7bGxfhSU+CRJlIfr+2NjX//KkHs7hoYtIv2PH5KQPD6RFixce8e0tQpfX1Exc4QX99tVqkwAv9S1M+BPcvKdaWTl5J391FeWjuD6Ftt/25+aG/ELPwhMSpvAoPhrbZ/tqv40AgQIeCgkSza/5MTGN0P26ukS7Ef/v7wSRb2kpxMO/u+PxefwPHyS/5I7P5Ddp8sTE39sDkTcn4o/AgIEu8JswMTcnt2b4ERFl/EYv5r28urpCbPmpj+PXqBEZmeQz8Q1a/6DMj+XIAUXHx+Ex2GFhLfBkl5dF/pG2BfMJPuS/cYMGhdZbaOX8Bg93wV/A4OiYaeNDamlhffkFn8V/8SIGmXfgwAYDL6ao6OKv8KI+Tpw7d/J4P4mJQX7lB/Lj//iJiZN/8nv4PPwTv7kpRYqf4qscHlKm+CjIkCktXZSoQ/JUjzH3HFD3E6gH6krdK/kAjx557bVXatRIkaJCX7wXL1q0XP0W655utY72UT9/ReTgD/xzQwQ/Czp03Hg1jhzp8XU6k/jOTiJ6/ukz+UhfKVIkPFY8FSpR5Gh6NqFLOpv4J7/xZ2Z28PF79DX9y5cm37T7GGs3ExrahkxpR8Omy/FjfJgwml6zUIkSJEJ8kCCjftT/gPQ5cmTe8AGnrahEM29gEQkFFRAQABAEBBMmGgwKxeKZHmZS2QC0LItQuBAAAgQCEAAg0BwAVA9MEQwAJAQEAP7Y3JrPvGpz9t9GSzxnpDaH3+y2x3eWejn+ZLMFvmaqlus/u1rzN1NFjn60qyWvudTn6re9lvKDe5dCU0trC/DzbGrkybDWTkCd33aWvCM1fiTltu60Aw/MADUQrvN+cvZQkQOhmvMd4W9GpVf7tM+PeaNubn7ZbJXnXKpZ7vXbV/e2XIgvU5mdW4nfP5zCbY42XISsDQn6ChEnwhmcIUckn5rH4YievBr/KPzAe8B4tnU2XjyF20FepzH19XpCdP8k5ueBcwc/ZbjwHh6XzrHDGJ/42u5QKTw9mKX+lv4jrUbC+9G5ZcFGb+GXIEW2DNQ3WgmuMluNqI97+FECXhEf+apGwI36mQhVY5G1erankz60GYuM1adUXR61pDwMWZzG3xm9Z/1h2eA0/p5Zie1R/WAkcCVaT7UH2sbvsSvReqoPygROwutJeygDtAnxHk7L0mI9sF68En1J1pLysGxwGn9n9J71h2WD0/h7ZiW2R/WDjcbfMyuxPaofjASuROup9kDb+D12JVpP9UGZAA8mDWH2UPMzFFio9LlvrWj6aatCpc19awPbT4vLBIGKRc9aUh9UN5oafQ3WQzv0+vHzeEuUFvvj7oK1+GqWElYfdx+vhNOi99wdqBefxlPCtOfucZ1wLPyeXQv1cNtGY+H37Fqoh9vGI8FoQdFzHdQnWo1mTV5De9AuOhJvetaS+qC60dToa7Ae2qFm4o3HW5KXVNfkkRUd5evAosUWxYdxTlEnWo+/S1JTP9gn+Fu4LdSW66A+0VlkepQa2g+0jd9jV6L1VB+UCZyE10OSktoe2D9W67HvyV5TDwfKRXs0/q6id7mnx+2jeBJcS6bkOrBc+B6/FrTltgPtg7PolKwlloP942fBNkQtqQ+qG02NvgbroR1qvGhqCZOOveWOMgOs5EYpds/f6chafUrVoVF6wsuwTWmC7QHC0B+WDU7j75mV2LCwXDwWbgu15TqoT3QWmR5FNZbD5cK14LasJfVB7SLj4ahGabkcrBdci7ckL6kdYrvgWrwleUntkPLhaHA1QXsoA/QPR4Or2XvWBraP1h9NSVpTuahvcB5cS6bkOrDco7Hwe3Yt1MNt45FgZC7EHzqqLqiZxQxiM7NrTS4fauuxedZ9Shntcs/dgVj1aTwr0XvuDtSLT+MpQbRQD7djazC5tcJQmRqn+l5gvqZ/cF4RYmkxIMV6giS+fHWWUbHyUSuDy2jmNNVRlvN/CaSq59bKpoN1U0UWmNEFr2rcc3Eavhp400ZZ+4upF6Ei2Kdh1NM3TNjYju+wVMzi0g2KROY2nwYjGXv5+xZNLTGUdXpt0nkwtlqIXK5xdrdZkv+Etbzq6IMh30oSU6pvIWXCbwQ1bdb6vWXB3F2fDzzM1Ss9b5zGXvs1xZVxUcUjPLFa8wLNW6YqRqD7nk7I5V56h5TUjlyEBPxDJCL5NnUZSqbJAVUsDDPZj47xINIUyIr5weyc1RvZ6PkDyPndN6QV7VJmDJhvwqE7EfSCXRMRTAUktEjkDwxPcZc5l4Cs4opnhuq8G7BBC0RPtgm9vgmYk9Ag/4V9kCS445qc3g/sEAhmoc5Yo+Ac5K40Jtqw+55W7cqJRr6cUkJuZ/f7rzT1xKSXdbWRZw7WunKVvoCi/phcBtx8bkxmHtQI+vpVqqQ+/mVXs9SgwZth4CRmXZMtHA9IyvON9gEnpapwSvXI6GdsOSVY9t65r5z5uUcs4mJqJzH8dmfC0YcR1et7oUBYUZv2xUpFxc4XmDRPveYCG70O+S1lP6E+v74frs4+sAauX7qBrWuZKZ1PrZrH7PNhR8IpyZTXG56xJ7qwsKe8+53lSHsIcaX4pm7uBoFhXmKx8Hpf+2yH8xHmUuP6FPH0JhGzXbQ7HrgqOfwdIiZ+2wOk+q8U8peDjOWS/E9xNJOddSD7U1v8SPqX9dpm2Z/olUTrsQLQoF1YSLTlJlFMibjqoeM+oeNbf+3OU9CLhzUcPCuJfA7S2IP8+SwIiHBmsKQgzGF6ocv72HIBOTDuMFfqOfRfu00cN4+FMbwE+4As74R7AhW7sLpopHMp27CbkdQPyF54GvWLNaiAJV0VEECpwTWQ7td9qFiDYaJP8ea1wADIVnxDlGj248MIXyBlFL69UF8kIGGNQB/3un6PHWBn4QSzYaaNu6qkDKqCp1GkO7VTnQqr/ucsOmkxhXVjIuJVepQwe2XMUQM7Xz4cmY1mJWWu2iNh+DQ1lHcYRYUV/qSdnzSeVbxSMyNe76MAJU/PzGss5esuFziOjmdYpy6DnvAYjW6zrKE73QYV8vPrQf/ucPckLrqu+UPn/3SpcAKmknzeAdCNnVz54xB3m/449DmOyGtI4Gt+XAe/ZqD7NuHgI/Y1DBfceSVntu8T/BbKvffS6y5HYw7rhlKsM6DbDTDe1lGSsKUw/RCUT57fYB/NE1EB4Ckrt7gPsYyA980LFB5IaAQKN6Vh0P/z3v1wdZKvcYZ8zAf6A6WW0fWjTkD/5P753V+hmtvSGgEVW05wxPBwS14Gd9DinlAPFKYu5S7Tpp5PttX88qlcUi/mnBiUQG6P2ISo421pzWN31qF8nY/CKXO06FbocDuN/zXdCsOIoJvadOmcGPmg/bPUHDXCbyz2cjeaFdk3TPgRuJqYcKpD+ahI8o1BYgPalUl6m98hVuw1u5F88YpZtjQ6fMPEF3RzUqUBI0PEYiTx5TlMLzbfXN8vQ+h8JiKFyYjUmOmHKbmIeaSbum8I7zY0D62Grn3lg8o3DHmH0RD+RQiNOx+lbFjW8ixHfyYUV834yZHAxaXQLIIUbdalBVJE2lDjeyKYSl1OPYHbdcNbOSs5ZC9UohgzzY3qRPrgoYLKp68afWtvi86wgELUdXlBgg1+4JNYf+YTe/lsV9UHphZsUG0VlANRWSCVoCh5f8Lt1lxGJemv8zs5djkkINsiYxpQyuVVegoRQhK+FzS+6UE0EPVZymISb1ZdSbzXddHOGAtrxdyeO0nrBqTVtmcA4fiH6R1vhCcXM1LefQq4dzputpsq1rTkCPAVKFBY4cC8njeTi6HxLSTuCp8H1/TxwpogtPrSi+L7GbxECnxd3pJzox30l0P9GLAf8LyLW0yGhR93N8NuB6PVpQ5wNL0I7sJjiryeFm15E4WpVWqHN/94pSXzVl1RWMJlfwEh+x4S+b0ySw6mBLfHfu4tqIEjAOGcS/16NVI4yvwraWsNfE9PdtJcGKNvkuyngZBrA02Gqeyl+kI4/Vs5sfeUpeyUEddDgETc4qvPllTqKKssdjmTKIVQFesLpkopeVLqWa1VpPEpHYkR8ADzTw0baXEl3B+9rfviuiWNkM+AbIbuMSHArXqzpINDi6cmEXAXfN8ZDXmQC5jriVjHu22CiRxIPmrQwddlRDp7pPkLsZbehUKx2JVZ85cVH1Ba5AqTMi+FWY1s+bLMUYDFv0ymOLb8wJaZAbcUMAKbSO0GVhPFLu9zT3+UmrKJXEmruCGbeyZlUUlbTQtgywN2ckd29mlvRI0/8F5y/pIaZuJkTIk/2KFSdVt9KV9DTe9SxxXNUotAUCGso8IkMfXeS9YhYNZ9DsFZEB9CWNQDwPXfkHPwA54PHjOzfj4MMu1vWYnvzrWMYP9VB7T0NjIaMxc6QGCEU4/mDf5GpV8w90xMlBmMRjC1URXuPVZRPaM22h3zqRwl6eyZLHigHulWPK6U94uzuxuGe4d1IZ+M6M37RF/XLZ1G7lSPSNn8ULC9b/TuUsdZ3ZhJlX3oO4KNvLZOgS9eTYxL5LOiG+kICdNwuLBl/03naBu2bqmZD8iVPd1iSyB2mPe/0vZIvB7rX0MKI3K9I3c8Rn8U9x3xo2d4R+54jP6IHx7jO7Kj3tzxGP0RP/LGj57hoSdFy8s6/Y6H/Oxs53aIKel+NrUXPmhxdYWTESI3cW7IggSEEQweNKAwYQKEAw4OLJCAAKHBgwMUJiSAcPCAgYUJECIccHBggYSECAweHKAwIQGEgwcMLEyAEOGAgwMLZMk84FXDM+cHlklIjsL80QEKExJAOHjAwMIECBEOODiwQEJCBAYPDlCYkADCwQMGFiZAiHDAwYEFEhIiMHhwgMKEBBAOHjCwMAFChAMODiyQJfOAZwzPnB9YJqHzUfz+6KMJdi3MSlPxItd9/PcY35EdPaM/cMfHeEf86BneUW5/4I6P8Y740TO8I3c8Rn/ED4/xHdnRM/oDd3yMd8SPnuEduaPceMP5R7OC97/86BnekTseoz/ih8f4juzoGf2BezgCDJTlIclgYKlQCygrT+CNL+Al12MSliNAflId04QFEBIeoNAwgUKEBA4qNJCwEAHCgwoYJiyAkPAAhYYJFCIkcFChgYSFCBAeVMAwYQPLgG5gXE7HoHADyCvPITUogCHCAgcJDRBoiEDhQQIGBRpAWHgAoUEBDBEWOEhogEBDBAoPMows+BKG4+kUIidwXKWdpIUIEB5UwDBhAYSEByg0TKAQIYGDCg0kLESA8KAChgkLICQ8QKFhAoUICRxUaCBhiSUEyQEYfznn6MACCQkRGDw4QGFCAggHDxhYmAAhwgEHBxZISIjA4MEBChMSQDh4wMDCBFgEC3jG4Zj0hRi8oieGHw4MuI8noKw8gdKkCJYoK5ykNEGkJQqVJymYFGkBZeUJlCZFsERZ4SSlCSI9UZICZmWopExh0q1x7A2fAT/4zODxEeqTHAiukIxB4RbQlx5AGkuB5obJVKIncVChI1nsiGccnjg4sEBCQgQGDw5QmJAAwsEDBhYmQIhwwMGBBRISIjB4cIDChAQQDh4wsDABQoQDDg4skJBFCOHdGU5eByH5AcrtFLjbSp41pBw9geMKzaSsR4LwoAKGCQsgJDxAoWEChQgJHFRoIGGLJYBuOFhOb4BwQ2Qqz5MwKNAAwsIDCA0KYIiwwEFCAwQaIlB4kIBBgQYQFh5AaFAAQ4QFDpJGogC5TXrdzPvG7hNmdNGshVpxbF74/o8fHuM7sqNn9Afu+BjviB89w3sg68H1ZYTrSf6NvPXZ3zP6A3d8jHfEj57hHbnjMfojfniM78iOntEfuONj9PUY35EdPaM/cMfHeEf86BnekTseoz/ih8f4juzoGf2BOz7GO+JHz/CO3FFuvOH8o1nB+19+9AzvyB2P0R/xw2N8R3b0jP7AHR/jHfGjZ3hH7uiLOz7GO+JHz/CO3PEY/RE/PMZ3ZEfP6A/c8THeEZ/PgICPzVhlU3bnjF5Y8RsTfcNFvM/55YOboeCD/duUxDe59t/5pT9onL3x9Grjn/htfzufm4AOfytBF3/DwuNTQMmHcIig4etAcZ8PXC0PFzuOx/szQ6poO30yxWtdBm5JS4LKfD3cjEDZBjMX5dxU2rSxw0BA7LDwpJA1E74uusf7ZbsMtakX2+WE9ZsMcid/JX2+q258S5qcrpW3o6d9sGJZu0qcFsMhqpvD8oeQ3YRxW2uD52e3TotbNL3vG+/lRJvfo4F70v+Sreu3iKtKqxz65XuM8Za6TevoJeusdbelxrL1hdzSS4Uu4qOklYnfyOQt+2msVlzg7kqWHRhcVQjHHOHw3GsN2XYSgzVqf5Vr/AWU3O9u1Kqp4/234Ga7adUSd8mOIMx4gOYLubxvH/Gdhi4sc3efgcfutt3V2Jc5mMmhWeI3dC3XQ8PdvH0xquP2g5LLCCh3bBJGL2ouxBWA27VwlxIviowtE2QFJO7/fjlrbUZ3rf12BmC+7Q5eQf/OiRaBmYvDYzF8DkkeIswJPziuHMh5tUFsk75TD2P2RrjPqJoT5lgM0YdEJ+0JbkfeOIRJfvZBXPe8xTPpqD+Qfu1RtBfu+iHUeac1h0apUZRn63nfmEYPJvXeSFvG3DsYUswoNbTqGjBwyJpObtIZrf0omIs3vUVyY6n6M9HLw+/9OF5Lb/ss+7ZZwsk0q2xzjzUc8mET/GyP//VJnxsWDe6vp5/67nY9Yi+2Zx75w76fPOJRM5y2MZhElhwa9Hi2osfzTfaoS7Mdu138JVK/KzD+opHBlkXcGlfg5vR9t+F2+T/Z3/yO9jUl039HvraQ1W7r6185wCvR97YNMWZJfOPwX4yPZTt0zcmfEEMMj5MTDGbAuA31LH4/2Gd/CoqvxI54uzxl84Y5nkPlEIaJf0Le+B6XOwNujVAf5JuDHjt8/JTs7b0z4r+6x5uzeKjh0t6fDJ+L+8Yfeu7u7UGpTe5xyYf3umQX+KjcumTDp7mX1pf8LPmhJuxEq33tqHa8Q3fufEwMpkvypmBa2kcEf9maX/6pl5ixg/+VzwHfPMbfa3Jn2I797WUBuoPjNr0A4tXB2nHt8u9lAcibojTXBPx3RIdeENuxHVJmV4OsF1zG/mIpyJZJN0Jkk3CFWON9nzteFsuCclkcbyubgmrFXxNq++SOmF74Q6DAYv0ctndp1uKlDYpfFm4K46awR3DXhMG8uyPqh5zL/2TL5nc0XFOejnfk2VoL7RjHbvkMp694Axx87+mVuGRHBy6LhbkpN8X40Co8seMclw9PdsZogJ/KH1GGbWe9q3Ea7uWfQ5jmgXkskIbt3341K6OlbFbIx0OPpOMOmM86Igw6BP4ph9pHnL2MO9/MTezDzVrDnFTs/EfowqZmuOWJgO/NexEyX7QZQvS/Ne3D5NCTwnH3pbNlOAhTnRLIY9AvlNu8vM3BsL9KsknrHonxYonfmOEGFSGH3uXuDMYdfHGgWVcbB50V/ZQj5IjjL0tsvrGbEhxu/DWJDTTWjoRxSLlBwE5xjkExF4g/Z7e3HaZWR0+esFFZTNsEa+gp7PiI67NThYMzxKeGthoZZ5dV5gW5uWdY5Gslk/GONWNdEGP6tpyoDT21fXp82MuHAcG3bxsy0DEdbGXuU9RkDT39HHl8UMMDswoT56BozDDVZq6NQFhjhP/ncRz2WpOIHZW16W8xwCyHHseTzn18fMw71LOzPxkNjqyR/6kpjDiXDUGxecFp9ukzLOxrT9SA4Bl2GnmUrWXbXrQpXvLWmpaR2cE+Kha+Nc7aIndAW837tu99WbAl3+zc0bR2vaBtB3c7h4X9auC38V7wVuil/N4HGxFdausoX4HYxbiPvIjL8mILgJu1V3PNxr3ZEXbJC907mm7ZCxqtmLczcK+rKb7kDK72ymKUqfu87LvYNtU7+l/rLWi+c7KddQGxmvP2yn0DW+bMzRdfo8ZXxB2KXWir7WS8ssDdxFqUW73uSOCB4r8gvu2C8ZgyX2QZKxTYnfzCrGYNyHZoYvYjBmC5WpDOHCuOdAg1yuW4AHferglXKz9+hM9eCDj0zn3cJcKse7dBFzGcchI64tLL2/NN2CQbbqFrxARjh3+cXvB1ElvvI4ce/C4ed0GL4kBTvm8bMmDMH2x3blPeZM05yIeqZQLdoyZwINpD0zbPxOTn7mK3whp6ikaJ7ribsU6czzrXhDjoZoz8U67aRhznlHE13xyGi7DhhmqmIAy0JeaIHhplvmzZuzdFS9q19jIqO9i34gXeGoq2dIdtrcr9tx1e3n2ZbaJ8jQh2umlBzlvfvGIdu5NbTJePjRTc/sTigC/LbQ1oU9rquKZuF3fsWtoFNdguR4raCrVNjvbMVSJY9AeFov3SUQPtyXKTC7dJE2v/kVLYOW8T2sL9VUJt+exnpWUmbFazNXh8edl5jwUXZrMH3rIGF7tqpm52F0fWvvzNi8HDYoyUyUnltok7ZsUqgZ8Rv0fGq7AlAnGXN0i4Rb8+PHF3tNqaAhcHaqX3raG2j+KgIJYhXEMQHYzI1M8YLL4AkXlx+63huHr1RAQeReIsntWGnkmPKmqcU08XNei41lwxy+Bsum2qHEzE2v4k3eHAOCz4Mqkt9VlDD34XHlXpheMwVq/YDjHoOAz6MumpUrKGnm6OPKqo4YFZxYlzUHQYWt6TcBf+GMwtfCibE+t8lIwzusVSxBp6zZ0k9qjinE2655RlQjGkHOP/CcWOOEhuLBRnc8tp5RhMH1YU+mHcbjY5yRwom/f4uyZvhtoxT7MLlh222dYLVK2u4wrvctaipQ/qpimdGMniHFsPI2fCxUcgOaM84pmkb5ljX/DNOqtpzZq974hasguhfesmWWpVX+LMftng1zI/IoHF+jls7dJZi0sb9C1TwCRZI9pLfPPMG/wbJl7mk9Q2+eOwNd+ksfPCC6+wpWar5bobwAVaEKCwuwsnuZm01EvcZzjNBhfnOW19+wltd+LHyuJK+YIzn8Fb2eGcB/cFv9mzI8Le5vFzsLcLtfJK0W15Prv9Tf0u1o9w3UozJ1xpO6zap3Byl+ldEs0WfCtX8BvOut3Ac7FuwdpKz5xK9jKB+UfNc35ZhGtGXfwv4m9h3uH3Gxdey3DbbhNq1b8G7Oc73MuA1XbCkAE+wTzjvzcbSgbTZqfkzAf+m+UF93LNtil1+MhW7JyydrgaFksnyXS6qPEdWrHiIRgtHoo3KbW1cK65Y72iKdQLhoxtDvvDLPSmgBWN1B3mzRXDfq9Ik4F2Rs0ZOOfY5s+KK8kl8jhKvm+iCvJraDsziMLyfskmyqdlBseSrWDxil60hDXEg3NsN23HojXx6bcjOlu70NhBYtst0OwVwu4ifXFiWeAWmwJyawJbdoTLLQhs3g5Avho4ey/w7buXQnX5cCNQNs+uqDVHu72jziIumJbF/DbaFPBXjjXRvr92BNKSOQRE7D/njLVnZxsu/CDcsvBOPTZFa+R7TTTMqR0xN4y8vCdZN3nGwWv+SWjn//isBTNGMVt+htMr/gAH2/v0SiyZ0YGXxcLclE0xNrTUNTFOLHNHDMaVvyDGSdR2gDhKVkP4GdkL8SMKlsL6dlQ2wng1mSEw2Es+D7EZJNwUPEdCLvCYK25nD/1WpydUs47RMqjY6U2J163z2+86MriIkG5RmFzxw98HzF8eC2wiJqyFTWo77yO0sL0z2sKBrLbM7ip8W7gZ26pfeQwxHpuvZ23w2jAUb7PdMfj/qWUfCez5yx+6eGIZjrSZqRDu848GF1oonoK7FN3U+NEXxurkWluWGQ1RPyjMnuICM4hdQH1Ob7cwRF0dNhmpo2Q4reIQpeAEjejx4Z7ZEdcGx92mxi8ZmeeXeeZFfLNuWBhr7yemnacRWtjwjFvkQ4Syup2gl11gfCQvXANSdQVqiKnjHPT3pE29h8g+MmeC8nMk44MND80qTtyD4jHLVNu5cYgqzPbz4/NiMpANuaWgfYKPgsPHbAKIcYYGX2qINpw+DhPkewChMj6bx5DL7HhOyg1OeTxlanDIDDKPJ13zwryWxBgWnMNI/4AwjyExaFT2Mm5PtNle+KyBy7jZaX0bC/Aabm2TO6Ctpn3b925Z8JJtdu5oWrte0LaDu53Dwm418NvYXvAr1FJ+74ONiC61dZSvQOxi2EdexMXysgWAzdqruWbj3uwIu+SFrh1Nt2wLGldM2xm419UUX3IGV3tlMcqUfV72tdibqh39r/UWNN852c66gFjNaXvlvmplXhbsOTfbC/M1aK143PkeZhb+GTRlW9q9Qqv+3BXu55XD1qLct3VHQmuaf0GSlcrejmxTM65G2NrMe5FYMZcysHcbKb+k1gEd7wu70Dp93IvgH+mGLXBucOPgHitbSIeMBvdkKmtGjgvUza+3Y4cEq60TvFneODfo80mm7hLWNU/sulheNIG3AKmukBjv0yAuMxc22yatASedHcDxXuDsDGzZ0Fdf/rsA/heO5rhwUTSE7SgatP7cp7Cpp59OfPH9/E+8yCx1gjbIfxynfJvUka+V189plt3kMFxz8CeOBdc9flMOdaZ3sjDNp6L27GastM30K5K3NxuB8tYi0cAqJEqMQXRuFXaf7Wkghx7TjLK6bNu7m2JL6rVmGe0dnE3eLvw1Wtl6dzi0wvsc7fOy28XcVCxb6fca1pbOgduoE7NO5bt+wS0yk9hisbxiAntfGX55F7tJZYWu8d0nO24Xa8EKxGzbbCu4eLuYwCHEYha9RzG3C9ZCN3u52/TfF0xv/4j924r4st8tbqosYtfsYJmys48Wbmjrtqtcs//38nItMTQ4vjtm/LXG1H8+4P5cxIPDs4DiVsEsio0FuAfphgxZNAiXUzV9BMACnueJ7bGG7WpvE222oZEfhHDSUy35I48QNF+xi3JXJ6Zb6XtsPpPELHepNn+/4mv+T5adt6NdUNr03zpspb6aNnb1LoAL5NYTLB4SNV6D3J6xKQrNCGf3u3PwOXZMZrGTAoPPCHJqa4YesQIDz7Nezg2te90YzZbW01B2pYbcyqLV1mjWrW7OaEv1dE+7qvauaqumScz3cR1V69zMadML9DzHdZeaaU5J1jvQUXEO1c33WmvTO8AavhZaO4jZ9gu0WrnjAu/ZbMOFH4SsVtCWamE2xvnXHQPcRUixyGRhywtc4WYu73t2OdY2eb7WmXZ0YGHLW264isxdyWNhGOVui5VMVWMla6Tizja3KSXsNElZZSGWKGisNUBxY5tzkxI7XZmsshDjEjRr3ZS4sY0pSYmdzEdWWchwBB1rt7TZi5Y6sRJBVqNoknU44mab25FSdjIfWbGQCxI01jIicbONQUkpO21KVlnIWYlGO8xalrr+ZLASjnHptHF8yx1ePZ6FDqeN42xnk8c/zPGi8drswPbRJmM6t7rqkIur6N0yuuruzd1Vyy6dX+HI29G1TokdWbcFtHZNGNHK2nlQcGcOB5qq9d3IYhrvfoTawq+21nHq2780PsJhnlfwuZ3zVvOsZkzgS+3TFUjzXF7UoWzOHO3RHgXi9NTrk9vFNqvVUvjGclwWejXq7QhcPtZr8M8ZcghesQeE7y6b8ZbBzblFunln9VU0StdhtWVCS/+9nPLL2jAF5ip/2vJD6lH7K/5iGa53WZMqfCHT56wdG63h+jR+Nx0jNV+kYwmft8TnAHe6+u6t5pxmH8magO5bsDFOs4ybMNX+T5pnE2+Md7auS0v0zjJeayaP4n2k5nbsUf/KMeId0l2Tu1NOi7XwcqL7vok3nmG3zeuolavPmX8ev7bxh10pv8ToGl2eRPkYE9YqnJacK8fx655uT/sbmMFDlz5JYf3PcLT8Xjv5rvdK95dsu4dAP+lH+wncHc/0nSl5q65xGQYt4d4KSMapoznnlG8F1E3qfB7r+7say94YeCbcW/aoxfCw27W+enwL8oRruMU16yCbr4QvBAl7a1U71YkRXKrL7m1OpiDP33qBILYXzlYnP6J3gbt9gr1DuMQZ4US3B8gxxdO6JwsQDNoDT+bfjwKcNtwP+NmM2h0Uv5VyQ8PbvnZ+tLQ+Tsb2NY+XSEDXBcQcRDNXU4NCPGqdEX1K5LrTyDmWPi9+7TcagykweUb52OmvHvrA4ds+IxfR7WAPUznE6GQk1Io4cAn9/5GQuBt9asZHth1hZXtBthRmqBvx2AhVd7BZe/DcT6OwLPPqTA1qb61jFxRspTqbPHuHIVkThdtcWPtuisf5m9tkNYsxTnOgF/OHhfcZ2n4XNDtwXHPbLYLbwtXMgZ8DwPeVDxY8fDqKwCYSNrgO7i7sbojzhjmACQ7mqtJyyr4rDiaz1HDoyjzK77XVbsit0c2r15uAu2bZvctGDL34IJcHcTPCiOdEGAUvqjhuTbM5LCK+S22qnRPOchXHupp2PxyaV/6Lrr8hLnpt7Wb3FCa3WLv2NVwEfDNZOuq6YmYWlL9Ow2dLozjJiVX0XYR6DOtRGCUDpM6Etwvy50lWNBnZXO2Qm5gyR/8Msdk6v7gFzWo4BK5DkNmPGdJ+5abS8p8PbwKcTREUk7aMuqba3G2k9JV72An8xt2XvHOV03Iyr9yvHGvLkDx3PLCC2Th13sby9HBc0DwqnW9gyQZxHLrKMPFNYHp7ujcy25Vu5i7LKxjNTIaLjDuWmw7mLPJ20KCCiaUlyTxjdA/SMxgKlEkCvQ2wkTaZ+SxmwRarjfM21V1qZi4Wr+DE5GjtfbP6iBF6jktHGD5zZYi1ycPt1i74jOhcHdh49sVYevX+hjqbs3ndACwR3krpa0XZPoHDTKh75DlfiDt/uDfRiOo4WJOk5DnpgoSDJzf/WKobEXD/Lurbp13TzOEVTK+Rc16NcpfNABVrYezDeIcngFwBk1zo/Bfh3uNnkrAh5K9PdBe6DXBLt5ryUsz7wu5Ie0Syy8eATUe2kK/QaRq++Z4VH4Wccx702ASOgr9w1h3uErI3g69Vdct9lHnpei2974apu5DPVeq01xbdrjPmzIt32ck2c4G4X6SnyfT2nl3o5UXY3M87pY7SzNmKRHftC2s+oqskWQQsEx2K6j8HaS4Tp6fOabqJfhHyGgjN1qNpZIyZg/4mcIZ4b+B/4txvzSYi4EWodYPCG8nxTju8LjcsUSsNpv7O+GZY9VfWLd2k3Jr7V8xcLm9XmrPcH+nnDKEFur5TvV1Zz4Q356TcI7fEo3XJlLHDndYTjoWtLQzFLV/znAp2QzmB2F+kD0G45irPpXGHE7gC1X06OIeY2qoOUtHN+BPQsNc+drExllPl6IfjIXe2m1uWuCKsZk2D1as70JEJk9td6IUORnBuE+boBSR7B/kHnjqjZMI6R9ivJ8tOfhADnDyFjwlDv4NeH7/5SGNedjmfB8Qm5OwN5Zaju1d8rbf7Tx8ULyAT49uScbAwh1MnOjkrvcnq9An7fwjsvw05Wkd2d6HUv5YoXqoZ3t/5PGAmdztfV7C7iSKu9XmxU7fnBHPqg1s3wBudAXUs2kNsb496/Eqbn48bfp57ExYRJ+vGom+5uePtYc8Uchp379r3Nd/F6A9K9e8+8o1osHfccfnYRYA2w25HsTV3iRQby2+h+ua0TNwctiOILz9wVnwzicHFnwCMF4ZzoEbBN22MK+DcOBaf9BexWAHvruG8rrfqosvILrjstVLuaHPq5xoSBvGfVMbvTEO+3vvIFHFtFvd9LEgReH9ES22OF2GcCnHRuEaV2RfGWr6OzFj9GrvuG6Kz+MYHkhuM8LeMm1Z05zAts9jso7pmG3ZLN9V14d/lwFqUvYZWoy7MdjgNDr0kQhfZX7RWi/VwCH7IkGvvsChn1GnOAl20fSS4aORsMTIN7nfvCKUs0mQLsH2wwhDPe0L0OXGYPLj19pHBFvgZwuvSnxVZpxBB5gwpmrBf/n8QRsfNLnz8+zL3ormIbF/aOK6H65aOkcCiaWH5ODAZjARmDqP9owOQty6JDK4PLvaOs/R0sVxaKC+UpntvT8tZF+YGSNEX2eq0TLyeq8mlGRJ0zngjtHjt2JF3e8E/eiYBDW7fy9ynr7NmawPN+dpfGPtzwF5t8kyn2sUZ3hKnu/7iHgo3TqSRa2+coYAzrfPIM8g7ul3Wf0VGOKq+wrBwmwvtT69Xu8lmvflSCJ1zt5ZVY6d3v6T6+OdSG63A7TOLuXEQHaJgUIdQqx7kXJVWGgt96begCrmPfpxlnvcoj52o9x2kPL+Awt5nz5zKvbUPK20cEls35eXmDT554mGGL5r1ZhXbZ24y8mnDdsdmxlbSiV2n5YHl/1+yxcLIz9wAd75DdcY7t4YfEY+bfjWhqeiJbgR6/VHkz0FG1s4JDMZ3nWo+8iZAMb53nnx71qvhrgZMep/2387z+BgReg4qkxSuY3eAy+7Yu7jbC5LvVJ2J8HaWqxlfxqzXiefgrbiHaMX7rriJzrkeYt+04AV+0h1l0Ao9JJgGvvTN458sisjO424NpreZ8GIspJ9dmOecPTXCWOoaoZ0uF93ZZY+m4BlMtTmbnf7dPTmz9OvPZeTdct6jjGWI1an524mQxcNb3t3slzhi7TR5yDPcbz4hR6SO0bC93bonK+9Da9cQ7CdzSAAyy7A50cJzOnHOwO/dLf67yNbJ6ZZZuOT0hyzALHMeRp9Fapy5H0NZvnWsve7pViN1jjOaDV3KjZKk4bTTpeXttclnvVdqf+m2OwT6SX+0T+DWELBepsHLmfyByuUZ1I4DVhCdn9vOWVMsK4BuzIXzKN9f7GSwPXBYin2B6iKNQ7Dhh+fYk5ddHa4A7UDsU7XoU8QLd7dkgS2ceVW704kRfK2hXX4vgMkC72GORyDEfOTscvKIdtC7QJ0/4EsH6muEjDO3weERXMzn1vc7aAIzmewe3NwvQeUFkzagNIW8xxFtaLtt+720fCaf+xKNd3F4B5sFdGrApA4qOdnsUasZkfcaU9KRX2o/E9Zom8mZeT153nrs2Fsp9QMH+lZJchS1HXT/MVxMRnxLxSSVwAQ7La/w+cMFZ7k/fsPdjLN3ZUt6g3wjujv0uxCctfc0vpHWlzWu2Aa7B9ML15S1I3iNIn65L/nXxHabmjX3m4BxvLnBw44Sh/bOad7CyCRnDk22C1oY2nyZ9V0jAWC3dnVf+3PY6O+v9nT0FmCyxozBNZvU8XMs424k7MMb7kz9iGXkPcZuvCwn/nt/MHXKgzCPyNMMwm4gZx301eFN8Fyz972h8fG/2qwL5rvO7O+S6aKROTjHL5h9ml3u4OMW12wWMH0drJxz/ov6f92IRssYaZ9YU5j8kKenm9mU20XV0R2+bnxlm9pvKu8k49u4vsjWtH2GXzMouYi+EcSupTnxa1rgN8ulUpwMjV4X3XEJt5Rv5xCHLlWbUg0xnzvp5Ypxbz6UQRx72a+AYVOpXWEcd9LHoq7zhmzoWiIciHR/gsnOsa9MjE5XmNurNlN6hbwj5Mai9gQEW5auYfS1lO0T57epLTbQayzbD51nQbsmwGdBIt9I9pnovHjex7JbAV9jEe1F5NTOZs8Qlnf8IO4sdlVifwbF80T2m3aQ/VXeZjcOtoZieYN8aZOYvzILtrDazvMhNzbW3sXuxrAyPrKm2pWfFT+lcYS7hdnX2zzFod+XrMw6uZr8txC/uGxLy23jvLZi6vf15HcH+0a9D8kuUdh711pYcg0T1neKEVziRxr6k8kr916TW5NHsdxjO5FyHcs0kzEWTWM/Cn7QAOlXQFlDdnRrfY/+QjuHfR6UNYAsDePEWMHs/j7jeJ7uvIjwHrOTlBrCfh3b+jgGeB4F3l6UiUmNazuZeUT8Ozq1vB8Q1viWlBXXs94ux9P6YJ3JqO4WziaThX5aIxVgVeCjbPbddgO7SCRPdiHZogPrhi8aYhryrhLZ1rcYR4NDfvcLtoviZH3bAHQ/iXZmWKeBshiMWy52KrSraCd5RXmVIIuGbKKHAvs3NmEZPW3qz3to+vTyGiBd3m4gRbJHDR3k4u4xNUPhLd9ce+Xo7MX35MEyXu4Dl+NnlvPddabp+CFj5DNB05tRxm7eYwTYY/Zr81WT/ooH4+VxN6Z10YwU4gu/PTIz5LMqk480Ox3f50BAM8bVATl2e9yA/tPprT48bOFxLBea50v2F+7vYwIzPUkPoSCTwXY5sgPyXYFkHXA7x0xZvI4/4GICuiZrgJnp2BPb7TlLL4pWA1eUt+HrkDg7uFOFklmAp/C9gG7k+cTadVmoZATqbTqPw8eDvgPywYbbxfgOyvDnlHC/lAHyrREnZuLqCNX6UN1B3/UkWjpgwNO5lrWh3Er7u9WX9Z7/nkR5jZ8P5/b1t52d7SezMlitqpnwcF+P58IhEynTCl3lzcZCq1yEcWuAmeOuwHfL4q+1eMFOVyy6dveMFv0A4T/37Viob4G9Se7xoYqfr2c40rRWLAJMro5d3hJzOXZln3UAp2qOeAu61pYzrek//LVTdURIBskOOTd2EZRZMdsReOmbQ8WpeRoD35QvE0SLsQU4FxaWwtkI7xpJsYLsA+Z1V/AchL50O19hNVpnyc8E+LZK+msVzs5zngD/MknvhQMuQLbRJX/Ma2ptjbrZVSaJR+FIyl9POLLVmRSzygmITa42AU4N5lO2cgv8ehHs6sp1cZtN2TifW3KsaxN2TM0Ham5Ln+GLYm2BhpQetc0yl9tzOoewN/lNdXMaT+NGQEdLd06k7A/tvOKxUYCjzUMq7T/6mpFmbFloO6JjZKJ3R019ZxnVRZr5Y30HT7vYXhSMHcctF0aYa63kN59fBRlpFLSzD9kWctHANkr6IYv2FhotRs47nXHvvSWuiffeFG0W+y4wNg55Ed6WWAQjroJtgqXkul3dgHPReMDBhxaLha2mz6WJTytKdA/RaTWimMTE7NO1xZiNZUntJkPbufs61JdvfonAIvwW1NFeAw4+RSmwrpBZxSbD0SDBjYXSHMJALWFNe4fkykJQipqsMjssproHPbNeYVCfS5/7rjZoE7uowwK5bQ7RHIsa8WQ8y7aGm8pvnPtG8BHZMNYLWDNUrG6k+nzxk/5eIc7Grgq0WcwOC8WAkTJ2Hm3vCZgXinXMEWctTBB3LXeGpN7XhhW1WV5Jbg+EZk0KDhMZDJPZrcB8ui9Z3LbI0Y2Srfvctso5Ts1wBcPtiUm6b5Sjil+t4Jhbz/TFlXx3vIf9iV6uiDVphZbDi6HCIJypGjvjHbehKZhYNjgydnIjEzXf+2jIbQU6W/gkXn6EFTONZ/ZueSNXcTJzD+e7Z9aEUZ9umW3IkRc92J6kAyt9e3b+p3Ifs4MFL1cYjaEeDthm1IzihE8Fotvis4B96bT9zbPm0Jka1V0TDTG2+RbgyuGVZWubXtsyxer52ciZJccgRSY+bAqBCcfdVsNWxZkc8LS8YQtDdLf97N956rZqMy+rbqd0z8eqnjPctsoV9aq7jSznzs8Ky4ZyO1z+zOTsmRQMG29k8vpWlTzJbRt+V3Vz8M44LHHYNoxXbTdqqHWJhq13TkpOs2U0t5WMVeXBLR9detejQENuPn4N3yqPmYSsBLGMxLD+VJ3cWxX73N62NT90VY9JJOCrSWzYugNvG1xaXFV7uQ/1rElMWg4rzwEdEQRuewZXHe+3ho1OGNpWLeC46rPVZ1ttRbjqzh5SMQMMy8rM3rnPOib7OV4TXnPprOujqsSK1InIRuieG+HxPps4mH6d2rEh6GF601cEGPMhO30Kl/pMjGqOcm4yMmLnpfk2uU/20PAX9BVkovOj6t/G/uP8e2GmwLIZ/gc1RjsoMzXojmp/Q7K9VY141x+v9VNjHT9U2960eK3w3xXjenFfnBBHS4rQyztqO0ZkLuNIaU9DJ+MehXTp/C3bZH/nrwmBvvi+P9Q0WkbZYWjp6OTPbrCqqL525VewICpaVO1ishhKG5VGQWo6PUcteyxqfu56iQ+GmLM/AjpHqQ7kHca+JfuVsSYsF5i+4yf0Dwge620lYvr/bv6fq3C14jG/IYLYH/TZib2DOhY4zMU8LMdsfuMMUw55bfHbHTyH3mb7dQaMhQhtrty9FJwryuPMZRnS0LXFnqd0L4D4UkA6CccS82Nhuly5vEsBMnHbC+3Nh6XQj26GAktBY4LbC9ez41KAWRmD77EwXgXuBfjcbSm07mskjtrXFtJ288w2Oqswlj1Em+3JXDmPM6o1AWVzbfVG2kQ7pO2xVWYlmQH2jQXXyvBuazuDi2Bv31x1XFudy5RcPXtQ3eHB5TSkN9fAZnltzQ1rq0l/cBF3c1F5baGRV0SDNdWTysElhM2V2yb62opm+fiJ+gRvU2ZLTPskJo8cpH5wBcvNJZBrq3OCB62fW1qLwZUd3nVPIwu2ud7Z2irwrGmVHIM90Ta4jnv25hJsM3xtrbaGkkv819x07O6scGcYPK+QuXrqIHYZGLL2lqQHQ3kh2VlRq+Fk8JODa9tooTYn5NfGaLIZyzUGh9tiFIOyNoKT+M3Jb1qzNtzmIiSKtRFMom9OatCCteHbirK8wfFOim1OwbDP2tQ2lIvNaQsGl+YQYJx8sK2EtGyLZIOTXiGA2hxkDcEYXIgdRJU7P7CAh08y6aHHjsHg+GwcqLwDYBw+fTihbVyM5w1VrdzbyQB7zYezlc2xWODDwR4nmK0RVupDVTRO2CEm8yT2UguuFQjvNjpjjjcc3LhpMleDmOC38z/bspqR0YbTCmE4H/t4O6Lxg6uZlln53nBCw/DtIBbsVyM+wpyhCvDp1ry2jOcnccb5DeyFze3hlB4WtnMkq5luGQxVZULlHM6jKHRtaYZPR9gRWDsZ9bmQE9DbyBOyin3qPTQNLrP9pHULcnOZwNrqrfg3+LOnwdUbkm+ucbNgbc2GMVZnoIdsriVdW6VO0qG3PerP4HJO6G+uyZKvr61x9k3MmIThZoZ8q+fGtIlpDpYZXNNtcxnBtdWa6FHDZdR5Dq7AIbb9tK6yzTXfayvgr9arfoAVfWs5uJT2uc01i9aWbTBNLJr+SFYNLsc2ZsFdOGI48JftkJirobGlD4fx8v7Im4tzhoZd583hULF5bwfSS3s19MavYKs+HMQVgO3gj2O3GgyH7Z/Bxlrh2eHgP6Fsh/n9havBffzSH6thOIlvB6i1sVfD4Ow+73DwTwjbYfq8oqvBXX7Iv9UwDqO2A8RhsdUwt41sB15YDQ1py3BYzvG3w+n0Wg0Il/xuB/0cuxrODZOhDgfztuN2CMrV0FbL9uku60Hb3n1mjA8H/tl3toN9au9qEL9nYDiwh12U9hn6A4i7G+hhVbp+f36w8bPkXAxvBvB/jXcD5cuV68fapCSRE/YBXM166bFJt9FON3DFWL/a5EnLxA6gsMV2KnL9Xkz8NtB0eVnr5z+o+d/18zUpcAPrheVy/coaxgsDmJ8gs4HIkoK/fvjq8uaSRdbW+pCHYxIYwOJWcmxgKF6/bzv/AC6r8TZXWEM5WmsLtIPQA/hqF2ADtWD9vsPnYBKIY4fgADI3DiDbWQNHArrDTbhJXpV/fcRt+zmD+7+YhGXfGz5Pb+CkBW+58C+btMDGRdGIdsv3jtLjgiiTHtiOGLxNfuwRbU0I7EjuBc4FCTZbAUZ0W53Z0bEL4AuCDyE50PnblfQcgh/8SfMRIWBH7WxBpMMSfMxfgUc19Btujcjirraj8d3mX9BosX12dN/qfAvSVpr3iEb22U7ts874nPjOxEnPi+wtw7IpNil78UEwpNXwjo+Uwf//5IK1+T/C45GRYOdiXioO+xiTQm25SzhsyLH3jCfdZ0235aT4hHvN+8JRvAM7kR/3qWOO2pDtIDKMp06HU0b06i9MV8qHfBbayj5ZfmgvNfO5XQYuNxoZrMe18vITEkOHVbgwkxz5vWdLVr5mPHIfMuC73Jl1gwsPbNespMJFhDMi4cjzblTG/diE9cMu9zQRApMoPpOSwibIv3Ow2o3vpSHmjpPuE8GkexMK3CNgXfIIRNFjb2NBbR/uhbmwFOC5zg4BjgVnFrPEXnH50N4L0FvPpdAY/MJF0Je5cGg2Fggn/GTQ++Dj8/xfwzn/qF9ystQxho2F/WVzL4wmkZcC4sDuvDq4L6z6Y6F87+2F/tnXUuiuLKh5LKCvCvYCcc5cChr7Qlb57GfuFrI/nbOpHbY1gZV3/1iYG4YnA3RQANbiSH2u7VhTbu7fsSxa7VGLHxqV1zcZC9xbEzvITO6/bTJs1xrbtHff3iqCg5w/fMWALg5yxhCNWUZx42gNssjhJ7Ev+jq/fVsW1iZLM4l2mVO3API3ed9gBfo03mQBkyguc8b89dhkFre5hQRkk3efjFpm4bef2yYzO8MVDbCbvN1k/DLLG34GN5l/dxMvsweTioQey7ziwMXaZHqGjLHwZcZ6eN04v9/a/7Msb86JARUKOsdZsfYss1bUQxZmsLm5fWmC2S00W3NmnLHbJvp9lrfEDC4z/9wmHmeHu1v4fYxpYjz+KnpwsgYtNkedsTYShm237dQgH7+Qfba6hcFJTyDGy0zpKpvjy2vzfCKp2T/I4HQIwNosTDb+zVr3BcbWJm+Ctjn4wW3d2qhhNjh8E7rN4QXr1mZ5l0ZiODIWUd3gyNucCVsblECfzRW9L0xhBEtMRIOzvTeqAkv+fXNMrLV5fR8cjOGg94ntyNlqKsNM3zawxi2p/mBUOMNBnGO2873V+G3C+3iyNQXgh3Mavuq8ynYO43MD90xGtt/5hL36nJ2RxgmF4Whh/2rQCcZ2fsv9wmrqcQU+HOsuYBu/C1G3Qx3WmQBgFiJePrcCLjWZz7pmqxmca9sBtdXMt65/bodTelgA+qxQyft2ymE96152bV7xzizxnljD6e8gL+48N0nEWiMpZavOr1gPIq7hBkUkJJvoPqS6zDKosvWwybXCD9JQIIp5VvHprqSbRX1C/8bZLStuFjTY9LVPQ9QyjZ+4Xb4eZwfMSjK+toyHSRrug7LpcJm2sMarvv4y9xMEeB/coPNlWu8al0aVZY6boOY+KOhlLCR5Kg/CPgKGzaDC830amR5Woge2D77O5DqRNOlVtTLyYys9htz1KrPVUBixrfajr/QGE7mh8oXf79xl9iNuW9Q4nhrOJecXj44WoJi3FaOVwnkHhd4kX40sYMvzW+7bB62uCU0dHy5Z51bv22oiO2inpdOK/r0nI5gTUkxwg3myXWPjF7OS/ISzzKLS1US3kybQOX79RelwWOwLLd8KqsvtOpkMw02wztTORwxnssWNHs2hyHMOE82e9L6X5B5w/7fXFfYmeDzdvuptxd+2EgYXaYwTYyybGLYtRtkJzu45QZHDVSwcJMse1cC5wx3mnYinsqypxyYwyEvVp7uVedacd0YuIZacIcefpa5zLDS2MOQkRVkGkWW2DBkyBHySJFAlOCA0X2xFs+xMWiz6gyE0uaypZX7WNRHViK9tVGcpuGKUouBDVNRe+9lCiF7Io4VVBwnHYVFnqSCGOBmnw+/RfaiWSQn2v1TbB6P7X+Yr/nXFNOevaydzHBdlhbsOINf4ksQU7zgELR+SoYBe2OWXnG1n5lyu2Fc0zU2QrI7ctpaxrvqHBHlXxYTgQlTkB0fF/eh4sKT12FzPheN/vo2iICZizvDyuc3F/hctJkpjcU5k+YfsBhEdveSxaH6iGGtWBKRdPVW9EocWVw3rAMq1ean+pSScdCnTOLMgUk8FidSRjrawH7hIVqECZCeNrHyHBd3BrUYQyfEqIdYR/SDsldhF+NFv5z9xfLSwU2GGT/K8LqDeCaz+ZO9ZycieaM2eMgf//1oAAAABAAAAHUcAAMwjAQAotS/9oMwjAQCNOAJ64aFuMhAAcoEAGihQhmEAuDnx7/mWE5Eo74BIU6OTAlIE1IoRnFJWaxznRvaNGcF0ay6j75zvlwbYBu0Gda2VE2vaBXc3CkDmST/TjOnJzamySzGHyrSTMiZI9oGQvtXwlAJSXGyjgLDQBC+yzY58cpgSWx9/HrQ52kC0fJo5NpDPywgOIujBSst+bWwNGKwtUJBALQ0B2plZGdmY2IEwsC8DXl0FCHBtaWVhDbiyqqKaEiAVIAoKquYfGhYSCgb+5b5jr04scS5YhPgQ+Ien4xgsEAvDuqqCPm86zpk8HyWK6jyOw3JEhR7+j/b/mUPeuTBvyHGZMA9mCFkwa8hvOTAD5rb8l/0yg9yXM2QFmS9jyGl5L1/AX7KFXAFXZr2ch6VkvEwBD8l3eQJuzHa5Ds/IdJnFKvKa53CILJd1jmYJOUKGyw+yW3aQ2XKDvJYX5ARZLSPIaPnMrIxsTOxAGNiXAa+uAgS4trSysAZcWVVRTQmQygFyFBRUxfn5nzx1+uS0SVMmTJcsVaLkOUlSJEgBPHKEG2FGixQlQnTIUCFCnYMEcQYC9MdPn00+e/TkwXPHTh06eA6Wo5kZB84bN23YrFGTBoDXnWK20ks0Z8yUITNGTBgMBnvBXTCXLVqyYLmCLTElnsSSkVaqUJmCIXEUDAU/cdKEyRIlOAlGcsRIkUdHTAQLwUEwkB8+evDYgXVgRpwD47hhY7EGDayIZeBEHAPGCxctWOAVOAVGgU+YKEFihAiMiEHgD+tKN7cAI0BQFqgBa8AbNhgeYg8eBjuAYTGxMbIJ+O6OAhpWoGCtQRo+OzPLgDFg2LsAh9/eWDfNAC/o6yv8wl1dBOxwXh6cBcyHwfDYmAFswAsfwGFhURyNUFW1dbVxXFyWBBwhQQI0jIbVcBquw6PDEzAEXPjAwZoDvIbZCv368CpgPKyHM/zhvT/8hzfgwLY2OSyHGWCNrQZwDdDCXFpYCxfAXpjDIA7DX1hbmMV2GA5vnIXpMGAhFizEhZgQD55Tpnf6p0xQ/wSFM/7vKeqeJD1SpEd/7sfP5jfP53aoqNQpLFWpkuc9P+mS7tzZ4wjSIVE65wWd0ild0DsfR/Nv7uaa17ybr/kgHHVCJ9T5+bnmatS4dw/A37NJ8zSfTttLr6nznb90Si9k6IY+nSI6osN55qVHg+b9+8tj4oyjoqAYqjJi9OiP3ugBPM41NeVczunQqXM8//PNzUAPhKM+6Jw2fdMzZcJ0TLd0zyN6nz6JnuiAAC36onPe0eG0eRs2L/RDh6afXtEfPfNzjgirOAAWgKUwFFa/RvOYd/8ez/PksXM71/PNnynzMjdzMg8z5mMO5mLe5cu/nMu9HIuWa3mWb7mlFUrKKq9ySUkpl3JIyCZv8idPkjzJlywp8iI/cmTIh9zR8cd/XIgQHudxHz4Yz/jGxsUv/saNxCe+Ro0Yj3FFxRd/8RkzXNzFadCAcRjHgUPGZVyHDhu38R49cjzHgwTZ8R1/fARyIEeChMiJnAkTIzdyKFCUXMmnTHFyJ5+cjPIor6ykciq/ciXykbe8lbMwsWJFiZc4ChQhHuIiRBz+8CBAcDiHGxoKXvCEhH//e2Ag3/nu53fhF44BA97xrqc34RNOgcLc515Xt7/PstFHv65xjzsdnb7+3Z3c5V6hgt3tvreX97z39Vm4hWvQkOEZvmED4AHfocPgB//hQ+ELP2KEh3t4ihSIR7wKFSRO4i1anPiJs7iJNzgcHIMz+IMHC77gbm5rX/vbG9vZHNzBIVzC4SI8whu87WMPCyt72Q8cOPvZxcTSnnYyMrWr3cwswRMouIKjHcELfMAAr3s9K+vrX9/aAjvYubgM3MC1tLreReAEjvWrW31qqupVl5KiOtWjogRcwFU1wAM8Z6hDHR966PGvebS73e3b2GJitm3bYmLKyWke6t6a3VvL7b3l9N7blcNCWKPskAsZcnJycnJyCgb7Vjk5Obn3RcNU8YYx21xbq/3ul8VZvC/EHHn3q2hJ+e6X8Qj7ale7PXoocoXI8ePqSiyENcw86eA9GjFU0OYV2nEFDZjUrdHUihgICFtjSecSRzVau0GVg6akXRK/VkFpmSVRiSjKgxQtXJcASUSXaqJjwo5NCcDqpYVRkfTWhuGdQQAYJ7Pydd/3xWzd9m3f9sV8MTHlWJaVY1fKR7c3OQRWbm8sGymWcqpWC5d1I2Uhl3n0YOGQicq9s1Hz0Grxl4UArZRJwsj+JJKow5hN9piaY/hsS2qMKOI1WnvwgORjcAcACPFt/C0vWD0eU46cORvRB7uHVTn48Ydf/fyzIRZ+gSi/T58+dfrPF7lDNhz0u6CXh0fBro4us3mdk9txEiJAeHNz0MZgbYGCtABz8siZg/XgwRNnTWbmG802aC4vpbhN0+Lp1MUv9vLlCxgz+IwYPGaMGUvLK5SVWLho4dJFEnKKZBQpk5KSU5AkUaKkyZMnS3CTIEOIEHns8eNHECAYCB6ChejYcWPRBg5GvAM3NuZQxDFiyHjRwgVmgV/gGDFm4BlYEdNIIULFCGwCkyCBAqPAJfAJDoYbNoQA8QEfHnrAHrAh7sDHVyEw8A/3YcCQoQLOy6OAp4ct4Am4rs4O3wn6YUBADXgQv7lhNxwhAgQMAe8dh+Mwy9LRzeE5vK4aaxyNSsASMBycAwdtDNbU0M7wGSYjG8Nj+MCBL/yFDRgo4EUAE8BgYF24C4uJheEwbGZWhstwWhoCjAAvWKAAK8BsbA1wA0iQJjVqFMADYHREjAwxSnRCL5Ro0SJHjri4sDAW3tq6wlc4K4sKU+Eq/E6dPN3TNWna9E2/dMnSLVWqROmUOGH6PKd/+nwAKao7ivRHlxTpkk4Jiu8Jq//0Q+EoPAUlAE/hAQKs8ACsZcUJ6I8gQZzn/KB38tGT53u+ucnnfN7nfvC8zu/cjh08x3M6n5MZJ07mMw/nb9S0cXM2a9RczdO4d6fHfNte/vLST3/8GAIE8lKkWLmVU6FS+cpLSmZ5ll+50uVdvmVLmIf5ly9nfuZkyKApo+WWllgoKSc/+cjIKq/yKVOiPMqfPGmypAiSI2lyNB8zxszNXIwYMAdzL164nMu1HMuH+LiPCxES5EHu6KjkUqAcyiEhmZzJnTgxciNPkoTIifzxQ2TIUOTByHjjOXI08ujxHjsSE2HcwPHFRRqf8RIpUKBwcRdnweLFX7xFixUqVJi4iZ84IWLEiA//wOEcfngoeMEXFvrd74ODgYF85zsgYJ+GP8IN33BDww7vcA8eQjzEERFJnMRLwN29vdnd7g4c0J3ubGzr1zNgIHe5L1gw97mvrbFn36BB3eve1jbhE+7mRuEU/uBB3vMOAUKFV7gECRd+4dEohmP43nvfu9YWbuFxcXrXe4QIeMc73O/Q0MIe9rQ0spM9QQIzBQEeFWUFhVKd6vlqamUvOwIEYx/72dmBA11eXd/a4jrXr66ynvUAtzrVf6lLHWP1UFBTUwM+4FhYWtc6AQIFXuAGDHz962JHGzOLkquiW+nbuPfeW++5vfXe0mmlEDEy1BhpVdg4It17a62j0r21btu23Vu/79vuj0leqdk6EoAucI2SZ1krPx4Z3ex/+7Zt67Zuu+o5jfaWQfIg0bZua6USV3ZbMx2ASqbSqdu6reu2rtu6VtII8bhl6z5CSG9ArsIsEnQeptDsGlAItSzRq2vIDB1HFtYmbRhGn5CsGbLgBUEzZFMUzbk7Y2moKDl826tOEABGHRYNjpvnnO7ysmOLmcMQLcLHNyWUhLB6OhJ4B0+6qWyiE7dDsINLZmW2UlqzpLJ1+OYeblncNewExjWi6eJqEYyzvl+ORxIJbMAkIaKOiokunSFoqxO6MZxjNtdoo7M4LUIjoki6mriMokRa/VQUcTcJlpnjk4CTdlSAIy7Ior/3kVtzdBwVhg9v4/u+7/u+ruuylWuWlBOLQ4QkVkakhvUIS6cD6AmTx5rgpBw0FMFOlXDBqlFWYutokDXuvfURGGz2XgIHYghl2t5BypyIAQLHHnGBjtSXnQjJOSfprS3GrovCuNWopPFEAqmjc0dJCdDSNpBrj7BIyKGFDOhUhEKRaAU0ZPTXjs8WyJM9QWZMkgYZbDFVSddKOmoZBXLT0niA2SKAVntVQosVxCypDz6FokzetHtcZ6RyOCFbKZFXTNTotVBFEnqssNLSSVrfwkENbaIgl70jp+1c2xWW3Zvdq2Y3u9kZOl53iNkcdrObLWz3C6UmsmwtnXd7ZbGb3Y4eK1/EPRjrXvsE3byLlXWrzhMn0ywAEUS4Sz9TImq+vIwlcEx54lK1oOBukTH4vohTXxR0DF1NTro925xqHw1NtyL/Xj80SS8eE+hbVoTT3wJuU++9pddRMjBx6tjN7rkou9nNblazq161XueiK9ndlzJHOQOXgihhtAf2dJjTBaJskHKwI2Ll7ks7pUlIaolIEykdATLmqDoHvQioiBDkIuU25USD7X27g1RpwRedq2ip5paBUnrD2LyY2qLdRWbeUJoTIKUFu1l2s5tlWXZddeOfdra3tylPCdfNjp73Rpjh68KIGPfLgbv3DgzHi/bY/ntvvf+tp6zxIgVjB3FHbimRT892QV2gvT1gKdO2WMSkt94F0li1SGhI2XdSLKWMfGrrqHyKAyBP+uNGp/YhGGwRXLB7Cd4ZPz7MPrztywD42UC/3qxmKSdYqnBoss8v6N9aE8CZynar4eAoRrYCzBRKd+Q+0/pMC1HZXve61+2ue9WrntNzWq96s1sw6viBdGLdJrzWve51r3vd615buDWGm0In5+bLVLnXvW4KKVas+93r5lPTZ6/7e93rXve6171urec6jyS4IlSBhgexyPu+7/u+LV8kPG9LQfq3hYMBpnVbtz0lBlTitmVea4et27pt+8lKmotct3Xd9v2f1nf2/8USRaiipXRzREnrum3ZVDp1pa7UdVvXbd0xCIVRrdu6ke2HIJzbh3bbjE/q7MArElbKS3DWNWvUNqBaib2oZMTKRlPHOtlmbRuI2Gw/JRUk9aNNMNjA4FZJrg5BgNB2lK0fGoQMDruLk6r184KiPnTjtCMVN6161XpOV96xTJu2XZGMAgkM+9+S8J+U+i/ZOy32Fh5U0sREcj6hIaZjAkgRaeGGlAQfFTRudwC3FE5b0kRWmJLc7lw3Ms0xNBDcDeWyTFroUsONA41avwxSNpg8uJM/LKBpg6SyGd1AtYGEigC7SLaLZlOVHq64a1A8uZxDzLI/PBprexzaYtBczr2N1mK1j5FdrnxyOf96XCqa8mfP7aFqJ/PoXBJq8aOFstlidTBG5kr6QOXyTtpFSyqQQYuoxKWN/GObEzMozf3EMoFmboBUmwBy6N363a7ertau1u/e73a1q9/97ne/+92bwaO7twowD50GDjuMq+7d7nb3rszwyfW8HJOeIdFmR1GubVeqtasR9YjknoFjk3pSA6QzBZlgW+1qV7ualdrC6ApiDupKQEOvaFRsNTuNTqPTqJYKK9M2MwjaskCIonZykS7bOS97HLFZD6KXatL4aMvcFCw7AIHnmuU0it21kWJNQWRbaZsjigIW+iflkQRZq7UJ6onC4JoE0mRb9YWGVNLJEraVvqGUsW56MMJpF0gKSQzV5ZkiZlIpy7Jn+Nfb3frd2tXa3e92tatd/e53v9vV0+h+dyWMSl5vmeSVCZsyMhPWG+ngf8WY9YF497vfBnVlbxUGPZaJiw2GgOzd4ci3C+BFru+7310ZRILrmUTzzHZ3VN0Xl45mDu2pDYSrV9fVLiIwn1wznwF4AnNCZypCc6H+PNCYmBJdV7va1axUGSpXkMNj2+W5p1nQTb9AWNAcFBddV7vTqLviwLSNL7rSRSe4SDyTMSH6dqiMO537IoERm+UG4jINmSctGY+saZTsxBoplGCdAs41A9FsxzYckmZZQODADmJ7YI2XKSO0jYVS6PN4panVCtzw/6zWnkVZNKRIm6Sx8jQCcU1ypqy1enuUSgZCpKUuUEv16fnGj1432Z5wIhqSQvpwyGrlwJsjA5wSBWuTRlrEJB2EpcxcFUqQ2CzFTHbAGi9zkD6drWIzhrBWiJnYKQ6N6x0YD+uJTy7YqC6G2OzBxwoELMqTJtF1k6OuSI4o1yyFaC41aK2G5uh5/cZQWvlYCVvhwJDw6r3frfW73+3qvV397ne7+40kHATd7373u9/9/j0o3PuRzrvf/e53v/vNLEFop6XQfPe73/3ud19tSLKhnlbvfvWrX/1qBpJy6DFxfa52tatd7ep1DCQtxsOJq6NudBplyfoMgtr9TbkM5OJg7i6t71KQi9WlHrpLLNhLPmuRWjs3LV2ORlIyDCYNbHDXzvlJaCUAwSPdkRi2RuscpTy8FJBKedvTvlm6YSGxHLZwgWrYjkilZBRpkZNBqlX7FBwjS5R2VgKSWtoU03Z1sS1ZlRfSQmqItH1VlNoBYNjaqLeos63fmS5pJjURrdcOPVpez08MEUD9IMA9eHNzgMcOHTmZGY4aTDNgtFBSeZLE8UdUYyCDBGJcU5ceNVqU6FChTkGB/vThk/VkqpGSgrGcgqQRiAZ9pk44YJ54NY6w0HYolyYwQXaQPbwgb6w4/KvCkzDgzwkgHQUbYRU4x1UEKlbR1LPsSTVTyzInlUwdy5lUMfVAtqSGqWDZU/1SDeQVqpfalVGoBVQCuYTKpW5lEaqWmpVBqFjqgHyoXqlWmYNapVJlQnVKFZA1qFJqgPynRqlQOYMKVdW89/wpd8qfeVPWlDHlS7lSppQnZUk5EqQA8qPsqBGjvCgrSoQoH8qGChHKnXmQIM4cKAP64yf3yZt89mQ9OQ+eO9lOrkNnTpaTNTPjZDj5jZs2mU1eoyZNBiC/7hSzlV6iOWOmDJkxYsKA+eKlC5ctWnKWjOWKZSXlpGSklSpUpkBKiQLliZMmTJYoyUkykiNGijxmx0xkiJAgQPKP7KMHjx06cmNmzIHjho28mGvQUJwhIyfmGDBeuGiRWWQVOUU+kU1kEnlERswh8ofsIbnJkiRHimTHH42JLEwYSgXy2clFWIAmphX1/E2QFhUKxCeTjSuGi2WUJUV2LEYlVpkQ1GI7ROhoiKEGHaj9UQIQpZmC9kPVCEOG61KfsjNQbHRgy66qiMTelP3Z0k0nvsJ4DkWDekHPoGZQAtAyKBlUCzoGFYMOgB6AhkGroGDQL6gAqAFoF7QAlAu6Bc2CYkGvoFZQKugUVAoaABoFlTH00KufVE+dPjlt0qRmUjFdsqRWUil5TlIlqZEgBfDIUSOVkbpIUSJE6iHVUCFCaqc6SBBnIEB/VD9qn00+6h5VTx486h3VTh06c+RoqplqHDhvVDdqGzZrVDVqGgBed4qptqr0Es0ZM2VUMuoYMWFUMOoXL11ULuoWLVmwXLFUK1XKSUk1UrVShYo6RYWUEkWFoj5x0kRloi5RkgTJESNqEfXRkYg6RBUSBIj6Q/XRg8cOHY0qo5oDxw3VhrpYg4aqqM6QkRgDxgvVhdqCxQpVhZoCxQnVhFqCxAgRiCFUEOoHD4cdVEOVQ+EGlVAdFNQQCPin+ql9Gfgw7F2wUEEvD4/C3QS7Ojp2nZPbOhonIQIEuAdvbg7a2BowWFugIIFaGtqZWRnZmNiBMLAvA15dBQhwbWllYQ24Uq3UKqopAVIBoqCgasbq1X/y1OmT0yZNmTBdslSJkuckSY8WBeqjx44cOGwesw0bOHAg0aGjRw8gQH788OGjsTEJI+PiYo0ajjBgEHnxAgWKEydChAABIpGQkMXfn4oMGUjw8YnIIvKFCx4sWDjMhzkvbwMe3uCECYB2doF1dRqyhnx3J0iBQqGenmGFCh/29hAxYCiRS+S+vhR+fhw4xOjQYcQIEyZWrHDhQoYMGtmGnJzWEeLgHrzlB3nNdHQ778yy0RxNS2NTU2tL0JYVKFiwls/O0NAyggZpB7rEwAoc8DLLY2NhYV9fBnIXFlZW1tYWVwCpqqqqq2vCmjLGm/CmnDMnzCmr6if+zFBoJ9wpQ0F5wp5yFP6ELXl6SpIUiRKlR5MmYUj4Eq5UKRKOhCnhADAx2ahR80aOphxcp44dbAfr0YNns00aM2leMi8hQoIE7fGD8yhSxMmIUaNGgxbtwXny3MF35hQqxOfQoUSYs0wZ98wZNJgNIESDwoRpwYCRYikWg10cCPPBeLAh3AcDwmNwi19MB2dmzsFzsBs3cXAcvGZNG9wGT/Glo6MRI0qUNHkCBS9ZwuTIESQYCSZC5PHHFpwlS5UrV6REQjaJMjk5OcVSEScm5pAhgxEz4hkzeNDAgcOHDh1BhOBGfEMIECA9euzANbDijhySXCoxlikYCmaCneAti9gH5oGxYC1arGAruEsXSkyJv3ypxJXYC+aCTZxAgSKFChUrYLyAYXiID3GHDh88IIIIESIQFxZu2CCIBTEhBsR9f359f4W4EGvAHPCEOwp4GA/n5elhPVyhgoULF/b4sF1d3YrXubk5jXWEt7e1NTbMhhkwaIAd4LSyMjNshsnIxsbQEogdCAPDYPjry0BXl1cBraysqqoqKQGdPH2Kuqeoq2rG+JEkXdInTfK85ylRqvRKt2TpEiZMmZ5p0aJHh/RCh35I0Q0dEaJET/RFZ9SnzyA+fPC8d900Uuklmjq3Y2fzm8+TR9AFXY+eTj9hbsZMmTNnMFsApp9irlnz983fpxFD5pLQn84PAnRAJ/RAXCzBgOnyLg/zMnHizHHzN8ciKenlXr5lixg4bACorIycI+dyvmcPHc5JyUdSnvJWPvkr13LLs3mbNnAy67zONW+HkXHHd9yGjRu/cUXFxS8eBgwWLGI8xlGgGDHiwwdDQ0FBD/fwDBkwYLhwYfCDr1AB8IDPy8PD09MLfOAtWNBwDd/bK3zh+fj8/E5ICOIQsUSJEz9xFSpavMVduEhMnPEZp0GjxmscB44cz3EdOhrf+B8/ihRxvOOXLIkSRcmVVKlChcqTKVOc3MmlSEnyJG/S5MiRRyA8zuM9zggGJlZ2NjZ2YO5abwkS4CAYeFfX1lbVurJ2dhPQrqaWtmABgwZTjxKQ86H4qvr/UFABpNze1sa2tpYAwdWVlZYWAQJc57rXv+jo6ua+b+AFHnY3uAcshddVXcAHIKC61QM4+Nvbgz94hAjRRx93uUCEfkHSO2e6tlS6ddu2k22rtdatjl5urbeOSlsd1Vq/+t3vdt/I/a5Npl/exCt47371q9/96le/+90sFpiGF7BJCFe/2301q7el+Y6N+Xz3u50EyPImShHkapYF3qbbuqG9+8XaG3wBEzW5UTfKMurFmEJZ6/TqV5v4weJIs9LTcO8YjztJ6lYRUy9evXJOCmRJiFHS4QoiewJG2KRcsNu15GoWgzdcaSA+V7tRxgp70yd3RpCRWb2mniwOsz01oHStiEmyCMKQhiUB+ddhDeD6KXMwnICoBHFXWIgFmBEABAAIUACzlxmI5FgcCEronAO0yUjiwIVREPBAEgHCYDqG0giDAEAAAAIAAAYUAd/F/p8YnbUdtQxV9IO6ZHiCtcRECm5aClyZRR/PkKohAnetpoUnL3L6oKIk0OoMbi0Z+Hxd4bJHCLPTQd9DHbnVe+bavNl2CRUIQEvOmfgEDyh2gfSiwI+nUyGvMo1k0JrwWglnZcs2c2R35P+GMlf+bygzO/9WM7PT+7NbO/cWMrPT+7NbO7/PVeyBmF/hHojRzdr9GN1M747rzfR65v5W70xOb+Yu5tzKWfE/uyfM76zJfztzw97m2ry3sSsJA3U94ZXpJkB1nN1UG1Y/smbc7U5N3F+ZE3ZH5obtM6MDS7zoXZVxRS9N0Q+RJ7qXcUSHXv3Quf4NHULxQhfbJ/Qr5wfdlZLX5cny8i/olAm6h34+uMGFHoWOA12s1Xw+DMLx/AvwOQ+4c2HAce4SjN48Ac5uPgY9mxemXWsOkUbYq4/mxdJO85kaZnMOyt2cweZr81gB7s2PAmI237rOa64qo6wRmitcTS1H5oQ14zBPE2hgHhh4c/lmdqtyVj46naOcuaZy8szZPckpYOYiXynXCK3HW2CO460Acoy/Q3nFr6Av4nVX5vCjwk94TP0/uDp47wpeOsy4bce9RmMGAKsbLwL6JvV2o9KTbuKeYYJJ9uIrCIHo8jYvE7/XR9zW+iROK+d3uYmjzE3ZoP4vZd/YvzjyjuLbhf7wfDXucG/gJnN4cW9gl4pPFavEf5n8CMQp33DX30daxLPS7w6nkYW7dFGRlLMGvDWKElMTEAnb/RneP/7WX/iCWf+767AIgLoNZ8HV1omGG09ECNOoV4Okh2tsihPm2nX/B6Wne5aGy8w36nfG8NYLTshTNtP76O3TPr/8lj5G6FUXZvi8/51ClOpHmfkq+D4MNGm7D8jhyRIc/dl7WT7TtmAaw5ZNiWNAKQz6rp03n57uxa/CkeusC52tcQz2F7+ejMxbX1RV9aoCzOH3Mc/XBpw4W/p2Ur+3Oc9den60GO2ZULme8j+rBE+83ZUQiWDFd5H6pc9RtNdJxvS/0vD6TaBvNpQ7f1/WYa3svdkt5V6rfa4qItEFuKrSHd+UGLBa6SsawWOo9Jt0y0XjPUgEI9+39+r/UvofwROlT9L43f0HMlKlpygQBA99oyH6Lp29X1OowN4pXe143CUYvKWHkbh3NxMeSJ9RAd93HdIe9c+9mxIMvSezS/e9uFjfPbGV7Sy+h53ue0ZYCbYET7a23q8CmYEXKsC/1FIlvesiEbn74533FACH3sWP8Ov4QIUM4cqi9ONsNLzBxcvGm6cTcco33PrWvoaLPrvWNpWJc/TdifdXXRvuEFzZpNuZepYKaL74FjG0fH13w31L1Nzt+rLc9w9jwAdraiAmuakreGRrXtIGXG5zDHurVogqeGL7sIiiNGbImh8R055J5KfECTd3eds4JUlNJswS887x2wM+OYXgW0rr0IJoGvC24ON4tkw/SvB1du5uUTqOMKkx6n/BU6/cXsZ9vPW31mZto/EnblYyZQRxLA5bElhq13RlqhY24+ZeO/HoWrtyPNZgnPFC9YfkAA8S8jrbXFnpbLxk7WCcLwizpCP7q3CkC3fWg18hRnFXKAc4sqgF18byTSBwVDB4rdq+/1tbvsj17NmOK2tve9X+gGDSfgs9RNiIu5puFVYJNgOzZwsjqR7lbMc8YqTlwnJY/nD0freLZ0Gch08DRBVesEYhTcwzceCuN5IijAdyDAW/cYGzSIG7KCKl434JgVRGpaxIX6InZCQe4zv9Jf1Olofr4C7XvLh6eDDJbMZBr/IueTMBpMQ4935fOwA2HXMEFYZNkNPqPDuC5jK6i3v125Jb64ox1/v6Yh5+O7tXU0I/10B+g6+XzaaPs1UsbeDDx26omUkIW2TcnOVtmai0HCuGKW8MFW+ygC1i9lVnGPKHMbV/1sUb2robD2fBr384vYH6V+SSxoe/xtDsrruoZpaxtVsBs9McppHUv7WHX2qHVbYR7qTD1jHjchcazAh8YxzwdjgE6Ies3wOu0e2yZwfw2FgLYwz25h3inS/YKlPWq9ANFrwkY9w6C+hNDGsX+s1nhAh2Zf6xfXfohg69OmjZ6UA9nbhtf5A5Ix19WFl8bu/3VJ4h/O2FXqIFcaRBCmsRP0XbGOqQ1qjN67JJuR/n887Sro+hdIVH82NieLay/23+ZabokfUHwp839jS0V9uenOE5S9eeH5JpZ/0TYBcOMe5hWyizbFd195HoKyJG0uXVCCTYVakF3ZelnYJ4E8wIGtcMneR2JhZ7YRkPbzL+TF2D2HyDp5QWqFe2xw36vItZ1nGvNuWu7K6ZXu07td5D2oVIR6sldlqD9J5I9mygchTt/KtftWiqgvpBrhjmNOWkPj8hdpvhTknt6sr7U2SJz+133ac3yCged0SPOUHWRHbdOEwgk8fFojULMp9R/aeM272mGLq8HIGOV8h/g+NCp4i95nUE8NwIfnvZ484moJwG1lhWDu18Nh5Z4E5ntaFvX0wO6tF5AsJxGteE1UXZQdFuOwC4ruHHEYOZGADdb9Obyi731iM3E7OvJ9gdsdOxg9oAQ6+yvqx76jdNGTnyzJloZj6QXXBq1yHQz+hsLM/ZpbMF0EYer5VF20KZ5S53M1bz1jXN8JX9OclCtt4d+uPYtsNl/s/v6pAry9pmYjXc3R//iNmhNqitWjczSlfgWQ2H3wn6oYAJ8vmdq3JyMRMt7SHd183z/DYW2tyiM2FwuOCPbVqEF9VQ8irhtdTNkzzeyE47JeeNo81i4Y5+f3zCtNLEvhH/vkBHc/wDb6VpdXRULHiOnj7kljMhWBln9GdPnMrg5lNq/YihnM+Rwzydya+tNga9ZU4my54AnNsUTCRHQFve8C1Kk5eGDp5/tHTVr7p7D0o2vNUj1Bod/j/z/Pfmp+CcxDjoymwFQNqmIS9W3HcoZS8/iy3UvFwrXgzCS+lQ3PM7O2tcAXHKv15YUnaPiVfPEl9eRcyy+gdv5SladQTSOE/TDsPJJ7DX/UbZMk1munNeckc8xwVN7raDFK5Gcd0Lho1rKXQ2G1lc18HOjp7bI/S78zHrMN71M/maI9r4aoia5pA5ZmLjb1fCXHIfGOptgsV4/kmv1sAfmgceuKdNs3ZGhaNzWnlD8KOf0Mk4rrbNYvvRIDOZ1WYeIXXnb8Rh7r2dJsgdw00s5Dk0gy7mxrjdlEXsiEKu4dD4Dc8R68tYfFkbN5xzYNPqiIwHPmlWrLY329w1J891Y/MU98h5o29o1xJNWBdZGQttgfgT/NN1vS9ldDPlrWzM0U3ddoss6Pk7Xp7Mqt3MY3igvDmtmxu1pc2hZ4ZEMk9Y68ZN5eysOeheX5pKH4kl5zv4YZzrHJOfGHHL7MxFghfrSuQI7ejdm5v3zKT43utu1dOSKrsuYS4tzUXd8Dw5z0+ZizXa6d2ki/d9SnEzVBvekhbrgscLGpIh0MrBXu6Unj5SpZkD0azhvAnM6zGKWxsvZ7dn9ay4bhKlN+49WK2fuuK2gehUbAnds/Uk1me3bUwn8Xn0rqx2koY+jf47h8k2V8MgNqHh7uJ1RYk+g9rNKZWrfWBWxVJ03QpgalabHrsIr7Y6hDU3QzeBV7jZAiB3N9liCHO41L0917sbuTwCzRpOLixidXnaGetp5ZhPURaaGQdsj9Lmq1OjSu8QpxRbmOO76SWMj0+oUUGtQcVziV+Fd6DC1a0nC/TFDh6uWLL811ymLNG8Qdfo8Tv7SlJ7TmbOiTHLY9Dl8vK11TZgOZH4BcNH6vaADbr8nr32jSOura5ASmes3TXH9827p85pZxwtbhXvpRl8XCRcc+0O3vluIoa5aoi8A3PWmmOgO3Lfqlnkfvgbk/K67C0CNq+bnyzW860b7YiboZlxTx9EFjNaeYy4hscyN2/rBtFmm7R9ggxFN2toDjcviWN9OtHgzdNBBAzo3EhM3FcqlOHWiVhDRVcx9vbtLbhJ3arwRIu8VEvzmiHsOGvuVn2r++/2o7X9lBvl0ciaa/563Vm7/aOfrupSqfMHXasO2GmbDtTYbw7byNMdeRLb7tc1lUptDN3hlMKhjYkQSJl6j5e9+0BWeOpNSOpPxyRwjp1viuiOFml2+ZJ4rRxWjsmMbvSzS9TMNi3CKLzzSRbIwe3soaXUAqAiVjDZXButBVxlPZR5Jc+5OVY+IAOJ5h8xwajLxiBgm8O+lUX/uROO0LUnELoqNPF8m1+q8bacenaerTxIS+bb2/gXhizP+bNF9YIeZ/fKne+FfVcimPWOx+zc31+tDqj/ZNYIWN4OC9C8yofj7vX1bzkvnVY6avadO16O2MOek7GpG0H008IL4zVnPNhxlaNZoYlFtyTnj1un/fzZ87oVP0+SKlngIjE1nSSf4aFTwuYuRiaxzabai99yBnAOrFbGLhslu+eFCeEJ7ILcdoamfXEh7xfWRmZg4IlWq7kgwF/30oCoGA9Hybm4zgq1/dvLZhsf1gqXGglHJE8uXH18d5MG1EoR4OKIZXLY6qa9XqOY6z4/ycgE3diDsMxivezFS/PSfbDHp/vw0Ww3Xp/+chpq+cYd9FyafYNGn2YqelrDxeyF4XT92VxjyAO1agukxf6W1SgmYj2XcGYZeQ7dqKriYpBrLEOKn6AdpWheQIqjOXk2GI6rboIiH6uZGSKSZojUoIu84vjf0sw9TQD2N1pfO+S6XK6rEV6Nn2q7+fAHlvC6xvXnIbC8JbcgbtlzoJW1waX/GCgsH67oEGRP0GfSzrzFrl/tXH6b6jvc7gr8qeP+fhq4lUnXfht7LccQko+rRatuLDkzoaRxy2gQO/MvLWvj9O6Sc5zjNJ4IIpd2Ag4ab93snSWON0HR6GQZ7/1llL45YRfWOXYNFq84L1RjToAox2nRRjuAp3Rf2B2ELE3pBYODQDspvkMKOwhPxCsD0rOHidhr2xYr+1gV5u7pUKy17YbFjqf98nAITNlkZHY5vaEgLtLbZQzYwrbDzdWks/qK/MA9g90zttvHPPZuWHeXcajuR2vboWSr5uAobB86wSzk/ziSc2nT7GTyEFB1OI2M3PeipcxwAFY7knhb1pPi0GRugbFg6l69NbvqZ1Zn9RWlna0pmfgU7jJG9x/RWCW4ie3U6y+KDapeIxWj5X9BcSYMgmpvJgD8c5JTglonPu+IzNt7r2tqFSPkuboN1MrybvnhkQDcMaRaOiv4tFuHu2XVuNQQI2LA+VosZNn045D02YCHXNXSvvE/Xo0Nh+WYmITdfpW7I4+oTVt0b7JtRpelUWN4yCmMoCYa98jClaPP6z5WZVs22dZXgcwHnnMZgSInMZgCqWZRF5jgmud2R694Jx1Ji0Io5Npv1ZZGUsXDDrYkmy6BVqh1cS54C67hZS0wQXEOfkUadu4Dbb9JswtrDnLx5MNW+PrlljNjPSHKNJSozaxo7cM0UbC7Pab2EjejluJPBLovOzmwYDf5xfjxzRzrthveOcfuvZqWXg32j2A9OIEVXnuqOduN26G7sfsGm7RMozuhwCQE52w3tDrdB0OttOZjEezCxJl1l3EowRT45laYTt1HwyoaqScJpVX0nUqz+0zHl/4x5HtZp8zEZ0ZK6ZCyVG38l6noXCJxMhBOLdkL2+YHbt4iHoZpr7I+et9skTLVSlka48/K3wAehDIF6Fz+ZXJsGpI0/nxNXKuHEkJBX2mAnkOjGGDr9gs+N8iyPjYfUSfK1pOSoZF8omadKqq+BulZbc2ykoiEFc/Nfggi64axIc720nXatZVr+KThKELZNH+aCW7ZeKrbhaEVxJSbdh0W3rpoeriyPd+CDhPCRrnBgQL8x6q4F3cIncZjcxgbr+X206LF1cv0QFGfV9uFoL3QCYVTGN3rsrm8rBg4YtEnM+vr8mZnNXp5CH0g4cs9Bk9TvDm8Whr4mxcejRtvU4os8IVT4a6Si12kfa66ehYvM3BZ48fisfWACjx7S6yoCphrsRPTYuzDy2heQbLFO+v2RKsJGBCAylefCfcC32NyK0fCLkEuTUVFt/Mo5BMCTnS7csQoqnYFmnbBo05+3JLVigOr6ITl4k+HCw6mz2FNYNfvO5I5zBT2VJiWhl9uPre2glSMatEkl6sf636Q3UJND5zTwsZdYA4/hd/sJtzOWERZxrH47gqDLIWWVifDh1+ZliE3jOr6li+q+4tOU7bD1s8CEqx19YTGZsG5ggqDaFU90WtoY0PLkIjb13wJOVHywlmX+zMUsj308Dzxf/N8I8bP/+aEmYcrLcq4vL+eyUQvM0qz68YybLKLh0ybHSlAqzM9dvPYVK1P5o9b4niGrj3VqzWucvB7Mg1tfwD5e2U8cXPtNfPd+PhMq1PnbD43JFpq4JQ703NR0fR4dVJOs3rO3h67fud9pu/xLVbdmLHt74q7+2D2jU5D7OTmJOXus1ab1op18/6qLPf/pfWWpU8y8XJKDzuTbYFp9INexHs5sWqUg164pZ0O1ZFY2Z8LR9ZNRFn93jPvC2ZjNJof96FmF1r1OOEw1jlH9lislElZPbBJ6bnT5+UNPXeCRzH4lJBwxuXuBUteFAKkEvWAMXhX3ZI/jLnLZ2neojwTrTxw2jE7a0tYsiIdty43FjSfPfmIO5sQeHlB0B9eb2yNVU7qy1yLoaX2e9yv7ngMI8zc/0mQUIA342JTFzzRgSNujU9olydzYmKygHPBUj84FtpsZo25t0BLxX5pkvE5RvDhxkdjWlXRgagAbP8ubGCLSJeXOH/BzSa4Q5C4rK9K34Om/g5XECvXnNaP8zJAQwlYhXZlP6qmZwot0kPDeyITtOfXwNuQ7+lNVPIS3aETe1irDLflLPDFVPow3aNRwW3II6T1EBqzos8XROcK0rmediUUzgdR0T90Cinc7oWocSItf0hFwVUh9tsj/uypfEnXn4fu5mG7UNjmtrzq5HA66xrqf4ZuhJN5OzhTHHTwIOqd+IemzVvlWdaBZJKifv+C9YLCbNWBkJx+HdE8uncaquEvDutelurFFvuXeYmS5uBTUapKSvQJ4dpSPh3KynrvXk3Gp2w/XdhQtPa9ZJ8QGMHmRjGd3q8S+SPAHr/To0AS1fh/5qILH/EQeLaG8wNo5VioZD49c1HcgxiKTF9vbgS77MeK7vUxM2o9rmz2WJ7QvR42pY7HSUhdb9yQlb3UCW0az6PUvgjW5ervVizeziRv+uet2+ntPnvDR3vR11ssKZ8KxuitBD2dize4rqItdxPFAZutGwZYVm/pJqDW5NeAsjyPbstbYbC6CaduXRk93bIZvOkYnrUbuixmzKHGDfkmErdoj5t6eje76xLknUDjVly5fQ8obyvrccvG0k1UtOmWy3nXrMRtGEboJo6BtkQcjUzNqW2Lc4raLowFIrS2deVLWyzblkxZm1iGJ43Itq3Wv6626pG39bSteZM28XOgtja2LZD1vYA92woLEl5uNhqDNuvSZD4C7Gztb3+2nrPrIHHg8HpA59TLhrpli1qpIU7YApfhjNjwozmj1XdiM1ZqONuwZYp5RA3Yyif9z7XT69dQzAhnms74HLVcEcr/NVd4vKxF5rqWL2Ujmabt8HPK7HR3KYS7IwONkneXaG2/NqmDarC9mhvl87CtCTS/NpEn526m0gVBZFEatCGr6butrHYKNggWARulSXahcUaSqs3bJNOJ5mFIE+JipejOooQuA+twfImTvB4IGyypZ6vlOp6mkN1XbpmlLD04haSorn26NW2BqV/rlN9PA7gVDMnJFpe5QI2xkbw3IwlZ2sVyZSK4+uOpreYuOddyg0aMtXozdM9DmR6jayPAUwQ9D2WKKQwzV27R1Ly2KZHwuWBZVwWsQJukoZ6o3npP6Fpz59tO7Fg1U3QDGULNvu865XWGqqHJ2jvQSRo6lssMMFFpIkwms9H11o5/a9KwZhonmeGlnVQaeVjdHFX+tXsqp74xq2voe9kGTMsT1fdOh9o+9ca91UrOp2/OB7i4OqAOCB5sdTO/urAdTaYv7ludbqfaVfV9WyJpTGtUXUFZK+JKubdZB9PCFdp4vkUPTNBudj13YfwDGZqYf89uDPOC8vFRKBvsnj9JTQkK7Bkzm/5Sr4/44+PhXfW1xX1qXq0Tt3OxKRUb064tSOP3qQwxn7y9XG+TR2+rV2/DQ0/bU0/zoV53wKf/FKx+BZ26aRBIfxOu51jNwtbrZTjnPQ5bv0fPbpsIpVcrQXoZiqMHF7nEdcsx003AnJOPdf/p0LcL+saeuvhwmkAfeOKeGr9bI8HYdoL66tMWH/rQ0Xe2ifsmaVwj9PRYXNk+SPvPcqpu2buWXS1/1LU7AOw6dYFsNpJuTKns74oX0vDVrjlgpVaMabaPHWBEuI0Cg66BOsmcHSh5QRf3rjOsMRQh9oOTG9Q0zFwHrVybDxvMk/Ztp5JUl65xnfmWdTc4qKrjqczg4JmbTo3Z6eybF9+4aVA3E8Y9XOhVHMS+hz40Y0/XUbOyZhTJrK7AdG/P5b3xZvYS475ZZb1sqo0D7urSrxPy3uI4EO5DI53G98V7vp4V9JzbmmhaEc5MrB2djrBBmn4mvOerdUDHuXdBOo1Pg3d8vQ7oOfeBkE7jG+E9X80EOuc+FtJofC+846vJQM+5rYY0cXezHg6pJxA6JV5Uj+jcO+ZopsG84WKLoDFp2OxjdF3DfmbveKRMvUHtwhO8NIf91IrpJ13N1WjVKS2/DLv37q23femaQfNOOsnxjN4bHoZpYsb7VdaeYX/wc2of3Xx9Ln30jfZwosltXaaN84ntmneDrOuiT7fDxK2lXwd33+PiZRnjuTZ3SGuJka1b9yq3oWiVou9y4EIEkY4j7665Gncu6guXbAtg/XV4sF8knXRy8R8pGNadszd+sBxSt82SzmNrxR23Hil11G2YpPN4hsDd2jUczjl6m7bb0ixl3oWw8LGPZXlvfjHH1jh9Vnf2pyn667YINn7uicQXKjEKw0zqwkcsNRdjm6ELQ9AvkY0VpQykfAfo8vjVR5s9nK7DvVZ4dYQLuaDR9y28MglnhXsUOVMtMza+VdmDHtxRpNNV4nn+F1XY2xJyDsh0d5mH0mm20NNQZA9qsoFeOCvIUxz6AkC9ITLycP+oix89aqi+Qo+/N8yrZUdT7NPRmZ6Ve/IsdLva7CwLD4LRqtQUrb1kxODiO3eybWyY5kyS2khlmAHaUbOS4F1T6iru/rkwQayZw9NCOsulA/bZg2BUzi5+LvlPGZTbUTS0RfJ04/yauoN06pzvZbrfWDeLsVkwZh22LQ5Njl+VmqK01xkxXjzMXbaHHLb8SVI/8hnzQuAcS2ibI22WDl649P1RkuV+2LK7xKKBfCRmvwhd1wpfDAE36HmWSadeLrCfI3KH10fO06RhL5sksaOnc+hFdVz2nmMTKi55OVWv5vMrV5L92sary3pqHi0KTx/OntRxIy85LwCFOqeKrrYLT2Bx572dJ6El4AnzGEuzo0Jr/E+61r/VyYgeMMLz4coRxFbYUefTlHTaEYdlw7qiDmaYIXb9tpwxuGMsws0dOpvJp8YQsLtv4LOWm7+FxCcQZZMVeiNbESYBIPPF+Y4vgRDeJXpB3MamkWAacvRcrvPJPdsBzSk359pzdnOnM1aU+P1kB9lsvWHOdS/yp3x0vuBF7m1GeafXOK1v1JxYJ5yleyl8A+vvAwHuvpT7Zh79UtOlir2/pbwx/suYrzsnjW48Nh0hS/frOnPfbnVXOTyy5gVQN9RqSVe4G+8+HZlGhwRZ/m2mMku+P/7wy8mKEJdyCDwHWatNAAOXg9SgLvvSCwBCc19x1wKMk6Xu4krtpTI6MjVe0yQtdSm/axg4tQAs4cYT8n2zigKzkrujtjE2v964FaDcAbO75CYT7SeO1nbR9VWauFneE5EdG9x8KzuWWAf5ovbJkcTq4+4Rt4iMPAm8UnaLpTbngvjgK/p3l9IDSWjaLJKs+LKNfm7h8FLk/uef25OTXRq60vmarm5YWqHsHIqL8ydIyzVtBN9L22bvNZDHs7QzchPtTFJdFT7rE333CcHBZ+YlqzPaS9LThDtvgcJkpKpbjpeXpWGARMSjre/xZDUE7pnP08Psib4F9m2ERtMzctUqsArDCu62xRzOq7gsDPgambjZWXFd2/M5OOF0wUWYtLx52X75vW/833v/u/8EECEreHwOgVC/BeyqxjnMzS0iiwPwxakji9CWs3s2yU39El7Kf9N7HuvTRDX3Ce1UbL+Qeosxhuw41jRqCrRuoxHgfaRz2Rr88W2ZIhexButu3HembdOgrQ8cpw9RTdNjk6knFsLaZMsaauviM46nXracrKtk3/yfg8TVljpsMj+E5Owi+9AQ3t+3r+KP86myN8jpX3tZZT3AGtQmkzGoZ0nWSN9AZr5U9ka63xrTS6e43jf6AFlm1hDPLopPJsgclb1M5YPlJpAdF7NrvXNq0GLFj96dn/iHXn5HwXVD1DkGvW2na0kcozonO6TYPSLVzNQhAZFdBO4iHF0xf9TKuuBmqQwsVBa9oCZY/XsOgX9vjgtcdIcU5KQJw/81V0VraDHL/0hWCA4e/4d8tdtJMkvCGcGt+Y0sbKnlwHh1p9C0I6OQ1nRlxrcIpcYfZWvizdpSSJ2d2r0qyt7CHPnYySwAjql5huOzehFM+1/O430TmEzbxhmAWVgyK+E7l4VGYPE0XnOGLB9lm8PX+bdf+cm104Ud4PS6yRwMwgQug1fXXjpB4H3oVXYuRCgaAe5ZqduinY7w21hvW9Gz7FyMwGK4JmX4zsU+LFVhH7VwMhLde5uFg8zoOL7PECP9K6q3vK5BWkWtFYriaBze7H1L27xrDhvXU1dZeUXotyjSgm0nU211t8kpq7TICi0L53cdt+Ir87ZbhWKz4h4k+YlezonRhbaZzAEefyyLgX0bH/Ga/XAkEtA2mTcRVoM8Rr0w3DUuFlpf5CcO1D7cZE0u5y1FZnTyFRMLlUpMcxgN02mEyOI8nwtBpy5zt52VYaLly9AosWzIJmm4J8wb00NB9fBq+ntsa3A5nDFFM/GKwjqEyfn3Gs5LZs2TTckwbDBQWUSa5SPOnIWMuC/TvDJcN8H676fF/uObFWXGIoNpxNRty2TWURoCxrHQYC2IsjEptVT5JkiW1vhZRrZuisFwvPo0pP5g9tqZu+BjE+s+ZMYcRfZNfe20sci/pZHNZcs7z/yaQhp4H7R63BCxbPnStuZMGVqx5KhM5jJZiBm8DVgJ49Xutz8Mnig4ACpHY4RBoaOk/V2MOWX60S8kUIyzC7wps8k/S9//3/dPZd36wGytOk8JbZO3z4NvEVBtdYQJAXBRgLAsBnYYe9tPuyTLh/UMUpkArSsaj3hqEN2sTNa8RysvkgssNp56P2qdMzMxmtfxB20tIK5A18NcuMg0lKCpcZrAkd+pfmvV5gAmBvtGFkYxOyd5TFprjlS2Dbptj8oVNY9x4vSpHnmn5COrbtmTxWkr101msmgnjowZoa29SmhEu1hTpkyKjFfA+MW/S5XHdIiTmOK5vOGdEP22dDO27VCLJ4OIQZ9F4AHkdRS7EwUGYKmKQinkRfCq6R1V8ROjdW0rr9Efh2XZe6qivRT26bnPoOY89P9V/mQ8PRBmN8BwWKnLQgr4X7DwvEweRAIjsDRDQSFZK5ti178VsZgUoQIoKXbaF1wS52fWxv3PKZ1k3zz+xNNyRdZYHJHd9Twhei9NbtuLG9J20+ao7ccI7XOxs/psjqielzu06rXMbGidY3PFqO7ELjN67oibsoT1NJlp2V3gyspKQfUnrJaYQFfp/Q0SPvblSDbPRydvW8TyjZ1q7Cd8zpeRKllL+lC+QhqGDqDNdOycM28sxJlnxQFXtvO6EaL9sMIjxqk7HPkXEuzuTo5A/1T4ymxqxlIOj86ZdURNjjx0jiAjuJ5r4O3EOUn2x+TrdJT2cnGdEoodK4lU9mJfqduAi9ANm0CDzjo/5DwBZW/YXLrZSL8/h2oCRS5SAlQ2ZcRTTWfj0k5Yn73iJUozjLOeJqEKAJOoe/0DfTqXULn3glC85UTOQPydByG7q9KtKXkfMd5IjiQrZfoNHmkQk5ORzGsEJzT/7Jvd1ctNPeqlEr4+Ml1xn56cot2ebi7b4g8qNDX7vr0Y9oEdVWa353eKPVBDu+n17HUlX3p10idKuuHo1OzjdXqyhn5b2tlcxy/IUM38u3ajuAdXlJm+3l8Jd8Gt3RVlpq+f8xstN0Wz+e3c7em1u6LM9PX+9nTN1dBuej0Xr0Q6bePPl5kmr6VET2NH7/bu/Jkc8lqdehsO9bZr1G0kFL/iDpzyWobVn9Wo9M/TkwtyfE55jdLqNUNgVUijPTl6i+Dn0MjIEL0Ug5rOOWl0H3Q23xaNTSAr95u8dMoAH+LsvepRfDOvgZkeq6ElFC6xxr4nakJLmRFCbIPZP+r9bAlpg5c2ZXwZwAi7Tdyex1mD/tB4Auhkf1zPcXW2dtM4+KXsLWWWOhM3Lpl17/e76tFF8OIte/qKS2Y/EFnWNsTYPDPhXat2LO8YalosHJLbNvzqUt5VU1lwNKWK1rujtE52vvHjnjN8LJPiyaszM+Vxu3YW9togp01pgpEne271D3PWydM50sxnif915sTjjGnZl14GFvaLUKtG3a4DKR58clXHo97PlpE2eOkpY8sAjrDfxK15nDXoDY0ngEz2x/UcV7O1m8aDX8reQmapO3Hjlln3vr+rGl0ELdqyp624ZPeD6LK2Q8zNsxPetWrH0o6hpsXCIdk24a1u5V01lQWjgROtd0dpnXTH+43+s3jPnEEfkTXwaV7W3tymDucpcRq/nbCZrRpLD1raFPVBGRyRvyPe87bbwW+IVCb2JpNmJMnNhFfzeV0oYRxH+/cGzdp71xdy2R1D39YwpxOzCc246jYLeFAJmibnI2e+R7uKlfe2W789dlOfMlgMcITNrZzOo1+Jemh/H70JtzZNW3J8C2/iLr4N04a77f2LvYvtrcCaw53pTCn6QaO7KAWOggnt8m852iG4P3pBbhl+W3uTbgV/DdD+upO3hMFtUQ0pXSZs/HglP0tVg4vcnSw6b0xO93CiZW3NFNYdGVTnT77DWFvXTb5rDsLfO63W60e1Wxck3vbHPAH1OXIv3M9SyZC/s1WnVrwRv3tu5IcpSPTkNW7jwYpaO4R25pRz3tnoq6bavR/OK5imZfvdRZswTrY+fz8bdjhn+laEExYuNnNL1onULZuaC25Iu2V85xx/wn3yzLNfxkiLdvvJH5b52om0T0yFsv+88Z+ld/epB3pZVuozYXrRzq2vBNoWje6ilpdfp228eV0bTYs7EaTtba1A7NnnSo+7YRufolkXS57a4tYc4kUqbUVOCN/yqsaxgLUlOiHkHlKxO005SsanMQ40iEYTdGIyKfycnr2PfLSePC6+enNI+MZUW0CnoZvzXORHZ/HYps6BQyfsbom//DynyrYe6Aj3ri85Pq46h2whbjXv2Ce65WLUqmQTl9zl1/Yueu4O8OZRW/1wRtEuaWIjz9JtJ5i8V4/feAiR5PG7Q7/eIi2cA22rgAkIFoPZ0mQid8u65+o/ZP4ytOasfdYYOssrz9pP0YwMGRS/D7ytsxJaljBho2PAcXv4MxCthB8nbXUT/e6bWHO+7rBodYHrjo/YRztupXlfjLZB0g+XwYRudW+Z6NtpnOjtwqCb4AiavzVo79opBbnJSK6zDgdiXKenTd0ygwLSOcpsvczeQH/BNXGc1vS2cJ/uvXIC1HFPi5doYtXw7o9ZZRTl52wOjLr/eJZ/8yho4m0pcy6WzYG7Ep7SnpS8CT4/cwK0ffA6K3UiOKoriK7gyF5tbPvOTmTlIK4HcbaRdmyuZHpu3jHr0gekeefHM+2wltvKIFxj2jFLz9VPACfVmbkUxq+b1RVIMtUkp3Xm/0yCD5/tvph/aXPMExG+DzNYk1lB+WCZWLN1PFaG76Ly7oRZ4GwFullruCL70O797Q/VecJxeuoo7Xm73+S8rlZOftDOLv/JK6r+bZxDUTwtKiZZ88u5LMvK1H1FcOVrarAQSOJD0XgChburmfrc6nIxPMub94QBzelslgndvvyJd34rIVvjC9iqkxvcaySTNY1lVZMqY14TbzJvOoaa6eSNbJUYr/IWxlx8oWjFDX1Ei8xZyFKl+0MU4prU+FDUm0CZ2t4OLfO6xuNwW2WR2q9Kn8AP1X1RmL4hwaLQ7YmJGNuwOewIE/Rnv4tuuWPQTfEunrsp1mvA73+t22N2uXzy8rb7TSi/aBILL7MFJn14veYC2LaGLb4/rhQtVvdJR9O6rbU7nF0g9zG1HUC80CFllNNRlZu8Nwb+P5nhdc5uS59R5s402TkW6JvJmPelXZOJvK2Wox1m3dtRBhmnFxXhXCwOK5/ojx1lW25ZkChtf210rGnz8EMay3kiYyjN6zeYcM1UV4YTPq99UCAlHt1sVOcQCkO41on6TX+KxyTT5CT9HNNdlFHEG1vbgxrmpeLwK9yd1fxC1IEfJGWjYsKEqTZibwJ6y/Hec2TmomXadsHIG0fdnYZDN3Fpwu2ak76s9RFWTwHflfnWfh4+qKiNCvFPDr0CuBgkjry1rxE7iBNOLutOnRnZZ9cLId+gfZGelb0wJDB4wUCYD+70hB8xZOkcZSs/whuy0OmQ22SLt0LRyEetR3f5xd0ILma2n7g916PyEQKbLNxP9GGQCuyKr36Ppzff/4mGkfjLe89h4sb+aGUgeeOcu/kLy+vkA/UG////VAAAAAAAAAAAAAAAAAAAAA==";if(modelContents!==""){eDwServiceMgr.get().disableAdvancedServices();ioViewerOpts.URL="";eDwUIUtils.viewFile("SlideDual-20ID-60H-120W",null,ioViewerOpts,iContainerElemID,Utils.getUint8Array(modelContents))}}var c_eDrawingsUI=new eDwUI_1.eDwUI;var c_server=location.origin+location.pathname.slice(0,location.pathname.lastIndexOf("/")+1)}));define("eDrawingsWebViewerUtils",["require","exports","eDwEventMgr","eDwServiceMgr","eDwResultError","eDwAJAXError","eDwUIPluginMgr","eDwTypes","eDwEvents","eDwUIUtils","utils"],(function(require,exports,eDwEventMgr,eDwServiceMgr,eDwResultError,eDwAJAXError,eDwUIPluginMgr,eDwTypes_1,eDwEvents_1,eDwUIUtils,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.removeModelStreamCache=exports.shutdownViewer=exports.startViewer=exports.getViewerVersion=void 0;function getViewerVersion(){return"30.5.0.0019"}exports.getViewerVersion=getViewerVersion;function startViewer(iServerURL,iCanvasID,iViewerOpts,iInit,iOnError){var _this=this;l_ModelLoadEvents=function(iState){var viewerCanvasID="#"+iCanvasID;if(iState==="init"){var viewerJQ=$(viewerCanvasID);viewerJQ.on("edw:ModelLoaded",(function(iEvent,iViewer){var viewHC=iViewer.getHCView();viewHC.setPointSize(0,eDwTypes_1.HC.PointSizeUnit.ScreenPixels);viewHC.setHardEdgesEnabled(false);(function(){return __awaiter(_this,void 0,void 0,(function(){var iExcp_1;return __generator(this,(function(_a){switch(_a.label){case 0:_a.trys.push([0,2,,3]);return[4,l_processProductStructure(iViewer,iServerURL)];case 1:_a.sent();return[3,3];case 2:iExcp_1=_a.sent();l_displayError(iExcp_1,iOnError);return[3,3];case 3:return[2]}}))}))})()}));viewerJQ.on("edw:ModelLoadFailed",(function(iEvent,iViewer,iModelName,iReason){if(iOnError){iOnError({ErrorCode:"ModelLoadInViewerFailed",ErrorData:[iReason,iModelName]})}}))}else{var viewerJQ=$(viewerCanvasID);viewerJQ.off("edw:ModelLoaded");viewerJQ.off("edw:ModelLoadFailed")}};var viewerFeatOpts={};$.extend(viewerFeatOpts,c_featOps);if(iViewerOpts){$.extend(viewerFeatOpts,iViewerOpts)}else{eDwUIUtils.getRequestedQueryStringParams(location.href,viewerFeatOpts)}if(viewerFeatOpts.Debug){if(!console.debugLogCategories||console.debugLogCategories.length===0){console.debugLogCategories=[];console.debugLogCategories.push("*")}}eDwServiceMgr.create(iServerURL);(function(){return __awaiter(_this,void 0,void 0,(function(){var iExcp_2;return __generator(this,(function(_a){switch(_a.label){case 0:_a.trys.push([0,2,,3]);l_ModelLoadEvents("init");return[4,l_init(iCanvasID,viewerFeatOpts,iInit)];case 1:_a.sent();return[3,3];case 2:iExcp_2=_a.sent();l_displayError(iExcp_2,iOnError);return[3,3];case 3:return[2]}}))}))})()}exports.startViewer=startViewer;function shutdownViewer(iViewer){l_ModelLoadEvents("shutdown");iViewer.unregister()}exports.shutdownViewer=shutdownViewer;function removeModelStreamCache(iViewer,iServer){return __awaiter(this,void 0,void 0,(function(){var modelKey,serviceMgr,iExcp_3;return __generator(this,(function(_a){switch(_a.label){case 0:modelKey=iViewer.getCurrModelKey();if(!modelKey||!iViewer.ViewerFeatureOpts.DeleteModelCacheFileWhenDone){return[2]}console.debugLog("ModelLoad","Attempting to remove cached model: "+modelKey);serviceMgr=eDwServiceMgr.get();_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,serviceMgr.removeNamedCache(modelKey,iViewer.ViewerFeatureOpts.DeleteModelCacheFileWhenDone)];case 2:_a.sent();console.debugLog("ModelLoad","Removed cached model: "+modelKey);return[3,4];case 3:iExcp_3=_a.sent();console.debugLog("ModelLoad","Failed to remove cached model: "+modelKey);console.debugLog("ModelLoad",iExcp_3.message);throw iExcp_3;case 4:return[2]}}))}))}exports.removeModelStreamCache=removeModelStreamCache;function l_init(iContainerElemID,ioViewerOpts,iInit){return __awaiter(this,void 0,void 0,(function(){var serviceMgr;var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:serviceMgr=eDwServiceMgr.get();serviceMgr.disableAdvancedServices(utils.getExtension(ioViewerOpts.URL)==="scs");(function(){return __awaiter(_this,void 0,void 0,(function(){var pluginFiles,_i,pluginFiles_1,pluginFile,pluginClassName;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,serviceMgr.getPluginFiles()];case 1:pluginFiles=_a.sent();_i=0,pluginFiles_1=pluginFiles;_a.label=2;case 2:if(!(_i-1))return[3,4];return[4,exclusiveCmds[i].commit()];case 2:_a.sent();_a.label=3;case 3:--i;return[3,1];case 4:this.mActiveCmds=this.mActiveCmds.filter((function(iCmd){return!iCmd.Exclusive}));_a.label=5;case 5:return[2]}}))}))};eDwCommandMgr.prototype.detach=function(iCmd){var cmdPos=this.mActiveCmds.indexOf(iCmd);if(cmdPos===-1)return false;var removedCmds=this.mActiveCmds.splice(cmdPos,1);return removedCmds.length===1?true:false};return eDwCommandMgr}();return eDwCommandMgr}));define("eDwCompositeCmd",["require","exports","eDwSupportsHistoryCmd","eDwHistoryMgr","eDwCommandMgr","utils"],(function(require,exports,eDwSupportsHistoryCmd,eDwHistoryMgr,eDwCommandMgr,Utils){"use strict";var eDwCompositeCmd=function(_super){__extends(eDwCompositeCmd,_super);function eDwCompositeCmd(iViewer){var _this=_super.call(this,iViewer)||this;_this.mSubCmds=[];eDwHistoryMgr.get().pushStack();return _this}eDwCompositeCmd.prototype.initCmdActionImplementation=function(iHistoryActions){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.mCmdHistoryActions=iHistoryActions;if(!(this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeInit))return[3,2];return[4,this.mCmdHistoryActions.compositeInit(this)];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))};eDwCompositeCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){var actionExists,_a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!_super.prototype.undo.call(this))return[2,false];actionExists=this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeUndo;if(!actionExists)return[3,2];return[4,this.mCmdHistoryActions.compositeUndo(this)];case 1:_a=_b.sent();return[3,4];case 2:return[4,this.undoSubCmds()];case 3:_a=_b.sent();_b.label=4;case 4:return[2,_a]}}))}))};eDwCompositeCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){var actionExists,_a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!_super.prototype.redo.call(this))return[2,false];actionExists=this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeRedo;if(!actionExists)return[3,2];return[4,this.mCmdHistoryActions.compositeRedo(this)];case 1:_a=_b.sent();return[3,4];case 2:return[4,this.redoSubCmds()];case 3:_a=_b.sent();_b.label=4;case 4:return[2,_a]}}))}))};eDwCompositeCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.mSubCmds=eDwHistoryMgr.get().popStack();return[4,_super.prototype.commit.call(this)];case 1:_a.sent();if(!(this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeCommit))return[3,3];return[4,this.mCmdHistoryActions.compositeCommit(this)];case 2:_a.sent();_a.label=3;case 3:return[2]}}))}))};eDwCompositeCmd.prototype.cancel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.mSubCmds=eDwHistoryMgr.get().popStack();return[4,_super.prototype.cancel.call(this)];case 1:_a.sent();if(!(this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeCancel))return[3,3];return[4,this.mCmdHistoryActions.compositeCancel(this)];case 2:_a.sent();return[3,5];case 3:return[4,this.cancelSubCmds()];case 4:_a.sent();_a.label=5;case 5:this.clearSubCmds();return[2]}}))}))};eDwCompositeCmd.prototype.isCommitted=function(){return _super.prototype.isCommitted.call(this)&&!(this.InitialState===undefined)&&!(this.FinalState===undefined)};Object.defineProperty(eDwCompositeCmd.prototype,"AllowsAggregation",{get:function(){return true},enumerable:false,configurable:true});eDwCompositeCmd.prototype.undoSubCmds=function(){return __awaiter(this,void 0,void 0,(function(){var isSuccessful,lastCmdIndex,i,cmd,ret;return __generator(this,(function(_a){switch(_a.label){case 0:isSuccessful=true;lastCmdIndex=this.mSubCmds.length-1;i=lastCmdIndex;_a.label=1;case 1:if(!(i>-1))return[3,4];cmd=this.mSubCmds[i];return[4,cmd.undo()];case 2:ret=_a.sent();console.debugLog("History","Undo subcommand history at index "+i+(ret?" succeeded.":" failed.")+" Object Type = "+Utils.getObjectTypeName(cmd)+".");if(!ret){isSuccessful=false}_a.label=3;case 3:i--;return[3,1];case 4:return[2,isSuccessful]}}))}))};eDwCompositeCmd.prototype.cancelSubCmds=function(){return __awaiter(this,void 0,void 0,(function(){var cmdMgr,lastCmdIndex,i;return __generator(this,(function(_a){switch(_a.label){case 0:cmdMgr=eDwCommandMgr.get();lastCmdIndex=this.mSubCmds.length-1;i=lastCmdIndex;_a.label=1;case 1:if(!(i>-1))return[3,4];return[4,cmdMgr.remove(this.mSubCmds[i],"cancel")];case 2:_a.sent();_a.label=3;case 3:i--;return[3,1];case 4:delete this.InitialState;delete this.FinalState;return[2]}}))}))};eDwCompositeCmd.prototype.redoSubCmds=function(){return __awaiter(this,void 0,void 0,(function(){var isSuccessful,numCmds,i,cmd,ret;return __generator(this,(function(_a){switch(_a.label){case 0:isSuccessful=true;numCmds=this.mSubCmds.length;i=0;_a.label=1;case 1:if(!(i-1){eventHandlerMaps.splice(index,1);++numRemoved}}}return numRemoved};eDwEventMgr.prototype.removeAllEventHandlers=function(){this.mEventHandlers.clear()};eDwEventMgr.prototype.removeEventHandlers=function(iEvent){this.mEventHandlers.delete(iEvent)};eDwEventMgr.prototype.fireEvent=function(iEvent){var iArgs=[];for(var _i=1;_i-1){changedPropAttribNames.push(attribName)}}return changedPropAttribNames};eDwHierarchyNode.isHierarchyNode=function(iNode){return iNode.Name};eDwHierarchyNode.sPropagatingAttribNames=["Visible","Opaque"];return eDwHierarchyNode}();return eDwHierarchyNode}));define("eDwHistoryMgr",["require","exports","utils"],(function(require,exports,Utils){"use strict";var eDwHistoryMgr=function(){function eDwHistoryMgr(){this.clear()}eDwHistoryMgr.get=function(){if(!eDwHistoryMgr.sHistoryMgr){eDwHistoryMgr.sHistoryMgr=new eDwHistoryMgr}return eDwHistoryMgr.sHistoryMgr};eDwHistoryMgr.prototype.undo=function(){var currStacksElem=this.getCurrStackElem();var currStack=currStacksElem.Stack;var currStackCmdIndex=currStacksElem.getCurrCmdIndex();if(currStackCmdIndex<0||currStack.length===0){console.debugLog("History","Already before first command.");return null}currStacksElem.incrementCurrCmdIndex(-1);var cmd=currStack[currStackCmdIndex];cmd.undo();console.debugLog("History","Undoing command at index "+currStackCmdIndex+" Object type: "+Utils.getObjectTypeName(cmd));return cmd};eDwHistoryMgr.prototype.redo=function(){var currStacksElem=this.getCurrStackElem();var currStack=currStacksElem.Stack;var nextStackCmdIndex=currStacksElem.getCurrCmdIndex()+1;if(nextStackCmdIndex>=currStack.length){console.debugLog("History","Already after last command.");return null}currStacksElem.incrementCurrCmdIndex(1);var cmd=currStack[nextStackCmdIndex];cmd.redo();console.debugLog("History","Redoing command at index "+nextStackCmdIndex+" Object type: "+Utils.getObjectTypeName(cmd));return cmd};eDwHistoryMgr.prototype.push=function(iCmd){if(!iCmd)return;var currStacksElem=this.getCurrStackElem();var currStack=currStacksElem.Stack;var currStackSize=currStack.length;var currStackCmdIndex=currStacksElem.getCurrCmdIndex();if(currStackCmdIndex!==currStackSize-1){currStack.splice(currStackCmdIndex+1);console.debugLog("History","Truncated history to "+(currStackCmdIndex+1)+" elements.")}currStack.push(iCmd);currStacksElem.incrementCurrCmdIndex(1);console.debugLog("History","Adding command to history at index "+(currStackCmdIndex+1)+" Object Type = "+Utils.getObjectTypeName(iCmd)+".")};eDwHistoryMgr.prototype.clear=function(){console.debugLog("History","Clear all history.");this.mCmdStacksStack=[];this.pushStack()};eDwHistoryMgr.prototype.pushStack=function(){console.debugLog("History","Add a new history stack at index "+this.mCmdStacksStack.length+".");this.mCmdStacksStack.push(new eDwCmdStacksElem)};eDwHistoryMgr.prototype.popStack=function(){console.debugLog("History","Remove history stack from index "+(this.mCmdStacksStack.length-1)+" down to 0.");var activeCmds=[];var currStackElem=this.mCmdStacksStack.pop();if(currStackElem){var currCmdIndex=currStackElem.getCurrCmdIndex()+1;for(var i=0;i-1&&iKeyInfo[key]){keyModifiers+=key+"-"}}return keyModifiers?keyModifiers.substring(0,keyModifiers.length-1):"none"}}));define("eDwLayer",["require","exports","eDwNodeAttributes","utils"],(function(require,exports,eDwNodeAttributes_2,utils){"use strict";var eDwLayer=function(){function eDwLayer(iLayerName,iLayerIDHC,iAttribs){this.mName=iLayerName;this.mIDHC=iLayerIDHC;this.mInitAttribs=eDwNodeAttributes_2.eDwNodeAttributes.initAttribs(iAttribs);this.mAttribs=eDwNodeAttributes_2.eDwNodeAttributes.initAttribs(iAttribs);this.mNodeIDHCToHierNodeMap={}}eDwLayer.prototype.addNodes=function(iNodeIDsHC,iModel){for(var _i=0,iNodeIDsHC_1=iNodeIDsHC;_i.5){footVal*=signFactor;formattedString=utils.formatString("${footVal}ft ${formattedInches}",footVal.toFixed(0),formattedString)}return formattedString},area:function(iVal){var userUnits=_this.mUserUnits["Length"];var func=basicUserUnitResults[userUnits];var valueWithUnits=func.call(_this,iVal);return utils.formatString(cCommonUnitFormat,valueWithUnits,"^2")}};var unit=this.mUserUnits[iUnitType];unit=unit||iUnitType.toLowerCase();var func=basicUserUnitResults[unit];return func?func.call(this,iValue):iValue.toString()};eDwModel.prototype.setAttribOnHierNodes=function(iHierNodes,iAttribs){return __awaiter(this,void 0,void 0,(function(){var changedHierNodes,changedAncestorHierNodeMap,_i,iHierNodes_1,hierNode,changedAttribNames,propagatingAttribNames,changedChildHierNodes,parentHierNode,_a,propagatingAttribNames_1,attribName,attrib,parentAttrib,value,mergedAttrib,parentIDHC,parentIDHC,changedHierNodesAndAttribs,changedHCNodeID,ancHierNode;return __generator(this,(function(_b){switch(_b.label){case 0:changedHierNodes=[];changedAncestorHierNodeMap={};for(_i=0,iHierNodes_1=iHierNodes;_i0){var sceneData=$(data[0]);this.mOrigin=sceneData.attr("origin");switch(sceneData.attr("type")){case"drawing":this.mCategory="DRAWING";break;case"part":this.mCategory="PART";break;case"assembly":this.mCategory="ASSEMBLY";break;default:break}}this.mProperties=docJQ.find("property");var lengthUnit=this.getProperty("lengthunit");var isValidUnit=eDwUnits_1.LengthTypeValues.indexOf(lengthUnit)>-1;this.mUserUnits.Length=isValidUnit?lengthUnit:this.mUserUnits.Length;var angleUnit=this.getProperty("angleunit");isValidUnit=eDwUnits_1.AngleTypeValues.indexOf(angleUnit)>-1;this.mUserUnits.Angle=isValidUnit?angleUnit:this.mUserUnits.Angle;if(this.mCategory==="DRAWING"){this.parseModelViews(docJQ,"sheet","views","Unnamed Sheet","sheet");this.processLayers(iPropsMapHC)}else{this.parseModelViews(docJQ,"configuration","hierarchy","Unnamed Config","config");if(this.mCategory==="ASSEMBLY"){var modelViews=this.getModelViews();for(var _i=0,modelViews_3=modelViews;_i (HC values) | ";for(var _i=0,_a=this.mModelViews;_i<_a.length;_i++){var modelView=_a[_i];var nodeIDHC=modelView.Hierarchy.HOOPSID;msg+=modelView.Name+" - "+this.isVisibleForNodeHC(nodeIDHC)+" | "}console.debugLog("NodeVisibility",msg);console.debugLog("NodeVisibility","Active model view = "+this.mActiveModelView.Name);var hierNodes=this.mActiveModelView.getNodes();for(var _b=0,hierNodes_1=hierNodes;_b0&&ioHierachyNode){for(var i=0;i"){props.Name=props.Name.replace("<","<");props.Name=props.Name.replace(">",">")}props.Visible=trueFalseOrIndeterminate(iElemJQ.attr("visible"));props.Opaque=falseTrueOrIndeterminate(iElemJQ.attr("transparent"));props.Selectable=trueFalseOrIndeterminate(iElemJQ.attr("selectable"));props.HOOPSID=parseInt(iElemJQ.attr("id"),10)}return props}function l_getPropsAsAttribs(iNodeProps){var nodeAttribs={};eDwNodeAttributes_3.eDwNodeAttributes.setAttribs(nodeAttribs,iNodeProps);return nodeAttribs}function l_getDefaultCamera(iElemJQ){var perspectiveStr=iElemJQ.attr("camPerspective");if(!perspectiveStr)return undefined;var posPtHC=new eDwTypes_7.HC.Point3(parseFloat(iElemJQ.attr("camPosX")),parseFloat(iElemJQ.attr("camPosY")),parseFloat(iElemJQ.attr("camPosZ")));var tgtPtHC=new eDwTypes_7.HC.Point3(parseFloat(iElemJQ.attr("camTgtX")),parseFloat(iElemJQ.attr("camTgtY")),parseFloat(iElemJQ.attr("camTgtZ")));var upVecHC=new eDwTypes_7.HC.Point3(parseFloat(iElemJQ.attr("upX")),parseFloat(iElemJQ.attr("upY")),parseFloat(iElemJQ.attr("upZ")));var width=parseFloat(iElemJQ.attr("camFieldWidth"));var height=parseFloat(iElemJQ.attr("camFieldHeight"));var projHC=perspectiveStr==="true"?eDwTypes_7.HC.Projection.Perspective:eDwTypes_7.HC.Projection.Orthographic;return eDwTypes_7.HC.Camera.create(posPtHC,tgtPtHC,upVecHC,projHC,width,height)}function l_makeNodeAttribArray(iHierNodes,iAttrib,iIgnoreActive){if(iAttrib===void 0){iAttrib=null}if(iIgnoreActive===void 0){iIgnoreActive=true}return iHierNodes.map((function(iHierNode){var attrib={};$.extend(attrib,iHierNode.getAttribs(iIgnoreActive));if(iAttrib)$.extend(attrib,iAttrib);return{HierNode:iHierNode,Attribs:attrib}}))}function l_notifyModelViewChange(iViewer,iModelView,iIsPart){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_2.ModelViewChangeEvent,iViewer,iModelView,!iIsPart)];case 1:_a.sent();return[2]}}))}))}return eDwModel}));define("eDwModelView",["require","exports","eDwHierarchyNode"],(function(require,exports,eDwHierarchyNode){"use strict";var eDwModelView=function(){function eDwModelView(Name,Category,iAttribs,iNodeIDHC,iModel,iDefCameraHC){if(iDefCameraHC===void 0){iDefCameraHC=null}this.Name=Name;this.Category=Category;this.Nodes={};this.mDefCameraHC=iDefCameraHC;this.Hierarchy=new eDwHierarchyNode(this.Name,this.Category,iAttribs,iNodeIDHC,null,this);this.Model=iModel}eDwModelView.prototype.getNodes=function(){var hierNodes=[];for(var hierNodeName in this.Nodes){hierNodes.push(this.Nodes[hierNodeName])}return hierNodes};eDwModelView.prototype.getDefaultCamera=function(){return this.mDefCameraHC};eDwModelView.prototype.resetAttribs=function(){return this.Hierarchy.resetAttribs()};return eDwModelView}();return eDwModelView}));define("eDwMoveSectionPlaneCmd",["require","exports","eDwTypes","eDwSupportsHistoryCmd"],(function(require,exports,eDwTypes_8,eDwSupportsHistoryCmd){"use strict";var eDwMoveSectionPlaneCmd=function(_super){__extends(eDwMoveSectionPlaneCmd,_super);function eDwMoveSectionPlaneCmd(iViewer){var _this=_super.call(this,iViewer)||this;_this.mInitialPntOnPlane=_this.mViewer.XSectionMgr.projectPoint(new eDwTypes_8.HC.Point3(0,0,0));return _this}eDwMoveSectionPlaneCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){var altDir;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];altDir=this.mDir.copy().negate();this.mViewer.XSectionMgr.moveCurrentAlongNormal(altDir);return[2,true]}}))}))};eDwMoveSectionPlaneCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.XSectionMgr.moveCurrentAlongNormal(this.mDir);return[2,true]}}))}))};eDwMoveSectionPlaneCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.commit.call(this)];case 1:_a.sent();this.mFinalPntOnPlane=this.mViewer.XSectionMgr.projectPoint(new eDwTypes_8.HC.Point3(0,0,0));this.mDir=this.mFinalPntOnPlane.subtract(this.mInitialPntOnPlane);return[2]}}))}))};eDwMoveSectionPlaneCmd.prototype.isCommitted=function(){return _super.prototype.isCommitted.call(this)&&!!this.mInitialPntOnPlane&&!!this.mFinalPntOnPlane};Object.defineProperty(eDwMoveSectionPlaneCmd.prototype,"Aggregable",{get:function(){return true},enumerable:false,configurable:true});return eDwMoveSectionPlaneCmd}(eDwSupportsHistoryCmd);return eDwMoveSectionPlaneCmd}));define("eDwNodeAttributes",["require","exports","utils"],(function(require,exports,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.NodeDisplayState=exports.eDwNodeAttributes=void 0;var eDwNodeAttributes=function(){function eDwNodeAttributes(){}eDwNodeAttributes.initAttribs=function(iSourceAttribs){var targetAttribs={};targetAttribs=eDwNodeAttributes.mergeAttribs(targetAttribs,iSourceAttribs);return targetAttribs};eDwNodeAttributes.setAttribs=function(ioTargetAttribs,iSourceAttribs){var changedAttribNames=[];for(var attribKey in iSourceAttribs){if(ioTargetAttribs[attribKey]!==iSourceAttribs[attribKey]){ioTargetAttribs[attribKey]=iSourceAttribs[attribKey];changedAttribNames.push(attribKey)}}return changedAttribNames};eDwNodeAttributes.mergeAttribs=function(ioTargetAttribs,iSourceAttribs){return eDwNodeAttributes.combineAttribs(ioTargetAttribs,iSourceAttribs,(function(iTargetValue,iSourceValue){return iTargetValue||iSourceValue}))};eDwNodeAttributes.intersectAttribs=function(iSrcAttrib1,iSrcAttrib2){return eDwNodeAttributes.combineAttribs(iSrcAttrib1,iSrcAttrib2,(function(iTargetValue,iSourceValue){return iTargetValue&&iSourceValue}))};eDwNodeAttributes.combineAttribs=function(iSrcAttrib1,iSrcAttrib2,iCombineFunc){var fullAttribs={};if(iSrcAttrib1&&iSrcAttrib2){fullAttribs=l_syncAttributeKeys(iSrcAttrib1,iSrcAttrib2);for(var attribKey in fullAttribs){var value=iCombineFunc(iSrcAttrib1[attribKey],iSrcAttrib2[attribKey]);if(value!==undefined)fullAttribs[attribKey]=value;else delete fullAttribs[attribKey]}}return utils.isEqual(fullAttribs,{})?undefined:fullAttribs};return eDwNodeAttributes}();exports.eDwNodeAttributes=eDwNodeAttributes;var NodeDisplayState;(function(NodeDisplayState){NodeDisplayState["Visible"]="Visible";NodeDisplayState["Invisible"]="Invisible";NodeDisplayState["Opaque"]="Opaque";NodeDisplayState["Transparent"]="Transparent"})(NodeDisplayState=exports.NodeDisplayState||(exports.NodeDisplayState={}));function l_syncAttributeKeys(ioTargetAttribs,iSourceAttribs){var attribs=$.extend({},ioTargetAttribs);for(var attribKey in iSourceAttribs){if(!attribs[attribKey]){attribs[attribKey]=undefined}}return attribs}}));define("eDwNodeColorInfo",["require","exports","eDwTypes"],(function(require,exports,eDwTypes_9){"use strict";var eDwNodeColorInfo=function(){function eDwNodeColorInfo(iNodeID,iSecondaryID,iColor,iType){this.mNodeID=iNodeID;this.mSecondID=iSecondaryID;this.mType=iType}eDwNodeColorInfo.prototype.reset=function(iModelHC){switch(this.mType){case eDwTypes_9.EntityMode.EDGE:iModelHC.unsetNodeLineColor(this.mNodeID,this.mSecondID);break;case eDwTypes_9.EntityMode.FACE:iModelHC.unsetNodeFaceColor(this.mNodeID,this.mSecondID);break;case eDwTypes_9.EntityMode.VERTEX:default:break}};return eDwNodeColorInfo}();return eDwNodeColorInfo}));define("eDwOperationMixin",["require","exports"],(function(require,exports){"use strict";var eDwOperationMixin=function(){function eDwOperationMixin(){this.mExclusive=true}Object.defineProperty(eDwOperationMixin.prototype,"Exclusive",{get:function(){return this.mExclusive},enumerable:false,configurable:true});Object.defineProperty(eDwOperationMixin.prototype,"AllowsAggregation",{get:function(){return false},enumerable:false,configurable:true});Object.defineProperty(eDwOperationMixin.prototype,"Aggregable",{get:function(){return false},enumerable:false,configurable:true});return eDwOperationMixin}();return eDwOperationMixin}));define("eDwOperatorBaseDeps",["require","exports","eDwSelObj","eDwKeyMgr","eDwTypes","utils","eDwGeomUtils"],(function(require,exports,eDwSelObj,eDwKeyMgr_1,eDwTypes_10,utils,eDwGeomUtils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.eDwBaseOperator=exports.OperatorHC=exports.eDwOperatorMgr=void 0;var eDwOperatorMgr=function(){function eDwOperatorMgr(iViewer){this.mOpsData={};this.mOperatorMgrHC=iViewer.HCViewer.getOperatorManager();this.resetToDefault();var cameraZoomOp=this.mOperatorMgrHC.getOperator(eDwTypes_10.HC.OperatorId.Zoom);cameraZoomOp.setMouseWheelZoomInverted(false)}eDwOperatorMgr.prototype.registerCustomOperator=function(ioOp,iActivate){if(iActivate===void 0){iActivate=false}ioOp.OperatorID=this.mOperatorMgrHC.registerCustomOperator(ioOp);this.mOpsData[ioOp.OperatorID]={Op:ioOp,ActivatedByDefault:iActivate};if(iActivate)this.push(ioOp.OperatorID);return ioOp.OperatorID};eDwOperatorMgr.prototype.unregisterCustomOperator=function(iOp){this.unregisterCustomOperatorByID(iOp.OperatorID)};eDwOperatorMgr.prototype.unregisterCustomOperatorByID=function(iOpID){if(this.popToOp(iOpID)===iOpID){this.pop()}this.mOperatorMgrHC.unregisterCustomOperator(iOpID);delete this.mOpsData[iOpID]};eDwOperatorMgr.prototype.unregisterAll=function(){var _this=this;utils.forAll((function(iOpID,iOpData){_this.unregisterCustomOperatorByID(iOpID)}),this.mOpsData)};eDwOperatorMgr.prototype.push=function(iOpID){var activeOpID=this.getActiveOperatorID();if(activeOpID!==iOpID){return this.mOperatorMgrHC.push(iOpID)}return false};eDwOperatorMgr.prototype.pop=function(iOpID){var retOpID=eDwTypes_10.HC.OperatorId.None;if(!iOpID||iOpID&&this.getActiveOperatorID()===iOpID){retOpID=this.mOperatorMgrHC.pop()||eDwTypes_10.HC.OperatorId.None}return retOpID};eDwOperatorMgr.prototype.popToOp=function(iOpID){var retOpID=eDwTypes_10.HC.OperatorId.None;var opStackPos=this.mOperatorMgrHC.indexOf(iOpID);if(opStackPos>-1){while(this.getActiveOperatorID()!==iOpID){this.pop()}retOpID=iOpID}return retOpID};eDwOperatorMgr.prototype.getOperator=function(iOpID){return this.mOperatorMgrHC.getOperator(iOpID)};eDwOperatorMgr.prototype.getActiveOperatorID=function(){return this.mOperatorMgrHC.peek()};eDwOperatorMgr.prototype.getOperatorIndex=function(iOp){var opsStack=[];var numOps=this.mOperatorMgrHC.size();var index=-1;for(var i=0;i=0;i++){this.mOperatorMgrHC.push(opsStack[i])}return index};eDwOperatorMgr.prototype.setOpID=function(iOpID,iIndex){return this.mOperatorMgrHC.set(iOpID,iIndex)};eDwOperatorMgr.prototype.set=function(iOp,iIndex){return this.setOpID(iOp.OperatorID,iIndex)};eDwOperatorMgr.prototype.resetToDefault=function(){var _this=this;for(var opID=eDwTypes_10.HC.OperatorId.NavCube;opID>eDwTypes_10.HC.OperatorId.Navigate;opID--){this.pop(opID)}utils.forAll((function(iOpID,iOpData){if(iOpData.ActivatedByDefault){_this.push(iOpData.Op.OperatorID)}}),this.mOpsData)};return eDwOperatorMgr}();exports.eDwOperatorMgr=eDwOperatorMgr;var OperatorHC=function(){function OperatorHC(iOp){this.mOp=iOp;this.OperatorID=NaN}OperatorHC.prototype.onActivate=function(){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp)return[2];_a=this.mOp.onActivate;if(!_a)return[3,2];return[4,this.mOp.onActivate()];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onDeactivate=function(){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp)return[2];_a=this.mOp.onDeactivate;if(!_a)return[3,2];return[4,this.mOp.onDeactivate()];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onMouseDown=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioMouseEvent)return[2];_a=this.mOp.onMouseDown;if(!_a)return[3,2];return[4,this.mOp.onMouseDown(ioMouseEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onMouseMove=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioMouseEvent)return[2];_a=this.mOp.onMouseMove;if(!_a)return[3,2];return[4,this.mOp.onMouseMove(ioMouseEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onMouseUp=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioMouseEvent)return[2];_a=this.mOp.onMouseUp;if(!_a)return[3,2];return[4,this.mOp.onMouseUp(ioMouseEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onMousewheel=function(ioMouseEveent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioMouseEveent)return[2];_a=this.mOp.onMousewheel;if(!_a)return[3,2];return[4,this.mOp.onMousewheel(ioMouseEveent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onTouchStart=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioTouchEvent)return[2];_a=this.mOp.onTouchStart;if(!_a)return[3,2];return[4,this.mOp.onTouchStart(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onTouchMove=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioTouchEvent)return[2];_a=this.mOp.onTouchMove;if(!_a)return[3,2];return[4,this.mOp.onTouchMove(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onTouchEnd=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioTouchEvent)return[2];_a=this.mOp.onTouchEnd;if(!_a)return[3,2];return[4,this.mOp.onTouchEnd(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onKeyDown=function(ioKeyEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioKeyEvent)return[2];_a=this.mOp.onKeyDown;if(!_a)return[3,2];return[4,this.mOp.onKeyDown(ioKeyEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onKeyUp=function(ioKeyEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioKeyEvent)return[2];_a=this.mOp.onKeyUp;if(!_a)return[3,2];return[4,this.mOp.onKeyUp(ioKeyEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onViewOrientationChange=function(){return __awaiter(this,void 0,void 0,(function(){var op,_a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp)return[2];op=this.mOp;_a=op.onViewOrientationChange;if(!_a)return[3,2];return[4,op.onViewOrientationChange()];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.stopInteraction=function(){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp)return[2];_a=this.mOp.stopInteraction;if(!_a)return[3,2];return[4,this.mOp.stopInteraction()];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};return OperatorHC}();exports.OperatorHC=OperatorHC;var OperatorBaseHC=function(){function OperatorBaseHC(iViewer,iClickCB,iDoubleClickCB){this.Viewer=iViewer;this.CurrTouches=[];this.DragPt=undefined;this.CurrInputInfo=undefined;this.ActiveMouseButton="none";this.mDoPickTimeOutHandle=NaN;this.mClickCB=iClickCB;this.mDoubleClickCB=iDoubleClickCB}OperatorBaseHC.prototype.onMouseDown=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){if(!ioMouseEvent)return[2];if(eDwKeyMgr_1.eDwKeyMgr.isAnyPressed(ioMouseEvent)){this.setMouse(ioMouseEvent);this.ActiveMouseButton=eDwKeyMgr_1.eDwKeyMgr.getMouseButtonPressed(ioMouseEvent)}return[2]}))}))};OperatorBaseHC.prototype.onMouseMove=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var pos,oldInputInfo;return __generator(this,(function(_a){if(!ioMouseEvent)return[2];pos=ioMouseEvent.getPosition();if(this.CurrInputInfo){oldInputInfo=this.CurrInputInfo;this.setMouse(ioMouseEvent);if(!oldInputInfo.DragPt.equals(this.CurrInputInfo.DragPt)){this.DragPt=this.CurrInputInfo.DragPt}}console.debugLog("Operator","move screen pt = "+JSON.stringify(pos));return[2]}))}))};OperatorBaseHC.prototype.onMouseUp=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){if(!ioMouseEvent)return[2];this.onUp(ioMouseEvent);delete this.DragPt;delete this.CurrInputInfo;return[2]}))}))};OperatorBaseHC.prototype.onTouchStart=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){if(!ioTouchEvent)return[2];console.debugLog("TouchOp","Start - touch ID = "+ioTouchEvent.getId());this.addTouch(ioTouchEvent);return[2]}))}))};OperatorBaseHC.prototype.onTouchMove=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){if(!ioTouchEvent)return[2];console.debugLog("TouchOp","Move - touch ID = "+ioTouchEvent.getId());if(!this.hasTouchMoved(ioTouchEvent)){ioTouchEvent.setHandled(true);return[2]}this.updateTouch(ioTouchEvent);return[2]}))}))};OperatorBaseHC.prototype.onTouchEnd=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){if(!ioTouchEvent)return[2];console.debugLog("TouchOp","End - touch ID = "+ioTouchEvent.getId());ioTouchEvent.setHandled(false);this.removeTouchById(ioTouchEvent.getId());return[2]}))}))};OperatorBaseHC.prototype.onDeactivate=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){delete this.DragPt;return[2]}))}))};OperatorBaseHC.getAsMouseEvent=function(iTouchEvent,iMouseInputType,iButton){if(iButton===void 0){iButton=eDwTypes_10.HC.Buttons.Left}if(iTouchEvent){var pos=iTouchEvent.getPosition();var mouseEvent=new eDwTypes_10.HC.Event.MouseInputEvent(pos.x,pos.y,eDwTypes_10.HC.Button.None,iButton,eDwTypes_10.HC.KeyModifiers.None,iMouseInputType);mouseEvent.setHandled(iTouchEvent.getHandled());return mouseEvent}return null};OperatorBaseHC.prototype.isDragging=function(){return!!this.DragPt};OperatorBaseHC.prototype.addTouch=function(ioTouchEvent){if(!this.getTouchById(ioTouchEvent.getId())){var pnt3DHC=eDwGeomUtils.screenToWorld(ioTouchEvent.getPosition(),this.Viewer.getHCView());if(pnt3DHC){this.CurrTouches.push({Event:ioTouchEvent,DragPt:pnt3DHC,Pos:ioTouchEvent.getPosition()})}}};OperatorBaseHC.prototype.getTouchById=function(iTouchID){for(var i=0;iepsX&&Math.abs(delta.y)>epsY};OperatorBaseHC.prototype.updateTouch=function(ioTouchEvent){var touch=this.getTouchById(ioTouchEvent.getId());if(touch){var pos2DHC=ioTouchEvent.getPosition();var pnt3DHC=eDwGeomUtils.screenToWorld(pos2DHC,this.Viewer.getHCView());if(pnt3DHC){touch.Pos=pos2DHC;touch.DragPt=pnt3DHC}}};OperatorBaseHC.prototype.setMouse=function(ioMouseEvent){var pos2DHC=ioMouseEvent.getPosition();var pnt3DHC=eDwGeomUtils.screenToWorld(pos2DHC,this.Viewer.getHCView());if(!pnt3DHC)return;this.CurrInputInfo={Event:ioMouseEvent,DragPt:pnt3DHC,Pos:pos2DHC}};OperatorBaseHC.prototype.onClick=function(ioInputEvent){return this.mClickCB?this.mClickCB(ioInputEvent):false};OperatorBaseHC.prototype.onDoubleClick=function(ioInputEvent){return this.mDoubleClickCB?this.mDoubleClickCB(ioInputEvent):false};OperatorBaseHC.prototype.onUp=function(ioMouseEvent){var _this=this;var clearPickTimeOut=function(){if(utils.isNaN(_this.mDoPickTimeOutHandle))return;clearTimeout(_this.mDoPickTimeOutHandle);_this.mDoPickTimeOutHandle=NaN;_this.ActiveMouseButton="none"};var processClick=function(ioMouseEvent){_this.onClick(ioMouseEvent);clearPickTimeOut()};var stopFurtherProcessing=false;if(this.ActiveMouseButton==="left"){stopFurtherProcessing=true;if(utils.isNaN(this.mDoPickTimeOutHandle)){this.mDoPickTimeOutHandle=setTimeout((function(){processClick(ioMouseEvent)}),500)}else{clearPickTimeOut();stopFurtherProcessing=this.onDoubleClick(ioMouseEvent)}}else if(this.ActiveMouseButton!=="none"){processClick(ioMouseEvent);stopFurtherProcessing=true}return stopFurtherProcessing};return OperatorBaseHC}();var eDwBaseOperator=function(_super){__extends(eDwBaseOperator,_super);function eDwBaseOperator(iViewer){var _this=this;var clickCB=function(ioInputEvent){return _this.onClick(ioInputEvent)};var doubleClickCB=function(ioInputEvent){return _this.onDoubleClick(ioInputEvent)};_this=_super.call(this,new OperatorBaseHC(iViewer,clickCB,doubleClickCB))||this;return _this}eDwBaseOperator.prototype.onTouchStart=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;var _this=this;return __generator(this,(function(_b){switch(_b.label){case 0:if(!ioTouchEvent)return[2];if(!(this.CurrTouches.length>1))return[3,3];if(!this.mOp)return[2];_a=this.mOp.onTouchStart;if(!_a)return[3,2];return[4,this.mOp.onTouchStart(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[3,5];case 3:return[4,this.wrapAndCallAsMouseEvent(ioTouchEvent,eDwTypes_10.HC.MouseInputType.Down,(function(ioMouseEvent){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.onMouseDown(ioMouseEvent)];case 1:_a.sent();return[2]}}))}))}))];case 4:_b.sent();_b.label=5;case 5:return[2]}}))}))};eDwBaseOperator.prototype.onTouchMove=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;var _this=this;return __generator(this,(function(_b){switch(_b.label){case 0:if(!ioTouchEvent)return[2];if(!(this.CurrTouches.length>1))return[3,3];if(!this.mOp)return[2];_a=this.mOp.onTouchMove;if(!_a)return[3,2];return[4,this.mOp.onTouchMove(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[3,5];case 3:return[4,this.wrapAndCallAsMouseEvent(ioTouchEvent,eDwTypes_10.HC.MouseInputType.Move,(function(ioMouseEvent){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.onMouseMove(ioMouseEvent)];case 1:_a.sent();return[2]}}))}))}))];case 4:_b.sent();_b.label=5;case 5:return[2]}}))}))};eDwBaseOperator.prototype.onTouchEnd=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;var _this=this;return __generator(this,(function(_b){switch(_b.label){case 0:if(!ioTouchEvent)return[2];if(!(this.CurrTouches.length>1))return[3,3];if(!this.mOp)return[2];_a=this.mOp.onTouchEnd;if(!_a)return[3,2];return[4,this.mOp.onTouchEnd(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[3,5];case 3:return[4,this.wrapAndCallAsMouseEvent(ioTouchEvent,eDwTypes_10.HC.MouseInputType.Up,(function(ioMouseEvent){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.onMouseUp(ioMouseEvent)];case 1:_a.sent();return[2]}}))}))}),this.convertTouchToButtonHC(ioTouchEvent))];case 4:_b.sent();_b.label=5;case 5:return[2]}}))}))};Object.defineProperty(eDwBaseOperator.prototype,"Viewer",{get:function(){return this.mOp.Viewer},enumerable:false,configurable:true});Object.defineProperty(eDwBaseOperator.prototype,"CurrInputInfo",{get:function(){return this.mOp.CurrInputInfo},set:function(iInputInfo){this.mOp.CurrInputInfo=iInputInfo},enumerable:false,configurable:true});Object.defineProperty(eDwBaseOperator.prototype,"CurrTouches",{get:function(){return this.mOp.CurrTouches},enumerable:false,configurable:true});Object.defineProperty(eDwBaseOperator.prototype,"ActiveMouseButton",{get:function(){return this.mOp.ActiveMouseButton},set:function(iActiveMouseButton){this.mOp.ActiveMouseButton=iActiveMouseButton},enumerable:false,configurable:true});Object.defineProperty(eDwBaseOperator.prototype,"DragPt",{get:function(){return this.mOp.DragPt},set:function(iPnt3DHC){this.mOp.DragPt=iPnt3DHC},enumerable:false,configurable:true});eDwBaseOperator.prototype.isDragging=function(){return this.mOp.isDragging()};eDwBaseOperator.prototype.hasTouchMoved=function(ioTouchEvent){return this.mOp.hasTouchMoved(ioTouchEvent)};eDwBaseOperator.prototype.addTouch=function(ioTouchEvent){this.mOp.addTouch(ioTouchEvent)};eDwBaseOperator.prototype.getTouchById=function(iTouchID){return this.mOp.getTouchById(iTouchID)};eDwBaseOperator.prototype.removeTouchById=function(iTouchID){this.mOp.removeTouchById(iTouchID)};eDwBaseOperator.prototype.wrapAndCallAsMouseEvent=function(ioTouchEvent,iInputType,iMouseFunc,iButton){if(iButton===void 0){iButton=eDwTypes_10.HC.Buttons.Left}return __awaiter(this,void 0,void 0,(function(){var mouseEvent;return __generator(this,(function(_a){switch(_a.label){case 0:mouseEvent=OperatorBaseHC.getAsMouseEvent(ioTouchEvent,iInputType,iButton);if(!mouseEvent)return[3,2];console.debugLog("TouchAsMouse","Touch handled as mouse button "+iButton);this.ActiveMouseButton=eDwKeyMgr_1.eDwKeyMgr.getMouseButtonPressed(mouseEvent);return[4,iMouseFunc(mouseEvent)];case 1:_a.sent();ioTouchEvent.setHandled(mouseEvent.getHandled());_a.label=2;case 2:return[2]}}))}))};eDwBaseOperator.prototype.onClick=function(ioInputEvent){console.debugLog("Click","In eDwBaseOperator.onClick()");return false};eDwBaseOperator.prototype.onDoubleClick=function(ioInputEvent){console.debugLog("Click","In eDwBaseOperator.onDoubleClick()");return false};eDwBaseOperator.getPickResult=function(iEvent,iViewMgr,iPickConfig){if(iPickConfig===void 0){iPickConfig=new eDwTypes_10.HC.PickConfig(eDwTypes_10.HC.SelectionMask.All)}return __awaiter(this,void 0,void 0,(function(){var selObj;return __generator(this,(function(_a){switch(_a.label){case 0:selObj=eDwSelObj.createEmpty();if(!(iEvent&&iViewMgr))return[3,2];return[4,iViewMgr.pickFromPoint(iEvent.getPosition(),iPickConfig)];case 1:selObj=_a.sent();_a.label=2;case 2:return[2,selObj]}}))}))};eDwBaseOperator.prototype.convertTouchToButtonHC=function(ioTouchEvent){var buttonHC=eDwTypes_10.HC.Buttons.None;if(ioTouchEvent){buttonHC=eDwTypes_10.HC.Buttons.Left;if(!this.hasTouchMoved(ioTouchEvent)){var touchInfo=this.getTouchById(ioTouchEvent.getId());var startTime=touchInfo?touchInfo.Event.getDate().getTime():(new Date).getTime();if((new Date).getTime()-startTime>1e3){buttonHC=eDwTypes_10.HC.Buttons.Right}}}return buttonHC};return eDwBaseOperator}(OperatorHC);exports.eDwBaseOperator=eDwBaseOperator}));define("eDwPerspectiveCmd",["require","exports","eDwSupportsHistoryCmd"],(function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwPerspectiveCmd=function(_super){__extends(eDwPerspectiveCmd,_super);function eDwPerspectiveCmd(iViewer,iNewState){var _this=_super.call(this,iViewer)||this;_this.mInitiallyActive=iViewer.getPerspectiveMode();_this.mFinallyActive=iNewState;return _this}eDwPerspectiveCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.setPerspectiveMode(this.mInitiallyActive);return[2,true]}}))}))};eDwPerspectiveCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.setPerspectiveMode(this.mFinallyActive);return[2,true]}}))}))};eDwPerspectiveCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.commit.call(this)];case 1:_a.sent();this.mViewer.setPerspectiveMode(this.mFinallyActive);return[2]}}))}))};Object.defineProperty(eDwPerspectiveCmd.prototype,"Aggregable",{get:function(){return true},enumerable:false,configurable:true});return eDwPerspectiveCmd}(eDwSupportsHistoryCmd);return eDwPerspectiveCmd}));define("eDwResetCmd",["require","exports","eDwSupportsHistoryCmd","eDwEventMgr","eDwEvents"],(function(require,exports,eDwSupportsHistoryCmd,eDwEventMgr,eDwEvents_3){"use strict";var eDwResetCmd=function(_super){__extends(eDwResetCmd,_super);function eDwResetCmd(iViewer){var _this=_super.call(this,iViewer)||this;_this.mPerspective=iViewer.getPerspectiveMode();_this.mExplosionLevel=iViewer.getExplosionLevel();_this.mDrawMode=iViewer.getDrawMode();_this.mAmbientOcclusion=iViewer.getHCView().getAmbientOcclusionEnabled();_this.mCamera=iViewer.getHCView().getCamera();_this.resetToHome();return _this}eDwResetCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];return[4,this.resetToPrevious()];case 2:_a.sent();return[2,true]}}))}))};eDwResetCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];return[4,this.resetToHome()];case 2:_a.sent();return[2,true]}}))}))};eDwResetCmd.prototype.resetToHome=function(){return __awaiter(this,void 0,void 0,(function(){var viewMgr;return __generator(this,(function(_a){switch(_a.label){case 0:viewMgr=this.mViewer.ViewMgr;viewMgr.reset();return[4,this.mViewer.SelectionMgr.unSelectAllObjects()];case 1:_a.sent();this.mViewer.OperatorMgr.resetToDefault();this.mViewer.setPerspectiveMode(false);return[4,this.mViewer.getModel().resetToDefault()];case 2:_a.sent();this.mViewer.setExplosionLevel(0);this.mViewer.resetDrawMode();this.mViewer.ViewMgr.enableAmbientOcclusion(false);return[4,eDwEventMgr.get().fireEvent(eDwEvents_3.ResetSceneEvent,true)];case 3:_a.sent();return[2]}}))}))};eDwResetCmd.prototype.resetToPrevious=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.mViewer.setPerspectiveMode(this.mPerspective);this.mViewer.ViewMgr.setCamera(this.mCamera);this.mViewer.setExplosionLevel(this.mExplosionLevel);this.mViewer.setDrawMode(this.mDrawMode);this.mViewer.ViewMgr.enableAmbientOcclusion(this.mAmbientOcclusion);return[4,eDwEventMgr.get().fireEvent(eDwEvents_3.ResetSceneEvent,false)];case 1:_a.sent();return[2]}}))}))};return eDwResetCmd}(eDwSupportsHistoryCmd);return eDwResetCmd}));define("eDwResultError",["require","exports","eDwBaseError"],(function(require,exports,eDwBaseError){"use strict";var eDwResultError=function(_super){__extends(eDwResultError,_super);function eDwResultError(iResult){var _this=_super.call(this,"Result Error")||this;_this.Result=iResult;return _this}return eDwResultError}(eDwBaseError);return eDwResultError}));define("eDwSectionFlipCmd",["require","exports","eDwSupportsHistoryCmd"],(function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwSectionFlipCmd=function(_super){__extends(eDwSectionFlipCmd,_super);function eDwSectionFlipCmd(iViewer){return _super.call(this,iViewer)||this}eDwSectionFlipCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.XSectionMgr.flipSectionPlane();return[2,true]}}))}))};eDwSectionFlipCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.XSectionMgr.flipSectionPlane();return[2,true]}}))}))};eDwSectionFlipCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.commit.call(this)];case 1:_a.sent();this.mViewer.XSectionMgr.flipSectionPlane();return[2]}}))}))};Object.defineProperty(eDwSectionFlipCmd.prototype,"Aggregable",{get:function(){return true},enumerable:false,configurable:true});return eDwSectionFlipCmd}(eDwSupportsHistoryCmd);return eDwSectionFlipCmd}));define("eDwSectionShowCmd",["require","exports","eDwSupportsHistoryCmd"],(function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwSectionShowCmd=function(_super){__extends(eDwSectionShowCmd,_super);function eDwSectionShowCmd(iViewer,iShow){var _this=_super.call(this,iViewer)||this;_this.mInitialShow=true;_this.mFinalShow=iShow;return _this}eDwSectionShowCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.XSectionMgr.SectionVisibility=this.mInitialShow;return[2,true]}}))}))};eDwSectionShowCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.XSectionMgr.SectionVisibility=this.mFinalShow;return[2,true]}}))}))};eDwSectionShowCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.commit.call(this)];case 1:_a.sent();this.mViewer.XSectionMgr.SectionVisibility=this.mFinalShow;return[2]}}))}))};Object.defineProperty(eDwSectionShowCmd.prototype,"Aggregable",{get:function(){return true},enumerable:false,configurable:true});return eDwSectionShowCmd}(eDwSupportsHistoryCmd);return eDwSectionShowCmd}));define("eDwSelMgr",["require","exports","eDwSelObj","eDwSelectionOperator","eDwEventMgr","eDwKeyMgr","eDwTypes","eDwEvents","utils"],(function(require,exports,eDwSelObj,eDwSelectionOperator,eDwEventMgr,eDwKeyMgr_2,eDwTypes_11,eDwEvents_4,utils){"use strict";var eDwSelMgr=function(){function eDwSelMgr(iViewer){iViewer.SelectionMgr=this;this.mViewer=iViewer;this.mSelMgrHC=iViewer.HCViewer.selectionManager;this.mSelectableObjsHC=[];var selectOp=new eDwSelectionOperator(iViewer,this);var opMgr=this.mViewer.OperatorMgr;this.mSelectOperatorIDHC=opMgr.registerCustomOperator(selectOp,true);this.mSelectOverlayNotifiers={}}eDwSelMgr.prototype.setColorForViewMode=function(mode){var _this=this;var nodeSelColor;var nodeSelOutlineColor=new eDwTypes_11.HC.Color(0,255,0);var nodeElmtSelColor;var nodeElmtSelOutlineColor=new eDwTypes_11.HC.Color(255,255,0);var beautifulGreen=new eDwTypes_11.HC.Color(4,200,5);switch(mode){case eDwTypes_11.HC.DrawMode.WireframeOnShaded:nodeSelColor=beautifulGreen;nodeElmtSelColor=beautifulGreen;break;case eDwTypes_11.HC.DrawMode.Shaded:nodeSelColor=beautifulGreen;nodeElmtSelColor=beautifulGreen;break;case eDwTypes_11.HC.DrawMode.Wireframe:case eDwTypes_11.HC.DrawMode.HiddenLine:nodeSelColor=eDwTypes_11.HC.Color.white();nodeElmtSelColor=eDwTypes_11.HC.Color.white();break;default:var msg="Unknown draw mode: "+mode;console.debugLog("Selection",msg);throw new Error(msg)}this.mSelMgrHC.setNodeSelectionColor(nodeSelColor);this.mSelMgrHC.setNodeSelectionOutlineColor(nodeSelOutlineColor);this.mSelMgrHC.setNodeElementSelectionColor(nodeElmtSelColor);this.mSelMgrHC.setNodeElementSelectionOutlineColor(nodeElmtSelOutlineColor);if(this.mViewer.getModel().isDrawing()&&!this.mViewer.ViewerFeatureOpts.Debug){this.mSelMgrHC.setNodeSelectionHighlightMode(eDwTypes_11.HC.SelectionHighlightMode.OutlineOnly);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.mSelMgrHC.setHighlightNodeSelection(false)];case 1:_a.sent();return[2]}}))}))})()}};eDwSelMgr.prototype.unregister=function(){this.mViewer.OperatorMgr.unregisterCustomOperatorByID(this.mSelectOperatorIDHC);this.mViewer.SelectionMgr=null};eDwSelMgr.prototype.addSelectOverlayNotifier=function(iTypeIndex,iNotifier){if(!this.mSelectOverlayNotifiers[iTypeIndex]){this.mSelectOverlayNotifiers[iTypeIndex]=[]}this.mSelectOverlayNotifiers[iTypeIndex].push(iNotifier)};eDwSelMgr.prototype.removeSelectOverlayNotifier=function(iTypeIndex,iNotifier){var typeNotifiers=this.mSelectOverlayNotifiers[iTypeIndex];var pos=typeNotifiers.indexOf(iNotifier);if(pos>-1){typeNotifiers.splice(pos,1)}return false};eDwSelMgr.prototype.getSelectedNodeIDIndex=function(iHCNodeID){return this.getSelectableIDsHC().indexOf(iHCNodeID)};eDwSelMgr.prototype.onSelection=function(iSelectionEvent){return __awaiter(this,void 0,void 0,(function(){var keyMgr,ctrlKeyDown,shiftKeyDown,hierNodeSelObj,selObjIDHC,existingIdx,selectedAlready,selObjExists,numOfSelObjsAtStart;return __generator(this,(function(_a){switch(_a.label){case 0:keyMgr=eDwKeyMgr_2.eDwKeyMgr.get();ctrlKeyDown=keyMgr.isDown("Control");shiftKeyDown=keyMgr.isDown("Shift");hierNodeSelObj=this.createHierNodeSelObj(eDwSelObj.extendHCSelObj(iSelectionEvent.getSelection()));selObjIDHC=hierNodeSelObj.getIDHC();existingIdx=this.getSelectedNodeIDIndex(selObjIDHC);selectedAlready=existingIdx>-1;l_debugDumpSelection(hierNodeSelObj.getIDHC(),hierNodeSelObj.getSelectionType());selObjExists=utils.isNumber(selObjIDHC);numOfSelObjsAtStart=this.mSelectableObjsHC.length;if(!(numOfSelObjsAtStart&&!ctrlKeyDown&&!shiftKeyDown))return[3,2];return[4,this.unSelectAllObjects(false)];case 1:_a.sent();selectedAlready=false;return[3,5];case 2:if(!(ctrlKeyDown&&!shiftKeyDown&&selectedAlready&&selObjExists))return[3,4];this.mSelectableObjsHC.splice(existingIdx,1);return[4,this.unSelectObjs([hierNodeSelObj],this.mViewer.getModel().isDrawing())];case 3:_a.sent();return[2];case 4:if(!ctrlKeyDown&&shiftKeyDown&&selectedAlready&&selObjExists){return[2]}_a.label=5;case 5:if(!selObjExists)return[3,7];if(!selectedAlready)this.mSelectableObjsHC.push(hierNodeSelObj);return[4,eDwEventMgr.get().fireEvent(eDwEvents_4.SelectEvent,this.mViewer,[hierNodeSelObj])];case 6:_a.sent();return[3,9];case 7:if(!!numOfSelObjsAtStart)return[3,9];return[4,eDwEventMgr.get().fireEvent(eDwEvents_4.LeftClickEvent,this.mViewer)];case 8:_a.sent();_a.label=9;case 9:return[2]}}))}))};eDwSelMgr.prototype.selectByID=function(iID){return utils.isNumber(iID)?this.executeSelection(iID):false};eDwSelMgr.prototype.select=function(iCoords,iPickConfig){return __awaiter(this,void 0,void 0,(function(){var pickCfg,selObj,hierNodeSelObj;return __generator(this,(function(_a){switch(_a.label){case 0:pickCfg=iPickConfig?iPickConfig:new eDwTypes_11.HC.PickConfig(eDwTypes_11.HC.SelectionMask.Face);return[4,this.mViewer.ViewMgr.pickFromPoint(iCoords,pickCfg)];case 1:selObj=_a.sent();if(this.isSelectionHandled(selObj)){return[2,false]}hierNodeSelObj=this.createHierNodeSelObj(selObj);if(utils.isNumber(hierNodeSelObj.getIDHC())){return[2,this.executeSelection(hierNodeSelObj)]}this.mSelMgrHC.set(null);return[2,false]}}))}))};eDwSelMgr.prototype.isSelected=function(iHCNodeID){return this.getSelectableIDsHC().indexOf(iHCNodeID)<0?false:true};eDwSelMgr.prototype.append=function(iSelObj){this.mSelMgrHC.add(iSelObj)};eDwSelMgr.prototype.unSelectAllObjects=function(iClearHCSelList){if(iClearHCSelList===void 0){iClearHCSelList=true}return __awaiter(this,void 0,void 0,(function(){var unselectedHCObjs;return __generator(this,(function(_a){switch(_a.label){case 0:unselectedHCObjs=this.mSelectableObjsHC;this.mSelectableObjsHC=[];return[4,this.unSelectObjs(unselectedHCObjs,this.mViewer.getModel().isDrawing())];case 1:_a.sent();if(unselectedHCObjs.length>0&&iClearHCSelList){this.mSelMgrHC.selectNode(null)}return[2]}}))}))};eDwSelMgr.prototype.setViewToSelectedFace=function(){var camera=null;var selObjs=this.mSelMgrHC.getResults();for(var _i=0,selObjs_1=selObjs;_i0){return selIDsHC[selIDsHC.length-1]}return NaN};eDwSelMgr.prototype.getLastSelHierarchyNode=function(){var modelView=this.mViewer.getModel().getActiveModelView();return modelView.Nodes[this.getLastSelIDHC()]};eDwSelMgr.prototype.getSelectableIDsHC=function(){var selIDsHC=[];for(var _i=0,_a=this.mSelectableObjsHC;_i<_a.length;_i++){var selObjHC=_a[_i];var selIDHC=selObjHC.getNodeId();if(utils.isNumber(selIDHC))selIDsHC.push(selIDHC)}return selIDsHC};eDwSelMgr.prototype.getSelHierarchyNodes=function(){var selHierNodes=[];var modelView=this.mViewer.getModel().getActiveModelView();var seoIDsHC=this.getSelectableIDsHC();for(var _i=0,seoIDsHC_1=seoIDsHC;_i-1){iSelMgr.mSelectableObjsHC.splice(index,1)}var unselObjsHC_1=iSelMgr.mSelectableObjsHC;iSelMgr.mSelectableObjsHC=[];(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,iSelMgr.unSelectObjs(unselObjsHC_1,true)];case 1:_a.sent();return[4,hierNode.showBoundingBox(viewer,"on")];case 2:_a.sent();return[2]}}))}))})();shown=true}else{(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,hierNode.showBoundingBox(viewer,"toggle")];case 1:_a.sent();return[2]}}))}))})();shown=index>-1?false:true}if(shown){var selObjDupHC_1=eDwTypes_11.HC.Selection.SelectionItem.create(hierNode.HOOPSID);iSelMgr.addUniqueToSelectableObjsHC(selObjDupHC_1);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_4.SelectEvent,viewer,[selObjDupHC_1])];case 1:_a.sent();l_debugDumpSelection(selObjDupHC_1.getNodeId(),selObjDupHC_1.getSelectionType());return[2]}}))}))})()}}else{var selMgrHC=iSelMgr.mSelMgrHC;if(!selObjHC){selMgrHC.selectNode(nodeIDHC,iSelModeHC);var selObj=eDwSelObj.extendHCSelObj(selMgrHC.getLast());if(selObj.getIDHC()===nodeIDHC){iSelMgr.addUniqueToSelectableObjsHC(selObj)}}else{if(iSelModeHC===eDwTypes_11.HC.SelectionMode.Add){selMgrHC.add(selObjHC)}else if(iSelModeHC===eDwTypes_11.HC.SelectionMode.Set){selMgrHC.set(selObjHC)}else{var wasSelected=selMgrHC.isSelected(selObjHC);selMgrHC.toggle(selObjHC);if(wasSelected){var index=iSelMgr.mSelectableObjsHC.indexOf(selObjHC);if(index>-1){iSelMgr.mSelectableObjsHC.splice(index,1)}}}if(selMgrHC.isSelected(selObjHC)){iSelMgr.addUniqueToSelectableObjsHC(selObjHC)}}}return eDwTypes_11.HC.SelectionType.Part}return eDwTypes_11.HC.SelectionType.None}var ret=false;try{var selType=eDwTypes_11.HC.SelectionType.None;var keyMgr=eDwKeyMgr_2.eDwKeyMgr.get();if(!keyMgr.isDown("Control")&&!keyMgr.isDown("Shift")){selType=selectNodeHC(this,eDwTypes_11.HC.SelectionMode.Set);ret=true}else{var existingIdx=this.getSelectedNodeIDIndex(nodeIDHC);if(existingIdx>-1){if(keyMgr.isDown("Control")){this.mSelMgrHC.remove(this.mSelectableObjsHC[existingIdx]);this.mSelectableObjsHC.splice(existingIdx,1)}else if(keyMgr.isDown("Shift")){ret=true}}else{selType=selectNodeHC(this,eDwTypes_11.HC.SelectionMode.Add);if(this.getSelectedNodeIDIndex(nodeIDHC)>-1){ret=true}}}if(selType!==eDwTypes_11.HC.SelectionType.None){l_debugDumpSelection(nodeIDHC,selType)}}catch(iErr){console.log("eDwSelMgr.selectByID failed")}return ret};return eDwSelMgr}();function l_debugDumpSelection(iID,iSelType){console.debugLog("Selection","Selected Obj ID: "+iID+" - type: "+eDwTypes_11.HC.SelectionType[iSelType])}return eDwSelMgr}));define("eDwSelObj",["require","exports","eDwTypes","eDwGeomUtils","utils"],(function(require,exports,eDwTypes_12,eDwGeomUtils_1,utils){"use strict";var eDwSelObj=function(){function eDwSelObj(iSelObjHC,iToLocalTransformHC){if(iToLocalTransformHC===void 0){iToLocalTransformHC=null}utils.populateMixinObjectFromClasses(this,[eDwTypes_12.HC.Selection.SelectionItem]);$.extend(true,this,iSelObjHC);this.setPointInLocalSpace(iSelObjHC.getPosition(),iToLocalTransformHC)}eDwSelObj.prototype.getIDHC=function(){var nodeIDHC=this.getNodeId();return utils.isNumber(nodeIDHC)?nodeIDHC:NaN};eDwSelObj.prototype.getLocalPoint=function(){return this.mLocalPnt};eDwSelObj.prototype.getWorldPoint=function(){return this.getPosition()};eDwSelObj.prototype.getAsLocalPoint=function(iWorldPtHC){return this.mToLocalTransformHC&&iWorldPtHC?this.mToLocalTransformHC.transform(iWorldPtHC):iWorldPtHC};eDwSelObj.prototype.getAsWorldPoint=function(iLocalPtHC){var toWorldTransformHC=this.mToLocalTransformHC?eDwTypes_12.HC.Matrix.inverse(this.mToLocalTransformHC):null;return toWorldTransformHC&&iLocalPtHC?toWorldTransformHC.transform(iLocalPtHC):iLocalPtHC};eDwSelObj.prototype.getLocalVector=function(){var _this=this;return this.getVectorInfo((function(iPntWCHC){return _this.getAsLocalPoint(iPntWCHC)})).Vec};eDwSelObj.prototype.getWorldVector=function(){return this.getVectorInfo().Vec};eDwSelObj.prototype.getAsLocalVector=function(iWorldVecHC){var normalMatrix=this.mToLocalTransformHC?this.mToLocalTransformHC.normalMatrix():null;return iWorldVecHC&&normalMatrix?normalMatrix.transform(iWorldVecHC):null};eDwSelObj.prototype.getAsWorldVector=function(iLocalVecHC){var toWorldTransformHC=this.mToLocalTransformHC?eDwTypes_12.HC.Matrix.inverse(this.mToLocalTransformHC):null;var normalMatrix=toWorldTransformHC?toWorldTransformHC.normalMatrix():null;return iLocalVecHC&&normalMatrix?normalMatrix.transform(iLocalVecHC):null};eDwSelObj.prototype.getToLocalTransform=function(){return this.mToLocalTransformHC};eDwSelObj.prototype.findAngle=function(iSelObj){var _this=this;var selObj1Type=eDwSelObj.getSubEntityInfo(this).SubEntityTypeName;var selObj2Type=eDwSelObj.getSubEntityInfo(iSelObj).SubEntityTypeName;if(!selObj1Type||!selObj2Type||selObj2Type==="Point"||selObj1Type==="Point"){return NaN}var toLocalFunc;if(this.getToLocalTransform().equals(iSelObj.getToLocalTransform())){toLocalFunc=function(iPntWCHC){return _this.getAsLocalPoint(iPntWCHC)}}var selObjVecInfo1=this.getVectorInfo(toLocalFunc);var selObjVecInfo2=iSelObj.getVectorInfo(toLocalFunc);if(selObj1Type!==selObj2Type){var curveVecInfo=selObjVecInfo1;var faceVecInfo=selObjVecInfo2;if(selObj1Type==="Face"){curveVecInfo=selObjVecInfo2;faceVecInfo=selObjVecInfo1}var surfPlane=eDwTypes_12.HC.Plane.createFromPointAndNormal(faceVecInfo.Pts[0],faceVecInfo.Vec);faceVecInfo.Pts[0]=eDwGeomUtils_1.dropPointOnPlane(curveVecInfo.Pts[0],surfPlane);faceVecInfo.Pts[1]=eDwGeomUtils_1.dropPointOnPlane(curveVecInfo.Pts[1],surfPlane);faceVecInfo.Vec=eDwTypes_12.HC.Point3.subtract(faceVecInfo.Pts[0],faceVecInfo.Pts[1])}if(!selObjVecInfo1.Vec||!selObjVecInfo1.Pts||!selObjVecInfo2.Vec||!selObjVecInfo2.Pts)return NaN;var normal3DHC=eDwTypes_12.HC.Point3.cross(selObjVecInfo1.Vec,selObjVecInfo2.Vec);if(!eDwGeomUtils_1.isValidHCPoint(normal3DHC)||normal3DHC.length()newVec23DHC.length())vec13DHC=newVec13DHC;var newVec33DHC=eDwTypes_12.HC.Point3.subtract(pts3DHC[2],intPt3DHC);var newVec43DHC=eDwTypes_12.HC.Point3.subtract(pts3DHC[3],intPt3DHC);var vec23DHC=newVec43DHC;if(newVec33DHC.length()>newVec43DHC.length())vec23DHC=newVec33DHC;vec13DHC.normalize();vec23DHC.normalize();return Math.acos(eDwTypes_12.HC.Point3.dot(vec13DHC,vec23DHC))*180/Math.PI};eDwSelObj.extendHCSelObj=function(ioSelObj,iToLocalTransformHC){if(iToLocalTransformHC===void 0){iToLocalTransformHC=null}utils.populateMixinObjectFromClasses(ioSelObj,[eDwSelObj]);if(utils.isInstanceOf(ioSelObj,eDwSelObj)){var pos2DHC=ioSelObj.getPosition();if(pos2DHC){ioSelObj.setPointInLocalSpace(pos2DHC,iToLocalTransformHC)}return ioSelObj}throw new TypeError("eDwSelObj is undefined")};eDwSelObj.createEmpty=function(){return new eDwSelObj(eDwTypes_12.HC.Selection.SelectionItem.create())};eDwSelObj.getLocalTransform=function(ioSelObjHC,iModel){var toLocalTransformHC=new eDwTypes_12.HC.Matrix;var subEntityInfo=eDwSelObj.getSubEntityInfo(ioSelObjHC);if(subEntityInfo.SubEntity){var selObj=eDwSelObj.extendHCSelObj(ioSelObjHC);var selObjIDHC=selObj.getIDHC();var selHierNode=iModel.getHierarchyNode(selObjIDHC);if(selHierNode&&selHierNode.Category==="view"){var modelHC=iModel.getHCModel();var parentNodeHC=modelHC.getNodeParent(selHierNode.HOOPSID);var parentNetMatrixHC=modelHC.getNodeNetMatrix(parentNodeHC);var selNetMatrixHC=modelHC.getNodeNetMatrix(selObjIDHC);var invParentNetMatrix=parentNetMatrixHC.inverseAndDeterminant()[0]||new eDwTypes_12.HC.Matrix;var matrixHC=eDwTypes_12.HC.Matrix.multiply(selNetMatrixHC,invParentNetMatrix);toLocalTransformHC=eDwTypes_12.HC.Matrix.inverse(matrixHC)||new eDwTypes_12.HC.Matrix}}return toLocalTransformHC};eDwSelObj.getMinDistInfo=function(iSelPropsHC,iSelObjs,iModel){return __awaiter(this,void 0,void 0,(function(){function getMinDistPtToFace(iPointHC,iSelObj,iFaceSelObj,iModelHC){return __awaiter(this,void 0,void 0,(function(){var lineRay;return __generator(this,(function(_a){switch(_a.label){case 0:lineRay=new eDwTypes_12.HC.Ray(iPointHC,new eDwTypes_12.HC.Point3(0,0,0));return[4,getMinDistLineToFace(lineRay,iSelObj,iFaceSelObj,iModelHC)];case 1:return[2,_a.sent()]}}))}))}function getMinDistLineToFace(iRayHC,iSelObj,iFaceSelObj,iModelHC){return __awaiter(this,void 0,void 0,(function(){var distItem;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,iModelHC.computeMinimumFaceLineDistance(iFaceSelObj.getNodeId(),iFaceSelObj.getFaceEntity().getCadFaceIndex(),iRayHC)];case 1:distItem=_a.sent();return[2,adjustDistance(iSelObj,iFaceSelObj,distItem)]}}))}))}function adjustDistance(iSelObj,iFaceSelObj,ioDistItem){var toLocalTransformHC=iSelObj.getToLocalTransform();var toLocalTransformForFaceHC=iFaceSelObj.getToLocalTransform();if(toLocalTransformHC&&toLocalTransformForFaceHC&&toLocalTransformHC.equals(toLocalTransformForFaceHC)){ioDistItem.distance*=toLocalTransformHC.upperLeft3x3Determinant()}return ioDistItem}var selEntInfoHC0,selEntInfoHC1,modelHC,vertSelObj,faceSelObj,faceProp,pos2DHC,faceSelObj0,faceSelObj1,faceProp0,faceProp1,distItem,edgeSelObj,edgeProp,faceSelObj,faceProp,pntsWCHC,lineHC;return __generator(this,(function(_a){switch(_a.label){case 0:if(2!==iSelObjs.length)return[2,null];selEntInfoHC0=eDwSelObj.getSubEntityInfo(iSelObjs[0]);selEntInfoHC1=eDwSelObj.getSubEntityInfo(iSelObjs[1]);modelHC=iModel.getHCModel();if(!(selEntInfoHC0.SubEntityTypeName==="Point"&&selEntInfoHC1.SubEntityTypeName==="Face"||selEntInfoHC1.SubEntityTypeName==="Point"&&selEntInfoHC0.SubEntityTypeName==="Face"))return[3,3];vertSelObj=iSelObjs[0];faceSelObj=iSelObjs[1];faceProp=iSelPropsHC[1];if(selEntInfoHC1.SubEntityTypeName==="Point"&&selEntInfoHC0.SubEntityTypeName==="Face"){vertSelObj=iSelObjs[1];faceSelObj=iSelObjs[0];faceProp=iSelPropsHC[0]}pos2DHC=vertSelObj.getPosition();if(!pos2DHC){throw new TypeError("vertSelObj position is undefined")}if(!(faceProp instanceof eDwTypes_12.HC.SubentityProperties.PlaneElement))return[3,2];return[4,getMinDistPtToFace(vertSelObj.getPosition(),vertSelObj,faceSelObj,modelHC)];case 1:return[2,_a.sent()];case 2:return[3,10];case 3:if(!(selEntInfoHC0.SubEntityTypeName==="Face"&&selEntInfoHC1.SubEntityTypeName==="Face"))return[3,6];faceSelObj0=iSelObjs[0],faceSelObj1=iSelObjs[1];faceProp0=iSelPropsHC[0],faceProp1=iSelPropsHC[1];if(!(faceProp0 instanceof eDwTypes_12.HC.SubentityProperties.PlaneElement&&faceProp1 instanceof eDwTypes_12.HC.SubentityProperties.PlaneElement))return[3,5];return[4,modelHC.computeMinimumFaceFaceDistance(faceSelObj0.getNodeId(),faceSelObj0.getFaceEntity().getCadFaceIndex(),faceSelObj1.getNodeId(),faceSelObj1.getFaceEntity().getCadFaceIndex())];case 4:distItem=_a.sent();return[2,adjustDistance(faceSelObj0,faceSelObj1,distItem)];case 5:return[3,10];case 6:if(!(selEntInfoHC0.SubEntityTypeName==="Line"&&selEntInfoHC1.SubEntityTypeName==="Face"||selEntInfoHC1.SubEntityTypeName==="Line"&&selEntInfoHC0.SubEntityTypeName==="Face"))return[3,10];edgeSelObj=iSelObjs[0];edgeProp=iSelPropsHC[0];faceSelObj=iSelObjs[1];faceProp=iSelPropsHC[1];if(selEntInfoHC1.SubEntityTypeName==="Line"&&selEntInfoHC0.SubEntityTypeName==="Face"){faceSelObj=iSelObjs[0];faceProp=iSelPropsHC[0];edgeSelObj=iSelObjs[1];edgeProp=iSelPropsHC[1]}if(!(edgeProp instanceof eDwTypes_12.HC.SubentityProperties.CircleElement&&faceProp instanceof eDwTypes_12.HC.SubentityProperties.PlaneElement))return[3,8];return[4,getMinDistPtToFace(edgeProp.origin,edgeSelObj,faceSelObj,modelHC)];case 7:return[2,_a.sent()];case 8:if(!(edgeProp instanceof eDwTypes_12.HC.SubentityProperties.LineElement&&faceProp instanceof eDwTypes_12.HC.SubentityProperties.PlaneElement))return[3,10];pntsWCHC=edgeSelObj.getLineEntity().getPoints();if(!(pntsWCHC.length===2))return[3,10];lineHC=new eDwTypes_12.HC.Ray(pntsWCHC[0],pntsWCHC[1]);return[4,getMinDistLineToFace(lineHC,edgeSelObj,faceSelObj,modelHC)];case 9:return[2,_a.sent()];case 10:return[2,null]}}))}))};eDwSelObj.getSelObjProperty=function(iSelObjHC,iModel){return __awaiter(this,void 0,void 0,(function(){var subEntityProperty,subEntityInfo,subEntityTypeName,selObj,subEntityID,modelHC,_a;return __generator(this,(function(_b){switch(_b.label){case 0:subEntityProperty=null;subEntityInfo=eDwSelObj.getSubEntityInfo(iSelObjHC);subEntityTypeName="Unknown";if(!subEntityInfo.SubEntity)return[3,6];selObj=eDwSelObj.extendHCSelObj(iSelObjHC);subEntityTypeName=subEntityInfo.SubEntityTypeName;subEntityID=eDwSelObj.getSubEntityID(subEntityInfo.SubEntity);modelHC=iModel.getHCModel();_a=subEntityTypeName;switch(_a){case"Line":return[3,1];case"Face":return[3,3];case"Point":return[3,5]}return[3,5];case 1:return[4,modelHC.getEdgeProperty(selObj.getIDHC(),subEntityID)];case 2:subEntityProperty=_b.sent();return[3,6];case 3:return[4,modelHC.getFaceProperty(selObj.getIDHC(),subEntityID)];case 4:subEntityProperty=_b.sent();return[3,6];case 5:return[3,6];case 6:return[2,{Property:subEntityProperty,Name:subEntityTypeName}]}}))}))};eDwSelObj.setSelObjSubEntityColor=function(iSelObjsHC,iModel,iColor){return eDwSelObj.setSelObjSubEntity(iSelObjsHC,iModel,iColor)};eDwSelObj.setSelObjSubEntityHighlight=function(iSelObjsHC,iModel,iHighlight){return eDwSelObj.setSelObjSubEntity(iSelObjsHC,iModel,iHighlight)};eDwSelObj.getSubEntityInfo=function(iSelObjHC){function checkIfSelectable(iSubEntity,iSelTypeMask){return eDwSelObj.getSubEntityBits(iSubEntity)&iSelTypeMask?true:false}var subEntity=null;var typeName="";var isSelectable=false;if(iSelObjHC){if(subEntity=iSelObjHC.getPointEntity()){typeName="Point";isSelectable=true}else if(subEntity=iSelObjHC.getLineEntity()){typeName="Line";var cEdgeSelMeasureHC=4;isSelectable=checkIfSelectable(subEntity,cEdgeSelMeasureHC)}else if(subEntity=iSelObjHC.getFaceEntity()){typeName="Face";var cFaceSelMeasureHC=1;isSelectable=checkIfSelectable(subEntity,cFaceSelMeasureHC)}}return{SubEntity:subEntity,SubEntityTypeName:typeName,IsSelectable:isSelectable}};eDwSelObj.getSubEntityTypeName=function(iSubEntityType){if(!iSubEntityType)return"";return utils.getObjectTypeName(iSubEntityType).slice(0,-6)};eDwSelObj.getSubEntityID=function(iSubEntity){return iSubEntity?iSubEntity._elementIndex:NaN};eDwSelObj.getSubEntityBits=function(iSubEntity){return iSubEntity?iSubEntity._elementBits:NaN};eDwSelObj.prototype.setPointInLocalSpace=function(iWorldPtHC,iToLocalTransformHC){if(iToLocalTransformHC){this.mLocalPnt=iWorldPtHC?iToLocalTransformHC.transform(iWorldPtHC):null;this.mToLocalTransformHC=iToLocalTransformHC}};eDwSelObj.setSelObjSubEntity=function(iSelObjsHC,iModel,iSetting){if(!iSelObjsHC||!iSelObjsHC.length)return[];var modelHC=iModel.getHCModel();var subEntityIDs=[];for(var _i=0,iSelObjsHC_2=iSelObjsHC;_i1){startCrvPt3DHC=iTransformPointFunc(crvPtsWC3DHC[0]);endCrvPt3DHC=iTransformPointFunc(crvPtsWC3DHC[numPts-1]);vec3DHC=eDwTypes_12.HC.Point3.subtract(endCrvPt3DHC,startCrvPt3DHC);if(vec3DHC.length()-1;--i){currentNode=childHierarchyMap[children[i]];viewIDsHC.push(currentNode.HOOPSID)}pickConfig=new eDwTypes_13.HC.PickConfig(eDwTypes_13.HC.SelectionMask.All);return[4,this.Viewer.ViewMgr.pickFromPoint(iCoords,pickConfig)];case 1:selObj=_a.sent();selObjIDHC=selObj.getIDHC();if(!utils.isNaN(selObjIDHC))return[3,3];return[4,this.Viewer.SelectionMgr.select(iCoords)];case 2:selSuccess=_a.sent();_a.label=3;case 3:hierNode=model.getHierarchyNode(selObjIDHC);if(!hierNode)return[3,6];if(!(viewIDsHC.indexOf(hierNode.HOOPSID)>-1))return[3,5];return[4,this.Viewer.SelectionMgr.selectByID(hierNode.HOOPSID)];case 4:selSuccess=_a.sent();_a.label=5;case 5:return[3,10];case 6:_i=0,viewIDsHC_1=viewIDsHC;_a.label=7;case 7:if(!(_i0){pluginName=matches[1]}else{console.warn("Could not locate external plugin name in file "+iPluginFile)}return[3,5];case 4:iExcp_11=_a.sent();console.warn("Failed to load external plugin - "+iExcp_11.message);return[3,5];case 5:return[2,pluginName]}}))}))};eDwServiceMgr.prototype.getPluginFiles=function(){return __awaiter(this,void 0,void 0,(function(){var _a,_b,iExcp_12;return __generator(this,(function(_c){switch(_c.label){case 0:if(!eDwServiceMgr.usesWebServices())return[2,this.mPluginFiles];if(!!this.mPluginFiles.length)return[3,7];_c.label=1;case 1:_c.trys.push([1,6,,7]);if(!this.mAdvancedServicesDisabled)return[3,3];console.debugLog("ServiceMgr","Loading static plugin list");_a=this;return[4,this.ajax("GET","js/staticPluginList.json",{})];case 2:_a.mPluginFiles=_c.sent();return[3,5];case 3:console.debugLog("ServiceMgr","Finding plugins...");_b=this;return[4,this.ajax("GET","EDrawingsService.svc/GetPlugins",{})];case 4:_b.mPluginFiles=_c.sent();_c.label=5;case 5:return[3,7];case 6:iExcp_12=_c.sent();console.warn("No plugins available.");return[3,7];case 7:return[2,this.mPluginFiles]}}))}))};eDwServiceMgr.prototype.extendLicense=function(iKey){return __awaiter(this,void 0,void 0,(function(){var params;return __generator(this,(function(_a){switch(_a.label){case 0:if(this.mAdvancedServicesDisabled||!eDwServiceMgr.usesWebServices()){return[2]}params={data:{iKey:iKey},cache:false};return[4,this.ajax("GET","EDrawingsService.svc/ExtendLicense",params)];case 1:_a.sent();return[2]}}))}))};eDwServiceMgr.prototype.getBaseCacheDirs=function(){return __awaiter(this,void 0,void 0,(function(){var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:if(!!this.mBaseCacheDirs.length)return[3,2];this.mBaseCacheDirs=[];this.mGetBaseCacheDirsPromise=$.get("cacheDirs.xml",(function(iDoc){var cacheDirs=iDoc.getElementsByTagName("modelSearchDirectory");var numDirs=cacheDirs.length;for(var i=0;i-1){foundPluginFileName=pluginFileName}}return[2,foundPluginFileName]}}))}))};eDwServiceMgr.prototype.ajax=function(iMethod,iService,iParams){return __awaiter(this,void 0,void 0,(function(){var paramsObj,retAJAX,iExcp_13;return __generator(this,(function(_a){switch(_a.label){case 0:paramsObj={type:iMethod,url:this.mServerURL+"/"+iService,async:true};if(iParams)$.extend(paramsObj,iParams);_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,$.ajax(paramsObj)];case 2:retAJAX=_a.sent();return[3,4];case 3:iExcp_13=_a.sent();console.warn("AJAX "+iMethod+" failed for "+iService+": "+iExcp_13.message);throw iExcp_13;case 4:return[2,retAJAX]}}))}))};return eDwServiceMgr}();return eDwServiceMgr}));define("eDwSetHierNodeAttribsCmd",["require","exports","eDwSupportsHistoryCmd"],(function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwSetHierNodeAttribsCmd=function(_super){__extends(eDwSetHierNodeAttribsCmd,_super);function eDwSetHierNodeAttribsCmd(iViewer,iHierNodes,iAttrib){var _this=_super.call(this,iViewer)||this;_this.mInitialHierNodeAttribs=[];_this.mFinalHierNodeAttribs=[];var finalAttrib=$.extend(true,{},iAttrib);for(var _i=0,iHierNodes_2=iHierNodes;_i-1){this.mTouchOpIDs.splice(opIndex,1);this.mViewer.OperatorMgr.unregisterCustomOperatorByID(iOpID)}};eDwTouchOpsMgr.isTouchEnabled=function(){function matchMedia(iFeature){return window.matchMedia&&window.matchMedia(iFeature).matches?true:false}var enabled=false;if("PointerEvent"in window&&"maxTouchPoints"in navigator){var maxTouchPoints=navigator.maxTouchPoints;if(utils.isNumber(maxTouchPoints)){if(navigator.maxTouchPoints>0){enabled=true}else if(navigator.maxTouchPoints===0&&matchMedia("(any-pointer:coarse)")){enabled=true}}}else{if(matchMedia("(any-pointer:coarse)")){enabled=true}else if("TouchEvent"in window||"ontouchstart"in window){enabled=true}}console.debugLog("TouchOps","Touch enabled = "+enabled);return enabled};return eDwTouchOpsMgr}();return eDwTouchOpsMgr}));define("eDwTypes",["require","exports"],(function(require,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.EntityMode=exports.SectionPlaneOrientation=exports.HCI=exports.HC=void 0;var HC=Communicator;exports.HC=HC;var HCI=Communicator.Internal;exports.HCI=HCI;exports.SectionPlaneOrientation={XY:{Plane:HC.Plane.createFromPointAndNormal(new HC.Point3(0,0,0),new HC.Point3(0,0,1)),Index:0},YZ:{Plane:HC.Plane.createFromPointAndNormal(new HC.Point3(0,0,0),new HC.Point3(1,0,0)),Index:1},ZX:{Plane:HC.Plane.createFromPointAndNormal(new HC.Point3(0,0,0),new HC.Point3(0,1,0)),Index:2}};exports.EntityMode={FACE:1,EDGE:2,VERTEX:4,HOLE:8,ALL:4294967295}}));define("eDwUI",["require","exports","eDwTypes","eDwKeyMgr","eDwUIBaseEventHandlers","eDwCommandMgr","eDwZoomToFitCmd","eDwDrawModeCmd","eDwAnimateCmd","eDwAmbientOcclusionCmd","eDwPerspectiveCmd","eDwSetViewCmd","eDwSetViewCameraCmd","eDwCompositeCmd","eDwSectionFlipCmd","eDwSetViewNormalToSectionCmd","eDwShowSectionCapCmd","eDwSectionShowCmd","eDwChangeSectionPlaneCmd","eDwUIPluginMgr","eDwEventMgr","eDwUIMessageReporter","eDwUIShortcutMenu","eDwUIUtils","eDrawingsWebViewerUtils","eDwEvents","utils"],(function(require,exports,eDwTypes_14,eDwKeyMgr_3,eDwUIBaseEventHandlers,eDwCommandMgr,eDwZoomToFitCmd,eDwDrawModeCmd,eDwAnimateCmd,eDwAmbientOcclusionCmd,eDwPerspectiveCmd,eDwSetViewCmd,eDwSetViewCameraCmd,eDwCompositeCmd,eDwSectionFlipCmd,eDwSetViewNormalToSectionCmd,eDwShowSectionCapCmd,eDwSectionShowCmd,eDwChangeSectionPlaneCmd,eDwUIPluginMgr,eDwEventMgr,eDwUIMessageReporter,eDwUIShortcutMenu_1,eDwUIUtils,eDrawingsWVUtils,eDwEvents,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.eDwUI=void 0;var eDwUI=function(){function eDwUI(){this.mUIEventHandlers=new UIEventHandlers(this,eDwUIUtils.getViewerElementName(),c_canvasID);this.mItemActiveCallbacks={};this.mItemDeactiveCallbacks={};solidworks.web.touch.support();this.awfulUIHacks()}eDwUI.prototype.initUIEvents=function(iViewerFeatOpts){this.mViewerFeatureOpts=iViewerFeatOpts;this.registerHTMLEvents()};eDwUI.prototype.init=function(iViewer){var _this=this;this.mViewer=iViewer;this.centerBottomBar();this.mViewer.XSectionMgr.SectionCapVisibility=true;$("#edrawings-section-capping-button").addClass("state-on-button");$("#edrawings-section-show-button").addClass("state-on-button");eDwUIUtils.hide(".edrawings-ui-main",false);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents.ResetSceneEvent,true)];case 1:_a.sent();return[2]}}))}))})()};eDwUI.prototype.toggleFullScreen=function(){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){var methodName,viewerElem,iExcp_14;return __generator(this,(function(_a){switch(_a.label){case 0:methodName="exitFullScreen()";_a.label=1;case 1:_a.trys.push([1,6,,7]);if(!l_isFullScreen())return[3,3];document.exitFullscreen=document.exitFullscreen||utils.getFirstMatchedMethodObj(document,"xitFullscreen");if(!document.exitFullscreen){console.warn("exitFullscreen() does not exist.");return[2]}return[4,document.exitFullscreen()];case 2:_a.sent();return[3,5];case 3:methodName="requestFullscreen()";viewerElem=$("#edrawings-viewer")[0];viewerElem.requestFullscreen=viewerElem.requestFullscreen||utils.getFirstMatchedMethodObj(viewerElem,"equestFullscreen");if(!viewerElem.requestFullscreen){console.warn("requestFullscreen() does not exist.");return[2]}return[4,viewerElem.requestFullscreen()];case 4:_a.sent();_a.label=5;case 5:return[3,7];case 6:iExcp_14=_a.sent();console.warn(methodName+" failed. It took too long.");return[3,7];case 7:return[2]}}))}))})()};eDwUI.prototype.unregister=function(){this.unregisterHTMLEvents();UIEventHandlers.doModelDataUnloadActions(this.mViewer)};eDwUI.prototype.setDrawMode=function(iValue){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){var drawModeCmd;return __generator(this,(function(_a){switch(_a.label){case 0:drawModeCmd=new eDwDrawModeCmd(this.mViewer,iValue);return[4,eDwCommandMgr.get().run(drawModeCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()};eDwUI.prototype.setInitialDrawMode=function(){if(!this.mViewer.ViewerFeatureOpts.RenderType)return;this.setDrawMode(this.mViewer.ViewerFeatureOpts.RenderType)};eDwUI.prototype.setPerspectiveMode=function(iValue){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){var perspectiveCmd;return __generator(this,(function(_a){switch(_a.label){case 0:perspectiveCmd=new eDwPerspectiveCmd(this.mViewer,iValue);return[4,eDwCommandMgr.get().run(perspectiveCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()};eDwUI.prototype.hideAllOtherPanels=function(iPanelCSSClassName){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iPanelCSSClassName!==".edrawings-hud-menu"))return[3,2];return[4,this.hideActiveHUDMenu()];case 1:_a.sent();_a.label=2;case 2:if(!(iPanelCSSClassName!==".edrawings-submenu"))return[3,4];return[4,this.hideActiveSubmenu()];case 3:_a.sent();_a.label=4;case 4:eDwUIShortcutMenu_1.eDwUIShortcutMenu.hide();return[2]}}))}))};eDwUI.prototype.onClick=function(iID,iActivate){var activateCallback=this.mItemActiveCallbacks[iID];var deactivateCallback=this.mItemDeactiveCallbacks[iID];if(iActivate){if(activateCallback)activateCallback()}else{if(deactivateCallback)deactivateCallback()}return activateCallback||deactivateCallback?true:false};eDwUI.prototype.registerHTMLEvents=function(){var _this=this;this.mUIEventHandlers.addHTMLEventHandlers(this.mViewerFeatureOpts);this.mModelDataLoadCompleteHandler=function(iEvent,iViewer){_this.mViewer=iViewer;eDwUIBaseEventHandlers.doModelDataLoadCompleteActions(_this.mUIEventHandlers,iViewer)};$("#"+c_canvasID).on("edw:ModelDataLoadComplete",this.mModelDataLoadCompleteHandler);var self=this;this.registerButtonForClickEffect("edrawings-section-flip-button",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){var sectionFlipCmd;return __generator(this,(function(_a){switch(_a.label){case 0:sectionFlipCmd=new eDwSectionFlipCmd(this.mViewer);return[4,eDwCommandMgr.get().run(sectionFlipCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}));this.registerButtonForClickEffect("edrawings-section-normal-button",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){var setViewNormalToSectionCmd;return __generator(this,(function(_a){switch(_a.label){case 0:setViewNormalToSectionCmd=new eDwSetViewNormalToSectionCmd(this.mViewer);return[4,eDwCommandMgr.get().run(setViewNormalToSectionCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}));function setXSectionOrientation(iEvent,iUI,iOrientation){iUI.setXSectionOrientation(iOrientation);eDwUIUtils.scrollToTarget(eDwUIUtils.getAsJQueryObj(iEvent.currentTarget))}$("#edrawings-section-xz-button").on("click.edw",(function(iEvent){return setXSectionOrientation(iEvent,_this,eDwTypes_14.SectionPlaneOrientation.ZX)}));$("#edrawings-section-yz-button").on("click.edw",(function(iEvent){return setXSectionOrientation(iEvent,_this,eDwTypes_14.SectionPlaneOrientation.YZ)}));$("#edrawings-section-xy-button").on("click.edw",(function(iEvent){return setXSectionOrientation(iEvent,_this,eDwTypes_14.SectionPlaneOrientation.XY)}));$("#edrawings-section-capping-button").on("click.edw",(function(iEvent){var buttonJQ=eDwUIUtils.getAsJQueryObj(iEvent.currentTarget);var visibility=!buttonJQ.hasClass("state-on-button");(function(){return __awaiter(_this,void 0,void 0,(function(){var showCapsCmd;return __generator(this,(function(_a){switch(_a.label){case 0:showCapsCmd=new eDwShowSectionCapCmd(this.mViewer,visibility);return[4,eDwCommandMgr.get().run(showCapsCmd,"commit")];case 1:_a.sent();return[2]}}))}))})();buttonJQ.toggleClass("state-on-button");eDwUIUtils.scrollToTarget(buttonJQ)}));$("#edrawings-section-show-button").on("click.edw",(function(iEvent){var buttonJQ=eDwUIUtils.getAsJQueryObj(iEvent.currentTarget);var showSection=!buttonJQ.hasClass("state-on-button");(function(){return __awaiter(_this,void 0,void 0,(function(){var showSectionCmd;return __generator(this,(function(_a){switch(_a.label){case 0:showSectionCmd=new eDwSectionShowCmd(this.mViewer,showSection);return[4,eDwCommandMgr.get().run(showSectionCmd,"commit")];case 1:_a.sent();return[2]}}))}))})();buttonJQ.toggleClass("state-on-button");eDwUIUtils.scrollToTarget(buttonJQ)}));this.mItemActiveCallbacks["#edrawings-button-section"]=function(){return __awaiter(_this,void 0,void 0,(function(){function compositeSectionDone(ioCmd){ioCmd.clearSubCmds();self.mViewer.XSectionMgr.deactivateCurrent();self.mViewer.XSectionMgr.turnOnSectionPlane(false)}var self;var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:eDwUIUtils.addPanelModeEvents("#edrawings-section-menu",".edw.section","#edrawings-button-section");this.mCompositeXSectionCmd=new eDwCompositeCmd(this.mViewer);eDwCommandMgr.get().add(this.mCompositeXSectionCmd);this.mCompositeXSectionCmd.initCmdActionImplementation({compositeInit:function(ioCmd){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){this.mViewer.XSectionMgr.turnOnSectionPlane(true);this.setXSectionOrientation();return[2]}))}))},compositeUndo:function(ioCmd){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){return[2,true]}))}))},compositeRedo:function(ioCmd){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){return[2,true]}))}))},compositeCommit:function(ioCmd){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){compositeSectionDone(ioCmd);return[2]}))}))},compositeCancel:function(ioCmd){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){compositeSectionDone(ioCmd);return[2]}))}))}});self=this;if(!!this.mViewer.getModel().isDrawing())return[3,2];return[4,this.setActiveSubmenu("#edrawings-button-section","#edrawings-section-menu")];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))};this.mItemDeactiveCallbacks["#edrawings-button-section"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:eDwUIUtils.deactivateMoveInput(".edw.section");return[4,eDwCommandMgr.get().remove(this.mCompositeXSectionCmd,"cancel")];case 1:_a.sent();return[2]}}))}))};eDwEventMgr.get().addEventHandlerFunc(eDwEvents.DeactivateUIOpEvent,(function(iActiveButtonsJQ){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iActiveButtonsJQ[0].id==="edrawings-button-section"))return[3,2];return[4,this.mItemDeactiveCallbacks["#edrawings-button-section"]()];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))}));function activateDebugPanel(iActivate,iHandlers){return __awaiter(this,void 0,void 0,(function(){var shortcutMenu;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,togglePanel(iActivate,"#edrawings-button-debug","#edrawings-debug-menu",".edw.debug",iHandlers)];case 1:_a.sent();if(iActivate){shortcutMenu=eDwUIShortcutMenu_1.eDwUIShortcutMenu.get();if(!shortcutMenu.isEmpty()){shortcutMenu.addMenuSeparator(c_debugGroupName)}shortcutMenu.addMenuItem(c_debugGroupName,"edrawings-debug-node-matrices",(function(iEvent,iUIItemJQ,iArg){if(utils.isOfType(iArg,"attr")){var nodeIDHC=parseInt(iArg.attr("data-hoopsid"),10);if(utils.isNumber(nodeIDHC)){var modelHC=self.mViewer.getModel().getHCModel();var matrixHC=modelHC.getNodeMatrix(nodeIDHC);var msg="
Matrix = "+JSON.stringify(matrixHC)+"
";matrixHC=modelHC.getNodeNetMatrix(nodeIDHC);msg+="
Net matrix = "+JSON.stringify(matrixHC)+"
";eDwUIMessageReporter.showMessageInDebugPanel(msg)}}eDwUIShortcutMenu_1.eDwUIShortcutMenu.hide()}))}else{eDwUIShortcutMenu_1.eDwUIShortcutMenu.get().removeAllMenuItems(c_debugGroupName)}return[2]}}))}))}this.mItemActiveCallbacks["#edrawings-button-debug"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateDebugPanel(true,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};this.mItemDeactiveCallbacks["#edrawings-button-debug"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateDebugPanel(false,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};eDwEventMgr.get().addEventHandlerFunc(eDwEvents.DeactivateUIOpEvent,(function(iActiveButtonsJQ){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iActiveButtonsJQ[0].id==="edrawings-button-debug"))return[3,2];return[4,this.mItemDeactiveCallbacks["#edrawings-button-debug"]()];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))}));this.mItemActiveCallbacks["#edrawings-button-reset"]=function(){return __awaiter(_this,void 0,void 0,(function(){var _this=this;return __generator(this,(function(_a){eDwUIUtils.resetToHomeView(this.mViewer);window.setTimeout((function(){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.deactivateUI()];case 1:_a.sent();return[2]}}))}))})()}),1e3);return[2]}))}))};$(document).on(c_fullScreenChange,(function(iEvent){if(l_isFullScreen()){l_fullScreenBtnJS.removeClass(c_restoreClass)}else{l_fullScreenBtnJS.addClass(c_restoreClass);$("#edrawings-canvas-canvas-container").css({"background-color":""})}}));$("#edrawings-button-fs").on("click.edw",(function(){_this.toggleFullScreen()}));function clickDrawMode(iUI,iMode){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:iUI.setDrawMode(iMode);return[4,iUI.hideActiveHUDMenu()];case 1:_a.sent();return[2]}}))}))})()}$("#edrawings-button-shaded-hlrr").on("click.edw",(function(){clickDrawMode(_this,"HiddenLinesRemoved")}));$("#edrawings-button-shaded-hlrv").on("click.edw",(function(){clickDrawMode(_this,"HiddenLinesVisible")}));$("#edrawings-button-shaded-wireframe").on("click.edw",(function(){clickDrawMode(_this,"Wireframe")}));$("#edrawings-button-shaded-full").on("click.edw",(function(){clickDrawMode(_this,"ShadedWithEdges")}));$("#edrawings-button-shaded-noedges").on("click.edw",(function(){clickDrawMode(_this,"Shaded")}));this.mItemActiveCallbacks["#edrawings-button-animate"]=function(){return __awaiter(_this,void 0,void 0,(function(){var animateCmd;return __generator(this,(function(_a){switch(_a.label){case 0:animateCmd=new eDwAnimateCmd(this.mViewer);return[4,eDwCommandMgr.get().run(animateCmd,"commit")];case 1:_a.sent();return[2]}}))}))};this.mItemDeactiveCallbacks["#edrawings-button-animate"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.mItemActiveCallbacks["#edrawings-button-animate"]()];case 1:_a.sent();return[2]}}))}))};$("#edrawings-button-frame-file-open").on("click.edw",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.hideActiveHUDMenu()];case 1:_a.sent();return[2]}}))}))})()}));this.mItemActiveCallbacks["#edrawings-button-view"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.setActiveHUDMenu("#edrawings-button-view","#edrawings-hud-view-menu")];case 1:_a.sent();return[2]}}))}))};this.mItemActiveCallbacks["#edrawings-button-help"]=function(){return __awaiter(_this,void 0,void 0,(function(){var version,viewerHC;return __generator(this,(function(_a){switch(_a.label){case 0:version="
Version #: "+eDrawingsWVUtils.getViewerVersion()+"
";if(this.mViewerFeatureOpts.Debug){viewerHC=this.mViewer.HCViewer;version+="
HC Version:"+viewerHC.getViewerVersionString()+"
Format Version: "+viewerHC.getFormatVersionString()+"
"}$("#edrawings-version").html(version);return[4,this.setActiveHUDMenu("#edrawings-button-help","#edrawings-hud-help-menu")];case 1:_a.sent();return[2]}}))}))};$("#edrawings-hud-help-close").on("click.edw",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.hideActiveHUDMenu()];case 1:_a.sent();return[2]}}))}))})()}));this.mItemActiveCallbacks["#edrawings-button-zoomtofit"]=function(){return __awaiter(_this,void 0,void 0,(function(){var viewHC,curModelView,nodeID,zoomToFitCmd;return __generator(this,(function(_a){switch(_a.label){case 0:viewHC=this.mViewer.getHCView();curModelView=this.mViewer.getModel().getActiveModelView();nodeID=curModelView.Hierarchy.HOOPSID;zoomToFitCmd=new eDwZoomToFitCmd(this.mViewer,nodeID,viewHC.getCamera());return[4,eDwCommandMgr.get().run(zoomToFitCmd,"commit")];case 1:_a.sent();return[2]}}))}))};this.mItemActiveCallbacks["#edrawings-button-shaded"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.setActiveHUDMenu("#edrawings-button-shaded","#edrawings-hud-shaded-menu")];case 1:_a.sent();return[2]}}))}))};function togglePanel(iActivate,iButtonID,iPanelID,iInputEventIDSuffix,iHandlers){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!iActivate)return[3,2];return[4,self.setActiveSubmenu(iButtonID,iPanelID)];case 1:_a.sent();eDwUIUtils.addPanelModeEvents(iPanelID,iInputEventIDSuffix,iButtonID);return[3,3];case 2:eDwUIUtils.deactivateMoveInput(iInputEventIDSuffix);_a.label=3;case 3:return[2]}}))}))}function activateSheetPanel(iActivate,iHandlers){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,togglePanel(iActivate,"#edrawings-button-sheet-tree","#edrawings-sheet-tree-menu",".edw.sheet",iHandlers)];case 1:_a.sent();return[2]}}))}))}this.mItemActiveCallbacks["#edrawings-button-sheet-tree"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateSheetPanel(true,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};this.mItemDeactiveCallbacks["#edrawings-button-sheet-tree"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateSheetPanel(false,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};eDwEventMgr.get().addEventHandlerFunc(eDwEvents.DeactivateUIOpEvent,(function(iActiveButtonsJQ){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iActiveButtonsJQ[0].id==="edrawings-button-sheet-tree"))return[3,2];return[4,this.mItemDeactiveCallbacks["#edrawings-button-sheet-tree"]()];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))}));function activateLayerPanel(iActivate,iHandlers){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,togglePanel(iActivate,"#edrawings-button-layer-control","#edrawings-layer-control-menu",".edw.layer",iHandlers)];case 1:_a.sent();return[2]}}))}))}this.mItemActiveCallbacks["#edrawings-button-layer-control"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateLayerPanel(true,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};this.mItemDeactiveCallbacks["#edrawings-button-layer-control"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateLayerPanel(false,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};eDwEventMgr.get().addEventHandlerFunc(eDwEvents.DeactivateUIOpEvent,(function(iActiveButtonsJQ){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iActiveButtonsJQ[0].id==="edrawings-button-layer-control"))return[3,2];return[4,this.mItemDeactiveCallbacks["#edrawings-button-layer-control"]()];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))}));eDwKeyMgr_3.eDwKeyMgr.get().add({key:"F11"},"keydown",(function(iEvent){iEvent.preventDefault();_this.toggleFullScreen();iEvent.stopPropagation()}));this.mItemActiveCallbacks["#edrawings-button-view-settings"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.setActiveHUDMenu("#edrawings-button-view-settings","#edrawings-hud-view-settings-menu")];case 1:_a.sent();return[2]}}))}))};var ambientOcc=$("#edrawings-button-view-ambient-occlusion");ambientOcc.on("click.edw",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){var buttonActive,ambientOcclCmd;return __generator(this,(function(_a){switch(_a.label){case 0:buttonActive=ambientOcc.hasClass("state-on-button");return[4,this.hideActiveHUDMenu()];case 1:_a.sent();if(buttonActive)ambientOcc.removeClass("state-on-button");else ambientOcc.addClass("state-on-button");ambientOcclCmd=new eDwAmbientOcclusionCmd(this.mViewer,!buttonActive);return[4,eDwCommandMgr.get().run(ambientOcclCmd,"commit")];case 2:_a.sent();return[2]}}))}))})()}));$("#edrawings-button-view-perspective").on("click.edw",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){var perspectiveMode;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.hideActiveHUDMenu()];case 1:_a.sent();perspectiveMode=!this.mViewer.getPerspectiveMode();this.setPerspectiveMode(perspectiveMode);return[2]}}))}))})()}));this.registerButtonForClickEffect("edrawings-button-view-top",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Top)}));this.registerButtonForClickEffect("edrawings-button-view-bottom",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Bottom)}));this.registerButtonForClickEffect("edrawings-button-view-left",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Left)}));this.registerButtonForClickEffect("edrawings-button-view-right",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Right)}));this.registerButtonForClickEffect("edrawings-button-view-front",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Front)}));this.registerButtonForClickEffect("edrawings-button-view-back",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Back)}));this.registerButtonForClickEffect("edrawings-button-view-iso",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Iso)}))};eDwUI.prototype.unregisterHTMLEvents=function(){this.mUIEventHandlers.removeHTMLEventHandlers();$("#"+c_canvasID).off("edw:ModelDataLoadComplete",this.mModelDataLoadCompleteHandler);$("#edrawings-section-xz-button").off("click.edw");$("#edrawings-section-yz-button").off("click.edw");$("#edrawings-section-xy-button").off("click.edw");$("#edrawings-section-capping-button").off("click.edw");$("#edrawings-section-show-button").off("click.edw");$("#edrawings-button-fs").off("click.edw");$("#edrawings-button-shaded-hlrr").off("click.edw");$("#edrawings-button-shaded-hlrv").off("click.edw");$("#edrawings-button-shaded-wireframe").off("click.edw");$("#edrawings-button-shaded-full").off("click.edw");$("#edrawings-button-shaded-noedges").off("click.edw");$("#edrawings-button-sheets").off("click.edw");$("#edrawings-button-frame-file-open").off("click.edw");$("#edrawings-button-view-ambient-occlusion").off("click.edw");$("#edrawings-button-view-perspective").off("click.edw");$("#edrawings-hud-help-close").off("click.edw");$(document).off(c_fullScreenChange);$(document).off("click.edw");$(document).off("mousedown.edw");$(document).off("dblclick.edw");this.unregisterButtonForClickEffect("edrawings-section-flip-button");this.unregisterButtonForClickEffect("edrawings-section-normal-button");this.unregisterButtonForClickEffect("edrawings-face-normal-button");this.unregisterButtonForClickEffect("edrawings-button-view-top");this.unregisterButtonForClickEffect("edrawings-button-view-bottom");this.unregisterButtonForClickEffect("edrawings-button-view-left");this.unregisterButtonForClickEffect("edrawings-button-view-right");this.unregisterButtonForClickEffect("edrawings-button-view-front");this.unregisterButtonForClickEffect("edrawings-button-view-back");this.unregisterButtonForClickEffect("edrawings-button-view-iso")};eDwUI.prototype.setActiveSubmenu=function(iButtonID,iPanelID){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.activateUI(iButtonID,iPanelID)];case 1:_a.sent();return[2]}}))}))};eDwUI.prototype.hideActiveSubmenu=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.deactivateUI(".edrawings-tool-button",".edrawings-submenu")];case 1:_a.sent();return[2]}}))}))};eDwUI.prototype.centerBottomBar=function(iWidth,iHeight){$(".tool-bar").css({height:"auto"});var barJQ=$(".tool-bar");var viewerElemJQ=$(eDwUIUtils.getViewerElementID());var leftButtonsJQ=$(".edrawings-icon-set.left");var rightButtonsJQ=$(".edrawings-icon-set.right");var centerButtonsJQ=$(".edrawings-icon-set.center");var width=(iWidth?iWidth:viewerElemJQ.width())-1;if(navigator.userAgent.indexOf("Trident")>=0){width=viewerElemJQ[0].clientWidth-1}barJQ.css({position:"absolute"});leftButtonsJQ.css({left:1+"px",position:"absolute"});rightButtonsJQ.css({right:1+"px",position:"absolute"});centerButtonsJQ.css({left:width/2-52/2+"px",position:"absolute"})};eDwUI.prototype.setActiveHUDMenu=function(iButtonID,iPanelID){return __awaiter(this,void 0,void 0,(function(){var buttonJQ,buttonOffset,posx,posy,canvasWidth,panelJQ,panelWidth;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.hideActiveHUDMenu()];case 1:_a.sent();return[4,eDwUIUtils.activateUI(iButtonID,iPanelID)];case 2:_a.sent();if(iButtonID!=="#edrawings-button-help"){buttonJQ=$(iButtonID);buttonOffset=buttonJQ.offset();posx=buttonOffset.left;posy=buttonOffset.top+parseInt(buttonJQ.css("marginTop"))+parseInt(buttonJQ.css("borderTopWidth"))+buttonJQ.height();canvasWidth=$("#edrawings-canvas").width();panelJQ=$(iPanelID);panelWidth=panelJQ[0].offsetWidth;if(posx+panelWidth>canvasWidth){posx=canvasWidth-panelWidth-10}panelJQ.css({top:posy+"px",left:posx+"px"})}return[2]}}))}))};eDwUI.prototype.hideActiveHUDMenu=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.deactivateUI(".edrawings-hud-button",".edrawings-hud-menu")];case 1:_a.sent();return[2]}}))}))};eDwUI.prototype.registerButtonForClickEffect=function(iButtonID,iHandler){var butJQ=$("#"+iButtonID);butJQ.on("mousedown.edw",(function(){butJQ.addClass("edrawings-on-state");eDwUIUtils.scrollToTarget(butJQ)}));butJQ.on("mouseup.edw",(function(){butJQ.removeClass("edrawings-on-state");iHandler()}))};eDwUI.prototype.unregisterButtonForClickEffect=function(iButtonID){var butJQ=$("#"+iButtonID);butJQ.off("mousedown.edw");butJQ.off("mouseup.edw")};eDwUI.prototype.setViewOrientation=function(iOrientation){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){var setViewCmd;return __generator(this,(function(_a){switch(_a.label){case 0:setViewCmd=new eDwSetViewCmd(this.mViewer,iOrientation);return[4,eDwCommandMgr.get().run(setViewCmd,"commit")];case 1:_a.sent();return[4,this.hideActiveHUDMenu()];case 2:_a.sent();return[2]}}))}))})()};eDwUI.prototype.setXSectionOrientation=function(iNewSection){var _this=this;function setActive(iButtonID,iIsActive){$(iButtonID)[iIsActive?"addClass":"removeClass"]("state-on-button")}var sectionMgr=this.mViewer.XSectionMgr;var sectionIndex=iNewSection?iNewSection.Index:sectionMgr.SectionIndex;var planeFromEnum=null;switch(sectionIndex){case eDwTypes_14.SectionPlaneOrientation.YZ.Index:setActive("#edrawings-section-xy-button",false);setActive("#edrawings-section-yz-button",true);setActive("#edrawings-section-xz-button",false);planeFromEnum=eDwTypes_14.SectionPlaneOrientation.YZ;break;case eDwTypes_14.SectionPlaneOrientation.ZX.Index:setActive("#edrawings-section-xy-button",false);setActive("#edrawings-section-yz-button",false);setActive("#edrawings-section-xz-button",true);planeFromEnum=eDwTypes_14.SectionPlaneOrientation.ZX;break;case eDwTypes_14.SectionPlaneOrientation.XY.Index:eDwUIUtils.hide("#edrawings-section-xy-button",false);eDwUIUtils.hide("#edrawings-section-yz-button",false);eDwUIUtils.hide("#edrawings-section-xz-button",false);setActive("#edrawings-section-xy-button",true);setActive("#edrawings-section-yz-button",false);setActive("#edrawings-section-xz-button",false);planeFromEnum=eDwTypes_14.SectionPlaneOrientation.XY;break;default:console.debugLog("UI","Unsupported section plane orientation");break}var origPlaneEnum=null;if(sectionIndex!==sectionMgr.SectionIndex){switch(sectionMgr.SectionIndex){case eDwTypes_14.SectionPlaneOrientation.YZ.Index:origPlaneEnum=eDwTypes_14.SectionPlaneOrientation.YZ;break;case eDwTypes_14.SectionPlaneOrientation.ZX.Index:origPlaneEnum=eDwTypes_14.SectionPlaneOrientation.ZX;break;case eDwTypes_14.SectionPlaneOrientation.XY.Index:origPlaneEnum=eDwTypes_14.SectionPlaneOrientation.XY;break;default:console.debugLog("UI","Unsupported initial section plane orientation");break}if(planeFromEnum&&origPlaneEnum){(function(){return __awaiter(_this,void 0,void 0,(function(){var changeSectionPlaneCmd;return __generator(this,(function(_a){switch(_a.label){case 0:changeSectionPlaneCmd=new eDwChangeSectionPlaneCmd(this.mViewer,origPlaneEnum,planeFromEnum);return[4,eDwCommandMgr.get().run(changeSectionPlaneCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}}};eDwUI.prototype.awfulUIHacks=function(){var _this=this;l_init=function(){$("#edrawings-face-normal-button").removeClass("edrawings-inactive");_this.registerButtonForClickEffect("edrawings-face-normal-button",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){var setViewCameraCmd;return __generator(this,(function(_a){switch(_a.label){case 0:setViewCameraCmd=new eDwSetViewCameraCmd(this.mViewer);return[4,eDwCommandMgr.get().run(setViewCameraCmd,"commit")];case 1:_a.sent();return[4,this.hideActiveHUDMenu()];case 2:_a.sent();return[2]}}))}))})()}))};l_uninit=function(){$("#edrawings-face-normal-button").addClass("edrawings-inactive");_this.unregisterButtonForClickEffect("edrawings-face-normal-button")}};return eDwUI}();exports.eDwUI=eDwUI;var UIEventHandlers=function(_super){__extends(UIEventHandlers,_super);function UIEventHandlers(iUI,iViewerHTMLID,iViewerHTMLCanvasID){var _this=_super.call(this,iViewerHTMLID,iViewerHTMLCanvasID)||this;_this.mUI=iUI;return _this}UIEventHandlers.prototype.addHTMLEventHandlers=function(iViewerFeatOpts){var _this=this;_super.prototype.addHTMLEventHandlers.call(this,iViewerFeatOpts);$("#edrawings-viewer").on("click.edw",".edrawings-tool-button",(function(iEvent){_this.onClick(iEvent,".edrawings-tool-button")}));$("#edrawings-viewer").on("click.edw",".edrawings-hud-button",(function(iEvent){_this.onClick(iEvent,".edrawings-hud-button",".edrawings-submenu")}));this.mUIHTMLEventMgr.addEventHandler("window","beforeunload",(function(iEvent){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){this.mUI.unregister();return[2]}))}))}));this.mUIHTMLEventMgr.addEventHandler("window","Timeout",(function(iEvent){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){this.mUI.unregister();return[2]}))}))}));$(".edrawings-menu-close").on("click.edw",(function(iEvent){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.deactivateActiveButton(".edrawings-tool-button")];case 1:_a.sent();return[2]}}))}))})()}));var viewerJQ=$(eDwUIUtils.getViewerElementID());viewerJQ.on("edw:ChangeViewerStyling",(function(iEvent,iStyleClassName){viewerJQ.removeClass("edrawings-viewer-regular");viewerJQ.removeClass("edrawings-viewer-timeout");if(iStyleClassName)viewerJQ.addClass(iStyleClassName)}));viewerJQ.on("edw:HidePanels",(function(iEvent,iSkipPanelsWithClass){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.mUI.hideAllOtherPanels(iSkipPanelsWithClass)];case 1:_a.sent();return[2]}}))}))})()}));viewerJQ.on("edw:ReInitViewer",(function(iEvent,iViewerFeatOpts){_this.mUI.unregister();_this.mUI.initUIEvents(iViewerFeatOpts)}))};UIEventHandlers.prototype.removeHTMLEventHandlers=function(){_super.prototype.removeHTMLEventHandlers.call(this);$(".edrawings-menu-close").off("click.edw");$("#edrawings-viewer").off("click.edw",".edrawings-tool-button");$("#edrawings-viewer").off("click.edw",".edrawings-hud-button");var viewerJQ=$(eDwUIUtils.getViewerElementID());viewerJQ.off("edw:ChangeViewerStyling");viewerJQ.off("edw:HidePanels");viewerJQ.off("edw:ReInitViewer")};UIEventHandlers.doModelDataUnloadActions=function(iViewer){eDwUIBaseEventHandlers.doModelDataUnloadActions(iViewer)};UIEventHandlers.prototype.onInit=function(iViewer){var viewerFeatureOpts=iViewer.ViewerFeatureOpts;var model=iViewer.getModel();var isDrawing=model.isDrawing();eDwUIUtils.hide("#edrawings-button-reset",false);eDwUIUtils.hide("#edrawings-button-shaded",isDrawing);eDwUIUtils.hide("#edrawings-button-view-settings",isDrawing);eDwUIUtils.hide("#edrawings-button-animate",isDrawing);eDwUIUtils.hide("#edrawings-button-section",isDrawing);eDwUIUtils.hide("#edrawings-button-view",isDrawing);eDwUIUtils.hide("#edrawings-button-debug",!viewerFeatureOpts.Debug);eDwUIUtils.hide("#edrawings-button-tables-control",isDrawing||iViewer.TableMgr.numTables()===0);eDwUIUtils.hide("#edrawings-button-sheet-tree",!isDrawing);eDwUIUtils.hide("#edrawings-button-layer-control",!isDrawing);eDwUIUtils.hide(".edrawings-icon-set.center",isDrawing);this.removeHTMLEventHandlers()};UIEventHandlers.prototype.onInitFullUI=function(iViewer){_super.prototype.onInitFullUI.call(this,iViewer);this.addHTMLEventHandlers(iViewer.ViewerFeatureOpts);this.mUI.init(iViewer);eDwUIUtils.hide("#WaitBanner",true)};UIEventHandlers.prototype.onSelect=function(iViewer,iSelObjs){_super.prototype.onSelect.call(this,iViewer,iSelObjs);if(l_init)l_init()};UIEventHandlers.prototype.onUnselect=function(iViewer,iSelObjs){_super.prototype.onUnselect.call(this,iViewer,iSelObjs);if(l_uninit)l_uninit()};UIEventHandlers.prototype.onTimeout=function(iViewer){eDwUIUtils.hide("#TimeoutBanner",false);$(eDwUIUtils.getViewerElementID()).trigger("edw:ChangeViewerStyling","edrawings-viewer-timeout")};UIEventHandlers.prototype.onStartAnimation=function(iViewer){var eDwViewer=iViewer;$("#edrawings-canvas").on("click.edw",(function(){eDwViewer.ViewMgr.stop()}));var animateBtnJQ=$("#edrawings-button-animate");animateBtnJQ.removeClass("edrawings-animate-play-icon");animateBtnJQ.addClass("edrawings-animate-pause-icon")};UIEventHandlers.prototype.onStopAnimation=function(iViewer){var animateBtnJQ=$("#edrawings-button-animate");animateBtnJQ.addClass("edrawings-animate-play-icon");animateBtnJQ.removeClass("edrawings-animate-pause-icon")};UIEventHandlers.prototype.onAmbientOcclusionChange=function(iViewer,iAmbientOcclusionOn){var ambientOccButton=$("#edrawings-button-view-ambient-occlusion");if(iAmbientOcclusionOn){if(!ambientOccButton.hasClass("state-on-button")){ambientOccButton.addClass("state-on-button")}}else{if(ambientOccButton.hasClass("state-on-button")){ambientOccButton.removeClass("state-on-button")}}};UIEventHandlers.prototype.onProjectionModeChange=function(iViewer,iPerspectiveOn){var perspectiveButton=$("#edrawings-button-view-perspective");if(iPerspectiveOn){if(!perspectiveButton.hasClass("state-on-button")){perspectiveButton.addClass("state-on-button")}}else{if(perspectiveButton.hasClass("state-on-button")){perspectiveButton.removeClass("state-on-button")}}};UIEventHandlers.prototype.onDrawModeChange=function(iViewer,iDrawMode){function setActive(iButtonID,iIsActive){if(iIsActive&&!$(iButtonID).hasClass("state-on-button")){$(iButtonID).addClass("state-on-button")}else if(!iIsActive&&$(iButtonID).hasClass("state-on-button")){$(iButtonID).removeClass("state-on-button")}}function setActiveInGroup(iButtonID){setActive("#edrawings-button-shaded-full",false);setActive("#edrawings-button-shaded-noedges",false);setActive("#edrawings-button-shaded-wireframe",false);setActive("#edrawings-button-shaded-hlrr",false);setActive("#edrawings-button-shaded-hlrv",false);setActive(iButtonID,true)}switch(iDrawMode){case"ShadedWithEdges":setActiveInGroup("#edrawings-button-shaded-full");break;case"Shaded":setActiveInGroup("#edrawings-button-shaded-noedges");break;case"HiddenLinesRemoved":setActiveInGroup("#edrawings-button-shaded-hlrr");break;case"HiddenLinesVisible":setActiveInGroup("#edrawings-button-shaded-hlrv");break;case"Wireframe":setActiveInGroup("#edrawings-button-shaded-wireframe");break;default:throw new Error("Unknown draw mode in UI:"+iDrawMode)}};UIEventHandlers.prototype.onClick=function(iEvent,iButtonCSSClassName,iPanelCSSClassName){var _this=this;if(iPanelCSSClassName===void 0){iPanelCSSClassName=""}(function(){return __awaiter(_this,void 0,void 0,(function(){var targetJQ,buttonClickedID,deactivatedButtonID;return __generator(this,(function(_a){switch(_a.label){case 0:targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);buttonClickedID=targetJQ.closest(iButtonCSSClassName).attr("id");return[4,this.deactivateActiveButton(iButtonCSSClassName,iPanelCSSClassName)];case 1:deactivatedButtonID=_a.sent();if(deactivatedButtonID===buttonClickedID)return[2];this.handleClick("#"+buttonClickedID,true);return[2]}}))}))})()};UIEventHandlers.prototype.deactivateActiveButton=function(iButtonCSSClassName,iPanelCSSClassName){if(iPanelCSSClassName===void 0){iPanelCSSClassName=""}return __awaiter(this,void 0,void 0,(function(){var activeButtonID,activeButtonJQ;return __generator(this,(function(_a){switch(_a.label){case 0:activeButtonID="";activeButtonJQ=$(iButtonCSSClassName+".active-button");return[4,this.mUI.hideAllOtherPanels(iPanelCSSClassName)];case 1:_a.sent();if(activeButtonJQ.length){activeButtonID=activeButtonJQ[0].id;this.handleClick("#"+activeButtonID,false)}return[2,activeButtonID]}}))}))};UIEventHandlers.prototype.handleClick=function(iButtonID,iActivate){eDwUIUtils.scrollToTarget($(iButtonID));if(!this.mUI.onClick(iButtonID,iActivate)){var pluginMgr=eDwUIPluginMgr.get();pluginMgr.onClick(iButtonID,iActivate)}};return UIEventHandlers}(eDwUIBaseEventHandlers);var c_fullScreenChange="fullscreenchange.edw MSFullscreenChange.edw"+" webkitfullscreenchange.edw";var c_restoreClass="edrawings-button-fs-restore";var c_canvasID="edrawings-canvas";var c_debugGroupName="Debug";var l_fullScreenBtnJS;var l_init;var l_uninit;function l_isFullScreen(){if(!l_fullScreenBtnJS)l_fullScreenBtnJS=$("#edrawings-button-fs");return l_fullScreenBtnJS.hasClass(c_restoreClass)}}));define("eDwUIBaseEventHandlers",["require","exports","eDwEventMgr","eDwUIHTMLEventMgr","eDwCommandMgr","eDwChangeModelViewCmd","eDwCompositeCmd","eDwSetLayerVisibilityCmd","eDwUIPluginMgr","eDwEvents","eDwUIUtils","eDwUIShortcutMenu","utils"],(function(require,exports,eDwEventMgr,eDwUIHTMLEventMgr,eDwCommandMgr,eDwChangeModelViewCmd,eDwCompositeCmd,eDwSetLayerVisibilityCmd,eDwUIPluginMgr,eDwEvents,eDwUIUtils,eDwUIShortcutMenu_2,utils){"use strict";var eDwUIBaseEventHandlers=function(){function eDwUIBaseEventHandlers(iViewerHTMLID,iViewerHTMLCanvasID){this.mViewerHTMLID=iViewerHTMLID;this.mViewerHTMLCanvasID=iViewerHTMLCanvasID;this.mUIHTMLEventMgr=new eDwUIHTMLEventMgr}eDwUIBaseEventHandlers.prototype.addHTMLEventHandlers=function(iViewerFeatOpts){var _this=this;this.mViewerFeatureOpts=iViewerFeatOpts;var eventMgrHTML=this.mUIHTMLEventMgr;eventMgrHTML.addEventHandler("window","resize",(function(iEvent){_this.onResize(iEvent,_this.mViewer)}));eDwEventMgr.get().addEventHandlerFunc(eDwEvents.ResetSceneEvent,l_onResize);eDwUIUtils.addSubTreeArrowEventHandler(eventMgrHTML,"#edrawings-sheet-tree-menu");eventMgrHTML.addDelegatedEventHandler("#edrawings-sheet-tree-menu .edrawings-submenu-list-item","dblclick",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.scrollToTarget(targetJQ);if(targetJQ.hasClass("edrawings-root")){return}var selObjIDHC=eDwUIUtils.getIDHC(targetJQ);if(isNaN(selObjIDHC)||selObjIDHC<0){return}(function(){return __awaiter(_this,void 0,void 0,(function(){var cmdMgr,zoomToViewCmd,targetModelView,model,modelHC,modelViews,_i,modelViews_4,modelView,configIDHC,configChildren,activeModelView,changeModelViewCmd;return __generator(this,(function(_a){switch(_a.label){case 0:cmdMgr=eDwCommandMgr.get();zoomToViewCmd=new eDwCompositeCmd(this.mViewer);zoomToViewCmd.initCmdActionImplementation();return[4,cmdMgr.add(zoomToViewCmd)];case 1:_a.sent();targetModelView=null;model=this.mViewer.getModel();modelHC=model.getHCModel();modelViews=model.getModelViews();for(_i=0,modelViews_4=modelViews;_i-1){console.excludeDebugLogCategories.slice(pos,1)}}}));var selectorName="#edrawings-debug-menu .edrawings-submenu-list-item";eventMgrHTML.addDelegatedEventHandler(selectorName,"click",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.scrollToTarget(targetJQ);var id=eDwUIUtils.getIDHC(targetJQ);if(isNaN(id))return;$(selectorName).removeClass("edrawings-list-selected");$(targetJQ).addClass("edrawings-list-selected");_this.mViewer.SelectionMgr.selectByID(id)}));eventMgrHTML.addDelegatedEventHandler("#edrawings-debug-menu .edrawings-submenu-list-item","dblclick",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.scrollToTarget(targetJQ);var id=eDwUIUtils.getIDHC(targetJQ);if(isNaN(id))return;_this.onLeftDoubleClick(_this.mViewer)}));eventMgrHTML.addEventHandler("#edrawings-debug-menu .edrawings-menu-search-cancel","click",(function(iEvent){$("#edrawings-debug-menu "+".edrawings-menu-search-input").val("");var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.searchPanelList(_this.mViewer,targetJQ)}));eventMgrHTML.addEventHandler("#edrawings-debug-menu .edrawings-menu-search-input","keyup",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.searchPanelList(_this.mViewer,targetJQ)}));eventMgrHTML.addDelegatedEventHandler("#edrawings-layer-control-menu .item-layer-checkbox","click",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);var layerName=eDwUIUtils.getSpanText(targetJQ.next("span.item-tree-text"));var isVisible=targetJQ.prop("checked");_this.setOneLayerVisibility(layerName,isVisible)}));eventMgrHTML.addDelegatedEventHandler("#edrawings-layer-control-menu .layer-all","click",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);var isVisible=targetJQ.prop("checked");_this.setAllLayerVisibility(isVisible)}));eventMgrHTML.addEventHandler("#edrawings-filename-block","mouseover",(function(iEvent){var filenameJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);if(filenameJQ.length===1&&filenameJQ[0].scrollWidth>filenameJQ.width()){var mouseEvent=iEvent;l_positionTicker(mouseEvent,filenameJQ,$("#edrawings-filename-text").text())}}));eventMgrHTML.addEventHandler("#edrawings-filename-block","mouseout",(function(iEvent){l_hideTicker()}));eventMgrHTML.addDelegatedEventHandler("document .edrawings-submenu-list-item","mouseover",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);var itemTreeTextJQ=targetJQ.find(".item-tree-text");var edrawingsSubmenuListJQ=targetJQ.closest(".edrawings-submenu-list");if(edrawingsSubmenuListJQ.length===1&&itemTreeTextJQ.length===1&&itemTreeTextJQ[0].scrollWidth>itemTreeTextJQ.width()){var mouseEvent=iEvent;l_positionTicker(mouseEvent,itemTreeTextJQ,itemTreeTextJQ.text())}}));eventMgrHTML.addDelegatedEventHandler("document .edrawings-submenu-list-item","mouseout",(function(iEvent){l_hideTicker()}));eventMgrHTML.addEventHandler("#edrawings-hud-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-left)","click",(function(iEvent){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_scrollUIBar($("#edrawings-hud-bar .edrawings-hud-bar-content"),".edrawings-hud-button",".edrawings-hud-menu",-c_hudBarIconWidth)];case 1:_a.sent();return[2]}}))}))})()}));eventMgrHTML.addEventHandler("#edrawings-hud-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-right)","click",(function(iEvent){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_scrollUIBar($("#edrawings-hud-bar .edrawings-hud-bar-content"),".edrawings-hud-button",".edrawings-hud-menu",c_hudBarIconWidth)];case 1:_a.sent();return[2]}}))}))})()}));eDwUIUtils.enableScrollOnTouch(eventMgrHTML,"#edrawings-hud-bar .edrawings-hud-bar-content","#edrawings-hud-bar",(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.deactivateUI(".edrawings-hud-button",".edrawings-hud-menu")];case 1:_a.sent();return[2]}}))}))}));eventMgrHTML.addEventHandler("#edrawings-left-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-up)","click",(function(iEvent){var barJQ=$("#edrawings-left-bar");var contentJQ=barJQ.find(".edrawings-tool-bar-content");(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_scrollUIBar(contentJQ,".edrawings-tool-button",".edrawings-submenu",-c_toolBarIconWidth,barJQ)];case 1:_a.sent();return[2]}}))}))})()}));eventMgrHTML.addEventHandler("#edrawings-left-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-down)","click",(function(iEvent){var barJQ=$("#edrawings-left-bar");var contentJQ=barJQ.find(".edrawings-tool-bar-content");(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_scrollUIBar(contentJQ,".edrawings-tool-button",".edrawings-submenu",c_toolBarIconWidth,barJQ)];case 1:_a.sent();return[2]}}))}))})()}));eDwUIUtils.enableScrollOnTouch(eventMgrHTML,"#edrawings-left-bar .edrawings-tool-bar-content","#edrawings-left-bar",(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.deactivateUI(".edrawings-tool-button",".edrawings-submenu")];case 1:_a.sent();return[2]}}))}))}))};eDwUIBaseEventHandlers.prototype.addDefaultHTMLPanelCloseEventHandlers=function(){if(this.mViewerFeatureOpts.Debug){eDwUIUtils.addCloseEventHandler("#edrawings-debug-menu",this.mUIHTMLEventMgr)}eDwUIUtils.addCloseEventHandler("#edrawings-sheet-tree-menu",this.mUIHTMLEventMgr);eDwUIUtils.addCloseEventHandler("#edrawings-layer-control-menu",this.mUIHTMLEventMgr)};eDwUIBaseEventHandlers.doModelDataLoadCompleteActions=function(ioEventHandlerObj,iViewer){ioEventHandlerObj.mViewer=iViewer;l_loadUIPlugins(iViewer);var handlerObj=ioEventHandlerObj;var eventMgr=eDwEventMgr.get();eventMgr.addEventHandlerObj(eDwEvents.InitEvent,handlerObj,"onInit");eventMgr.addEventHandlerObj(eDwEvents.InitFullUIEvent,handlerObj,"onInitFullUI");eventMgr.addEventHandlerObj(eDwEvents.SelectEvent,handlerObj,"onSelect");eventMgr.addEventHandlerObj(eDwEvents.UnselectEvent,handlerObj,"onUnselect");eventMgr.addEventHandlerObj(eDwEvents.StartAnimationEvent,handlerObj,"onStartAnimation");eventMgr.addEventHandlerObj(eDwEvents.StopAnimationEvent,handlerObj,"onStopAnimation");eventMgr.addEventHandlerObj(eDwEvents.LeftDoubleClickEvent,handlerObj,"onLeftDoubleClick");eventMgr.addEventHandlerObj(eDwEvents.TimeoutEvent,handlerObj,"onTimeout");eventMgr.addEventHandlerObj(eDwEvents.DrawModeChangeEvent,handlerObj,"onDrawModeChange");eventMgr.addEventHandlerObj(eDwEvents.ProjModeChangeEvent,handlerObj,"onProjectionModeChange");eventMgr.addEventHandlerObj(eDwEvents.NodeAttribChangeEvent,handlerObj,"onNodeAttribChanged");eventMgr.addEventHandlerObj(eDwEvents.ResetSceneEvent,handlerObj,"onResetScene");eventMgr.addEventHandlerObj(eDwEvents.AmbientOcclChangeEvent,handlerObj,"onAmbientOcclusionChange");eventMgr.addEventHandlerObj(eDwEvents.DoneEvent,handlerObj,"onDone");eventMgr.addEventHandlerObj(eDwEvents.ModelViewChangeEvent,handlerObj,"onModelViewChange")};eDwUIBaseEventHandlers.prototype.removeHTMLEventHandlers=function(){eDwUIUtils.disableScrollOnTouch(this.mUIHTMLEventMgr,"#edrawings-hud-bar .edrawings-hud-bar-content");eDwUIUtils.disableScrollOnTouch(this.mUIHTMLEventMgr,"#edrawings-left-bar .edrawings-tool-bar-content");this.mUIHTMLEventMgr.removeAllEventHandlers();eDwUIShortcutMenu_2.eDwUIShortcutMenu.destroy()};eDwUIBaseEventHandlers.doModelDataUnloadActions=function(iViewer){l_unloadUIPlugins();if(iViewer)iViewer.unregister();eDwEventMgr.get().removeAllEventHandlers()};eDwUIBaseEventHandlers.prototype.onInit=function(iViewer){this.mViewer=iViewer};eDwUIBaseEventHandlers.prototype.onInitFullUI=function(iViewer){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.updateUI(iViewer,iViewer.getModel().getActiveModelView(),true)];case 1:_a.sent();return[2]}}))}))})()};eDwUIBaseEventHandlers.prototype.onDone=function(iViewer){iViewer.destroy()};eDwUIBaseEventHandlers.prototype.onSelect=function(iViewer,iSelObjs){this.handleSelectionChange(iViewer,iSelObjs,true)};eDwUIBaseEventHandlers.prototype.onUnselect=function(iViewer,iSelObjs){this.handleSelectionChange(iViewer,iSelObjs,false)};eDwUIBaseEventHandlers.prototype.onLeftDoubleClick=function(iViewer){eDwUIUtils.zoomToFit(iViewer);eDwUIShortcutMenu_2.eDwUIShortcutMenu.hide()};eDwUIBaseEventHandlers.prototype.onModelViewChange=function(iViewer,iNewModelView,iIsAssembly){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.updateUI(iViewer,iNewModelView)];case 1:_a.sent();return[2]}}))}))})()};eDwUIBaseEventHandlers.prototype.onNodeAttribChanged=function(iViewer,iHierNodesAndAttribs){if(iViewer.ViewerFeatureOpts.Debug){for(var _i=0,iHierNodesAndAttribs_3=iHierNodesAndAttribs;_i1){hudBarJQ.offset({left:Math.ceil(filenameBlockRight),top:hudBarOffset.top});l_resizeTopBar()}else if(hudBarContentJQ[0].scrollWidth===0||hudBarContentJQ.width()>=hudBarContentJQ[0].scrollWidth){topBarJQ.removeClass("edrawings-collided-hud-bar");hudBarJQ.removeClass("edrawings-collided");hudBarJQ.css({left:""})}}else{if(filenameBlockOffset.left!==hudBarOffset.left&&filenameBlockRight>hudBarOffset.left){hudBarJQ.offset({left:Math.ceil(filenameBlockRight),top:hudBarOffset.top});topBarJQ.addClass("edrawings-collided-hud-bar");hudBarJQ.addClass("edrawings-collided")}}eDwUIUtils.adjustScrollArrows(hudBarContentJQ[0].scrollLeft,hudBarContentJQ[0].scrollWidth,hudBarContentJQ.width(),true,leftButtonWrapperJQ,rightButtonWrapperJQ,hudBarJQ);if(topBarJQ.hasClass("edrawings-collided-hud-bar")){if(hudBarContentJQ.innerWidth()c_filenameBlockThresholdWidth){if(topBarJQ.hasClass("edrawings-out-of-view")){topBarJQ.removeClass("edrawings-out-of-view")}}else{topBarJQ.addClass("edrawings-out-of-view")}}else{if(filenameBlockJQ[0].scrollWidth-filenameBlockInnerWidth>1){if(filenameBlockJQ.width()0&&toolBarContentJQ[0].scrollHeight<=leftBarContentJQ.innerHeight()){leftBarJQ.removeClass("edrawings-collided")}}else{if(leftBarContentJQ[0].scrollHeight>0&&leftBarContentJQ[0].scrollHeight>Math.round(leftBarContentJQ.innerHeight())){leftBarJQ.addClass("edrawings-collided")}}eDwUIUtils.adjustScrollArrows(toolBarContentJQ[0].scrollTop,toolBarContentJQ[0].scrollHeight,toolBarContentJQ.height(),false,upButtonWrapperJQ,downButtonWrapperJQ,leftBarJQ);if(leftBarJQ.hasClass("edrawings-collided")){if(toolBarContentJQ.innerHeight()=window.innerWidth){var diff=iMouseEvent.clientX+iItemJQ[0].scrollWidth+scrollWidthPadding-window.innerWidth;if(iMouseEvent.clientX>=diff){tickerLeft=iMouseEvent.clientX-diff;tickerWidth=iItemJQ[0].scrollWidth+scrollWidthPadding}else{tickerLeft=0;tickerAnimation=true;if(window.innerWidth>tickerMinWidth){tickerWidth=window.innerWidth}else{tickerWidth=tickerMinWidth}var threeTimes=[iText,iText,iText].join(" ");tickerJQ.text(threeTimes)}}if(itemOffset.top-tickerMinHeight<=0){if(itemOffset.top+iItemJQ[0].clientHeight+tickerMinHeight<=window.innerHeight){tickerTop=itemOffset.top+iItemJQ[0].clientHeight}else{var diff=iMouseEvent.clientY+tickerMinHeight-window.innerHeight;if(iMouseEvent.clientY>diff){tickerTop=iMouseEvent.clientY-diff}else{tickerTop=0}}}var tickerwrapJQ=tickerJQ.closest(".edrawings-ticker-wrapper");tickerwrapJQ.offset({left:tickerLeft,top:tickerTop}).css("width",tickerWidth).removeClass("edrawings-ui-hide");if(tickerAnimation){tickerwrapJQ.addClass("edrawings-animation")}}function l_hideTicker(){var tickerwrapJQ=$(".edrawings-ticker-wrapper");if(!tickerwrapJQ.hasClass("edrawings-ui-hide")){var tickerJQ=tickerwrapJQ.find(".edrawings-ticker");tickerJQ.text("");tickerwrapJQ.addClass("edrawings-ui-hide").removeClass("edrawings-animation").css("left","").css("top","").css("width","")}}function l_positionMenuPanelCollapseButton(){var activeButtonsJQ=$(".edrawings-tool-button.active-button");if(activeButtonsJQ.length){if(eDwUIUtils.scrollToTarget(activeButtonsJQ)){l_resizeToolBar()}var collapsedPanelsJQ=$(".edrawings-submenu.active.edrawings-collapsed");if(collapsedPanelsJQ.length){var attrStyle=collapsedPanelsJQ.find(".edrawings-menu-panel-arrow-collapse").attr("style");if(!!attrStyle){eDwUIUtils.positionMenuPanelArrowCollapseButton(collapsedPanelsJQ,activeButtonsJQ)}}}}function l_fixMenuPanelInwardToolbar(){var panelsJQ=$(".edrawings-submenu.active:not(.edrawings-collapsed), .edrawings-hud-menu.active");panelsJQ.each((function(iIndex,iPanel){var panelJQ=$(iPanel);eDwUIUtils.fixMenuPanelInwardToolbar(panelJQ)}))}function l_scrollUIBar(iContentJQ,iDeactivateButtonClass,iDeactivateMenuClass,iScrollDist,iBarJQ){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iContentJQ&&iContentJQ.length>0))return[3,2];return[4,eDwUIUtils.deactivateUI(iDeactivateButtonClass,iDeactivateMenuClass)];case 1:_a.sent();eDwUIUtils.executeScrolling(iScrollDist,0,iContentJQ,iBarJQ);_a.label=2;case 2:return[2]}}))}))}return eDwUIBaseEventHandlers}));define("eDwUIBasePlugin",["require","exports","eDwUIHTMLEventMgr","eDwEventMgr","eDwEvents","eDwUIShortcutMenu","eDwUIUtils","utils"],(function(require,exports,eDwUIHTMLEventMgr,eDwEventMgr,eDwEvents_6,eDwUIShortcutMenu_3,eDwUIUtils,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.eDwUIBasePlugin=void 0;var eDwUIBasePlugin=function(){function eDwUIBasePlugin(iPluginGroupName,iViewer,iButtonInfo,iViewerFeatOpts){var _this=this;if(iViewer===void 0){iViewer=null}if(iButtonInfo===void 0){iButtonInfo=null}if(iViewerFeatOpts===void 0){iViewerFeatOpts=null}console.debugLog("UIPlugin","Constructed "+iPluginGroupName+" plugin.");this.mPluginGroupName=iPluginGroupName;this.mViewer=iViewer;this.mViewerFeatOpts=iViewerFeatOpts||iViewer&&iViewer.ViewerFeatureOpts;this.mUIHTMLEventMgr=new eDwUIHTMLEventMgr;this.mPluginDependencies=[];this.mPluginButtonInfo=iButtonInfo;if(iViewer){eDwUIShortcutMenu_3.eDwUIShortcutMenu.get().setPluginCheck(iPluginGroupName,(function(iPluginName){return _this.check(iPluginName)}))}}eDwUIBasePlugin.prototype.init=function(iPanelsToLoad){return __awaiter(this,void 0,void 0,(function(){var promises,_i,iPanelsToLoad_1,panelToLoad;return __generator(this,(function(_a){switch(_a.label){case 0:this.addAppObjEvent(eDwEvents_6.ActivateUIOpEvent,"onActivate",true);this.addAppObjEvent(eDwEvents_6.DeactivateUIOpEvent,"onDeactivate",true);if(!iPanelsToLoad)return[3,2];promises=[];for(_i=0,iPanelsToLoad_1=iPanelsToLoad;_i-1?true:false};eDwUIBasePlugin.prototype.addEventHandlers=function(){};eDwUIBasePlugin.prototype.removeEventHandlers=function(){this.mUIHTMLEventMgr.removeAllEventHandlers()};eDwUIBasePlugin.prototype.onActivate=function(iButtonJQ){return this.isButtonForThisPlugin(iButtonJQ)};eDwUIBasePlugin.prototype.onDeactivate=function(iButtonJQ){return this.isButtonForThisPlugin(iButtonJQ)};eDwUIBasePlugin.prototype.addAppObjEvent=function(iAppEvent,iEventObjMethod,iAdd){var eventMgr=eDwEventMgr.get();var eventMgrMethod=iAdd?"addEventHandlerObj":"removeEventHandlerObj";eventMgr[eventMgrMethod](iAppEvent,this,iEventObjMethod)};eDwUIBasePlugin.prototype.loadPanel=function(iPanelID,iHTMLFileName){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.loadPanel(iPanelID,iHTMLFileName)];case 1:return[2,_a.sent()]}}))}))};Object.defineProperty(eDwUIBasePlugin.prototype,"PluginGroupName",{get:function(){return this.mPluginGroupName},enumerable:false,configurable:true});Object.defineProperty(eDwUIBasePlugin.prototype,"PluginButtonID",{get:function(){return this.mPluginButtonInfo?this.mPluginButtonInfo.ID:""},enumerable:false,configurable:true});Object.defineProperty(eDwUIBasePlugin.prototype,"Dependencies",{get:function(){return this.mPluginDependencies},enumerable:false,configurable:true});return eDwUIBasePlugin}();exports.eDwUIBasePlugin=eDwUIBasePlugin}));define("eDwUIDebugHTMLGenerator",["require","exports","eDwUIHTMLGenerator","eDwTypes"],(function(require,exports,eDwUIHTMLGenerator_1,eDwTypes_15){"use strict";var _a;var eDwUIDebugHTMLGenerator=function(_super){__extends(eDwUIDebugHTMLGenerator,_super);function eDwUIDebugHTMLGenerator(iViewer,iPanelUIID){var _this=_super.call(this,iViewer,iPanelUIID)||this;_this.mHCModel=iViewer.getModel().getHCModel();return _this}eDwUIDebugHTMLGenerator.prototype.getNodeFromID=function(iNodeID){return l_getHCNode(iNodeID)};eDwUIDebugHTMLGenerator.prototype.getPostSpanHTML=function(iAdditionalClasses){return""};eDwUIDebugHTMLGenerator.prototype.forNodeGetName=function(iNode){return this.mHCModel.getNodeName(l_getHCNode(iNode))||"unknown node name"};eDwUIDebugHTMLGenerator.prototype.forNodeGetID=function(iNode){return l_getHCNode(iNode)};eDwUIDebugHTMLGenerator.prototype.forNodeGetParentID=function(iNode){return this.mHCModel.getNodeParent(l_getHCNode(iNode))||NaN};eDwUIDebugHTMLGenerator.prototype.forNodeGetChildren=function(iNode){return this.mHCModel.getNodeChildren(l_getHCNode(iNode))};eDwUIDebugHTMLGenerator.prototype.forNodeHasChildren=function(iNode){return this.forNodeGetChildren(iNode).length>0};eDwUIDebugHTMLGenerator.prototype.forNodeGetDataAttributes=function(iNode){return _super.prototype.forNodeGetDataAttributes.call(this,iNode)};eDwUIDebugHTMLGenerator.prototype.forNodeGetElementContent=function(iNode){var _this=this;var nodeIDHC=this.forNodeGetID(iNode);(function(){return __awaiter(_this,void 0,void 0,(function(){var meshIDs,numMeshIDs;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.mHCModel.getMeshIds([nodeIDHC])];case 1:meshIDs=_a.sent();numMeshIDs=meshIDs.length;console.log("Node ID: "+nodeIDHC+" Num mesh IDs: "+numMeshIDs);return[2]}}))}))})();return this.forNodeGetName(iNode)+" ID: "+nodeIDHC+" TYPE: "+c_nodeTypes[this.mHCModel.getNodeType(nodeIDHC)]+" VISIBLE: "+this.mHCModel.getNodeVisibility(nodeIDHC)};eDwUIDebugHTMLGenerator.prototype.forNodeGetDisplayStateCSSClass=function(iNode){return"edrawings-body-visible"};return eDwUIDebugHTMLGenerator}(eDwUIHTMLGenerator_1.eDwUIHTMLGenerator);var c_nodeTypes=(_a={},_a[eDwTypes_15.HC.NodeType.AssemblyNode]="Assembly",_a[eDwTypes_15.HC.NodeType.Body]="Body",_a[eDwTypes_15.HC.NodeType.BodyInstance]="Body Instance",_a[eDwTypes_15.HC.NodeType.BrepBody]="BRep Body",_a[eDwTypes_15.HC.NodeType.CadView]="CAD View",_a[eDwTypes_15.HC.NodeType.DrawingSheet]="Drawing Sheet",_a[eDwTypes_15.HC.NodeType.Part]="Part",_a[eDwTypes_15.HC.NodeType.PartInstance]="Part Instance",_a[eDwTypes_15.HC.NodeType.Pmi]="PMI",_a[eDwTypes_15.HC.NodeType.PmiBody]="PMI Body",_a[eDwTypes_15.HC.NodeType.PointsBody]="Points Body",_a[eDwTypes_15.HC.NodeType.TessBody]="Tessellation Body",_a[eDwTypes_15.HC.NodeType.Unknown]="Unknown",_a[eDwTypes_15.HC.NodeType.ViewFrame]="View Frame",_a[eDwTypes_15.HC.NodeType.WireBody]="Wire Body",_a);function l_isHCNode(iNode){return!isNaN(iNode)}function l_getHCNode(iNode){if(!l_isHCNode(iNode)){throw new Error("Not an HC node:\n"+JSON.stringify(iNode))}return iNode}return eDwUIDebugHTMLGenerator}));define("eDwUIHTMLEventMgr",["require","exports","eDwUIUtils"],(function(require,exports,eDwUIUtils){"use strict";var eDwUIHTMLEventMgr=function(){function eDwUIHTMLEventMgr(){this.mEventHandlerData={}}eDwUIHTMLEventMgr.prototype.addDelegatedEventHandler=function(iElemSelector,iEventName,iEventHandler){if(!iElemSelector||!iEventName||!iEventHandler)return false;var selectors=iElemSelector.split(" ");if(selectors.length<2)return false;var ancestorElementID=selectors.shift();return this.commonAddEventHandler(ancestorElementID,iEventName,iEventHandler,selectors.join().replace(".",""))};eDwUIHTMLEventMgr.prototype.addEventHandler=function(iElemID,iEventName,iEventHandler){if(!iElemID||!iEventName||!iEventHandler)return false;return this.commonAddEventHandler(iElemID,iEventName,iEventHandler)};eDwUIHTMLEventMgr.prototype.removeAllEventHandlers=function(){for(var eventName in this.mEventHandlerData){if(this.mEventHandlerData.hasOwnProperty(eventName)){var handlersOfEvent=this.mEventHandlerData[eventName];for(var elemID in handlersOfEvent){if(handlersOfEvent.hasOwnProperty(elemID)){this.removeEventHandlersByID(elemID,eventName,handlersOfEvent)}}delete this.mEventHandlerData[eventName]}}this.mEventHandlerData={}};eDwUIHTMLEventMgr.prototype.removeEventHandlers=function(iElemID,iEventName){var handlersRemoved=false;if(this.mEventHandlerData.hasOwnProperty(iEventName)){var handlersOfEvent=this.mEventHandlerData[iEventName];if(handlersOfEvent.hasOwnProperty(iElemID)){handlersRemoved=this.removeEventHandlersByID(iElemID,iEventName,handlersOfEvent)}}return handlersRemoved};eDwUIHTMLEventMgr.prototype.commonAddEventHandler=function(iElemID,iEventName,iEventHandler,iElemClasses){if(iElemClasses===void 0){iElemClasses=""}if(!iElemID)return false;var elements=[];if(iElemID==="window")elements.push(window);else if(iElemID==="document")elements.push(document);else elements=$(iElemID).toArray();if(!elements.length)return false;var handlersOfEvent=this.mEventHandlerData[iEventName];if(!handlersOfEvent){handlersOfEvent=this.mEventHandlerData[iEventName]={}}var elemHandlers=handlersOfEvent[iElemID];if(!elemHandlers){elemHandlers=handlersOfEvent[iElemID]={MainDispatcher:null,Handlers:[]}}if(elemHandlers.MainDispatcher){for(var _i=0,elements_1=elements;_i-1||highlight===""?"":" edrawings-list-option";var currOffset=utils.isNaN(iLeftPaddingInPX)?this.mInitialLeftPaddingInPX+"px":iLeftPaddingInPX+"px";var generatedHTML="
";generatedHTML+=this.getPreSpanHTML(iNode,additionalClasses,expanded,iIgnoreChildren);generatedHTML+=""+this.forNodeGetElementContent(iNode)+"";generatedHTML+=this.getPostSpanHTML(nonRootClass+" "+additionalClasses);generatedHTML+="
";return generatedHTML};eDwUIHTMLGenerator.prototype.generateHTML=function(iAdditionalClasses){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){return[2,""]}))}))};eDwUIHTMLGenerator.prototype.getNodeFromID=function(iNodeID){var modelViews=this.mViewer.getModel().getModelViews();for(var _i=0,modelViews_5=modelViews;_i
";return generatedHTML};eDwUIHTMLGenerator.prototype.getPostSpanHTML=function(iAdditionalClasses){return"
"};eDwUIHTMLGenerator.prototype.computeOffset=function(iLeftPaddingInPX){if(iLeftPaddingInPX===void 0){iLeftPaddingInPX=NaN}return utils.isNaN(iLeftPaddingInPX)?this.mInitialLeftPaddingInPX:iLeftPaddingInPX+this.mLeftPaddingInPX};eDwUIHTMLGenerator.prototype.forNodeGetName=function(iNode){return l_getHierarchyNode(iNode).Name};eDwUIHTMLGenerator.prototype.forNodeGetID=function(iNode){return l_getHierarchyNode(iNode).HOOPSID};eDwUIHTMLGenerator.prototype.forNodeGetParentID=function(iNode){var parentHierNode=l_getHierarchyNode(iNode).Parent;return parentHierNode?parentHierNode.HOOPSID:NaN};eDwUIHTMLGenerator.prototype.forNodeGetChildren=function(iNode){var childrenObj=l_getHierarchyNode(iNode).getChildrenAndKeys();return Object.keys(childrenObj).map((function(key){return childrenObj[key]}))};eDwUIHTMLGenerator.prototype.forNodeHasChildren=function(iNode){return this.forNodeGetChildren(iNode).length>0};eDwUIHTMLGenerator.prototype.forNodeGetDataAttributes=function(iNode){var parentNodeID=this.forNodeGetParentID(iNode);return" data-hoopsid='"+this.forNodeGetID(iNode)+"' "+(parentNodeID!==undefined?"data-hoopsparentid='"+parentNodeID+"' ":"")};eDwUIHTMLGenerator.prototype.forNodeGetElementContent=function(iNode){return this.forNodeGetName(iNode)};eDwUIHTMLGenerator.prototype.forNodeGetDisplayStateCSSClass=function(iNode){return eDwUIHTMLGenerator.getDisplayStateCSSClass(l_getHierarchyNode(iNode))};return eDwUIHTMLGenerator}();exports.eDwUIHTMLGenerator=eDwUIHTMLGenerator;function l_getHierarchyNode(iNode){if(!eDwHierarchyNode.isHierarchyNode(iNode)){throw new Error("Not a hierarchy node:\n"+JSON.stringify(iNode))}return iNode}}));define("eDwUIHierNodeVisMenuItemsPlugin",["require","exports","eDwCommandMgr","eDwSetHierNodeAttribsCmd","eDwShowOnlyCmd","eDwUIUtils","eDwEventMgr","eDwUIShortcutMenu","eDwKeyMgr","eDwEvents","eDwTypes","eDwUIBasePlugin","utils"],(function(require,exports,eDwCommandMgr,eDwSetHierNodeAttribsCmd,eDwShowOnlyCmd,eDwUIUtils,eDwEventMgr,eDwUIShortcutMenu_4,eDwKeyMgr_4,eDwEvents_7,eDwTypes_16,eDwUIBasePlugin_1,utils){"use strict";var eDwUIHierNodeVisMenuItemPlugin=function(_super){__extends(eDwUIHierNodeVisMenuItemPlugin,_super);function eDwUIHierNodeVisMenuItemPlugin(iViewer,iViewerFeatOpts){return _super.call(this,"HideShow",iViewer)||this}eDwUIHierNodeVisMenuItemPlugin.prototype.init=function(){return __awaiter(this,void 0,void 0,(function(){function isNotPartModel(iViewer){return!iViewer.getModel().isPart()}var shortcutMenu,isVisibleForASMAndDRW,isVisibleForASM,isVisibleNonRootForASMAndDRW;var _this=this;return __generator(this,(function(_a){_super.prototype.init.call(this);shortcutMenu=eDwUIShortcutMenu_4.eDwUIShortcutMenu.get();if(!shortcutMenu.isEmpty()){shortcutMenu.addMenuSeparator(this.PluginGroupName)}isVisibleForASMAndDRW=function(iViewer,iIsSelected){return iIsSelected&&isNotPartModel(iViewer)};isVisibleForASM=function(iViewer,iIsSelected){return iIsSelected&&iViewer.getModel().isAssembly()};isVisibleNonRootForASMAndDRW=function(iViewer,iIsSelected){var model=iViewer.getModel();var modelViewHierNode=model.getActiveModelView().Hierarchy;var lastSelHierNode=iViewer.SelectionMgr.getLastSelHierarchyNode();return iIsSelected&&(model.isDrawing()||model.isAssembly()&&modelViewHierNode!==lastSelHierNode.Parent)};shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-hide-show",(function(iEvent,iUIItemJQ,iArg){var selMgr=_this.mViewer.SelectionMgr;var selHierNodes=selMgr.getSelHierarchyNodes();if(selHierNodes&&selHierNodes.length){(function(){return __awaiter(_this,void 0,void 0,(function(){var attrib,selHideShowCmd;return __generator(this,(function(_a){switch(_a.label){case 0:attrib={Visible:!selHierNodes[0].getAttribs().Visible};selHideShowCmd=new eDwSetHierNodeAttribsCmd(this.mViewer,selHierNodes,attrib);return[4,eDwCommandMgr.get().run(selHideShowCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}eDwUIShortcutMenu_4.eDwUIShortcutMenu.hide()}),isVisibleForASMAndDRW);shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-transp-solid",(function(iEvent,iUIItemJQ,iArg){(function(){return __awaiter(_this,void 0,void 0,(function(){var selMgr,selHierNodes,attrib,selTransSolidCmd;return __generator(this,(function(_a){switch(_a.label){case 0:selMgr=this.mViewer.SelectionMgr;selHierNodes=selMgr.getSelHierarchyNodes();if(!(selHierNodes&&selHierNodes.length))return[3,2];attrib={Opaque:!selHierNodes[0].getAttribs().Opaque};selTransSolidCmd=new eDwSetHierNodeAttribsCmd(this.mViewer,selHierNodes,attrib);return[4,eDwCommandMgr.get().run(selTransSolidCmd,"commit")];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))})();eDwUIShortcutMenu_4.eDwUIShortcutMenu.hide()}),isVisibleForASM);shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-isolate",(function(iEvent,iUIItemJQ,iArg){(function(){return __awaiter(_this,void 0,void 0,(function(){var selMgr,showOnlyCmd;return __generator(this,(function(_a){switch(_a.label){case 0:selMgr=this.mViewer.SelectionMgr;showOnlyCmd=new eDwShowOnlyCmd(this.mViewer,selMgr.getSelHierarchyNodes());return[4,eDwCommandMgr.get().run(showOnlyCmd,"commit")];case 1:_a.sent();return[2]}}))}))})();eDwUIShortcutMenu_4.eDwUIShortcutMenu.hide()}),isVisibleNonRootForASMAndDRW);shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-show-all",(function(iEvent,iUIItemJQ,iArg){(function(){return __awaiter(_this,void 0,void 0,(function(){var showAllCmd;return __generator(this,(function(_a){switch(_a.label){case 0:showAllCmd=new eDwShowOnlyCmd(this.mViewer);return[4,eDwCommandMgr.get().run(showAllCmd,"commit")];case 1:_a.sent();return[2]}}))}))})();eDwUIShortcutMenu_4.eDwUIShortcutMenu.hide()}),isNotPartModel);this.mUIHTMLEventMgr.addDelegatedEventHandler("document .edrawings-submenu-list-item-button","click",(function(iEvent){console.debugLog("UIPlugin","HideShow menu button click");var selected=false;var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);var parentJQ=targetJQ.parent();eDwUIUtils.scrollToTarget(parentJQ);var selIDHC=eDwUIUtils.getIDHC(parentJQ);if(!isNaN(selIDHC)){var existingIdx=_this.mViewer.SelectionMgr.getSelectedNodeIDIndex(selIDHC);selected=existingIdx>-1?true:_this.mViewer.SelectionMgr.selectByID(selIDHC)}if(selected){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.fireEvent(iEvent,eDwEvents_7.RightClickEvent)];case 1:_a.sent();return[2]}}))}))})()}}));console.debugLog("UIPlugin","Added HideShow click event handler");this.mUIHTMLEventMgr.addDelegatedEventHandler("document .edrawings-submenu-list-item","mouseup",(function(iEvent){console.debugLog("UIPlugin","HideShow menu mouseup");var eventJQ=$(iEvent);var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.scrollToTarget(targetJQ);if(!targetJQ||!targetJQ.length||!eventJQ||!eventJQ.length||targetJQ.hasClass("edrawings-root")||targetJQ.hasClass("edrawings-tree-arrow")||targetJQ.hasClass("edrawings-tree-expanded")||targetJQ.hasClass("edrawings-tree-icon")){return}if(!targetJQ.hasClass("edrawings-submenu-list-item"))return;var mouseEvent=iEvent;var pressedRMB=eDwKeyMgr_4.eDwKeyMgr.isRMBPressed(mouseEvent);var selected=false;var selIDHC=eDwUIUtils.getIDHC(targetJQ);if(utils.isNumber(selIDHC)){if(!eDwKeyMgr_4.eDwKeyMgr.get().isDown("Shift")){selected=_this.mViewer.SelectionMgr.selectByID(selIDHC)}else{var selector=".edrawings-submenu-list-item"+".edrawings-list-selected:has([data-hoopsid])";var filter=".edrawings-submenu-list-item:has([data-hoopsid])";var collectionPrevJQ=targetJQ.prevUntil(selector,filter);if(collectionPrevJQ.length===0||collectionPrevJQ.last().prev(selector).length===0){collectionPrevJQ=$([])}var collectionNextJQ=targetJQ.nextUntil(selector,filter);if(collectionNextJQ.length===0||collectionNextJQ.last().next(selector).length===0){collectionNextJQ=$([])}var collectionJQ=$([]).add(collectionPrevJQ).add(targetJQ).add(collectionNextJQ);collectionJQ.each((function(iIdx,iElement){var elementJQ=$(iElement);var selIDHC=eDwUIUtils.getIDHC(elementJQ);_this.mViewer.SelectionMgr.selectByID(selIDHC)}));selected=true;iEvent.preventDefault()}}else{selected=!targetJQ.hasClass("edrawings-list-selected");targetJQ[selected?"addClass":"removeClass"]("edrawings-list-selected")}(function(){return __awaiter(_this,void 0,void 0,(function(){var eventMgr,onSelectDoRMB;var _this=this;return __generator(this,(function(_a){eventMgr=eDwEventMgr.get();onSelectDoRMB=function(iViewer){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:eventMgr.removeEventHandlerFunc(eDwEvents_7.SelectEvent,"onSelectDoRMB");return[4,this.fireEvent(iEvent,eDwEvents_7.RightClickEvent)];case 1:_a.sent();return[2]}}))}))};if(selected&&pressedRMB){eventMgr.addEventHandlerFunc(eDwEvents_7.SelectEvent,onSelectDoRMB)}return[2]}))}))})()}));console.debugLog("UIPlugin","Added HideShow mouseup event handler");return[2]}))}))};eDwUIHierNodeVisMenuItemPlugin.prototype.check=function(iPluginName){return _super.prototype.check.call(this,iPluginName)||iPluginName===undefined};eDwUIHierNodeVisMenuItemPlugin.prototype.fireEvent=function(iEvent,iAppEvent){return __awaiter(this,void 0,void 0,(function(){var screenPos;return __generator(this,(function(_a){switch(_a.label){case 0:if(!iEvent||!iAppEvent||!this.mViewer)return[2];if(!(iAppEvent===eDwEvents_7.RightClickEvent))return[3,3];if(!utils.isOfType(iEvent,"clientX"))return[3,2];screenPos=new eDwTypes_16.HC.Point2(iEvent.clientX,iEvent.clientY);return[4,eDwEventMgr.get().fireEvent(iAppEvent,this.mViewer,screenPos,$(iEvent.target),this.PluginGroupName)];case 1:_a.sent();_a.label=2;case 2:return[3,5];case 3:if(!(iAppEvent===eDwEvents_7.UnselectEvent))return[3,5];return[4,eDwEventMgr.get().fireEvent(iAppEvent,this.mViewer,[])];case 4:_a.sent();_a.label=5;case 5:return[2]}}))}))};return eDwUIHierNodeVisMenuItemPlugin}(eDwUIBasePlugin_1.eDwUIBasePlugin);return eDwUIHierNodeVisMenuItemPlugin}));define("eDwUILayerHTMLGenerator",["require","exports","eDwUIHTMLGenerator","eDwLayer","utils"],(function(require,exports,eDwUIHTMLGenerator_2,eDwLayer,utils){"use strict";var eDwUILayerHTMLGenerator=function(_super){__extends(eDwUILayerHTMLGenerator,_super);function eDwUILayerHTMLGenerator(iViewer,iPanelUIID){return _super.call(this,iViewer,iPanelUIID)||this}eDwUILayerHTMLGenerator.prototype.generateHTML=function(iAdditionalClasses){return __awaiter(this,void 0,void 0,(function(){var generatedHTML,layers,_i,layers_2,layer;return __generator(this,(function(_a){generatedHTML="";layers=this.mViewer.getModel().getLayers();if(layers.length){generatedHTML+="
"+" "+""+"Name
"+"
"}for(_i=0,layers_2=layers;_i"};eDwUILayerHTMLGenerator.prototype.getPostSpanHTML=function(iAdditionalClasses){return""};eDwUILayerHTMLGenerator.prototype.shouldIncludeNode=function(iLayer){return true};eDwUILayerHTMLGenerator.prototype.forNodeGetName=function(iNode){return l_getLayer(iNode).getName()};eDwUILayerHTMLGenerator.prototype.forNodeGetID=function(iNode){return l_getLayer(iNode).getIDHC()};eDwUILayerHTMLGenerator.prototype.forNodeGetParentID=function(iNode){return NaN};eDwUILayerHTMLGenerator.prototype.forNodeGetChildren=function(iNode){var childNodes=[];if(this.mViewer.ViewerFeatureOpts.Debug){childNodes=l_getLayer(iNode).getNodeIDsHC()}return childNodes};eDwUILayerHTMLGenerator.prototype.forNodeGetDataAttributes=function(iNode){return""};eDwUILayerHTMLGenerator.prototype.forNodeGetDisplayStateCSSClass=function(iNode){return""};return eDwUILayerHTMLGenerator}(eDwUIHTMLGenerator_2.eDwUIHTMLGenerator);function l_getLayer(iNode){if(!utils.isInstanceOf(iNode,eDwLayer)){throw new Error("Not a layer:\n"+JSON.stringify(iNode))}return iNode}return eDwUILayerHTMLGenerator}));define("eDwUIMessageReporter",["require","exports","eDwUIUtils","utils"],(function(require,exports,eDwUIUtils,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.showMessageInDebugPanel=exports.showMessagePanelFromCSScontent=exports.showResultPanel=exports.showServerLoadErrorPanel=void 0;function showServerLoadErrorPanel(iServerID,iModelCacheName){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_addParagraphToPanelText({},"edrawings-server-load-failure-1")];case 1:_a.sent();return[4,l_showServerError(iServerID,iModelCacheName)];case 2:_a.sent();return[2]}}))}))}exports.showServerLoadErrorPanel=showServerLoadErrorPanel;function showResultPanel(iResult){return __awaiter(this,void 0,void 0,(function(){var showButtons,_a;return __generator(this,(function(_b){switch(_b.label){case 0:showButtons=false;if(!utils.isOfType(iResult,"ServerID"))return[3,2];return[4,l_showConversionResultPanel(iResult)];case 1:showButtons=_b.sent();return[3,5];case 2:_a=iResult.ErrorCode;return[3,3];case 3:return[4,l_showPanelGeneric(iResult)];case 4:showButtons=_b.sent();return[3,5];case 5:return[2,showButtons]}}))}))}exports.showResultPanel=showResultPanel;function showMessagePanelFromCSScontent(iTextClass,iOptions){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_addParagraphToPanelText(!!iOptions?iOptions:{},iTextClass)];case 1:_a.sent();return[4,l_showMessagePanel()];case 2:_a.sent();return[2]}}))}))}exports.showMessagePanelFromCSScontent=showMessagePanelFromCSScontent;function showMessageInDebugPanel(iMsg){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_showMessagePanel(iMsg,true,true)];case 1:_a.sent();return[2]}}))}))}exports.showMessageInDebugPanel=showMessageInDebugPanel;function l_showConversionResultPanel(iResult){return __awaiter(this,void 0,void 0,(function(){var showButtons,_a;return __generator(this,(function(_b){switch(_b.label){case 0:showButtons=l_shouldShowButtons();_a=iResult.ErrorCode;switch(_a){case"URLNotAccessible":return[3,1];case"UnsupportedFileType":return[3,4];case"UnknownLicenseError":return[3,7];case"LicenseVersionMismatch":return[3,10];case"NoMoreLicenses":return[3,13];case"CannotConnectToLicenseServer":return[3,16];case"LicenseExpired":return[3,19];case"UnknownError":return[3,22]}return[3,25];case 1:return[4,l_addParagraphToPanelText({"data-file-url":iResult.ErrorData[0]},"edrawings-server-url-inaccessible")];case 2:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-error-title edrawings-dialog-no-close")];case 3:_b.sent();return[3,29];case 4:return[4,l_addParagraphToPanelText({"data-file":iResult.FileName},"edrawings-server-unsupported-file-type")];case 5:_b.sent();return[4,l_showMessagePanel("",true,showButtons,"edrawings-error-title edrawings-dialog-no-close")];case 6:_b.sent();return[3,29];case 7:return[4,l_addParagraphToPanelText({},"edrawings-unknown-license-error")];case 8:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 9:_b.sent();return[3,29];case 10:return[4,l_addParagraphToPanelText({},"edrawings-license-version-mismatch-error")];case 11:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 12:_b.sent();return[3,29];case 13:return[4,l_addParagraphToPanelText({},"edrawings-no-licenses-error")];case 14:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 15:_b.sent();return[3,29];case 16:return[4,l_addParagraphToPanelText({},"edrawings-license-server-connection-error")];case 17:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 18:_b.sent();return[3,29];case 19:return[4,l_addParagraphToPanelText({},"edrawings-license-expired-error")];case 20:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 21:_b.sent();return[3,29];case 22:return[4,l_addParagraphToPanelText({},"edrawings-unknown-error")];case 23:_b.sent();return[4,l_showServerError(iResult.ServerID,iResult.ModelCacheName)];case 24:_b.sent();return[3,29];case 25:if(!l_isDebug())return[3,27];return[4,l_showPanelGeneric(iResult)];case 26:_b.sent();return[3,28];case 27:showServerLoadErrorPanel(iResult.ServerID,iResult.ModelCacheName);_b.label=28;case 28:return[3,29];case 29:return[2,showButtons]}}))}))}function l_showPanelGeneric(iResult){return __awaiter(this,void 0,void 0,(function(){var _a,msg,classes,_i,_b,data;return __generator(this,(function(_c){switch(_c.label){case 0:_a=iResult.ErrorCode;switch(_a){case"AJAXFailure":return[3,1];case"IncompleteFileProcessing":return[3,4];case"ModelLoadInViewerFailed":return[3,7]}return[3,11];case 1:return[4,l_addParagraphToPanelText({},"edrawings-server-ajax-failure")];case 2:_c.sent();return[4,l_showMessagePanel("",true,false,"edrawings-error-title edrawings-dialog-no-close")];case 3:_c.sent();return[3,13];case 4:return[4,l_addParagraphToPanelText({},"edrawings-unable-process-file")];case 5:_c.sent();return[4,l_showMessagePanel("",true,true,"edrawings-error-title edrawings-dialog-no-close")];case 6:_c.sent();return[3,13];case 7:return[4,l_addParagraphToPanelText({"data-error-message":iResult.ErrorData[0]},"edrawings-viewer-load-failure")];case 8:_c.sent();return[4,l_addParagraphToPanelText({"data-model-cache-name":iResult.ErrorData[1]},"edrawings-server-load-failure-3")];case 9:_c.sent();return[4,l_showMessagePanel("",true,true,"edrawings-error-title edrawings-dialog-no-close")];case 10:_c.sent();return[3,13];case 11:msg="";classes="edrawings-dialog-no-close";switch(iResult.ErrorCode){case"Error":classes+=" edrawings-error-title";break;case"Warn":classes+=" edrawings-warn-title";break;default:classes+=" edrawings-info-title";msg+="
"+iResult.ErrorCode+"
";break}for(_i=0,_b=iResult.ErrorData;_i<_b.length;_i++){data=_b[_i];msg+="
"+data+"
"}return[4,l_showMessagePanel(msg,true,false,classes)];case 12:_c.sent();return[3,13];case 13:return[2,l_shouldShowButtons()]}}))}))}function l_addParagraphToPanelText(iOptions,iTextClass){return __awaiter(this,void 0,void 0,(function(){function getValue(iValue){return typeof iValue==="string"?"'"+iValue+"'":iValue.toString()}var msgPanelTextJQ,div,optionKeys,_i,optionKeys_1,optionKey;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_getDialogPanelTextElem()];case 1:msgPanelTextJQ=_a.sent();div="
";msgPanelTextJQ.append(div);return[2]}}))}))}function l_showMessagePanel(iMsg,iModal,iShowButtons,iDlgClasses){if(iMsg===void 0){iMsg=""}if(iModal===void 0){iModal=true}if(iShowButtons===void 0){iShowButtons=false}if(iDlgClasses===void 0){iDlgClasses="edrawings-info-title edrawings-dialog-no-close"}return __awaiter(this,void 0,void 0,(function(){var msgPanelTextJQ,opts,msgPanel,msgPanelTitleJQ,text;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_getDialogPanelTextElem()];case 1:msgPanelTextJQ=_a.sent();if(iMsg)msgPanelTextJQ.html(iMsg);opts={modal:iModal,width:window.innerWidth*.6,minWidth:200,dialogClass:iDlgClasses,closeOnEscape:iShowButtons};msgPanel=$("#edrawings-dialog-panel");if(iShowButtons){$.extend(opts,{buttons:{Ok:function(){msgPanel.dialog("close")}},close:function(iEvent){$(".edrawings-dialog-content").remove()}})}$.extend(opts,{beforeClose:function(iEvent){eDwUIUtils.getAsJQueryObj(iEvent.target).closest(".ui-dialog").siblings(".ui-widget-overlay").addBack().off("drop")},open:function(iEvent){eDwUIUtils.getAsJQueryObj(iEvent.target).closest(".ui-dialog").siblings(".ui-widget-overlay").addBack().on("drop",(function(iEvent2){iEvent2.preventDefault();iEvent2.stopPropagation()}))}});eDwUIUtils.hide("#WaitBanner",true);msgPanel.dialog(opts);if(iDlgClasses.indexOf("edrawings")>-1&&iDlgClasses.indexOf("title")>-1){msgPanelTitleJQ=msgPanel.prev().find(".ui-dialog-title");text="";if(msgPanelTitleJQ){text=msgPanelTitleJQ.css("content").replace(/^['"]+|\\|(;\s?})+|['"]$/g,"")}msgPanelTitleJQ.text(text)}return[2]}}))}))}function l_shouldShowButtons(){var viewerHTMLElem=$(eDwUIUtils.getViewerElementID()).get(0);return $._data(viewerHTMLElem,"events").dragover}function l_isDebug(){var viewerFeatOpts={Debug:false};eDwUIUtils.getRequestedQueryStringParams(location.href,viewerFeatOpts,false);return viewerFeatOpts.Debug||false}function l_getDialogPanelTextElem(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!!lDialogTextJQ.length)return[3,2];return[4,eDwUIUtils.loadPanel("#edrawings-dialog-panel","dialogpanel.html")];case 1:_a.sent();lDialogTextJQ=$("#edrawings-dialog-panel-text");_a.label=2;case 2:return[2,lDialogTextJQ]}}))}))}function l_showServerError(iServerID,iModelCacheName){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_addParagraphToPanelText({"data-server-id":iServerID},"edrawings-server-load-failure-2")];case 1:_a.sent();return[4,l_addParagraphToPanelText({"data-model-cache-name":iModelCacheName},"edrawings-server-load-failure-3")];case 2:_a.sent();return[4,l_showMessagePanel("",true,false,"edrawings-error-title edrawings-dialog-no-close")];case 3:_a.sent();return[2]}}))}))}var lDialogTextJQ=$()}));define("eDwUIModelViewHTMLGenerator",["require","exports","eDwUIHTMLGenerator"],(function(require,exports,eDwUIHTMLGenerator_3){"use strict";var eDwUIModelViewHTMLGenerator=function(_super){__extends(eDwUIModelViewHTMLGenerator,_super);function eDwUIModelViewHTMLGenerator(iViewer,iPanelUIID){return _super.call(this,iViewer,iPanelUIID)||this}eDwUIModelViewHTMLGenerator.prototype.generateHTML=function(iAdditionalClasses){return __awaiter(this,void 0,void 0,(function(){var generatedHTML,modelViews,_i,modelViews_6,modelView,modelViewHierNode;return __generator(this,(function(_a){generatedHTML="";modelViews=this.mViewer.getModel().getModelViews();for(_i=0,modelViews_6=modelViews;_iparentRect.Width){posx=parentRect.Width-menuWidth-5}if(posy+menuHeight>parentRect.Height){posy=parentRect.Height-menuHeight-5}menuJQ.css({top:posy+"px",left:posx+"px"});eDwUIUtils.hide(c_menuID,false)};eDwUIShortcutMenu.hide=function(){eDwUIUtils.hide(c_menuID,true);eDwUIUtils.hide(c_menuID+" ul",true);eDwUIUtils.hide(c_menuID+" li",true)};return eDwUIShortcutMenu}();exports.eDwUIShortcutMenu=eDwUIShortcutMenu;var c_menuID="#edrawings-shortcut-menu";var c_divider="-";var c_dummyText="dummy";function l_validatePlugin(iPluginName){if(!iPluginName){console.debugLog("shortcutmenu","Missing menu group name.");throw new eDwGenericError("Missing menu group name.")}}function l_insertInMenu(iElementStyle,iPluginName,iCSSClassName,iParentMenuJQ){l_validatePlugin(iPluginName);var text=iCSSClassName==="edrawings-shortcut-divider"?c_divider:c_dummyText;var menuElemJQ=$("<"+iElementStyle+" class ='"+iCSSClassName+" edrawings-shortcut-menu-text'>"+text+"");menuElemJQ.attr("plugin-name",iPluginName);if(!menuElemJQ.attr("id")){menuElemJQ.attr("id",iCSSClassName+"-id")}iParentMenuJQ.append(menuElemJQ);iParentMenuJQ.menu("refresh");if(text===c_dummyText)menuElemJQ.text("");return menuElemJQ}function l_removeFromMenu(iParentMenuSelector,iPluginName,iMenuItemCSSClassName){return $(iParentMenuSelector).find("[plugin-name='"+iPluginName+"']"+iMenuItemCSSClassName).remove()}function l_getNumVisMenuItems(iPluginName){var menuItems=$(c_menuID+" li");var hiddenMenuItems=$(c_menuID+" li.edrawings-ui-hide");if(iPluginName){menuItems=menuItems.find("[plugin-name='"+iPluginName+"']");hiddenMenuItems=hiddenMenuItems.find("[plugin-name='"+iPluginName+"']")}return menuItems.length-hiddenMenuItems.length}function l_shouldBeVisible(iViewer,iArg){return typeof iArg==="boolean"?false:true}}));define("eDwUITableHTMLGenerator",["require","exports","eDwUIHTMLGenerator"],(function(require,exports,eDwUIHTMLGenerator_5){"use strict";var eDwUITableHTMLGenerator=function(_super){__extends(eDwUITableHTMLGenerator,_super);function eDwUITableHTMLGenerator(iViewer,iPanelUIID){return _super.call(this,iViewer,iPanelUIID)||this}eDwUITableHTMLGenerator.prototype.generateHTML=function(iAdditionalClasses){return __awaiter(this,void 0,void 0,(function(){var generatedHTML,activeModelView,tableNodes,_i,tableNodes_1,tableNode;return __generator(this,(function(_a){generatedHTML="";activeModelView=this.mViewer.getModel().getActiveModelView();if(activeModelView&&activeModelView.Hierarchy){tableNodes=activeModelView.Hierarchy.find("Category","table");for(_i=0,tableNodes_1=tableNodes;_i0))}}exports.searchPanelList=searchPanelList;function updateModelViewTargets(iModelView,iFilter,iTargetClass){var targetSpans=$("span[data-hoopsid='"+iModelView.Hierarchy.HOOPSID+"']");if(targetSpans.length>0){var viewTab=targetSpans.filter(iFilter);if(viewTab.length>0){var parentJQ=viewTab.parent();parentJQ.addClass(iTargetClass);scrollToTarget(parentJQ)}}}exports.updateModelViewTargets=updateModelViewTargets;function switchModelView(iEvent,iViewer,iClassForNodeID){var _this=this;if(!iEvent)return;var targetJQ=getAsJQueryObj(iEvent.target);if(!targetJQ.length)return;var modelViewDivJQ=$(iClassForNodeID,targetJQ);if(!modelViewDivJQ.length)return;var model=iViewer.getModel();var nodeIDHC=parseInt(modelViewDivJQ.data("hoopsid"),10);var modelViewHierNode=model.getHierarchyNode(nodeIDHC);var newModelView=modelViewHierNode.getModelView();var currModelView=model.getActiveModelView();if(newModelView===currModelView)return;(function(){return __awaiter(_this,void 0,void 0,(function(){var changeModelViewCmd;return __generator(this,(function(_a){switch(_a.label){case 0:changeModelViewCmd=new eDwChangeModelViewCmd(iViewer,newModelView);return[4,eDwCommandMgr.get().run(changeModelViewCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}exports.switchModelView=switchModelView;function expandSelected(iViewer,iSelHierNode){var activeModelView=iViewer.getModel().getActiveModelView();function expandNode(iTargetJQ){if(!iTargetJQ.length)return;if(!iTargetJQ.hasClass("edrawings-tree-expanded")){var panelUIID=getUIPanelID(iTargetJQ);if(!$(panelUIID).is(":visible"))return;var gen=getUIGenerator(panelUIID);var offset=parseInt($(iTargetJQ).css("padding-left"),10);var nodeToExpand=parseInt(iTargetJQ.data("hoopsid"),10);var hierarchyNode=activeModelView.Nodes[nodeToExpand];var appendNode=iTargetJQ.closest(".edrawings-submenu-list-item");appendNode.after(gen.generateHTMLForChildNodes(hierarchyNode,false,offset));iTargetJQ.addClass("edrawings-tree-expanded")}}var hierNode=iSelHierNode.Parent;while(hierNode&&hierNode!==activeModelView.Hierarchy){var expandNodes=$('[data-hoopsid="'+hierNode.HOOPSID+'"][class~="edrawings-tree-arrow"]');$.each(expandNodes,(function(iIdx,iTarget){expandNode($(iTarget))}));hierNode=hierNode.Parent}}exports.expandSelected=expandSelected;function scrollToTreeNode(iSelHierNode,iSetSelected){var treeItem={node:$("span[data-hoopsid='"+iSelHierNode.HOOPSID+"']:not(.config-tab-text)"),ownerNode:$("div[data-hoopsid='"+iSelHierNode.HOOPSID+"']")};if(treeItem.ownerNode.length){var classAction_1=iSetSelected?"addClass":"removeClass";$.each(treeItem.node,(function(iIdx,iTarget){$(iTarget)[classAction_1]("edrawings-list-selected")}));$.each(treeItem.ownerNode,(function(iIdx,iTarget){var targetJQ=$(iTarget);targetJQ[classAction_1]("edrawings-list-selected");if(!targetJQ.hasClass("edrawings-submenu-list-item")){return}targetJQ.find(".edrawings-submenu-list-item-button")[classAction_1]("edrawings-list-option");var panel=targetJQ.closest(".edrawings-menu");var panelHiddenState=panel.is(":hidden");hide(panel.attr("id"),false);if(iSetSelected){scrollToTarget(targetJQ,panelHiddenState?"none":"slow")}hide(panel.attr("id"),panelHiddenState)}))}}exports.scrollToTreeNode=scrollToTreeNode;function addCloseEventHandler(iPanelID,iUIHTMLEventMgr){iUIHTMLEventMgr.addDelegatedEventHandler(iPanelID+" .edrawings-menu-close","click",(function(iEvent){hide(iPanelID,true)}))}exports.addCloseEventHandler=addCloseEventHandler;function deactivateMoveInput(iInputEventIDSuffix){$(document).off("mousemove"+iInputEventIDSuffix);$(document).off("mousedown"+iInputEventIDSuffix);$(document).off("mouseup"+iInputEventIDSuffix);$(document).off("click"+iInputEventIDSuffix)}exports.deactivateMoveInput=deactivateMoveInput;function loadComponentHTML(){return __awaiter(this,void 0,void 0,(function(){var loadPromises;return __generator(this,(function(_a){switch(_a.label){case 0:loadPromises=[];utils.appendToArray(loadPanel("#edrawings-sheet-tree-menu","sheetspanel.html"),loadPromises);utils.appendToArray(loadPanel("#edrawings-layer-control-menu","layerspanel.html"),loadPromises);utils.appendToArray(loadPanel("#edrawings-debug-menu","debugpanel.html"),loadPromises);return[4,Promise.all(loadPromises)];case 1:_a.sent();return[2]}}))}))}exports.loadComponentHTML=loadComponentHTML;function inhibitEventBehavior(iEvent){iEvent.preventDefault();iEvent.stopPropagation()}exports.inhibitEventBehavior=inhibitEventBehavior;function populateModelViewPanel(iViewer,iPanelUIID,iTextClass){return __awaiter(this,void 0,void 0,(function(){var listModelViewMenu,gen,_a,_b;return __generator(this,(function(_c){switch(_c.label){case 0:listModelViewMenu=$(iPanelUIID+" .edrawings-submenu-list");listModelViewMenu.empty();gen=getUIGenerator(iPanelUIID);_b=(_a=listModelViewMenu).append;return[4,gen.generateHTML(iTextClass)];case 1:_b.apply(_a,[_c.sent()]);return[2]}}))}))}exports.populateModelViewPanel=populateModelViewPanel;function addPanelModeEvents(iPanelID,iInputEventIDSuffix,iButtonID){var click="click"+iInputEventIDSuffix;$(document).on(click,iPanelID+" .edrawings-menu-panel-arrow-collapse",(function(iJQEvent){var msg="Panel resize: "+click;console.debugLog("UIPanelResize",msg);iJQEvent.preventDefault();var panelJQ=$(iPanelID);panelJQ.toggleClass("edrawings-collapsed");var activeButtonJQ=iButtonID?$(iButtonID):undefined;positionMenuPanelArrowCollapseButton(panelJQ,activeButtonJQ);iJQEvent.stopImmediatePropagation()}));var panelJQ=$(iPanelID);panelJQ.removeClass("edrawings-collapsed");l_setMenuPanelArrowCollapseButtonPosition(panelJQ);fixMenuPanelInwardToolbar(panelJQ)}exports.addPanelModeEvents=addPanelModeEvents;function getText(iElement){return $(iElement).text().trim()}exports.getText=getText;function getTarget(iTargetJQ){return iTargetJQ.hasClass("config-tab-text")?iTargetJQ.parent():iTargetJQ}exports.getTarget=getTarget;function getSpanText(iTargetJQ){var target=getTarget(iTargetJQ);if(!target.is("span")){target=target.find("span")}if(!target||!target.length)return"";return target[0].innerText}exports.getSpanText=getSpanText;function loadPanel(iElemOrClassID,iPanelHTML){return __awaiter(this,void 0,void 0,(function(){var loaded,iExcp_16;return __generator(this,(function(_a){switch(_a.label){case 0:if(!eDwServiceMgr.usesWebServices())return[2,false];loaded=false;_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,eDwServiceMgr.get().load(iElemOrClassID,iPanelHTML)];case 2:_a.sent();loaded=true;console.debugLog("PanelLoad","Loaded panel id = "+iElemOrClassID+" HTML file = "+iPanelHTML);return[3,4];case 3:iExcp_16=_a.sent();console.debugLog("PanelLoad","Failed to load "+iPanelHTML+": "+iExcp_16.message);return[3,4];case 4:return[2,loaded]}}))}))}exports.loadPanel=loadPanel;function hide(iSelector,iOff){var selJQ=$(iSelector);selJQ[iOff?"addClass":"removeClass"]("edrawings-ui-hide");return selJQ}exports.hide=hide;function getRequestedQueryStringParams(iURL,ioViewerFeatOpts,iWarnOfOtherParams){if(iWarnOfOtherParams===void 0){iWarnOfOtherParams=true}var hashes=iURL.slice(iURL.indexOf("?")+1).split("&");for(var i=0;i1){var strVal=hash[1];var val=strVal==="true"?true:strVal==="false"?false:strVal;if(ioViewerFeatOpts.hasOwnProperty(hash[0])){ioViewerFeatOpts[hash[0]]=val}else if(iWarnOfOtherParams){console.warn(hash[0]+" is not a valid query parameter.")}}}}exports.getRequestedQueryStringParams=getRequestedQueryStringParams;function getPosition(iTargetJQ){var ret={top:0,left:0};if(iTargetJQ)ret=iTargetJQ.position();return ret}exports.getPosition=getPosition;function scrollToTarget(iTargetJQ,iAnimationSpeed){if(iAnimationSpeed===void 0){iAnimationSpeed="slow"}var animationSpeed=iAnimationSpeed;var targetOffset=iTargetJQ.offset();var targetParentJQ=iTargetJQ.parent();if(targetParentJQ.length&&targetParentJQ[0]===$(document)[0]){return false}var targetParentOffset=targetParentJQ.offset();var updated=false;if(targetParentJQ[0].scrollWidth>targetParentJQ.width()){var targetParentPaddingLeft=parseInt(targetParentJQ.css("paddingLeft"));var diff=l_computeTargetMinimalAdjustment(targetOffset.left,parseInt(iTargetJQ.css("marginLeft"))+parseInt(iTargetJQ.css("borderLeftWidth"))+iTargetJQ[0].scrollWidth+parseInt(iTargetJQ.css("borderRightWidth"))+parseInt(iTargetJQ.css("marginRight")),targetParentOffset.left+parseInt(targetParentJQ.css("marginLeft"))+parseInt(targetParentJQ.css("borderLeftWidth"))+targetParentPaddingLeft,targetParentJQ[0].clientWidth-targetParentPaddingLeft-parseInt(targetParentJQ.css("paddingRight")));if(diff!==0){var pos=targetParentJQ.scrollLeft()+diff;if(Math.abs(diff)>targetParentJQ.width()){var targetJQpostionLeft=iTargetJQ.position().left;pos=targetParentJQ.scrollLeft()+targetJQpostionLeft}else{animationSpeed="none"}l_scrollToTarget(targetParentJQ,pos,animationSpeed,"scrollLeft");updated=true}}if(targetParentJQ[0].scrollHeight>targetParentJQ.height()){var targetParentPaddingTop=parseInt(targetParentJQ.css("paddingTop"));var diff=l_computeTargetMinimalAdjustment(targetOffset.top,parseInt(iTargetJQ.css("marginTop"))+parseInt(iTargetJQ.css("borderTopWidth"))+iTargetJQ[0].scrollHeight+parseInt(iTargetJQ.css("borderBottomWidth"))+parseInt(iTargetJQ.css("marginBottom")),targetParentOffset.top+parseInt(targetParentJQ.css("marginTop"))+parseInt(targetParentJQ.css("borderTopWidth"))+targetParentPaddingTop,targetParentJQ[0].clientHeight-targetParentPaddingTop-parseInt(targetParentJQ.css("paddingBottom")));if(diff!==0){var pos=targetParentJQ.scrollTop()+diff;if(Math.abs(diff)>targetParentJQ.height()){var targetJQpostionTop=iTargetJQ.position().top;pos=targetParentJQ.scrollTop()+targetJQpostionTop}else{animationSpeed="none"}l_scrollToTarget(targetParentJQ,pos,animationSpeed,"scrollTop");updated=true}}return updated}exports.scrollToTarget=scrollToTarget;function getIDHC(iTargetJQ){if(!iTargetJQ)return Number.NaN;return parseInt(iTargetJQ.data("hoopsid"),10)}exports.getIDHC=getIDHC;function activateUI(iButtonID,iPanelID){return __awaiter(this,void 0,void 0,(function(){var panelJQ,buttonJQ;return __generator(this,(function(_a){switch(_a.label){case 0:if(iPanelID){panelJQ=hide(iPanelID,false).addClass("active");fixMenuPanelInwardToolbar(panelJQ)}if(!iButtonID)return[3,2];buttonJQ=$(iButtonID);buttonJQ.addClass("active-button");scrollToTarget(buttonJQ,"none");return[4,eDwEventMgr.get().fireEvent(eDwEvents_9.ActivateUIOpEvent,buttonJQ)];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))}exports.activateUI=activateUI;function deactivateUI(iButtonCSSClassName,iPanelCSSClassName){if(iButtonCSSClassName===void 0){iButtonCSSClassName=""}if(iPanelCSSClassName===void 0){iPanelCSSClassName=""}return __awaiter(this,void 0,void 0,(function(){var activeButtonsJQ,panelsJQ;return __generator(this,(function(_a){switch(_a.label){case 0:activeButtonsJQ=$(iButtonCSSClassName+".active-button");if(!activeButtonsJQ.length)return[3,2];return[4,eDwEventMgr.get().fireEvent(eDwEvents_9.DeactivateUIOpEvent,activeButtonsJQ)];case 1:_a.sent();activeButtonsJQ.removeClass("active-button");_a.label=2;case 2:panelsJQ=hide(iPanelCSSClassName+".active",true).removeClass("active");panelsJQ.each((function(iIdx,iPanel){fixMenuPanelInwardToolbar($(iPanel),true)}));return[2,activeButtonsJQ]}}))}))}exports.deactivateUI=deactivateUI;function isIDInJQuery(iListJQ,iID){var inJQList=false;for(var key in iListJQ){if(iListJQ[key].id===iID){inJQList=true;break}}return inJQList}exports.isIDInJQuery=isIDInJQuery;function isStateOn(iID){return $(iID).hasClass("state-on-button")}exports.isStateOn=isStateOn;function resetToHomeView(iViewer){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){var resetCmd;return __generator(this,(function(_a){switch(_a.label){case 0:resetCmd=new eDwResetCmd(iViewer);return[4,eDwCommandMgr.get().run(resetCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}exports.resetToHomeView=resetToHomeView;function getViewerElementName(){return"edrawings-viewer"}exports.getViewerElementName=getViewerElementName;function getViewerElementID(){return"#"+getViewerElementName()}exports.getViewerElementID=getViewerElementID;function makeResult(iExcp){var result={ErrorCode:"UnknownError",ErrorData:[]};if(iExcp instanceof eDwResultError){result=iExcp.Result}else if(iExcp instanceof eDwAJAXError){result.ErrorCode=iExcp.ErrorCode;result.ErrorData=[iExcp.message]}else{result.ErrorCode=iExcp.name;result.ErrorData=[iExcp.message]}return result}exports.makeResult=makeResult;function viewFile(iModelName,iModelKey,iParams,iContainerName,iModelData){return __awaiter(this,void 0,void 0,(function(){function createViewer(iWebSocketEndpoint){if(iWebSocketEndpoint===""){return null}var streamAlways=iParams.StreamAlwaysConnected;var streamModes=eDwTypes_17.HC.StreamingMode;var webViewerInfo={};webViewerInfo.containerId=iContainerName;webViewerInfo.model=iModelKey;webViewerInfo.endpointUri=iWebSocketEndpoint;webViewerInfo.streamingMode=streamAlways?streamModes.Interactive:streamModes.All;webViewerInfo.streamingMode=iModelData?null:webViewerInfo.streamingMode;webViewerInfo.buffer=iModelData;webViewerInfo.boundingPreviewMode=eDwTypes_17.HC.BoundingPreviewMode.None;eDwEventMgr.get().addEventHandlerFunc(eDwEvents_9.GLContextLostEvent,c_onContextLost);var viewer=new eDwView(webViewerInfo,iParams);hide("#"+iContainerName,false);if(iModelName){$("#edrawings-filename-text").html(decodeURIComponent(iModelName))}var modelName=!iModelName&&iModelKey?iModelKey:iModelName;if(!modelName)return null;if(modelName.search(".zip")>-1){modelName=modelName.substring(0,modelName.length-4)}console.debugLog("ModelLoad","Created new edw viewer");return viewer}var wsEndPt,_a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!iModelData)return[3,1];_a=null;return[3,3];case 1:return[4,eDwServiceMgr.get().getWebSocketEndpoint(iModelKey,iParams.WebSocketEndpoint)];case 2:_a=_b.sent();_b.label=3;case 3:wsEndPt=_a;return[2,createViewer(wsEndPt)]}}))}))}exports.viewFile=viewFile;function fixMenuPanelInwardToolbar(iPanelJQ,iToClear){if(iToClear===void 0){iToClear=false}if(iToClear){iPanelJQ.removeClass("edrawings-collided");return}if(iPanelJQ.hasClass("edrawings-hud-menu")){var panel=iPanelJQ[0];if(panel.scrollHeight>panel.clientHeight){iPanelJQ.addClass("edrawings-collided")}else{iPanelJQ.removeClass("edrawings-collided")}}else if(iPanelJQ.hasClass("edrawings-submenu")){var wrapperJQ=iPanelJQ.find(".edrawings-menu-panel-wrapper");var wasCollided=iPanelJQ.hasClass("edrawings-collided");if(iPanelJQ[0].scrollHeight>iPanelJQ[0].clientHeight&&iPanelJQ[0].scrollHeight-iPanelJQ[0].clientHeight>1||wrapperJQ[0].scrollHeight>wrapperJQ[0].clientHeight&&wrapperJQ[0].scrollHeight-wrapperJQ[0].clientHeight>1){if(!wasCollided){iPanelJQ.addClass("edrawings-collided")}iPanelJQ.addClass("edrawings-wiggle");setTimeout((function(){iPanelJQ.removeClass("edrawings-wiggle")}),0)}else{iPanelJQ.removeClass("edrawings-collided");if(wasCollided){fixMenuPanelInwardToolbar(iPanelJQ)}}}}exports.fixMenuPanelInwardToolbar=fixMenuPanelInwardToolbar;function positionMenuPanelArrowCollapseButton(iPanelJQ,iButtonJQ){if(!iPanelJQ.hasClass("edrawings-collapsed")){l_setMenuPanelArrowCollapseButtonPosition(iPanelJQ);fixMenuPanelInwardToolbar(iPanelJQ)}else{if(iButtonJQ){var arrowCollapseButtonJQ=iPanelJQ.find(".edrawings-menu-panel-arrow-collapse");var activeButtonRect=iButtonJQ[0].getBoundingClientRect();var arrowCollapseButtonRect=arrowCollapseButtonJQ[0].getBoundingClientRect();var diffTop=activeButtonRect.top-arrowCollapseButtonRect.top;l_setMenuPanelArrowCollapseButtonPosition(arrowCollapseButtonJQ,arrowCollapseButtonJQ.position().top+diffTop)}fixMenuPanelInwardToolbar(iPanelJQ,true)}}exports.positionMenuPanelArrowCollapseButton=positionMenuPanelArrowCollapseButton;function executeScrolling(iDiffX,iDiffY,iContentJQ,iBarJQ){var contentParentJQ=iContentJQ.parent();var leftButtonWrapperJQ=contentParentJQ.find(".edrawings-arrow-wrapper:has(> .edrawings-arrow-left)");var rightButtonWrapperJQ=contentParentJQ.find(".edrawings-arrow-wrapper:has(> .edrawings-arrow-right)");var upButtonWrapperJQ=contentParentJQ.find(".edrawings-arrow-wrapper:has(> .edrawings-arrow-up)");var downButtonWrapperJQ=contentParentJQ.find(".edrawings-arrow-wrapper:has(> .edrawings-arrow-down)");if(iContentJQ[0].scrollWidth>iContentJQ.width()){var scrollLeft=iContentJQ.scrollLeft();var newScrollLeft=scrollLeft+iDiffX;iContentJQ.scrollLeft(newScrollLeft);adjustScrollArrows(iContentJQ.scrollLeft(),iContentJQ[0].scrollWidth,iContentJQ.width(),true,leftButtonWrapperJQ,rightButtonWrapperJQ,iBarJQ)}if(iContentJQ[0].scrollHeight>iContentJQ.height()){var scrollTop=iContentJQ.scrollTop();var newScrollTop=scrollTop+iDiffY;iContentJQ.scrollTop(newScrollTop);adjustScrollArrows(iContentJQ.scrollTop(),iContentJQ[0].scrollHeight,iContentJQ.height(),false,upButtonWrapperJQ,downButtonWrapperJQ,iBarJQ)}return iDiffX!==0||iDiffY!==0}exports.executeScrolling=executeScrolling;function enableScrollOnTouch(ioUIHTMLEventMgr,iContentJqSel,iBarJqSel,iHandlerOnScroll){var _this=this;var contentJQ=$(iContentJqSel);var barJQ=iBarJqSel?$(iBarJqSel):undefined;var hasScrolled=false;var stopClickTarget;var stopClickPropagation=false;ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"touchstart",(function(iEventStart){hasScrolled=false;stopClickPropagation=false;stopClickTarget=undefined;var touchEventStart=iEventStart;var lastScreenX=touchEventStart.changedTouches[0].screenX;var lastScreenY=touchEventStart.changedTouches[0].screenY;ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchmove");ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"touchmove",(function(iEventMove){var touchEventMove=iEventMove;var xDiff=touchEventMove.changedTouches[0].screenX-lastScreenX;lastScreenX=touchEventMove.changedTouches[0].screenX;var yDiff=touchEventMove.changedTouches[0].screenY-lastScreenY;lastScreenY=touchEventMove.changedTouches[0].screenY;var updated=executeScrolling(-xDiff,-yDiff,contentJQ,barJQ);if(updated&&iHandlerOnScroll){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,iHandlerOnScroll()];case 1:_a.sent();return[2]}}))}))})()}hasScrolled=hasScrolled||updated}))}));ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"touchend",(function(iEvent){var touchEvent=iEvent;ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchmove");if(hasScrolled){touchEvent.preventDefault();touchEvent.stopPropagation();stopClickPropagation=true;stopClickTarget=touchEvent.target}else{stopClickPropagation=false;stopClickTarget=undefined}hasScrolled=false}));ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"touchcancel",(function(iEvent){ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchmove");hasScrolled=false;stopClickPropagation=false}));ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"mousedown",(function(iEvent){hasScrolled=false;stopClickPropagation=false;if(!eDwKeyMgr_5.eDwKeyMgr.isLMBPressed(iEvent)){return}var eventDown=iEvent;var lastScreenX=eventDown.screenX;var lastScreenY=eventDown.screenY;ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mousemove");ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"mousemove",(function(iEventMove){var eventMove=iEventMove;var xDiff=eventMove.screenX-lastScreenX;var yDiff=eventMove.screenY-lastScreenY;lastScreenX=eventMove.screenX;lastScreenY=eventMove.screenY;var updated=executeScrolling(-xDiff,-yDiff,contentJQ,barJQ);if(updated&&iHandlerOnScroll){iHandlerOnScroll()}hasScrolled=hasScrolled||updated}))}));ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"mouseup",(function(iEvent){ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mousemove");if(hasScrolled){iEvent.stopImmediatePropagation();iEvent.preventDefault();stopClickPropagation=true;stopClickTarget=iEvent.target}else{stopClickPropagation=false;stopClickTarget=undefined}hasScrolled=false}));var propagationHandler=function(iEvent2){if(stopClickPropagation&&iEvent2.target===stopClickTarget){iEvent2.stopImmediatePropagation();iEvent2.preventDefault()}stopClickPropagation=false;stopClickTarget=undefined};var nameSpace=iContentJqSel.replace(/[\.\s]/g,"");var dataKey="click.edw."+nameSpace;contentJQ.off(dataKey,"*");contentJQ.on(dataKey,"*",propagationHandler)}exports.enableScrollOnTouch=enableScrollOnTouch;function disableScrollOnTouch(iUIHTMLEventMgr,iContentJqSel){iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchstart");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchmove");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchend");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchcancel");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mousedown");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mousemove");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mouseup");var contentJQ=$(iContentJqSel);var nameSpace=iContentJqSel.replace(/[\.\s]/g,"");var dataKey="click.edw."+nameSpace;contentJQ.off(dataKey,"*")}exports.disableScrollOnTouch=disableScrollOnTouch;function adjustScrollArrows(iOffset,iRange,iVisibleRange,isHorizonatalScrolling,iDecreaseWrapperJQ,iIncreaseWrapperJQ,iBarJQ){if(iOffset<=0){iDecreaseWrapperJQ.addClass("edrawings-disabled-button");if(iBarJQ){iBarJQ.addClass(isHorizonatalScrolling?"edrawings-removed-arrow-left":"edrawings-removed-arrow-up")}}else{iDecreaseWrapperJQ.removeClass("edrawings-disabled-button");if(iBarJQ){iBarJQ.removeClass(isHorizonatalScrolling?"edrawings-removed-arrow-left":"edrawings-removed-arrow-up")}}if(iOffset+iVisibleRange>=iRange){iIncreaseWrapperJQ.addClass("edrawings-disabled-button");if(iBarJQ){iBarJQ.addClass(isHorizonatalScrolling?"edrawings-removed-arrow-right":"edrawings-removed-arrow-down")}}else{iIncreaseWrapperJQ.removeClass("edrawings-disabled-button");if(iBarJQ){iBarJQ.removeClass(isHorizonatalScrolling?"edrawings-removed-arrow-right":"edrawings-removed-arrow-down")}}}exports.adjustScrollArrows=adjustScrollArrows;function getAsJQueryObj(iObj){return iObj?$(iObj):$()}exports.getAsJQueryObj=getAsJQueryObj;var l_generators={};function l_getAllDisplayStateCSSClasses(iHierNode){var classes="";for(var displayState in eDwNodeAttributes_4.NodeDisplayState){classes+="edrawings-"+iHierNode.Category+"-"+displayState.toLowerCase()+" "}return classes}function l_populatePanel(iViewer,iCategoryName,iListID,iPanelUIID,iAdditionalClasses){if(iAdditionalClasses===void 0){iAdditionalClasses=""}return __awaiter(this,void 0,void 0,(function(){var activeModelView,list,gen,_a,_b;return __generator(this,(function(_c){switch(_c.label){case 0:activeModelView=iViewer.getModel().getActiveModelView();if(!activeModelView||!activeModelView.Hierarchy)return[2];list=$(iListID);list.empty();gen=getUIGenerator(iPanelUIID);_b=(_a=list).append;return[4,gen.generateHTML(iAdditionalClasses)];case 1:_b.apply(_a,[_c.sent()]);return[2]}}))}))}function l_populateLayerPanel(iViewer){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_populatePanel(iViewer,"layer","#edrawings-layer-control-list","#edrawings-layer-control-menu")];case 1:_a.sent();return[2]}}))}))}function l_populateDebugPanel(iViewer){var list=$("#edrawings-debug-menu .edrawings-submenu-list");list.empty();var gen=getUIGenerator("#edrawings-debug-menu");var model=iViewer.getModel();var modelView=model.getActiveModelView();if(modelView&&modelView.Hierarchy){var layers=model.getLayers();for(var _i=0,layers_3=layers;_iiReferenceSide+iReferenceOffset){diff=iTargetSide+iTargetOffset-(iReferenceSide+iReferenceOffset)}return diff}function l_scrollToTarget(iTargetJQ,iPos,iAnimationSpeed,iStartPos){var _a;if(iAnimationSpeed===void 0){iAnimationSpeed="slow"}if(iStartPos===void 0){iStartPos="scrollTop"}if(!iTargetJQ)return;if(iAnimationSpeed==="none"){iTargetJQ[iStartPos](iPos)}else{iTargetJQ.animate((_a={},_a[iStartPos]=iPos,_a),iAnimationSpeed)}}}));define("eDwUnits",["require","exports"],(function(require,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.cDefaultAngleUnit=exports.cDefaultLengthUnit=exports.LengthTypeValues=exports.AngleTypeValues=void 0;exports.AngleTypeValues=["degree","radian"];exports.LengthTypeValues=["millimeter","centimeter","meter","inch","foot","footAndInch"];exports.cDefaultLengthUnit="millimeter";exports.cDefaultAngleUnit="degree"}));define("eDwView",["require","exports","eDwSelMgr","eDwXSectionMgr","eDwViewMgr","eDwTimer","eDwOperatorBaseDeps","eDwEventMgr","eDwHistoryMgr","eDwModel","eDwTypes","eDwEvents","eDwTouchOpsMgr","eDwTableMgr"],(function(require,exports,eDwSelMgr,eDwXSectionMgr,eDwViewMgr,eDwTimer,eDwOperatorBaseDeps_2,eDwEventMgr,eDwHistoryMgr,eDwModel,eDwTypes_18,eDwEvents_10,eDwTouchOpsMgr,eDwTableMgr){"use strict";var eDwView=function(){function eDwView(iViewerInfo,iFeatureOptions){this.mElemID=iViewerInfo.containerId||"";this.HCViewer=new eDwTypes_18.HC.WebViewer(iViewerInfo);this.mTimer=new eDwTimer;this.ViewerFeatureOpts=iFeatureOptions;this.mDrawMode=iFeatureOptions.RenderType||"ShadedWithEdges";this.OperatorMgr=new eDwOperatorBaseDeps_2.eDwOperatorMgr(this);this.TableMgr=new eDwTableMgr(this);var streamAll=this.HCViewer.getStreamingMode()===eDwTypes_18.HC.StreamingMode.All;var timeBeforeTimeout=streamAll?14400:120;var timeBeforeWarnTimeout=timeBeforeTimeout-10;this.HCViewer.setClientTimeout(timeBeforeTimeout,timeBeforeWarnTimeout);this.mInitCamera=null;this.mModelKey=iViewerInfo.model||"";this.setupWebViewer()}eDwView.prototype.getHCView=function(){return this.HCViewer.view};eDwView.prototype.getHCMarkupManager=function(){return this.HCViewer.markupManager};eDwView.prototype.getModel=function(){if(!this.mModel){this.mModel=new eDwModel(this)}return this.mModel};eDwView.prototype.processProductStructure=function(){return __awaiter(this,void 0,void 0,(function(){var model,activeModelView,modelViewDefCamera;var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:this.mInitCamera=this.getHCView().getCamera();model=this.getModel();activeModelView=model.getActiveModelView();modelViewDefCamera=activeModelView.getDefaultCamera();if(modelViewDefCamera)this.mInitCamera=modelViewDefCamera;this.ViewMgr.setCamera(this.mInitCamera);$("#"+this.mElemID).trigger("edw:ModelDataLoadComplete",this);return[4,this.finishInit()];case 1:_a.sent();if(this.HCViewer.getStreamingMode()===eDwTypes_18.HC.StreamingMode.All){this.HCViewer.waitForIdle().then((function(){l_closeHCConnection(_this)}))}return[2]}}))}))};eDwView.prototype.setupWebViewer=function(){var _this=this;var processingSelection=false;var eventMgr=eDwEventMgr.get();function deprecatedCallback(iDeprecatedFuncName){var argArray=[];for(var key in arguments){argArray.push(arguments[key])}console.debugLog("Deprecated","Deprecated call: "+argArray.join("."))}this.mHCCallbacksObj={sceneReady:function(){console.debugLog("ViewerLoad","Scene ready");_this.HCViewer.resizeCanvas()},streamingActivated:function(){console.debugLog("Viewer","Streaming activated")},streamingDeactivated:function(){console.debugLog("Viewer","Streaming deactivated")},selection:function(iSelEvent){if(!processingSelection){processingSelection=true;try{(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){this.SelectionMgr.onSelection(iSelEvent);return[2]}))}))})()}catch(iException){}processingSelection=false}},timeoutWarning:function(iRemainingMinutes){console.debugLog("Viewer","Inactivity timeout pending in "+iRemainingMinutes+" minutes.");_this.mTimer.ellapsed();_this.mTimer.dumpToConsole()},timeout:function(){console.debugLog("Viewer","Inactivity timeout");_this.mTimer.ellapsed();_this.mTimer.dumpToConsole();(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.TimeoutEvent,this)];case 1:_a.sent();return[2]}}))}))})();l_closeHCConnection(_this)},modelLoadFailure:function(iModelName,iReason){console.warn("Model "+iModelName+" load failed: "+iReason);$("#"+_this.mElemID).trigger("edw:ModelLoadFailed",[_this,iModelName,iReason]);l_closeHCConnection(_this)},deprecated:deprecatedCallback,info:function(iInfoType,iMsg){console.debugLog("Debug",iInfoType.toString()+" "+iMsg)},missingModel:function(iModelPath){console.debugLog("Debug","Missing model: "+iModelPath);l_closeHCConnection(_this)},webGlContextLost:function(){console.debugLog("Debug","Browser lost GL context! Render incomplete!!");(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.GLContextLostEvent,this)];case 1:_a.sent();return[2]}}))}))})();l_closeHCConnection(_this)},assemblyTreeReady:function(){console.debugLog("ViewerLoad","Assembly tree ready.")},modelStructureReady:function(){console.debugLog("ViewerLoad","Model structure ready.");$("#"+_this.mElemID).trigger("edw:ModelLoaded",_this)},modelSwitched:function(){console.debugLog("ViewerLoad","Model switch done.");$("#"+_this.mElemID).trigger("edw:ModelLoaded",_this)},viewCreated:function(iHCView){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.ViewCreatedEvent,iHCView)];case 1:_a.sent();return[2]}}))}))})()},viewLoaded:function(iHCView){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.ViewLoadedEvent,iHCView)];case 1:_a.sent();return[2]}}))}))})()},viewDeleted:function(iHCView){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.ViewDeletedEvent,iHCView)];case 1:_a.sent();return[2]}}))}))})()},camera:function(iCamera){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.CameraChangeEvent,iCamera)];case 1:_a.sent();return[2]}}))}))})()}};this.HCViewer.setCallbacks(this.mHCCallbacksObj);this.HCViewer.start()};eDwView.prototype.getInitCamera=function(){return this.mInitCamera};eDwView.prototype.getCurrModelKey=function(){return this.mModelKey};eDwView.prototype.unregister=function(){var _this=this;if(this.HCViewer)this.HCViewer.unsetCallbacks(this.mHCCallbacksObj);this.OperatorMgr.unregisterAll();(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_10.DoneEvent,this)];case 1:_a.sent();return[2]}}))}))})()};eDwView.prototype.destroy=function(){this.HCViewer.shutdown()};eDwView.prototype.setExplosionLevel=function(iLevel){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.HCViewer.explodeManager.setMagnitude(iLevel)];case 1:_a.sent();return[4,eDwEventMgr.get().fireEvent(eDwEvents_10.ExplodeLevelChangeEvent,this,iLevel)];case 2:_a.sent();return[2]}}))}))})()};eDwView.prototype.getExplosionLevel=function(){return this.HCViewer.explodeManager.getMagnitude()};eDwView.prototype.getDrawMode=function(){return this.mDrawMode};eDwView.prototype.setDrawMode=function(iValue){var _this=this;var viewHC=this.getHCView();var settingsHC=viewHC.getHiddenLineSettings();switch(iValue){case"ShadedWithEdges":viewHC.setDrawMode(eDwTypes_18.HC.DrawMode.WireframeOnShaded);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.WireframeOnShaded);break;case"Shaded":viewHC.setDrawMode(eDwTypes_18.HC.DrawMode.Shaded);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.Shaded);break;case"HiddenLinesRemoved":settingsHC.setObscuredLineOpacity(0);viewHC.setDrawMode(eDwTypes_18.HC.DrawMode.HiddenLine);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.HiddenLine);break;case"HiddenLinesVisible":settingsHC.setObscuredLineOpacity(.5);viewHC.setDrawMode(eDwTypes_18.HC.DrawMode.HiddenLine);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.HiddenLine);break;case"Wireframe":settingsHC.setObscuredLineOpacity(1);viewHC.setDrawMode(eDwTypes_18.HC.DrawMode.HiddenLine);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.HiddenLine);break;default:throw new Error("Unknown draw mode: "+iValue)}(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.mDrawMode=iValue;return[4,eDwEventMgr.get().fireEvent(eDwEvents_10.DrawModeChangeEvent,this,iValue)];case 1:_a.sent();return[2]}}))}))})()};eDwView.prototype.getPerspectiveMode=function(){return this.getHCView().getProjectionMode()===eDwTypes_18.HC.Projection.Perspective};eDwView.prototype.setPerspectiveMode=function(iValue){var _this=this;if(!iValue){this.getHCView().setProjectionMode(eDwTypes_18.HC.Projection.Orthographic)}else{this.getHCView().setProjectionMode(eDwTypes_18.HC.Projection.Perspective)}(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_10.ProjModeChangeEvent,this,iValue)];case 1:_a.sent();return[2]}}))}))})();return iValue};eDwView.prototype.resetDrawMode=function(){this.setDrawMode(this.ViewerFeatureOpts.RenderType||"ShadedWithEdges")};eDwView.prototype.initializeManagers=function(){new eDwSelMgr(this);new eDwXSectionMgr(this);new eDwViewMgr(this);new eDwTouchOpsMgr(this)};eDwView.prototype.drawDebugBoundingBox=function(iBBox){return __awaiter(this,void 0,void 0,(function(){var modelHC,beautifulGreen,vmin,vmax,p0,p1,p2,p3,p4,p5,p6,p7,polylineData0,polylineData1,polylineData2,polylineData3,rgba,i,tmp,boxMesh,key,meshInstance;return __generator(this,(function(_a){switch(_a.label){case 0:modelHC=this.getModel().getHCModel();beautifulGreen=new eDwTypes_18.HC.Color(0,255,0);vmin=iBBox.min;vmax=iBBox.max;p0=new eDwTypes_18.HC.Point3(vmin.x,vmin.y,vmax.z);p1=new eDwTypes_18.HC.Point3(vmin.x,vmax.y,vmax.z);p2=new eDwTypes_18.HC.Point3(vmax.x,vmax.y,vmax.z);p3=new eDwTypes_18.HC.Point3(vmax.x,vmin.y,vmax.z);p4=new eDwTypes_18.HC.Point3(vmin.x,vmin.y,vmin.z);p5=new eDwTypes_18.HC.Point3(vmin.x,vmax.y,vmin.z);p6=new eDwTypes_18.HC.Point3(vmax.x,vmax.y,vmin.z);p7=new eDwTypes_18.HC.Point3(vmax.x,vmin.y,vmin.z);polylineData0=[p0.x,p0.y,p0.z,p1.x,p1.y,p1.z,p2.x,p2.y,p2.z,p3.x,p3.y,p3.z,p0.x,p0.y,p0.z];polylineData1=[p4.x,p4.y,p4.z,p5.x,p5.y,p5.z,p6.x,p6.y,p6.z,p7.x,p7.y,p7.z,p4.x,p4.y,p4.z];polylineData2=[p4.x,p4.y,p4.z,p0.x,p0.y,p0.z,p1.x,p1.y,p1.z,p5.x,p5.y,p5.z,p4.x,p4.y,p4.z];polylineData3=[p7.x,p7.y,p7.z,p3.x,p3.y,p3.z,p2.x,p2.y,p2.z,p6.x,p6.y,p6.z,p7.x,p7.y,p7.z];rgba=[];for(i=0;i<5;i++){tmp=[beautifulGreen.r,beautifulGreen.g,beautifulGreen.b,255];rgba=rgba.concat(tmp)}boxMesh=new eDwTypes_18.HC.MeshData;boxMesh.addPolyline(polylineData0,rgba);boxMesh.addPolyline(polylineData1,rgba);boxMesh.addPolyline(polylineData2,rgba);boxMesh.addPolyline(polylineData3,rgba);return[4,modelHC.createMesh(boxMesh)];case 1:key=_a.sent();meshInstance=new eDwTypes_18.HC.MeshInstanceData(key);return[2,modelHC.createMeshInstance(meshInstance)]}}))}))};eDwView.prototype.finishInit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_10.InitEvent,this)];case 1:_a.sent();this.HCViewer.sheetManager.setBackgroundSheetEnabled(false);eDwHistoryMgr.get().clear();return[2]}}))}))};return eDwView}();function l_closeHCConnection(iViewer){if(!iViewer)return;var viewHC=iViewer.getHCView();viewHC.setCamera(viewHC.getCamera());console.debugLog("Viewer","Closing viewer connection...");iViewer.HCViewer.closeConnection()}return eDwView}));define("eDwViewMgr",["require","exports","eDwEventMgr","eDwSelObj","eDwEvents","eDwTypes"],(function(require,exports,eDwEventMgr,eDwSelObj,eDwEvents_11,eDwTypes_19){"use strict";var eDwViewMgr=function(){function eDwViewMgr(iViewer){if(!iViewer)throw new Error("Must have viewer object");iViewer.ViewMgr=this;this.mViewAnimationIndex=0;this.mViewAnimationActive=false;this.mAnimationTimeOutID=-1;this.mViewer=iViewer}eDwViewMgr.prototype.start=function(){var _this=this;if(this.mViewer.getModel().isDrawing())return;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_11.StartAnimationEvent,this.mViewer)];case 1:_a.sent();return[2]}}))}))})();this.mViewAnimationActive=true;this.animateNextView()};eDwViewMgr.prototype.stop=function(){var _this=this;this.mViewAnimationActive=false;if(this.mAnimationTimeOutID>-1){window.clearTimeout(this.mAnimationTimeOutID);this.mAnimationTimeOutID=-1}(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_11.StopAnimationEvent,this.mViewer)];case 1:_a.sent();return[2]}}))}))})()};eDwViewMgr.prototype.reset=function(){this.stop();this.mViewAnimationIndex=0};eDwViewMgr.prototype.isActive=function(){return this.mViewAnimationActive};eDwViewMgr.prototype.setViewOrientation=function(iEyeDirHC,iDuration){var _this=this;if(iDuration===void 0){iDuration=400}var centerHC=this.mViewer.getModel().getBoundingBox().center();var viewHC=this.mViewer.getHCView();var cameraHC=viewHC.getCamera().copy();var upVecHC=cameraHC.getUp();var eyeVecHC=cameraHC.getTarget().subtract(cameraHC.getPosition());var dist=eyeVecHC.length();switch(iEyeDirHC){case eDwTypes_19.HC.ViewOrientation.Front:eyeVecHC.set(0,0,1).scale(dist);upVecHC.set(0,1,0);break;case eDwTypes_19.HC.ViewOrientation.Back:eyeVecHC.set(0,0,-1).scale(dist);upVecHC.set(0,1,0);break;case eDwTypes_19.HC.ViewOrientation.Left:eyeVecHC.set(-1,0,0).scale(dist);upVecHC.set(0,1,0);break;case eDwTypes_19.HC.ViewOrientation.Right:eyeVecHC.set(1,0,0).scale(dist);upVecHC.set(0,1,0);break;case eDwTypes_19.HC.ViewOrientation.Top:eyeVecHC.set(0,1,0).scale(dist);upVecHC.set(0,0,-1);break;case eDwTypes_19.HC.ViewOrientation.Bottom:eyeVecHC.set(0,-1,0).scale(dist);upVecHC.set(0,0,1);break;case eDwTypes_19.HC.ViewOrientation.Iso:eyeVecHC.set(1,1,1).normalize().scale(dist);upVecHC.set(-.408204,.816541,-.408204);break;default:throw new Error("Unsupported orientation: "+iEyeDirHC)}this.adjustOrientation(eyeVecHC,upVecHC);cameraHC.setPosition(eyeVecHC.add(centerHC));cameraHC.setUp(upVecHC);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,viewHC.fitWorld(iDuration,cameraHC)];case 1:_a.sent();return[2]}}))}))})();return cameraHC};eDwViewMgr.prototype.setViewOrientationToDirection=function(normal){var camera=this.mViewer.getHCView().getCamera();var position=camera.getPosition();var target=camera.getTarget();var up=camera.getUp();var delta=target.subtract(position);var distance=delta.length();var bbox=this.mViewer.getModel().getBoundingBox();var bbox_min=bbox.min;var bbox_max=bbox.max;target=eDwTypes_19.HC.Point3.add(bbox_max,bbox_min).scale(.5);var eyeVec=eDwTypes_19.HC.Point3.scale(normal,distance);position=eDwTypes_19.HC.Point3.add(target,eyeVec);var vTest=new eDwTypes_19.HC.Point3(1,0,0);var isParallel=eDwTypes_19.HC.Point3.dot(vTest,normal);if(Math.abs(Math.abs(isParallel)-1)<.001){vTest.set(0,1,0);var vec=eDwTypes_19.HC.Point3.cross(normal,vTest);vec=vec.normalize();up=eDwTypes_19.HC.Point3.cross(vec,normal);up=up.normalize()}else{up=eDwTypes_19.HC.Point3.cross(normal,vTest);up=up.normalize()}var dotProd=eDwTypes_19.HC.Point3.dot(up,new eDwTypes_19.HC.Point3(1,0,0));if(Math.abs(Math.abs(dotProd)-1)<.001&&dotProd<0){up=up.negate()}dotProd=eDwTypes_19.HC.Point3.dot(up,new eDwTypes_19.HC.Point3(0,1,0));if(Math.abs(Math.abs(dotProd)-1)<.001&&dotProd<0){up=up.negate()}dotProd=eDwTypes_19.HC.Point3.dot(up,new eDwTypes_19.HC.Point3(0,0,1));if(Math.abs(Math.abs(dotProd)-1)<.001&&dotProd<0){up=up.negate()}camera.setPosition(position);camera.setTarget(target);camera.setUp(up);this.setCamera(camera,500);return camera};eDwViewMgr.prototype.setCamera=function(iCameraHC,iTimeInMS){if(iTimeInMS===void 0){iTimeInMS=400}if(!iCameraHC)return false;var cameraHC=iCameraHC.copy();cameraHC.setProjection(this.mViewer.getHCView().getCamera().getProjection());return this.mViewer.getHCView().setCamera(cameraHC,iTimeInMS)};eDwViewMgr.prototype.enableAmbientOcclusion=function(iEnable){var _this=this;this.mViewer.getHCView().setAmbientOcclusionEnabled(iEnable);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_11.AmbientOcclChangeEvent,this,iEnable)];case 1:_a.sent();return[2]}}))}))})()};eDwViewMgr.prototype.fitScreenToNodes=function(iNodeIDsHC,ioCamera){return __awaiter(this,void 0,void 0,(function(){var model,bboxHC,subtract,viewVec,centerHC,add,ratio,boxMaxLen;return __generator(this,(function(_a){switch(_a.label){case 0:if(!ioCamera)return[2];model=this.mViewer.getModel();return[4,model.getBoundingBoxOfIDsHC(iNodeIDsHC)];case 1:bboxHC=_a.sent();if(bboxHC.isDegenerate())return[2];subtract=eDwTypes_19.HC.Point3.subtract;viewVec=subtract(ioCamera.getPosition(),ioCamera.getTarget());centerHC=bboxHC.center().copy();ioCamera.setTarget(centerHC);add=eDwTypes_19.HC.Point3.add;ioCamera.setPosition(add(centerHC,viewVec));ratio=ioCamera.getWidth()/ioCamera.getHeight();if(this.mViewer.getModel().isDrawing()){bboxHC.min.z=bboxHC.max.z=0}boxMaxLen=bboxHC.extents().length();ioCamera.setHeight(boxMaxLen);ioCamera.setWidth(boxMaxLen*ratio);this.setCamera(ioCamera,400);return[2]}}))}))};eDwViewMgr.prototype.pickFromPoint=function(iPnt2DHC,iPickConfig){return __awaiter(this,void 0,void 0,(function(){var selObjHC,toLocalTransformHC,viewHC,iExcp_17;return __generator(this,(function(_a){switch(_a.label){case 0:selObjHC=eDwTypes_19.HC.Selection.SelectionItem.create();toLocalTransformHC=new eDwTypes_19.HC.Matrix;_a.label=1;case 1:_a.trys.push([1,3,,4]);viewHC=this.mViewer.getHCView();return[4,viewHC.pickFromPoint(iPnt2DHC,iPickConfig)];case 2:selObjHC=_a.sent();console.debugLog("eDwViewMgr","eDwViewMgr.pickFromPoint() - "+selObjHC.getNodeId()+" - "+JSON.stringify(iPnt2DHC));console.assert(!isNaN(toLocalTransformHC.m[0]),"Not number before");toLocalTransformHC=eDwSelObj.getLocalTransform(selObjHC,this.mViewer.getModel());console.assert(!isNaN(toLocalTransformHC.m[0]),"Not number after");return[3,4];case 3:iExcp_17=_a.sent();console.debugLog("eDwViewMgr","eDwViewMgr.pickFromPoint() failed - "+iExcp_17.message);return[3,4];case 4:console.assert(!isNaN(toLocalTransformHC.m[0]),"Not number after 2");return[2,new eDwSelObj(selObjHC,toLocalTransformHC)]}}))}))};eDwViewMgr.prototype.onCameraUpdate=function(){this.mViewAnimationIndex+=1;if(this.mViewAnimationIndex>=eDwViewMgr.viewAnimations.length){this.mViewAnimationIndex=0;this.mViewAnimationActive=false;this.stop()}if(this.mViewAnimationActive){this.animateNextView()}};eDwViewMgr.prototype.animateNextView=function(){var _this=this;if(this.mViewAnimationActive){this.setViewOrientation(eDwViewMgr.viewAnimations[this.mViewAnimationIndex],2e3);this.mAnimationTimeOutID=window.setTimeout((function(){_this.onCameraUpdate()}),2e3)}};eDwViewMgr.prototype.adjustOrientation=function(ioEveVecHC,ioUpVecHC){if(this.mViewer.getModel().getProperty("zUp")==="true"){cCamZUpMat.transform(ioEveVecHC,ioEveVecHC);cCamZUpMat.transform(ioUpVecHC,ioUpVecHC)}};eDwViewMgr.viewAnimations=[eDwTypes_19.HC.ViewOrientation.Front,eDwTypes_19.HC.ViewOrientation.Back,eDwTypes_19.HC.ViewOrientation.Left,eDwTypes_19.HC.ViewOrientation.Right,eDwTypes_19.HC.ViewOrientation.Bottom,eDwTypes_19.HC.ViewOrientation.Top,eDwTypes_19.HC.ViewOrientation.Iso];return eDwViewMgr}();var cCamZUpMat=eDwTypes_19.HC.Matrix.createFromArray([0,1,0,0,0,0,1,0,1,0,0,0,0,0,0,1]);return eDwViewMgr}));define("eDwXSectionMgr",["require","exports","eDwXSectionOperator","eDwGeomUtils","eDwTypes","eDwTypes"],(function(require,exports,eDwXSectionOperator,eDwGeomUtils,eDwTypes_20,eDwTypes_21){"use strict";var eDwXSectionMgr=function(){function eDwXSectionMgr(iViewer){iViewer.XSectionMgr=this;this.mViewer=iViewer;var xSectionOp=new eDwXSectionOperator(iViewer);this.mXSectionOpID=iViewer.OperatorMgr.registerCustomOperator(xSectionOp);this.HCXSectionMgr=iViewer.HCViewer.cuttingManager;this.SectionCapVisibility=false;this.mXSectionIndex=eDwTypes_20.SectionPlaneOrientation.XY.Index;this.mSectionVisibility=true;this.mSectionsVisibilityState=[false,false,false]}eDwXSectionMgr.prototype.unregister=function(){this.mViewer.OperatorMgr.unregisterCustomOperatorByID(this.mXSectionOpID);this.mViewer.XSectionMgr=null};eDwXSectionMgr.prototype.turnOnSectionPlane=function(iOn){var _this=this;if(this.getXSectionHC()){if(iOn){(function(){return __awaiter(_this,void 0,void 0,(function(){var ret;return __generator(this,(function(_a){switch(_a.label){case 0:ret=this.mViewer.OperatorMgr.push(this.mXSectionOpID);console.debugLog("Section","Section plane operator push ret = "+ret);return[4,this.HCXSectionMgr.setCappingGeometryVisibility(true)];case 1:_a.sent();return[2]}}))}))})()}else{var opID=this.mViewer.OperatorMgr.pop();console.debugLog("Section","Popped op ID = "+opID+" xSection op ID = "+this.mXSectionOpID)}}};eDwXSectionMgr.prototype.activateCurrent=function(){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.getXSectionHC().activate()];case 1:_a.sent();return[4,this.setToCurrentSectionPlane()];case 2:_a.sent();if(!!this.mSectionVisibility)return[3,4];return[4,this.updateSectionVisibility(false)];case 3:_a.sent();_a.label=4;case 4:return[2]}}))}))})()};eDwXSectionMgr.prototype.deactivateCurrent=function(){var _this=this;this.mSectionsVisibilityState=[false,false,false];(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.getXSectionHC().deactivate()];case 1:_a.sent();return[2]}}))}))})()};eDwXSectionMgr.prototype.isCurrentActive=function(){return this.getXSectionHC().isActive()};Object.defineProperty(eDwXSectionMgr.prototype,"SectionIndex",{get:function(){return this.mXSectionIndex},enumerable:false,configurable:true});eDwXSectionMgr.prototype.setSectionPlane=function(ioSection,iAllowActivation){if(iAllowActivation===void 0){iAllowActivation=true}return __awaiter(this,void 0,void 0,(function(){var bbox,bboxExtents,sectionHC,boxCenter,sectionPlane,minPlanePt,maxPlanePt,vec,centerPt,dir,mirrorPlaneNormal,mirrorPlane,maxOnPlnPt,minOnPlnPt,mirrorPlaneDist,distDir,revDistDir,pts;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.mViewer.getModel().calculateBoundingBox()];case 1:bbox=_a.sent();bboxExtents=bbox.extents();if(!ioSection||bboxExtents.equals(eDwTypes_21.HC.Point3.zero()))return[2];sectionHC=this.getXSectionHC();if(!(ioSection.Index!==this.mXSectionIndex))return[3,6];if(!sectionHC)return[3,5];if(!sectionHC.isActive())return[3,3];return[4,sectionHC.deactivate()];case 2:_a.sent();_a.label=3;case 3:return[4,this.HCXSectionMgr.refreshPlaneGeometry()];case 4:_a.sent();_a.label=5;case 5:this.mXSectionIndex=ioSection.Index;sectionHC=this.getXSectionHC();_a.label=6;case 6:boxCenter=bbox.center();if(!(sectionHC.getCount()<1))return[3,9];sectionPlane=ioSection.Plane.copy();sectionPlane.d=-sectionPlane.distanceToPoint(boxCenter);minPlanePt=eDwGeomUtils.dropPointOnPlane(bbox.min,sectionPlane);maxPlanePt=eDwGeomUtils.dropPointOnPlane(bbox.max,sectionPlane);vec=maxPlanePt.copy().subtract(minPlanePt);vec=vec.scale(.55);centerPt=eDwGeomUtils.dropPointOnPlane(boxCenter,sectionPlane);dir=sectionPlane.normal.copy();centerPt=centerPt.add(dir.scale(sectionPlane.d));mirrorPlaneNormal=eDwTypes_21.HC.Point3.zero();eDwTypes_21.HC.Util.oneVectorCross(sectionPlane.normal.copy(),mirrorPlaneNormal);mirrorPlane=eDwTypes_21.HC.Plane.createFromPointAndNormal(centerPt,mirrorPlaneNormal);maxOnPlnPt=eDwTypes_21.HC.Point3.add(centerPt,vec);minOnPlnPt=eDwTypes_21.HC.Point3.add(centerPt,vec.scale(-1));mirrorPlaneDist=mirrorPlane.distanceToPoint(maxOnPlnPt);distDir=mirrorPlaneNormal.copy().scale(2*mirrorPlaneDist);revDistDir=distDir.copy().scale(-1);pts=[];pts.push(minOnPlnPt);pts.push(eDwTypes_21.HC.Point3.add(maxOnPlnPt,revDistDir));pts.push(maxOnPlnPt);pts.push(eDwTypes_21.HC.Point3.add(minOnPlnPt,distDir));sectionHC=this.getXSectionHC();return[4,sectionHC.addPlane(sectionPlane,pts)];case 7:_a.sent();return[4,sectionHC.setColor(eDwTypes_21.HC.Color.createFromFloat(0,1,0))];case 8:_a.sent();_a.label=9;case 9:return[4,this.updateSectionVisibility(this.mSectionVisibility)];case 10:_a.sent();return[4,this.HCXSectionMgr.setStandinGeometryPickable(true)];case 11:_a.sent();return[2]}}))}))};eDwXSectionMgr.prototype.flipSectionPlane=function(){var _this=this;var sectionHC=this.getXSectionHC();if(!sectionHC)return;var sectionPlane=sectionHC.getPlane(0);if(!sectionPlane)return;sectionPlane.normal.negate();sectionPlane.d=-sectionPlane.d;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,sectionHC.updatePlane(0,sectionPlane)];case 1:_a.sent();return[2]}}))}))})()};eDwXSectionMgr.prototype.setViewToSectionPlane=function(){var sectionHC=this.getXSectionHC();if(!sectionHC)return null;var sectionPlane=sectionHC.getPlane(0);if(!sectionPlane)return null;return this.mViewer.ViewMgr.setViewOrientationToDirection(sectionPlane.normal.copy())};eDwXSectionMgr.prototype.moveCurrentAlongNormal=function(iDistVec){var _this=this;var camera=this.mViewer.getHCView().getCamera();var camPosition=camera.getPosition();var camTarget=camera.getTarget();var camUp=camera.getUp();var camZ=camTarget.subtract(camPosition);camZ=camZ.normalize();var camY=camUp.normalize();var camX=eDwTypes_21.HC.Point3.cross(camZ,camY);var realVec=camX.scale(iDistVec.x).add(camY.scale(iDistVec.y));realVec.add(camZ.scale(iDistVec.z));var sectionHC=this.getXSectionHC();var sectionPlaneHC=sectionHC.getPlane(0);var normal=sectionPlaneHC.normal.copy();normal=normal.normalize();var distance=eDwTypes_21.HC.Point3.dot(realVec,normal);if(Math.abs(distance)<1e-6)return;sectionPlaneHC.d-=distance;var lenVec=normal.scale(distance);var newPosMat=new eDwTypes_21.HC.Matrix;newPosMat=newPosMat.setTranslationComponent(lenVec.x,lenVec.y,lenVec.z);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,sectionHC.updatePlane(0,sectionPlaneHC,newPosMat,true,false)];case 1:_a.sent();return[2]}}))}))})()};eDwXSectionMgr.prototype.disableSectionCapVisibility=function(iDisable){this.setSectionCapVisibility(iDisable?false:this.mEnableSectionCaps)};eDwXSectionMgr.prototype.projectPoint=function(iPnt){var sectionHC=this.getXSectionHC();var sectionPlaneHC=sectionHC.getPlane(0);return eDwGeomUtils.dropPointOnPlane(iPnt,sectionPlaneHC)};eDwXSectionMgr.prototype.getXSectionHC=function(){return this.HCXSectionMgr.getCuttingSection(this.mXSectionIndex)};eDwXSectionMgr.prototype.setSectionCapVisibility=function(iEnable){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.HCXSectionMgr.setCappingFaceColor(iEnable?cSectionCapFaceColor:null)];case 1:_a.sent();return[4,this.HCXSectionMgr.setCappingLineColor(iEnable?null:cSectionCapOutlineColor)];case 2:_a.sent();return[2]}}))}))})()};eDwXSectionMgr.prototype.updateSectionVisibility=function(iVisible){return __awaiter(this,void 0,void 0,(function(){var activePlaneX,isSectionVisible,iExcp_18;return __generator(this,(function(_a){switch(_a.label){case 0:activePlaneX=this.getXSectionHC();activePlaneX.setOpacity(iVisible?cSectionPlaneOpacity:0);isSectionVisible=this.mSectionsVisibilityState[this.mXSectionIndex];this.mSectionsVisibilityState[this.mXSectionIndex]=iVisible;if(!iVisible)return[3,7];if(!(activePlaneX.isActive()&&isSectionVisible))return[3,4];_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,activePlaneX.deactivate()];case 2:_a.sent();return[3,4];case 3:iExcp_18=_a.sent();return[3,4];case 4:return[4,this.HCXSectionMgr.refreshPlaneGeometry()];case 5:_a.sent();return[4,activePlaneX.activate()];case 6:_a.sent();_a.label=7;case 7:return[2]}}))}))};eDwXSectionMgr.prototype.setToCurrentSectionPlane=function(){return __awaiter(this,void 0,void 0,(function(){var orientation,orientations,_a,_b,_i,orientationName;return __generator(this,(function(_c){switch(_c.label){case 0:orientations=eDwTypes_20.SectionPlaneOrientation;_a=[];for(_b in orientations)_a.push(_b);_i=0;_c.label=1;case 1:if(!(_i<_a.length))return[3,4];orientationName=_a[_i];orientation=orientations[orientationName];if(!(orientation.Index===this.mXSectionIndex))return[3,3];return[4,this.setSectionPlane(orientation)];case 2:_c.sent();return[2];case 3:_i++;return[3,1];case 4:return[2]}}))}))};Object.defineProperty(eDwXSectionMgr.prototype,"SectionCapVisibility",{get:function(){return this.mEnableSectionCaps},set:function(iEnable){this.mEnableSectionCaps=iEnable;this.setSectionCapVisibility(iEnable)},enumerable:false,configurable:true});Object.defineProperty(eDwXSectionMgr.prototype,"SectionVisibility",{set:function(iVisible){var _this=this;this.mSectionVisibility=iVisible;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.updateSectionVisibility(this.mSectionVisibility)];case 1:_a.sent();return[2]}}))}))})()},enumerable:false,configurable:true});return eDwXSectionMgr}();var cSectionPlaneOpacity=.3;var cSectionCapFaceColor=new eDwTypes_21.HC.Color(128,128,128);var cSectionCapOutlineColor=new eDwTypes_21.HC.Color(255,0,0);return eDwXSectionMgr}));define("eDwXSectionOperator",["require","exports","eDwTypes","eDwOperatorBaseDeps","eDwCommandMgr","eDwMoveSectionPlaneCmd","utils"],(function(require,exports,eDwTypes_22,eDwOperatorBaseDeps_3,eDwCommandMgr,eDwMoveSectionPlaneCmd,utils){"use strict";var eDwXSectionOperator=function(_super){__extends(eDwXSectionOperator,_super);function eDwXSectionOperator(iViewer){return _super.call(this,iViewer)||this}eDwXSectionOperator.prototype.onActivate=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.onActivate.call(this)];case 1:_a.sent();this.Viewer.XSectionMgr.activateCurrent();return[2]}}))}))};eDwXSectionOperator.prototype.onDeactivate=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.Viewer.XSectionMgr.deactivateCurrent();return[4,_super.prototype.onDeactivate.call(this)];case 1:_a.sent();return[2]}}))}))};eDwXSectionOperator.prototype.onMouseDown=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var selObj,selObjNodeIDHC,sectionMgr,typeOfSel,objHC,sectionMgrHC;var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:if(!ioMouseEvent||!this.Viewer.XSectionMgr.isCurrentActive()){ioMouseEvent.setHandled(true);return[2]}return[4,eDwOperatorBaseDeps_3.eDwBaseOperator.getPickResult(ioMouseEvent,this.Viewer.ViewMgr)];case 1:selObj=_a.sent();selObjNodeIDHC=selObj.getIDHC();if(utils.isNaN(selObjNodeIDHC)||selObjNodeIDHC>=0){ioMouseEvent.setHandled(false);return[2]}return[4,_super.prototype.onMouseDown.call(this,ioMouseEvent)];case 2:_a.sent();sectionMgr=this.Viewer.XSectionMgr;sectionMgr.disableSectionCapVisibility(true);ioMouseEvent.setHandled(true);if(selObjNodeIDHC){typeOfSel=selObj.getSelectionType();objHC=typeOfSel===eDwTypes_22.HC.SelectionType.None?null:selObj;console.debugLog("Section","sel obj = "+JSON.stringify(objHC));sectionMgrHC=this.Viewer.XSectionMgr.HCXSectionMgr;if(sectionMgrHC.getCuttingSectionFromNodeId(selObjNodeIDHC)){this.mSectionDragPtHC=this.screenToWorld(ioMouseEvent.getPosition())||this.mSectionDragPtHC}}(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!this.mMoveSectionCmd)return[3,2];return[4,this.mMoveSectionCmd.cancel()];case 1:_a.sent();_a.label=2;case 2:this.mMoveSectionCmd=new eDwMoveSectionPlaneCmd(this.Viewer);return[2]}}))}))})();return[2]}}))}))};eDwXSectionOperator.prototype.onMouseMove=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var crossSectionMgr,pos2DHC,pnt3DHC,delta;return __generator(this,(function(_a){ioMouseEvent.setHandled(false);crossSectionMgr=this.Viewer.XSectionMgr;if(!crossSectionMgr.isCurrentActive()){return[2]}if(this.CurrInputInfo&&this.mSectionDragPtHC){pos2DHC=ioMouseEvent.getPosition();pnt3DHC=this.screenToWorld(pos2DHC);if(!pnt3DHC)return[2];delta=eDwTypes_22.HC.Point3.subtract(pnt3DHC,this.mSectionDragPtHC);this.Viewer.XSectionMgr.moveCurrentAlongNormal(delta);this.mSectionDragPtHC=pnt3DHC;ioMouseEvent.setHandled(true)}return[2]}))}))};eDwXSectionOperator.prototype.onMouseUp=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.onMouseUp.call(this,ioMouseEvent)];case 1:_a.sent();this.Viewer.XSectionMgr.disableSectionCapVisibility(false);ioMouseEvent.setHandled(false);delete this.mSectionDragPtHC;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!this.mMoveSectionCmd)return[3,2];return[4,eDwCommandMgr.get().run(this.mMoveSectionCmd,"commit")];case 1:_a.sent();_a.label=2;case 2:delete this.mMoveSectionCmd;return[2]}}))}))})();return[2]}}))}))};eDwXSectionOperator.prototype.needsSelection=function(iEventType){return iEventType===eDwTypes_22.HC.EventType.MouseDown||iEventType===eDwTypes_22.HC.EventType.TouchStart};eDwXSectionOperator.prototype.screenToWorld=function(iPos2DHC){var viewHC=this.Viewer.getHCView();var normScrPos2DHC=viewHC.pointToWindowPosition(iPos2DHC);var inPnt3DHC=new eDwTypes_22.HC.Point3(normScrPos2DHC.x,normScrPos2DHC.y,0);var projMatHC=viewHC.getProjectionMatrix();projMatHC.m[15]=1;var invMatHC=eDwTypes_22.HC.Matrix.inverse(projMatHC);if(!invMatHC)return null;var tMatHC=invMatHC.transpose();var worldPnt3D=eDwTypes_22.HC.Point3.zero();var div=inPnt3DHC.x*tMatHC.m[3]+inPnt3DHC.y*tMatHC.m[7]+inPnt3DHC.z*tMatHC.m[11]+tMatHC.m[15];worldPnt3D.x=(inPnt3DHC.x*tMatHC.m[0]+inPnt3DHC.y*tMatHC.m[1]+inPnt3DHC.z*tMatHC.m[2]+tMatHC.m[3])/div;worldPnt3D.y=(inPnt3DHC.x*tMatHC.m[4]+inPnt3DHC.y*tMatHC.m[5]+inPnt3DHC.z*tMatHC.m[6]+tMatHC.m[7])/div;worldPnt3D.z=(inPnt3DHC.x*tMatHC.m[8]+inPnt3DHC.y*tMatHC.m[9]+inPnt3DHC.z*tMatHC.m[10]+tMatHC.m[11])/div;return worldPnt3D};return eDwXSectionOperator}(eDwOperatorBaseDeps_3.eDwBaseOperator);return eDwXSectionOperator}));define("eDwZoomToFitCmd",["require","exports","eDwSupportsHistoryCmd"],(function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwZoomToFitCmd=function(_super){__extends(eDwZoomToFitCmd,_super);function eDwZoomToFitCmd(iViewer,iNodeID,iCamera){var _this=_super.call(this,iViewer)||this;_this.mInitialCamera=iCamera.copy();_this.mFinalCamera=iCamera.copy();_this.mNodeIDHC=iNodeID;return _this}eDwZoomToFitCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.ViewMgr.setCamera(this.mInitialCamera);return[2,true]}}))}))};eDwZoomToFitCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.ViewMgr.setCamera(this.mFinalCamera);return[2,true]}}))}))};eDwZoomToFitCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.commit.call(this)];case 1:_a.sent();return[4,this.mViewer.ViewMgr.fitScreenToNodes([this.mNodeIDHC],this.mFinalCamera)];case 2:_a.sent();return[2]}}))}))};Object.defineProperty(eDwZoomToFitCmd.prototype,"Aggregable",{get:function(){return true},enumerable:false,configurable:true});return eDwZoomToFitCmd}(eDwSupportsHistoryCmd);return eDwZoomToFitCmd}));requirejs.config({baseUrl:"./js/3rdParty",paths:{jquery:"jquery.min","jquery-ui":"jquery-ui.min","jquery.fullscreen":"jquery.fullscreen.min","jquery.iframe-transport":"jquery.iframe-transport","jquery.fileupload":"jquery.fileupload","solidworks.web":"solidworks.web"},map:{"jquery.fileupload":{"jquery-ui/ui/widget":"jquery-ui"}},shim:{eDrawingsBase:{deps:["jquery"]},"jquery-ui":{deps:["jquery"]},"jquery.fullscreen":{deps:["jquery"]},"jquery.iframe-transport":{deps:["jquery"]},"jquery-ajax-native":{deps:["jquery"]}}});requirejs(["eDrawingsWebViewer"],(function(eDwWebViewer){console.excludeDebugLogCategories=["UIEvents","BaseSelOp","Operator"];eDwWebViewer.start()}));define("utils",["require","exports"],(function(require,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.makeArray=exports.getFirstMatchedMethodObj=exports.formatString=exports.ReversibleStringEnum=exports.deepCopyArray=exports.getExtension=exports.isEqual=exports.isNumber=exports.isNaN=exports.appendToArray=exports.isOfType=exports.getObjectTypeName=exports.isInstanceOf=exports.populateMixinObjectFromClasses=exports.populateMixinObject=exports.MixinBase=exports.getUint8Array=exports.forAll=void 0;function forAll(iFunc,iDictionary){if(!iDictionary)return;Object.keys(iDictionary).forEach((function(iKeyString){var key=parseInt(iKeyString,10);iFunc(key,iDictionary[key])}))}exports.forAll=forAll;function getUint8Array(iBase64EncodedString){var binString=window.atob(iBase64EncodedString);var len=binString.length;var bytes=new Uint8Array(len);for(var i=0;i-1?true:false}return iInstance instanceof iConstructor?true:isMixinInstance()}exports.isInstanceOf=isInstanceOf;function getObjectTypeName(iObj){if(!iObj)return"";return iObj.constructor.toString().split(" ")[1].split("(")[0]}exports.getObjectTypeName=getObjectTypeName;function isOfType(iArg,iDiscriminator){var argType=typeof iArg;return iArg&&(argType==="object"||argType==="function")?iDiscriminator in iArg:false}exports.isOfType=isOfType;function appendToArray(iElemForArray,ioArray){if(!iElemForArray||!ioArray)return;if(iElemForArray instanceof Promise){ioArray.push(iElemForArray.catch((function(iExcp){return iExcp})))}else{ioArray.push(iElemForArray)}}exports.appendToArray=appendToArray;function isNaN(iInput){return!isNumber(iInput)}exports.isNaN=isNaN;var cOrigNaN=window.isNaN;window.isNaN=isNaN;function isNumber(iInput){return typeof iInput==="number"&&(iInput===0||!cOrigNaN(iInput))?true:false}exports.isNumber=isNumber;function isEqual(iFirstObj,iSecondObj,iStrict){if(iStrict===void 0){iStrict=false}if(iFirstObj===iSecondObj)return true;if(!iFirstObj||!iSecondObj)return false;if(typeof iFirstObj!==typeof iSecondObj)return false;var numKeys=Object.keys(iFirstObj).length;if(iStrict&&numKeys!==Object.keys(iSecondObj).length)return false;var matchKeys=0;for(var key in iFirstObj){if(iFirstObj[key]===iSecondObj[key])++matchKeys}return numKeys===matchKeys?true:false}exports.isEqual=isEqual;function getExtension(iString){if(!iString)return"";var pos=iString.lastIndexOf(".");return pos===-1?"":iString.substr(pos+1).toLowerCase()}exports.getExtension=getExtension;function deepCopyArray(iArray){return JSON.parse(JSON.stringify(iArray))}exports.deepCopyArray=deepCopyArray;var ReversibleStringEnum=function(){function ReversibleStringEnum(iReversibleMapData){this.mMapping=iReversibleMapData;this.mReverseMapping={};for(var key in iReversibleMapData){this.mReverseMapping[iReversibleMapData[key]]=key}}ReversibleStringEnum.prototype.getValue=function(iKey){var value=this.mMapping[iKey];return value?value:this.mReverseMapping[iKey]};return ReversibleStringEnum}();exports.ReversibleStringEnum=ReversibleStringEnum;function formatString(iFormat){var iArgs=[];for(var _i=1;_i-1?iKey:null}));return props.length?iObj[props[0]]:null}exports.getFirstMatchedMethodObj=getFirstMatchedMethodObj;function makeArray(iObj){return iObj?Object.keys(iObj).map((function(iKey){return iObj[iKey]})):[]}exports.makeArray=makeArray})); +var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P((function(resolve){resolve(value)}))}return new(P||(P=Promise))((function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())}))};var __generator=this&&this.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]-1){return}var augmentedMsg=iMsg;var stack=(new Error).stack;if(stack){var stackLine=stack.split("\n")[2];if(!stackLine)return;var callerLine=stackLine.slice(stackLine.lastIndexOf("("),stackLine.lastIndexOf(")")+1);if(!callerLine){callerLine=stackLine.slice(stackLine.lastIndexOf("@")+1);callerLine="("+callerLine+")"}augmentedMsg=callerLine+" "+iMsg}if(console.debugLogCategories.indexOf(iCategory)>-1||console.debugLogCategories.indexOf("*")>-1){if(iParams&&iParams.length)console.log(augmentedMsg,iParams);else console.log(augmentedMsg)}};define("eDrawingsWebViewer",["require","exports","eDwUI","eDwServiceMgr","eDwUIMessageReporter","eDrawingsWebViewerUtils","utils","eDwUIUtils"],(function(require,exports,eDwUI_1,eDwServiceMgr,eDwUIMessageReporter,eDrawingsWebViewerUtils,Utils,eDwUIUtils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.start=void 0;function start(iViewerOpts,iServerURL){eDrawingsWebViewerUtils.startViewer(iServerURL||c_server,"edrawings-canvas",iViewerOpts,l_init,eDwUIMessageReporter.showResultPanel)}exports.start=start;function l_init(ioViewerOpts,iContainerElemID){c_eDrawingsUI.initUIEvents(ioViewerOpts);var modelContents="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";if(modelContents!==""){eDwServiceMgr.get().disableAdvancedServices();ioViewerOpts.URL="";eDwUIUtils.viewFile("SlideDual-20ID-60H-120W",null,ioViewerOpts,iContainerElemID,Utils.getUint8Array(modelContents))}}var c_eDrawingsUI=new eDwUI_1.eDwUI;var c_server=location.origin+location.pathname.slice(0,location.pathname.lastIndexOf("/")+1)}));define("eDrawingsWebViewerUtils",["require","exports","eDwEventMgr","eDwServiceMgr","eDwResultError","eDwAJAXError","eDwUIPluginMgr","eDwTypes","eDwEvents","eDwUIUtils","utils"],(function(require,exports,eDwEventMgr,eDwServiceMgr,eDwResultError,eDwAJAXError,eDwUIPluginMgr,eDwTypes_1,eDwEvents_1,eDwUIUtils,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.removeModelStreamCache=exports.shutdownViewer=exports.startViewer=exports.getViewerVersion=void 0;function getViewerVersion(){return"30.5.0.0019"}exports.getViewerVersion=getViewerVersion;function startViewer(iServerURL,iCanvasID,iViewerOpts,iInit,iOnError){var _this=this;l_ModelLoadEvents=function(iState){var viewerCanvasID="#"+iCanvasID;if(iState==="init"){var viewerJQ=$(viewerCanvasID);viewerJQ.on("edw:ModelLoaded",(function(iEvent,iViewer){var viewHC=iViewer.getHCView();viewHC.setPointSize(0,eDwTypes_1.HC.PointSizeUnit.ScreenPixels);viewHC.setHardEdgesEnabled(false);(function(){return __awaiter(_this,void 0,void 0,(function(){var iExcp_1;return __generator(this,(function(_a){switch(_a.label){case 0:_a.trys.push([0,2,,3]);return[4,l_processProductStructure(iViewer,iServerURL)];case 1:_a.sent();return[3,3];case 2:iExcp_1=_a.sent();l_displayError(iExcp_1,iOnError);return[3,3];case 3:return[2]}}))}))})()}));viewerJQ.on("edw:ModelLoadFailed",(function(iEvent,iViewer,iModelName,iReason){if(iOnError){iOnError({ErrorCode:"ModelLoadInViewerFailed",ErrorData:[iReason,iModelName]})}}))}else{var viewerJQ=$(viewerCanvasID);viewerJQ.off("edw:ModelLoaded");viewerJQ.off("edw:ModelLoadFailed")}};var viewerFeatOpts={};$.extend(viewerFeatOpts,c_featOps);if(iViewerOpts){$.extend(viewerFeatOpts,iViewerOpts)}else{eDwUIUtils.getRequestedQueryStringParams(location.href,viewerFeatOpts)}if(viewerFeatOpts.Debug){if(!console.debugLogCategories||console.debugLogCategories.length===0){console.debugLogCategories=[];console.debugLogCategories.push("*")}}eDwServiceMgr.create(iServerURL);(function(){return __awaiter(_this,void 0,void 0,(function(){var iExcp_2;return __generator(this,(function(_a){switch(_a.label){case 0:_a.trys.push([0,2,,3]);l_ModelLoadEvents("init");return[4,l_init(iCanvasID,viewerFeatOpts,iInit)];case 1:_a.sent();return[3,3];case 2:iExcp_2=_a.sent();l_displayError(iExcp_2,iOnError);return[3,3];case 3:return[2]}}))}))})()}exports.startViewer=startViewer;function shutdownViewer(iViewer){l_ModelLoadEvents("shutdown");iViewer.unregister()}exports.shutdownViewer=shutdownViewer;function removeModelStreamCache(iViewer,iServer){return __awaiter(this,void 0,void 0,(function(){var modelKey,serviceMgr,iExcp_3;return __generator(this,(function(_a){switch(_a.label){case 0:modelKey=iViewer.getCurrModelKey();if(!modelKey||!iViewer.ViewerFeatureOpts.DeleteModelCacheFileWhenDone){return[2]}console.debugLog("ModelLoad","Attempting to remove cached model: "+modelKey);serviceMgr=eDwServiceMgr.get();_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,serviceMgr.removeNamedCache(modelKey,iViewer.ViewerFeatureOpts.DeleteModelCacheFileWhenDone)];case 2:_a.sent();console.debugLog("ModelLoad","Removed cached model: "+modelKey);return[3,4];case 3:iExcp_3=_a.sent();console.debugLog("ModelLoad","Failed to remove cached model: "+modelKey);console.debugLog("ModelLoad",iExcp_3.message);throw iExcp_3;case 4:return[2]}}))}))}exports.removeModelStreamCache=removeModelStreamCache;function l_init(iContainerElemID,ioViewerOpts,iInit){return __awaiter(this,void 0,void 0,(function(){var serviceMgr;var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:serviceMgr=eDwServiceMgr.get();serviceMgr.disableAdvancedServices(utils.getExtension(ioViewerOpts.URL)==="scs");(function(){return __awaiter(_this,void 0,void 0,(function(){var pluginFiles,_i,pluginFiles_1,pluginFile,pluginClassName;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,serviceMgr.getPluginFiles()];case 1:pluginFiles=_a.sent();_i=0,pluginFiles_1=pluginFiles;_a.label=2;case 2:if(!(_i-1))return[3,4];return[4,exclusiveCmds[i].commit()];case 2:_a.sent();_a.label=3;case 3:--i;return[3,1];case 4:this.mActiveCmds=this.mActiveCmds.filter((function(iCmd){return!iCmd.Exclusive}));_a.label=5;case 5:return[2]}}))}))};eDwCommandMgr.prototype.detach=function(iCmd){var cmdPos=this.mActiveCmds.indexOf(iCmd);if(cmdPos===-1)return false;var removedCmds=this.mActiveCmds.splice(cmdPos,1);return removedCmds.length===1?true:false};return eDwCommandMgr}();return eDwCommandMgr}));define("eDwCompositeCmd",["require","exports","eDwSupportsHistoryCmd","eDwHistoryMgr","eDwCommandMgr","utils"],(function(require,exports,eDwSupportsHistoryCmd,eDwHistoryMgr,eDwCommandMgr,Utils){"use strict";var eDwCompositeCmd=function(_super){__extends(eDwCompositeCmd,_super);function eDwCompositeCmd(iViewer){var _this=_super.call(this,iViewer)||this;_this.mSubCmds=[];eDwHistoryMgr.get().pushStack();return _this}eDwCompositeCmd.prototype.initCmdActionImplementation=function(iHistoryActions){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.mCmdHistoryActions=iHistoryActions;if(!(this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeInit))return[3,2];return[4,this.mCmdHistoryActions.compositeInit(this)];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))};eDwCompositeCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){var actionExists,_a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!_super.prototype.undo.call(this))return[2,false];actionExists=this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeUndo;if(!actionExists)return[3,2];return[4,this.mCmdHistoryActions.compositeUndo(this)];case 1:_a=_b.sent();return[3,4];case 2:return[4,this.undoSubCmds()];case 3:_a=_b.sent();_b.label=4;case 4:return[2,_a]}}))}))};eDwCompositeCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){var actionExists,_a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!_super.prototype.redo.call(this))return[2,false];actionExists=this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeRedo;if(!actionExists)return[3,2];return[4,this.mCmdHistoryActions.compositeRedo(this)];case 1:_a=_b.sent();return[3,4];case 2:return[4,this.redoSubCmds()];case 3:_a=_b.sent();_b.label=4;case 4:return[2,_a]}}))}))};eDwCompositeCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.mSubCmds=eDwHistoryMgr.get().popStack();return[4,_super.prototype.commit.call(this)];case 1:_a.sent();if(!(this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeCommit))return[3,3];return[4,this.mCmdHistoryActions.compositeCommit(this)];case 2:_a.sent();_a.label=3;case 3:return[2]}}))}))};eDwCompositeCmd.prototype.cancel=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.mSubCmds=eDwHistoryMgr.get().popStack();return[4,_super.prototype.cancel.call(this)];case 1:_a.sent();if(!(this.mCmdHistoryActions&&this.mCmdHistoryActions.compositeCancel))return[3,3];return[4,this.mCmdHistoryActions.compositeCancel(this)];case 2:_a.sent();return[3,5];case 3:return[4,this.cancelSubCmds()];case 4:_a.sent();_a.label=5;case 5:this.clearSubCmds();return[2]}}))}))};eDwCompositeCmd.prototype.isCommitted=function(){return _super.prototype.isCommitted.call(this)&&!(this.InitialState===undefined)&&!(this.FinalState===undefined)};Object.defineProperty(eDwCompositeCmd.prototype,"AllowsAggregation",{get:function(){return true},enumerable:false,configurable:true});eDwCompositeCmd.prototype.undoSubCmds=function(){return __awaiter(this,void 0,void 0,(function(){var isSuccessful,lastCmdIndex,i,cmd,ret;return __generator(this,(function(_a){switch(_a.label){case 0:isSuccessful=true;lastCmdIndex=this.mSubCmds.length-1;i=lastCmdIndex;_a.label=1;case 1:if(!(i>-1))return[3,4];cmd=this.mSubCmds[i];return[4,cmd.undo()];case 2:ret=_a.sent();console.debugLog("History","Undo subcommand history at index "+i+(ret?" succeeded.":" failed.")+" Object Type = "+Utils.getObjectTypeName(cmd)+".");if(!ret){isSuccessful=false}_a.label=3;case 3:i--;return[3,1];case 4:return[2,isSuccessful]}}))}))};eDwCompositeCmd.prototype.cancelSubCmds=function(){return __awaiter(this,void 0,void 0,(function(){var cmdMgr,lastCmdIndex,i;return __generator(this,(function(_a){switch(_a.label){case 0:cmdMgr=eDwCommandMgr.get();lastCmdIndex=this.mSubCmds.length-1;i=lastCmdIndex;_a.label=1;case 1:if(!(i>-1))return[3,4];return[4,cmdMgr.remove(this.mSubCmds[i],"cancel")];case 2:_a.sent();_a.label=3;case 3:i--;return[3,1];case 4:delete this.InitialState;delete this.FinalState;return[2]}}))}))};eDwCompositeCmd.prototype.redoSubCmds=function(){return __awaiter(this,void 0,void 0,(function(){var isSuccessful,numCmds,i,cmd,ret;return __generator(this,(function(_a){switch(_a.label){case 0:isSuccessful=true;numCmds=this.mSubCmds.length;i=0;_a.label=1;case 1:if(!(i-1){eventHandlerMaps.splice(index,1);++numRemoved}}}return numRemoved};eDwEventMgr.prototype.removeAllEventHandlers=function(){this.mEventHandlers.clear()};eDwEventMgr.prototype.removeEventHandlers=function(iEvent){this.mEventHandlers.delete(iEvent)};eDwEventMgr.prototype.fireEvent=function(iEvent){var iArgs=[];for(var _i=1;_i-1){changedPropAttribNames.push(attribName)}}return changedPropAttribNames};eDwHierarchyNode.isHierarchyNode=function(iNode){return iNode.Name};eDwHierarchyNode.sPropagatingAttribNames=["Visible","Opaque"];return eDwHierarchyNode}();return eDwHierarchyNode}));define("eDwHistoryMgr",["require","exports","utils"],(function(require,exports,Utils){"use strict";var eDwHistoryMgr=function(){function eDwHistoryMgr(){this.clear()}eDwHistoryMgr.get=function(){if(!eDwHistoryMgr.sHistoryMgr){eDwHistoryMgr.sHistoryMgr=new eDwHistoryMgr}return eDwHistoryMgr.sHistoryMgr};eDwHistoryMgr.prototype.undo=function(){var currStacksElem=this.getCurrStackElem();var currStack=currStacksElem.Stack;var currStackCmdIndex=currStacksElem.getCurrCmdIndex();if(currStackCmdIndex<0||currStack.length===0){console.debugLog("History","Already before first command.");return null}currStacksElem.incrementCurrCmdIndex(-1);var cmd=currStack[currStackCmdIndex];cmd.undo();console.debugLog("History","Undoing command at index "+currStackCmdIndex+" Object type: "+Utils.getObjectTypeName(cmd));return cmd};eDwHistoryMgr.prototype.redo=function(){var currStacksElem=this.getCurrStackElem();var currStack=currStacksElem.Stack;var nextStackCmdIndex=currStacksElem.getCurrCmdIndex()+1;if(nextStackCmdIndex>=currStack.length){console.debugLog("History","Already after last command.");return null}currStacksElem.incrementCurrCmdIndex(1);var cmd=currStack[nextStackCmdIndex];cmd.redo();console.debugLog("History","Redoing command at index "+nextStackCmdIndex+" Object type: "+Utils.getObjectTypeName(cmd));return cmd};eDwHistoryMgr.prototype.push=function(iCmd){if(!iCmd)return;var currStacksElem=this.getCurrStackElem();var currStack=currStacksElem.Stack;var currStackSize=currStack.length;var currStackCmdIndex=currStacksElem.getCurrCmdIndex();if(currStackCmdIndex!==currStackSize-1){currStack.splice(currStackCmdIndex+1);console.debugLog("History","Truncated history to "+(currStackCmdIndex+1)+" elements.")}currStack.push(iCmd);currStacksElem.incrementCurrCmdIndex(1);console.debugLog("History","Adding command to history at index "+(currStackCmdIndex+1)+" Object Type = "+Utils.getObjectTypeName(iCmd)+".")};eDwHistoryMgr.prototype.clear=function(){console.debugLog("History","Clear all history.");this.mCmdStacksStack=[];this.pushStack()};eDwHistoryMgr.prototype.pushStack=function(){console.debugLog("History","Add a new history stack at index "+this.mCmdStacksStack.length+".");this.mCmdStacksStack.push(new eDwCmdStacksElem)};eDwHistoryMgr.prototype.popStack=function(){console.debugLog("History","Remove history stack from index "+(this.mCmdStacksStack.length-1)+" down to 0.");var activeCmds=[];var currStackElem=this.mCmdStacksStack.pop();if(currStackElem){var currCmdIndex=currStackElem.getCurrCmdIndex()+1;for(var i=0;i-1&&iKeyInfo[key]){keyModifiers+=key+"-"}}return keyModifiers?keyModifiers.substring(0,keyModifiers.length-1):"none"}}));define("eDwLayer",["require","exports","eDwNodeAttributes","utils"],(function(require,exports,eDwNodeAttributes_2,utils){"use strict";var eDwLayer=function(){function eDwLayer(iLayerName,iLayerIDHC,iAttribs){this.mName=iLayerName;this.mIDHC=iLayerIDHC;this.mInitAttribs=eDwNodeAttributes_2.eDwNodeAttributes.initAttribs(iAttribs);this.mAttribs=eDwNodeAttributes_2.eDwNodeAttributes.initAttribs(iAttribs);this.mNodeIDHCToHierNodeMap={}}eDwLayer.prototype.addNodes=function(iNodeIDsHC,iModel){for(var _i=0,iNodeIDsHC_1=iNodeIDsHC;_i.5){footVal*=signFactor;formattedString=utils.formatString("${footVal}ft ${formattedInches}",footVal.toFixed(0),formattedString)}return formattedString},area:function(iVal){var userUnits=_this.mUserUnits["Length"];var func=basicUserUnitResults[userUnits];var valueWithUnits=func.call(_this,iVal);return utils.formatString(cCommonUnitFormat,valueWithUnits,"^2")}};var unit=this.mUserUnits[iUnitType];unit=unit||iUnitType.toLowerCase();var func=basicUserUnitResults[unit];return func?func.call(this,iValue):iValue.toString()};eDwModel.prototype.setAttribOnHierNodes=function(iHierNodes,iAttribs){return __awaiter(this,void 0,void 0,(function(){var changedHierNodes,changedAncestorHierNodeMap,_i,iHierNodes_1,hierNode,changedAttribNames,propagatingAttribNames,changedChildHierNodes,parentHierNode,_a,propagatingAttribNames_1,attribName,attrib,parentAttrib,value,mergedAttrib,parentIDHC,parentIDHC,changedHierNodesAndAttribs,changedHCNodeID,ancHierNode;return __generator(this,(function(_b){switch(_b.label){case 0:changedHierNodes=[];changedAncestorHierNodeMap={};for(_i=0,iHierNodes_1=iHierNodes;_i0){var sceneData=$(data[0]);this.mOrigin=sceneData.attr("origin");switch(sceneData.attr("type")){case"drawing":this.mCategory="DRAWING";break;case"part":this.mCategory="PART";break;case"assembly":this.mCategory="ASSEMBLY";break;default:break}}this.mProperties=docJQ.find("property");var lengthUnit=this.getProperty("lengthunit");var isValidUnit=eDwUnits_1.LengthTypeValues.indexOf(lengthUnit)>-1;this.mUserUnits.Length=isValidUnit?lengthUnit:this.mUserUnits.Length;var angleUnit=this.getProperty("angleunit");isValidUnit=eDwUnits_1.AngleTypeValues.indexOf(angleUnit)>-1;this.mUserUnits.Angle=isValidUnit?angleUnit:this.mUserUnits.Angle;if(this.mCategory==="DRAWING"){this.parseModelViews(docJQ,"sheet","views","Unnamed Sheet","sheet");this.processLayers(iPropsMapHC)}else{this.parseModelViews(docJQ,"configuration","hierarchy","Unnamed Config","config");if(this.mCategory==="ASSEMBLY"){var modelViews=this.getModelViews();for(var _i=0,modelViews_3=modelViews;_i (HC values) | ";for(var _i=0,_a=this.mModelViews;_i<_a.length;_i++){var modelView=_a[_i];var nodeIDHC=modelView.Hierarchy.HOOPSID;msg+=modelView.Name+" - "+this.isVisibleForNodeHC(nodeIDHC)+" | "}console.debugLog("NodeVisibility",msg);console.debugLog("NodeVisibility","Active model view = "+this.mActiveModelView.Name);var hierNodes=this.mActiveModelView.getNodes();for(var _b=0,hierNodes_1=hierNodes;_b0&&ioHierachyNode){for(var i=0;i"){props.Name=props.Name.replace("<","<");props.Name=props.Name.replace(">",">")}props.Visible=trueFalseOrIndeterminate(iElemJQ.attr("visible"));props.Opaque=falseTrueOrIndeterminate(iElemJQ.attr("transparent"));props.Selectable=trueFalseOrIndeterminate(iElemJQ.attr("selectable"));props.HOOPSID=parseInt(iElemJQ.attr("id"),10)}return props}function l_getPropsAsAttribs(iNodeProps){var nodeAttribs={};eDwNodeAttributes_3.eDwNodeAttributes.setAttribs(nodeAttribs,iNodeProps);return nodeAttribs}function l_getDefaultCamera(iElemJQ){var perspectiveStr=iElemJQ.attr("camPerspective");if(!perspectiveStr)return undefined;var posPtHC=new eDwTypes_7.HC.Point3(parseFloat(iElemJQ.attr("camPosX")),parseFloat(iElemJQ.attr("camPosY")),parseFloat(iElemJQ.attr("camPosZ")));var tgtPtHC=new eDwTypes_7.HC.Point3(parseFloat(iElemJQ.attr("camTgtX")),parseFloat(iElemJQ.attr("camTgtY")),parseFloat(iElemJQ.attr("camTgtZ")));var upVecHC=new eDwTypes_7.HC.Point3(parseFloat(iElemJQ.attr("upX")),parseFloat(iElemJQ.attr("upY")),parseFloat(iElemJQ.attr("upZ")));var width=parseFloat(iElemJQ.attr("camFieldWidth"));var height=parseFloat(iElemJQ.attr("camFieldHeight"));var projHC=perspectiveStr==="true"?eDwTypes_7.HC.Projection.Perspective:eDwTypes_7.HC.Projection.Orthographic;return eDwTypes_7.HC.Camera.create(posPtHC,tgtPtHC,upVecHC,projHC,width,height)}function l_makeNodeAttribArray(iHierNodes,iAttrib,iIgnoreActive){if(iAttrib===void 0){iAttrib=null}if(iIgnoreActive===void 0){iIgnoreActive=true}return iHierNodes.map((function(iHierNode){var attrib={};$.extend(attrib,iHierNode.getAttribs(iIgnoreActive));if(iAttrib)$.extend(attrib,iAttrib);return{HierNode:iHierNode,Attribs:attrib}}))}function l_notifyModelViewChange(iViewer,iModelView,iIsPart){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_2.ModelViewChangeEvent,iViewer,iModelView,!iIsPart)];case 1:_a.sent();return[2]}}))}))}return eDwModel}));define("eDwModelView",["require","exports","eDwHierarchyNode"],(function(require,exports,eDwHierarchyNode){"use strict";var eDwModelView=function(){function eDwModelView(Name,Category,iAttribs,iNodeIDHC,iModel,iDefCameraHC){if(iDefCameraHC===void 0){iDefCameraHC=null}this.Name=Name;this.Category=Category;this.Nodes={};this.mDefCameraHC=iDefCameraHC;this.Hierarchy=new eDwHierarchyNode(this.Name,this.Category,iAttribs,iNodeIDHC,null,this);this.Model=iModel}eDwModelView.prototype.getNodes=function(){var hierNodes=[];for(var hierNodeName in this.Nodes){hierNodes.push(this.Nodes[hierNodeName])}return hierNodes};eDwModelView.prototype.getDefaultCamera=function(){return this.mDefCameraHC};eDwModelView.prototype.resetAttribs=function(){return this.Hierarchy.resetAttribs()};return eDwModelView}();return eDwModelView}));define("eDwMoveSectionPlaneCmd",["require","exports","eDwTypes","eDwSupportsHistoryCmd"],(function(require,exports,eDwTypes_8,eDwSupportsHistoryCmd){"use strict";var eDwMoveSectionPlaneCmd=function(_super){__extends(eDwMoveSectionPlaneCmd,_super);function eDwMoveSectionPlaneCmd(iViewer){var _this=_super.call(this,iViewer)||this;_this.mInitialPntOnPlane=_this.mViewer.XSectionMgr.projectPoint(new eDwTypes_8.HC.Point3(0,0,0));return _this}eDwMoveSectionPlaneCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){var altDir;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];altDir=this.mDir.copy().negate();this.mViewer.XSectionMgr.moveCurrentAlongNormal(altDir);return[2,true]}}))}))};eDwMoveSectionPlaneCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.XSectionMgr.moveCurrentAlongNormal(this.mDir);return[2,true]}}))}))};eDwMoveSectionPlaneCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.commit.call(this)];case 1:_a.sent();this.mFinalPntOnPlane=this.mViewer.XSectionMgr.projectPoint(new eDwTypes_8.HC.Point3(0,0,0));this.mDir=this.mFinalPntOnPlane.subtract(this.mInitialPntOnPlane);return[2]}}))}))};eDwMoveSectionPlaneCmd.prototype.isCommitted=function(){return _super.prototype.isCommitted.call(this)&&!!this.mInitialPntOnPlane&&!!this.mFinalPntOnPlane};Object.defineProperty(eDwMoveSectionPlaneCmd.prototype,"Aggregable",{get:function(){return true},enumerable:false,configurable:true});return eDwMoveSectionPlaneCmd}(eDwSupportsHistoryCmd);return eDwMoveSectionPlaneCmd}));define("eDwNodeAttributes",["require","exports","utils"],(function(require,exports,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.NodeDisplayState=exports.eDwNodeAttributes=void 0;var eDwNodeAttributes=function(){function eDwNodeAttributes(){}eDwNodeAttributes.initAttribs=function(iSourceAttribs){var targetAttribs={};targetAttribs=eDwNodeAttributes.mergeAttribs(targetAttribs,iSourceAttribs);return targetAttribs};eDwNodeAttributes.setAttribs=function(ioTargetAttribs,iSourceAttribs){var changedAttribNames=[];for(var attribKey in iSourceAttribs){if(ioTargetAttribs[attribKey]!==iSourceAttribs[attribKey]){ioTargetAttribs[attribKey]=iSourceAttribs[attribKey];changedAttribNames.push(attribKey)}}return changedAttribNames};eDwNodeAttributes.mergeAttribs=function(ioTargetAttribs,iSourceAttribs){return eDwNodeAttributes.combineAttribs(ioTargetAttribs,iSourceAttribs,(function(iTargetValue,iSourceValue){return iTargetValue||iSourceValue}))};eDwNodeAttributes.intersectAttribs=function(iSrcAttrib1,iSrcAttrib2){return eDwNodeAttributes.combineAttribs(iSrcAttrib1,iSrcAttrib2,(function(iTargetValue,iSourceValue){return iTargetValue&&iSourceValue}))};eDwNodeAttributes.combineAttribs=function(iSrcAttrib1,iSrcAttrib2,iCombineFunc){var fullAttribs={};if(iSrcAttrib1&&iSrcAttrib2){fullAttribs=l_syncAttributeKeys(iSrcAttrib1,iSrcAttrib2);for(var attribKey in fullAttribs){var value=iCombineFunc(iSrcAttrib1[attribKey],iSrcAttrib2[attribKey]);if(value!==undefined)fullAttribs[attribKey]=value;else delete fullAttribs[attribKey]}}return utils.isEqual(fullAttribs,{})?undefined:fullAttribs};return eDwNodeAttributes}();exports.eDwNodeAttributes=eDwNodeAttributes;var NodeDisplayState;(function(NodeDisplayState){NodeDisplayState["Visible"]="Visible";NodeDisplayState["Invisible"]="Invisible";NodeDisplayState["Opaque"]="Opaque";NodeDisplayState["Transparent"]="Transparent"})(NodeDisplayState=exports.NodeDisplayState||(exports.NodeDisplayState={}));function l_syncAttributeKeys(ioTargetAttribs,iSourceAttribs){var attribs=$.extend({},ioTargetAttribs);for(var attribKey in iSourceAttribs){if(!attribs[attribKey]){attribs[attribKey]=undefined}}return attribs}}));define("eDwNodeColorInfo",["require","exports","eDwTypes"],(function(require,exports,eDwTypes_9){"use strict";var eDwNodeColorInfo=function(){function eDwNodeColorInfo(iNodeID,iSecondaryID,iColor,iType){this.mNodeID=iNodeID;this.mSecondID=iSecondaryID;this.mType=iType}eDwNodeColorInfo.prototype.reset=function(iModelHC){switch(this.mType){case eDwTypes_9.EntityMode.EDGE:iModelHC.unsetNodeLineColor(this.mNodeID,this.mSecondID);break;case eDwTypes_9.EntityMode.FACE:iModelHC.unsetNodeFaceColor(this.mNodeID,this.mSecondID);break;case eDwTypes_9.EntityMode.VERTEX:default:break}};return eDwNodeColorInfo}();return eDwNodeColorInfo}));define("eDwOperationMixin",["require","exports"],(function(require,exports){"use strict";var eDwOperationMixin=function(){function eDwOperationMixin(){this.mExclusive=true}Object.defineProperty(eDwOperationMixin.prototype,"Exclusive",{get:function(){return this.mExclusive},enumerable:false,configurable:true});Object.defineProperty(eDwOperationMixin.prototype,"AllowsAggregation",{get:function(){return false},enumerable:false,configurable:true});Object.defineProperty(eDwOperationMixin.prototype,"Aggregable",{get:function(){return false},enumerable:false,configurable:true});return eDwOperationMixin}();return eDwOperationMixin}));define("eDwOperatorBaseDeps",["require","exports","eDwSelObj","eDwKeyMgr","eDwTypes","utils","eDwGeomUtils"],(function(require,exports,eDwSelObj,eDwKeyMgr_1,eDwTypes_10,utils,eDwGeomUtils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.eDwBaseOperator=exports.OperatorHC=exports.eDwOperatorMgr=void 0;var eDwOperatorMgr=function(){function eDwOperatorMgr(iViewer){this.mOpsData={};this.mOperatorMgrHC=iViewer.HCViewer.getOperatorManager();this.resetToDefault();var cameraZoomOp=this.mOperatorMgrHC.getOperator(eDwTypes_10.HC.OperatorId.Zoom);cameraZoomOp.setMouseWheelZoomInverted(false)}eDwOperatorMgr.prototype.registerCustomOperator=function(ioOp,iActivate){if(iActivate===void 0){iActivate=false}ioOp.OperatorID=this.mOperatorMgrHC.registerCustomOperator(ioOp);this.mOpsData[ioOp.OperatorID]={Op:ioOp,ActivatedByDefault:iActivate};if(iActivate)this.push(ioOp.OperatorID);return ioOp.OperatorID};eDwOperatorMgr.prototype.unregisterCustomOperator=function(iOp){this.unregisterCustomOperatorByID(iOp.OperatorID)};eDwOperatorMgr.prototype.unregisterCustomOperatorByID=function(iOpID){if(this.popToOp(iOpID)===iOpID){this.pop()}this.mOperatorMgrHC.unregisterCustomOperator(iOpID);delete this.mOpsData[iOpID]};eDwOperatorMgr.prototype.unregisterAll=function(){var _this=this;utils.forAll((function(iOpID,iOpData){_this.unregisterCustomOperatorByID(iOpID)}),this.mOpsData)};eDwOperatorMgr.prototype.push=function(iOpID){var activeOpID=this.getActiveOperatorID();if(activeOpID!==iOpID){return this.mOperatorMgrHC.push(iOpID)}return false};eDwOperatorMgr.prototype.pop=function(iOpID){var retOpID=eDwTypes_10.HC.OperatorId.None;if(!iOpID||iOpID&&this.getActiveOperatorID()===iOpID){retOpID=this.mOperatorMgrHC.pop()||eDwTypes_10.HC.OperatorId.None}return retOpID};eDwOperatorMgr.prototype.popToOp=function(iOpID){var retOpID=eDwTypes_10.HC.OperatorId.None;var opStackPos=this.mOperatorMgrHC.indexOf(iOpID);if(opStackPos>-1){while(this.getActiveOperatorID()!==iOpID){this.pop()}retOpID=iOpID}return retOpID};eDwOperatorMgr.prototype.getOperator=function(iOpID){return this.mOperatorMgrHC.getOperator(iOpID)};eDwOperatorMgr.prototype.getActiveOperatorID=function(){return this.mOperatorMgrHC.peek()};eDwOperatorMgr.prototype.getOperatorIndex=function(iOp){var opsStack=[];var numOps=this.mOperatorMgrHC.size();var index=-1;for(var i=0;i=0;i++){this.mOperatorMgrHC.push(opsStack[i])}return index};eDwOperatorMgr.prototype.setOpID=function(iOpID,iIndex){return this.mOperatorMgrHC.set(iOpID,iIndex)};eDwOperatorMgr.prototype.set=function(iOp,iIndex){return this.setOpID(iOp.OperatorID,iIndex)};eDwOperatorMgr.prototype.resetToDefault=function(){var _this=this;for(var opID=eDwTypes_10.HC.OperatorId.NavCube;opID>eDwTypes_10.HC.OperatorId.Navigate;opID--){this.pop(opID)}utils.forAll((function(iOpID,iOpData){if(iOpData.ActivatedByDefault){_this.push(iOpData.Op.OperatorID)}}),this.mOpsData)};return eDwOperatorMgr}();exports.eDwOperatorMgr=eDwOperatorMgr;var OperatorHC=function(){function OperatorHC(iOp){this.mOp=iOp;this.OperatorID=NaN}OperatorHC.prototype.onActivate=function(){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp)return[2];_a=this.mOp.onActivate;if(!_a)return[3,2];return[4,this.mOp.onActivate()];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onDeactivate=function(){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp)return[2];_a=this.mOp.onDeactivate;if(!_a)return[3,2];return[4,this.mOp.onDeactivate()];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onMouseDown=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioMouseEvent)return[2];_a=this.mOp.onMouseDown;if(!_a)return[3,2];return[4,this.mOp.onMouseDown(ioMouseEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onMouseMove=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioMouseEvent)return[2];_a=this.mOp.onMouseMove;if(!_a)return[3,2];return[4,this.mOp.onMouseMove(ioMouseEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onMouseUp=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioMouseEvent)return[2];_a=this.mOp.onMouseUp;if(!_a)return[3,2];return[4,this.mOp.onMouseUp(ioMouseEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onMousewheel=function(ioMouseEveent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioMouseEveent)return[2];_a=this.mOp.onMousewheel;if(!_a)return[3,2];return[4,this.mOp.onMousewheel(ioMouseEveent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onTouchStart=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioTouchEvent)return[2];_a=this.mOp.onTouchStart;if(!_a)return[3,2];return[4,this.mOp.onTouchStart(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onTouchMove=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioTouchEvent)return[2];_a=this.mOp.onTouchMove;if(!_a)return[3,2];return[4,this.mOp.onTouchMove(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onTouchEnd=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioTouchEvent)return[2];_a=this.mOp.onTouchEnd;if(!_a)return[3,2];return[4,this.mOp.onTouchEnd(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onKeyDown=function(ioKeyEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioKeyEvent)return[2];_a=this.mOp.onKeyDown;if(!_a)return[3,2];return[4,this.mOp.onKeyDown(ioKeyEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onKeyUp=function(ioKeyEvent){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp||!ioKeyEvent)return[2];_a=this.mOp.onKeyUp;if(!_a)return[3,2];return[4,this.mOp.onKeyUp(ioKeyEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.onViewOrientationChange=function(){return __awaiter(this,void 0,void 0,(function(){var op,_a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp)return[2];op=this.mOp;_a=op.onViewOrientationChange;if(!_a)return[3,2];return[4,op.onViewOrientationChange()];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};OperatorHC.prototype.stopInteraction=function(){return __awaiter(this,void 0,void 0,(function(){var _a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!this.mOp)return[2];_a=this.mOp.stopInteraction;if(!_a)return[3,2];return[4,this.mOp.stopInteraction()];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[2]}}))}))};return OperatorHC}();exports.OperatorHC=OperatorHC;var OperatorBaseHC=function(){function OperatorBaseHC(iViewer,iClickCB,iDoubleClickCB){this.Viewer=iViewer;this.CurrTouches=[];this.DragPt=undefined;this.CurrInputInfo=undefined;this.ActiveMouseButton="none";this.mDoPickTimeOutHandle=NaN;this.mClickCB=iClickCB;this.mDoubleClickCB=iDoubleClickCB}OperatorBaseHC.prototype.onMouseDown=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){if(!ioMouseEvent)return[2];if(eDwKeyMgr_1.eDwKeyMgr.isAnyPressed(ioMouseEvent)){this.setMouse(ioMouseEvent);this.ActiveMouseButton=eDwKeyMgr_1.eDwKeyMgr.getMouseButtonPressed(ioMouseEvent)}return[2]}))}))};OperatorBaseHC.prototype.onMouseMove=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var pos,oldInputInfo;return __generator(this,(function(_a){if(!ioMouseEvent)return[2];pos=ioMouseEvent.getPosition();if(this.CurrInputInfo){oldInputInfo=this.CurrInputInfo;this.setMouse(ioMouseEvent);if(!oldInputInfo.DragPt.equals(this.CurrInputInfo.DragPt)){this.DragPt=this.CurrInputInfo.DragPt}}console.debugLog("Operator","move screen pt = "+JSON.stringify(pos));return[2]}))}))};OperatorBaseHC.prototype.onMouseUp=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){if(!ioMouseEvent)return[2];this.onUp(ioMouseEvent);delete this.DragPt;delete this.CurrInputInfo;return[2]}))}))};OperatorBaseHC.prototype.onTouchStart=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){if(!ioTouchEvent)return[2];console.debugLog("TouchOp","Start - touch ID = "+ioTouchEvent.getId());this.addTouch(ioTouchEvent);return[2]}))}))};OperatorBaseHC.prototype.onTouchMove=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){if(!ioTouchEvent)return[2];console.debugLog("TouchOp","Move - touch ID = "+ioTouchEvent.getId());if(!this.hasTouchMoved(ioTouchEvent)){ioTouchEvent.setHandled(true);return[2]}this.updateTouch(ioTouchEvent);return[2]}))}))};OperatorBaseHC.prototype.onTouchEnd=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){if(!ioTouchEvent)return[2];console.debugLog("TouchOp","End - touch ID = "+ioTouchEvent.getId());ioTouchEvent.setHandled(false);this.removeTouchById(ioTouchEvent.getId());return[2]}))}))};OperatorBaseHC.prototype.onDeactivate=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){delete this.DragPt;return[2]}))}))};OperatorBaseHC.getAsMouseEvent=function(iTouchEvent,iMouseInputType,iButton){if(iButton===void 0){iButton=eDwTypes_10.HC.Buttons.Left}if(iTouchEvent){var pos=iTouchEvent.getPosition();var mouseEvent=new eDwTypes_10.HC.Event.MouseInputEvent(pos.x,pos.y,eDwTypes_10.HC.Button.None,iButton,eDwTypes_10.HC.KeyModifiers.None,iMouseInputType);mouseEvent.setHandled(iTouchEvent.getHandled());return mouseEvent}return null};OperatorBaseHC.prototype.isDragging=function(){return!!this.DragPt};OperatorBaseHC.prototype.addTouch=function(ioTouchEvent){if(!this.getTouchById(ioTouchEvent.getId())){var pnt3DHC=eDwGeomUtils.screenToWorld(ioTouchEvent.getPosition(),this.Viewer.getHCView());if(pnt3DHC){this.CurrTouches.push({Event:ioTouchEvent,DragPt:pnt3DHC,Pos:ioTouchEvent.getPosition()})}}};OperatorBaseHC.prototype.getTouchById=function(iTouchID){for(var i=0;iepsX&&Math.abs(delta.y)>epsY};OperatorBaseHC.prototype.updateTouch=function(ioTouchEvent){var touch=this.getTouchById(ioTouchEvent.getId());if(touch){var pos2DHC=ioTouchEvent.getPosition();var pnt3DHC=eDwGeomUtils.screenToWorld(pos2DHC,this.Viewer.getHCView());if(pnt3DHC){touch.Pos=pos2DHC;touch.DragPt=pnt3DHC}}};OperatorBaseHC.prototype.setMouse=function(ioMouseEvent){var pos2DHC=ioMouseEvent.getPosition();var pnt3DHC=eDwGeomUtils.screenToWorld(pos2DHC,this.Viewer.getHCView());if(!pnt3DHC)return;this.CurrInputInfo={Event:ioMouseEvent,DragPt:pnt3DHC,Pos:pos2DHC}};OperatorBaseHC.prototype.onClick=function(ioInputEvent){return this.mClickCB?this.mClickCB(ioInputEvent):false};OperatorBaseHC.prototype.onDoubleClick=function(ioInputEvent){return this.mDoubleClickCB?this.mDoubleClickCB(ioInputEvent):false};OperatorBaseHC.prototype.onUp=function(ioMouseEvent){var _this=this;var clearPickTimeOut=function(){if(utils.isNaN(_this.mDoPickTimeOutHandle))return;clearTimeout(_this.mDoPickTimeOutHandle);_this.mDoPickTimeOutHandle=NaN;_this.ActiveMouseButton="none"};var processClick=function(ioMouseEvent){_this.onClick(ioMouseEvent);clearPickTimeOut()};var stopFurtherProcessing=false;if(this.ActiveMouseButton==="left"){stopFurtherProcessing=true;if(utils.isNaN(this.mDoPickTimeOutHandle)){this.mDoPickTimeOutHandle=setTimeout((function(){processClick(ioMouseEvent)}),500)}else{clearPickTimeOut();stopFurtherProcessing=this.onDoubleClick(ioMouseEvent)}}else if(this.ActiveMouseButton!=="none"){processClick(ioMouseEvent);stopFurtherProcessing=true}return stopFurtherProcessing};return OperatorBaseHC}();var eDwBaseOperator=function(_super){__extends(eDwBaseOperator,_super);function eDwBaseOperator(iViewer){var _this=this;var clickCB=function(ioInputEvent){return _this.onClick(ioInputEvent)};var doubleClickCB=function(ioInputEvent){return _this.onDoubleClick(ioInputEvent)};_this=_super.call(this,new OperatorBaseHC(iViewer,clickCB,doubleClickCB))||this;return _this}eDwBaseOperator.prototype.onTouchStart=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;var _this=this;return __generator(this,(function(_b){switch(_b.label){case 0:if(!ioTouchEvent)return[2];if(!(this.CurrTouches.length>1))return[3,3];if(!this.mOp)return[2];_a=this.mOp.onTouchStart;if(!_a)return[3,2];return[4,this.mOp.onTouchStart(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[3,5];case 3:return[4,this.wrapAndCallAsMouseEvent(ioTouchEvent,eDwTypes_10.HC.MouseInputType.Down,(function(ioMouseEvent){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.onMouseDown(ioMouseEvent)];case 1:_a.sent();return[2]}}))}))}))];case 4:_b.sent();_b.label=5;case 5:return[2]}}))}))};eDwBaseOperator.prototype.onTouchMove=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;var _this=this;return __generator(this,(function(_b){switch(_b.label){case 0:if(!ioTouchEvent)return[2];if(!(this.CurrTouches.length>1))return[3,3];if(!this.mOp)return[2];_a=this.mOp.onTouchMove;if(!_a)return[3,2];return[4,this.mOp.onTouchMove(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[3,5];case 3:return[4,this.wrapAndCallAsMouseEvent(ioTouchEvent,eDwTypes_10.HC.MouseInputType.Move,(function(ioMouseEvent){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.onMouseMove(ioMouseEvent)];case 1:_a.sent();return[2]}}))}))}))];case 4:_b.sent();_b.label=5;case 5:return[2]}}))}))};eDwBaseOperator.prototype.onTouchEnd=function(ioTouchEvent){return __awaiter(this,void 0,void 0,(function(){var _a;var _this=this;return __generator(this,(function(_b){switch(_b.label){case 0:if(!ioTouchEvent)return[2];if(!(this.CurrTouches.length>1))return[3,3];if(!this.mOp)return[2];_a=this.mOp.onTouchEnd;if(!_a)return[3,2];return[4,this.mOp.onTouchEnd(ioTouchEvent)];case 1:_a=_b.sent();_b.label=2;case 2:_a;return[3,5];case 3:return[4,this.wrapAndCallAsMouseEvent(ioTouchEvent,eDwTypes_10.HC.MouseInputType.Up,(function(ioMouseEvent){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.onMouseUp(ioMouseEvent)];case 1:_a.sent();return[2]}}))}))}),this.convertTouchToButtonHC(ioTouchEvent))];case 4:_b.sent();_b.label=5;case 5:return[2]}}))}))};Object.defineProperty(eDwBaseOperator.prototype,"Viewer",{get:function(){return this.mOp.Viewer},enumerable:false,configurable:true});Object.defineProperty(eDwBaseOperator.prototype,"CurrInputInfo",{get:function(){return this.mOp.CurrInputInfo},set:function(iInputInfo){this.mOp.CurrInputInfo=iInputInfo},enumerable:false,configurable:true});Object.defineProperty(eDwBaseOperator.prototype,"CurrTouches",{get:function(){return this.mOp.CurrTouches},enumerable:false,configurable:true});Object.defineProperty(eDwBaseOperator.prototype,"ActiveMouseButton",{get:function(){return this.mOp.ActiveMouseButton},set:function(iActiveMouseButton){this.mOp.ActiveMouseButton=iActiveMouseButton},enumerable:false,configurable:true});Object.defineProperty(eDwBaseOperator.prototype,"DragPt",{get:function(){return this.mOp.DragPt},set:function(iPnt3DHC){this.mOp.DragPt=iPnt3DHC},enumerable:false,configurable:true});eDwBaseOperator.prototype.isDragging=function(){return this.mOp.isDragging()};eDwBaseOperator.prototype.hasTouchMoved=function(ioTouchEvent){return this.mOp.hasTouchMoved(ioTouchEvent)};eDwBaseOperator.prototype.addTouch=function(ioTouchEvent){this.mOp.addTouch(ioTouchEvent)};eDwBaseOperator.prototype.getTouchById=function(iTouchID){return this.mOp.getTouchById(iTouchID)};eDwBaseOperator.prototype.removeTouchById=function(iTouchID){this.mOp.removeTouchById(iTouchID)};eDwBaseOperator.prototype.wrapAndCallAsMouseEvent=function(ioTouchEvent,iInputType,iMouseFunc,iButton){if(iButton===void 0){iButton=eDwTypes_10.HC.Buttons.Left}return __awaiter(this,void 0,void 0,(function(){var mouseEvent;return __generator(this,(function(_a){switch(_a.label){case 0:mouseEvent=OperatorBaseHC.getAsMouseEvent(ioTouchEvent,iInputType,iButton);if(!mouseEvent)return[3,2];console.debugLog("TouchAsMouse","Touch handled as mouse button "+iButton);this.ActiveMouseButton=eDwKeyMgr_1.eDwKeyMgr.getMouseButtonPressed(mouseEvent);return[4,iMouseFunc(mouseEvent)];case 1:_a.sent();ioTouchEvent.setHandled(mouseEvent.getHandled());_a.label=2;case 2:return[2]}}))}))};eDwBaseOperator.prototype.onClick=function(ioInputEvent){console.debugLog("Click","In eDwBaseOperator.onClick()");return false};eDwBaseOperator.prototype.onDoubleClick=function(ioInputEvent){console.debugLog("Click","In eDwBaseOperator.onDoubleClick()");return false};eDwBaseOperator.getPickResult=function(iEvent,iViewMgr,iPickConfig){if(iPickConfig===void 0){iPickConfig=new eDwTypes_10.HC.PickConfig(eDwTypes_10.HC.SelectionMask.All)}return __awaiter(this,void 0,void 0,(function(){var selObj;return __generator(this,(function(_a){switch(_a.label){case 0:selObj=eDwSelObj.createEmpty();if(!(iEvent&&iViewMgr))return[3,2];return[4,iViewMgr.pickFromPoint(iEvent.getPosition(),iPickConfig)];case 1:selObj=_a.sent();_a.label=2;case 2:return[2,selObj]}}))}))};eDwBaseOperator.prototype.convertTouchToButtonHC=function(ioTouchEvent){var buttonHC=eDwTypes_10.HC.Buttons.None;if(ioTouchEvent){buttonHC=eDwTypes_10.HC.Buttons.Left;if(!this.hasTouchMoved(ioTouchEvent)){var touchInfo=this.getTouchById(ioTouchEvent.getId());var startTime=touchInfo?touchInfo.Event.getDate().getTime():(new Date).getTime();if((new Date).getTime()-startTime>1e3){buttonHC=eDwTypes_10.HC.Buttons.Right}}}return buttonHC};return eDwBaseOperator}(OperatorHC);exports.eDwBaseOperator=eDwBaseOperator}));define("eDwPerspectiveCmd",["require","exports","eDwSupportsHistoryCmd"],(function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwPerspectiveCmd=function(_super){__extends(eDwPerspectiveCmd,_super);function eDwPerspectiveCmd(iViewer,iNewState){var _this=_super.call(this,iViewer)||this;_this.mInitiallyActive=iViewer.getPerspectiveMode();_this.mFinallyActive=iNewState;return _this}eDwPerspectiveCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.setPerspectiveMode(this.mInitiallyActive);return[2,true]}}))}))};eDwPerspectiveCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.setPerspectiveMode(this.mFinallyActive);return[2,true]}}))}))};eDwPerspectiveCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.commit.call(this)];case 1:_a.sent();this.mViewer.setPerspectiveMode(this.mFinallyActive);return[2]}}))}))};Object.defineProperty(eDwPerspectiveCmd.prototype,"Aggregable",{get:function(){return true},enumerable:false,configurable:true});return eDwPerspectiveCmd}(eDwSupportsHistoryCmd);return eDwPerspectiveCmd}));define("eDwResetCmd",["require","exports","eDwSupportsHistoryCmd","eDwEventMgr","eDwEvents"],(function(require,exports,eDwSupportsHistoryCmd,eDwEventMgr,eDwEvents_3){"use strict";var eDwResetCmd=function(_super){__extends(eDwResetCmd,_super);function eDwResetCmd(iViewer){var _this=_super.call(this,iViewer)||this;_this.mPerspective=iViewer.getPerspectiveMode();_this.mExplosionLevel=iViewer.getExplosionLevel();_this.mDrawMode=iViewer.getDrawMode();_this.mAmbientOcclusion=iViewer.getHCView().getAmbientOcclusionEnabled();_this.mCamera=iViewer.getHCView().getCamera();_this.resetToHome();return _this}eDwResetCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];return[4,this.resetToPrevious()];case 2:_a.sent();return[2,true]}}))}))};eDwResetCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];return[4,this.resetToHome()];case 2:_a.sent();return[2,true]}}))}))};eDwResetCmd.prototype.resetToHome=function(){return __awaiter(this,void 0,void 0,(function(){var viewMgr;return __generator(this,(function(_a){switch(_a.label){case 0:viewMgr=this.mViewer.ViewMgr;viewMgr.reset();return[4,this.mViewer.SelectionMgr.unSelectAllObjects()];case 1:_a.sent();this.mViewer.OperatorMgr.resetToDefault();this.mViewer.setPerspectiveMode(false);return[4,this.mViewer.getModel().resetToDefault()];case 2:_a.sent();this.mViewer.setExplosionLevel(0);this.mViewer.resetDrawMode();this.mViewer.ViewMgr.enableAmbientOcclusion(false);return[4,eDwEventMgr.get().fireEvent(eDwEvents_3.ResetSceneEvent,true)];case 3:_a.sent();return[2]}}))}))};eDwResetCmd.prototype.resetToPrevious=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.mViewer.setPerspectiveMode(this.mPerspective);this.mViewer.ViewMgr.setCamera(this.mCamera);this.mViewer.setExplosionLevel(this.mExplosionLevel);this.mViewer.setDrawMode(this.mDrawMode);this.mViewer.ViewMgr.enableAmbientOcclusion(this.mAmbientOcclusion);return[4,eDwEventMgr.get().fireEvent(eDwEvents_3.ResetSceneEvent,false)];case 1:_a.sent();return[2]}}))}))};return eDwResetCmd}(eDwSupportsHistoryCmd);return eDwResetCmd}));define("eDwResultError",["require","exports","eDwBaseError"],(function(require,exports,eDwBaseError){"use strict";var eDwResultError=function(_super){__extends(eDwResultError,_super);function eDwResultError(iResult){var _this=_super.call(this,"Result Error")||this;_this.Result=iResult;return _this}return eDwResultError}(eDwBaseError);return eDwResultError}));define("eDwSectionFlipCmd",["require","exports","eDwSupportsHistoryCmd"],(function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwSectionFlipCmd=function(_super){__extends(eDwSectionFlipCmd,_super);function eDwSectionFlipCmd(iViewer){return _super.call(this,iViewer)||this}eDwSectionFlipCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.XSectionMgr.flipSectionPlane();return[2,true]}}))}))};eDwSectionFlipCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.XSectionMgr.flipSectionPlane();return[2,true]}}))}))};eDwSectionFlipCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.commit.call(this)];case 1:_a.sent();this.mViewer.XSectionMgr.flipSectionPlane();return[2]}}))}))};Object.defineProperty(eDwSectionFlipCmd.prototype,"Aggregable",{get:function(){return true},enumerable:false,configurable:true});return eDwSectionFlipCmd}(eDwSupportsHistoryCmd);return eDwSectionFlipCmd}));define("eDwSectionShowCmd",["require","exports","eDwSupportsHistoryCmd"],(function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwSectionShowCmd=function(_super){__extends(eDwSectionShowCmd,_super);function eDwSectionShowCmd(iViewer,iShow){var _this=_super.call(this,iViewer)||this;_this.mInitialShow=true;_this.mFinalShow=iShow;return _this}eDwSectionShowCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.XSectionMgr.SectionVisibility=this.mInitialShow;return[2,true]}}))}))};eDwSectionShowCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.XSectionMgr.SectionVisibility=this.mFinalShow;return[2,true]}}))}))};eDwSectionShowCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.commit.call(this)];case 1:_a.sent();this.mViewer.XSectionMgr.SectionVisibility=this.mFinalShow;return[2]}}))}))};Object.defineProperty(eDwSectionShowCmd.prototype,"Aggregable",{get:function(){return true},enumerable:false,configurable:true});return eDwSectionShowCmd}(eDwSupportsHistoryCmd);return eDwSectionShowCmd}));define("eDwSelMgr",["require","exports","eDwSelObj","eDwSelectionOperator","eDwEventMgr","eDwKeyMgr","eDwTypes","eDwEvents","utils"],(function(require,exports,eDwSelObj,eDwSelectionOperator,eDwEventMgr,eDwKeyMgr_2,eDwTypes_11,eDwEvents_4,utils){"use strict";var eDwSelMgr=function(){function eDwSelMgr(iViewer){iViewer.SelectionMgr=this;this.mViewer=iViewer;this.mSelMgrHC=iViewer.HCViewer.selectionManager;this.mSelectableObjsHC=[];var selectOp=new eDwSelectionOperator(iViewer,this);var opMgr=this.mViewer.OperatorMgr;this.mSelectOperatorIDHC=opMgr.registerCustomOperator(selectOp,true);this.mSelectOverlayNotifiers={}}eDwSelMgr.prototype.setColorForViewMode=function(mode){var _this=this;var nodeSelColor;var nodeSelOutlineColor=new eDwTypes_11.HC.Color(0,255,0);var nodeElmtSelColor;var nodeElmtSelOutlineColor=new eDwTypes_11.HC.Color(255,255,0);var beautifulGreen=new eDwTypes_11.HC.Color(4,200,5);switch(mode){case eDwTypes_11.HC.DrawMode.WireframeOnShaded:nodeSelColor=beautifulGreen;nodeElmtSelColor=beautifulGreen;break;case eDwTypes_11.HC.DrawMode.Shaded:nodeSelColor=beautifulGreen;nodeElmtSelColor=beautifulGreen;break;case eDwTypes_11.HC.DrawMode.Wireframe:case eDwTypes_11.HC.DrawMode.HiddenLine:nodeSelColor=eDwTypes_11.HC.Color.white();nodeElmtSelColor=eDwTypes_11.HC.Color.white();break;default:var msg="Unknown draw mode: "+mode;console.debugLog("Selection",msg);throw new Error(msg)}this.mSelMgrHC.setNodeSelectionColor(nodeSelColor);this.mSelMgrHC.setNodeSelectionOutlineColor(nodeSelOutlineColor);this.mSelMgrHC.setNodeElementSelectionColor(nodeElmtSelColor);this.mSelMgrHC.setNodeElementSelectionOutlineColor(nodeElmtSelOutlineColor);if(this.mViewer.getModel().isDrawing()&&!this.mViewer.ViewerFeatureOpts.Debug){this.mSelMgrHC.setNodeSelectionHighlightMode(eDwTypes_11.HC.SelectionHighlightMode.OutlineOnly);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.mSelMgrHC.setHighlightNodeSelection(false)];case 1:_a.sent();return[2]}}))}))})()}};eDwSelMgr.prototype.unregister=function(){this.mViewer.OperatorMgr.unregisterCustomOperatorByID(this.mSelectOperatorIDHC);this.mViewer.SelectionMgr=null};eDwSelMgr.prototype.addSelectOverlayNotifier=function(iTypeIndex,iNotifier){if(!this.mSelectOverlayNotifiers[iTypeIndex]){this.mSelectOverlayNotifiers[iTypeIndex]=[]}this.mSelectOverlayNotifiers[iTypeIndex].push(iNotifier)};eDwSelMgr.prototype.removeSelectOverlayNotifier=function(iTypeIndex,iNotifier){var typeNotifiers=this.mSelectOverlayNotifiers[iTypeIndex];var pos=typeNotifiers.indexOf(iNotifier);if(pos>-1){typeNotifiers.splice(pos,1)}return false};eDwSelMgr.prototype.getSelectedNodeIDIndex=function(iHCNodeID){return this.getSelectableIDsHC().indexOf(iHCNodeID)};eDwSelMgr.prototype.onSelection=function(iSelectionEvent){return __awaiter(this,void 0,void 0,(function(){var keyMgr,ctrlKeyDown,shiftKeyDown,hierNodeSelObj,selObjIDHC,existingIdx,selectedAlready,selObjExists,numOfSelObjsAtStart;return __generator(this,(function(_a){switch(_a.label){case 0:keyMgr=eDwKeyMgr_2.eDwKeyMgr.get();ctrlKeyDown=keyMgr.isDown("Control");shiftKeyDown=keyMgr.isDown("Shift");hierNodeSelObj=this.createHierNodeSelObj(eDwSelObj.extendHCSelObj(iSelectionEvent.getSelection()));selObjIDHC=hierNodeSelObj.getIDHC();existingIdx=this.getSelectedNodeIDIndex(selObjIDHC);selectedAlready=existingIdx>-1;l_debugDumpSelection(hierNodeSelObj.getIDHC(),hierNodeSelObj.getSelectionType());selObjExists=utils.isNumber(selObjIDHC);numOfSelObjsAtStart=this.mSelectableObjsHC.length;if(!(numOfSelObjsAtStart&&!ctrlKeyDown&&!shiftKeyDown))return[3,2];return[4,this.unSelectAllObjects(false)];case 1:_a.sent();selectedAlready=false;return[3,5];case 2:if(!(ctrlKeyDown&&!shiftKeyDown&&selectedAlready&&selObjExists))return[3,4];this.mSelectableObjsHC.splice(existingIdx,1);return[4,this.unSelectObjs([hierNodeSelObj],this.mViewer.getModel().isDrawing())];case 3:_a.sent();return[2];case 4:if(!ctrlKeyDown&&shiftKeyDown&&selectedAlready&&selObjExists){return[2]}_a.label=5;case 5:if(!selObjExists)return[3,7];if(!selectedAlready)this.mSelectableObjsHC.push(hierNodeSelObj);return[4,eDwEventMgr.get().fireEvent(eDwEvents_4.SelectEvent,this.mViewer,[hierNodeSelObj])];case 6:_a.sent();return[3,9];case 7:if(!!numOfSelObjsAtStart)return[3,9];return[4,eDwEventMgr.get().fireEvent(eDwEvents_4.LeftClickEvent,this.mViewer)];case 8:_a.sent();_a.label=9;case 9:return[2]}}))}))};eDwSelMgr.prototype.selectByID=function(iID){return utils.isNumber(iID)?this.executeSelection(iID):false};eDwSelMgr.prototype.select=function(iCoords,iPickConfig){return __awaiter(this,void 0,void 0,(function(){var pickCfg,selObj,hierNodeSelObj;return __generator(this,(function(_a){switch(_a.label){case 0:pickCfg=iPickConfig?iPickConfig:new eDwTypes_11.HC.PickConfig(eDwTypes_11.HC.SelectionMask.Face);return[4,this.mViewer.ViewMgr.pickFromPoint(iCoords,pickCfg)];case 1:selObj=_a.sent();if(this.isSelectionHandled(selObj)){return[2,false]}hierNodeSelObj=this.createHierNodeSelObj(selObj);if(utils.isNumber(hierNodeSelObj.getIDHC())){return[2,this.executeSelection(hierNodeSelObj)]}this.mSelMgrHC.set(null);return[2,false]}}))}))};eDwSelMgr.prototype.isSelected=function(iHCNodeID){return this.getSelectableIDsHC().indexOf(iHCNodeID)<0?false:true};eDwSelMgr.prototype.append=function(iSelObj){this.mSelMgrHC.add(iSelObj)};eDwSelMgr.prototype.unSelectAllObjects=function(iClearHCSelList){if(iClearHCSelList===void 0){iClearHCSelList=true}return __awaiter(this,void 0,void 0,(function(){var unselectedHCObjs;return __generator(this,(function(_a){switch(_a.label){case 0:unselectedHCObjs=this.mSelectableObjsHC;this.mSelectableObjsHC=[];return[4,this.unSelectObjs(unselectedHCObjs,this.mViewer.getModel().isDrawing())];case 1:_a.sent();if(unselectedHCObjs.length>0&&iClearHCSelList){this.mSelMgrHC.selectNode(null)}return[2]}}))}))};eDwSelMgr.prototype.setViewToSelectedFace=function(){var camera=null;var selObjs=this.mSelMgrHC.getResults();for(var _i=0,selObjs_1=selObjs;_i0){return selIDsHC[selIDsHC.length-1]}return NaN};eDwSelMgr.prototype.getLastSelHierarchyNode=function(){var modelView=this.mViewer.getModel().getActiveModelView();return modelView.Nodes[this.getLastSelIDHC()]};eDwSelMgr.prototype.getSelectableIDsHC=function(){var selIDsHC=[];for(var _i=0,_a=this.mSelectableObjsHC;_i<_a.length;_i++){var selObjHC=_a[_i];var selIDHC=selObjHC.getNodeId();if(utils.isNumber(selIDHC))selIDsHC.push(selIDHC)}return selIDsHC};eDwSelMgr.prototype.getSelHierarchyNodes=function(){var selHierNodes=[];var modelView=this.mViewer.getModel().getActiveModelView();var seoIDsHC=this.getSelectableIDsHC();for(var _i=0,seoIDsHC_1=seoIDsHC;_i-1){iSelMgr.mSelectableObjsHC.splice(index,1)}var unselObjsHC_1=iSelMgr.mSelectableObjsHC;iSelMgr.mSelectableObjsHC=[];(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,iSelMgr.unSelectObjs(unselObjsHC_1,true)];case 1:_a.sent();return[4,hierNode.showBoundingBox(viewer,"on")];case 2:_a.sent();return[2]}}))}))})();shown=true}else{(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,hierNode.showBoundingBox(viewer,"toggle")];case 1:_a.sent();return[2]}}))}))})();shown=index>-1?false:true}if(shown){var selObjDupHC_1=eDwTypes_11.HC.Selection.SelectionItem.create(hierNode.HOOPSID);iSelMgr.addUniqueToSelectableObjsHC(selObjDupHC_1);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_4.SelectEvent,viewer,[selObjDupHC_1])];case 1:_a.sent();l_debugDumpSelection(selObjDupHC_1.getNodeId(),selObjDupHC_1.getSelectionType());return[2]}}))}))})()}}else{var selMgrHC=iSelMgr.mSelMgrHC;if(!selObjHC){selMgrHC.selectNode(nodeIDHC,iSelModeHC);var selObj=eDwSelObj.extendHCSelObj(selMgrHC.getLast());if(selObj.getIDHC()===nodeIDHC){iSelMgr.addUniqueToSelectableObjsHC(selObj)}}else{if(iSelModeHC===eDwTypes_11.HC.SelectionMode.Add){selMgrHC.add(selObjHC)}else if(iSelModeHC===eDwTypes_11.HC.SelectionMode.Set){selMgrHC.set(selObjHC)}else{var wasSelected=selMgrHC.isSelected(selObjHC);selMgrHC.toggle(selObjHC);if(wasSelected){var index=iSelMgr.mSelectableObjsHC.indexOf(selObjHC);if(index>-1){iSelMgr.mSelectableObjsHC.splice(index,1)}}}if(selMgrHC.isSelected(selObjHC)){iSelMgr.addUniqueToSelectableObjsHC(selObjHC)}}}return eDwTypes_11.HC.SelectionType.Part}return eDwTypes_11.HC.SelectionType.None}var ret=false;try{var selType=eDwTypes_11.HC.SelectionType.None;var keyMgr=eDwKeyMgr_2.eDwKeyMgr.get();if(!keyMgr.isDown("Control")&&!keyMgr.isDown("Shift")){selType=selectNodeHC(this,eDwTypes_11.HC.SelectionMode.Set);ret=true}else{var existingIdx=this.getSelectedNodeIDIndex(nodeIDHC);if(existingIdx>-1){if(keyMgr.isDown("Control")){this.mSelMgrHC.remove(this.mSelectableObjsHC[existingIdx]);this.mSelectableObjsHC.splice(existingIdx,1)}else if(keyMgr.isDown("Shift")){ret=true}}else{selType=selectNodeHC(this,eDwTypes_11.HC.SelectionMode.Add);if(this.getSelectedNodeIDIndex(nodeIDHC)>-1){ret=true}}}if(selType!==eDwTypes_11.HC.SelectionType.None){l_debugDumpSelection(nodeIDHC,selType)}}catch(iErr){console.log("eDwSelMgr.selectByID failed")}return ret};return eDwSelMgr}();function l_debugDumpSelection(iID,iSelType){console.debugLog("Selection","Selected Obj ID: "+iID+" - type: "+eDwTypes_11.HC.SelectionType[iSelType])}return eDwSelMgr}));define("eDwSelObj",["require","exports","eDwTypes","eDwGeomUtils","utils"],(function(require,exports,eDwTypes_12,eDwGeomUtils_1,utils){"use strict";var eDwSelObj=function(){function eDwSelObj(iSelObjHC,iToLocalTransformHC){if(iToLocalTransformHC===void 0){iToLocalTransformHC=null}utils.populateMixinObjectFromClasses(this,[eDwTypes_12.HC.Selection.SelectionItem]);$.extend(true,this,iSelObjHC);this.setPointInLocalSpace(iSelObjHC.getPosition(),iToLocalTransformHC)}eDwSelObj.prototype.getIDHC=function(){var nodeIDHC=this.getNodeId();return utils.isNumber(nodeIDHC)?nodeIDHC:NaN};eDwSelObj.prototype.getLocalPoint=function(){return this.mLocalPnt};eDwSelObj.prototype.getWorldPoint=function(){return this.getPosition()};eDwSelObj.prototype.getAsLocalPoint=function(iWorldPtHC){return this.mToLocalTransformHC&&iWorldPtHC?this.mToLocalTransformHC.transform(iWorldPtHC):iWorldPtHC};eDwSelObj.prototype.getAsWorldPoint=function(iLocalPtHC){var toWorldTransformHC=this.mToLocalTransformHC?eDwTypes_12.HC.Matrix.inverse(this.mToLocalTransformHC):null;return toWorldTransformHC&&iLocalPtHC?toWorldTransformHC.transform(iLocalPtHC):iLocalPtHC};eDwSelObj.prototype.getLocalVector=function(){var _this=this;return this.getVectorInfo((function(iPntWCHC){return _this.getAsLocalPoint(iPntWCHC)})).Vec};eDwSelObj.prototype.getWorldVector=function(){return this.getVectorInfo().Vec};eDwSelObj.prototype.getAsLocalVector=function(iWorldVecHC){var normalMatrix=this.mToLocalTransformHC?this.mToLocalTransformHC.normalMatrix():null;return iWorldVecHC&&normalMatrix?normalMatrix.transform(iWorldVecHC):null};eDwSelObj.prototype.getAsWorldVector=function(iLocalVecHC){var toWorldTransformHC=this.mToLocalTransformHC?eDwTypes_12.HC.Matrix.inverse(this.mToLocalTransformHC):null;var normalMatrix=toWorldTransformHC?toWorldTransformHC.normalMatrix():null;return iLocalVecHC&&normalMatrix?normalMatrix.transform(iLocalVecHC):null};eDwSelObj.prototype.getToLocalTransform=function(){return this.mToLocalTransformHC};eDwSelObj.prototype.findAngle=function(iSelObj){var _this=this;var selObj1Type=eDwSelObj.getSubEntityInfo(this).SubEntityTypeName;var selObj2Type=eDwSelObj.getSubEntityInfo(iSelObj).SubEntityTypeName;if(!selObj1Type||!selObj2Type||selObj2Type==="Point"||selObj1Type==="Point"){return NaN}var toLocalFunc;if(this.getToLocalTransform().equals(iSelObj.getToLocalTransform())){toLocalFunc=function(iPntWCHC){return _this.getAsLocalPoint(iPntWCHC)}}var selObjVecInfo1=this.getVectorInfo(toLocalFunc);var selObjVecInfo2=iSelObj.getVectorInfo(toLocalFunc);if(selObj1Type!==selObj2Type){var curveVecInfo=selObjVecInfo1;var faceVecInfo=selObjVecInfo2;if(selObj1Type==="Face"){curveVecInfo=selObjVecInfo2;faceVecInfo=selObjVecInfo1}var surfPlane=eDwTypes_12.HC.Plane.createFromPointAndNormal(faceVecInfo.Pts[0],faceVecInfo.Vec);faceVecInfo.Pts[0]=eDwGeomUtils_1.dropPointOnPlane(curveVecInfo.Pts[0],surfPlane);faceVecInfo.Pts[1]=eDwGeomUtils_1.dropPointOnPlane(curveVecInfo.Pts[1],surfPlane);faceVecInfo.Vec=eDwTypes_12.HC.Point3.subtract(faceVecInfo.Pts[0],faceVecInfo.Pts[1])}if(!selObjVecInfo1.Vec||!selObjVecInfo1.Pts||!selObjVecInfo2.Vec||!selObjVecInfo2.Pts)return NaN;var normal3DHC=eDwTypes_12.HC.Point3.cross(selObjVecInfo1.Vec,selObjVecInfo2.Vec);if(!eDwGeomUtils_1.isValidHCPoint(normal3DHC)||normal3DHC.length()newVec23DHC.length())vec13DHC=newVec13DHC;var newVec33DHC=eDwTypes_12.HC.Point3.subtract(pts3DHC[2],intPt3DHC);var newVec43DHC=eDwTypes_12.HC.Point3.subtract(pts3DHC[3],intPt3DHC);var vec23DHC=newVec43DHC;if(newVec33DHC.length()>newVec43DHC.length())vec23DHC=newVec33DHC;vec13DHC.normalize();vec23DHC.normalize();return Math.acos(eDwTypes_12.HC.Point3.dot(vec13DHC,vec23DHC))*180/Math.PI};eDwSelObj.extendHCSelObj=function(ioSelObj,iToLocalTransformHC){if(iToLocalTransformHC===void 0){iToLocalTransformHC=null}utils.populateMixinObjectFromClasses(ioSelObj,[eDwSelObj]);if(utils.isInstanceOf(ioSelObj,eDwSelObj)){var pos2DHC=ioSelObj.getPosition();if(pos2DHC){ioSelObj.setPointInLocalSpace(pos2DHC,iToLocalTransformHC)}return ioSelObj}throw new TypeError("eDwSelObj is undefined")};eDwSelObj.createEmpty=function(){return new eDwSelObj(eDwTypes_12.HC.Selection.SelectionItem.create())};eDwSelObj.getLocalTransform=function(ioSelObjHC,iModel){var toLocalTransformHC=new eDwTypes_12.HC.Matrix;var subEntityInfo=eDwSelObj.getSubEntityInfo(ioSelObjHC);if(subEntityInfo.SubEntity){var selObj=eDwSelObj.extendHCSelObj(ioSelObjHC);var selObjIDHC=selObj.getIDHC();var selHierNode=iModel.getHierarchyNode(selObjIDHC);if(selHierNode&&selHierNode.Category==="view"){var modelHC=iModel.getHCModel();var parentNodeHC=modelHC.getNodeParent(selHierNode.HOOPSID);var parentNetMatrixHC=modelHC.getNodeNetMatrix(parentNodeHC);var selNetMatrixHC=modelHC.getNodeNetMatrix(selObjIDHC);var invParentNetMatrix=parentNetMatrixHC.inverseAndDeterminant()[0]||new eDwTypes_12.HC.Matrix;var matrixHC=eDwTypes_12.HC.Matrix.multiply(selNetMatrixHC,invParentNetMatrix);toLocalTransformHC=eDwTypes_12.HC.Matrix.inverse(matrixHC)||new eDwTypes_12.HC.Matrix}}return toLocalTransformHC};eDwSelObj.getMinDistInfo=function(iSelPropsHC,iSelObjs,iModel){return __awaiter(this,void 0,void 0,(function(){function getMinDistPtToFace(iPointHC,iSelObj,iFaceSelObj,iModelHC){return __awaiter(this,void 0,void 0,(function(){var lineRay;return __generator(this,(function(_a){switch(_a.label){case 0:lineRay=new eDwTypes_12.HC.Ray(iPointHC,new eDwTypes_12.HC.Point3(0,0,0));return[4,getMinDistLineToFace(lineRay,iSelObj,iFaceSelObj,iModelHC)];case 1:return[2,_a.sent()]}}))}))}function getMinDistLineToFace(iRayHC,iSelObj,iFaceSelObj,iModelHC){return __awaiter(this,void 0,void 0,(function(){var distItem;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,iModelHC.computeMinimumFaceLineDistance(iFaceSelObj.getNodeId(),iFaceSelObj.getFaceEntity().getCadFaceIndex(),iRayHC)];case 1:distItem=_a.sent();return[2,adjustDistance(iSelObj,iFaceSelObj,distItem)]}}))}))}function adjustDistance(iSelObj,iFaceSelObj,ioDistItem){var toLocalTransformHC=iSelObj.getToLocalTransform();var toLocalTransformForFaceHC=iFaceSelObj.getToLocalTransform();if(toLocalTransformHC&&toLocalTransformForFaceHC&&toLocalTransformHC.equals(toLocalTransformForFaceHC)){ioDistItem.distance*=toLocalTransformHC.upperLeft3x3Determinant()}return ioDistItem}var selEntInfoHC0,selEntInfoHC1,modelHC,vertSelObj,faceSelObj,faceProp,pos2DHC,faceSelObj0,faceSelObj1,faceProp0,faceProp1,distItem,edgeSelObj,edgeProp,faceSelObj,faceProp,pntsWCHC,lineHC;return __generator(this,(function(_a){switch(_a.label){case 0:if(2!==iSelObjs.length)return[2,null];selEntInfoHC0=eDwSelObj.getSubEntityInfo(iSelObjs[0]);selEntInfoHC1=eDwSelObj.getSubEntityInfo(iSelObjs[1]);modelHC=iModel.getHCModel();if(!(selEntInfoHC0.SubEntityTypeName==="Point"&&selEntInfoHC1.SubEntityTypeName==="Face"||selEntInfoHC1.SubEntityTypeName==="Point"&&selEntInfoHC0.SubEntityTypeName==="Face"))return[3,3];vertSelObj=iSelObjs[0];faceSelObj=iSelObjs[1];faceProp=iSelPropsHC[1];if(selEntInfoHC1.SubEntityTypeName==="Point"&&selEntInfoHC0.SubEntityTypeName==="Face"){vertSelObj=iSelObjs[1];faceSelObj=iSelObjs[0];faceProp=iSelPropsHC[0]}pos2DHC=vertSelObj.getPosition();if(!pos2DHC){throw new TypeError("vertSelObj position is undefined")}if(!(faceProp instanceof eDwTypes_12.HC.SubentityProperties.PlaneElement))return[3,2];return[4,getMinDistPtToFace(vertSelObj.getPosition(),vertSelObj,faceSelObj,modelHC)];case 1:return[2,_a.sent()];case 2:return[3,10];case 3:if(!(selEntInfoHC0.SubEntityTypeName==="Face"&&selEntInfoHC1.SubEntityTypeName==="Face"))return[3,6];faceSelObj0=iSelObjs[0],faceSelObj1=iSelObjs[1];faceProp0=iSelPropsHC[0],faceProp1=iSelPropsHC[1];if(!(faceProp0 instanceof eDwTypes_12.HC.SubentityProperties.PlaneElement&&faceProp1 instanceof eDwTypes_12.HC.SubentityProperties.PlaneElement))return[3,5];return[4,modelHC.computeMinimumFaceFaceDistance(faceSelObj0.getNodeId(),faceSelObj0.getFaceEntity().getCadFaceIndex(),faceSelObj1.getNodeId(),faceSelObj1.getFaceEntity().getCadFaceIndex())];case 4:distItem=_a.sent();return[2,adjustDistance(faceSelObj0,faceSelObj1,distItem)];case 5:return[3,10];case 6:if(!(selEntInfoHC0.SubEntityTypeName==="Line"&&selEntInfoHC1.SubEntityTypeName==="Face"||selEntInfoHC1.SubEntityTypeName==="Line"&&selEntInfoHC0.SubEntityTypeName==="Face"))return[3,10];edgeSelObj=iSelObjs[0];edgeProp=iSelPropsHC[0];faceSelObj=iSelObjs[1];faceProp=iSelPropsHC[1];if(selEntInfoHC1.SubEntityTypeName==="Line"&&selEntInfoHC0.SubEntityTypeName==="Face"){faceSelObj=iSelObjs[0];faceProp=iSelPropsHC[0];edgeSelObj=iSelObjs[1];edgeProp=iSelPropsHC[1]}if(!(edgeProp instanceof eDwTypes_12.HC.SubentityProperties.CircleElement&&faceProp instanceof eDwTypes_12.HC.SubentityProperties.PlaneElement))return[3,8];return[4,getMinDistPtToFace(edgeProp.origin,edgeSelObj,faceSelObj,modelHC)];case 7:return[2,_a.sent()];case 8:if(!(edgeProp instanceof eDwTypes_12.HC.SubentityProperties.LineElement&&faceProp instanceof eDwTypes_12.HC.SubentityProperties.PlaneElement))return[3,10];pntsWCHC=edgeSelObj.getLineEntity().getPoints();if(!(pntsWCHC.length===2))return[3,10];lineHC=new eDwTypes_12.HC.Ray(pntsWCHC[0],pntsWCHC[1]);return[4,getMinDistLineToFace(lineHC,edgeSelObj,faceSelObj,modelHC)];case 9:return[2,_a.sent()];case 10:return[2,null]}}))}))};eDwSelObj.getSelObjProperty=function(iSelObjHC,iModel){return __awaiter(this,void 0,void 0,(function(){var subEntityProperty,subEntityInfo,subEntityTypeName,selObj,subEntityID,modelHC,_a;return __generator(this,(function(_b){switch(_b.label){case 0:subEntityProperty=null;subEntityInfo=eDwSelObj.getSubEntityInfo(iSelObjHC);subEntityTypeName="Unknown";if(!subEntityInfo.SubEntity)return[3,6];selObj=eDwSelObj.extendHCSelObj(iSelObjHC);subEntityTypeName=subEntityInfo.SubEntityTypeName;subEntityID=eDwSelObj.getSubEntityID(subEntityInfo.SubEntity);modelHC=iModel.getHCModel();_a=subEntityTypeName;switch(_a){case"Line":return[3,1];case"Face":return[3,3];case"Point":return[3,5]}return[3,5];case 1:return[4,modelHC.getEdgeProperty(selObj.getIDHC(),subEntityID)];case 2:subEntityProperty=_b.sent();return[3,6];case 3:return[4,modelHC.getFaceProperty(selObj.getIDHC(),subEntityID)];case 4:subEntityProperty=_b.sent();return[3,6];case 5:return[3,6];case 6:return[2,{Property:subEntityProperty,Name:subEntityTypeName}]}}))}))};eDwSelObj.setSelObjSubEntityColor=function(iSelObjsHC,iModel,iColor){return eDwSelObj.setSelObjSubEntity(iSelObjsHC,iModel,iColor)};eDwSelObj.setSelObjSubEntityHighlight=function(iSelObjsHC,iModel,iHighlight){return eDwSelObj.setSelObjSubEntity(iSelObjsHC,iModel,iHighlight)};eDwSelObj.getSubEntityInfo=function(iSelObjHC){function checkIfSelectable(iSubEntity,iSelTypeMask){return eDwSelObj.getSubEntityBits(iSubEntity)&iSelTypeMask?true:false}var subEntity=null;var typeName="";var isSelectable=false;if(iSelObjHC){if(subEntity=iSelObjHC.getPointEntity()){typeName="Point";isSelectable=true}else if(subEntity=iSelObjHC.getLineEntity()){typeName="Line";var cEdgeSelMeasureHC=4;isSelectable=checkIfSelectable(subEntity,cEdgeSelMeasureHC)}else if(subEntity=iSelObjHC.getFaceEntity()){typeName="Face";var cFaceSelMeasureHC=1;isSelectable=checkIfSelectable(subEntity,cFaceSelMeasureHC)}}return{SubEntity:subEntity,SubEntityTypeName:typeName,IsSelectable:isSelectable}};eDwSelObj.getSubEntityTypeName=function(iSubEntityType){if(!iSubEntityType)return"";return utils.getObjectTypeName(iSubEntityType).slice(0,-6)};eDwSelObj.getSubEntityID=function(iSubEntity){return iSubEntity?iSubEntity._elementIndex:NaN};eDwSelObj.getSubEntityBits=function(iSubEntity){return iSubEntity?iSubEntity._elementBits:NaN};eDwSelObj.prototype.setPointInLocalSpace=function(iWorldPtHC,iToLocalTransformHC){if(iToLocalTransformHC){this.mLocalPnt=iWorldPtHC?iToLocalTransformHC.transform(iWorldPtHC):null;this.mToLocalTransformHC=iToLocalTransformHC}};eDwSelObj.setSelObjSubEntity=function(iSelObjsHC,iModel,iSetting){if(!iSelObjsHC||!iSelObjsHC.length)return[];var modelHC=iModel.getHCModel();var subEntityIDs=[];for(var _i=0,iSelObjsHC_2=iSelObjsHC;_i1){startCrvPt3DHC=iTransformPointFunc(crvPtsWC3DHC[0]);endCrvPt3DHC=iTransformPointFunc(crvPtsWC3DHC[numPts-1]);vec3DHC=eDwTypes_12.HC.Point3.subtract(endCrvPt3DHC,startCrvPt3DHC);if(vec3DHC.length()-1;--i){currentNode=childHierarchyMap[children[i]];viewIDsHC.push(currentNode.HOOPSID)}pickConfig=new eDwTypes_13.HC.PickConfig(eDwTypes_13.HC.SelectionMask.All);return[4,this.Viewer.ViewMgr.pickFromPoint(iCoords,pickConfig)];case 1:selObj=_a.sent();selObjIDHC=selObj.getIDHC();if(!utils.isNaN(selObjIDHC))return[3,3];return[4,this.Viewer.SelectionMgr.select(iCoords)];case 2:selSuccess=_a.sent();_a.label=3;case 3:hierNode=model.getHierarchyNode(selObjIDHC);if(!hierNode)return[3,6];if(!(viewIDsHC.indexOf(hierNode.HOOPSID)>-1))return[3,5];return[4,this.Viewer.SelectionMgr.selectByID(hierNode.HOOPSID)];case 4:selSuccess=_a.sent();_a.label=5;case 5:return[3,10];case 6:_i=0,viewIDsHC_1=viewIDsHC;_a.label=7;case 7:if(!(_i0){pluginName=matches[1]}else{console.warn("Could not locate external plugin name in file "+iPluginFile)}return[3,5];case 4:iExcp_11=_a.sent();console.warn("Failed to load external plugin - "+iExcp_11.message);return[3,5];case 5:return[2,pluginName]}}))}))};eDwServiceMgr.prototype.getPluginFiles=function(){return __awaiter(this,void 0,void 0,(function(){var _a,_b,iExcp_12;return __generator(this,(function(_c){switch(_c.label){case 0:if(!eDwServiceMgr.usesWebServices())return[2,this.mPluginFiles];if(!!this.mPluginFiles.length)return[3,7];_c.label=1;case 1:_c.trys.push([1,6,,7]);if(!this.mAdvancedServicesDisabled)return[3,3];console.debugLog("ServiceMgr","Loading static plugin list");_a=this;return[4,this.ajax("GET","js/staticPluginList.json",{})];case 2:_a.mPluginFiles=_c.sent();return[3,5];case 3:console.debugLog("ServiceMgr","Finding plugins...");_b=this;return[4,this.ajax("GET","EDrawingsService.svc/GetPlugins",{})];case 4:_b.mPluginFiles=_c.sent();_c.label=5;case 5:return[3,7];case 6:iExcp_12=_c.sent();console.warn("No plugins available.");return[3,7];case 7:return[2,this.mPluginFiles]}}))}))};eDwServiceMgr.prototype.extendLicense=function(iKey){return __awaiter(this,void 0,void 0,(function(){var params;return __generator(this,(function(_a){switch(_a.label){case 0:if(this.mAdvancedServicesDisabled||!eDwServiceMgr.usesWebServices()){return[2]}params={data:{iKey:iKey},cache:false};return[4,this.ajax("GET","EDrawingsService.svc/ExtendLicense",params)];case 1:_a.sent();return[2]}}))}))};eDwServiceMgr.prototype.getBaseCacheDirs=function(){return __awaiter(this,void 0,void 0,(function(){var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:if(!!this.mBaseCacheDirs.length)return[3,2];this.mBaseCacheDirs=[];this.mGetBaseCacheDirsPromise=$.get("cacheDirs.xml",(function(iDoc){var cacheDirs=iDoc.getElementsByTagName("modelSearchDirectory");var numDirs=cacheDirs.length;for(var i=0;i-1){foundPluginFileName=pluginFileName}}return[2,foundPluginFileName]}}))}))};eDwServiceMgr.prototype.ajax=function(iMethod,iService,iParams){return __awaiter(this,void 0,void 0,(function(){var paramsObj,retAJAX,iExcp_13;return __generator(this,(function(_a){switch(_a.label){case 0:paramsObj={type:iMethod,url:this.mServerURL+"/"+iService,async:true};if(iParams)$.extend(paramsObj,iParams);_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,$.ajax(paramsObj)];case 2:retAJAX=_a.sent();return[3,4];case 3:iExcp_13=_a.sent();console.warn("AJAX "+iMethod+" failed for "+iService+": "+iExcp_13.message);throw iExcp_13;case 4:return[2,retAJAX]}}))}))};return eDwServiceMgr}();return eDwServiceMgr}));define("eDwSetHierNodeAttribsCmd",["require","exports","eDwSupportsHistoryCmd"],(function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwSetHierNodeAttribsCmd=function(_super){__extends(eDwSetHierNodeAttribsCmd,_super);function eDwSetHierNodeAttribsCmd(iViewer,iHierNodes,iAttrib){var _this=_super.call(this,iViewer)||this;_this.mInitialHierNodeAttribs=[];_this.mFinalHierNodeAttribs=[];var finalAttrib=$.extend(true,{},iAttrib);for(var _i=0,iHierNodes_2=iHierNodes;_i-1){this.mTouchOpIDs.splice(opIndex,1);this.mViewer.OperatorMgr.unregisterCustomOperatorByID(iOpID)}};eDwTouchOpsMgr.isTouchEnabled=function(){function matchMedia(iFeature){return window.matchMedia&&window.matchMedia(iFeature).matches?true:false}var enabled=false;if("PointerEvent"in window&&"maxTouchPoints"in navigator){var maxTouchPoints=navigator.maxTouchPoints;if(utils.isNumber(maxTouchPoints)){if(navigator.maxTouchPoints>0){enabled=true}else if(navigator.maxTouchPoints===0&&matchMedia("(any-pointer:coarse)")){enabled=true}}}else{if(matchMedia("(any-pointer:coarse)")){enabled=true}else if("TouchEvent"in window||"ontouchstart"in window){enabled=true}}console.debugLog("TouchOps","Touch enabled = "+enabled);return enabled};return eDwTouchOpsMgr}();return eDwTouchOpsMgr}));define("eDwTypes",["require","exports"],(function(require,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.EntityMode=exports.SectionPlaneOrientation=exports.HCI=exports.HC=void 0;var HC=Communicator;exports.HC=HC;var HCI=Communicator.Internal;exports.HCI=HCI;exports.SectionPlaneOrientation={XY:{Plane:HC.Plane.createFromPointAndNormal(new HC.Point3(0,0,0),new HC.Point3(0,0,1)),Index:0},YZ:{Plane:HC.Plane.createFromPointAndNormal(new HC.Point3(0,0,0),new HC.Point3(1,0,0)),Index:1},ZX:{Plane:HC.Plane.createFromPointAndNormal(new HC.Point3(0,0,0),new HC.Point3(0,1,0)),Index:2}};exports.EntityMode={FACE:1,EDGE:2,VERTEX:4,HOLE:8,ALL:4294967295}}));define("eDwUI",["require","exports","eDwTypes","eDwKeyMgr","eDwUIBaseEventHandlers","eDwCommandMgr","eDwZoomToFitCmd","eDwDrawModeCmd","eDwAnimateCmd","eDwAmbientOcclusionCmd","eDwPerspectiveCmd","eDwSetViewCmd","eDwSetViewCameraCmd","eDwCompositeCmd","eDwSectionFlipCmd","eDwSetViewNormalToSectionCmd","eDwShowSectionCapCmd","eDwSectionShowCmd","eDwChangeSectionPlaneCmd","eDwUIPluginMgr","eDwEventMgr","eDwUIMessageReporter","eDwUIShortcutMenu","eDwUIUtils","eDrawingsWebViewerUtils","eDwEvents","utils"],(function(require,exports,eDwTypes_14,eDwKeyMgr_3,eDwUIBaseEventHandlers,eDwCommandMgr,eDwZoomToFitCmd,eDwDrawModeCmd,eDwAnimateCmd,eDwAmbientOcclusionCmd,eDwPerspectiveCmd,eDwSetViewCmd,eDwSetViewCameraCmd,eDwCompositeCmd,eDwSectionFlipCmd,eDwSetViewNormalToSectionCmd,eDwShowSectionCapCmd,eDwSectionShowCmd,eDwChangeSectionPlaneCmd,eDwUIPluginMgr,eDwEventMgr,eDwUIMessageReporter,eDwUIShortcutMenu_1,eDwUIUtils,eDrawingsWVUtils,eDwEvents,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.eDwUI=void 0;var eDwUI=function(){function eDwUI(){this.mUIEventHandlers=new UIEventHandlers(this,eDwUIUtils.getViewerElementName(),c_canvasID);this.mItemActiveCallbacks={};this.mItemDeactiveCallbacks={};solidworks.web.touch.support();this.awfulUIHacks()}eDwUI.prototype.initUIEvents=function(iViewerFeatOpts){this.mViewerFeatureOpts=iViewerFeatOpts;this.registerHTMLEvents()};eDwUI.prototype.init=function(iViewer){var _this=this;this.mViewer=iViewer;this.centerBottomBar();this.mViewer.XSectionMgr.SectionCapVisibility=true;$("#edrawings-section-capping-button").addClass("state-on-button");$("#edrawings-section-show-button").addClass("state-on-button");eDwUIUtils.hide(".edrawings-ui-main",false);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents.ResetSceneEvent,true)];case 1:_a.sent();return[2]}}))}))})()};eDwUI.prototype.toggleFullScreen=function(){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){var methodName,viewerElem,iExcp_14;return __generator(this,(function(_a){switch(_a.label){case 0:methodName="exitFullScreen()";_a.label=1;case 1:_a.trys.push([1,6,,7]);if(!l_isFullScreen())return[3,3];document.exitFullscreen=document.exitFullscreen||utils.getFirstMatchedMethodObj(document,"xitFullscreen");if(!document.exitFullscreen){console.warn("exitFullscreen() does not exist.");return[2]}return[4,document.exitFullscreen()];case 2:_a.sent();return[3,5];case 3:methodName="requestFullscreen()";viewerElem=$("#edrawings-viewer")[0];viewerElem.requestFullscreen=viewerElem.requestFullscreen||utils.getFirstMatchedMethodObj(viewerElem,"equestFullscreen");if(!viewerElem.requestFullscreen){console.warn("requestFullscreen() does not exist.");return[2]}return[4,viewerElem.requestFullscreen()];case 4:_a.sent();_a.label=5;case 5:return[3,7];case 6:iExcp_14=_a.sent();console.warn(methodName+" failed. It took too long.");return[3,7];case 7:return[2]}}))}))})()};eDwUI.prototype.unregister=function(){this.unregisterHTMLEvents();UIEventHandlers.doModelDataUnloadActions(this.mViewer)};eDwUI.prototype.setDrawMode=function(iValue){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){var drawModeCmd;return __generator(this,(function(_a){switch(_a.label){case 0:drawModeCmd=new eDwDrawModeCmd(this.mViewer,iValue);return[4,eDwCommandMgr.get().run(drawModeCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()};eDwUI.prototype.setInitialDrawMode=function(){if(!this.mViewer.ViewerFeatureOpts.RenderType)return;this.setDrawMode(this.mViewer.ViewerFeatureOpts.RenderType)};eDwUI.prototype.setPerspectiveMode=function(iValue){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){var perspectiveCmd;return __generator(this,(function(_a){switch(_a.label){case 0:perspectiveCmd=new eDwPerspectiveCmd(this.mViewer,iValue);return[4,eDwCommandMgr.get().run(perspectiveCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()};eDwUI.prototype.hideAllOtherPanels=function(iPanelCSSClassName){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iPanelCSSClassName!==".edrawings-hud-menu"))return[3,2];return[4,this.hideActiveHUDMenu()];case 1:_a.sent();_a.label=2;case 2:if(!(iPanelCSSClassName!==".edrawings-submenu"))return[3,4];return[4,this.hideActiveSubmenu()];case 3:_a.sent();_a.label=4;case 4:eDwUIShortcutMenu_1.eDwUIShortcutMenu.hide();return[2]}}))}))};eDwUI.prototype.onClick=function(iID,iActivate){var activateCallback=this.mItemActiveCallbacks[iID];var deactivateCallback=this.mItemDeactiveCallbacks[iID];if(iActivate){if(activateCallback)activateCallback()}else{if(deactivateCallback)deactivateCallback()}return activateCallback||deactivateCallback?true:false};eDwUI.prototype.registerHTMLEvents=function(){var _this=this;this.mUIEventHandlers.addHTMLEventHandlers(this.mViewerFeatureOpts);this.mModelDataLoadCompleteHandler=function(iEvent,iViewer){_this.mViewer=iViewer;eDwUIBaseEventHandlers.doModelDataLoadCompleteActions(_this.mUIEventHandlers,iViewer)};$("#"+c_canvasID).on("edw:ModelDataLoadComplete",this.mModelDataLoadCompleteHandler);var self=this;this.registerButtonForClickEffect("edrawings-section-flip-button",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){var sectionFlipCmd;return __generator(this,(function(_a){switch(_a.label){case 0:sectionFlipCmd=new eDwSectionFlipCmd(this.mViewer);return[4,eDwCommandMgr.get().run(sectionFlipCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}));this.registerButtonForClickEffect("edrawings-section-normal-button",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){var setViewNormalToSectionCmd;return __generator(this,(function(_a){switch(_a.label){case 0:setViewNormalToSectionCmd=new eDwSetViewNormalToSectionCmd(this.mViewer);return[4,eDwCommandMgr.get().run(setViewNormalToSectionCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}));function setXSectionOrientation(iEvent,iUI,iOrientation){iUI.setXSectionOrientation(iOrientation);eDwUIUtils.scrollToTarget(eDwUIUtils.getAsJQueryObj(iEvent.currentTarget))}$("#edrawings-section-xz-button").on("click.edw",(function(iEvent){return setXSectionOrientation(iEvent,_this,eDwTypes_14.SectionPlaneOrientation.ZX)}));$("#edrawings-section-yz-button").on("click.edw",(function(iEvent){return setXSectionOrientation(iEvent,_this,eDwTypes_14.SectionPlaneOrientation.YZ)}));$("#edrawings-section-xy-button").on("click.edw",(function(iEvent){return setXSectionOrientation(iEvent,_this,eDwTypes_14.SectionPlaneOrientation.XY)}));$("#edrawings-section-capping-button").on("click.edw",(function(iEvent){var buttonJQ=eDwUIUtils.getAsJQueryObj(iEvent.currentTarget);var visibility=!buttonJQ.hasClass("state-on-button");(function(){return __awaiter(_this,void 0,void 0,(function(){var showCapsCmd;return __generator(this,(function(_a){switch(_a.label){case 0:showCapsCmd=new eDwShowSectionCapCmd(this.mViewer,visibility);return[4,eDwCommandMgr.get().run(showCapsCmd,"commit")];case 1:_a.sent();return[2]}}))}))})();buttonJQ.toggleClass("state-on-button");eDwUIUtils.scrollToTarget(buttonJQ)}));$("#edrawings-section-show-button").on("click.edw",(function(iEvent){var buttonJQ=eDwUIUtils.getAsJQueryObj(iEvent.currentTarget);var showSection=!buttonJQ.hasClass("state-on-button");(function(){return __awaiter(_this,void 0,void 0,(function(){var showSectionCmd;return __generator(this,(function(_a){switch(_a.label){case 0:showSectionCmd=new eDwSectionShowCmd(this.mViewer,showSection);return[4,eDwCommandMgr.get().run(showSectionCmd,"commit")];case 1:_a.sent();return[2]}}))}))})();buttonJQ.toggleClass("state-on-button");eDwUIUtils.scrollToTarget(buttonJQ)}));this.mItemActiveCallbacks["#edrawings-button-section"]=function(){return __awaiter(_this,void 0,void 0,(function(){function compositeSectionDone(ioCmd){ioCmd.clearSubCmds();self.mViewer.XSectionMgr.deactivateCurrent();self.mViewer.XSectionMgr.turnOnSectionPlane(false)}var self;var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:eDwUIUtils.addPanelModeEvents("#edrawings-section-menu",".edw.section","#edrawings-button-section");this.mCompositeXSectionCmd=new eDwCompositeCmd(this.mViewer);eDwCommandMgr.get().add(this.mCompositeXSectionCmd);this.mCompositeXSectionCmd.initCmdActionImplementation({compositeInit:function(ioCmd){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){this.mViewer.XSectionMgr.turnOnSectionPlane(true);this.setXSectionOrientation();return[2]}))}))},compositeUndo:function(ioCmd){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){return[2,true]}))}))},compositeRedo:function(ioCmd){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){return[2,true]}))}))},compositeCommit:function(ioCmd){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){compositeSectionDone(ioCmd);return[2]}))}))},compositeCancel:function(ioCmd){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){compositeSectionDone(ioCmd);return[2]}))}))}});self=this;if(!!this.mViewer.getModel().isDrawing())return[3,2];return[4,this.setActiveSubmenu("#edrawings-button-section","#edrawings-section-menu")];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))};this.mItemDeactiveCallbacks["#edrawings-button-section"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:eDwUIUtils.deactivateMoveInput(".edw.section");return[4,eDwCommandMgr.get().remove(this.mCompositeXSectionCmd,"cancel")];case 1:_a.sent();return[2]}}))}))};eDwEventMgr.get().addEventHandlerFunc(eDwEvents.DeactivateUIOpEvent,(function(iActiveButtonsJQ){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iActiveButtonsJQ[0].id==="edrawings-button-section"))return[3,2];return[4,this.mItemDeactiveCallbacks["#edrawings-button-section"]()];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))}));function activateDebugPanel(iActivate,iHandlers){return __awaiter(this,void 0,void 0,(function(){var shortcutMenu;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,togglePanel(iActivate,"#edrawings-button-debug","#edrawings-debug-menu",".edw.debug",iHandlers)];case 1:_a.sent();if(iActivate){shortcutMenu=eDwUIShortcutMenu_1.eDwUIShortcutMenu.get();if(!shortcutMenu.isEmpty()){shortcutMenu.addMenuSeparator(c_debugGroupName)}shortcutMenu.addMenuItem(c_debugGroupName,"edrawings-debug-node-matrices",(function(iEvent,iUIItemJQ,iArg){if(utils.isOfType(iArg,"attr")){var nodeIDHC=parseInt(iArg.attr("data-hoopsid"),10);if(utils.isNumber(nodeIDHC)){var modelHC=self.mViewer.getModel().getHCModel();var matrixHC=modelHC.getNodeMatrix(nodeIDHC);var msg="
Matrix = "+JSON.stringify(matrixHC)+"
";matrixHC=modelHC.getNodeNetMatrix(nodeIDHC);msg+="
Net matrix = "+JSON.stringify(matrixHC)+"
";eDwUIMessageReporter.showMessageInDebugPanel(msg)}}eDwUIShortcutMenu_1.eDwUIShortcutMenu.hide()}))}else{eDwUIShortcutMenu_1.eDwUIShortcutMenu.get().removeAllMenuItems(c_debugGroupName)}return[2]}}))}))}this.mItemActiveCallbacks["#edrawings-button-debug"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateDebugPanel(true,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};this.mItemDeactiveCallbacks["#edrawings-button-debug"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateDebugPanel(false,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};eDwEventMgr.get().addEventHandlerFunc(eDwEvents.DeactivateUIOpEvent,(function(iActiveButtonsJQ){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iActiveButtonsJQ[0].id==="edrawings-button-debug"))return[3,2];return[4,this.mItemDeactiveCallbacks["#edrawings-button-debug"]()];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))}));this.mItemActiveCallbacks["#edrawings-button-reset"]=function(){return __awaiter(_this,void 0,void 0,(function(){var _this=this;return __generator(this,(function(_a){eDwUIUtils.resetToHomeView(this.mViewer);window.setTimeout((function(){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.deactivateUI()];case 1:_a.sent();return[2]}}))}))})()}),1e3);return[2]}))}))};$(document).on(c_fullScreenChange,(function(iEvent){if(l_isFullScreen()){l_fullScreenBtnJS.removeClass(c_restoreClass)}else{l_fullScreenBtnJS.addClass(c_restoreClass);$("#edrawings-canvas-canvas-container").css({"background-color":""})}}));$("#edrawings-button-fs").on("click.edw",(function(){_this.toggleFullScreen()}));function clickDrawMode(iUI,iMode){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:iUI.setDrawMode(iMode);return[4,iUI.hideActiveHUDMenu()];case 1:_a.sent();return[2]}}))}))})()}$("#edrawings-button-shaded-hlrr").on("click.edw",(function(){clickDrawMode(_this,"HiddenLinesRemoved")}));$("#edrawings-button-shaded-hlrv").on("click.edw",(function(){clickDrawMode(_this,"HiddenLinesVisible")}));$("#edrawings-button-shaded-wireframe").on("click.edw",(function(){clickDrawMode(_this,"Wireframe")}));$("#edrawings-button-shaded-full").on("click.edw",(function(){clickDrawMode(_this,"ShadedWithEdges")}));$("#edrawings-button-shaded-noedges").on("click.edw",(function(){clickDrawMode(_this,"Shaded")}));this.mItemActiveCallbacks["#edrawings-button-animate"]=function(){return __awaiter(_this,void 0,void 0,(function(){var animateCmd;return __generator(this,(function(_a){switch(_a.label){case 0:animateCmd=new eDwAnimateCmd(this.mViewer);return[4,eDwCommandMgr.get().run(animateCmd,"commit")];case 1:_a.sent();return[2]}}))}))};this.mItemDeactiveCallbacks["#edrawings-button-animate"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.mItemActiveCallbacks["#edrawings-button-animate"]()];case 1:_a.sent();return[2]}}))}))};$("#edrawings-button-frame-file-open").on("click.edw",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.hideActiveHUDMenu()];case 1:_a.sent();return[2]}}))}))})()}));this.mItemActiveCallbacks["#edrawings-button-view"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.setActiveHUDMenu("#edrawings-button-view","#edrawings-hud-view-menu")];case 1:_a.sent();return[2]}}))}))};this.mItemActiveCallbacks["#edrawings-button-help"]=function(){return __awaiter(_this,void 0,void 0,(function(){var version,viewerHC;return __generator(this,(function(_a){switch(_a.label){case 0:version="
Version #: "+eDrawingsWVUtils.getViewerVersion()+"
";if(this.mViewerFeatureOpts.Debug){viewerHC=this.mViewer.HCViewer;version+="
HC Version:"+viewerHC.getViewerVersionString()+"
Format Version: "+viewerHC.getFormatVersionString()+"
"}$("#edrawings-version").html(version);return[4,this.setActiveHUDMenu("#edrawings-button-help","#edrawings-hud-help-menu")];case 1:_a.sent();return[2]}}))}))};$("#edrawings-hud-help-close").on("click.edw",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.hideActiveHUDMenu()];case 1:_a.sent();return[2]}}))}))})()}));this.mItemActiveCallbacks["#edrawings-button-zoomtofit"]=function(){return __awaiter(_this,void 0,void 0,(function(){var viewHC,curModelView,nodeID,zoomToFitCmd;return __generator(this,(function(_a){switch(_a.label){case 0:viewHC=this.mViewer.getHCView();curModelView=this.mViewer.getModel().getActiveModelView();nodeID=curModelView.Hierarchy.HOOPSID;zoomToFitCmd=new eDwZoomToFitCmd(this.mViewer,nodeID,viewHC.getCamera());return[4,eDwCommandMgr.get().run(zoomToFitCmd,"commit")];case 1:_a.sent();return[2]}}))}))};this.mItemActiveCallbacks["#edrawings-button-shaded"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.setActiveHUDMenu("#edrawings-button-shaded","#edrawings-hud-shaded-menu")];case 1:_a.sent();return[2]}}))}))};function togglePanel(iActivate,iButtonID,iPanelID,iInputEventIDSuffix,iHandlers){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!iActivate)return[3,2];return[4,self.setActiveSubmenu(iButtonID,iPanelID)];case 1:_a.sent();eDwUIUtils.addPanelModeEvents(iPanelID,iInputEventIDSuffix,iButtonID);return[3,3];case 2:eDwUIUtils.deactivateMoveInput(iInputEventIDSuffix);_a.label=3;case 3:return[2]}}))}))}function activateSheetPanel(iActivate,iHandlers){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,togglePanel(iActivate,"#edrawings-button-sheet-tree","#edrawings-sheet-tree-menu",".edw.sheet",iHandlers)];case 1:_a.sent();return[2]}}))}))}this.mItemActiveCallbacks["#edrawings-button-sheet-tree"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateSheetPanel(true,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};this.mItemDeactiveCallbacks["#edrawings-button-sheet-tree"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateSheetPanel(false,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};eDwEventMgr.get().addEventHandlerFunc(eDwEvents.DeactivateUIOpEvent,(function(iActiveButtonsJQ){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iActiveButtonsJQ[0].id==="edrawings-button-sheet-tree"))return[3,2];return[4,this.mItemDeactiveCallbacks["#edrawings-button-sheet-tree"]()];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))}));function activateLayerPanel(iActivate,iHandlers){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,togglePanel(iActivate,"#edrawings-button-layer-control","#edrawings-layer-control-menu",".edw.layer",iHandlers)];case 1:_a.sent();return[2]}}))}))}this.mItemActiveCallbacks["#edrawings-button-layer-control"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateLayerPanel(true,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};this.mItemDeactiveCallbacks["#edrawings-button-layer-control"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,activateLayerPanel(false,this.mUIEventHandlers)];case 1:_a.sent();return[2]}}))}))};eDwEventMgr.get().addEventHandlerFunc(eDwEvents.DeactivateUIOpEvent,(function(iActiveButtonsJQ){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iActiveButtonsJQ[0].id==="edrawings-button-layer-control"))return[3,2];return[4,this.mItemDeactiveCallbacks["#edrawings-button-layer-control"]()];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))}));eDwKeyMgr_3.eDwKeyMgr.get().add({key:"F11"},"keydown",(function(iEvent){iEvent.preventDefault();_this.toggleFullScreen();iEvent.stopPropagation()}));this.mItemActiveCallbacks["#edrawings-button-view-settings"]=function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.setActiveHUDMenu("#edrawings-button-view-settings","#edrawings-hud-view-settings-menu")];case 1:_a.sent();return[2]}}))}))};var ambientOcc=$("#edrawings-button-view-ambient-occlusion");ambientOcc.on("click.edw",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){var buttonActive,ambientOcclCmd;return __generator(this,(function(_a){switch(_a.label){case 0:buttonActive=ambientOcc.hasClass("state-on-button");return[4,this.hideActiveHUDMenu()];case 1:_a.sent();if(buttonActive)ambientOcc.removeClass("state-on-button");else ambientOcc.addClass("state-on-button");ambientOcclCmd=new eDwAmbientOcclusionCmd(this.mViewer,!buttonActive);return[4,eDwCommandMgr.get().run(ambientOcclCmd,"commit")];case 2:_a.sent();return[2]}}))}))})()}));$("#edrawings-button-view-perspective").on("click.edw",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){var perspectiveMode;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.hideActiveHUDMenu()];case 1:_a.sent();perspectiveMode=!this.mViewer.getPerspectiveMode();this.setPerspectiveMode(perspectiveMode);return[2]}}))}))})()}));this.registerButtonForClickEffect("edrawings-button-view-top",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Top)}));this.registerButtonForClickEffect("edrawings-button-view-bottom",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Bottom)}));this.registerButtonForClickEffect("edrawings-button-view-left",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Left)}));this.registerButtonForClickEffect("edrawings-button-view-right",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Right)}));this.registerButtonForClickEffect("edrawings-button-view-front",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Front)}));this.registerButtonForClickEffect("edrawings-button-view-back",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Back)}));this.registerButtonForClickEffect("edrawings-button-view-iso",(function(){_this.setViewOrientation(eDwTypes_14.HC.ViewOrientation.Iso)}))};eDwUI.prototype.unregisterHTMLEvents=function(){this.mUIEventHandlers.removeHTMLEventHandlers();$("#"+c_canvasID).off("edw:ModelDataLoadComplete",this.mModelDataLoadCompleteHandler);$("#edrawings-section-xz-button").off("click.edw");$("#edrawings-section-yz-button").off("click.edw");$("#edrawings-section-xy-button").off("click.edw");$("#edrawings-section-capping-button").off("click.edw");$("#edrawings-section-show-button").off("click.edw");$("#edrawings-button-fs").off("click.edw");$("#edrawings-button-shaded-hlrr").off("click.edw");$("#edrawings-button-shaded-hlrv").off("click.edw");$("#edrawings-button-shaded-wireframe").off("click.edw");$("#edrawings-button-shaded-full").off("click.edw");$("#edrawings-button-shaded-noedges").off("click.edw");$("#edrawings-button-sheets").off("click.edw");$("#edrawings-button-frame-file-open").off("click.edw");$("#edrawings-button-view-ambient-occlusion").off("click.edw");$("#edrawings-button-view-perspective").off("click.edw");$("#edrawings-hud-help-close").off("click.edw");$(document).off(c_fullScreenChange);$(document).off("click.edw");$(document).off("mousedown.edw");$(document).off("dblclick.edw");this.unregisterButtonForClickEffect("edrawings-section-flip-button");this.unregisterButtonForClickEffect("edrawings-section-normal-button");this.unregisterButtonForClickEffect("edrawings-face-normal-button");this.unregisterButtonForClickEffect("edrawings-button-view-top");this.unregisterButtonForClickEffect("edrawings-button-view-bottom");this.unregisterButtonForClickEffect("edrawings-button-view-left");this.unregisterButtonForClickEffect("edrawings-button-view-right");this.unregisterButtonForClickEffect("edrawings-button-view-front");this.unregisterButtonForClickEffect("edrawings-button-view-back");this.unregisterButtonForClickEffect("edrawings-button-view-iso")};eDwUI.prototype.setActiveSubmenu=function(iButtonID,iPanelID){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.activateUI(iButtonID,iPanelID)];case 1:_a.sent();return[2]}}))}))};eDwUI.prototype.hideActiveSubmenu=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.deactivateUI(".edrawings-tool-button",".edrawings-submenu")];case 1:_a.sent();return[2]}}))}))};eDwUI.prototype.centerBottomBar=function(iWidth,iHeight){$(".tool-bar").css({height:"auto"});var barJQ=$(".tool-bar");var viewerElemJQ=$(eDwUIUtils.getViewerElementID());var leftButtonsJQ=$(".edrawings-icon-set.left");var rightButtonsJQ=$(".edrawings-icon-set.right");var centerButtonsJQ=$(".edrawings-icon-set.center");var width=(iWidth?iWidth:viewerElemJQ.width())-1;if(navigator.userAgent.indexOf("Trident")>=0){width=viewerElemJQ[0].clientWidth-1}barJQ.css({position:"absolute"});leftButtonsJQ.css({left:1+"px",position:"absolute"});rightButtonsJQ.css({right:1+"px",position:"absolute"});centerButtonsJQ.css({left:width/2-52/2+"px",position:"absolute"})};eDwUI.prototype.setActiveHUDMenu=function(iButtonID,iPanelID){return __awaiter(this,void 0,void 0,(function(){var buttonJQ,buttonOffset,posx,posy,canvasWidth,panelJQ,panelWidth;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.hideActiveHUDMenu()];case 1:_a.sent();return[4,eDwUIUtils.activateUI(iButtonID,iPanelID)];case 2:_a.sent();if(iButtonID!=="#edrawings-button-help"){buttonJQ=$(iButtonID);buttonOffset=buttonJQ.offset();posx=buttonOffset.left;posy=buttonOffset.top+parseInt(buttonJQ.css("marginTop"))+parseInt(buttonJQ.css("borderTopWidth"))+buttonJQ.height();canvasWidth=$("#edrawings-canvas").width();panelJQ=$(iPanelID);panelWidth=panelJQ[0].offsetWidth;if(posx+panelWidth>canvasWidth){posx=canvasWidth-panelWidth-10}panelJQ.css({top:posy+"px",left:posx+"px"})}return[2]}}))}))};eDwUI.prototype.hideActiveHUDMenu=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.deactivateUI(".edrawings-hud-button",".edrawings-hud-menu")];case 1:_a.sent();return[2]}}))}))};eDwUI.prototype.registerButtonForClickEffect=function(iButtonID,iHandler){var butJQ=$("#"+iButtonID);butJQ.on("mousedown.edw",(function(){butJQ.addClass("edrawings-on-state");eDwUIUtils.scrollToTarget(butJQ)}));butJQ.on("mouseup.edw",(function(){butJQ.removeClass("edrawings-on-state");iHandler()}))};eDwUI.prototype.unregisterButtonForClickEffect=function(iButtonID){var butJQ=$("#"+iButtonID);butJQ.off("mousedown.edw");butJQ.off("mouseup.edw")};eDwUI.prototype.setViewOrientation=function(iOrientation){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){var setViewCmd;return __generator(this,(function(_a){switch(_a.label){case 0:setViewCmd=new eDwSetViewCmd(this.mViewer,iOrientation);return[4,eDwCommandMgr.get().run(setViewCmd,"commit")];case 1:_a.sent();return[4,this.hideActiveHUDMenu()];case 2:_a.sent();return[2]}}))}))})()};eDwUI.prototype.setXSectionOrientation=function(iNewSection){var _this=this;function setActive(iButtonID,iIsActive){$(iButtonID)[iIsActive?"addClass":"removeClass"]("state-on-button")}var sectionMgr=this.mViewer.XSectionMgr;var sectionIndex=iNewSection?iNewSection.Index:sectionMgr.SectionIndex;var planeFromEnum=null;switch(sectionIndex){case eDwTypes_14.SectionPlaneOrientation.YZ.Index:setActive("#edrawings-section-xy-button",false);setActive("#edrawings-section-yz-button",true);setActive("#edrawings-section-xz-button",false);planeFromEnum=eDwTypes_14.SectionPlaneOrientation.YZ;break;case eDwTypes_14.SectionPlaneOrientation.ZX.Index:setActive("#edrawings-section-xy-button",false);setActive("#edrawings-section-yz-button",false);setActive("#edrawings-section-xz-button",true);planeFromEnum=eDwTypes_14.SectionPlaneOrientation.ZX;break;case eDwTypes_14.SectionPlaneOrientation.XY.Index:eDwUIUtils.hide("#edrawings-section-xy-button",false);eDwUIUtils.hide("#edrawings-section-yz-button",false);eDwUIUtils.hide("#edrawings-section-xz-button",false);setActive("#edrawings-section-xy-button",true);setActive("#edrawings-section-yz-button",false);setActive("#edrawings-section-xz-button",false);planeFromEnum=eDwTypes_14.SectionPlaneOrientation.XY;break;default:console.debugLog("UI","Unsupported section plane orientation");break}var origPlaneEnum=null;if(sectionIndex!==sectionMgr.SectionIndex){switch(sectionMgr.SectionIndex){case eDwTypes_14.SectionPlaneOrientation.YZ.Index:origPlaneEnum=eDwTypes_14.SectionPlaneOrientation.YZ;break;case eDwTypes_14.SectionPlaneOrientation.ZX.Index:origPlaneEnum=eDwTypes_14.SectionPlaneOrientation.ZX;break;case eDwTypes_14.SectionPlaneOrientation.XY.Index:origPlaneEnum=eDwTypes_14.SectionPlaneOrientation.XY;break;default:console.debugLog("UI","Unsupported initial section plane orientation");break}if(planeFromEnum&&origPlaneEnum){(function(){return __awaiter(_this,void 0,void 0,(function(){var changeSectionPlaneCmd;return __generator(this,(function(_a){switch(_a.label){case 0:changeSectionPlaneCmd=new eDwChangeSectionPlaneCmd(this.mViewer,origPlaneEnum,planeFromEnum);return[4,eDwCommandMgr.get().run(changeSectionPlaneCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}}};eDwUI.prototype.awfulUIHacks=function(){var _this=this;l_init=function(){$("#edrawings-face-normal-button").removeClass("edrawings-inactive");_this.registerButtonForClickEffect("edrawings-face-normal-button",(function(){(function(){return __awaiter(_this,void 0,void 0,(function(){var setViewCameraCmd;return __generator(this,(function(_a){switch(_a.label){case 0:setViewCameraCmd=new eDwSetViewCameraCmd(this.mViewer);return[4,eDwCommandMgr.get().run(setViewCameraCmd,"commit")];case 1:_a.sent();return[4,this.hideActiveHUDMenu()];case 2:_a.sent();return[2]}}))}))})()}))};l_uninit=function(){$("#edrawings-face-normal-button").addClass("edrawings-inactive");_this.unregisterButtonForClickEffect("edrawings-face-normal-button")}};return eDwUI}();exports.eDwUI=eDwUI;var UIEventHandlers=function(_super){__extends(UIEventHandlers,_super);function UIEventHandlers(iUI,iViewerHTMLID,iViewerHTMLCanvasID){var _this=_super.call(this,iViewerHTMLID,iViewerHTMLCanvasID)||this;_this.mUI=iUI;return _this}UIEventHandlers.prototype.addHTMLEventHandlers=function(iViewerFeatOpts){var _this=this;_super.prototype.addHTMLEventHandlers.call(this,iViewerFeatOpts);$("#edrawings-viewer").on("click.edw",".edrawings-tool-button",(function(iEvent){_this.onClick(iEvent,".edrawings-tool-button")}));$("#edrawings-viewer").on("click.edw",".edrawings-hud-button",(function(iEvent){_this.onClick(iEvent,".edrawings-hud-button",".edrawings-submenu")}));this.mUIHTMLEventMgr.addEventHandler("window","beforeunload",(function(iEvent){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){this.mUI.unregister();return[2]}))}))}));this.mUIHTMLEventMgr.addEventHandler("window","Timeout",(function(iEvent){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){this.mUI.unregister();return[2]}))}))}));$(".edrawings-menu-close").on("click.edw",(function(iEvent){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.deactivateActiveButton(".edrawings-tool-button")];case 1:_a.sent();return[2]}}))}))})()}));var viewerJQ=$(eDwUIUtils.getViewerElementID());viewerJQ.on("edw:ChangeViewerStyling",(function(iEvent,iStyleClassName){viewerJQ.removeClass("edrawings-viewer-regular");viewerJQ.removeClass("edrawings-viewer-timeout");if(iStyleClassName)viewerJQ.addClass(iStyleClassName)}));viewerJQ.on("edw:HidePanels",(function(iEvent,iSkipPanelsWithClass){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.mUI.hideAllOtherPanels(iSkipPanelsWithClass)];case 1:_a.sent();return[2]}}))}))})()}));viewerJQ.on("edw:ReInitViewer",(function(iEvent,iViewerFeatOpts){_this.mUI.unregister();_this.mUI.initUIEvents(iViewerFeatOpts)}))};UIEventHandlers.prototype.removeHTMLEventHandlers=function(){_super.prototype.removeHTMLEventHandlers.call(this);$(".edrawings-menu-close").off("click.edw");$("#edrawings-viewer").off("click.edw",".edrawings-tool-button");$("#edrawings-viewer").off("click.edw",".edrawings-hud-button");var viewerJQ=$(eDwUIUtils.getViewerElementID());viewerJQ.off("edw:ChangeViewerStyling");viewerJQ.off("edw:HidePanels");viewerJQ.off("edw:ReInitViewer")};UIEventHandlers.doModelDataUnloadActions=function(iViewer){eDwUIBaseEventHandlers.doModelDataUnloadActions(iViewer)};UIEventHandlers.prototype.onInit=function(iViewer){var viewerFeatureOpts=iViewer.ViewerFeatureOpts;var model=iViewer.getModel();var isDrawing=model.isDrawing();eDwUIUtils.hide("#edrawings-button-reset",false);eDwUIUtils.hide("#edrawings-button-shaded",isDrawing);eDwUIUtils.hide("#edrawings-button-view-settings",isDrawing);eDwUIUtils.hide("#edrawings-button-animate",isDrawing);eDwUIUtils.hide("#edrawings-button-section",isDrawing);eDwUIUtils.hide("#edrawings-button-view",isDrawing);eDwUIUtils.hide("#edrawings-button-debug",!viewerFeatureOpts.Debug);eDwUIUtils.hide("#edrawings-button-tables-control",isDrawing||iViewer.TableMgr.numTables()===0);eDwUIUtils.hide("#edrawings-button-sheet-tree",!isDrawing);eDwUIUtils.hide("#edrawings-button-layer-control",!isDrawing);eDwUIUtils.hide(".edrawings-icon-set.center",isDrawing);this.removeHTMLEventHandlers()};UIEventHandlers.prototype.onInitFullUI=function(iViewer){_super.prototype.onInitFullUI.call(this,iViewer);this.addHTMLEventHandlers(iViewer.ViewerFeatureOpts);this.mUI.init(iViewer);eDwUIUtils.hide("#WaitBanner",true)};UIEventHandlers.prototype.onSelect=function(iViewer,iSelObjs){_super.prototype.onSelect.call(this,iViewer,iSelObjs);if(l_init)l_init()};UIEventHandlers.prototype.onUnselect=function(iViewer,iSelObjs){_super.prototype.onUnselect.call(this,iViewer,iSelObjs);if(l_uninit)l_uninit()};UIEventHandlers.prototype.onTimeout=function(iViewer){eDwUIUtils.hide("#TimeoutBanner",false);$(eDwUIUtils.getViewerElementID()).trigger("edw:ChangeViewerStyling","edrawings-viewer-timeout")};UIEventHandlers.prototype.onStartAnimation=function(iViewer){var eDwViewer=iViewer;$("#edrawings-canvas").on("click.edw",(function(){eDwViewer.ViewMgr.stop()}));var animateBtnJQ=$("#edrawings-button-animate");animateBtnJQ.removeClass("edrawings-animate-play-icon");animateBtnJQ.addClass("edrawings-animate-pause-icon")};UIEventHandlers.prototype.onStopAnimation=function(iViewer){var animateBtnJQ=$("#edrawings-button-animate");animateBtnJQ.addClass("edrawings-animate-play-icon");animateBtnJQ.removeClass("edrawings-animate-pause-icon")};UIEventHandlers.prototype.onAmbientOcclusionChange=function(iViewer,iAmbientOcclusionOn){var ambientOccButton=$("#edrawings-button-view-ambient-occlusion");if(iAmbientOcclusionOn){if(!ambientOccButton.hasClass("state-on-button")){ambientOccButton.addClass("state-on-button")}}else{if(ambientOccButton.hasClass("state-on-button")){ambientOccButton.removeClass("state-on-button")}}};UIEventHandlers.prototype.onProjectionModeChange=function(iViewer,iPerspectiveOn){var perspectiveButton=$("#edrawings-button-view-perspective");if(iPerspectiveOn){if(!perspectiveButton.hasClass("state-on-button")){perspectiveButton.addClass("state-on-button")}}else{if(perspectiveButton.hasClass("state-on-button")){perspectiveButton.removeClass("state-on-button")}}};UIEventHandlers.prototype.onDrawModeChange=function(iViewer,iDrawMode){function setActive(iButtonID,iIsActive){if(iIsActive&&!$(iButtonID).hasClass("state-on-button")){$(iButtonID).addClass("state-on-button")}else if(!iIsActive&&$(iButtonID).hasClass("state-on-button")){$(iButtonID).removeClass("state-on-button")}}function setActiveInGroup(iButtonID){setActive("#edrawings-button-shaded-full",false);setActive("#edrawings-button-shaded-noedges",false);setActive("#edrawings-button-shaded-wireframe",false);setActive("#edrawings-button-shaded-hlrr",false);setActive("#edrawings-button-shaded-hlrv",false);setActive(iButtonID,true)}switch(iDrawMode){case"ShadedWithEdges":setActiveInGroup("#edrawings-button-shaded-full");break;case"Shaded":setActiveInGroup("#edrawings-button-shaded-noedges");break;case"HiddenLinesRemoved":setActiveInGroup("#edrawings-button-shaded-hlrr");break;case"HiddenLinesVisible":setActiveInGroup("#edrawings-button-shaded-hlrv");break;case"Wireframe":setActiveInGroup("#edrawings-button-shaded-wireframe");break;default:throw new Error("Unknown draw mode in UI:"+iDrawMode)}};UIEventHandlers.prototype.onClick=function(iEvent,iButtonCSSClassName,iPanelCSSClassName){var _this=this;if(iPanelCSSClassName===void 0){iPanelCSSClassName=""}(function(){return __awaiter(_this,void 0,void 0,(function(){var targetJQ,buttonClickedID,deactivatedButtonID;return __generator(this,(function(_a){switch(_a.label){case 0:targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);buttonClickedID=targetJQ.closest(iButtonCSSClassName).attr("id");return[4,this.deactivateActiveButton(iButtonCSSClassName,iPanelCSSClassName)];case 1:deactivatedButtonID=_a.sent();if(deactivatedButtonID===buttonClickedID)return[2];this.handleClick("#"+buttonClickedID,true);return[2]}}))}))})()};UIEventHandlers.prototype.deactivateActiveButton=function(iButtonCSSClassName,iPanelCSSClassName){if(iPanelCSSClassName===void 0){iPanelCSSClassName=""}return __awaiter(this,void 0,void 0,(function(){var activeButtonID,activeButtonJQ;return __generator(this,(function(_a){switch(_a.label){case 0:activeButtonID="";activeButtonJQ=$(iButtonCSSClassName+".active-button");return[4,this.mUI.hideAllOtherPanels(iPanelCSSClassName)];case 1:_a.sent();if(activeButtonJQ.length){activeButtonID=activeButtonJQ[0].id;this.handleClick("#"+activeButtonID,false)}return[2,activeButtonID]}}))}))};UIEventHandlers.prototype.handleClick=function(iButtonID,iActivate){eDwUIUtils.scrollToTarget($(iButtonID));if(!this.mUI.onClick(iButtonID,iActivate)){var pluginMgr=eDwUIPluginMgr.get();pluginMgr.onClick(iButtonID,iActivate)}};return UIEventHandlers}(eDwUIBaseEventHandlers);var c_fullScreenChange="fullscreenchange.edw MSFullscreenChange.edw"+" webkitfullscreenchange.edw";var c_restoreClass="edrawings-button-fs-restore";var c_canvasID="edrawings-canvas";var c_debugGroupName="Debug";var l_fullScreenBtnJS;var l_init;var l_uninit;function l_isFullScreen(){if(!l_fullScreenBtnJS)l_fullScreenBtnJS=$("#edrawings-button-fs");return l_fullScreenBtnJS.hasClass(c_restoreClass)}}));define("eDwUIBaseEventHandlers",["require","exports","eDwEventMgr","eDwUIHTMLEventMgr","eDwCommandMgr","eDwChangeModelViewCmd","eDwCompositeCmd","eDwSetLayerVisibilityCmd","eDwUIPluginMgr","eDwEvents","eDwUIUtils","eDwUIShortcutMenu","utils"],(function(require,exports,eDwEventMgr,eDwUIHTMLEventMgr,eDwCommandMgr,eDwChangeModelViewCmd,eDwCompositeCmd,eDwSetLayerVisibilityCmd,eDwUIPluginMgr,eDwEvents,eDwUIUtils,eDwUIShortcutMenu_2,utils){"use strict";var eDwUIBaseEventHandlers=function(){function eDwUIBaseEventHandlers(iViewerHTMLID,iViewerHTMLCanvasID){this.mViewerHTMLID=iViewerHTMLID;this.mViewerHTMLCanvasID=iViewerHTMLCanvasID;this.mUIHTMLEventMgr=new eDwUIHTMLEventMgr}eDwUIBaseEventHandlers.prototype.addHTMLEventHandlers=function(iViewerFeatOpts){var _this=this;this.mViewerFeatureOpts=iViewerFeatOpts;var eventMgrHTML=this.mUIHTMLEventMgr;eventMgrHTML.addEventHandler("window","resize",(function(iEvent){_this.onResize(iEvent,_this.mViewer)}));eDwEventMgr.get().addEventHandlerFunc(eDwEvents.ResetSceneEvent,l_onResize);eDwUIUtils.addSubTreeArrowEventHandler(eventMgrHTML,"#edrawings-sheet-tree-menu");eventMgrHTML.addDelegatedEventHandler("#edrawings-sheet-tree-menu .edrawings-submenu-list-item","dblclick",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.scrollToTarget(targetJQ);if(targetJQ.hasClass("edrawings-root")){return}var selObjIDHC=eDwUIUtils.getIDHC(targetJQ);if(isNaN(selObjIDHC)||selObjIDHC<0){return}(function(){return __awaiter(_this,void 0,void 0,(function(){var cmdMgr,zoomToViewCmd,targetModelView,model,modelHC,modelViews,_i,modelViews_4,modelView,configIDHC,configChildren,activeModelView,changeModelViewCmd;return __generator(this,(function(_a){switch(_a.label){case 0:cmdMgr=eDwCommandMgr.get();zoomToViewCmd=new eDwCompositeCmd(this.mViewer);zoomToViewCmd.initCmdActionImplementation();return[4,cmdMgr.add(zoomToViewCmd)];case 1:_a.sent();targetModelView=null;model=this.mViewer.getModel();modelHC=model.getHCModel();modelViews=model.getModelViews();for(_i=0,modelViews_4=modelViews;_i-1){console.excludeDebugLogCategories.slice(pos,1)}}}));var selectorName="#edrawings-debug-menu .edrawings-submenu-list-item";eventMgrHTML.addDelegatedEventHandler(selectorName,"click",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.scrollToTarget(targetJQ);var id=eDwUIUtils.getIDHC(targetJQ);if(isNaN(id))return;$(selectorName).removeClass("edrawings-list-selected");$(targetJQ).addClass("edrawings-list-selected");_this.mViewer.SelectionMgr.selectByID(id)}));eventMgrHTML.addDelegatedEventHandler("#edrawings-debug-menu .edrawings-submenu-list-item","dblclick",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.scrollToTarget(targetJQ);var id=eDwUIUtils.getIDHC(targetJQ);if(isNaN(id))return;_this.onLeftDoubleClick(_this.mViewer)}));eventMgrHTML.addEventHandler("#edrawings-debug-menu .edrawings-menu-search-cancel","click",(function(iEvent){$("#edrawings-debug-menu "+".edrawings-menu-search-input").val("");var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.searchPanelList(_this.mViewer,targetJQ)}));eventMgrHTML.addEventHandler("#edrawings-debug-menu .edrawings-menu-search-input","keyup",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.searchPanelList(_this.mViewer,targetJQ)}));eventMgrHTML.addDelegatedEventHandler("#edrawings-layer-control-menu .item-layer-checkbox","click",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);var layerName=eDwUIUtils.getSpanText(targetJQ.next("span.item-tree-text"));var isVisible=targetJQ.prop("checked");_this.setOneLayerVisibility(layerName,isVisible)}));eventMgrHTML.addDelegatedEventHandler("#edrawings-layer-control-menu .layer-all","click",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);var isVisible=targetJQ.prop("checked");_this.setAllLayerVisibility(isVisible)}));eventMgrHTML.addEventHandler("#edrawings-filename-block","mouseover",(function(iEvent){var filenameJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);if(filenameJQ.length===1&&filenameJQ[0].scrollWidth>filenameJQ.width()){var mouseEvent=iEvent;l_positionTicker(mouseEvent,filenameJQ,$("#edrawings-filename-text").text())}}));eventMgrHTML.addEventHandler("#edrawings-filename-block","mouseout",(function(iEvent){l_hideTicker()}));eventMgrHTML.addDelegatedEventHandler("document .edrawings-submenu-list-item","mouseover",(function(iEvent){var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);var itemTreeTextJQ=targetJQ.find(".item-tree-text");var edrawingsSubmenuListJQ=targetJQ.closest(".edrawings-submenu-list");if(edrawingsSubmenuListJQ.length===1&&itemTreeTextJQ.length===1&&itemTreeTextJQ[0].scrollWidth>itemTreeTextJQ.width()){var mouseEvent=iEvent;l_positionTicker(mouseEvent,itemTreeTextJQ,itemTreeTextJQ.text())}}));eventMgrHTML.addDelegatedEventHandler("document .edrawings-submenu-list-item","mouseout",(function(iEvent){l_hideTicker()}));eventMgrHTML.addEventHandler("#edrawings-hud-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-left)","click",(function(iEvent){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_scrollUIBar($("#edrawings-hud-bar .edrawings-hud-bar-content"),".edrawings-hud-button",".edrawings-hud-menu",-c_hudBarIconWidth)];case 1:_a.sent();return[2]}}))}))})()}));eventMgrHTML.addEventHandler("#edrawings-hud-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-right)","click",(function(iEvent){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_scrollUIBar($("#edrawings-hud-bar .edrawings-hud-bar-content"),".edrawings-hud-button",".edrawings-hud-menu",c_hudBarIconWidth)];case 1:_a.sent();return[2]}}))}))})()}));eDwUIUtils.enableScrollOnTouch(eventMgrHTML,"#edrawings-hud-bar .edrawings-hud-bar-content","#edrawings-hud-bar",(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.deactivateUI(".edrawings-hud-button",".edrawings-hud-menu")];case 1:_a.sent();return[2]}}))}))}));eventMgrHTML.addEventHandler("#edrawings-left-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-up)","click",(function(iEvent){var barJQ=$("#edrawings-left-bar");var contentJQ=barJQ.find(".edrawings-tool-bar-content");(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_scrollUIBar(contentJQ,".edrawings-tool-button",".edrawings-submenu",-c_toolBarIconWidth,barJQ)];case 1:_a.sent();return[2]}}))}))})()}));eventMgrHTML.addEventHandler("#edrawings-left-bar .edrawings-arrow-wrapper:has(> .edrawings-arrow-down)","click",(function(iEvent){var barJQ=$("#edrawings-left-bar");var contentJQ=barJQ.find(".edrawings-tool-bar-content");(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_scrollUIBar(contentJQ,".edrawings-tool-button",".edrawings-submenu",c_toolBarIconWidth,barJQ)];case 1:_a.sent();return[2]}}))}))})()}));eDwUIUtils.enableScrollOnTouch(eventMgrHTML,"#edrawings-left-bar .edrawings-tool-bar-content","#edrawings-left-bar",(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.deactivateUI(".edrawings-tool-button",".edrawings-submenu")];case 1:_a.sent();return[2]}}))}))}))};eDwUIBaseEventHandlers.prototype.addDefaultHTMLPanelCloseEventHandlers=function(){if(this.mViewerFeatureOpts.Debug){eDwUIUtils.addCloseEventHandler("#edrawings-debug-menu",this.mUIHTMLEventMgr)}eDwUIUtils.addCloseEventHandler("#edrawings-sheet-tree-menu",this.mUIHTMLEventMgr);eDwUIUtils.addCloseEventHandler("#edrawings-layer-control-menu",this.mUIHTMLEventMgr)};eDwUIBaseEventHandlers.doModelDataLoadCompleteActions=function(ioEventHandlerObj,iViewer){ioEventHandlerObj.mViewer=iViewer;l_loadUIPlugins(iViewer);var handlerObj=ioEventHandlerObj;var eventMgr=eDwEventMgr.get();eventMgr.addEventHandlerObj(eDwEvents.InitEvent,handlerObj,"onInit");eventMgr.addEventHandlerObj(eDwEvents.InitFullUIEvent,handlerObj,"onInitFullUI");eventMgr.addEventHandlerObj(eDwEvents.SelectEvent,handlerObj,"onSelect");eventMgr.addEventHandlerObj(eDwEvents.UnselectEvent,handlerObj,"onUnselect");eventMgr.addEventHandlerObj(eDwEvents.StartAnimationEvent,handlerObj,"onStartAnimation");eventMgr.addEventHandlerObj(eDwEvents.StopAnimationEvent,handlerObj,"onStopAnimation");eventMgr.addEventHandlerObj(eDwEvents.LeftDoubleClickEvent,handlerObj,"onLeftDoubleClick");eventMgr.addEventHandlerObj(eDwEvents.TimeoutEvent,handlerObj,"onTimeout");eventMgr.addEventHandlerObj(eDwEvents.DrawModeChangeEvent,handlerObj,"onDrawModeChange");eventMgr.addEventHandlerObj(eDwEvents.ProjModeChangeEvent,handlerObj,"onProjectionModeChange");eventMgr.addEventHandlerObj(eDwEvents.NodeAttribChangeEvent,handlerObj,"onNodeAttribChanged");eventMgr.addEventHandlerObj(eDwEvents.ResetSceneEvent,handlerObj,"onResetScene");eventMgr.addEventHandlerObj(eDwEvents.AmbientOcclChangeEvent,handlerObj,"onAmbientOcclusionChange");eventMgr.addEventHandlerObj(eDwEvents.DoneEvent,handlerObj,"onDone");eventMgr.addEventHandlerObj(eDwEvents.ModelViewChangeEvent,handlerObj,"onModelViewChange")};eDwUIBaseEventHandlers.prototype.removeHTMLEventHandlers=function(){eDwUIUtils.disableScrollOnTouch(this.mUIHTMLEventMgr,"#edrawings-hud-bar .edrawings-hud-bar-content");eDwUIUtils.disableScrollOnTouch(this.mUIHTMLEventMgr,"#edrawings-left-bar .edrawings-tool-bar-content");this.mUIHTMLEventMgr.removeAllEventHandlers();eDwUIShortcutMenu_2.eDwUIShortcutMenu.destroy()};eDwUIBaseEventHandlers.doModelDataUnloadActions=function(iViewer){l_unloadUIPlugins();if(iViewer)iViewer.unregister();eDwEventMgr.get().removeAllEventHandlers()};eDwUIBaseEventHandlers.prototype.onInit=function(iViewer){this.mViewer=iViewer};eDwUIBaseEventHandlers.prototype.onInitFullUI=function(iViewer){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.updateUI(iViewer,iViewer.getModel().getActiveModelView(),true)];case 1:_a.sent();return[2]}}))}))})()};eDwUIBaseEventHandlers.prototype.onDone=function(iViewer){iViewer.destroy()};eDwUIBaseEventHandlers.prototype.onSelect=function(iViewer,iSelObjs){this.handleSelectionChange(iViewer,iSelObjs,true)};eDwUIBaseEventHandlers.prototype.onUnselect=function(iViewer,iSelObjs){this.handleSelectionChange(iViewer,iSelObjs,false)};eDwUIBaseEventHandlers.prototype.onLeftDoubleClick=function(iViewer){eDwUIUtils.zoomToFit(iViewer);eDwUIShortcutMenu_2.eDwUIShortcutMenu.hide()};eDwUIBaseEventHandlers.prototype.onModelViewChange=function(iViewer,iNewModelView,iIsAssembly){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.updateUI(iViewer,iNewModelView)];case 1:_a.sent();return[2]}}))}))})()};eDwUIBaseEventHandlers.prototype.onNodeAttribChanged=function(iViewer,iHierNodesAndAttribs){if(iViewer.ViewerFeatureOpts.Debug){for(var _i=0,iHierNodesAndAttribs_3=iHierNodesAndAttribs;_i1){hudBarJQ.offset({left:Math.ceil(filenameBlockRight),top:hudBarOffset.top});l_resizeTopBar()}else if(hudBarContentJQ[0].scrollWidth===0||hudBarContentJQ.width()>=hudBarContentJQ[0].scrollWidth){topBarJQ.removeClass("edrawings-collided-hud-bar");hudBarJQ.removeClass("edrawings-collided");hudBarJQ.css({left:""})}}else{if(filenameBlockOffset.left!==hudBarOffset.left&&filenameBlockRight>hudBarOffset.left){hudBarJQ.offset({left:Math.ceil(filenameBlockRight),top:hudBarOffset.top});topBarJQ.addClass("edrawings-collided-hud-bar");hudBarJQ.addClass("edrawings-collided")}}eDwUIUtils.adjustScrollArrows(hudBarContentJQ[0].scrollLeft,hudBarContentJQ[0].scrollWidth,hudBarContentJQ.width(),true,leftButtonWrapperJQ,rightButtonWrapperJQ,hudBarJQ);if(topBarJQ.hasClass("edrawings-collided-hud-bar")){if(hudBarContentJQ.innerWidth()c_filenameBlockThresholdWidth){if(topBarJQ.hasClass("edrawings-out-of-view")){topBarJQ.removeClass("edrawings-out-of-view")}}else{topBarJQ.addClass("edrawings-out-of-view")}}else{if(filenameBlockJQ[0].scrollWidth-filenameBlockInnerWidth>1){if(filenameBlockJQ.width()0&&toolBarContentJQ[0].scrollHeight<=leftBarContentJQ.innerHeight()){leftBarJQ.removeClass("edrawings-collided")}}else{if(leftBarContentJQ[0].scrollHeight>0&&leftBarContentJQ[0].scrollHeight>Math.round(leftBarContentJQ.innerHeight())){leftBarJQ.addClass("edrawings-collided")}}eDwUIUtils.adjustScrollArrows(toolBarContentJQ[0].scrollTop,toolBarContentJQ[0].scrollHeight,toolBarContentJQ.height(),false,upButtonWrapperJQ,downButtonWrapperJQ,leftBarJQ);if(leftBarJQ.hasClass("edrawings-collided")){if(toolBarContentJQ.innerHeight()=window.innerWidth){var diff=iMouseEvent.clientX+iItemJQ[0].scrollWidth+scrollWidthPadding-window.innerWidth;if(iMouseEvent.clientX>=diff){tickerLeft=iMouseEvent.clientX-diff;tickerWidth=iItemJQ[0].scrollWidth+scrollWidthPadding}else{tickerLeft=0;tickerAnimation=true;if(window.innerWidth>tickerMinWidth){tickerWidth=window.innerWidth}else{tickerWidth=tickerMinWidth}var threeTimes=[iText,iText,iText].join(" ");tickerJQ.text(threeTimes)}}if(itemOffset.top-tickerMinHeight<=0){if(itemOffset.top+iItemJQ[0].clientHeight+tickerMinHeight<=window.innerHeight){tickerTop=itemOffset.top+iItemJQ[0].clientHeight}else{var diff=iMouseEvent.clientY+tickerMinHeight-window.innerHeight;if(iMouseEvent.clientY>diff){tickerTop=iMouseEvent.clientY-diff}else{tickerTop=0}}}var tickerwrapJQ=tickerJQ.closest(".edrawings-ticker-wrapper");tickerwrapJQ.offset({left:tickerLeft,top:tickerTop}).css("width",tickerWidth).removeClass("edrawings-ui-hide");if(tickerAnimation){tickerwrapJQ.addClass("edrawings-animation")}}function l_hideTicker(){var tickerwrapJQ=$(".edrawings-ticker-wrapper");if(!tickerwrapJQ.hasClass("edrawings-ui-hide")){var tickerJQ=tickerwrapJQ.find(".edrawings-ticker");tickerJQ.text("");tickerwrapJQ.addClass("edrawings-ui-hide").removeClass("edrawings-animation").css("left","").css("top","").css("width","")}}function l_positionMenuPanelCollapseButton(){var activeButtonsJQ=$(".edrawings-tool-button.active-button");if(activeButtonsJQ.length){if(eDwUIUtils.scrollToTarget(activeButtonsJQ)){l_resizeToolBar()}var collapsedPanelsJQ=$(".edrawings-submenu.active.edrawings-collapsed");if(collapsedPanelsJQ.length){var attrStyle=collapsedPanelsJQ.find(".edrawings-menu-panel-arrow-collapse").attr("style");if(!!attrStyle){eDwUIUtils.positionMenuPanelArrowCollapseButton(collapsedPanelsJQ,activeButtonsJQ)}}}}function l_fixMenuPanelInwardToolbar(){var panelsJQ=$(".edrawings-submenu.active:not(.edrawings-collapsed), .edrawings-hud-menu.active");panelsJQ.each((function(iIndex,iPanel){var panelJQ=$(iPanel);eDwUIUtils.fixMenuPanelInwardToolbar(panelJQ)}))}function l_scrollUIBar(iContentJQ,iDeactivateButtonClass,iDeactivateMenuClass,iScrollDist,iBarJQ){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!(iContentJQ&&iContentJQ.length>0))return[3,2];return[4,eDwUIUtils.deactivateUI(iDeactivateButtonClass,iDeactivateMenuClass)];case 1:_a.sent();eDwUIUtils.executeScrolling(iScrollDist,0,iContentJQ,iBarJQ);_a.label=2;case 2:return[2]}}))}))}return eDwUIBaseEventHandlers}));define("eDwUIBasePlugin",["require","exports","eDwUIHTMLEventMgr","eDwEventMgr","eDwEvents","eDwUIShortcutMenu","eDwUIUtils","utils"],(function(require,exports,eDwUIHTMLEventMgr,eDwEventMgr,eDwEvents_6,eDwUIShortcutMenu_3,eDwUIUtils,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.eDwUIBasePlugin=void 0;var eDwUIBasePlugin=function(){function eDwUIBasePlugin(iPluginGroupName,iViewer,iButtonInfo,iViewerFeatOpts){var _this=this;if(iViewer===void 0){iViewer=null}if(iButtonInfo===void 0){iButtonInfo=null}if(iViewerFeatOpts===void 0){iViewerFeatOpts=null}console.debugLog("UIPlugin","Constructed "+iPluginGroupName+" plugin.");this.mPluginGroupName=iPluginGroupName;this.mViewer=iViewer;this.mViewerFeatOpts=iViewerFeatOpts||iViewer&&iViewer.ViewerFeatureOpts;this.mUIHTMLEventMgr=new eDwUIHTMLEventMgr;this.mPluginDependencies=[];this.mPluginButtonInfo=iButtonInfo;if(iViewer){eDwUIShortcutMenu_3.eDwUIShortcutMenu.get().setPluginCheck(iPluginGroupName,(function(iPluginName){return _this.check(iPluginName)}))}}eDwUIBasePlugin.prototype.init=function(iPanelsToLoad){return __awaiter(this,void 0,void 0,(function(){var promises,_i,iPanelsToLoad_1,panelToLoad;return __generator(this,(function(_a){switch(_a.label){case 0:this.addAppObjEvent(eDwEvents_6.ActivateUIOpEvent,"onActivate",true);this.addAppObjEvent(eDwEvents_6.DeactivateUIOpEvent,"onDeactivate",true);if(!iPanelsToLoad)return[3,2];promises=[];for(_i=0,iPanelsToLoad_1=iPanelsToLoad;_i-1?true:false};eDwUIBasePlugin.prototype.addEventHandlers=function(){};eDwUIBasePlugin.prototype.removeEventHandlers=function(){this.mUIHTMLEventMgr.removeAllEventHandlers()};eDwUIBasePlugin.prototype.onActivate=function(iButtonJQ){return this.isButtonForThisPlugin(iButtonJQ)};eDwUIBasePlugin.prototype.onDeactivate=function(iButtonJQ){return this.isButtonForThisPlugin(iButtonJQ)};eDwUIBasePlugin.prototype.addAppObjEvent=function(iAppEvent,iEventObjMethod,iAdd){var eventMgr=eDwEventMgr.get();var eventMgrMethod=iAdd?"addEventHandlerObj":"removeEventHandlerObj";eventMgr[eventMgrMethod](iAppEvent,this,iEventObjMethod)};eDwUIBasePlugin.prototype.loadPanel=function(iPanelID,iHTMLFileName){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwUIUtils.loadPanel(iPanelID,iHTMLFileName)];case 1:return[2,_a.sent()]}}))}))};Object.defineProperty(eDwUIBasePlugin.prototype,"PluginGroupName",{get:function(){return this.mPluginGroupName},enumerable:false,configurable:true});Object.defineProperty(eDwUIBasePlugin.prototype,"PluginButtonID",{get:function(){return this.mPluginButtonInfo?this.mPluginButtonInfo.ID:""},enumerable:false,configurable:true});Object.defineProperty(eDwUIBasePlugin.prototype,"Dependencies",{get:function(){return this.mPluginDependencies},enumerable:false,configurable:true});return eDwUIBasePlugin}();exports.eDwUIBasePlugin=eDwUIBasePlugin}));define("eDwUIDebugHTMLGenerator",["require","exports","eDwUIHTMLGenerator","eDwTypes"],(function(require,exports,eDwUIHTMLGenerator_1,eDwTypes_15){"use strict";var _a;var eDwUIDebugHTMLGenerator=function(_super){__extends(eDwUIDebugHTMLGenerator,_super);function eDwUIDebugHTMLGenerator(iViewer,iPanelUIID){var _this=_super.call(this,iViewer,iPanelUIID)||this;_this.mHCModel=iViewer.getModel().getHCModel();return _this}eDwUIDebugHTMLGenerator.prototype.getNodeFromID=function(iNodeID){return l_getHCNode(iNodeID)};eDwUIDebugHTMLGenerator.prototype.getPostSpanHTML=function(iAdditionalClasses){return""};eDwUIDebugHTMLGenerator.prototype.forNodeGetName=function(iNode){return this.mHCModel.getNodeName(l_getHCNode(iNode))||"unknown node name"};eDwUIDebugHTMLGenerator.prototype.forNodeGetID=function(iNode){return l_getHCNode(iNode)};eDwUIDebugHTMLGenerator.prototype.forNodeGetParentID=function(iNode){return this.mHCModel.getNodeParent(l_getHCNode(iNode))||NaN};eDwUIDebugHTMLGenerator.prototype.forNodeGetChildren=function(iNode){return this.mHCModel.getNodeChildren(l_getHCNode(iNode))};eDwUIDebugHTMLGenerator.prototype.forNodeHasChildren=function(iNode){return this.forNodeGetChildren(iNode).length>0};eDwUIDebugHTMLGenerator.prototype.forNodeGetDataAttributes=function(iNode){return _super.prototype.forNodeGetDataAttributes.call(this,iNode)};eDwUIDebugHTMLGenerator.prototype.forNodeGetElementContent=function(iNode){var _this=this;var nodeIDHC=this.forNodeGetID(iNode);(function(){return __awaiter(_this,void 0,void 0,(function(){var meshIDs,numMeshIDs;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.mHCModel.getMeshIds([nodeIDHC])];case 1:meshIDs=_a.sent();numMeshIDs=meshIDs.length;console.log("Node ID: "+nodeIDHC+" Num mesh IDs: "+numMeshIDs);return[2]}}))}))})();return this.forNodeGetName(iNode)+" ID: "+nodeIDHC+" TYPE: "+c_nodeTypes[this.mHCModel.getNodeType(nodeIDHC)]+" VISIBLE: "+this.mHCModel.getNodeVisibility(nodeIDHC)};eDwUIDebugHTMLGenerator.prototype.forNodeGetDisplayStateCSSClass=function(iNode){return"edrawings-body-visible"};return eDwUIDebugHTMLGenerator}(eDwUIHTMLGenerator_1.eDwUIHTMLGenerator);var c_nodeTypes=(_a={},_a[eDwTypes_15.HC.NodeType.AssemblyNode]="Assembly",_a[eDwTypes_15.HC.NodeType.Body]="Body",_a[eDwTypes_15.HC.NodeType.BodyInstance]="Body Instance",_a[eDwTypes_15.HC.NodeType.BrepBody]="BRep Body",_a[eDwTypes_15.HC.NodeType.CadView]="CAD View",_a[eDwTypes_15.HC.NodeType.DrawingSheet]="Drawing Sheet",_a[eDwTypes_15.HC.NodeType.Part]="Part",_a[eDwTypes_15.HC.NodeType.PartInstance]="Part Instance",_a[eDwTypes_15.HC.NodeType.Pmi]="PMI",_a[eDwTypes_15.HC.NodeType.PmiBody]="PMI Body",_a[eDwTypes_15.HC.NodeType.PointsBody]="Points Body",_a[eDwTypes_15.HC.NodeType.TessBody]="Tessellation Body",_a[eDwTypes_15.HC.NodeType.Unknown]="Unknown",_a[eDwTypes_15.HC.NodeType.ViewFrame]="View Frame",_a[eDwTypes_15.HC.NodeType.WireBody]="Wire Body",_a);function l_isHCNode(iNode){return!isNaN(iNode)}function l_getHCNode(iNode){if(!l_isHCNode(iNode)){throw new Error("Not an HC node:\n"+JSON.stringify(iNode))}return iNode}return eDwUIDebugHTMLGenerator}));define("eDwUIHTMLEventMgr",["require","exports","eDwUIUtils"],(function(require,exports,eDwUIUtils){"use strict";var eDwUIHTMLEventMgr=function(){function eDwUIHTMLEventMgr(){this.mEventHandlerData={}}eDwUIHTMLEventMgr.prototype.addDelegatedEventHandler=function(iElemSelector,iEventName,iEventHandler){if(!iElemSelector||!iEventName||!iEventHandler)return false;var selectors=iElemSelector.split(" ");if(selectors.length<2)return false;var ancestorElementID=selectors.shift();return this.commonAddEventHandler(ancestorElementID,iEventName,iEventHandler,selectors.join().replace(".",""))};eDwUIHTMLEventMgr.prototype.addEventHandler=function(iElemID,iEventName,iEventHandler){if(!iElemID||!iEventName||!iEventHandler)return false;return this.commonAddEventHandler(iElemID,iEventName,iEventHandler)};eDwUIHTMLEventMgr.prototype.removeAllEventHandlers=function(){for(var eventName in this.mEventHandlerData){if(this.mEventHandlerData.hasOwnProperty(eventName)){var handlersOfEvent=this.mEventHandlerData[eventName];for(var elemID in handlersOfEvent){if(handlersOfEvent.hasOwnProperty(elemID)){this.removeEventHandlersByID(elemID,eventName,handlersOfEvent)}}delete this.mEventHandlerData[eventName]}}this.mEventHandlerData={}};eDwUIHTMLEventMgr.prototype.removeEventHandlers=function(iElemID,iEventName){var handlersRemoved=false;if(this.mEventHandlerData.hasOwnProperty(iEventName)){var handlersOfEvent=this.mEventHandlerData[iEventName];if(handlersOfEvent.hasOwnProperty(iElemID)){handlersRemoved=this.removeEventHandlersByID(iElemID,iEventName,handlersOfEvent)}}return handlersRemoved};eDwUIHTMLEventMgr.prototype.commonAddEventHandler=function(iElemID,iEventName,iEventHandler,iElemClasses){if(iElemClasses===void 0){iElemClasses=""}if(!iElemID)return false;var elements=[];if(iElemID==="window")elements.push(window);else if(iElemID==="document")elements.push(document);else elements=$(iElemID).toArray();if(!elements.length)return false;var handlersOfEvent=this.mEventHandlerData[iEventName];if(!handlersOfEvent){handlersOfEvent=this.mEventHandlerData[iEventName]={}}var elemHandlers=handlersOfEvent[iElemID];if(!elemHandlers){elemHandlers=handlersOfEvent[iElemID]={MainDispatcher:null,Handlers:[]}}if(elemHandlers.MainDispatcher){for(var _i=0,elements_1=elements;_i-1||highlight===""?"":" edrawings-list-option";var currOffset=utils.isNaN(iLeftPaddingInPX)?this.mInitialLeftPaddingInPX+"px":iLeftPaddingInPX+"px";var generatedHTML="
";generatedHTML+=this.getPreSpanHTML(iNode,additionalClasses,expanded,iIgnoreChildren);generatedHTML+=""+this.forNodeGetElementContent(iNode)+"";generatedHTML+=this.getPostSpanHTML(nonRootClass+" "+additionalClasses);generatedHTML+="
";return generatedHTML};eDwUIHTMLGenerator.prototype.generateHTML=function(iAdditionalClasses){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){return[2,""]}))}))};eDwUIHTMLGenerator.prototype.getNodeFromID=function(iNodeID){var modelViews=this.mViewer.getModel().getModelViews();for(var _i=0,modelViews_5=modelViews;_i
";return generatedHTML};eDwUIHTMLGenerator.prototype.getPostSpanHTML=function(iAdditionalClasses){return"
"};eDwUIHTMLGenerator.prototype.computeOffset=function(iLeftPaddingInPX){if(iLeftPaddingInPX===void 0){iLeftPaddingInPX=NaN}return utils.isNaN(iLeftPaddingInPX)?this.mInitialLeftPaddingInPX:iLeftPaddingInPX+this.mLeftPaddingInPX};eDwUIHTMLGenerator.prototype.forNodeGetName=function(iNode){return l_getHierarchyNode(iNode).Name};eDwUIHTMLGenerator.prototype.forNodeGetID=function(iNode){return l_getHierarchyNode(iNode).HOOPSID};eDwUIHTMLGenerator.prototype.forNodeGetParentID=function(iNode){var parentHierNode=l_getHierarchyNode(iNode).Parent;return parentHierNode?parentHierNode.HOOPSID:NaN};eDwUIHTMLGenerator.prototype.forNodeGetChildren=function(iNode){var childrenObj=l_getHierarchyNode(iNode).getChildrenAndKeys();return Object.keys(childrenObj).map((function(key){return childrenObj[key]}))};eDwUIHTMLGenerator.prototype.forNodeHasChildren=function(iNode){return this.forNodeGetChildren(iNode).length>0};eDwUIHTMLGenerator.prototype.forNodeGetDataAttributes=function(iNode){var parentNodeID=this.forNodeGetParentID(iNode);return" data-hoopsid='"+this.forNodeGetID(iNode)+"' "+(parentNodeID!==undefined?"data-hoopsparentid='"+parentNodeID+"' ":"")};eDwUIHTMLGenerator.prototype.forNodeGetElementContent=function(iNode){return this.forNodeGetName(iNode)};eDwUIHTMLGenerator.prototype.forNodeGetDisplayStateCSSClass=function(iNode){return eDwUIHTMLGenerator.getDisplayStateCSSClass(l_getHierarchyNode(iNode))};return eDwUIHTMLGenerator}();exports.eDwUIHTMLGenerator=eDwUIHTMLGenerator;function l_getHierarchyNode(iNode){if(!eDwHierarchyNode.isHierarchyNode(iNode)){throw new Error("Not a hierarchy node:\n"+JSON.stringify(iNode))}return iNode}}));define("eDwUIHierNodeVisMenuItemsPlugin",["require","exports","eDwCommandMgr","eDwSetHierNodeAttribsCmd","eDwShowOnlyCmd","eDwUIUtils","eDwEventMgr","eDwUIShortcutMenu","eDwKeyMgr","eDwEvents","eDwTypes","eDwUIBasePlugin","utils"],(function(require,exports,eDwCommandMgr,eDwSetHierNodeAttribsCmd,eDwShowOnlyCmd,eDwUIUtils,eDwEventMgr,eDwUIShortcutMenu_4,eDwKeyMgr_4,eDwEvents_7,eDwTypes_16,eDwUIBasePlugin_1,utils){"use strict";var eDwUIHierNodeVisMenuItemPlugin=function(_super){__extends(eDwUIHierNodeVisMenuItemPlugin,_super);function eDwUIHierNodeVisMenuItemPlugin(iViewer,iViewerFeatOpts){return _super.call(this,"HideShow",iViewer)||this}eDwUIHierNodeVisMenuItemPlugin.prototype.init=function(){return __awaiter(this,void 0,void 0,(function(){function isNotPartModel(iViewer){return!iViewer.getModel().isPart()}var shortcutMenu,isVisibleForASMAndDRW,isVisibleForASM,isVisibleNonRootForASMAndDRW;var _this=this;return __generator(this,(function(_a){_super.prototype.init.call(this);shortcutMenu=eDwUIShortcutMenu_4.eDwUIShortcutMenu.get();if(!shortcutMenu.isEmpty()){shortcutMenu.addMenuSeparator(this.PluginGroupName)}isVisibleForASMAndDRW=function(iViewer,iIsSelected){return iIsSelected&&isNotPartModel(iViewer)};isVisibleForASM=function(iViewer,iIsSelected){return iIsSelected&&iViewer.getModel().isAssembly()};isVisibleNonRootForASMAndDRW=function(iViewer,iIsSelected){var model=iViewer.getModel();var modelViewHierNode=model.getActiveModelView().Hierarchy;var lastSelHierNode=iViewer.SelectionMgr.getLastSelHierarchyNode();return iIsSelected&&(model.isDrawing()||model.isAssembly()&&modelViewHierNode!==lastSelHierNode.Parent)};shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-hide-show",(function(iEvent,iUIItemJQ,iArg){var selMgr=_this.mViewer.SelectionMgr;var selHierNodes=selMgr.getSelHierarchyNodes();if(selHierNodes&&selHierNodes.length){(function(){return __awaiter(_this,void 0,void 0,(function(){var attrib,selHideShowCmd;return __generator(this,(function(_a){switch(_a.label){case 0:attrib={Visible:!selHierNodes[0].getAttribs().Visible};selHideShowCmd=new eDwSetHierNodeAttribsCmd(this.mViewer,selHierNodes,attrib);return[4,eDwCommandMgr.get().run(selHideShowCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}eDwUIShortcutMenu_4.eDwUIShortcutMenu.hide()}),isVisibleForASMAndDRW);shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-transp-solid",(function(iEvent,iUIItemJQ,iArg){(function(){return __awaiter(_this,void 0,void 0,(function(){var selMgr,selHierNodes,attrib,selTransSolidCmd;return __generator(this,(function(_a){switch(_a.label){case 0:selMgr=this.mViewer.SelectionMgr;selHierNodes=selMgr.getSelHierarchyNodes();if(!(selHierNodes&&selHierNodes.length))return[3,2];attrib={Opaque:!selHierNodes[0].getAttribs().Opaque};selTransSolidCmd=new eDwSetHierNodeAttribsCmd(this.mViewer,selHierNodes,attrib);return[4,eDwCommandMgr.get().run(selTransSolidCmd,"commit")];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))})();eDwUIShortcutMenu_4.eDwUIShortcutMenu.hide()}),isVisibleForASM);shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-isolate",(function(iEvent,iUIItemJQ,iArg){(function(){return __awaiter(_this,void 0,void 0,(function(){var selMgr,showOnlyCmd;return __generator(this,(function(_a){switch(_a.label){case 0:selMgr=this.mViewer.SelectionMgr;showOnlyCmd=new eDwShowOnlyCmd(this.mViewer,selMgr.getSelHierarchyNodes());return[4,eDwCommandMgr.get().run(showOnlyCmd,"commit")];case 1:_a.sent();return[2]}}))}))})();eDwUIShortcutMenu_4.eDwUIShortcutMenu.hide()}),isVisibleNonRootForASMAndDRW);shortcutMenu.addMenuItem(this.PluginGroupName,"edrawings-shortcut-show-all",(function(iEvent,iUIItemJQ,iArg){(function(){return __awaiter(_this,void 0,void 0,(function(){var showAllCmd;return __generator(this,(function(_a){switch(_a.label){case 0:showAllCmd=new eDwShowOnlyCmd(this.mViewer);return[4,eDwCommandMgr.get().run(showAllCmd,"commit")];case 1:_a.sent();return[2]}}))}))})();eDwUIShortcutMenu_4.eDwUIShortcutMenu.hide()}),isNotPartModel);this.mUIHTMLEventMgr.addDelegatedEventHandler("document .edrawings-submenu-list-item-button","click",(function(iEvent){console.debugLog("UIPlugin","HideShow menu button click");var selected=false;var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);var parentJQ=targetJQ.parent();eDwUIUtils.scrollToTarget(parentJQ);var selIDHC=eDwUIUtils.getIDHC(parentJQ);if(!isNaN(selIDHC)){var existingIdx=_this.mViewer.SelectionMgr.getSelectedNodeIDIndex(selIDHC);selected=existingIdx>-1?true:_this.mViewer.SelectionMgr.selectByID(selIDHC)}if(selected){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.fireEvent(iEvent,eDwEvents_7.RightClickEvent)];case 1:_a.sent();return[2]}}))}))})()}}));console.debugLog("UIPlugin","Added HideShow click event handler");this.mUIHTMLEventMgr.addDelegatedEventHandler("document .edrawings-submenu-list-item","mouseup",(function(iEvent){console.debugLog("UIPlugin","HideShow menu mouseup");var eventJQ=$(iEvent);var targetJQ=eDwUIUtils.getAsJQueryObj(iEvent.target);eDwUIUtils.scrollToTarget(targetJQ);if(!targetJQ||!targetJQ.length||!eventJQ||!eventJQ.length||targetJQ.hasClass("edrawings-root")||targetJQ.hasClass("edrawings-tree-arrow")||targetJQ.hasClass("edrawings-tree-expanded")||targetJQ.hasClass("edrawings-tree-icon")){return}if(!targetJQ.hasClass("edrawings-submenu-list-item"))return;var mouseEvent=iEvent;var pressedRMB=eDwKeyMgr_4.eDwKeyMgr.isRMBPressed(mouseEvent);var selected=false;var selIDHC=eDwUIUtils.getIDHC(targetJQ);if(utils.isNumber(selIDHC)){if(!eDwKeyMgr_4.eDwKeyMgr.get().isDown("Shift")){selected=_this.mViewer.SelectionMgr.selectByID(selIDHC)}else{var selector=".edrawings-submenu-list-item"+".edrawings-list-selected:has([data-hoopsid])";var filter=".edrawings-submenu-list-item:has([data-hoopsid])";var collectionPrevJQ=targetJQ.prevUntil(selector,filter);if(collectionPrevJQ.length===0||collectionPrevJQ.last().prev(selector).length===0){collectionPrevJQ=$([])}var collectionNextJQ=targetJQ.nextUntil(selector,filter);if(collectionNextJQ.length===0||collectionNextJQ.last().next(selector).length===0){collectionNextJQ=$([])}var collectionJQ=$([]).add(collectionPrevJQ).add(targetJQ).add(collectionNextJQ);collectionJQ.each((function(iIdx,iElement){var elementJQ=$(iElement);var selIDHC=eDwUIUtils.getIDHC(elementJQ);_this.mViewer.SelectionMgr.selectByID(selIDHC)}));selected=true;iEvent.preventDefault()}}else{selected=!targetJQ.hasClass("edrawings-list-selected");targetJQ[selected?"addClass":"removeClass"]("edrawings-list-selected")}(function(){return __awaiter(_this,void 0,void 0,(function(){var eventMgr,onSelectDoRMB;var _this=this;return __generator(this,(function(_a){eventMgr=eDwEventMgr.get();onSelectDoRMB=function(iViewer){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:eventMgr.removeEventHandlerFunc(eDwEvents_7.SelectEvent,"onSelectDoRMB");return[4,this.fireEvent(iEvent,eDwEvents_7.RightClickEvent)];case 1:_a.sent();return[2]}}))}))};if(selected&&pressedRMB){eventMgr.addEventHandlerFunc(eDwEvents_7.SelectEvent,onSelectDoRMB)}return[2]}))}))})()}));console.debugLog("UIPlugin","Added HideShow mouseup event handler");return[2]}))}))};eDwUIHierNodeVisMenuItemPlugin.prototype.check=function(iPluginName){return _super.prototype.check.call(this,iPluginName)||iPluginName===undefined};eDwUIHierNodeVisMenuItemPlugin.prototype.fireEvent=function(iEvent,iAppEvent){return __awaiter(this,void 0,void 0,(function(){var screenPos;return __generator(this,(function(_a){switch(_a.label){case 0:if(!iEvent||!iAppEvent||!this.mViewer)return[2];if(!(iAppEvent===eDwEvents_7.RightClickEvent))return[3,3];if(!utils.isOfType(iEvent,"clientX"))return[3,2];screenPos=new eDwTypes_16.HC.Point2(iEvent.clientX,iEvent.clientY);return[4,eDwEventMgr.get().fireEvent(iAppEvent,this.mViewer,screenPos,$(iEvent.target),this.PluginGroupName)];case 1:_a.sent();_a.label=2;case 2:return[3,5];case 3:if(!(iAppEvent===eDwEvents_7.UnselectEvent))return[3,5];return[4,eDwEventMgr.get().fireEvent(iAppEvent,this.mViewer,[])];case 4:_a.sent();_a.label=5;case 5:return[2]}}))}))};return eDwUIHierNodeVisMenuItemPlugin}(eDwUIBasePlugin_1.eDwUIBasePlugin);return eDwUIHierNodeVisMenuItemPlugin}));define("eDwUILayerHTMLGenerator",["require","exports","eDwUIHTMLGenerator","eDwLayer","utils"],(function(require,exports,eDwUIHTMLGenerator_2,eDwLayer,utils){"use strict";var eDwUILayerHTMLGenerator=function(_super){__extends(eDwUILayerHTMLGenerator,_super);function eDwUILayerHTMLGenerator(iViewer,iPanelUIID){return _super.call(this,iViewer,iPanelUIID)||this}eDwUILayerHTMLGenerator.prototype.generateHTML=function(iAdditionalClasses){return __awaiter(this,void 0,void 0,(function(){var generatedHTML,layers,_i,layers_2,layer;return __generator(this,(function(_a){generatedHTML="";layers=this.mViewer.getModel().getLayers();if(layers.length){generatedHTML+="
"+" "+""+"Name
"+"
"}for(_i=0,layers_2=layers;_i"};eDwUILayerHTMLGenerator.prototype.getPostSpanHTML=function(iAdditionalClasses){return""};eDwUILayerHTMLGenerator.prototype.shouldIncludeNode=function(iLayer){return true};eDwUILayerHTMLGenerator.prototype.forNodeGetName=function(iNode){return l_getLayer(iNode).getName()};eDwUILayerHTMLGenerator.prototype.forNodeGetID=function(iNode){return l_getLayer(iNode).getIDHC()};eDwUILayerHTMLGenerator.prototype.forNodeGetParentID=function(iNode){return NaN};eDwUILayerHTMLGenerator.prototype.forNodeGetChildren=function(iNode){var childNodes=[];if(this.mViewer.ViewerFeatureOpts.Debug){childNodes=l_getLayer(iNode).getNodeIDsHC()}return childNodes};eDwUILayerHTMLGenerator.prototype.forNodeGetDataAttributes=function(iNode){return""};eDwUILayerHTMLGenerator.prototype.forNodeGetDisplayStateCSSClass=function(iNode){return""};return eDwUILayerHTMLGenerator}(eDwUIHTMLGenerator_2.eDwUIHTMLGenerator);function l_getLayer(iNode){if(!utils.isInstanceOf(iNode,eDwLayer)){throw new Error("Not a layer:\n"+JSON.stringify(iNode))}return iNode}return eDwUILayerHTMLGenerator}));define("eDwUIMessageReporter",["require","exports","eDwUIUtils","utils"],(function(require,exports,eDwUIUtils,utils){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.showMessageInDebugPanel=exports.showMessagePanelFromCSScontent=exports.showResultPanel=exports.showServerLoadErrorPanel=void 0;function showServerLoadErrorPanel(iServerID,iModelCacheName){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_addParagraphToPanelText({},"edrawings-server-load-failure-1")];case 1:_a.sent();return[4,l_showServerError(iServerID,iModelCacheName)];case 2:_a.sent();return[2]}}))}))}exports.showServerLoadErrorPanel=showServerLoadErrorPanel;function showResultPanel(iResult){return __awaiter(this,void 0,void 0,(function(){var showButtons,_a;return __generator(this,(function(_b){switch(_b.label){case 0:showButtons=false;if(!utils.isOfType(iResult,"ServerID"))return[3,2];return[4,l_showConversionResultPanel(iResult)];case 1:showButtons=_b.sent();return[3,5];case 2:_a=iResult.ErrorCode;return[3,3];case 3:return[4,l_showPanelGeneric(iResult)];case 4:showButtons=_b.sent();return[3,5];case 5:return[2,showButtons]}}))}))}exports.showResultPanel=showResultPanel;function showMessagePanelFromCSScontent(iTextClass,iOptions){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_addParagraphToPanelText(!!iOptions?iOptions:{},iTextClass)];case 1:_a.sent();return[4,l_showMessagePanel()];case 2:_a.sent();return[2]}}))}))}exports.showMessagePanelFromCSScontent=showMessagePanelFromCSScontent;function showMessageInDebugPanel(iMsg){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_showMessagePanel(iMsg,true,true)];case 1:_a.sent();return[2]}}))}))}exports.showMessageInDebugPanel=showMessageInDebugPanel;function l_showConversionResultPanel(iResult){return __awaiter(this,void 0,void 0,(function(){var showButtons,_a;return __generator(this,(function(_b){switch(_b.label){case 0:showButtons=l_shouldShowButtons();_a=iResult.ErrorCode;switch(_a){case"URLNotAccessible":return[3,1];case"UnsupportedFileType":return[3,4];case"UnknownLicenseError":return[3,7];case"LicenseVersionMismatch":return[3,10];case"NoMoreLicenses":return[3,13];case"CannotConnectToLicenseServer":return[3,16];case"LicenseExpired":return[3,19];case"UnknownError":return[3,22]}return[3,25];case 1:return[4,l_addParagraphToPanelText({"data-file-url":iResult.ErrorData[0]},"edrawings-server-url-inaccessible")];case 2:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-error-title edrawings-dialog-no-close")];case 3:_b.sent();return[3,29];case 4:return[4,l_addParagraphToPanelText({"data-file":iResult.FileName},"edrawings-server-unsupported-file-type")];case 5:_b.sent();return[4,l_showMessagePanel("",true,showButtons,"edrawings-error-title edrawings-dialog-no-close")];case 6:_b.sent();return[3,29];case 7:return[4,l_addParagraphToPanelText({},"edrawings-unknown-license-error")];case 8:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 9:_b.sent();return[3,29];case 10:return[4,l_addParagraphToPanelText({},"edrawings-license-version-mismatch-error")];case 11:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 12:_b.sent();return[3,29];case 13:return[4,l_addParagraphToPanelText({},"edrawings-no-licenses-error")];case 14:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 15:_b.sent();return[3,29];case 16:return[4,l_addParagraphToPanelText({},"edrawings-license-server-connection-error")];case 17:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 18:_b.sent();return[3,29];case 19:return[4,l_addParagraphToPanelText({},"edrawings-license-expired-error")];case 20:_b.sent();return[4,l_showMessagePanel("",true,false,"edrawings-warn-title edrawings-dialog-no-close")];case 21:_b.sent();return[3,29];case 22:return[4,l_addParagraphToPanelText({},"edrawings-unknown-error")];case 23:_b.sent();return[4,l_showServerError(iResult.ServerID,iResult.ModelCacheName)];case 24:_b.sent();return[3,29];case 25:if(!l_isDebug())return[3,27];return[4,l_showPanelGeneric(iResult)];case 26:_b.sent();return[3,28];case 27:showServerLoadErrorPanel(iResult.ServerID,iResult.ModelCacheName);_b.label=28;case 28:return[3,29];case 29:return[2,showButtons]}}))}))}function l_showPanelGeneric(iResult){return __awaiter(this,void 0,void 0,(function(){var _a,msg,classes,_i,_b,data;return __generator(this,(function(_c){switch(_c.label){case 0:_a=iResult.ErrorCode;switch(_a){case"AJAXFailure":return[3,1];case"IncompleteFileProcessing":return[3,4];case"ModelLoadInViewerFailed":return[3,7]}return[3,11];case 1:return[4,l_addParagraphToPanelText({},"edrawings-server-ajax-failure")];case 2:_c.sent();return[4,l_showMessagePanel("",true,false,"edrawings-error-title edrawings-dialog-no-close")];case 3:_c.sent();return[3,13];case 4:return[4,l_addParagraphToPanelText({},"edrawings-unable-process-file")];case 5:_c.sent();return[4,l_showMessagePanel("",true,true,"edrawings-error-title edrawings-dialog-no-close")];case 6:_c.sent();return[3,13];case 7:return[4,l_addParagraphToPanelText({"data-error-message":iResult.ErrorData[0]},"edrawings-viewer-load-failure")];case 8:_c.sent();return[4,l_addParagraphToPanelText({"data-model-cache-name":iResult.ErrorData[1]},"edrawings-server-load-failure-3")];case 9:_c.sent();return[4,l_showMessagePanel("",true,true,"edrawings-error-title edrawings-dialog-no-close")];case 10:_c.sent();return[3,13];case 11:msg="";classes="edrawings-dialog-no-close";switch(iResult.ErrorCode){case"Error":classes+=" edrawings-error-title";break;case"Warn":classes+=" edrawings-warn-title";break;default:classes+=" edrawings-info-title";msg+="
"+iResult.ErrorCode+"
";break}for(_i=0,_b=iResult.ErrorData;_i<_b.length;_i++){data=_b[_i];msg+="
"+data+"
"}return[4,l_showMessagePanel(msg,true,false,classes)];case 12:_c.sent();return[3,13];case 13:return[2,l_shouldShowButtons()]}}))}))}function l_addParagraphToPanelText(iOptions,iTextClass){return __awaiter(this,void 0,void 0,(function(){function getValue(iValue){return typeof iValue==="string"?"'"+iValue+"'":iValue.toString()}var msgPanelTextJQ,div,optionKeys,_i,optionKeys_1,optionKey;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_getDialogPanelTextElem()];case 1:msgPanelTextJQ=_a.sent();div="
";msgPanelTextJQ.append(div);return[2]}}))}))}function l_showMessagePanel(iMsg,iModal,iShowButtons,iDlgClasses){if(iMsg===void 0){iMsg=""}if(iModal===void 0){iModal=true}if(iShowButtons===void 0){iShowButtons=false}if(iDlgClasses===void 0){iDlgClasses="edrawings-info-title edrawings-dialog-no-close"}return __awaiter(this,void 0,void 0,(function(){var msgPanelTextJQ,opts,msgPanel,msgPanelTitleJQ,text;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_getDialogPanelTextElem()];case 1:msgPanelTextJQ=_a.sent();if(iMsg)msgPanelTextJQ.html(iMsg);opts={modal:iModal,width:window.innerWidth*.6,minWidth:200,dialogClass:iDlgClasses,closeOnEscape:iShowButtons};msgPanel=$("#edrawings-dialog-panel");if(iShowButtons){$.extend(opts,{buttons:{Ok:function(){msgPanel.dialog("close")}},close:function(iEvent){$(".edrawings-dialog-content").remove()}})}$.extend(opts,{beforeClose:function(iEvent){eDwUIUtils.getAsJQueryObj(iEvent.target).closest(".ui-dialog").siblings(".ui-widget-overlay").addBack().off("drop")},open:function(iEvent){eDwUIUtils.getAsJQueryObj(iEvent.target).closest(".ui-dialog").siblings(".ui-widget-overlay").addBack().on("drop",(function(iEvent2){iEvent2.preventDefault();iEvent2.stopPropagation()}))}});eDwUIUtils.hide("#WaitBanner",true);msgPanel.dialog(opts);if(iDlgClasses.indexOf("edrawings")>-1&&iDlgClasses.indexOf("title")>-1){msgPanelTitleJQ=msgPanel.prev().find(".ui-dialog-title");text="";if(msgPanelTitleJQ){text=msgPanelTitleJQ.css("content").replace(/^['"]+|\\|(;\s?})+|['"]$/g,"")}msgPanelTitleJQ.text(text)}return[2]}}))}))}function l_shouldShowButtons(){var viewerHTMLElem=$(eDwUIUtils.getViewerElementID()).get(0);return $._data(viewerHTMLElem,"events").dragover}function l_isDebug(){var viewerFeatOpts={Debug:false};eDwUIUtils.getRequestedQueryStringParams(location.href,viewerFeatOpts,false);return viewerFeatOpts.Debug||false}function l_getDialogPanelTextElem(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!!lDialogTextJQ.length)return[3,2];return[4,eDwUIUtils.loadPanel("#edrawings-dialog-panel","dialogpanel.html")];case 1:_a.sent();lDialogTextJQ=$("#edrawings-dialog-panel-text");_a.label=2;case 2:return[2,lDialogTextJQ]}}))}))}function l_showServerError(iServerID,iModelCacheName){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_addParagraphToPanelText({"data-server-id":iServerID},"edrawings-server-load-failure-2")];case 1:_a.sent();return[4,l_addParagraphToPanelText({"data-model-cache-name":iModelCacheName},"edrawings-server-load-failure-3")];case 2:_a.sent();return[4,l_showMessagePanel("",true,false,"edrawings-error-title edrawings-dialog-no-close")];case 3:_a.sent();return[2]}}))}))}var lDialogTextJQ=$()}));define("eDwUIModelViewHTMLGenerator",["require","exports","eDwUIHTMLGenerator"],(function(require,exports,eDwUIHTMLGenerator_3){"use strict";var eDwUIModelViewHTMLGenerator=function(_super){__extends(eDwUIModelViewHTMLGenerator,_super);function eDwUIModelViewHTMLGenerator(iViewer,iPanelUIID){return _super.call(this,iViewer,iPanelUIID)||this}eDwUIModelViewHTMLGenerator.prototype.generateHTML=function(iAdditionalClasses){return __awaiter(this,void 0,void 0,(function(){var generatedHTML,modelViews,_i,modelViews_6,modelView,modelViewHierNode;return __generator(this,(function(_a){generatedHTML="";modelViews=this.mViewer.getModel().getModelViews();for(_i=0,modelViews_6=modelViews;_iparentRect.Width){posx=parentRect.Width-menuWidth-5}if(posy+menuHeight>parentRect.Height){posy=parentRect.Height-menuHeight-5}menuJQ.css({top:posy+"px",left:posx+"px"});eDwUIUtils.hide(c_menuID,false)};eDwUIShortcutMenu.hide=function(){eDwUIUtils.hide(c_menuID,true);eDwUIUtils.hide(c_menuID+" ul",true);eDwUIUtils.hide(c_menuID+" li",true)};return eDwUIShortcutMenu}();exports.eDwUIShortcutMenu=eDwUIShortcutMenu;var c_menuID="#edrawings-shortcut-menu";var c_divider="-";var c_dummyText="dummy";function l_validatePlugin(iPluginName){if(!iPluginName){console.debugLog("shortcutmenu","Missing menu group name.");throw new eDwGenericError("Missing menu group name.")}}function l_insertInMenu(iElementStyle,iPluginName,iCSSClassName,iParentMenuJQ){l_validatePlugin(iPluginName);var text=iCSSClassName==="edrawings-shortcut-divider"?c_divider:c_dummyText;var menuElemJQ=$("<"+iElementStyle+" class ='"+iCSSClassName+" edrawings-shortcut-menu-text'>"+text+"");menuElemJQ.attr("plugin-name",iPluginName);if(!menuElemJQ.attr("id")){menuElemJQ.attr("id",iCSSClassName+"-id")}iParentMenuJQ.append(menuElemJQ);iParentMenuJQ.menu("refresh");if(text===c_dummyText)menuElemJQ.text("");return menuElemJQ}function l_removeFromMenu(iParentMenuSelector,iPluginName,iMenuItemCSSClassName){return $(iParentMenuSelector).find("[plugin-name='"+iPluginName+"']"+iMenuItemCSSClassName).remove()}function l_getNumVisMenuItems(iPluginName){var menuItems=$(c_menuID+" li");var hiddenMenuItems=$(c_menuID+" li.edrawings-ui-hide");if(iPluginName){menuItems=menuItems.find("[plugin-name='"+iPluginName+"']");hiddenMenuItems=hiddenMenuItems.find("[plugin-name='"+iPluginName+"']")}return menuItems.length-hiddenMenuItems.length}function l_shouldBeVisible(iViewer,iArg){return typeof iArg==="boolean"?false:true}}));define("eDwUITableHTMLGenerator",["require","exports","eDwUIHTMLGenerator"],(function(require,exports,eDwUIHTMLGenerator_5){"use strict";var eDwUITableHTMLGenerator=function(_super){__extends(eDwUITableHTMLGenerator,_super);function eDwUITableHTMLGenerator(iViewer,iPanelUIID){return _super.call(this,iViewer,iPanelUIID)||this}eDwUITableHTMLGenerator.prototype.generateHTML=function(iAdditionalClasses){return __awaiter(this,void 0,void 0,(function(){var generatedHTML,activeModelView,tableNodes,_i,tableNodes_1,tableNode;return __generator(this,(function(_a){generatedHTML="";activeModelView=this.mViewer.getModel().getActiveModelView();if(activeModelView&&activeModelView.Hierarchy){tableNodes=activeModelView.Hierarchy.find("Category","table");for(_i=0,tableNodes_1=tableNodes;_i0))}}exports.searchPanelList=searchPanelList;function updateModelViewTargets(iModelView,iFilter,iTargetClass){var targetSpans=$("span[data-hoopsid='"+iModelView.Hierarchy.HOOPSID+"']");if(targetSpans.length>0){var viewTab=targetSpans.filter(iFilter);if(viewTab.length>0){var parentJQ=viewTab.parent();parentJQ.addClass(iTargetClass);scrollToTarget(parentJQ)}}}exports.updateModelViewTargets=updateModelViewTargets;function switchModelView(iEvent,iViewer,iClassForNodeID){var _this=this;if(!iEvent)return;var targetJQ=getAsJQueryObj(iEvent.target);if(!targetJQ.length)return;var modelViewDivJQ=$(iClassForNodeID,targetJQ);if(!modelViewDivJQ.length)return;var model=iViewer.getModel();var nodeIDHC=parseInt(modelViewDivJQ.data("hoopsid"),10);var modelViewHierNode=model.getHierarchyNode(nodeIDHC);var newModelView=modelViewHierNode.getModelView();var currModelView=model.getActiveModelView();if(newModelView===currModelView)return;(function(){return __awaiter(_this,void 0,void 0,(function(){var changeModelViewCmd;return __generator(this,(function(_a){switch(_a.label){case 0:changeModelViewCmd=new eDwChangeModelViewCmd(iViewer,newModelView);return[4,eDwCommandMgr.get().run(changeModelViewCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}exports.switchModelView=switchModelView;function expandSelected(iViewer,iSelHierNode){var activeModelView=iViewer.getModel().getActiveModelView();function expandNode(iTargetJQ){if(!iTargetJQ.length)return;if(!iTargetJQ.hasClass("edrawings-tree-expanded")){var panelUIID=getUIPanelID(iTargetJQ);if(!$(panelUIID).is(":visible"))return;var gen=getUIGenerator(panelUIID);var offset=parseInt($(iTargetJQ).css("padding-left"),10);var nodeToExpand=parseInt(iTargetJQ.data("hoopsid"),10);var hierarchyNode=activeModelView.Nodes[nodeToExpand];var appendNode=iTargetJQ.closest(".edrawings-submenu-list-item");appendNode.after(gen.generateHTMLForChildNodes(hierarchyNode,false,offset));iTargetJQ.addClass("edrawings-tree-expanded")}}var hierNode=iSelHierNode.Parent;while(hierNode&&hierNode!==activeModelView.Hierarchy){var expandNodes=$('[data-hoopsid="'+hierNode.HOOPSID+'"][class~="edrawings-tree-arrow"]');$.each(expandNodes,(function(iIdx,iTarget){expandNode($(iTarget))}));hierNode=hierNode.Parent}}exports.expandSelected=expandSelected;function scrollToTreeNode(iSelHierNode,iSetSelected){var treeItem={node:$("span[data-hoopsid='"+iSelHierNode.HOOPSID+"']:not(.config-tab-text)"),ownerNode:$("div[data-hoopsid='"+iSelHierNode.HOOPSID+"']")};if(treeItem.ownerNode.length){var classAction_1=iSetSelected?"addClass":"removeClass";$.each(treeItem.node,(function(iIdx,iTarget){$(iTarget)[classAction_1]("edrawings-list-selected")}));$.each(treeItem.ownerNode,(function(iIdx,iTarget){var targetJQ=$(iTarget);targetJQ[classAction_1]("edrawings-list-selected");if(!targetJQ.hasClass("edrawings-submenu-list-item")){return}targetJQ.find(".edrawings-submenu-list-item-button")[classAction_1]("edrawings-list-option");var panel=targetJQ.closest(".edrawings-menu");var panelHiddenState=panel.is(":hidden");hide(panel.attr("id"),false);if(iSetSelected){scrollToTarget(targetJQ,panelHiddenState?"none":"slow")}hide(panel.attr("id"),panelHiddenState)}))}}exports.scrollToTreeNode=scrollToTreeNode;function addCloseEventHandler(iPanelID,iUIHTMLEventMgr){iUIHTMLEventMgr.addDelegatedEventHandler(iPanelID+" .edrawings-menu-close","click",(function(iEvent){hide(iPanelID,true)}))}exports.addCloseEventHandler=addCloseEventHandler;function deactivateMoveInput(iInputEventIDSuffix){$(document).off("mousemove"+iInputEventIDSuffix);$(document).off("mousedown"+iInputEventIDSuffix);$(document).off("mouseup"+iInputEventIDSuffix);$(document).off("click"+iInputEventIDSuffix)}exports.deactivateMoveInput=deactivateMoveInput;function loadComponentHTML(){return __awaiter(this,void 0,void 0,(function(){var loadPromises;return __generator(this,(function(_a){switch(_a.label){case 0:loadPromises=[];utils.appendToArray(loadPanel("#edrawings-sheet-tree-menu","sheetspanel.html"),loadPromises);utils.appendToArray(loadPanel("#edrawings-layer-control-menu","layerspanel.html"),loadPromises);utils.appendToArray(loadPanel("#edrawings-debug-menu","debugpanel.html"),loadPromises);return[4,Promise.all(loadPromises)];case 1:_a.sent();return[2]}}))}))}exports.loadComponentHTML=loadComponentHTML;function inhibitEventBehavior(iEvent){iEvent.preventDefault();iEvent.stopPropagation()}exports.inhibitEventBehavior=inhibitEventBehavior;function populateModelViewPanel(iViewer,iPanelUIID,iTextClass){return __awaiter(this,void 0,void 0,(function(){var listModelViewMenu,gen,_a,_b;return __generator(this,(function(_c){switch(_c.label){case 0:listModelViewMenu=$(iPanelUIID+" .edrawings-submenu-list");listModelViewMenu.empty();gen=getUIGenerator(iPanelUIID);_b=(_a=listModelViewMenu).append;return[4,gen.generateHTML(iTextClass)];case 1:_b.apply(_a,[_c.sent()]);return[2]}}))}))}exports.populateModelViewPanel=populateModelViewPanel;function addPanelModeEvents(iPanelID,iInputEventIDSuffix,iButtonID){var click="click"+iInputEventIDSuffix;$(document).on(click,iPanelID+" .edrawings-menu-panel-arrow-collapse",(function(iJQEvent){var msg="Panel resize: "+click;console.debugLog("UIPanelResize",msg);iJQEvent.preventDefault();var panelJQ=$(iPanelID);panelJQ.toggleClass("edrawings-collapsed");var activeButtonJQ=iButtonID?$(iButtonID):undefined;positionMenuPanelArrowCollapseButton(panelJQ,activeButtonJQ);iJQEvent.stopImmediatePropagation()}));var panelJQ=$(iPanelID);panelJQ.removeClass("edrawings-collapsed");l_setMenuPanelArrowCollapseButtonPosition(panelJQ);fixMenuPanelInwardToolbar(panelJQ)}exports.addPanelModeEvents=addPanelModeEvents;function getText(iElement){return $(iElement).text().trim()}exports.getText=getText;function getTarget(iTargetJQ){return iTargetJQ.hasClass("config-tab-text")?iTargetJQ.parent():iTargetJQ}exports.getTarget=getTarget;function getSpanText(iTargetJQ){var target=getTarget(iTargetJQ);if(!target.is("span")){target=target.find("span")}if(!target||!target.length)return"";return target[0].innerText}exports.getSpanText=getSpanText;function loadPanel(iElemOrClassID,iPanelHTML){return __awaiter(this,void 0,void 0,(function(){var loaded,iExcp_16;return __generator(this,(function(_a){switch(_a.label){case 0:if(!eDwServiceMgr.usesWebServices())return[2,false];loaded=false;_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,eDwServiceMgr.get().load(iElemOrClassID,iPanelHTML)];case 2:_a.sent();loaded=true;console.debugLog("PanelLoad","Loaded panel id = "+iElemOrClassID+" HTML file = "+iPanelHTML);return[3,4];case 3:iExcp_16=_a.sent();console.debugLog("PanelLoad","Failed to load "+iPanelHTML+": "+iExcp_16.message);return[3,4];case 4:return[2,loaded]}}))}))}exports.loadPanel=loadPanel;function hide(iSelector,iOff){var selJQ=$(iSelector);selJQ[iOff?"addClass":"removeClass"]("edrawings-ui-hide");return selJQ}exports.hide=hide;function getRequestedQueryStringParams(iURL,ioViewerFeatOpts,iWarnOfOtherParams){if(iWarnOfOtherParams===void 0){iWarnOfOtherParams=true}var hashes=iURL.slice(iURL.indexOf("?")+1).split("&");for(var i=0;i1){var strVal=hash[1];var val=strVal==="true"?true:strVal==="false"?false:strVal;if(ioViewerFeatOpts.hasOwnProperty(hash[0])){ioViewerFeatOpts[hash[0]]=val}else if(iWarnOfOtherParams){console.warn(hash[0]+" is not a valid query parameter.")}}}}exports.getRequestedQueryStringParams=getRequestedQueryStringParams;function getPosition(iTargetJQ){var ret={top:0,left:0};if(iTargetJQ)ret=iTargetJQ.position();return ret}exports.getPosition=getPosition;function scrollToTarget(iTargetJQ,iAnimationSpeed){if(iAnimationSpeed===void 0){iAnimationSpeed="slow"}var animationSpeed=iAnimationSpeed;var targetOffset=iTargetJQ.offset();var targetParentJQ=iTargetJQ.parent();if(targetParentJQ.length&&targetParentJQ[0]===$(document)[0]){return false}var targetParentOffset=targetParentJQ.offset();var updated=false;if(targetParentJQ[0].scrollWidth>targetParentJQ.width()){var targetParentPaddingLeft=parseInt(targetParentJQ.css("paddingLeft"));var diff=l_computeTargetMinimalAdjustment(targetOffset.left,parseInt(iTargetJQ.css("marginLeft"))+parseInt(iTargetJQ.css("borderLeftWidth"))+iTargetJQ[0].scrollWidth+parseInt(iTargetJQ.css("borderRightWidth"))+parseInt(iTargetJQ.css("marginRight")),targetParentOffset.left+parseInt(targetParentJQ.css("marginLeft"))+parseInt(targetParentJQ.css("borderLeftWidth"))+targetParentPaddingLeft,targetParentJQ[0].clientWidth-targetParentPaddingLeft-parseInt(targetParentJQ.css("paddingRight")));if(diff!==0){var pos=targetParentJQ.scrollLeft()+diff;if(Math.abs(diff)>targetParentJQ.width()){var targetJQpostionLeft=iTargetJQ.position().left;pos=targetParentJQ.scrollLeft()+targetJQpostionLeft}else{animationSpeed="none"}l_scrollToTarget(targetParentJQ,pos,animationSpeed,"scrollLeft");updated=true}}if(targetParentJQ[0].scrollHeight>targetParentJQ.height()){var targetParentPaddingTop=parseInt(targetParentJQ.css("paddingTop"));var diff=l_computeTargetMinimalAdjustment(targetOffset.top,parseInt(iTargetJQ.css("marginTop"))+parseInt(iTargetJQ.css("borderTopWidth"))+iTargetJQ[0].scrollHeight+parseInt(iTargetJQ.css("borderBottomWidth"))+parseInt(iTargetJQ.css("marginBottom")),targetParentOffset.top+parseInt(targetParentJQ.css("marginTop"))+parseInt(targetParentJQ.css("borderTopWidth"))+targetParentPaddingTop,targetParentJQ[0].clientHeight-targetParentPaddingTop-parseInt(targetParentJQ.css("paddingBottom")));if(diff!==0){var pos=targetParentJQ.scrollTop()+diff;if(Math.abs(diff)>targetParentJQ.height()){var targetJQpostionTop=iTargetJQ.position().top;pos=targetParentJQ.scrollTop()+targetJQpostionTop}else{animationSpeed="none"}l_scrollToTarget(targetParentJQ,pos,animationSpeed,"scrollTop");updated=true}}return updated}exports.scrollToTarget=scrollToTarget;function getIDHC(iTargetJQ){if(!iTargetJQ)return Number.NaN;return parseInt(iTargetJQ.data("hoopsid"),10)}exports.getIDHC=getIDHC;function activateUI(iButtonID,iPanelID){return __awaiter(this,void 0,void 0,(function(){var panelJQ,buttonJQ;return __generator(this,(function(_a){switch(_a.label){case 0:if(iPanelID){panelJQ=hide(iPanelID,false).addClass("active");fixMenuPanelInwardToolbar(panelJQ)}if(!iButtonID)return[3,2];buttonJQ=$(iButtonID);buttonJQ.addClass("active-button");scrollToTarget(buttonJQ,"none");return[4,eDwEventMgr.get().fireEvent(eDwEvents_9.ActivateUIOpEvent,buttonJQ)];case 1:_a.sent();_a.label=2;case 2:return[2]}}))}))}exports.activateUI=activateUI;function deactivateUI(iButtonCSSClassName,iPanelCSSClassName){if(iButtonCSSClassName===void 0){iButtonCSSClassName=""}if(iPanelCSSClassName===void 0){iPanelCSSClassName=""}return __awaiter(this,void 0,void 0,(function(){var activeButtonsJQ,panelsJQ;return __generator(this,(function(_a){switch(_a.label){case 0:activeButtonsJQ=$(iButtonCSSClassName+".active-button");if(!activeButtonsJQ.length)return[3,2];return[4,eDwEventMgr.get().fireEvent(eDwEvents_9.DeactivateUIOpEvent,activeButtonsJQ)];case 1:_a.sent();activeButtonsJQ.removeClass("active-button");_a.label=2;case 2:panelsJQ=hide(iPanelCSSClassName+".active",true).removeClass("active");panelsJQ.each((function(iIdx,iPanel){fixMenuPanelInwardToolbar($(iPanel),true)}));return[2,activeButtonsJQ]}}))}))}exports.deactivateUI=deactivateUI;function isIDInJQuery(iListJQ,iID){var inJQList=false;for(var key in iListJQ){if(iListJQ[key].id===iID){inJQList=true;break}}return inJQList}exports.isIDInJQuery=isIDInJQuery;function isStateOn(iID){return $(iID).hasClass("state-on-button")}exports.isStateOn=isStateOn;function resetToHomeView(iViewer){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){var resetCmd;return __generator(this,(function(_a){switch(_a.label){case 0:resetCmd=new eDwResetCmd(iViewer);return[4,eDwCommandMgr.get().run(resetCmd,"commit")];case 1:_a.sent();return[2]}}))}))})()}exports.resetToHomeView=resetToHomeView;function getViewerElementName(){return"edrawings-viewer"}exports.getViewerElementName=getViewerElementName;function getViewerElementID(){return"#"+getViewerElementName()}exports.getViewerElementID=getViewerElementID;function makeResult(iExcp){var result={ErrorCode:"UnknownError",ErrorData:[]};if(iExcp instanceof eDwResultError){result=iExcp.Result}else if(iExcp instanceof eDwAJAXError){result.ErrorCode=iExcp.ErrorCode;result.ErrorData=[iExcp.message]}else{result.ErrorCode=iExcp.name;result.ErrorData=[iExcp.message]}return result}exports.makeResult=makeResult;function viewFile(iModelName,iModelKey,iParams,iContainerName,iModelData){return __awaiter(this,void 0,void 0,(function(){function createViewer(iWebSocketEndpoint){if(iWebSocketEndpoint===""){return null}var streamAlways=iParams.StreamAlwaysConnected;var streamModes=eDwTypes_17.HC.StreamingMode;var webViewerInfo={};webViewerInfo.containerId=iContainerName;webViewerInfo.model=iModelKey;webViewerInfo.endpointUri=iWebSocketEndpoint;webViewerInfo.streamingMode=streamAlways?streamModes.Interactive:streamModes.All;webViewerInfo.streamingMode=iModelData?null:webViewerInfo.streamingMode;webViewerInfo.buffer=iModelData;webViewerInfo.boundingPreviewMode=eDwTypes_17.HC.BoundingPreviewMode.None;eDwEventMgr.get().addEventHandlerFunc(eDwEvents_9.GLContextLostEvent,c_onContextLost);var viewer=new eDwView(webViewerInfo,iParams);hide("#"+iContainerName,false);if(iModelName){$("#edrawings-filename-text").html(decodeURIComponent(iModelName))}var modelName=!iModelName&&iModelKey?iModelKey:iModelName;if(!modelName)return null;if(modelName.search(".zip")>-1){modelName=modelName.substring(0,modelName.length-4)}console.debugLog("ModelLoad","Created new edw viewer");return viewer}var wsEndPt,_a;return __generator(this,(function(_b){switch(_b.label){case 0:if(!iModelData)return[3,1];_a=null;return[3,3];case 1:return[4,eDwServiceMgr.get().getWebSocketEndpoint(iModelKey,iParams.WebSocketEndpoint)];case 2:_a=_b.sent();_b.label=3;case 3:wsEndPt=_a;return[2,createViewer(wsEndPt)]}}))}))}exports.viewFile=viewFile;function fixMenuPanelInwardToolbar(iPanelJQ,iToClear){if(iToClear===void 0){iToClear=false}if(iToClear){iPanelJQ.removeClass("edrawings-collided");return}if(iPanelJQ.hasClass("edrawings-hud-menu")){var panel=iPanelJQ[0];if(panel.scrollHeight>panel.clientHeight){iPanelJQ.addClass("edrawings-collided")}else{iPanelJQ.removeClass("edrawings-collided")}}else if(iPanelJQ.hasClass("edrawings-submenu")){var wrapperJQ=iPanelJQ.find(".edrawings-menu-panel-wrapper");var wasCollided=iPanelJQ.hasClass("edrawings-collided");if(iPanelJQ[0].scrollHeight>iPanelJQ[0].clientHeight&&iPanelJQ[0].scrollHeight-iPanelJQ[0].clientHeight>1||wrapperJQ[0].scrollHeight>wrapperJQ[0].clientHeight&&wrapperJQ[0].scrollHeight-wrapperJQ[0].clientHeight>1){if(!wasCollided){iPanelJQ.addClass("edrawings-collided")}iPanelJQ.addClass("edrawings-wiggle");setTimeout((function(){iPanelJQ.removeClass("edrawings-wiggle")}),0)}else{iPanelJQ.removeClass("edrawings-collided");if(wasCollided){fixMenuPanelInwardToolbar(iPanelJQ)}}}}exports.fixMenuPanelInwardToolbar=fixMenuPanelInwardToolbar;function positionMenuPanelArrowCollapseButton(iPanelJQ,iButtonJQ){if(!iPanelJQ.hasClass("edrawings-collapsed")){l_setMenuPanelArrowCollapseButtonPosition(iPanelJQ);fixMenuPanelInwardToolbar(iPanelJQ)}else{if(iButtonJQ){var arrowCollapseButtonJQ=iPanelJQ.find(".edrawings-menu-panel-arrow-collapse");var activeButtonRect=iButtonJQ[0].getBoundingClientRect();var arrowCollapseButtonRect=arrowCollapseButtonJQ[0].getBoundingClientRect();var diffTop=activeButtonRect.top-arrowCollapseButtonRect.top;l_setMenuPanelArrowCollapseButtonPosition(arrowCollapseButtonJQ,arrowCollapseButtonJQ.position().top+diffTop)}fixMenuPanelInwardToolbar(iPanelJQ,true)}}exports.positionMenuPanelArrowCollapseButton=positionMenuPanelArrowCollapseButton;function executeScrolling(iDiffX,iDiffY,iContentJQ,iBarJQ){var contentParentJQ=iContentJQ.parent();var leftButtonWrapperJQ=contentParentJQ.find(".edrawings-arrow-wrapper:has(> .edrawings-arrow-left)");var rightButtonWrapperJQ=contentParentJQ.find(".edrawings-arrow-wrapper:has(> .edrawings-arrow-right)");var upButtonWrapperJQ=contentParentJQ.find(".edrawings-arrow-wrapper:has(> .edrawings-arrow-up)");var downButtonWrapperJQ=contentParentJQ.find(".edrawings-arrow-wrapper:has(> .edrawings-arrow-down)");if(iContentJQ[0].scrollWidth>iContentJQ.width()){var scrollLeft=iContentJQ.scrollLeft();var newScrollLeft=scrollLeft+iDiffX;iContentJQ.scrollLeft(newScrollLeft);adjustScrollArrows(iContentJQ.scrollLeft(),iContentJQ[0].scrollWidth,iContentJQ.width(),true,leftButtonWrapperJQ,rightButtonWrapperJQ,iBarJQ)}if(iContentJQ[0].scrollHeight>iContentJQ.height()){var scrollTop=iContentJQ.scrollTop();var newScrollTop=scrollTop+iDiffY;iContentJQ.scrollTop(newScrollTop);adjustScrollArrows(iContentJQ.scrollTop(),iContentJQ[0].scrollHeight,iContentJQ.height(),false,upButtonWrapperJQ,downButtonWrapperJQ,iBarJQ)}return iDiffX!==0||iDiffY!==0}exports.executeScrolling=executeScrolling;function enableScrollOnTouch(ioUIHTMLEventMgr,iContentJqSel,iBarJqSel,iHandlerOnScroll){var _this=this;var contentJQ=$(iContentJqSel);var barJQ=iBarJqSel?$(iBarJqSel):undefined;var hasScrolled=false;var stopClickTarget;var stopClickPropagation=false;ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"touchstart",(function(iEventStart){hasScrolled=false;stopClickPropagation=false;stopClickTarget=undefined;var touchEventStart=iEventStart;var lastScreenX=touchEventStart.changedTouches[0].screenX;var lastScreenY=touchEventStart.changedTouches[0].screenY;ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchmove");ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"touchmove",(function(iEventMove){var touchEventMove=iEventMove;var xDiff=touchEventMove.changedTouches[0].screenX-lastScreenX;lastScreenX=touchEventMove.changedTouches[0].screenX;var yDiff=touchEventMove.changedTouches[0].screenY-lastScreenY;lastScreenY=touchEventMove.changedTouches[0].screenY;var updated=executeScrolling(-xDiff,-yDiff,contentJQ,barJQ);if(updated&&iHandlerOnScroll){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,iHandlerOnScroll()];case 1:_a.sent();return[2]}}))}))})()}hasScrolled=hasScrolled||updated}))}));ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"touchend",(function(iEvent){var touchEvent=iEvent;ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchmove");if(hasScrolled){touchEvent.preventDefault();touchEvent.stopPropagation();stopClickPropagation=true;stopClickTarget=touchEvent.target}else{stopClickPropagation=false;stopClickTarget=undefined}hasScrolled=false}));ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"touchcancel",(function(iEvent){ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchmove");hasScrolled=false;stopClickPropagation=false}));ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"mousedown",(function(iEvent){hasScrolled=false;stopClickPropagation=false;if(!eDwKeyMgr_5.eDwKeyMgr.isLMBPressed(iEvent)){return}var eventDown=iEvent;var lastScreenX=eventDown.screenX;var lastScreenY=eventDown.screenY;ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mousemove");ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"mousemove",(function(iEventMove){var eventMove=iEventMove;var xDiff=eventMove.screenX-lastScreenX;var yDiff=eventMove.screenY-lastScreenY;lastScreenX=eventMove.screenX;lastScreenY=eventMove.screenY;var updated=executeScrolling(-xDiff,-yDiff,contentJQ,barJQ);if(updated&&iHandlerOnScroll){iHandlerOnScroll()}hasScrolled=hasScrolled||updated}))}));ioUIHTMLEventMgr.addEventHandler(iContentJqSel,"mouseup",(function(iEvent){ioUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mousemove");if(hasScrolled){iEvent.stopImmediatePropagation();iEvent.preventDefault();stopClickPropagation=true;stopClickTarget=iEvent.target}else{stopClickPropagation=false;stopClickTarget=undefined}hasScrolled=false}));var propagationHandler=function(iEvent2){if(stopClickPropagation&&iEvent2.target===stopClickTarget){iEvent2.stopImmediatePropagation();iEvent2.preventDefault()}stopClickPropagation=false;stopClickTarget=undefined};var nameSpace=iContentJqSel.replace(/[\.\s]/g,"");var dataKey="click.edw."+nameSpace;contentJQ.off(dataKey,"*");contentJQ.on(dataKey,"*",propagationHandler)}exports.enableScrollOnTouch=enableScrollOnTouch;function disableScrollOnTouch(iUIHTMLEventMgr,iContentJqSel){iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchstart");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchmove");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchend");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"touchcancel");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mousedown");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mousemove");iUIHTMLEventMgr.removeEventHandlers(iContentJqSel,"mouseup");var contentJQ=$(iContentJqSel);var nameSpace=iContentJqSel.replace(/[\.\s]/g,"");var dataKey="click.edw."+nameSpace;contentJQ.off(dataKey,"*")}exports.disableScrollOnTouch=disableScrollOnTouch;function adjustScrollArrows(iOffset,iRange,iVisibleRange,isHorizonatalScrolling,iDecreaseWrapperJQ,iIncreaseWrapperJQ,iBarJQ){if(iOffset<=0){iDecreaseWrapperJQ.addClass("edrawings-disabled-button");if(iBarJQ){iBarJQ.addClass(isHorizonatalScrolling?"edrawings-removed-arrow-left":"edrawings-removed-arrow-up")}}else{iDecreaseWrapperJQ.removeClass("edrawings-disabled-button");if(iBarJQ){iBarJQ.removeClass(isHorizonatalScrolling?"edrawings-removed-arrow-left":"edrawings-removed-arrow-up")}}if(iOffset+iVisibleRange>=iRange){iIncreaseWrapperJQ.addClass("edrawings-disabled-button");if(iBarJQ){iBarJQ.addClass(isHorizonatalScrolling?"edrawings-removed-arrow-right":"edrawings-removed-arrow-down")}}else{iIncreaseWrapperJQ.removeClass("edrawings-disabled-button");if(iBarJQ){iBarJQ.removeClass(isHorizonatalScrolling?"edrawings-removed-arrow-right":"edrawings-removed-arrow-down")}}}exports.adjustScrollArrows=adjustScrollArrows;function getAsJQueryObj(iObj){return iObj?$(iObj):$()}exports.getAsJQueryObj=getAsJQueryObj;var l_generators={};function l_getAllDisplayStateCSSClasses(iHierNode){var classes="";for(var displayState in eDwNodeAttributes_4.NodeDisplayState){classes+="edrawings-"+iHierNode.Category+"-"+displayState.toLowerCase()+" "}return classes}function l_populatePanel(iViewer,iCategoryName,iListID,iPanelUIID,iAdditionalClasses){if(iAdditionalClasses===void 0){iAdditionalClasses=""}return __awaiter(this,void 0,void 0,(function(){var activeModelView,list,gen,_a,_b;return __generator(this,(function(_c){switch(_c.label){case 0:activeModelView=iViewer.getModel().getActiveModelView();if(!activeModelView||!activeModelView.Hierarchy)return[2];list=$(iListID);list.empty();gen=getUIGenerator(iPanelUIID);_b=(_a=list).append;return[4,gen.generateHTML(iAdditionalClasses)];case 1:_b.apply(_a,[_c.sent()]);return[2]}}))}))}function l_populateLayerPanel(iViewer){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,l_populatePanel(iViewer,"layer","#edrawings-layer-control-list","#edrawings-layer-control-menu")];case 1:_a.sent();return[2]}}))}))}function l_populateDebugPanel(iViewer){var list=$("#edrawings-debug-menu .edrawings-submenu-list");list.empty();var gen=getUIGenerator("#edrawings-debug-menu");var model=iViewer.getModel();var modelView=model.getActiveModelView();if(modelView&&modelView.Hierarchy){var layers=model.getLayers();for(var _i=0,layers_3=layers;_iiReferenceSide+iReferenceOffset){diff=iTargetSide+iTargetOffset-(iReferenceSide+iReferenceOffset)}return diff}function l_scrollToTarget(iTargetJQ,iPos,iAnimationSpeed,iStartPos){var _a;if(iAnimationSpeed===void 0){iAnimationSpeed="slow"}if(iStartPos===void 0){iStartPos="scrollTop"}if(!iTargetJQ)return;if(iAnimationSpeed==="none"){iTargetJQ[iStartPos](iPos)}else{iTargetJQ.animate((_a={},_a[iStartPos]=iPos,_a),iAnimationSpeed)}}}));define("eDwUnits",["require","exports"],(function(require,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.cDefaultAngleUnit=exports.cDefaultLengthUnit=exports.LengthTypeValues=exports.AngleTypeValues=void 0;exports.AngleTypeValues=["degree","radian"];exports.LengthTypeValues=["millimeter","centimeter","meter","inch","foot","footAndInch"];exports.cDefaultLengthUnit="millimeter";exports.cDefaultAngleUnit="degree"}));define("eDwView",["require","exports","eDwSelMgr","eDwXSectionMgr","eDwViewMgr","eDwTimer","eDwOperatorBaseDeps","eDwEventMgr","eDwHistoryMgr","eDwModel","eDwTypes","eDwEvents","eDwTouchOpsMgr","eDwTableMgr"],(function(require,exports,eDwSelMgr,eDwXSectionMgr,eDwViewMgr,eDwTimer,eDwOperatorBaseDeps_2,eDwEventMgr,eDwHistoryMgr,eDwModel,eDwTypes_18,eDwEvents_10,eDwTouchOpsMgr,eDwTableMgr){"use strict";var eDwView=function(){function eDwView(iViewerInfo,iFeatureOptions){this.mElemID=iViewerInfo.containerId||"";this.HCViewer=new eDwTypes_18.HC.WebViewer(iViewerInfo);this.mTimer=new eDwTimer;this.ViewerFeatureOpts=iFeatureOptions;this.mDrawMode=iFeatureOptions.RenderType||"ShadedWithEdges";this.OperatorMgr=new eDwOperatorBaseDeps_2.eDwOperatorMgr(this);this.TableMgr=new eDwTableMgr(this);var streamAll=this.HCViewer.getStreamingMode()===eDwTypes_18.HC.StreamingMode.All;var timeBeforeTimeout=streamAll?14400:120;var timeBeforeWarnTimeout=timeBeforeTimeout-10;this.HCViewer.setClientTimeout(timeBeforeTimeout,timeBeforeWarnTimeout);this.mInitCamera=null;this.mModelKey=iViewerInfo.model||"";this.setupWebViewer()}eDwView.prototype.getHCView=function(){return this.HCViewer.view};eDwView.prototype.getHCMarkupManager=function(){return this.HCViewer.markupManager};eDwView.prototype.getModel=function(){if(!this.mModel){this.mModel=new eDwModel(this)}return this.mModel};eDwView.prototype.processProductStructure=function(){return __awaiter(this,void 0,void 0,(function(){var model,activeModelView,modelViewDefCamera;var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:this.mInitCamera=this.getHCView().getCamera();model=this.getModel();activeModelView=model.getActiveModelView();modelViewDefCamera=activeModelView.getDefaultCamera();if(modelViewDefCamera)this.mInitCamera=modelViewDefCamera;this.ViewMgr.setCamera(this.mInitCamera);$("#"+this.mElemID).trigger("edw:ModelDataLoadComplete",this);return[4,this.finishInit()];case 1:_a.sent();if(this.HCViewer.getStreamingMode()===eDwTypes_18.HC.StreamingMode.All){this.HCViewer.waitForIdle().then((function(){l_closeHCConnection(_this)}))}return[2]}}))}))};eDwView.prototype.setupWebViewer=function(){var _this=this;var processingSelection=false;var eventMgr=eDwEventMgr.get();function deprecatedCallback(iDeprecatedFuncName){var argArray=[];for(var key in arguments){argArray.push(arguments[key])}console.debugLog("Deprecated","Deprecated call: "+argArray.join("."))}this.mHCCallbacksObj={sceneReady:function(){console.debugLog("ViewerLoad","Scene ready");_this.HCViewer.resizeCanvas()},streamingActivated:function(){console.debugLog("Viewer","Streaming activated")},streamingDeactivated:function(){console.debugLog("Viewer","Streaming deactivated")},selection:function(iSelEvent){if(!processingSelection){processingSelection=true;try{(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){this.SelectionMgr.onSelection(iSelEvent);return[2]}))}))})()}catch(iException){}processingSelection=false}},timeoutWarning:function(iRemainingMinutes){console.debugLog("Viewer","Inactivity timeout pending in "+iRemainingMinutes+" minutes.");_this.mTimer.ellapsed();_this.mTimer.dumpToConsole()},timeout:function(){console.debugLog("Viewer","Inactivity timeout");_this.mTimer.ellapsed();_this.mTimer.dumpToConsole();(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.TimeoutEvent,this)];case 1:_a.sent();return[2]}}))}))})();l_closeHCConnection(_this)},modelLoadFailure:function(iModelName,iReason){console.warn("Model "+iModelName+" load failed: "+iReason);$("#"+_this.mElemID).trigger("edw:ModelLoadFailed",[_this,iModelName,iReason]);l_closeHCConnection(_this)},deprecated:deprecatedCallback,info:function(iInfoType,iMsg){console.debugLog("Debug",iInfoType.toString()+" "+iMsg)},missingModel:function(iModelPath){console.debugLog("Debug","Missing model: "+iModelPath);l_closeHCConnection(_this)},webGlContextLost:function(){console.debugLog("Debug","Browser lost GL context! Render incomplete!!");(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.GLContextLostEvent,this)];case 1:_a.sent();return[2]}}))}))})();l_closeHCConnection(_this)},assemblyTreeReady:function(){console.debugLog("ViewerLoad","Assembly tree ready.")},modelStructureReady:function(){console.debugLog("ViewerLoad","Model structure ready.");$("#"+_this.mElemID).trigger("edw:ModelLoaded",_this)},modelSwitched:function(){console.debugLog("ViewerLoad","Model switch done.");$("#"+_this.mElemID).trigger("edw:ModelLoaded",_this)},viewCreated:function(iHCView){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.ViewCreatedEvent,iHCView)];case 1:_a.sent();return[2]}}))}))})()},viewLoaded:function(iHCView){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.ViewLoadedEvent,iHCView)];case 1:_a.sent();return[2]}}))}))})()},viewDeleted:function(iHCView){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.ViewDeletedEvent,iHCView)];case 1:_a.sent();return[2]}}))}))})()},camera:function(iCamera){(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eventMgr.fireEvent(eDwEvents_10.CameraChangeEvent,iCamera)];case 1:_a.sent();return[2]}}))}))})()}};this.HCViewer.setCallbacks(this.mHCCallbacksObj);this.HCViewer.start()};eDwView.prototype.getInitCamera=function(){return this.mInitCamera};eDwView.prototype.getCurrModelKey=function(){return this.mModelKey};eDwView.prototype.unregister=function(){var _this=this;if(this.HCViewer)this.HCViewer.unsetCallbacks(this.mHCCallbacksObj);this.OperatorMgr.unregisterAll();(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_10.DoneEvent,this)];case 1:_a.sent();return[2]}}))}))})()};eDwView.prototype.destroy=function(){this.HCViewer.shutdown()};eDwView.prototype.setExplosionLevel=function(iLevel){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.HCViewer.explodeManager.setMagnitude(iLevel)];case 1:_a.sent();return[4,eDwEventMgr.get().fireEvent(eDwEvents_10.ExplodeLevelChangeEvent,this,iLevel)];case 2:_a.sent();return[2]}}))}))})()};eDwView.prototype.getExplosionLevel=function(){return this.HCViewer.explodeManager.getMagnitude()};eDwView.prototype.getDrawMode=function(){return this.mDrawMode};eDwView.prototype.setDrawMode=function(iValue){var _this=this;var viewHC=this.getHCView();var settingsHC=viewHC.getHiddenLineSettings();switch(iValue){case"ShadedWithEdges":viewHC.setDrawMode(eDwTypes_18.HC.DrawMode.WireframeOnShaded);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.WireframeOnShaded);break;case"Shaded":viewHC.setDrawMode(eDwTypes_18.HC.DrawMode.Shaded);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.Shaded);break;case"HiddenLinesRemoved":settingsHC.setObscuredLineOpacity(0);viewHC.setDrawMode(eDwTypes_18.HC.DrawMode.HiddenLine);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.HiddenLine);break;case"HiddenLinesVisible":settingsHC.setObscuredLineOpacity(.5);viewHC.setDrawMode(eDwTypes_18.HC.DrawMode.HiddenLine);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.HiddenLine);break;case"Wireframe":settingsHC.setObscuredLineOpacity(1);viewHC.setDrawMode(eDwTypes_18.HC.DrawMode.HiddenLine);this.SelectionMgr.setColorForViewMode(eDwTypes_18.HC.DrawMode.HiddenLine);break;default:throw new Error("Unknown draw mode: "+iValue)}(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.mDrawMode=iValue;return[4,eDwEventMgr.get().fireEvent(eDwEvents_10.DrawModeChangeEvent,this,iValue)];case 1:_a.sent();return[2]}}))}))})()};eDwView.prototype.getPerspectiveMode=function(){return this.getHCView().getProjectionMode()===eDwTypes_18.HC.Projection.Perspective};eDwView.prototype.setPerspectiveMode=function(iValue){var _this=this;if(!iValue){this.getHCView().setProjectionMode(eDwTypes_18.HC.Projection.Orthographic)}else{this.getHCView().setProjectionMode(eDwTypes_18.HC.Projection.Perspective)}(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_10.ProjModeChangeEvent,this,iValue)];case 1:_a.sent();return[2]}}))}))})();return iValue};eDwView.prototype.resetDrawMode=function(){this.setDrawMode(this.ViewerFeatureOpts.RenderType||"ShadedWithEdges")};eDwView.prototype.initializeManagers=function(){new eDwSelMgr(this);new eDwXSectionMgr(this);new eDwViewMgr(this);new eDwTouchOpsMgr(this)};eDwView.prototype.drawDebugBoundingBox=function(iBBox){return __awaiter(this,void 0,void 0,(function(){var modelHC,beautifulGreen,vmin,vmax,p0,p1,p2,p3,p4,p5,p6,p7,polylineData0,polylineData1,polylineData2,polylineData3,rgba,i,tmp,boxMesh,key,meshInstance;return __generator(this,(function(_a){switch(_a.label){case 0:modelHC=this.getModel().getHCModel();beautifulGreen=new eDwTypes_18.HC.Color(0,255,0);vmin=iBBox.min;vmax=iBBox.max;p0=new eDwTypes_18.HC.Point3(vmin.x,vmin.y,vmax.z);p1=new eDwTypes_18.HC.Point3(vmin.x,vmax.y,vmax.z);p2=new eDwTypes_18.HC.Point3(vmax.x,vmax.y,vmax.z);p3=new eDwTypes_18.HC.Point3(vmax.x,vmin.y,vmax.z);p4=new eDwTypes_18.HC.Point3(vmin.x,vmin.y,vmin.z);p5=new eDwTypes_18.HC.Point3(vmin.x,vmax.y,vmin.z);p6=new eDwTypes_18.HC.Point3(vmax.x,vmax.y,vmin.z);p7=new eDwTypes_18.HC.Point3(vmax.x,vmin.y,vmin.z);polylineData0=[p0.x,p0.y,p0.z,p1.x,p1.y,p1.z,p2.x,p2.y,p2.z,p3.x,p3.y,p3.z,p0.x,p0.y,p0.z];polylineData1=[p4.x,p4.y,p4.z,p5.x,p5.y,p5.z,p6.x,p6.y,p6.z,p7.x,p7.y,p7.z,p4.x,p4.y,p4.z];polylineData2=[p4.x,p4.y,p4.z,p0.x,p0.y,p0.z,p1.x,p1.y,p1.z,p5.x,p5.y,p5.z,p4.x,p4.y,p4.z];polylineData3=[p7.x,p7.y,p7.z,p3.x,p3.y,p3.z,p2.x,p2.y,p2.z,p6.x,p6.y,p6.z,p7.x,p7.y,p7.z];rgba=[];for(i=0;i<5;i++){tmp=[beautifulGreen.r,beautifulGreen.g,beautifulGreen.b,255];rgba=rgba.concat(tmp)}boxMesh=new eDwTypes_18.HC.MeshData;boxMesh.addPolyline(polylineData0,rgba);boxMesh.addPolyline(polylineData1,rgba);boxMesh.addPolyline(polylineData2,rgba);boxMesh.addPolyline(polylineData3,rgba);return[4,modelHC.createMesh(boxMesh)];case 1:key=_a.sent();meshInstance=new eDwTypes_18.HC.MeshInstanceData(key);return[2,modelHC.createMeshInstance(meshInstance)]}}))}))};eDwView.prototype.finishInit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_10.InitEvent,this)];case 1:_a.sent();this.HCViewer.sheetManager.setBackgroundSheetEnabled(false);eDwHistoryMgr.get().clear();return[2]}}))}))};return eDwView}();function l_closeHCConnection(iViewer){if(!iViewer)return;var viewHC=iViewer.getHCView();viewHC.setCamera(viewHC.getCamera());console.debugLog("Viewer","Closing viewer connection...");iViewer.HCViewer.closeConnection()}return eDwView}));define("eDwViewMgr",["require","exports","eDwEventMgr","eDwSelObj","eDwEvents","eDwTypes"],(function(require,exports,eDwEventMgr,eDwSelObj,eDwEvents_11,eDwTypes_19){"use strict";var eDwViewMgr=function(){function eDwViewMgr(iViewer){if(!iViewer)throw new Error("Must have viewer object");iViewer.ViewMgr=this;this.mViewAnimationIndex=0;this.mViewAnimationActive=false;this.mAnimationTimeOutID=-1;this.mViewer=iViewer}eDwViewMgr.prototype.start=function(){var _this=this;if(this.mViewer.getModel().isDrawing())return;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_11.StartAnimationEvent,this.mViewer)];case 1:_a.sent();return[2]}}))}))})();this.mViewAnimationActive=true;this.animateNextView()};eDwViewMgr.prototype.stop=function(){var _this=this;this.mViewAnimationActive=false;if(this.mAnimationTimeOutID>-1){window.clearTimeout(this.mAnimationTimeOutID);this.mAnimationTimeOutID=-1}(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_11.StopAnimationEvent,this.mViewer)];case 1:_a.sent();return[2]}}))}))})()};eDwViewMgr.prototype.reset=function(){this.stop();this.mViewAnimationIndex=0};eDwViewMgr.prototype.isActive=function(){return this.mViewAnimationActive};eDwViewMgr.prototype.setViewOrientation=function(iEyeDirHC,iDuration){var _this=this;if(iDuration===void 0){iDuration=400}var centerHC=this.mViewer.getModel().getBoundingBox().center();var viewHC=this.mViewer.getHCView();var cameraHC=viewHC.getCamera().copy();var upVecHC=cameraHC.getUp();var eyeVecHC=cameraHC.getTarget().subtract(cameraHC.getPosition());var dist=eyeVecHC.length();switch(iEyeDirHC){case eDwTypes_19.HC.ViewOrientation.Front:eyeVecHC.set(0,0,1).scale(dist);upVecHC.set(0,1,0);break;case eDwTypes_19.HC.ViewOrientation.Back:eyeVecHC.set(0,0,-1).scale(dist);upVecHC.set(0,1,0);break;case eDwTypes_19.HC.ViewOrientation.Left:eyeVecHC.set(-1,0,0).scale(dist);upVecHC.set(0,1,0);break;case eDwTypes_19.HC.ViewOrientation.Right:eyeVecHC.set(1,0,0).scale(dist);upVecHC.set(0,1,0);break;case eDwTypes_19.HC.ViewOrientation.Top:eyeVecHC.set(0,1,0).scale(dist);upVecHC.set(0,0,-1);break;case eDwTypes_19.HC.ViewOrientation.Bottom:eyeVecHC.set(0,-1,0).scale(dist);upVecHC.set(0,0,1);break;case eDwTypes_19.HC.ViewOrientation.Iso:eyeVecHC.set(1,1,1).normalize().scale(dist);upVecHC.set(-.408204,.816541,-.408204);break;default:throw new Error("Unsupported orientation: "+iEyeDirHC)}this.adjustOrientation(eyeVecHC,upVecHC);cameraHC.setPosition(eyeVecHC.add(centerHC));cameraHC.setUp(upVecHC);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,viewHC.fitWorld(iDuration,cameraHC)];case 1:_a.sent();return[2]}}))}))})();return cameraHC};eDwViewMgr.prototype.setViewOrientationToDirection=function(normal){var camera=this.mViewer.getHCView().getCamera();var position=camera.getPosition();var target=camera.getTarget();var up=camera.getUp();var delta=target.subtract(position);var distance=delta.length();var bbox=this.mViewer.getModel().getBoundingBox();var bbox_min=bbox.min;var bbox_max=bbox.max;target=eDwTypes_19.HC.Point3.add(bbox_max,bbox_min).scale(.5);var eyeVec=eDwTypes_19.HC.Point3.scale(normal,distance);position=eDwTypes_19.HC.Point3.add(target,eyeVec);var vTest=new eDwTypes_19.HC.Point3(1,0,0);var isParallel=eDwTypes_19.HC.Point3.dot(vTest,normal);if(Math.abs(Math.abs(isParallel)-1)<.001){vTest.set(0,1,0);var vec=eDwTypes_19.HC.Point3.cross(normal,vTest);vec=vec.normalize();up=eDwTypes_19.HC.Point3.cross(vec,normal);up=up.normalize()}else{up=eDwTypes_19.HC.Point3.cross(normal,vTest);up=up.normalize()}var dotProd=eDwTypes_19.HC.Point3.dot(up,new eDwTypes_19.HC.Point3(1,0,0));if(Math.abs(Math.abs(dotProd)-1)<.001&&dotProd<0){up=up.negate()}dotProd=eDwTypes_19.HC.Point3.dot(up,new eDwTypes_19.HC.Point3(0,1,0));if(Math.abs(Math.abs(dotProd)-1)<.001&&dotProd<0){up=up.negate()}dotProd=eDwTypes_19.HC.Point3.dot(up,new eDwTypes_19.HC.Point3(0,0,1));if(Math.abs(Math.abs(dotProd)-1)<.001&&dotProd<0){up=up.negate()}camera.setPosition(position);camera.setTarget(target);camera.setUp(up);this.setCamera(camera,500);return camera};eDwViewMgr.prototype.setCamera=function(iCameraHC,iTimeInMS){if(iTimeInMS===void 0){iTimeInMS=400}if(!iCameraHC)return false;var cameraHC=iCameraHC.copy();cameraHC.setProjection(this.mViewer.getHCView().getCamera().getProjection());return this.mViewer.getHCView().setCamera(cameraHC,iTimeInMS)};eDwViewMgr.prototype.enableAmbientOcclusion=function(iEnable){var _this=this;this.mViewer.getHCView().setAmbientOcclusionEnabled(iEnable);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,eDwEventMgr.get().fireEvent(eDwEvents_11.AmbientOcclChangeEvent,this,iEnable)];case 1:_a.sent();return[2]}}))}))})()};eDwViewMgr.prototype.fitScreenToNodes=function(iNodeIDsHC,ioCamera){return __awaiter(this,void 0,void 0,(function(){var model,bboxHC,subtract,viewVec,centerHC,add,ratio,boxMaxLen;return __generator(this,(function(_a){switch(_a.label){case 0:if(!ioCamera)return[2];model=this.mViewer.getModel();return[4,model.getBoundingBoxOfIDsHC(iNodeIDsHC)];case 1:bboxHC=_a.sent();if(bboxHC.isDegenerate())return[2];subtract=eDwTypes_19.HC.Point3.subtract;viewVec=subtract(ioCamera.getPosition(),ioCamera.getTarget());centerHC=bboxHC.center().copy();ioCamera.setTarget(centerHC);add=eDwTypes_19.HC.Point3.add;ioCamera.setPosition(add(centerHC,viewVec));ratio=ioCamera.getWidth()/ioCamera.getHeight();if(this.mViewer.getModel().isDrawing()){bboxHC.min.z=bboxHC.max.z=0}boxMaxLen=bboxHC.extents().length();ioCamera.setHeight(boxMaxLen);ioCamera.setWidth(boxMaxLen*ratio);this.setCamera(ioCamera,400);return[2]}}))}))};eDwViewMgr.prototype.pickFromPoint=function(iPnt2DHC,iPickConfig){return __awaiter(this,void 0,void 0,(function(){var selObjHC,toLocalTransformHC,viewHC,iExcp_17;return __generator(this,(function(_a){switch(_a.label){case 0:selObjHC=eDwTypes_19.HC.Selection.SelectionItem.create();toLocalTransformHC=new eDwTypes_19.HC.Matrix;_a.label=1;case 1:_a.trys.push([1,3,,4]);viewHC=this.mViewer.getHCView();return[4,viewHC.pickFromPoint(iPnt2DHC,iPickConfig)];case 2:selObjHC=_a.sent();console.debugLog("eDwViewMgr","eDwViewMgr.pickFromPoint() - "+selObjHC.getNodeId()+" - "+JSON.stringify(iPnt2DHC));console.assert(!isNaN(toLocalTransformHC.m[0]),"Not number before");toLocalTransformHC=eDwSelObj.getLocalTransform(selObjHC,this.mViewer.getModel());console.assert(!isNaN(toLocalTransformHC.m[0]),"Not number after");return[3,4];case 3:iExcp_17=_a.sent();console.debugLog("eDwViewMgr","eDwViewMgr.pickFromPoint() failed - "+iExcp_17.message);return[3,4];case 4:console.assert(!isNaN(toLocalTransformHC.m[0]),"Not number after 2");return[2,new eDwSelObj(selObjHC,toLocalTransformHC)]}}))}))};eDwViewMgr.prototype.onCameraUpdate=function(){this.mViewAnimationIndex+=1;if(this.mViewAnimationIndex>=eDwViewMgr.viewAnimations.length){this.mViewAnimationIndex=0;this.mViewAnimationActive=false;this.stop()}if(this.mViewAnimationActive){this.animateNextView()}};eDwViewMgr.prototype.animateNextView=function(){var _this=this;if(this.mViewAnimationActive){this.setViewOrientation(eDwViewMgr.viewAnimations[this.mViewAnimationIndex],2e3);this.mAnimationTimeOutID=window.setTimeout((function(){_this.onCameraUpdate()}),2e3)}};eDwViewMgr.prototype.adjustOrientation=function(ioEveVecHC,ioUpVecHC){if(this.mViewer.getModel().getProperty("zUp")==="true"){cCamZUpMat.transform(ioEveVecHC,ioEveVecHC);cCamZUpMat.transform(ioUpVecHC,ioUpVecHC)}};eDwViewMgr.viewAnimations=[eDwTypes_19.HC.ViewOrientation.Front,eDwTypes_19.HC.ViewOrientation.Back,eDwTypes_19.HC.ViewOrientation.Left,eDwTypes_19.HC.ViewOrientation.Right,eDwTypes_19.HC.ViewOrientation.Bottom,eDwTypes_19.HC.ViewOrientation.Top,eDwTypes_19.HC.ViewOrientation.Iso];return eDwViewMgr}();var cCamZUpMat=eDwTypes_19.HC.Matrix.createFromArray([0,1,0,0,0,0,1,0,1,0,0,0,0,0,0,1]);return eDwViewMgr}));define("eDwXSectionMgr",["require","exports","eDwXSectionOperator","eDwGeomUtils","eDwTypes","eDwTypes"],(function(require,exports,eDwXSectionOperator,eDwGeomUtils,eDwTypes_20,eDwTypes_21){"use strict";var eDwXSectionMgr=function(){function eDwXSectionMgr(iViewer){iViewer.XSectionMgr=this;this.mViewer=iViewer;var xSectionOp=new eDwXSectionOperator(iViewer);this.mXSectionOpID=iViewer.OperatorMgr.registerCustomOperator(xSectionOp);this.HCXSectionMgr=iViewer.HCViewer.cuttingManager;this.SectionCapVisibility=false;this.mXSectionIndex=eDwTypes_20.SectionPlaneOrientation.XY.Index;this.mSectionVisibility=true;this.mSectionsVisibilityState=[false,false,false]}eDwXSectionMgr.prototype.unregister=function(){this.mViewer.OperatorMgr.unregisterCustomOperatorByID(this.mXSectionOpID);this.mViewer.XSectionMgr=null};eDwXSectionMgr.prototype.turnOnSectionPlane=function(iOn){var _this=this;if(this.getXSectionHC()){if(iOn){(function(){return __awaiter(_this,void 0,void 0,(function(){var ret;return __generator(this,(function(_a){switch(_a.label){case 0:ret=this.mViewer.OperatorMgr.push(this.mXSectionOpID);console.debugLog("Section","Section plane operator push ret = "+ret);return[4,this.HCXSectionMgr.setCappingGeometryVisibility(true)];case 1:_a.sent();return[2]}}))}))})()}else{var opID=this.mViewer.OperatorMgr.pop();console.debugLog("Section","Popped op ID = "+opID+" xSection op ID = "+this.mXSectionOpID)}}};eDwXSectionMgr.prototype.activateCurrent=function(){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.getXSectionHC().activate()];case 1:_a.sent();return[4,this.setToCurrentSectionPlane()];case 2:_a.sent();if(!!this.mSectionVisibility)return[3,4];return[4,this.updateSectionVisibility(false)];case 3:_a.sent();_a.label=4;case 4:return[2]}}))}))})()};eDwXSectionMgr.prototype.deactivateCurrent=function(){var _this=this;this.mSectionsVisibilityState=[false,false,false];(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.getXSectionHC().deactivate()];case 1:_a.sent();return[2]}}))}))})()};eDwXSectionMgr.prototype.isCurrentActive=function(){return this.getXSectionHC().isActive()};Object.defineProperty(eDwXSectionMgr.prototype,"SectionIndex",{get:function(){return this.mXSectionIndex},enumerable:false,configurable:true});eDwXSectionMgr.prototype.setSectionPlane=function(ioSection,iAllowActivation){if(iAllowActivation===void 0){iAllowActivation=true}return __awaiter(this,void 0,void 0,(function(){var bbox,bboxExtents,sectionHC,boxCenter,sectionPlane,minPlanePt,maxPlanePt,vec,centerPt,dir,mirrorPlaneNormal,mirrorPlane,maxOnPlnPt,minOnPlnPt,mirrorPlaneDist,distDir,revDistDir,pts;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.mViewer.getModel().calculateBoundingBox()];case 1:bbox=_a.sent();bboxExtents=bbox.extents();if(!ioSection||bboxExtents.equals(eDwTypes_21.HC.Point3.zero()))return[2];sectionHC=this.getXSectionHC();if(!(ioSection.Index!==this.mXSectionIndex))return[3,6];if(!sectionHC)return[3,5];if(!sectionHC.isActive())return[3,3];return[4,sectionHC.deactivate()];case 2:_a.sent();_a.label=3;case 3:return[4,this.HCXSectionMgr.refreshPlaneGeometry()];case 4:_a.sent();_a.label=5;case 5:this.mXSectionIndex=ioSection.Index;sectionHC=this.getXSectionHC();_a.label=6;case 6:boxCenter=bbox.center();if(!(sectionHC.getCount()<1))return[3,9];sectionPlane=ioSection.Plane.copy();sectionPlane.d=-sectionPlane.distanceToPoint(boxCenter);minPlanePt=eDwGeomUtils.dropPointOnPlane(bbox.min,sectionPlane);maxPlanePt=eDwGeomUtils.dropPointOnPlane(bbox.max,sectionPlane);vec=maxPlanePt.copy().subtract(minPlanePt);vec=vec.scale(.55);centerPt=eDwGeomUtils.dropPointOnPlane(boxCenter,sectionPlane);dir=sectionPlane.normal.copy();centerPt=centerPt.add(dir.scale(sectionPlane.d));mirrorPlaneNormal=eDwTypes_21.HC.Point3.zero();eDwTypes_21.HC.Util.oneVectorCross(sectionPlane.normal.copy(),mirrorPlaneNormal);mirrorPlane=eDwTypes_21.HC.Plane.createFromPointAndNormal(centerPt,mirrorPlaneNormal);maxOnPlnPt=eDwTypes_21.HC.Point3.add(centerPt,vec);minOnPlnPt=eDwTypes_21.HC.Point3.add(centerPt,vec.scale(-1));mirrorPlaneDist=mirrorPlane.distanceToPoint(maxOnPlnPt);distDir=mirrorPlaneNormal.copy().scale(2*mirrorPlaneDist);revDistDir=distDir.copy().scale(-1);pts=[];pts.push(minOnPlnPt);pts.push(eDwTypes_21.HC.Point3.add(maxOnPlnPt,revDistDir));pts.push(maxOnPlnPt);pts.push(eDwTypes_21.HC.Point3.add(minOnPlnPt,distDir));sectionHC=this.getXSectionHC();return[4,sectionHC.addPlane(sectionPlane,pts)];case 7:_a.sent();return[4,sectionHC.setColor(eDwTypes_21.HC.Color.createFromFloat(0,1,0))];case 8:_a.sent();_a.label=9;case 9:return[4,this.updateSectionVisibility(this.mSectionVisibility)];case 10:_a.sent();return[4,this.HCXSectionMgr.setStandinGeometryPickable(true)];case 11:_a.sent();return[2]}}))}))};eDwXSectionMgr.prototype.flipSectionPlane=function(){var _this=this;var sectionHC=this.getXSectionHC();if(!sectionHC)return;var sectionPlane=sectionHC.getPlane(0);if(!sectionPlane)return;sectionPlane.normal.negate();sectionPlane.d=-sectionPlane.d;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,sectionHC.updatePlane(0,sectionPlane)];case 1:_a.sent();return[2]}}))}))})()};eDwXSectionMgr.prototype.setViewToSectionPlane=function(){var sectionHC=this.getXSectionHC();if(!sectionHC)return null;var sectionPlane=sectionHC.getPlane(0);if(!sectionPlane)return null;return this.mViewer.ViewMgr.setViewOrientationToDirection(sectionPlane.normal.copy())};eDwXSectionMgr.prototype.moveCurrentAlongNormal=function(iDistVec){var _this=this;var camera=this.mViewer.getHCView().getCamera();var camPosition=camera.getPosition();var camTarget=camera.getTarget();var camUp=camera.getUp();var camZ=camTarget.subtract(camPosition);camZ=camZ.normalize();var camY=camUp.normalize();var camX=eDwTypes_21.HC.Point3.cross(camZ,camY);var realVec=camX.scale(iDistVec.x).add(camY.scale(iDistVec.y));realVec.add(camZ.scale(iDistVec.z));var sectionHC=this.getXSectionHC();var sectionPlaneHC=sectionHC.getPlane(0);var normal=sectionPlaneHC.normal.copy();normal=normal.normalize();var distance=eDwTypes_21.HC.Point3.dot(realVec,normal);if(Math.abs(distance)<1e-6)return;sectionPlaneHC.d-=distance;var lenVec=normal.scale(distance);var newPosMat=new eDwTypes_21.HC.Matrix;newPosMat=newPosMat.setTranslationComponent(lenVec.x,lenVec.y,lenVec.z);(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,sectionHC.updatePlane(0,sectionPlaneHC,newPosMat,true,false)];case 1:_a.sent();return[2]}}))}))})()};eDwXSectionMgr.prototype.disableSectionCapVisibility=function(iDisable){this.setSectionCapVisibility(iDisable?false:this.mEnableSectionCaps)};eDwXSectionMgr.prototype.projectPoint=function(iPnt){var sectionHC=this.getXSectionHC();var sectionPlaneHC=sectionHC.getPlane(0);return eDwGeomUtils.dropPointOnPlane(iPnt,sectionPlaneHC)};eDwXSectionMgr.prototype.getXSectionHC=function(){return this.HCXSectionMgr.getCuttingSection(this.mXSectionIndex)};eDwXSectionMgr.prototype.setSectionCapVisibility=function(iEnable){var _this=this;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.HCXSectionMgr.setCappingFaceColor(iEnable?cSectionCapFaceColor:null)];case 1:_a.sent();return[4,this.HCXSectionMgr.setCappingLineColor(iEnable?null:cSectionCapOutlineColor)];case 2:_a.sent();return[2]}}))}))})()};eDwXSectionMgr.prototype.updateSectionVisibility=function(iVisible){return __awaiter(this,void 0,void 0,(function(){var activePlaneX,isSectionVisible,iExcp_18;return __generator(this,(function(_a){switch(_a.label){case 0:activePlaneX=this.getXSectionHC();activePlaneX.setOpacity(iVisible?cSectionPlaneOpacity:0);isSectionVisible=this.mSectionsVisibilityState[this.mXSectionIndex];this.mSectionsVisibilityState[this.mXSectionIndex]=iVisible;if(!iVisible)return[3,7];if(!(activePlaneX.isActive()&&isSectionVisible))return[3,4];_a.label=1;case 1:_a.trys.push([1,3,,4]);return[4,activePlaneX.deactivate()];case 2:_a.sent();return[3,4];case 3:iExcp_18=_a.sent();return[3,4];case 4:return[4,this.HCXSectionMgr.refreshPlaneGeometry()];case 5:_a.sent();return[4,activePlaneX.activate()];case 6:_a.sent();_a.label=7;case 7:return[2]}}))}))};eDwXSectionMgr.prototype.setToCurrentSectionPlane=function(){return __awaiter(this,void 0,void 0,(function(){var orientation,orientations,_a,_b,_i,orientationName;return __generator(this,(function(_c){switch(_c.label){case 0:orientations=eDwTypes_20.SectionPlaneOrientation;_a=[];for(_b in orientations)_a.push(_b);_i=0;_c.label=1;case 1:if(!(_i<_a.length))return[3,4];orientationName=_a[_i];orientation=orientations[orientationName];if(!(orientation.Index===this.mXSectionIndex))return[3,3];return[4,this.setSectionPlane(orientation)];case 2:_c.sent();return[2];case 3:_i++;return[3,1];case 4:return[2]}}))}))};Object.defineProperty(eDwXSectionMgr.prototype,"SectionCapVisibility",{get:function(){return this.mEnableSectionCaps},set:function(iEnable){this.mEnableSectionCaps=iEnable;this.setSectionCapVisibility(iEnable)},enumerable:false,configurable:true});Object.defineProperty(eDwXSectionMgr.prototype,"SectionVisibility",{set:function(iVisible){var _this=this;this.mSectionVisibility=iVisible;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,this.updateSectionVisibility(this.mSectionVisibility)];case 1:_a.sent();return[2]}}))}))})()},enumerable:false,configurable:true});return eDwXSectionMgr}();var cSectionPlaneOpacity=.3;var cSectionCapFaceColor=new eDwTypes_21.HC.Color(128,128,128);var cSectionCapOutlineColor=new eDwTypes_21.HC.Color(255,0,0);return eDwXSectionMgr}));define("eDwXSectionOperator",["require","exports","eDwTypes","eDwOperatorBaseDeps","eDwCommandMgr","eDwMoveSectionPlaneCmd","utils"],(function(require,exports,eDwTypes_22,eDwOperatorBaseDeps_3,eDwCommandMgr,eDwMoveSectionPlaneCmd,utils){"use strict";var eDwXSectionOperator=function(_super){__extends(eDwXSectionOperator,_super);function eDwXSectionOperator(iViewer){return _super.call(this,iViewer)||this}eDwXSectionOperator.prototype.onActivate=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.onActivate.call(this)];case 1:_a.sent();this.Viewer.XSectionMgr.activateCurrent();return[2]}}))}))};eDwXSectionOperator.prototype.onDeactivate=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:this.Viewer.XSectionMgr.deactivateCurrent();return[4,_super.prototype.onDeactivate.call(this)];case 1:_a.sent();return[2]}}))}))};eDwXSectionOperator.prototype.onMouseDown=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var selObj,selObjNodeIDHC,sectionMgr,typeOfSel,objHC,sectionMgrHC;var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:if(!ioMouseEvent||!this.Viewer.XSectionMgr.isCurrentActive()){ioMouseEvent.setHandled(true);return[2]}return[4,eDwOperatorBaseDeps_3.eDwBaseOperator.getPickResult(ioMouseEvent,this.Viewer.ViewMgr)];case 1:selObj=_a.sent();selObjNodeIDHC=selObj.getIDHC();if(utils.isNaN(selObjNodeIDHC)||selObjNodeIDHC>=0){ioMouseEvent.setHandled(false);return[2]}return[4,_super.prototype.onMouseDown.call(this,ioMouseEvent)];case 2:_a.sent();sectionMgr=this.Viewer.XSectionMgr;sectionMgr.disableSectionCapVisibility(true);ioMouseEvent.setHandled(true);if(selObjNodeIDHC){typeOfSel=selObj.getSelectionType();objHC=typeOfSel===eDwTypes_22.HC.SelectionType.None?null:selObj;console.debugLog("Section","sel obj = "+JSON.stringify(objHC));sectionMgrHC=this.Viewer.XSectionMgr.HCXSectionMgr;if(sectionMgrHC.getCuttingSectionFromNodeId(selObjNodeIDHC)){this.mSectionDragPtHC=this.screenToWorld(ioMouseEvent.getPosition())||this.mSectionDragPtHC}}(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!this.mMoveSectionCmd)return[3,2];return[4,this.mMoveSectionCmd.cancel()];case 1:_a.sent();_a.label=2;case 2:this.mMoveSectionCmd=new eDwMoveSectionPlaneCmd(this.Viewer);return[2]}}))}))})();return[2]}}))}))};eDwXSectionOperator.prototype.onMouseMove=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var crossSectionMgr,pos2DHC,pnt3DHC,delta;return __generator(this,(function(_a){ioMouseEvent.setHandled(false);crossSectionMgr=this.Viewer.XSectionMgr;if(!crossSectionMgr.isCurrentActive()){return[2]}if(this.CurrInputInfo&&this.mSectionDragPtHC){pos2DHC=ioMouseEvent.getPosition();pnt3DHC=this.screenToWorld(pos2DHC);if(!pnt3DHC)return[2];delta=eDwTypes_22.HC.Point3.subtract(pnt3DHC,this.mSectionDragPtHC);this.Viewer.XSectionMgr.moveCurrentAlongNormal(delta);this.mSectionDragPtHC=pnt3DHC;ioMouseEvent.setHandled(true)}return[2]}))}))};eDwXSectionOperator.prototype.onMouseUp=function(ioMouseEvent){return __awaiter(this,void 0,void 0,(function(){var _this=this;return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.onMouseUp.call(this,ioMouseEvent)];case 1:_a.sent();this.Viewer.XSectionMgr.disableSectionCapVisibility(false);ioMouseEvent.setHandled(false);delete this.mSectionDragPtHC;(function(){return __awaiter(_this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:if(!this.mMoveSectionCmd)return[3,2];return[4,eDwCommandMgr.get().run(this.mMoveSectionCmd,"commit")];case 1:_a.sent();_a.label=2;case 2:delete this.mMoveSectionCmd;return[2]}}))}))})();return[2]}}))}))};eDwXSectionOperator.prototype.needsSelection=function(iEventType){return iEventType===eDwTypes_22.HC.EventType.MouseDown||iEventType===eDwTypes_22.HC.EventType.TouchStart};eDwXSectionOperator.prototype.screenToWorld=function(iPos2DHC){var viewHC=this.Viewer.getHCView();var normScrPos2DHC=viewHC.pointToWindowPosition(iPos2DHC);var inPnt3DHC=new eDwTypes_22.HC.Point3(normScrPos2DHC.x,normScrPos2DHC.y,0);var projMatHC=viewHC.getProjectionMatrix();projMatHC.m[15]=1;var invMatHC=eDwTypes_22.HC.Matrix.inverse(projMatHC);if(!invMatHC)return null;var tMatHC=invMatHC.transpose();var worldPnt3D=eDwTypes_22.HC.Point3.zero();var div=inPnt3DHC.x*tMatHC.m[3]+inPnt3DHC.y*tMatHC.m[7]+inPnt3DHC.z*tMatHC.m[11]+tMatHC.m[15];worldPnt3D.x=(inPnt3DHC.x*tMatHC.m[0]+inPnt3DHC.y*tMatHC.m[1]+inPnt3DHC.z*tMatHC.m[2]+tMatHC.m[3])/div;worldPnt3D.y=(inPnt3DHC.x*tMatHC.m[4]+inPnt3DHC.y*tMatHC.m[5]+inPnt3DHC.z*tMatHC.m[6]+tMatHC.m[7])/div;worldPnt3D.z=(inPnt3DHC.x*tMatHC.m[8]+inPnt3DHC.y*tMatHC.m[9]+inPnt3DHC.z*tMatHC.m[10]+tMatHC.m[11])/div;return worldPnt3D};return eDwXSectionOperator}(eDwOperatorBaseDeps_3.eDwBaseOperator);return eDwXSectionOperator}));define("eDwZoomToFitCmd",["require","exports","eDwSupportsHistoryCmd"],(function(require,exports,eDwSupportsHistoryCmd){"use strict";var eDwZoomToFitCmd=function(_super){__extends(eDwZoomToFitCmd,_super);function eDwZoomToFitCmd(iViewer,iNodeID,iCamera){var _this=_super.call(this,iViewer)||this;_this.mInitialCamera=iCamera.copy();_this.mFinalCamera=iCamera.copy();_this.mNodeIDHC=iNodeID;return _this}eDwZoomToFitCmd.prototype.undo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.undo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.ViewMgr.setCamera(this.mInitialCamera);return[2,true]}}))}))};eDwZoomToFitCmd.prototype.redo=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.redo.call(this)];case 1:if(!_a.sent())return[2,false];this.mViewer.ViewMgr.setCamera(this.mFinalCamera);return[2,true]}}))}))};eDwZoomToFitCmd.prototype.commit=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(_a){switch(_a.label){case 0:return[4,_super.prototype.commit.call(this)];case 1:_a.sent();return[4,this.mViewer.ViewMgr.fitScreenToNodes([this.mNodeIDHC],this.mFinalCamera)];case 2:_a.sent();return[2]}}))}))};Object.defineProperty(eDwZoomToFitCmd.prototype,"Aggregable",{get:function(){return true},enumerable:false,configurable:true});return eDwZoomToFitCmd}(eDwSupportsHistoryCmd);return eDwZoomToFitCmd}));requirejs.config({baseUrl:"./js/3rdParty",paths:{jquery:"jquery.min","jquery-ui":"jquery-ui.min","jquery.fullscreen":"jquery.fullscreen.min","jquery.iframe-transport":"jquery.iframe-transport","jquery.fileupload":"jquery.fileupload","solidworks.web":"solidworks.web"},map:{"jquery.fileupload":{"jquery-ui/ui/widget":"jquery-ui"}},shim:{eDrawingsBase:{deps:["jquery"]},"jquery-ui":{deps:["jquery"]},"jquery.fullscreen":{deps:["jquery"]},"jquery.iframe-transport":{deps:["jquery"]},"jquery-ajax-native":{deps:["jquery"]}}});requirejs(["eDrawingsWebViewer"],(function(eDwWebViewer){console.excludeDebugLogCategories=["UIEvents","BaseSelOp","Operator"];eDwWebViewer.start()}));define("utils",["require","exports"],(function(require,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.makeArray=exports.getFirstMatchedMethodObj=exports.formatString=exports.ReversibleStringEnum=exports.deepCopyArray=exports.getExtension=exports.isEqual=exports.isNumber=exports.isNaN=exports.appendToArray=exports.isOfType=exports.getObjectTypeName=exports.isInstanceOf=exports.populateMixinObjectFromClasses=exports.populateMixinObject=exports.MixinBase=exports.getUint8Array=exports.forAll=void 0;function forAll(iFunc,iDictionary){if(!iDictionary)return;Object.keys(iDictionary).forEach((function(iKeyString){var key=parseInt(iKeyString,10);iFunc(key,iDictionary[key])}))}exports.forAll=forAll;function getUint8Array(iBase64EncodedString){var binString=window.atob(iBase64EncodedString);var len=binString.length;var bytes=new Uint8Array(len);for(var i=0;i-1?true:false}return iInstance instanceof iConstructor?true:isMixinInstance()}exports.isInstanceOf=isInstanceOf;function getObjectTypeName(iObj){if(!iObj)return"";return iObj.constructor.toString().split(" ")[1].split("(")[0]}exports.getObjectTypeName=getObjectTypeName;function isOfType(iArg,iDiscriminator){var argType=typeof iArg;return iArg&&(argType==="object"||argType==="function")?iDiscriminator in iArg:false}exports.isOfType=isOfType;function appendToArray(iElemForArray,ioArray){if(!iElemForArray||!ioArray)return;if(iElemForArray instanceof Promise){ioArray.push(iElemForArray.catch((function(iExcp){return iExcp})))}else{ioArray.push(iElemForArray)}}exports.appendToArray=appendToArray;function isNaN(iInput){return!isNumber(iInput)}exports.isNaN=isNaN;var cOrigNaN=window.isNaN;window.isNaN=isNaN;function isNumber(iInput){return typeof iInput==="number"&&(iInput===0||!cOrigNaN(iInput))?true:false}exports.isNumber=isNumber;function isEqual(iFirstObj,iSecondObj,iStrict){if(iStrict===void 0){iStrict=false}if(iFirstObj===iSecondObj)return true;if(!iFirstObj||!iSecondObj)return false;if(typeof iFirstObj!==typeof iSecondObj)return false;var numKeys=Object.keys(iFirstObj).length;if(iStrict&&numKeys!==Object.keys(iSecondObj).length)return false;var matchKeys=0;for(var key in iFirstObj){if(iFirstObj[key]===iSecondObj[key])++matchKeys}return numKeys===matchKeys?true:false}exports.isEqual=isEqual;function getExtension(iString){if(!iString)return"";var pos=iString.lastIndexOf(".");return pos===-1?"":iString.substr(pos+1).toLowerCase()}exports.getExtension=getExtension;function deepCopyArray(iArray){return JSON.parse(JSON.stringify(iArray))}exports.deepCopyArray=deepCopyArray;var ReversibleStringEnum=function(){function ReversibleStringEnum(iReversibleMapData){this.mMapping=iReversibleMapData;this.mReverseMapping={};for(var key in iReversibleMapData){this.mReverseMapping[iReversibleMapData[key]]=key}}ReversibleStringEnum.prototype.getValue=function(iKey){var value=this.mMapping[iKey];return value?value:this.mReverseMapping[iKey]};return ReversibleStringEnum}();exports.ReversibleStringEnum=ReversibleStringEnum;function formatString(iFormat){var iArgs=[];for(var _i=1;_i-1?iKey:null}));return props.length?iObj[props[0]]:null}exports.getFirstMatchedMethodObj=getFirstMatchedMethodObj;function makeArray(iObj){return iObj?Object.keys(iObj).map((function(iKey){return iObj[iKey]})):[]}exports.makeArray=makeArray})); // Copyright 2018-2021 Dassault Systemes SolidWorks Corporation. All rights reserved. diff --git a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.jpg b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.jpg index 22b47e2..159c99f 100644 --- a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.jpg +++ b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.jpg @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:01805403e7e5383a0d640522842924be19386dda3a26f58be08a928981fae32d -size 127683 +oid sha256:08fbef0d8718e348b96150a282df597b73213e19a1759dcab7e7b033e85d4924 +size 129837 diff --git a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.json b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.json index 9f0fbb8..04e1cff 100644 --- a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.json +++ b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.json @@ -2,15 +2,6 @@ { "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60H-120W.SLDASM" }, - { - "File Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt" - }, - { - "File Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt" - }, - { - "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM" - }, { "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60D-120W.SLDPRT", "Total Bounding Box Length": "120", @@ -18,6 +9,15 @@ "Total Bounding Box Thickness": "50", "Total Bounding Box Volume": "360000" }, + { + "File Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt" + }, + { + "File Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt" + }, + { + "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM" + }, { "File Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT" }, diff --git a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.step b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.step index b4d0686..c28265e 100644 --- a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.step +++ b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.step @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a771630413f3b8c2760b9249102920842a296c6a4a8d873d9f8ec87e1a065013 -size 497137 +oid sha256:bffa846725b402828485b09dc436b5b582d12382de568259b65d2260e63c3ac4 +size 562976 diff --git a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.tree.json b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.tree.json index 002679d..354a07e 100644 --- a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.tree.json +++ b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.tree.json @@ -1,19 +1,39 @@ { "assembly": { "Components": [ + { + "Name": "SlideDual-20ID-60D-120W-2", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60D-120W.SLDPRT", + "IsSuppressed": true + }, + { + "Name": "Test-Body-1", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-40\\Test-Body.SLDPRT", + "IsSuppressed": true + }, + { + "Name": "SlideSingle-20ID-50D-50W-1", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideSingle-20ID-50D-50W.SLDPRT", + "IsSuppressed": true + }, { "Name": "Fasteners-M6-1", "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", "IsSuppressed": false }, { - "Name": "Fasteners-M6-1/hex nut jam_am-2", - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "Name": "Fasteners-M6-1/6355015-1", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", "IsSuppressed": true }, { - "Name": "Fasteners-M6-1/6355015-1", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", + "Name": "Fasteners-M6-1/formed hex screw_am-4", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "IsSuppressed": false + }, + { + "Name": "Fasteners-M6-1/hex nut jam_am-2", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", "IsSuppressed": true }, { @@ -32,18 +52,8 @@ "IsSuppressed": false }, { - "Name": "Fasteners-M6-1/formed hex screw_am-4", - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "IsSuppressed": false - }, - { - "Name": "SlideDual-20ID-60D-120W-1", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60D-120W.SLDPRT", - "IsSuppressed": false - }, - { - "Name": "Test-Body-1", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-40\\Test-Body.SLDPRT", + "Name": "Stock-120-60-1", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-40\\Stock-120-60.SLDPRT", "IsSuppressed": true }, { @@ -57,19 +67,14 @@ "IsSuppressed": false }, { - "Name": "SlideSingle-20ID-50D-50W-1", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideSingle-20ID-50D-50W.SLDPRT", - "IsSuppressed": true - }, - { - "Name": "Stock-120-60-1", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-40\\Stock-120-60.SLDPRT", - "IsSuppressed": true - }, - { - "Name": "SlideDual-20ID-60D-120W-2", + "Name": "SlideDual-20ID-60D-120W-1", "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60D-120W.SLDPRT", - "IsSuppressed": true + "IsSuppressed": false + }, + { + "Name": "20-60-120_Shield_x2_1mm_INOX-2", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_Shield_x2_1mm_INOX.SLDPRT", + "IsSuppressed": false }, { "Name": "20-60-120_WasherM6_x4_1mm_INOX-4", @@ -77,8 +82,48 @@ "IsSuppressed": false }, { - "Name": "20-60-120_Shield_x2_1mm_INOX-2", - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_Shield_x2_1mm_INOX.SLDPRT", + "Name": "20-60-120_WasherM6_x4_1mm_INOX-5", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT", + "IsSuppressed": false + }, + { + "Name": "Fasteners-M6-2", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "IsSuppressed": false + }, + { + "Name": "Fasteners-M6-2/6355015-1", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", + "IsSuppressed": true + }, + { + "Name": "Fasteners-M6-2/formed hex screw_am-4", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "IsSuppressed": false + }, + { + "Name": "Fasteners-M6-2/hex nut jam_am-2", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "IsSuppressed": true + }, + { + "Name": "Fasteners-M6-2/formed hex screw_am-3", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "IsSuppressed": false + }, + { + "Name": "Fasteners-M6-2/formed hex screw_am-2", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "IsSuppressed": true + }, + { + "Name": "Fasteners-M6-2/hex nut jam_am-1", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "IsSuppressed": false + }, + { + "Name": "20-60-120_WasherM6_x4_1mm_INOX-6", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT", "IsSuppressed": false } ] @@ -86,13 +131,58 @@ "root": { "Name": "SlideDual-20ID-60H-120W", "Children": [ + { + "Name": "SlideDual-20ID-60D-120W-2", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60D-120W.SLDPRT", + "Parent": null, + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "Test-Body-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-40\\Test-Body.SLDPRT", + "Parent": null, + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "SlideSingle-20ID-50D-50W-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideSingle-20ID-50D-50W.SLDPRT", + "Parent": null, + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, { "Name": "Fasteners-M6-1", "Children": [ { - "Name": "Fasteners-M6-1/hex nut jam_am-2", + "Name": "Fasteners-M6-1/6355015-1", "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", "Properties": null, "Equations": null, @@ -105,9 +195,73 @@ "activeConfiguration": null }, { - "Name": "Fasteners-M6-1/6355015-1", + "Name": "Fasteners-M6-1/formed hex screw_am-4", "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, + "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, + "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, + "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} + }, + "Equations": { + "D3@Sketch1": 15.0, + "D4@Sketch1": 15.0, + "D5@Sketch1": 15.0, + "Thread_minor@ThreadCosmetic": 17.252, + "D1@Sketch3": 15.0, + "D1@Sketch5": 15.0, + "Head_ch_ang@Sketch5": 30.000000000000206, + "D1@Sketch4": 30.0, + "D1@Sketch6": 26.25, + "D1@Indent": 1.61, + "Thread_length@ThreadCosmetic": 27.5, + "Thread_minor@ThdSchSke": 17.252, + "Diameter@ThdSchSke": 20.0, + "Overcut@ThdSchSke": 25.0, + "Start@ThdSchSke": 15.380000000000003, + "Num_threads@ThdSchPat": 10.0, + "Advance@ThdSchPat": 2.75 + }, + "Mass": { + "Mass": 0.018448476549526794, + "Density": 1000.0000000000001, + "Volume": 1.8448476549526793E-05, + "SurfaceArea": 0.004817801875137061, + "CenterOfMassX": 0.01753955213482699, + "CenterOfMassY": -9.082730693577929E-06, + "CenterOfMassZ": -1.5685995711674484E-06 + }, + "Box": { + "MinX": 0.04699999999999998, + "MinY": 0.011726497308103717, + "MinZ": -0.03515, + "MaxX": 0.05699999999999999, + "MaxY": 0.02327350269189625, + "MaxZ": -0.0010000000000000009 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "Fasteners-M6-1/hex nut jam_am-2", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", "Properties": null, "Equations": null, @@ -163,14 +317,14 @@ "Volume": 1.8448476549526793E-05, "SurfaceArea": 0.004817801875137061, "CenterOfMassX": 0.01753955213482699, - "CenterOfMassY": -9.082730693577805E-06, - "CenterOfMassZ": -1.5685995711674806E-06 + "CenterOfMassY": -9.082730693577929E-06, + "CenterOfMassZ": -1.5685995711674484E-06 }, "Box": { - "MinX": 0.04499999999999999, + "MinX": 0.04699999999999999, "MinY": -0.023273502691896278, "MinZ": -0.03515, - "MaxX": 0.055, + "MaxX": 0.057, "MaxY": -0.011726497308103745, "MaxZ": -0.0010000000000000009 }, @@ -229,81 +383,17 @@ "Density": 1000.0, "Volume": 2.0897265062795267E-07, "SurfaceArea": 0.0002798294711277528, - "CenterOfMassX": 4.756402695686069E-19, - "CenterOfMassY": 2.5991347687597434E-09, + "CenterOfMassX": 4.770898496294167E-19, + "CenterOfMassY": 2.599134768891172E-09, "CenterOfMassZ": -0.0015985116157014817 }, "Box": { - "MinX": 0.045, + "MinX": 0.047, "MinY": -0.023273502691896295, - "MinZ": -0.0010000000000000044, - "MaxX": 0.05500000000000001, + "MinZ": -0.0010000000000000009, + "MaxX": 0.05700000000000001, "MaxY": -0.011726497308103736, - "MaxZ": 0.002200000000000004 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "Fasteners-M6-1/formed hex screw_am-4", - "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", - "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", - "Properties": { - "Default": {}, - "PreviewCfg": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, - "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, - "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, - "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, - "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, - "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} - }, - "Equations": { - "D3@Sketch1": 15.0, - "D4@Sketch1": 15.0, - "D5@Sketch1": 15.0, - "Thread_minor@ThreadCosmetic": 17.252, - "D1@Sketch3": 15.0, - "D1@Sketch5": 15.0, - "Head_ch_ang@Sketch5": 30.000000000000206, - "D1@Sketch4": 30.0, - "D1@Sketch6": 26.25, - "D1@Indent": 1.61, - "Thread_length@ThreadCosmetic": 27.5, - "Thread_minor@ThdSchSke": 17.252, - "Diameter@ThdSchSke": 20.0, - "Overcut@ThdSchSke": 25.0, - "Start@ThdSchSke": 15.380000000000003, - "Num_threads@ThdSchPat": 10.0, - "Advance@ThdSchPat": 2.75 - }, - "Mass": { - "Mass": 0.018448476549526794, - "Density": 1000.0000000000001, - "Volume": 1.8448476549526793E-05, - "SurfaceArea": 0.004817801875137061, - "CenterOfMassX": 0.01753955213482699, - "CenterOfMassY": -9.082730693577805E-06, - "CenterOfMassZ": -1.5685995711674806E-06 - }, - "Box": { - "MinX": 0.04499999999999998, - "MinY": 0.011726497308103717, - "MinZ": -0.03515, - "MaxX": 0.054999999999999986, - "MaxY": 0.02327350269189625, - "MaxZ": -0.0010000000000000009 + "MaxZ": 0.0022000000000000075 }, "Material": { "Material": "", @@ -327,22 +417,22 @@ "Density": 999.9999999999999, "Volume": 2.5461744133614477E-06, "SurfaceArea": 0.0020488644054426257, - "CenterOfMassX": 8.137746759176217E-07, + "CenterOfMassX": 8.137746759176258E-07, "CenterOfMassY": 0.07189057205001372, "CenterOfMassZ": -0.032870327436121255 }, "Box": { - "MinX": 0.044999999999999984, + "MinX": 0.046999999999999986, "MinY": -0.023273502691896306, - "MinZ": -0.03515, - "MaxX": 0.05500000000000001, + "MinZ": -0.035149999999999994, + "MaxX": 0.05700000000000001, "MaxY": 0.02327350269189625, - "MaxZ": 0.002200000000000004 + "MaxZ": 0.0022000000000000075 }, "Material": { + "formed hex screw_am-4": "", "formed hex screw_am-3": "", - "hex nut jam_am-1": "", - "formed hex screw_am-4": "" + "hex nut jam_am-1": "" }, "States": {}, "LaserParts": null, @@ -350,9 +440,9 @@ "activeConfiguration": null }, { - "Name": "Fasteners-M6-1/hex nut jam_am-2", + "Name": "Fasteners-M6-1/6355015-1", "Children": null, - "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", "Parent": null, "Properties": null, "Equations": null, @@ -365,9 +455,73 @@ "activeConfiguration": null }, { - "Name": "Fasteners-M6-1/6355015-1", + "Name": "Fasteners-M6-1/formed hex screw_am-4", "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": null, + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, + "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, + "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, + "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} + }, + "Equations": { + "D3@Sketch1": 15.0, + "D4@Sketch1": 15.0, + "D5@Sketch1": 15.0, + "Thread_minor@ThreadCosmetic": 17.252, + "D1@Sketch3": 15.0, + "D1@Sketch5": 15.0, + "Head_ch_ang@Sketch5": 30.000000000000206, + "D1@Sketch4": 30.0, + "D1@Sketch6": 26.25, + "D1@Indent": 1.61, + "Thread_length@ThreadCosmetic": 27.5, + "Thread_minor@ThdSchSke": 17.252, + "Diameter@ThdSchSke": 20.0, + "Overcut@ThdSchSke": 25.0, + "Start@ThdSchSke": 15.380000000000003, + "Num_threads@ThdSchPat": 10.0, + "Advance@ThdSchPat": 2.75 + }, + "Mass": { + "Mass": 0.018448476549526794, + "Density": 1000.0000000000001, + "Volume": 1.8448476549526793E-05, + "SurfaceArea": 0.004817801875137061, + "CenterOfMassX": 0.01753955213482699, + "CenterOfMassY": -9.082730693577929E-06, + "CenterOfMassZ": -1.5685995711674484E-06 + }, + "Box": { + "MinX": 0.04699999999999998, + "MinY": 0.011726497308103717, + "MinZ": -0.03515, + "MaxX": 0.05699999999999999, + "MaxY": 0.02327350269189625, + "MaxZ": -0.0010000000000000009 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "Fasteners-M6-1/hex nut jam_am-2", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", "Parent": null, "Properties": null, "Equations": null, @@ -423,14 +577,14 @@ "Volume": 1.8448476549526793E-05, "SurfaceArea": 0.004817801875137061, "CenterOfMassX": 0.01753955213482699, - "CenterOfMassY": -9.082730693577805E-06, - "CenterOfMassZ": -1.5685995711674806E-06 + "CenterOfMassY": -9.082730693577929E-06, + "CenterOfMassZ": -1.5685995711674484E-06 }, "Box": { - "MinX": 0.04499999999999999, + "MinX": 0.04699999999999999, "MinY": -0.023273502691896278, "MinZ": -0.03515, - "MaxX": 0.055, + "MaxX": 0.057, "MaxY": -0.011726497308103745, "MaxZ": -0.0010000000000000009 }, @@ -489,17 +643,17 @@ "Density": 1000.0, "Volume": 2.0897265062795267E-07, "SurfaceArea": 0.0002798294711277528, - "CenterOfMassX": 4.756402695686069E-19, - "CenterOfMassY": 2.5991347687597434E-09, + "CenterOfMassX": 4.770898496294167E-19, + "CenterOfMassY": 2.599134768891172E-09, "CenterOfMassZ": -0.0015985116157014817 }, "Box": { - "MinX": 0.045, + "MinX": 0.047, "MinY": -0.023273502691896295, - "MinZ": -0.0010000000000000044, - "MaxX": 0.05500000000000001, + "MinZ": -0.0010000000000000009, + "MaxX": 0.05700000000000001, "MaxY": -0.011726497308103736, - "MaxZ": 0.002200000000000004 + "MaxZ": 0.0022000000000000075 }, "Material": { "Material": "", @@ -511,7 +665,522 @@ "activeConfiguration": null }, { - "Name": "Fasteners-M6-1/formed hex screw_am-4", + "Name": "Stock-120-60-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-40\\Stock-120-60.SLDPRT", + "Parent": null, + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "20-60-120_WasherM6_x4_1mm_INOX-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT", + "Parent": null, + "Properties": { + "Default": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.0007406922613335518, + "Density": 1000.0, + "Volume": 7.406922613335519E-07, + "SurfaceArea": 0.0016499951383480782, + "CenterOfMassX": -2.2684327985596402E-19, + "CenterOfMassY": -3.8388862744855453E-19, + "CenterOfMassZ": 0.0005 + }, + "Box": { + "MinX": 0.044, + "MinY": -0.024999999999999897, + "MinZ": -0.031000000000000083, + "MaxX": 0.06, + "MaxY": 0.025000000000000112, + "MaxZ": -0.02999999999999991 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "20-60-120_Shield_x2_1mm_INOX-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_Shield_x2_1mm_INOX.SLDPRT", + "Parent": null, + "Properties": { + "Default": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.0061177896933247156, + "Density": 1000.0, + "Volume": 6.117789693324716E-06, + "SurfaceArea": 0.012984048379532454, + "CenterOfMassX": 2.3323563381246777E-18, + "CenterOfMassY": -8.254723947069704E-19, + "CenterOfMassZ": 0.0005 + }, + "Box": { + "MinX": -0.06, + "MinY": 0.024999999999999897, + "MinZ": -0.029999999999999912, + "MaxX": 0.06, + "MaxY": 0.026000000000000106, + "MaxZ": 0.030000000000000093 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "SlideDual-20ID-60D-120W-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60D-120W.SLDPRT", + "Parent": null, + "Properties": { + "SwivelClamp": {}, + "2xM8": { + "Total Bounding Box Length": "120", + "Total Bounding Box Width": "60", + "Total Bounding Box Thickness": "50", + "Total Bounding Box Volume": "360000" + }, + "CAM": { + "Total Bounding Box Length": "120", + "Total Bounding Box Width": "60", + "Total Bounding Box Thickness": "50", + "Total Bounding Box Volume": "360000" + } + }, + "Equations": {}, + "Mass": { + "Mass": 0.29389729863245917, + "Density": 1020.0, + "Volume": 0.00028813460650241096, + "SurfaceArea": 0.0482374907385394, + "CenterOfMassX": 1.7686152673516634E-05, + "CenterOfMassY": 1.1542124860126516E-05, + "CenterOfMassZ": 0.025094494956140044 + }, + "Box": { + "MinX": -0.06, + "MinY": -0.025000000000000105, + "MinZ": -0.030000000000000082, + "MaxX": 0.06, + "MaxY": 0.025000000000000105, + "MaxZ": 0.03000000000000009 + }, + "Material": { + "Material": "ABS", + "Materials": "SOLIDWORKS Materials" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "20-60-120_Shield_x2_1mm_INOX-2", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_Shield_x2_1mm_INOX.SLDPRT", + "Parent": null, + "Properties": { + "Default": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.0061177896933247156, + "Density": 1000.0, + "Volume": 6.117789693324716E-06, + "SurfaceArea": 0.012984048379532454, + "CenterOfMassX": 2.3323563381246777E-18, + "CenterOfMassY": -8.254723947069704E-19, + "CenterOfMassZ": 0.0005 + }, + "Box": { + "MinX": -0.06, + "MinY": -0.026000000000000106, + "MinZ": -0.030000000000000093, + "MaxX": 0.06, + "MaxY": -0.024999999999999897, + "MaxZ": 0.029999999999999912 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "20-60-120_WasherM6_x4_1mm_INOX-4", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT", + "Parent": null, + "Properties": { + "Default": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.0007406922613335518, + "Density": 1000.0, + "Volume": 7.406922613335519E-07, + "SurfaceArea": 0.0016499951383480782, + "CenterOfMassX": -2.2684327985596402E-19, + "CenterOfMassY": -3.8388862744855453E-19, + "CenterOfMassZ": 0.0005 + }, + "Box": { + "MinX": 0.044, + "MinY": -0.024999999999999897, + "MinZ": 0.02999999999999991, + "MaxX": 0.06, + "MaxY": 0.025000000000000112, + "MaxZ": 0.031000000000000083 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "20-60-120_WasherM6_x4_1mm_INOX-5", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT", + "Parent": null, + "Properties": { + "Default": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.0007406922613335518, + "Density": 1000.0, + "Volume": 7.406922613335519E-07, + "SurfaceArea": 0.0016499951383480782, + "CenterOfMassX": -2.2684327985596402E-19, + "CenterOfMassY": -3.8388862744855453E-19, + "CenterOfMassZ": 0.0005 + }, + "Box": { + "MinX": -0.06, + "MinY": -0.024999999999999897, + "MinZ": -0.031000000000000083, + "MaxX": -0.044, + "MaxY": 0.025000000000000112, + "MaxZ": -0.02999999999999991 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "Fasteners-M6-2", + "Children": [ + { + "Name": "Fasteners-M6-2/6355015-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "Fasteners-M6-2/formed hex screw_am-4", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, + "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, + "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, + "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} + }, + "Equations": { + "D3@Sketch1": 15.0, + "D4@Sketch1": 15.0, + "D5@Sketch1": 15.0, + "Thread_minor@ThreadCosmetic": 17.252, + "D1@Sketch3": 15.0, + "D1@Sketch5": 15.0, + "Head_ch_ang@Sketch5": 30.000000000000206, + "D1@Sketch4": 30.0, + "D1@Sketch6": 26.25, + "D1@Indent": 1.61, + "Thread_length@ThreadCosmetic": 27.5, + "Thread_minor@ThdSchSke": 17.252, + "Diameter@ThdSchSke": 20.0, + "Overcut@ThdSchSke": 25.0, + "Start@ThdSchSke": 15.380000000000003, + "Num_threads@ThdSchPat": 10.0, + "Advance@ThdSchPat": 2.75 + }, + "Mass": { + "Mass": 0.018448476549526794, + "Density": 1000.0000000000001, + "Volume": 1.8448476549526793E-05, + "SurfaceArea": 0.004817801875137061, + "CenterOfMassX": 0.01753955213482699, + "CenterOfMassY": -9.082730693577929E-06, + "CenterOfMassZ": -1.5685995711674484E-06 + }, + "Box": { + "MinX": -0.057000000000000016, + "MinY": 0.011726497308103717, + "MinZ": -0.03515, + "MaxX": -0.04700000000000001, + "MaxY": 0.02327350269189625, + "MaxZ": -0.0010000000000000009 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "Fasteners-M6-2/hex nut jam_am-2", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "Fasteners-M6-2/formed hex screw_am-3", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, + "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, + "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, + "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} + }, + "Equations": { + "D3@Sketch1": 15.0, + "D4@Sketch1": 15.0, + "D5@Sketch1": 15.0, + "Thread_minor@ThreadCosmetic": 17.252, + "D1@Sketch3": 15.0, + "D1@Sketch5": 15.0, + "Head_ch_ang@Sketch5": 30.000000000000206, + "D1@Sketch4": 30.0, + "D1@Sketch6": 26.25, + "D1@Indent": 1.61, + "Thread_length@ThreadCosmetic": 27.5, + "Thread_minor@ThdSchSke": 17.252, + "Diameter@ThdSchSke": 20.0, + "Overcut@ThdSchSke": 25.0, + "Start@ThdSchSke": 15.380000000000003, + "Num_threads@ThdSchPat": 10.0, + "Advance@ThdSchPat": 2.75 + }, + "Mass": { + "Mass": 0.018448476549526794, + "Density": 1000.0000000000001, + "Volume": 1.8448476549526793E-05, + "SurfaceArea": 0.004817801875137061, + "CenterOfMassX": 0.01753955213482699, + "CenterOfMassY": -9.082730693577929E-06, + "CenterOfMassZ": -1.5685995711674484E-06 + }, + "Box": { + "MinX": -0.057, + "MinY": -0.023273502691896278, + "MinZ": -0.03515, + "MaxX": -0.04699999999999999, + "MaxY": -0.011726497308103745, + "MaxZ": -0.0010000000000000009 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "Fasteners-M6-2/formed hex screw_am-2", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "Fasteners-M6-2/hex nut jam_am-1", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "Parent": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.4.5M - Hex jam nut, M6 x 1 --D-N": {} + }, + "Equations": { + "D2@BaseNutSke": 5.0, + "D3@BaseNutSke": 5.0, + "D1@Sketch3": 5.0, + "D1@Sketch4": 5.0, + "D4@BaseNutSke": 5.0, + "Thread_major@ThdSchSke": 6.0, + "Tap_Drill@ThdSchSke": 5.0, + "OverCut@ThdSchSke": 2.5, + "Num_threads@ThdSchPat": 0.0, + "Advance@ThdSchPat": 0.7873, + "ThreadMajor@Sketch5": 3.0, + "ChamferDepth@Sketch5": 0.5499999999999999, + "Offset1@Sketch5": 3.2254, + "Offset2@Sketch5": 3.2762000000000002 + }, + "Mass": { + "Mass": 0.00020897265062795267, + "Density": 1000.0, + "Volume": 2.0897265062795267E-07, + "SurfaceArea": 0.0002798294711277528, + "CenterOfMassX": 4.770898496294167E-19, + "CenterOfMassY": 2.599134768891172E-09, + "CenterOfMassZ": -0.0015985116157014817 + }, + "Box": { + "MinX": -0.056999999999999995, + "MinY": -0.023273502691896295, + "MinZ": -0.0010000000000000009, + "MaxX": -0.046999999999999986, + "MaxY": -0.011726497308103736, + "MaxZ": 0.0022000000000000075 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + } + ], + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\Fasteners-M6.SLDASM", + "Parent": null, + "Properties": { + "Swivel-M6": {}, + "2xM8": {} + }, + "Equations": {}, + "Mass": { + "Mass": 0.0025461744133614475, + "Density": 999.9999999999999, + "Volume": 2.5461744133614477E-06, + "SurfaceArea": 0.0020488644054426257, + "CenterOfMassX": 8.137746759176092E-07, + "CenterOfMassY": 0.07189057205001372, + "CenterOfMassZ": -0.032870327436121255 + }, + "Box": { + "MinX": -0.05700000000000001, + "MinY": -0.023273502691896306, + "MinZ": -0.035149999999999994, + "MaxX": -0.046999999999999986, + "MaxY": 0.02327350269189625, + "MaxZ": 0.0022000000000000075 + }, + "Material": { + "formed hex screw_am-4": "", + "formed hex screw_am-3": "", + "hex nut jam_am-1": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "Fasteners-M6-2/6355015-1", + "Children": null, + "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\components\\hardware\\clamps\\clamping_lever\\150318723-7-6355015\\6355015.SLDASM", + "Parent": null, + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "Fasteners-M6-2/formed hex screw_am-4", "Children": null, "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", "Parent": null, @@ -554,14 +1223,14 @@ "Volume": 1.8448476549526793E-05, "SurfaceArea": 0.004817801875137061, "CenterOfMassX": 0.01753955213482699, - "CenterOfMassY": -9.082730693577805E-06, - "CenterOfMassZ": -1.5685995711674806E-06 + "CenterOfMassY": -9.082730693577929E-06, + "CenterOfMassZ": -1.5685995711674484E-06 }, "Box": { - "MinX": 0.04499999999999998, + "MinX": -0.057000000000000016, "MinY": 0.011726497308103717, "MinZ": -0.03515, - "MaxX": 0.054999999999999986, + "MaxX": -0.04700000000000001, "MaxY": 0.02327350269189625, "MaxZ": -0.0010000000000000009 }, @@ -575,56 +1244,9 @@ "activeConfiguration": null }, { - "Name": "SlideDual-20ID-60D-120W-1", + "Name": "Fasteners-M6-2/hex nut jam_am-2", "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60D-120W.SLDPRT", - "Parent": null, - "Properties": { - "SwivelClamp": {}, - "2xM8": { - "Total Bounding Box Length": "120", - "Total Bounding Box Width": "60", - "Total Bounding Box Thickness": "50", - "Total Bounding Box Volume": "360000" - }, - "CAM": { - "Total Bounding Box Length": "120", - "Total Bounding Box Width": "60", - "Total Bounding Box Thickness": "50", - "Total Bounding Box Volume": "360000" - } - }, - "Equations": {}, - "Mass": { - "Mass": 0.2963952991602402, - "Density": 1019.9999999999999, - "Volume": 0.0002905836266276865, - "SurfaceArea": 0.04864147637411014, - "CenterOfMassX": -2.7327533807276333E-19, - "CenterOfMassY": 3.010008386983036E-18, - "CenterOfMassZ": 0.024999999999999703 - }, - "Box": { - "MinX": -0.06, - "MinY": -0.025000000000000105, - "MinZ": -0.030000000000000082, - "MaxX": 0.06, - "MaxY": 0.025000000000000105, - "MaxZ": 0.03000000000000009 - }, - "Material": { - "Material": "ABS", - "Materials": "SOLIDWORKS Materials" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "Test-Body-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-40\\Test-Body.SLDPRT", + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", "Parent": null, "Properties": null, "Equations": null, @@ -637,7 +1259,138 @@ "activeConfiguration": null }, { - "Name": "20-60-120_WasherM6_x4_1mm_INOX-1", + "Name": "Fasteners-M6-2/formed hex screw_am-3", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": null, + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 35 --35WN": {}, + "B18.2.3.2M - Formed hex screw, M12 x 1.75 x 120 --30WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 40 --26WN": {}, + "B18.2.3.2M - Formed hex screw, M10 x 1.5 x 14 --14WN": {}, + "B18.2.3.2M - Formed hex screw, M8 x 1.25 x 12 --12WN": {}, + "B18.2.3.2M - Formed hex screw, M14 x 2.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 16 --16WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 30 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M6 x 1.0 x 60 --18WN": {}, + "B18.2.3.2M - Formed hex screw, M20 x 2.5 x 30 --30WN": {} + }, + "Equations": { + "D3@Sketch1": 15.0, + "D4@Sketch1": 15.0, + "D5@Sketch1": 15.0, + "Thread_minor@ThreadCosmetic": 17.252, + "D1@Sketch3": 15.0, + "D1@Sketch5": 15.0, + "Head_ch_ang@Sketch5": 30.000000000000206, + "D1@Sketch4": 30.0, + "D1@Sketch6": 26.25, + "D1@Indent": 1.61, + "Thread_length@ThreadCosmetic": 27.5, + "Thread_minor@ThdSchSke": 17.252, + "Diameter@ThdSchSke": 20.0, + "Overcut@ThdSchSke": 25.0, + "Start@ThdSchSke": 15.380000000000003, + "Num_threads@ThdSchPat": 10.0, + "Advance@ThdSchPat": 2.75 + }, + "Mass": { + "Mass": 0.018448476549526794, + "Density": 1000.0000000000001, + "Volume": 1.8448476549526793E-05, + "SurfaceArea": 0.004817801875137061, + "CenterOfMassX": 0.01753955213482699, + "CenterOfMassY": -9.082730693577929E-06, + "CenterOfMassZ": -1.5685995711674484E-06 + }, + "Box": { + "MinX": -0.057, + "MinY": -0.023273502691896278, + "MinZ": -0.03515, + "MaxX": -0.04699999999999999, + "MaxY": -0.011726497308103745, + "MaxZ": -0.0010000000000000009 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "Fasteners-M6-2/formed hex screw_am-2", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\bolts and screws\\hex head\\formed hex screw_am.sldprt", + "Parent": null, + "Properties": null, + "Equations": null, + "Mass": null, + "Box": null, + "Material": null, + "States": null, + "LaserParts": null, + "IsSuppressed": true, + "activeConfiguration": null + }, + { + "Name": "Fasteners-M6-2/hex nut jam_am-1", + "Children": null, + "Path": "c:\\solidworks data (2)\\browser\\ansi metric\\nuts\\hex nuts\\hex nut jam_am.sldprt", + "Parent": null, + "Properties": { + "Default": {}, + "PreviewCfg": {}, + "B18.2.4.5M - Hex jam nut, M6 x 1 --D-N": {} + }, + "Equations": { + "D2@BaseNutSke": 5.0, + "D3@BaseNutSke": 5.0, + "D1@Sketch3": 5.0, + "D1@Sketch4": 5.0, + "D4@BaseNutSke": 5.0, + "Thread_major@ThdSchSke": 6.0, + "Tap_Drill@ThdSchSke": 5.0, + "OverCut@ThdSchSke": 2.5, + "Num_threads@ThdSchPat": 0.0, + "Advance@ThdSchPat": 0.7873, + "ThreadMajor@Sketch5": 3.0, + "ChamferDepth@Sketch5": 0.5499999999999999, + "Offset1@Sketch5": 3.2254, + "Offset2@Sketch5": 3.2762000000000002 + }, + "Mass": { + "Mass": 0.00020897265062795267, + "Density": 1000.0, + "Volume": 2.0897265062795267E-07, + "SurfaceArea": 0.0002798294711277528, + "CenterOfMassX": 4.770898496294167E-19, + "CenterOfMassY": 2.599134768891172E-09, + "CenterOfMassZ": -0.0015985116157014817 + }, + "Box": { + "MinX": -0.056999999999999995, + "MinY": -0.023273502691896295, + "MinZ": -0.0010000000000000009, + "MaxX": -0.046999999999999986, + "MaxY": -0.011726497308103736, + "MaxZ": 0.0022000000000000075 + }, + "Material": { + "Material": "", + "Materials": "" + }, + "States": {}, + "LaserParts": null, + "IsSuppressed": false, + "activeConfiguration": null + }, + { + "Name": "20-60-120_WasherM6_x4_1mm_INOX-6", "Children": null, "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT", "Parent": null, @@ -650,167 +1403,17 @@ "Density": 1000.0, "Volume": 7.406922613335519E-07, "SurfaceArea": 0.0016499951383480782, - "CenterOfMassX": -1.0469689839506032E-19, - "CenterOfMassY": -3.1409069518518097E-19, - "CenterOfMassZ": 0.0005 - }, - "Box": { - "MinX": 0.041999999999999996, - "MinY": -0.024999999999999897, - "MinZ": -0.031000000000000087, - "MaxX": 0.057999999999999996, - "MaxY": 0.025000000000000112, - "MaxZ": -0.029999999999999912 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "20-60-120_Shield_x2_1mm_INOX-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_Shield_x2_1mm_INOX.SLDPRT", - "Parent": null, - "Properties": { - "Default": {} - }, - "Equations": {}, - "Mass": { - "Mass": 0.006250364903306205, - "Density": 1000.0, - "Volume": 6.250364903306205E-06, - "SurfaceArea": 0.013236632428881075, - "CenterOfMassX": -4.466514532439134E-19, - "CenterOfMassY": -1.3978536221892846E-18, + "CenterOfMassX": -2.2684327985596402E-19, + "CenterOfMassY": -3.8388862744855453E-19, "CenterOfMassZ": 0.0005 }, "Box": { "MinX": -0.06, - "MinY": 0.024999999999999897, - "MinZ": -0.029999999999999912, - "MaxX": 0.06, - "MaxY": 0.026000000000000106, - "MaxZ": 0.030000000000000093 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "SlideSingle-20ID-50D-50W-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-50\\SlideSingle-20ID-50D-50W.SLDPRT", - "Parent": null, - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "Stock-120-60-1", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-100-40\\Stock-120-60.SLDPRT", - "Parent": null, - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "SlideDual-20ID-60D-120W-2", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-60D-120W.SLDPRT", - "Parent": null, - "Properties": null, - "Equations": null, - "Mass": null, - "Box": null, - "Material": null, - "States": null, - "LaserParts": null, - "IsSuppressed": true, - "activeConfiguration": null - }, - { - "Name": "20-60-120_WasherM6_x4_1mm_INOX-4", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_WasherM6_x4_1mm_INOX.SLDPRT", - "Parent": null, - "Properties": { - "Default": {} - }, - "Equations": {}, - "Mass": { - "Mass": 0.0007406922613335518, - "Density": 1000.0, - "Volume": 7.406922613335519E-07, - "SurfaceArea": 0.0016499951383480782, - "CenterOfMassX": -1.0469689839506032E-19, - "CenterOfMassY": -3.1409069518518097E-19, - "CenterOfMassZ": 0.0005 - }, - "Box": { - "MinX": 0.041999999999999996, "MinY": -0.024999999999999897, - "MinZ": 0.029999999999999912, - "MaxX": 0.057999999999999996, + "MinZ": 0.02999999999999991, + "MaxX": -0.044, "MaxY": 0.025000000000000112, - "MaxZ": 0.031000000000000087 - }, - "Material": { - "Material": "", - "Materials": "" - }, - "States": {}, - "LaserParts": null, - "IsSuppressed": false, - "activeConfiguration": null - }, - { - "Name": "20-60-120_Shield_x2_1mm_INOX-2", - "Children": null, - "Path": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\20-60-120_Shield_x2_1mm_INOX.SLDPRT", - "Parent": null, - "Properties": { - "Default": {} - }, - "Equations": {}, - "Mass": { - "Mass": 0.006250364903306205, - "Density": 1000.0, - "Volume": 6.250364903306205E-06, - "SurfaceArea": 0.013236632428881075, - "CenterOfMassX": -4.466514532439134E-19, - "CenterOfMassY": -1.3978536221892846E-18, - "CenterOfMassZ": 0.0005 - }, - "Box": { - "MinX": -0.06, - "MinY": -0.026000000000000106, - "MinZ": -0.030000000000000093, - "MaxX": 0.06, - "MaxY": -0.024999999999999897, - "MaxZ": 0.029999999999999912 + "MaxZ": 0.031000000000000083 }, "Material": { "Material": "", @@ -831,24 +1434,29 @@ }, "Equations": {}, "Mass": { - "Mass": 0.31292358790288116, - "Density": 1018.9236309035609, - "Volume": 0.00030711191537032744, - "SurfaceArea": 0.08046359591401109, - "CenterOfMassX": 0.0006435437486936446, - "CenterOfMassY": -1.1724969161780712E-05, - "CenterOfMassZ": -0.00015428938832602398 + "Mass": 0.3141879958911657, + "Density": 1018.6842391326995, + "Volume": 0.00030842530376111747, + "SurfaceArea": 0.0849032968618819, + "CenterOfMassX": 1.6557145996963458E-05, + "CenterOfMassY": -0.00011174790774820135, + "CenterOfMassZ": -0.0002965402238220674 }, "Box": null, "Material": { + "Fasteners-M6-1/formed hex screw_am-4": "", "Fasteners-M6-1/formed hex screw_am-3": "", "Fasteners-M6-1/hex nut jam_am-1": "", - "Fasteners-M6-1/formed hex screw_am-4": "", - "SlideDual-20ID-60D-120W-1": "ABS", "20-60-120_WasherM6_x4_1mm_INOX-1": "", "20-60-120_Shield_x2_1mm_INOX-1": "", + "SlideDual-20ID-60D-120W-1": "ABS", + "20-60-120_Shield_x2_1mm_INOX-2": "", "20-60-120_WasherM6_x4_1mm_INOX-4": "", - "20-60-120_Shield_x2_1mm_INOX-2": "" + "20-60-120_WasherM6_x4_1mm_INOX-5": "", + "Fasteners-M6-2/formed hex screw_am-4": "", + "Fasteners-M6-2/formed hex screw_am-3": "", + "Fasteners-M6-2/hex nut jam_am-1": "", + "20-60-120_WasherM6_x4_1mm_INOX-6": "" }, "States": {}, "LaserParts": null, diff --git a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.x_t b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.x_t index 964d195..7d1d3e4 100644 --- a/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.x_t +++ b/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-60H-120W.x_t @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:827409f2f8f1ef8ff1ac1fe1c384410613a26c86e7e7b70325ba91a7ed4791b2 -size 131019 +oid sha256:16f30d73314a4c2207dda05f16b0982b73bdd5a718000f26219d14432a2a1431 +size 146988 diff --git a/cad/joints/slide-clamp-20ID-120-60/cad-report-Default.json b/cad/joints/slide-clamp-20ID-120-60/cad-report-Default.json new file mode 100644 index 0000000..f8f8796 --- /dev/null +++ b/cad/joints/slide-clamp-20ID-120-60/cad-report-Default.json @@ -0,0 +1,103 @@ +[ + { + "code": 0, + "command": "convert.exe --source=\"C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.SLDASM\" --target=\"C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-50H-100W-Nema23.step\" --configuration=\"Default\" --view=\"*Render\" --hidden=true --width=1024 --height=1024 --swv=30 --renderer=solidworks --quality=2", + "messages": [ + "Changed view: *Render", + "Failed to change configuration: Default", + "IPC error:timeout", + "Conversion successful. Output file saved to: C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-50H-100W-Nema23.step " + ], + "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.SLDASM", + "target": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\SlideDual-20ID-50H-100W-Nema23.step", + "failed": false, + "options": { + "src": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.SLDASM", + "dst": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60\\&{SRC_DIR}\\&{SRC_NAME}.+(step)", + "debug": false, + "verbose": true, + "dry": false, + "cache": false, + "hidden": "true", + "renderer": "Solidworks", + "alt": true, + "quality": 2, + "logLevel": "trace", + "width": "1024", + "height": "1024", + "script": "convert.exe", + "sw": 2022, + "swv": 30, + "configuration": "Default", + "report": "${SRC_DIR}/cad-report-${CONFIGURATION}.json", + "pack": false, + "light": false, + "rebuild": false, + "save": false, + "variables": { + "SRC_PATH": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.SLDASM", + "SRC_DIR": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-120-60", + "SRC_NAME": "SlideDual-20ID-50H-100W-Nema23", + "SRC_FILE_NAME": "SlideDual-20ID-50H-100W-Nema23.SLDASM", + "SRC_FILE_EXT": "SLDASM", + "SRC_IS_FILE": true, + "SRC_IS_FOLDER": false, + "SRC_IS_EXPRESSION": false, + "SRC_IS_GLOB": false, + "SRC_FILES": [ + "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.SLDASM" + ], + "DST_PATH": "&{SRC_DIR}/&{SRC_NAME}.+(step)", + "DST_DIR": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60", + "DST_NAME": "&{SRC_NAME}", + "DST_FILE_NAME": "\\&{SRC_DIR}\\&{SRC_NAME}.+(step)", + "DST_FILE_EXT": "+(step)", + "DST_IS_FILE": false, + "DST_IS_FOLDER": false, + "DST_IS_EXPRESSION": false, + "DST_IS_GLOB": true, + "DST_GLOB": "\\&{SRC_DIR}\\&{SRC_NAME}.+(step)", + "DST_GLOB_EXTENSIONS": [ + "step" + ], + "DST_FILES": [] + }, + "view": "Render", + "args": "", + "bom-config": "Default", + "bom-detail": 1, + "bom-type": 2, + "bom-images": false, + "srcInfo": { + "PATH": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.SLDASM", + "DIR": "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-120-60", + "NAME": "SlideDual-20ID-50H-100W-Nema23", + "FILE_NAME": "SlideDual-20ID-50H-100W-Nema23.SLDASM", + "FILE_EXT": "SLDASM", + "IS_FILE": true, + "IS_FOLDER": false, + "IS_EXPRESSION": false, + "IS_GLOB": false, + "FILES": [ + "C:/Users/mc007/Desktop/osr/products/products/products/poly-mech/cad/joints/slide-clamp-20ID-120-60/SlideDual-20ID-50H-100W-Nema23.SLDASM" + ] + }, + "dstInfo": { + "PATH": "&{SRC_DIR}/&{SRC_NAME}.+(step)", + "DIR": "C:\\Users\\mc007\\Desktop\\osr\\products\\products\\products\\poly-mech\\cad\\joints\\slide-clamp-20ID-120-60", + "NAME": "&{SRC_NAME}", + "FILE_NAME": "\\&{SRC_DIR}\\&{SRC_NAME}.+(step)", + "FILE_EXT": "+(step)", + "IS_FILE": false, + "IS_FOLDER": false, + "IS_EXPRESSION": false, + "IS_GLOB": true, + "GLOB": "\\&{SRC_DIR}\\&{SRC_NAME}.+(step)", + "GLOB_EXTENSIONS": [ + "step" + ], + "FILES": [] + } + } + } +] \ No newline at end of file diff --git a/cad/joints/slide-clamp-20ID-120-60/toolbox.svg b/cad/joints/slide-clamp-20ID-120-60/toolbox.svg deleted file mode 100644 index 9fe20b4..0000000 --- a/cad/joints/slide-clamp-20ID-120-60/toolbox.svg +++ /dev/null @@ -1,157 +0,0 @@ -Composer Exporttooltip \ No newline at end of file diff --git a/resources/material/hdpe/assets/DSC02732_thumb_thumb.jpg b/resources/material/hdpe/assets/DSC02732_thumb_thumb.jpg deleted file mode 100644 index ce76abb..0000000 --- a/resources/material/hdpe/assets/DSC02732_thumb_thumb.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c3dac5011fbab4e0154285389fda41fe2fb8b29a1b357e73856eb9858ed056b8 -size 135381 diff --git a/resources/material/hdpe/assets/DSC02734_thumb_thumb.jpg b/resources/material/hdpe/assets/DSC02734_thumb_thumb.jpg deleted file mode 100644 index e17ce5f..0000000 --- a/resources/material/hdpe/assets/DSC02734_thumb_thumb.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:80d492b867d18655e482b7985ea9e486b4e4cd1e742680fb0a1b10a8817c54aa -size 138860 diff --git a/resources/material/hdpe/assets/DSC02735_thumb_thumb.jpg b/resources/material/hdpe/assets/DSC02735_thumb_thumb.jpg deleted file mode 100644 index 0085547..0000000 --- a/resources/material/hdpe/assets/DSC02735_thumb_thumb.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e705253e89c180fa6c55d1e2b94dcd3497f4eb1b369673c35eabde8044c74c9a -size 133464 diff --git a/resources/material/hdpe/assets/DSC02737_thumb_thumb.jpg b/resources/material/hdpe/assets/DSC02737_thumb_thumb.jpg deleted file mode 100644 index 636fd3e..0000000 --- a/resources/material/hdpe/assets/DSC02737_thumb_thumb.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2e1574a228977e71136a46b54398a19aecb46c082c3359045565c69f38d2c1dc -size 140260 diff --git a/resources/material/hdpe/assets/DSC02738_thumb_thumb.jpg b/resources/material/hdpe/assets/DSC02738_thumb_thumb.jpg deleted file mode 100644 index 13a1274..0000000 --- a/resources/material/hdpe/assets/DSC02738_thumb_thumb.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bdb448c9e2d95054a51af3de6c9184bab96b48f1d0d2850d7a479198cfe49c1c -size 131366 diff --git a/resources/material/hdpe/assets/DSC02739_thumb_thumb.jpg b/resources/material/hdpe/assets/DSC02739_thumb_thumb.jpg deleted file mode 100644 index b223a3a..0000000 --- a/resources/material/hdpe/assets/DSC02739_thumb_thumb.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:16a2bb14dd31a021f9d4dc6b58a12096e9dc250cef13198c6bad6e732d87eada -size 139536 diff --git a/resources/material/hdpe/assets/DSC02740_thumb_thumb.jpg b/resources/material/hdpe/assets/DSC02740_thumb_thumb.jpg deleted file mode 100644 index 6709b5f..0000000 --- a/resources/material/hdpe/assets/DSC02740_thumb_thumb.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:68e25165e2afd5cbcada231f63583989a05c48e8732f3cd052a1eea3d6c202dd -size 145741 diff --git a/resources/material/pp/assets/washed/DSC02841.jpg b/resources/material/hdpe/assets/washed/DSC02841.jpg similarity index 100% rename from resources/material/pp/assets/washed/DSC02841.jpg rename to resources/material/hdpe/assets/washed/DSC02841.jpg diff --git a/resources/material/pp/assets/washed/DSC02846.JPG b/resources/material/hdpe/assets/washed/DSC02846.JPG similarity index 100% rename from resources/material/pp/assets/washed/DSC02846.JPG rename to resources/material/hdpe/assets/washed/DSC02846.JPG diff --git a/resources/material/pp/assets/washed/DSC02847.jpg b/resources/material/hdpe/assets/washed/DSC02847.jpg similarity index 100% rename from resources/material/pp/assets/washed/DSC02847.jpg rename to resources/material/hdpe/assets/washed/DSC02847.jpg diff --git a/resources/material/pp/assets/washed/DSC02849.JPG b/resources/material/hdpe/assets/washed/DSC02849.JPG similarity index 100% rename from resources/material/pp/assets/washed/DSC02849.JPG rename to resources/material/hdpe/assets/washed/DSC02849.JPG diff --git a/resources/material/pp/assets/washed/raw/DSC02841.jpg b/resources/material/hdpe/assets/washed/raw/DSC02841.jpg similarity index 100% rename from resources/material/pp/assets/washed/raw/DSC02841.jpg rename to resources/material/hdpe/assets/washed/raw/DSC02841.jpg diff --git a/resources/material/pp/assets/washed/raw/DSC02846.JPG b/resources/material/hdpe/assets/washed/raw/DSC02846.JPG similarity index 100% rename from resources/material/pp/assets/washed/raw/DSC02846.JPG rename to resources/material/hdpe/assets/washed/raw/DSC02846.JPG diff --git a/resources/material/pp/assets/washed/raw/DSC02847.jpg b/resources/material/hdpe/assets/washed/raw/DSC02847.jpg similarity index 100% rename from resources/material/pp/assets/washed/raw/DSC02847.jpg rename to resources/material/hdpe/assets/washed/raw/DSC02847.jpg diff --git a/resources/material/pp/assets/washed/raw/DSC02849.JPG b/resources/material/hdpe/assets/washed/raw/DSC02849.JPG similarity index 100% rename from resources/material/pp/assets/washed/raw/DSC02849.JPG rename to resources/material/hdpe/assets/washed/raw/DSC02849.JPG diff --git a/resources/material/pp/assets/washed/readme.md b/resources/material/hdpe/assets/washed/readme.md similarity index 100% rename from resources/material/pp/assets/washed/readme.md rename to resources/material/hdpe/assets/washed/readme.md