@vcmap/core 6.1.11 → 6.2.0-rc.2

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 (821) 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 +57 -18
  5. package/dist/geojson.d.ts +3 -2
  6. package/dist/index.d.ts +244 -109
  7. package/dist/index.js +82 -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/cogCesiumImpl.d.ts +14 -0
  55. package/dist/src/layer/cesium/cogCesiumImpl.js +28 -0
  56. package/dist/src/layer/cesium/cogCesiumImpl.js.map +1 -0
  57. package/dist/src/layer/cesium/cogImageryProvider.d.ts +31 -0
  58. package/dist/src/layer/cesium/cogImageryProvider.js +258 -0
  59. package/dist/src/layer/cesium/cogImageryProvider.js.map +1 -0
  60. package/dist/src/layer/cesium/dataSourceCesiumImpl.d.ts +3 -2
  61. package/dist/src/layer/cesium/dataSourceCesiumImpl.js.map +1 -1
  62. package/dist/src/layer/cesium/resourceHelper.js +0 -1
  63. package/dist/src/layer/cesium/resourceHelper.js.map +1 -1
  64. package/dist/src/layer/cesium/sourceVectorContextSync.d.ts +2 -2
  65. package/dist/src/layer/cesium/sourceVectorContextSync.js +1 -1
  66. package/dist/src/layer/cesium/sourceVectorContextSync.js.map +1 -1
  67. package/dist/src/layer/cesium/terrainCesiumImpl.d.ts +1 -1
  68. package/dist/src/layer/cesium/vcsTile/vcsChildTile.d.ts +3 -2
  69. package/dist/src/layer/cesium/vcsTile/vcsChildTile.js +1 -1
  70. package/dist/src/layer/cesium/vcsTile/vcsChildTile.js.map +1 -1
  71. package/dist/src/layer/cesium/vcsTile/vcsDebugTile.d.ts +3 -2
  72. package/dist/src/layer/cesium/vcsTile/vcsDebugTile.js +1 -1
  73. package/dist/src/layer/cesium/vcsTile/vcsDebugTile.js.map +1 -1
  74. package/dist/src/layer/cesium/vcsTile/vcsNoDataTile.d.ts +3 -2
  75. package/dist/src/layer/cesium/vcsTile/vcsNoDataTile.js +1 -1
  76. package/dist/src/layer/cesium/vcsTile/vcsNoDataTile.js.map +1 -1
  77. package/dist/src/layer/cesium/vcsTile/vcsQuadtreeTileProvider.d.ts +6 -5
  78. package/dist/src/layer/cesium/vcsTile/vcsQuadtreeTileProvider.js +4 -4
  79. package/dist/src/layer/cesium/vcsTile/vcsQuadtreeTileProvider.js.map +1 -1
  80. package/dist/src/layer/cesium/vcsTile/vcsTileHelpers.d.ts +6 -5
  81. package/dist/src/layer/cesium/vcsTile/vcsTileHelpers.js.map +1 -1
  82. package/dist/src/layer/cesium/vcsTile/vcsVectorTile.d.ts +3 -2
  83. package/dist/src/layer/cesium/vcsTile/vcsVectorTile.js +1 -1
  84. package/dist/src/layer/cesium/vcsTile/vcsVectorTile.js.map +1 -1
  85. package/dist/src/layer/cesium/vectorCesiumImpl.js +1 -1
  86. package/dist/src/layer/cesium/vectorCesiumImpl.js.map +1 -1
  87. package/dist/src/layer/cesium/vectorContext.d.ts +9 -8
  88. package/dist/src/layer/cesium/vectorContext.js +6 -5
  89. package/dist/src/layer/cesium/vectorContext.js.map +1 -1
  90. package/dist/src/layer/cesium/vectorRasterTileCesiumImpl.d.ts +1 -1
  91. package/dist/src/layer/cesium/vectorRasterTileCesiumImpl.js +1 -1
  92. package/dist/src/layer/cesium/vectorRasterTileCesiumImpl.js.map +1 -1
  93. package/dist/src/layer/cesium/vectorTileCesiumImpl.d.ts +3 -3
  94. package/dist/src/layer/cesium/vectorTileCesiumImpl.js +2 -1
  95. package/dist/src/layer/cesium/vectorTileCesiumImpl.js.map +1 -1
  96. package/dist/src/layer/cesium/vectorTileImageryProvider.d.ts +1 -1
  97. package/dist/src/layer/cesium/vectorTileImageryProvider.js +3 -2
  98. package/dist/src/layer/cesium/vectorTileImageryProvider.js.map +1 -1
  99. package/dist/src/layer/cesium/wmsCesiumImpl.js +3 -2
  100. package/dist/src/layer/cesium/wmsCesiumImpl.js.map +1 -1
  101. package/dist/src/layer/cesiumTilesetLayer.d.ts +6 -4
  102. package/dist/src/layer/cesiumTilesetLayer.js.map +1 -1
  103. package/dist/src/layer/cogLayer.d.ts +37 -0
  104. package/dist/src/layer/cogLayer.js +119 -0
  105. package/dist/src/layer/cogLayer.js.map +1 -0
  106. package/dist/src/layer/czmlLayer.js.map +1 -1
  107. package/dist/src/layer/dataSourceLayer.d.ts +4 -2
  108. package/dist/src/layer/dataSourceLayer.js +1 -1
  109. package/dist/src/layer/dataSourceLayer.js.map +1 -1
  110. package/dist/src/layer/featureLayer.d.ts +4 -2
  111. package/dist/src/layer/featureLayer.js.map +1 -1
  112. package/dist/src/layer/featureStoreFeatureVisibility.d.ts +2 -1
  113. package/dist/src/layer/featureStoreFeatureVisibility.js.map +1 -1
  114. package/dist/src/layer/featureStoreLayer.d.ts +8 -6
  115. package/dist/src/layer/featureStoreLayer.js +2 -2
  116. package/dist/src/layer/featureStoreLayer.js.map +1 -1
  117. package/dist/src/layer/featureStoreLayerChanges.d.ts +1 -1
  118. package/dist/src/layer/featureStoreLayerChanges.js.map +1 -1
  119. package/dist/src/layer/featureVisibility.d.ts +2 -1
  120. package/dist/src/layer/featureVisibility.js.map +1 -1
  121. package/dist/src/layer/flatGeobufHelpers.d.ts +18 -3
  122. package/dist/src/layer/flatGeobufHelpers.js +21 -1
  123. package/dist/src/layer/flatGeobufHelpers.js.map +1 -1
  124. package/dist/src/layer/flatGeobufLayer.d.ts +2 -1
  125. package/dist/src/layer/flatGeobufLayer.js.map +1 -1
  126. package/dist/src/layer/geojsonHelpers.d.ts +1 -1
  127. package/dist/src/layer/geojsonHelpers.js +8 -6
  128. package/dist/src/layer/geojsonHelpers.js.map +1 -1
  129. package/dist/src/layer/geojsonLayer.d.ts +2 -1
  130. package/dist/src/layer/geojsonLayer.js +3 -1
  131. package/dist/src/layer/geojsonLayer.js.map +1 -1
  132. package/dist/src/layer/globalHider.d.ts +1 -1
  133. package/dist/src/layer/globalHider.js.map +1 -1
  134. package/dist/src/layer/layer.d.ts +9 -7
  135. package/dist/src/layer/layer.js +1 -1
  136. package/dist/src/layer/layer.js.map +1 -1
  137. package/dist/src/layer/oblique/obliqueHelpers.js +2 -0
  138. package/dist/src/layer/oblique/obliqueHelpers.js.map +1 -1
  139. package/dist/src/layer/oblique/sourceObliqueSync.d.ts +1 -1
  140. package/dist/src/layer/oblique/sourceObliqueSync.js +7 -7
  141. package/dist/src/layer/oblique/sourceObliqueSync.js.map +1 -1
  142. package/dist/src/layer/oblique/vectorObliqueImpl.d.ts +2 -2
  143. package/dist/src/layer/oblique/vectorObliqueImpl.js +3 -3
  144. package/dist/src/layer/oblique/vectorObliqueImpl.js.map +1 -1
  145. package/dist/src/layer/openStreetMapLayer.d.ts +5 -4
  146. package/dist/src/layer/openStreetMapLayer.js +1 -1
  147. package/dist/src/layer/openStreetMapLayer.js.map +1 -1
  148. package/dist/src/layer/openlayers/cogOpenlayersImpl.d.ts +23 -0
  149. package/dist/src/layer/openlayers/cogOpenlayersImpl.js +54 -0
  150. package/dist/src/layer/openlayers/cogOpenlayersImpl.js.map +1 -0
  151. package/dist/src/layer/openlayers/layerOpenlayersImpl.d.ts +4 -2
  152. package/dist/src/layer/openlayers/layerOpenlayersImpl.js +5 -4
  153. package/dist/src/layer/openlayers/layerOpenlayersImpl.js.map +1 -1
  154. package/dist/src/layer/openlayers/loadFunctionHelpers.js +0 -1
  155. package/dist/src/layer/openlayers/loadFunctionHelpers.js.map +1 -1
  156. package/dist/src/layer/openlayers/tileDebugOpenlayersImpl.d.ts +1 -1
  157. package/dist/src/layer/openlayers/tileDebugOpenlayersImpl.js +2 -2
  158. package/dist/src/layer/openlayers/tileDebugOpenlayersImpl.js.map +1 -1
  159. package/dist/src/layer/openlayers/vectorOpenlayersImpl.js +1 -1
  160. package/dist/src/layer/openlayers/vectorOpenlayersImpl.js.map +1 -1
  161. package/dist/src/layer/openlayers/vectorTileOpenlayersImpl.js +1 -1
  162. package/dist/src/layer/openlayers/vectorTileOpenlayersImpl.js.map +1 -1
  163. package/dist/src/layer/openlayers/wmsOpenlayersImpl.d.ts +1 -1
  164. package/dist/src/layer/panorama/panoramaDatasetPanoramaImpl.d.ts +13 -0
  165. package/dist/src/layer/panorama/panoramaDatasetPanoramaImpl.js +34 -0
  166. package/dist/src/layer/panorama/panoramaDatasetPanoramaImpl.js.map +1 -0
  167. package/dist/src/layer/panorama/vectorTilePanoramaImpl.d.ts +28 -0
  168. package/dist/src/layer/panorama/vectorTilePanoramaImpl.js +114 -0
  169. package/dist/src/layer/panorama/vectorTilePanoramaImpl.js.map +1 -0
  170. package/dist/src/layer/panoramaDatasetLayer.d.ts +53 -0
  171. package/dist/src/layer/panoramaDatasetLayer.js +192 -0
  172. package/dist/src/layer/panoramaDatasetLayer.js.map +1 -0
  173. package/dist/src/layer/pointCloudLayer.d.ts +8 -5
  174. package/dist/src/layer/pointCloudLayer.js +1 -1
  175. package/dist/src/layer/pointCloudLayer.js.map +1 -1
  176. package/dist/src/layer/rasterLayer.d.ts +6 -4
  177. package/dist/src/layer/rasterLayer.js.map +1 -1
  178. package/dist/src/layer/singleImageLayer.d.ts +3 -2
  179. package/dist/src/layer/singleImageLayer.js.map +1 -1
  180. package/dist/src/layer/terrainHelpers.d.ts +1 -1
  181. package/dist/src/layer/terrainHelpers.js.map +1 -1
  182. package/dist/src/layer/terrainLayer.d.ts +3 -2
  183. package/dist/src/layer/terrainLayer.js.map +1 -1
  184. package/dist/src/layer/tileLoadedHelper.d.ts +2 -2
  185. package/dist/src/layer/tileProvider/flatGeobufTileProvider.d.ts +7 -4
  186. package/dist/src/layer/tileProvider/flatGeobufTileProvider.js +10 -2
  187. package/dist/src/layer/tileProvider/flatGeobufTileProvider.js.map +1 -1
  188. package/dist/src/layer/tileProvider/mvtTileProvider.d.ts +3 -2
  189. package/dist/src/layer/tileProvider/mvtTileProvider.js +3 -3
  190. package/dist/src/layer/tileProvider/mvtTileProvider.js.map +1 -1
  191. package/dist/src/layer/tileProvider/staticFeatureTileProvider.d.ts +3 -2
  192. package/dist/src/layer/tileProvider/staticFeatureTileProvider.js +0 -1
  193. package/dist/src/layer/tileProvider/staticFeatureTileProvider.js.map +1 -1
  194. package/dist/src/layer/tileProvider/staticGeojsonTileProvider.d.ts +2 -1
  195. package/dist/src/layer/tileProvider/staticGeojsonTileProvider.js +0 -1
  196. package/dist/src/layer/tileProvider/staticGeojsonTileProvider.js.map +1 -1
  197. package/dist/src/layer/tileProvider/tileProvider.d.ts +3 -2
  198. package/dist/src/layer/tileProvider/tileProvider.js +10 -3
  199. package/dist/src/layer/tileProvider/tileProvider.js.map +1 -1
  200. package/dist/src/layer/tileProvider/urlTemplateTileProvider.d.ts +2 -1
  201. package/dist/src/layer/tileProvider/urlTemplateTileProvider.js.map +1 -1
  202. package/dist/src/layer/tmsLayer.d.ts +3 -2
  203. package/dist/src/layer/tmsLayer.js +1 -1
  204. package/dist/src/layer/tmsLayer.js.map +1 -1
  205. package/dist/src/layer/vectorHelpers.d.ts +2 -2
  206. package/dist/src/layer/vectorHelpers.js +1 -1
  207. package/dist/src/layer/vectorHelpers.js.map +1 -1
  208. package/dist/src/layer/vectorLayer.d.ts +12 -8
  209. package/dist/src/layer/vectorLayer.js +1 -1
  210. package/dist/src/layer/vectorLayer.js.map +1 -1
  211. package/dist/src/layer/vectorProperties.d.ts +3 -3
  212. package/dist/src/layer/vectorProperties.js +4 -0
  213. package/dist/src/layer/vectorProperties.js.map +1 -1
  214. package/dist/src/layer/vectorSymbols.d.ts +8 -0
  215. package/dist/src/layer/vectorSymbols.js +8 -0
  216. package/dist/src/layer/vectorSymbols.js.map +1 -1
  217. package/dist/src/layer/vectorTileLayer.d.ts +17 -10
  218. package/dist/src/layer/vectorTileLayer.js +8 -1
  219. package/dist/src/layer/vectorTileLayer.js.map +1 -1
  220. package/dist/src/layer/wfsLayer.d.ts +2 -1
  221. package/dist/src/layer/wfsLayer.js +6 -4
  222. package/dist/src/layer/wfsLayer.js.map +1 -1
  223. package/dist/src/layer/wmsHelpers.js +2 -2
  224. package/dist/src/layer/wmsHelpers.js.map +1 -1
  225. package/dist/src/layer/wmsLayer.d.ts +4 -3
  226. package/dist/src/layer/wmsLayer.js.map +1 -1
  227. package/dist/src/layer/wmtsLayer.d.ts +3 -2
  228. package/dist/src/layer/wmtsLayer.js +1 -1
  229. package/dist/src/layer/wmtsLayer.js.map +1 -1
  230. package/dist/src/map/baseOLMap.d.ts +1 -1
  231. package/dist/src/map/baseOLMap.js +17 -8
  232. package/dist/src/map/baseOLMap.js.map +1 -1
  233. package/dist/src/map/cameraLimiter.d.ts +2 -1
  234. package/dist/src/map/cameraLimiter.js.map +1 -1
  235. package/dist/src/map/cesiumMap.d.ts +5 -7
  236. package/dist/src/map/cesiumMap.js +27 -186
  237. package/dist/src/map/cesiumMap.js.map +1 -1
  238. package/dist/src/map/cesiumMapHelpers.d.ts +7 -0
  239. package/dist/src/map/cesiumMapHelpers.js +144 -0
  240. package/dist/src/map/cesiumMapHelpers.js.map +1 -0
  241. package/dist/src/map/navigation/cameraHelper.d.ts +3 -2
  242. package/dist/src/map/navigation/cameraHelper.js.map +1 -1
  243. package/dist/src/map/navigation/cesiumNavigation.d.ts +4 -3
  244. package/dist/src/map/navigation/cesiumNavigation.js.map +1 -1
  245. package/dist/src/map/navigation/controller/controller.d.ts +1 -1
  246. package/dist/src/map/navigation/controller/controller.js +2 -2
  247. package/dist/src/map/navigation/controller/controller.js.map +1 -1
  248. package/dist/src/map/navigation/controller/keyboardController.d.ts +3 -2
  249. package/dist/src/map/navigation/controller/keyboardController.js +4 -2
  250. package/dist/src/map/navigation/controller/keyboardController.js.map +1 -1
  251. package/dist/src/map/navigation/easingHelper.d.ts +1 -1
  252. package/dist/src/map/navigation/easingHelper.js +1 -1
  253. package/dist/src/map/navigation/easingHelper.js.map +1 -1
  254. package/dist/src/map/navigation/navigation.d.ts +6 -6
  255. package/dist/src/map/navigation/navigation.js +6 -2
  256. package/dist/src/map/navigation/navigation.js.map +1 -1
  257. package/dist/src/map/navigation/navigationImpl.d.ts +2 -2
  258. package/dist/src/map/navigation/obliqueNavigation.d.ts +4 -3
  259. package/dist/src/map/navigation/obliqueNavigation.js +3 -1
  260. package/dist/src/map/navigation/obliqueNavigation.js.map +1 -1
  261. package/dist/src/map/navigation/openlayersNavigation.d.ts +4 -3
  262. package/dist/src/map/navigation/openlayersNavigation.js.map +1 -1
  263. package/dist/src/map/navigation/viewHelper.d.ts +2 -2
  264. package/dist/src/map/navigation/viewHelper.js +0 -1
  265. package/dist/src/map/navigation/viewHelper.js.map +1 -1
  266. package/dist/src/map/obliqueMap.d.ts +3 -3
  267. package/dist/src/map/obliqueMap.js +1 -1
  268. package/dist/src/map/obliqueMap.js.map +1 -1
  269. package/dist/src/map/panoramaMap.d.ts +98 -0
  270. package/dist/src/map/panoramaMap.js +298 -0
  271. package/dist/src/map/panoramaMap.js.map +1 -0
  272. package/dist/src/map/vcsMap.d.ts +3 -3
  273. package/dist/src/map/vcsMap.js +17 -11
  274. package/dist/src/map/vcsMap.js.map +1 -1
  275. package/dist/src/moduleIdSymbol.js +0 -1
  276. package/dist/src/moduleIdSymbol.js.map +1 -1
  277. package/dist/src/oblique/defaultObliqueCollection.js +3 -1
  278. package/dist/src/oblique/defaultObliqueCollection.js.map +1 -1
  279. package/dist/src/oblique/helpers.d.ts +1 -1
  280. package/dist/src/oblique/helpers.js +1 -1
  281. package/dist/src/oblique/helpers.js.map +1 -1
  282. package/dist/src/oblique/obliqueCollection.d.ts +3 -2
  283. package/dist/src/oblique/obliqueCollection.js.map +1 -1
  284. package/dist/src/oblique/obliqueDataSet.d.ts +2 -1
  285. package/dist/src/oblique/obliqueDataSet.js.map +1 -1
  286. package/dist/src/oblique/obliqueImage.d.ts +1 -1
  287. package/dist/src/oblique/obliqueProvider.d.ts +1 -1
  288. package/dist/src/oblique/obliqueProvider.js.map +1 -1
  289. package/dist/src/oblique/obliqueView.js +1 -0
  290. package/dist/src/oblique/obliqueView.js.map +1 -1
  291. package/dist/src/oblique/parseImageJson.js +2 -3
  292. package/dist/src/oblique/parseImageJson.js.map +1 -1
  293. package/dist/src/ol/feature.js.map +1 -1
  294. package/dist/src/ol/geom/circle.js.map +1 -1
  295. package/dist/src/ol/render/canvas/canvasTileRenderer.js +0 -1
  296. package/dist/src/ol/render/canvas/canvasTileRenderer.js.map +1 -1
  297. package/dist/src/ol/source/ClusterEnhancedVectorSource.d.ts +1 -1
  298. package/dist/src/ol/source/VcsCluster.d.ts +3 -3
  299. package/dist/src/ol/source/VcsCluster.js.map +1 -1
  300. package/dist/src/overrideClassRegistry.d.ts +3 -3
  301. package/dist/src/overrideClassRegistry.js +1 -0
  302. package/dist/src/overrideClassRegistry.js.map +1 -1
  303. package/dist/src/panorama/fieldOfView.d.ts +57 -0
  304. package/dist/src/panorama/fieldOfView.js +135 -0
  305. package/dist/src/panorama/fieldOfView.js.map +1 -0
  306. package/dist/src/panorama/panoramaCameraController.d.ts +35 -0
  307. package/dist/src/panorama/panoramaCameraController.js +146 -0
  308. package/dist/src/panorama/panoramaCameraController.js.map +1 -0
  309. package/dist/src/panorama/panoramaImage.d.ts +135 -0
  310. package/dist/src/panorama/panoramaImage.js +269 -0
  311. package/dist/src/panorama/panoramaImage.js.map +1 -0
  312. package/dist/src/panorama/panoramaImageView.d.ts +25 -0
  313. package/dist/src/panorama/panoramaImageView.js +328 -0
  314. package/dist/src/panorama/panoramaImageView.js.map +1 -0
  315. package/dist/src/panorama/panoramaTile.d.ts +23 -0
  316. package/dist/src/panorama/panoramaTile.js +101 -0
  317. package/dist/src/panorama/panoramaTile.js.map +1 -0
  318. package/dist/src/panorama/panoramaTileCache.d.ts +16 -0
  319. package/dist/src/panorama/panoramaTileCache.js +34 -0
  320. package/dist/src/panorama/panoramaTileCache.js.map +1 -0
  321. package/dist/src/panorama/panoramaTileCoordinate.d.ts +56 -0
  322. package/dist/src/panorama/panoramaTileCoordinate.js +110 -0
  323. package/dist/src/panorama/panoramaTileCoordinate.js.map +1 -0
  324. package/dist/src/panorama/panoramaTileMaterial.d.ts +96 -0
  325. package/dist/src/panorama/panoramaTileMaterial.js +213 -0
  326. package/dist/src/panorama/panoramaTileMaterial.js.map +1 -0
  327. package/dist/src/panorama/panoramaTileMaterialFS.shader.d.ts +2 -0
  328. package/dist/src/panorama/panoramaTileMaterialFS.shader.js +170 -0
  329. package/dist/src/panorama/panoramaTileMaterialFS.shader.js.map +1 -0
  330. package/dist/src/panorama/panoramaTilePrimitiveCollection.d.ts +31 -0
  331. package/dist/src/panorama/panoramaTilePrimitiveCollection.js +113 -0
  332. package/dist/src/panorama/panoramaTilePrimitiveCollection.js.map +1 -0
  333. package/dist/src/panorama/panoramaTileProvider.d.ts +67 -0
  334. package/dist/src/panorama/panoramaTileProvider.js +312 -0
  335. package/dist/src/panorama/panoramaTileProvider.js.map +1 -0
  336. package/dist/src/panorama/sphericalCoordinates.d.ts +20 -0
  337. package/dist/src/panorama/sphericalCoordinates.js +78 -0
  338. package/dist/src/panorama/sphericalCoordinates.js.map +1 -0
  339. package/dist/src/style/arrowStyle.d.ts +1 -1
  340. package/dist/src/style/arrowStyle.js.map +1 -1
  341. package/dist/src/style/declarativeStyleItem.d.ts +1 -1
  342. package/dist/src/style/declarativeStyleItem.js +12 -14
  343. package/dist/src/style/declarativeStyleItem.js.map +1 -1
  344. package/dist/src/style/styleFactory.d.ts +2 -2
  345. package/dist/src/style/styleFactory.js +1 -2
  346. package/dist/src/style/styleFactory.js.map +1 -1
  347. package/dist/src/style/styleHelpers.d.ts +2 -2
  348. package/dist/src/style/styleHelpers.js +6 -6
  349. package/dist/src/style/styleHelpers.js.map +1 -1
  350. package/dist/src/style/styleItem.d.ts +4 -2
  351. package/dist/src/style/styleItem.js +3 -1
  352. package/dist/src/style/styleItem.js.map +1 -1
  353. package/dist/src/style/vectorStyleItem.d.ts +7 -5
  354. package/dist/src/style/vectorStyleItem.js +9 -19
  355. package/dist/src/style/vectorStyleItem.js.map +1 -1
  356. package/dist/src/style/writeStyle.d.ts +2 -2
  357. package/dist/src/style/writeStyle.js.map +1 -1
  358. package/dist/src/util/clipping/clippingObject.js.map +1 -1
  359. package/dist/src/util/clipping/clippingObjectManager.js.map +1 -1
  360. package/dist/src/util/clipping/clippingPolygonHelper.d.ts +2 -1
  361. package/dist/src/util/clipping/clippingPolygonHelper.js.map +1 -1
  362. package/dist/src/util/clipping/clippingPolygonObject.d.ts +4 -3
  363. package/dist/src/util/clipping/clippingPolygonObject.js.map +1 -1
  364. package/dist/src/util/clipping/clippingPolygonObjectCollection.d.ts +3 -4
  365. package/dist/src/util/clipping/clippingPolygonObjectCollection.js +37 -11
  366. package/dist/src/util/clipping/clippingPolygonObjectCollection.js.map +1 -1
  367. package/dist/src/util/collection.js.map +1 -1
  368. package/dist/src/util/createAbsoluteFeature.d.ts +4 -0
  369. package/dist/src/util/createAbsoluteFeature.js +98 -0
  370. package/dist/src/util/createAbsoluteFeature.js.map +1 -0
  371. package/dist/src/util/displayQuality/displayQuality.d.ts +3 -5
  372. package/dist/src/util/displayQuality/displayQuality.js +4 -5
  373. package/dist/src/util/displayQuality/displayQuality.js.map +1 -1
  374. package/dist/src/util/editor/createFeatureSession.d.ts +4 -3
  375. package/dist/src/util/editor/createFeatureSession.js.map +1 -1
  376. package/dist/src/util/editor/editFeaturesSession.d.ts +2 -1
  377. package/dist/src/util/editor/editFeaturesSession.js +3 -1
  378. package/dist/src/util/editor/editFeaturesSession.js.map +1 -1
  379. package/dist/src/util/editor/editGeometrySession.d.ts +3 -2
  380. package/dist/src/util/editor/editGeometrySession.js.map +1 -1
  381. package/dist/src/util/editor/editorHelpers.d.ts +5 -4
  382. package/dist/src/util/editor/editorHelpers.js +4 -0
  383. package/dist/src/util/editor/editorHelpers.js.map +1 -1
  384. package/dist/src/util/editor/editorSessionHelpers.d.ts +3 -3
  385. package/dist/src/util/editor/editorSessionHelpers.js.map +1 -1
  386. package/dist/src/util/editor/interactions/createCircleInteraction.d.ts +2 -1
  387. package/dist/src/util/editor/interactions/createCircleInteraction.js.map +1 -1
  388. package/dist/src/util/editor/interactions/createLineStringInteraction.d.ts +3 -2
  389. package/dist/src/util/editor/interactions/createLineStringInteraction.js.map +1 -1
  390. package/dist/src/util/editor/interactions/createPointInteraction.d.ts +3 -2
  391. package/dist/src/util/editor/interactions/createPointInteraction.js.map +1 -1
  392. package/dist/src/util/editor/interactions/createPolygonInteraction.d.ts +3 -2
  393. package/dist/src/util/editor/interactions/createPolygonInteraction.js.map +1 -1
  394. package/dist/src/util/editor/interactions/creationSnapping.d.ts +2 -2
  395. package/dist/src/util/editor/interactions/creationSnapping.js +1 -1
  396. package/dist/src/util/editor/interactions/creationSnapping.js.map +1 -1
  397. package/dist/src/util/editor/interactions/editFeaturesMouseOverInteraction.d.ts +2 -1
  398. package/dist/src/util/editor/interactions/editFeaturesMouseOverInteraction.js.map +1 -1
  399. package/dist/src/util/editor/interactions/editGeometryMouseOverInteraction.d.ts +2 -1
  400. package/dist/src/util/editor/interactions/editGeometryMouseOverInteraction.js.map +1 -1
  401. package/dist/src/util/editor/interactions/ensureHandlerSelectionInteraction.d.ts +2 -1
  402. package/dist/src/util/editor/interactions/ensureHandlerSelectionInteraction.js.map +1 -1
  403. package/dist/src/util/editor/interactions/insertVertexInteraction.d.ts +3 -2
  404. package/dist/src/util/editor/interactions/insertVertexInteraction.js.map +1 -1
  405. package/dist/src/util/editor/interactions/layerSnapping.d.ts +4 -4
  406. package/dist/src/util/editor/interactions/layerSnapping.js +1 -1
  407. package/dist/src/util/editor/interactions/layerSnapping.js.map +1 -1
  408. package/dist/src/util/editor/interactions/mapInteractionController.d.ts +2 -1
  409. package/dist/src/util/editor/interactions/mapInteractionController.js +1 -0
  410. package/dist/src/util/editor/interactions/mapInteractionController.js.map +1 -1
  411. package/dist/src/util/editor/interactions/removeVertexInteraction.d.ts +3 -2
  412. package/dist/src/util/editor/interactions/removeVertexInteraction.js.map +1 -1
  413. package/dist/src/util/editor/interactions/rightClickInteraction.d.ts +2 -1
  414. package/dist/src/util/editor/interactions/rightClickInteraction.js.map +1 -1
  415. package/dist/src/util/editor/interactions/segmentLengthInteraction.d.ts +2 -1
  416. package/dist/src/util/editor/interactions/segmentLengthInteraction.js.map +1 -1
  417. package/dist/src/util/editor/interactions/selectFeatureMouseOverInteraction.d.ts +3 -2
  418. package/dist/src/util/editor/interactions/selectFeatureMouseOverInteraction.js +13 -13
  419. package/dist/src/util/editor/interactions/selectFeatureMouseOverInteraction.js.map +1 -1
  420. package/dist/src/util/editor/interactions/selectMultiFeatureInteraction.d.ts +3 -3
  421. package/dist/src/util/editor/interactions/selectMultiFeatureInteraction.js +1 -1
  422. package/dist/src/util/editor/interactions/selectMultiFeatureInteraction.js.map +1 -1
  423. package/dist/src/util/editor/interactions/selectSingleFeatureInteraction.d.ts +2 -1
  424. package/dist/src/util/editor/interactions/selectSingleFeatureInteraction.js +1 -1
  425. package/dist/src/util/editor/interactions/selectSingleFeatureInteraction.js.map +1 -1
  426. package/dist/src/util/editor/interactions/translateVertexInteraction.d.ts +3 -2
  427. package/dist/src/util/editor/interactions/translateVertexInteraction.js.map +1 -1
  428. package/dist/src/util/editor/interactions/translationSnapping.d.ts +2 -2
  429. package/dist/src/util/editor/interactions/translationSnapping.js +1 -1
  430. package/dist/src/util/editor/interactions/translationSnapping.js.map +1 -1
  431. package/dist/src/util/editor/selectFeaturesSession.d.ts +3 -2
  432. package/dist/src/util/editor/selectFeaturesSession.js +1 -1
  433. package/dist/src/util/editor/selectFeaturesSession.js.map +1 -1
  434. package/dist/src/util/editor/snappingHelpers.d.ts +3 -3
  435. package/dist/src/util/editor/snappingHelpers.js.map +1 -1
  436. package/dist/src/util/editor/transformation/create2DHandlers.d.ts +2 -1
  437. package/dist/src/util/editor/transformation/create2DHandlers.js.map +1 -1
  438. package/dist/src/util/editor/transformation/create3DHandlers.d.ts +3 -2
  439. package/dist/src/util/editor/transformation/create3DHandlers.js.map +1 -1
  440. package/dist/src/util/editor/transformation/extrudeInteraction.d.ts +3 -2
  441. package/dist/src/util/editor/transformation/extrudeInteraction.js +1 -1
  442. package/dist/src/util/editor/transformation/extrudeInteraction.js.map +1 -1
  443. package/dist/src/util/editor/transformation/rotateInteraction.d.ts +4 -2
  444. package/dist/src/util/editor/transformation/rotateInteraction.js +1 -1
  445. package/dist/src/util/editor/transformation/rotateInteraction.js.map +1 -1
  446. package/dist/src/util/editor/transformation/scaleInteraction.d.ts +3 -2
  447. package/dist/src/util/editor/transformation/scaleInteraction.js +1 -1
  448. package/dist/src/util/editor/transformation/scaleInteraction.js.map +1 -1
  449. package/dist/src/util/editor/transformation/transformationHandler.d.ts +2 -1
  450. package/dist/src/util/editor/transformation/transformationHandler.js +1 -1
  451. package/dist/src/util/editor/transformation/transformationHandler.js.map +1 -1
  452. package/dist/src/util/editor/transformation/translateInteraction.d.ts +3 -2
  453. package/dist/src/util/editor/transformation/translateInteraction.js +2 -2
  454. package/dist/src/util/editor/transformation/translateInteraction.js.map +1 -1
  455. package/dist/src/util/exclusiveManager.d.ts +1 -1
  456. package/dist/src/util/exclusiveManager.js.map +1 -1
  457. package/dist/src/util/featureconverter/arcToCesium.d.ts +1 -1
  458. package/dist/src/util/featureconverter/arcToCesium.js +1 -2
  459. package/dist/src/util/featureconverter/arcToCesium.js.map +1 -1
  460. package/dist/src/util/featureconverter/circleToCesium.d.ts +1 -1
  461. package/dist/src/util/featureconverter/circleToCesium.js +1 -1
  462. package/dist/src/util/featureconverter/circleToCesium.js.map +1 -1
  463. package/dist/src/util/featureconverter/clampedPrimitive.d.ts +2 -1
  464. package/dist/src/util/featureconverter/clampedPrimitive.js +0 -1
  465. package/dist/src/util/featureconverter/clampedPrimitive.js.map +1 -1
  466. package/dist/src/util/featureconverter/convert.d.ts +4 -3
  467. package/dist/src/util/featureconverter/convert.js +1 -1
  468. package/dist/src/util/featureconverter/convert.js.map +1 -1
  469. package/dist/src/util/featureconverter/extent3D.d.ts +2 -2
  470. package/dist/src/util/featureconverter/extent3D.js.map +1 -1
  471. package/dist/src/util/featureconverter/lineStringToCesium.d.ts +5 -5
  472. package/dist/src/util/featureconverter/lineStringToCesium.js +1 -2
  473. package/dist/src/util/featureconverter/lineStringToCesium.js.map +1 -1
  474. package/dist/src/util/featureconverter/pointHelpers.d.ts +6 -5
  475. package/dist/src/util/featureconverter/pointHelpers.js +2 -3
  476. package/dist/src/util/featureconverter/pointHelpers.js.map +1 -1
  477. package/dist/src/util/featureconverter/pointToCesium.d.ts +6 -11
  478. package/dist/src/util/featureconverter/pointToCesium.js +3 -20
  479. package/dist/src/util/featureconverter/pointToCesium.js.map +1 -1
  480. package/dist/src/util/featureconverter/polygonToCesium.d.ts +1 -1
  481. package/dist/src/util/featureconverter/polygonToCesium.js +1 -1
  482. package/dist/src/util/featureconverter/polygonToCesium.js.map +1 -1
  483. package/dist/src/util/featureconverter/storeyHelpers.d.ts +2 -2
  484. package/dist/src/util/featureconverter/vectorGeometryFactory.d.ts +2 -2
  485. package/dist/src/util/featureconverter/vectorGeometryFactory.js.map +1 -1
  486. package/dist/src/util/featureconverter/vectorHeightInfo.d.ts +8 -2
  487. package/dist/src/util/featureconverter/vectorHeightInfo.js +17 -0
  488. package/dist/src/util/featureconverter/vectorHeightInfo.js.map +1 -1
  489. package/dist/src/util/flight/flightAnchor.js +4 -3
  490. package/dist/src/util/flight/flightAnchor.js.map +1 -1
  491. package/dist/src/util/flight/flightCollection.d.ts +2 -2
  492. package/dist/src/util/flight/flightCollection.js.map +1 -1
  493. package/dist/src/util/flight/flightHelpers.d.ts +1 -1
  494. package/dist/src/util/flight/flightInstance.d.ts +3 -2
  495. package/dist/src/util/flight/flightInstance.js.map +1 -1
  496. package/dist/src/util/flight/flightPlayer.js +1 -1
  497. package/dist/src/util/flight/flightPlayer.js.map +1 -1
  498. package/dist/src/util/flight/flightRecorder.d.ts +10 -0
  499. package/dist/src/util/flight/flightRecorder.js +172 -0
  500. package/dist/src/util/flight/flightRecorder.js.map +1 -0
  501. package/dist/src/util/flight/flightVisualizer.d.ts +1 -1
  502. package/dist/src/util/flight/flightVisualizer.js.map +1 -1
  503. package/dist/src/util/geometryHelpers.d.ts +3 -5
  504. package/dist/src/util/geometryHelpers.js +0 -91
  505. package/dist/src/util/geometryHelpers.js.map +1 -1
  506. package/dist/src/util/hiddenObjects.d.ts +2 -2
  507. package/dist/src/util/hiddenObjects.js +0 -1
  508. package/dist/src/util/hiddenObjects.js.map +1 -1
  509. package/dist/src/util/indexedCollection.js.map +1 -1
  510. package/dist/src/util/isMobile.js +3 -2
  511. package/dist/src/util/isMobile.js.map +1 -1
  512. package/dist/src/util/layerCollection.d.ts +6 -1
  513. package/dist/src/util/layerCollection.js +5 -1
  514. package/dist/src/util/layerCollection.js.map +1 -1
  515. package/dist/src/util/locale.js +0 -1
  516. package/dist/src/util/locale.js.map +1 -1
  517. package/dist/src/util/mapCollection.d.ts +9 -4
  518. package/dist/src/util/mapCollection.js +67 -34
  519. package/dist/src/util/mapCollection.js.map +1 -1
  520. package/dist/src/util/math.d.ts +4 -1
  521. package/dist/src/util/math.js +20 -1
  522. package/dist/src/util/math.js.map +1 -1
  523. package/dist/src/util/overrideCollection.d.ts +1 -1
  524. package/dist/src/util/overrideCollection.js +3 -1
  525. package/dist/src/util/overrideCollection.js.map +1 -1
  526. package/dist/src/util/projection.d.ts +1 -1
  527. package/dist/src/util/projection.js +2 -2
  528. package/dist/src/util/projection.js.map +1 -1
  529. package/dist/src/util/renderScreenshot.d.ts +1 -1
  530. package/dist/src/util/rotation.d.ts +4 -3
  531. package/dist/src/util/rotation.js +1 -1
  532. package/dist/src/util/rotation.js.map +1 -1
  533. package/dist/src/util/urlHelpers.js +0 -1
  534. package/dist/src/util/urlHelpers.js.map +1 -1
  535. package/dist/src/util/vcsTemplate.js +2 -4
  536. package/dist/src/util/vcsTemplate.js.map +1 -1
  537. package/dist/src/util/viewpoint.d.ts +6 -2
  538. package/dist/src/util/viewpoint.js +11 -1
  539. package/dist/src/util/viewpoint.js.map +1 -1
  540. package/dist/src/vcsApp.d.ts +7 -6
  541. package/dist/src/vcsApp.js +20 -14
  542. package/dist/src/vcsApp.js.map +1 -1
  543. package/dist/src/vcsEvent.js.map +1 -1
  544. package/dist/src/vcsModuleHelpers.js +3 -3
  545. package/dist/src/vcsModuleHelpers.js.map +1 -1
  546. package/dist/src/vectorCluster/vectorClusterCesiumContext.d.ts +4 -4
  547. package/dist/src/vectorCluster/vectorClusterCesiumContext.js +1 -1
  548. package/dist/src/vectorCluster/vectorClusterCesiumContext.js.map +1 -1
  549. package/dist/src/vectorCluster/vectorClusterGroup.d.ts +9 -6
  550. package/dist/src/vectorCluster/vectorClusterGroup.js +17 -5
  551. package/dist/src/vectorCluster/vectorClusterGroup.js.map +1 -1
  552. package/dist/src/vectorCluster/vectorClusterGroupCesiumImpl.d.ts +2 -2
  553. package/dist/src/vectorCluster/vectorClusterGroupCesiumImpl.js +1 -1
  554. package/dist/src/vectorCluster/vectorClusterGroupCesiumImpl.js.map +1 -1
  555. package/dist/src/vectorCluster/vectorClusterGroupCollection.d.ts +1 -1
  556. package/dist/src/vectorCluster/vectorClusterGroupImpl.d.ts +5 -5
  557. package/dist/src/vectorCluster/vectorClusterGroupObliqueImpl.d.ts +2 -2
  558. package/dist/src/vectorCluster/vectorClusterGroupObliqueImpl.js +1 -1
  559. package/dist/src/vectorCluster/vectorClusterGroupObliqueImpl.js.map +1 -1
  560. package/dist/src/vectorCluster/vectorClusterGroupOpenlayersImpl.d.ts +2 -2
  561. package/dist/src/vectorCluster/vectorClusterStyleItem.d.ts +4 -3
  562. package/dist/src/vectorCluster/vectorClusterStyleItem.js.map +1 -1
  563. package/dist/src/vectorCluster/vectorClusterSymbols.js +0 -1
  564. package/dist/src/vectorCluster/vectorClusterSymbols.js.map +1 -1
  565. package/dist/src/workers/panoramaImageWorker.d.ts +1 -0
  566. package/dist/src/workers/panoramaImageWorker.js +34 -0
  567. package/dist/src/workers/panoramaImageWorker.js.map +1 -0
  568. package/dist/tests/data/cog/test_grey_world.tif +0 -0
  569. package/dist/tests/data/cog/test_rgb.tif +0 -0
  570. package/dist/tests/data/cog/test_rgb_world.tif +0 -0
  571. package/dist/tests/data/panorama/badOrientation.tif +0 -0
  572. package/dist/tests/data/panorama/badPosition.tif +0 -0
  573. package/dist/tests/data/panorama/lowOverview.tif +0 -0
  574. package/dist/tests/data/panorama/noVersionDepth.tif +0 -0
  575. package/dist/tests/data/panorama/noVersionRgb.tif +0 -0
  576. package/dist/tests/data/panorama/testDepthGeotiff.tif +0 -0
  577. package/dist/tests/data/panorama/testRgbGeotiff.tif +0 -0
  578. package/dist/tests/unit/helpers/cesiumHelpers.d.ts +6 -2
  579. package/dist/tests/unit/helpers/cesiumHelpers.js +15 -6
  580. package/dist/tests/unit/helpers/cesiumHelpers.js.map +1 -1
  581. package/dist/tests/unit/helpers/flatGeobufHelpers.d.ts +2 -0
  582. package/dist/tests/unit/helpers/flatGeobufHelpers.js +13 -0
  583. package/dist/tests/unit/helpers/flatGeobufHelpers.js.map +1 -0
  584. package/dist/tests/unit/helpers/helpers.d.ts +4 -0
  585. package/dist/tests/unit/helpers/helpers.js +26 -1
  586. package/dist/tests/unit/helpers/helpers.js.map +1 -1
  587. package/dist/tests/unit/helpers/panoramaHelpers.d.ts +30 -0
  588. package/dist/tests/unit/helpers/panoramaHelpers.js +76 -0
  589. package/dist/tests/unit/helpers/panoramaHelpers.js.map +1 -0
  590. package/index.ts +325 -279
  591. package/package.json +17 -49
  592. package/src/category/category.ts +9 -6
  593. package/src/category/categoryCollection.ts +4 -3
  594. package/src/cesium/cesium.d.ts +57 -18
  595. package/src/cesium/cesium3DTileFeature.ts +6 -7
  596. package/src/cesium/cesiumVcsCameraPrimitive.ts +6 -5
  597. package/src/cesium/entity.ts +1 -1
  598. package/src/classRegistry.ts +19 -18
  599. package/src/featureProvider/abstractFeatureProvider.ts +8 -4
  600. package/src/featureProvider/wmsFeatureProvider.ts +97 -23
  601. package/src/global.d.ts +6 -1
  602. package/src/interaction/abstractInteraction.ts +5 -5
  603. package/src/interaction/coordinateAtPixel.ts +37 -0
  604. package/src/interaction/eventHandler.ts +6 -8
  605. package/src/interaction/featureAtPixelInteraction.ts +24 -13
  606. package/src/interaction/featureProviderInteraction.ts +6 -7
  607. package/src/interaction/interactionType.ts +1 -0
  608. package/src/interaction/panoramaFeatureHighlight.ts +109 -0
  609. package/src/interaction/panoramaImageSelection.ts +37 -0
  610. package/src/layer/cesium/cesiumTilesetCesiumImpl.ts +14 -10
  611. package/src/layer/cesium/cogCesiumImpl.ts +36 -0
  612. package/src/layer/cesium/cogImageryProvider.ts +389 -0
  613. package/src/layer/cesium/dataSourceCesiumImpl.ts +8 -6
  614. package/src/layer/cesium/resourceHelper.ts +0 -1
  615. package/src/layer/cesium/sourceVectorContextSync.ts +4 -4
  616. package/src/layer/cesium/terrainCesiumImpl.ts +1 -1
  617. package/src/layer/cesium/vcsTile/vcsChildTile.ts +3 -3
  618. package/src/layer/cesium/vcsTile/vcsDebugTile.ts +5 -10
  619. package/src/layer/cesium/vcsTile/vcsNoDataTile.ts +3 -3
  620. package/src/layer/cesium/vcsTile/vcsQuadtreeTileProvider.ts +19 -17
  621. package/src/layer/cesium/vcsTile/vcsTileHelpers.ts +10 -8
  622. package/src/layer/cesium/vcsTile/vcsVectorTile.ts +7 -11
  623. package/src/layer/cesium/vectorCesiumImpl.ts +2 -4
  624. package/src/layer/cesium/vectorContext.ts +32 -25
  625. package/src/layer/cesium/vectorRasterTileCesiumImpl.ts +2 -2
  626. package/src/layer/cesium/vectorTileCesiumImpl.ts +5 -7
  627. package/src/layer/cesium/vectorTileImageryProvider.ts +4 -4
  628. package/src/layer/cesium/wmsCesiumImpl.ts +3 -2
  629. package/src/layer/cesiumTilesetLayer.ts +6 -8
  630. package/src/layer/cogLayer.ts +162 -0
  631. package/src/layer/czmlLayer.ts +2 -2
  632. package/src/layer/dataSourceLayer.ts +4 -6
  633. package/src/layer/featureLayer.ts +6 -4
  634. package/src/layer/featureStoreFeatureVisibility.ts +2 -1
  635. package/src/layer/featureStoreLayer.ts +18 -14
  636. package/src/layer/featureStoreLayerChanges.ts +7 -7
  637. package/src/layer/featureVisibility.ts +3 -2
  638. package/src/layer/flatGeobufHelpers.ts +46 -6
  639. package/src/layer/flatGeobufLayer.ts +2 -1
  640. package/src/layer/geojsonHelpers.ts +11 -8
  641. package/src/layer/geojsonLayer.ts +8 -5
  642. package/src/layer/globalHider.ts +5 -3
  643. package/src/layer/layer.ts +14 -14
  644. package/src/layer/oblique/obliqueHelpers.ts +2 -0
  645. package/src/layer/oblique/sourceObliqueSync.ts +9 -9
  646. package/src/layer/oblique/vectorObliqueImpl.ts +6 -8
  647. package/src/layer/openStreetMapLayer.ts +7 -8
  648. package/src/layer/openlayers/cogOpenlayersImpl.ts +75 -0
  649. package/src/layer/openlayers/layerOpenlayersImpl.ts +9 -7
  650. package/src/layer/openlayers/loadFunctionHelpers.ts +0 -1
  651. package/src/layer/openlayers/tileDebugOpenlayersImpl.ts +3 -3
  652. package/src/layer/openlayers/vectorOpenlayersImpl.ts +1 -1
  653. package/src/layer/openlayers/vectorTileOpenlayersImpl.ts +3 -3
  654. package/src/layer/openlayers/wmsOpenlayersImpl.ts +1 -1
  655. package/src/layer/panorama/panoramaDatasetPanoramaImpl.ts +49 -0
  656. package/src/layer/panorama/vectorTilePanoramaImpl.ts +163 -0
  657. package/src/layer/panoramaDatasetLayer.ts +272 -0
  658. package/src/layer/pointCloudLayer.ts +9 -12
  659. package/src/layer/rasterLayer.ts +6 -5
  660. package/src/layer/singleImageLayer.ts +3 -2
  661. package/src/layer/terrainHelpers.ts +2 -1
  662. package/src/layer/terrainLayer.ts +3 -2
  663. package/src/layer/tileLoadedHelper.ts +2 -2
  664. package/src/layer/tileProvider/flatGeobufTileProvider.ts +22 -10
  665. package/src/layer/tileProvider/mvtTileProvider.ts +4 -6
  666. package/src/layer/tileProvider/staticFeatureTileProvider.ts +3 -3
  667. package/src/layer/tileProvider/staticGeojsonTileProvider.ts +2 -2
  668. package/src/layer/tileProvider/tileProvider.ts +15 -10
  669. package/src/layer/tileProvider/urlTemplateTileProvider.ts +2 -1
  670. package/src/layer/tmsLayer.ts +3 -3
  671. package/src/layer/vectorHelpers.ts +3 -4
  672. package/src/layer/vectorLayer.ts +14 -15
  673. package/src/layer/vectorProperties.ts +27 -16
  674. package/src/layer/vectorSymbols.ts +10 -0
  675. package/src/layer/vectorTileLayer.ts +39 -29
  676. package/src/layer/wfsLayer.ts +10 -7
  677. package/src/layer/wmsHelpers.ts +2 -2
  678. package/src/layer/wmsLayer.ts +5 -5
  679. package/src/layer/wmtsLayer.ts +3 -3
  680. package/src/map/baseOLMap.ts +18 -9
  681. package/src/map/cameraLimiter.ts +1 -1
  682. package/src/map/cesiumMap.ts +49 -265
  683. package/src/map/cesiumMapHelpers.ts +219 -0
  684. package/src/map/navigation/cameraHelper.ts +2 -3
  685. package/src/map/navigation/cesiumNavigation.ts +5 -4
  686. package/src/map/navigation/controller/controller.ts +3 -6
  687. package/src/map/navigation/controller/keyboardController.ts +7 -7
  688. package/src/map/navigation/easingHelper.ts +2 -5
  689. package/src/map/navigation/navigation.ts +18 -14
  690. package/src/map/navigation/navigationImpl.ts +2 -2
  691. package/src/map/navigation/obliqueNavigation.ts +7 -6
  692. package/src/map/navigation/openlayersNavigation.ts +4 -3
  693. package/src/map/navigation/viewHelper.ts +2 -3
  694. package/src/map/obliqueMap.ts +7 -9
  695. package/src/map/panoramaMap.ts +415 -0
  696. package/src/map/vcsMap.ts +19 -16
  697. package/src/moduleIdSymbol.ts +0 -1
  698. package/src/oblique/defaultObliqueCollection.ts +1 -0
  699. package/src/oblique/helpers.ts +2 -4
  700. package/src/oblique/obliqueCollection.ts +7 -7
  701. package/src/oblique/obliqueDataSet.ts +7 -6
  702. package/src/oblique/obliqueImage.ts +1 -1
  703. package/src/oblique/obliqueProvider.ts +3 -3
  704. package/src/oblique/obliqueView.ts +1 -0
  705. package/src/oblique/parseImageJson.ts +11 -12
  706. package/src/ol/feature.ts +1 -0
  707. package/src/ol/geojson.d.ts +3 -2
  708. package/src/ol/geom/circle.ts +1 -1
  709. package/src/ol/ol.d.ts +27 -29
  710. package/src/ol/render/canvas/canvasTileRenderer.js +0 -1
  711. package/src/ol/source/ClusterEnhancedVectorSource.ts +1 -1
  712. package/src/ol/source/VcsCluster.ts +4 -4
  713. package/src/overrideClassRegistry.ts +14 -10
  714. package/src/panorama/fieldOfView.ts +254 -0
  715. package/src/panorama/panoramaCameraController.ts +206 -0
  716. package/src/panorama/panoramaImage.ts +531 -0
  717. package/src/panorama/panoramaImageView.ts +445 -0
  718. package/src/panorama/panoramaTile.ts +154 -0
  719. package/src/panorama/panoramaTileCache.ts +40 -0
  720. package/src/panorama/panoramaTileCoordinate.ts +166 -0
  721. package/src/panorama/panoramaTileMaterial.ts +309 -0
  722. package/src/panorama/panoramaTileMaterialFS.glsl +165 -0
  723. package/src/panorama/panoramaTilePrimitiveCollection.ts +158 -0
  724. package/src/panorama/panoramaTileProvider.ts +533 -0
  725. package/src/panorama/sphericalCoordinates.ts +96 -0
  726. package/src/style/arrowStyle.ts +1 -1
  727. package/src/style/declarativeStyleItem.ts +19 -19
  728. package/src/style/styleFactory.ts +6 -7
  729. package/src/style/styleHelpers.ts +9 -9
  730. package/src/style/styleItem.ts +8 -3
  731. package/src/style/vectorStyleItem.ts +24 -30
  732. package/src/style/writeStyle.ts +3 -2
  733. package/src/util/clipping/clippingObject.ts +2 -3
  734. package/src/util/clipping/clippingObjectManager.ts +3 -3
  735. package/src/util/clipping/clippingPolygonHelper.ts +1 -2
  736. package/src/util/clipping/clippingPolygonObject.ts +4 -3
  737. package/src/util/clipping/clippingPolygonObjectCollection.ts +43 -27
  738. package/src/util/collection.ts +1 -1
  739. package/src/util/createAbsoluteFeature.ts +155 -0
  740. package/src/util/displayQuality/displayQuality.ts +7 -8
  741. package/src/util/editor/createFeatureSession.ts +12 -12
  742. package/src/util/editor/editFeaturesSession.ts +6 -4
  743. package/src/util/editor/editGeometrySession.ts +4 -3
  744. package/src/util/editor/editorHelpers.ts +14 -12
  745. package/src/util/editor/editorSessionHelpers.ts +13 -12
  746. package/src/util/editor/interactions/createCircleInteraction.ts +2 -3
  747. package/src/util/editor/interactions/createLineStringInteraction.ts +3 -4
  748. package/src/util/editor/interactions/createPointInteraction.ts +3 -4
  749. package/src/util/editor/interactions/createPolygonInteraction.ts +3 -4
  750. package/src/util/editor/interactions/creationSnapping.ts +4 -7
  751. package/src/util/editor/interactions/editFeaturesMouseOverInteraction.ts +2 -3
  752. package/src/util/editor/interactions/editGeometryMouseOverInteraction.ts +4 -4
  753. package/src/util/editor/interactions/ensureHandlerSelectionInteraction.ts +2 -3
  754. package/src/util/editor/interactions/insertVertexInteraction.ts +3 -4
  755. package/src/util/editor/interactions/layerSnapping.ts +6 -8
  756. package/src/util/editor/interactions/mapInteractionController.ts +5 -3
  757. package/src/util/editor/interactions/removeVertexInteraction.ts +4 -4
  758. package/src/util/editor/interactions/rightClickInteraction.ts +2 -3
  759. package/src/util/editor/interactions/segmentLengthInteraction.ts +2 -3
  760. package/src/util/editor/interactions/selectFeatureMouseOverInteraction.ts +15 -14
  761. package/src/util/editor/interactions/selectMultiFeatureInteraction.ts +9 -9
  762. package/src/util/editor/interactions/selectSingleFeatureInteraction.ts +5 -7
  763. package/src/util/editor/interactions/translateVertexInteraction.ts +4 -4
  764. package/src/util/editor/interactions/translationSnapping.ts +4 -7
  765. package/src/util/editor/selectFeaturesSession.ts +5 -8
  766. package/src/util/editor/snappingHelpers.ts +21 -20
  767. package/src/util/editor/transformation/create2DHandlers.ts +1 -1
  768. package/src/util/editor/transformation/create3DHandlers.ts +3 -3
  769. package/src/util/editor/transformation/extrudeInteraction.ts +5 -5
  770. package/src/util/editor/transformation/rotateInteraction.ts +7 -6
  771. package/src/util/editor/transformation/scaleInteraction.ts +7 -6
  772. package/src/util/editor/transformation/transformationHandler.ts +3 -3
  773. package/src/util/editor/transformation/translateInteraction.ts +7 -11
  774. package/src/util/exclusiveManager.ts +1 -1
  775. package/src/util/featureconverter/arcToCesium.ts +4 -6
  776. package/src/util/featureconverter/circleToCesium.ts +3 -5
  777. package/src/util/featureconverter/clampedPrimitive.ts +6 -5
  778. package/src/util/featureconverter/convert.ts +22 -24
  779. package/src/util/featureconverter/extent3D.ts +3 -3
  780. package/src/util/featureconverter/lineStringToCesium.ts +7 -7
  781. package/src/util/featureconverter/pointHelpers.ts +10 -11
  782. package/src/util/featureconverter/pointToCesium.ts +18 -44
  783. package/src/util/featureconverter/polygonToCesium.ts +3 -5
  784. package/src/util/featureconverter/storeyHelpers.ts +2 -2
  785. package/src/util/featureconverter/vectorGeometryFactory.ts +41 -39
  786. package/src/util/featureconverter/vectorHeightInfo.ts +60 -30
  787. package/src/util/flight/flightAnchor.ts +4 -3
  788. package/src/util/flight/flightCollection.ts +3 -2
  789. package/src/util/flight/flightHelpers.ts +1 -1
  790. package/src/util/flight/flightInstance.ts +7 -4
  791. package/src/util/flight/flightPlayer.ts +2 -2
  792. package/src/util/flight/flightRecorder.ts +234 -0
  793. package/src/util/flight/flightVisualizer.ts +2 -2
  794. package/src/util/geometryHelpers.ts +3 -135
  795. package/src/util/hiddenObjects.ts +3 -4
  796. package/src/util/indexedCollection.ts +1 -1
  797. package/src/util/isMobile.ts +2 -1
  798. package/src/util/layerCollection.ts +7 -2
  799. package/src/util/locale.ts +0 -1
  800. package/src/util/mapCollection.ts +104 -47
  801. package/src/util/math.ts +34 -0
  802. package/src/util/overrideCollection.ts +4 -5
  803. package/src/util/projection.ts +3 -7
  804. package/src/util/renderScreenshot.ts +2 -2
  805. package/src/util/rotation.ts +3 -4
  806. package/src/util/urlHelpers.ts +0 -1
  807. package/src/util/vcsTemplate.ts +6 -5
  808. package/src/util/viewpoint.ts +20 -3
  809. package/src/vcsApp.ts +42 -42
  810. package/src/vcsEvent.ts +1 -1
  811. package/src/vcsModuleHelpers.ts +4 -3
  812. package/src/vectorCluster/vectorClusterCesiumContext.ts +8 -9
  813. package/src/vectorCluster/vectorClusterGroup.ts +26 -16
  814. package/src/vectorCluster/vectorClusterGroupCesiumImpl.ts +10 -10
  815. package/src/vectorCluster/vectorClusterGroupCollection.ts +1 -1
  816. package/src/vectorCluster/vectorClusterGroupImpl.ts +5 -5
  817. package/src/vectorCluster/vectorClusterGroupObliqueImpl.ts +4 -6
  818. package/src/vectorCluster/vectorClusterGroupOpenlayersImpl.ts +2 -2
  819. package/src/vectorCluster/vectorClusterStyleItem.ts +5 -3
  820. package/src/vectorCluster/vectorClusterSymbols.ts +0 -1
  821. package/src/workers/panoramaImageWorker.ts +50 -0
