leiting-bim 2.1.48 → 2.1.52

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 (410) hide show
  1. package/package.json +16 -2
  2. package/plugins/cesium-core/dist/cesium-core.mjs +587 -535
  3. package/plugins/cesium-core/dist/cesium-core.mjs.map +1 -0
  4. package/plugins/cesium-core/dist/cesium-core.umd.js +19 -18
  5. package/plugins/cesium-core/dist/cesium-core.umd.js.map +1 -0
  6. package/plugins/cesium-core/dist/components/BufferedHierarchicalAggregator.d.ts +76 -73
  7. package/plugins/cesium-vue/dist/_commonjsHelpers-DaMA6jEr.js +1 -0
  8. package/plugins/cesium-vue/dist/_commonjsHelpers-DaMA6jEr.js.map +1 -0
  9. package/plugins/cesium-vue/dist/components/basic-audio.js +3 -2
  10. package/plugins/cesium-vue/dist/components/basic-audio.js.map +1 -0
  11. package/plugins/cesium-vue/dist/components/basic-video.js +3 -2
  12. package/plugins/cesium-vue/dist/components/basic-video.js.map +1 -0
  13. package/plugins/cesium-vue/dist/components/card-carousel.js +2 -1
  14. package/plugins/cesium-vue/dist/components/card-carousel.js.map +1 -0
  15. package/plugins/cesium-vue/dist/components/card-content.js +13 -12
  16. package/plugins/cesium-vue/dist/components/card-content.js.map +1 -0
  17. package/plugins/cesium-vue/dist/components/card-page.js +2 -1
  18. package/plugins/cesium-vue/dist/components/card-page.js.map +1 -0
  19. package/plugins/cesium-vue/dist/components/carousel-img.js +6 -5
  20. package/plugins/cesium-vue/dist/components/carousel-img.js.map +1 -0
  21. package/plugins/cesium-vue/dist/components/echarts-pro.js +2 -1
  22. package/plugins/cesium-vue/dist/components/echarts-pro.js.map +1 -0
  23. package/plugins/cesium-vue/dist/components/marker-bubble.js +5 -4
  24. package/plugins/cesium-vue/dist/components/marker-bubble.js.map +1 -0
  25. package/plugins/cesium-vue/dist/components/marker-default.js +6 -5
  26. package/plugins/cesium-vue/dist/components/marker-default.js.map +1 -0
  27. package/plugins/cesium-vue/dist/components/marker-html.js +6 -5
  28. package/plugins/cesium-vue/dist/components/marker-html.js.map +1 -0
  29. package/plugins/cesium-vue/dist/components/marker-manage.js +112 -94
  30. package/plugins/cesium-vue/dist/components/marker-manage.js.map +1 -0
  31. package/plugins/cesium-vue/dist/components/marker-text.js +6 -5
  32. package/plugins/cesium-vue/dist/components/marker-text.js.map +1 -0
  33. package/plugins/cesium-vue/dist/components/measurement.js +4 -3
  34. package/plugins/cesium-vue/dist/components/measurement.js.map +1 -0
  35. package/plugins/cesium-vue/dist/components/position-picker/index.d.ts +58 -0
  36. package/plugins/cesium-vue/dist/components/position-picker.d.ts +6 -0
  37. package/plugins/cesium-vue/dist/components/position-picker.js +243 -0
  38. package/plugins/cesium-vue/dist/components/position-picker.js.map +1 -0
  39. package/plugins/cesium-vue/dist/create-DynflqE1.js +1 -0
  40. package/plugins/cesium-vue/dist/create-DynflqE1.js.map +1 -0
  41. package/plugins/cesium-vue/dist/{index-B03tSn8_.js → index-C0pspk3x.js} +3 -2
  42. package/plugins/cesium-vue/dist/index-C0pspk3x.js.map +1 -0
  43. package/plugins/cesium-vue/dist/index-CUs_hd1V.js +1 -0
  44. package/plugins/cesium-vue/dist/index-CUs_hd1V.js.map +1 -0
  45. package/plugins/cesium-vue/dist/index.d.ts +3 -1
  46. package/plugins/cesium-vue/dist/index.js +31 -27
  47. package/plugins/cesium-vue/dist/index.js.map +1 -0
  48. package/plugins/cesium-vue/package.json +4 -0
  49. package/plugins/theme-chalk/dist/debug.log +1 -0
  50. package/plugins/.gitmodules +0 -4
  51. package/plugins/README.md +0 -2
  52. package/plugins/build.cjs +0 -63
  53. package/plugins/cesium-core/pnpm-lock.yaml +0 -872
  54. package/plugins/cesium-core/src/components/BufferedHierarchicalAggregator.ts +0 -546
  55. package/plugins/cesium-core/src/components/HtmlOverlayLabelPool.ts +0 -489
  56. package/plugins/cesium-core/src/components/MarkerEvent.ts +0 -92
  57. package/plugins/cesium-core/src/components/Material/MaterialManager.ts +0 -129
  58. package/plugins/cesium-core/src/components/Material/help/PolylineFlowMaterialProperty.ts +0 -116
  59. package/plugins/cesium-core/src/components/Material/help/dynamicImgMaterial.ts +0 -236
  60. package/plugins/cesium-core/src/components/Material/index.ts +0 -3
  61. package/plugins/cesium-core/src/components/TooltipManager.ts +0 -52
  62. package/plugins/cesium-core/src/components/draw/DrawTool.ts +0 -55
  63. package/plugins/cesium-core/src/components/draw/handlers/CircleDrawer.ts +0 -159
  64. package/plugins/cesium-core/src/components/draw/handlers/LineDrawer.ts +0 -113
  65. package/plugins/cesium-core/src/components/draw/handlers/PointDrawer.ts +0 -70
  66. package/plugins/cesium-core/src/components/draw/handlers/PolygonDrawer.ts +0 -112
  67. package/plugins/cesium-core/src/components/draw/handlers/RectangleDrawer.ts +0 -115
  68. package/plugins/cesium-core/src/components/draw/types.ts +0 -28
  69. package/plugins/cesium-core/src/components/entity/EntityLayer.ts +0 -453
  70. package/plugins/cesium-core/src/components/gltf/GLTFManage.ts +0 -799
  71. package/plugins/cesium-core/src/components/gltf/index.ts +0 -1
  72. package/plugins/cesium-core/src/components/measurement/MeasurementTool.ts +0 -416
  73. package/plugins/cesium-core/src/components/measurement/handlers/AreaMeasure.ts +0 -552
  74. package/plugins/cesium-core/src/components/measurement/handlers/CircleMeasure.ts +0 -289
  75. package/plugins/cesium-core/src/components/measurement/handlers/CoordinateMeasure.ts +0 -139
  76. package/plugins/cesium-core/src/components/measurement/handlers/HorizontalMeasure.ts +0 -427
  77. package/plugins/cesium-core/src/components/measurement/handlers/PolylineDistanceMeasure.ts +0 -356
  78. package/plugins/cesium-core/src/components/measurement/handlers/RectangleMeasure.ts +0 -516
  79. package/plugins/cesium-core/src/components/measurement/handlers/RegularPolygonMeasure.ts +0 -472
  80. package/plugins/cesium-core/src/components/measurement/handlers/SpaceMeasure.ts +0 -250
  81. package/plugins/cesium-core/src/components/measurement/handlers/TerrainHeightMeasure.ts +0 -185
  82. package/plugins/cesium-core/src/components/measurement/handlers/TriangleMeasure.ts +0 -561
  83. package/plugins/cesium-core/src/components/measurement/handlers/VerticalMeasure.ts +0 -361
  84. package/plugins/cesium-core/src/components/measurement/index.ts +0 -13
  85. package/plugins/cesium-core/src/components/measurement/types.ts +0 -57
  86. package/plugins/cesium-core/src/components/primitive/PrimitiveManager.ts +0 -556
  87. package/plugins/cesium-core/src/components/roaming/CameraRoamTool.ts +0 -286
  88. package/plugins/cesium-core/src/components/roaming/PathRoamTool.ts +0 -174
  89. package/plugins/cesium-core/src/components/roaming/index.ts +0 -3
  90. package/plugins/cesium-core/src/components/roaming/types.ts +0 -71
  91. package/plugins/cesium-core/src/components/utils/convertGeoJsonToEntityData.ts +0 -98
  92. package/plugins/cesium-core/src/components/utils/uuid.ts +0 -7
  93. package/plugins/cesium-core/src/index.ts +0 -17
  94. package/plugins/cesium-core/src/test/measurement/index.html +0 -166
  95. package/plugins/cesium-core/src/test/roaming/c.gltf +0 -1
  96. package/plugins/cesium-core/src/test/roaming/f87cc3ea918a4b76bff2c88a3655eb1f.bin +0 -0
  97. package/plugins/cesium-core/src/test/roaming/index.html +0 -51
  98. package/plugins/cesium-core/src/test/roaming/path.html +0 -448
  99. package/plugins/cesium-core/src/test/roaming/view.html +0 -520
  100. package/plugins/cesium-core/stats.html +0 -4949
  101. package/plugins/cesium-core/tsconfig.json +0 -14
  102. package/plugins/cesium-core/vite.config.ts +0 -35
  103. package/plugins/cesium-vue/src/assets/icons/icon-001.png +0 -0
  104. package/plugins/cesium-vue/src/assets/icons/icon-002.png +0 -0
  105. package/plugins/cesium-vue/src/assets/icons/icon-003.png +0 -0
  106. package/plugins/cesium-vue/src/assets/icons/icon-004.png +0 -0
  107. package/plugins/cesium-vue/src/assets/icons/icon-005.png +0 -0
  108. package/plugins/cesium-vue/src/assets/icons/icon-006.png +0 -0
  109. package/plugins/cesium-vue/src/assets/icons/icon-007.png +0 -0
  110. package/plugins/cesium-vue/src/assets/icons/icon-008.png +0 -0
  111. package/plugins/cesium-vue/src/assets/icons/icon-009.png +0 -0
  112. package/plugins/cesium-vue/src/assets/icons/icon-010.png +0 -0
  113. package/plugins/cesium-vue/src/assets/icons/icon-011.png +0 -0
  114. package/plugins/cesium-vue/src/assets/icons/icon-012.png +0 -0
  115. package/plugins/cesium-vue/src/assets/img/Card3-BG.png +0 -0
  116. package/plugins/cesium-vue/src/assets/img/card_bg3.png +0 -0
  117. package/plugins/cesium-vue/src/components/basic-audio/index.ts +0 -6
  118. package/plugins/cesium-vue/src/components/basic-audio/src/BasicAudio.vue +0 -119
  119. package/plugins/cesium-vue/src/components/basic-audio/src/basicAudio.ts +0 -6
  120. package/plugins/cesium-vue/src/components/basic-video/index.ts +0 -7
  121. package/plugins/cesium-vue/src/components/basic-video/src/BasicVideo.vue +0 -58
  122. package/plugins/cesium-vue/src/components/basic-video/src/basicVideo.ts +0 -14
  123. package/plugins/cesium-vue/src/components/card-carousel/index.ts +0 -7
  124. package/plugins/cesium-vue/src/components/card-carousel/src/CardCarousel.vue +0 -124
  125. package/plugins/cesium-vue/src/components/card-carousel/src/cardCarousel.ts +0 -60
  126. package/plugins/cesium-vue/src/components/card-content/index.ts +0 -7
  127. package/plugins/cesium-vue/src/components/card-content/src/CardContent.vue +0 -41
  128. package/plugins/cesium-vue/src/components/card-content/src/cardContent.ts +0 -22
  129. package/plugins/cesium-vue/src/components/card-page/index.ts +0 -7
  130. package/plugins/cesium-vue/src/components/card-page/src/CardPage.vue +0 -102
  131. package/plugins/cesium-vue/src/components/card-page/src/cardPage.ts +0 -37
  132. package/plugins/cesium-vue/src/components/carousel-img/index.ts +0 -7
  133. package/plugins/cesium-vue/src/components/carousel-img/src/CarouselImg.vue +0 -84
  134. package/plugins/cesium-vue/src/components/carousel-img/src/carouselImg.ts +0 -8
  135. package/plugins/cesium-vue/src/components/echarts-pro/index.ts +0 -7
  136. package/plugins/cesium-vue/src/components/echarts-pro/src/EchartsPro.vue +0 -107
  137. package/plugins/cesium-vue/src/components/echarts-pro/src/echartsPro.ts +0 -12
  138. package/plugins/cesium-vue/src/components/echarts-pro/src/hook/useECharts.ts +0 -55
  139. package/plugins/cesium-vue/src/components/marker-bubble/index.ts +0 -7
  140. package/plugins/cesium-vue/src/components/marker-bubble/src/MarkerBubble.vue +0 -235
  141. package/plugins/cesium-vue/src/components/marker-bubble/src/markerBubble.ts +0 -35
  142. package/plugins/cesium-vue/src/components/marker-default/index.ts +0 -7
  143. package/plugins/cesium-vue/src/components/marker-default/src/MarkerDefault.vue +0 -19
  144. package/plugins/cesium-vue/src/components/marker-default/src/markerDefault.ts +0 -12
  145. package/plugins/cesium-vue/src/components/marker-html/index.ts +0 -7
  146. package/plugins/cesium-vue/src/components/marker-html/src/MarkerHtml.vue +0 -21
  147. package/plugins/cesium-vue/src/components/marker-html/src/markerHtml.ts +0 -12
  148. package/plugins/cesium-vue/src/components/marker-manage/index.ts +0 -9
  149. package/plugins/cesium-vue/src/components/marker-manage/src/components/MarkerManage.vue +0 -106
  150. package/plugins/cesium-vue/src/components/marker-manage/src/config/theme.ts +0 -8
  151. package/plugins/cesium-vue/src/components/marker-manage/src/core/MarkerManage.ts +0 -466
  152. package/plugins/cesium-vue/src/components/marker-manage/src/core/MarkerManagerCore.ts +0 -148
  153. package/plugins/cesium-vue/src/components/marker-manage/src/hook/useMarkerManage.ts +0 -45
  154. package/plugins/cesium-vue/src/components/marker-manage/src/type/markerManage.ts +0 -75
  155. package/plugins/cesium-vue/src/components/marker-manage/src/utils/themeTool.ts +0 -154
  156. package/plugins/cesium-vue/src/components/marker-text/index.ts +0 -7
  157. package/plugins/cesium-vue/src/components/marker-text/src/MarkerText.vue +0 -14
  158. package/plugins/cesium-vue/src/components/marker-text/src/markerText.ts +0 -10
  159. package/plugins/cesium-vue/src/components/measurement/index.ts +0 -7
  160. package/plugins/cesium-vue/src/components/measurement/src/Measurement.vue +0 -183
  161. package/plugins/cesium-vue/src/components/measurement/src/measurement.ts +0 -20
  162. package/plugins/cesium-vue/src/index.ts +0 -89
  163. package/plugins/cesium-vue/stats.html +0 -4949
  164. package/plugins/cesium-vue/tsconfig.json +0 -18
  165. package/plugins/cesium-vue/vite.config.ts +0 -62
  166. package/plugins/plugins/README.md +0 -2
  167. package/plugins/plugins/build.cjs +0 -63
  168. package/plugins/plugins/cesium-core/dist/cesium-core.mjs +0 -5881
  169. package/plugins/plugins/cesium-core/dist/cesium-core.mjs.map +0 -1
  170. package/plugins/plugins/cesium-core/dist/cesium-core.umd.js +0 -77
  171. package/plugins/plugins/cesium-core/dist/cesium-core.umd.js.map +0 -1
  172. package/plugins/plugins/cesium-core/dist/components/BufferedHierarchicalAggregator.d.ts +0 -73
  173. package/plugins/plugins/cesium-core/dist/components/HtmlOverlayLabelPool.d.ts +0 -152
  174. package/plugins/plugins/cesium-core/dist/components/MarkerEvent.d.ts +0 -38
  175. package/plugins/plugins/cesium-core/dist/components/Material/MaterialManager.d.ts +0 -49
  176. package/plugins/plugins/cesium-core/dist/components/Material/help/PolylineFlowMaterialProperty.d.ts +0 -10
  177. package/plugins/plugins/cesium-core/dist/components/Material/help/dynamicImgMaterial.d.ts +0 -16
  178. package/plugins/plugins/cesium-core/dist/components/Material/index.d.ts +0 -3
  179. package/plugins/plugins/cesium-core/dist/components/TooltipManager.d.ts +0 -11
  180. package/plugins/plugins/cesium-core/dist/components/draw/DrawTool.d.ts +0 -10
  181. package/plugins/plugins/cesium-core/dist/components/draw/handlers/CircleDrawer.d.ts +0 -16
  182. package/plugins/plugins/cesium-core/dist/components/draw/handlers/LineDrawer.d.ts +0 -14
  183. package/plugins/plugins/cesium-core/dist/components/draw/handlers/PointDrawer.d.ts +0 -12
  184. package/plugins/plugins/cesium-core/dist/components/draw/handlers/PolygonDrawer.d.ts +0 -14
  185. package/plugins/plugins/cesium-core/dist/components/draw/handlers/RectangleDrawer.d.ts +0 -13
  186. package/plugins/plugins/cesium-core/dist/components/draw/types.d.ts +0 -29
  187. package/plugins/plugins/cesium-core/dist/components/entity/EntityLayer.d.ts +0 -65
  188. package/plugins/plugins/cesium-core/dist/components/gltf/GLTFManage.d.ts +0 -141
  189. package/plugins/plugins/cesium-core/dist/components/gltf/index.d.ts +0 -1
  190. package/plugins/plugins/cesium-core/dist/components/measurement/MeasurementTool.d.ts +0 -34
  191. package/plugins/plugins/cesium-core/dist/components/measurement/handlers/AreaMeasure.d.ts +0 -23
  192. package/plugins/plugins/cesium-core/dist/components/measurement/handlers/CircleMeasure.d.ts +0 -21
  193. package/plugins/plugins/cesium-core/dist/components/measurement/handlers/CoordinateMeasure.d.ts +0 -16
  194. package/plugins/plugins/cesium-core/dist/components/measurement/handlers/HorizontalMeasure.d.ts +0 -25
  195. package/plugins/plugins/cesium-core/dist/components/measurement/handlers/PolylineDistanceMeasure.d.ts +0 -24
  196. package/plugins/plugins/cesium-core/dist/components/measurement/handlers/RectangleMeasure.d.ts +0 -22
  197. package/plugins/plugins/cesium-core/dist/components/measurement/handlers/RegularPolygonMeasure.d.ts +0 -23
  198. package/plugins/plugins/cesium-core/dist/components/measurement/handlers/SpaceMeasure.d.ts +0 -20
  199. package/plugins/plugins/cesium-core/dist/components/measurement/handlers/TerrainHeightMeasure.d.ts +0 -18
  200. package/plugins/plugins/cesium-core/dist/components/measurement/handlers/TriangleMeasure.d.ts +0 -24
  201. package/plugins/plugins/cesium-core/dist/components/measurement/handlers/VerticalMeasure.d.ts +0 -23
  202. package/plugins/plugins/cesium-core/dist/components/measurement/index.d.ts +0 -13
  203. package/plugins/plugins/cesium-core/dist/components/measurement/types.d.ts +0 -42
  204. package/plugins/plugins/cesium-core/dist/components/primitive/PrimitiveManager.d.ts +0 -50
  205. package/plugins/plugins/cesium-core/dist/components/roaming/CameraRoamTool.d.ts +0 -27
  206. package/plugins/plugins/cesium-core/dist/components/roaming/PathRoamTool.d.ts +0 -23
  207. package/plugins/plugins/cesium-core/dist/components/roaming/index.d.ts +0 -3
  208. package/plugins/plugins/cesium-core/dist/components/roaming/types.d.ts +0 -66
  209. package/plugins/plugins/cesium-core/dist/components/utils/convertGeoJsonToEntityData.d.ts +0 -1
  210. package/plugins/plugins/cesium-core/dist/components/utils/uuid.d.ts +0 -1
  211. package/plugins/plugins/cesium-core/dist/index.d.ts +0 -12
  212. package/plugins/plugins/cesium-core/package.json +0 -26
  213. package/plugins/plugins/cesium-core/pnpm-lock.yaml +0 -872
  214. package/plugins/plugins/cesium-core/src/components/BufferedHierarchicalAggregator.ts +0 -546
  215. package/plugins/plugins/cesium-core/src/components/HtmlOverlayLabelPool.ts +0 -489
  216. package/plugins/plugins/cesium-core/src/components/MarkerEvent.ts +0 -92
  217. package/plugins/plugins/cesium-core/src/components/Material/MaterialManager.ts +0 -129
  218. package/plugins/plugins/cesium-core/src/components/Material/help/PolylineFlowMaterialProperty.ts +0 -116
  219. package/plugins/plugins/cesium-core/src/components/Material/help/dynamicImgMaterial.ts +0 -236
  220. package/plugins/plugins/cesium-core/src/components/Material/index.ts +0 -3
  221. package/plugins/plugins/cesium-core/src/components/TooltipManager.ts +0 -52
  222. package/plugins/plugins/cesium-core/src/components/draw/DrawTool.ts +0 -55
  223. package/plugins/plugins/cesium-core/src/components/draw/handlers/CircleDrawer.ts +0 -159
  224. package/plugins/plugins/cesium-core/src/components/draw/handlers/LineDrawer.ts +0 -113
  225. package/plugins/plugins/cesium-core/src/components/draw/handlers/PointDrawer.ts +0 -70
  226. package/plugins/plugins/cesium-core/src/components/draw/handlers/PolygonDrawer.ts +0 -112
  227. package/plugins/plugins/cesium-core/src/components/draw/handlers/RectangleDrawer.ts +0 -115
  228. package/plugins/plugins/cesium-core/src/components/draw/types.ts +0 -28
  229. package/plugins/plugins/cesium-core/src/components/entity/EntityLayer.ts +0 -453
  230. package/plugins/plugins/cesium-core/src/components/gltf/GLTFManage.ts +0 -799
  231. package/plugins/plugins/cesium-core/src/components/gltf/index.ts +0 -1
  232. package/plugins/plugins/cesium-core/src/components/measurement/MeasurementTool.ts +0 -416
  233. package/plugins/plugins/cesium-core/src/components/measurement/handlers/AreaMeasure.ts +0 -451
  234. package/plugins/plugins/cesium-core/src/components/measurement/handlers/CircleMeasure.ts +0 -267
  235. package/plugins/plugins/cesium-core/src/components/measurement/handlers/CoordinateMeasure.ts +0 -139
  236. package/plugins/plugins/cesium-core/src/components/measurement/handlers/HorizontalMeasure.ts +0 -418
  237. package/plugins/plugins/cesium-core/src/components/measurement/handlers/PolylineDistanceMeasure.ts +0 -352
  238. package/plugins/plugins/cesium-core/src/components/measurement/handlers/RectangleMeasure.ts +0 -388
  239. package/plugins/plugins/cesium-core/src/components/measurement/handlers/RegularPolygonMeasure.ts +0 -379
  240. package/plugins/plugins/cesium-core/src/components/measurement/handlers/SpaceMeasure.ts +0 -246
  241. package/plugins/plugins/cesium-core/src/components/measurement/handlers/TerrainHeightMeasure.ts +0 -185
  242. package/plugins/plugins/cesium-core/src/components/measurement/handlers/TriangleMeasure.ts +0 -541
  243. package/plugins/plugins/cesium-core/src/components/measurement/handlers/VerticalMeasure.ts +0 -360
  244. package/plugins/plugins/cesium-core/src/components/measurement/index.ts +0 -13
  245. package/plugins/plugins/cesium-core/src/components/measurement/types.ts +0 -57
  246. package/plugins/plugins/cesium-core/src/components/primitive/PrimitiveManager.ts +0 -556
  247. package/plugins/plugins/cesium-core/src/components/roaming/CameraRoamTool.ts +0 -286
  248. package/plugins/plugins/cesium-core/src/components/roaming/PathRoamTool.ts +0 -174
  249. package/plugins/plugins/cesium-core/src/components/roaming/index.ts +0 -3
  250. package/plugins/plugins/cesium-core/src/components/roaming/types.ts +0 -71
  251. package/plugins/plugins/cesium-core/src/components/utils/convertGeoJsonToEntityData.ts +0 -98
  252. package/plugins/plugins/cesium-core/src/components/utils/uuid.ts +0 -7
  253. package/plugins/plugins/cesium-core/src/index.ts +0 -17
  254. package/plugins/plugins/cesium-core/src/test/measurement/index.html +0 -166
  255. package/plugins/plugins/cesium-core/src/test/roaming/c.gltf +0 -1
  256. package/plugins/plugins/cesium-core/src/test/roaming/f87cc3ea918a4b76bff2c88a3655eb1f.bin +0 -0
  257. package/plugins/plugins/cesium-core/src/test/roaming/index.html +0 -51
  258. package/plugins/plugins/cesium-core/src/test/roaming/path.html +0 -448
  259. package/plugins/plugins/cesium-core/src/test/roaming/view.html +0 -520
  260. package/plugins/plugins/cesium-core/stats.html +0 -4949
  261. package/plugins/plugins/cesium-core/tsconfig.json +0 -14
  262. package/plugins/plugins/cesium-core/vite.config.ts +0 -35
  263. package/plugins/plugins/cesium-vue/dist/components/basic-audio/index.d.ts +0 -18
  264. package/plugins/plugins/cesium-vue/dist/components/basic-audio/index.d.ts.map +0 -1
  265. package/plugins/plugins/cesium-vue/dist/components/basic-video/index.d.ts +0 -92
  266. package/plugins/plugins/cesium-vue/dist/components/basic-video/index.d.ts.map +0 -1
  267. package/plugins/plugins/cesium-vue/dist/components/camera-roam/index.d.ts +0 -82
  268. package/plugins/plugins/cesium-vue/dist/components/camera-roam/index.d.ts.map +0 -1
  269. package/plugins/plugins/cesium-vue/dist/components/card-carousel/index.d.ts +0 -152
  270. package/plugins/plugins/cesium-vue/dist/components/card-carousel/index.d.ts.map +0 -1
  271. package/plugins/plugins/cesium-vue/dist/components/card-content/index.d.ts +0 -21
  272. package/plugins/plugins/cesium-vue/dist/components/card-content/index.d.ts.map +0 -1
  273. package/plugins/plugins/cesium-vue/dist/components/card-page/index.d.ts +0 -69
  274. package/plugins/plugins/cesium-vue/dist/components/card-page/index.d.ts.map +0 -1
  275. package/plugins/plugins/cesium-vue/dist/components/carousel-img/index.d.ts +0 -21
  276. package/plugins/plugins/cesium-vue/dist/components/carousel-img/index.d.ts.map +0 -1
  277. package/plugins/plugins/cesium-vue/dist/components/echarts-pro/index.d.ts +0 -68
  278. package/plugins/plugins/cesium-vue/dist/components/echarts-pro/index.d.ts.map +0 -1
  279. package/plugins/plugins/cesium-vue/dist/components/marker-bubble/index.d.ts +0 -78
  280. package/plugins/plugins/cesium-vue/dist/components/marker-bubble/index.d.ts.map +0 -1
  281. package/plugins/plugins/cesium-vue/dist/components/marker-default/index.d.ts +0 -48
  282. package/plugins/plugins/cesium-vue/dist/components/marker-default/index.d.ts.map +0 -1
  283. package/plugins/plugins/cesium-vue/dist/components/marker-html/index.d.ts +0 -48
  284. package/plugins/plugins/cesium-vue/dist/components/marker-html/index.d.ts.map +0 -1
  285. package/plugins/plugins/cesium-vue/dist/components/marker-manage/index.d.ts +0 -164
  286. package/plugins/plugins/cesium-vue/dist/components/marker-manage/index.d.ts.map +0 -1
  287. package/plugins/plugins/cesium-vue/dist/components/marker-text/index.d.ts +0 -30
  288. package/plugins/plugins/cesium-vue/dist/components/marker-text/index.d.ts.map +0 -1
  289. package/plugins/plugins/cesium-vue/dist/components/measurement/index.d.ts +0 -78
  290. package/plugins/plugins/cesium-vue/dist/components/measurement/index.d.ts.map +0 -1
  291. package/plugins/plugins/cesium-vue/dist/components/path-roam/index.d.ts +0 -82
  292. package/plugins/plugins/cesium-vue/dist/components/path-roam/index.d.ts.map +0 -1
  293. package/plugins/plugins/cesium-vue/dist/components/test/index.d.ts +0 -67
  294. package/plugins/plugins/cesium-vue/dist/components/test/index.d.ts.map +0 -1
  295. package/plugins/plugins/cesium-vue/dist/index.css +0 -1
  296. package/plugins/plugins/cesium-vue/dist/index.d.ts +0 -30
  297. package/plugins/plugins/cesium-vue/dist/index.d.ts.map +0 -1
  298. package/plugins/plugins/cesium-vue/dist/index.js +0 -10087
  299. package/plugins/plugins/cesium-vue/dist/index.js.map +0 -1
  300. package/plugins/plugins/cesium-vue/dist/index.umd.cjs +0 -46
  301. package/plugins/plugins/cesium-vue/dist/index.umd.cjs.map +0 -1
  302. package/plugins/plugins/cesium-vue/package.json +0 -48
  303. package/plugins/plugins/cesium-vue/src/assets/icons/icon-001.png +0 -0
  304. package/plugins/plugins/cesium-vue/src/assets/icons/icon-002.png +0 -0
  305. package/plugins/plugins/cesium-vue/src/assets/icons/icon-003.png +0 -0
  306. package/plugins/plugins/cesium-vue/src/assets/icons/icon-004.png +0 -0
  307. package/plugins/plugins/cesium-vue/src/assets/icons/icon-005.png +0 -0
  308. package/plugins/plugins/cesium-vue/src/assets/icons/icon-006.png +0 -0
  309. package/plugins/plugins/cesium-vue/src/assets/icons/icon-007.png +0 -0
  310. package/plugins/plugins/cesium-vue/src/assets/icons/icon-008.png +0 -0
  311. package/plugins/plugins/cesium-vue/src/assets/icons/icon-009.png +0 -0
  312. package/plugins/plugins/cesium-vue/src/assets/icons/icon-010.png +0 -0
  313. package/plugins/plugins/cesium-vue/src/assets/icons/icon-011.png +0 -0
  314. package/plugins/plugins/cesium-vue/src/assets/icons/icon-012.png +0 -0
  315. package/plugins/plugins/cesium-vue/src/assets/img/Card3-BG.png +0 -0
  316. package/plugins/plugins/cesium-vue/src/assets/img/card_bg3.png +0 -0
  317. package/plugins/plugins/cesium-vue/src/components/basic-audio/index.ts +0 -11
  318. package/plugins/plugins/cesium-vue/src/components/basic-audio/src/BasicAudio.vue +0 -110
  319. package/plugins/plugins/cesium-vue/src/components/basic-audio/src/basicAudio.ts +0 -6
  320. package/plugins/plugins/cesium-vue/src/components/basic-video/index.ts +0 -12
  321. package/plugins/plugins/cesium-vue/src/components/basic-video/src/BasicVideo.vue +0 -99
  322. package/plugins/plugins/cesium-vue/src/components/basic-video/src/basicVideo.ts +0 -13
  323. package/plugins/plugins/cesium-vue/src/components/camera-roam/index.ts +0 -4
  324. package/plugins/plugins/cesium-vue/src/components/camera-roam/src/CameraRoam.vue +0 -434
  325. package/plugins/plugins/cesium-vue/src/components/camera-roam/src/cameraRoam.ts +0 -28
  326. package/plugins/plugins/cesium-vue/src/components/card-carousel/index.ts +0 -12
  327. package/plugins/plugins/cesium-vue/src/components/card-carousel/src/CardCarousel.vue +0 -124
  328. package/plugins/plugins/cesium-vue/src/components/card-carousel/src/cardCarousel.ts +0 -60
  329. package/plugins/plugins/cesium-vue/src/components/card-content/index.ts +0 -12
  330. package/plugins/plugins/cesium-vue/src/components/card-content/src/CardContent.vue +0 -41
  331. package/plugins/plugins/cesium-vue/src/components/card-content/src/cardContent.ts +0 -22
  332. package/plugins/plugins/cesium-vue/src/components/card-page/index.ts +0 -12
  333. package/plugins/plugins/cesium-vue/src/components/card-page/src/CardPage.vue +0 -102
  334. package/plugins/plugins/cesium-vue/src/components/card-page/src/cardPage.ts +0 -37
  335. package/plugins/plugins/cesium-vue/src/components/carousel-img/index.ts +0 -12
  336. package/plugins/plugins/cesium-vue/src/components/carousel-img/src/CarouselImg.vue +0 -15
  337. package/plugins/plugins/cesium-vue/src/components/carousel-img/src/carouselImg.ts +0 -6
  338. package/plugins/plugins/cesium-vue/src/components/echarts-pro/index.ts +0 -12
  339. package/plugins/plugins/cesium-vue/src/components/echarts-pro/src/EchartsPro.vue +0 -107
  340. package/plugins/plugins/cesium-vue/src/components/echarts-pro/src/echartsPro.ts +0 -12
  341. package/plugins/plugins/cesium-vue/src/components/echarts-pro/src/hook/useECharts.ts +0 -55
  342. package/plugins/plugins/cesium-vue/src/components/marker-bubble/index.ts +0 -12
  343. package/plugins/plugins/cesium-vue/src/components/marker-bubble/src/MarkerBubble.vue +0 -235
  344. package/plugins/plugins/cesium-vue/src/components/marker-bubble/src/markerBubble.ts +0 -35
  345. package/plugins/plugins/cesium-vue/src/components/marker-default/index.ts +0 -12
  346. package/plugins/plugins/cesium-vue/src/components/marker-default/src/MarkerDefault.vue +0 -19
  347. package/plugins/plugins/cesium-vue/src/components/marker-default/src/markerDefault.ts +0 -12
  348. package/plugins/plugins/cesium-vue/src/components/marker-html/index.ts +0 -12
  349. package/plugins/plugins/cesium-vue/src/components/marker-html/src/MarkerHtml.vue +0 -21
  350. package/plugins/plugins/cesium-vue/src/components/marker-html/src/markerHtml.ts +0 -12
  351. package/plugins/plugins/cesium-vue/src/components/marker-manage/index.ts +0 -14
  352. package/plugins/plugins/cesium-vue/src/components/marker-manage/src/components/MarkerManage.vue +0 -106
  353. package/plugins/plugins/cesium-vue/src/components/marker-manage/src/config/theme.ts +0 -8
  354. package/plugins/plugins/cesium-vue/src/components/marker-manage/src/core/MarkerManage.ts +0 -466
  355. package/plugins/plugins/cesium-vue/src/components/marker-manage/src/core/MarkerManagerCore.ts +0 -148
  356. package/plugins/plugins/cesium-vue/src/components/marker-manage/src/hook/useMarkerManage.ts +0 -45
  357. package/plugins/plugins/cesium-vue/src/components/marker-manage/src/type/markerManage.ts +0 -75
  358. package/plugins/plugins/cesium-vue/src/components/marker-manage/src/utils/themeTool.ts +0 -154
  359. package/plugins/plugins/cesium-vue/src/components/marker-text/index.ts +0 -12
  360. package/plugins/plugins/cesium-vue/src/components/marker-text/src/MarkerText.vue +0 -14
  361. package/plugins/plugins/cesium-vue/src/components/marker-text/src/markerText.ts +0 -10
  362. package/plugins/plugins/cesium-vue/src/components/measurement/index.ts +0 -12
  363. package/plugins/plugins/cesium-vue/src/components/measurement/src/Measurement.vue +0 -183
  364. package/plugins/plugins/cesium-vue/src/components/measurement/src/measurement.ts +0 -20
  365. package/plugins/plugins/cesium-vue/src/components/path-roam/index.ts +0 -4
  366. package/plugins/plugins/cesium-vue/src/components/path-roam/src/PathRoam.vue +0 -429
  367. package/plugins/plugins/cesium-vue/src/components/path-roam/src/pathRoam.ts +0 -28
  368. package/plugins/plugins/cesium-vue/src/components/test/CardMarker.vue +0 -150
  369. package/plugins/plugins/cesium-vue/src/components/test/CesiumMarker.vue +0 -34
  370. package/plugins/plugins/cesium-vue/src/components/test/CesiumViewer.vue +0 -77
  371. package/plugins/plugins/cesium-vue/src/components/test/MyLabel.vue +0 -25
  372. package/plugins/plugins/cesium-vue/src/components/test/index.ts +0 -28
  373. package/plugins/plugins/cesium-vue/src/index.ts +0 -83
  374. package/plugins/plugins/cesium-vue/stats.html +0 -4949
  375. package/plugins/plugins/cesium-vue/tsconfig.json +0 -18
  376. package/plugins/plugins/cesium-vue/vite.config.ts +0 -56
  377. package/plugins/plugins/theme-chalk/dist/theme-chalk.css +0 -819
  378. package/plugins/plugins/theme-chalk/index.less +0 -11
  379. package/plugins/plugins/theme-chalk/package.json +0 -27
  380. package/plugins/plugins/theme-chalk/src/basicAudio.less +0 -41
  381. package/plugins/plugins/theme-chalk/src/basicVideo.less +0 -17
  382. package/plugins/plugins/theme-chalk/src/cameraRoam.less +0 -239
  383. package/plugins/plugins/theme-chalk/src/cardCarousel.less +0 -71
  384. package/plugins/plugins/theme-chalk/src/cardContent.less +0 -73
  385. package/plugins/plugins/theme-chalk/src/cardPage.less +0 -61
  386. package/plugins/plugins/theme-chalk/src/carouselImg.less +0 -34
  387. package/plugins/plugins/theme-chalk/src/marker.less +0 -107
  388. package/plugins/plugins/theme-chalk/src/markerManage.less +0 -25
  389. package/plugins/plugins/theme-chalk/src/measurement.less +0 -106
  390. package/plugins/plugins/theme-chalk/src/mixins/config.less +0 -4
  391. package/plugins/plugins/theme-chalk/src/mixins/mixins.less +0 -64
  392. package/plugins/plugins/theme-chalk/src/pathRoam.less +0 -198
  393. package/plugins/plugins/utils/create.ts +0 -45
  394. package/plugins/plugins/utils/package.json +0 -12
  395. package/plugins/plugins/utils/uuid.ts +0 -43
  396. package/plugins/plugins/utils/with-install.ts +0 -10
  397. package/plugins/theme-chalk/index.less +0 -11
  398. package/plugins/theme-chalk/src/basicAudio.less +0 -44
  399. package/plugins/theme-chalk/src/basicVideo.less +0 -17
  400. package/plugins/theme-chalk/src/cameraRoam.less +0 -239
  401. package/plugins/theme-chalk/src/cardCarousel.less +0 -71
  402. package/plugins/theme-chalk/src/cardContent.less +0 -73
  403. package/plugins/theme-chalk/src/cardPage.less +0 -61
  404. package/plugins/theme-chalk/src/carouselImg.less +0 -66
  405. package/plugins/theme-chalk/src/marker.less +0 -107
  406. package/plugins/theme-chalk/src/markerManage.less +0 -25
  407. package/plugins/theme-chalk/src/measurement.less +0 -106
  408. package/plugins/theme-chalk/src/mixins/config.less +0 -4
  409. package/plugins/theme-chalk/src/mixins/mixins.less +0 -64
  410. package/plugins/theme-chalk/src/pathRoam.less +0 -198
