deeptwins-engine-3d 0.1.76 → 0.2.1

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 (237) 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.js +1 -688
  86. package/dist/esm/drawer/plotUtil.js +1 -266
  87. package/dist/esm/drawer/shape/Assemble.js +1 -415
  88. package/dist/esm/drawer/shape/AttackArrow.js +1 -442
  89. package/dist/esm/drawer/shape/BaseShape.js +1 -383
  90. package/dist/esm/drawer/shape/Bow.js +1 -375
  91. package/dist/esm/drawer/shape/Circle.js +1 -461
  92. package/dist/esm/drawer/shape/Curve.js +1 -386
  93. package/dist/esm/drawer/shape/DragPoint.js +1 -211
  94. package/dist/esm/drawer/shape/Elliptic.js +1 -491
  95. package/dist/esm/drawer/shape/Formation.js +1 -395
  96. package/dist/esm/drawer/shape/PincerArrow.js +1 -445
  97. package/dist/esm/drawer/shape/Point.js +1 -131
  98. package/dist/esm/drawer/shape/Polygon.js +1 -368
  99. package/dist/esm/drawer/shape/Polyline.js +1 -325
  100. package/dist/esm/drawer/shape/RegularPolygon.js +1 -468
  101. package/dist/esm/drawer/shape/RightAngleArrow.js +1 -423
  102. package/dist/esm/drawer/shape/Sector.js +1 -568
  103. package/dist/esm/drawer/shape/StraightArrow.js +1 -422
  104. package/dist/esm/drawer/shape/SwallowtailArrow.js +1 -438
  105. package/dist/esm/drawer/types.js +1 -11
  106. package/dist/esm/drawer/utils.js +1 -381
  107. package/dist/esm/global.css +22 -1
  108. package/dist/esm/graphicLayer/BaseEntity.js +1 -51
  109. package/dist/esm/graphicLayer/BaseLayer.js +1 -730
  110. package/dist/esm/graphicLayer/BasePointPrimitive.js +1 -45
  111. package/dist/esm/graphicLayer/BasePrimitive.js +1 -36
  112. package/dist/esm/graphicLayer/BasePrimitiveInstance.js +1 -37
  113. package/dist/esm/graphicLayer/BaseSource.d.ts +1 -1
  114. package/dist/esm/graphicLayer/BaseSource.js +1 -630
  115. package/dist/esm/graphicLayer/BillboardEntity.js +1 -106
  116. package/dist/esm/graphicLayer/BillboardPrimitive.js +1 -119
  117. package/dist/esm/graphicLayer/BoxEntity.js +1 -99
  118. package/dist/esm/graphicLayer/BoxPrimitive.js +1 -48
  119. package/dist/esm/graphicLayer/BoxPrimitiveInstance.js +1 -91
  120. package/dist/esm/graphicLayer/EllipseEntity.js +1 -110
  121. package/dist/esm/graphicLayer/EllipsePrimitive.js +1 -47
  122. package/dist/esm/graphicLayer/EllipsePrimitiveInstance.js +1 -98
  123. package/dist/esm/graphicLayer/EllipsoidEntity.js +1 -118
  124. package/dist/esm/graphicLayer/EllipsoidPrimitive.js +1 -48
  125. package/dist/esm/graphicLayer/EllipsoidPrimitiveInstance.js +1 -113
  126. package/dist/esm/graphicLayer/GraphicLayerCollection.js +1 -491
  127. package/dist/esm/graphicLayer/HtmlEntity.d.ts +4 -0
  128. package/dist/esm/graphicLayer/HtmlEntity.js +1 -189
  129. package/dist/esm/graphicLayer/LabelEntity.js +1 -110
  130. package/dist/esm/graphicLayer/LabelPrimitive.js +1 -127
  131. package/dist/esm/graphicLayer/ModelEntity.js +1 -122
  132. package/dist/esm/graphicLayer/ModelPrimitive.js +1 -59
  133. package/dist/esm/graphicLayer/ModelPrimitiveInstance.js +1 -86
  134. package/dist/esm/graphicLayer/PointEntity.js +1 -94
  135. package/dist/esm/graphicLayer/PointPrimitive.js +1 -107
  136. package/dist/esm/graphicLayer/PolygonEntity.js +1 -103
  137. package/dist/esm/graphicLayer/PolygonGroundPrimitive.js +1 -49
  138. package/dist/esm/graphicLayer/PolygonGroundPrimitiveImageMaterialInstance.js +1 -87
  139. package/dist/esm/graphicLayer/PolygonPrimitive.js +1 -60
  140. package/dist/esm/graphicLayer/PolygonPrimitiveImageMaterialInstance.js +1 -84
  141. package/dist/esm/graphicLayer/PolygonPrimitiveInstance.js +1 -101
  142. package/dist/esm/graphicLayer/PolylineEntity.js +1 -96
  143. package/dist/esm/graphicLayer/PolylineGroundPrimitive.js +1 -55
  144. package/dist/esm/graphicLayer/PolylineGroundPrimitiveInstance.js +1 -85
  145. package/dist/esm/graphicLayer/PolylinePrimitive.js +1 -53
  146. package/dist/esm/graphicLayer/PolylinePrimitiveInstance.js +1 -85
  147. package/dist/esm/graphicLayer/PolylineVolumeEntity.js +1 -105
  148. package/dist/esm/graphicLayer/PolylineVolumePrimitive.js +1 -47
  149. package/dist/esm/graphicLayer/PolylineVolumePrimitiveInstance.js +1 -94
  150. package/dist/esm/graphicLayer/WallEntity.js +1 -96
  151. package/dist/esm/graphicLayer/WallPrimitive.js +1 -47
  152. package/dist/esm/graphicLayer/WallPrimitiveInstance.js +1 -88
  153. package/dist/esm/index.d.ts +4 -0
  154. package/dist/esm/index.js +1 -175
  155. package/dist/esm/lowAltitude/BarrierLayer.js +1 -172
  156. package/dist/esm/lowAltitude/BaseGridMvtLayer.js +1 -122
  157. package/dist/esm/lowAltitude/FactorLayer.js +1 -199
  158. package/dist/esm/lowAltitude/FlightPlanning.js +1 -411
  159. package/dist/esm/lowAltitude/FlightRiskEvaluation.js +1 -543
  160. package/dist/esm/lowAltitude/GridDraw.js +1 -137
  161. package/dist/esm/lowAltitude/PoiLayer.js +1 -74
  162. package/dist/esm/lowAltitude/RoutePlanning.js +1 -318
  163. package/dist/esm/lowAltitude/VisitLayer.js +1 -180
  164. package/dist/esm/map/Event.js +1 -377
  165. package/dist/esm/map/GroundSkyBox.js +1 -166
  166. package/dist/esm/map/Map.js +1 -881
  167. package/dist/esm/map/Property.js +1 -35
  168. package/dist/esm/material/AtmosphericDispersion.js +1 -569
  169. package/dist/esm/material/GlobalVolumetricCloud.js +1 -377
  170. package/dist/esm/material/VolumeCloud.js +1 -115
  171. package/dist/esm/material/WeatherEffects.js +1 -351
  172. package/dist/esm/material/entity/BaseMaterialProperty.js +1 -51
  173. package/dist/esm/material/entity/CircleWaveMaterialProperty.js +1 -101
  174. package/dist/esm/material/entity/DynamicWallMaterialProperty.js +1 -101
  175. package/dist/esm/material/entity/ImageGlowingMaterialProperty.js +1 -89
  176. package/dist/esm/material/entity/ImageMaterialProperty.js +1 -34
  177. package/dist/esm/material/entity/PolylineTrailLinkMaterialProperty.js +1 -132
  178. package/dist/esm/material/primitive/BaseMaterialAppearance.js +1 -28
  179. package/dist/esm/material/primitive/ImageGlowingMaterialAppearance.js +1 -77
  180. package/dist/esm/material/primitive/ImageMaterialAppearance.js +1 -77
  181. package/dist/esm/measure/Area.js +1 -220
  182. package/dist/esm/measure/BaseDraw.js +1 -105
  183. package/dist/esm/measure/Distance.js +1 -223
  184. package/dist/esm/measure/index.js +1 -266
  185. package/dist/esm/measure/types.js +1 -17
  186. package/dist/esm/measure/utils.js +1 -319
  187. package/dist/esm/particle/BaseParticle.js +1 -196
  188. package/dist/esm/particle/FireParticle.js +1 -65
  189. package/dist/esm/particle/FountainParticle.js +1 -80
  190. package/dist/esm/particle/SmokeParticle.js +1 -65
  191. package/dist/esm/particle/common.js +1 -23
  192. package/dist/esm/particle/index.js +1 -5
  193. package/dist/esm/property/PositionProperty.js +1 -56
  194. package/dist/esm/tileLayer/ArcGisLayer.js +1 -41
  195. package/dist/esm/tileLayer/CustomRasterClipWorkerClient.js +1 -147
  196. package/dist/esm/tileLayer/CustomRasterLayer.js +1 -1136
  197. package/dist/esm/tileLayer/ImageryLayer.js +1 -44
  198. package/dist/esm/tileLayer/MvtVectorLoad.js +1 -1549
  199. package/dist/esm/tileLayer/MvtVectorWorkerClient.js +1 -126
  200. package/dist/esm/tileLayer/RasterLayer.js +1 -23
  201. package/dist/esm/tileLayer/WmsLayer.js +1 -26
  202. package/dist/esm/tileLayer/WmtsLayer.js +1 -23
  203. package/dist/esm/tool/BuildClampedPolygonGrid.js +1 -278
  204. package/dist/esm/tool/Compass.js +1 -282
  205. package/dist/esm/tool/PrimitiveCluster.js +1 -706
  206. package/dist/esm/tool/TimerInterval.js +1 -58
  207. package/dist/esm/tool/common.js +1 -405
  208. package/dist/esm/tool/fetch.js +1 -222
  209. package/dist/esm/tool/heatmap.js +1 -631
  210. package/dist/esm/tool/utils.d.ts +1 -0
  211. package/dist/esm/tool/utils.js +1 -501
  212. package/dist/esm/toolTip/index.js +1 -79
  213. package/dist/esm/videoFusion/BaseVideo.d.ts +7 -0
  214. package/dist/esm/videoFusion/BaseVideo.js +1 -330
  215. package/dist/esm/videoFusion/VideoProject.js +1 -230
  216. package/dist/esm/videoFusion/VideoTexture.js +1 -163
  217. package/dist/esm/visualization/BaseHeatmap.js +1 -271
  218. package/dist/esm/visualization/BoundaryHighlight.d.ts +135 -0
  219. package/dist/esm/visualization/BoundaryHighlight.js +1 -0
  220. package/dist/esm/visualization/DynamicWater.js +1 -289
  221. package/dist/esm/visualization/Frustum.js +1 -248
  222. package/dist/esm/visualization/Heatmap2d.js +1 -97
  223. package/dist/esm/visualization/Heatmap3d.js +1 -281
  224. package/dist/esm/visualization/MigrationEffect.js +1 -397
  225. package/dist/esm/visualization/PointCluster.js +1 -220
  226. package/dist/esm/visualization/RadarScan.js +1 -333
  227. package/dist/esm/visualization/SampledTerrainRiver.d.ts +180 -0
  228. package/dist/esm/visualization/SampledTerrainRiver.js +1 -0
  229. package/dist/esm/visualization/SampledTerrainWater.d.ts +170 -0
  230. package/dist/esm/visualization/SampledTerrainWater.js +1 -0
  231. package/dist/esm/visualization/WindField.d.ts +72 -0
  232. package/dist/esm/visualization/WindField.js +1 -0
  233. package/dist/esm/visualization/windCore.d.ts +161 -0
  234. package/dist/esm/visualization/windCore.js +8 -0
  235. package/dist/umd/deeptwins-engine-3d.min.css +1 -1
  236. package/dist/umd/deeptwins-engine-3d.min.js +1 -1
  237. package/package.json +6 -4
