@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
@@ -19,11 +19,11 @@ class ClippingPolygonObjectCollection extends Collection<ClippingPolygonObject>
19
19
 
20
20
  private _listener: Array<() => void>;
21
21
 
22
- private _mapListener: Map<string, () => void> = new Map();
22
+ private _mapListener = new Map<string, () => void>();
23
23
 
24
- private _itemListener: Map<string, () => void> = new Map();
24
+ private _itemListener = new Map<string, () => void>();
25
25
 
26
- stateChanged: VcsEvent<ClippingPolygonObject> = new VcsEvent();
26
+ stateChanged = new VcsEvent<ClippingPolygonObject>();
27
27
 
28
28
  constructor(app: VcsApp) {
29
29
  super();
@@ -94,13 +94,13 @@ class ClippingPolygonObjectCollection extends Collection<ClippingPolygonObject>
94
94
  ];
95
95
  }
96
96
 
97
- _getActiveCesiumMaps(): CesiumMap[] {
97
+ private _getActiveCesiumMaps(): CesiumMap[] {
98
98
  return this._app.maps
99
99
  .getByType(CesiumMap.className)
100
100
  .filter((map) => map.active) as CesiumMap[];
101
101
  }
102
102
 
103
- _setMapListener(map: CesiumMap): () => void {
103
+ private _setMapListener(map: CesiumMap): () => void {
104
104
  const listener = [
105
105
  map.stateChanged.addEventListener((state) => {
106
106
  if (state === MapState.INACTIVE) {
@@ -154,52 +154,56 @@ class ClippingPolygonObjectCollection extends Collection<ClippingPolygonObject>
154
154
  }),
155
155
  ];
156
156
 
157
- return () => listener.forEach((cb) => cb());
157
+ return () => {
158
+ listener.forEach((cb) => {
159
+ cb();
160
+ });
161
+ };
158
162
  }
159
163
 
160
- _setItemListener(item: ClippingPolygonObject): () => void {
164
+ private _setItemListener(item: ClippingPolygonObject): () => void {
161
165
  const listener = [
162
166
  item.stateChanged.addEventListener(() => {
163
167
  const maps = this._getActiveCesiumMaps();
164
168
  if (item.active) {
165
- maps.forEach((map) =>
169
+ maps.forEach((map) => {
166
170
  addClippingPolygonObjectToMap(
167
171
  map,
168
172
  item.clippingPolygon,
169
173
  item.terrain,
170
174
  item.layerNames,
171
- ),
172
- );
175
+ );
176
+ });
173
177
  } else {
174
- maps.forEach((map) =>
178
+ maps.forEach((map) => {
175
179
  removeClippingPolygonFromMap(
176
180
  map,
177
181
  item.clippingPolygon,
178
182
  item.terrain,
179
183
  item.layerNames,
180
- ),
181
- );
184
+ );
185
+ });
182
186
  }
183
187
  }),
184
188
  item.clippingPolygonChanged.addEventListener(({ oldValue, newValue }) => {
185
189
  if (item.active) {
186
190
  const maps = this._getActiveCesiumMaps();
187
- maps.forEach((map) =>
191
+ maps.forEach((map) => {
188
192
  removeClippingPolygonFromMap(
189
193
  map,
190
194
  oldValue,
191
195
  item.terrain,
192
196
  item.layerNames,
193
- ),
194
- );
195
- maps.forEach((map) =>
197
+ );
198
+ });
199
+ maps.forEach((map) => {
196
200
  addClippingPolygonObjectToMap(
197
201
  map,
198
202
  newValue,
199
203
  item.terrain,
200
204
  item.layerNames,
201
- ),
202
- );
205
+ );
206
+ });
203
207
  }
204
208
  }),
205
209
  item.terrainChanged.addEventListener(() => {
@@ -208,11 +212,13 @@ class ClippingPolygonObjectCollection extends Collection<ClippingPolygonObject>
208
212
  .map((map) => map.getScene()?.globe)
209
213
  .filter((g) => !!g);
210
214
  if (item.terrain) {
211
- globes.forEach((g) => addClippingPolygon(g, item.clippingPolygon));
215
+ globes.forEach((g) => {
216
+ addClippingPolygon(g, item.clippingPolygon);
217
+ });
212
218
  } else {
213
- globes.forEach((g) =>
214
- removeClippingPolygon(g, item.clippingPolygon),
215
- );
219
+ globes.forEach((g) => {
220
+ removeClippingPolygon(g, item.clippingPolygon);
221
+ });
216
222
  }
217
223
  }
218
224
  }),
@@ -235,13 +241,23 @@ class ClippingPolygonObjectCollection extends Collection<ClippingPolygonObject>
235
241
  }),
