@vtx/cs-map 1.0.109 → 1.0.111

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 (299) hide show
  1. package/CHANGELOG.md +124 -0
  2. package/README.md +202 -202
  3. package/lib/_util/EventEmitter.js +3 -3
  4. package/lib/_util/EventEmitter.js.map +1 -1
  5. package/lib/_util/Provider.js.map +1 -1
  6. package/lib/_util/StyleCache.js.map +1 -1
  7. package/lib/_util/cesium.js +10 -10
  8. package/lib/_util/cesium.js.map +1 -1
  9. package/lib/_util/encryptParams.js.map +1 -1
  10. package/lib/_util/filterSpecialCharacters.js +6 -6
  11. package/lib/_util/filterSpecialCharacters.js.map +1 -1
  12. package/lib/_util/generateRandomPosition.js +5 -5
  13. package/lib/_util/generateRandomPosition.js.map +1 -1
  14. package/lib/_util/getBBoxFromGeojson.js +11 -11
  15. package/lib/_util/getBBoxFromGeojson.js.map +1 -1
  16. package/lib/_util/getComponentProps.js.map +1 -1
  17. package/lib/_util/getCookie.js +4 -4
  18. package/lib/_util/getCookie.js.map +1 -1
  19. package/lib/_util/getDefaultMapInfo.js.map +1 -1
  20. package/lib/_util/getSystemInfo.js.map +1 -1
  21. package/lib/_util/getToken.js.map +1 -1
  22. package/lib/_util/getUrlParam.js.map +1 -1
  23. package/lib/_util/heightAndZoom.js.map +1 -1
  24. package/lib/_util/http.js +18 -18
  25. package/lib/_util/http.js.map +1 -1
  26. package/lib/_util/isFunction.js.map +1 -1
  27. package/lib/_util/isObject.js.map +1 -1
  28. package/lib/_util/layer.js.map +1 -1
  29. package/lib/_util/mapTool.js +34 -34
  30. package/lib/_util/mapTool.js.map +1 -1
  31. package/lib/_util/parabola.js +7 -7
  32. package/lib/_util/parabola.js.map +1 -1
  33. package/lib/_util/setCookie.js +4 -4
  34. package/lib/_util/setCookie.js.map +1 -1
  35. package/lib/_util/transformRgb.js.map +1 -1
  36. package/lib/_util/useColSize.js.map +1 -1
  37. package/lib/_util/useInterval.js.map +1 -1
  38. package/lib/_util/useProps.js.map +1 -1
  39. package/lib/_util/useSet.js.map +1 -1
  40. package/lib/building-tiles-layer/BuildingTilesLayer.js.map +1 -1
  41. package/lib/building-tiles-layer/index.js.map +1 -1
  42. package/lib/building-tiles-layer/style/css.js.map +1 -1
  43. package/lib/building-tiles-layer/style/index.js.map +1 -1
  44. package/lib/cesium-tiles-layer/CesiumTilesLayer.js +1 -1
  45. package/lib/cesium-tiles-layer/CesiumTilesLayer.js.map +1 -1
  46. package/lib/cesium-tiles-layer/demo/index.less +111 -111
  47. package/lib/cesium-tiles-layer/demo/putian/index.less +27 -27
  48. package/lib/cesium-tiles-layer/index.js.map +1 -1
  49. package/lib/cesium-tiles-layer/style/css.js.map +1 -1
  50. package/lib/cesium-tiles-layer/style/index.js.map +1 -1
  51. package/lib/circle/Circle.js.map +1 -1
  52. package/lib/circle/index.js.map +1 -1
  53. package/lib/circle-fly/index.js +4 -4
  54. package/lib/circle-fly/index.js.map +1 -1
  55. package/lib/circle-fly/style/css.js.map +1 -1
  56. package/lib/circle-fly/style/index.js.map +1 -1
  57. package/lib/cone-glow-layer/BottomCircle.js.map +1 -1
  58. package/lib/cone-glow-layer/ButtomRotateCircle.js +8 -8
  59. package/lib/cone-glow-layer/ButtomRotateCircle.js.map +1 -1
  60. package/lib/cone-glow-layer/ConeGlowLayer.js.map +1 -1
  61. package/lib/cone-glow-layer/Texture.js.map +1 -1
  62. package/lib/config.js.map +1 -1
  63. package/lib/demand-layer/DemandLayer.js +3 -5
  64. package/lib/demand-layer/DemandLayer.js.map +1 -1
  65. package/lib/demand-layer/index.js.map +1 -1
  66. package/lib/demand-layer/style/css.js.map +1 -1
  67. package/lib/demand-layer/style/index.js.map +1 -1
  68. package/lib/dom/Dom.js.map +1 -1
  69. package/lib/dom/index.js +2 -1
  70. package/lib/dom/index.js.map +1 -1
  71. package/lib/events/index.js.map +1 -1
  72. package/lib/excavation-analysis/Cut.js +19 -19
  73. package/lib/excavation-analysis/Cut.js.map +1 -1
  74. package/lib/excavation-analysis/TilesetCut.js +5 -5
  75. package/lib/excavation-analysis/TilesetCut.js.map +1 -1
  76. package/lib/excavation-analysis/hooks/useDrawHandler.js.map +1 -1
  77. package/lib/excavation-analysis/hooks/useTerrainClipPlan.js.map +1 -1
  78. package/lib/excavation-analysis/hooks/useTileSetCut.js.map +1 -1
  79. package/lib/excavation-analysis/index.js.map +1 -1
  80. package/lib/excavation-analysis/style/css.js.map +1 -1
  81. package/lib/excavation-analysis/style/index.js.map +1 -1
  82. package/lib/feature-layer/FeatureLayer.js +3 -5
  83. package/lib/feature-layer/FeatureLayer.js.map +1 -1
  84. package/lib/feature-layer/createFeatureCollection.js +11 -11
  85. package/lib/feature-layer/createFeatureCollection.js.map +1 -1
  86. package/lib/feature-layer/index.js.map +1 -1
  87. package/lib/feature-layer/style/css.js.map +1 -1
  88. package/lib/feature-layer/style/index.js.map +1 -1
  89. package/lib/fence-layer/FenceLayer.js +3 -5
  90. package/lib/fence-layer/FenceLayer.js.map +1 -1
  91. package/lib/fence-layer/GradualLightRingMaterialProperty.js +5 -5
  92. package/lib/fence-layer/GradualLightRingMaterialProperty.js.map +1 -1
  93. package/lib/fence-layer/index.js.map +1 -1
  94. package/lib/fence-layer/style/css.js.map +1 -1
  95. package/lib/fence-layer/style/index.js.map +1 -1
  96. package/lib/flight-line-layer/FlightLineLayer.js.map +1 -1
  97. package/lib/flight-line-layer/index.js.map +1 -1
  98. package/lib/flight-line-layer/style/css.js.map +1 -1
  99. package/lib/flight-line-layer/style/index.js.map +1 -1
  100. package/lib/fly-line-layer/FlyLineLayer.js +7 -9
  101. package/lib/fly-line-layer/FlyLineLayer.js.map +1 -1
  102. package/lib/fly-line-layer/LineFlowMaterialProperty.js.map +1 -1
  103. package/lib/fly-line-layer/index.js.map +1 -1
  104. package/lib/fly-line-layer/style/css.js.map +1 -1
  105. package/lib/fly-line-layer/style/index.js.map +1 -1
  106. package/lib/gif-dom-layer/GifDomLayer.js.map +1 -1
  107. package/lib/gif-dom-layer/index.js.map +1 -1
  108. package/lib/gif-dom-layer/style/css.js.map +1 -1
  109. package/lib/gif-dom-layer/style/index.js.map +1 -1
  110. package/lib/gradation-line-layer/GradationLineLayer.js.map +1 -1
  111. package/lib/gradation-line-layer/index.js.map +1 -1
  112. package/lib/gradation-line-layer/style/css.js.map +1 -1
  113. package/lib/gradation-line-layer/style/index.js.map +1 -1
  114. package/lib/group-layer/GroupLayer.js.map +1 -1
  115. package/lib/group-layer/index.js.map +1 -1
  116. package/lib/group-layer/style/css.js.map +1 -1
  117. package/lib/group-layer/style/index.js.map +1 -1
  118. package/lib/heatmap-layer/CesiumHeatmap.js +23 -25
  119. package/lib/heatmap-layer/CesiumHeatmap.js.map +1 -1
  120. package/lib/heatmap-layer/HeatmapLayer.js.map +1 -1
  121. package/lib/heatmap-layer/heatmap.js +41 -41
  122. package/lib/heatmap-layer/heatmap.js.map +1 -1
  123. package/lib/heatmap-layer/index.js.map +1 -1
  124. package/lib/heatmap-layer/style/css.js.map +1 -1
  125. package/lib/heatmap-layer/style/index.js.map +1 -1
  126. package/lib/highlight-layer/HighlightLayer.js.map +1 -1
  127. package/lib/highlight-layer/index.js.map +1 -1
  128. package/lib/highlight-layer/style/css.js.map +1 -1
  129. package/lib/highlight-layer/style/index.js.map +1 -1
  130. package/lib/image-layer/ImageLayer.js +2 -4
  131. package/lib/image-layer/ImageLayer.js.map +1 -1
  132. package/lib/image-layer/index.js +4 -4
  133. package/lib/image-layer/index.js.map +1 -1
  134. package/lib/image-layer/style/css.js.map +1 -1
  135. package/lib/image-layer/style/index.js.map +1 -1
  136. package/lib/image-wms-layer/ImageWmsLayer.js.map +1 -1
  137. package/lib/image-wms-layer/index.js.map +1 -1
  138. package/lib/image-wms-layer/style/css.js.map +1 -1
  139. package/lib/image-wms-layer/style/index.js.map +1 -1
  140. package/lib/index.js.map +1 -1
  141. package/lib/inundate-analysis/index.js.map +1 -1
  142. package/lib/inundate-analysis/style/css.js.map +1 -1
  143. package/lib/inundate-analysis/style/index.js.map +1 -1
  144. package/lib/label/Label.js.map +1 -1
  145. package/lib/label/index.js.map +1 -1
  146. package/lib/legend/index.js.map +1 -1
  147. package/lib/legend/style/css.js.map +1 -1
  148. package/lib/legend/style/index.js.map +1 -1
  149. package/lib/legend/style/index.less +74 -74
  150. package/lib/line-flow-layer/LineFlowLayer.js +3 -5
  151. package/lib/line-flow-layer/LineFlowLayer.js.map +1 -1
  152. package/lib/line-flow-layer/style/css.js.map +1 -1
  153. package/lib/line-flow-layer/style/index.js.map +1 -1
  154. package/lib/map/InfoTool/index.js +43 -43
  155. package/lib/map/InfoTool/index.js.map +1 -1
  156. package/lib/map/InfoTool/index.less +46 -46
  157. package/lib/map/InfoTool/util.js +23 -23
  158. package/lib/map/InfoTool/util.js.map +1 -1
  159. package/lib/map/InfoWindow.js.map +1 -1
  160. package/lib/map/Layers.js +8 -8
  161. package/lib/map/Layers.js.map +1 -1
  162. package/lib/map/Popup.js +20 -18
  163. package/lib/map/Popup.js.map +1 -1
  164. package/lib/map/base/imagery/amap/AmapImageryProvider.js.map +1 -1
  165. package/lib/map/base/imagery/amap/AmapMercatorTilingScheme.js.map +1 -1
  166. package/lib/map/base/imagery/baidu/BaiduImageryProvider.js.map +1 -1
  167. package/lib/map/base/imagery/baidu/BaiduMercatorProjection.js +77 -77
  168. package/lib/map/base/imagery/baidu/BaiduMercatorProjection.js.map +1 -1
  169. package/lib/map/base/imagery/baidu/BaiduMercatorTilingScheme.js +13 -13
  170. package/lib/map/base/imagery/baidu/BaiduMercatorTilingScheme.js.map +1 -1
  171. package/lib/map/base/imagery/geoq/GeoQImageryProvider.js.map +1 -1
  172. package/lib/map/base/imagery/google/GoogleImageryProvider.js.map +1 -1
  173. package/lib/map/base/imagery/irs/IRSImageryProvider.js.map +1 -1
  174. package/lib/map/base/imagery/tdt/JiangSuTdtImageryProvider.js.map +1 -1
  175. package/lib/map/base/imagery/tdt/TdtImageryProvider.js.map +1 -1
  176. package/lib/map/base/imagery/tencent/TencentImageryProvider.js.map +1 -1
  177. package/lib/map/base/imagery/transform/AmapMercatorTilingScheme.js.map +1 -1
  178. package/lib/map/base/imagery/transform/CoordTransform.js +42 -42
  179. package/lib/map/base/imagery/transform/CoordTransform.js.map +1 -1
  180. package/lib/map/base/index.js.map +1 -1
  181. package/lib/map/hooks/useGetMapFeatureInfoByText.js.map +1 -1
  182. package/lib/map/index.js.map +1 -1
  183. package/lib/map/material/AroundPoint.js.map +1 -1
  184. package/lib/map/material/CircleRippleMaterialProperty.js +5 -5
  185. package/lib/map/material/CircleRippleMaterialProperty.js.map +1 -1
  186. package/lib/map/material/ODLineLayer.js.map +1 -1
  187. package/lib/map/material/PolylineTrailLinkMaterialProperty.js.map +1 -1
  188. package/lib/map/material/PolylineTrailMaterialProperty.js.map +1 -1
  189. package/lib/map/material/TilesBuilding.js +1 -1
  190. package/lib/map/material/TilesBuilding.js.map +1 -1
  191. package/lib/map/material/index.js.map +1 -1
  192. package/lib/map/style/css.js.map +1 -1
  193. package/lib/map/style/index.js.map +1 -1
  194. package/lib/map/style/index.less +248 -248
  195. package/lib/marker/Marker.js.map +1 -1
  196. package/lib/marker/index.js.map +1 -1
  197. package/lib/model/Model.js.map +1 -1
  198. package/lib/model/index.js.map +1 -1
  199. package/lib/navigation/index.js +6 -6
  200. package/lib/navigation/index.js.map +1 -1
  201. package/lib/navigation/style/css.js.map +1 -1
  202. package/lib/navigation/style/index.js.map +1 -1
  203. package/lib/navigation/style/index.less +176 -176
  204. package/lib/pipe-tiles-layer/PipeTilesLayer.js.map +1 -1
  205. package/lib/pipe-tiles-layer/index.js.map +1 -1
  206. package/lib/pipe-tiles-layer/style/css.js.map +1 -1
  207. package/lib/pipe-tiles-layer/style/index.js.map +1 -1
  208. package/lib/point/Point.js.map +1 -1
  209. package/lib/point/index.js.map +1 -1
  210. package/lib/polygon/Polygon.js.map +1 -1
  211. package/lib/polygon/index.js.map +1 -1
  212. package/lib/polyline/Polyline.js.map +1 -1
  213. package/lib/polyline/index.js.map +1 -1
  214. package/lib/renderer/index.js +15 -15
  215. package/lib/renderer/index.js.map +1 -1
  216. package/lib/renderer/style/css.js.map +1 -1
  217. package/lib/renderer/style/index.js.map +1 -1
  218. package/lib/road-line-layer/RoadLineLayer.js.map +1 -1
  219. package/lib/road-line-layer/index.js.map +1 -1
  220. package/lib/road-line-layer/style/css.js.map +1 -1
  221. package/lib/road-line-layer/style/index.js.map +1 -1
  222. package/lib/scene-roam/index.js.map +1 -1
  223. package/lib/scene-roam/style/css.js.map +1 -1
  224. package/lib/scene-roam/style/index.js.map +1 -1
  225. package/lib/slider-scene/index.js.map +1 -1
  226. package/lib/slider-scene/style/css.js.map +1 -1
  227. package/lib/slider-scene/style/index.js.map +1 -1
  228. package/lib/slider-scene/style/index.less +13 -13
  229. package/lib/split-screen/index.js.map +1 -1
  230. package/lib/style/index.less +2 -2
  231. package/lib/style/themes/compact.less +1 -1
  232. package/lib/style/themes/dark.less +9 -9
  233. package/lib/style/themes/default.less +7 -7
  234. package/lib/style/themes/index.less +1 -1
  235. package/lib/style/themes/variable.less +5 -5
  236. package/lib/three-line-layer/ThreeLineLayer.js.map +1 -1
  237. package/lib/three-line-layer/index.js.map +1 -1
  238. package/lib/three-line-layer/style/css.js.map +1 -1
  239. package/lib/three-line-layer/style/index.js.map +1 -1
  240. package/lib/three-point-layer/DiffuseCircle.js.map +1 -1
  241. package/lib/three-point-layer/ThreePointLayer.js.map +1 -1
  242. package/lib/three-point-layer/index.js.map +1 -1
  243. package/lib/three-point-layer/style/css.js.map +1 -1
  244. package/lib/three-point-layer/style/index.js.map +1 -1
  245. package/lib/tools/base-map-switch/index.js.map +1 -1
  246. package/lib/tools/components/Icon/index.js.map +1 -1
  247. package/lib/tools/components/Icon/svg.js.map +1 -1
  248. package/lib/tools/components/Modal/index.js +2 -2
  249. package/lib/tools/components/Modal/index.js.map +1 -1
  250. package/lib/tools/components/Modal/index.less +33 -33
  251. package/lib/tools/components/item-wrap/index.js.map +1 -1
  252. package/lib/tools/components/tool-Item/index.js.map +1 -1
  253. package/lib/tools/components/tool-Item/index.less +27 -27
  254. package/lib/tools/dimension-switch/index.js.map +1 -1
  255. package/lib/tools/index.js.map +1 -1
  256. package/lib/tools/layer-control/index.js +4 -4
  257. package/lib/tools/layer-control/index.js.map +1 -1
  258. package/lib/tools/layer-control-popover/LayersCheckService.js +8 -8
  259. package/lib/tools/layer-control-popover/LayersCheckService.js.map +1 -1
  260. package/lib/tools/layer-control-popover/index.js +2 -2
  261. package/lib/tools/layer-control-popover/index.js.map +1 -1
  262. package/lib/tools/loading/index.js.map +1 -1
  263. package/lib/tools/map-search/Select/index.js +5 -5
  264. package/lib/tools/map-search/Select/index.js.map +1 -1
  265. package/lib/tools/map-search/Select/style/css.js.map +1 -1
  266. package/lib/tools/map-search/Select/style/index.js.map +1 -1
  267. package/lib/tools/map-search/Select/style/index.less +47 -47
  268. package/lib/tools/map-search/index.js +3 -3
  269. package/lib/tools/map-search/index.js.map +1 -1
  270. package/lib/tools/style/css.js.map +1 -1
  271. package/lib/tools/style/index.js.map +1 -1
  272. package/lib/tools/style/index.less +309 -309
  273. package/lib/tools/tip/index.js.map +1 -1
  274. package/lib/tools/tool-box/Measure/Area/index.js.map +1 -1
  275. package/lib/tools/tool-box/Measure/Distance/index.js.map +1 -1
  276. package/lib/tools/tool-box/Measure/Height/index.js.map +1 -1
  277. package/lib/tools/tool-box/Measure/Measure.js +31 -31
  278. package/lib/tools/tool-box/Measure/Measure.js.map +1 -1
  279. package/lib/tools/tool-box/Measure/index.js.map +1 -1
  280. package/lib/tools/tool-box/index.js.map +1 -1
  281. package/lib/trail-polyline-layer/TrailPolylineLayer.js.map +1 -1
  282. package/lib/trail-polyline-layer/TrailPolylineMaterial.js.map +1 -1
  283. package/lib/trail-polyline-layer/style/css.js.map +1 -1
  284. package/lib/trail-polyline-layer/style/index.js.map +1 -1
  285. package/lib/use-props/index.js.map +1 -1
  286. package/lib/wall/WallGeometry.js.map +1 -1
  287. package/lib/wall/style/css.js.map +1 -1
  288. package/lib/wall/style/index.js.map +1 -1
  289. package/lib/water-surface-layer/WaterSurfaceLayer.js +4 -6
  290. package/lib/water-surface-layer/WaterSurfaceLayer.js.map +1 -1
  291. package/lib/water-surface-layer/index.js.map +1 -1
  292. package/lib/water-surface-layer/style/css.js.map +1 -1
  293. package/lib/water-surface-layer/style/index.js.map +1 -1
  294. package/lib/weather/Weather.js +28 -28
  295. package/lib/weather/Weather.js.map +1 -1
  296. package/lib/weather/index.js.map +1 -1
  297. package/lib/weather/style/css.js.map +1 -1
  298. package/lib/weather/style/index.js.map +1 -1
  299. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useTerrainClipPlan.js","names":["_react","require","_cesium","useTerrainClipPlan","props","viewer","showResult","useRef","wellWall","bottomSurface","wellData","excavateMinHeight","wallImgStr","bottomImgStr","splitNumber","heightNum","positionsCur","show","isShow","current","scene","globe","clippingPlanes","enabled","switchExcavate","isSHow","material","Material","fromType","updateExcavateDepth","height","primitives","remove","lerpos","lerp_pos","res","i","length","push","Cartesian3","fromRadians","latitude","updateData","start","attrs","wallImg","splitNum","positions","bottomImg","createWell","data","terrainProvider","_layers","createBottomSurface","bottom_pos","handleData","arr","no_height_top","s","longitude","createWellWall","when","sampleTerrainMostDetailed","then","minHeight","getMinHeight","points","p","ellipsoidToLonLat","polygon","PolygonGeometry","polygonHierarchy","PolygonHierarchy","fromDegreesArrayHeights","perPositionHeight","geometry","createGeometry","fabric","type","uniforms","image","appearance","MaterialAppearance","translucent","flat","Primitive","geometryInstances","GeometryInstance","asynchronous","add","no_height_topt","maxHeights","minHeights","altitude","wall","WallGeometry","maximumHeights","minimumHeights","primitive","attributes","color","ColorGeometryInstanceAttribute","fromColor","Color","GREY","id","cartesians","_minPoint","minPoint","cartesian","ellipsoid","cartesian3","x","y","z","cartographic","cartesianToCartographic","CesiumMath","toDegrees","clear","planes","pointsLength","nextIndex","midpoint","catographic","Cartographic","fromCartesian","getHeight","up","normalize","right","subtract","cross","plane","Plane","distance","getPointDistance","ClippingPlane","ClippingPlaneCollection","edgeWidth","edgeColor","WHITE","unionClippingRegions","prepareWell","_viewer$scene$globe$c","removeAll","isDestroyed","destroy","undefined","render","len","height_top","diff","currentCattesian","nextCartorghic","currLonLat","nextLonLat","firstLerp","lerp","lastLerp","_default","exports"],"sources":["excavation-analysis/hooks/useTerrainClipPlan.js"],"sourcesContent":["import { useRef } from 'react';\r\nimport {\r\n Cartographic,\r\n Cartesian3,\r\n Math as CesiumMath,\r\n when,\r\n sampleTerrainMostDetailed,\r\n PolygonGeometry,\r\n PolygonHierarchy,\r\n Material,\r\n MaterialAppearance,\r\n Primitive,\r\n GeometryInstance,\r\n WallGeometry,\r\n ColorGeometryInstanceAttribute,\r\n Color,\r\n Plane,\r\n ClippingPlane,\r\n ClippingPlaneCollection,\r\n VERSION\r\n} from 'cesium';\r\n\r\nconst useTerrainClipPlan = (props) => {\r\n const { viewer } = props\r\n const showResult = useRef(true)\r\n const wellWall = useRef()\r\n const bottomSurface = useRef()\r\n const wellData = useRef()\r\n const excavateMinHeight = useRef(9999)\r\n const wallImgStr = useRef()\r\n const bottomImgStr = useRef()\r\n const splitNumber = useRef()\r\n const heightNum = useRef(0)\r\n const positionsCur = useRef([])\r\n\r\n // 设置是否显示\r\n const show = (isShow) => {\r\n showResult.current = isShow\r\n if (viewer.scene.globe.clippingPlanes) viewer.scene.globe.clippingPlanes.enabled = isShow\r\n switchExcavate(isShow)\r\n }\r\n\r\n const switchExcavate = (isSHow) => {\r\n if (!bottomSurface.current) return\r\n if (isSHow) {\r\n viewer.scene.globe.material = Material.fromType(\"WaJue\")\r\n if (wellWall.current) wellWall.current.show = isSHow\r\n bottomSurface.current.show = isSHow\r\n } else {\r\n viewer.globe.material = null\r\n if (wellWall.current) wellWall.current.show = !isSHow\r\n bottomSurface.current.show = !isSHow\r\n }\r\n }\r\n\r\n\r\n const updateExcavateDepth = (height) => {\r\n if (!wellData.current) return\r\n\r\n if (bottomSurface.current) viewer.scene.primitives.remove(bottomSurface.current)\r\n if (wellWall.current) viewer.scene.primitives.remove(wellWall.current)\r\n\r\n const lerpos = wellData.current.lerp_pos\r\n const res = []\r\n for (let i = 0; i < lerpos.length; i++){\r\n res.push(Cartesian3.fromRadians(lerpos[i].latitude, excavateMinHeight.current - height))\r\n }\r\n heightNum.current = height\r\n updateData(positionsCur.current)\r\n }\r\n\r\n // 开挖分析\r\n const start = (attrs) => {\r\n const { wallImg, splitNum, height, positions, bottomImg } = attrs\r\n wallImgStr.current = wallImg\r\n splitNumber.current = splitNum\r\n heightNum.current = height\r\n bottomImgStr.current = bottomImg\r\n positionsCur.current = positions\r\n updateData(positionsCur.current)\r\n }\r\n\r\n const createWell = (data) => {\r\n if (viewer.terrainProvider._layers) {\r\n createBottomSurface(data.bottom_pos);\r\n\r\n const handleData = (arr) => {\r\n const no_height_top = []\r\n for (let i = 0; i < arr.length; i++) {\r\n const s = Cartesian3.fromRadians(arr[i].longitude, arr[i].latitude, arr[i].height)\r\n no_height_top.push(s)\r\n }\r\n createWellWall(data.bottom_pos, no_height_top)\r\n }\r\n // 针对低于 1.90.0 版本\r\n if (when) {\r\n when(sampleTerrainMostDetailed(viewer.terrainProvider, data.lerp_pos), handleData)\r\n } else {\r\n sampleTerrainMostDetailed(viewer.terrainProvider, data.lerp_pos).then(handleData)\r\n }\r\n } else {\r\n createBottomSurface(data.bottom_pos)\r\n createWellWall(data.bottom_pos, data.no_height_top)\r\n }\r\n }\r\n\r\n const createBottomSurface = (bottom_pos) => {\r\n if (bottom_pos.length) {\r\n const minHeight = getMinHeight(bottom_pos)\r\n const points = []\r\n for (let i = 0; i < bottom_pos.length; i++) {\r\n const p = ellipsoidToLonLat(bottom_pos[i])\r\n points.push(p.longitude)\r\n points.push(p.latitude)\r\n points.push(minHeight)\r\n }\r\n if (!points) return\r\n const polygon = new PolygonGeometry({\r\n polygonHierarchy: new PolygonHierarchy(\r\n Cartesian3.fromDegreesArrayHeights(points)\r\n ),\r\n perPositionHeight: true\r\n })\r\n const geometry = PolygonGeometry.createGeometry(polygon)\r\n const material = new Material({\r\n fabric: {\r\n type: 'Image',\r\n uniforms: {\r\n image: bottomImgStr.current\r\n }\r\n }\r\n })\r\n const appearance = new MaterialAppearance({\r\n translucent: false,\r\n flat: true,\r\n material\r\n })\r\n\r\n if (!geometry) return\r\n bottomSurface.current = new Primitive({\r\n geometryInstances: new GeometryInstance({\r\n geometry\r\n }),\r\n appearance,\r\n asynchronous: false\r\n })\r\n viewer.scene.primitives.add(bottomSurface.current)\r\n }\r\n }\r\n\r\n const createWellWall = (bottom_pos, no_height_topt) => {\r\n const minHeight = getMinHeight(bottom_pos)\r\n const maxHeights = []\r\n const minHeights = []\r\n for (let i = 0; i < no_height_topt.length; i++) {\r\n maxHeights.push(ellipsoidToLonLat(no_height_topt[i]).altitude)\r\n minHeights.push(minHeight)\r\n }\r\n const wall = new WallGeometry({\r\n positions: no_height_topt,\r\n maximumHeights: maxHeights,\r\n minimumHeights: minHeights,\r\n })\r\n const geometry = WallGeometry.createGeometry(wall)\r\n\r\n const material = new Material({\r\n fabric: {\r\n type: 'Image',\r\n uniforms: {\r\n image: wallImgStr.current\r\n }\r\n }\r\n })\r\n const appearance = new MaterialAppearance({\r\n translucent: false,\r\n flat: true,\r\n material\r\n })\r\n if (geometry) {\r\n const primitive = new Primitive({\r\n geometryInstances: new GeometryInstance({\r\n geometry,\r\n attributes: {\r\n color: ColorGeometryInstanceAttribute.fromColor(Color.GREY)\r\n },\r\n id: 'PitWall'\r\n }),\r\n appearance,\r\n asynchronous: false\r\n })\r\n wellWall.current = primitive\r\n viewer.scene.primitives.add(primitive)\r\n }\r\n }\r\n\r\n const getMinHeight = (cartesians) => {\r\n let minHeight = 5000000\r\n let minPoint = null\r\n for (let i = 0; i < cartesians.length; i++) {\r\n const height = cartesians[i]['z']\r\n if (height < minHeight) {\r\n minHeight = height\r\n minPoint = ellipsoidToLonLat(cartesians[i])\r\n }\r\n }\r\n return minPoint?.altitude\r\n }\r\n\r\n const ellipsoidToLonLat = (cartesian) => {\r\n const ellipsoid = viewer.scene.globe.ellipsoid\r\n const cartesian3 = new Cartesian3(cartesian.x, cartesian.y, cartesian.z)\r\n const cartographic = ellipsoid.cartesianToCartographic(cartesian3)\r\n const latitude = CesiumMath.toDegrees(cartographic.latitude)\r\n const longitude = CesiumMath.toDegrees(cartographic.longitude)\r\n const altitude = cartographic.height\r\n return {\r\n longitude,\r\n latitude,\r\n altitude\r\n }\r\n }\r\n\r\n // 更新开挖深度\r\n const updateData = (points) => {\r\n clear()\r\n const planes = []\r\n const pointsLength = points.length\r\n // 计算分量差\r\n // const subtr = Cartesian3.subtract(positions[0], positions[1], new Cartesian3())\r\n excavateMinHeight.current = 9999\r\n\r\n for (let i = 0; i < pointsLength; ++i) {\r\n const nextIndex = (i + 1) % pointsLength\r\n // 计算中间值\r\n const midpoint = Cartesian3.midpoint(points[i], points[nextIndex], new Cartesian3())\r\n\r\n const catographic = Cartographic.fromCartesian(points[i])\r\n const height = viewer.scene.globe.getHeight(catographic) || catographic.height\r\n height < excavateMinHeight.current && (excavateMinHeight.current = height)\r\n\r\n const up = Cartesian3.normalize(midpoint, new Cartesian3())\r\n let right = Cartesian3.subtract(points[nextIndex], midpoint, new Cartesian3())\r\n right = Cartesian3.normalize(right, right)\r\n let cross = Cartesian3.cross(right, up, new Cartesian3())\r\n cross = Cartesian3.normalize(cross, cross)\r\n const plane = new Plane(cross, 0.0)\r\n const distance = Plane.getPointDistance(plane, midpoint)\r\n planes.push(new ClippingPlane(cross, distance))\r\n }\r\n viewer.scene.globe.clippingPlanes = new ClippingPlaneCollection({\r\n planes,\r\n edgeWidth: 1,\r\n edgeColor: Color.WHITE,\r\n enabled: true,\r\n unionClippingRegions: false\r\n })\r\n\r\n prepareWell(points)\r\n if (wellData.current) {\r\n createWell(wellData.current)\r\n }\r\n }\r\n\r\n // 清除开挖分析结果\r\n const clear = () => {\r\n if (viewer.scene.globe.clippingPlanes) {\r\n viewer.scene.globe.clippingPlanes.enabled = !1\r\n viewer.scene.globe.clippingPlanes.removeAll()\r\n }\r\n if (viewer.scene.globe.clippingPlanes && !viewer.scene.globe.clippingPlanes?.isDestroyed) {\r\n viewer.scene.globe.clippingPlanes.destroy()\r\n }\r\n viewer.scene.globe.clippingPlanes = undefined\r\n if (bottomSurface.current) viewer.scene.primitives.remove(bottomSurface.current)\r\n if (wellWall.current) viewer.scene.primitives.remove(wellWall.current)\r\n bottomSurface.current = undefined\r\n wellWall.current = undefined\r\n viewer.scene.render()\r\n }\r\n\r\n const prepareWell = (points) => {\r\n const len = points.length\r\n if (len !== 0) {\r\n const no_height_top = []\r\n const height_top = []\r\n const bottom_pos = []\r\n const lerp_pos = []\r\n const diff = excavateMinHeight.current - heightNum.current\r\n for (let i = 0; i < len; i++) {\r\n const nextIndex = i === len - 1 ? 0 : i + 1\r\n const currentCattesian = Cartographic.fromCartesian(points[i])\r\n const nextCartorghic = Cartographic.fromCartesian(points[nextIndex])\r\n const currLonLat = [currentCattesian.longitude, currentCattesian.latitude]\r\n const nextLonLat = [nextCartorghic.longitude, nextCartorghic.latitude]\r\n\r\n if (i === 0) {\r\n lerp_pos.push(new Cartographic(currLonLat[0], currLonLat[1]))\r\n bottom_pos.push(Cartesian3.fromRadians(currLonLat[0], currLonLat[1], diff))\r\n no_height_top.push(Cartesian3.fromRadians(currLonLat[0], currLonLat[1], 0))\r\n height_top.push(Cartesian3.fromRadians(currLonLat[0], currLonLat[1], nextCartorghic.height))\r\n }\r\n\r\n if (!splitNumber.current) return\r\n\r\n for (let p = 1; p <= splitNumber.current; p++) {\r\n const firstLerp = CesiumMath.lerp(currLonLat[0], nextLonLat[0], p / splitNumber.current)\r\n const lastLerp = CesiumMath.lerp(currLonLat[1], nextLonLat[1], p / splitNumber.current)\r\n if (i !== len - 1 || p !== splitNumber.current) {\r\n lerp_pos.push(new Cartographic(firstLerp, lastLerp))\r\n bottom_pos.push(Cartesian3.fromRadians(firstLerp, lastLerp, diff))\r\n no_height_top.push(Cartesian3.fromRadians(firstLerp, lastLerp, 0))\r\n height_top.push(Cartesian3.fromRadians(firstLerp, lastLerp, nextCartorghic.height))\r\n }\r\n }\r\n }\r\n wellData.current = {\r\n lerp_pos,\r\n bottom_pos,\r\n no_height_top,\r\n height_top\r\n }\r\n }\r\n }\r\n\r\n return { start, clear, updateData, updateExcavateDepth, show }\r\n}\r\n\r\nexport default useTerrainClipPlan;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"useTerrainClipPlan.js","names":["_react","require","_cesium","useTerrainClipPlan","props","viewer","showResult","useRef","wellWall","bottomSurface","wellData","excavateMinHeight","wallImgStr","bottomImgStr","splitNumber","heightNum","positionsCur","show","isShow","current","scene","globe","clippingPlanes","enabled","switchExcavate","isSHow","material","Material","fromType","updateExcavateDepth","height","primitives","remove","lerpos","lerp_pos","res","i","length","push","Cartesian3","fromRadians","latitude","updateData","start","attrs","wallImg","splitNum","positions","bottomImg","createWell","data","terrainProvider","_layers","createBottomSurface","bottom_pos","handleData","arr","no_height_top","s","longitude","createWellWall","when","sampleTerrainMostDetailed","then","minHeight","getMinHeight","points","p","ellipsoidToLonLat","polygon","PolygonGeometry","polygonHierarchy","PolygonHierarchy","fromDegreesArrayHeights","perPositionHeight","geometry","createGeometry","fabric","type","uniforms","image","appearance","MaterialAppearance","translucent","flat","Primitive","geometryInstances","GeometryInstance","asynchronous","add","no_height_topt","maxHeights","minHeights","altitude","wall","WallGeometry","maximumHeights","minimumHeights","primitive","attributes","color","ColorGeometryInstanceAttribute","fromColor","Color","GREY","id","cartesians","_minPoint","minPoint","cartesian","ellipsoid","cartesian3","x","y","z","cartographic","cartesianToCartographic","CesiumMath","toDegrees","clear","planes","pointsLength","nextIndex","midpoint","catographic","Cartographic","fromCartesian","getHeight","up","normalize","right","subtract","cross","plane","Plane","distance","getPointDistance","ClippingPlane","ClippingPlaneCollection","edgeWidth","edgeColor","WHITE","unionClippingRegions","prepareWell","_viewer$scene$globe$c","removeAll","isDestroyed","destroy","undefined","render","len","height_top","diff","currentCattesian","nextCartorghic","currLonLat","nextLonLat","firstLerp","lerp","lastLerp","_default","exports"],"sources":["excavation-analysis/hooks/useTerrainClipPlan.js"],"sourcesContent":["import { useRef } from 'react';\nimport {\n Cartographic,\n Cartesian3,\n Math as CesiumMath,\n when,\n sampleTerrainMostDetailed,\n PolygonGeometry,\n PolygonHierarchy,\n Material,\n MaterialAppearance,\n Primitive,\n GeometryInstance,\n WallGeometry,\n ColorGeometryInstanceAttribute,\n Color,\n Plane,\n ClippingPlane,\n ClippingPlaneCollection,\n VERSION\n} from 'cesium';\n\nconst useTerrainClipPlan = (props) => {\n const { viewer } = props\n const showResult = useRef(true)\n const wellWall = useRef()\n const bottomSurface = useRef()\n const wellData = useRef()\n const excavateMinHeight = useRef(9999)\n const wallImgStr = useRef()\n const bottomImgStr = useRef()\n const splitNumber = useRef()\n const heightNum = useRef(0)\n const positionsCur = useRef([])\n\n // 设置是否显示\n const show = (isShow) => {\n showResult.current = isShow\n if (viewer.scene.globe.clippingPlanes) viewer.scene.globe.clippingPlanes.enabled = isShow\n switchExcavate(isShow)\n }\n\n const switchExcavate = (isSHow) => {\n if (!bottomSurface.current) return\n if (isSHow) {\n viewer.scene.globe.material = Material.fromType(\"WaJue\")\n if (wellWall.current) wellWall.current.show = isSHow\n bottomSurface.current.show = isSHow\n } else {\n viewer.globe.material = null\n if (wellWall.current) wellWall.current.show = !isSHow\n bottomSurface.current.show = !isSHow\n }\n }\n\n\n const updateExcavateDepth = (height) => {\n if (!wellData.current) return\n\n if (bottomSurface.current) viewer.scene.primitives.remove(bottomSurface.current)\n if (wellWall.current) viewer.scene.primitives.remove(wellWall.current)\n\n const lerpos = wellData.current.lerp_pos\n const res = []\n for (let i = 0; i < lerpos.length; i++){\n res.push(Cartesian3.fromRadians(lerpos[i].latitude, excavateMinHeight.current - height))\n }\n heightNum.current = height\n updateData(positionsCur.current)\n }\n\n // 开挖分析\n const start = (attrs) => {\n const { wallImg, splitNum, height, positions, bottomImg } = attrs\n wallImgStr.current = wallImg\n splitNumber.current = splitNum\n heightNum.current = height\n bottomImgStr.current = bottomImg\n positionsCur.current = positions\n updateData(positionsCur.current)\n }\n\n const createWell = (data) => {\n if (viewer.terrainProvider._layers) {\n createBottomSurface(data.bottom_pos);\n\n const handleData = (arr) => {\n const no_height_top = []\n for (let i = 0; i < arr.length; i++) {\n const s = Cartesian3.fromRadians(arr[i].longitude, arr[i].latitude, arr[i].height)\n no_height_top.push(s)\n }\n createWellWall(data.bottom_pos, no_height_top)\n }\n // 针对低于 1.90.0 版本\n if (when) {\n when(sampleTerrainMostDetailed(viewer.terrainProvider, data.lerp_pos), handleData)\n } else {\n sampleTerrainMostDetailed(viewer.terrainProvider, data.lerp_pos).then(handleData)\n }\n } else {\n createBottomSurface(data.bottom_pos)\n createWellWall(data.bottom_pos, data.no_height_top)\n }\n }\n\n const createBottomSurface = (bottom_pos) => {\n if (bottom_pos.length) {\n const minHeight = getMinHeight(bottom_pos)\n const points = []\n for (let i = 0; i < bottom_pos.length; i++) {\n const p = ellipsoidToLonLat(bottom_pos[i])\n points.push(p.longitude)\n points.push(p.latitude)\n points.push(minHeight)\n }\n if (!points) return\n const polygon = new PolygonGeometry({\n polygonHierarchy: new PolygonHierarchy(\n Cartesian3.fromDegreesArrayHeights(points)\n ),\n perPositionHeight: true\n })\n const geometry = PolygonGeometry.createGeometry(polygon)\n const material = new Material({\n fabric: {\n type: 'Image',\n uniforms: {\n image: bottomImgStr.current\n }\n }\n })\n const appearance = new MaterialAppearance({\n translucent: false,\n flat: true,\n material\n })\n\n if (!geometry) return\n bottomSurface.current = new Primitive({\n geometryInstances: new GeometryInstance({\n geometry\n }),\n appearance,\n asynchronous: false\n })\n viewer.scene.primitives.add(bottomSurface.current)\n }\n }\n\n const createWellWall = (bottom_pos, no_height_topt) => {\n const minHeight = getMinHeight(bottom_pos)\n const maxHeights = []\n const minHeights = []\n for (let i = 0; i < no_height_topt.length; i++) {\n maxHeights.push(ellipsoidToLonLat(no_height_topt[i]).altitude)\n minHeights.push(minHeight)\n }\n const wall = new WallGeometry({\n positions: no_height_topt,\n maximumHeights: maxHeights,\n minimumHeights: minHeights,\n })\n const geometry = WallGeometry.createGeometry(wall)\n\n const material = new Material({\n fabric: {\n type: 'Image',\n uniforms: {\n image: wallImgStr.current\n }\n }\n })\n const appearance = new MaterialAppearance({\n translucent: false,\n flat: true,\n material\n })\n if (geometry) {\n const primitive = new Primitive({\n geometryInstances: new GeometryInstance({\n geometry,\n attributes: {\n color: ColorGeometryInstanceAttribute.fromColor(Color.GREY)\n },\n id: 'PitWall'\n }),\n appearance,\n asynchronous: false\n })\n wellWall.current = primitive\n viewer.scene.primitives.add(primitive)\n }\n }\n\n const getMinHeight = (cartesians) => {\n let minHeight = 5000000\n let minPoint = null\n for (let i = 0; i < cartesians.length; i++) {\n const height = cartesians[i]['z']\n if (height < minHeight) {\n minHeight = height\n minPoint = ellipsoidToLonLat(cartesians[i])\n }\n }\n return minPoint?.altitude\n }\n\n const ellipsoidToLonLat = (cartesian) => {\n const ellipsoid = viewer.scene.globe.ellipsoid\n const cartesian3 = new Cartesian3(cartesian.x, cartesian.y, cartesian.z)\n const cartographic = ellipsoid.cartesianToCartographic(cartesian3)\n const latitude = CesiumMath.toDegrees(cartographic.latitude)\n const longitude = CesiumMath.toDegrees(cartographic.longitude)\n const altitude = cartographic.height\n return {\n longitude,\n latitude,\n altitude\n }\n }\n\n // 更新开挖深度\n const updateData = (points) => {\n clear()\n const planes = []\n const pointsLength = points.length\n // 计算分量差\n // const subtr = Cartesian3.subtract(positions[0], positions[1], new Cartesian3())\n excavateMinHeight.current = 9999\n\n for (let i = 0; i < pointsLength; ++i) {\n const nextIndex = (i + 1) % pointsLength\n // 计算中间值\n const midpoint = Cartesian3.midpoint(points[i], points[nextIndex], new Cartesian3())\n\n const catographic = Cartographic.fromCartesian(points[i])\n const height = viewer.scene.globe.getHeight(catographic) || catographic.height\n height < excavateMinHeight.current && (excavateMinHeight.current = height)\n\n const up = Cartesian3.normalize(midpoint, new Cartesian3())\n let right = Cartesian3.subtract(points[nextIndex], midpoint, new Cartesian3())\n right = Cartesian3.normalize(right, right)\n let cross = Cartesian3.cross(right, up, new Cartesian3())\n cross = Cartesian3.normalize(cross, cross)\n const plane = new Plane(cross, 0.0)\n const distance = Plane.getPointDistance(plane, midpoint)\n planes.push(new ClippingPlane(cross, distance))\n }\n viewer.scene.globe.clippingPlanes = new ClippingPlaneCollection({\n planes,\n edgeWidth: 1,\n edgeColor: Color.WHITE,\n enabled: true,\n unionClippingRegions: false\n })\n\n prepareWell(points)\n if (wellData.current) {\n createWell(wellData.current)\n }\n }\n\n // 清除开挖分析结果\n const clear = () => {\n if (viewer.scene.globe.clippingPlanes) {\n viewer.scene.globe.clippingPlanes.enabled = !1\n viewer.scene.globe.clippingPlanes.removeAll()\n }\n if (viewer.scene.globe.clippingPlanes && !viewer.scene.globe.clippingPlanes?.isDestroyed) {\n viewer.scene.globe.clippingPlanes.destroy()\n }\n viewer.scene.globe.clippingPlanes = undefined\n if (bottomSurface.current) viewer.scene.primitives.remove(bottomSurface.current)\n if (wellWall.current) viewer.scene.primitives.remove(wellWall.current)\n bottomSurface.current = undefined\n wellWall.current = undefined\n viewer.scene.render()\n }\n\n const prepareWell = (points) => {\n const len = points.length\n if (len !== 0) {\n const no_height_top = []\n const height_top = []\n const bottom_pos = []\n const lerp_pos = []\n const diff = excavateMinHeight.current - heightNum.current\n for (let i = 0; i < len; i++) {\n const nextIndex = i === len - 1 ? 0 : i + 1\n const currentCattesian = Cartographic.fromCartesian(points[i])\n const nextCartorghic = Cartographic.fromCartesian(points[nextIndex])\n const currLonLat = [currentCattesian.longitude, currentCattesian.latitude]\n const nextLonLat = [nextCartorghic.longitude, nextCartorghic.latitude]\n\n if (i === 0) {\n lerp_pos.push(new Cartographic(currLonLat[0], currLonLat[1]))\n bottom_pos.push(Cartesian3.fromRadians(currLonLat[0], currLonLat[1], diff))\n no_height_top.push(Cartesian3.fromRadians(currLonLat[0], currLonLat[1], 0))\n height_top.push(Cartesian3.fromRadians(currLonLat[0], currLonLat[1], nextCartorghic.height))\n }\n\n if (!splitNumber.current) return\n\n for (let p = 1; p <= splitNumber.current; p++) {\n const firstLerp = CesiumMath.lerp(currLonLat[0], nextLonLat[0], p / splitNumber.current)\n const lastLerp = CesiumMath.lerp(currLonLat[1], nextLonLat[1], p / splitNumber.current)\n if (i !== len - 1 || p !== splitNumber.current) {\n lerp_pos.push(new Cartographic(firstLerp, lastLerp))\n bottom_pos.push(Cartesian3.fromRadians(firstLerp, lastLerp, diff))\n no_height_top.push(Cartesian3.fromRadians(firstLerp, lastLerp, 0))\n height_top.push(Cartesian3.fromRadians(firstLerp, lastLerp, nextCartorghic.height))\n }\n }\n }\n wellData.current = {\n lerp_pos,\n bottom_pos,\n no_height_top,\n height_top\n }\n }\n }\n\n return { start, clear, updateData, updateExcavateDepth, show }\n}\n\nexport default useTerrainClipPlan;\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AAqBA,IAAME,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIC,KAAK,EAAK;EAClC,IAAQC,MAAM,GAAKD,KAAK,CAAhBC,MAAM;EACd,IAAMC,UAAU,GAAG,IAAAC,aAAM,EAAC,IAAI,CAAC;EAC/B,IAAMC,QAAQ,GAAG,IAAAD,aAAM,EAAC,CAAC;EACzB,IAAME,aAAa,GAAG,IAAAF,aAAM,EAAC,CAAC;EAC9B,IAAMG,QAAQ,GAAG,IAAAH,aAAM,EAAC,CAAC;EACzB,IAAMI,iBAAiB,GAAG,IAAAJ,aAAM,EAAC,IAAI,CAAC;EACtC,IAAMK,UAAU,GAAG,IAAAL,aAAM,EAAC,CAAC;EAC3B,IAAMM,YAAY,GAAG,IAAAN,aAAM,EAAC,CAAC;EAC7B,IAAMO,WAAW,GAAG,IAAAP,aAAM,EAAC,CAAC;EAC5B,IAAMQ,SAAS,GAAG,IAAAR,aAAM,EAAC,CAAC,CAAC;EAC3B,IAAMS,YAAY,GAAG,IAAAT,aAAM,EAAC,EAAE,CAAC;;EAE/B;EACA,IAAMU,IAAI,GAAG,SAAPA,IAAIA,CAAIC,MAAM,EAAK;IACrBZ,UAAU,CAACa,OAAO,GAAGD,MAAM;IAC3B,IAAIb,MAAM,CAACe,KAAK,CAACC,KAAK,CAACC,cAAc,EAAEjB,MAAM,CAACe,KAAK,CAACC,KAAK,CAACC,cAAc,CAACC,OAAO,GAAGL,MAAM;IACzFM,cAAc,CAACN,MAAM,CAAC;EAC1B,CAAC;EAED,IAAMM,cAAc,GAAG,SAAjBA,cAAcA,CAAIC,MAAM,EAAK;IAC/B,IAAI,CAAChB,aAAa,CAACU,OAAO,EAAE;IAC5B,IAAIM,MAAM,EAAE;MACRpB,MAAM,CAACe,KAAK,CAACC,KAAK,CAACK,QAAQ,GAAGC,gBAAQ,CAACC,QAAQ,CAAC,OAAO,CAAC;MACxD,IAAIpB,QAAQ,CAACW,OAAO,EAAEX,QAAQ,CAACW,OAAO,CAACF,IAAI,GAAGQ,MAAM;MACpDhB,aAAa,CAACU,OAAO,CAACF,IAAI,GAAGQ,MAAM;IACvC,CAAC,MAAM;MACHpB,MAAM,CAACgB,KAAK,CAACK,QAAQ,GAAG,IAAI;MAC5B,IAAIlB,QAAQ,CAACW,OAAO,EAAEX,QAAQ,CAACW,OAAO,CAACF,IAAI,GAAG,CAACQ,MAAM;MACrDhB,aAAa,CAACU,OAAO,CAACF,IAAI,GAAG,CAACQ,MAAM;IACxC;EACJ,CAAC;EAGD,IAAMI,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIC,MAAM,EAAK;IACpC,IAAI,CAACpB,QAAQ,CAACS,OAAO,EAAE;IAEvB,IAAIV,aAAa,CAACU,OAAO,EAAEd,MAAM,CAACe,KAAK,CAACW,UAAU,CAACC,MAAM,CAACvB,aAAa,CAACU,OAAO,CAAC;IAChF,IAAIX,QAAQ,CAACW,OAAO,EAAEd,MAAM,CAACe,KAAK,CAACW,UAAU,CAACC,MAAM,CAACxB,QAAQ,CAACW,OAAO,CAAC;IAEtE,IAAMc,MAAM,GAAGvB,QAAQ,CAACS,OAAO,CAACe,QAAQ;IACxC,IAAMC,GAAG,GAAG,EAAE;IACd,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,MAAM,CAACI,MAAM,EAAED,CAAC,EAAE,EAAC;MACnCD,GAAG,CAACG,IAAI,CAACC,kBAAU,CAACC,WAAW,CAACP,MAAM,CAACG,CAAC,CAAC,CAACK,QAAQ,EAAE9B,iBAAiB,CAACQ,OAAO,GAAGW,MAAM,CAAC,CAAC;IAC5F;IACAf,SAAS,CAACI,OAAO,GAAGW,MAAM;IAC1BY,UAAU,CAAC1B,YAAY,CAACG,OAAO,CAAC;EACpC,CAAC;;EAED;EACA,IAAMwB,KAAK,GAAG,SAARA,KAAKA,CAAIC,KAAK,EAAK;IACrB,IAAQC,OAAO,GAA6CD,KAAK,CAAzDC,OAAO;MAAEC,QAAQ,GAAmCF,KAAK,CAAhDE,QAAQ;MAAEhB,MAAM,GAA2Bc,KAAK,CAAtCd,MAAM;MAAEiB,SAAS,GAAgBH,KAAK,CAA9BG,SAAS;MAAEC,SAAS,GAAKJ,KAAK,CAAnBI,SAAS;IACvDpC,UAAU,CAACO,OAAO,GAAG0B,OAAO;IAC5B/B,WAAW,CAACK,OAAO,GAAG2B,QAAQ;IAC9B/B,SAAS,CAACI,OAAO,GAAGW,MAAM;IAC1BjB,YAAY,CAACM,OAAO,GAAG6B,SAAS;IAChChC,YAAY,CAACG,OAAO,GAAG4B,SAAS;IAChCL,UAAU,CAAC1B,YAAY,CAACG,OAAO,CAAC;EACpC,CAAC;EAED,IAAM8B,UAAU,GAAG,SAAbA,UAAUA,CAAIC,IAAI,EAAK;IACzB,IAAI7C,MAAM,CAAC8C,eAAe,CAACC,OAAO,EAAE;MAChCC,mBAAmB,CAACH,IAAI,CAACI,UAAU,CAAC;MAEpC,IAAMC,UAAU,GAAG,SAAbA,UAAUA,CAAIC,GAAG,EAAK;QACxB,IAAMC,aAAa,GAAG,EAAE;QACxB,KAAK,IAAIrB,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGoB,GAAG,CAACnB,MAAM,EAAED,CAAC,EAAE,EAAE;UACjC,IAAMsB,CAAC,GAAGnB,kBAAU,CAACC,WAAW,CAACgB,GAAG,CAACpB,CAAC,CAAC,CAACuB,SAAS,EAAEH,GAAG,CAACpB,CAAC,CAAC,CAACK,QAAQ,EAAEe,GAAG,CAACpB,CAAC,CAAC,CAACN,MAAM,CAAC;UAClF2B,aAAa,CAACnB,IAAI,CAACoB,CAAC,CAAC;QACzB;QACAE,cAAc,CAACV,IAAI,CAACI,UAAU,EAAEG,aAAa,CAAC;MAClD,CAAC;MACD;MACA,IAAII,YAAI,EAAE;QACN,IAAAA,YAAI,EAAC,IAAAC,iCAAyB,EAACzD,MAAM,CAAC8C,eAAe,EAAED,IAAI,CAAChB,QAAQ,CAAC,EAAEqB,UAAU,CAAC;MACtF,CAAC,MAAM;QACH,IAAAO,iCAAyB,EAACzD,MAAM,CAAC8C,eAAe,EAAED,IAAI,CAAChB,QAAQ,CAAC,CAAC6B,IAAI,CAACR,UAAU,CAAC;MACrF;IACJ,CAAC,MAAM;MACHF,mBAAmB,CAACH,IAAI,CAACI,UAAU,CAAC;MACpCM,cAAc,CAACV,IAAI,CAACI,UAAU,EAAEJ,IAAI,CAACO,aAAa,CAAC;IACvD;EACJ,CAAC;EAED,IAAMJ,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIC,UAAU,EAAK;IACxC,IAAIA,UAAU,CAACjB,MAAM,EAAE;MACnB,IAAM2B,SAAS,GAAGC,YAAY,CAACX,UAAU,CAAC;MAC1C,IAAMY,MAAM,GAAG,EAAE;MACjB,KAAK,IAAI9B,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGkB,UAAU,CAACjB,MAAM,EAAED,CAAC,EAAE,EAAE;QACxC,IAAM+B,CAAC,GAAGC,iBAAiB,CAACd,UAAU,CAAClB,CAAC,CAAC,CAAC;QAC1C8B,MAAM,CAAC5B,IAAI,CAAC6B,CAAC,CAACR,SAAS,CAAC;QACxBO,MAAM,CAAC5B,IAAI,CAAC6B,CAAC,CAAC1B,QAAQ,CAAC;QACvByB,MAAM,CAAC5B,IAAI,CAAC0B,SAAS,CAAC;MAC1B;MACA,IAAI,CAACE,MAAM,EAAE;MACb,IAAMG,OAAO,GAAG,IAAIC,uBAAe,CAAC;QAChCC,gBAAgB,EAAE,IAAIC,wBAAgB,CAClCjC,kBAAU,CAACkC,uBAAuB,CAACP,MAAM,CACrD,CAAC;QACGQ,iBAAiB,EAAE;MACvB,CAAC,CAAC;MACE,IAAMC,QAAQ,GAAGL,uBAAe,CAACM,cAAc,CAACP,OAAO,CAAC;MACxD,IAAM3C,QAAQ,GAAG,IAAIC,gBAAQ,CAAC;QAC1BkD,MAAM,EAAE;UACJC,IAAI,EAAE,OAAO;UACbC,QAAQ,EAAE;YACNC,KAAK,EAAEnE,YAAY,CAACM;UACxB;QACJ;MACJ,CAAC,CAAC;MACF,IAAM8D,UAAU,GAAG,IAAIC,0BAAkB,CAAC;QACtCC,WAAW,EAAE,KAAK;QAClBC,IAAI,EAAE,IAAI;QACV1D,QAAQ,EAARA;MACJ,CAAC,CAAC;MAEF,IAAI,CAACiD,QAAQ,EAAE;MACflE,aAAa,CAACU,OAAO,GAAG,IAAIkE,iBAAS,CAAC;QAClCC,iBAAiB,EAAE,IAAIC,wBAAgB,CAAC;UACpCZ,QAAQ,EAARA;QACJ,CAAC,CAAC;QACFM,UAAU,EAAVA,UAAU;QACVO,YAAY,EAAE;MAClB,CAAC,CAAC;MACFnF,MAAM,CAACe,KAAK,CAACW,UAAU,CAAC0D,GAAG,CAAChF,aAAa,CAACU,OAAO,CAAC;IACtD;EACJ,CAAC;EAED,IAAMyC,cAAc,GAAG,SAAjBA,cAAcA,CAAIN,UAAU,EAAEoC,cAAc,EAAK;IACnD,IAAM1B,SAAS,GAAGC,YAAY,CAACX,UAAU,CAAC;IAC1C,IAAMqC,UAAU,GAAG,EAAE;IACrB,IAAMC,UAAU,GAAG,EAAE;IACrB,KAAK,IAAIxD,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGsD,cAAc,CAACrD,MAAM,EAAED,CAAC,EAAE,EAAE;MAC5CuD,UAAU,CAACrD,IAAI,CAAC8B,iBAAiB,CAACsB,cAAc,CAACtD,CAAC,CAAC,CAAC,CAACyD,QAAQ,CAAC;MAC9DD,UAAU,CAACtD,IAAI,CAAC0B,SAAS,CAAC;IAC9B;IACA,IAAM8B,IAAI,GAAG,IAAIC,oBAAY,CAAC;MAC1BhD,SAAS,EAAE2C,cAAc;MACzBM,cAAc,EAAEL,UAAU;MAC1BM,cAAc,EAAEL;IACpB,CAAC,CAAC;IACF,IAAMjB,QAAQ,GAAGoB,oBAAY,CAACnB,cAAc,CAACkB,IAAI,CAAC;IAElD,IAAMpE,QAAQ,GAAG,IAAIC,gBAAQ,CAAC;MAC1BkD,MAAM,EAAE;QACJC,IAAI,EAAE,OAAO;QACbC,QAAQ,EAAE;UACNC,KAAK,EAAEpE,UAAU,CAACO;QACtB;MACJ;IACJ,CAAC,CAAC;IACF,IAAM8D,UAAU,GAAG,IAAIC,0BAAkB,CAAC;MACtCC,WAAW,EAAE,KAAK;MAClBC,IAAI,EAAE,IAAI;MACV1D,QAAQ,EAARA;IACJ,CAAC,CAAC;IACF,IAAIiD,QAAQ,EAAE;MACV,IAAMuB,SAAS,GAAG,IAAIb,iBAAS,CAAC;QAC5BC,iBAAiB,EAAE,IAAIC,wBAAgB,CAAC;UACpCZ,QAAQ,EAARA,QAAQ;UACRwB,UAAU,EAAE;YACRC,KAAK,EAAEC,sCAA8B,CAACC,SAAS,CAACC,aAAK,CAACC,IAAI;UAC9D,CAAC;UACDC,EAAE,EAAE;QACR,CAAC,CAAC;QACFxB,UAAU,EAAVA,UAAU;QACVO,YAAY,EAAE;MAClB,CAAC,CAAC;MACFhF,QAAQ,CAACW,OAAO,GAAG+E,SAAS;MAC5B7F,MAAM,CAACe,KAAK,CAACW,UAAU,CAAC0D,GAAG,CAACS,SAAS,CAAC;IAC1C;EACJ,CAAC;EAED,IAAMjC,YAAY,GAAG,SAAfA,YAAYA,CAAIyC,UAAU,EAAK;IAAA,IAAAC,SAAA;IACjC,IAAI3C,SAAS,GAAG,OAAO;IACvB,IAAI4C,QAAQ,GAAG,IAAI;IACnB,KAAK,IAAIxE,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGsE,UAAU,CAACrE,MAAM,EAAED,CAAC,EAAE,EAAE;MACxC,IAAMN,MAAM,GAAG4E,UAAU,CAACtE,CAAC,CAAC,CAAC,GAAG,CAAC;MACjC,IAAIN,MAAM,GAAGkC,SAAS,EAAE;QACpBA,SAAS,GAAGlC,MAAM;QAClB8E,QAAQ,GAAGxC,iBAAiB,CAACsC,UAAU,CAACtE,CAAC,CAAC,CAAC;MAC/C;IACJ;IACA,QAAAuE,SAAA,GAAOC,QAAQ,cAAAD,SAAA,uBAARA,SAAA,CAAUd,QAAQ;EAC7B,CAAC;EAED,IAAMzB,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIyC,SAAS,EAAK;IACrC,IAAMC,SAAS,GAAGzG,MAAM,CAACe,KAAK,CAACC,KAAK,CAACyF,SAAS;IAC9C,IAAMC,UAAU,GAAG,IAAIxE,kBAAU,CAACsE,SAAS,CAACG,CAAC,EAAEH,SAAS,CAACI,CAAC,EAAEJ,SAAS,CAACK,CAAC,CAAC;IACxE,IAAMC,YAAY,GAAGL,SAAS,CAACM,uBAAuB,CAACL,UAAU,CAAC;IAClE,IAAMtE,QAAQ,GAAG4E,YAAU,CAACC,SAAS,CAACH,YAAY,CAAC1E,QAAQ,CAAC;IAC5D,IAAMkB,SAAS,GAAG0D,YAAU,CAACC,SAAS,CAACH,YAAY,CAACxD,SAAS,CAAC;IAC9D,IAAMkC,QAAQ,GAAGsB,YAAY,CAACrF,MAAM;IACpC,OAAO;MACH6B,SAAS,EAATA,SAAS;MACTlB,QAAQ,EAARA,QAAQ;MACRoD,QAAQ,EAARA;IACJ,CAAC;EACL,CAAC;;EAED;EACA,IAAMnD,UAAU,GAAG,SAAbA,UAAUA,CAAIwB,MAAM,EAAK;IAC3BqD,KAAK,CAAC,CAAC;IACP,IAAMC,MAAM,GAAG,EAAE;IACjB,IAAMC,YAAY,GAAGvD,MAAM,CAAC7B,MAAM;IAClC;IACA;IACA1B,iBAAiB,CAACQ,OAAO,GAAG,IAAI;IAEhC,KAAK,IAAIiB,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGqF,YAAY,EAAE,EAAErF,CAAC,EAAE;MACnC,IAAMsF,SAAS,GAAG,CAACtF,CAAC,GAAG,CAAC,IAAIqF,YAAY;MACxC;MACA,IAAME,QAAQ,GAAGpF,kBAAU,CAACoF,QAAQ,CAACzD,MAAM,CAAC9B,CAAC,CAAC,EAAE8B,MAAM,CAACwD,SAAS,CAAC,EAAE,IAAInF,kBAAU,CAAC,CAAC,CAAC;MAEpF,IAAMqF,WAAW,GAAGC,oBAAY,CAACC,aAAa,CAAC5D,MAAM,CAAC9B,CAAC,CAAC,CAAC;MACzD,IAAMN,MAAM,GAAGzB,MAAM,CAACe,KAAK,CAACC,KAAK,CAAC0G,SAAS,CAACH,WAAW,CAAC,IAAIA,WAAW,CAAC9F,MAAM;MAC9EA,MAAM,GAAGnB,iBAAiB,CAACQ,OAAO,KAAKR,iBAAiB,CAACQ,OAAO,GAAGW,MAAM,CAAC;MAE1E,IAAMkG,EAAE,GAAGzF,kBAAU,CAAC0F,SAAS,CAACN,QAAQ,EAAE,IAAIpF,kBAAU,CAAC,CAAC,CAAC;MAC3D,IAAI2F,KAAK,GAAG3F,kBAAU,CAAC4F,QAAQ,CAACjE,MAAM,CAACwD,SAAS,CAAC,EAAEC,QAAQ,EAAE,IAAIpF,kBAAU,CAAC,CAAC,CAAC;MAC9E2F,KAAK,GAAG3F,kBAAU,CAAC0F,SAAS,CAACC,KAAK,EAAEA,KAAK,CAAC;MAC1C,IAAIE,KAAK,GAAG7F,kBAAU,CAAC6F,KAAK,CAACF,KAAK,EAAEF,EAAE,EAAE,IAAIzF,kBAAU,CAAC,CAAC,CAAC;MACzD6F,KAAK,GAAG7F,kBAAU,CAAC0F,SAAS,CAACG,KAAK,EAAEA,KAAK,CAAC;MAC1C,IAAMC,KAAK,GAAG,IAAIC,aAAK,CAACF,KAAK,EAAE,GAAG,CAAC;MACnC,IAAMG,QAAQ,GAAGD,aAAK,CAACE,gBAAgB,CAACH,KAAK,EAAEV,QAAQ,CAAC;MACxDH,MAAM,CAAClF,IAAI,CAAC,IAAImG,qBAAa,CAACL,KAAK,EAAEG,QAAQ,CAAC,CAAC;IACnD;IACAlI,MAAM,CAACe,KAAK,CAACC,KAAK,CAACC,cAAc,GAAG,IAAIoH,+BAAuB,CAAC;MAC5DlB,MAAM,EAANA,MAAM;MACNmB,SAAS,EAAE,CAAC;MACZC,SAAS,EAAErC,aAAK,CAACsC,KAAK;MACtBtH,OAAO,EAAE,IAAI;MACbuH,oBAAoB,EAAE;IAC1B,CAAC,CAAC;IAEFC,WAAW,CAAC7E,MAAM,CAAC;IACnB,IAAIxD,QAAQ,CAACS,OAAO,EAAE;MAClB8B,UAAU,CAACvC,QAAQ,CAACS,OAAO,CAAC;IAChC;EACJ,CAAC;;EAED;EACA,IAAMoG,KAAK,GAAG,SAARA,KAAKA,CAAA,EAAS;IAAA,IAAAyB,qBAAA;IAChB,IAAI3I,MAAM,CAACe,KAAK,CAACC,KAAK,CAACC,cAAc,EAAG;MACpCjB,MAAM,CAACe,KAAK,CAACC,KAAK,CAACC,cAAc,CAACC,OAAO,GAAG,CAAC,CAAC;MAC9ClB,MAAM,CAACe,KAAK,CAACC,KAAK,CAACC,cAAc,CAAC2H,SAAS,CAAC,CAAC;IACjD;IACA,IAAI5I,MAAM,CAACe,KAAK,CAACC,KAAK,CAACC,cAAc,IAAI,GAAA0H,qBAAA,GAAC3I,MAAM,CAACe,KAAK,CAACC,KAAK,CAACC,cAAc,cAAA0H,qBAAA,eAAjCA,qBAAA,CAAmCE,WAAW,GAAE;MACtF7I,MAAM,CAACe,KAAK,CAACC,KAAK,CAACC,cAAc,CAAC6H,OAAO,CAAC,CAAC;IAC/C;IACA9I,MAAM,CAACe,KAAK,CAACC,KAAK,CAACC,cAAc,GAAG8H,SAAS;IAC7C,IAAI3I,aAAa,CAACU,OAAO,EAAEd,MAAM,CAACe,KAAK,CAACW,UAAU,CAACC,MAAM,CAACvB,aAAa,CAACU,OAAO,CAAC;IAChF,IAAIX,QAAQ,CAACW,OAAO,EAAEd,MAAM,CAACe,KAAK,CAACW,UAAU,CAACC,MAAM,CAACxB,QAAQ,CAACW,OAAO,CAAC;IACtEV,aAAa,CAACU,OAAO,GAAGiI,SAAS;IACjC5I,QAAQ,CAACW,OAAO,GAAGiI,SAAS;IAC5B/I,MAAM,CAACe,KAAK,CAACiI,MAAM,CAAC,CAAC;EACzB,CAAC;EAED,IAAMN,WAAW,GAAG,SAAdA,WAAWA,CAAI7E,MAAM,EAAK;IAC5B,IAAMoF,GAAG,GAAGpF,MAAM,CAAC7B,MAAM;IACzB,IAAIiH,GAAG,KAAK,CAAC,EAAE;MACX,IAAM7F,aAAa,GAAG,EAAE;MACxB,IAAM8F,UAAU,GAAG,EAAE;MACrB,IAAMjG,UAAU,GAAG,EAAE;MACrB,IAAMpB,QAAQ,GAAG,EAAE;MACnB,IAAMsH,IAAI,GAAG7I,iBAAiB,CAACQ,OAAO,GAAGJ,SAAS,CAACI,OAAO;MAC1D,KAAK,IAAIiB,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGkH,GAAG,EAAElH,CAAC,EAAE,EAAE;QAC1B,IAAMsF,SAAS,GAAGtF,CAAC,KAAKkH,GAAG,GAAG,CAAC,GAAG,CAAC,GAAGlH,CAAC,GAAG,CAAC;QAC3C,IAAMqH,gBAAgB,GAAG5B,oBAAY,CAACC,aAAa,CAAC5D,MAAM,CAAC9B,CAAC,CAAC,CAAC;QAC9D,IAAMsH,cAAc,GAAG7B,oBAAY,CAACC,aAAa,CAAC5D,MAAM,CAACwD,SAAS,CAAC,CAAC;QACpE,IAAMiC,UAAU,GAAG,CAACF,gBAAgB,CAAC9F,SAAS,EAAE8F,gBAAgB,CAAChH,QAAQ,CAAC;QAC1E,IAAMmH,UAAU,GAAG,CAACF,cAAc,CAAC/F,SAAS,EAAE+F,cAAc,CAACjH,QAAQ,CAAC;QAEtE,IAAIL,CAAC,KAAK,CAAC,EAAE;UACTF,QAAQ,CAACI,IAAI,CAAC,IAAIuF,oBAAY,CAAC8B,UAAU,CAAC,CAAC,CAAC,EAAEA,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;UAC7DrG,UAAU,CAAChB,IAAI,CAACC,kBAAU,CAACC,WAAW,CAACmH,UAAU,CAAC,CAAC,CAAC,EAAEA,UAAU,CAAC,CAAC,CAAC,EAAEH,IAAI,CAAC,CAAC;UAC3E/F,aAAa,CAACnB,IAAI,CAACC,kBAAU,CAACC,WAAW,CAACmH,UAAU,CAAC,CAAC,CAAC,EAAEA,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;UAC3EJ,UAAU,CAACjH,IAAI,CAACC,kBAAU,CAACC,WAAW,CAACmH,UAAU,CAAC,CAAC,CAAC,EAAEA,UAAU,CAAC,CAAC,CAAC,EAAED,cAAc,CAAC5H,MAAM,CAAC,CAAC;QAChG;QAEA,IAAI,CAAChB,WAAW,CAACK,OAAO,EAAE;QAE1B,KAAK,IAAIgD,CAAC,GAAG,CAAC,EAAEA,CAAC,IAAIrD,WAAW,CAACK,OAAO,EAAEgD,CAAC,EAAE,EAAE;UAC3C,IAAM0F,SAAS,GAAGxC,YAAU,CAACyC,IAAI,CAACH,UAAU,CAAC,CAAC,CAAC,EAAEC,UAAU,CAAC,CAAC,CAAC,EAAEzF,CAAC,GAAGrD,WAAW,CAACK,OAAO,CAAC;UACxF,IAAM4I,QAAQ,GAAG1C,YAAU,CAACyC,IAAI,CAACH,UAAU,CAAC,CAAC,CAAC,EAAEC,UAAU,CAAC,CAAC,CAAC,EAAEzF,CAAC,GAAGrD,WAAW,CAACK,OAAO,CAAC;UACvF,IAAIiB,CAAC,KAAKkH,GAAG,GAAG,CAAC,IAAInF,CAAC,KAAKrD,WAAW,CAACK,OAAO,EAAE;YAC5Ce,QAAQ,CAACI,IAAI,CAAC,IAAIuF,oBAAY,CAACgC,SAAS,EAAEE,QAAQ,CAAC,CAAC;YACpDzG,UAAU,CAAChB,IAAI,CAACC,kBAAU,CAACC,WAAW,CAACqH,SAAS,EAAEE,QAAQ,EAAEP,IAAI,CAAC,CAAC;YAClE/F,aAAa,CAACnB,IAAI,CAACC,kBAAU,CAACC,WAAW,CAACqH,SAAS,EAAEE,QAAQ,EAAE,CAAC,CAAC,CAAC;YAClER,UAAU,CAACjH,IAAI,CAACC,kBAAU,CAACC,WAAW,CAACqH,SAAS,EAAEE,QAAQ,EAAEL,cAAc,CAAC5H,MAAM,CAAC,CAAC;UACvF;QACJ;MACJ;MACApB,QAAQ,CAACS,OAAO,GAAG;QACfe,QAAQ,EAARA,QAAQ;QACRoB,UAAU,EAAVA,UAAU;QACVG,aAAa,EAAbA,aAAa;QACb8F,UAAU,EAAVA;MACJ,CAAC;IACL;EACJ,CAAC;EAED,OAAO;IAAE5G,KAAK,EAALA,KAAK;IAAE4E,KAAK,EAALA,KAAK;IAAE7E,UAAU,EAAVA,UAAU;IAAEb,mBAAmB,EAAnBA,mBAAmB;IAAEZ,IAAI,EAAJA;EAAK,CAAC;AAClE,CAAC;AAAA,IAAA+I,QAAA,GAAAC,OAAA,cAEc9J,kBAAkB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"useTileSetCut.js","names":["_react","require","_Cut","_interopRequireDefault","e","__esModule","useTileSetCut","props","viewer","sceneId","cutToolRef","useRef","loadTileSetCut","current","layer","getLayerByKey","Cut","flatHeight","_default","exports"],"sources":["excavation-analysis/hooks/useTileSetCut.js"],"sourcesContent":["import {useRef} from 'react';\r\nimport Cut from \"../Cut\";\r\n\r\nconst useTileSetCut = (props) => {\r\n const {viewer, sceneId} = props;\r\n\r\n const cutToolRef = useRef();\r\n\r\n const loadTileSetCut = () => {\r\n if (cutToolRef.current) {\r\n return cutToolRef.current;\r\n }\r\n\r\n if (sceneId) {\r\n let layer = viewer.getLayerByKey(sceneId);\r\n if (layer) {\r\n cutToolRef.current = new Cut(layer, {\r\n flatHeight: -30\r\n });\r\n return cutToolRef.current;\r\n }\r\n }\r\n }\r\n\r\n\r\n return {loadTileSetCut}\r\n}\r\n\r\nexport default useTileSetCut;\r\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,IAAA,GAAAC,sBAAA,CAAAF,OAAA;AAAyB,SAAAE,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,gBAAAA,CAAA;AAEzB,IAAME,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,KAAK,EAAK;EAC7B,IAAOC,MAAM,GAAaD,KAAK,CAAxBC,MAAM;IAAEC,OAAO,GAAIF,KAAK,CAAhBE,OAAO;EAEtB,IAAMC,UAAU,GAAG,IAAAC,aAAM,EAAC,CAAC;EAE3B,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,CAAA,EAAS;IACzB,IAAIF,UAAU,CAACG,OAAO,EAAE;MACpB,OAAOH,UAAU,CAACG,OAAO;IAC7B;IAEA,IAAIJ,OAAO,EAAE;MACT,IAAIK,KAAK,GAAGN,MAAM,CAACO,aAAa,CAACN,OAAO,CAAC;MACzC,IAAIK,KAAK,EAAE;QACPJ,UAAU,CAACG,OAAO,GAAG,IAAIG,eAAG,CAACF,KAAK,EAAE;UAChCG,UAAU,EAAE,CAAC;QACjB,CAAC,CAAC;QACF,OAAOP,UAAU,CAACG,OAAO;MAC7B;IACJ;EACJ,CAAC;EAGD,OAAO;IAACD,cAAc,EAAdA;EAAc,CAAC;AAC3B,CAAC;AAAA,IAAAM,QAAA,GAAAC,OAAA,cAEcb,aAAa","ignoreList":[]}
1
+ {"version":3,"file":"useTileSetCut.js","names":["_react","require","_Cut","_interopRequireDefault","e","__esModule","useTileSetCut","props","viewer","sceneId","cutToolRef","useRef","loadTileSetCut","current","layer","getLayerByKey","Cut","flatHeight","_default","exports"],"sources":["excavation-analysis/hooks/useTileSetCut.js"],"sourcesContent":["import {useRef} from 'react';\nimport Cut from \"../Cut\";\n\nconst useTileSetCut = (props) => {\n const {viewer, sceneId} = props;\n\n const cutToolRef = useRef();\n\n const loadTileSetCut = () => {\n if (cutToolRef.current) {\n return cutToolRef.current;\n }\n\n if (sceneId) {\n let layer = viewer.getLayerByKey(sceneId);\n if (layer) {\n cutToolRef.current = new Cut(layer, {\n flatHeight: -30\n });\n return cutToolRef.current;\n }\n }\n }\n\n\n return {loadTileSetCut}\n}\n\nexport default useTileSetCut;\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,IAAA,GAAAC,sBAAA,CAAAF,OAAA;AAAyB,SAAAE,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,gBAAAA,CAAA;AAEzB,IAAME,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,KAAK,EAAK;EAC7B,IAAOC,MAAM,GAAaD,KAAK,CAAxBC,MAAM;IAAEC,OAAO,GAAIF,KAAK,CAAhBE,OAAO;EAEtB,IAAMC,UAAU,GAAG,IAAAC,aAAM,EAAC,CAAC;EAE3B,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,CAAA,EAAS;IACzB,IAAIF,UAAU,CAACG,OAAO,EAAE;MACpB,OAAOH,UAAU,CAACG,OAAO;IAC7B;IAEA,IAAIJ,OAAO,EAAE;MACT,IAAIK,KAAK,GAAGN,MAAM,CAACO,aAAa,CAACN,OAAO,CAAC;MACzC,IAAIK,KAAK,EAAE;QACPJ,UAAU,CAACG,OAAO,GAAG,IAAIG,eAAG,CAACF,KAAK,EAAE;UAChCG,UAAU,EAAE,CAAC;QACjB,CAAC,CAAC;QACF,OAAOP,UAAU,CAACG,OAAO;MAC7B;IACJ;EACJ,CAAC;EAGD,OAAO;IAACD,cAAc,EAAdA;EAAc,CAAC;AAC3B,CAAC;AAAA,IAAAM,QAAA,GAAAC,OAAA,cAEcb,aAAa","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_useDrawHandler","_interopRequireDefault","_useTerrainClipPlan","_excavate_bottom_min","_excavate_kuangqu","_useProps2","_useTileSetCut","_cesium","e","__esModule","_getRequireWildcardCache","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ExcavationAnalysis","forwardRef","props","ref","_useProps","useProps","map","excavateDepth","useRef","terrainClipPlan","useTerrainClipPlan","viewer","drawHandler","useDrawHandler","type","tileSetCut","useTileSetCut","sceneId","on","res","clear","positions","item","x","y","z","pop","start","height","current","splitNum","wallImg","excavate_kuangqu","bottomImg","excavate_bottom_min","cartesiansToLnglats","cartesians","length","arr","push","cartesianToLnglat","cartesian","lnglat","Cartographic","fromCartesian","lat","CesiumMath","toDegrees","latitude","lng","longitude","hei","useImperativeHandle","onDraw","onClear","onChange","activate","value","updateExcavateDepth","createElement","Fragment","_default","exports"],"sources":["excavation-analysis/index.js"],"sourcesContent":["import React, { useRef, useImperativeHandle, forwardRef } from 'react'\r\nimport useDrawHandler from './hooks/useDrawHandler'\r\nimport useTerrainClipPlan from './hooks/useTerrainClipPlan'\r\nimport excavate_bottom_min from '../assets/excavate_bottom_min.png';\r\nimport excavate_kuangqu from '../assets/excavate_kuangqu.png';\r\nimport useProps from '../use-props';\r\nimport useTileSetCut from \"./hooks/useTileSetCut\";\r\nimport {Cartographic, Math as CesiumMath} from \"cesium\";\r\n\r\nconst ExcavationAnalysis = forwardRef((props, ref) => {\r\n const {map} = useProps();\r\n\r\n const excavateDepth = useRef(30);\r\n const terrainClipPlan = useTerrainClipPlan({\r\n viewer: map\r\n })\r\n const drawHandler = useDrawHandler({\r\n viewer: map,\r\n type: 'polygon'\r\n })\r\n\r\n const tileSetCut = useTileSetCut({\r\n viewer: map,\r\n sceneId: props.sceneId,\r\n })\r\n\r\n drawHandler.on('drawEnd', (res) => {\r\n // 再次绘制清除之前开挖分析\r\n terrainClipPlan.clear()\r\n\r\n const positions = res.map((item) => {\r\n return {\r\n x: item.x,\r\n y: item.y,\r\n z: item.z\r\n }\r\n })\r\n positions.pop()\r\n // 开挖分析\r\n terrainClipPlan.start({\r\n height: excavateDepth.current,\r\n splitNum: 100,\r\n wallImg: excavate_kuangqu,\r\n bottomImg: excavate_bottom_min,\r\n positions\r\n })\r\n // 移除绘制区域\r\n drawHandler.clear();\r\n\r\n // let cutTool = tileSetCut.loadTileSetCut();\r\n // if (cutTool) {\r\n // cutTool.addRegion({\r\n // positions : cartesiansToLnglats(res),\r\n // id : new Date().getTime()\r\n // })\r\n // }\r\n })\r\n\r\n const cartesiansToLnglats = (cartesians) => {\r\n if (!cartesians || cartesians.length < 1) return;\r\n let arr = [];\r\n for (let i = 0; i < cartesians.length; i++) {\r\n arr.push(cartesianToLnglat(cartesians[i]));\r\n }\r\n return arr;\r\n }\r\n\r\n const cartesianToLnglat = (cartesian) => {\r\n if (!cartesian) return [];\r\n const lnglat = Cartographic.fromCartesian(cartesian);\r\n const lat = CesiumMath.toDegrees(lnglat.latitude);\r\n const lng = CesiumMath.toDegrees(lnglat.longitude);\r\n const hei = lnglat.height;\r\n return [lng, lat, hei];\r\n }\r\n\r\n useImperativeHandle(ref, () => ({\r\n drawHandler,\r\n terrainClipPlan,\r\n onDraw,\r\n onClear,\r\n onChange,\r\n }))\r\n\r\n const onDraw = () => {\r\n drawHandler.activate()\r\n }\r\n\r\n const onClear = () => {\r\n terrainClipPlan.clear()\r\n }\r\n\r\n const onChange = (value) => {\r\n excavateDepth.current = value\r\n terrainClipPlan.updateExcavateDepth(value)\r\n }\r\n\r\n return <></>\r\n}\r\n)\r\nexport default ExcavationAnalysis;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_useDrawHandler","_interopRequireDefault","_useTerrainClipPlan","_excavate_bottom_min","_excavate_kuangqu","_useProps2","_useTileSetCut","_cesium","e","__esModule","_getRequireWildcardCache","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ExcavationAnalysis","forwardRef","props","ref","_useProps","useProps","map","excavateDepth","useRef","terrainClipPlan","useTerrainClipPlan","viewer","drawHandler","useDrawHandler","type","tileSetCut","useTileSetCut","sceneId","on","res","clear","positions","item","x","y","z","pop","start","height","current","splitNum","wallImg","excavate_kuangqu","bottomImg","excavate_bottom_min","cartesiansToLnglats","cartesians","length","arr","push","cartesianToLnglat","cartesian","lnglat","Cartographic","fromCartesian","lat","CesiumMath","toDegrees","latitude","lng","longitude","hei","useImperativeHandle","onDraw","onClear","onChange","activate","value","updateExcavateDepth","createElement","Fragment","_default","exports"],"sources":["excavation-analysis/index.js"],"sourcesContent":["import React, { useRef, useImperativeHandle, forwardRef } from 'react'\nimport useDrawHandler from './hooks/useDrawHandler'\nimport useTerrainClipPlan from './hooks/useTerrainClipPlan'\nimport excavate_bottom_min from '../assets/excavate_bottom_min.png';\nimport excavate_kuangqu from '../assets/excavate_kuangqu.png';\nimport useProps from '../use-props';\nimport useTileSetCut from \"./hooks/useTileSetCut\";\nimport {Cartographic, Math as CesiumMath} from \"cesium\";\n\nconst ExcavationAnalysis = forwardRef((props, ref) => {\n const {map} = useProps();\n\n const excavateDepth = useRef(30);\n const terrainClipPlan = useTerrainClipPlan({\n viewer: map\n })\n const drawHandler = useDrawHandler({\n viewer: map,\n type: 'polygon'\n })\n\n const tileSetCut = useTileSetCut({\n viewer: map,\n sceneId: props.sceneId,\n })\n\n drawHandler.on('drawEnd', (res) => {\n // 再次绘制清除之前开挖分析\n terrainClipPlan.clear()\n\n const positions = res.map((item) => {\n return {\n x: item.x,\n y: item.y,\n z: item.z\n }\n })\n positions.pop()\n // 开挖分析\n terrainClipPlan.start({\n height: excavateDepth.current,\n splitNum: 100,\n wallImg: excavate_kuangqu,\n bottomImg: excavate_bottom_min,\n positions\n })\n // 移除绘制区域\n drawHandler.clear();\n\n // let cutTool = tileSetCut.loadTileSetCut();\n // if (cutTool) {\n // cutTool.addRegion({\n // positions : cartesiansToLnglats(res),\n // id : new Date().getTime()\n // })\n // }\n })\n\n const cartesiansToLnglats = (cartesians) => {\n if (!cartesians || cartesians.length < 1) return;\n let arr = [];\n for (let i = 0; i < cartesians.length; i++) {\n arr.push(cartesianToLnglat(cartesians[i]));\n }\n return arr;\n }\n\n const cartesianToLnglat = (cartesian) => {\n if (!cartesian) return [];\n const lnglat = Cartographic.fromCartesian(cartesian);\n const lat = CesiumMath.toDegrees(lnglat.latitude);\n const lng = CesiumMath.toDegrees(lnglat.longitude);\n const hei = lnglat.height;\n return [lng, lat, hei];\n }\n\n useImperativeHandle(ref, () => ({\n drawHandler,\n terrainClipPlan,\n onDraw,\n onClear,\n onChange,\n }))\n\n const onDraw = () => {\n drawHandler.activate()\n }\n\n const onClear = () => {\n terrainClipPlan.clear()\n }\n\n const onChange = (value) => {\n excavateDepth.current = value\n terrainClipPlan.updateExcavateDepth(value)\n }\n\n return <></>\n}\n)\nexport default ExcavationAnalysis;\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"css.js","names":["require"],"sources":["excavation-analysis/style/index.js"],"sourcesContent":["import './index.less';\r\n"],"mappings":";;AAAAA,OAAA","ignoreList":[]}
1
+ {"version":3,"file":"css.js","names":["require"],"sources":["excavation-analysis/style/index.js"],"sourcesContent":["import './index.less';\n"],"mappings":";;AAAAA,OAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["require"],"sources":["excavation-analysis/style/index.js"],"sourcesContent":["import './index.less';\r\n"],"mappings":";;AAAAA,OAAA","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["require"],"sources":["excavation-analysis/style/index.js"],"sourcesContent":["import './index.less';\n"],"mappings":";;AAAAA,OAAA","ignoreList":[]}
@@ -29,11 +29,9 @@ function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstruct
29
29
  function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); }
30
30
  function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; }
