deeptwins-engine-3d 0.1.76 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (238) hide show
  1. package/dist/assets/Build/DeepTwins/Image/noise.png +0 -0
  2. package/dist/assets/Build/DeepTwins/Workers/CustomRasterClip.worker.js +1 -2
  3. package/dist/assets/Build/DeepTwins/Workers/MvtVector.worker.js +1 -1
  4. package/dist/assets/Build/Map3d/ThirdParty/Workers/zip-web-worker.js +640 -0
  5. package/dist/assets/Build/Map3d/ThirdParty/wasm_splats_bg.wasm +0 -0
  6. package/dist/assets/Build/Map3d/ThirdParty/zip-module.wasm +0 -0
  7. package/dist/assets/Build/Map3d/Workers/chunk-27NG6PQR.js +456 -0
  8. package/dist/assets/Build/Map3d/Workers/chunk-2JVMMMWT.js +353 -0
  9. package/dist/assets/Build/Map3d/Workers/chunk-2Y2XYQCS.js +1481 -0
  10. package/dist/assets/Build/Map3d/Workers/chunk-34RF3V5G.js +220 -0
  11. package/dist/assets/Build/Map3d/Workers/chunk-35H7BYLJ.js +1800 -0
  12. package/dist/assets/Build/Map3d/Workers/chunk-57OGEF5V.js +435 -0
  13. package/dist/assets/Build/Map3d/Workers/chunk-5PX3DYJA.js +196 -0
  14. package/dist/assets/Build/Map3d/Workers/chunk-7B5XGQRN.js +171 -0
  15. package/dist/assets/Build/Map3d/Workers/chunk-ATLWOZFF.js +39 -0
  16. package/dist/assets/Build/Map3d/Workers/chunk-BMSUECTA.js +1055 -0
  17. package/dist/assets/Build/Map3d/Workers/chunk-C6IA4TKW.js +476 -0
  18. package/dist/assets/Build/Map3d/Workers/chunk-CZ44I32U.js +157 -0
  19. package/dist/assets/Build/Map3d/Workers/chunk-DE6UV44R.js +122 -0
  20. package/dist/assets/Build/Map3d/Workers/chunk-DUCCKVOG.js +834 -0
  21. package/dist/assets/Build/Map3d/Workers/chunk-EBJBPIYX.js +239 -0
  22. package/dist/assets/Build/Map3d/Workers/chunk-EYSYQ2R6.js +138 -0
  23. package/dist/assets/Build/Map3d/Workers/chunk-FMCAAUQI.js +368 -0
  24. package/dist/assets/Build/Map3d/Workers/chunk-GMYZNRRQ.js +2717 -0
  25. package/dist/assets/Build/Map3d/Workers/chunk-GWPNZZV4.js +781 -0
  26. package/dist/assets/Build/Map3d/Workers/chunk-HLP2U4KW.js +758 -0
  27. package/dist/assets/Build/Map3d/Workers/chunk-HSJSUPQV.js +500 -0
  28. package/dist/assets/Build/Map3d/Workers/chunk-I73Q3AG7.js +58 -0
  29. package/dist/assets/Build/Map3d/Workers/chunk-IMZ4YIMV.js +511 -0
  30. package/dist/assets/Build/Map3d/Workers/chunk-IZSK4DVF.js +421 -0
  31. package/dist/assets/Build/Map3d/Workers/chunk-JKLMRPKK.js +75 -0
  32. package/dist/assets/Build/Map3d/Workers/chunk-KGM345JM.js +691 -0
  33. package/dist/assets/Build/Map3d/Workers/chunk-L4IR5U4G.js +102 -0
  34. package/dist/assets/Build/Map3d/Workers/chunk-MG4EVQH2.js +44 -0
  35. package/dist/assets/Build/Map3d/Workers/chunk-NXWEFAZJ.js +300 -0
  36. package/dist/assets/Build/Map3d/Workers/chunk-PDFAJISJ.js +59 -0
  37. package/dist/assets/Build/Map3d/Workers/chunk-PHWZFJR5.js +100 -0
  38. package/dist/assets/Build/Map3d/Workers/chunk-PLE7CHBE.js +101 -0
  39. package/dist/assets/Build/Map3d/Workers/chunk-PN3GIZ5Q.js +163 -0
  40. package/dist/assets/Build/Map3d/Workers/chunk-PXL5XLHV.js +1073 -0
  41. package/dist/assets/Build/Map3d/Workers/chunk-QYXOF5JC.js +959 -0
  42. package/dist/assets/Build/Map3d/Workers/chunk-R2LIFXV3.js +115 -0
  43. package/dist/assets/Build/Map3d/Workers/chunk-R4W6IRJZ.js +10357 -0
  44. package/dist/assets/Build/Map3d/Workers/chunk-R5PZXG56.js +1258 -0
  45. package/dist/assets/Build/Map3d/Workers/chunk-RZQLZIUI.js +629 -0
  46. package/dist/assets/Build/Map3d/Workers/chunk-SIBDD6Y4.js +390 -0
  47. package/dist/assets/Build/Map3d/Workers/chunk-U5NN6JTQ.js +398 -0
  48. package/dist/assets/Build/Map3d/Workers/chunk-UA5RPPP3.js +73 -0
  49. package/dist/assets/Build/Map3d/Workers/chunk-UXLKFS3C.js +305 -0
  50. package/dist/assets/Build/Map3d/Workers/chunk-VUX4BQIM.js +37 -0
  51. package/dist/assets/Build/Map3d/Workers/chunk-WJDUUUJS.js +684 -0
  52. package/dist/assets/Build/Map3d/Workers/chunk-XBJOJHWX.js +139 -0
  53. package/dist/assets/Build/Map3d/Workers/chunk-XJDMTNKD.js +634 -0
  54. package/dist/assets/Build/Map3d/Workers/chunk-XUCXZZE5.js +963 -0
  55. package/dist/assets/Build/Map3d/Workers/chunk-YIKGVMJ5.js +287 -0
  56. package/dist/assets/Build/Map3d/Workers/chunk-YTNCIBPQ.js +262 -0
  57. package/dist/assets/Build/Map3d/Workers/chunk-ZMDUYETO.js +55 -0
  58. package/dist/assets/Build/Map3d/Workers/chunk-ZW52HXFN.js +2857 -0
  59. package/dist/esm/analyze/LineOfSightAnalysis.js +1 -326
  60. package/dist/esm/analyze/SubmergenceAnalysis.js +1 -137
  61. package/dist/esm/analyze/SunLightAnalysis.js +1 -91
  62. package/dist/esm/analyze/TerrainExcavationAnalysis.js +1 -612
  63. package/dist/esm/analyze/ViewshedAnalysis.js +1 -292
  64. package/dist/esm/cameraControl/ModelRoamHistory.js +1 -639
  65. package/dist/esm/cameraControl/ModelRoamRealTime.js +1 -874
  66. package/dist/esm/cameraControl/Roam.js +1 -418
  67. package/dist/esm/cameraControl/Rotate.js +1 -134
  68. package/dist/esm/cameraControl/RotateInPlace.js +1 -99
  69. package/dist/esm/constant.d.ts +90 -0
  70. package/dist/esm/constant.js +1 -1287
  71. package/dist/esm/deepTwins/index.js +1 -121
  72. package/dist/esm/drawCommand/index.js +1 -3
  73. package/dist/esm/drawCommand/viewShed/Event.js +1 -142
  74. package/dist/esm/drawCommand/viewShed/RectangularSensorPrimitive.js +1 -1306
  75. package/dist/esm/drawCommand/viewShed/ViewShadowPrimitive.js +1 -66
  76. package/dist/esm/drawCommand/viewShed/ViewShedAnalyserLayer.js +1 -466
  77. package/dist/esm/drawCommand/viewShed/ViewShedMap.js +1 -1238
  78. package/dist/esm/drawCommand/viewShed/config.js +1 -21
  79. package/dist/esm/drawCommand/volumeCloud/GeometryPrimitive.js +1 -89
  80. package/dist/esm/drawCommand/volumeCloud/ImprovedNoise.js +1 -112
  81. package/dist/esm/drawCommand/volumeCloud/VolumeClouds.js +1 -91
  82. package/dist/esm/drawer/algorithm.js +1 -314
  83. package/dist/esm/drawer/common.js +1 -965
  84. package/dist/esm/drawer/coordinate.js +1 -184
  85. package/dist/esm/drawer/index.d.ts +1 -1
  86. package/dist/esm/drawer/index.js +1 -688
  87. package/dist/esm/drawer/plotUtil.js +1 -266
  88. package/dist/esm/drawer/shape/Assemble.js +1 -415
  89. package/dist/esm/drawer/shape/AttackArrow.js +1 -442
  90. package/dist/esm/drawer/shape/BaseShape.js +1 -383
  91. package/dist/esm/drawer/shape/Bow.js +1 -375
  92. package/dist/esm/drawer/shape/Circle.js +1 -461
  93. package/dist/esm/drawer/shape/Curve.js +1 -386
  94. package/dist/esm/drawer/shape/DragPoint.js +1 -211
  95. package/dist/esm/drawer/shape/Elliptic.js +1 -491
  96. package/dist/esm/drawer/shape/Formation.js +1 -395
  97. package/dist/esm/drawer/shape/PincerArrow.js +1 -445
  98. package/dist/esm/drawer/shape/Point.js +1 -131
  99. package/dist/esm/drawer/shape/Polygon.js +1 -368
  100. package/dist/esm/drawer/shape/Polyline.js +1 -325
  101. package/dist/esm/drawer/shape/RegularPolygon.js +1 -468
  102. package/dist/esm/drawer/shape/RightAngleArrow.js +1 -423
  103. package/dist/esm/drawer/shape/Sector.js +1 -568
  104. package/dist/esm/drawer/shape/StraightArrow.js +1 -422
  105. package/dist/esm/drawer/shape/SwallowtailArrow.js +1 -438
  106. package/dist/esm/drawer/types.js +1 -11
  107. package/dist/esm/drawer/utils.js +1 -381
  108. package/dist/esm/global.css +22 -1
  109. package/dist/esm/graphicLayer/BaseEntity.js +1 -51
  110. package/dist/esm/graphicLayer/BaseLayer.js +1 -730
  111. package/dist/esm/graphicLayer/BasePointPrimitive.js +1 -45
  112. package/dist/esm/graphicLayer/BasePrimitive.js +1 -36
  113. package/dist/esm/graphicLayer/BasePrimitiveInstance.js +1 -37
  114. package/dist/esm/graphicLayer/BaseSource.d.ts +1 -1
  115. package/dist/esm/graphicLayer/BaseSource.js +1 -630
  116. package/dist/esm/graphicLayer/BillboardEntity.js +1 -106
  117. package/dist/esm/graphicLayer/BillboardPrimitive.js +1 -119
  118. package/dist/esm/graphicLayer/BoxEntity.js +1 -99
  119. package/dist/esm/graphicLayer/BoxPrimitive.js +1 -48
  120. package/dist/esm/graphicLayer/BoxPrimitiveInstance.js +1 -91
  121. package/dist/esm/graphicLayer/EllipseEntity.js +1 -110
  122. package/dist/esm/graphicLayer/EllipsePrimitive.js +1 -47
  123. package/dist/esm/graphicLayer/EllipsePrimitiveInstance.js +1 -98
  124. package/dist/esm/graphicLayer/EllipsoidEntity.js +1 -118
  125. package/dist/esm/graphicLayer/EllipsoidPrimitive.js +1 -48
  126. package/dist/esm/graphicLayer/EllipsoidPrimitiveInstance.js +1 -113
  127. package/dist/esm/graphicLayer/GraphicLayerCollection.js +1 -491
  128. package/dist/esm/graphicLayer/HtmlEntity.d.ts +4 -0
  129. package/dist/esm/graphicLayer/HtmlEntity.js +1 -189
  130. package/dist/esm/graphicLayer/LabelEntity.js +1 -110
  131. package/dist/esm/graphicLayer/LabelPrimitive.js +1 -127
  132. package/dist/esm/graphicLayer/ModelEntity.js +1 -122
  133. package/dist/esm/graphicLayer/ModelPrimitive.js +1 -59
  134. package/dist/esm/graphicLayer/ModelPrimitiveInstance.js +1 -86
  135. package/dist/esm/graphicLayer/PointEntity.js +1 -94
  136. package/dist/esm/graphicLayer/PointPrimitive.js +1 -107
  137. package/dist/esm/graphicLayer/PolygonEntity.js +1 -103
  138. package/dist/esm/graphicLayer/PolygonGroundPrimitive.js +1 -49
  139. package/dist/esm/graphicLayer/PolygonGroundPrimitiveImageMaterialInstance.js +1 -87
  140. package/dist/esm/graphicLayer/PolygonPrimitive.js +1 -60
  141. package/dist/esm/graphicLayer/PolygonPrimitiveImageMaterialInstance.js +1 -84
  142. package/dist/esm/graphicLayer/PolygonPrimitiveInstance.js +1 -101
  143. package/dist/esm/graphicLayer/PolylineEntity.js +1 -96
  144. package/dist/esm/graphicLayer/PolylineGroundPrimitive.js +1 -55
  145. package/dist/esm/graphicLayer/PolylineGroundPrimitiveInstance.js +1 -85
  146. package/dist/esm/graphicLayer/PolylinePrimitive.js +1 -53
  147. package/dist/esm/graphicLayer/PolylinePrimitiveInstance.js +1 -85
  148. package/dist/esm/graphicLayer/PolylineVolumeEntity.js +1 -105
  149. package/dist/esm/graphicLayer/PolylineVolumePrimitive.js +1 -47
  150. package/dist/esm/graphicLayer/PolylineVolumePrimitiveInstance.js +1 -94
  151. package/dist/esm/graphicLayer/WallEntity.js +1 -96
  152. package/dist/esm/graphicLayer/WallPrimitive.js +1 -47
  153. package/dist/esm/graphicLayer/WallPrimitiveInstance.js +1 -88
  154. package/dist/esm/index.d.ts +4 -0
  155. package/dist/esm/index.js +1 -175
  156. package/dist/esm/lowAltitude/BarrierLayer.js +1 -172
  157. package/dist/esm/lowAltitude/BaseGridMvtLayer.js +1 -122
  158. package/dist/esm/lowAltitude/FactorLayer.js +1 -199
  159. package/dist/esm/lowAltitude/FlightPlanning.js +1 -411
  160. package/dist/esm/lowAltitude/FlightRiskEvaluation.js +1 -543
  161. package/dist/esm/lowAltitude/GridDraw.js +1 -137
  162. package/dist/esm/lowAltitude/PoiLayer.js +1 -74
  163. package/dist/esm/lowAltitude/RoutePlanning.js +1 -318
  164. package/dist/esm/lowAltitude/VisitLayer.js +1 -180
  165. package/dist/esm/map/Event.js +1 -377
  166. package/dist/esm/map/GroundSkyBox.js +1 -166
  167. package/dist/esm/map/Map.js +1 -881
  168. package/dist/esm/map/Property.js +1 -35
  169. package/dist/esm/material/AtmosphericDispersion.js +1 -569
  170. package/dist/esm/material/GlobalVolumetricCloud.js +1 -377
  171. package/dist/esm/material/VolumeCloud.js +1 -115
  172. package/dist/esm/material/WeatherEffects.js +1 -351
  173. package/dist/esm/material/entity/BaseMaterialProperty.js +1 -51
  174. package/dist/esm/material/entity/CircleWaveMaterialProperty.js +1 -101
  175. package/dist/esm/material/entity/DynamicWallMaterialProperty.js +1 -101
  176. package/dist/esm/material/entity/ImageGlowingMaterialProperty.js +1 -89
  177. package/dist/esm/material/entity/ImageMaterialProperty.js +1 -34
  178. package/dist/esm/material/entity/PolylineTrailLinkMaterialProperty.js +1 -132
  179. package/dist/esm/material/primitive/BaseMaterialAppearance.js +1 -28
  180. package/dist/esm/material/primitive/ImageGlowingMaterialAppearance.js +1 -77
  181. package/dist/esm/material/primitive/ImageMaterialAppearance.js +1 -77
  182. package/dist/esm/measure/Area.js +1 -220
  183. package/dist/esm/measure/BaseDraw.js +1 -105
  184. package/dist/esm/measure/Distance.js +1 -223
  185. package/dist/esm/measure/index.js +1 -266
  186. package/dist/esm/measure/types.js +1 -17
  187. package/dist/esm/measure/utils.js +1 -319
  188. package/dist/esm/particle/BaseParticle.js +1 -196
  189. package/dist/esm/particle/FireParticle.js +1 -65
  190. package/dist/esm/particle/FountainParticle.js +1 -80
  191. package/dist/esm/particle/SmokeParticle.js +1 -65
  192. package/dist/esm/particle/common.js +1 -23
  193. package/dist/esm/particle/index.js +1 -5
  194. package/dist/esm/property/PositionProperty.js +1 -56
  195. package/dist/esm/tileLayer/ArcGisLayer.js +1 -41
  196. package/dist/esm/tileLayer/CustomRasterClipWorkerClient.js +1 -147
  197. package/dist/esm/tileLayer/CustomRasterLayer.js +1 -1136
  198. package/dist/esm/tileLayer/ImageryLayer.js +1 -44
  199. package/dist/esm/tileLayer/MvtVectorLoad.js +1 -1549
  200. package/dist/esm/tileLayer/MvtVectorWorkerClient.js +1 -126
  201. package/dist/esm/tileLayer/RasterLayer.js +1 -23
  202. package/dist/esm/tileLayer/WmsLayer.js +1 -26
  203. package/dist/esm/tileLayer/WmtsLayer.js +1 -23
  204. package/dist/esm/tool/BuildClampedPolygonGrid.js +1 -278
  205. package/dist/esm/tool/Compass.js +1 -282
  206. package/dist/esm/tool/PrimitiveCluster.js +1 -706
  207. package/dist/esm/tool/TimerInterval.js +1 -58
  208. package/dist/esm/tool/common.js +1 -405
  209. package/dist/esm/tool/fetch.js +1 -222
  210. package/dist/esm/tool/heatmap.js +1 -631
  211. package/dist/esm/tool/utils.d.ts +1 -0
  212. package/dist/esm/tool/utils.js +1 -501
  213. package/dist/esm/toolTip/index.js +1 -79
  214. package/dist/esm/videoFusion/BaseVideo.d.ts +7 -0
  215. package/dist/esm/videoFusion/BaseVideo.js +1 -330
  216. package/dist/esm/videoFusion/VideoProject.js +1 -230
  217. package/dist/esm/videoFusion/VideoTexture.js +1 -163
  218. package/dist/esm/visualization/BaseHeatmap.js +1 -271
  219. package/dist/esm/visualization/BoundaryHighlight.d.ts +136 -0
  220. package/dist/esm/visualization/BoundaryHighlight.js +1 -0
  221. package/dist/esm/visualization/DynamicWater.js +1 -289
  222. package/dist/esm/visualization/Frustum.js +1 -248
  223. package/dist/esm/visualization/Heatmap2d.js +1 -97
  224. package/dist/esm/visualization/Heatmap3d.js +1 -281
  225. package/dist/esm/visualization/MigrationEffect.js +1 -397
  226. package/dist/esm/visualization/PointCluster.js +1 -220
  227. package/dist/esm/visualization/RadarScan.js +1 -333
  228. package/dist/esm/visualization/SampledTerrainRiver.d.ts +180 -0
  229. package/dist/esm/visualization/SampledTerrainRiver.js +1 -0
  230. package/dist/esm/visualization/SampledTerrainWater.d.ts +170 -0
  231. package/dist/esm/visualization/SampledTerrainWater.js +1 -0
  232. package/dist/esm/visualization/WindField.d.ts +72 -0
  233. package/dist/esm/visualization/WindField.js +1 -0
  234. package/dist/esm/visualization/windCore.d.ts +161 -0
  235. package/dist/esm/visualization/windCore.js +8 -0
  236. package/dist/umd/deeptwins-engine-3d.min.css +1 -1
  237. package/dist/umd/deeptwins-engine-3d.min.js +1 -1
  238. package/package.json +6 -4
