deeptwins-engine-3d 0.1.75 → 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 (239) 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 +5 -0
  155. package/dist/esm/index.js +1 -173
  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.d.ts +85 -0
  164. package/dist/esm/lowAltitude/RoutePlanning.js +1 -0
  165. package/dist/esm/lowAltitude/VisitLayer.js +1 -180
  166. package/dist/esm/map/Event.js +1 -377
  167. package/dist/esm/map/GroundSkyBox.js +1 -166
  168. package/dist/esm/map/Map.js +1 -881
  169. package/dist/esm/map/Property.js +1 -35
  170. package/dist/esm/material/AtmosphericDispersion.js +1 -569
  171. package/dist/esm/material/GlobalVolumetricCloud.js +1 -377
  172. package/dist/esm/material/VolumeCloud.js +1 -115
  173. package/dist/esm/material/WeatherEffects.js +1 -351
  174. package/dist/esm/material/entity/BaseMaterialProperty.js +1 -51
  175. package/dist/esm/material/entity/CircleWaveMaterialProperty.js +1 -101
  176. package/dist/esm/material/entity/DynamicWallMaterialProperty.js +1 -101
  177. package/dist/esm/material/entity/ImageGlowingMaterialProperty.js +1 -89
  178. package/dist/esm/material/entity/ImageMaterialProperty.js +1 -34
  179. package/dist/esm/material/entity/PolylineTrailLinkMaterialProperty.js +1 -132
  180. package/dist/esm/material/primitive/BaseMaterialAppearance.js +1 -28
  181. package/dist/esm/material/primitive/ImageGlowingMaterialAppearance.js +1 -77
  182. package/dist/esm/material/primitive/ImageMaterialAppearance.js +1 -77
  183. package/dist/esm/measure/Area.js +1 -220
  184. package/dist/esm/measure/BaseDraw.js +1 -105
  185. package/dist/esm/measure/Distance.js +1 -223
  186. package/dist/esm/measure/index.js +1 -266
  187. package/dist/esm/measure/types.js +1 -17
  188. package/dist/esm/measure/utils.js +1 -319
  189. package/dist/esm/particle/BaseParticle.js +1 -196
  190. package/dist/esm/particle/FireParticle.js +1 -65
  191. package/dist/esm/particle/FountainParticle.js +1 -80
  192. package/dist/esm/particle/SmokeParticle.js +1 -65
  193. package/dist/esm/particle/common.js +1 -23
  194. package/dist/esm/particle/index.js +1 -5
  195. package/dist/esm/property/PositionProperty.js +1 -56
  196. package/dist/esm/tileLayer/ArcGisLayer.js +1 -41
  197. package/dist/esm/tileLayer/CustomRasterClipWorkerClient.js +1 -147
  198. package/dist/esm/tileLayer/CustomRasterLayer.js +1 -1126
  199. package/dist/esm/tileLayer/ImageryLayer.js +1 -44
  200. package/dist/esm/tileLayer/MvtVectorLoad.js +1 -1549
  201. package/dist/esm/tileLayer/MvtVectorWorkerClient.js +1 -126
  202. package/dist/esm/tileLayer/RasterLayer.js +1 -23
  203. package/dist/esm/tileLayer/WmsLayer.js +1 -26
  204. package/dist/esm/tileLayer/WmtsLayer.js +1 -23
  205. package/dist/esm/tool/BuildClampedPolygonGrid.js +1 -278
  206. package/dist/esm/tool/Compass.js +1 -282
  207. package/dist/esm/tool/PrimitiveCluster.js +1 -706
  208. package/dist/esm/tool/TimerInterval.js +1 -58
  209. package/dist/esm/tool/common.js +1 -405
  210. package/dist/esm/tool/fetch.js +1 -222
  211. package/dist/esm/tool/heatmap.js +1 -631
  212. package/dist/esm/tool/utils.d.ts +1 -0
  213. package/dist/esm/tool/utils.js +1 -501
  214. package/dist/esm/toolTip/index.js +1 -79
  215. package/dist/esm/videoFusion/BaseVideo.d.ts +7 -0
  216. package/dist/esm/videoFusion/BaseVideo.js +1 -330
  217. package/dist/esm/videoFusion/VideoProject.js +1 -230
  218. package/dist/esm/videoFusion/VideoTexture.js +1 -163
  219. package/dist/esm/visualization/BaseHeatmap.js +1 -271
  220. package/dist/esm/visualization/BoundaryHighlight.d.ts +136 -0
  221. package/dist/esm/visualization/BoundaryHighlight.js +1 -0
  222. package/dist/esm/visualization/DynamicWater.js +1 -289
  223. package/dist/esm/visualization/Frustum.js +1 -248
  224. package/dist/esm/visualization/Heatmap2d.js +1 -97
  225. package/dist/esm/visualization/Heatmap3d.js +1 -281
  226. package/dist/esm/visualization/MigrationEffect.js +1 -397
  227. package/dist/esm/visualization/PointCluster.js +1 -220
  228. package/dist/esm/visualization/RadarScan.js +1 -333
  229. package/dist/esm/visualization/SampledTerrainRiver.d.ts +180 -0
  230. package/dist/esm/visualization/SampledTerrainRiver.js +1 -0
  231. package/dist/esm/visualization/SampledTerrainWater.d.ts +170 -0
  232. package/dist/esm/visualization/SampledTerrainWater.js +1 -0
  233. package/dist/esm/visualization/WindField.d.ts +72 -0
  234. package/dist/esm/visualization/WindField.js +1 -0
  235. package/dist/esm/visualization/windCore.d.ts +161 -0
  236. package/dist/esm/visualization/windCore.js +8 -0
  237. package/dist/umd/deeptwins-engine-3d.min.css +1 -1
  238. package/dist/umd/deeptwins-engine-3d.min.js +1 -1
  239. package/package.json +6 -4