@@ -1,546 +0,0 @@
1
- import { HtmlOverlayLabelPool } from './HtmlOverlayLabelPool';
2
-
3
- interface PointData {
4
- id: string;
5
- lon: number;
6
- lat: number;
7
- height: number;
8
- name: string;
9
- data: {
10
- [key: string]: any;
11
- };
12
- [key: string]: any;
13
- }
14
-
15
- interface GridCell {
16
- allPoints: PointData[];
17
- groups: Map<string, PointData[]>;
18
- skipPoints: PointData[];
19
- }
20
-
21
- interface AggregatorOptions {
22
- labelPool: HtmlOverlayLabelPool;
23
- threshold?: number;
24
- displayLimit?: number;
25
- maxLevel?: number;
26
- debugCurrentGrids?: boolean;
27
- clusterTheme?: string;
28
- pointTheme?: string;
29
- centralPointMode?: string;
30
- minGlobalPointCount?: number;
31
- groupByTheme?: boolean;
32
- }
33
-
34
- interface GridLevel {
35
- level: number;
36
- size: number;
37
- minViewWidth: number;
38
- }
39
-
40
- export { PointData, GridLevel, AggregatorOptions };
41
-
42
- export class BufferedHierarchicalAggregator {
43
- private Cesium: any;
44
- private viewer: any;
45
- labelPool: HtmlOverlayLabelPool;
46
- private threshold: number;
47
- private displayLimit: number;
48
- private maxLevel: number;
49
- private debugCurrentGrids: boolean;
50
- private levels: GridLevel[];
51
- private points: PointData[] = [];
52
- private gridLayers: Map<number, Map<string, GridCell>> = new Map();
53
- private debugGrids: any[] = [];
54
- private _updateFn: () => void;
55
- private clusterTheme: string;
56
- private pointTheme: string;
57
- private centralPointMode: string;
58
- private minGlobalPointCount: number;
59
- private groupByTheme: boolean;
60
- private tilingScheme: any;
61
- private levelIndexByTileLevel: Map<number, number> = new Map();
62
- private _updateTimer: number | null = null;
63
- private _updateDelay: number = 100;
64
- private _tilesRetryCount: number = 0;
65
- private _tilesRetryMax: number = 100;
66
-
67
- constructor(Cesium: any, viewer: any, options: AggregatorOptions) {
68
- this.Cesium = Cesium;
69
- this.viewer = viewer;
70
-
71
- this.labelPool = options.labelPool;
72
- this.threshold = options.threshold ?? 10;
73
- this.displayLimit = options.displayLimit ?? 100;
74
- this.maxLevel = options.maxLevel ?? 5;
75
- this.debugCurrentGrids = options.debugCurrentGrids ?? false;
76
-
77
- this.clusterTheme = options.clusterTheme ?? 'cluster-label';
78
- this.pointTheme = options.pointTheme ?? 'point-label';
79
- this.centralPointMode = options.centralPointMode ?? 'central';
80
- this.minGlobalPointCount = options.minGlobalPointCount ?? 0;
81
- this.groupByTheme = options.groupByTheme ?? false;
82
-
83
- const globe = this.viewer.scene && this.viewer.scene.globe;
84
- const surface = globe && (globe as any)._surface;
85
- const provider = surface && (surface as any)._tileProvider;
86
- this.tilingScheme =
87
- provider?.tilingScheme || new this.Cesium.GeographicTilingScheme();
88
- this.levels = this._createLevels();
89
- this._buildLevels();
90
-
91
- this._updateFn = this._update.bind(this);
92
- this.viewer.camera.changed.addEventListener(this._updateFn);
93
- }
94
-
95
- public setGroupByTheme(groupByTheme: boolean, rebuild: boolean = true, update: boolean = true) {
96
- if (this.groupByTheme === groupByTheme) {
97
- if (update) this._update();
98
- return;
99
- }
100
- this.groupByTheme = groupByTheme;
101
- if (rebuild) {
102
- this._buildLevels();
103
- }
104
- if (update) {
105
- this._update();
106
- }
107
- }
108
-
109
- public setMinGlobalPointCount(count: number, update: boolean = true) {
110
- this.minGlobalPointCount = count;
111
- if (update) {
112
- this._update();
113
- }
114
- }
115
-
116
- public setThreshold(threshold: number, update: boolean = true) {
117
- this.threshold = threshold;
118
- if (update) {
119
- this._update();
120
- }
121
- }
122
-
123
- public setDebugCurrentGrids(debug: boolean, update: boolean = true) {
124
- this.debugCurrentGrids = debug;
125
- if (!debug) {
126
- this._clearDebugGrids();
127
- }
128
- if (update) {
129
- this._update();
130
- }
131
- }
132
-
133
- private _createLevels(): GridLevel[] {
134
- const levels: GridLevel[] = [];
135
- this.levelIndexByTileLevel = new Map();
136
-
137
- const minLevel = 0;
138
- const maxLevel = this.maxLevel;
139
-
140
- let index = 0;
141
- for (let tileLevel = minLevel; tileLevel <= maxLevel; tileLevel++, index++) {
142
- const size = 360 / Math.pow(2, tileLevel);
143
- levels.push({
144
- level: tileLevel,
145
- size,
146
- minViewWidth: size * 4,
147
- });
148
- this.levelIndexByTileLevel.set(tileLevel, index);
149
- }
150
- return levels;
151
- }
152
-
153
- public addPoints(points: PointData[]) {
154
- this.points = points;
155
- this._buildLevels();
156
- }
157
-
158
- public appendPoints(newPoints: PointData[], isUpdate: boolean = true) {
159
- for (const pt of newPoints) {
160
- this.points.push(pt);
161
- }
162
- for (const pt of newPoints) {
163
- this._addPointToGrid(pt);
164
- }
165
- if (isUpdate) {
166
- this._scheduleUpdate();
167
- }
168
- }
169
-
170
- private _scheduleUpdate() {
171
- if (this._updateTimer !== null) {
172
- clearTimeout(this._updateTimer);
173
- }
174
- this._updateTimer = window.setTimeout(() => {
175
- this._update();
176
- this._updateTimer = null;
177
- }, this._updateDelay);
178
- }
179
-
180
- public updatePoint(newData: Partial<PointData>) {
181
- const idx = this.points.findIndex((p: PointData) => p.id === newData.id);
182
- if (idx === -1) return;
183
-
184
- const oldPt = this.points[idx];
185
-
186
- for (const level of this.levels) {
187
- const tileLevel = level.level;
188
- const grid = this.gridLayers.get(tileLevel);
189
- if (!grid) continue;
190
-
191
- const carto = this.Cesium.Cartographic.fromDegrees(oldPt.lon, oldPt.lat);
192
- const tileXY = this.tilingScheme.positionToTileXY(
193
- carto,
194
- tileLevel,
195
- new this.Cesium.Cartesian2(),
196
- );
197
- if (!tileXY) continue;
198
- const key = `${tileXY.x}_${tileXY.y}`;
199
- const cell = grid.get(key);
200
- if (cell) {
201
- // 1. remove from allPoints
202
- const iAll = cell.allPoints.findIndex((p: PointData) => p.id === newData.id);
203
- if (iAll !== -1) cell.allPoints.splice(iAll, 1);
204
-
205
- // 2. remove from skipPoints or groups
206
- if (oldPt.data?.skipAggregation) {
207
- const iSkip = cell.skipPoints.findIndex((p: PointData) => p.id === newData.id);
208
- if (iSkip !== -1) cell.skipPoints.splice(iSkip, 1);
209
- } else {
210
- const theme = this.groupByTheme ? oldPt.data?.theme : this.clusterTheme;
211
- const group = cell.groups.get(theme);
212
- if (group) {
213
- const iGroup = group.findIndex((p: PointData) => p.id === newData.id);
214
- if (iGroup !== -1) group.splice(iGroup, 1);
215
- if (group.length === 0) cell.groups.delete(theme);
216
- }
217
- }
218
- }
219
- }
220
-
221
- // 替换数据
222
- const updated = { ...oldPt, ...newData };
223
- this.points[idx] = updated;
224
-
225
- // 加入新 grid
226
- this._addPointToGrid(updated);
227
- this._update();
228
- }
229
-
230
- public removePointsById(ids: string[]) {
231
- const idSet = new Set(ids);
232
- this.points = this.points.filter((p: PointData) => !idSet.has(p.id));
233
-
234
- for (const level of this.levels) {
235
- const grid = this.gridLayers.get(level.level);
236
- if (!grid) continue;
237
- for (const [key, cell] of grid.entries()) {
238
- // Filter allPoints
239
- cell.allPoints = cell.allPoints.filter((p: PointData) => !idSet.has(p.id));
240
-
241
- // Filter skipPoints
242
- cell.skipPoints = cell.skipPoints.filter((p: PointData) => !idSet.has(p.id));
243
-
244
- // Filter groups
245
- for (const [groupKey, groupPoints] of cell.groups.entries()) {
246
- const filteredGroup = groupPoints.filter((p: PointData) => !idSet.has(p.id));
247
- if (filteredGroup.length === 0) {
248
- cell.groups.delete(groupKey);
249
- } else {
250
- cell.groups.set(groupKey, filteredGroup);
251
- }
252
- }
253
-
254
- // Cleanup empty cell if needed (optional)
255
- if (cell.allPoints.length === 0) {
256
- grid.delete(key);
257
- }
258
- }
259
- }
260
- this._update();
261
- }
262
-
263
- private _buildLevels() {
264
- this.gridLayers.clear();
265
- for (const level of this.levels) {
266
- this.gridLayers.set(level.level, new Map<string, GridCell>());
267
- }
268
- for (const pt of this.points) {
269
- this._addPointToGrid(pt);
270
- }
271
- }
272
-
273
- private _addPointToGrid(pt: PointData) {
274
- for (const level of this.levels) {
275
- const tileLevel = level.level;
276
- const grid = this.gridLayers.get(tileLevel);
277
- if (!grid) continue;
278
-
279
- const carto = this.Cesium.Cartographic.fromDegrees(pt.lon, pt.lat);
280
- const tileXY = this.tilingScheme.positionToTileXY(
281
- carto,
282
- tileLevel,
283
- new this.Cesium.Cartesian2(),
284
- );
285
- if (!tileXY) continue;
286
- const key = `${tileXY.x}_${tileXY.y}`;
287
-
288
- let cell = grid.get(key);
289
- if (!cell) {
290
- cell = {
291
- allPoints: [],
292
- groups: new Map(),
293
- skipPoints: [],
294
- };
295
- grid.set(key, cell);
296
- }
297
-
298
- cell.allPoints.push(pt);
299
-
300
- if (pt.data?.billboard?.[0]?.skipAggregation) {
301
- cell.skipPoints.push(pt);
302
- } else {
303
- const theme = this.groupByTheme ? pt.data?.billboard?.[0]?.theme : this.clusterTheme;
304
- if (!cell.groups.has(theme)) {
305
- cell.groups.set(theme, []);
306
- }
307
- cell.groups.get(theme)!.push(pt);
308
- }
309
- }
310
- }
311
-
312
- private _update() {
313
- if (!this.labelPool) return;
314
- this.labelPool.reset();
315
-
316
- if (this.debugCurrentGrids) this._clearDebugGrids();
317
-
318
- const effectiveThreshold =
319
- this.points.length < this.minGlobalPointCount ? Infinity : this.threshold;
320
-
321
- let labelCount = 0;
322
-
323
- const processCell = (levelIdx: number, lonIdx: number, latIdx: number) => {
324
- if (labelCount >= this.displayLimit) return;
325
- if (levelIdx < 0) return;
326
- // 当超过最大层级时,强制使用最大层级
327
- if (levelIdx >= this.levels.length) {
328
- levelIdx = this.levels.length - 1;
329
- }
330
- const level = this.levels[levelIdx];
331
- const tileLevel = level.level;
332
- const grid = this.gridLayers.get(tileLevel);
333
- if (!grid) return;
334
- const key = `${lonIdx}_${latIdx}`;
335
- const cell = grid.get(key);
336
- if (!cell) return;
337
-
338
- const rect = this.tilingScheme.tileXYToRectangle(lonIdx, latIdx, tileLevel);
339
- const west = this.Cesium.Math.toDegrees(rect.west);
340
- const south = this.Cesium.Math.toDegrees(rect.south);
341
- const east = this.Cesium.Math.toDegrees(rect.east);
342
- const north = this.Cesium.Math.toDegrees(rect.north);
343
- const centerLon = (west + east) / 2;
344
- const centerLat = (south + north) / 2;
345
-
346
- for (const p of cell.skipPoints) {
347
- if (p.data?.show === false) continue;
348
- if (labelCount >= this.displayLimit) break;
349
- this.labelPool.add(p.data, {
350
- id: `point-${p.id}`,
351
- lon: p.lon,
352
- lat: p.lat,
353
- height: p.height,
354
- theme: p.data?.billboard?.[0]?.theme || this.pointTheme,
355
- style: p.style,
356
- });
357
- labelCount++;
358
- }
359
-
360
- if (labelCount >= this.displayLimit) {
361
- if (this.debugCurrentGrids) {
362
- this._drawDebugGrid(west, south, east, north, key);
363
- }
364
- return;
365
- }
366
-
367
- for (const [groupKey, rawGroupPoints] of cell.groups) {
368
- const groupPoints = rawGroupPoints.filter((p: PointData) => p.data?.show !== false);
369
- if (groupPoints.length === 0) continue;
370
-
371
- let clusterLon = centerLon;
372
- let clusterLat = centerLat;
373
- if (this.centralPointMode == 'firstPoint') {
374
- clusterLon = groupPoints[0]?.lon || 0;
375
- clusterLat = groupPoints[0]?.lat || 0;
376
- }
377
-
378
- if (groupPoints.length < effectiveThreshold) {
379
- for (const p of groupPoints) {
380
- if (labelCount >= this.displayLimit) break;
381
- this.labelPool.add(p.data, {
382
- id: `point-${p.id}`,
383
- lon: p.lon,
384
- lat: p.lat,
385
- height: p.height,
386
- theme: p.data?.billboard?.[0]?.theme || this.pointTheme,
387
- style: p.style,
388
- });
389
- labelCount++;
390
- }
391
- } else {
392
- if (labelCount >= this.displayLimit) break;
393
- const customClusterTheme = groupPoints[0]?.data?.billboard?.[0]?.theme;
394
- const finalTheme = customClusterTheme || this.clusterTheme;
395
- const clusterId = this.groupByTheme
396
- ? `cluster-${levelIdx}-${lonIdx}-${latIdx}-${groupKey}`
397
- : `cluster-${levelIdx}-${lonIdx}-${latIdx}`;
398
- this.labelPool.add(
399
- {
400
- id: clusterId,
401
- billboard: groupPoints[0]?.data?.billboard || [],
402
- count: groupPoints.length,
403
- gridKey: key,
404
- points: groupPoints,
405
- aggregationGroup: groupKey,
406
- },
407
- {
408
- id: clusterId,
409
- lon: clusterLon,
410
- lat: clusterLat,
411
- theme: finalTheme,
412
- },
413
- );
414
- labelCount++;
415
- }
416
- }
417
-
418
- if (this.debugCurrentGrids) {
419
- const tileLevelForDebug = this.levels[levelIdx].level;
420
- this._drawDebugGrid(
421
- west,
422
- south,
423
- east,
424
- north,
425
- `L:${tileLevelForDebug} X:${lonIdx} Y:${latIdx}`,
426
- );
427
- }
428
- };
429
-
430
- try {
431
- const globe = this.viewer.scene && this.viewer.scene.globe;
432
- const surface = globe && (globe as any)._surface;
433
- let tiles: any[] | undefined;
434
- if (surface) {
435
- tiles =
436
- (surface as any)._tilesToRender || (surface as any)._tilesToRenderByTextureCount;
437
- }
438
- if (!tiles || tiles.length === 0) {
439
- this.labelPool.cleanup();
440
- if (this.points.length > 0 && this._tilesRetryCount < this._tilesRetryMax) {
441
- this._tilesRetryCount++;
442
- this._scheduleUpdate();
443
- }
444
- return;
445
- }
446
- this._tilesRetryCount = 0;
447
-
448
- const visited = new Set<string>();
449
- for (const t of tiles) {
450
- const rect = t.rectangle;
451
- const tileLevel = t._level ?? t.level;
452
- if (!rect || typeof tileLevel !== 'number') continue;
453
-
454
- const levelIdx = this.levelIndexByTileLevel.get(tileLevel);
455
- if (levelIdx === undefined) continue;
456
-
457
- const tileX = (t as any)._x ?? (t as any).x;
458
- const tileY = (t as any)._y ?? (t as any).y;
459
-
460
- if (typeof tileX === 'number' && typeof tileY === 'number') {
461
- const key = `${tileLevel}_${tileX}_${tileY}`;
462
- if (visited.has(key)) continue;
463
- visited.add(key);
464
- processCell(levelIdx, tileX, tileY);
465
- continue;
466
- }
467
-
468
- const level = this.levels[levelIdx];
469
- const size = level.size;
470
- const tileWestDeg = this.Cesium.Math.toDegrees(rect.west);
471
- const tileEastDeg = this.Cesium.Math.toDegrees(rect.east);
472
- const tileSouthDeg = this.Cesium.Math.toDegrees(rect.south);
473
- const tileNorthDeg = this.Cesium.Math.toDegrees(rect.north);
474
-
475
- const westIdx = Math.floor((tileWestDeg - -180) / size);
476
- const eastIdx = Math.floor((tileEastDeg - -180) / size);
477
- const southIdx = Math.floor((tileSouthDeg - -90) / size);
478
- const northIdx = Math.floor((tileNorthDeg - -90) / size);
479
-
480
- for (let lonIdx = westIdx; lonIdx <= eastIdx; lonIdx++) {
481
- for (let latIdx = southIdx; latIdx <= northIdx; latIdx++) {
482
- const key = `${tileLevel}_${lonIdx}_${latIdx}`;
483
- if (visited.has(key)) continue;
484
- visited.add(key);
485
- processCell(levelIdx, lonIdx, latIdx);
486
- }
487
- }
488
- }
489
- } catch (e) {
490
- this.labelPool.cleanup();
491
- return;
492
- }
493
- this.labelPool.cleanup();
494
- }
495
-
496
- refresh() {
497
- this._update();
498
- }
499
-
500
- private _drawDebugGrid(
501
- west: number,
502
- south: number,
503
- east: number,
504
- north: number,
505
- text: string,
506
- ) {
507
- const rect = this.Cesium.Rectangle.fromDegrees(west, south, east, north);
508
- const entity = this.viewer.entities.add({
509
- rectangle: {
510
- coordinates: rect,
511
- material: this.Cesium.Color.YELLOW.withAlpha(0.2),
512
- outline: true,
513
- outlineColor: this.Cesium.Color.RED,
514
- height: 0,
515
- },
516
- label: {
517
- text,
518
- font: '14px sans-serif',
519
- fillColor: this.Cesium.Color.BLACK,
520
- outlineColor: this.Cesium.Color.WHITE,
521
- outlineWidth: 2,
522
- style: this.Cesium.LabelStyle.FILL_AND_OUTLINE,
523
- verticalOrigin: this.Cesium.VerticalOrigin.CENTER,
524
- horizontalOrigin: this.Cesium.HorizontalOrigin.CENTER,
525
- },
526
- });
527
- this.debugGrids.push(entity);
528
- }
529
-
530
- private _clearDebugGrids() {
531
- for (const e of this.debugGrids) {
532
- this.viewer.entities.remove(e);
533
- }
534
- this.debugGrids = [];
535
- }
536
-
537
- public destroy() {
538
- this.viewer.camera.changed.removeEventListener(this._updateFn);
539
- if (this._updateTimer !== null) {
540
- clearTimeout(this._updateTimer);
541
- this._updateTimer = null;
542
- }
543
- this.labelPool.reset();
544
- this._clearDebugGrids();
545
- }
546
- }