@@ -1,289 +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_DYNAMIC_WATER_STYLE } from "../constant";
20
- import * as utils from "../tool/utils";
21
- var REBUILD_STYLE_KEYS = ['height', 'stRotation'];
22
-
23
- // 动态反射水面
24
- var DynamicWater = /*#__PURE__*/function () {
25
- function DynamicWater() {
26
- var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
27
- _classCallCheck(this, DynamicWater);
28
- _defineProperty(this, "_mapContext", void 0);
29
- _defineProperty(this, "id", void 0);
30
- _defineProperty(this, "positions", []);
31
- _defineProperty(this, "style", void 0);
32
- _defineProperty(this, "primitive", null);
33
- _defineProperty(this, "material", null);
34
- _defineProperty(this, "isDestroyed", false);
35
- _defineProperty(this, "_cartesianPositions", []);
36
- _defineProperty(this, "_isAdded", false);
37
- var _options$positions = options.positions,
38
- positions = _options$positions === void 0 ? [] : _options$positions,
39
- _options$style = options.style,
40
- style = _options$style === void 0 ? {} : _options$style;
41
- this.id = uuidv4();
42
- this.positions = positions;
43
- this.style = merge(DEFAULT_DYNAMIC_WATER_STYLE(), cloneDeep(style || {}));
44
- this._cartesianPositions = this._transformPositions(this.positions);
45
- }
46
- _createClass(DynamicWater, [{
47
- key: "getMap",
48
- value: function getMap() {
49
- var _this$_mapContext;
50
- return (_this$_mapContext = this._mapContext) === null || _this$_mapContext === void 0 ? void 0 : _this$_mapContext.getMap();
51
- }
52
-
53
- // 添加到地图
54
- }, {
55
- key: "addToMap",
56
- value: function addToMap(map) {
57
- if (!this._canOperate()) {
58
- return;
59
- }
60
- if (this._isAdded && this.getMap() === map) {
61
- return this;
62
- }
63
- if (this._isAdded) {
64
- this.remove();
65
- }
66
- this._mapContext = map._mapContext;
67
- this._rebuildPrimitive();
68
- return this;
69
- }
70
-
71
- // 移除水面
72
- }, {
73
- key: "remove",
74
- value: function remove() {
75
- if (this.isDestroyed || !this._isAdded) {
76
- return;
77
- }
78
- var map = this.getMap();
79
- if (map && this.primitive) {
80
- map.scene.primitives.remove(this.primitive);
81
- }
82
- this.primitive = null;
83
- this.material = null;
84
- this._isAdded = false;
85
- }
86
-
87
- // 显示隐藏
88
- }, {
89
- key: "show",
90
- value: function show(isShow) {
91
- if (!this._canOperate()) {
92
- return;
93
- }
94
- this.style.show = isShow;
95
- if (this.primitive) {
96
- this.primitive.show = isShow;
97
- }
98
- return this;
99
- }
100
-
101
- // 更新水面范围
102
- }, {
103
- key: "setData",
104
- value: function setData() {
105
- var positions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
106
- if (!this._canOperate()) {
107
- return;
108
- }
109
- this.positions = positions;
110
- this._cartesianPositions = this._transformPositions(positions);
111
- if (this._isAdded) {
112
- this._rebuildPrimitive();
113
- }
114
- return this;
115
- }
116
-
117
- // 更新水面样式
118
- }, {
119
- key: "setStyle",
120
- value: function setStyle() {
121
- var style = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
122
- if (!this._canOperate()) {
123
- return;
124
- }
125
- var needRebuild = REBUILD_STYLE_KEYS.some(function (key) {
126
- return Object.prototype.hasOwnProperty.call(style, key);
127
- });
128
- this.style = merge(this.style, cloneDeep(style || {}));
129
- if (!this._isAdded) {
130
- return this;
131
- }
132
- if (needRebuild) {
133
- this._rebuildPrimitive();
134
- } else {
135
- this._updateMaterialUniforms();
136
- this.show(this.style.show);
137
- }
138
- return this;
139
- }
140
-
141
- // 飞行至水面位置
142
- }, {
143
- key: "flyTo",
144
- value: function flyTo() {
145
- var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
146
- if (!this._canOperate() || !this.getMap()) {
147
- return;
148
- }
149
- if (this._cartesianPositions.length < 3) {
150
- return;
151
- }
152
- utils.cameraFlyToPositions(this.getMap().camera, this._cartesianPositions, _objectSpread({
153
- scale: 1.4
154
- }, options));
155
- }
156
-
157
- // 销毁
158
- }, {
159
- key: "destroy",
160
- value: function destroy() {
161
- if (this.isDestroyed) {
162
- return;
163
- }
164
- this.remove();
165
- this.positions = [];
166
- this._cartesianPositions = [];
167
- this._mapContext = undefined;
168
- this.isDestroyed = true;
169
- }
170
-
171
- // 是否能进行操作
172
- }, {
173
- key: "_canOperate",
174
- value: function _canOperate() {
175
- if (this.isDestroyed) {
176
- utils.error('DynamicWater实例已销毁');
177
- return false;
178
- }
179
- return true;
180
- }
181
- }, {
182
- key: "_rebuildPrimitive",
183
- value: function _rebuildPrimitive() {
184
- var map = this.getMap();
185
- if (!map) {
186
- return;
187
- }
188
- if (this.primitive) {
189
- map.scene.primitives.remove(this.primitive);
190
- this.primitive = null;
191
- this.material = null;
192
- }
193
- if (this._cartesianPositions.length < 3) {
194
- utils.error('DynamicWater至少需要3个有效点');
195
- this._isAdded = false;
196
- return;
197
- }
198
- var geometry = new Cesium.PolygonGeometry({
199
- polygonHierarchy: new Cesium.PolygonHierarchy(this._cartesianPositions),
200
- vertexFormat: Cesium.MaterialAppearance.MaterialSupport.ALL.vertexFormat,
201
- height: this.style.height,
202
- stRotation: utils.toRadians(this.style.stRotation || 0),
203
- perPositionHeight: false
204
- });
205
- var material = Cesium.Material.fromType(Cesium.Material.WaterType, this._getWaterUniforms());
206
- var primitive = map.scene.primitives.add(new Cesium.Primitive({
207
- geometryInstances: new Cesium.GeometryInstance({
208
- id: this.id,
209
- geometry: geometry
210
- }),
211
- appearance: new Cesium.MaterialAppearance({
212
- material: material,
213
- faceForward: true,
214
- translucent: true,
215
- materialSupport: Cesium.MaterialAppearance.MaterialSupport.ALL
216
- }),
217
- asynchronous: false
218
- }));
219
- primitive.show = this.style.show;
220
- this.material = material;
221
- this.primitive = primitive;
222
- this._isAdded = true;
223
- }
224
- }, {
225
- key: "_updateMaterialUniforms",
226
- value: function _updateMaterialUniforms() {
227
- var material = this.material;
228
- if (!material) {
229
- return;
230
- }
231
- var uniforms = this._getWaterUniforms();
232
- Object.keys(uniforms).forEach(function (key) {
233
- material.uniforms[key] = uniforms[key];
234
- });
235
- }
236
- }, {
237
- key: "_getWaterUniforms",
238
- value: function _getWaterUniforms() {
239
- var _this$style = this.style,
240
- baseWaterColor = _this$style.baseWaterColor,
241
- blendColor = _this$style.blendColor,
242
- specularMap = _this$style.specularMap,
243
- normalMap = _this$style.normalMap,
244
- frequency = _this$style.frequency,
245
- animationSpeed = _this$style.animationSpeed,
246
- amplitude = _this$style.amplitude,
247
- specularIntensity = _this$style.specularIntensity,
248
- fadeFactor = _this$style.fadeFactor;
249
- return {
250
- baseWaterColor: utils.colorString(baseWaterColor),
251
- blendColor: utils.colorString(blendColor),
252
- specularMap: specularMap,
253
- normalMap: normalMap,
254
- frequency: frequency,
255
- animationSpeed: animationSpeed,
256
- amplitude: amplitude,
257
- specularIntensity: specularIntensity,
258
- fadeFactor: fadeFactor
259
- };
260
- }
261
- }, {
262
- key: "_transformPositions",
263
- value: function _transformPositions() {
264
- var _this = this;
265
- var positions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
266
- return positions.map(function (position) {
267
- return _this._transformPosition(position);
268
- }).filter(Boolean);
269
- }
270
- }, {
271
- key: "_transformPosition",
272
- value: function _transformPosition(position) {
273
- if (Array.isArray(position)) {
274
- var _position = _slicedToArray(position, 3),
275
- lng = _position[0],
276
- lat = _position[1],
277
- _position$ = _position[2],
278
- alt = _position$ === void 0 ? 0 : _position$;
279
- return utils.lngLatAltToCartesian3(lng, lat, alt);
280
- }
281
- if (position && _typeof(position) === 'object') {
282
- return utils.lngLatAltToCartesian3(position.lng, position.lat, position.alt || 0);
283
- }
284
- return null;
285
- }
286
- }]);
287
- return DynamicWater;
288
- }();
289
- export { DynamicWater as default };
1
+ function _0x4707(){var _0x3b41ad=['Dg9qCMLTAxrPDMu','x2nHBK9WzxjHDgu','y2fSBa','nZaWmM5muvrTzq','nZy2ndGWoe1vz3fvvG','y29UzMLNDxjHyMXL','Cg9ZAxrPB25Z','z2v0t3DUuhjVCgvYDhLezxnJCMLWDg9YCW','twf0zxjPywXbChbLyxjHBMnL','x2nHCNrLC2LHBLbVC2L0Aw9UCW','uhjPBwL0AxzL','twf0zxjPywW','Bg5Ntgf0qwX0vg9dyxj0zxnPyw4Z','yMXLBMrdB2XVCG','yw1WBgL0DwrL','zgvZDhjVEq','nte3qMrRA05X','quXm','CMv0DxjU','x3rYyw5ZzM9YBvbVC2L0Aw9U','u2v0','x2LZqwrKzwq','BM9YBwfStwfW','mwTAv09Qzq','BgvUz3rO','zMLSDgvY','Axnezxn0CM95zwq','D3jPDgfIBgu','ug9SEwDVBKHPzxjHCMnOEq','ndu5nduWneX4t3zVzW','yxbWBhK','ntbgu0DxDve','mti2nJC0mLL3qxbcCW','y29UC3rYDwn0B3i','rhLUyw1Py1DHDgvY6iEZ5Bcr6zYa6kAbm+s4QUACIEAvIoEcUq','C2nLBMu','z2v0t3DUuhjVCgvYDhLezxnJCMLWDg9Y','odK5ndq1nfbUANHOwG','A2v5CW','CMvTB3zL','ChvZAa','AgvPz2H0','Dw5PzM9YBxm','v2f0zxjuExbL','C2XPy2u','Dg9sywrPyw5Z','Bgf0','nJuYndm0v2zlwvjH','x2DLDfDHDgvYvw5PzM9YBxm','AxnbCNjHEq','otCWAe5Psezh','z2v0twfW','DMfSDwu','ywX0','C3LTyM9S','zgvMyxvSDa','x21HCenVBNrLEhq','zxjYB3i','B2jQzwn0','ChjPBwL0AxzL','zgvMAw5LuhjVCgvYDhK','zg9Uzq','C3rYAw5N','Bwf0zxjPywW','ntiYmJy0ALjkB0TW','m1D3rMHxsq','q2fUBM90ignHBgWGysbJBgfZCYbHCYbHigz1BMn0Aw9U','zM9YrwfJAa','ChjPBwL0AxzLCW','y29SB3jtDhjPBMC','qeb0B1bYAw1PDgL2zsbTDxn0ihjLDhvYBIbHihbYAw1PDgL2zsb2ywX1zs4','C2HVDW','zNjVBq','C3r5Bgu','x3jLyNvPBgrqCMLTAxrPDMu','ChjVDg90ExbL'];_0x4707=function(){return _0x3b41ad;};return _0x4707();}var _0x3bbe41=_0x35a4;(function(_0x2b2dd8,_0x5c357e){var _0x257655=_0x35a4,_0x10c885=_0x2b2dd8();while(!![]){try{var _0xbff1aa=parseInt(_0x257655(0x143))/0x1*(parseInt(_0x257655(0x14c))/0x2)+parseInt(_0x257655(0x121))/0x3*(-parseInt(_0x257655(0x149))/0x4)+parseInt(_0x257655(0x14b))/0x5*(-parseInt(_0x257655(0x15b))/0x6)+parseInt(_0x257655(0x151))/0x7+-parseInt(_0x257655(0x130))/0x8+-parseInt(_0x257655(0x12f))/0x9*(parseInt(_0x257655(0x15e))/0xa)+-parseInt(_0x257655(0x13c))/0xb*(-parseInt(_0x257655(0x120))/0xc);if(_0xbff1aa===_0x5c357e)break;else _0x10c885['push'](_0x10c885['shift']());}catch(_0x4cfb14){_0x10c885['push'](_0x10c885['shift']());}}}(_0x4707,0xa97e4));function _typeof(_0x577588){'@babel/helpers - typeof';var _0x98c61f=_0x35a4;return _typeof='function'==typeof Symbol&&_0x98c61f(0x162)==typeof Symbol['iterator']?function(_0x23136f){return typeof _0x23136f;}:function(_0x266b3f){var _0x233660=_0x98c61f;return _0x266b3f&&'function'==typeof Symbol&&_0x266b3f['constructor']===Symbol&&_0x266b3f!==Symbol[_0x233660(0x12b)]?_0x233660(0x162):typeof _0x266b3f;},_typeof(_0x577588);}function _slicedToArray(_0x7a0b01,_0x297ca7){return _arrayWithHoles(_0x7a0b01)||_iterableToArrayLimit(_0x7a0b01,_0x297ca7)||_unsupportedIterableToArray(_0x7a0b01,_0x297ca7)||_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(_0x2ac6f9,_0x727d5d){var _0x1dd7ef=_0x35a4;if(!_0x2ac6f9)return;if(typeof _0x2ac6f9==='string')return _arrayLikeToArray(_0x2ac6f9,_0x727d5d);var _0x43d95d=Object[_0x1dd7ef(0x12b)]['toString'][_0x1dd7ef(0x12e)](_0x2ac6f9)[_0x1dd7ef(0x158)](0x8,-0x1);if(_0x43d95d==='Object'&&_0x2ac6f9[_0x1dd7ef(0x14d)])_0x43d95d=_0x2ac6f9['constructor']['name'];if(_0x43d95d==='Map'||_0x43d95d===_0x1dd7ef(0x140))return Array[_0x1dd7ef(0x128)](_0x2ac6f9);if(_0x43d95d==='Arguments'||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/['test'](_0x43d95d))return _arrayLikeToArray(_0x2ac6f9,_0x727d5d);}function _arrayLikeToArray(_0x18000b,_0x4c7df6){var _0x34c827=_0x35a4;if(_0x4c7df6==null||_0x4c7df6>_0x18000b[_0x34c827(0x144)])_0x4c7df6=_0x18000b[_0x34c827(0x144)];for(var _0x41214c=0x0,_0x3effc7=new Array(_0x4c7df6);_0x41214c<_0x4c7df6;_0x41214c++)_0x3effc7[_0x41214c]=_0x18000b[_0x41214c];return _0x3effc7;}function _iterableToArrayLimit(_0xdfe556,_0xef0bc9){var _0x5b5ca3=_0x35a4,_0x2023be=null==_0xdfe556?null:'undefined'!=typeof Symbol&&_0xdfe556[Symbol['iterator']]||_0xdfe556['@@iterator'];if(null!=_0x2023be){var _0x4eb5ba,_0xec1ce9,_0x2b845d,_0x1590c2,_0x110abf=[],_0x40d2c0=!0x0,_0x446103=!0x1;try{if(_0x2b845d=(_0x2023be=_0x2023be[_0x5b5ca3(0x12e)](_0xdfe556))['next'],0x0===_0xef0bc9){if(Object(_0x2023be)!==_0x2023be)return;_0x40d2c0=!0x1;}else{for(;!(_0x40d2c0=(_0x4eb5ba=_0x2b845d[_0x5b5ca3(0x12e)](_0x2023be))[_0x5b5ca3(0x11d)])&&(_0x110abf[_0x5b5ca3(0x154)](_0x4eb5ba['value']),_0x110abf[_0x5b5ca3(0x144)]!==_0xef0bc9);_0x40d2c0=!0x0);}}catch(_0xe9f440){_0x446103=!0x0,_0xec1ce9=_0xe9f440;}finally{try{if(!_0x40d2c0&&null!=_0x2023be[_0x5b5ca3(0x13e)]&&(_0x1590c2=_0x2023be[_0x5b5ca3(0x13e)](),Object(_0x1590c2)!==_0x1590c2))return;}finally{if(_0x446103)throw _0xec1ce9;}}return _0x110abf;}}function _arrayWithHoles(_0x230f53){var _0x517af7=_0x35a4;if(Array[_0x517af7(0x15d)](_0x230f53))return _0x230f53;}function ownKeys(_0x490104,_0x4e45c5){var _0x49bb72=_0x35a4,_0x584649=Object[_0x49bb72(0x152)](_0x490104);if(Object['getOwnPropertySymbols']){var _0x3491e0=Object['getOwnPropertySymbols'](_0x490104);_0x4e45c5&&(_0x3491e0=_0x3491e0[_0x49bb72(0x145)](function(_0x250a58){var _0x5667e2=_0x49bb72;return Object[_0x5667e2(0x150)](_0x490104,_0x250a58)['enumerable'];})),_0x584649[_0x49bb72(0x154)][_0x49bb72(0x14a)](_0x584649,_0x3491e0);}return _0x584649;}function _objectSpread(_0x4fa54d){var _0x279fff=_0x35a4;for(var _0x4d7cdb=0x1;_0x4d7cdb<arguments[_0x279fff(0x144)];_0x4d7cdb++){var _0x4ab0ae=null!=arguments[_0x4d7cdb]?arguments[_0x4d7cdb]:{};_0x4d7cdb%0x2?ownKeys(Object(_0x4ab0ae),!0x0)['forEach'](function(_0x4bfc07){_defineProperty(_0x4fa54d,_0x4bfc07,_0x4ab0ae[_0x4bfc07]);}):Object[_0x279fff(0x133)]?Object['defineProperties'](_0x4fa54d,Object[_0x279fff(0x133)](_0x4ab0ae)):ownKeys(Object(_0x4ab0ae))[_0x279fff(0x123)](function(_0x189785){Object['defineProperty'](_0x4fa54d,_0x189785,Object['getOwnPropertyDescriptor'](_0x4ab0ae,_0x189785));});}return _0x4fa54d;}function _classCallCheck(_0xcf57e1,_0x87c120){var _0x25a4e2=_0x35a4;if(!(_0xcf57e1 instanceof _0x87c120))throw new TypeError(_0x25a4e2(0x122));}function _defineProperties(_0x1502cc,_0x138f10){var _0x5a4b6f=_0x35a4;for(var _0x5b4296=0x0;_0x5b4296<_0x138f10['length'];_0x5b4296++){var _0x29b175=_0x138f10[_0x5b4296];_0x29b175['enumerable']=_0x29b175['enumerable']||![],_0x29b175[_0x5a4b6f(0x131)]=!![];if(_0x5a4b6f(0x160)in _0x29b175)_0x29b175[_0x5a4b6f(0x147)]=!![];Object[_0x5a4b6f(0x11c)](_0x1502cc,_toPropertyKey(_0x29b175['key']),_0x29b175);}}function _createClass(_0x16ddd5,_0x5f298b,_0x2a6ef4){var _0x449cb3=_0x35a4;if(_0x5f298b)_defineProperties(_0x16ddd5[_0x449cb3(0x12b)],_0x5f298b);if(_0x2a6ef4)_defineProperties(_0x16ddd5,_0x2a6ef4);return Object[_0x449cb3(0x11c)](_0x16ddd5,_0x449cb3(0x12b),{'writable':![]}),_0x16ddd5;}function _defineProperty(_0xbeb279,_0xa24253,_0x1be9b9){return _0xa24253=_toPropertyKey(_0xa24253),_0xa24253 in _0xbeb279?Object['defineProperty'](_0xbeb279,_0xa24253,{'value':_0x1be9b9,'enumerable':!![],'configurable':!![],'writable':!![]}):_0xbeb279[_0xa24253]=_0x1be9b9,_0xbeb279;}function _toPropertyKey(_0x4509f4){var _0x23f065=_0x35a4,_0x4f5eaf=_toPrimitive(_0x4509f4,_0x23f065(0x11e));return'symbol'==_typeof(_0x4f5eaf)?_0x4f5eaf:String(_0x4f5eaf);}function _toPrimitive(_0x495eca,_0x3c85df){var _0x1dc6ad=_0x35a4;if(_0x1dc6ad(0x11a)!=_typeof(_0x495eca)||!_0x495eca)return _0x495eca;var _0x112d87=_0x495eca[Symbol[_0x1dc6ad(0x12c)]];if(void 0x0!==_0x112d87){var _0x356912=_0x112d87['call'](_0x495eca,_0x3c85df||_0x1dc6ad(0x163));if(_0x1dc6ad(0x11a)!=_typeof(_0x356912))return _0x356912;throw new TypeError(_0x1dc6ad(0x126));}return('string'===_0x3c85df?String:Number)(_0x495eca);}import*as _0x3b8b55 from'deeptwins-cesium';import{cloneDeep,merge}from'lodash';import{v4 as _0x296b3e}from'uuid';import{DEFAULT_DYNAMIC_WATER_STYLE}from'../constant';import*as _0x44d6d7 from'../tool/utils';var REBUILD_STYLE_KEYS=[_0x3bbe41(0x155),'stRotation'],DynamicWater=(function(){var _0x531773=_0x3bbe41;function _0x31bc5c(){var _0x2a3ac0=_0x35a4,_0x588831=arguments[_0x2a3ac0(0x144)]>0x0&&arguments[0x0]!==undefined?arguments[0x0]:{};_classCallCheck(this,_0x31bc5c),_defineProperty(this,_0x2a3ac0(0x164),void 0x0),_defineProperty(this,'id',void 0x0),_defineProperty(this,_0x2a3ac0(0x132),[]),_defineProperty(this,_0x2a3ac0(0x129),void 0x0),_defineProperty(this,_0x2a3ac0(0x11b),null),_defineProperty(this,'material',null),_defineProperty(this,_0x2a3ac0(0x146),![]),_defineProperty(this,_0x2a3ac0(0x135),[]),_defineProperty(this,'_isAdded',![]);var _0x3f7188=_0x588831['positions'],_0x2112fd=_0x3f7188===void 0x0?[]:_0x3f7188,_0x4415f9=_0x588831['style'],_0x19c262=_0x4415f9===void 0x0?{}:_0x4415f9;this['id']=_0x296b3e(),this['positions']=_0x2112fd,this['style']=merge(DEFAULT_DYNAMIC_WATER_STYLE(),cloneDeep(_0x19c262||{})),this['_cartesianPositions']=this['_transformPositions'](this[_0x2a3ac0(0x132)]);}return _createClass(_0x31bc5c,[{'key':_0x531773(0x15f),'value':function _0x5302e8(){var _0xdc8221=_0x531773,_0xc7e494;return(_0xc7e494=this['_mapContext'])===null||_0xc7e494===void 0x0?void 0x0:_0xc7e494[_0xdc8221(0x15f)]();}},{'key':'addToMap','value':function _0x5d86f8(_0x3cb2c5){var _0x4aeb11=_0x531773;if(!this[_0x4aeb11(0x12d)]())return;if(this[_0x4aeb11(0x141)]&&this['getMap']()===_0x3cb2c5)return this;return this['_isAdded']&&this[_0x4aeb11(0x153)](),this['_mapContext']=_0x3cb2c5[_0x4aeb11(0x164)],this['_rebuildPrimitive'](),this;}},{'key':_0x531773(0x153),'value':function _0xfe6149(){var _0x2945ee=_0x531773;if(this[_0x2945ee(0x146)]||!this[_0x2945ee(0x141)])return;var _0x176046=this[_0x2945ee(0x15f)]();_0x176046&&this[_0x2945ee(0x11b)]&&_0x176046['scene']['primitives']['remove'](this[_0x2945ee(0x11b)]),this[_0x2945ee(0x11b)]=null,this[_0x2945ee(0x11f)]=null,this['_isAdded']=![];}},{'key':'show','value':function _0x1b86e9(_0x4fba26){var _0x40f523=_0x531773;if(!this['_canOperate']())return;return this['style'][_0x40f523(0x127)]=_0x4fba26,this['primitive']&&(this[_0x40f523(0x11b)][_0x40f523(0x127)]=_0x4fba26),this;}},{'key':'setData','value':function _0x1bcd73(){var _0x543666=_0x531773,_0x53797f=arguments['length']>0x0&&arguments[0x0]!==undefined?arguments[0x0]:[];if(!this['_canOperate']())return;return this['positions']=_0x53797f,this[_0x543666(0x135)]=this['_transformPositions'](_0x53797f),this['_isAdded']&&this['_rebuildPrimitive'](),this;}},{'key':'setStyle','value':function _0x28603f(){var _0x5a193d=_0x531773,_0x4a1eb1=arguments[_0x5a193d(0x144)]>0x0&&arguments[0x0]!==undefined?arguments[0x0]:{};if(!this[_0x5a193d(0x12d)]())return;var _0x2af902=REBUILD_STYLE_KEYS['some'](function(_0x475fa0){var _0x4ef207=_0x5a193d;return Object[_0x4ef207(0x12b)]['hasOwnProperty']['call'](_0x4a1eb1,_0x475fa0);});this[_0x5a193d(0x129)]=merge(this[_0x5a193d(0x129)],cloneDeep(_0x4a1eb1||{}));if(!this['_isAdded'])return this;return _0x2af902?this['_rebuildPrimitive']():(this['_updateMaterialUniforms'](),this['show'](this['style'][_0x5a193d(0x127)])),this;}},{'key':'flyTo','value':function _0x39adf8(){var _0x123b64=_0x531773,_0x202495=arguments['length']>0x0&&arguments[0x0]!==undefined?arguments[0x0]:{};if(!this['_canOperate']()||!this['getMap']())return;if(this['_cartesianPositions'][_0x123b64(0x144)]<0x3)return;_0x44d6d7['cameraFlyToPositions'](this[_0x123b64(0x15f)]()['camera'],this[_0x123b64(0x135)],_objectSpread({'scale':1.4},_0x202495));}},{'key':_0x531773(0x13b),'value':function _0x410074(){var _0x5d0691=_0x531773;if(this[_0x5d0691(0x146)])return;this[_0x5d0691(0x153)](),this['positions']=[],this['_cartesianPositions']=[],this['_mapContext']=undefined,this[_0x5d0691(0x146)]=!![];}},{'key':_0x531773(0x12d),'value':function _0x2ca481(){var _0x44b9c4=_0x531773;if(this[_0x44b9c4(0x146)])return _0x44d6d7[_0x44b9c4(0x165)]('DynamicWater实例已销毁'),![];return!![];}},{'key':_0x531773(0x12a),'value':function _0x5af604(){var _0x3a0bac=_0x531773,_0x37e149=this[_0x3a0bac(0x15f)]();if(!_0x37e149)return;this['primitive']&&(_0x37e149[_0x3a0bac(0x14f)]['primitives'][_0x3a0bac(0x153)](this[_0x3a0bac(0x11b)]),this['primitive']=null,this['material']=null);if(this[_0x3a0bac(0x135)]['length']<0x3){_0x44d6d7['error'](_0x3a0bac(0x14e)),this['_isAdded']=![];return;}var _0x4d09ad=new _0x3b8b55['PolygonGeometry']({'polygonHierarchy':new _0x3b8b55[(_0x3a0bac(0x148))](this['_cartesianPositions']),'vertexFormat':_0x3b8b55['MaterialAppearance']['MaterialSupport'][_0x3a0bac(0x13d)]['vertexFormat'],'height':this['style']['height'],'stRotation':_0x44d6d7[_0x3a0bac(0x159)](this[_0x3a0bac(0x129)]['stRotation']||0x0),'perPositionHeight':![]}),_0x95150=_0x3b8b55[_0x3a0bac(0x137)]['fromType'](_0x3b8b55['Material'][_0x3a0bac(0x157)],this[_0x3a0bac(0x15c)]()),_0x267804=_0x37e149['scene'][_0x3a0bac(0x124)]['add'](new _0x3b8b55[(_0x3a0bac(0x136))]({'geometryInstances':new _0x3b8b55['GeometryInstance']({'id':this['id'],'geometry':_0x4d09ad}),'appearance':new _0x3b8b55['MaterialAppearance']({'material':_0x95150,'faceForward':!![],'translucent':!![],'materialSupport':_0x3b8b55[_0x3a0bac(0x134)]['MaterialSupport']['ALL']}),'asynchronous':![]}));_0x267804[_0x3a0bac(0x127)]=this['style'][_0x3a0bac(0x127)],this['material']=_0x95150,this[_0x3a0bac(0x11b)]=_0x267804,this[_0x3a0bac(0x141)]=!![];}},{'key':'_updateMaterialUniforms','value':function _0x5f3cb4(){var _0x147be9=_0x531773,_0x517b9b=this['material'];if(!_0x517b9b)return;var _0x3286f1=this[_0x147be9(0x15c)]();Object[_0x147be9(0x152)](_0x3286f1)['forEach'](function(_0x1daa16){var _0x342e62=_0x147be9;_0x517b9b[_0x342e62(0x156)][_0x1daa16]=_0x3286f1[_0x1daa16];});}},{'key':_0x531773(0x15c),'value':function _0x4252e4(){var _0x166255=_0x531773,_0x131c82=this[_0x166255(0x129)],_0x37e7bd=_0x131c82['baseWaterColor'],_0x5f18f7=_0x131c82[_0x166255(0x139)],_0x2b357d=_0x131c82['specularMap'],_0x5c1d3e=_0x131c82[_0x166255(0x142)],_0x2ca173=_0x131c82['frequency'],_0x4afc84=_0x131c82['animationSpeed'],_0x32e189=_0x131c82[_0x166255(0x13a)],_0x496e0e=_0x131c82['specularIntensity'],_0x3533cd=_0x131c82['fadeFactor'];return{'baseWaterColor':_0x44d6d7[_0x166255(0x125)](_0x37e7bd),'blendColor':_0x44d6d7['colorString'](_0x5f18f7),'specularMap':_0x2b357d,'normalMap':_0x5c1d3e,'frequency':_0x2ca173,'animationSpeed':_0x4afc84,'amplitude':_0x32e189,'specularIntensity':_0x496e0e,'fadeFactor':_0x3533cd};}},{'key':'_transformPositions','value':function _0x3e2907(){var _0x5ce7b0=_0x531773,_0x223b9d=this,_0x1c72b8=arguments['length']>0x0&&arguments[0x0]!==undefined?arguments[0x0]:[];return _0x1c72b8['map'](function(_0x19a4c5){var _0x3d3362=_0x35a4;return _0x223b9d[_0x3d3362(0x13f)](_0x19a4c5);})[_0x5ce7b0(0x145)](Boolean);}},{'key':_0x531773(0x13f),'value':function _0x2e4bf5(_0x907ae3){var _0x44df1b=_0x531773;if(Array['isArray'](_0x907ae3)){var _0x271ea3=_slicedToArray(_0x907ae3,0x3),_0x19dca4=_0x271ea3[0x0],_0x4a3be4=_0x271ea3[0x1],_0x8c403b=_0x271ea3[0x2],_0x56eb54=_0x8c403b===void 0x0?0x0:_0x8c403b;return _0x44d6d7[_0x44df1b(0x138)](_0x19dca4,_0x4a3be4,_0x56eb54);}if(_0x907ae3&&_typeof(_0x907ae3)==='object')return _0x44d6d7['lngLatAltToCartesian3'](_0x907ae3['lng'],_0x907ae3[_0x44df1b(0x15a)],_0x907ae3[_0x44df1b(0x161)]||0x0);return null;}}]),_0x31bc5c;}());function _0x35a4(_0x28c0b6,_0x36de52){_0x28c0b6=_0x28c0b6-0x11a;var _0x47079c=_0x4707();var _0x35a4d8=_0x47079c[_0x28c0b6];if(_0x35a4['XgnEjr']===undefined){var _0x1b8348=function(_0x453e7e){var _0x1b957f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x3b8b55='',_0x296b3e='';for(var _0x44d6d7=0x0,_0x577588,_0x23136f,_0x266b3f=0x0;_0x23136f=_0x453e7e['charAt'](_0x266b3f++);~_0x23136f&&(_0x577588=_0x44d6d7%0x4?_0x577588*0x40+_0x23136f:_0x23136f,_0x44d6d7++%0x4)?_0x3b8b55+=String['fromCharCode'](0xff&_0x577588>>(-0x2*_0x44d6d7&0x6)):0x0){_0x23136f=_0x1b957f['indexOf'](_0x23136f);}for(var _0x7a0b01=0x0,_0x297ca7=_0x3b8b55['length'];_0x7a0b01<_0x297ca7;_0x7a0b01++){_0x296b3e+='%'+('00'+_0x3b8b55['charCodeAt'](_0x7a0b01)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x296b3e);};_0x35a4['fExViL']=_0x1b8348,_0x35a4['uZGsmS']={},_0x35a4['XgnEjr']=!![];}var _0xc3885e=_0x47079c[0x0],_0x44fd7a=_0x28c0b6+_0xc3885e,_0x38b6fd=_0x35a4['uZGsmS'][_0x44fd7a];return!_0x38b6fd?(_0x35a4d8=_0x35a4['fExViL'](_0x35a4d8),_0x35a4['uZGsmS'][_0x44fd7a]=_0x35a4d8):_0x35a4d8=_0x38b6fd,_0x35a4d8;}export{DynamicWater as default};
@@ -1,248 +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 _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
9
- 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); } }
10
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
11
- 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; }
12
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
13
- 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); }
14
- import * as Cesium from 'deeptwins-cesium';
15
- import { merge } from 'lodash';
16
- import { v4 as uuidv4 } from 'uuid';
17
- import { DEFAULT_FRUSTUM_OPTIONS } from "../constant";
18
- import * as utils from "../tool/utils";
19
-
20
- // 视锥体
21
- var Frustum = /*#__PURE__*/function () {
22
- function Frustum(map, options) {
23
- _classCallCheck(this, Frustum);
24
- _defineProperty(this, "_mapContext", void 0);
25
- // 参数
26
- _defineProperty(this, "options", void 0);
27
- // 视锥面
28
- _defineProperty(this, "frustumPrimitive", void 0);
29
- // 视锥线
30
- _defineProperty(this, "frustumLinePrimitive", void 0);
31
- _defineProperty(this, "isDestroyed", false);
32
- this._mapContext = map._mapContext;
33
- this.options = merge(DEFAULT_FRUSTUM_OPTIONS(), options);
34
- this._addFrustum();
35
- }
36
- _createClass(Frustum, [{
37
- key: "getMap",
38
- value: function getMap() {
39
- return this._mapContext && this._mapContext.getMap();
40
- }
41
-
42
- // 是否能进行操作
43
- }, {
44
- key: "_canOperate",
45
- value: function _canOperate() {
46
- if (this.isDestroyed) {
47
- utils.error('Frustum实例已销毁');
48
- return false;
49
- }
50
- return true;
51
- }
52
- }, {
53
- key: "_addFrustum",
54
- value: function _addFrustum() {
55
- var _this$options = this.options,
56
- show = _this$options.show,
57
- _this$options$positio = _this$options.position,
58
- position = _this$options$positio === void 0 ? [] : _this$options$positio,
59
- fov = _this$options.fov,
60
- near = _this$options.near,
61
- far = _this$options.far,
62
- aspectRatio = _this$options.aspectRatio,
63
- _this$options$heading = _this$options.heading,
64
- heading = _this$options$heading === void 0 ? 0 : _this$options$heading,
65
- _this$options$pitch = _this$options.pitch,
66
- pitch = _this$options$pitch === void 0 ? 0 : _this$options$pitch,
67
- _this$options$roll = _this$options.roll,
68
- roll = _this$options$roll === void 0 ? 0 : _this$options$roll,
69
- fill = _this$options.fill,
70
- color = _this$options.color,
71
- outline = _this$options.outline,
72
- outlineColor = _this$options.outlineColor,
73
- isWithCamera = _this$options.isWithCamera,
74
- _this$options$camera = _this$options.camera,
75
- paramCamera = _this$options$camera === void 0 ? this.getMap().camera : _this$options$camera;
76
- var camera = isWithCamera ? paramCamera : new Cesium.Camera(this.getMap().scene);
77
- var _position = _slicedToArray(position, 3),
78
- lng = _position[0],
79
- lat = _position[1],
80
- alt = _position[2];
81
- var positionCartesian3 = utils.lngLatAltToCartesian3(lng, lat, alt);
82
- if (!isWithCamera) {
83
- camera.position = utils.lngLatAltToCartesian3(lng, lat, alt);
84
- var hpr = new Cesium.HeadingPitchRoll(utils.toRadians(heading),
85
- // Heading (航向,绕 Z 轴)
86
- utils.toRadians(pitch),
87
- // Pitch (俯仰,绕 X 轴)
88
- utils.toRadians(roll)) // Roll (横滚,绕 Y 轴)
89
- ;
90
- camera.setView({
91
- destination: camera.position,
92
- // 或者直接用 position
93
- orientation: hpr
94
- });
95
- }
96
- var frustum = new Cesium.PerspectiveFrustum({
97
- // 查看的视场角
98
- fov: fov ? utils.toRadians(fov) : camera.frustum.fov,
99
- // 视锥体的宽度/高度
100
- aspectRatio: aspectRatio ? aspectRatio : camera.frustum.aspectRatio,
101
- // 近面距视点的距离
102
- near: near ? near : camera.frustum.near,
103
- // 远面距视点的距离
104
- far: far ? far : camera.frustum.far
105
- });
106
-
107
- // 计算摄像机的方向四元数
108
- var direction = Cesium.Cartesian3.clone(camera.directionWC);
109
- var up = Cesium.Cartesian3.clone(camera.upWC);
110
- var right = Cesium.Cartesian3.clone(camera.rightWC);
111
- var rotationMatrix = new Cesium.Matrix3();
112
- Cesium.Matrix3.setColumn(rotationMatrix, 0, right, rotationMatrix); // X 轴
113
- Cesium.Matrix3.setColumn(rotationMatrix, 1, up, rotationMatrix); // Y 轴
114
- Cesium.Matrix3.setColumn(rotationMatrix, 2, direction, rotationMatrix); // Z 轴
115
- var modelMatrix = Cesium.Matrix4.fromRotationTranslation(rotationMatrix, positionCartesian3);
116
- this.frustumPrimitive = new Cesium.Primitive({
117
- geometryInstances: new Cesium.GeometryInstance({
118
- id: uuidv4(),
119
- geometry: new Cesium.FrustumGeometry({
120
- frustum: frustum,
121
- origin: Cesium.Cartesian3.ZERO,
122
- orientation: Cesium.Quaternion.IDENTITY
123
- }),
124
- modelMatrix: modelMatrix,
125
- attributes: {
126
- color: fill ? utils.colorInstanceString(color) : utils.colorInstanceString('rgba(0, 0, 0, 0)')
127
- }
128
- }),
129
- releaseGeometryInstances: false,
130
- appearance: new Cesium.PerInstanceColorAppearance({
131
- closed: true,
132
- flat: true
133
- }),
134
- asynchronous: false
135
- });
136
- this.frustumPrimitive.show = show;
137
- this.getMap().scene.primitives.add(this.frustumPrimitive);
138
- if (outline) {
139
- this.frustumLinePrimitive = new Cesium.Primitive({
140
- geometryInstances: new Cesium.GeometryInstance({
141
- id: uuidv4(),
142
- geometry: new Cesium.FrustumOutlineGeometry({
143
- frustum: frustum,
144
- origin: Cesium.Cartesian3.ZERO,
145
- orientation: Cesium.Quaternion.IDENTITY
146
- }),
147
- modelMatrix: modelMatrix,
148
- attributes: {
149
- color: utils.colorInstanceString(outlineColor)
150
- }
151
- }),
152
- appearance: new Cesium.PerInstanceColorAppearance({
153
- closed: true,
154
- flat: true
155
- }),
156
- asynchronous: false
157
- });
158
- this.frustumLinePrimitive.show = show;
159
- this.getMap().scene.primitives.add(this.frustumLinePrimitive);
160
- }
161
- }
162
-
163
- /**
164
- * 获取视锥体投影面的顶点坐标
165
- * @param type 投影面类型: 'near'(近裁剪面) 或 'far'(远裁剪面)
166
- * @returns 投影面的4个顶点坐标数组 [[lng, lat, alt], ...]
167
- */
168
- }, {
169
- key: "getProjectionPlane",
170
- value: function getProjectionPlane() {
171
- var type = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'far';
172
- if (!this._canOperate()) {
173
- return;
174
- }
175
- var geometry = Cesium.FrustumOutlineGeometry.createGeometry(this.frustumPrimitive.geometryInstances.geometry);
176
- var positions = geometry.attributes.position.values;
177
-
178
- // 获取模型变换矩阵
179
- var modelMatrix = this.frustumPrimitive.geometryInstances.modelMatrix;
180
-
181
- // FrustumGeometry 的顶点顺序:前4个是近裁剪面,后4个是远裁剪面
182
- // 每个面有4个顶点,每个顶点3个坐标值
183
- var startIndex = type === 'near' ? 0 : 12; // 近面从0开始,远面从12(4*3)开始
184
- var endIndex = startIndex + 12; // 4个顶点 * 3个坐标
185
-
186
- var result = [];
187
- for (var i = startIndex; i < endIndex; i += 3) {
188
- var localPosition = new Cesium.Cartesian3(positions[i], positions[i + 1], positions[i + 2]);
189
-
190
- // 转换为世界坐标
191
- var worldPosition = Cesium.Matrix4.multiplyByPoint(modelMatrix, localPosition, new Cesium.Cartesian3());
192
- var _utils$cartesian3ToLn = utils.cartesian3ToLngLatAlt(worldPosition),
193
- lng = _utils$cartesian3ToLn.lng,
194
- lat = _utils$cartesian3ToLn.lat,
195
- alt = _utils$cartesian3ToLn.alt;
196
- result.push([lng, lat, alt]);
197
- }
198
- return result;
199
- }
200
-
201
- /**
202
- * 获取近裁剪面的顶点坐标
203
- * @returns 近裁剪面的4个顶点坐标数组
204
- */
205
- }, {
206
- key: "getNearPlane",
207
- value: function getNearPlane() {
208
- return this.getProjectionPlane('near');
209
- }
210
-
211
- /**
212
- * 获取远裁剪面的顶点坐标
213
- * @returns 远裁剪面的4个顶点坐标数组
214
- */
215
- }, {
216
- key: "getFarPlane",
217
- value: function getFarPlane() {
218
- return this.getProjectionPlane('far');
219
- }
220
-
221
- // 显示隐藏
222
- }, {
223
- key: "show",
224
- value: function show(isShow) {
225
- if (!this._canOperate()) {
226
- return;
227
- }
228
- this.frustumPrimitive && (this.frustumPrimitive.show = isShow);
229
- this.frustumLinePrimitive && (this.frustumLinePrimitive.show = isShow);
230
- }
231
-
232
- // 销毁
233
- }, {
234
- key: "destroy",
235
- value: function destroy() {
236
- if (!this._canOperate()) {
237
- return;
238
- }
239
- this.isDestroyed = true;
240
- this.frustumPrimitive && this.getMap().scene.primitives.remove(this.frustumPrimitive);
241
- this.frustumPrimitive = null;
242
- this.frustumLinePrimitive && this.getMap().scene.primitives.remove(this.frustumLinePrimitive);
243
- this.frustumLinePrimitive = null;
244
- }
245
- }]);
246
- return Frustum;
247
- }();
248
- export { Frustum as default };
1
+ (function(_0x4dcee2,_0x39ee36){var _0x40a7cc=_0x419b,_0x59d78c=_0x4dcee2();while(!![]){try{var _0x5abec7=parseInt(_0x40a7cc(0x17b))/0x1*(parseInt(_0x40a7cc(0x157))/0x2)+-parseInt(_0x40a7cc(0x172))/0x3+parseInt(_0x40a7cc(0x150))/0x4*(parseInt(_0x40a7cc(0x167))/0x5)+-parseInt(_0x40a7cc(0x143))/0x6*(parseInt(_0x40a7cc(0x134))/0x7)+-parseInt(_0x40a7cc(0x163))/0x8*(-parseInt(_0x40a7cc(0x148))/0x9)+parseInt(_0x40a7cc(0x16b))/0xa+-parseInt(_0x40a7cc(0x173))/0xb*(-parseInt(_0x40a7cc(0x13c))/0xc);if(_0x5abec7===_0x39ee36)break;else _0x59d78c['push'](_0x59d78c['shift']());}catch(_0x1c601a){_0x59d78c['push'](_0x59d78c['shift']());}}}(_0x2366,0x29e45));function _typeof(_0x4313a8){'@babel/helpers - typeof';var _0x34ee7b=_0x419b;return _typeof='function'==typeof Symbol&&_0x34ee7b(0x177)==typeof Symbol[_0x34ee7b(0x13f)]?function(_0xe25a1e){return typeof _0xe25a1e;}:function(_0x32976a){var _0x3317aa=_0x34ee7b;return _0x32976a&&'function'==typeof Symbol&&_0x32976a[_0x3317aa(0x178)]===Symbol&&_0x32976a!==Symbol[_0x3317aa(0x153)]?'symbol':typeof _0x32976a;},_typeof(_0x4313a8);}function _slicedToArray(_0x47363d,_0x48cb31){return _arrayWithHoles(_0x47363d)||_iterableToArrayLimit(_0x47363d,_0x48cb31)||_unsupportedIterableToArray(_0x47363d,_0x48cb31)||_nonIterableRest();}function _nonIterableRest(){var _0x20c41b=_0x419b;throw new TypeError(_0x20c41b(0x149));}function _unsupportedIterableToArray(_0x526ec8,_0x13c0da){var _0x235f34=_0x419b;if(!_0x526ec8)return;if(typeof _0x526ec8==='string')return _arrayLikeToArray(_0x526ec8,_0x13c0da);var _0x303f29=Object['prototype']['toString'][_0x235f34(0x151)](_0x526ec8)['slice'](0x8,-0x1);if(_0x303f29==='Object'&&_0x526ec8[_0x235f34(0x178)])_0x303f29=_0x526ec8[_0x235f34(0x178)]['name'];if(_0x303f29===_0x235f34(0x161)||_0x303f29==='Set')return Array['from'](_0x526ec8);if(_0x303f29==='Arguments'||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/[_0x235f34(0x16f)](_0x303f29))return _arrayLikeToArray(_0x526ec8,_0x13c0da);}function _0x2366(){var _0x2a9cf1=['D3jPDgfIBgu','nde4ndfZzwrfyuu','sw52ywXPzcbHDhrLBxb0ihrVigrLC3rYDwn0DxjLig5VBI1PDgvYywjSzsbPBNn0yw5Jzs4ksw4GB3jKzxiGDg8GyMuGAxrLCMfIBguSig5VBI1HCNjHEsbVyMPLy3rZig11C3qGAgf2zsbHifTtEw1IB2WUAxrLCMf0B3jDkcKGBwv0Ag9KlG','Cg9ZAxrPB24','CMvTB3zL','zMLSBa','A2v5','C3rYAw5N','x21HCenVBNrLEhq','mJbOy3n2thy','y2fSBa','y2fYDgvZAwfUm1rVtg5Ntgf0qwX0','ChjVDg90ExbL','x2fKzezYDxn0Dw0','B3b0Aw9UCW','CgL0y2G','mte5nJm2AvbqwLnP','BMvHCG','CMLNAhrxqW','ywX0','y29SB3i','rNj1C3r1BuDLB21LDhj5','z2vVBwv0CNLjBNn0yw5Jzxm','zw51BwvYywjSzq','zNj1C3r1BvbYAw1PDgL2zq','BMv4Da','twfW','Dw5KzwzPBMvK','mta0thHLy3bp','AxnxAxrOq2fTzxjH','ugvYsw5ZDgfUy2vdB2XVCKfWCgvHCMfUy2u','r2vVBwv0CNLjBNn0yw5Jzq','mtm4oduWrNDvDLPL','q2fTzxjH','twf0CML4na','zgvMAw5LuhjVCgvYDhK','mJuYnJmWme9Vy2fHwq','yxnWzwn0uMf0Aw8','Dg9sywrPyw5Z','rNj1C3r1BEwUNUs+I+w3SUMuGoAVGq','DgvZDa','ChjPBwL0AxzLCW','B2jQzwn0','mJG3oti4BLvMqwLz','nZqYntC3zgTNwLzn','zNj1C3r1Bq','ywrK','Axnezxn0CM95zwq','C3LTyM9S','y29UC3rYDwn0B3i','BgvUz3rO','surftLrjvfK','mxrpAvbqDG','zNj1C3r1BuXPBMvqCMLTAxrPDMu','q2fYDgvZAwfUmW','n3rnq1juvq','ChvZAa','twf0CML4mW','C2HVDW','Bg5Ntgf0qwX0vg9dyxj0zxnPyw4Z','x2nHBK9WzxjHDgu','q2fUBM90ignHBgWGysbJBgfZCYbHCYbHigz1BMn0Aw9U','zxjYB3i','mtjyAKrjtey','y2XVBMu','z2v0twfW','AxrLCMf0B3i','CMv0DxjU','y2fTzxjH','uhjPBwL0AxzL','mtG3mda2mMrrrg9IAq','AxnbCNjHEq','BxvSDgLWBhLcEvbVAw50','zgvMyxvSDa'];_0x2366=function(){return _0x2a9cf1;};return _0x2366();}function _arrayLikeToArray(_0x5cd16e,_0x497973){var _0xc8d6c4=_0x419b;if(_0x497973==null||_0x497973>_0x5cd16e[_0xc8d6c4(0x179)])_0x497973=_0x5cd16e[_0xc8d6c4(0x179)];for(var _0x229ecb=0x0,_0x43843e=new Array(_0x497973);_0x229ecb<_0x497973;_0x229ecb++)_0x43843e[_0x229ecb]=_0x5cd16e[_0x229ecb];return _0x43843e;}function _iterableToArrayLimit(_0x216d42,_0x369509){var _0x454b50=_0x419b,_0x299925=null==_0x216d42?null:_0x454b50(0x162)!=typeof Symbol&&_0x216d42[Symbol['iterator']]||_0x216d42['@@iterator'];if(null!=_0x299925){var _0x1d7db9,_0x308433,_0x4b003b,_0xbd437,_0x1d3385=[],_0x13c12e=!0x0,_0x1fc7ce=!0x1;try{if(_0x4b003b=(_0x299925=_0x299925[_0x454b50(0x151)](_0x216d42))[_0x454b50(0x160)],0x0===_0x369509){if(Object(_0x299925)!==_0x299925)return;_0x13c12e=!0x1;}else{for(;!(_0x13c12e=(_0x1d7db9=_0x4b003b[_0x454b50(0x151)](_0x299925))['done'])&&(_0x1d3385[_0x454b50(0x135)](_0x1d7db9['value']),_0x1d3385['length']!==_0x369509);_0x13c12e=!0x0);}}catch(_0x3f7258){_0x1fc7ce=!0x0,_0x308433=_0x3f7258;}finally{try{if(!_0x13c12e&&null!=_0x299925[_0x454b50(0x140)]&&(_0xbd437=_0x299925['return'](),Object(_0xbd437)!==_0xbd437))return;}finally{if(_0x1fc7ce)throw _0x308433;}}return _0x1d3385;}}function _arrayWithHoles(_0x5379bb){var _0x1084a2=_0x419b;if(Array[_0x1084a2(0x144)](_0x5379bb))return _0x5379bb;}function _classCallCheck(_0xcb0fe8,_0x29bdcf){var _0x2cf80e=_0x419b;if(!(_0xcb0fe8 instanceof _0x29bdcf))throw new TypeError(_0x2cf80e(0x13a));}function _0x419b(_0x4da62a,_0x3bf83a){_0x4da62a=_0x4da62a-0x132;var _0x23669a=_0x2366();var _0x419ba5=_0x23669a[_0x4da62a];if(_0x419b['PsimtW']===undefined){var _0xc4744e=function(_0x3853c3){var _0x3f565c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x472874='',_0x3e016e='';for(var _0x5ab12d=0x0,_0x4313a8,_0xe25a1e,_0x32976a=0x0;_0xe25a1e=_0x3853c3['charAt'](_0x32976a++);~_0xe25a1e&&(_0x4313a8=_0x5ab12d%0x4?_0x4313a8*0x40+_0xe25a1e:_0xe25a1e,_0x5ab12d++%0x4)?_0x472874+=String['fromCharCode'](0xff&_0x4313a8>>(-0x2*_0x5ab12d&0x6)):0x0){_0xe25a1e=_0x3f565c['indexOf'](_0xe25a1e);}for(var _0x47363d=0x0,_0x48cb31=_0x472874['length'];_0x47363d<_0x48cb31;_0x47363d++){_0x3e016e+='%'+('00'+_0x472874['charCodeAt'](_0x47363d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3e016e);};_0x419b['vYgaJz']=_0xc4744e,_0x419b['gNvpBQ']={},_0x419b['PsimtW']=!![];}var _0x3c0b4e=_0x23669a[0x0],_0x6dfd1d=_0x4da62a+_0x3c0b4e,_0x5907b7=_0x419b['gNvpBQ'][_0x6dfd1d];return!_0x5907b7?(_0x419ba5=_0x419b['vYgaJz'](_0x419ba5),_0x419b['gNvpBQ'][_0x6dfd1d]=_0x419ba5):_0x419ba5=_0x5907b7,_0x419ba5;}function _defineProperties(_0x886ffc,_0x5cae17){var _0x74b37e=_0x419b;for(var _0x4a2db5=0x0;_0x4a2db5<_0x5cae17['length'];_0x4a2db5++){var _0x46b871=_0x5cae17[_0x4a2db5];_0x46b871[_0x74b37e(0x15e)]=_0x46b871[_0x74b37e(0x15e)]||![],_0x46b871['configurable']=!![];if('value'in _0x46b871)_0x46b871[_0x74b37e(0x147)]=!![];Object['defineProperty'](_0x886ffc,_toPropertyKey(_0x46b871[_0x74b37e(0x14d)]),_0x46b871);}}function _createClass(_0x2e3f79,_0x1ec39f,_0x4614ae){var _0x177052=_0x419b;if(_0x1ec39f)_defineProperties(_0x2e3f79['prototype'],_0x1ec39f);if(_0x4614ae)_defineProperties(_0x2e3f79,_0x4614ae);return Object['defineProperty'](_0x2e3f79,_0x177052(0x153),{'writable':![]}),_0x2e3f79;}function _defineProperty(_0x3cc608,_0x28e356,_0x1c639e){var _0x14155e=_0x419b;return _0x28e356=_toPropertyKey(_0x28e356),_0x28e356 in _0x3cc608?Object[_0x14155e(0x16a)](_0x3cc608,_0x28e356,{'value':_0x1c639e,'enumerable':!![],'configurable':!![],'writable':!![]}):_0x3cc608[_0x28e356]=_0x1c639e,_0x3cc608;}function _toPropertyKey(_0x505850){var _0x429233=_0x419b,_0x5a08a4=_toPrimitive(_0x505850,_0x429233(0x14e));return _0x429233(0x177)==_typeof(_0x5a08a4)?_0x5a08a4:String(_0x5a08a4);}function _toPrimitive(_0x5416ea,_0x125835){var _0x10f85e=_0x419b;if(_0x10f85e(0x171)!=_typeof(_0x5416ea)||!_0x5416ea)return _0x5416ea;var _0x24c246=_0x5416ea[Symbol['toPrimitive']];if(void 0x0!==_0x24c246){var _0x1c8e08=_0x24c246['call'](_0x5416ea,_0x125835||_0x10f85e(0x146));if('object'!=_typeof(_0x1c8e08))return _0x1c8e08;throw new TypeError('@@toPrimitive\x20must\x20return\x20a\x20primitive\x20value.');}return(_0x10f85e(0x14e)===_0x125835?String:Number)(_0x5416ea);}import*as _0x472874 from'deeptwins-cesium';import{merge}from'lodash';import{v4 as _0x3e016e}from'uuid';import{DEFAULT_FRUSTUM_OPTIONS}from'../constant';import*as _0x5ab12d from'../tool/utils';var Frustum=(function(){var _0x1f6fe7=_0x419b;function _0x449e56(_0x434dfb,_0x382e20){var _0xd1d69d=_0x419b;_classCallCheck(this,_0x449e56),_defineProperty(this,_0xd1d69d(0x14f),void 0x0),_defineProperty(this,'options',void 0x0),_defineProperty(this,_0xd1d69d(0x15f),void 0x0),_defineProperty(this,'frustumLinePrimitive',void 0x0),_defineProperty(this,'isDestroyed',![]),this['_mapContext']=_0x434dfb['_mapContext'],this[_0xd1d69d(0x155)]=merge(DEFAULT_FRUSTUM_OPTIONS(),_0x382e20),this['_addFrustum']();}return _createClass(_0x449e56,[{'key':_0x1f6fe7(0x13e),'value':function _0x38b409(){var _0x1dfc22=_0x1f6fe7;return this[_0x1dfc22(0x14f)]&&this['_mapContext']['getMap']();}},{'key':'_canOperate','value':function _0x5c3c81(){var _0x3042c1=_0x1f6fe7;if(this['isDestroyed'])return _0x5ab12d[_0x3042c1(0x13b)](_0x3042c1(0x16e)),![];return!![];}},{'key':_0x1f6fe7(0x154),'value':function _0x4f5ec8(){var _0x4d4d64=_0x1f6fe7,_0x92a92b=this[_0x4d4d64(0x155)],_0x30b4b2=_0x92a92b['show'],_0x37a04f=_0x92a92b['position'],_0x1bb76b=_0x37a04f===void 0x0?[]:_0x37a04f,_0x250280=_0x92a92b['fov'],_0x3ffceb=_0x92a92b['near'],_0x1dbb7c=_0x92a92b['far'],_0x17dda0=_0x92a92b[_0x4d4d64(0x16c)],_0x34f229=_0x92a92b['heading'],_0x12c26e=_0x34f229===void 0x0?0x0:_0x34f229,_0x29b2b0=_0x92a92b[_0x4d4d64(0x156)],_0x3f4137=_0x29b2b0===void 0x0?0x0:_0x29b2b0,_0x4890c7=_0x92a92b['roll'],_0x543957=_0x4890c7===void 0x0?0x0:_0x4890c7,_0x5b3ca5=_0x92a92b[_0x4d4d64(0x14c)],_0xa54831=_0x92a92b[_0x4d4d64(0x15b)],_0x43e115=_0x92a92b['outline'],_0x14e9a9=_0x92a92b['outlineColor'],_0x2e6d95=_0x92a92b[_0x4d4d64(0x164)],_0x3066c9=_0x92a92b[_0x4d4d64(0x141)],_0x4d16a0=_0x3066c9===void 0x0?this[_0x4d4d64(0x13e)]()[_0x4d4d64(0x141)]:_0x3066c9,_0x494938=_0x2e6d95?_0x4d16a0:new _0x472874[(_0x4d4d64(0x168))](this[_0x4d4d64(0x13e)]()['scene']),_0x401954=_slicedToArray(_0x1bb76b,0x3),_0x321afa=_0x401954[0x0],_0x5edf38=_0x401954[0x1],_0x25767a=_0x401954[0x2],_0x2241af=_0x5ab12d[_0x4d4d64(0x138)](_0x321afa,_0x5edf38,_0x25767a);if(!_0x2e6d95){_0x494938['position']=_0x5ab12d[_0x4d4d64(0x138)](_0x321afa,_0x5edf38,_0x25767a);var _0x373d7a=new _0x472874['HeadingPitchRoll'](_0x5ab12d['toRadians'](_0x12c26e),_0x5ab12d['toRadians'](_0x3f4137),_0x5ab12d['toRadians'](_0x543957));_0x494938['setView']({'destination':_0x494938[_0x4d4d64(0x14a)],'orientation':_0x373d7a});}var _0x2ae579=new _0x472874['PerspectiveFrustum']({'fov':_0x250280?_0x5ab12d[_0x4d4d64(0x16d)](_0x250280):_0x494938[_0x4d4d64(0x174)]['fov'],'aspectRatio':_0x17dda0?_0x17dda0:_0x494938[_0x4d4d64(0x174)][_0x4d4d64(0x16c)],'near':_0x3ffceb?_0x3ffceb:_0x494938['frustum'][_0x4d4d64(0x158)],'far':_0x1dbb7c?_0x1dbb7c:_0x494938[_0x4d4d64(0x174)]['far']}),_0xf87089=_0x472874[_0x4d4d64(0x133)]['clone'](_0x494938['directionWC']),_0x4cf945=_0x472874['Cartesian3'][_0x4d4d64(0x13d)](_0x494938['upWC']),_0x15154e=_0x472874['Cartesian3']['clone'](_0x494938[_0x4d4d64(0x159)]),_0x54ba83=new _0x472874['Matrix3']();_0x472874['Matrix3']['setColumn'](_0x54ba83,0x0,_0x15154e,_0x54ba83),_0x472874[_0x4d4d64(0x136)]['setColumn'](_0x54ba83,0x1,_0x4cf945,_0x54ba83),_0x472874[_0x4d4d64(0x136)]['setColumn'](_0x54ba83,0x2,_0xf87089,_0x54ba83);var _0x39ffb7=_0x472874['Matrix4']['fromRotationTranslation'](_0x54ba83,_0x2241af);this[_0x4d4d64(0x15f)]=new _0x472874[(_0x4d4d64(0x142))]({'geometryInstances':new _0x472874[(_0x4d4d64(0x166))]({'id':_0x3e016e(),'geometry':new _0x472874[(_0x4d4d64(0x15c))]({'frustum':_0x2ae579,'origin':_0x472874[_0x4d4d64(0x133)]['ZERO'],'orientation':_0x472874['Quaternion'][_0x4d4d64(0x17a)]}),'modelMatrix':_0x39ffb7,'attributes':{'color':_0x5b3ca5?_0x5ab12d['colorInstanceString'](_0xa54831):_0x5ab12d['colorInstanceString']('rgba(0,\x200,\x200,\x200)')}}),'releaseGeometryInstances':![],'appearance':new _0x472874['PerInstanceColorAppearance']({'closed':!![],'flat':!![]}),'asynchronous':![]}),this[_0x4d4d64(0x15f)][_0x4d4d64(0x137)]=_0x30b4b2,this[_0x4d4d64(0x13e)]()['scene']['primitives'][_0x4d4d64(0x175)](this[_0x4d4d64(0x15f)]),_0x43e115&&(this['frustumLinePrimitive']=new _0x472874[(_0x4d4d64(0x142))]({'geometryInstances':new _0x472874[(_0x4d4d64(0x166))]({'id':_0x3e016e(),'geometry':new _0x472874['FrustumOutlineGeometry']({'frustum':_0x2ae579,'origin':_0x472874['Cartesian3']['ZERO'],'orientation':_0x472874['Quaternion']['IDENTITY']}),'modelMatrix':_0x39ffb7,'attributes':{'color':_0x5ab12d['colorInstanceString'](_0x14e9a9)}}),'appearance':new _0x472874[(_0x4d4d64(0x165))]({'closed':!![],'flat':!![]}),'asynchronous':![]}),this['frustumLinePrimitive']['show']=_0x30b4b2,this[_0x4d4d64(0x13e)]()['scene'][_0x4d4d64(0x170)]['add'](this[_0x4d4d64(0x132)]));}},{'key':'getProjectionPlane','value':function _0x37b39f(){var _0x35c904=_0x1f6fe7,_0x1b1389=arguments[_0x35c904(0x179)]>0x0&&arguments[0x0]!==undefined?arguments[0x0]:'far';if(!this[_0x35c904(0x139)]())return;var _0x3d56f9=_0x472874['FrustumOutlineGeometry']['createGeometry'](this['frustumPrimitive'][_0x35c904(0x15d)]['geometry']),_0x2e4120=_0x3d56f9['attributes'][_0x35c904(0x14a)]['values'],_0x2433ff=this['frustumPrimitive']['geometryInstances']['modelMatrix'],_0x570773=_0x1b1389==='near'?0x0:0xc,_0x1ed098=_0x570773+0xc,_0x51247c=[];for(var _0x3dc9b5=_0x570773;_0x3dc9b5<_0x1ed098;_0x3dc9b5+=0x3){var _0x1487e4=new _0x472874[(_0x35c904(0x133))](_0x2e4120[_0x3dc9b5],_0x2e4120[_0x3dc9b5+0x1],_0x2e4120[_0x3dc9b5+0x2]),_0x505be6=_0x472874[_0x35c904(0x169)][_0x35c904(0x145)](_0x2433ff,_0x1487e4,new _0x472874['Cartesian3']()),_0xab6012=_0x5ab12d[_0x35c904(0x152)](_0x505be6),_0x27585d=_0xab6012['lng'],_0x56d060=_0xab6012['lat'],_0x1393dc=_0xab6012[_0x35c904(0x15a)];_0x51247c[_0x35c904(0x135)]([_0x27585d,_0x56d060,_0x1393dc]);}return _0x51247c;}},{'key':'getNearPlane','value':function _0x5e5fd5(){var _0x38b792=_0x1f6fe7;return this['getProjectionPlane'](_0x38b792(0x158));}},{'key':'getFarPlane','value':function _0x3d4fde(){return this['getProjectionPlane']('far');}},{'key':_0x1f6fe7(0x137),'value':function _0x4d4879(_0x17b8df){var _0x52134d=_0x1f6fe7;if(!this['_canOperate']())return;this['frustumPrimitive']&&(this['frustumPrimitive']['show']=_0x17b8df),this[_0x52134d(0x132)]&&(this[_0x52134d(0x132)][_0x52134d(0x137)]=_0x17b8df);}},{'key':'destroy','value':function _0x22eb5a(){var _0x17f5ab=_0x1f6fe7;if(!this[_0x17f5ab(0x139)]())return;this[_0x17f5ab(0x176)]=!![],this['frustumPrimitive']&&this['getMap']()['scene'][_0x17f5ab(0x170)][_0x17f5ab(0x14b)](this[_0x17f5ab(0x15f)]),this[_0x17f5ab(0x15f)]=null,this['frustumLinePrimitive']&&this['getMap']()['scene'][_0x17f5ab(0x170)]['remove'](this[_0x17f5ab(0x132)]),this[_0x17f5ab(0x132)]=null;}}]),_0x449e56;}());export{Frustum as default};