236
242
  ];
237
243
 
238
- return () => listener.forEach((cb) => cb());
244
+ return () => {
245
+ listener.forEach((cb) => {
246
+ cb();
247
+ });
248
+ };
239
249
  }
240
250
 
241
251
  destroy(): void {
242
- this._listener.forEach((cb) => cb());
243
- this._mapListener.forEach((cb) => cb());
244
- this._itemListener.forEach((cb) => cb());
252
+ this._listener.forEach((cb) => {
253
+ cb();
254
+ });
255
+ this._mapListener.forEach((cb) => {
256
+ cb();
257
+ });
258
+ this._itemListener.forEach((cb) => {
259
+ cb();
260
+ });
245
261
  super.destroy();
246
262
  }
247
263
  }
@@ -14,7 +14,7 @@ class Collection<T> {
14
14
  iterable: Iterable<F>,
15
15
  uniqueKey?: keyof F | false,
16
16
  ): Collection<F> {
17
- const collection: Collection<F> = new Collection(uniqueKey);
17
+ const collection = new Collection<F>(uniqueKey);
18
18
  if (iterable) {
19
19
  for (const i of iterable) {
20
20
  collection.add(i);
@@ -0,0 +1,155 @@
1
+ import type { Geometry } from 'ol/geom.js';
2
+ import {
3
+ GeometryCollection,
4
+ MultiLineString,
5
+ MultiPoint,
6
+ MultiPolygon,
7
+ } from 'ol/geom.js';
8
+ import type { Feature } from 'ol';
9
+ import type { Coordinate } from 'ol/coordinate.js';
10
+ import type { Scene } from '@vcmap-cesium/engine';
11
+ import {
12
+ HeightReference,
13
+ sampleTerrainMostDetailed,
14
+ } from '@vcmap-cesium/engine';
15
+ import type VectorProperties from '../layer/vectorProperties.js';
16
+ import {
17
+ getHeightInfo,
18
+ isClampedHeightReference,
19
+ isRelativeHeightReference,
20
+ type RelativeHeightReference,
21
+ type VectorHeightInfo,
22
+ } from './featureconverter/vectorHeightInfo.js';
23
+ import { getSingleGeometriesFromGeometry } from './featureconverter/convert.js';
24
+ import { mercatorToCartographic } from './math.js';
25
+ import {
26
+ drapeGeometryOnSurface,
27
+ from2Dto3DLayout,
28
+ getFlatCoordinateReferences,
29
+ is2DLayout,
30
+ } from './geometryHelpers.js';
31
+
32
+ function setZCoordinate(geometry: Geometry, z: number): void {
33
+ const layout = geometry.getLayout();
34
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
35
+ const coordinates = geometry.getCoordinates() as any[];
36
+ const flatCoordinates = getFlatCoordinateReferences(geometry, coordinates);
37
+
38
+ flatCoordinates.forEach((c) => {
39
+ if (layout === 'XYM') {
40
+ c[3] = c[2];
41
+ c[2] = z;
42
+ } else {
43
+ c[2] = z;
44
+ }
45
+ });
46
+
47
+ geometry.setCoordinates(
48
+ coordinates,
49
+ layout === 'XYM' || layout === 'XYZM' ? 'XYZM' : 'XYZ',
50
+ );
51
+ }
52
+
53
+ export async function createAbsoluteFeature(
54
+ feature: Feature,
55
+ vectorProperties: VectorProperties,
56
+ scene: Scene,
57
+ ): Promise<Feature | null> {
58
+ const clone = feature.clone();
59
+ const geometry = clone.getGeometry();
60
+ if (!geometry) {
61
+ return null;
62
+ }
63
+
64
+ const altitudeMode = vectorProperties.getAltitudeMode(clone);
65
+ let groundLevel = vectorProperties.getGroundLevel(clone);
66
+
67
+ if (altitudeMode === HeightReference.NONE) {
68
+ if (groundLevel != null) {
69
+ setZCoordinate(geometry, groundLevel);
70
+ } else if (is2DLayout(geometry.getLayout())) {
71
+ await from2Dto3DLayout(geometry, scene, HeightReference.CLAMP_TO_GROUND);
72
+ }
73
+ } else if (isClampedHeightReference(altitudeMode)) {
74
+ if (groundLevel != null) {
75
+ setZCoordinate(geometry, groundLevel);
76
+ } else {
77
+ await drapeGeometryOnSurface(
78
+ geometry,
79
+ scene,
80
+ altitudeMode !== HeightReference.CLAMP_TO_TERRAIN
81
+ ? HeightReference.CLAMP_TO_GROUND
82
+ : HeightReference.CLAMP_TO_TERRAIN,
83
+ );
84
+ }
85
+ } else if (isRelativeHeightReference(altitudeMode)) {
86
+ const singleGeometries = getSingleGeometriesFromGeometry(geometry);
87
+ await Promise.all(
88
+ singleGeometries.map(async (singleGeometry) => {
89
+ const heightInfo = getHeightInfo(
90
+ clone,
91
+ singleGeometry,
92
+ vectorProperties,
93
+ ) as VectorHeightInfo<RelativeHeightReference>;
94
+
95
+ ({ groundLevel } = heightInfo);
96
+ if (heightInfo.clampOrigin) {
97
+ const cartographics = [
98
+ mercatorToCartographic(heightInfo.clampOrigin),
99
+ ];
100
+ if (
101
+ heightInfo.heightReference === HeightReference.RELATIVE_TO_TERRAIN
102
+ ) {
103
+ await sampleTerrainMostDetailed(
104
+ scene.terrainProvider,
105
+ cartographics,
106
+ );
107
+ } else {
108
+ await scene.sampleHeightMostDetailed(cartographics);
109
+ }
110
+ groundLevel = cartographics[0].height;
111
+ }
112
+
113
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
114
+ const coordinates = singleGeometry.getCoordinates() as any[];
115
+ const flatCoordinates = getFlatCoordinateReferences(
116
+ singleGeometry,
117
+ coordinates,
118
+ );
119
+ const { heightAboveGround } = heightInfo;
120
+ const setCoordinate =
121
+ heightAboveGround == null
122
+ ? (c: Coordinate): void => {
123
+ c[2] += groundLevel as number;
124
+ }
125
+ : (c: Coordinate): void => {
126
+ c[2] = (groundLevel as number) + heightAboveGround;
127
+ };
128
+ flatCoordinates.forEach(setCoordinate);
129
+ singleGeometry.setCoordinates(coordinates, 'XYZ');
130
+ }),
131
+ );
132
+
133
+ if (geometry instanceof MultiPoint) {
134
+ geometry.setCoordinates(
135
+ singleGeometries.map((g) => g.getCoordinates() as Coordinate),
136
+ );
137
+ } else if (geometry instanceof MultiPolygon) {
138
+ geometry.setCoordinates(
139
+ singleGeometries.map((g) => g.getCoordinates() as Coordinate[][]),
140
+ );
141
+ } else if (geometry instanceof MultiLineString) {
142
+ geometry.setCoordinates(
143
+ singleGeometries.map((g) => g.getCoordinates() as Coordinate[]),
144
+ );
145
+ } else if (geometry instanceof GeometryCollection) {
146
+ geometry.setGeometries(singleGeometries);
147
+ }
148
+ }
149
+
150
+ clone.set('olcs_altitudeMode', 'absolute');
151
+ clone.unset('olcs_groundLevel');
152
+ clone.unset('olcs_heightAboveGround');
153
+
154
+ return clone;
155
+ }
@@ -1,5 +1,5 @@
1
1
  import { check, oneOf } from '@vcsuite/check';
2
- import VcsApp from '../../vcsApp.js';
2
+ import type VcsApp from '../../vcsApp.js';
3
3
  import FeatureStoreLayer from '../../layer/featureStoreLayer.js';
4
4
  import CesiumMap from '../../map/cesiumMap.js';
5
5
  import { isMobile } from '../isMobile.js';
@@ -146,9 +146,8 @@ class DisplayQuality {
146
146
 
147
147
  /**
148
148
  * The current quality view model
149
- * @private
150
149
  */
151
- get _viewModel(): DisplayQualityViewModelOptions | undefined {
150
+ private get _viewModel(): DisplayQualityViewModelOptions | undefined {
152
151
  if (this._currentQualityLevel) {
153
152
  return this._viewModelSettings[this._currentQualityLevel]!;
154
153
  }
@@ -167,10 +166,11 @@ class DisplayQuality {
167
166
  Object.entries(options as Record<string, unknown>)
168
167
  .filter(([, value]) => value != null)
169
168
  .map(([key, value]) => {
169
+ const enumKey = key as DisplayQualityLevel;
170
170
  if (
171
- key === DisplayQualityLevel.LOW ||
172
- key === DisplayQualityLevel.MEDIUM ||
173
- key === DisplayQualityLevel.HIGH
171
+ enumKey === DisplayQualityLevel.LOW ||
172
+ enumKey === DisplayQualityLevel.MEDIUM ||
173
+ enumKey === DisplayQualityLevel.HIGH
174
174
  ) {
175
175
  return [
176
176
  key,
@@ -267,9 +267,8 @@ class DisplayQuality {
267
267
  /**
268
268
  * Set layer quality
269
269
  * @param layerName
270
- * @private
271
270
  */
272
- _setLayerQuality(layerName: string | undefined): void {
271
+ private _setLayerQuality(layerName: string | undefined): void {
273
272
  check(layerName, String);
274
273
 
275
274
  const layer = this._app.layers.getByKey(layerName);
@@ -3,10 +3,9 @@ import { Feature } from 'ol';
3
3
  import type { Geometry, LineString, Polygon } from 'ol/geom.js';
4
4
  import { unByKey } from 'ol/Observable.js';
5
5
  import VcsEvent from '../../vcsEvent.js';
6
+ import type { EditorSession, GeometryToType } from './editorSessionHelpers.js';
6
7
  import {
7
8
  setupPickingBehavior,
8
- EditorSession,
9
- GeometryToType,
10
9
  GeometryType,
11
10
  SessionType,
12
11
  setupInteractionChain,
@@ -23,11 +22,12 @@ import { createSync } from '../../layer/vectorSymbols.js';
23
22
  import geometryIsValid from './validateGeoemetry.js';
24
23
  import ObliqueMap from '../../map/obliqueMap.js';
25
24
  import { cursorMap } from './interactions/editGeometryMouseOverInteraction.js';
26
- import { AltitudeModeType } from '../../layer/vectorProperties.js';
25
+ import type { AltitudeModeType } from '../../layer/vectorProperties.js';
27
26
  import CreationSnapping from './interactions/creationSnapping.js';
28
27
  import { syncScratchLayerVectorProperties } from './editorHelpers.js';
29
28
  import LayerSnapping from './interactions/layerSnapping.js';
30
- import { SnapType, snapTypes } from './snappingHelpers.js';
29
+ import type { SnapType } from './snappingHelpers.js';
30
+ import { snapTypes } from './snappingHelpers.js';
31
31
  import SegmentLengthInteraction from './interactions/segmentLengthInteraction.js';
32
32
 
33
33
  export type CreateFeatureSession<T extends GeometryType> =
@@ -45,14 +45,14 @@ type InteractionOfGeometryType<T extends GeometryType> =
45
45
  T extends GeometryType.Point
46
46
  ? CreatePointInteraction
47
47
  : T extends GeometryType.Polygon
48
- ? CreatePolygonInteraction
49
- : T extends GeometryType.LineString
50
- ? CreateLineStringInteraction
51
- : T extends GeometryType.BBox
52
- ? CreateBBoxInteraction
53
- : T extends GeometryType.Circle
54
- ? CreateCircleInteraction
55
- : never;
48
+ ? CreatePolygonInteraction
49
+ : T extends GeometryType.LineString
50
+ ? CreateLineStringInteraction
51
+ : T extends GeometryType.BBox
52
+ ? CreateBBoxInteraction
53
+ : T extends GeometryType.Circle
54
+ ? CreateCircleInteraction
55
+ : never;
56
56
 
57
57
  function createInteractionForGeometryType<T extends GeometryType>(
58
58
  geometryType: T,
@@ -11,16 +11,16 @@ import { getLogger } from '@vcsuite/logger';
11
11
  import { Math as CesiumMath } from '@vcmap-cesium/engine';
12
12
 
13
13
  import VcsEvent from '../../vcsEvent.js';
14
+ import type { EditorSession } from './editorSessionHelpers.js';
14
15
  import {
15
16
  setupInteractionChain,
16
17
  SessionType,
17
18
  setupScratchLayer,
18
- EditorSession,
19
19
  } from './editorSessionHelpers.js';
20
20
  import createTransformationHandler from './transformation/transformationHandler.js';
21
+ import type { TransformationHandler } from './transformation/transformationTypes.js';
21
22
  import {
22
23
  AxisAndPlanes,
23
- TransformationHandler,
24
24
  TransformationMode,
25
25
  } from './transformation/transformationTypes.js';
26
26
  import MapInteractionController from './interactions/mapInteractionController.js';
@@ -154,7 +154,7 @@ function startEditFeaturesSession(
154
154
  const currentFeatures: Feature[] = [];
155
155
 
156
156
  // The allow picking prop needs to be set false for the selected features to make sure that the transformation handler can always be selected.
157
- const allowPickingMap: Map<string | number, boolean | undefined> = new Map();
157
+ const allowPickingMap = new Map<string | number, boolean | undefined>();
158
158
  let modificationKey: ModificationKeyType;
159
159
  /** Callback to remove the modifier changed listener. */
160
160
  const modifierChangedListener =
@@ -194,7 +194,9 @@ function startEditFeaturesSession(
194
194
  const { exclusiveInteractionId } = app.maps.eventHandler;
195
195
  const removeRightClickStart = app.maps.eventHandler.addExclusiveInteraction(
196
196
  rightClickStart,
197
- () => interactionRemoved.raiseEvent(),
197
+ () => {
198
+ interactionRemoved.raiseEvent();
199
+ },
198
200
  0,
199
201
  exclusiveInteractionId,
200
202
  );
@@ -9,10 +9,10 @@ import type {
9
9
  Point,
10
10
  Polygon,
11
11
  } from 'ol/geom.js';
12
- import { EventsKey } from 'ol/events.js';
12
+ import type { EventsKey } from 'ol/events.js';
13
+ import type { EditorSession } from './editorSessionHelpers.js';
13
14
  import {
14
15
  setupPickingBehavior,
15
- EditorSession,
16
16
  GeometryType,
17
17
  SessionType,
18
18
  setupInteractionChain,
@@ -44,7 +44,8 @@ import TranslationSnapping from './interactions/translationSnapping.js';
44
44
  import { vertexIndexSymbol } from './editorSymbols.js';
45
45
  import LayerSnapping from './interactions/layerSnapping.js';
46
46
  import { EventType } from '../../interaction/interactionType.js';
47
- import { SnapType, snapTypes } from './snappingHelpers.js';
47
+ import type { SnapType } from './snappingHelpers.js';
48
+ import { snapTypes } from './snappingHelpers.js';
48
49
  import SegmentLengthInteraction from './interactions/segmentLengthInteraction.js';
49
50
 
50
51
  export type EditGeometrySession = EditorSession<SessionType.EDIT_GEOMETRY> & {
@@ -2,8 +2,9 @@ import Point from 'ol/geom/Point.js';
2
2
  import Feature from 'ol/Feature.js';
3
3
  import type { Coordinate } from 'ol/coordinate.js';
4
4
  import type { Geometry } from 'ol/geom.js';
5
- import { GeometryLayout } from 'ol/geom/Geometry.js';
5
+ import type { GeometryLayout } from 'ol/geom/Geometry.js';
6
6
 
7
+ import type { Cesium3DTileFeature, Scene, Camera } from '@vcmap-cesium/engine';
7
8
  import {
8
9
  Cartesian2,
9
10
  Cartesian3,
@@ -12,9 +13,6 @@ import {
12
13
  Ray,
13
14
  IntersectionTests,
14
15
  Cartographic,
15
- Cesium3DTileFeature,
16
- type Scene,
17
- type Camera,
18
16
  } from '@vcmap-cesium/engine';
19
17
 
20
18
  import { getLogger } from '@vcsuite/logger';
@@ -28,10 +26,9 @@ import {
28
26
  doNotTransform,
29
27
  } from '../../layer/vectorSymbols.js';
30
28
  import type VcsMap from '../../map/vcsMap.js';
31
- import VectorProperties, {
32
- PropertyChangedKey,
33
- } from '../../layer/vectorProperties.js';
34
- import VectorLayer from '../../layer/vectorLayer.js';
29
+ import type { PropertyChangedKey } from '../../layer/vectorProperties.js';
30
+ import type VectorProperties from '../../layer/vectorProperties.js';
31
+ import type VectorLayer from '../../layer/vectorLayer.js';
35
32
 
36
33
  export type Vertex = Feature<Point> & { [vertexIndexSymbol]: number };
37
34
 
@@ -56,10 +53,11 @@ export const vectorPropertyChangeKeys: PropertyChangedKey[] = [
56
53
  'heightAboveGround',
57
54
  ];
58
55
 
59
- function assignVectorProperty<
60
- K extends PropertyChangedKey,
61
- V extends VectorProperties[K],
62
- >(props: VectorProperties, key: K, value: V): void {
56
+ function assignVectorProperty<K extends PropertyChangedKey>(
57
+ props: VectorProperties,
58
+ key: K,
59
+ value: VectorProperties[K],
60
+ ): void {
63
61
  props[key] = value;
64
62
  }
65
63
 
@@ -373,6 +371,8 @@ export async function drapeGeometryOnTerrain(
373
371
  'drapeGeometryOnTerrain is deprecated and will be removed in 6.1. Use drapeGeometryOnSurface instead.',
374
372
  );
375
373
  if (map instanceof CesiumMap) {
374
+ // oll type
375
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
376
376
  const coordinates = geometry.getCoordinates() as any[];
377
377
  const flats = getFlatCoordinateReferences(geometry, coordinates);
378
378
  await map.getHeightFromTerrain(flats);
@@ -394,6 +394,8 @@ export async function placeGeometryOnTerrain(
394
394
  'place geometry on terrain is deprecated and will be removed in 6.1. Use placeGeometryOnSurface instead.',
395
395
  );
396
396
  if (map instanceof CesiumMap) {
397
+ // ol type
398
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
397
399
  const coordinates = geometry.getCoordinates() as any[];
398
400
  const flats = getFlatCoordinateReferences(geometry, coordinates);
399
401
  await map.getHeightFromTerrain(flats);
@@ -6,12 +6,13 @@ import { mercatorProjection } from '../projection.js';
6
6
  import InteractionChain from '../../interaction/interactionChain.js';
7
7
  import VcsEvent from '../../vcsEvent.js';
8
8
  import { EventType } from '../../interaction/interactionType.js';
9
- import LayerCollection, { maxZIndex } from '../layerCollection.js';
9
+ import type LayerCollection from '../layerCollection.js';
10
+ import { maxZIndex } from '../layerCollection.js';
10
11
  import { markVolatile } from '../../vcsModule.js';
11
12
  import { PrimitiveOptionsType } from '../../layer/vectorProperties.js';
12
- import EventHandler from '../../interaction/eventHandler.js';
13
+ import type EventHandler from '../../interaction/eventHandler.js';
13
14
  import type VcsApp from '../../vcsApp.js';
14
- import { InteractionEvent } from '../../interaction/abstractInteraction.js';
15
+ import type { InteractionEvent } from '../../interaction/abstractInteraction.js';
15
16
  import type FeatureAtPixelInteraction from '../../interaction/featureAtPixelInteraction.js';
16
17
 
17
18
  export const alreadySnapped = Symbol('alreadySnapped');
@@ -79,7 +80,7 @@ export function setupScratchLayer(
79
80
  });
80
81
  markVolatile(layer);
81
82
  layerCollection.add(layer);
82
- layer.activate().catch((e) => {
83
+ layer.activate().catch((e: unknown) => {
83
84
  getLogger('Editor').error('Failed to activate scratch layer', e);
84
85
  });
85
86
 
@@ -160,14 +161,14 @@ export type GeometryToType<T extends GeometryType> =
160
161
  T extends GeometryType.Point
161
162
  ? Point
162
163
  : T extends GeometryType.Polygon
163
- ? Polygon
164
- : T extends GeometryType.BBox
165
- ? Polygon
166
- : T extends GeometryType.LineString
167
- ? LineString
168
- : T extends GeometryType.Circle
169
- ? Circle
170
- : never;
164
+ ? Polygon
165
+ : T extends GeometryType.BBox
166
+ ? Polygon
167
+ : T extends GeometryType.LineString
168
+ ? LineString
169
+ : T extends GeometryType.Circle
170
+ ? Circle
171
+ : never;
171
172
 
172
173
  export function setupPickingBehavior(app: VcsApp): () => void {
173
174
  const initialPickPosition =
@@ -1,8 +1,7 @@
1
1
  import Circle from 'ol/geom/Circle.js';
2
2
  import type { Coordinate } from 'ol/coordinate.js';
3
- import AbstractInteraction, {
4
- EventAfterEventHandler,
5
- } from '../../../interaction/abstractInteraction.js';
3
+ import type { EventAfterEventHandler } from '../../../interaction/abstractInteraction.js';
4
+ import AbstractInteraction from '../../../interaction/abstractInteraction.js';
6
5
  import { EventType } from '../../../interaction/interactionType.js';
7
6
  import VcsEvent from '../../../vcsEvent.js';
8
7
  import {
@@ -1,8 +1,7 @@
1
1
  import LineString from 'ol/geom/LineString.js';
2
2
  import type { Coordinate } from 'ol/coordinate.js';
3
- import AbstractInteraction, {
4
- EventAfterEventHandler,
5
- } from '../../../interaction/abstractInteraction.js';
3
+ import type { EventAfterEventHandler } from '../../../interaction/abstractInteraction.js';
4
+ import AbstractInteraction from '../../../interaction/abstractInteraction.js';
6
5
  import {
7
6
  EventType,
8
7
  ModificationKeyType,
@@ -13,7 +12,7 @@ import {
13
12
  alreadyTransformedToMercator,
14
13
  } from '../../../layer/vectorSymbols.js';
15
14
  import ObliqueMap from '../../../map/obliqueMap.js';
16
- import { CreateInteraction } from '../createFeatureSession.js';
15
+ import type { CreateInteraction } from '../createFeatureSession.js';
17
16
 
18
17
  /**
19
18
  * @extends {AbstractInteraction}
@@ -1,7 +1,6 @@
1
1
  import Point from 'ol/geom/Point.js';
2
- import AbstractInteraction, {
3
- EventAfterEventHandler,
4
- } from '../../../interaction/abstractInteraction.js';
2
+ import type { EventAfterEventHandler } from '../../../interaction/abstractInteraction.js';
3
+ import AbstractInteraction from '../../../interaction/abstractInteraction.js';
5
4
  import VcsEvent from '../../../vcsEvent.js';
6
5
  import { EventType } from '../../../interaction/interactionType.js';
7
6
  import {
@@ -9,7 +8,7 @@ import {
9
8
  alreadyTransformedToMercator,
10
9
  } from '../../../layer/vectorSymbols.js';
11
10
  import ObliqueMap from '../../../map/obliqueMap.js';
12
- import { CreateInteraction } from '../createFeatureSession.js';
11
+ import type { CreateInteraction } from '../createFeatureSession.js';
13
12
 
14
13
  /**
15
14
  * @extends {AbstractInteraction}
@@ -1,8 +1,7 @@
1
1
  import { Polygon } from 'ol/geom.js';
2
2
  import type { Coordinate } from 'ol/coordinate.js';
3
- import AbstractInteraction, {
4
- EventAfterEventHandler,
5
- } from '../../../interaction/abstractInteraction.js';
3
+ import type { EventAfterEventHandler } from '../../../interaction/abstractInteraction.js';
4
+ import AbstractInteraction from '../../../interaction/abstractInteraction.js';
6
5
  import {
7
6
  EventType,
8
7
  ModificationKeyType,
@@ -13,7 +12,7 @@ import {
13
12
  alreadyTransformedToMercator,
14
13
  } from '../../../layer/vectorSymbols.js';
15
14
  import ObliqueMap from '../../../map/obliqueMap.js';
16
- import { CreateInteraction } from '../createFeatureSession.js';
15
+ import type { CreateInteraction } from '../createFeatureSession.js';
17
16
 
18
17
  /**
19
18
  * Set on polygon geometries which have a validity placeholder active