@@ -1,8 +1,9 @@
1
1
  import { check } from '@vcsuite/check';
2
- import RasterLayer, {
2
+ import type {
3
3
  RasterLayerImplementationOptions,
4
4
  RasterLayerOptions,
5
5
  } from './rasterLayer.js';
6
+ import RasterLayer from './rasterLayer.js';
6
7
  import SingleImageCesiumImpl from './cesium/singleImageCesiumImpl.js';
7
8
  import SingleImageOpenlayersImpl from './openlayers/singleImageOpenlayersImpl.js';
8
9
  import CesiumMap from '../map/cesiumMap.js';
@@ -10,7 +11,7 @@ import OpenlayersMap from '../map/openlayersMap.js';
10
11
  import Extent from '../util/extent.js';
11
12
  import { layerClassRegistry } from '../classRegistry.js';
12
13
  import { wgs84Projection } from '../util/projection.js';
13
- import VcsMap from '../map/vcsMap.js';
14
+ import type VcsMap from '../map/vcsMap.js';
14
15
 
15
16
  export type SingleImageOptions = RasterLayerOptions & {
16
17
  credit?: string;
@@ -6,7 +6,8 @@ import {
6
6
  } from '@vcmap-cesium/engine';
7
7
  import type { Coordinate } from 'ol/coordinate.js';
8
8
  import { getTransform } from 'ol/proj.js';
9
- import Projection, { wgs84Projection } from '../util/projection.js';
9
+ import type Projection from '../util/projection.js';
10
+ import { wgs84Projection } from '../util/projection.js';
10
11
  import { getResourceOrUrl } from './cesium/resourceHelper.js';
11
12
 
12
13
  export type TerrainProviderOptions = {
@@ -1,6 +1,7 @@
1
1
  import { parseBoolean } from '@vcsuite/parsers';
2
2
  import type { Coordinate } from 'ol/coordinate.js';
3
- import Layer, { LayerImplementationOptions, LayerOptions } from './layer.js';
3
+ import type { LayerImplementationOptions, LayerOptions } from './layer.js';
4
+ import Layer from './layer.js';
4
5
  import {
5
6
  getHeightFromTerrainProvider,
6
7
  getTerrainProviderForUrl,
@@ -8,7 +9,7 @@ import {
8
9
  import CesiumMap from '../map/cesiumMap.js';
9
10
  import TerrainCesiumImpl from './cesium/terrainCesiumImpl.js';
10
11
  import { layerClassRegistry } from '../classRegistry.js';
11
- import VcsMap from '../map/vcsMap.js';
12
+ import type VcsMap from '../map/vcsMap.js';
12
13
 
13
14
  export type TerrainOptions = LayerOptions & {
14
15
  requestVertexNormals?: boolean;
@@ -1,7 +1,7 @@
1
1
  import type { Globe } from '@vcmap-cesium/engine';
2
2
  import CesiumTilesetCesiumImpl from './cesium/cesiumTilesetCesiumImpl.js';
3
- import CesiumTilesetLayer from './cesiumTilesetLayer.js';
4
- import FeatureStoreLayer from './featureStoreLayer.js';
3
+ import type CesiumTilesetLayer from './cesiumTilesetLayer.js';
4
+ import type FeatureStoreLayer from './featureStoreLayer.js';
5
5
 
6
6
  function waitForImplTilesLoaded(
7
7
  impl: CesiumTilesetCesiumImpl,
@@ -1,17 +1,19 @@
1
- import Feature from 'ol/Feature.js';
2
- import { HttpReader } from 'flatgeobuf/lib/mjs/http-reader.js';
3
- import TileProvider, {
4
- rectangleToExtent,
5
- TileProviderOptions,
6
- } from './tileProvider.js';
1
+ import type Feature from 'ol/Feature.js';
2
+ import type { HttpReader } from 'flatgeobuf/lib/mjs/http-reader.js';
3
+ import type { TileProviderOptions } from './tileProvider.js';
4
+ import TileProvider, { rectangleToExtent } from './tileProvider.js';
5
+ import type { ProjectionOptions } from '../../util/projection.js';
7
6
  import Projection, {
8
7
  getDefaultProjection,
9
8
  mercatorProjection,
10
- ProjectionOptions,
11
9
  } from '../../util/projection.js';
12
10
  import Extent from '../../util/extent.js';
13
11
  import { tileProviderClassRegistry } from '../../classRegistry.js';
14
- import { getOlFeatures, getValidReader } from '../flatGeobufHelpers.js';
12
+ import {
13
+ getOlFeatures,
14
+ getRootNode,
15
+ getValidReader,
16
+ } from '../flatGeobufHelpers.js';
15
17
 
16
18
  export type FlatGeobufTileProviderOptions = Omit<
17
19
  TileProviderOptions,
@@ -66,6 +68,16 @@ export default class FlatGeobufTileProvider extends TileProvider {
66
68
  return levelConfig.reader;
67
69
  }
68
70
 
71
+ async getLevelExtent(level: number): Promise<Extent> {
72
+ const reader = await this.getReaderAndProjection(level);
73
+ const rootNode = await getRootNode(reader);
74
+
75
+ return new Extent({
76
+ coordinates: [rootNode.minX, rootNode.minY, rootNode.maxX, rootNode.maxY],
77
+ projection: this._projection.toJSON(),
78
+ });
79
+ }
80
+
69
81
  async loader(x: number, y: number, z: number): Promise<Feature[]> {
70
82
  const rectangle = this.tilingScheme.tileXYToRectangle(x, y, z);
71
83
  const extent = rectangleToExtent(rectangle);
@@ -79,13 +91,13 @@ export default class FlatGeobufTileProvider extends TileProvider {
79
91
  }
80
92
 
81
93
  toJSON(): FlatGeobufTileProviderOptions {
82
- const config = {
94
+ const config: FlatGeobufTileProviderOptions & { baseLevels?: number[] } = {
83
95
  levels: Array.from(this._levels.entries()).map(([level, { url }]) => ({
84
96
  level,
85
97
  url,
86
98
  })),
87
99
  ...super.toJSON(),
88
- } as FlatGeobufTileProviderOptions & { baseLevels?: number[] };
100
+ };
89
101
  delete config.baseLevels;
90
102
  if (this._projection.epsg !== getDefaultProjection().epsg) {
91
103
  config.projection = this._projection.toJSON();
@@ -2,10 +2,8 @@ import MVT from 'ol/format/MVT.js';
2
2
  import Feature from 'ol/Feature.js';
3
3
  import { getCenter } from 'ol/extent.js';
4
4
  import type { Geometry } from 'ol/geom.js';
5
- import TileProvider, {
6
- rectangleToExtent,
7
- TileProviderOptions,
8
- } from './tileProvider.js';
5
+ import type { TileProviderOptions } from './tileProvider.js';
6
+ import TileProvider, { rectangleToExtent } from './tileProvider.js';
9
7
  import { getURL } from './urlTemplateTileProvider.js';
10
8
  import { getInitForUrl, requestArrayBuffer } from '../../util/fetch.js';
11
9
  import { tileProviderClassRegistry } from '../../classRegistry.js';
@@ -34,7 +32,7 @@ class MVTTileProvider extends TileProvider {
34
32
 
35
33
  url: string;
36
34
 
37
- private _MVTFormat = new MVT<Feature>({ featureClass: Feature });
35
+ private _mvtFormat = new MVT<Feature>({ featureClass: Feature });
38
36
 
39
37
  constructor(options: MVTTileProviderOptions) {
40
38
  const defaultOptions = MVTTileProvider.getDefaultOptions();
@@ -72,7 +70,7 @@ class MVTTileProvider extends TileProvider {
72
70
  const center = getCenter(extent);
73
71
  const init = getInitForUrl(this.url, headers);
74
72
  const data = await requestArrayBuffer(url, init);
75
- const features = this._MVTFormat.readFeatures(data);
73
+ const features = this._mvtFormat.readFeatures(data);
76
74
  const sx = (extent[2] - extent[0]) / 4096;
77
75
  const sy = -((extent[3] - extent[1]) / 4096);
78
76
  features.forEach((feature) => {
@@ -1,5 +1,6 @@
1
- import { Feature } from 'ol';
2
- import TileProvider, { TileProviderOptions } from './tileProvider.js';
1
+ import type { Feature } from 'ol';
2
+ import type { TileProviderOptions } from './tileProvider.js';
3
+ import TileProvider from './tileProvider.js';
3
4
 
4
5
  export type StaticFeatureTileProviderOptions = Omit<
5
6
  TileProviderOptions,
@@ -28,7 +29,6 @@ export default class StaticFeatureTileProvider extends TileProvider {
28
29
  this._features = options.features || defaultOptions.features;
29
30
  }
30
31
 
31
- // eslint-disable-next-line no-unused-vars
32
32
  loader(
33
33
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
34
34
  _x: number,
@@ -1,7 +1,8 @@
1
1
  import type { GeoJSONObject } from 'ol/format/GeoJSON.js';
2
2
  import type { Feature } from 'ol/index.js';
3
3
  import { parseGeoJSON } from '../geojsonHelpers.js';
4
- import TileProvider, { TileProviderOptions } from './tileProvider.js';
4
+ import type { TileProviderOptions } from './tileProvider.js';
5
+ import TileProvider from './tileProvider.js';
5
6
  import { getInitForUrl, requestJson } from '../../util/fetch.js';
6
7
  import { tileProviderClassRegistry } from '../../classRegistry.js';
7
8
 
@@ -34,7 +35,6 @@ class StaticGeoJSONTileProvider extends TileProvider {
34
35
  this.url = options.url || defaultOptions.url;
35
36
  }
36
37
 
37
- // eslint-disable-next-line no-unused-vars
38
38
  async loader(
39
39
  _x: number,
40
40
  _y: number,
@@ -22,7 +22,8 @@ import {
22
22
  wgs84Projection,
23
23
  wgs84ToMercatorTransformer,
24
24
  } from '../../util/projection.js';
25
- import VcsObject, { VcsObjectOptions } from '../../vcsObject.js';
25
+ import type { VcsObjectOptions } from '../../vcsObject.js';
26
+ import VcsObject from '../../vcsObject.js';
26
27
  import VcsEvent from '../../vcsEvent.js';
27
28
  import { tileProviderClassRegistry } from '../../classRegistry.js';
28
29
  import type Extent from '../../util/extent.js';
@@ -45,8 +46,8 @@ export type TileProviderRtree = RBush<TileProviderRTreeEntry>;
45
46
  /**
46
47
  * resolutions to levels
47
48
  */
48
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
49
- export const mercatorResolutionsToLevel: Array<number> = new Array(25);
49
+
50
+ export const mercatorResolutionsToLevel = new Array<number>(25);
50
51
  for (let i = 0; i < mercatorResolutionsToLevel.length; i++) {
51
52
  mercatorResolutionsToLevel[i] = (20037508.3427892 * 2) / 256 / 2 ** (i + 1);
52
53
  }
@@ -139,12 +140,12 @@ class TileProvider extends VcsObject {
139
140
  /**
140
141
  * cache of tiles for each baseLevel
141
142
  */
142
- cache: Map<number, LRUCache<Promise<TileProviderRtree>>> = new Map();
143
+ cache = new Map<number, LRUCache<Promise<TileProviderRtree>>>();
143
144
 
144
145
  /**
145
146
  * Caches the loaded rTrees for quick Access to all features.
146
147
  */
147
- rtreeCache: Map<string, TileProviderRtree> = new Map();
148
+ rtreeCache = new Map<string, TileProviderRtree>();
148
149
 
149
150
  readonly trackFeaturesToTiles: boolean;
150
151
 
@@ -153,9 +154,9 @@ class TileProvider extends VcsObject {
153
154
  /**
154
155
  * set of currently loaded featureIds with the corresponding tileIds
155
156
  */
156
- readonly featureIdToTileIds: Map<string, Set<string>> = new Map();
157
+ readonly featureIdToTileIds = new Map<string, Set<string>>();
157
158
 
158
- readonly tileLoadedEvent: VcsEvent<TileLoadedEvent> = new VcsEvent();
159
+ readonly tileLoadedEvent = new VcsEvent<TileLoadedEvent>();
159
160
 
160
161
  private _locale = 'en';
161
162
 
@@ -634,11 +635,15 @@ class TileProvider extends VcsObject {
634
635
  * return features;
635
636
  * });
636
637
  */
637
- // eslint-disable-next-line class-methods-use-this,no-unused-vars
638
+ // eslint-disable-next-line class-methods-use-this
638
639
  loader(
640
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
639
641
  _x: number,
642
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
640
643
  _y: number,
644
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
641
645
  _z: number,
646
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
642
647
  _headers?: Record<string, string>,
643
648
  ): Promise<Feature[]> {
644
649
  return Promise.resolve([]);
@@ -655,8 +660,8 @@ class TileProvider extends VcsObject {
655
660
  if (
656
661
  !(
657
662
  this.baseLevels.length === defaultOptions.baseLevels?.length &&
658
- this.baseLevels.every(
659
- (level) => defaultOptions.baseLevels?.includes(level),
663
+ this.baseLevels.every((level) =>
664
+ defaultOptions.baseLevels?.includes(level),
660
665
  )
661
666
  )
662
667
  ) {
@@ -2,7 +2,8 @@ import type { GeoJSONObject } from 'ol/format/GeoJSON.js';
2
2
  import { Math as CesiumMath, Rectangle } from '@vcmap-cesium/engine';
3
3
  import type { Feature } from 'ol/index.js';
4
4
  import { parseGeoJSON } from '../geojsonHelpers.js';
5
- import TileProvider, { TileProviderOptions } from './tileProvider.js';
5
+ import type { TileProviderOptions } from './tileProvider.js';
6
+ import TileProvider from './tileProvider.js';
6
7
  import { getInitForUrl, requestJson } from '../../util/fetch.js';
7
8
  import { tileProviderClassRegistry } from '../../classRegistry.js';
8
9
 
@@ -1,15 +1,15 @@
1
1
  import type { Size } from 'ol/size.js';
2
- import RasterLayer, {
2
+ import type {
3
3
  RasterLayerImplementationOptions,
4
4
  RasterLayerOptions,
5
- TilingScheme,
6
5
  } from './rasterLayer.js';
6
+ import RasterLayer, { TilingScheme } from './rasterLayer.js';
7
7
  import OpenlayersMap from '../map/openlayersMap.js';
8
8
  import CesiumMap from '../map/cesiumMap.js';
9
9
  import TmsOpenlayersImpl from './openlayers/tmsOpenlayersImpl.js';
10
10
  import TmsCesiumImpl from './cesium/tmsCesiumImpl.js';
11
11
  import { layerClassRegistry } from '../classRegistry.js';
12
- import VcsMap from '../map/vcsMap.js';
12
+ import type VcsMap from '../map/vcsMap.js';
13
13
 
14
14
  export type TMSOptions = RasterLayerOptions & {
15
15
  format?: string;
@@ -1,9 +1,8 @@
1
1
  import { unByKey } from 'ol/Observable.js';
2
2
  import type VectorSource from 'ol/source/Vector.js';
3
- import FeatureVisibility, {
4
- FeatureVisibilityAction,
5
- } from './featureVisibility.js';
6
- import GlobalHider from './globalHider.js';
3
+ import type FeatureVisibility from './featureVisibility.js';
4
+ import { FeatureVisibilityAction } from './featureVisibility.js';
5
+ import type GlobalHider from './globalHider.js';
7
6
 
8
7
  /**
9
8
  * Added to ol.source.Vector to determine, when the source has last had an update to its features visibility.
@@ -5,32 +5,30 @@ import Feature from 'ol/Feature.js';
5
5
  import { v4 as uuidv4 } from 'uuid';
6
6
  import { check, oneOf } from '@vcsuite/check';
7
7
  import { parseBoolean } from '@vcsuite/parsers';
8
+ import type { ProjectionOptions } from '../util/projection.js';
8
9
  import Projection, {
9
10
  getDefaultProjection,
10
11
  mercatorProjection,
11
- ProjectionOptions,
12
12
  } from '../util/projection.js';
13
- import Layer, { SplitLayer } from './layer.js';
13
+ import type { SplitLayer } from './layer.js';
14
+ import Layer from './layer.js';
15
+ import type { VectorStyleItemOptions } from '../style/vectorStyleItem.js';
14
16
  import VectorStyleItem, {
15
17
  defaultVectorStyle,
16
- VectorStyleItemOptions,
17
18
  vectorStyleSymbol,
18
19
  } from '../style/vectorStyleItem.js';
19
- import DeclarativeStyleItem, {
20
- DeclarativeStyleItemOptions,
21
- } from '../style/declarativeStyleItem.js';
20
+ import type { DeclarativeStyleItemOptions } from '../style/declarativeStyleItem.js';
21
+ import DeclarativeStyleItem from '../style/declarativeStyleItem.js';
22
22
  import writeStyle from '../style/writeStyle.js';
23
23
  import { alreadyTransformedToMercator } from './vectorSymbols.js';
24
24
  import Extent from '../util/extent.js';
25
- import VectorProperties, {
26
- VcsMeta,
27
- vcsMetaVersion,
28
- VectorPropertiesOptions,
29
- } from './vectorProperties.js';
30
- import FeatureLayer, {
25
+ import type { VcsMeta, VectorPropertiesOptions } from './vectorProperties.js';
26
+ import VectorProperties, { vcsMetaVersion } from './vectorProperties.js';
27
+ import type {
31
28
  FeatureLayerImplementationOptions,
32
29
  FeatureLayerOptions,
33
30
  } from './featureLayer.js';
31
+ import FeatureLayer from './featureLayer.js';
34
32
  import OpenlayersMap from '../map/openlayersMap.js';
35
33
  import VectorOpenlayersImpl from './openlayers/vectorOpenlayersImpl.js';
36
34
  import VectorCesiumImpl from './cesium/vectorCesiumImpl.js';
@@ -38,13 +36,14 @@ import VectorObliqueImpl from './oblique/vectorObliqueImpl.js';
38
36
  import ObliqueMap from '../map/obliqueMap.js';
39
37
  import CesiumMap from '../map/cesiumMap.js';
40
38
  import { originalStyle, updateOriginalStyle } from './featureVisibility.js';
41
- import StyleItem, { StyleItemOptions } from '../style/styleItem.js';
39
+ import type { StyleItemOptions } from '../style/styleItem.js';
40
+ import StyleItem from '../style/styleItem.js';
42
41
  import { layerClassRegistry } from '../classRegistry.js';
43
42
 
44
43
  import type VcsMap from '../map/vcsMap.js';
45
- import { GeoJSONwriteOptions } from './geojsonHelpers.js';
44
+ import type { GeoJSONwriteOptions } from './geojsonHelpers.js';
46
45
  import { vcsLayerName } from './layerSymbols.js';
47
- import CesiumTilesetCesiumImpl from './cesium/cesiumTilesetCesiumImpl.js';
46
+ import type CesiumTilesetCesiumImpl from './cesium/cesiumTilesetCesiumImpl.js';
48
47
  import VcsEvent from '../vcsEvent.js';
49
48
 
50
49
  export type VectorOptions = FeatureLayerOptions & {
@@ -22,8 +22,8 @@ import {
22
22
  } from '@vcsuite/parsers';
23
23
  import { getLogger as getLoggerByName, type Logger } from '@vcsuite/logger';
24
24
  import VcsEvent from '../vcsEvent.js';
25
- import { DeclarativeStyleItemOptions } from '../style/declarativeStyleItem.js';
26
- import { VectorStyleItemOptions } from '../style/vectorStyleItem.js';
25
+ import type { DeclarativeStyleItemOptions } from '../style/declarativeStyleItem.js';
26
+ import type { VectorStyleItemOptions } from '../style/vectorStyleItem.js';
27
27
  import type { FlightInstanceMeta } from '../util/flight/flightInstance.js';
28
28
 
29
29
  function getLogger(): Logger {
@@ -41,12 +41,12 @@ export type VectorPropertiesGeometryOptions<T extends PrimitiveOptionsType> =
41
41
  T extends PrimitiveOptionsType.CYLINDER
42
42
  ? ConstructorParameters<typeof CylinderGeometry>[0]
43
43
  : T extends PrimitiveOptionsType.SPHERE
44
- ? ConstructorParameters<typeof SphereGeometry>[0]
45
- : T extends PrimitiveOptionsType.ELLIPSOID
46
- ? ConstructorParameters<typeof EllipsoidGeometry>[0]
47
- : T extends PrimitiveOptionsType.BOX
48
- ? ConstructorParameters<typeof BoxGeometry>[0]
49
- : never;
44
+ ? ConstructorParameters<typeof SphereGeometry>[0]
45
+ : T extends PrimitiveOptionsType.ELLIPSOID
46
+ ? ConstructorParameters<typeof EllipsoidGeometry>[0]
47
+ : T extends PrimitiveOptionsType.BOX
48
+ ? ConstructorParameters<typeof BoxGeometry>[0]
49
+ : never;
50
50
 
51
51
  export type VectorPropertiesPrimitiveOptions<
52
52
  T extends PrimitiveOptionsType = PrimitiveOptionsType,
@@ -199,6 +199,8 @@ export type VectorPropertiesPrimitive = VectorPropertiesBaseOptions & {
199
199
  */
200
200
  export const vcsMetaVersion = '2.1';
201
201
 
202
+ // legacy
203
+ // eslint-disable-next-line @typescript-eslint/naming-convention
202
204
  export const AltitudeModeCesium: Record<AltitudeModeType, HeightReference> = {
203
205
  clampToGround: HeightReference.CLAMP_TO_GROUND,
204
206
  clampTo3DTiles: HeightReference.CLAMP_TO_3D_TILE,
@@ -209,6 +211,8 @@ export const AltitudeModeCesium: Record<AltitudeModeType, HeightReference> = {
209
211
  relativeToTerrain: HeightReference.RELATIVE_TO_TERRAIN,
210
212
  };
211
213
 
214
+ // legacy
215
+ // eslint-disable-next-line @typescript-eslint/naming-convention
212
216
  export const ClassificationTypeCesium: Record<
213
217
  ClassificationTypeType,
214
218
  ClassificationType
@@ -600,11 +604,11 @@ class VectorProperties {
600
604
  }
601
605
 
602
606
  getEyeOffset(feature: Feature): Cartesian3 | undefined {
603
- const featureValue = feature.get('olcs_eyeOffset') as unknown | undefined;
607
+ const featureValue = feature.get('olcs_eyeOffset') as unknown;
604
608
  if (!featureValue) {
605
- const zCoordinateEyeOffset = feature.get('olcs_zCoordinateEyeOffset') as
606
- | unknown
607
- | undefined;
609
+ const zCoordinateEyeOffset = feature.get(
610
+ 'olcs_zCoordinateEyeOffset',
611
+ ) as unknown;
608
612
  if (zCoordinateEyeOffset) {
609
613
  getLogger().deprecate(
610
614
  'zCoordinateEyeOffset',
@@ -628,7 +632,7 @@ class VectorProperties {
628
632
  }
629
633
  }
630
634
 
631
- getHeightAboveGround(feature: Feature): number {
635
+ getHeightAboveGround(feature: Feature): number | undefined {
632
636
  return parseNumber(
633
637
  feature.get('olcs_heightAboveGround'),
634
638
  this.heightAboveGround,
@@ -1385,9 +1389,16 @@ class VectorProperties {
1385
1389
  * @param propertyValues An array of values for a specific property from different features.
1386
1390
  * @returns Whether all values are equal.
1387
1391
  */
1388
- function isAllEqual<
1389
- T extends string | number | boolean | number[] | Record<string, unknown>,
1390
- >(propertyValues: (T | undefined)[]): boolean {
1392
+ function isAllEqual(
1393
+ propertyValues: (
1394
+ | string
1395
+ | number
1396
+ | boolean
1397
+ | number[]
1398
+ | Record<string, unknown>
1399
+ | undefined
1400
+ )[],
1401
+ ): boolean {
1391
1402
  return propertyValues.every((curr, index, array) => {
1392
1403
  if (index === 0) {
1393
1404
  return true;
@@ -44,3 +44,13 @@ export const createSync: unique symbol = Symbol('createSync');
44
44
  * Can be present on ol/Feature to indicate the current primitives / billboards / models / labels associated with this feature
45
45
  */
46
46
  export const primitives: unique symbol = Symbol('primitives');
47
+
48
+ /**
49
+ * An INTERNAL symbol used to keep track of the scale of scaled feature primitives.
50
+ */
51
+ export const scaleSymbol: unique symbol = Symbol('Scale');
52
+
53
+ /**
54
+ * Attached to all panorama features with the properties required to create a panorama image
55
+ */
56
+ export const panoramaFeature = Symbol('panoramaFeature');
@@ -10,22 +10,22 @@ import CesiumMap from '../map/cesiumMap.js';
10
10
  import VectorRasterTileCesiumImpl from './cesium/vectorRasterTileCesiumImpl.js';
11
11
  import OpenlayersMap from '../map/openlayersMap.js';
12
12
  import VectorTileOpenlayersImpl from './openlayers/vectorTileOpenlayersImpl.js';
13
- import FeatureLayer, {
13
+ import type {
14
14
  FeatureLayerImplementation,
15
15
  FeatureLayerImplementationOptions,
16
16
  FeatureLayerOptions,
17
17
  } from './featureLayer.js';
18
+ import FeatureLayer from './featureLayer.js';
19
+ import type { VectorStyleItemOptions } from '../style/vectorStyleItem.js';
18
20
  import VectorStyleItem, {
19
21
  defaultVectorStyle,
20
- VectorStyleItemOptions,
21
22
  } from '../style/vectorStyleItem.js';
22
- import VectorProperties, {
23
- VectorPropertiesOptions,
24
- } from './vectorProperties.js';
25
- import DeclarativeStyleItem, {
26
- DeclarativeStyleItemOptions,
27
- } from '../style/declarativeStyleItem.js';
28
- import FeatureVisibility, {
23
+ import type { VectorPropertiesOptions } from './vectorProperties.js';
24
+ import VectorProperties from './vectorProperties.js';
25
+ import type { DeclarativeStyleItemOptions } from '../style/declarativeStyleItem.js';
26
+ import DeclarativeStyleItem from '../style/declarativeStyleItem.js';
27
+ import type FeatureVisibility from './featureVisibility.js';
28
+ import {
29
29
  FeatureVisibilityAction,
30
30
  globalHidden,
31
31
  hidden,
@@ -39,16 +39,20 @@ import {
39
39
  layerClassRegistry,
40
40
  tileProviderClassRegistry,
41
41
  } from '../classRegistry.js';
42
- import TileProvider, {
42
+ import type {
43
43
  TileLoadedEvent,
44
- type TileProviderOptions,
45
44
  TileProviderRtree,
45
+ TileProviderOptions,
46
46
  } from './tileProvider/tileProvider.js';
47
- import GlobalHider from './globalHider.js';
47
+ import TileProvider from './tileProvider/tileProvider.js';
48
+ import type GlobalHider from './globalHider.js';
48
49
  import Extent from '../util/extent.js';
49
- import VcsMap from '../map/vcsMap.js';
50
- import StyleItem from '../style/styleItem.js';
50
+ import type VcsMap from '../map/vcsMap.js';
51
+ import type StyleItem from '../style/styleItem.js';
51
52
  import VectorTileCesiumImpl from './cesium/vectorTileCesiumImpl.js';
53
+ import VectorTilePanoramaImpl from './panorama/vectorTilePanoramaImpl.js';
54
+ import PanoramaMap from '../map/panoramaMap.js';
55
+ import type LayerImplementation from './layerImplementation.js';
52
56
 
53
57
  /**
54
58
  * synchronizes featureVisibility Symbols on the feature;
@@ -127,13 +131,21 @@ export interface VectorTileImplementation extends FeatureLayerImplementation {
127
131
  updateTiles(tiles: string[], featureVisibilityChange: boolean): void;
128
132
  }
129
133
 
134
+ export type VectorTileImpls =
135
+ | VectorTileOpenlayersImpl
136
+ | VectorRasterTileCesiumImpl
137
+ | VectorTileCesiumImpl
138
+ | VectorTilePanoramaImpl;
139
+
130
140
  /**
131
141
  * VectorTileLayer Layer for tiled vector Data. Can be connected to data with a TileProvider
132
142
  * @group Layer
133
143
  */
134
- class VectorTileLayer extends FeatureLayer<
135
- VectorTileOpenlayersImpl | VectorRasterTileCesiumImpl | VectorTileCesiumImpl
136
- > {
144
+ class VectorTileLayer<
145
+ I extends LayerImplementation<VcsMap> &
146
+ FeatureLayerImplementation &
147
+ VectorTileImplementation = VectorTileImpls,
148
+ > extends FeatureLayer<I | VectorTileImpls> {
137
149
  static get className(): string {
138
150
  return 'VectorTileLayer';
139
151
  }
@@ -259,9 +271,9 @@ class VectorTileLayer extends FeatureLayer<
259
271
  async initialize(): Promise<void> {
260
272
  if (!this.initialized) {
261
273
  this._tileLoadEventListener =
262
- this.tileProvider.tileLoadedEvent.addEventListener((event) =>
263
- this._handleTileLoaded(event),
264
- );
274
+ this.tileProvider.tileLoadedEvent.addEventListener((event) => {
275
+ this._handleTileLoaded(event);
276
+ });
265
277
  this._vectorPropertiesChangedListener =
266
278
  this.vectorProperties.propertyChanged.addEventListener(() => {
267
279
  // eslint-disable-next-line no-void
@@ -327,7 +339,7 @@ class VectorTileLayer extends FeatureLayer<
327
339
 
328
340
  this._featureVisibilityListeners = [
329
341
  this.featureVisibility.changed.addEventListener(({ action, ids }) => {
330
- const tileIdsChanged: Set<string> = new Set();
342
+ const tileIdsChanged = new Set<string>();
331
343
  ids.forEach((id) => {
332
344
  const tileIds = this.tileProvider.featureIdToTileIds.get(
333
345
  id as string,
@@ -365,7 +377,7 @@ class VectorTileLayer extends FeatureLayer<
365
377
  if (this.globalHider) {
366
378
  this._featureVisibilityListeners.push(
367
379
  this.globalHider.changed.addEventListener(({ action, ids }) => {
368
- const tileIdsChanged: Set<string> = new Set();
380
+ const tileIdsChanged = new Set<string>();
369
381
  ids.forEach((id) => {
370
382
  const tileIds = this.tileProvider.featureIdToTileIds.get(
371
383
  id as string,
@@ -449,13 +461,7 @@ class VectorTileLayer extends FeatureLayer<
449
461
  };
450
462
  }
451
463
 
452
- createImplementationsForMap(
453
- map: VcsMap,
454
- ): (
455
- | VectorTileCesiumImpl
456
- | VectorRasterTileCesiumImpl
457
- | VectorTileOpenlayersImpl
458
- )[] {
464
+ createImplementationsForMap(map: VcsMap): (I | VectorTileImpls)[] {
459
465
  if (map instanceof CesiumMap) {
460
466
  return [
461
467
  this._renderer === 'image'
@@ -470,6 +476,10 @@ class VectorTileLayer extends FeatureLayer<
470
476
  ];
471
477
  }
472
478
 
479
+ if (map instanceof PanoramaMap) {
480
+ return [new VectorTilePanoramaImpl(map, this.getImplementationOptions())];
481
+ }
482
+
473
483
  return [];
474
484
  }
475
485
 
@@ -1,5 +1,6 @@
1
1
  import WFSFormat from 'ol/format/WFS.js';
2
- import VectorLayer, { VectorOptions } from './vectorLayer.js';
2
+ import type { VectorOptions } from './vectorLayer.js';
3
+ import VectorLayer from './vectorLayer.js';
3
4
  import Projection from '../util/projection.js';
4
5
  import { layerClassRegistry } from '../classRegistry.js';
5
6
  import { getInitForUrl, requestUrl } from '../util/fetch.js';
@@ -128,19 +129,21 @@ class WFSLayer extends VectorLayer {
128
129
  init.method = 'POST';
129
130
  init.body = postData;
130
131
  init.headers = {
132
+ // eslint-disable-next-line @typescript-eslint/no-misused-spread
131
133
  ...init.headers,
132
- ...{
133
- 'Content-Type': 'application/text+xml',
134
- },
134
+ // eslint-disable-next-line @typescript-eslint/naming-convention
135
+ 'Content-Type': 'application/text+xml',
135
136
  };
136
137
  this._dataFetchedPromise = requestUrl(this.url, init)
137
138
  .then((response) => response.text())
138
- .then((data) => this._parseWFSData(data))
139
- .catch((err) => {
139
+ .then((data) => {
140
+ this._parseWFSData(data);
141
+ })
142
+ .catch((err: unknown) => {
140
143
  this.getLogger().info(
141
144
  `Could not send request for loading layer content (${String(err)})`,
142
145
  );
143
- return Promise.reject(err);
146
+ return Promise.reject(err as Error);
144
147
  });
145
148
 
146
149
  return this._dataFetchedPromise;