@vcmap/core 6.1.11 → 6.2.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (798) hide show
  1. package/README.md +8 -6
  2. package/build/buildShader.js +61 -0
  3. package/build/postinstall.js +6 -3
  4. package/dist/cesium.d.ts +52 -18
  5. package/dist/geojson.d.ts +3 -2
  6. package/dist/index.d.ts +239 -109
  7. package/dist/index.js +78 -63
  8. package/dist/index.js.map +1 -1
  9. package/dist/ol.d.ts +27 -29
  10. package/dist/src/category/category.d.ts +3 -2
  11. package/dist/src/category/category.js +2 -2
  12. package/dist/src/category/category.js.map +1 -1
  13. package/dist/src/category/categoryCollection.d.ts +3 -2
  14. package/dist/src/category/categoryCollection.js.map +1 -1
  15. package/dist/src/cesium/cesium3DTileFeature.d.ts +2 -1
  16. package/dist/src/cesium/cesium3DTileFeature.js +2 -3
  17. package/dist/src/cesium/cesium3DTileFeature.js.map +1 -1
  18. package/dist/src/cesium/cesiumVcsCameraPrimitive.js +6 -5
  19. package/dist/src/cesium/cesiumVcsCameraPrimitive.js.map +1 -1
  20. package/dist/src/cesium/entity.js +1 -1
  21. package/dist/src/cesium/entity.js.map +1 -1
  22. package/dist/src/classRegistry.d.ts +4 -4
  23. package/dist/src/classRegistry.js +2 -0
  24. package/dist/src/classRegistry.js.map +1 -1
  25. package/dist/src/featureProvider/abstractFeatureProvider.d.ts +2 -1
  26. package/dist/src/featureProvider/abstractFeatureProvider.js +8 -2
  27. package/dist/src/featureProvider/abstractFeatureProvider.js.map +1 -1
  28. package/dist/src/featureProvider/wmsFeatureProvider.d.ts +38 -10
  29. package/dist/src/featureProvider/wmsFeatureProvider.js +69 -15
  30. package/dist/src/featureProvider/wmsFeatureProvider.js.map +1 -1
  31. package/dist/src/interaction/abstractInteraction.d.ts +5 -4
  32. package/dist/src/interaction/abstractInteraction.js +1 -1
  33. package/dist/src/interaction/abstractInteraction.js.map +1 -1
  34. package/dist/src/interaction/coordinateAtPixel.js +23 -0
  35. package/dist/src/interaction/coordinateAtPixel.js.map +1 -1
  36. package/dist/src/interaction/eventHandler.d.ts +4 -3
  37. package/dist/src/interaction/eventHandler.js +1 -1
  38. package/dist/src/interaction/eventHandler.js.map +1 -1
  39. package/dist/src/interaction/featureAtPixelInteraction.d.ts +5 -0
  40. package/dist/src/interaction/featureAtPixelInteraction.js +7 -4
  41. package/dist/src/interaction/featureAtPixelInteraction.js.map +1 -1
  42. package/dist/src/interaction/featureProviderInteraction.js.map +1 -1
  43. package/dist/src/interaction/interactionType.js +1 -0
  44. package/dist/src/interaction/interactionType.js.map +1 -1
  45. package/dist/src/interaction/panoramaFeatureHighlight.d.ts +29 -0
  46. package/dist/src/interaction/panoramaFeatureHighlight.js +88 -0
  47. package/dist/src/interaction/panoramaFeatureHighlight.js.map +1 -0
  48. package/dist/src/interaction/panoramaImageSelection.d.ts +8 -0
  49. package/dist/src/interaction/panoramaImageSelection.js +29 -0
  50. package/dist/src/interaction/panoramaImageSelection.js.map +1 -0
  51. package/dist/src/layer/cesium/cesiumTilesetCesiumImpl.d.ts +6 -5
  52. package/dist/src/layer/cesium/cesiumTilesetCesiumImpl.js +2 -2
  53. package/dist/src/layer/cesium/cesiumTilesetCesiumImpl.js.map +1 -1
  54. package/dist/src/layer/cesium/dataSourceCesiumImpl.d.ts +3 -2
  55. package/dist/src/layer/cesium/dataSourceCesiumImpl.js.map +1 -1
  56. package/dist/src/layer/cesium/resourceHelper.js +0 -1
  57. package/dist/src/layer/cesium/resourceHelper.js.map +1 -1
  58. package/dist/src/layer/cesium/sourceVectorContextSync.d.ts +2 -2
  59. package/dist/src/layer/cesium/sourceVectorContextSync.js +1 -1
  60. package/dist/src/layer/cesium/sourceVectorContextSync.js.map +1 -1
  61. package/dist/src/layer/cesium/terrainCesiumImpl.d.ts +1 -1
  62. package/dist/src/layer/cesium/vcsTile/vcsChildTile.d.ts +3 -2
  63. package/dist/src/layer/cesium/vcsTile/vcsChildTile.js +1 -1
  64. package/dist/src/layer/cesium/vcsTile/vcsChildTile.js.map +1 -1
  65. package/dist/src/layer/cesium/vcsTile/vcsDebugTile.d.ts +3 -2
  66. package/dist/src/layer/cesium/vcsTile/vcsDebugTile.js +1 -1
  67. package/dist/src/layer/cesium/vcsTile/vcsDebugTile.js.map +1 -1
  68. package/dist/src/layer/cesium/vcsTile/vcsNoDataTile.d.ts +3 -2
  69. package/dist/src/layer/cesium/vcsTile/vcsNoDataTile.js +1 -1
  70. package/dist/src/layer/cesium/vcsTile/vcsNoDataTile.js.map +1 -1
  71. package/dist/src/layer/cesium/vcsTile/vcsQuadtreeTileProvider.d.ts +6 -5
  72. package/dist/src/layer/cesium/vcsTile/vcsQuadtreeTileProvider.js +4 -4
  73. package/dist/src/layer/cesium/vcsTile/vcsQuadtreeTileProvider.js.map +1 -1
  74. package/dist/src/layer/cesium/vcsTile/vcsTileHelpers.d.ts +6 -5
  75. package/dist/src/layer/cesium/vcsTile/vcsTileHelpers.js.map +1 -1
  76. package/dist/src/layer/cesium/vcsTile/vcsVectorTile.d.ts +3 -2
  77. package/dist/src/layer/cesium/vcsTile/vcsVectorTile.js +1 -1
  78. package/dist/src/layer/cesium/vcsTile/vcsVectorTile.js.map +1 -1
  79. package/dist/src/layer/cesium/vectorCesiumImpl.js +1 -1
  80. package/dist/src/layer/cesium/vectorCesiumImpl.js.map +1 -1
  81. package/dist/src/layer/cesium/vectorContext.d.ts +9 -8
  82. package/dist/src/layer/cesium/vectorContext.js +6 -5
  83. package/dist/src/layer/cesium/vectorContext.js.map +1 -1
  84. package/dist/src/layer/cesium/vectorRasterTileCesiumImpl.d.ts +1 -1
  85. package/dist/src/layer/cesium/vectorRasterTileCesiumImpl.js +1 -1
  86. package/dist/src/layer/cesium/vectorRasterTileCesiumImpl.js.map +1 -1
  87. package/dist/src/layer/cesium/vectorTileCesiumImpl.d.ts +3 -3
  88. package/dist/src/layer/cesium/vectorTileCesiumImpl.js +2 -1
  89. package/dist/src/layer/cesium/vectorTileCesiumImpl.js.map +1 -1
  90. package/dist/src/layer/cesium/vectorTileImageryProvider.d.ts +1 -1
  91. package/dist/src/layer/cesium/vectorTileImageryProvider.js +3 -2
  92. package/dist/src/layer/cesium/vectorTileImageryProvider.js.map +1 -1
  93. package/dist/src/layer/cesium/wmsCesiumImpl.js +3 -2
  94. package/dist/src/layer/cesium/wmsCesiumImpl.js.map +1 -1
  95. package/dist/src/layer/cesiumTilesetLayer.d.ts +6 -4
  96. package/dist/src/layer/cesiumTilesetLayer.js.map +1 -1
  97. package/dist/src/layer/czmlLayer.js.map +1 -1
  98. package/dist/src/layer/dataSourceLayer.d.ts +4 -2
  99. package/dist/src/layer/dataSourceLayer.js +1 -1
  100. package/dist/src/layer/dataSourceLayer.js.map +1 -1
  101. package/dist/src/layer/featureLayer.d.ts +4 -2
  102. package/dist/src/layer/featureLayer.js.map +1 -1
  103. package/dist/src/layer/featureStoreFeatureVisibility.d.ts +2 -1
  104. package/dist/src/layer/featureStoreFeatureVisibility.js.map +1 -1
  105. package/dist/src/layer/featureStoreLayer.d.ts +8 -6
  106. package/dist/src/layer/featureStoreLayer.js +2 -2
  107. package/dist/src/layer/featureStoreLayer.js.map +1 -1
  108. package/dist/src/layer/featureStoreLayerChanges.d.ts +1 -1
  109. package/dist/src/layer/featureStoreLayerChanges.js.map +1 -1
  110. package/dist/src/layer/featureVisibility.d.ts +2 -1
  111. package/dist/src/layer/featureVisibility.js.map +1 -1
  112. package/dist/src/layer/flatGeobufHelpers.d.ts +18 -3
  113. package/dist/src/layer/flatGeobufHelpers.js +21 -1
  114. package/dist/src/layer/flatGeobufHelpers.js.map +1 -1
  115. package/dist/src/layer/flatGeobufLayer.d.ts +2 -1
  116. package/dist/src/layer/flatGeobufLayer.js.map +1 -1
  117. package/dist/src/layer/geojsonHelpers.d.ts +1 -1
  118. package/dist/src/layer/geojsonHelpers.js +8 -6
  119. package/dist/src/layer/geojsonHelpers.js.map +1 -1
  120. package/dist/src/layer/geojsonLayer.d.ts +2 -1
  121. package/dist/src/layer/geojsonLayer.js +3 -1
  122. package/dist/src/layer/geojsonLayer.js.map +1 -1
  123. package/dist/src/layer/globalHider.d.ts +1 -1
  124. package/dist/src/layer/globalHider.js.map +1 -1
  125. package/dist/src/layer/layer.d.ts +9 -7
  126. package/dist/src/layer/layer.js +1 -1
  127. package/dist/src/layer/layer.js.map +1 -1
  128. package/dist/src/layer/oblique/obliqueHelpers.js +2 -0
  129. package/dist/src/layer/oblique/obliqueHelpers.js.map +1 -1
  130. package/dist/src/layer/oblique/sourceObliqueSync.d.ts +1 -1
  131. package/dist/src/layer/oblique/sourceObliqueSync.js +7 -7
  132. package/dist/src/layer/oblique/sourceObliqueSync.js.map +1 -1
  133. package/dist/src/layer/oblique/vectorObliqueImpl.d.ts +2 -2
  134. package/dist/src/layer/oblique/vectorObliqueImpl.js +3 -3
  135. package/dist/src/layer/oblique/vectorObliqueImpl.js.map +1 -1
  136. package/dist/src/layer/openStreetMapLayer.d.ts +5 -4
  137. package/dist/src/layer/openStreetMapLayer.js +1 -1
  138. package/dist/src/layer/openStreetMapLayer.js.map +1 -1
  139. package/dist/src/layer/openlayers/layerOpenlayersImpl.d.ts +1 -1
  140. package/dist/src/layer/openlayers/layerOpenlayersImpl.js +0 -1
  141. package/dist/src/layer/openlayers/layerOpenlayersImpl.js.map +1 -1
  142. package/dist/src/layer/openlayers/loadFunctionHelpers.js +0 -1
  143. package/dist/src/layer/openlayers/loadFunctionHelpers.js.map +1 -1
  144. package/dist/src/layer/openlayers/tileDebugOpenlayersImpl.d.ts +1 -1
  145. package/dist/src/layer/openlayers/tileDebugOpenlayersImpl.js +2 -2
  146. package/dist/src/layer/openlayers/tileDebugOpenlayersImpl.js.map +1 -1
  147. package/dist/src/layer/openlayers/vectorOpenlayersImpl.js +1 -1
  148. package/dist/src/layer/openlayers/vectorOpenlayersImpl.js.map +1 -1
  149. package/dist/src/layer/openlayers/vectorTileOpenlayersImpl.js +1 -1
  150. package/dist/src/layer/openlayers/vectorTileOpenlayersImpl.js.map +1 -1
  151. package/dist/src/layer/openlayers/wmsOpenlayersImpl.d.ts +1 -1
  152. package/dist/src/layer/panorama/panoramaDatasetPanoramaImpl.d.ts +13 -0
  153. package/dist/src/layer/panorama/panoramaDatasetPanoramaImpl.js +34 -0
  154. package/dist/src/layer/panorama/panoramaDatasetPanoramaImpl.js.map +1 -0
  155. package/dist/src/layer/panorama/vectorTilePanoramaImpl.d.ts +28 -0
  156. package/dist/src/layer/panorama/vectorTilePanoramaImpl.js +114 -0
  157. package/dist/src/layer/panorama/vectorTilePanoramaImpl.js.map +1 -0
  158. package/dist/src/layer/panoramaDatasetLayer.d.ts +54 -0
  159. package/dist/src/layer/panoramaDatasetLayer.js +201 -0
  160. package/dist/src/layer/panoramaDatasetLayer.js.map +1 -0
  161. package/dist/src/layer/pointCloudLayer.d.ts +8 -5
  162. package/dist/src/layer/pointCloudLayer.js +1 -1
  163. package/dist/src/layer/pointCloudLayer.js.map +1 -1
  164. package/dist/src/layer/rasterLayer.d.ts +6 -4
  165. package/dist/src/layer/rasterLayer.js.map +1 -1
  166. package/dist/src/layer/singleImageLayer.d.ts +3 -2
  167. package/dist/src/layer/singleImageLayer.js.map +1 -1
  168. package/dist/src/layer/terrainHelpers.d.ts +1 -1
  169. package/dist/src/layer/terrainHelpers.js.map +1 -1
  170. package/dist/src/layer/terrainLayer.d.ts +3 -2
  171. package/dist/src/layer/terrainLayer.js.map +1 -1
  172. package/dist/src/layer/tileLoadedHelper.d.ts +2 -2
  173. package/dist/src/layer/tileProvider/flatGeobufTileProvider.d.ts +7 -4
  174. package/dist/src/layer/tileProvider/flatGeobufTileProvider.js +10 -2
  175. package/dist/src/layer/tileProvider/flatGeobufTileProvider.js.map +1 -1
  176. package/dist/src/layer/tileProvider/mvtTileProvider.d.ts +3 -2
  177. package/dist/src/layer/tileProvider/mvtTileProvider.js +3 -3
  178. package/dist/src/layer/tileProvider/mvtTileProvider.js.map +1 -1
  179. package/dist/src/layer/tileProvider/staticFeatureTileProvider.d.ts +3 -2
  180. package/dist/src/layer/tileProvider/staticFeatureTileProvider.js +0 -1
  181. package/dist/src/layer/tileProvider/staticFeatureTileProvider.js.map +1 -1
  182. package/dist/src/layer/tileProvider/staticGeojsonTileProvider.d.ts +2 -1
  183. package/dist/src/layer/tileProvider/staticGeojsonTileProvider.js +0 -1
  184. package/dist/src/layer/tileProvider/staticGeojsonTileProvider.js.map +1 -1
  185. package/dist/src/layer/tileProvider/tileProvider.d.ts +3 -2
  186. package/dist/src/layer/tileProvider/tileProvider.js +10 -3
  187. package/dist/src/layer/tileProvider/tileProvider.js.map +1 -1
  188. package/dist/src/layer/tileProvider/urlTemplateTileProvider.d.ts +2 -1
  189. package/dist/src/layer/tileProvider/urlTemplateTileProvider.js.map +1 -1
  190. package/dist/src/layer/tmsLayer.d.ts +3 -2
  191. package/dist/src/layer/tmsLayer.js +1 -1
  192. package/dist/src/layer/tmsLayer.js.map +1 -1
  193. package/dist/src/layer/vectorHelpers.d.ts +2 -2
  194. package/dist/src/layer/vectorHelpers.js +1 -1
  195. package/dist/src/layer/vectorHelpers.js.map +1 -1
  196. package/dist/src/layer/vectorLayer.d.ts +12 -8
  197. package/dist/src/layer/vectorLayer.js +1 -1
  198. package/dist/src/layer/vectorLayer.js.map +1 -1
  199. package/dist/src/layer/vectorProperties.d.ts +3 -3
  200. package/dist/src/layer/vectorProperties.js +4 -0
  201. package/dist/src/layer/vectorProperties.js.map +1 -1
  202. package/dist/src/layer/vectorSymbols.d.ts +8 -0
  203. package/dist/src/layer/vectorSymbols.js +8 -0
  204. package/dist/src/layer/vectorSymbols.js.map +1 -1
  205. package/dist/src/layer/vectorTileLayer.d.ts +17 -10
  206. package/dist/src/layer/vectorTileLayer.js +8 -1
  207. package/dist/src/layer/vectorTileLayer.js.map +1 -1
  208. package/dist/src/layer/wfsLayer.d.ts +2 -1
  209. package/dist/src/layer/wfsLayer.js +6 -4
  210. package/dist/src/layer/wfsLayer.js.map +1 -1
  211. package/dist/src/layer/wmsHelpers.js +2 -2
  212. package/dist/src/layer/wmsHelpers.js.map +1 -1
  213. package/dist/src/layer/wmsLayer.d.ts +4 -3
  214. package/dist/src/layer/wmsLayer.js.map +1 -1
  215. package/dist/src/layer/wmtsLayer.d.ts +3 -2
  216. package/dist/src/layer/wmtsLayer.js +1 -1
  217. package/dist/src/layer/wmtsLayer.js.map +1 -1
  218. package/dist/src/map/baseOLMap.d.ts +1 -1
  219. package/dist/src/map/baseOLMap.js +17 -8
  220. package/dist/src/map/baseOLMap.js.map +1 -1
  221. package/dist/src/map/cameraLimiter.d.ts +2 -1
  222. package/dist/src/map/cameraLimiter.js.map +1 -1
  223. package/dist/src/map/cesiumMap.d.ts +5 -7
  224. package/dist/src/map/cesiumMap.js +27 -186
  225. package/dist/src/map/cesiumMap.js.map +1 -1
  226. package/dist/src/map/cesiumMapHelpers.d.ts +7 -0
  227. package/dist/src/map/cesiumMapHelpers.js +144 -0
  228. package/dist/src/map/cesiumMapHelpers.js.map +1 -0
  229. package/dist/src/map/navigation/cameraHelper.d.ts +3 -2
  230. package/dist/src/map/navigation/cameraHelper.js.map +1 -1
  231. package/dist/src/map/navigation/cesiumNavigation.d.ts +4 -3
  232. package/dist/src/map/navigation/cesiumNavigation.js.map +1 -1
  233. package/dist/src/map/navigation/controller/controller.d.ts +1 -1
  234. package/dist/src/map/navigation/controller/controller.js +2 -2
  235. package/dist/src/map/navigation/controller/controller.js.map +1 -1
  236. package/dist/src/map/navigation/controller/keyboardController.d.ts +3 -2
  237. package/dist/src/map/navigation/controller/keyboardController.js +4 -2
  238. package/dist/src/map/navigation/controller/keyboardController.js.map +1 -1
  239. package/dist/src/map/navigation/easingHelper.d.ts +1 -1
  240. package/dist/src/map/navigation/easingHelper.js +1 -1
  241. package/dist/src/map/navigation/easingHelper.js.map +1 -1
  242. package/dist/src/map/navigation/navigation.d.ts +6 -6
  243. package/dist/src/map/navigation/navigation.js +6 -2
  244. package/dist/src/map/navigation/navigation.js.map +1 -1
  245. package/dist/src/map/navigation/navigationImpl.d.ts +2 -2
  246. package/dist/src/map/navigation/obliqueNavigation.d.ts +4 -3
  247. package/dist/src/map/navigation/obliqueNavigation.js +3 -1
  248. package/dist/src/map/navigation/obliqueNavigation.js.map +1 -1
  249. package/dist/src/map/navigation/openlayersNavigation.d.ts +4 -3
  250. package/dist/src/map/navigation/openlayersNavigation.js.map +1 -1
  251. package/dist/src/map/navigation/viewHelper.d.ts +2 -2
  252. package/dist/src/map/navigation/viewHelper.js +0 -1
  253. package/dist/src/map/navigation/viewHelper.js.map +1 -1
  254. package/dist/src/map/obliqueMap.d.ts +3 -3
  255. package/dist/src/map/obliqueMap.js +1 -1
  256. package/dist/src/map/obliqueMap.js.map +1 -1
  257. package/dist/src/map/panoramaMap.d.ts +98 -0
  258. package/dist/src/map/panoramaMap.js +293 -0
  259. package/dist/src/map/panoramaMap.js.map +1 -0
  260. package/dist/src/map/vcsMap.d.ts +3 -3
  261. package/dist/src/map/vcsMap.js +17 -11
  262. package/dist/src/map/vcsMap.js.map +1 -1
  263. package/dist/src/moduleIdSymbol.js +0 -1
  264. package/dist/src/moduleIdSymbol.js.map +1 -1
  265. package/dist/src/oblique/defaultObliqueCollection.js +3 -1
  266. package/dist/src/oblique/defaultObliqueCollection.js.map +1 -1
  267. package/dist/src/oblique/helpers.d.ts +1 -1
  268. package/dist/src/oblique/helpers.js +1 -1
  269. package/dist/src/oblique/helpers.js.map +1 -1
  270. package/dist/src/oblique/obliqueCollection.d.ts +3 -2
  271. package/dist/src/oblique/obliqueCollection.js.map +1 -1
  272. package/dist/src/oblique/obliqueDataSet.d.ts +2 -1
  273. package/dist/src/oblique/obliqueDataSet.js.map +1 -1
  274. package/dist/src/oblique/obliqueImage.d.ts +1 -1
  275. package/dist/src/oblique/obliqueProvider.d.ts +1 -1
  276. package/dist/src/oblique/obliqueProvider.js.map +1 -1
  277. package/dist/src/oblique/obliqueView.js +1 -0
  278. package/dist/src/oblique/obliqueView.js.map +1 -1
  279. package/dist/src/oblique/parseImageJson.js +2 -3
  280. package/dist/src/oblique/parseImageJson.js.map +1 -1
  281. package/dist/src/ol/feature.js.map +1 -1
  282. package/dist/src/ol/geom/circle.js.map +1 -1
  283. package/dist/src/ol/render/canvas/canvasTileRenderer.js +0 -1
  284. package/dist/src/ol/render/canvas/canvasTileRenderer.js.map +1 -1
  285. package/dist/src/ol/source/ClusterEnhancedVectorSource.d.ts +1 -1
  286. package/dist/src/ol/source/VcsCluster.d.ts +3 -3
  287. package/dist/src/ol/source/VcsCluster.js.map +1 -1
  288. package/dist/src/overrideClassRegistry.d.ts +3 -3
  289. package/dist/src/overrideClassRegistry.js +1 -0
  290. package/dist/src/overrideClassRegistry.js.map +1 -1
  291. package/dist/src/panorama/fieldOfView.d.ts +57 -0
  292. package/dist/src/panorama/fieldOfView.js +135 -0
  293. package/dist/src/panorama/fieldOfView.js.map +1 -0
  294. package/dist/src/panorama/panoramaCameraController.d.ts +35 -0
  295. package/dist/src/panorama/panoramaCameraController.js +146 -0
  296. package/dist/src/panorama/panoramaCameraController.js.map +1 -0
  297. package/dist/src/panorama/panoramaImage.d.ts +135 -0
  298. package/dist/src/panorama/panoramaImage.js +269 -0
  299. package/dist/src/panorama/panoramaImage.js.map +1 -0
  300. package/dist/src/panorama/panoramaImageCache.d.ts +8 -0
  301. package/dist/src/panorama/panoramaImageCache.js +18 -0
  302. package/dist/src/panorama/panoramaImageCache.js.map +1 -0
  303. package/dist/src/panorama/panoramaImageView.d.ts +25 -0
  304. package/dist/src/panorama/panoramaImageView.js +331 -0
  305. package/dist/src/panorama/panoramaImageView.js.map +1 -0
  306. package/dist/src/panorama/panoramaTile.d.ts +19 -0
  307. package/dist/src/panorama/panoramaTile.js +57 -0
  308. package/dist/src/panorama/panoramaTile.js.map +1 -0
  309. package/dist/src/panorama/panoramaTileCache.d.ts +16 -0
  310. package/dist/src/panorama/panoramaTileCache.js +34 -0
  311. package/dist/src/panorama/panoramaTileCache.js.map +1 -0
  312. package/dist/src/panorama/panoramaTileCoordinate.d.ts +56 -0
  313. package/dist/src/panorama/panoramaTileCoordinate.js +110 -0
  314. package/dist/src/panorama/panoramaTileCoordinate.js.map +1 -0
  315. package/dist/src/panorama/panoramaTileMaterial.d.ts +102 -0
  316. package/dist/src/panorama/panoramaTileMaterial.js +225 -0
  317. package/dist/src/panorama/panoramaTileMaterial.js.map +1 -0
  318. package/dist/src/panorama/panoramaTileMaterialFS.shader.d.ts +2 -0
  319. package/dist/src/panorama/panoramaTileMaterialFS.shader.js +170 -0
  320. package/dist/src/panorama/panoramaTileMaterialFS.shader.js.map +1 -0
  321. package/dist/src/panorama/panoramaTilePrimitiveCollection.d.ts +31 -0
  322. package/dist/src/panorama/panoramaTilePrimitiveCollection.js +113 -0
  323. package/dist/src/panorama/panoramaTilePrimitiveCollection.js.map +1 -0
  324. package/dist/src/panorama/panoramaTileProvider.d.ts +67 -0
  325. package/dist/src/panorama/panoramaTileProvider.js +313 -0
  326. package/dist/src/panorama/panoramaTileProvider.js.map +1 -0
  327. package/dist/src/panorama/sphericalCoordinates.d.ts +20 -0
  328. package/dist/src/panorama/sphericalCoordinates.js +78 -0
  329. package/dist/src/panorama/sphericalCoordinates.js.map +1 -0
  330. package/dist/src/style/arrowStyle.d.ts +1 -1
  331. package/dist/src/style/arrowStyle.js.map +1 -1
  332. package/dist/src/style/declarativeStyleItem.d.ts +1 -1
  333. package/dist/src/style/declarativeStyleItem.js +12 -14
  334. package/dist/src/style/declarativeStyleItem.js.map +1 -1
  335. package/dist/src/style/styleFactory.d.ts +2 -2
  336. package/dist/src/style/styleFactory.js +1 -2
  337. package/dist/src/style/styleFactory.js.map +1 -1
  338. package/dist/src/style/styleHelpers.d.ts +2 -2
  339. package/dist/src/style/styleHelpers.js +6 -6
  340. package/dist/src/style/styleHelpers.js.map +1 -1
  341. package/dist/src/style/styleItem.d.ts +4 -2
  342. package/dist/src/style/styleItem.js +3 -1
  343. package/dist/src/style/styleItem.js.map +1 -1
  344. package/dist/src/style/vectorStyleItem.d.ts +7 -5
  345. package/dist/src/style/vectorStyleItem.js +9 -19
  346. package/dist/src/style/vectorStyleItem.js.map +1 -1
  347. package/dist/src/style/writeStyle.d.ts +2 -2
  348. package/dist/src/style/writeStyle.js.map +1 -1
  349. package/dist/src/util/clipping/clippingObject.js.map +1 -1
  350. package/dist/src/util/clipping/clippingObjectManager.js.map +1 -1
  351. package/dist/src/util/clipping/clippingPolygonHelper.d.ts +2 -1
  352. package/dist/src/util/clipping/clippingPolygonHelper.js.map +1 -1
  353. package/dist/src/util/clipping/clippingPolygonObject.d.ts +4 -3
  354. package/dist/src/util/clipping/clippingPolygonObject.js.map +1 -1
  355. package/dist/src/util/clipping/clippingPolygonObjectCollection.d.ts +3 -4
  356. package/dist/src/util/clipping/clippingPolygonObjectCollection.js +37 -11
  357. package/dist/src/util/clipping/clippingPolygonObjectCollection.js.map +1 -1
  358. package/dist/src/util/collection.js.map +1 -1
  359. package/dist/src/util/createAbsoluteFeature.d.ts +4 -0
  360. package/dist/src/util/createAbsoluteFeature.js +98 -0
  361. package/dist/src/util/createAbsoluteFeature.js.map +1 -0
  362. package/dist/src/util/displayQuality/displayQuality.d.ts +3 -5
  363. package/dist/src/util/displayQuality/displayQuality.js +4 -5
  364. package/dist/src/util/displayQuality/displayQuality.js.map +1 -1
  365. package/dist/src/util/editor/createFeatureSession.d.ts +4 -3
  366. package/dist/src/util/editor/createFeatureSession.js.map +1 -1
  367. package/dist/src/util/editor/editFeaturesSession.d.ts +2 -1
  368. package/dist/src/util/editor/editFeaturesSession.js +3 -1
  369. package/dist/src/util/editor/editFeaturesSession.js.map +1 -1
  370. package/dist/src/util/editor/editGeometrySession.d.ts +3 -2
  371. package/dist/src/util/editor/editGeometrySession.js.map +1 -1
  372. package/dist/src/util/editor/editorHelpers.d.ts +5 -4
  373. package/dist/src/util/editor/editorHelpers.js +4 -0
  374. package/dist/src/util/editor/editorHelpers.js.map +1 -1
  375. package/dist/src/util/editor/editorSessionHelpers.d.ts +3 -3
  376. package/dist/src/util/editor/editorSessionHelpers.js.map +1 -1
  377. package/dist/src/util/editor/interactions/createCircleInteraction.d.ts +2 -1
  378. package/dist/src/util/editor/interactions/createCircleInteraction.js.map +1 -1
  379. package/dist/src/util/editor/interactions/createLineStringInteraction.d.ts +3 -2
  380. package/dist/src/util/editor/interactions/createLineStringInteraction.js.map +1 -1
  381. package/dist/src/util/editor/interactions/createPointInteraction.d.ts +3 -2
  382. package/dist/src/util/editor/interactions/createPointInteraction.js.map +1 -1
  383. package/dist/src/util/editor/interactions/createPolygonInteraction.d.ts +3 -2
  384. package/dist/src/util/editor/interactions/createPolygonInteraction.js.map +1 -1
  385. package/dist/src/util/editor/interactions/creationSnapping.d.ts +2 -2
  386. package/dist/src/util/editor/interactions/creationSnapping.js +1 -1
  387. package/dist/src/util/editor/interactions/creationSnapping.js.map +1 -1
  388. package/dist/src/util/editor/interactions/editFeaturesMouseOverInteraction.d.ts +2 -1
  389. package/dist/src/util/editor/interactions/editFeaturesMouseOverInteraction.js.map +1 -1
  390. package/dist/src/util/editor/interactions/editGeometryMouseOverInteraction.d.ts +2 -1
  391. package/dist/src/util/editor/interactions/editGeometryMouseOverInteraction.js.map +1 -1
  392. package/dist/src/util/editor/interactions/ensureHandlerSelectionInteraction.d.ts +2 -1
  393. package/dist/src/util/editor/interactions/ensureHandlerSelectionInteraction.js.map +1 -1
  394. package/dist/src/util/editor/interactions/insertVertexInteraction.d.ts +3 -2
  395. package/dist/src/util/editor/interactions/insertVertexInteraction.js.map +1 -1
  396. package/dist/src/util/editor/interactions/layerSnapping.d.ts +4 -4
  397. package/dist/src/util/editor/interactions/layerSnapping.js +1 -1
  398. package/dist/src/util/editor/interactions/layerSnapping.js.map +1 -1
  399. package/dist/src/util/editor/interactions/mapInteractionController.d.ts +2 -1
  400. package/dist/src/util/editor/interactions/mapInteractionController.js +1 -0
  401. package/dist/src/util/editor/interactions/mapInteractionController.js.map +1 -1
  402. package/dist/src/util/editor/interactions/removeVertexInteraction.d.ts +3 -2
  403. package/dist/src/util/editor/interactions/removeVertexInteraction.js.map +1 -1
  404. package/dist/src/util/editor/interactions/rightClickInteraction.d.ts +2 -1
  405. package/dist/src/util/editor/interactions/rightClickInteraction.js.map +1 -1
  406. package/dist/src/util/editor/interactions/segmentLengthInteraction.d.ts +2 -1
  407. package/dist/src/util/editor/interactions/segmentLengthInteraction.js.map +1 -1
  408. package/dist/src/util/editor/interactions/selectFeatureMouseOverInteraction.d.ts +3 -2
  409. package/dist/src/util/editor/interactions/selectFeatureMouseOverInteraction.js +13 -13
  410. package/dist/src/util/editor/interactions/selectFeatureMouseOverInteraction.js.map +1 -1
  411. package/dist/src/util/editor/interactions/selectMultiFeatureInteraction.d.ts +3 -3
  412. package/dist/src/util/editor/interactions/selectMultiFeatureInteraction.js +1 -1
  413. package/dist/src/util/editor/interactions/selectMultiFeatureInteraction.js.map +1 -1
  414. package/dist/src/util/editor/interactions/selectSingleFeatureInteraction.d.ts +2 -1
  415. package/dist/src/util/editor/interactions/selectSingleFeatureInteraction.js +1 -1
  416. package/dist/src/util/editor/interactions/selectSingleFeatureInteraction.js.map +1 -1
  417. package/dist/src/util/editor/interactions/translateVertexInteraction.d.ts +3 -2
  418. package/dist/src/util/editor/interactions/translateVertexInteraction.js.map +1 -1
  419. package/dist/src/util/editor/interactions/translationSnapping.d.ts +2 -2
  420. package/dist/src/util/editor/interactions/translationSnapping.js +1 -1
  421. package/dist/src/util/editor/interactions/translationSnapping.js.map +1 -1
  422. package/dist/src/util/editor/selectFeaturesSession.d.ts +3 -2
  423. package/dist/src/util/editor/selectFeaturesSession.js +1 -1
  424. package/dist/src/util/editor/selectFeaturesSession.js.map +1 -1
  425. package/dist/src/util/editor/snappingHelpers.d.ts +3 -3
  426. package/dist/src/util/editor/snappingHelpers.js.map +1 -1
  427. package/dist/src/util/editor/transformation/create2DHandlers.d.ts +2 -1
  428. package/dist/src/util/editor/transformation/create2DHandlers.js.map +1 -1
  429. package/dist/src/util/editor/transformation/create3DHandlers.d.ts +3 -2
  430. package/dist/src/util/editor/transformation/create3DHandlers.js.map +1 -1
  431. package/dist/src/util/editor/transformation/extrudeInteraction.d.ts +3 -2
  432. package/dist/src/util/editor/transformation/extrudeInteraction.js +1 -1
  433. package/dist/src/util/editor/transformation/extrudeInteraction.js.map +1 -1
  434. package/dist/src/util/editor/transformation/rotateInteraction.d.ts +4 -2
  435. package/dist/src/util/editor/transformation/rotateInteraction.js +1 -1
  436. package/dist/src/util/editor/transformation/rotateInteraction.js.map +1 -1
  437. package/dist/src/util/editor/transformation/scaleInteraction.d.ts +3 -2
  438. package/dist/src/util/editor/transformation/scaleInteraction.js +1 -1
  439. package/dist/src/util/editor/transformation/scaleInteraction.js.map +1 -1
  440. package/dist/src/util/editor/transformation/transformationHandler.d.ts +2 -1
  441. package/dist/src/util/editor/transformation/transformationHandler.js +1 -1
  442. package/dist/src/util/editor/transformation/transformationHandler.js.map +1 -1
  443. package/dist/src/util/editor/transformation/translateInteraction.d.ts +3 -2
  444. package/dist/src/util/editor/transformation/translateInteraction.js +2 -2
  445. package/dist/src/util/editor/transformation/translateInteraction.js.map +1 -1
  446. package/dist/src/util/exclusiveManager.d.ts +1 -1
  447. package/dist/src/util/exclusiveManager.js.map +1 -1
  448. package/dist/src/util/featureconverter/arcToCesium.d.ts +1 -1
  449. package/dist/src/util/featureconverter/arcToCesium.js +1 -2
  450. package/dist/src/util/featureconverter/arcToCesium.js.map +1 -1
  451. package/dist/src/util/featureconverter/circleToCesium.d.ts +1 -1
  452. package/dist/src/util/featureconverter/circleToCesium.js +1 -1
  453. package/dist/src/util/featureconverter/circleToCesium.js.map +1 -1
  454. package/dist/src/util/featureconverter/clampedPrimitive.d.ts +2 -1
  455. package/dist/src/util/featureconverter/clampedPrimitive.js +0 -1
  456. package/dist/src/util/featureconverter/clampedPrimitive.js.map +1 -1
  457. package/dist/src/util/featureconverter/convert.d.ts +4 -3
  458. package/dist/src/util/featureconverter/convert.js +1 -1
  459. package/dist/src/util/featureconverter/convert.js.map +1 -1
  460. package/dist/src/util/featureconverter/extent3D.d.ts +2 -2
  461. package/dist/src/util/featureconverter/extent3D.js.map +1 -1
  462. package/dist/src/util/featureconverter/lineStringToCesium.d.ts +5 -5
  463. package/dist/src/util/featureconverter/lineStringToCesium.js +1 -2
  464. package/dist/src/util/featureconverter/lineStringToCesium.js.map +1 -1
  465. package/dist/src/util/featureconverter/pointHelpers.d.ts +6 -5
  466. package/dist/src/util/featureconverter/pointHelpers.js +2 -3
  467. package/dist/src/util/featureconverter/pointHelpers.js.map +1 -1
  468. package/dist/src/util/featureconverter/pointToCesium.d.ts +6 -11
  469. package/dist/src/util/featureconverter/pointToCesium.js +3 -20
  470. package/dist/src/util/featureconverter/pointToCesium.js.map +1 -1
  471. package/dist/src/util/featureconverter/polygonToCesium.d.ts +1 -1
  472. package/dist/src/util/featureconverter/polygonToCesium.js +1 -1
  473. package/dist/src/util/featureconverter/polygonToCesium.js.map +1 -1
  474. package/dist/src/util/featureconverter/storeyHelpers.d.ts +2 -2
  475. package/dist/src/util/featureconverter/vectorGeometryFactory.d.ts +2 -2
  476. package/dist/src/util/featureconverter/vectorGeometryFactory.js.map +1 -1
  477. package/dist/src/util/featureconverter/vectorHeightInfo.d.ts +8 -2
  478. package/dist/src/util/featureconverter/vectorHeightInfo.js +17 -0
  479. package/dist/src/util/featureconverter/vectorHeightInfo.js.map +1 -1
  480. package/dist/src/util/flight/flightAnchor.js +4 -3
  481. package/dist/src/util/flight/flightAnchor.js.map +1 -1
  482. package/dist/src/util/flight/flightCollection.d.ts +2 -2
  483. package/dist/src/util/flight/flightCollection.js.map +1 -1
  484. package/dist/src/util/flight/flightHelpers.d.ts +1 -1
  485. package/dist/src/util/flight/flightInstance.d.ts +3 -2
  486. package/dist/src/util/flight/flightInstance.js.map +1 -1
  487. package/dist/src/util/flight/flightPlayer.js +1 -1
  488. package/dist/src/util/flight/flightPlayer.js.map +1 -1
  489. package/dist/src/util/flight/flightVisualizer.d.ts +1 -1
  490. package/dist/src/util/flight/flightVisualizer.js.map +1 -1
  491. package/dist/src/util/geometryHelpers.d.ts +3 -5
  492. package/dist/src/util/geometryHelpers.js +0 -91
  493. package/dist/src/util/geometryHelpers.js.map +1 -1
  494. package/dist/src/util/hiddenObjects.d.ts +2 -2
  495. package/dist/src/util/hiddenObjects.js +0 -1
  496. package/dist/src/util/hiddenObjects.js.map +1 -1
  497. package/dist/src/util/indexedCollection.js.map +1 -1
  498. package/dist/src/util/isMobile.js +3 -2
  499. package/dist/src/util/isMobile.js.map +1 -1
  500. package/dist/src/util/layerCollection.d.ts +6 -1
  501. package/dist/src/util/layerCollection.js +5 -1
  502. package/dist/src/util/layerCollection.js.map +1 -1
  503. package/dist/src/util/locale.js +0 -1
  504. package/dist/src/util/locale.js.map +1 -1
  505. package/dist/src/util/mapCollection.d.ts +9 -4
  506. package/dist/src/util/mapCollection.js +67 -34
  507. package/dist/src/util/mapCollection.js.map +1 -1
  508. package/dist/src/util/overrideCollection.d.ts +1 -1
  509. package/dist/src/util/overrideCollection.js +3 -1
  510. package/dist/src/util/overrideCollection.js.map +1 -1
  511. package/dist/src/util/projection.d.ts +1 -1
  512. package/dist/src/util/projection.js +2 -2
  513. package/dist/src/util/projection.js.map +1 -1
  514. package/dist/src/util/renderScreenshot.d.ts +1 -1
  515. package/dist/src/util/rotation.d.ts +4 -3
  516. package/dist/src/util/rotation.js +1 -1
  517. package/dist/src/util/rotation.js.map +1 -1
  518. package/dist/src/util/urlHelpers.js +0 -1
  519. package/dist/src/util/urlHelpers.js.map +1 -1
  520. package/dist/src/util/vcsTemplate.js +2 -4
  521. package/dist/src/util/vcsTemplate.js.map +1 -1
  522. package/dist/src/util/viewpoint.d.ts +6 -2
  523. package/dist/src/util/viewpoint.js +11 -1
  524. package/dist/src/util/viewpoint.js.map +1 -1
  525. package/dist/src/vcsApp.d.ts +7 -6
  526. package/dist/src/vcsApp.js +20 -14
  527. package/dist/src/vcsApp.js.map +1 -1
  528. package/dist/src/vcsEvent.js.map +1 -1
  529. package/dist/src/vcsModuleHelpers.js +3 -3
  530. package/dist/src/vcsModuleHelpers.js.map +1 -1
  531. package/dist/src/vectorCluster/vectorClusterCesiumContext.d.ts +4 -4
  532. package/dist/src/vectorCluster/vectorClusterCesiumContext.js +1 -1
  533. package/dist/src/vectorCluster/vectorClusterCesiumContext.js.map +1 -1
  534. package/dist/src/vectorCluster/vectorClusterGroup.d.ts +9 -6
  535. package/dist/src/vectorCluster/vectorClusterGroup.js +17 -5
  536. package/dist/src/vectorCluster/vectorClusterGroup.js.map +1 -1
  537. package/dist/src/vectorCluster/vectorClusterGroupCesiumImpl.d.ts +2 -2
  538. package/dist/src/vectorCluster/vectorClusterGroupCesiumImpl.js +1 -1
  539. package/dist/src/vectorCluster/vectorClusterGroupCesiumImpl.js.map +1 -1
  540. package/dist/src/vectorCluster/vectorClusterGroupCollection.d.ts +1 -1
  541. package/dist/src/vectorCluster/vectorClusterGroupImpl.d.ts +5 -5
  542. package/dist/src/vectorCluster/vectorClusterGroupObliqueImpl.d.ts +2 -2
  543. package/dist/src/vectorCluster/vectorClusterGroupObliqueImpl.js +1 -1
  544. package/dist/src/vectorCluster/vectorClusterGroupObliqueImpl.js.map +1 -1
  545. package/dist/src/vectorCluster/vectorClusterGroupOpenlayersImpl.d.ts +2 -2
  546. package/dist/src/vectorCluster/vectorClusterStyleItem.d.ts +4 -3
  547. package/dist/src/vectorCluster/vectorClusterStyleItem.js.map +1 -1
  548. package/dist/src/vectorCluster/vectorClusterSymbols.js +0 -1
  549. package/dist/src/vectorCluster/vectorClusterSymbols.js.map +1 -1
  550. package/dist/src/workers/panoramaImageWorker.d.ts +1 -0
  551. package/dist/src/workers/panoramaImageWorker.js +34 -0
  552. package/dist/src/workers/panoramaImageWorker.js.map +1 -0
  553. package/dist/tests/data/panorama/badOrientation.tif +0 -0
  554. package/dist/tests/data/panorama/badPosition.tif +0 -0
  555. package/dist/tests/data/panorama/lowOverview.tif +0 -0
  556. package/dist/tests/data/panorama/noVersionDepth.tif +0 -0
  557. package/dist/tests/data/panorama/noVersionRgb.tif +0 -0
  558. package/dist/tests/data/panorama/testDepthGeotiff.tif +0 -0
  559. package/dist/tests/data/panorama/testRgbGeotiff.tif +0 -0
  560. package/dist/tests/unit/helpers/cesiumHelpers.d.ts +6 -2
  561. package/dist/tests/unit/helpers/cesiumHelpers.js +15 -6
  562. package/dist/tests/unit/helpers/cesiumHelpers.js.map +1 -1
  563. package/dist/tests/unit/helpers/flatGeobufHelpers.d.ts +2 -0
  564. package/dist/tests/unit/helpers/flatGeobufHelpers.js +13 -0
  565. package/dist/tests/unit/helpers/flatGeobufHelpers.js.map +1 -0
  566. package/dist/tests/unit/helpers/helpers.d.ts +4 -0
  567. package/dist/tests/unit/helpers/helpers.js +26 -1
  568. package/dist/tests/unit/helpers/helpers.js.map +1 -1
  569. package/dist/tests/unit/helpers/panoramaHelpers.d.ts +30 -0
  570. package/dist/tests/unit/helpers/panoramaHelpers.js +76 -0
  571. package/dist/tests/unit/helpers/panoramaHelpers.js.map +1 -0
  572. package/index.ts +316 -279
  573. package/package.json +17 -49
  574. package/src/category/category.ts +9 -6
  575. package/src/category/categoryCollection.ts +4 -3
  576. package/src/cesium/cesium.d.ts +52 -18
  577. package/src/cesium/cesium3DTileFeature.ts +6 -7
  578. package/src/cesium/cesiumVcsCameraPrimitive.ts +6 -5
  579. package/src/cesium/entity.ts +1 -1
  580. package/src/classRegistry.ts +19 -18
  581. package/src/featureProvider/abstractFeatureProvider.ts +8 -4
  582. package/src/featureProvider/wmsFeatureProvider.ts +97 -23
  583. package/src/global.d.ts +6 -1
  584. package/src/interaction/abstractInteraction.ts +5 -5
  585. package/src/interaction/coordinateAtPixel.ts +37 -0
  586. package/src/interaction/eventHandler.ts +6 -8
  587. package/src/interaction/featureAtPixelInteraction.ts +24 -13
  588. package/src/interaction/featureProviderInteraction.ts +6 -7
  589. package/src/interaction/interactionType.ts +1 -0
  590. package/src/interaction/panoramaFeatureHighlight.ts +109 -0
  591. package/src/interaction/panoramaImageSelection.ts +37 -0
  592. package/src/layer/cesium/cesiumTilesetCesiumImpl.ts +14 -10
  593. package/src/layer/cesium/dataSourceCesiumImpl.ts +8 -6
  594. package/src/layer/cesium/resourceHelper.ts +0 -1
  595. package/src/layer/cesium/sourceVectorContextSync.ts +4 -4
  596. package/src/layer/cesium/terrainCesiumImpl.ts +1 -1
  597. package/src/layer/cesium/vcsTile/vcsChildTile.ts +3 -3
  598. package/src/layer/cesium/vcsTile/vcsDebugTile.ts +5 -10
  599. package/src/layer/cesium/vcsTile/vcsNoDataTile.ts +3 -3
  600. package/src/layer/cesium/vcsTile/vcsQuadtreeTileProvider.ts +19 -17
  601. package/src/layer/cesium/vcsTile/vcsTileHelpers.ts +10 -8
  602. package/src/layer/cesium/vcsTile/vcsVectorTile.ts +7 -11
  603. package/src/layer/cesium/vectorCesiumImpl.ts +2 -4
  604. package/src/layer/cesium/vectorContext.ts +32 -25
  605. package/src/layer/cesium/vectorRasterTileCesiumImpl.ts +2 -2
  606. package/src/layer/cesium/vectorTileCesiumImpl.ts +5 -7
  607. package/src/layer/cesium/vectorTileImageryProvider.ts +4 -4
  608. package/src/layer/cesium/wmsCesiumImpl.ts +3 -2
  609. package/src/layer/cesiumTilesetLayer.ts +6 -8
  610. package/src/layer/czmlLayer.ts +2 -2
  611. package/src/layer/dataSourceLayer.ts +4 -6
  612. package/src/layer/featureLayer.ts +6 -4
  613. package/src/layer/featureStoreFeatureVisibility.ts +2 -1
  614. package/src/layer/featureStoreLayer.ts +18 -14
  615. package/src/layer/featureStoreLayerChanges.ts +7 -7
  616. package/src/layer/featureVisibility.ts +3 -2
  617. package/src/layer/flatGeobufHelpers.ts +46 -6
  618. package/src/layer/flatGeobufLayer.ts +2 -1
  619. package/src/layer/geojsonHelpers.ts +11 -8
  620. package/src/layer/geojsonLayer.ts +8 -5
  621. package/src/layer/globalHider.ts +5 -3
  622. package/src/layer/layer.ts +14 -14
  623. package/src/layer/oblique/obliqueHelpers.ts +2 -0
  624. package/src/layer/oblique/sourceObliqueSync.ts +9 -9
  625. package/src/layer/oblique/vectorObliqueImpl.ts +6 -8
  626. package/src/layer/openStreetMapLayer.ts +7 -8
  627. package/src/layer/openlayers/layerOpenlayersImpl.ts +2 -3
  628. package/src/layer/openlayers/loadFunctionHelpers.ts +0 -1
  629. package/src/layer/openlayers/tileDebugOpenlayersImpl.ts +3 -3
  630. package/src/layer/openlayers/vectorOpenlayersImpl.ts +1 -1
  631. package/src/layer/openlayers/vectorTileOpenlayersImpl.ts +3 -3
  632. package/src/layer/openlayers/wmsOpenlayersImpl.ts +1 -1
  633. package/src/layer/panorama/panoramaDatasetPanoramaImpl.ts +49 -0
  634. package/src/layer/panorama/vectorTilePanoramaImpl.ts +163 -0
  635. package/src/layer/panoramaDatasetLayer.ts +283 -0
  636. package/src/layer/pointCloudLayer.ts +9 -12
  637. package/src/layer/rasterLayer.ts +6 -5
  638. package/src/layer/singleImageLayer.ts +3 -2
  639. package/src/layer/terrainHelpers.ts +2 -1
  640. package/src/layer/terrainLayer.ts +3 -2
  641. package/src/layer/tileLoadedHelper.ts +2 -2
  642. package/src/layer/tileProvider/flatGeobufTileProvider.ts +22 -10
  643. package/src/layer/tileProvider/mvtTileProvider.ts +4 -6
  644. package/src/layer/tileProvider/staticFeatureTileProvider.ts +3 -3
  645. package/src/layer/tileProvider/staticGeojsonTileProvider.ts +2 -2
  646. package/src/layer/tileProvider/tileProvider.ts +15 -10
  647. package/src/layer/tileProvider/urlTemplateTileProvider.ts +2 -1
  648. package/src/layer/tmsLayer.ts +3 -3
  649. package/src/layer/vectorHelpers.ts +3 -4
  650. package/src/layer/vectorLayer.ts +14 -15
  651. package/src/layer/vectorProperties.ts +27 -16
  652. package/src/layer/vectorSymbols.ts +10 -0
  653. package/src/layer/vectorTileLayer.ts +39 -29
  654. package/src/layer/wfsLayer.ts +10 -7
  655. package/src/layer/wmsHelpers.ts +2 -2
  656. package/src/layer/wmsLayer.ts +5 -5
  657. package/src/layer/wmtsLayer.ts +3 -3
  658. package/src/map/baseOLMap.ts +18 -9
  659. package/src/map/cameraLimiter.ts +1 -1
  660. package/src/map/cesiumMap.ts +49 -265
  661. package/src/map/cesiumMapHelpers.ts +219 -0
  662. package/src/map/navigation/cameraHelper.ts +2 -3
  663. package/src/map/navigation/cesiumNavigation.ts +5 -4
  664. package/src/map/navigation/controller/controller.ts +3 -6
  665. package/src/map/navigation/controller/keyboardController.ts +7 -7
  666. package/src/map/navigation/easingHelper.ts +2 -5
  667. package/src/map/navigation/navigation.ts +18 -14
  668. package/src/map/navigation/navigationImpl.ts +2 -2
  669. package/src/map/navigation/obliqueNavigation.ts +7 -6
  670. package/src/map/navigation/openlayersNavigation.ts +4 -3
  671. package/src/map/navigation/viewHelper.ts +2 -3
  672. package/src/map/obliqueMap.ts +7 -9
  673. package/src/map/panoramaMap.ts +410 -0
  674. package/src/map/vcsMap.ts +19 -16
  675. package/src/moduleIdSymbol.ts +0 -1
  676. package/src/oblique/defaultObliqueCollection.ts +1 -0
  677. package/src/oblique/helpers.ts +2 -4
  678. package/src/oblique/obliqueCollection.ts +7 -7
  679. package/src/oblique/obliqueDataSet.ts +7 -6
  680. package/src/oblique/obliqueImage.ts +1 -1
  681. package/src/oblique/obliqueProvider.ts +3 -3
  682. package/src/oblique/obliqueView.ts +1 -0
  683. package/src/oblique/parseImageJson.ts +11 -12
  684. package/src/ol/feature.ts +1 -0
  685. package/src/ol/geojson.d.ts +3 -2
  686. package/src/ol/geom/circle.ts +1 -1
  687. package/src/ol/ol.d.ts +27 -29
  688. package/src/ol/render/canvas/canvasTileRenderer.js +0 -1
  689. package/src/ol/source/ClusterEnhancedVectorSource.ts +1 -1
  690. package/src/ol/source/VcsCluster.ts +4 -4
  691. package/src/overrideClassRegistry.ts +14 -10
  692. package/src/panorama/fieldOfView.ts +254 -0
  693. package/src/panorama/panoramaCameraController.ts +206 -0
  694. package/src/panorama/panoramaImage.ts +531 -0
  695. package/src/panorama/panoramaImageCache.ts +19 -0
  696. package/src/panorama/panoramaImageView.ts +448 -0
  697. package/src/panorama/panoramaTile.ts +89 -0
  698. package/src/panorama/panoramaTileCache.ts +40 -0
  699. package/src/panorama/panoramaTileCoordinate.ts +166 -0
  700. package/src/panorama/panoramaTileMaterial.ts +323 -0
  701. package/src/panorama/panoramaTileMaterialFS.glsl +165 -0
  702. package/src/panorama/panoramaTilePrimitiveCollection.ts +158 -0
  703. package/src/panorama/panoramaTileProvider.ts +536 -0
  704. package/src/panorama/sphericalCoordinates.ts +96 -0
  705. package/src/style/arrowStyle.ts +1 -1
  706. package/src/style/declarativeStyleItem.ts +19 -19
  707. package/src/style/styleFactory.ts +6 -7
  708. package/src/style/styleHelpers.ts +9 -9
  709. package/src/style/styleItem.ts +8 -3
  710. package/src/style/vectorStyleItem.ts +24 -30
  711. package/src/style/writeStyle.ts +3 -2
  712. package/src/util/clipping/clippingObject.ts +2 -3
  713. package/src/util/clipping/clippingObjectManager.ts +3 -3
  714. package/src/util/clipping/clippingPolygonHelper.ts +1 -2
  715. package/src/util/clipping/clippingPolygonObject.ts +4 -3
  716. package/src/util/clipping/clippingPolygonObjectCollection.ts +43 -27
  717. package/src/util/collection.ts +1 -1
  718. package/src/util/createAbsoluteFeature.ts +155 -0
  719. package/src/util/displayQuality/displayQuality.ts +7 -8
  720. package/src/util/editor/createFeatureSession.ts +12 -12
  721. package/src/util/editor/editFeaturesSession.ts +6 -4
  722. package/src/util/editor/editGeometrySession.ts +4 -3
  723. package/src/util/editor/editorHelpers.ts +14 -12
  724. package/src/util/editor/editorSessionHelpers.ts +13 -12
  725. package/src/util/editor/interactions/createCircleInteraction.ts +2 -3
  726. package/src/util/editor/interactions/createLineStringInteraction.ts +3 -4
  727. package/src/util/editor/interactions/createPointInteraction.ts +3 -4
  728. package/src/util/editor/interactions/createPolygonInteraction.ts +3 -4
  729. package/src/util/editor/interactions/creationSnapping.ts +4 -7
  730. package/src/util/editor/interactions/editFeaturesMouseOverInteraction.ts +2 -3
  731. package/src/util/editor/interactions/editGeometryMouseOverInteraction.ts +4 -4
  732. package/src/util/editor/interactions/ensureHandlerSelectionInteraction.ts +2 -3
  733. package/src/util/editor/interactions/insertVertexInteraction.ts +3 -4
  734. package/src/util/editor/interactions/layerSnapping.ts +6 -8
  735. package/src/util/editor/interactions/mapInteractionController.ts +5 -3
  736. package/src/util/editor/interactions/removeVertexInteraction.ts +4 -4
  737. package/src/util/editor/interactions/rightClickInteraction.ts +2 -3
  738. package/src/util/editor/interactions/segmentLengthInteraction.ts +2 -3
  739. package/src/util/editor/interactions/selectFeatureMouseOverInteraction.ts +15 -14
  740. package/src/util/editor/interactions/selectMultiFeatureInteraction.ts +9 -9
  741. package/src/util/editor/interactions/selectSingleFeatureInteraction.ts +5 -7
  742. package/src/util/editor/interactions/translateVertexInteraction.ts +4 -4
  743. package/src/util/editor/interactions/translationSnapping.ts +4 -7
  744. package/src/util/editor/selectFeaturesSession.ts +5 -8
  745. package/src/util/editor/snappingHelpers.ts +21 -20
  746. package/src/util/editor/transformation/create2DHandlers.ts +1 -1
  747. package/src/util/editor/transformation/create3DHandlers.ts +3 -3
  748. package/src/util/editor/transformation/extrudeInteraction.ts +5 -5
  749. package/src/util/editor/transformation/rotateInteraction.ts +7 -6
  750. package/src/util/editor/transformation/scaleInteraction.ts +7 -6
  751. package/src/util/editor/transformation/transformationHandler.ts +3 -3
  752. package/src/util/editor/transformation/translateInteraction.ts +7 -11
  753. package/src/util/exclusiveManager.ts +1 -1
  754. package/src/util/featureconverter/arcToCesium.ts +4 -6
  755. package/src/util/featureconverter/circleToCesium.ts +3 -5
  756. package/src/util/featureconverter/clampedPrimitive.ts +6 -5
  757. package/src/util/featureconverter/convert.ts +22 -24
  758. package/src/util/featureconverter/extent3D.ts +3 -3
  759. package/src/util/featureconverter/lineStringToCesium.ts +7 -7
  760. package/src/util/featureconverter/pointHelpers.ts +10 -11
  761. package/src/util/featureconverter/pointToCesium.ts +18 -44
  762. package/src/util/featureconverter/polygonToCesium.ts +3 -5
  763. package/src/util/featureconverter/storeyHelpers.ts +2 -2
  764. package/src/util/featureconverter/vectorGeometryFactory.ts +41 -39
  765. package/src/util/featureconverter/vectorHeightInfo.ts +60 -30
  766. package/src/util/flight/flightAnchor.ts +4 -3
  767. package/src/util/flight/flightCollection.ts +3 -2
  768. package/src/util/flight/flightHelpers.ts +1 -1
  769. package/src/util/flight/flightInstance.ts +7 -4
  770. package/src/util/flight/flightPlayer.ts +2 -2
  771. package/src/util/flight/flightVisualizer.ts +2 -2
  772. package/src/util/geometryHelpers.ts +3 -135
  773. package/src/util/hiddenObjects.ts +3 -4
  774. package/src/util/indexedCollection.ts +1 -1
  775. package/src/util/isMobile.ts +2 -1
  776. package/src/util/layerCollection.ts +7 -2
  777. package/src/util/locale.ts +0 -1
  778. package/src/util/mapCollection.ts +104 -47
  779. package/src/util/overrideCollection.ts +4 -5
  780. package/src/util/projection.ts +3 -7
  781. package/src/util/renderScreenshot.ts +2 -2
  782. package/src/util/rotation.ts +3 -4
  783. package/src/util/urlHelpers.ts +0 -1
  784. package/src/util/vcsTemplate.ts +6 -5
  785. package/src/util/viewpoint.ts +20 -3
  786. package/src/vcsApp.ts +42 -42
  787. package/src/vcsEvent.ts +1 -1
  788. package/src/vcsModuleHelpers.ts +4 -3
  789. package/src/vectorCluster/vectorClusterCesiumContext.ts +8 -9
  790. package/src/vectorCluster/vectorClusterGroup.ts +26 -16
  791. package/src/vectorCluster/vectorClusterGroupCesiumImpl.ts +10 -10
  792. package/src/vectorCluster/vectorClusterGroupCollection.ts +1 -1
  793. package/src/vectorCluster/vectorClusterGroupImpl.ts +5 -5
  794. package/src/vectorCluster/vectorClusterGroupObliqueImpl.ts +4 -6
  795. package/src/vectorCluster/vectorClusterGroupOpenlayersImpl.ts +2 -2
  796. package/src/vectorCluster/vectorClusterStyleItem.ts +5 -3
  797. package/src/vectorCluster/vectorClusterSymbols.ts +0 -1
  798. package/src/workers/panoramaImageWorker.ts +50 -0