31
31
  function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
32
- function _superPropGet(t, e, r, o) { var p = _get(_getPrototypeOf(1 & o ? t.prototype : t), e, r); return 2 & o ? function (t) { return p.apply(r, t); } : p; }
33
32
  function _get() { return _get = "undefined" != typeof Reflect && Reflect.get ? Reflect.get.bind() : function (e, t, r) { var p = _superPropBase(e, t); if (p) { var n = Object.getOwnPropertyDescriptor(p, t); return n.get ? n.get.call(arguments.length < 3 ? e : r) : n.value; } }, _get.apply(null, arguments); }
34
33
  function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); }
35
34
  function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
36
- function _superPropSet(t, e, o, r, p, f) { return _set(_getPrototypeOf(f ? t.prototype : t), e, o, r, p); }
37
35
  function set(e, r, t, o) { return set = "undefined" != typeof Reflect && Reflect.set ? Reflect.set : function (e, r, t, o) { var f, i = _superPropBase(e, r); if (i) { if ((f = Object.getOwnPropertyDescriptor(i, r)).set) return f.set.call(o, t), !0; if (!f.writable) return !1; } if (f = Object.getOwnPropertyDescriptor(o, r)) { if (!f.writable) return !1; f.value = t, Object.defineProperty(o, r, f); } else _defineProperty(o, r, t); return !0; }, set(e, r, t, o); }