@@ -1,397 +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 _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
3
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
5
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
6
- function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
7
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
8
- 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; }
9
- 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; }
10
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
11
- 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); } }
12
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
13
- 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; }
14
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
15
- 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); }
16
- import * as Cesium from 'deeptwins-cesium';
17
- import { cloneDeep, merge } from 'lodash';
18
- import { v4 as uuidv4 } from 'uuid';
19
- import { DEFAULT_MIGRATION_EFFECT_STYLE } from "../constant";
20
- import BaseSource from "../graphicLayer/BaseSource";
21
- import PolylineTrailLinkMaterialProperty from "../material/entity/PolylineTrailLinkMaterialProperty";
22
- import * as utils from "../tool/utils";
23
- // 动态迁徙效果
24
- var MigrationEffect = /*#__PURE__*/function () {
25
- function MigrationEffect() {
26
- var routes = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
27
- var style = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
28
- _classCallCheck(this, MigrationEffect);
29
- _defineProperty(this, "_mapContext", void 0);
30
- _defineProperty(this, "id", void 0);
31
- _defineProperty(this, "routes", void 0);
32
- _defineProperty(this, "style", void 0);
33
- _defineProperty(this, "lineLayer", void 0);
34
- _defineProperty(this, "endpointEntities", []);
35
- _defineProperty(this, "isDestroyed", false);
36
- _defineProperty(this, "_routeSamples", []);
37
- _defineProperty(this, "_isAdded", false);
38
- this.id = uuidv4();
39
- this.routes = routes;
40
- this.style = merge(DEFAULT_MIGRATION_EFFECT_STYLE(), cloneDeep(style || {}));
41
- this._routeSamples = this._buildRouteSamples(this.routes);
42
- }
43
- _createClass(MigrationEffect, [{
44
- key: "getMap",
45
- value: function getMap() {
46
- var _this$_mapContext;
47
- return (_this$_mapContext = this._mapContext) === null || _this$_mapContext === void 0 ? void 0 : _this$_mapContext.getMap();
48
- }
49
-
50
- // 添加到地图
51
- }, {
52
- key: "addToMap",
53
- value: function addToMap(map) {
54
- if (!this._canOperate()) {
55
- return;
56
- }
57
- if (this._isAdded && this.getMap() === map) {
58
- return this;
59
- }
60
- if (this._isAdded) {
61
- this.remove();
62
- }
63
- this._mapContext = map._mapContext;
64
- this._rebuild();
65
- return this;
66
- }
67
-
68
- // 移除迁徙效果
69
- }, {
70
- key: "remove",
71
- value: function remove() {
72
- if (this.isDestroyed) {
73
- return;
74
- }
75
- this._clearLayers();
76
- this._isAdded = false;
77
- return this;
78
- }
79
-
80
- // 显示隐藏
81
- }, {
82
- key: "show",
83
- value: function show(isShow) {
84
- var _this = this;
85
- if (!this._canOperate()) {
86
- return;
87
- }
88
- this.style.show = isShow;
89
- this.lineLayer && this.lineLayer.show(isShow);
90
- this.endpointEntities.forEach(function (entity) {
91
- var _this$style$endpoint;
92
- entity.show = isShow && ((_this$style$endpoint = _this.style.endpoint) === null || _this$style$endpoint === void 0 ? void 0 : _this$style$endpoint.show) !== false;
93
- });
94
- return this;
95
- }
96
-
97
- // 更新迁徙数据
98
- }, {
99
- key: "setData",
100
- value: function setData() {
101
- var routes = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
102
- if (!this._canOperate()) {
103
- return;
104
- }
105
- this.routes = routes;
106
- this._routeSamples = this._buildRouteSamples(routes);
107
- if (this._isAdded) {
108
- this._rebuild();
109
- }
110
- return this;
111
- }
112
-
113
- // 更新迁徙样式
114
- }, {
115
- key: "setStyle",
116
- value: function setStyle() {
117
- var style = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
118
- if (!this._canOperate()) {
119
- return;
120
- }
121
- this.style = merge(this.style, cloneDeep(style || {}));
122
- this._routeSamples = this._buildRouteSamples(this.routes);
123
- if (this._isAdded) {
124
- this._rebuild();
125
- }
126
- return this;
127
- }
128
-
129
- // 飞行至迁徙范围
130
- }, {
131
- key: "flyTo",
132
- value: function flyTo() {
133
- var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
134
- if (!this._canOperate() || !this.getMap()) {
135
- return;
136
- }
137
- var positions = this._routeSamples.flatMap(function (sample) {
138
- return sample.positions;
139
- });
140
- if (!positions.length) {
141
- return;
142
- }
143
- utils.cameraFlyToPositions(this.getMap().camera, positions, _objectSpread({
144
- scale: 1.4
145
- }, options));
146
- }
147
-
148
- // 销毁
149
- }, {
150
- key: "destroy",
151
- value: function destroy() {
152
- if (this.isDestroyed) {
153
- return;
154
- }
155
- this.remove();
156
- this.routes = [];
157
- this._routeSamples = [];
158
- this._mapContext = undefined;
159
- this.isDestroyed = true;
160
- }
161
-
162
- // 是否能进行操作
163
- }, {
164
- key: "_canOperate",
165
- value: function _canOperate() {
166
- if (this.isDestroyed) {
167
- utils.error('MigrationEffect实例已销毁');
168
- return false;
169
- }
170
- return true;
171
- }
172
- }, {
173
- key: "_rebuild",
174
- value: function _rebuild() {
175
- var map = this.getMap();
176
- if (!map) {
177
- return;
178
- }
179
- this._clearLayers();
180
- this._routeSamples = this._buildRouteSamples(this.routes);
181
- if (!this._routeSamples.length) {
182
- utils.error('MigrationEffect至少需要1条有效迁徙路线');
183
- this._isAdded = false;
184
- return;
185
- }
186
- this._createLineLayer(map);
187
- this._createEndpoints(map);
188
- this._isAdded = true;
189
- }
190
- }, {
191
- key: "_clearLayers",
192
- value: function _clearLayers() {
193
- var map = this.getMap();
194
- if (this.lineLayer) {
195
- this.lineLayer.remove();
196
- this.lineLayer = null;
197
- }
198
- if (map) {
199
- this.endpointEntities.forEach(function (entity) {
200
- map.entities.remove(entity);
201
- });
202
- }
203
- this.endpointEntities = [];
204
- }
205
- }, {
206
- key: "_createLineLayer",
207
- value: function _createLineLayer(map) {
208
- var material = new PolylineTrailLinkMaterialProperty({
209
- color: this.style.lineColor,
210
- duration: this.style.duration,
211
- repeat: this.style.repeat,
212
- repeatPixel: this.style.repeatPixel,
213
- image: this.style.image,
214
- mixRatio: this.style.mixRatio
215
- });
216
- this.lineLayer = map.addGraphicLayer(this._buildLineGeoJson(), {
217
- type: 'polyline',
218
- style: {
219
- show: this.style.show,
220
- width: this.style.width,
221
- material: material
222
- }
223
- });
224
- material.dynamicsSize(map, this.lineLayer);
225
- }
226
- }, {
227
- key: "_createEndpoints",
228
- value: function _createEndpoints(map) {
229
- var _this2 = this;
230
- var endpointStyle = this.style.endpoint || {};
231
- if (endpointStyle.show === false) {
232
- return;
233
- }
234
- this._routeSamples.forEach(function (sample, index) {
235
- if (endpointStyle.showStart !== false) {
236
- _this2.endpointEntities.push(_this2._createEndpoint(map, sample, index, 'start'));
237
- }
238
- if (endpointStyle.showEnd !== false) {
239
- _this2.endpointEntities.push(_this2._createEndpoint(map, sample, index, 'end'));
240
- }
241
- });
242
- }
243
- }, {
244
- key: "_createEndpoint",
245
- value: function _createEndpoint(map, sample, index, type) {
246
- var endpointStyle = this.style.endpoint || {};
247
- var position = this._getEndpointPosition(sample, type);
248
- var pointColor = type === 'start' ? endpointStyle.startColor : endpointStyle.endColor;
249
- return map.entities.add({
250
- id: "".concat(this.id, "_endpoint_").concat(type, "_").concat(index),
251
- show: this.style.show,
252
- properties: _objectSpread(_objectSpread({}, sample.feature.properties || {}), {}, {
253
- endpointType: type
254
- }),
255
- position: position,
256
- point: {
257
- pixelSize: endpointStyle.pixelSize,
258
- color: utils.colorString(pointColor),
259
- outlineColor: utils.colorString(endpointStyle.outlineColor),
260
- outlineWidth: endpointStyle.outlineWidth,
261
- disableDepthTestDistance: Number.POSITIVE_INFINITY
262
- }
263
- });
264
- }
265
- }, {
266
- key: "_getEndpointPosition",
267
- value: function _getEndpointPosition(sample, type) {
268
- if (type === 'start') {
269
- return sample.positions[0];
270
- }
271
- return sample.positions[sample.positions.length - 1];
272
- }
273
- }, {
274
- key: "_buildLineGeoJson",
275
- value: function _buildLineGeoJson() {
276
- return {
277
- type: 'FeatureCollection',
278
- features: this._routeSamples.map(function (sample, index) {
279
- return {
280
- type: 'Feature',
281
- properties: _objectSpread(_objectSpread({}, sample.feature.properties || {}), {}, {
282
- migrationIndex: index
283
- }),
284
- geometry: {
285
- type: 'LineString',
286
- coordinates: sample.coordinates
287
- }
288
- };
289
- })
290
- };
291
- }
292
- }, {
293
- key: "_buildRouteSamples",
294
- value: function _buildRouteSamples(routes) {
295
- var _this3 = this;
296
- if (!routes) {
297
- return [];
298
- }
299
- if (BaseSource.analysisSourceType(routes) !== 'geoJson') {
300
- utils.error('MigrationEffect routes必须是GeoJSON Feature或FeatureCollection');
301
- return [];
302
- }
303
- var features = [];
304
- try {
305
- features = BaseSource.geoJsonToGeoCartesian3Array(routes);
306
- } catch (error) {
307
- utils.error("MigrationEffect GeoJSON\u89E3\u6790\u5931\u8D25\uFF1A".concat(error.message));
308
- return [];
309
- }
310
- var ignoredCount = 0;
311
- var invalidCount = 0;
312
- var samples = [];
313
- features.forEach(function (feature) {
314
- var _feature$geometry;
315
- if ((feature === null || feature === void 0 || (_feature$geometry = feature.geometry) === null || _feature$geometry === void 0 ? void 0 : _feature$geometry.type) !== 'LineString') {
316
- ignoredCount += 1;
317
- return;
318
- }
319
- var sample = _this3._sampleRoute(feature);
320
- if (sample) {
321
- samples.push(sample);
322
- } else {
323
- invalidCount += 1;
324
- }
325
- });
326
- if (ignoredCount) {
327
- utils.warn("MigrationEffect\u4EC5\u652F\u6301LineString\u548CMultiLineString\uFF0C\u5DF2\u5FFD\u7565".concat(ignoredCount, "\u4E2A\u975E\u7EBF\u8981\u7D20"));
328
- }
329
- if (invalidCount) {
330
- utils.warn("MigrationEffect\u5DF2\u5FFD\u7565".concat(invalidCount, "\u6761\u65E0\u6548\u8FC1\u5F99\u8DEF\u7EBF"));
331
- }
332
- return samples;
333
- }
334
- }, {
335
- key: "_sampleRoute",
336
- value: function _sampleRoute(feature) {
337
- var sourceCoordinates = feature.geometry.coordinates || [];
338
- var from = this._normalizeCoordinate(sourceCoordinates[0]);
339
- var to = this._normalizeCoordinate(sourceCoordinates[sourceCoordinates.length - 1]);
340
- if (!from || !to || this._isSamePosition(from, to)) {
341
- return null;
342
- }
343
- var geodesic = new Cesium.EllipsoidGeodesic(Cesium.Cartographic.fromDegrees(from.lng, from.lat), Cesium.Cartographic.fromDegrees(to.lng, to.lat));
344
- var segments = Math.max(2, Math.floor(this.style.segments || 64));
345
- var arcHeight = Number(this.style.arcHeight) || 0;
346
- var coordinates = [];
347
- var positions = [];
348
- for (var i = 0; i <= segments; i++) {
349
- var ratio = i / segments;
350
- var cartographic = geodesic.interpolateUsingFraction(ratio);
351
- var lng = utils.toDegrees(cartographic.longitude);
352
- var lat = utils.toDegrees(cartographic.latitude);
353
- var alt = Cesium.Math.lerp(from.alt, to.alt, ratio) + Math.sin(Math.PI * ratio) * arcHeight;
354
- coordinates.push([lng, lat, alt]);
355
- positions.push(utils.lngLatAltToCartesian3(lng, lat, alt));
356
- }
357
- return {
358
- feature: feature,
359
- coordinates: coordinates,
360
- positions: positions
361
- };
362
- }
363
- }, {
364
- key: "_normalizeCoordinate",
365
- value: function _normalizeCoordinate(coordinate) {
366
- if (Array.isArray(coordinate)) {
367
- var _coordinate = _slicedToArray(coordinate, 3),
368
- lng = _coordinate[0],
369
- lat = _coordinate[1],
370
- _coordinate$ = _coordinate[2],
371
- alt = _coordinate$ === void 0 ? 0 : _coordinate$;
372
- return this._createNormalizedPosition(lng, lat, alt);
373
- }
374
- return null;
375
- }
376
- }, {
377
- key: "_createNormalizedPosition",
378
- value: function _createNormalizedPosition(lng, lat) {
379
- var alt = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
380
- if (!Number.isFinite(lng) || !Number.isFinite(lat)) {
381
- return null;
382
- }
383
- return {
384
- lng: lng,
385
- lat: lat,
386
- alt: Number.isFinite(alt) ? alt : 0
387
- };
388
- }
389
- }, {
390
- key: "_isSamePosition",
391
- value: function _isSamePosition(from, to) {
392
- return from.lng === to.lng && from.lat === to.lat && from.alt === to.alt;
393
- }
394
- }]);
395
- return MigrationEffect;
396
- }();
397
- export { MigrationEffect as default };
1
+ (function(_0x338049,_0x24c45a){var _0x5e7256=_0x521c,_0x2721a7=_0x338049();while(!![]){try{var _0xbdbab3=parseInt(_0x5e7256(0x1a7))/0x1+parseInt(_0x5e7256(0x189))/0x2*(-parseInt(_0x5e7256(0x15d))/0x3)+parseInt(_0x5e7256(0x1ae))/0x4*(-parseInt(_0x5e7256(0x180))/0x5)+-parseInt(_0x5e7256(0x1ac))/0x6*(-parseInt(_0x5e7256(0x195))/0x7)+-parseInt(_0x5e7256(0x19a))/0x8+parseInt(_0x5e7256(0x153))/0x9+-parseInt(_0x5e7256(0x17a))/0xa*(-parseInt(_0x5e7256(0x19c))/0xb);if(_0xbdbab3===_0x24c45a)break;else _0x2721a7['push'](_0x2721a7['shift']());}catch(_0x197d6e){_0x2721a7['push'](_0x2721a7['shift']());}}}(_0x1a28,0xc8926));function _typeof(_0x560cb5){'@babel/helpers - typeof';var _0x5a68a1=_0x521c;return _typeof=_0x5a68a1(0x1b3)==typeof Symbol&&'symbol'==typeof Symbol['iterator']?function(_0xa1582d){return typeof _0xa1582d;}:function(_0x4cd610){var _0x2a907d=_0x5a68a1;return _0x4cd610&&'function'==typeof Symbol&&_0x4cd610[_0x2a907d(0x19b)]===Symbol&&_0x4cd610!==Symbol[_0x2a907d(0x187)]?_0x2a907d(0x18a):typeof _0x4cd610;},_typeof(_0x560cb5);}function _slicedToArray(_0x2f40e6,_0x40a21b){return _arrayWithHoles(_0x2f40e6)||_iterableToArrayLimit(_0x2f40e6,_0x40a21b)||_unsupportedIterableToArray(_0x2f40e6,_0x40a21b)||_nonIterableRest();}function _nonIterableRest(){throw new TypeError('Invalid\x20attempt\x20to\x20destructure\x20non-iterable\x20instance.\x0aIn\x20order\x20to\x20be\x20iterable,\x20non-array\x20objects\x20must\x20have\x20a\x20[Symbol.iterator]()\x20method.');}function _unsupportedIterableToArray(_0x238d5f,_0x430f54){var _0x3637f4=_0x521c;if(!_0x238d5f)return;if(typeof _0x238d5f===_0x3637f4(0x1a1))return _arrayLikeToArray(_0x238d5f,_0x430f54);var _0x10c429=Object[_0x3637f4(0x187)][_0x3637f4(0x17f)]['call'](_0x238d5f)[_0x3637f4(0x179)](0x8,-0x1);if(_0x10c429===_0x3637f4(0x166)&&_0x238d5f[_0x3637f4(0x19b)])_0x10c429=_0x238d5f['constructor'][_0x3637f4(0x192)];if(_0x10c429===_0x3637f4(0x1a2)||_0x10c429===_0x3637f4(0x15e))return Array[_0x3637f4(0x1b7)](_0x238d5f);if(_0x10c429===_0x3637f4(0x1aa)||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/[_0x3637f4(0x152)](_0x10c429))return _arrayLikeToArray(_0x238d5f,_0x430f54);}function _arrayLikeToArray(_0x3ba56,_0x3c56b8){var _0xc23265=_0x521c;if(_0x3c56b8==null||_0x3c56b8>_0x3ba56['length'])_0x3c56b8=_0x3ba56[_0xc23265(0x17d)];for(var _0x5dd184=0x0,_0x461d5f=new Array(_0x3c56b8);_0x5dd184<_0x3c56b8;_0x5dd184++)_0x461d5f[_0x5dd184]=_0x3ba56[_0x5dd184];return _0x461d5f;}function _iterableToArrayLimit(_0x55ae9f,_0xcac47d){var _0x2be2ff=_0x521c,_0x5b1637=null==_0x55ae9f?null:'undefined'!=typeof Symbol&&_0x55ae9f[Symbol['iterator']]||_0x55ae9f['@@iterator'];if(null!=_0x5b1637){var _0x43c052,_0x138ceb,_0x5a5871,_0x1c4f5b,_0x382609=[],_0x57db47=!0x0,_0x3ac8d9=!0x1;try{if(_0x5a5871=(_0x5b1637=_0x5b1637['call'](_0x55ae9f))['next'],0x0===_0xcac47d){if(Object(_0x5b1637)!==_0x5b1637)return;_0x57db47=!0x1;}else{for(;!(_0x57db47=(_0x43c052=_0x5a5871[_0x2be2ff(0x19d)](_0x5b1637))[_0x2be2ff(0x197)])&&(_0x382609[_0x2be2ff(0x157)](_0x43c052[_0x2be2ff(0x159)]),_0x382609[_0x2be2ff(0x17d)]!==_0xcac47d);_0x57db47=!0x0);}}catch(_0x2ee9b4){_0x3ac8d9=!0x0,_0x138ceb=_0x2ee9b4;}finally{try{if(!_0x57db47&&null!=_0x5b1637['return']&&(_0x1c4f5b=_0x5b1637['return'](),Object(_0x1c4f5b)!==_0x1c4f5b))return;}finally{if(_0x3ac8d9)throw _0x138ceb;}}return _0x382609;}}function _arrayWithHoles(_0x48aa96){var _0x2e2776=_0x521c;if(Array[_0x2e2776(0x15b)](_0x48aa96))return _0x48aa96;}function _0x1a28(){var _0x3177e7=['x2j1AwXKuM91Dgvtyw1WBgvZ','zNvUy3rPB24','x2vUzhbVAw50xW','B2jQzwn0','C2HVDW','zNjVBq','x21HCenVBNrLEhq','zMvHDhvYzq','DgvZDa','mte3ndqZmJv2A3fOCLm','z2v0twfW','zNjVBurLz3jLzxm','twLNCMf0Aw9UrwzMzwn05A6E5l6l5BEY6zsa5Q+b','ChvZAa','5P2H5PEG5Pwi6l+b5B6z6lEV57Q/','DMfSDwu','y29VCMrPBMf0zxm','AxnbCNjHEq','ywrKvg9nyxa','ntC1ndLjy0rcBu4','u2v0','CM91DgvZ','D2fYBG','C2HVD0vUza','A2v5','A2v5CW','z2vVsNnVBLrVr2vVq2fYDgvZAwfUm0fYCMf5','x2nYzwf0zuvUzhbVAw50','t2jQzwn0','x2nYzwf0zu5VCM1HBgL6zwrqB3nPDgLVBG','z2vVBwv0CNK','zM9YrwfJAa','tgLUzvn0CMLUzW','C3rHCNrdB2XVCG','zw5K','zw5Kq29SB3i','5lIQ6z2E57Q/6kAb57sG','yxbWBhK','x25VCM1HBgL6zunVB3jKAw5HDgu','zw5KCg9PBNrfBNrPDgLLCW','x2LZu2fTzvbVC2L0Aw9U','x2nSzwfYtgf5zxjZ','Bgf0','C3rHCNq','z2v0t3DUuhjVCgvYDhLezxnJCMLWDg9Y','Bg5Ntgf0qwX0vg9dyxj0zxnPyw4Z','C2HVD1n0yxj0','C2XPy2u','mta3mty0mtbsAuPJsKu','C2vNBwvUDhm','q2fYDg9NCMfWAgLJ','BgvUz3rO','B3v0BgLUzunVBg9Y','Dg9tDhjPBMC','mJvhu3buzeq','zxjYB3i','CMvTB3zL','y29Uy2f0','BgvYCa','BgLUzuXHEwvY','y29SB3jtDhjPBMC','ChjVDg90ExbL','z2v0t3DUuhjVCgvYDhLezxnJCMLWDg9YCW','mtmWzeHLC09n','C3LTyM9S','y29UzMLNDxjHyMXL','DhLWzq','Bgf0Axr1zgu','zw5KCg9PBNq','x3jLyNvPBgq','Cg9SEwXPBMu','x2nYzwf0zuXPBMvmyxLLCG','BMfTzq','C3r5Bgu','Bg5N','mtm5mJq1ngvLCu5WrG','B3v0BgLUzvDPzhrO','zg9Uzq','twLNCMf0Aw9UrwzMzwn05lUf5PsV5OYbtgLUzvn0CMLUz+wsJe11BhrPtgLUzvn0CMLUz++8Jow3SUw/VEEvPq','yxjJsgvPz2H0','nda5nZm3nLn1vfnItq','y29UC3rYDwn0B3i','mtfvAxbsq0W','y2fSBa','ywrKr3jHCgHPy0XHEwvY','x3jVDxrLu2fTCgXLCW','CgL4zwXtAxPL','C3rYAw5N','twfW','Axnezxn0CM95zwq','Cg9ZAxrPB25Z','yw5HBhLZAxntB3vYy2vuExbL','x3nHBxbSzvjVDxrL','oty0mZeYr1nizKr3','Bg9Uz2L0DwrL','zgvMAw5LuhjVCgvYDhK','qxjNDw1LBNrZ','x2j1AwXKtgLUzuDLB0PZB24','mtHiqNr4tfO','ywX0','mta4ntyYoeftBvbZvq','x2LZqwrKzwq','zMLSDgvY','x2nHBK9WzxjHDgu'];_0x1a28=function(){return _0x3177e7;};return _0x1a28();}function ownKeys(_0x2a0e2f,_0x1ad78a){var _0x425d45=_0x521c,_0x414f44=Object[_0x425d45(0x163)](_0x2a0e2f);if(Object['getOwnPropertySymbols']){var _0x64b9e2=Object['getOwnPropertySymbols'](_0x2a0e2f);_0x1ad78a&&(_0x64b9e2=_0x64b9e2[_0x425d45(0x1b0)](function(_0x1484b0){var _0x2bf713=_0x425d45;return Object[_0x2bf713(0x176)](_0x2a0e2f,_0x1484b0)['enumerable'];})),_0x414f44['push'][_0x425d45(0x16f)](_0x414f44,_0x64b9e2);}return _0x414f44;}function _objectSpread(_0x283d04){var _0x270789=_0x521c;for(var _0x421ec6=0x1;_0x421ec6<arguments[_0x270789(0x17d)];_0x421ec6++){var _0x5e750c=null!=arguments[_0x421ec6]?arguments[_0x421ec6]:{};_0x421ec6%0x2?ownKeys(Object(_0x5e750c),!0x0)[_0x270789(0x169)](function(_0x4ca3da){_defineProperty(_0x283d04,_0x4ca3da,_0x5e750c[_0x4ca3da]);}):Object['getOwnPropertyDescriptors']?Object['defineProperties'](_0x283d04,Object[_0x270789(0x188)](_0x5e750c)):ownKeys(Object(_0x5e750c))[_0x270789(0x169)](function(_0x4fa3e4){Object['defineProperty'](_0x283d04,_0x4fa3e4,Object['getOwnPropertyDescriptor'](_0x5e750c,_0x4fa3e4));});}return _0x283d04;}function _classCallCheck(_0x48f234,_0x221f3e){if(!(_0x48f234 instanceof _0x221f3e))throw new TypeError('Cannot\x20call\x20a\x20class\x20as\x20a\x20function');}function _defineProperties(_0x575178,_0x5f4804){var _0x25d1c9=_0x521c;for(var _0x259dad=0x0;_0x259dad<_0x5f4804['length'];_0x259dad++){var _0x3eab97=_0x5f4804[_0x259dad];_0x3eab97['enumerable']=_0x3eab97['enumerable']||![],_0x3eab97[_0x25d1c9(0x18b)]=!![];if(_0x25d1c9(0x159)in _0x3eab97)_0x3eab97['writable']=!![];Object[_0x25d1c9(0x1a9)](_0x575178,_toPropertyKey(_0x3eab97[_0x25d1c9(0x162)]),_0x3eab97);}}function _createClass(_0x5be9a4,_0x1a21e6,_0x9e209d){var _0xd1f978=_0x521c;if(_0x1a21e6)_defineProperties(_0x5be9a4[_0xd1f978(0x187)],_0x1a21e6);if(_0x9e209d)_defineProperties(_0x5be9a4,_0x9e209d);return Object[_0xd1f978(0x1a9)](_0x5be9a4,'prototype',{'writable':![]}),_0x5be9a4;}function _defineProperty(_0x35b870,_0x387962,_0x452a24){return _0x387962=_toPropertyKey(_0x387962),_0x387962 in _0x35b870?Object['defineProperty'](_0x35b870,_0x387962,{'value':_0x452a24,'enumerable':!![],'configurable':!![],'writable':!![]}):_0x35b870[_0x387962]=_0x452a24,_0x35b870;}function _toPropertyKey(_0x25fea2){var _0x5c6eeb=_0x521c,_0x28c5b9=_toPrimitive(_0x25fea2,'string');return _0x5c6eeb(0x18a)==_typeof(_0x28c5b9)?_0x28c5b9:String(_0x28c5b9);}function _toPrimitive(_0x18f786,_0x2c8a3f){var _0x4d7258=_0x521c;if(_0x4d7258(0x1b5)!=_typeof(_0x18f786)||!_0x18f786)return _0x18f786;var _0xc839e9=_0x18f786[Symbol['toPrimitive']];if(void 0x0!==_0xc839e9){var _0x30d891=_0xc839e9[_0x4d7258(0x19d)](_0x18f786,_0x2c8a3f||'default');if('object'!=_typeof(_0x30d891))return _0x30d891;throw new TypeError('@@toPrimitive\x20must\x20return\x20a\x20primitive\x20value.');}return(_0x4d7258(0x1a1)===_0x2c8a3f?String:Number)(_0x18f786);}import*as _0x4629b8 from'deeptwins-cesium';import{cloneDeep,merge}from'lodash';import{v4 as _0xd7353a}from'uuid';function _0x521c(_0x193a0a,_0x1ef7b3){_0x193a0a=_0x193a0a-0x151;var _0x1a2854=_0x1a28();var _0x521c8f=_0x1a2854[_0x193a0a];if(_0x521c['iRYjNH']===undefined){var _0x2326fc=function(_0x77a05d){var _0x299574='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x4629b8='',_0xd7353a='';for(var _0x570a79=0x0,_0x11d68f,_0x78792a,_0x560cb5=0x0;_0x78792a=_0x77a05d['charAt'](_0x560cb5++);~_0x78792a&&(_0x11d68f=_0x570a79%0x4?_0x11d68f*0x40+_0x78792a:_0x78792a,_0x570a79++%0x4)?_0x4629b8+=String['fromCharCode'](0xff&_0x11d68f>>(-0x2*_0x570a79&0x6)):0x0){_0x78792a=_0x299574['indexOf'](_0x78792a);}for(var _0xa1582d=0x0,_0x4cd610=_0x4629b8['length'];_0xa1582d<_0x4cd610;_0xa1582d++){_0xd7353a+='%'+('00'+_0x4629b8['charCodeAt'](_0xa1582d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xd7353a);};_0x521c['SOQiPI']=_0x2326fc,_0x521c['bbgOMA']={},_0x521c['iRYjNH']=!![];}var _0x45fa80=_0x1a2854[0x0],_0x21e121=_0x193a0a+_0x45fa80,_0x499b2a=_0x521c['bbgOMA'][_0x21e121];return!_0x499b2a?(_0x521c8f=_0x521c['SOQiPI'](_0x521c8f),_0x521c['bbgOMA'][_0x21e121]=_0x521c8f):_0x521c8f=_0x499b2a,_0x521c8f;}import{DEFAULT_MIGRATION_EFFECT_STYLE}from'../constant';import _0x570a79 from'../graphicLayer/BaseSource';import _0x11d68f from'../material/entity/PolylineTrailLinkMaterialProperty';import*as _0x78792a from'../tool/utils';var MigrationEffect=(function(){var _0x214e7d=_0x521c;function _0x307631(){var _0x4dd3f6=_0x521c,_0x3eb6f2=arguments['length']>0x0&&arguments[0x0]!==undefined?arguments[0x0]:null,_0x253360=arguments[_0x4dd3f6(0x17d)]>0x1&&arguments[0x1]!==undefined?arguments[0x1]:{};_classCallCheck(this,_0x307631),_defineProperty(this,'_mapContext',void 0x0),_defineProperty(this,'id',void 0x0),_defineProperty(this,_0x4dd3f6(0x15f),void 0x0),_defineProperty(this,'style',void 0x0),_defineProperty(this,_0x4dd3f6(0x185),void 0x0),_defineProperty(this,'endpointEntities',[]),_defineProperty(this,'isDestroyed',![]),_defineProperty(this,'_routeSamples',[]),_defineProperty(this,'_isAdded',![]),this['id']=_0xd7353a(),this['routes']=_0x3eb6f2,this[_0x4dd3f6(0x193)]=merge(DEFAULT_MIGRATION_EFFECT_STYLE(),cloneDeep(_0x253360||{})),this['_routeSamples']=this['_buildRouteSamples'](this[_0x4dd3f6(0x15f)]);}return _createClass(_0x307631,[{'key':_0x214e7d(0x154),'value':function _0x229850(){var _0x899cc3=_0x214e7d,_0x4d4c93;return(_0x4d4c93=this[_0x899cc3(0x1b8)])===null||_0x4d4c93===void 0x0?void 0x0:_0x4d4c93['getMap']();}},{'key':_0x214e7d(0x15c),'value':function _0x59efb5(_0x37db3c){var _0x37659c=_0x214e7d;if(!this[_0x37659c(0x1b1)]())return;if(this['_isAdded']&&this[_0x37659c(0x154)]()===_0x37db3c)return this;return this[_0x37659c(0x1af)]&&this[_0x37659c(0x182)](),this['_mapContext']=_0x37db3c[_0x37659c(0x1b8)],this['_rebuild'](),this;}},{'key':_0x214e7d(0x182),'value':function _0x4bce0d(){if(this['isDestroyed'])return;return this['_clearLayers'](),this['_isAdded']=![],this;}},{'key':'show','value':function _0x2bbdfe(_0x2deefb){var _0x31577e=_0x214e7d,_0x3f7f76=this;if(!this['_canOperate']())return;return this['style'][_0x31577e(0x1b6)]=_0x2deefb,this['lineLayer']&&this[_0x31577e(0x185)]['show'](_0x2deefb),this[_0x31577e(0x171)]['forEach'](function(_0x80fbd8){var _0x205df0=_0x31577e,_0x4ea478;_0x80fbd8[_0x205df0(0x1b6)]=_0x2deefb&&((_0x4ea478=_0x3f7f76['style']['endpoint'])===null||_0x4ea478===void 0x0?void 0x0:_0x4ea478[_0x205df0(0x1b6)])!==![];}),this;}},{'key':'setData','value':function _0x26a3a9(){var _0x2fce53=_0x214e7d,_0x53d85e=arguments['length']>0x0&&arguments[0x0]!==undefined?arguments[0x0]:null;if(!this[_0x2fce53(0x1b1)]())return;return this[_0x2fce53(0x15f)]=_0x53d85e,this[_0x2fce53(0x19f)]=this[_0x2fce53(0x1b2)](_0x53d85e),this[_0x2fce53(0x1af)]&&this['_rebuild'](),this;}},{'key':'setStyle','value':function _0x2876a9(){var _0x1bc9ab=_0x214e7d,_0x3dfcb0=arguments['length']>0x0&&arguments[0x0]!==undefined?arguments[0x0]:{};if(!this[_0x1bc9ab(0x1b1)]())return;return this[_0x1bc9ab(0x193)]=merge(this[_0x1bc9ab(0x193)],cloneDeep(_0x3dfcb0||{})),this[_0x1bc9ab(0x19f)]=this['_buildRouteSamples'](this['routes']),this[_0x1bc9ab(0x1af)]&&this['_rebuild'](),this;}},{'key':'flyTo','value':function _0x5b10d8(){var _0x56ea20=_0x214e7d,_0x270a8b=arguments[_0x56ea20(0x17d)]>0x0&&arguments[0x0]!==undefined?arguments[0x0]:{};if(!this['_canOperate']()||!this[_0x56ea20(0x154)]())return;var _0x23e307=this[_0x56ea20(0x19f)]['flatMap'](function(_0x32cf2b){var _0x8b84e5=_0x56ea20;return _0x32cf2b[_0x8b84e5(0x1a4)];});if(!_0x23e307['length'])return;_0x78792a['cameraFlyToPositions'](this['getMap']()['camera'],_0x23e307,_objectSpread({'scale':1.4},_0x270a8b));}},{'key':'destroy','value':function _0x5a902b(){var _0x41657c=_0x214e7d;if(this['isDestroyed'])return;this['remove'](),this['routes']=[],this[_0x41657c(0x19f)]=[],this[_0x41657c(0x1b8)]=undefined,this[_0x41657c(0x1a3)]=!![];}},{'key':'_canOperate','value':function _0x371f6d(){var _0x11fbf5=_0x214e7d;if(this['isDestroyed'])return _0x78792a['error'](_0x11fbf5(0x156)),![];return!![];}},{'key':_0x214e7d(0x18f),'value':function _0x31faf7(){var _0x29a4ec=_0x214e7d,_0x329541=this['getMap']();if(!_0x329541)return;this[_0x29a4ec(0x173)](),this[_0x29a4ec(0x19f)]=this[_0x29a4ec(0x1b2)](this['routes']);if(!this['_routeSamples'][_0x29a4ec(0x17d)]){_0x78792a[_0x29a4ec(0x181)]('MigrationEffect至少需要1条有效迁徙路线'),this[_0x29a4ec(0x1af)]=![];return;}this[_0x29a4ec(0x191)](_0x329541),this['_createEndpoints'](_0x329541),this[_0x29a4ec(0x1af)]=!![];}},{'key':_0x214e7d(0x173),'value':function _0x438d7c(){var _0x216c4f=_0x214e7d,_0x6b5d3=this[_0x216c4f(0x154)]();this[_0x216c4f(0x185)]&&(this['lineLayer'][_0x216c4f(0x182)](),this[_0x216c4f(0x185)]=null),_0x6b5d3&&this[_0x216c4f(0x171)]['forEach'](function(_0x4ba879){var _0x5ecf56=_0x216c4f;_0x6b5d3['entities'][_0x5ecf56(0x182)](_0x4ba879);}),this[_0x216c4f(0x171)]=[];}},{'key':_0x214e7d(0x191),'value':function _0x4f87c8(_0x3df992){var _0x400c6e=_0x214e7d,_0x5e2f0e=new _0x11d68f({'color':this['style']['lineColor'],'duration':this[_0x400c6e(0x193)]['duration'],'repeat':this['style']['repeat'],'repeatPixel':this['style']['repeatPixel'],'image':this[_0x400c6e(0x193)]['image'],'mixRatio':this[_0x400c6e(0x193)]['mixRatio']});this['lineLayer']=_0x3df992[_0x400c6e(0x19e)](this['_buildLineGeoJson'](),{'type':_0x400c6e(0x190),'style':{'show':this[_0x400c6e(0x193)]['show'],'width':this['style']['width'],'material':_0x5e2f0e}}),_0x5e2f0e['dynamicsSize'](_0x3df992,this['lineLayer']);}},{'key':'_createEndpoints','value':function _0xdc8e98(_0xb67818){var _0x988cb8=_0x214e7d,_0x14c140=this,_0x4acaa7=this[_0x988cb8(0x193)][_0x988cb8(0x18e)]||{};if(_0x4acaa7[_0x988cb8(0x1b6)]===![])return;this['_routeSamples'][_0x988cb8(0x169)](function(_0x16102d,_0x1cd2f5){var _0x3f8bbe=_0x988cb8;_0x4acaa7[_0x3f8bbe(0x178)]!==![]&&_0x14c140['endpointEntities']['push'](_0x14c140[_0x3f8bbe(0x165)](_0xb67818,_0x16102d,_0x1cd2f5,_0x3f8bbe(0x175))),_0x4acaa7[_0x3f8bbe(0x161)]!==![]&&_0x14c140[_0x3f8bbe(0x171)][_0x3f8bbe(0x157)](_0x14c140['_createEndpoint'](_0xb67818,_0x16102d,_0x1cd2f5,_0x3f8bbe(0x16c)));});}},{'key':_0x214e7d(0x165),'value':function _0x330b36(_0x5df7a2,_0x2fed1c,_0x1a9dda,_0x32f923){var _0x2bc1c8=_0x214e7d,_0x2f03f6=this['style'][_0x2bc1c8(0x18e)]||{},_0x2bfcec=this['_getEndpointPosition'](_0x2fed1c,_0x32f923),_0x22dd1d=_0x32f923===_0x2bc1c8(0x175)?_0x2f03f6[_0x2bc1c8(0x16b)]:_0x2f03f6[_0x2bc1c8(0x16d)];return _0x5df7a2['entities']['add']({'id':''[_0x2bc1c8(0x183)](this['id'],_0x2bc1c8(0x1b4))['concat'](_0x32f923,'_')['concat'](_0x1a9dda),'show':this['style'][_0x2bc1c8(0x1b6)],'properties':_objectSpread(_objectSpread({},_0x2fed1c[_0x2bc1c8(0x151)]['properties']||{}),{},{'endpointType':_0x32f923}),'position':_0x2bfcec,'point':{'pixelSize':_0x2f03f6[_0x2bc1c8(0x1a0)],'color':_0x78792a[_0x2bc1c8(0x186)](_0x22dd1d),'outlineColor':_0x78792a[_0x2bc1c8(0x186)](_0x2f03f6[_0x2bc1c8(0x17e)]),'outlineWidth':_0x2f03f6[_0x2bc1c8(0x196)],'disableDepthTestDistance':Number['POSITIVE_INFINITY']}});}},{'key':'_getEndpointPosition','value':function _0x3e3701(_0x2dc646,_0x3cf581){var _0x2fa366=_0x214e7d;if(_0x3cf581==='start')return _0x2dc646['positions'][0x0];return _0x2dc646[_0x2fa366(0x1a4)][_0x2dc646['positions']['length']-0x1];}},{'key':_0x214e7d(0x1ab),'value':function _0x3376d5(){return{'type':'FeatureCollection','features':this['_routeSamples']['map'](function(_0x38c625,_0x4c0755){var _0x230003=_0x521c;return{'type':'Feature','properties':_objectSpread(_objectSpread({},_0x38c625['feature']['properties']||{}),{},{'migrationIndex':_0x4c0755}),'geometry':{'type':_0x230003(0x16a),'coordinates':_0x38c625[_0x230003(0x15a)]}};})};}},{'key':_0x214e7d(0x1b2),'value':function _0x5451c0(_0x5df9ab){var _0x4007fe=_0x214e7d,_0x5980cb=this;if(!_0x5df9ab)return[];if(_0x570a79[_0x4007fe(0x1a5)](_0x5df9ab)!=='geoJson')return _0x78792a['error']('MigrationEffect\x20routes必须是GeoJSON\x20Feature或FeatureCollection'),[];var _0x44ab2f=[];try{_0x44ab2f=_0x570a79[_0x4007fe(0x164)](_0x5df9ab);}catch(_0x52885c){return _0x78792a['error']('MigrationEffect\x20GeoJSON\u89E3\u6790\u5931\u8D25\uFF1A'[_0x4007fe(0x183)](_0x52885c['message'])),[];}var _0x2b421a=0x0,_0x495ea3=0x0,_0x23573e=[];return _0x44ab2f['forEach'](function(_0x468283){var _0xeb0639=_0x4007fe,_0x33f5c6;if((_0x468283===null||_0x468283===void 0x0||(_0x33f5c6=_0x468283[_0xeb0639(0x168)])===null||_0x33f5c6===void 0x0?void 0x0:_0x33f5c6[_0xeb0639(0x18c)])!==_0xeb0639(0x16a)){_0x2b421a+=0x1;return;}var _0x4229f9=_0x5980cb[_0xeb0639(0x1a6)](_0x468283);_0x4229f9?_0x23573e[_0xeb0639(0x157)](_0x4229f9):_0x495ea3+=0x1;}),_0x2b421a&&_0x78792a[_0x4007fe(0x160)](_0x4007fe(0x198)['concat'](_0x2b421a,_0x4007fe(0x16e))),_0x495ea3&&_0x78792a[_0x4007fe(0x160)]('MigrationEffect\u5DF2\u5FFD\u7565'[_0x4007fe(0x183)](_0x495ea3,_0x4007fe(0x158))),_0x23573e;}},{'key':'_sampleRoute','value':function _0x323317(_0x2dfa7c){var _0x47cee9=_0x214e7d,_0x3030d7=_0x2dfa7c[_0x47cee9(0x168)][_0x47cee9(0x15a)]||[],_0x5d544a=this['_normalizeCoordinate'](_0x3030d7[0x0]),_0x302e9c=this[_0x47cee9(0x170)](_0x3030d7[_0x3030d7[_0x47cee9(0x17d)]-0x1]);if(!_0x5d544a||!_0x302e9c||this[_0x47cee9(0x172)](_0x5d544a,_0x302e9c))return null;var _0x11f66a=new _0x4629b8['EllipsoidGeodesic'](_0x4629b8[_0x47cee9(0x17c)]['fromDegrees'](_0x5d544a['lng'],_0x5d544a[_0x47cee9(0x174)]),_0x4629b8[_0x47cee9(0x17c)][_0x47cee9(0x155)](_0x302e9c['lng'],_0x302e9c['lat'])),_0xf5d702=Math['max'](0x2,Math['floor'](this['style'][_0x47cee9(0x17b)]||0x40)),_0x51c7bf=Number(this['style'][_0x47cee9(0x199)])||0x0,_0x196b5e=[],_0x18cc42=[];for(var _0x36f08e=0x0;_0x36f08e<=_0xf5d702;_0x36f08e++){var _0x3a2374=_0x36f08e/_0xf5d702,_0x57abeb=_0x11f66a['interpolateUsingFraction'](_0x3a2374),_0x575d52=_0x78792a['toDegrees'](_0x57abeb[_0x47cee9(0x1a8)]),_0x290e50=_0x78792a['toDegrees'](_0x57abeb[_0x47cee9(0x18d)]),_0x51b2a5=_0x4629b8['Math'][_0x47cee9(0x184)](_0x5d544a[_0x47cee9(0x1ad)],_0x302e9c[_0x47cee9(0x1ad)],_0x3a2374)+Math['sin'](Math['PI']*_0x3a2374)*_0x51c7bf;_0x196b5e[_0x47cee9(0x157)]([_0x575d52,_0x290e50,_0x51b2a5]),_0x18cc42[_0x47cee9(0x157)](_0x78792a[_0x47cee9(0x177)](_0x575d52,_0x290e50,_0x51b2a5));}return{'feature':_0x2dfa7c,'coordinates':_0x196b5e,'positions':_0x18cc42};}},{'key':_0x214e7d(0x170),'value':function _0x40499f(_0x51249b){var _0x294bb6=_0x214e7d;if(Array['isArray'](_0x51249b)){var _0x132dc8=_slicedToArray(_0x51249b,0x3),_0xec22d6=_0x132dc8[0x0],_0x57a571=_0x132dc8[0x1],_0x13f62d=_0x132dc8[0x2],_0x386235=_0x13f62d===void 0x0?0x0:_0x13f62d;return this[_0x294bb6(0x167)](_0xec22d6,_0x57a571,_0x386235);}return null;}},{'key':_0x214e7d(0x167),'value':function _0x58fa35(_0x4c46a4,_0x3e55d2){var _0x5e9c98=_0x214e7d,_0x46e7ea=arguments[_0x5e9c98(0x17d)]>0x2&&arguments[0x2]!==undefined?arguments[0x2]:0x0;if(!Number['isFinite'](_0x4c46a4)||!Number['isFinite'](_0x3e55d2))return null;return{'lng':_0x4c46a4,'lat':_0x3e55d2,'alt':Number['isFinite'](_0x46e7ea)?_0x46e7ea:0x0};}},{'key':'_isSamePosition','value':function _0x231b0e(_0xf9892,_0x54d974){var _0x54aeb2=_0x214e7d;return _0xf9892['lng']===_0x54d974[_0x54aeb2(0x194)]&&_0xf9892['lat']===_0x54d974['lat']&&_0xf9892[_0x54aeb2(0x1ad)]===_0x54d974[_0x54aeb2(0x1ad)];}}]),_0x307631;}());export{MigrationEffect as default};