@@ -0,0 +1,96 @@
1
+ import { Cartesian3, Math as CesiumMath, Matrix4 } from '@vcmap-cesium/engine';
2
+
3
+ /**
4
+ * Spherical coordinates for a unit sphere where:
5
+ * The north pole is [0, 0],
6
+ * The south pole is [0, PI],
7
+ * And the valid range for phi is 0 to 2 * PI.
8
+ * There are two cartesian and two spherical coordinate systems in use:
9
+ * - The spheres spherical reference system.
10
+ * - The image spherical reference system, where x is inverted from the spheres reference system.
11
+ * - The spheres cartesian reference system, where the cartesian is transformed by the inverse model matrix of the image.
12
+ * - the global cartesian reference system.
13
+ *
14
+ * Spherical coordinates are orderd [phi, theta], where phi is the angle in the xy-plane (azimuth angle)
15
+ * from the x-axis and theta is the angle from the z-axis (polar angle) {@link https://en.wikipedia.org/wiki/Spherical_coordinate_system}
16
+ */
17
+
18
+ /**
19
+ * Wraps longitude around the globe (0 to 2 * PI) in image spherical coordinates.
20
+ * @param angle
21
+ */
22
+ function convertImageLongitudeAngle(angle: number): number {
23
+ const twoPI = CesiumMath.TWO_PI;
24
+
25
+ const simplified = angle - Math.floor(angle / twoPI) * twoPI;
26
+
27
+ if (simplified < 0) {
28
+ return simplified + twoPI;
29
+ }
30
+ if (simplified >= twoPI) {
31
+ return simplified - twoPI;
32
+ }
33
+
34
+ return simplified;
35
+ }
36
+
37
+ const scratchNormal = new Cartesian3();
38
+ /**
39
+ * Converts a Cartesian coordinate in the spheres reference system to spherical coordinates (of the spheres reference system).
40
+ * @param cartesian
41
+ * @returns The spherical coordinates [phi, theta].
42
+ */
43
+ function cartesianToSpherical(cartesian: Cartesian3): [number, number] {
44
+ Cartesian3.normalize(cartesian, scratchNormal);
45
+ const { x, y, z } = scratchNormal;
46
+ const phi = Math.atan2(y, x);
47
+ const theta = Math.acos(z);
48
+
49
+ return [phi, theta];
50
+ }
51
+
52
+ /**
53
+ * Converts a cartesian coordinate in the spheres reference system to spherical coordinates in the flipped image reference system.
54
+ * @param cartesian
55
+ * @returns The spherical coordinates [phi, theta].
56
+ */
57
+ export function cartesianToImageSpherical(
58
+ cartesian: Cartesian3,
59
+ ): [number, number] {
60
+ const spherical = cartesianToSpherical(cartesian);
61
+ return [convertImageLongitudeAngle(-spherical[0]), spherical[1]];
62
+ }
63
+
64
+ /**
65
+ * Converts image (flipped) spherical coordinates to cartesian coordinates in the spheres reference system.
66
+ * @param spherical - The spherical coordinates [phi, theta].
67
+ * @param [result] - The cartesian coordinate to write to.
68
+ * @returns
69
+ */
70
+ export function imageSphericalToCartesian(
71
+ spherical: [number, number],
72
+ result?: Cartesian3,
73
+ ): Cartesian3 {
74
+ const [phi, theta] = spherical;
75
+ const cartesian = result || new Cartesian3();
76
+ cartesian.x = Math.sin(theta) * Math.cos(-phi);
77
+ cartesian.y = Math.sin(theta) * Math.sin(-phi);
78
+ cartesian.z = Math.cos(theta);
79
+ return cartesian;
80
+ }
81
+
82
+ const scratchLocal = new Cartesian3();
83
+
84
+ /**
85
+ * Takes a global cesium cartesian in ECEF and converts it to spherical coordinates on the flipped image.
86
+ * @param cartesian
87
+ * @param invModelMatrix - the inverse model matrix of the image.
88
+ */
89
+ export function globalCartesianToImageSpherical(
90
+ cartesian: Cartesian3,
91
+ invModelMatrix: Matrix4,
92
+ ): [number, number] {
93
+ Matrix4.multiplyByPoint(invModelMatrix, cartesian, scratchLocal);
94
+ Cartesian3.normalize(scratchLocal, scratchLocal);
95
+ return cartesianToImageSpherical(scratchLocal);
96
+ }
@@ -16,10 +16,10 @@ import type {
16
16
  import type { State } from 'ol/render.js';
17
17
  import { parseEnumValue, parseNumber } from '@vcsuite/parsers';
18
18
  import { getCartesianBearing } from '../util/math.js';
19
+ import type { VectorPropertiesPrimitiveOptions } from '../layer/vectorProperties.js';
19
20
  import {
20
21
  PrimitiveOptionsType,
21
22
  vectorPropertiesOfType,
22
- VectorPropertiesPrimitiveOptions,
23
23
  } from '../layer/vectorProperties.js';
24
24
  import { getStringColor, parseColor } from './styleHelpers.js';
25
25
  import type { ColorType } from './vectorStyleItem.js';
@@ -1,4 +1,3 @@
1
- /* eslint-disable */
2
1
  import {
3
2
  Color,
4
3
  ConditionsExpression,
@@ -81,8 +80,8 @@ function addCustomProperty(
81
80
  } else {
82
81
  expression = new Expression(options[key] as string, options.defines);
83
82
  }
84
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
85
- // @ts-ignore
83
+
84
+ // @ts-expect-error key of issues
86
85
  style[key] = expression;
87
86
  }
88
87
 
@@ -97,8 +96,9 @@ class DeclarativeStyleItem extends StyleItem {
97
96
 
98
97
  private _styleOptions: DeclarativeStyleOptions;
99
98
 
100
- private _circleCache: Map<string, Circle> = new Map();
101
- private _iconCache: Map<string, Icon> = new Map();
99
+ private _circleCache = new Map<string, Circle>();
100
+
101
+ private _iconCache = new Map<string, Icon>();
102
102
 
103
103
  /**
104
104
  * @param options
@@ -158,7 +158,7 @@ class DeclarativeStyleItem extends StyleItem {
158
158
  return new DeclarativeStyleItem(config);
159
159
  }
160
160
 
161
- assign(styleItem: DeclarativeStyleItem): DeclarativeStyleItem {
161
+ assign(styleItem: DeclarativeStyleItem): this {
162
162
  super.assign(styleItem);
163
163
  this._styleOptions = styleItem.cesiumStyle.style as DeclarativeStyleOptions;
164
164
 
@@ -306,7 +306,7 @@ class DeclarativeStyleItem extends StyleItem {
306
306
  } else if (!isSameOrigin(src)) {
307
307
  iconOptions.crossOrigin = 'anonymous';
308
308
  }
309
- const iconCacheKey = `${src}${iconOptions.crossOrigin}`;
309
+ const iconCacheKey = `${src}${String(iconOptions.crossOrigin)}`;
310
310
  if (!this._iconCache.has(iconCacheKey)) {
311
311
  this._iconCache.set(iconCacheKey, new Icon(iconOptions));
312
312
  }
@@ -336,9 +336,9 @@ class DeclarativeStyleItem extends StyleItem {
336
336
  radius += width / 2;
337
337
  }
338
338
 
339
- const circleCacheKey = `${radius}${String(color)}${String(width)}${String(
340
- pointOutlineColor,
341
- )}`;
339
+ const circleCacheKey = `${String(radius)}${String(color)}${String(
340
+ width,
341
+ )}${String(pointOutlineColor)}`;
342
342
  if (!this._circleCache.has(circleCacheKey)) {
343
343
  const circleOptions: CircleOptions = {
344
344
  radius,
@@ -396,7 +396,7 @@ class DeclarativeStyleItem extends StyleItem {
396
396
  show: DeclarativeStyleItemConditions | string | boolean | undefined,
397
397
  ) {
398
398
  this._styleOptions.show = show;
399
- // @ts-ignore setter != getter
399
+ // @ts-expect-error setter != getter
400
400
  this.cesiumStyle.show = show;
401
401
  this._styleChanged();
402
402
  }
@@ -407,7 +407,7 @@ class DeclarativeStyleItem extends StyleItem {
407
407
 
408
408
  set color(color: DeclarativeStyleItemConditions | string | undefined) {
409
409
  this._styleOptions.color = color;
410
- // @ts-ignore setter != getter
410
+ // @ts-expect-error setter != getter
411
411
  this.cesiumStyle.color = color;
412
412
  this._styleChanged();
413
413
  }
@@ -418,7 +418,7 @@ class DeclarativeStyleItem extends StyleItem {
418
418
 
419
419
  set strokeColor(color: DeclarativeStyleItemConditions | string | undefined) {
420
420
  this._styleOptions.strokeColor = color;
421
- // @ts-ignore setter != getter
421
+ // @ts-expect-error setter != getter
422
422
  this.cesiumStyle.strokeColor = color;
423
423
  this._styleChanged();
424
424
  }
@@ -429,7 +429,7 @@ class DeclarativeStyleItem extends StyleItem {
429
429
 
430
430
  set strokeWidth(width: DeclarativeStyleItemConditions | string | undefined) {
431
431
  this._styleOptions.strokeWidth = width;
432
- // @ts-ignore setter != getter
432
+ // @ts-expect-error setter != getter
433
433
  this.cesiumStyle.strokeWidth = width;
434
434
  this._styleChanged();
435
435
  }
@@ -440,7 +440,7 @@ class DeclarativeStyleItem extends StyleItem {
440
440
 
441
441
  set image(src: DeclarativeStyleItemConditions | string | undefined) {
442
442
  this._styleOptions.image = src;
443
- // @ts-ignore setter != getter
443
+ // @ts-expect-error setter != getter
444
444
  this.cesiumStyle.image = src;
445
445
  this._styleChanged();
446
446
  }
@@ -451,7 +451,7 @@ class DeclarativeStyleItem extends StyleItem {
451
451
 
452
452
  set labelText(text: DeclarativeStyleItemConditions | string | undefined) {
453
453
  this._styleOptions.labelText = text;
454
- // @ts-ignore setter != getter
454
+ // @ts-expect-error setter != getter
455
455
  this.cesiumStyle.labelText = text;
456
456
  this._styleChanged();
457
457
  }
@@ -462,7 +462,7 @@ class DeclarativeStyleItem extends StyleItem {
462
462
 
463
463
  set labelColor(color: DeclarativeStyleItemConditions | string | undefined) {
464
464
  this._styleOptions.labelColor = color;
465
- // @ts-ignore setter != getter
465
+ // @ts-expect-error setter != getter
466
466
  this.cesiumStyle.labelColor = color;
467
467
  this._styleChanged();
468
468
  }
@@ -473,7 +473,7 @@ class DeclarativeStyleItem extends StyleItem {
473
473
 
474
474
  set font(font: DeclarativeStyleItemConditions | string | undefined) {
475
475
  this._styleOptions.font = font;
476
- // @ts-ignore setter != getter
476
+ // @ts-expect-error setter != getter
477
477
  this.cesiumStyle.font = font;
478
478
  this._styleChanged();
479
479
  }
@@ -486,7 +486,7 @@ class DeclarativeStyleItem extends StyleItem {
486
486
  pointSize: DeclarativeStyleItemConditions | string | undefined,
487
487
  ) {
488
488
  this._styleOptions.pointSize = pointSize;
489
- // @ts-ignore setter != getter
489
+ // @ts-expect-error setter != getter
490
490
  this.cesiumStyle.pointSize = pointSize;
491
491
  this._styleChanged();
492
492
  }
@@ -1,13 +1,12 @@
1
1
  import { is, oneOf } from '@vcsuite/check';
2
- import StyleItem, { StyleItemOptions } from './styleItem.js';
3
- import {
4
- DeclarativeStyleItemOptions,
5
- defaultDeclarativeStyle,
6
- } from './declarativeStyleItem.js';
2
+ import type { StyleItemOptions } from './styleItem.js';
3
+ import StyleItem from './styleItem.js';
4
+ import type { DeclarativeStyleItemOptions } from './declarativeStyleItem.js';
5
+ import { defaultDeclarativeStyle } from './declarativeStyleItem.js';
7
6
  import { styleClassRegistry } from '../classRegistry.js';
8
- import VectorStyleItem, { VectorStyleItemOptions } from './vectorStyleItem.js';
7
+ import type { VectorStyleItemOptions } from './vectorStyleItem.js';
8
+ import VectorStyleItem from './vectorStyleItem.js';
9
9
 
10
- // eslint-disable-next-line import/prefer-default-export
11
10
  export function getStyleOrDefaultStyle(
12
11
  styleOptions?:
13
12
  | DeclarativeStyleItemOptions
@@ -6,7 +6,7 @@ import Style from 'ol/style/Style.js';
6
6
  import { Color, TrustedServers } from '@vcmap-cesium/engine';
7
7
  import type { Color as OLColor } from 'ol/color.js';
8
8
  import type { Size } from 'ol/size.js';
9
- import ImageStyle from 'ol/style/Image.js';
9
+ import type ImageStyle from 'ol/style/Image.js';
10
10
  import Circle from 'ol/style/Circle.js';
11
11
  import Icon, { type Options as IconOptions } from 'ol/style/Icon.js';
12
12
  import RegularShape from 'ol/style/RegularShape.js';
@@ -87,7 +87,7 @@ export function olColorToCesiumColor(olColor: OLColor, result?: Color): Color {
87
87
  * @param defaultColor
88
88
  */
89
89
  export function parseColor(
90
- color?: ColorType | number[] | null | undefined,
90
+ color?: ColorType | number[] | null,
91
91
  defaultColor?: OLColor,
92
92
  ): OLColor {
93
93
  if (Array.isArray(color)) {
@@ -121,7 +121,7 @@ export function parseColor(
121
121
  if (defaultColor) {
122
122
  return defaultColor;
123
123
  }
124
- throw new Error(`Cannot parse color ${String(color)}`);
124
+ throw new Error(`Cannot parse color ${String(color as unknown)}`);
125
125
  }
126
126
 
127
127
  export function getCesiumColor(
@@ -174,27 +174,27 @@ export function createPattern(
174
174
  }
175
175
 
176
176
  switch (options.pattern.type) {
177
- case 1:
177
+ case PatternType.NWSE:
178
178
  drawLineOnCanvas([size / 2, size], [size, size / 2]);
179
179
  drawLineOnCanvas([0, size / 2], [size / 2, 0]);
180
180
  break;
181
- case 2:
181
+ case PatternType.SWNE:
182
182
  drawLineOnCanvas([size / 2, size], [0, size / 2]);
183
183
  drawLineOnCanvas([size, size / 2], [size / 2, 0]);
184
184
  break;
185
- case 3:
185
+ case PatternType.DIAGONALCROSS:
186
186
  drawLineOnCanvas([size / 2, size], [size, size / 2]);
187
187
  drawLineOnCanvas([0, size / 2], [size / 2, 0]);
188
188
  drawLineOnCanvas([size / 2, size], [0, size / 2]);
189
189
  drawLineOnCanvas([size, size / 2], [size / 2, 0]);
190
190
  break;
191
- case 4:
191
+ case PatternType.NS:
192
192
  drawLineOnCanvas([size / 2, 0], [size / 2, size]);
193
193
  break;
194
- case 5:
194
+ case PatternType.WE:
195
195
  drawLineOnCanvas([0, size / 2], [size, size / 2]);
196
196
  break;
197
- case 6:
197
+ case PatternType.CROSS:
198
198
  drawLineOnCanvas([size / 2, 0], [size / 2, size]);
199
199
  drawLineOnCanvas([0, size / 2], [size, size / 2]);
200
200
  break;
@@ -9,6 +9,8 @@ import { parseEnumValue } from '@vcsuite/parsers';
9
9
  import VcsObject, { type VcsObjectOptions } from '../vcsObject.js';
10
10
  import VcsEvent from '../vcsEvent.js';
11
11
  import { styleClassRegistry } from '../classRegistry.js';
12
+ import type DeclarativeStyleItem from './declarativeStyleItem.js';
13
+ import type VectorStyleItem from './vectorStyleItem.js';
12
14
 
13
15
  export type StyleItemOptions = VcsObjectOptions & {
14
16
  colorBlendMode?: number;
@@ -33,7 +35,7 @@ class StyleItem extends VcsObject {
33
35
  /**
34
36
  * Fired on style updates
35
37
  */
36
- styleChanged: VcsEvent<void> = new VcsEvent();
38
+ styleChanged = new VcsEvent<void>();
37
39
 
38
40
  colorBlendMode: Cesium3DTileColorBlendMode;
39
41
 
@@ -89,14 +91,17 @@ class StyleItem extends VcsObject {
89
91
  * @param {StyleItem=} _result
90
92
  * @returns {StyleItem}
91
93
  */
92
- clone(_result?: StyleItem): StyleItem {
94
+ clone(
95
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
96
+ _result?: StyleItem | DeclarativeStyleItem | VectorStyleItem,
97
+ ): this | DeclarativeStyleItem | VectorStyleItem {
93
98
  return this;
94
99
  }
95
100
 
96
101
  /**
97
102
  * @param styleItem
98
103
  */
99
- assign(styleItem: StyleItem): StyleItem {
104
+ assign(styleItem: StyleItem): this {
100
105
  this.properties = JSON.parse(
101
106
  JSON.stringify(styleItem.properties),
102
107
  ) as Record<string, unknown>;
@@ -1,5 +1,6 @@
1
1
  /* eslint-disable no-template-curly-in-string,@typescript-eslint/ban-ts-comment */
2
- import Stroke, { Options as StrokeOptions } from 'ol/style/Stroke.js';
2
+ import type { Options as StrokeOptions } from 'ol/style/Stroke.js';
3
+ import Stroke from 'ol/style/Stroke.js';
3
4
  import { Color, TrustedServers, VerticalOrigin } from '@vcmap-cesium/engine';
4
5
  import Icon, { type Options as IconOptions } from 'ol/style/Icon.js';
5
6
  import Style, { type StyleFunction } from 'ol/style/Style.js';
@@ -9,12 +10,13 @@ import type { Size } from 'ol/size.js';
9
10
  import Fill, { type Options as FillOptions } from 'ol/style/Fill.js';
10
11
  import Circle from 'ol/style/Circle.js';
11
12
  import RegularShape from 'ol/style/RegularShape.js';
12
- import { Color as OLColor } from 'ol/color.js';
13
- import { ColorLike as OLColorLike } from 'ol/colorlike.js';
13
+ import type { Color as OLColor } from 'ol/color.js';
14
+ import type { ColorLike as OLColorLike } from 'ol/colorlike.js';
14
15
  import type { Feature } from 'ol/index.js';
15
16
 
16
17
  import { check, maybe, oneOf, strict } from '@vcsuite/check';
17
- import StyleItem, { StyleItemOptions } from './styleItem.js';
18
+ import type { StyleItemOptions } from './styleItem.js';
19
+ import StyleItem from './styleItem.js';
18
20
  import {
19
21
  parseColor,
20
22
  PatternType,
@@ -212,14 +214,9 @@ class VectorStyleItem extends StyleItem {
212
214
  checkColor(options.fill);
213
215
  if (options.fill.pattern) {
214
216
  checkStroke(options.fill.pattern);
215
- if (
216
- !(
217
- options.fill.pattern.type &&
218
- Object.values(PatternType).includes(options.fill.pattern.type)
219
- )
220
- ) {
217
+ if (!Object.values(PatternType).includes(options.fill.pattern.type)) {
221
218
  this.getLogger().error(
222
- `Cannot find pattern ${options.fill.pattern.type}`,
219
+ `Cannot find pattern ${String(options.fill.pattern.type)}`,
223
220
  );
224
221
  options.fill.pattern.type = PatternType.NWSE;
225
222
  }
@@ -260,10 +257,10 @@ class VectorStyleItem extends StyleItem {
260
257
  this.getLogger().error('radius must be a number');
261
258
  options.image.radius = 5;
262
259
  }
263
- if ((options.image.fill as FillOptions)?.color) {
260
+ if ((options.image.fill as FillOptions | undefined)?.color) {
264
261
  checkColor(options.image.fill as { color: ColorType }); // XXX PatternDescriptor
265
262
  }
266
- if ((options.image.stroke as StrokeOptions)?.color) {
263
+ if ((options.image.stroke as StrokeOptions | undefined)?.color) {
267
264
  checkStroke(options.image.stroke as StrokeOptions);
268
265
  }
269
266
  }
@@ -284,7 +281,7 @@ class VectorStyleItem extends StyleItem {
284
281
  if (!color) {
285
282
  this._fillOptions = null;
286
283
  this._fill = undefined;
287
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
284
+
288
285
  // @ts-ignore // bug in ol def. you can set fill undefined
289
286
  this._style.setFill(this._fill);
290
287
  this.updateCesiumStyleColor(true);
@@ -350,7 +347,7 @@ class VectorStyleItem extends StyleItem {
350
347
  this.exclude.stroke = false;
351
348
  if (this._style instanceof Style) {
352
349
  check(stroke, maybe(Stroke));
353
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
350
+
354
351
  // @ts-ignore // bug in ol
355
352
  this._style.setStroke(stroke);
356
353
  this._stroke = stroke;
@@ -384,8 +381,8 @@ class VectorStyleItem extends StyleItem {
384
381
  if (this._style instanceof Style) {
385
382
  check(text, maybe(OLText));
386
383
  this._text = text;
387
- this._text?.setText?.(this._label);
388
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
384
+ this._text?.setText(this._label);
385
+
389
386
  // @ts-ignore // bug in ol
390
387
  this._style.setText(this._text);
391
388
  } else {
@@ -402,7 +399,7 @@ class VectorStyleItem extends StyleItem {
402
399
  if (this._style instanceof Style) {
403
400
  check(image, maybe(OLImage));
404
401
  this._image = image;
405
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
402
+
406
403
  // @ts-ignore // bug in ol
407
404
  this._style.setImage(this._image);
408
405
  this.updateCesiumStyle();
@@ -478,20 +475,20 @@ class VectorStyleItem extends StyleItem {
478
475
  const colorConditions = getDefaultCondition('olcs_color', true);
479
476
  if (this.stroke && this.stroke.getColor()) {
480
477
  colorConditions.splice(1, 0, [
481
- `\${olcs_geometryType}===${OlcsGeometryType.POLYLINE}`,
478
+ `\${olcs_geometryType}===${String(OlcsGeometryType.POLYLINE)}`,
482
479
  getStringColor(this.stroke.getColor()),
483
480
  ]);
484
481
  }
485
482
  if (this._image instanceof Circle && this._image.getFill()) {
486
483
  colorConditions.splice(1, 0, [
487
- `\${olcs_geometryType}===${OlcsGeometryType.POINT}`,
484
+ `\${olcs_geometryType}===${String(OlcsGeometryType.POINT)}`,
488
485
  getStringColor(this._image.getFill()!.getColor() as OLColor),
489
486
  ]);
490
487
  }
491
488
  if (this.fillColor) {
492
489
  colorConditions.splice(-1, 1, ['true', getStringColor(this.fillColor)]);
493
490
  }
494
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
491
+
495
492
  // @ts-ignore
496
493
  this.cesiumStyle.color = { conditions: colorConditions };
497
494
 
@@ -529,10 +526,7 @@ class VectorStyleItem extends StyleItem {
529
526
  */
530
527
  if (this._image) {
531
528
  if (this._image.getScale() != null) {
532
- scaleConditions.splice(1, 1, [
533
- 'true',
534
- `${String(this._image.getScale())}`,
535
- ]);
529
+ scaleConditions.splice(1, 1, ['true', String(this._image.getScale())]);
536
530
  }
537
531
  if (this._image instanceof Circle) {
538
532
  const stroke = this._image.getStroke();
@@ -545,10 +539,10 @@ class VectorStyleItem extends StyleItem {
545
539
  ]);
546
540
  }
547
541
  const width = this._image.getStroke()!.getWidth() as number;
548
- pointOutlineWidthConditions.splice(1, 1, ['true', `${width}`]);
542
+ pointOutlineWidthConditions.splice(1, 1, ['true', String(width)]);
549
543
  size -= width;
550
544
  }
551
- pointSizeConditions.splice(1, 1, ['true', `${size}`]);
545
+ pointSizeConditions.splice(1, 1, ['true', String(size)]);
552
546
  } else if (this._image instanceof RegularShape) {
553
547
  const dataUrl = this._image.getImage(1).toDataURL();
554
548
  imageConditions.splice(1, 1, ['true', `"${dataUrl}"`]);
@@ -634,7 +628,7 @@ class VectorStyleItem extends StyleItem {
634
628
  ]);
635
629
  labelOutlineWidthConditions.splice(1, 1, [
636
630
  'true',
637
- `${this._text.getStroke()!.getWidth() || 1.25}`,
631
+ String(this._text.getStroke()!.getWidth() || 1.25),
638
632
  ]);
639
633
  }
640
634
  }
@@ -713,7 +707,7 @@ class VectorStyleItem extends StyleItem {
713
707
  return new VectorStyleItem(config);
714
708
  }
715
709
 
716
- assign(result: VectorStyleItem): VectorStyleItem {
710
+ assign(result: VectorStyleItem): this {
717
711
  super.assign(result);
718
712
  if (result.fillColor) {
719
713
  this.fillColor = result.fillColor.slice();
@@ -793,7 +787,7 @@ class VectorStyleItem extends StyleItem {
793
787
  getOptionsForFeature(feature: Feature): VectorStyleItemOptions {
794
788
  const type = feature.getGeometry()?.getType();
795
789
  const extrusion = !!feature.get('olcs_extrudedHeight');
796
- const sections: Set<keyof VectorStyleItemOptions> = new Set();
790
+ const sections = new Set<keyof VectorStyleItemOptions>();
797
791
 
798
792
  if (type === 'Point' || type === 'MultiPoint') {
799
793
  if (feature[vectorStyleSymbol]?.label != null) {
@@ -1,7 +1,8 @@
1
- import VectorStyleItem, { VectorStyleItemOptions } from './vectorStyleItem.js';
1
+ import type { VectorStyleItemOptions } from './vectorStyleItem.js';
2
+ import VectorStyleItem from './vectorStyleItem.js';
2
3
  import DeclarativeStyleItem from './declarativeStyleItem.js';
3
4
  import { type VcsMeta, vcsMetaVersion } from '../layer/vectorProperties.js';
4
- import StyleItem from './styleItem.js';
5
+ import type StyleItem from './styleItem.js';
5
6
 
6
7
  export function embedIconsInStyle(
7
8
  obj: VectorStyleItemOptions,
@@ -61,7 +61,7 @@ class ClippingObject {
61
61
  * Key is a semantic identifier, eg. layerName or layerName-entitiyId, depending on the target. Targets
62
62
  * represent Cesium Object which support the clippingPlanes API
63
63
  */
64
- targets: Map<string | symbol, ClippingTarget> = new Map();
64
+ targets = new Map<string | symbol, ClippingTarget>();
65
65
 
66
66
  /**
67
67
  * The current entities and their respective layerNames. Use add/removeEntity to manipulate
@@ -84,8 +84,7 @@ class ClippingObject {
84
84
  */
85
85
  clippingPlaneUpdated = new VcsEvent<void>();
86
86
 
87
- private _cachedLayers: Set<FeatureStoreLayer | CesiumTilesetLayer> =
88
- new Set();
87
+ private _cachedLayers = new Set<FeatureStoreLayer | CesiumTilesetLayer>();
89
88
 
90
89
  private _activeMap: VcsMap | null = null;
91
90
 
@@ -23,13 +23,13 @@ class ClippingObjectManager {
23
23
  return 'ClippingObjectManager';
24
24
  }
25
25
 
26
- private _defaultClippingObjects: Set<ClippingObject> = new Set();
26
+ private _defaultClippingObjects = new Set<ClippingObject>();
27
27
 
28
28
  private _exclusiveClippingObjects: ClippingObject[] | null = null;
29
29
 
30
- private _targetsMap: Map<ClippingTarget, ClippingObject> = new Map();
30
+ private _targetsMap = new Map<ClippingTarget, ClippingObject>();
31
31
 
32
- private _listenersMap: Map<ClippingObject, (() => void)[]> = new Map();
32
+ private _listenersMap = new Map<ClippingObject, (() => void)[]>();
33
33
 
34
34
  private _exclusiveRemovedCb: (() => void) | null = null;
35
35
 
@@ -1,8 +1,7 @@
1
+ import type { ClippingPolygon, Globe } from '@vcmap-cesium/engine';
1
2
  import {
2
3
  Cesium3DTileset,
3
- ClippingPolygon,
4
4
  ClippingPolygonCollection,
5
- Globe,
6
5
  } from '@vcmap-cesium/engine';
7
6
  import type CesiumMap from '../../map/cesiumMap.js';
8
7
  import { vcsLayerName } from '../../layer/layerSymbols.js';
@@ -1,12 +1,13 @@
1
1
  import deepEqual from 'fast-deep-equal';
2
- import { Coordinate } from 'ol/coordinate.js';
3
- import { Feature } from 'ol';
2
+ import type { Coordinate } from 'ol/coordinate.js';
3
+ import type { Feature } from 'ol';
4
4
  import { Polygon } from 'ol/geom.js';
5
5
  import { check, oneOf } from '@vcsuite/check';
6
6
  import { parseBoolean } from '@vcsuite/parsers';
7
7
  import { getLogger } from '@vcsuite/logger';
8
8
  import { Cartesian3, ClippingPolygon } from '@vcmap-cesium/engine';
9
- import VcsObject, { VcsObjectOptions } from '../../vcsObject.js';
9
+ import type { VcsObjectOptions } from '../../vcsObject.js';
10
+ import VcsObject from '../../vcsObject.js';
10
11
  import VcsEvent from '../../vcsEvent.js';
11
12
 
12
13
  export enum ClippingPolygonObjectState {