38
36
  function _set(e, r, t, o, f) { if (!set(e, r, t, o || e) && f) throw new TypeError("failed to set property"); return t; }
39
37
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
@@ -110,7 +108,7 @@ var FeatureLayer = /*#__PURE__*/function (_CustomDataSource) {
110
108
  }
111
109
  }
112
110
  _this2 = _callSuper(this, FeatureLayer, [options]);
113
- _superPropSet((_this2, FeatureLayer), "show", show, _this2, 1, 1);
111
+ _set((_this2, _getPrototypeOf(FeatureLayer.prototype)), "show", show, _this2, true);
114
112
 
115
113
  // 接口地址
116
114
  _this2.url = url;
@@ -196,7 +194,7 @@ var FeatureLayer = /*#__PURE__*/function (_CustomDataSource) {
196
194
  return _createClass(FeatureLayer, [{
197
195
  key: "show",
198
196
  get: function get() {
199
- return _superPropGet(FeatureLayer, "show", this, 1);
197
+ return _get(_getPrototypeOf(FeatureLayer.prototype), "show", this);
200
198
  },
201
199
  set: function set(value) {
202
200
  this.setVisible(value);
@@ -255,7 +253,7 @@ var FeatureLayer = /*#__PURE__*/function (_CustomDataSource) {
255
253
  }, {
256
254
  key: "setVisible",
257
255
  value: function setVisible(visible) {
258
- _superPropSet(FeatureLayer, "show", visible, this, 1, 1); // 将属性传递给父类
256
+ _set(_getPrototypeOf(FeatureLayer.prototype), "show", visible, this, true); // 将属性传递给父类
259
257
 
260
258
  var map = this.getMap && this.getMap();
261
259
  if (map) {
@@ -1 +1 @@
1
- {"version":3,"file":"FeatureLayer.js","names":["_cesium","require","_createFeatureCollection","_Label","_interopRequireDefault","_Marker","_Polyline","_Polygon","_renderer","_isObject","_isFunction","_layer","_encryptParams","_excluded","e","__esModule","_objectWithoutProperties","t","o","r","i","_objectWithoutPropertiesLoose","Object","getOwnPropertySymbols","s","length","includes","propertyIsEnumerable","call","n","hasOwnProperty","ownKeys","keys","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_classCallCheck","a","TypeError","_defineProperties","configurable","writable","_toPropertyKey","key","_createClass","prototype","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","constructor","_typeof","_assertThisInitialized","ReferenceError","Boolean","valueOf","_superPropGet","p","_get","get","bind","_superPropBase","value","_inherits","create","_setPrototypeOf","setPrototypeOf","__proto__","_superPropSet","f","_set","set","_toPrimitive","Symbol","toPrimitive","String","Number","getPrototypeOf","P","Label","Point","Marker","Polyline","Polygon","LineString","MultiLineString","createFeature","v","_v$geometry","geometry","type","coordinates","properties","FeatureLayer","_CustomDataSource","opt_options","_this2","options","url","params","data","name","labelField","template","autoRefresh","method","renderMode","style","markerStyle","_options$show","show","_options$layerControl","layerControl","afterGetData","viewOnly","legend","group","map","cluster","zIndex","cancelPopup","encrypt","tipTemplate","defaultShow","_f$show","inited","init","setVisible","loadUrlData","loadData","getMap","getFeatureByFieldValue","field","getFeatures","find","_v$properties","_value","entities","values","getFeaturesBySearch","getVectorFeatureInfoByText","visible","layers","emit","setGroup","features","feature","getProperties","setVisibleByGroup","setRenderMode","hideClustering","setStyle","showClustering","refresh","encryptParams","getDataByHttp","then","res","_res$features","removeAll","geoJsonData","createFeatureCollection","Array","isArray","render","_this3","undefined","_res$features2","loadFeatures","addFeatures","_this4","entity","setRenderer","size","isObject","_this4$group","_style","isFunction","_style$style","image","imageType","imageKey","setGifImage","modalType","add","_this$cluster","_this$cluster2","_this5","customStyle","clustering","pixelRange","minimumClusterSize","enabled","setTimeout","_this5$cluster","heightListerHeight","defined","removeListenerHeight","viewer","_this","scene","postRender","addEventListener","currentCameraHeight","camera","positionCartographic","height","fitViewHeight","removeListener","clusterEvent","clusteredEntities","label","billboard","id","verticalOrigin","VerticalOrigin","BOTTOM","heightReference","HeightReference","CLAMP_TO_GROUND","horizontalOrigin","HorizontalOrigin","CENTER","text","scale","icon","otherStyle","getImgUrl","canvasIcon","color","hideFooter","info","fontSize","fitViewByFilter","JSON","parse","stringify","fitView","geoJson","padding","CustomDataSource","_default","exports"],"sources":["feature-layer/FeatureLayer.js"],"sourcesContent":["import {\n CustomDataSource,\n defined,\n VerticalOrigin,\n HeightReference,\n HorizontalOrigin,\n} from 'cesium';\nimport { createFeatureCollection, getDataByHttp } from './createFeatureCollection';\nimport Label from '../label/Label';\nimport Marker from '../marker/Marker';\nimport Polyline from '../polyline/Polyline';\nimport Polygon from '../polygon/Polygon';\nimport { setRenderer, getImgUrl } from '../renderer';\nimport isObject from '../_util/isObject';\nimport isFunction from '../_util/isFunction';\nimport { getVectorFeatureInfoByText } from '../_util/layer';\nimport encryptParams from '../_util/encryptParams';\n\nconst P = {\n Label: Label,\n Point: Marker,\n Marker: Marker,\n Polyline: Polyline,\n Polygon: Polygon,\n LineString: Polyline,\n MultiLineString: Polyline,\n};\n\nconst createFeature = v => {\n let { type, coordinates } = v.geometry;\n if (P[type]) {\n return new P[type]({ geometry: coordinates, properties: v });\n }\n};\n\nclass FeatureLayer extends CustomDataSource {\n constructor(opt_options) {\n const options = opt_options || {};\n const {\n url,\n params,\n data,\n key,\n name,\n labelField,\n template,\n autoRefresh,\n method,\n renderMode,\n style,\n markerStyle,\n show = true,\n layerControl = true,\n afterGetData,\n viewOnly,\n legend,\n group,\n map,\n cluster,\n zIndex,\n cancelPopup,\n encrypt,\n tipTemplate,\n } = options;\n\n let defaultShow = show;\n if (group?.length) {\n defaultShow = false;\n\n if (!show) {\n group.map(f => {\n f.show = false;\n });\n } else {\n group.map(f => {\n f.show = f.show ?? true;\n\n if (f.show) {\n defaultShow = true;\n }\n });\n }\n }\n\n super(options);\n\n super.show = show;\n\n // 接口地址\n this.url = url;\n\n // 接口地址请求类型\n this.method = method;\n\n // 接口查询参数\n this.params = params;\n\n // 图层标识\n this.key = key;\n\n // 图层名称\n this.name = name;\n\n // 渲染\n this.style = style;\n\n //marker样式\n this.markerStyle = markerStyle;\n\n // 标签字段\n this.labelField = labelField;\n\n // 自动刷新标识\n this.autoRefresh = autoRefresh;\n\n // 模版内容\n this.template = template;\n\n // 渲染模式\n this.renderMode = renderMode || 'marker';\n\n // 图例\n this.legend = legend;\n\n // 过滤\n this.group = group;\n\n // 地图\n this.map = map;\n\n // 图层控制\n this.layerControl = layerControl;\n\n // 聚合\n this.cluster = cluster;\n\n // 层级\n this.zIndex = zIndex;\n\n // 数据\n this.data = data;\n\n // 处理获取的数据\n this.afterGetData = afterGetData;\n\n // 是否初始化\n this.inited = false;\n\n // 取消气泡\n this.cancelPopup = cancelPopup;\n\n // 加密\n this.encrypt = encrypt;\n\n // 气泡模板\n this.tipTemplate = tipTemplate;\n\n // 仅展示\n this.viewOnly = viewOnly;\n\n // 默认是否展示\n if (defaultShow) {\n this.init();\n }\n }\n\n // 重写父类的属性访问器\n get show() {\n return super.show;\n }\n\n set show(value) {\n this.setVisible(value);\n }\n\n // 初始化数据\n init() {\n // 是否存在地址\n if (this.url) {\n // 执行\n this.loadUrlData(this.url, this.params, this.method);\n }\n\n // 直接加载数据\n if (this.data) {\n // 执行\n this.loadData(this.data);\n }\n\n this.inited = true;\n }\n\n // 获取地图\n getMap() {\n return this.map;\n }\n\n // 根据条件获取图形数据\n getFeatureByFieldValue(field, value) {\n return this.getFeatures().find(\n v => String(v?.properties?.[field]?._value) === String(value),\n );\n }\n\n // 获取当前图层的所有图形\n getFeatures() {\n return this.entities.values;\n }\n\n // 根据条件获取图形数据,用于地图搜索\n getFeaturesBySearch(field, value) {\n return getVectorFeatureInfoByText(this, field, value);\n }\n\n // 设置图层显示隐藏\n setVisible(visible) {\n super.show = visible; // 将属性传递给父类\n\n const map = this.getMap && this.getMap();\n if (map) {\n map.layers.emit('visible', this, visible);\n }\n\n // 判断是否完成过初始化,没有的话就加载一波数据\n if (!this.inited) {\n this.init();\n }\n }\n\n // 设置过滤条件\n setGroup(group) {\n const map = this.getMap && this.getMap();\n\n if (group?.length) {\n const features = this.getFeatures();\n if (features?.length) {\n features.map(feature => {\n let show = false;\n group.map(v => {\n if (!v.hasOwnProperty('show') || v.show) {\n let properties = map.getProperties(feature);\n if (v.filter(properties)) {\n show = true;\n }\n }\n });\n\n feature.show = show;\n });\n }\n\n this.group = group;\n\n this.setVisibleByGroup();\n }\n }\n\n // 根据过滤条件组显示图层\n setVisibleByGroup() {\n const group = this.group;\n if (group?.length) {\n let visible = false;\n\n group.map(v => {\n if (!v.hasOwnProperty('show') || v.show) {\n visible = true;\n }\n });\n\n this.setVisible(visible);\n }\n }\n\n // 设置渲染模式\n setRenderMode(renderMode) {\n this.hideClustering();\n\n // 展示聚合时设置样式为 marker 并且开启聚合监听\n if (renderMode === 'clustering') {\n this.renderMode = 'marker';\n this.setStyle();\n this.showClustering();\n } else {\n this.renderMode = renderMode;\n this.setStyle();\n }\n }\n\n // 自动刷新\n refresh() {\n let params = this.params;\n if (this.encrypt) {\n params = encryptParams(params, this.encrypt);\n }\n getDataByHttp(this.url, params, this.method).then(res => {\n if (res?.features?.length) {\n }\n });\n }\n\n // 加载数据\n loadData(data) {\n this.entities.removeAll();\n let geoJsonData = createFeatureCollection(Array.isArray(data) ? data : [data]);\n this.render(geoJsonData);\n }\n\n // 加载接口数据\n loadUrlData(url, params, method, afterGetData = this.afterGetData) {\n this.entities.removeAll();\n if (this.encrypt) {\n params = encryptParams(params, this.encrypt);\n }\n getDataByHttp(url, params, method, afterGetData).then(res => {\n if (res?.features?.length) {\n this.render(res);\n }\n });\n }\n\n // 加载图形数据\n loadFeatures(features) {\n this.entities.removeAll();\n this.entities.addFeatures(features);\n }\n\n // 渲染\n render(geoJsonData) {\n this.geoJsonData = geoJsonData;\n if (geoJsonData) {\n if (this.renderMode === 'marker') {\n this.setStyle();\n } else {\n this.setRenderMode(this.renderMode);\n }\n }\n }\n\n // 设置样式\n setStyle() {\n if (this.renderMode === 'point') {\n this.entities.values.map(entity => {\n setRenderer(entity, {\n type: 'Marker',\n style: {\n type: 'PointIcon',\n size: 15,\n ...(isObject(this.markerStyle) ? this.markerStyle : {}),\n },\n });\n });\n } else if (this.renderMode === 'marker') {\n this.entities.removeAll();\n let { features } = this.geoJsonData;\n const group = this.group;\n features.map(v => {\n let entity = createFeature(v);\n if (entity) {\n let show = true;\n let style = this.style;\n\n // 针对过滤时的处理\n if (this.group?.length) {\n show = false;\n group.map(f => {\n if (f.filter(v.properties)) {\n style = f.style;\n\n if (!f.hasOwnProperty('show') || f.show) {\n show = true;\n }\n }\n });\n }\n setRenderer(entity, style);\n\n if (style) {\n let _style = style;\n if (isFunction(style)) {\n _style = isFunction(style);\n }\n\n if (_style.type === 'Marker' && _style.style) {\n let { image, imageType, imageKey } = _style.style;\n if (image && imageType) {\n if (imageType === 'gif') {\n entity.setGifImage(image, imageKey);\n }\n }\n }\n }\n\n entity.show = show;\n entity.type = this.modalType || this.key;\n entity.key = this.key;\n entity.properties = v.properties || {};\n\n this.entities.add(entity);\n }\n });\n }\n }\n\n // 展示聚合\n showClustering() {\n // 是否聚合\n this.customStyle();\n\n // 聚合点的判定范围(像素单位)\n this.clustering.pixelRange = this.cluster?.pixelRange || 100;\n\n // 最小簇大小\n this.clustering.minimumClusterSize = this.cluster?.minimumClusterSize || 2;\n\n // 默认关闭,延时开启,避免一开始不生效\n this.clustering.enabled = false;\n setTimeout(() => {\n // 解决一开始不聚合的问题\n this.clustering.pixelRange = 0;\n this.clustering.pixelRange = this.cluster?.pixelRange || 100;\n this.clustering.enabled = true;\n }, 50);\n\n // 高度监听\n this.heightListerHeight();\n }\n\n heightListerHeight() {\n if (defined(this.removeListenerHeight) && this.removeListenerHeight) {\n this.removeListenerHeight();\n this.removeListenerHeight = undefined;\n }\n\n const viewer = this.map;\n const _this = this;\n // 监听scene的postRender事件\n this.removeListenerHeight = viewer.scene.postRender.addEventListener(function() {\n // 获取当前的相机高度\n const currentCameraHeight = viewer.camera.positionCartographic.height;\n\n _this.clustering.enabled = true;\n if (_this.cluster && _this.cluster.height) {\n const { height } = _this.cluster;\n if (currentCameraHeight <= height) {\n _this.clustering.enabled = false;\n }\n } else if (currentCameraHeight <= (viewer.fitViewHeight || 5000) + 1000) {\n // 当高度小于阈值时禁用聚合\n _this.clustering.enabled = false;\n }\n });\n }\n\n // 隐藏聚合\n hideClustering() {\n this.clustering.enabled = false;\n if (defined(this.removeListener) && this.removeListener) {\n this.removeListener();\n this.removeListener = undefined;\n }\n\n if (defined(this.removeListenerHeight) && this.removeListenerHeight) {\n this.removeListenerHeight();\n this.removeListenerHeight = undefined;\n }\n }\n\n // 自定义样式\n customStyle() {\n let _this = this;\n if (defined(this.removeListener) && this.removeListener) {\n this.removeListener();\n this.removeListener = undefined;\n }\n\n this.removeListener = this.clustering.clusterEvent.addEventListener(\n (clusteredEntities, cluster) => {\n cluster.label.show = false;\n cluster.billboard.show = true;\n cluster.billboard.id = cluster.label.id;\n cluster.billboard.verticalOrigin = VerticalOrigin.BOTTOM;\n cluster.billboard.heightReference = HeightReference.CLAMP_TO_GROUND;\n cluster.billboard.horizontalOrigin = HorizontalOrigin.CENTER;\n\n let text = clusteredEntities.length;\n\n if (_this.cluster) {\n const { style } = _this.cluster;\n\n let image,\n scale = 1;\n\n if (isFunction(style)) {\n image = style(clusteredEntities);\n } else if (isObject(style)) {\n const { icon, type, ...otherStyle } = style;\n image = getImgUrl(type || 'CommonIcon2', {\n canvasIcon: icon,\n color: 'rgb(0,128,255)',\n hideFooter: true,\n info: [{ text, fontSize: 24 }],\n ...otherStyle,\n });\n scale = style?.scale;\n } else if (typeof style === 'string') {\n image = getImgUrl('CommonIcon2', {\n canvasIcon: style,\n color: 'rgb(0,128,255)',\n hideFooter: true,\n info: [{ text, fontSize: 24 }],\n });\n }\n cluster.billboard.image = image;\n cluster.billboard.scale = scale || 1;\n } else if (isObject(_this.style) || typeof _this.style === 'string') {\n let icon = _this.style,\n type = 'CommonIcon2';\n\n if (isObject(_this.style) && _this.style.type === 'Marker') {\n icon = _this.style.style.icon || icon;\n type = _this.style.style.type || type;\n }\n\n let color = 'rgb(9,220,107)';\n if (clusteredEntities.length >= 50) {\n text = '50+';\n color = 'rgb(220,33,9)';\n } else if (clusteredEntities.length >= 40) {\n text = '40+';\n color = 'rgb(232,119,5)';\n } else if (clusteredEntities.length >= 30) {\n text = '30+';\n color = 'rgb(232,194,4)';\n } else if (clusteredEntities.length >= 20) {\n text = '20+';\n color = 'rgba(20, 232, 4, 1)';\n } else if (clusteredEntities.length >= 10) {\n text = '10+';\n color = 'rgb(0,128,255)';\n }\n cluster.billboard.image = getImgUrl(type, {\n canvasIcon: icon,\n color,\n hideFooter: true,\n info: [{ text, fontSize: 24 }],\n });\n }\n },\n );\n }\n\n // 根据条件展示对应的视角\n fitViewByFilter(filter) {\n let { features } = this.geoJsonData;\n if (features?.length) {\n let geoJsonData = JSON.parse(JSON.stringify(this.geoJsonData));\n if (filter) {\n geoJsonData.features = features.filter(v => filter(v.properties));\n }\n this.map.fitView({ geoJson: geoJsonData, options: { padding: [1000, 1000] } });\n }\n }\n}\n\nexport default FeatureLayer;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"FeatureLayer.js","names":["_cesium","require","_createFeatureCollection","_Label","_interopRequireDefault","_Marker","_Polyline","_Polygon","_renderer","_isObject","_isFunction","_layer","_encryptParams","_excluded","e","__esModule","_objectWithoutProperties","t","o","r","i","_objectWithoutPropertiesLoose","Object","getOwnPropertySymbols","s","length","includes","propertyIsEnumerable","call","n","hasOwnProperty","ownKeys","keys","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_classCallCheck","a","TypeError","_defineProperties","configurable","writable","_toPropertyKey","key","_createClass","prototype","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","constructor","_typeof","_assertThisInitialized","ReferenceError","Boolean","valueOf","_get","get","bind","p","_superPropBase","value","_inherits","create","_setPrototypeOf","setPrototypeOf","__proto__","set","f","_set","_toPrimitive","Symbol","toPrimitive","String","Number","getPrototypeOf","P","Label","Point","Marker","Polyline","Polygon","LineString","MultiLineString","createFeature","v","_v$geometry","geometry","type","coordinates","properties","FeatureLayer","_CustomDataSource","opt_options","_this2","options","url","params","data","name","labelField","template","autoRefresh","method","renderMode","style","markerStyle","_options$show","show","_options$layerControl","layerControl","afterGetData","viewOnly","legend","group","map","cluster","zIndex","cancelPopup","encrypt","tipTemplate","defaultShow","_f$show","inited","init","setVisible","loadUrlData","loadData","getMap","getFeatureByFieldValue","field","getFeatures","find","_v$properties","_value","entities","values","getFeaturesBySearch","getVectorFeatureInfoByText","visible","layers","emit","setGroup","features","feature","getProperties","setVisibleByGroup","setRenderMode","hideClustering","setStyle","showClustering","refresh","encryptParams","getDataByHttp","then","res","_res$features","removeAll","geoJsonData","createFeatureCollection","Array","isArray","render","_this3","undefined","_res$features2","loadFeatures","addFeatures","_this4","entity","setRenderer","size","isObject","_this4$group","_style","isFunction","_style$style","image","imageType","imageKey","setGifImage","modalType","add","_this$cluster","_this$cluster2","_this5","customStyle","clustering","pixelRange","minimumClusterSize","enabled","setTimeout","_this5$cluster","heightListerHeight","defined","removeListenerHeight","viewer","_this","scene","postRender","addEventListener","currentCameraHeight","camera","positionCartographic","height","fitViewHeight","removeListener","clusterEvent","clusteredEntities","label","billboard","id","verticalOrigin","VerticalOrigin","BOTTOM","heightReference","HeightReference","CLAMP_TO_GROUND","horizontalOrigin","HorizontalOrigin","CENTER","text","scale","icon","otherStyle","getImgUrl","canvasIcon","color","hideFooter","info","fontSize","fitViewByFilter","JSON","parse","stringify","fitView","geoJson","padding","CustomDataSource","_default","exports"],"sources":["feature-layer/FeatureLayer.js"],"sourcesContent":["import {\n CustomDataSource,\n defined,\n VerticalOrigin,\n HeightReference,\n HorizontalOrigin,\n} from 'cesium';\nimport { createFeatureCollection, getDataByHttp } from './createFeatureCollection';\nimport Label from '../label/Label';\nimport Marker from '../marker/Marker';\nimport Polyline from '../polyline/Polyline';\nimport Polygon from '../polygon/Polygon';\nimport { setRenderer, getImgUrl } from '../renderer';\nimport isObject from '../_util/isObject';\nimport isFunction from '../_util/isFunction';\nimport { getVectorFeatureInfoByText } from '../_util/layer';\nimport encryptParams from '../_util/encryptParams';\n\nconst P = {\n Label: Label,\n Point: Marker,\n Marker: Marker,\n Polyline: Polyline,\n Polygon: Polygon,\n LineString: Polyline,\n MultiLineString: Polyline,\n};\n\nconst createFeature = v => {\n let { type, coordinates } = v.geometry;\n if (P[type]) {\n return new P[type]({ geometry: coordinates, properties: v });\n }\n};\n\nclass FeatureLayer extends CustomDataSource {\n constructor(opt_options) {\n const options = opt_options || {};\n const {\n url,\n params,\n data,\n key,\n name,\n labelField,\n template,\n autoRefresh,\n method,\n renderMode,\n style,\n markerStyle,\n show = true,\n layerControl = true,\n afterGetData,\n viewOnly,\n legend,\n group,\n map,\n cluster,\n zIndex,\n cancelPopup,\n encrypt,\n tipTemplate,\n } = options;\n\n let defaultShow = show;\n if (group?.length) {\n defaultShow = false;\n\n if (!show) {\n group.map(f => {\n f.show = false;\n });\n } else {\n group.map(f => {\n f.show = f.show ?? true;\n\n if (f.show) {\n defaultShow = true;\n }\n });\n }\n }\n\n super(options);\n\n super.show = show;\n\n // 接口地址\n this.url = url;\n\n // 接口地址请求类型\n this.method = method;\n\n // 接口查询参数\n this.params = params;\n\n // 图层标识\n this.key = key;\n\n // 图层名称\n this.name = name;\n\n // 渲染\n this.style = style;\n\n //marker样式\n this.markerStyle = markerStyle;\n\n // 标签字段\n this.labelField = labelField;\n\n // 自动刷新标识\n this.autoRefresh = autoRefresh;\n\n // 模版内容\n this.template = template;\n\n // 渲染模式\n this.renderMode = renderMode || 'marker';\n\n // 图例\n this.legend = legend;\n\n // 过滤\n this.group = group;\n\n // 地图\n this.map = map;\n\n // 图层控制\n this.layerControl = layerControl;\n\n // 聚合\n this.cluster = cluster;\n\n // 层级\n this.zIndex = zIndex;\n\n // 数据\n this.data = data;\n\n // 处理获取的数据\n this.afterGetData = afterGetData;\n\n // 是否初始化\n this.inited = false;\n\n // 取消气泡\n this.cancelPopup = cancelPopup;\n\n // 加密\n this.encrypt = encrypt;\n\n // 气泡模板\n this.tipTemplate = tipTemplate;\n\n // 仅展示\n this.viewOnly = viewOnly;\n\n // 默认是否展示\n if (defaultShow) {\n this.init();\n }\n }\n\n // 重写父类的属性访问器\n get show() {\n return super.show;\n }\n\n set show(value) {\n this.setVisible(value);\n }\n\n // 初始化数据\n init() {\n // 是否存在地址\n if (this.url) {\n // 执行\n this.loadUrlData(this.url, this.params, this.method);\n }\n\n // 直接加载数据\n if (this.data) {\n // 执行\n this.loadData(this.data);\n }\n\n this.inited = true;\n }\n\n // 获取地图\n getMap() {\n return this.map;\n }\n\n // 根据条件获取图形数据\n getFeatureByFieldValue(field, value) {\n return this.getFeatures().find(\n v => String(v?.properties?.[field]?._value) === String(value),\n );\n }\n\n // 获取当前图层的所有图形\n getFeatures() {\n return this.entities.values;\n }\n\n // 根据条件获取图形数据,用于地图搜索\n getFeaturesBySearch(field, value) {\n return getVectorFeatureInfoByText(this, field, value);\n }\n\n // 设置图层显示隐藏\n setVisible(visible) {\n super.show = visible; // 将属性传递给父类\n\n const map = this.getMap && this.getMap();\n if (map) {\n map.layers.emit('visible', this, visible);\n }\n\n // 判断是否完成过初始化,没有的话就加载一波数据\n if (!this.inited) {\n this.init();\n }\n }\n\n // 设置过滤条件\n setGroup(group) {\n const map = this.getMap && this.getMap();\n\n if (group?.length) {\n const features = this.getFeatures();\n if (features?.length) {\n features.map(feature => {\n let show = false;\n group.map(v => {\n if (!v.hasOwnProperty('show') || v.show) {\n let properties = map.getProperties(feature);\n if (v.filter(properties)) {\n show = true;\n }\n }\n });\n\n feature.show = show;\n });\n }\n\n this.group = group;\n\n this.setVisibleByGroup();\n }\n }\n\n // 根据过滤条件组显示图层\n setVisibleByGroup() {\n const group = this.group;\n if (group?.length) {\n let visible = false;\n\n group.map(v => {\n if (!v.hasOwnProperty('show') || v.show) {\n visible = true;\n }\n });\n\n this.setVisible(visible);\n }\n }\n\n // 设置渲染模式\n setRenderMode(renderMode) {\n this.hideClustering();\n\n // 展示聚合时设置样式为 marker 并且开启聚合监听\n if (renderMode === 'clustering') {\n this.renderMode = 'marker';\n this.setStyle();\n this.showClustering();\n } else {\n this.renderMode = renderMode;\n this.setStyle();\n }\n }\n\n // 自动刷新\n refresh() {\n let params = this.params;\n if (this.encrypt) {\n params = encryptParams(params, this.encrypt);\n }\n getDataByHttp(this.url, params, this.method).then(res => {\n if (res?.features?.length) {\n }\n });\n }\n\n // 加载数据\n loadData(data) {\n this.entities.removeAll();\n let geoJsonData = createFeatureCollection(Array.isArray(data) ? data : [data]);\n this.render(geoJsonData);\n }\n\n // 加载接口数据\n loadUrlData(url, params, method, afterGetData = this.afterGetData) {\n this.entities.removeAll();\n if (this.encrypt) {\n params = encryptParams(params, this.encrypt);\n }\n getDataByHttp(url, params, method, afterGetData).then(res => {\n if (res?.features?.length) {\n this.render(res);\n }\n });\n }\n\n // 加载图形数据\n loadFeatures(features) {\n this.entities.removeAll();\n this.entities.addFeatures(features);\n }\n\n // 渲染\n render(geoJsonData) {\n this.geoJsonData = geoJsonData;\n if (geoJsonData) {\n if (this.renderMode === 'marker') {\n this.setStyle();\n } else {\n this.setRenderMode(this.renderMode);\n }\n }\n }\n\n // 设置样式\n setStyle() {\n if (this.renderMode === 'point') {\n this.entities.values.map(entity => {\n setRenderer(entity, {\n type: 'Marker',\n style: {\n type: 'PointIcon',\n size: 15,\n ...(isObject(this.markerStyle) ? this.markerStyle : {}),\n },\n });\n });\n } else if (this.renderMode === 'marker') {\n this.entities.removeAll();\n let { features } = this.geoJsonData;\n const group = this.group;\n features.map(v => {\n let entity = createFeature(v);\n if (entity) {\n let show = true;\n let style = this.style;\n\n // 针对过滤时的处理\n if (this.group?.length) {\n show = false;\n group.map(f => {\n if (f.filter(v.properties)) {\n style = f.style;\n\n if (!f.hasOwnProperty('show') || f.show) {\n show = true;\n }\n }\n });\n }\n setRenderer(entity, style);\n\n if (style) {\n let _style = style;\n if (isFunction(style)) {\n _style = isFunction(style);\n }\n\n if (_style.type === 'Marker' && _style.style) {\n let { image, imageType, imageKey } = _style.style;\n if (image && imageType) {\n if (imageType === 'gif') {\n entity.setGifImage(image, imageKey);\n }\n }\n }\n }\n\n entity.show = show;\n entity.type = this.modalType || this.key;\n entity.key = this.key;\n entity.properties = v.properties || {};\n\n this.entities.add(entity);\n }\n });\n }\n }\n\n // 展示聚合\n showClustering() {\n // 是否聚合\n this.customStyle();\n\n // 聚合点的判定范围(像素单位)\n this.clustering.pixelRange = this.cluster?.pixelRange || 100;\n\n // 最小簇大小\n this.clustering.minimumClusterSize = this.cluster?.minimumClusterSize || 2;\n\n // 默认关闭,延时开启,避免一开始不生效\n this.clustering.enabled = false;\n setTimeout(() => {\n // 解决一开始不聚合的问题\n this.clustering.pixelRange = 0;\n this.clustering.pixelRange = this.cluster?.pixelRange || 100;\n this.clustering.enabled = true;\n }, 50);\n\n // 高度监听\n this.heightListerHeight();\n }\n\n heightListerHeight() {\n if (defined(this.removeListenerHeight) && this.removeListenerHeight) {\n this.removeListenerHeight();\n this.removeListenerHeight = undefined;\n }\n\n const viewer = this.map;\n const _this = this;\n // 监听scene的postRender事件\n this.removeListenerHeight = viewer.scene.postRender.addEventListener(function() {\n // 获取当前的相机高度\n const currentCameraHeight = viewer.camera.positionCartographic.height;\n\n _this.clustering.enabled = true;\n if (_this.cluster && _this.cluster.height) {\n const { height } = _this.cluster;\n if (currentCameraHeight <= height) {\n _this.clustering.enabled = false;\n }\n } else if (currentCameraHeight <= (viewer.fitViewHeight || 5000) + 1000) {\n // 当高度小于阈值时禁用聚合\n _this.clustering.enabled = false;\n }\n });\n }\n\n // 隐藏聚合\n hideClustering() {\n this.clustering.enabled = false;\n if (defined(this.removeListener) && this.removeListener) {\n this.removeListener();\n this.removeListener = undefined;\n }\n\n if (defined(this.removeListenerHeight) && this.removeListenerHeight) {\n this.removeListenerHeight();\n this.removeListenerHeight = undefined;\n }\n }\n\n // 自定义样式\n customStyle() {\n let _this = this;\n if (defined(this.removeListener) && this.removeListener) {\n this.removeListener();\n this.removeListener = undefined;\n }\n\n this.removeListener = this.clustering.clusterEvent.addEventListener(\n (clusteredEntities, cluster) => {\n cluster.label.show = false;\n cluster.billboard.show = true;\n cluster.billboard.id = cluster.label.id;\n cluster.billboard.verticalOrigin = VerticalOrigin.BOTTOM;\n cluster.billboard.heightReference = HeightReference.CLAMP_TO_GROUND;\n cluster.billboard.horizontalOrigin = HorizontalOrigin.CENTER;\n\n let text = clusteredEntities.length;\n\n if (_this.cluster) {\n const { style } = _this.cluster;\n\n let image,\n scale = 1;\n\n if (isFunction(style)) {\n image = style(clusteredEntities);\n } else if (isObject(style)) {\n const { icon, type, ...otherStyle } = style;\n image = getImgUrl(type || 'CommonIcon2', {\n canvasIcon: icon,\n color: 'rgb(0,128,255)',\n hideFooter: true,\n info: [{ text, fontSize: 24 }],\n ...otherStyle,\n });\n scale = style?.scale;\n } else if (typeof style === 'string') {\n image = getImgUrl('CommonIcon2', {\n canvasIcon: style,\n color: 'rgb(0,128,255)',\n hideFooter: true,\n info: [{ text, fontSize: 24 }],\n });\n }\n cluster.billboard.image = image;\n cluster.billboard.scale = scale || 1;\n } else if (isObject(_this.style) || typeof _this.style === 'string') {\n let icon = _this.style,\n type = 'CommonIcon2';\n\n if (isObject(_this.style) && _this.style.type === 'Marker') {\n icon = _this.style.style.icon || icon;\n type = _this.style.style.type || type;\n }\n\n let color = 'rgb(9,220,107)';\n if (clusteredEntities.length >= 50) {\n text = '50+';\n color = 'rgb(220,33,9)';\n } else if (clusteredEntities.length >= 40) {\n text = '40+';\n color = 'rgb(232,119,5)';\n } else if (clusteredEntities.length >= 30) {\n text = '30+';\n color = 'rgb(232,194,4)';\n } else if (clusteredEntities.length >= 20) {\n text = '20+';\n color = 'rgba(20, 232, 4, 1)';\n } else if (clusteredEntities.length >= 10) {\n text = '10+';\n color = 'rgb(0,128,255)';\n }\n cluster.billboard.image = getImgUrl(type, {\n canvasIcon: icon,\n color,\n hideFooter: true,\n info: [{ text, fontSize: 24 }],\n });\n }\n },\n );\n }\n\n // 根据条件展示对应的视角\n fitViewByFilter(filter) {\n let { features } = this.geoJsonData;\n if (features?.length) {\n let geoJsonData = JSON.parse(JSON.stringify(this.geoJsonData));\n if (filter) {\n geoJsonData.features = features.filter(v => filter(v.properties));\n }\n this.map.fitView({ geoJson: geoJsonData, options: { padding: [1000, 1000] } });\n }\n }\n}\n\nexport default FeatureLayer;\n"],"mappings":"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","ignoreList":[]}
@@ -59,23 +59,23 @@ var transformGeometryInfoToWGS84 = exports.transformGeometryInfoToWGS84 = functi
59
59
  return lngLatArr;
60
60
  };
61
61
  var transformGeometry = exports.transformGeometry = function transformGeometry(geometryInfo) {
62
- /**
63
- * geometry: {
64
- * "type": "Point | LineString | Polygon | MultiPoint | MultiLineString | MultiPolygon | GeometryCollection",
65
- * "coordinates": []
66
- * }
62
+ /**
63
+ * geometry: {
64
+ * "type": "Point | LineString | Polygon | MultiPoint | MultiLineString | MultiPolygon | GeometryCollection",
65
+ * "coordinates": []
66
+ * }
67
67
  */
68
68
 
69
69
  var type = geometryInfo.type,
70
70
  lngLats = geometryInfo.lngLats,
71
71
  coordType = geometryInfo.coordType;
72
72
 
73
- /**
74
- * geometryInfo: {
75
- * coordType: "wgs84"
76
- * lngLats: "119.02486914921874,25.63890915087647"
77
- * type: "point"
78
- * }
73
+ /**
74
+ * geometryInfo: {
75
+ * coordType: "wgs84"
76
+ * lngLats: "119.02486914921874,25.63890915087647"
77
+ * type: "point"
78
+ * }
79
79
  */
80
80
 
81
81
  var _type = type.replace(/^\S/, function (s) {
@@ -1 +1 @@
1
- {"version":3,"file":"createFeatureCollection.js","names":["_http","_interopRequireDefault","require","_mapTool","e","__esModule","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","_typeof","Symbol","toPrimitive","call","TypeError","String","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","l","iterator","n","u","a","f","next","done","Array","isArray","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","_arrayLikeToArray","toString","slice","constructor","name","from","test","transformLonLatToWGS84","exports","lonLat","coordType","_lonLat","map","v","gcj","mapTool","bd09togcj02","gcj02towgs84","transformGeometryInfoToWGS84","lngLats","type","lngLatArr","_l","split","includes","res","_res$split","_res$split2","lng","lat","transformGeometry","geometryInfo","_type","replace","s","toUpperCase","coordinates","createFeature","geometry","properties","createFeatureCollection","data","featureCollection","features","getDataByHttp","url","params","method","afterGetData","request","http","get","post","body","then","_res","indexOf"],"sources":["feature-layer/createFeatureCollection.js"],"sourcesContent":["import http from '../_util/http';\r\nimport mapTool from '../_util/mapTool';\r\n\r\nexport const transformLonLatToWGS84 = (lonLat, coordType) => {\r\n let _lonLat = [...lonLat].map(v => Number(v));\r\n if (coordType === 'bmap') {\r\n let gcj = mapTool.bd09togcj02(lonLat[0], lonLat[1]);\r\n _lonLat = mapTool.gcj02towgs84(gcj[0], gcj[1]);\r\n } else if (coordType === 'amap') {\r\n _lonLat = mapTool.gcj02towgs84(lonLat[0], lonLat[1]);\r\n }\r\n\r\n return _lonLat;\r\n};\r\n\r\nexport const transformGeometryInfoToWGS84 = (lngLats, type, coordType) => {\r\n let lngLatArr = [];\r\n if (lngLats) {\r\n if (type === 'point') {\r\n let _l = typeof lngLats === 'string' ? lngLats.split(',') : lngLats;\r\n lngLatArr = transformLonLatToWGS84(_l, coordType);\r\n } else if (['polygon', 'polyline'].includes(type)) {\r\n lngLatArr[0] = [];\r\n lngLats.split(';').map(res => {\r\n let [lng, lat] = res.split(',');\r\n lngLatArr[0].push(transformLonLatToWGS84([Number(lng), Number(lat)], coordType));\r\n });\r\n } else {\r\n if (Array.isArray(lngLats)) {\r\n lngLatArr = lngLats;\r\n }\r\n }\r\n }\r\n\r\n return lngLatArr;\r\n};\r\n\r\nexport const transformGeometry = geometryInfo => {\r\n /**\r\n * geometry: {\r\n * \"type\": \"Point | LineString | Polygon | MultiPoint | MultiLineString | MultiPolygon | GeometryCollection\",\r\n * \"coordinates\": []\r\n * }\r\n */\r\n\r\n let { type, lngLats, coordType } = geometryInfo;\r\n\r\n /**\r\n * geometryInfo: {\r\n * coordType: \"wgs84\"\r\n * lngLats: \"119.02486914921874,25.63890915087647\"\r\n * type: \"point\"\r\n * }\r\n */\r\n\r\n let _type = type.replace(/^\\S/, s => s.toUpperCase());\r\n\r\n return {\r\n type: _type,\r\n coordinates: transformGeometryInfoToWGS84(lngLats, type, coordType),\r\n };\r\n};\r\n\r\nexport const createFeature = v => {\r\n return {\r\n type: 'Feature',\r\n geometry: transformGeometry(v.geometryInfo),\r\n properties: { ...v },\r\n };\r\n};\r\n\r\nexport const createFeatureCollection = data => {\r\n const featureCollection = {\r\n type: 'FeatureCollection',\r\n features: [],\r\n };\r\n\r\n let features = [];\r\n data.map(v => {\r\n if (v.geometryInfo) {\r\n features.push(createFeature(v));\r\n }\r\n });\r\n\r\n featureCollection.features = features;\r\n\r\n return featureCollection;\r\n};\r\n\r\nexport const getDataByHttp = (url, params, method, afterGetData) => {\r\n let request = http.get;\r\n if (method === 'POST' || method === 'post') {\r\n request = http.post;\r\n }\r\n return request(url, {body: params}).then(res => {\r\n res = afterGetData ? afterGetData(res) : res;\r\n\r\n if (url.indexOf('/geoserver/') !== -1) {\r\n return res;\r\n }\r\n\r\n if (res?.data?.length) {\r\n return createFeatureCollection(res.data);\r\n }\r\n });\r\n};\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"createFeatureCollection.js","names":["_http","_interopRequireDefault","require","_mapTool","e","__esModule","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","_typeof","Symbol","toPrimitive","call","TypeError","String","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","l","iterator","n","u","a","f","next","done","Array","isArray","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","_arrayLikeToArray","toString","slice","constructor","name","from","test","transformLonLatToWGS84","exports","lonLat","coordType","_lonLat","map","v","gcj","mapTool","bd09togcj02","gcj02towgs84","transformGeometryInfoToWGS84","lngLats","type","lngLatArr","_l","split","includes","res","_res$split","_res$split2","lng","lat","transformGeometry","geometryInfo","_type","replace","s","toUpperCase","coordinates","createFeature","geometry","properties","createFeatureCollection","data","featureCollection","features","getDataByHttp","url","params","method","afterGetData","request","http","get","post","body","then","_res","indexOf"],"sources":["feature-layer/createFeatureCollection.js"],"sourcesContent":["import http from '../_util/http';\nimport mapTool from '../_util/mapTool';\n\nexport const transformLonLatToWGS84 = (lonLat, coordType) => {\n let _lonLat = [...lonLat].map(v => Number(v));\n if (coordType === 'bmap') {\n let gcj = mapTool.bd09togcj02(lonLat[0], lonLat[1]);\n _lonLat = mapTool.gcj02towgs84(gcj[0], gcj[1]);\n } else if (coordType === 'amap') {\n _lonLat = mapTool.gcj02towgs84(lonLat[0], lonLat[1]);\n }\n\n return _lonLat;\n};\n\nexport const transformGeometryInfoToWGS84 = (lngLats, type, coordType) => {\n let lngLatArr = [];\n if (lngLats) {\n if (type === 'point') {\n let _l = typeof lngLats === 'string' ? lngLats.split(',') : lngLats;\n lngLatArr = transformLonLatToWGS84(_l, coordType);\n } else if (['polygon', 'polyline'].includes(type)) {\n lngLatArr[0] = [];\n lngLats.split(';').map(res => {\n let [lng, lat] = res.split(',');\n lngLatArr[0].push(transformLonLatToWGS84([Number(lng), Number(lat)], coordType));\n });\n } else {\n if (Array.isArray(lngLats)) {\n lngLatArr = lngLats;\n }\n }\n }\n\n return lngLatArr;\n};\n\nexport const transformGeometry = geometryInfo => {\n /**\n * geometry: {\n * \"type\": \"Point | LineString | Polygon | MultiPoint | MultiLineString | MultiPolygon | GeometryCollection\",\n * \"coordinates\": []\n * }\n */\n\n let { type, lngLats, coordType } = geometryInfo;\n\n /**\n * geometryInfo: {\n * coordType: \"wgs84\"\n * lngLats: \"119.02486914921874,25.63890915087647\"\n * type: \"point\"\n * }\n */\n\n let _type = type.replace(/^\\S/, s => s.toUpperCase());\n\n return {\n type: _type,\n coordinates: transformGeometryInfoToWGS84(lngLats, type, coordType),\n };\n};\n\nexport const createFeature = v => {\n return {\n type: 'Feature',\n geometry: transformGeometry(v.geometryInfo),\n properties: { ...v },\n };\n};\n\nexport const createFeatureCollection = data => {\n const featureCollection = {\n type: 'FeatureCollection',\n features: [],\n };\n\n let features = [];\n data.map(v => {\n if (v.geometryInfo) {\n features.push(createFeature(v));\n }\n });\n\n featureCollection.features = features;\n\n return featureCollection;\n};\n\nexport const getDataByHttp = (url, params, method, afterGetData) => {\n let request = http.get;\n if (method === 'POST' || method === 'post') {\n request = http.post;\n }\n return request(url, {body: params}).then(res => {\n res = afterGetData ? afterGetData(res) : res;\n\n if (url.indexOf('/geoserver/') !== -1) {\n return res;\n }\n\n if (res?.data?.length) {\n return createFeatureCollection(res.data);\n }\n });\n};\n"],"mappings":"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","ignoreList":[]}