@@ -1,639 +1 @@
1
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
- function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, catch: function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
3
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
4
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
5
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
6
- function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
7
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
8
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
9
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
10
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
11
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
12
- function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
13
- import * as Cesium from 'deeptwins-cesium';
14
- import * as constant from "../constant";
15
- import ModelEntity from "../graphicLayer/ModelEntity";
16
- import { lineClampToGroundSplit } from "../tool/common";
17
- import { cartesian3ToLngLatAlt, lngLatAltToCartesian3 } from "../tool/utils";
18
- var ModelRoamHistory = /*#__PURE__*/function () {
19
- function ModelRoamHistory(map, positions, options) {
20
- _classCallCheck(this, ModelRoamHistory);
21
- _defineProperty(this, "_mapContext", void 0);
22
- _defineProperty(this, "polylineLayer", void 0);
23
- _defineProperty(this, "polylineEntity", void 0);
24
- _defineProperty(this, "modelLayer", void 0);
25
- _defineProperty(this, "modelEntity", void 0);
26
- _defineProperty(this, "positionProperty", null);
27
- _defineProperty(this, "follow", null);
28
- _defineProperty(this, "status", 'initializing');
29
- _defineProperty(this, "_eventRunning", null);
30
- _defineProperty(this, "_eventComplete", null);
31
- _defineProperty(this, "_eventCancel", null);
32
- _defineProperty(this, "_eventPreUpdate", void 0);
33
- _defineProperty(this, "_positions", []);
34
- _defineProperty(this, "_currentPosition", null);
35
- _defineProperty(this, "_heading", null);
36
- _defineProperty(this, "_listenRunning", null);
37
- _defineProperty(this, "_clockRange", Cesium.ClockRange.CLAMPED);
38
- _defineProperty(this, "_initPromise", void 0);
39
- _defineProperty(this, "_isReady", false);
40
- _defineProperty(this, "_pendingStart", false);
41
- _defineProperty(this, "_hasReachedStopTime", false);
42
- _defineProperty(this, "_modelSourceId", null);
43
- _defineProperty(this, "_samples", []);
44
- _defineProperty(this, "firstCameraSettings", {
45
- distance: 0,
46
- pitch: -45
47
- });
48
- _defineProperty(this, "thirdPersonSettings", {
49
- distance: 500,
50
- pitch: -45
51
- });
52
- if (!(map !== null && map !== void 0 && map._mapContext)) {
53
- throw new Error('undefined map');
54
- }
55
- var _ref = options || {},
56
- complete = _ref.complete,
57
- cancel = _ref.cancel,
58
- onRunning = _ref.onRunning;
59
- complete && (this._eventComplete = complete);
60
- cancel && (this._eventCancel = cancel);
61
- onRunning && (this._eventRunning = onRunning);
62
- this._mapContext = map._mapContext;
63
- this._positions = this._normalizePositions(positions);
64
- this._initPromise = this._init(options);
65
- this._initPromise.catch(function () {
66
- return undefined;
67
- });
68
- }
69
- _createClass(ModelRoamHistory, [{
70
- key: "getMap",
71
- value: function getMap() {
72
- return this._mapContext && this._mapContext.getMap();
73
- }
74
- }, {
75
- key: "isReady",
76
- value: function isReady() {
77
- return this._isReady;
78
- }
79
- }, {
80
- key: "getStatus",
81
- value: function getStatus() {
82
- return this.status;
83
- }
84
- }, {
85
- key: "_init",
86
- value: function () {
87
- var _init2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(options) {
88
- var _this$polylineLayer;
89
- var _ref2, polyline, _ref2$model, model, _ref2$multiplier, multiplier, _ref2$clockRange, clockRange, _ref2$flyTo, flyTo, _ref2$clampToGround, clampToGround, _ref2$splitNum, splitNum, map, start, stop, _this$polylineLayer2, _this$modelLayer, samples, modelOptions, startPosition;
90
- return _regeneratorRuntime().wrap(function _callee$(_context) {
91
- while (1) switch (_context.prev = _context.next) {
92
- case 0:
93
- _ref2 = options || {}, polyline = _ref2.polyline, _ref2$model = _ref2.model, model = _ref2$model === void 0 ? {} : _ref2$model, _ref2$multiplier = _ref2.multiplier, multiplier = _ref2$multiplier === void 0 ? 1 : _ref2$multiplier, _ref2$clockRange = _ref2.clockRange, clockRange = _ref2$clockRange === void 0 ? Cesium.ClockRange.CLAMPED : _ref2$clockRange, _ref2$flyTo = _ref2.flyTo, flyTo = _ref2$flyTo === void 0 ? false : _ref2$flyTo, _ref2$clampToGround = _ref2.clampToGround, clampToGround = _ref2$clampToGround === void 0 ? false : _ref2$clampToGround, _ref2$splitNum = _ref2.splitNum, splitNum = _ref2$splitNum === void 0 ? 50 : _ref2$splitNum;
94
- this._clockRange = clockRange;
95
- map = this.getMap();
96
- start = Cesium.JulianDate.fromDate(this._positions[0].time);
97
- stop = Cesium.JulianDate.fromDate(this._positions[this._positions.length - 1].time);
98
- this._createPolylineLayer(polyline, clampToGround);
99
- this.polylineEntity = (_this$polylineLayer = this.polylineLayer) === null || _this$polylineLayer === void 0 || (_this$polylineLayer = _this$polylineLayer.layers) === null || _this$polylineLayer === void 0 || (_this$polylineLayer = _this$polylineLayer[0]) === null || _this$polylineLayer === void 0 ? void 0 : _this$polylineLayer.entity;
100
- if (flyTo) {
101
- (_this$polylineLayer2 = this.polylineLayer) === null || _this$polylineLayer2 === void 0 || _this$polylineLayer2.flyTo();
102
- }
103
- this._configureClock(start, stop, multiplier, clockRange);
104
- this._bindSceneListener();
105
- _context.prev = 10;
106
- _context.next = 13;
107
- return this._buildPositionSamples({
108
- clampToGround: clampToGround,
109
- splitNum: splitNum
110
- });
111
- case 13:
112
- samples = _context.sent;
113
- if (!(this.status === 'destroy')) {
114
- _context.next = 16;
115
- break;
116
- }
117
- return _context.abrupt("return");
118
- case 16:
119
- this.positionProperty = new Cesium.SampledPositionProperty();
120
- this._samples = samples.slice().sort(function (a, b) {
121
- return a.time.getTime() - b.time.getTime();
122
- });
123
- this._appendSamples(this._samples);
124
- modelOptions = _objectSpread(_objectSpread({}, model || {}), clampToGround ? {
125
- heightReference: Cesium.HeightReference.CLAMP_TO_GROUND
126
- } : {});
127
- this.modelEntity = new Cesium.Entity({
128
- availability: new Cesium.TimeIntervalCollection([new Cesium.TimeInterval({
129
- start: start,
130
- stop: stop
131
- })]),
132
- orientation: new Cesium.VelocityOrientationProperty(this.positionProperty),
133
- position: this.positionProperty,
134
- model: ModelEntity.handleOptions(modelOptions)
135
- });
136
- this.modelLayer = map.addCustomSourceToGraphicLayer(this.modelEntity.position, {
137
- type: 'model',
138
- entity: this.modelEntity
139
- });
140
- this._modelSourceId = ((_this$modelLayer = this.modelLayer) === null || _this$modelLayer === void 0 ? void 0 : _this$modelLayer.sourceId) || null;
141
- this.status = 'stop';
142
- this._isReady = true;
143
- startPosition = this.positionProperty.getValue(map.clock.currentTime);
144
- if (startPosition) {
145
- this._currentPosition = startPosition;
146
- }
147
- if (this._pendingStart) {
148
- this._pendingStart = false;
149
- this.start();
150
- }
151
- _context.next = 34;
152
- break;
153
- case 30:
154
- _context.prev = 30;
155
- _context.t0 = _context["catch"](10);
156
- if (this.status !== 'destroy') {
157
- this.status = 'error';
158
- }
159
- throw _context.t0;
160
- case 34:
161
- case "end":
162
- return _context.stop();
163
- }
164
- }, _callee, this, [[10, 30]]);
165
- }));
166
- function _init(_x) {
167
- return _init2.apply(this, arguments);
168
- }
169
- return _init;
170
- }()
171
- }, {
172
- key: "_normalizePositions",
173
- value: function _normalizePositions(positions) {
174
- if (!Array.isArray(positions) || positions.length < 2) {
175
- throw new Error('positions must contain at least two items');
176
- }
177
- var normalizedPositions = positions.map(function (item, index) {
178
- var time = (item === null || item === void 0 ? void 0 : item.time) instanceof Date ? item.time : new Date(item === null || item === void 0 ? void 0 : item.time);
179
- if (typeof (item === null || item === void 0 ? void 0 : item.lng) !== 'number' || typeof (item === null || item === void 0 ? void 0 : item.lat) !== 'number' || typeof (item === null || item === void 0 ? void 0 : item.alt) !== 'number' || Number.isNaN(time.getTime())) {
180
- throw new Error("invalid position data at index ".concat(index));
181
- }
182
- return {
183
- lng: item.lng,
184
- lat: item.lat,
185
- alt: item.alt,
186
- time: time
187
- };
188
- });
189
- for (var i = 1; i < normalizedPositions.length; i++) {
190
- if (normalizedPositions[i].time.getTime() <= normalizedPositions[i - 1].time.getTime()) {
191
- throw new Error('positions time must be in strictly ascending order');
192
- }
193
- }
194
- return normalizedPositions;
195
- }
196
- }, {
197
- key: "_createPolylineLayer",
198
- value: function _createPolylineLayer(polyline, clampToGround) {
199
- var geoJson = {
200
- type: 'FeatureCollection',
201
- features: [{
202
- type: 'Feature',
203
- geometry: {
204
- type: 'LineString',
205
- coordinates: this._positions.map(function (t) {
206
- return [t.lng, t.lat, t.alt];
207
- })
208
- }
209
- }]
210
- };
211
- this.polylineLayer = this.getMap().addGraphicLayer(geoJson, {
212
- type: 'polyline',
213
- style: _objectSpread(_objectSpread({}, polyline), {}, {
214
- clampToGround: clampToGround
215
- })
216
- });
217
- }
218
- }, {
219
- key: "_configureClock",
220
- value: function _configureClock(start, stop, multiplier, clockRange) {
221
- var map = this.getMap();
222
- map.clock.startTime = start.clone();
223
- map.clock.stopTime = stop.clone();
224
- map.clock.currentTime = start.clone();
225
- map.clock.multiplier = multiplier;
226
- map.clock.clockRange = clockRange;
227
- map.clock.shouldAnimate = false;
228
- }
229
- }, {
230
- key: "_bindSceneListener",
231
- value: function _bindSceneListener() {
232
- var _this = this;
233
- this._listenRunning = function () {
234
- if (!_this._isReady || !_this.positionProperty || _this.status === 'destroy' || _this.status === 'error') {
235
- return;
236
- }
237
- var map = _this.getMap();
238
- var clock = map.clock;
239
- var currentTime = clock.currentTime;
240
- var reachedStopTime = Cesium.JulianDate.compare(currentTime, clock.stopTime) >= 0;
241
- if (reachedStopTime && !_this._hasReachedStopTime) {
242
- _this._hasReachedStopTime = true;
243
- if (_this._eventComplete && _this.status === 'running') {
244
- _this._eventComplete();
245
- }
246
- if (_this._clockRange !== Cesium.ClockRange.LOOP_STOP) {
247
- _this.status = 'stop';
248
- clock.shouldAnimate = false;
249
- }
250
- } else if (!reachedStopTime) {
251
- _this._hasReachedStopTime = false;
252
- }
253
- if (!clock.shouldAnimate) {
254
- return;
255
- }
256
- var currentPosition = _this.positionProperty.getValue(currentTime);
257
- if (!currentPosition) {
258
- return;
259
- }
260
- _this._currentPosition = currentPosition;
261
- var beforePosition = _this._getPreviousPosition(currentTime);
262
- if (beforePosition) {
263
- _this._updateHeading(currentPosition, beforePosition);
264
- }
265
- if (_this._eventRunning) {
266
- _this._eventRunning(_objectSpread(_objectSpread({}, cartesian3ToLngLatAlt(currentPosition)), {}, {
267
- time: Cesium.JulianDate.toDate(currentTime)
268
- }));
269
- }
270
- };
271
- this._eventPreUpdate = this.getMap().on(constant.SCENE_EVENT_TYPE.PRE_UPDATE, this._listenRunning);
272
- }
273
- }, {
274
- key: "_buildPositionSamples",
275
- value: function () {
276
- var _buildPositionSamples2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(_ref3) {
277
- var _this2 = this;
278
- var clampToGround, splitNum, map, segmentTasks, segments;
279
- return _regeneratorRuntime().wrap(function _callee2$(_context2) {
280
- while (1) switch (_context2.prev = _context2.next) {
281
- case 0:
282
- clampToGround = _ref3.clampToGround, splitNum = _ref3.splitNum;
283
- if (clampToGround) {
284
- _context2.next = 3;
285
- break;
286
- }
287
- return _context2.abrupt("return", this._positions.map(function (dataPoint) {
288
- return {
289
- time: dataPoint.time,
290
- position: lngLatAltToCartesian3(dataPoint.lng, dataPoint.lat, dataPoint.alt)
291
- };
292
- }));
293
- case 3:
294
- map = this.getMap();
295
- segmentTasks = this._positions.slice(0, -1).map(function (position1, index) {
296
- var position2 = _this2._positions[index + 1];
297
- var points = lineClampToGroundSplit({
298
- map: map,
299
- pos1: lngLatAltToCartesian3(position1.lng, position1.lat, position1.alt),
300
- pos2: lngLatAltToCartesian3(position2.lng, position2.lat, position2.alt),
301
- splitNum: splitNum
302
- });
303
- if (!points.length) {
304
- return Promise.resolve({
305
- index: index,
306
- samples: _this2._buildRawSegmentSamples(position1, position2)
307
- });
308
- }
309
- var cartographicPoints = points.map(function (point) {
310
- return Cesium.Cartographic.fromCartesian(point);
311
- });
312
- return Cesium.sampleTerrainMostDetailed(map.terrainProvider, cartographicPoints).then(function (updatedPoints) {
313
- return {
314
- index: index,
315
- samples: _this2._buildTerrainSegmentSamples(position1, position2, updatedPoints)
316
- };
317
- });
318
- });
319
- _context2.next = 7;
320
- return Promise.all(segmentTasks);
321
- case 7:
322
- segments = _context2.sent;
323
- return _context2.abrupt("return", segments.sort(function (a, b) {
324
- return a.index - b.index;
325
- }).reduce(function (result, item) {
326
- return result.concat(item.samples);
327
- }, []));
328
- case 9:
329
- case "end":
330
- return _context2.stop();
331
- }
332
- }, _callee2, this);
333
- }));
334
- function _buildPositionSamples(_x2) {
335
- return _buildPositionSamples2.apply(this, arguments);
336
- }
337
- return _buildPositionSamples;
338
- }()
339
- }, {
340
- key: "_buildRawSegmentSamples",
341
- value: function _buildRawSegmentSamples(startPosition, endPosition) {
342
- return [{
343
- time: startPosition.time,
344
- position: lngLatAltToCartesian3(startPosition.lng, startPosition.lat, startPosition.alt)
345
- }, {
346
- time: endPosition.time,
347
- position: lngLatAltToCartesian3(endPosition.lng, endPosition.lat, endPosition.alt)
348
- }];
349
- }
350
- }, {
351
- key: "_buildTerrainSegmentSamples",
352
- value: function _buildTerrainSegmentSamples(startPosition, endPosition, updatedPoints) {
353
- if (!updatedPoints.length) {
354
- return this._buildRawSegmentSamples(startPosition, endPosition);
355
- }
356
- if (updatedPoints.length === 1) {
357
- return this._buildRawSegmentSamples(startPosition, endPosition);
358
- }
359
- var startTime = startPosition.time.getTime();
360
- var endTime = endPosition.time.getTime();
361
- var totalInterval = endTime - startTime;
362
- var segmentInterval = totalInterval / (updatedPoints.length - 1);
363
- return updatedPoints.map(function (dataPoint, index) {
364
- return {
365
- time: new Date(startTime + index * segmentInterval),
366
- position: Cesium.Cartesian3.fromRadians(dataPoint.longitude, dataPoint.latitude, dataPoint.height)
367
- };
368
- });
369
- }
370
- }, {
371
- key: "_appendSamples",
372
- value: function _appendSamples(samples) {
373
- var _this3 = this;
374
- if (!this.positionProperty) {
375
- return;
376
- }
377
- var previousSample = null;
378
- samples.forEach(function (sample) {
379
- var _this3$positionProper;
380
- if (_this3._shouldSkipSample(sample, previousSample)) {
381
- return;
382
- }
383
- (_this3$positionProper = _this3.positionProperty) === null || _this3$positionProper === void 0 || _this3$positionProper.addSample(Cesium.JulianDate.fromDate(sample.time), sample.position);
384
- previousSample = sample;
385
- });
386
- }
387
- }, {
388
- key: "_shouldSkipSample",
389
- value: function _shouldSkipSample(sample, previousSample) {
390
- if (!previousSample) {
391
- return false;
392
- }
393
- return previousSample.time.getTime() === sample.time.getTime() && Cesium.Cartesian3.equals(previousSample.position, sample.position);
394
- }
395
- }, {
396
- key: "_getPreviousPosition",
397
- value: function _getPreviousPosition(currentTime) {
398
- if (!this.positionProperty || !this._samples.length) {
399
- return null;
400
- }
401
- var currentTimeMs = Cesium.JulianDate.toDate(currentTime).getTime();
402
- for (var i = this._samples.length - 1; i >= 0; i--) {
403
- var sample = this._samples[i];
404
- if (sample.time.getTime() >= currentTimeMs) {
405
- continue;
406
- }
407
- return sample.position;
408
- }
409
- var fallbackTime = Cesium.JulianDate.addSeconds(currentTime, -0.01, new Cesium.JulianDate());
410
- return this.positionProperty.getValue(fallbackTime) || null;
411
- }
412
- }, {
413
- key: "_updateHeading",
414
- value: function _updateHeading(currentPosition, beforePosition) {
415
- var cartoNow = Cesium.Cartographic.fromCartesian(currentPosition);
416
- var cartoBefore = Cesium.Cartographic.fromCartesian(beforePosition);
417
- var origin = Cesium.Cartesian3.fromRadians(cartoBefore.longitude, cartoBefore.latitude, cartoBefore.height);
418
- var target = Cesium.Cartesian3.fromRadians(cartoNow.longitude, cartoNow.latitude, cartoNow.height);
419
- var enuTransform = Cesium.Transforms.eastNorthUpToFixedFrame(origin);
420
- var inverse = Cesium.Matrix4.inverse(enuTransform, new Cesium.Matrix4());
421
- var directionWorld = Cesium.Cartesian3.subtract(target, origin, new Cesium.Cartesian3());
422
- if (Cesium.Cartesian3.magnitudeSquared(directionWorld) <= Cesium.Math.EPSILON12) {
423
- return;
424
- }
425
- var directionENU = Cesium.Matrix4.multiplyByPointAsVector(inverse, directionWorld, new Cesium.Cartesian3());
426
- var heading = Cesium.Math.zeroToTwoPi(Math.atan2(directionENU.x, directionENU.y));
427
- this._heading = heading;
428
- this._applyFollowView(currentPosition, heading);
429
- }
430
- }, {
431
- key: "_applyFollowView",
432
- value: function _applyFollowView(position, heading) {
433
- if (this.follow === 'first') {
434
- this.updateFirstPersonView(position, heading);
435
- } else if (this.follow === 'third') {
436
- this.updateThirdPersonView(position, heading);
437
- }
438
- }
439
- }, {
440
- key: "start",
441
- value: function start() {
442
- if (this.status === 'destroy' || this.status === 'error') return;
443
- if (!this._isReady) {
444
- this._pendingStart = true;
445
- return;
446
- }
447
- if (Cesium.JulianDate.compare(this.getMap().clock.currentTime, this.getMap().clock.stopTime) >= 0) {
448
- this.getMap().clock.currentTime = this.getMap().clock.startTime.clone();
449
- }
450
- this.status = 'running';
451
- this._hasReachedStopTime = false;
452
- this.getMap().clock.shouldAnimate = true;
453
- }
454
- }, {
455
- key: "pause",
456
- value: function pause() {
457
- if (this.status !== 'running') return;
458
- this.status = 'pause';
459
- this.getMap().clock.shouldAnimate = false;
460
- }
461
- }, {
462
- key: "proceed",
463
- value: function proceed() {
464
- if (this.status === 'destroy' || this.status === 'error') return;
465
- if (!this._isReady) {
466
- this._pendingStart = true;
467
- return;
468
- }
469
- if (this.status !== 'pause' && this.status !== 'stop' && this.status !== 'ready') {
470
- return;
471
- }
472
- this.status = 'running';
473
- this._hasReachedStopTime = false;
474
- this.getMap().clock.shouldAnimate = true;
475
- }
476
- }, {
477
- key: "stop",
478
- value: function stop() {
479
- if (this.status === 'destroy' || this.status === 'error') return;
480
- this._pendingStart = false;
481
- this.status = 'stop';
482
- this.getMap().clock.shouldAnimate = false;
483
- this.getMap().clock.currentTime = Cesium.JulianDate.fromDate(this._positions[0].time);
484
- if (this.positionProperty) {
485
- var resetPosition = this.positionProperty.getValue(this.getMap().clock.currentTime);
486
- if (resetPosition) {
487
- this._currentPosition = resetPosition;
488
- if (this._heading != null) {
489
- this._applyFollowView(resetPosition, this._heading);
490
- }
491
- }
492
- }
493
- this._eventCancel && this._eventCancel();
494
- }
495
- }, {
496
- key: "setFollowFirst",
497
- value: function setFollowFirst() {
498
- var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
499
- if (this.status === 'destroy') return;
500
- this.firstCameraSettings = _objectSpread(_objectSpread({}, this.firstCameraSettings), options);
501
- this.follow = 'first';
502
- if (this._currentPosition && this._heading != null) {
503
- this.updateFirstPersonView(this._currentPosition, this._heading);
504
- }
505
- }
506
- }, {
507
- key: "setFollowThird",
508
- value: function setFollowThird() {
509
- var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
510
- if (this.status === 'destroy') return;
511
- this.thirdPersonSettings = _objectSpread(_objectSpread({}, this.thirdPersonSettings), options);
512
- this.follow = 'third';
513
- if (this._currentPosition && this._heading != null) {
514
- this.updateThirdPersonView(this._currentPosition, this._heading);
515
- }
516
- }
517
- }, {
518
- key: "cancelFollow",
519
- value: function cancelFollow() {
520
- if (this.status === 'destroy') return;
521
- this.follow = null;
522
- }
523
- }, {
524
- key: "updateFirstPersonView",
525
- value: function updateFirstPersonView(position, heading) {
526
- if (!position || heading == null) {
527
- return;
528
- }
529
- var pitch = Cesium.Math.toRadians(this.firstCameraSettings.pitch);
530
- var roll = 0.0;
531
- var hpr = new Cesium.HeadingPitchRoll(heading, pitch, roll);
532
- var orientationMatrix = Cesium.Transforms.headingPitchRollToFixedFrame(position, hpr, Cesium.Ellipsoid.WGS84, Cesium.Transforms.localFrameToFixedFrameGenerator('east', 'north'));
533
- var forwardLocal = new Cesium.Cartesian3(0, 1, 0);
534
- var rotation = Cesium.Matrix4.getMatrix3(orientationMatrix, new Cesium.Matrix3());
535
- var forwardWorld = Cesium.Matrix3.multiplyByVector(rotation, forwardLocal, new Cesium.Cartesian3());
536
- var offset = Cesium.Cartesian3.multiplyByScalar(forwardWorld, -this.firstCameraSettings.distance, new Cesium.Cartesian3());
537
- var cameraPosition = Cesium.Cartesian3.add(position, offset, new Cesium.Cartesian3());
538
- this.getMap().camera.setView({
539
- destination: cameraPosition,
540
- orientation: {
541
- heading: heading,
542
- pitch: pitch,
543
- roll: roll
544
- }
545
- });
546
- }
547
- }, {
548
- key: "updateThirdPersonView",
549
- value: function updateThirdPersonView(position, heading) {
550
- if (!position || heading == null) {
551
- return;
552
- }
553
- var transform = Cesium.Transforms.headingPitchRollToFixedFrame(position, new Cesium.HeadingPitchRoll(heading, 0, 0), Cesium.Ellipsoid.WGS84, Cesium.Transforms.localFrameToFixedFrameGenerator('north', 'west'));
554
- var offset = new Cesium.Cartesian3(-this.thirdPersonSettings.distance, 0, 500);
555
- var cameraPosition = Cesium.Matrix4.multiplyByPoint(transform, offset, new Cesium.Cartesian3());
556
- this.getMap().camera.setView({
557
- destination: cameraPosition,
558
- orientation: {
559
- heading: heading,
560
- pitch: Cesium.Math.toRadians(this.thirdPersonSettings.pitch),
561
- roll: 0.0
562
- }
563
- });
564
- }
565
- }, {
566
- key: "on",
567
- value: function on(type, event) {
568
- return this.getMap()._event.listenToModelRoam(type, event, this);
569
- }
570
- }, {
571
- key: "updatePolyline",
572
- value: function updatePolyline(style) {
573
- var _this$polylineLayer3;
574
- (_this$polylineLayer3 = this.polylineLayer) === null || _this$polylineLayer3 === void 0 || _this$polylineLayer3.setStyle(style);
575
- }
576
- }, {
577
- key: "updateModel",
578
- value: function updateModel(style) {
579
- var _this$modelLayer2;
580
- (_this$modelLayer2 = this.modelLayer) === null || _this$modelLayer2 === void 0 || _this$modelLayer2.setStyle(style);
581
- }
582
- }, {
583
- key: "waitUntilReady",
584
- value: function () {
585
- var _waitUntilReady = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
586
- return _regeneratorRuntime().wrap(function _callee3$(_context3) {
587
- while (1) switch (_context3.prev = _context3.next) {
588
- case 0:
589
- _context3.next = 2;
590
- return this._initPromise;
591
- case 2:
592
- case "end":
593
- return _context3.stop();
594
- }
595
- }, _callee3, this);
596
- }));
597
- function waitUntilReady() {
598
- return _waitUntilReady.apply(this, arguments);
599
- }
600
- return waitUntilReady;
601
- }()
602
- }, {
603
- key: "destroy",
604
- value: function destroy() {
605
- var _this$_eventPreUpdate, _this$_eventPreUpdate2, _this$polylineLayer4, _this$polylineLayer4$;
606
- if (this.status === 'destroy') {
607
- return;
608
- }
609
- var map = this.getMap();
610
- map.clock.shouldAnimate = false;
611
- this.cancelFollow();
612
- this._pendingStart = false;
613
- (_this$_eventPreUpdate = this._eventPreUpdate) === null || _this$_eventPreUpdate === void 0 || (_this$_eventPreUpdate2 = _this$_eventPreUpdate.off) === null || _this$_eventPreUpdate2 === void 0 || _this$_eventPreUpdate2.call(_this$_eventPreUpdate);
614
- this._eventPreUpdate = null;
615
- this._listenRunning = null;
616
- if (this._modelSourceId) {
617
- map.removeGraphicSource(this._modelSourceId);
618
- } else {
619
- var _this$modelLayer3, _this$modelLayer3$rem;
620
- (_this$modelLayer3 = this.modelLayer) === null || _this$modelLayer3 === void 0 || (_this$modelLayer3$rem = _this$modelLayer3.remove) === null || _this$modelLayer3$rem === void 0 || _this$modelLayer3$rem.call(_this$modelLayer3);
621
- }
622
- (_this$polylineLayer4 = this.polylineLayer) === null || _this$polylineLayer4 === void 0 || (_this$polylineLayer4$ = _this$polylineLayer4.remove) === null || _this$polylineLayer4$ === void 0 || _this$polylineLayer4$.call(_this$polylineLayer4);
623
- this.polylineLayer = null;
624
- this.polylineEntity = null;
625
- this.modelLayer = null;
626
- this.modelEntity = null;
627
- this._modelSourceId = null;
628
- this._positions = [];
629
- this._samples = [];
630
- this.positionProperty = null;
631
- this._currentPosition = null;
632
- this._heading = null;
633
- this._isReady = false;
634
- this.status = 'destroy';
635
- }
636
- }]);
637
- return ModelRoamHistory;
638
- }();
639
- export { ModelRoamHistory as default };
1
+ (function(_0x329cf8,_0x323f98){var _0x236da1=_0x4477,_0x24f142=_0x329cf8();while(!![]){try{var _0x579756=-parseInt(_0x236da1(0x28c))/0x1*(-parseInt(_0x236da1(0x23b))/0x2)+parseInt(_0x236da1(0x1dd))/0x3*(parseInt(_0x236da1(0x239))/0x4)+-parseInt(_0x236da1(0x271))/0x5+-parseInt(_0x236da1(0x25a))/0x6+parseInt(_0x236da1(0x295))/0x7*(-parseInt(_0x236da1(0x28e))/0x8)+-parseInt(_0x236da1(0x231))/0x9*(-parseInt(_0x236da1(0x290))/0xa)+parseInt(_0x236da1(0x24d))/0xb;if(_0x579756===_0x323f98)break;else _0x24f142['push'](_0x24f142['shift']());}catch(_0x3b71a3){_0x24f142['push'](_0x24f142['shift']());}}}(_0x4665,0xabc77));function _0x4665(){var _0x165088=['BxvSDgLWBhLcEvbVAw50qxnwzwn0B3i','x3bVC2L0Aw9UCW','z2v0twfW','zMLYC3rdyw1LCMftzxr0Aw5NCW','vMvSB2nPDhLpCMLLBNrHDgLVBLbYB3bLCNr5','sgvHzgLUz1bPDgnOuM9SBa','zMLSDgvY','y29UC3rYDwn0B3i','x2v2zw50q29TCgXLDgu','x2XPC3rLBLj1BM5PBMC','DMfSDwu','C3rYAw5N','y2XVy2S','C291CMnLswq','AgvPz2H0','BM9YBwfS','DxbKyxrLrMLYC3rqzxjZB25wAwv3','ntC3vezjrfDg','x2LUDM9Rzq','ntK1nJH2EMLQzvm','zNvUy3rPB24','mtCWuwLiv25e','DgHPCMrqzxjZB25tzxr0Aw5NCW','z2v0t3DUuhjVCgvYDhLezxnJCMLWDg9Y','y2fTzxjH','x2n1CNjLBNrqB3nPDgLVBG','oty2BK1myvv5','x2DLDfbYzxzPB3vZug9ZAxrPB24','D2fPDfvUDgLSuMvHzhK','yxbWBhK','DxbKyxrLvgHPCMrqzxjZB25wAwv3','zMX5vg8','y2XHBxbuB0DYB3vUza','zxjYB3i','x2LUAxq','Cg9W','DxbKyxrLtw9KzwW','BgLZDgvUvg9nB2rLBfjVyw0','Dg9tDhjPBMDuywC','DhLWzq','z2v0t3DUuhjVCgvYDhLezxnJCMLWDg9YCW','y2f0y2HmB2m','C2vUDa','nty1mtm0t0Lfz0HS','Bw9KzwW','Bg5N','x25VCM1HBgL6zvbVC2L0Aw9UCW','rMvHDhvYzunVBgXLy3rPB24','x21HCenVBNrLEhq','q2fUBM90ignHBgWGysbJBgfZCYbHCYbHigz1BMn0Aw9U','twf0CML4na','Cgf1C2u','rw50Axr5','x2j1AwXKug9ZAxrPB25tyw1WBgvZ','z2v0vgLTzq','yxn5BMm','x2fWCgvUzfnHBxbSzxm','y2fSBa','x2HLywrPBMC','x2LUAxrqCM9TAxnL','qebPDgvYyxrVCG','ywXS','Bwv0Ag9K','BMv4Da','Aw5PDgLHBgL6Aw5N','AxrLCMf0B3i','z2v0u3rHDhvZ','zw51BwvYywjSzq','C3vZCgvUzgvKwwLLBgq','zwfZDe5VCNrOvxbuB0zPEgvKrNjHBwu','y29TCgfYzq','x2nSB2nRuMfUz2u','q2fYDg9NCMfWAgLJ','x2j1AwXKvgvYCMfPBLnLz21LBNrtyw1WBgvZ','Cg9SEwXPBMvmyxLLCG','r2vUzxjHDg9YrNvUy3rPB24','C3bSAxroDw0','zg9Uzq','Cg9SEwXPBMvfBNrPDhK','Dw5KzwzPBMvKig1HCa','ywX0','BwfYAW','CMv2zxjZzq','ywz0zxjmB2m','Bg9Uz2L0DwrL','x2fWCgX5rM9SBg93vMLLDW','y2f0y2G','yxDYyxa','C2HVDwXKqw5PBwf0zq','x2jPBMrty2vUzuXPC3rLBMvY','zNjVBunHCNrLC2LHBG','x2nVBMzPz3vYzunSB2nR','q0Xbtvbfra','C3vZCgvUzgvKu3rHCNq','x2LZuMvHzhK','zgvMyxvSDa','BxvSDgLWBhLcEvbVAw50','CMvKDwnL','vhjHBNnMB3jTCW','q2fYDgvZAwfUmW','y2fUy2vS','CMvTB3zL','y3vYCMvUDfrPBwu','tgLUzvn0CMLUzW','Axnhzw5LCMf0B3jgDw5JDgLVBG','C3rHDhvZ','zgvZDhjVEq','Dhj5rw50CMLLCW','x2v2zw50uhjLvxbKyxrL','z2v0vMfSDwu','twf0Aa','Cg9ZAxrPB25Zig11C3qGy29UDgfPBIbHDcbSzwfZDcb0D28GAxrLBxm','Cg9ZAxrPB24','C2fTCgXLCW','C2v0u3r5Bgu','AxnbCNjHEq','vgLTzuLUDgvYDMfSq29SBgvJDgLVBG','C2fTCgXLvgvYCMfPBK1VC3rezxrHAwXLza','y29TCgXLDgLVBG','x2nYzwf0zvbVBhLSAw5Ltgf5zxi','x2j1AwXKuMf3u2vNBwvUDfnHBxbSzxm','x2HHC1jLywnOzwrtDg9WvgLTzq','ChjLDG','u0nftKvFrvzftLrFvfLqrq','x3nHBxbSzxm','DgHLBG','AwXSzwDHBcbJyxrJAcbHDhrLBxb0','ndaYmtj0t3DgCu4','CM9VDa','C2XPy2u','yxjN','Bg9JywXgCMfTzvrVrML4zwrgCMfTzuDLBMvYyxrVCG','r2vUzxjHDg9Y','CNzHBa','zM9YrwfJAa','mJrAEhHwCe8','sNvSAwfUrgf0zq','nde3neHHq254zq','Dg9sywrPyw5Z','BwfW','CMvZzxq','ywjYDxb0','Dg9tDhjPBMC','x2v2zw50uNvUBMLUzW','BgvUz3rO','y2XVBMu','D3jHCa','x19WCM90B19F','zwfZDa','y2XVy2Tsyw5Nzq','Bw9KzwXmyxLLCG','zgvSzwDHDgu','D2vZDa','DgLTzq','y3jLyxrL','nZiXoduZmgPjuM5Sra','CgL0y2G','Aw5KzxG','ywrKu2fTCgXL','DMfSDwvZ','AxnszwfKEq','CMv0DxjU','ChjVDg90ExbL','Cg9ZAxrPB25ZihrPBwuGBxvZDcbIzsbPBIbZDhjPy3rSEsbHC2nLBMrPBMCGB3jKzxi','zgLZCgf0y2HfEgnLChrPB24','q2XVy2Tsyw5Nzq','x3nOB3vSzfnRAxbtyw1WBgu','q0XbtvbFve9Fr1jpvu5e','nZi0nZuZmMHtBhjUza','zM9SBg93','Cg9ZAxrPB25qCM9Wzxj0Eq','zgvMAw5LuhjVCgvYDgLLCW','CNvUBMLUzW','zNjVBvjHzgLHBNm','zgLZCgXHEu5HBwu','Bgf0Axr1zgu','C29YDa','DgHYB3C','zNjVBurHDgu','zMLUywXSEuXVyW','BwfNBML0DwrLu3f1yxjLza','C2v0rM9SBg93vgHPCMq','C3rVCfrPBwu','qxn5BMnjDgvYyxrVCG','Dhj5tg9J','Bgf0','zgvMAw5LuhjVCgvYDhK','y29TCgXLDgu','zgLZDgfUy2u','ChvZAa','x2v2zw50q2fUy2vS','nJm3odGWEgLLvufW','r2vUzxjHDg9YigLZigfSCMvHzhKGCNvUBMLUzW','C3LTyM9S','AgvHzgLUz1bPDgnOuM9SBfrVrML4zwrgCMfTzq','zxHLy3v0Aw5N','x21VzgvSu291CMnLswq','rwXSAxbZB2LK','C3rVCa','x3bLBMrPBMDtDgfYDa','Bw9KzwXfBNrPDhK'];_0x4665=function(){return _0x165088;};return _0x4665();}function _typeof(_0x1e1af1){'@babel/helpers - typeof';var _0x5d6384=_0x4477;return _typeof=_0x5d6384(0x28f)==typeof Symbol&&_0x5d6384(0x273)==typeof Symbol[_0x5d6384(0x1f3)]?function(_0x1e796f){return typeof _0x1e796f;}:function(_0x355695){var _0xcba3bf=_0x5d6384;return _0x355695&&'function'==typeof Symbol&&_0x355695[_0xcba3bf(0x282)]===Symbol&&_0x355695!==Symbol[_0xcba3bf(0x254)]?_0xcba3bf(0x273):typeof _0x355695;},_typeof(_0x1e1af1);}function _regeneratorRuntime(){'use strict';var _0x1623a4=_0x4477;_regeneratorRuntime=function _0x5e2ca2(){return _0x4f7f44;};var _0x5a31de,_0x4f7f44={},_0x4b6134=Object[_0x1623a4(0x254)],_0x1663d5=_0x4b6134['hasOwnProperty'],_0x2a1d8f=Object[_0x1623a4(0x26c)]||function(_0x35e0f2,_0x23bf90,_0x29bdb0){var _0x1f753e=_0x1623a4;_0x35e0f2[_0x23bf90]=_0x29bdb0[_0x1f753e(0x285)];},_0x2bba8c='function'==typeof Symbol?Symbol:{},_0x32afad=_0x2bba8c[_0x1623a4(0x1f3)]||_0x1623a4(0x1ee),_0x1eb518=_0x2bba8c['asyncIterator']||'@@asyncIterator',_0x2ea2f8=_0x2bba8c[_0x1623a4(0x2a1)]||'@@toStringTag';function _0x36be0b(_0x26c8ab,_0x1deaca,_0x38b48d){var _0x2cb467=_0x1623a4;return Object[_0x2cb467(0x26c)](_0x26c8ab,_0x1deaca,{'value':_0x38b48d,'enumerable':!0x0,'configurable':!0x0,'writable':!0x0}),_0x26c8ab[_0x1deaca];}try{_0x36be0b({},'');}catch(_0x1865c6){_0x36be0b=function _0xdb52c9(_0x5e3340,_0x134082,_0x3deb80){return _0x5e3340[_0x134082]=_0x3deb80;};}function _0x4043c1(_0x49b082,_0x2a2abe,_0x5a6e62,_0x6bf109){var _0x2050fa=_0x1623a4,_0xe4f8d0=_0x2a2abe&&_0x2a2abe['prototype']instanceof _0x2cf6c3?_0x2a2abe:_0x2cf6c3,_0x217211=Object[_0x2050fa(0x24c)](_0xe4f8d0['prototype']),_0x463df8=new _0x4e26b1(_0x6bf109||[]);return _0x2a1d8f(_0x217211,'_invoke',{'value':_0xccc3c0(_0x49b082,_0x5a6e62,_0x463df8)}),_0x217211;}function _0x2d601a(_0x599e0b,_0x3c817b,_0x1f31a6){var _0x446228=_0x1623a4;try{return{'type':_0x446228(0x28a),'arg':_0x599e0b[_0x446228(0x1eb)](_0x3c817b,_0x1f31a6)};}catch(_0x2728ca){return{'type':'throw','arg':_0x2728ca};}}_0x4f7f44['wrap']=_0x4043c1;var _0x588f93=_0x1623a4(0x20f),_0x58db7f=_0x1623a4(0x1f6),_0x21f2a6=_0x1623a4(0x275),_0x674478='completed',_0x5c207e={};function _0x2cf6c3(){}function _0x5391e4(){}function _0x561b1a(){}var _0x5394d3={};_0x36be0b(_0x5394d3,_0x32afad,function(){return this;});var _0x3ef18e=Object['getPrototypeOf'],_0x702889=_0x3ef18e&&_0x3ef18e(_0x3ef18e(_0x23775c([])));_0x702889&&_0x702889!==_0x4b6134&&_0x1663d5[_0x1623a4(0x1eb)](_0x702889,_0x32afad)&&(_0x5394d3=_0x702889);var _0x5846ab=_0x561b1a[_0x1623a4(0x254)]=_0x2cf6c3['prototype']=Object['create'](_0x5394d3);function _0x5cfb79(_0x3155db){var _0x14264a=_0x1623a4;[_0x14264a(0x1f1),'throw',_0x14264a(0x253)][_0x14264a(0x238)](function(_0x3c4abf){_0x36be0b(_0x3155db,_0x3c4abf,function(_0x32dbe1){var _0x3326a5=_0x4477;return this[_0x3326a5(0x28d)](_0x3c4abf,_0x32dbe1);});});}function _0x1655b1(_0x2d898c,_0x6a1be7){function _0x1eca4e(_0x47acdd,_0x3710db,_0x52b4a9,_0x2de89c){var _0x26d1e3=_0x4477,_0x43ef1a=_0x2d601a(_0x2d898c[_0x47acdd],_0x2d898c,_0x3710db);if('throw'!==_0x43ef1a[_0x26d1e3(0x1d9)]){var _0x5c3fbe=_0x43ef1a['arg'],_0x37def3=_0x5c3fbe[_0x26d1e3(0x285)];return _0x37def3&&'object'==_typeof(_0x37def3)&&_0x1663d5[_0x26d1e3(0x1eb)](_0x37def3,'__await')?_0x6a1be7['resolve'](_0x37def3['__await'])['then'](function(_0x1eddc6){var _0x5d85db=_0x26d1e3;_0x1eca4e(_0x5d85db(0x1f1),_0x1eddc6,_0x52b4a9,_0x2de89c);},function(_0x699c48){var _0x58a2e3=_0x26d1e3;_0x1eca4e(_0x58a2e3(0x263),_0x699c48,_0x52b4a9,_0x2de89c);}):_0x6a1be7['resolve'](_0x37def3)[_0x26d1e3(0x22f)](function(_0x36d67c){_0x5c3fbe['value']=_0x36d67c,_0x52b4a9(_0x5c3fbe);},function(_0x1a9bd1){return _0x1eca4e('throw',_0x1a9bd1,_0x52b4a9,_0x2de89c);});}_0x2de89c(_0x43ef1a[_0x26d1e3(0x234)]);}var _0x519b2f;_0x2a1d8f(this,'_invoke',{'value':function _0x1e6c40(_0x388f3a,_0x59f6fa){function _0x3981a8(){return new _0x6a1be7(function(_0x2cf221,_0x46c1f9){_0x1eca4e(_0x388f3a,_0x59f6fa,_0x2cf221,_0x46c1f9);});}return _0x519b2f=_0x519b2f?_0x519b2f['then'](_0x3981a8,_0x3981a8):_0x3981a8();}});}function _0xccc3c0(_0x2f2e63,_0x49d114,_0x18923f){var _0x297180=_0x588f93;return function(_0x1cdc49,_0x2e740f){var _0x2527cc=_0x4477;if(_0x297180===_0x21f2a6)throw new Error(_0x2527cc(0x272));if(_0x297180===_0x674478){if(_0x2527cc(0x263)===_0x1cdc49)throw _0x2e740f;return{'value':_0x5a31de,'done':!0x0};}for(_0x18923f['method']=_0x1cdc49,_0x18923f['arg']=_0x2e740f;;){var _0x3056b1=_0x18923f[_0x2527cc(0x249)];if(_0x3056b1){var _0x422658=_0x4c4ab6(_0x3056b1,_0x18923f);if(_0x422658){if(_0x422658===_0x5c207e)continue;return _0x422658;}}if('next'===_0x18923f[_0x2527cc(0x1f0)])_0x18923f['sent']=_0x18923f['_sent']=_0x18923f['arg'];else{if(_0x2527cc(0x263)===_0x18923f['method']){if(_0x297180===_0x588f93)throw _0x297180=_0x674478,_0x18923f[_0x2527cc(0x234)];_0x18923f[_0x2527cc(0x256)](_0x18923f['arg']);}else _0x2527cc(0x253)===_0x18923f['method']&&_0x18923f[_0x2527cc(0x23f)](_0x2527cc(0x253),_0x18923f[_0x2527cc(0x234)]);}_0x297180=_0x21f2a6;var _0x27cb93=_0x2d601a(_0x2f2e63,_0x49d114,_0x18923f);if('normal'===_0x27cb93[_0x2527cc(0x1d9)]){if(_0x297180=_0x18923f['done']?_0x674478:_0x58db7f,_0x27cb93['arg']===_0x5c207e)continue;return{'value':_0x27cb93['arg'],'done':_0x18923f[_0x2527cc(0x1ff)]};}_0x2527cc(0x263)===_0x27cb93['type']&&(_0x297180=_0x674478,_0x18923f['method']='throw',_0x18923f['arg']=_0x27cb93['arg']);}};}function _0x4c4ab6(_0x2aeebc,_0x336379){var _0x3fb907=_0x1623a4,_0x59430f=_0x336379['method'],_0x3ab2f7=_0x2aeebc[_0x3fb907(0x1f3)][_0x59430f];if(_0x3ab2f7===_0x5a31de)return _0x336379[_0x3fb907(0x249)]=null,_0x3fb907(0x263)===_0x59430f&&_0x2aeebc['iterator'][_0x3fb907(0x253)]&&(_0x336379['method']=_0x3fb907(0x253),_0x336379['arg']=_0x5a31de,_0x4c4ab6(_0x2aeebc,_0x336379),_0x3fb907(0x263)===_0x336379['method'])||'return'!==_0x59430f&&(_0x336379['method']=_0x3fb907(0x263),_0x336379[_0x3fb907(0x234)]=new TypeError('The\x20iterator\x20does\x20not\x20provide\x20a\x20\x27'+_0x59430f+'\x27\x20method')),_0x5c207e;var _0x2a9c07=_0x2d601a(_0x3ab2f7,_0x2aeebc['iterator'],_0x336379['arg']);if(_0x3fb907(0x263)===_0x2a9c07[_0x3fb907(0x1d9)])return _0x336379['method']=_0x3fb907(0x263),_0x336379[_0x3fb907(0x234)]=_0x2a9c07['arg'],_0x336379['delegate']=null,_0x5c207e;var _0x4b3144=_0x2a9c07['arg'];return _0x4b3144?_0x4b3144[_0x3fb907(0x1ff)]?(_0x336379[_0x2aeebc['resultName']]=_0x4b3144[_0x3fb907(0x285)],_0x336379[_0x3fb907(0x1f1)]=_0x2aeebc['nextLoc'],'return'!==_0x336379['method']&&(_0x336379[_0x3fb907(0x1f0)]=_0x3fb907(0x1f1),_0x336379[_0x3fb907(0x234)]=_0x5a31de),_0x336379[_0x3fb907(0x249)]=null,_0x5c207e):_0x4b3144:(_0x336379[_0x3fb907(0x1f0)]='throw',_0x336379[_0x3fb907(0x234)]=new TypeError('iterator\x20result\x20is\x20not\x20an\x20object'),_0x336379[_0x3fb907(0x249)]=null,_0x5c207e);}function _0x49dbdd(_0xbd5f71){var _0x264c1d=_0x1623a4,_0x5e9a3a={'tryLoc':_0xbd5f71[0x0]};0x1 in _0xbd5f71&&(_0x5e9a3a[_0x264c1d(0x1db)]=_0xbd5f71[0x1]),0x2 in _0xbd5f71&&(_0x5e9a3a['finallyLoc']=_0xbd5f71[0x2],_0x5e9a3a[_0x264c1d(0x205)]=_0xbd5f71[0x3]),this['tryEntries'][_0x264c1d(0x26f)](_0x5e9a3a);}function _0x1ef242(_0x3bf210){var _0x50d5eb=_0x1623a4,_0xd741a1=_0x3bf210[_0x50d5eb(0x228)]||{};_0xd741a1[_0x50d5eb(0x1d9)]='normal',delete _0xd741a1[_0x50d5eb(0x234)],_0x3bf210['completion']=_0xd741a1;}function _0x4e26b1(_0x484eac){var _0x1795d3=_0x1623a4;this['tryEntries']=[{'tryLoc':_0x1795d3(0x232)}],_0x484eac['forEach'](_0x49dbdd,this),this[_0x1795d3(0x23e)](!0x0);}function _0x23775c(_0x3ce9ed){var _0x4d1a8d=_0x1623a4;if(_0x3ce9ed||''===_0x3ce9ed){var _0x329867=_0x3ce9ed[_0x32afad];if(_0x329867)return _0x329867['call'](_0x3ce9ed);if('function'==typeof _0x3ce9ed[_0x4d1a8d(0x1f1)])return _0x3ce9ed;if(!isNaN(_0x3ce9ed[_0x4d1a8d(0x242)])){var _0x70b221=-0x1,_0x46998a=function _0x5a048c(){var _0x39a0ca=_0x4d1a8d;for(;++_0x70b221<_0x3ce9ed[_0x39a0ca(0x242)];)if(_0x1663d5[_0x39a0ca(0x1eb)](_0x3ce9ed,_0x70b221))return _0x5a048c['value']=_0x3ce9ed[_0x70b221],_0x5a048c['done']=!0x1,_0x5a048c;return _0x5a048c[_0x39a0ca(0x285)]=_0x5a31de,_0x5a048c['done']=!0x0,_0x5a048c;};return _0x46998a['next']=_0x46998a;}}throw new TypeError(_typeof(_0x3ce9ed)+'\x20is\x20not\x20iterable');}return _0x5391e4['prototype']=_0x561b1a,_0x2a1d8f(_0x5846ab,'constructor',{'value':_0x561b1a,'configurable':!0x0}),_0x2a1d8f(_0x561b1a,'constructor',{'value':_0x5391e4,'configurable':!0x0}),_0x5391e4[_0x1623a4(0x260)]=_0x36be0b(_0x561b1a,_0x2ea2f8,_0x1623a4(0x1fd)),_0x4f7f44[_0x1623a4(0x21a)]=function(_0x155a26){var _0x11093d=_0x1623a4,_0x3088e5='function'==typeof _0x155a26&&_0x155a26[_0x11093d(0x282)];return!!_0x3088e5&&(_0x3088e5===_0x5391e4||_0x11093d(0x1fd)===(_0x3088e5['displayName']||_0x3088e5['name']));},_0x4f7f44['mark']=function(_0x50492c){var _0x1943e2=_0x1623a4;return Object['setPrototypeOf']?Object['setPrototypeOf'](_0x50492c,_0x561b1a):(_0x50492c[_0x1943e2(0x245)]=_0x561b1a,_0x36be0b(_0x50492c,_0x2ea2f8,_0x1943e2(0x1fd))),_0x50492c[_0x1943e2(0x254)]=Object['create'](_0x5846ab),_0x50492c;},_0x4f7f44[_0x1623a4(0x209)]=function(_0x261bfe){return{'__await':_0x261bfe};},_0x5cfb79(_0x1655b1[_0x1623a4(0x254)]),_0x36be0b(_0x1655b1['prototype'],_0x1eb518,function(){return this;}),_0x4f7f44[_0x1623a4(0x269)]=_0x1655b1,_0x4f7f44[_0x1623a4(0x1e9)]=function(_0x4a7dfe,_0x3c9e3a,_0x1800a5,_0x1c578b,_0x128d68){var _0xc31a61=_0x1623a4;void 0x0===_0x128d68&&(_0x128d68=Promise);var _0x4f7cea=new _0x1655b1(_0x4043c1(_0x4a7dfe,_0x3c9e3a,_0x1800a5,_0x1c578b),_0x128d68);return _0x4f7f44[_0xc31a61(0x21a)](_0x3c9e3a)?_0x4f7cea:_0x4f7cea[_0xc31a61(0x1f1)]()['then'](function(_0xa1bde0){var _0x22e58e=_0xc31a61;return _0xa1bde0['done']?_0xa1bde0[_0x22e58e(0x285)]:_0x4f7cea[_0x22e58e(0x1f1)]();});},_0x5cfb79(_0x5846ab),_0x36be0b(_0x5846ab,_0x2ea2f8,_0x1623a4(0x236)),_0x36be0b(_0x5846ab,_0x32afad,function(){return this;}),_0x36be0b(_0x5846ab,_0x1623a4(0x240),function(){return'[object\x20Generator]';}),_0x4f7f44['keys']=function(_0x162b3c){var _0x48a507=_0x1623a4,_0x135195=Object(_0x162b3c),_0x472e00=[];for(var _0x19a092 in _0x135195)_0x472e00[_0x48a507(0x26f)](_0x19a092);return _0x472e00[_0x48a507(0x204)](),function _0x45cc65(){var _0x1da455=_0x48a507;for(;_0x472e00['length'];){var _0x4f7a72=_0x472e00[_0x1da455(0x29e)]();if(_0x4f7a72 in _0x135195)return _0x45cc65['value']=_0x4f7a72,_0x45cc65[_0x1da455(0x1ff)]=!0x1,_0x45cc65;}return _0x45cc65[_0x1da455(0x1ff)]=!0x0,_0x45cc65;};},_0x4f7f44[_0x1623a4(0x251)]=_0x23775c,_0x4e26b1['prototype']={'constructor':_0x4e26b1,'reset':function _0x3da446(_0x1f0ffa){var _0xce7c3f=_0x1623a4;if(this[_0xce7c3f(0x22c)]=0x0,this[_0xce7c3f(0x1f1)]=0x0,this[_0xce7c3f(0x1dc)]=this['_sent']=_0x5a31de,this[_0xce7c3f(0x1ff)]=!0x1,this[_0xce7c3f(0x249)]=null,this[_0xce7c3f(0x1f0)]=_0xce7c3f(0x1f1),this['arg']=_0x5a31de,this['tryEntries']['forEach'](_0x1ef242),!_0x1f0ffa){for(var _0x3e3796 in this)'t'===_0x3e3796['charAt'](0x0)&&_0x1663d5['call'](this,_0x3e3796)&&!isNaN(+_0x3e3796[_0xce7c3f(0x233)](0x1))&&(this[_0x3e3796]=_0x5a31de);}},'stop':function _0x4a1f36(){var _0x31f0b7=_0x1623a4;this['done']=!0x0;var _0x4d3bca=this['tryEntries'][0x0]['completion'];if(_0x31f0b7(0x263)===_0x4d3bca['type'])throw _0x4d3bca[_0x31f0b7(0x234)];return this['rval'];},'dispatchException':function _0xbb2c73(_0x572ce3){var _0x482b0c=_0x1623a4;if(this['done'])throw _0x572ce3;var _0x24bc3a=this;function _0x35aa1a(_0x911665,_0x4c0211){var _0x399bcd=_0x4477;return _0x97821a['type']=_0x399bcd(0x263),_0x97821a[_0x399bcd(0x234)]=_0x572ce3,_0x24bc3a[_0x399bcd(0x1f1)]=_0x911665,_0x4c0211&&(_0x24bc3a[_0x399bcd(0x1f0)]='next',_0x24bc3a[_0x399bcd(0x234)]=_0x5a31de),!!_0x4c0211;}for(var _0x429ec5=this[_0x482b0c(0x21d)]['length']-0x1;_0x429ec5>=0x0;--_0x429ec5){var _0x4e3588=this[_0x482b0c(0x21d)][_0x429ec5],_0x97821a=_0x4e3588['completion'];if('root'===_0x4e3588['tryLoc'])return _0x35aa1a('end');if(_0x4e3588[_0x482b0c(0x26a)]<=this[_0x482b0c(0x22c)]){var _0x18d721=_0x1663d5['call'](_0x4e3588,_0x482b0c(0x1db)),_0x2b7ffc=_0x1663d5['call'](_0x4e3588,'finallyLoc');if(_0x18d721&&_0x2b7ffc){if(this['prev']<_0x4e3588[_0x482b0c(0x1db)])return _0x35aa1a(_0x4e3588['catchLoc'],!0x0);if(this['prev']<_0x4e3588[_0x482b0c(0x265)])return _0x35aa1a(_0x4e3588[_0x482b0c(0x265)]);}else{if(_0x18d721){if(this[_0x482b0c(0x22c)]<_0x4e3588['catchLoc'])return _0x35aa1a(_0x4e3588[_0x482b0c(0x1db)],!0x0);}else{if(!_0x2b7ffc)throw new Error('try\x20statement\x20without\x20catch\x20or\x20finally');if(this['prev']<_0x4e3588['finallyLoc'])return _0x35aa1a(_0x4e3588['finallyLoc']);}}}}},'abrupt':function _0x241da7(_0x583a0d,_0x4f9c2f){var _0x577929=_0x1623a4;for(var _0x1271a2=this['tryEntries'][_0x577929(0x242)]-0x1;_0x1271a2>=0x0;--_0x1271a2){var _0x21b67b=this['tryEntries'][_0x1271a2];if(_0x21b67b[_0x577929(0x26a)]<=this['prev']&&_0x1663d5[_0x577929(0x1eb)](_0x21b67b,'finallyLoc')&&this[_0x577929(0x22c)]<_0x21b67b[_0x577929(0x265)]){var _0x569a6a=_0x21b67b;break;}}_0x569a6a&&('break'===_0x583a0d||'continue'===_0x583a0d)&&_0x569a6a[_0x577929(0x26a)]<=_0x4f9c2f&&_0x4f9c2f<=_0x569a6a[_0x577929(0x265)]&&(_0x569a6a=null);var _0x12c98a=_0x569a6a?_0x569a6a['completion']:{};return _0x12c98a['type']=_0x583a0d,_0x12c98a['arg']=_0x4f9c2f,_0x569a6a?(this[_0x577929(0x1f0)]=_0x577929(0x1f1),this['next']=_0x569a6a[_0x577929(0x265)],_0x5c207e):this[_0x577929(0x26d)](_0x12c98a);},'complete':function _0x224e70(_0x4f6e03,_0x1ae491){var _0x22619a=_0x1623a4;if(_0x22619a(0x263)===_0x4f6e03[_0x22619a(0x1d9)])throw _0x4f6e03[_0x22619a(0x234)];return'break'===_0x4f6e03[_0x22619a(0x1d9)]||'continue'===_0x4f6e03[_0x22619a(0x1d9)]?this[_0x22619a(0x1f1)]=_0x4f6e03['arg']:'return'===_0x4f6e03[_0x22619a(0x1d9)]?(this[_0x22619a(0x237)]=this['arg']=_0x4f6e03['arg'],this['method']='return',this[_0x22619a(0x1f1)]='end'):'normal'===_0x4f6e03['type']&&_0x1ae491&&(this['next']=_0x1ae491),_0x5c207e;},'finish':function _0x7ff39f(_0x15f16a){var _0x45d019=_0x1623a4;for(var _0x264481=this[_0x45d019(0x21d)]['length']-0x1;_0x264481>=0x0;--_0x264481){var _0x26bb66=this['tryEntries'][_0x264481];if(_0x26bb66['finallyLoc']===_0x15f16a)return this[_0x45d019(0x26d)](_0x26bb66['completion'],_0x26bb66['afterLoc']),_0x1ef242(_0x26bb66),_0x5c207e;}},'catch':function _0x6dbe74(_0x2c0930){var _0x22feac=_0x1623a4;for(var _0x1cfa70=this[_0x22feac(0x21d)][_0x22feac(0x242)]-0x1;_0x1cfa70>=0x0;--_0x1cfa70){var _0x551add=this['tryEntries'][_0x1cfa70];if(_0x551add[_0x22feac(0x26a)]===_0x2c0930){var _0x11cda7=_0x551add['completion'];if(_0x22feac(0x263)===_0x11cda7['type']){var _0x86b9e5=_0x11cda7['arg'];_0x1ef242(_0x551add);}return _0x86b9e5;}}throw new Error(_0x22feac(0x230));},'delegateYield':function _0x1b4146(_0x1328fc,_0x438fd8,_0x3064b2){var _0x39d129=_0x1623a4;return this['delegate']={'iterator':_0x23775c(_0x1328fc),'resultName':_0x438fd8,'nextLoc':_0x3064b2},_0x39d129(0x1f1)===this[_0x39d129(0x1f0)]&&(this[_0x39d129(0x234)]=_0x5a31de),_0x5c207e;}},_0x4f7f44;}function ownKeys(_0xc0adf2,_0x227831){var _0xa30fb1=_0x4477,_0x1308dc=Object['keys'](_0xc0adf2);if(Object['getOwnPropertySymbols']){var _0x176ea3=Object['getOwnPropertySymbols'](_0xc0adf2);_0x227831&&(_0x176ea3=_0x176ea3[_0xa30fb1(0x281)](function(_0x41bf09){return Object['getOwnPropertyDescriptor'](_0xc0adf2,_0x41bf09)['enumerable'];})),_0x1308dc['push'][_0xa30fb1(0x298)](_0x1308dc,_0x176ea3);}return _0x1308dc;}function _objectSpread(_0x177a39){var _0x39882a=_0x4477;for(var _0x4f9e05=0x1;_0x4f9e05<arguments[_0x39882a(0x242)];_0x4f9e05++){var _0x3bb5cb=null!=arguments[_0x4f9e05]?arguments[_0x4f9e05]:{};_0x4f9e05%0x2?ownKeys(Object(_0x3bb5cb),!0x0)[_0x39882a(0x238)](function(_0x4a883e){_defineProperty(_0x177a39,_0x4a883e,_0x3bb5cb[_0x4a883e]);}):Object[_0x39882a(0x1da)]?Object[_0x39882a(0x25d)](_0x177a39,Object[_0x39882a(0x1da)](_0x3bb5cb)):ownKeys(Object(_0x3bb5cb))[_0x39882a(0x238)](function(_0x4e1ad4){var _0x58c7e3=_0x39882a;Object['defineProperty'](_0x177a39,_0x4e1ad4,Object[_0x58c7e3(0x292)](_0x3bb5cb,_0x4e1ad4));});}return _0x177a39;}function asyncGeneratorStep(_0x243b4d,_0x580ff4,_0x4b65c6,_0x1c092f,_0x5dbc57,_0x3885f7,_0x75d0c6){var _0x2ed036=_0x4477;try{var _0x57d54a=_0x243b4d[_0x3885f7](_0x75d0c6),_0x207883=_0x57d54a[_0x2ed036(0x285)];}catch(_0x23d3cd){_0x4b65c6(_0x23d3cd);return;}_0x57d54a['done']?_0x580ff4(_0x207883):Promise['resolve'](_0x207883)['then'](_0x1c092f,_0x5dbc57);}function _asyncToGenerator(_0x30c3d8){return function(){var _0x503cc9=this,_0x15e217=arguments;return new Promise(function(_0x163907,_0x5af1c7){var _0x43d57d=_0x30c3d8['apply'](_0x503cc9,_0x15e217);function _0x37cb25(_0x13ceba){var _0x168e13=_0x4477;asyncGeneratorStep(_0x43d57d,_0x163907,_0x5af1c7,_0x37cb25,_0x33dcab,_0x168e13(0x1f1),_0x13ceba);}function _0x33dcab(_0x33948e){var _0x17d82d=_0x4477;asyncGeneratorStep(_0x43d57d,_0x163907,_0x5af1c7,_0x37cb25,_0x33dcab,_0x17d82d(0x263),_0x33948e);}_0x37cb25(undefined);});};}function _classCallCheck(_0x2edc50,_0x759b6){var _0x5e0408=_0x4477;if(!(_0x2edc50 instanceof _0x759b6))throw new TypeError(_0x5e0408(0x1e3));}function _defineProperties(_0x547af4,_0x33084e){var _0x1fae9a=_0x4477;for(var _0x232ebb=0x0;_0x232ebb<_0x33084e[_0x1fae9a(0x242)];_0x232ebb++){var _0x19c285=_0x33084e[_0x232ebb];_0x19c285['enumerable']=_0x19c285[_0x1fae9a(0x1f5)]||![],_0x19c285['configurable']=!![];if('value'in _0x19c285)_0x19c285['writable']=!![];Object['defineProperty'](_0x547af4,_toPropertyKey(_0x19c285['key']),_0x19c285);}}function _createClass(_0x4e4121,_0xc12a10,_0x3ba14b){var _0x5c881e=_0x4477;if(_0xc12a10)_defineProperties(_0x4e4121[_0x5c881e(0x254)],_0xc12a10);if(_0x3ba14b)_defineProperties(_0x4e4121,_0x3ba14b);return Object[_0x5c881e(0x26c)](_0x4e4121,'prototype',{'writable':![]}),_0x4e4121;}function _0x4477(_0x1b17f8,_0x544203){_0x1b17f8=_0x1b17f8-0x1d9;var _0x466521=_0x4665();var _0x4477f4=_0x466521[_0x1b17f8];if(_0x4477['ipAOeb']===undefined){var _0x4a14f9=function(_0x2a8ed8){var _0x4a54db='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x42b3d8='',_0x58a858='';for(var _0x37e25d=0x0,_0x1e1af1,_0x1e796f,_0x355695=0x0;_0x1e796f=_0x2a8ed8['charAt'](_0x355695++);~_0x1e796f&&(_0x1e1af1=_0x37e25d%0x4?_0x1e1af1*0x40+_0x1e796f:_0x1e796f,_0x37e25d++%0x4)?_0x42b3d8+=String['fromCharCode'](0xff&_0x1e1af1>>(-0x2*_0x37e25d&0x6)):0x0){_0x1e796f=_0x4a54db['indexOf'](_0x1e796f);}for(var _0x5a31de=0x0,_0x4f7f44=_0x42b3d8['length'];_0x5a31de<_0x4f7f44;_0x5a31de++){_0x58a858+='%'+('00'+_0x42b3d8['charCodeAt'](_0x5a31de)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x58a858);};_0x4477['UUsrqt']=_0x4a14f9,_0x4477['zZTwqp']={},_0x4477['ipAOeb']=!![];}var _0x499254=_0x466521[0x0],_0x2a0b80=_0x1b17f8+_0x499254,_0x349403=_0x4477['zZTwqp'][_0x2a0b80];return!_0x349403?(_0x4477f4=_0x4477['UUsrqt'](_0x4477f4),_0x4477['zZTwqp'][_0x2a0b80]=_0x4477f4):_0x4477f4=_0x349403,_0x4477f4;}function _defineProperty(_0xb33ddd,_0x326a9f,_0x4d6da9){return _0x326a9f=_toPropertyKey(_0x326a9f),_0x326a9f in _0xb33ddd?Object['defineProperty'](_0xb33ddd,_0x326a9f,{'value':_0x4d6da9,'enumerable':!![],'configurable':!![],'writable':!![]}):_0xb33ddd[_0x326a9f]=_0x4d6da9,_0xb33ddd;}function _toPropertyKey(_0x10d72c){var _0x21b425=_0x4477,_0x48e850=_toPrimitive(_0x10d72c,_0x21b425(0x286));return _0x21b425(0x273)==_typeof(_0x48e850)?_0x48e850:String(_0x48e850);}function _toPrimitive(_0x1fe81c,_0x11e9dd){var _0x1b9554=_0x4477;if('object'!=_typeof(_0x1fe81c)||!_0x1fe81c)return _0x1fe81c;var _0x45d674=_0x1fe81c[Symbol['toPrimitive']];if(void 0x0!==_0x45d674){var _0x1fada0=_0x45d674[_0x1b9554(0x1eb)](_0x1fe81c,_0x11e9dd||_0x1b9554(0x211));if('object'!=_typeof(_0x1fada0))return _0x1fada0;throw new TypeError('@@toPrimitive\x20must\x20return\x20a\x20primitive\x20value.');}return('string'===_0x11e9dd?String:Number)(_0x1fe81c);}import*as _0x42b3d8 from'deeptwins-cesium';import*as _0x58a858 from'../constant';import _0x37e25d from'../graphicLayer/ModelEntity';import{lineClampToGroundSplit}from'../tool/common';import{cartesian3ToLngLatAlt,lngLatAltToCartesian3}from'../tool/utils';var ModelRoamHistory=(function(){var _0x53d1de=_0x4477;function _0x2de0a0(_0x503d13,_0x4eafe0,_0x2a441f){var _0x191c68=_0x4477;_classCallCheck(this,_0x2de0a0),_defineProperty(this,'_mapContext',void 0x0),_defineProperty(this,'polylineLayer',void 0x0),_defineProperty(this,_0x191c68(0x200),void 0x0),_defineProperty(this,'modelLayer',void 0x0),_defineProperty(this,_0x191c68(0x27a),void 0x0),_defineProperty(this,_0x191c68(0x25c),null),_defineProperty(this,'follow',null),_defineProperty(this,'status',_0x191c68(0x1f2)),_defineProperty(this,_0x191c68(0x241),null),_defineProperty(this,_0x191c68(0x283),null),_defineProperty(this,_0x191c68(0x270),null),_defineProperty(this,_0x191c68(0x21e),void 0x0),_defineProperty(this,_0x191c68(0x27c),[]),_defineProperty(this,_0x191c68(0x294),null),_defineProperty(this,'_heading',null),_defineProperty(this,'_listenRunning',null),_defineProperty(this,_0x191c68(0x1f9),_0x42b3d8[_0x191c68(0x257)][_0x191c68(0x20e)]),_defineProperty(this,'_initPromise',void 0x0),_defineProperty(this,_0x191c68(0x210),![]),_defineProperty(this,'_pendingStart',![]),_defineProperty(this,_0x191c68(0x22b),![]),_defineProperty(this,'_modelSourceId',null),_defineProperty(this,_0x191c68(0x22e),[]),_defineProperty(this,'firstCameraSettings',{'distance':0x0,'pitch':-0x2d}),_defineProperty(this,'thirdPersonSettings',{'distance':0x1f4,'pitch':-0x2d});if(!(_0x503d13!==null&&_0x503d13!==void 0x0&&_0x503d13[_0x191c68(0x1e2)]))throw new Error(_0x191c68(0x201));var _0x320896=_0x2a441f||{},_0x392215=_0x320896[_0x191c68(0x26d)],_0x5b953a=_0x320896[_0x191c68(0x216)],_0x585e1a=_0x320896['onRunning'];_0x392215&&(this[_0x191c68(0x283)]=_0x392215),_0x5b953a&&(this[_0x191c68(0x270)]=_0x5b953a),_0x585e1a&&(this[_0x191c68(0x241)]=_0x585e1a),this[_0x191c68(0x1e2)]=_0x503d13['_mapContext'],this[_0x191c68(0x27c)]=this[_0x191c68(0x1e0)](_0x4eafe0),this[_0x191c68(0x1ed)]=this[_0x191c68(0x29d)](_0x2a441f),this['_initPromise']['catch'](function(){return undefined;});}return _createClass(_0x2de0a0,[{'key':'getMap','value':function _0x1376f3(){var _0x56a3b2=_0x4477;return this[_0x56a3b2(0x1e2)]&&this['_mapContext']['getMap']();}},{'key':_0x53d1de(0x252),'value':function _0x4697d4(){return this['_isReady'];}},{'key':_0x53d1de(0x1f4),'value':function _0x5077a2(){return this['status'];}},{'key':'_init','value':(function(){var _0x573bd2=_asyncToGenerator(_regeneratorRuntime()['mark'](function _0x53b44f(_0x504b26){var _0x2e2e4d,_0x1bc88e,_0x5a74f8,_0x7c487c,_0x2e44fd,_0x233932,_0x1ae8e6,_0x2fa1d2,_0x3df541,_0x430d55,_0x3dd192,_0x866dee,_0x29aa34,_0x2a20a1,_0x36027d,_0x5e9e96,_0x2c00aa,_0x13f87d,_0xd48b98,_0x457ac5,_0x4387fc,_0x360bc0,_0x37d8a8;return _regeneratorRuntime()['wrap'](function _0x4a6700(_0x2cd596){var _0x259eaa=_0x4477;while(0x1)switch(_0x2cd596['prev']=_0x2cd596['next']){case 0x0:_0x1bc88e=_0x504b26||{},_0x5a74f8=_0x1bc88e['polyline'],_0x7c487c=_0x1bc88e[_0x259eaa(0x1de)],_0x2e44fd=_0x7c487c===void 0x0?{}:_0x7c487c,_0x233932=_0x1bc88e['multiplier'],_0x1ae8e6=_0x233932===void 0x0?0x1:_0x233932,_0x2fa1d2=_0x1bc88e[_0x259eaa(0x247)],_0x3df541=_0x2fa1d2===void 0x0?_0x42b3d8['ClockRange'][_0x259eaa(0x20e)]:_0x2fa1d2,_0x430d55=_0x1bc88e['flyTo'],_0x3dd192=_0x430d55===void 0x0?![]:_0x430d55,_0x866dee=_0x1bc88e['clampToGround'],_0x29aa34=_0x866dee===void 0x0?![]:_0x866dee,_0x2a20a1=_0x1bc88e[_0x259eaa(0x1fe)],_0x36027d=_0x2a20a1===void 0x0?0x32:_0x2a20a1,this['_clockRange']=_0x3df541,_0x5e9e96=this['getMap'](),_0x2c00aa=_0x42b3d8['JulianDate'][_0x259eaa(0x264)](this['_positions'][0x0]['time']),_0x13f87d=_0x42b3d8[_0x259eaa(0x23a)][_0x259eaa(0x264)](this[_0x259eaa(0x27c)][this['_positions'][_0x259eaa(0x242)]-0x1][_0x259eaa(0x24b)]),this[_0x259eaa(0x229)](_0x5a74f8,_0x29aa34),this[_0x259eaa(0x200)]=(_0x2e2e4d=this['polylineLayer'])===null||_0x2e2e4d===void 0x0||(_0x2e2e4d=_0x2e2e4d['layers'])===null||_0x2e2e4d===void 0x0||(_0x2e2e4d=_0x2e2e4d[0x0])===null||_0x2e2e4d===void 0x0?void 0x0:_0x2e2e4d['entity'];_0x3dd192&&((_0xd48b98=this[_0x259eaa(0x1fc)])===null||_0xd48b98===void 0x0||_0xd48b98[_0x259eaa(0x29a)]());this['_configureClock'](_0x2c00aa,_0x13f87d,_0x1ae8e6,_0x3df541),this[_0x259eaa(0x20b)](),_0x2cd596['prev']=0xa,_0x2cd596['next']=0xd;return this[_0x259eaa(0x1e7)]({'clampToGround':_0x29aa34,'splitNum':_0x36027d});case 0xd:_0x4387fc=_0x2cd596[_0x259eaa(0x1dc)];if(!(this['status']===_0x259eaa(0x21c))){_0x2cd596[_0x259eaa(0x1f1)]=0x10;break;}return _0x2cd596[_0x259eaa(0x23f)](_0x259eaa(0x253));case 0x10:this[_0x259eaa(0x25c)]=new _0x42b3d8['SampledPositionProperty'](),this['_samples']=_0x4387fc['slice']()[_0x259eaa(0x262)](function(_0x6abaf3,_0x49f9c5){var _0x378ae3=_0x259eaa;return _0x6abaf3[_0x378ae3(0x24b)]['getTime']()-_0x49f9c5[_0x378ae3(0x24b)]['getTime']();}),this['_appendSamples'](this['_samples']),_0x360bc0=_objectSpread(_objectSpread({},_0x2e44fd||{}),_0x29aa34?{'heightReference':_0x42b3d8['HeightReference'][_0x259eaa(0x259)]}:{}),this['modelEntity']=new _0x42b3d8[(_0x259eaa(0x1e6))]({'availability':new _0x42b3d8[(_0x259eaa(0x226))]([new _0x42b3d8['TimeInterval']({'start':_0x2c00aa,'stop':_0x13f87d})]),'orientation':new _0x42b3d8[(_0x259eaa(0x27f))](this[_0x259eaa(0x25c)]),'position':this['positionProperty'],'model':_0x37e25d['handleOptions'](_0x360bc0)}),this['modelLayer']=_0x5e9e96['addCustomSourceToGraphicLayer'](this[_0x259eaa(0x27a)]['position'],{'type':_0x259eaa(0x1de),'entity':this['modelEntity']}),this[_0x259eaa(0x276)]=((_0x457ac5=this[_0x259eaa(0x248)])===null||_0x457ac5===void 0x0?void 0x0:_0x457ac5[_0x259eaa(0x288)])||null,this['status']='stop',this[_0x259eaa(0x210)]=!![],_0x37d8a8=this[_0x259eaa(0x25c)][_0x259eaa(0x21f)](_0x5e9e96['clock']['currentTime']);_0x37d8a8&&(this['_currentPosition']=_0x37d8a8);this[_0x259eaa(0x279)]&&(this['_pendingStart']=![],this['start']());_0x2cd596['next']=0x22;break;case 0x1e:_0x2cd596[_0x259eaa(0x22c)]=0x1e,_0x2cd596['t0']=_0x2cd596[_0x259eaa(0x208)](0xa);this['status']!==_0x259eaa(0x21c)&&(this['status']='error');throw _0x2cd596['t0'];case 0x22:case'end':return _0x2cd596['stop']();}},_0x53b44f,this,[[0xa,0x1e]]);}));function _0x2a4c3f(_0x333c3f){var _0x94014=_0x4477;return _0x573bd2[_0x94014(0x298)](this,arguments);}return _0x2a4c3f;}())},{'key':_0x53d1de(0x1e0),'value':function _0x2906b5(_0x2d5ad9){var _0x2fb7fc=_0x53d1de;if(!Array[_0x2fb7fc(0x225)](_0x2d5ad9)||_0x2d5ad9[_0x2fb7fc(0x242)]<0x2)throw new Error(_0x2fb7fc(0x221));var _0x502337=_0x2d5ad9['map'](function(_0xe3ad86,_0x1928b5){var _0xfb69=_0x2fb7fc,_0x529380=(_0xe3ad86===null||_0xe3ad86===void 0x0?void 0x0:_0xe3ad86['time'])instanceof Date?_0xe3ad86[_0xfb69(0x24b)]:new Date(_0xe3ad86===null||_0xe3ad86===void 0x0?void 0x0:_0xe3ad86['time']);if(typeof(_0xe3ad86===null||_0xe3ad86===void 0x0?void 0x0:_0xe3ad86['lng'])!=='number'||typeof(_0xe3ad86===null||_0xe3ad86===void 0x0?void 0x0:_0xe3ad86[_0xfb69(0x26b)])!=='number'||typeof(_0xe3ad86===null||_0xe3ad86===void 0x0?void 0x0:_0xe3ad86[_0xfb69(0x202)])!=='number'||Number['isNaN'](_0x529380[_0xfb69(0x1e8)]()))throw new Error('invalid\x20position\x20data\x20at\x20index\x20'['concat'](_0x1928b5));return{'lng':_0xe3ad86[_0xfb69(0x1df)],'lat':_0xe3ad86['lat'],'alt':_0xe3ad86[_0xfb69(0x202)],'time':_0x529380};});for(var _0xdea921=0x1;_0xdea921<_0x502337[_0x2fb7fc(0x242)];_0xdea921++){if(_0x502337[_0xdea921][_0x2fb7fc(0x24b)]['getTime']()<=_0x502337[_0xdea921-0x1]['time'][_0x2fb7fc(0x1e8)]())throw new Error(_0x2fb7fc(0x255));}return _0x502337;}},{'key':'_createPolylineLayer','value':function _0x2e982b(_0x5e176e,_0x32de33){var _0x2beb15=_0x53d1de,_0x513f3f={'type':_0x2beb15(0x1e1),'features':[{'type':'Feature','geometry':{'type':_0x2beb15(0x219),'coordinates':this['_positions'][_0x2beb15(0x23d)](function(_0x51371c){var _0x599ca0=_0x2beb15;return[_0x51371c[_0x599ca0(0x1df)],_0x51371c['lat'],_0x51371c[_0x599ca0(0x202)]];})}}]};this[_0x2beb15(0x1fc)]=this[_0x2beb15(0x27d)]()['addGraphicLayer'](_0x513f3f,{'type':'polyline','style':_objectSpread(_objectSpread({},_0x5e176e),{},{'clampToGround':_0x32de33})});}},{'key':_0x53d1de(0x20d),'value':function _0x419402(_0x3b4759,_0x32ac7c,_0x4c2e02,_0x5a8a3c){var _0x350d5c=_0x53d1de,_0x4efaba=this['getMap']();_0x4efaba['clock']['startTime']=_0x3b4759[_0x350d5c(0x243)](),_0x4efaba['clock'][_0x350d5c(0x268)]=_0x32ac7c[_0x350d5c(0x243)](),_0x4efaba[_0x350d5c(0x287)]['currentTime']=_0x3b4759['clone'](),_0x4efaba['clock']['multiplier']=_0x4c2e02,_0x4efaba['clock']['clockRange']=_0x5a8a3c,_0x4efaba['clock'][_0x350d5c(0x20a)]=![];}},{'key':_0x53d1de(0x20b),'value':function _0x479cf6(){var _0x4b4d02=_0x53d1de,_0x1f9fad=this;this['_listenRunning']=function(){var _0x14f125=_0x4477;if(!_0x1f9fad['_isReady']||!_0x1f9fad['positionProperty']||_0x1f9fad['status']===_0x14f125(0x21c)||_0x1f9fad['status']==='error')return;var _0x2e9456=_0x1f9fad['getMap'](),_0x1260de=_0x2e9456[_0x14f125(0x287)],_0x1c37e1=_0x1260de[_0x14f125(0x218)],_0x2acba4=_0x42b3d8[_0x14f125(0x23a)][_0x14f125(0x1f8)](_0x1c37e1,_0x1260de[_0x14f125(0x268)])>=0x0;if(_0x2acba4&&!_0x1f9fad[_0x14f125(0x22b)])_0x1f9fad[_0x14f125(0x22b)]=!![],_0x1f9fad['_eventComplete']&&_0x1f9fad[_0x14f125(0x21b)]===_0x14f125(0x25e)&&_0x1f9fad['_eventComplete'](),_0x1f9fad['_clockRange']!==_0x42b3d8[_0x14f125(0x257)]['LOOP_STOP']&&(_0x1f9fad[_0x14f125(0x21b)]=_0x14f125(0x278),_0x1260de['shouldAnimate']=![]);else!_0x2acba4&&(_0x1f9fad[_0x14f125(0x22b)]=![]);if(!_0x1260de[_0x14f125(0x20a)])return;var _0x1f33eb=_0x1f9fad['positionProperty'][_0x14f125(0x21f)](_0x1c37e1);if(!_0x1f33eb)return;_0x1f9fad['_currentPosition']=_0x1f33eb;var _0xb7b8cd=_0x1f9fad[_0x14f125(0x296)](_0x1c37e1);_0xb7b8cd&&_0x1f9fad['_updateHeading'](_0x1f33eb,_0xb7b8cd),_0x1f9fad[_0x14f125(0x241)]&&_0x1f9fad['_eventRunning'](_objectSpread(_objectSpread({},cartesian3ToLngLatAlt(_0x1f33eb)),{},{'time':_0x42b3d8['JulianDate']['toDate'](_0x1c37e1)}));},this[_0x4b4d02(0x21e)]=this['getMap']()['on'](_0x58a858[_0x4b4d02(0x22d)]['PRE_UPDATE'],this[_0x4b4d02(0x284)]);}},{'key':'_buildPositionSamples','value':(function(){var _0x4ac9bc=_0x53d1de,_0x504b81=_asyncToGenerator(_regeneratorRuntime()[_0x4ac9bc(0x203)](function _0x523c47(_0x41e0f8){var _0x3e6e98=this,_0x3a972c,_0x1b74de,_0x44eec1,_0x253c2f,_0x203b0e;return _regeneratorRuntime()['wrap'](function _0x46fe11(_0x441399){var _0x58c515=_0x4477;while(0x1)switch(_0x441399['prev']=_0x441399['next']){case 0x0:_0x3a972c=_0x41e0f8[_0x58c515(0x29b)],_0x1b74de=_0x41e0f8['splitNum'];if(_0x3a972c){_0x441399[_0x58c515(0x1f1)]=0x3;break;}return _0x441399[_0x58c515(0x23f)](_0x58c515(0x253),this[_0x58c515(0x27c)]['map'](function(_0x5a419c){var _0x4ef374=_0x58c515;return{'time':_0x5a419c[_0x4ef374(0x24b)],'position':lngLatAltToCartesian3(_0x5a419c['lng'],_0x5a419c[_0x4ef374(0x26b)],_0x5a419c['alt'])};}));case 0x3:_0x44eec1=this['getMap'](),_0x253c2f=this[_0x58c515(0x27c)][_0x58c515(0x233)](0x0,-0x1)['map'](function(_0x31f9ab,_0x1b9f0b){var _0x1639c8=_0x58c515,_0x41d6a6=_0x3e6e98[_0x1639c8(0x27c)][_0x1b9f0b+0x1],_0x515919=lineClampToGroundSplit({'map':_0x44eec1,'pos1':lngLatAltToCartesian3(_0x31f9ab['lng'],_0x31f9ab['lat'],_0x31f9ab[_0x1639c8(0x202)]),'pos2':lngLatAltToCartesian3(_0x41d6a6[_0x1639c8(0x1df)],_0x41d6a6['lat'],_0x41d6a6['alt']),'splitNum':_0x1b74de});if(!_0x515919['length'])return Promise['resolve']({'index':_0x1b9f0b,'samples':_0x3e6e98['_buildRawSegmentSamples'](_0x31f9ab,_0x41d6a6)});var _0x4ffa15=_0x515919[_0x1639c8(0x23d)](function(_0x59b3e2){var _0x414c70=_0x1639c8;return _0x42b3d8['Cartographic'][_0x414c70(0x20c)](_0x59b3e2);});return _0x42b3d8[_0x1639c8(0x227)](_0x44eec1['terrainProvider'],_0x4ffa15)[_0x1639c8(0x22f)](function(_0xe77f28){var _0x3b5e62=_0x1639c8;return{'index':_0x1b9f0b,'samples':_0x3e6e98[_0x3b5e62(0x1fb)](_0x31f9ab,_0x41d6a6,_0xe77f28)};});}),_0x441399['next']=0x7;return Promise[_0x58c515(0x1ef)](_0x253c2f);case 0x7:_0x203b0e=_0x441399['sent'];return _0x441399['abrupt']('return',_0x203b0e[_0x58c515(0x262)](function(_0x4ebbf8,_0x47ebf5){var _0x112d69=_0x58c515;return _0x4ebbf8[_0x112d69(0x24f)]-_0x47ebf5['index'];})[_0x58c515(0x213)](function(_0x43abf3,_0x4d02a7){var _0x18425e=_0x58c515;return _0x43abf3['concat'](_0x4d02a7[_0x18425e(0x223)]);},[]));case 0x9:case'end':return _0x441399['stop']();}},_0x523c47,this);}));function _0x2ee910(_0x11bbff){return _0x504b81['apply'](this,arguments);}return _0x2ee910;}())},{'key':_0x53d1de(0x22a),'value':function _0x55c5f6(_0x6353b8,_0x422837){var _0x5a00ca=_0x53d1de;return[{'time':_0x6353b8['time'],'position':lngLatAltToCartesian3(_0x6353b8[_0x5a00ca(0x1df)],_0x6353b8['lat'],_0x6353b8['alt'])},{'time':_0x422837['time'],'position':lngLatAltToCartesian3(_0x422837['lng'],_0x422837[_0x5a00ca(0x26b)],_0x422837[_0x5a00ca(0x202)])}];}},{'key':_0x53d1de(0x1fb),'value':function _0x509ca8(_0x5a896f,_0x200e11,_0x1fd098){var _0x128d59=_0x53d1de;if(!_0x1fd098['length'])return this['_buildRawSegmentSamples'](_0x5a896f,_0x200e11);if(_0x1fd098[_0x128d59(0x242)]===0x1)return this[_0x128d59(0x22a)](_0x5a896f,_0x200e11);var _0x4279bf=_0x5a896f[_0x128d59(0x24b)]['getTime'](),_0x2e8ea5=_0x200e11['time'][_0x128d59(0x1e8)](),_0x48f796=_0x2e8ea5-_0x4279bf,_0x5cd975=_0x48f796/(_0x1fd098['length']-0x1);return _0x1fd098[_0x128d59(0x23d)](function(_0x3f6d24,_0x529b2e){var _0x4a55f9=_0x128d59;return{'time':new Date(_0x4279bf+_0x529b2e*_0x5cd975),'position':_0x42b3d8[_0x4a55f9(0x215)][_0x4a55f9(0x25f)](_0x3f6d24['longitude'],_0x3f6d24['latitude'],_0x3f6d24['height'])};});}},{'key':_0x53d1de(0x1ea),'value':function _0x276a28(_0x1372cf){var _0x2387b8=_0x53d1de,_0xec175a=this;if(!this[_0x2387b8(0x25c)])return;var _0x47ef6a=null;_0x1372cf['forEach'](function(_0x138a24){var _0x54883a=_0x2387b8,_0x2dd73f;if(_0xec175a['_shouldSkipSample'](_0x138a24,_0x47ef6a))return;(_0x2dd73f=_0xec175a[_0x54883a(0x25c)])===null||_0x2dd73f===void 0x0||_0x2dd73f[_0x54883a(0x250)](_0x42b3d8['JulianDate'][_0x54883a(0x264)](_0x138a24[_0x54883a(0x24b)]),_0x138a24[_0x54883a(0x222)]),_0x47ef6a=_0x138a24;});}},{'key':_0x53d1de(0x258),'value':function _0x20eef5(_0x50f521,_0x14b7fb){var _0x5e2749=_0x53d1de;if(!_0x14b7fb)return![];return _0x14b7fb['time']['getTime']()===_0x50f521['time'][_0x5e2749(0x1e8)]()&&_0x42b3d8[_0x5e2749(0x215)]['equals'](_0x14b7fb[_0x5e2749(0x222)],_0x50f521[_0x5e2749(0x222)]);}},{'key':_0x53d1de(0x296),'value':function _0x5692c9(_0x5a7d0b){var _0x5027cb=_0x53d1de;if(!this['positionProperty']||!this[_0x5027cb(0x22e)]['length'])return null;var _0x27d28a=_0x42b3d8[_0x5027cb(0x23a)]['toDate'](_0x5a7d0b)['getTime']();for(var _0x554e52=this['_samples']['length']-0x1;_0x554e52>=0x0;_0x554e52--){var _0x296fac=this['_samples'][_0x554e52];if(_0x296fac['time']['getTime']()>=_0x27d28a)continue;return _0x296fac['position'];}var _0xc8015=_0x42b3d8['JulianDate']['addSeconds'](_0x5a7d0b,-0.01,new _0x42b3d8['JulianDate']());return this[_0x5027cb(0x25c)]['getValue'](_0xc8015)||null;}},{'key':'_updateHeading','value':function _0x449f10(_0xb28325,_0x4c3d62){var _0x5928aa=_0x53d1de,_0x1f7861=_0x42b3d8[_0x5928aa(0x1fa)][_0x5928aa(0x20c)](_0xb28325),_0x372df3=_0x42b3d8[_0x5928aa(0x1fa)]['fromCartesian'](_0x4c3d62),_0x222250=_0x42b3d8[_0x5928aa(0x215)]['fromRadians'](_0x372df3[_0x5928aa(0x206)],_0x372df3['latitude'],_0x372df3['height']),_0x27b26b=_0x42b3d8['Cartesian3']['fromRadians'](_0x1f7861[_0x5928aa(0x206)],_0x1f7861[_0x5928aa(0x261)],_0x1f7861[_0x5928aa(0x289)]),_0x5a7e0e=_0x42b3d8[_0x5928aa(0x214)][_0x5928aa(0x1f7)](_0x222250),_0x5926bb=_0x42b3d8['Matrix4']['inverse'](_0x5a7e0e,new _0x42b3d8['Matrix4']()),_0x5bfcf3=_0x42b3d8['Cartesian3']['subtract'](_0x27b26b,_0x222250,new _0x42b3d8[(_0x5928aa(0x215))]());if(_0x42b3d8['Cartesian3'][_0x5928aa(0x266)](_0x5bfcf3)<=_0x42b3d8[_0x5928aa(0x220)]['EPSILON12'])return;var _0x10490b=_0x42b3d8['Matrix4'][_0x5928aa(0x27b)](_0x5926bb,_0x5bfcf3,new _0x42b3d8['Cartesian3']()),_0xe36be5=_0x42b3d8[_0x5928aa(0x220)]['zeroToTwoPi'](Math['atan2'](_0x10490b['x'],_0x10490b['y']));this['_heading']=_0xe36be5,this[_0x5928aa(0x207)](_0xb28325,_0xe36be5);}},{'key':'_applyFollowView','value':function _0xa2db85(_0x3d102d,_0x4acdab){var _0x5ccf6c=_0x53d1de;if(this[_0x5ccf6c(0x25b)]==='first')this['updateFirstPersonView'](_0x3d102d,_0x4acdab);else this[_0x5ccf6c(0x25b)]==='third'&&this[_0x5ccf6c(0x299)](_0x3d102d,_0x4acdab);}},{'key':'start','value':function _0x1f9f69(){var _0x528f39=_0x53d1de;if(this[_0x528f39(0x21b)]==='destroy'||this[_0x528f39(0x21b)]===_0x528f39(0x29c))return;if(!this[_0x528f39(0x210)]){this['_pendingStart']=!![];return;}_0x42b3d8['JulianDate'][_0x528f39(0x1f8)](this['getMap']()['clock'][_0x528f39(0x218)],this['getMap']()[_0x528f39(0x287)]['stopTime'])>=0x0&&(this['getMap']()[_0x528f39(0x287)][_0x528f39(0x218)]=this[_0x528f39(0x27d)]()[_0x528f39(0x287)]['startTime'][_0x528f39(0x243)]()),this[_0x528f39(0x21b)]='running',this['_hasReachedStopTime']=![],this[_0x528f39(0x27d)]()[_0x528f39(0x287)]['shouldAnimate']=!![];}},{'key':_0x53d1de(0x1e5),'value':function _0x4697c7(){var _0x2391e5=_0x53d1de;if(this[_0x2391e5(0x21b)]!=='running')return;this['status']=_0x2391e5(0x1e5),this[_0x2391e5(0x27d)]()['clock']['shouldAnimate']=![];}},{'key':'proceed','value':function _0x3bae8d(){var _0x11726a=_0x53d1de;if(this['status']==='destroy'||this['status']===_0x11726a(0x29c))return;if(!this[_0x11726a(0x210)]){this[_0x11726a(0x279)]=!![];return;}if(this[_0x11726a(0x21b)]!=='pause'&&this[_0x11726a(0x21b)]!=='stop'&&this[_0x11726a(0x21b)]!=='ready')return;this[_0x11726a(0x21b)]=_0x11726a(0x25e),this[_0x11726a(0x22b)]=![],this[_0x11726a(0x27d)]()[_0x11726a(0x287)]['shouldAnimate']=!![];}},{'key':'stop','value':function _0x1fe80a(){var _0x4b4a41=_0x53d1de;if(this['status']===_0x4b4a41(0x21c)||this[_0x4b4a41(0x21b)]===_0x4b4a41(0x29c))return;this['_pendingStart']=![],this['status']='stop',this[_0x4b4a41(0x27d)]()['clock'][_0x4b4a41(0x20a)]=![],this['getMap']()['clock'][_0x4b4a41(0x218)]=_0x42b3d8['JulianDate']['fromDate'](this[_0x4b4a41(0x27c)][0x0]['time']);if(this['positionProperty']){var _0xf323f2=this['positionProperty'][_0x4b4a41(0x21f)](this['getMap']()['clock']['currentTime']);_0xf323f2&&(this['_currentPosition']=_0xf323f2,this['_heading']!=null&&this[_0x4b4a41(0x207)](_0xf323f2,this[_0x4b4a41(0x1ec)]));}this['_eventCancel']&&this['_eventCancel']();}},{'key':'setFollowFirst','value':function _0x4366b9(){var _0x4290fb=_0x53d1de,_0x13fd9a=arguments['length']>0x0&&arguments[0x0]!==undefined?arguments[0x0]:{};if(this[_0x4290fb(0x21b)]==='destroy')return;this['firstCameraSettings']=_objectSpread(_objectSpread({},this['firstCameraSettings']),_0x13fd9a),this['follow']='first',this['_currentPosition']&&this['_heading']!=null&&this[_0x4290fb(0x28b)](this['_currentPosition'],this[_0x4290fb(0x1ec)]);}},{'key':_0x53d1de(0x267),'value':function _0x49c104(){var _0x21d385=_0x53d1de,_0xc55f18=arguments['length']>0x0&&arguments[0x0]!==undefined?arguments[0x0]:{};if(this[_0x21d385(0x21b)]===_0x21d385(0x21c))return;this[_0x21d385(0x291)]=_objectSpread(_objectSpread({},this['thirdPersonSettings']),_0xc55f18),this['follow']='third',this['_currentPosition']&&this[_0x21d385(0x1ec)]!=null&&this['updateThirdPersonView'](this[_0x21d385(0x294)],this['_heading']);}},{'key':'cancelFollow','value':function _0x465d03(){if(this['status']==='destroy')return;this['follow']=null;}},{'key':_0x53d1de(0x28b),'value':function _0x3b5430(_0x413392,_0x4b1011){var _0x4fe773=_0x53d1de;if(!_0x413392||_0x4b1011==null)return;var _0x56bda8=_0x42b3d8['Math'][_0x4fe773(0x23c)](this[_0x4fe773(0x27e)]['pitch']),_0x28a3ac=0x0,_0x5a894c=new _0x42b3d8[(_0x4fe773(0x280))](_0x4b1011,_0x56bda8,_0x28a3ac),_0x15650a=_0x42b3d8[_0x4fe773(0x214)][_0x4fe773(0x274)](_0x413392,_0x5a894c,_0x42b3d8[_0x4fe773(0x277)]['WGS84'],_0x42b3d8['Transforms'][_0x4fe773(0x235)](_0x4fe773(0x246),'north')),_0x2068b5=new _0x42b3d8[(_0x4fe773(0x215))](0x0,0x1,0x0),_0x337b2c=_0x42b3d8[_0x4fe773(0x1e4)]['getMatrix3'](_0x15650a,new _0x42b3d8['Matrix3']()),_0x4e8359=_0x42b3d8['Matrix3']['multiplyByVector'](_0x337b2c,_0x2068b5,new _0x42b3d8[(_0x4fe773(0x215))]()),_0x24edc2=_0x42b3d8['Cartesian3']['multiplyByScalar'](_0x4e8359,-this[_0x4fe773(0x27e)][_0x4fe773(0x26e)],new _0x42b3d8['Cartesian3']()),_0x17b591=_0x42b3d8[_0x4fe773(0x215)]['add'](_0x413392,_0x24edc2,new _0x42b3d8['Cartesian3']());this['getMap']()[_0x4fe773(0x293)]['setView']({'destination':_0x17b591,'orientation':{'heading':_0x4b1011,'pitch':_0x56bda8,'roll':_0x28a3ac}});}},{'key':_0x53d1de(0x299),'value':function _0x4afc9c(_0x597153,_0x4e101d){var _0x5b4c45=_0x53d1de;if(!_0x597153||_0x4e101d==null)return;var _0x2e6ed5=_0x42b3d8[_0x5b4c45(0x214)][_0x5b4c45(0x274)](_0x597153,new _0x42b3d8['HeadingPitchRoll'](_0x4e101d,0x0,0x0),_0x42b3d8[_0x5b4c45(0x277)]['WGS84'],_0x42b3d8['Transforms'][_0x5b4c45(0x235)]('north',_0x5b4c45(0x24a))),_0x571e6b=new _0x42b3d8[(_0x5b4c45(0x215))](-this[_0x5b4c45(0x291)]['distance'],0x0,0x1f4),_0x22cda4=_0x42b3d8[_0x5b4c45(0x1e4)][_0x5b4c45(0x212)](_0x2e6ed5,_0x571e6b,new _0x42b3d8[(_0x5b4c45(0x215))]());this[_0x5b4c45(0x27d)]()[_0x5b4c45(0x293)]['setView']({'destination':_0x22cda4,'orientation':{'heading':_0x4e101d,'pitch':_0x42b3d8[_0x5b4c45(0x220)][_0x5b4c45(0x23c)](this[_0x5b4c45(0x291)][_0x5b4c45(0x24e)]),'roll':0x0}});}},{'key':'on','value':function _0x1329f7(_0x1ce17d,_0x4cfae3){var _0x51ab42=_0x53d1de;return this['getMap']()['_event'][_0x51ab42(0x2a0)](_0x1ce17d,_0x4cfae3,this);}},{'key':'updatePolyline','value':function _0x329b6d(_0x1c1aa5){var _0x5ec991=_0x53d1de,_0x21fae7;(_0x21fae7=this[_0x5ec991(0x1fc)])===null||_0x21fae7===void 0x0||_0x21fae7[_0x5ec991(0x224)](_0x1c1aa5);}},{'key':_0x53d1de(0x29f),'value':function _0x5e6d6d(_0x396ae3){var _0x357b25=_0x53d1de,_0x3f8799;(_0x3f8799=this[_0x357b25(0x248)])===null||_0x3f8799===void 0x0||_0x3f8799['setStyle'](_0x396ae3);}},{'key':_0x53d1de(0x297),'value':(function(){var _0x449527=_0x53d1de,_0x10631e=_asyncToGenerator(_regeneratorRuntime()[_0x449527(0x203)](function _0x15d7a3(){var _0x5cc231=_0x449527;return _regeneratorRuntime()[_0x5cc231(0x244)](function _0x379e1b(_0x2b099e){var _0x2ee89b=_0x5cc231;while(0x1)switch(_0x2b099e['prev']=_0x2b099e['next']){case 0x0:_0x2b099e[_0x2ee89b(0x1f1)]=0x2;return this['_initPromise'];case 0x2:case'end':return _0x2b099e[_0x2ee89b(0x278)]();}},_0x15d7a3,this);}));function _0x23cbfc(){return _0x10631e['apply'](this,arguments);}return _0x23cbfc;}())},{'key':_0x53d1de(0x21c),'value':function _0x33269f(){var _0xc9a1d0=_0x53d1de,_0x5bedbd,_0x4ebc8c,_0x66908d,_0x31b40c;if(this[_0xc9a1d0(0x21b)]==='destroy')return;var _0x365b9e=this[_0xc9a1d0(0x27d)]();_0x365b9e[_0xc9a1d0(0x287)]['shouldAnimate']=![],this['cancelFollow'](),this['_pendingStart']=![],(_0x5bedbd=this[_0xc9a1d0(0x21e)])===null||_0x5bedbd===void 0x0||(_0x4ebc8c=_0x5bedbd['off'])===null||_0x4ebc8c===void 0x0||_0x4ebc8c['call'](_0x5bedbd),this[_0xc9a1d0(0x21e)]=null,this[_0xc9a1d0(0x284)]=null;if(this[_0xc9a1d0(0x276)])_0x365b9e['removeGraphicSource'](this['_modelSourceId']);else{var _0xc95c3c,_0x1e9508;(_0xc95c3c=this['modelLayer'])===null||_0xc95c3c===void 0x0||(_0x1e9508=_0xc95c3c[_0xc9a1d0(0x217)])===null||_0x1e9508===void 0x0||_0x1e9508[_0xc9a1d0(0x1eb)](_0xc95c3c);}(_0x66908d=this['polylineLayer'])===null||_0x66908d===void 0x0||(_0x31b40c=_0x66908d['remove'])===null||_0x31b40c===void 0x0||_0x31b40c['call'](_0x66908d),this['polylineLayer']=null,this[_0xc9a1d0(0x200)]=null,this['modelLayer']=null,this['modelEntity']=null,this[_0xc9a1d0(0x276)]=null,this['_positions']=[],this[_0xc9a1d0(0x22e)]=[],this[_0xc9a1d0(0x25c)]=null,this[_0xc9a1d0(0x294)]=null,this[_0xc9a1d0(0x1ec)]=null,this[_0xc9a1d0(0x210)]=![],this[_0xc9a1d0(0x21b)]=_0xc9a1d0(0x21c);}}]),_0x2de0a0;}());export{ModelRoamHistory as default};