@vcmap/core 6.0.0-rc.5 → 6.0.0-rc.7

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 (201) hide show
  1. package/dist/cesium.d.ts +12 -0
  2. package/dist/index.d.ts +23 -16
  3. package/dist/index.js +21 -14
  4. package/dist/index.js.map +1 -1
  5. package/dist/ol.d.ts +15 -2
  6. package/dist/src/layer/cesium/clusterContext.d.ts +12 -16
  7. package/dist/src/layer/cesium/clusterContext.js +75 -43
  8. package/dist/src/layer/cesium/clusterContext.js.map +1 -1
  9. package/dist/src/layer/cesium/vectorCesiumImpl.d.ts +2 -3
  10. package/dist/src/layer/cesium/vectorCesiumImpl.js +16 -10
  11. package/dist/src/layer/cesium/vectorCesiumImpl.js.map +1 -1
  12. package/dist/src/layer/cesium/vectorContext.d.ts +11 -54
  13. package/dist/src/layer/cesium/vectorContext.js +92 -174
  14. package/dist/src/layer/cesium/vectorContext.js.map +1 -1
  15. package/dist/src/layer/geojsonHelpers.d.ts +1 -1
  16. package/dist/src/layer/geojsonHelpers.js +5 -10
  17. package/dist/src/layer/geojsonHelpers.js.map +1 -1
  18. package/dist/src/layer/oblique/obliqueHelpers.js +9 -9
  19. package/dist/src/layer/oblique/obliqueHelpers.js.map +1 -1
  20. package/dist/src/layer/vectorLayer.d.ts +0 -37
  21. package/dist/src/layer/vectorLayer.js.map +1 -1
  22. package/dist/src/layer/vectorProperties.d.ts +10 -5
  23. package/dist/src/layer/vectorProperties.js +36 -9
  24. package/dist/src/layer/vectorProperties.js.map +1 -1
  25. package/dist/src/map/baseOLMap.js +1 -1
  26. package/dist/src/map/baseOLMap.js.map +1 -1
  27. package/dist/src/oblique/helpers.js +5 -5
  28. package/dist/src/oblique/helpers.js.map +1 -1
  29. package/dist/src/oblique/obliqueDataSet.js +4 -4
  30. package/dist/src/oblique/obliqueDataSet.js.map +1 -1
  31. package/dist/src/ol/geom/geometryCollection.js +19 -2
  32. package/dist/src/ol/geom/geometryCollection.js.map +1 -1
  33. package/dist/src/style/arcStyle.js +1 -0
  34. package/dist/src/style/arcStyle.js.map +1 -1
  35. package/dist/src/util/clipping/clippingPlaneHelper.js +2 -2
  36. package/dist/src/util/clipping/clippingPlaneHelper.js.map +1 -1
  37. package/dist/src/util/editor/createFeatureSession.d.ts +5 -1
  38. package/dist/src/util/editor/createFeatureSession.js +48 -4
  39. package/dist/src/util/editor/createFeatureSession.js.map +1 -1
  40. package/dist/src/util/editor/editFeaturesSession.d.ts +10 -4
  41. package/dist/src/util/editor/editFeaturesSession.js +74 -37
  42. package/dist/src/util/editor/editFeaturesSession.js.map +1 -1
  43. package/dist/src/util/editor/editGeometrySession.d.ts +5 -1
  44. package/dist/src/util/editor/editGeometrySession.js +77 -55
  45. package/dist/src/util/editor/editGeometrySession.js.map +1 -1
  46. package/dist/src/util/editor/editorHelpers.d.ts +12 -6
  47. package/dist/src/util/editor/editorHelpers.js +50 -23
  48. package/dist/src/util/editor/editorHelpers.js.map +1 -1
  49. package/dist/src/util/editor/editorSessionHelpers.d.ts +5 -0
  50. package/dist/src/util/editor/editorSessionHelpers.js +1 -0
  51. package/dist/src/util/editor/editorSessionHelpers.js.map +1 -1
  52. package/dist/src/util/editor/editorSymbols.d.ts +1 -1
  53. package/dist/src/util/editor/editorSymbols.js +1 -1
  54. package/dist/src/util/editor/editorSymbols.js.map +1 -1
  55. package/dist/src/util/editor/interactions/createBBoxInteraction.d.ts +1 -0
  56. package/dist/src/util/editor/interactions/createBBoxInteraction.js +20 -16
  57. package/dist/src/util/editor/interactions/createBBoxInteraction.js.map +1 -1
  58. package/dist/src/util/editor/interactions/createCircleInteraction.js +1 -1
  59. package/dist/src/util/editor/interactions/createCircleInteraction.js.map +1 -1
  60. package/dist/src/util/editor/interactions/createLineStringInteraction.js +3 -3
  61. package/dist/src/util/editor/interactions/createLineStringInteraction.js.map +1 -1
  62. package/dist/src/util/editor/interactions/createPointInteraction.js +1 -1
  63. package/dist/src/util/editor/interactions/createPointInteraction.js.map +1 -1
  64. package/dist/src/util/editor/interactions/createPolygonInteraction.d.ts +4 -0
  65. package/dist/src/util/editor/interactions/createPolygonInteraction.js +9 -3
  66. package/dist/src/util/editor/interactions/createPolygonInteraction.js.map +1 -1
  67. package/dist/src/util/editor/interactions/creationSnapping.d.ts +26 -0
  68. package/dist/src/util/editor/interactions/creationSnapping.js +139 -0
  69. package/dist/src/util/editor/interactions/creationSnapping.js.map +1 -0
  70. package/dist/src/util/editor/interactions/editGeometryMouseOverInteraction.js +3 -2
  71. package/dist/src/util/editor/interactions/editGeometryMouseOverInteraction.js.map +1 -1
  72. package/dist/src/util/editor/interactions/insertVertexInteraction.d.ts +3 -1
  73. package/dist/src/util/editor/interactions/insertVertexInteraction.js +14 -6
  74. package/dist/src/util/editor/interactions/insertVertexInteraction.js.map +1 -1
  75. package/dist/src/util/editor/interactions/layerSnapping.d.ts +19 -0
  76. package/dist/src/util/editor/interactions/layerSnapping.js +87 -0
  77. package/dist/src/util/editor/interactions/layerSnapping.js.map +1 -0
  78. package/dist/src/util/editor/interactions/translateVertexInteraction.js +2 -2
  79. package/dist/src/util/editor/interactions/translateVertexInteraction.js.map +1 -1
  80. package/dist/src/util/editor/interactions/translationSnapping.d.ts +25 -0
  81. package/dist/src/util/editor/interactions/translationSnapping.js +179 -0
  82. package/dist/src/util/editor/interactions/translationSnapping.js.map +1 -0
  83. package/dist/src/util/editor/snappingHelpers.d.ts +44 -0
  84. package/dist/src/util/editor/snappingHelpers.js +329 -0
  85. package/dist/src/util/editor/snappingHelpers.js.map +1 -0
  86. package/dist/src/util/editor/transformation/create2DHandlers.js +26 -26
  87. package/dist/src/util/editor/transformation/create2DHandlers.js.map +1 -1
  88. package/dist/src/util/editor/transformation/create3DHandlers.js +65 -14
  89. package/dist/src/util/editor/transformation/create3DHandlers.js.map +1 -1
  90. package/dist/src/util/editor/transformation/scaleInteraction.js +27 -5
  91. package/dist/src/util/editor/transformation/scaleInteraction.js.map +1 -1
  92. package/dist/src/util/editor/transformation/transformationHandler.js +56 -38
  93. package/dist/src/util/editor/transformation/transformationHandler.js.map +1 -1
  94. package/dist/src/util/editor/transformation/transformationTypes.d.ts +2 -0
  95. package/dist/src/util/editor/transformation/transformationTypes.js +4 -0
  96. package/dist/src/util/editor/transformation/transformationTypes.js.map +1 -1
  97. package/dist/src/util/featureconverter/arcToCesium.d.ts +5 -19
  98. package/dist/src/util/featureconverter/arcToCesium.js +15 -42
  99. package/dist/src/util/featureconverter/arcToCesium.js.map +1 -1
  100. package/dist/src/util/featureconverter/circleToCesium.d.ts +2 -27
  101. package/dist/src/util/featureconverter/circleToCesium.js +84 -63
  102. package/dist/src/util/featureconverter/circleToCesium.js.map +1 -1
  103. package/dist/src/util/featureconverter/clampedPrimitive.d.ts +2 -0
  104. package/dist/src/util/featureconverter/clampedPrimitive.js +29 -0
  105. package/dist/src/util/featureconverter/clampedPrimitive.js.map +1 -0
  106. package/dist/src/util/featureconverter/convert.d.ts +30 -7
  107. package/dist/src/util/featureconverter/convert.js +221 -44
  108. package/dist/src/util/featureconverter/convert.js.map +1 -1
  109. package/dist/src/util/featureconverter/extent3D.d.ts +4 -3
  110. package/dist/src/util/featureconverter/extent3D.js +4 -3
  111. package/dist/src/util/featureconverter/extent3D.js.map +1 -1
  112. package/dist/src/util/featureconverter/lineStringToCesium.d.ts +12 -27
  113. package/dist/src/util/featureconverter/lineStringToCesium.js +85 -107
  114. package/dist/src/util/featureconverter/lineStringToCesium.js.map +1 -1
  115. package/dist/src/util/featureconverter/pointHelpers.d.ts +8 -11
  116. package/dist/src/util/featureconverter/pointHelpers.js +140 -120
  117. package/dist/src/util/featureconverter/pointHelpers.js.map +1 -1
  118. package/dist/src/util/featureconverter/pointToCesium.d.ts +14 -17
  119. package/dist/src/util/featureconverter/pointToCesium.js +47 -96
  120. package/dist/src/util/featureconverter/pointToCesium.js.map +1 -1
  121. package/dist/src/util/featureconverter/polygonToCesium.d.ts +2 -26
  122. package/dist/src/util/featureconverter/polygonToCesium.js +62 -72
  123. package/dist/src/util/featureconverter/polygonToCesium.js.map +1 -1
  124. package/dist/src/util/featureconverter/storeyHelpers.d.ts +17 -0
  125. package/dist/src/util/featureconverter/storeyHelpers.js +78 -0
  126. package/dist/src/util/featureconverter/storeyHelpers.js.map +1 -0
  127. package/dist/src/util/featureconverter/vectorGeometryFactory.d.ts +54 -0
  128. package/dist/src/util/featureconverter/vectorGeometryFactory.js +278 -0
  129. package/dist/src/util/featureconverter/vectorGeometryFactory.js.map +1 -0
  130. package/dist/src/util/featureconverter/vectorHeightInfo.d.ts +86 -0
  131. package/dist/src/util/featureconverter/vectorHeightInfo.js +242 -0
  132. package/dist/src/util/featureconverter/vectorHeightInfo.js.map +1 -0
  133. package/dist/src/util/geometryHelpers.d.ts +34 -2
  134. package/dist/src/util/geometryHelpers.js +144 -4
  135. package/dist/src/util/geometryHelpers.js.map +1 -1
  136. package/dist/src/util/math.d.ts +6 -2
  137. package/dist/src/util/math.js +34 -12
  138. package/dist/src/util/math.js.map +1 -1
  139. package/dist/tests/unit/helpers/cesiumHelpers.js +3 -1
  140. package/dist/tests/unit/helpers/cesiumHelpers.js.map +1 -1
  141. package/dist/tests/unit/helpers/helpers.d.ts +2 -9
  142. package/dist/tests/unit/helpers/helpers.js +4 -10
  143. package/dist/tests/unit/helpers/helpers.js.map +1 -1
  144. package/index.ts +77 -36
  145. package/package.json +3 -3
  146. package/src/cesium/cesium.d.ts +12 -0
  147. package/src/layer/cesium/clusterContext.ts +97 -93
  148. package/src/layer/cesium/vectorCesiumImpl.ts +17 -11
  149. package/src/layer/cesium/vectorContext.ts +130 -355
  150. package/src/layer/geojsonHelpers.ts +9 -12
  151. package/src/layer/oblique/obliqueHelpers.ts +9 -9
  152. package/src/layer/vectorLayer.ts +0 -71
  153. package/src/layer/vectorProperties.ts +53 -14
  154. package/src/map/baseOLMap.ts +1 -1
  155. package/src/oblique/helpers.ts +11 -5
  156. package/src/oblique/obliqueDataSet.ts +4 -4
  157. package/src/ol/geom/geometryCollection.js +23 -2
  158. package/src/ol/ol.d.ts +15 -2
  159. package/src/style/arcStyle.ts +1 -0
  160. package/src/util/clipping/clippingPlaneHelper.ts +3 -4
  161. package/src/util/editor/createFeatureSession.ts +64 -6
  162. package/src/util/editor/editFeaturesSession.ts +105 -39
  163. package/src/util/editor/editGeometrySession.ts +118 -75
  164. package/src/util/editor/editorHelpers.ts +81 -33
  165. package/src/util/editor/editorSessionHelpers.ts +7 -0
  166. package/src/util/editor/editorSymbols.ts +1 -1
  167. package/src/util/editor/interactions/createBBoxInteraction.ts +25 -16
  168. package/src/util/editor/interactions/createCircleInteraction.ts +1 -1
  169. package/src/util/editor/interactions/createLineStringInteraction.ts +9 -3
  170. package/src/util/editor/interactions/createPointInteraction.ts +1 -1
  171. package/src/util/editor/interactions/createPolygonInteraction.ts +16 -3
  172. package/src/util/editor/interactions/creationSnapping.ts +226 -0
  173. package/src/util/editor/interactions/editGeometryMouseOverInteraction.ts +3 -2
  174. package/src/util/editor/interactions/insertVertexInteraction.ts +27 -7
  175. package/src/util/editor/interactions/layerSnapping.ts +136 -0
  176. package/src/util/editor/interactions/translateVertexInteraction.ts +8 -2
  177. package/src/util/editor/interactions/translationSnapping.ts +302 -0
  178. package/src/util/editor/snappingHelpers.ts +490 -0
  179. package/src/util/editor/transformation/create2DHandlers.ts +38 -26
  180. package/src/util/editor/transformation/create3DHandlers.ts +84 -22
  181. package/src/util/editor/transformation/scaleInteraction.ts +28 -5
  182. package/src/util/editor/transformation/transformationHandler.ts +72 -41
  183. package/src/util/editor/transformation/transformationTypes.ts +5 -0
  184. package/src/util/featureconverter/arcToCesium.ts +25 -95
  185. package/src/util/featureconverter/circleToCesium.ts +127 -113
  186. package/src/util/featureconverter/clampedPrimitive.ts +70 -0
  187. package/src/util/featureconverter/convert.ts +447 -113
  188. package/src/util/featureconverter/extent3D.ts +13 -6
  189. package/src/util/featureconverter/lineStringToCesium.ts +132 -179
  190. package/src/util/featureconverter/pointHelpers.ts +276 -214
  191. package/src/util/featureconverter/pointToCesium.ts +111 -175
  192. package/src/util/featureconverter/polygonToCesium.ts +98 -117
  193. package/src/util/featureconverter/storeyHelpers.ts +104 -0
  194. package/src/util/featureconverter/vectorGeometryFactory.ts +601 -0
  195. package/src/util/featureconverter/vectorHeightInfo.ts +393 -0
  196. package/src/util/geometryHelpers.ts +214 -9
  197. package/src/util/math.ts +59 -12
  198. package/dist/src/util/featureconverter/featureconverterHelper.d.ts +0 -35
  199. package/dist/src/util/featureconverter/featureconverterHelper.js +0 -404
  200. package/dist/src/util/featureconverter/featureconverterHelper.js.map +0 -1
  201. package/src/util/featureconverter/featureconverterHelper.ts +0 -672
package/dist/cesium.d.ts CHANGED
@@ -7,6 +7,8 @@ import {
7
7
  Cartesian3,
8
8
  Cartesian4,
9
9
  Color,
10
+ Cartographic,
11
+ HeightReference,
10
12
  } from '@vcmap-cesium/engine';
11
13
  import { StyleLike } from 'ol/style/Style.js';
12
14
  import VectorStyleItem from './src/style/vectorStyleItem.js';
@@ -31,6 +33,15 @@ declare module '@vcmap-cesium/engine' {
31
33
  render(): void;
32
34
  frameState: FrameState;
33
35
  context: Context;
36
+ updateHeight(
37
+ cartographic: Cartographic,
38
+ callback: (cartographic: Cartographic) => void,
39
+ heightReference: HeightReference,
40
+ ): () => void;
41
+ getHeight(
42
+ cartographic: Cartographic,
43
+ heightReference: HeightReference,
44
+ ): number | undefined;
34
45
  }
35
46
 
36
47
  interface TileBoundingVolume {
@@ -58,6 +69,7 @@ declare module '@vcmap-cesium/engine' {
58
69
  interface Primitive {
59
70
  olFeature?: import('ol').Feature<import('ol/geom.js').Geometry>;
60
71
  [handlerSymbol]?: AxisAndPlanes;
72
+ [scaleSymbol]?: number;
61
73
  }
62
74
 
63
75
  interface Model {
package/dist/index.d.ts CHANGED
@@ -29,7 +29,7 @@ export { default as SingleImageCesiumImpl } from './src/layer/cesium/singleImage
29
29
  export { default as TerrainCesiumImpl } from './src/layer/cesium/terrainCesiumImpl.js';
30
30
  export { default as TmsCesiumImpl } from './src/layer/cesium/tmsCesiumImpl.js';
31
31
  export { default as VectorCesiumImpl } from './src/layer/cesium/vectorCesiumImpl.js';
32
- export { setReferenceForPicking, removeArrayFromCollection, removeFeatureFromMap, addPrimitiveToContext, setSplitDirectionOnPrimitives, setupScalingPrimitiveCollection, default as VectorContext, VectorContextFeatureCache, CesiumVectorContext, } from './src/layer/cesium/vectorContext.js';
32
+ export { setReferenceForPicking, setSplitDirectionOnPrimitives, setupScalingPrimitiveCollection, default as VectorContext, CesiumVectorContext, } from './src/layer/cesium/vectorContext.js';
33
33
  export { default as VectorRasterTileCesiumImpl } from './src/layer/cesium/vectorRasterTileCesiumImpl.js';
34
34
  export { toContext, getCanvasFromFeatures, default as VectorTileImageryProvider, VectorTileImageryProviderOptions, } from './src/layer/cesium/vectorTileImageryProvider.js';
35
35
  export { default as WmsCesiumImpl } from './src/layer/cesium/wmsCesiumImpl.js';
@@ -75,7 +75,7 @@ export { mercatorResolutionsToLevel, rectangleToExtent, default as TileProvider,
75
75
  export { getURL, default as URLTemplateTileProvider, URLTemplateTileProviderOptions, } from './src/layer/tileProvider/urlTemplateTileProvider.js';
76
76
  export { default as TMSLayer, TMSOptions, TMSImplementationOptions, } from './src/layer/tmsLayer.js';
77
77
  export { fvLastUpdated, globalHiderLastUpdated, updateFeatureVisibility, updateGlobalHider, synchronizeFeatureVisibilityWithSource, } from './src/layer/vectorHelpers.js';
78
- export { default as VectorLayer, VectorOptions, VectorImplementationOptions, VectorGeometryFactoryType, VectorHeightInfo, } from './src/layer/vectorLayer.js';
78
+ export { default as VectorLayer, VectorOptions, VectorImplementationOptions, } from './src/layer/vectorLayer.js';
79
79
  export { PrimitiveOptionsType, AltitudeModeCesium, ClassificationTypeCesium, parseNearFarScalar, parseCartesian3, parseStoreyHeights, getAltitudeModeOptions, getClassificationTypeOptions, getNearFarValueOptions, getCartesian3Options, vcsMetaVersion, VcsMeta, default as VectorProperties, VectorPropertiesModelOptions, VectorPropertiesOptions, VectorPropertiesPrimitive, VectorPropertiesPrimitiveOptions, VectorPropertiesGeometryOptions, VectorPropertiesBaseOptions, } from './src/layer/vectorProperties.js';
80
80
  export { alreadyTransformedToMercator, alreadyTransformedToImage, obliqueGeometry, doNotTransform, originalFeatureSymbol, actuallyIsCircle, createSync, } from './src/layer/vectorSymbols.js';
81
81
  export { default as VectorTileLayer, VectorTileImplementation, VectorTileImplementationOptions, VectorTileOptions, } from './src/layer/vectorTileLayer.js';
@@ -118,14 +118,15 @@ export { default as Collection } from './src/util/collection.js';
118
118
  export { default as startCreateFeatureSession, CreateFeatureSession, CreateInteraction, } from './src/util/editor/createFeatureSession.js';
119
119
  export { default as startEditFeaturesSession, EditFeaturesSession, } from './src/util/editor/editFeaturesSession.js';
120
120
  export { default as startEditGeometrySession, EditGeometrySession, } from './src/util/editor/editGeometrySession.js';
121
- export { createVertex, getClosestPointOn2DLine, pointOnLine3D, pointOnLine2D, createCameraVerticalPlane, createHorizontalPlane, getCartographicFromPlane, drapeGeometryOnTerrain, placeGeometryOnTerrain, ensureFeatureAbsolute, clampFeature, Vertex, SelectableFeatureType, SelectFeatureInteraction, } from './src/util/editor/editorHelpers.js';
122
- export { SessionType, setupScratchLayer, GeometryType, EditorSession, GeometryToType, } from './src/util/editor/editorSessionHelpers.js';
123
- export { vertexSymbol, vertexIndex, handlerSymbol, mouseOverSymbol, } from './src/util/editor/editorSymbols.js';
121
+ export { createVertex, getCoordinatesAndLayoutFromVertices, getClosestPointOn2DLine, pointOnLine3D, pointOnLine2D, createCameraVerticalPlane, createHorizontalPlane, getCartographicFromPlane, drapeGeometryOnTerrain, placeGeometryOnTerrain, Vertex, SelectableFeatureType, SelectFeatureInteraction, } from './src/util/editor/editorHelpers.js';
122
+ export { SessionType, setupScratchLayer, GeometryType, EditorSession, GeometryToType, SnappingInteractionEvent, alreadySnapped, } from './src/util/editor/editorSessionHelpers.js';
123
+ export { vertexSymbol, vertexIndexSymbol, handlerSymbol, mouseOverSymbol, } from './src/util/editor/editorSymbols.js';
124
+ export { getAngleSnapResult, getGeometrySnapResult, getSnappedCoordinateForResults, snapTypes, setSnappingFeatures, SnapType, SnapResult, } from './src/util/editor/snappingHelpers.js';
124
125
  export { default as CreateBBoxInteraction } from './src/util/editor/interactions/createBBoxInteraction.js';
125
126
  export { default as CreateCircleInteraction } from './src/util/editor/interactions/createCircleInteraction.js';
126
127
  export { default as CreateLineStringInteraction } from './src/util/editor/interactions/createLineStringInteraction.js';
127
128
  export { default as CreatePointInteraction } from './src/util/editor/interactions/createPointInteraction.js';
128
- export { default as CreatePolygonInteraction } from './src/util/editor/interactions/createPolygonInteraction.js';
129
+ export { default as CreatePolygonInteraction, validityPlaceholder, } from './src/util/editor/interactions/createPolygonInteraction.js';
129
130
  export { default as EditFeaturesMouseOverInteraction } from './src/util/editor/interactions/editFeaturesMouseOverInteraction.js';
130
131
  export { cursorMap, default as EditGeometryMouseOverInteraction, } from './src/util/editor/interactions/editGeometryMouseOverInteraction.js';
131
132
  export { default as EnsureHandlerSelectionInteraction } from './src/util/editor/interactions/ensureHandlerSelectionInteraction.js';
@@ -136,6 +137,9 @@ export { SelectionMode, default as SelectFeatureMouseOverInteraction, } from './
136
137
  export { default as SelectMultiFeatureInteraction } from './src/util/editor/interactions/selectMultiFeatureInteraction.js';
137
138
  export { default as SelectSingleFeatureInteraction } from './src/util/editor/interactions/selectSingleFeatureInteraction.js';
138
139
  export { default as TranslateVertexInteraction } from './src/util/editor/interactions/translateVertexInteraction.js';
140
+ export { default as CreationSnapping } from './src/util/editor/interactions/creationSnapping.js';
141
+ export { default as TranslationSnapping } from './src/util/editor/interactions/translationSnapping.js';
142
+ export { default as LayerSnapping } from './src/util/editor/interactions/layerSnapping.js';
139
143
  export { getDefaultHighlightStyle, default as startSelectFeaturesSession, SelectFeaturesSession, } from './src/util/editor/selectFeaturesSession.js';
140
144
  export { default as create2DHandlers } from './src/util/editor/transformation/create2DHandlers.js';
141
145
  export { default as create3DHandlers } from './src/util/editor/transformation/create3DHandlers.js';
@@ -148,24 +152,27 @@ export { default as TranslateInteraction, TranslateEvent, } from './src/util/edi
148
152
  export { default as geometryIsValid } from './src/util/editor/validateGeoemetry.js';
149
153
  export { default as ExclusiveManager } from './src/util/exclusiveManager.js';
150
154
  export { default as Extent, ExtentOptions } from './src/util/extent.js';
151
- export { default as arcToCesium } from './src/util/featureconverter/arcToCesium.js';
152
- export { validateCircle, default as circleToCesium, } from './src/util/featureconverter/circleToCesium.js';
153
- export { getStylesArray, default as convert, } from './src/util/featureconverter/convert.js';
155
+ export { getArcGeometryFactory } from './src/util/featureconverter/arcToCesium.js';
156
+ export { validateCircle, getCircleGeometryFactory, } from './src/util/featureconverter/circleToCesium.js';
157
+ export { setupClampedPrimitive } from './src/util/featureconverter/clampedPrimitive.js';
158
+ export { getStylesArray, default as convert, PrimitiveType, ConvertedItemType, ConvertedItem, } from './src/util/featureconverter/convert.js';
159
+ export { getArrowHeadPrimitives, validateLineString, getLineStringGeometryFactory, } from './src/util/featureconverter/lineStringToCesium.js';
160
+ export { getModelOptions, getPrimitiveOptions, getModelOrPointPrimitiveOptions, } from './src/util/featureconverter/pointHelpers.js';
161
+ export { getBillboardOptions, getLabelOptions, validatePoint, getWgs84CoordinatesForPoint, BillboardOptions, LabelOptions, getPointPrimitives, } from './src/util/featureconverter/pointToCesium.js';
162
+ export { validatePolygon, getPolygonGeometryFactory, } from './src/util/featureconverter/polygonToCesium.js';
163
+ export { VectorHeightInfo, RelativeHeightReference, ClampedHeightReference, ExtrusionHeightInfo, getHeightInfo, getMinHeight, getClampOrigin, getExtrusionHeightInfo, getRelativeEquivalent, isRelativeHeightReference, isClampedHeightReference, isAbsoluteHeightReference, mercatorToWgs84TransformerForHeightInfo, mercatorToCartesianTransformerForHeightInfo, } from './src/util/featureconverter/vectorHeightInfo.js';
164
+ export { PolygonGeometryOptions, PolylineGeometryOptions, CircleGeometryOptions, GeometryFactoryType, VectorGeometryFactory, getMaterialAppearance, createClassificationPrimitiveItem, createSolidPrimitiveItem, createOutlinePrimitiveItem, createLinePrimitiveItem, createGroundLinePrimitiveItem, createGroundPrimitiveItem, getCesiumGeometriesOptions, } from './src/util/featureconverter/vectorGeometryFactory.js';
154
165
  export { default as Extent3D } from './src/util/featureconverter/extent3D.js';
155
- export { getMaterialAppearance, createClassificationPrimitive, createPrimitive, createOutlinePrimitive, createLinePrimitive, getMinHeightOrGroundLevel, getStoreyHeights, validateStoreys, getHeightAboveGround, getHeightInfo, getStoreyOptions, addPrimitivesToContext, } from './src/util/featureconverter/featureconverterHelper.js';
156
- export { addArrowsToContext, validateLineString, default as lineStringToCesium, LineGeometryOptions, } from './src/util/featureconverter/lineStringToCesium.js';
157
- export { getModelOptions, getPrimitiveOptions, } from './src/util/featureconverter/pointHelpers.js';
158
- export { getBillboardOptions, getLabelOptions, validatePoint, getCartesian3AndWGS84FromCoordinates, default as pointToCesium, BillboardOptions, LabelOptions, } from './src/util/featureconverter/pointToCesium.js';
159
- export { validatePolygon, default as polygonToCesium, PolylineGeometryOptions, PolygonGeometryOptions, } from './src/util/featureconverter/polygonToCesium.js';
166
+ export { getStoreyHeights, validateStoreys, getStoreyOptions, StoreyOptions, } from './src/util/featureconverter/storeyHelpers.js';
160
167
  export { requestUrl, requestJson, requestArrayBuffer, } from './src/util/fetch.js';
161
- export { getFlatCoordinatesFromSimpleGeometry, getFlatCoordinatesFromGeometry, circleFromCenterRadius, convertGeometryToPolygon, enforceEndingVertex, removeEndingVertex, removeEndingVertexFromGeometry, enforceRightHand, } from './src/util/geometryHelpers.js';
168
+ export { getFlatCoordinatesFromSimpleGeometry, getFlatCoordinateReferences, circleFromCenterRadius, convertGeometryToPolygon, enforceEndingVertex, removeEndingVertex, removeEndingVertexFromGeometry, enforceRightHand, is2DLayout, from2Dto3DLayout, from3Dto2DLayout, placeGeometryOnGround, createAbsoluteFeatures, } from './src/util/geometryHelpers.js';
162
169
  export { default as IndexedCollection } from './src/util/indexedCollection.js';
163
170
  export { isMobile } from './src/util/isMobile.js';
164
171
  export { maxZIndex, default as LayerCollection, } from './src/util/layerCollection.js';
165
172
  export { HiddenObject, createHiddenObjectsCollection, } from './src/util/hiddenObjects.js';
166
173
  export { detectBrowserLocale } from './src/util/locale.js';
167
174
  export { default as MapCollection, MapCollectionInitializationError, } from './src/util/mapCollection.js';
168
- export { coordinateAtDistance, initialBearingBetweenCoords, getCartesianBearing, cartesian2DDistance, cartesian3DDistance, modulo, cartographicToWgs84, mercatorToCartesian, cartesianToMercator, getMidPoint, getCartesianPitch, } from './src/util/math.js';
175
+ export { coordinateAtDistance, initialBearingBetweenCoords, getCartesianBearing, cartesian2DDistance, cartesian2DDistanceSquared, cartesian3DDistance, modulo, cartographicToWgs84, mercatorToCartesian, cartesianToMercator, getMidPoint, getCartesianPitch, } from './src/util/math.js';
169
176
  export { isOverrideCollection, default as makeOverrideCollection, OverrideCollection, OverrideCollectionInterface, OverrideCollectionItem, ReplacedEvent, } from './src/util/overrideCollection.js';
170
177
  export { wgs84ToMercatorTransformer, mercatorToWgs84Transformer, setDefaultProjectionOptions, getDefaultProjection, wgs84Projection, mercatorProjection, default as Projection, ProjectionOptions, CorrectTransformFunction, } from './src/util/projection.js';
171
178
  export { isSameOrigin } from './src/util/urlHelpers.js';
package/dist/index.js CHANGED
@@ -29,7 +29,7 @@ export { default as SingleImageCesiumImpl } from './src/layer/cesium/singleImage
29
29
  export { default as TerrainCesiumImpl } from './src/layer/cesium/terrainCesiumImpl.js';
30
30
  export { default as TmsCesiumImpl } from './src/layer/cesium/tmsCesiumImpl.js';
31
31
  export { default as VectorCesiumImpl } from './src/layer/cesium/vectorCesiumImpl.js';
32
- export { setReferenceForPicking, removeArrayFromCollection, removeFeatureFromMap, addPrimitiveToContext, setSplitDirectionOnPrimitives, setupScalingPrimitiveCollection, default as VectorContext, } from './src/layer/cesium/vectorContext.js';
32
+ export { setReferenceForPicking, setSplitDirectionOnPrimitives, setupScalingPrimitiveCollection, default as VectorContext, } from './src/layer/cesium/vectorContext.js';
33
33
  export { default as VectorRasterTileCesiumImpl } from './src/layer/cesium/vectorRasterTileCesiumImpl.js';
34
34
  export { toContext, getCanvasFromFeatures, default as VectorTileImageryProvider, } from './src/layer/cesium/vectorTileImageryProvider.js';
35
35
  export { default as WmsCesiumImpl } from './src/layer/cesium/wmsCesiumImpl.js';
@@ -118,14 +118,15 @@ export { default as Collection } from './src/util/collection.js';
118
118
  export { default as startCreateFeatureSession, } from './src/util/editor/createFeatureSession.js';
119
119
  export { default as startEditFeaturesSession, } from './src/util/editor/editFeaturesSession.js';
120
120
  export { default as startEditGeometrySession, } from './src/util/editor/editGeometrySession.js';
121
- export { createVertex, getClosestPointOn2DLine, pointOnLine3D, pointOnLine2D, createCameraVerticalPlane, createHorizontalPlane, getCartographicFromPlane, drapeGeometryOnTerrain, placeGeometryOnTerrain, ensureFeatureAbsolute, clampFeature, } from './src/util/editor/editorHelpers.js';
122
- export { SessionType, setupScratchLayer, GeometryType, } from './src/util/editor/editorSessionHelpers.js';
123
- export { vertexSymbol, vertexIndex, handlerSymbol, mouseOverSymbol, } from './src/util/editor/editorSymbols.js';
121
+ export { createVertex, getCoordinatesAndLayoutFromVertices, getClosestPointOn2DLine, pointOnLine3D, pointOnLine2D, createCameraVerticalPlane, createHorizontalPlane, getCartographicFromPlane, drapeGeometryOnTerrain, placeGeometryOnTerrain, } from './src/util/editor/editorHelpers.js';
122
+ export { SessionType, setupScratchLayer, GeometryType, alreadySnapped, } from './src/util/editor/editorSessionHelpers.js';
123
+ export { vertexSymbol, vertexIndexSymbol, handlerSymbol, mouseOverSymbol, } from './src/util/editor/editorSymbols.js';
124
+ export { getAngleSnapResult, getGeometrySnapResult, getSnappedCoordinateForResults, snapTypes, setSnappingFeatures, } from './src/util/editor/snappingHelpers.js';
124
125
  export { default as CreateBBoxInteraction } from './src/util/editor/interactions/createBBoxInteraction.js';
125
126
  export { default as CreateCircleInteraction } from './src/util/editor/interactions/createCircleInteraction.js';
126
127
  export { default as CreateLineStringInteraction } from './src/util/editor/interactions/createLineStringInteraction.js';
127
128
  export { default as CreatePointInteraction } from './src/util/editor/interactions/createPointInteraction.js';
128
- export { default as CreatePolygonInteraction } from './src/util/editor/interactions/createPolygonInteraction.js';
129
+ export { default as CreatePolygonInteraction, validityPlaceholder, } from './src/util/editor/interactions/createPolygonInteraction.js';
129
130
  export { default as EditFeaturesMouseOverInteraction } from './src/util/editor/interactions/editFeaturesMouseOverInteraction.js';
130
131
  export { cursorMap, default as EditGeometryMouseOverInteraction, } from './src/util/editor/interactions/editGeometryMouseOverInteraction.js';
131
132
  export { default as EnsureHandlerSelectionInteraction } from './src/util/editor/interactions/ensureHandlerSelectionInteraction.js';
@@ -136,6 +137,9 @@ export { SelectionMode, default as SelectFeatureMouseOverInteraction, } from './
136
137
  export { default as SelectMultiFeatureInteraction } from './src/util/editor/interactions/selectMultiFeatureInteraction.js';
137
138
  export { default as SelectSingleFeatureInteraction } from './src/util/editor/interactions/selectSingleFeatureInteraction.js';
138
139
  export { default as TranslateVertexInteraction } from './src/util/editor/interactions/translateVertexInteraction.js';
140
+ export { default as CreationSnapping } from './src/util/editor/interactions/creationSnapping.js';
141
+ export { default as TranslationSnapping } from './src/util/editor/interactions/translationSnapping.js';
142
+ export { default as LayerSnapping } from './src/util/editor/interactions/layerSnapping.js';
139
143
  export { getDefaultHighlightStyle, default as startSelectFeaturesSession, } from './src/util/editor/selectFeaturesSession.js';
140
144
  export { default as create2DHandlers } from './src/util/editor/transformation/create2DHandlers.js';
141
145
  export { default as create3DHandlers } from './src/util/editor/transformation/create3DHandlers.js';
@@ -148,24 +152,27 @@ export { default as TranslateInteraction, } from './src/util/editor/transformati
148
152
  export { default as geometryIsValid } from './src/util/editor/validateGeoemetry.js';
149
153
  export { default as ExclusiveManager } from './src/util/exclusiveManager.js';
150
154
  export { default as Extent } from './src/util/extent.js';
151
- export { default as arcToCesium } from './src/util/featureconverter/arcToCesium.js';
152
- export { validateCircle, default as circleToCesium, } from './src/util/featureconverter/circleToCesium.js';
155
+ export { getArcGeometryFactory } from './src/util/featureconverter/arcToCesium.js';
156
+ export { validateCircle, getCircleGeometryFactory, } from './src/util/featureconverter/circleToCesium.js';
157
+ export { setupClampedPrimitive } from './src/util/featureconverter/clampedPrimitive.js';
153
158
  export { getStylesArray, default as convert, } from './src/util/featureconverter/convert.js';
159
+ export { getArrowHeadPrimitives, validateLineString, getLineStringGeometryFactory, } from './src/util/featureconverter/lineStringToCesium.js';
160
+ export { getModelOptions, getPrimitiveOptions, getModelOrPointPrimitiveOptions, } from './src/util/featureconverter/pointHelpers.js';
161
+ export { getBillboardOptions, getLabelOptions, validatePoint, getWgs84CoordinatesForPoint, getPointPrimitives, } from './src/util/featureconverter/pointToCesium.js';
162
+ export { validatePolygon, getPolygonGeometryFactory, } from './src/util/featureconverter/polygonToCesium.js';
163
+ export { getHeightInfo, getMinHeight, getClampOrigin, getExtrusionHeightInfo, getRelativeEquivalent, isRelativeHeightReference, isClampedHeightReference, isAbsoluteHeightReference, mercatorToWgs84TransformerForHeightInfo, mercatorToCartesianTransformerForHeightInfo, } from './src/util/featureconverter/vectorHeightInfo.js';
164
+ export { getMaterialAppearance, createClassificationPrimitiveItem, createSolidPrimitiveItem, createOutlinePrimitiveItem, createLinePrimitiveItem, createGroundLinePrimitiveItem, createGroundPrimitiveItem, getCesiumGeometriesOptions, } from './src/util/featureconverter/vectorGeometryFactory.js';
154
165
  export { default as Extent3D } from './src/util/featureconverter/extent3D.js';
155
- export { getMaterialAppearance, createClassificationPrimitive, createPrimitive, createOutlinePrimitive, createLinePrimitive, getMinHeightOrGroundLevel, getStoreyHeights, validateStoreys, getHeightAboveGround, getHeightInfo, getStoreyOptions, addPrimitivesToContext, } from './src/util/featureconverter/featureconverterHelper.js';
156
- export { addArrowsToContext, validateLineString, default as lineStringToCesium, } from './src/util/featureconverter/lineStringToCesium.js';
157
- export { getModelOptions, getPrimitiveOptions, } from './src/util/featureconverter/pointHelpers.js';
158
- export { getBillboardOptions, getLabelOptions, validatePoint, getCartesian3AndWGS84FromCoordinates, default as pointToCesium, } from './src/util/featureconverter/pointToCesium.js';
159
- export { validatePolygon, default as polygonToCesium, } from './src/util/featureconverter/polygonToCesium.js';
166
+ export { getStoreyHeights, validateStoreys, getStoreyOptions, } from './src/util/featureconverter/storeyHelpers.js';
160
167
  export { requestUrl, requestJson, requestArrayBuffer, } from './src/util/fetch.js';
161
- export { getFlatCoordinatesFromSimpleGeometry, getFlatCoordinatesFromGeometry, circleFromCenterRadius, convertGeometryToPolygon, enforceEndingVertex, removeEndingVertex, removeEndingVertexFromGeometry, enforceRightHand, } from './src/util/geometryHelpers.js';
168
+ export { getFlatCoordinatesFromSimpleGeometry, getFlatCoordinateReferences, circleFromCenterRadius, convertGeometryToPolygon, enforceEndingVertex, removeEndingVertex, removeEndingVertexFromGeometry, enforceRightHand, is2DLayout, from2Dto3DLayout, from3Dto2DLayout, placeGeometryOnGround, createAbsoluteFeatures, } from './src/util/geometryHelpers.js';
162
169
  export { default as IndexedCollection } from './src/util/indexedCollection.js';
163
170
  export { isMobile } from './src/util/isMobile.js';
164
171
  export { maxZIndex, default as LayerCollection, } from './src/util/layerCollection.js';
165
172
  export { createHiddenObjectsCollection, } from './src/util/hiddenObjects.js';
166
173
  export { detectBrowserLocale } from './src/util/locale.js';
167
174
  export { default as MapCollection, } from './src/util/mapCollection.js';
168
- export { coordinateAtDistance, initialBearingBetweenCoords, getCartesianBearing, cartesian2DDistance, cartesian3DDistance, modulo, cartographicToWgs84, mercatorToCartesian, cartesianToMercator, getMidPoint, getCartesianPitch, } from './src/util/math.js';
175
+ export { coordinateAtDistance, initialBearingBetweenCoords, getCartesianBearing, cartesian2DDistance, cartesian2DDistanceSquared, cartesian3DDistance, modulo, cartographicToWgs84, mercatorToCartesian, cartesianToMercator, getMidPoint, getCartesianPitch, } from './src/util/math.js';
169
176
  export { isOverrideCollection, default as makeOverrideCollection, } from './src/util/overrideCollection.js';
170
177
  export { wgs84ToMercatorTransformer, mercatorToWgs84Transformer, setDefaultProjectionOptions, getDefaultProjection, wgs84Projection, mercatorProjection, default as Projection, } from './src/util/projection.js';
171
178
  export { isSameOrigin } from './src/util/urlHelpers.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
package/dist/ol.d.ts CHANGED
@@ -41,12 +41,17 @@ import {
41
41
  fvLastUpdated,
42
42
  globalHiderLastUpdated,
43
43
  } from './src/layer/vectorHelpers.js';
44
+ import { validityPlaceholder } from './src/util/editor/interactions/createPolygonInteraction.js';
44
45
 
45
46
  declare module 'ol/geom.js' {
46
47
  interface Geometry {
47
48
  getCoordinates(): any;
48
- setCoordinates(coordinates: any, layout?: any): void;
49
+ setCoordinates(
50
+ coordinates: any,
51
+ layout?: import('ol/geom/Geometry.js').GeometryLayout,
52
+ ): void;
49
53
  getFlatCoordinates(): number[];
54
+ getStride(): number;
50
55
  getLayout(): import('ol/geom/Geometry.js').GeometryLayout;
51
56
  [alreadyTransformedToMercator]?: boolean;
52
57
  [actuallyIsCircle]?: boolean;
@@ -67,15 +72,23 @@ declare module 'ol/geom.js' {
67
72
  | Array<Array<import('ol/coordinate.js').Coordinate>>
68
73
  | Array<Array<Array<import('ol/coordinate.js').Coordinate>>>
69
74
  >,
75
+ layout?: import('ol/geom/Geometry.js').GeometryLayout,
70
76
  ): void;
71
77
  getLayout(): import('ol/geom/Geometry.js').GeometryLayout;
72
78
  }
73
79
 
74
80
  interface Circle {
75
81
  getCoordinates(): import('ol/coordinate.js').Coordinate[];
76
- setCoordinates(coordinates: import('ol/coordinate.js').Coordinate[]): void;
82
+ setCoordinates(
83
+ coordinates: import('ol/coordinate.js').Coordinate[],
84
+ layout?: import('ol/geom/Geometry.js').GeometryLayout,
85
+ ): void;
77
86
  rotate(angle: number, anchor: import('ol/coordinate.js').Coordinate): void;
78
87
  }
88
+
89
+ interface Polygon {
90
+ [validityPlaceholder]?: boolean;
91
+ }
79
92
  }
80
93
 
81
94
  declare module 'ol/index.js' {
@@ -1,23 +1,19 @@
1
- import type { CustomDataSource, EntityCollection, Entity, SplitDirection } from '@vcmap-cesium/engine';
1
+ import { CustomDataSource, EntityCollection, SplitDirection, Scene } from '@vcmap-cesium/engine';
2
+ import { StyleLike } from 'ol/style/Style.js';
2
3
  import type { Feature } from 'ol/index.js';
3
- import { ClassificationPrimitive, GroundPolylinePrimitive, GroundPrimitive, Model, Primitive } from '@vcmap-cesium/engine';
4
- import { VectorContextFeatureCache, CesiumVectorContext } from './vectorContext.js';
4
+ import { CesiumVectorContext } from './vectorContext.js';
5
+ import VectorProperties from '../vectorProperties.js';
5
6
  declare class ClusterContext implements CesiumVectorContext {
6
7
  entities: EntityCollection;
7
- featureToBillboardMap: Map<Feature, Array<Entity>>;
8
- featureToLabelMap: Map<Feature, Array<Entity>>;
9
- constructor(dataSource: CustomDataSource);
10
- addPrimitives(_primitives: (Primitive | GroundPrimitive | GroundPolylinePrimitive | ClassificationPrimitive | Model)[], _feature: Feature, _allowPicking: boolean): void;
11
- addScaledPrimitives(_primitives: (Primitive | GroundPrimitive | GroundPolylinePrimitive | ClassificationPrimitive | Model)[], _feature: Feature, _allowPicking: boolean): void;
12
- addBillboards(billboardOptions: object[], feature: Feature, allowPicking?: boolean): void;
13
- addLabels(labelOptions: object[], feature: Feature, allowPicking?: boolean): void;
8
+ splitDirection: SplitDirection;
9
+ private _splitDirectionProperty;
10
+ private _featureItems;
11
+ private _convertingFeatures;
12
+ constructor(dataSource: CustomDataSource, splitDirection: SplitDirection);
13
+ private _addConvertedItems;
14
+ addFeature(feature: Feature, style: StyleLike, vectorProperties: VectorProperties, scene: Scene): Promise<void>;
14
15
  removeFeature(feature: Feature): void;
15
- /**
16
- * Caches the current cesium resources for a feature, removing them from the feature map
17
- */
18
- createFeatureCache(feature: Feature): VectorContextFeatureCache;
19
- clearFeatureCache(cache: VectorContextFeatureCache): void;
20
- updateSplitDirection(_splitDirection: SplitDirection): void;
16
+ updateSplitDirection(splitDirection: SplitDirection): void;
21
17
  clear(): void;
22
18
  destroy(): void;
23
19
  }
@@ -1,57 +1,89 @@
1
- import { removeFeatureFromMap, addPrimitiveToContext, removeArrayFromCollection, } from './vectorContext.js';
1
+ import { ConstantProperty, } from '@vcmap-cesium/engine';
2
+ import { setReferenceForPicking, } from './vectorContext.js';
3
+ import convert from '../../util/featureconverter/convert.js';
2
4
  class ClusterContext {
3
5
  entities;
4
- featureToBillboardMap = new Map();
5
- featureToLabelMap = new Map();
6
- constructor(dataSource) {
6
+ splitDirection;
7
+ _splitDirectionProperty;
8
+ _featureItems = new Map();
9
+ _convertingFeatures = new Map();
10
+ constructor(dataSource, splitDirection) {
7
11
  this.entities = dataSource.entities;
12
+ this.splitDirection = splitDirection;
13
+ this._splitDirectionProperty = new ConstantProperty(splitDirection);
8
14
  }
9
- // eslint-disable-next-line class-methods-use-this
10
- addPrimitives(_primitives, _feature, _allowPicking) { }
11
- // eslint-disable-next-line class-methods-use-this
12
- addScaledPrimitives(_primitives, _feature, _allowPicking) { }
13
- addBillboards(billboardOptions, feature, allowPicking = false) {
14
- addPrimitiveToContext(billboardOptions.map((billboard) => ({
15
- billboard,
16
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
17
- // @ts-ignore
18
- position: billboard.position,
19
- })), feature, allowPicking, this.entities, this.featureToBillboardMap);
15
+ _addConvertedItems(feature, allowPicking, items) {
16
+ const removeItems = items
17
+ .map((item) => {
18
+ let instance;
19
+ let removeItem;
20
+ if (item.type === 'billboard') {
21
+ instance = this.entities.add({
22
+ billboard: {
23
+ ...item.item,
24
+ splitDirection: this._splitDirectionProperty,
25
+ },
26
+ position: item.item.position,
27
+ });
28
+ }
29
+ else if (item.type === 'label') {
30
+ instance = this.entities.add({
31
+ label: item.item,
32
+ position: item.item.position,
33
+ });
34
+ }
35
+ if (instance) {
36
+ removeItem = () => {
37
+ this.entities.remove(instance);
38
+ };
39
+ }
40
+ if (instance) {
41
+ if (allowPicking) {
42
+ setReferenceForPicking(feature, instance);
43
+ }
44
+ }
45
+ return removeItem;
46
+ })
47
+ .filter((i) => i != null);
48
+ this._featureItems.set(feature, removeItems);
20
49
  }
21
- addLabels(labelOptions, feature, allowPicking = false) {
22
- addPrimitiveToContext(labelOptions.map((label) => ({
23
- label,
24
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
25
- // @ts-ignore
26
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
27
- position: label.position,
28
- })), feature, allowPicking, this.entities, this.featureToLabelMap);
50
+ async addFeature(feature, style, vectorProperties, scene) {
51
+ this._convertingFeatures.get(feature)?.();
52
+ let deleted = false;
53
+ this._convertingFeatures.set(feature, () => {
54
+ deleted = true;
55
+ });
56
+ const convertedItems = await convert(feature, style, vectorProperties, scene);
57
+ this._featureItems.get(feature)?.forEach((removeItem) => removeItem());
58
+ if (deleted) {
59
+ convertedItems.forEach((item) => {
60
+ if (item.type === 'primitive') {
61
+ item.item.destroy();
62
+ }
63
+ });
64
+ }
65
+ else {
66
+ this._addConvertedItems(feature, vectorProperties.getAllowPicking(feature), convertedItems);
67
+ }
29
68
  }
30
69
  removeFeature(feature) {
31
- removeFeatureFromMap(feature, this.featureToBillboardMap, this.entities);
32
- removeFeatureFromMap(feature, this.featureToLabelMap, this.entities);
33
- }
34
- /**
35
- * Caches the current cesium resources for a feature, removing them from the feature map
36
- */
37
- createFeatureCache(feature) {
38
- const cache = {};
39
- cache.billboards = this.featureToBillboardMap.get(feature);
40
- this.featureToBillboardMap.delete(feature);
41
- cache.labels = this.featureToLabelMap.get(feature);
42
- this.featureToLabelMap.delete(feature);
43
- return cache;
44
- }
45
- clearFeatureCache(cache) {
46
- removeArrayFromCollection(this.entities, cache.billboards);
47
- removeArrayFromCollection(this.entities, cache.labels);
70
+ this._convertingFeatures.get(feature)?.();
71
+ this._convertingFeatures.delete(feature);
72
+ this._featureItems.get(feature)?.forEach((removeItem) => removeItem());
73
+ this._featureItems.delete(feature);
48
74
  }
49
75
  // eslint-disable-next-line class-methods-use-this,no-unused-vars
50
- updateSplitDirection(_splitDirection) { }
76
+ updateSplitDirection(splitDirection) {
77
+ this.splitDirection = splitDirection;
78
+ this._splitDirectionProperty.setValue(this.splitDirection);
79
+ }
51
80
  clear() {
52
81
  this.entities.removeAll();
53
- this.featureToBillboardMap.clear();
54
- this.featureToLabelMap.clear();
82
+ this._featureItems.clear();
83
+ this._convertingFeatures.forEach((destroy) => {
84
+ destroy();
85
+ });
86
+ this._convertingFeatures.clear();
55
87
  }
56
88
  destroy() {
57
89
  this.clear();
@@ -1 +1 @@
1
- {"version":3,"file":"clusterContext.js","sourceRoot":"","sources":["../../../../src/layer/cesium/clusterContext.ts"],"names":[],"mappings":"AAeA,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,yBAAyB,GAG1B,MAAM,oBAAoB,CAAC;AAE5B,MAAM,cAAc;IAClB,QAAQ,CAAmB;IAE3B,qBAAqB,GAAgC,IAAI,GAAG,EAAE,CAAC;IAE/D,iBAAiB,GAAgC,IAAI,GAAG,EAAE,CAAC;IAE3D,YAAY,UAA4B;QACtC,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;IACtC,CAAC;IAED,kDAAkD;IAClD,aAAa,CACX,WAMG,EACH,QAAiB,EACjB,aAAsB,IACf,CAAC;IAEV,kDAAkD;IAClD,mBAAmB,CACjB,WAMG,EACH,QAAiB,EACjB,aAAsB,IACf,CAAC;IAEV,aAAa,CACX,gBAA0B,EAC1B,OAAgB,EAChB,YAAY,GAAG,KAAK;QAEpB,qBAAqB,CACnB,gBAAgB,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACnC,SAAS;YACT,6DAA6D;YAC7D,aAAa;YACb,QAAQ,EAAE,SAAS,CAAC,QAAsB;SAC3C,CAAC,CAAC,EACH,OAAO,EACP,YAAY,EACZ,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,qBAAqB,CAC3B,CAAC;IACJ,CAAC;IAED,SAAS,CACP,YAAsB,EACtB,OAAgB,EAChB,YAAY,GAAG,KAAK;QAEpB,qBAAqB,CACnB,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC3B,KAAK;YACL,6DAA6D;YAC7D,aAAa;YACb,mEAAmE;YACnE,QAAQ,EAAE,KAAK,CAAC,QAAQ;SACzB,CAAC,CAAC,EACH,OAAO,EACP,YAAY,EACZ,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,iBAAiB,CACvB,CAAC;IACJ,CAAC;IAED,aAAa,CAAC,OAAgB;QAC5B,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAC,qBAAqB,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzE,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,kBAAkB,CAAC,OAAgB;QACjC,MAAM,KAAK,GAA8B,EAAE,CAAC;QAC5C,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC3D,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC3C,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACvC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,iBAAiB,CAAC,KAAgC;QAChD,yBAAyB,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC3D,yBAAyB,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACzD,CAAC;IAED,iEAAiE;IACjE,oBAAoB,CAAC,eAA+B,IAAS,CAAC;IAE9D,KAAK;QACH,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;QAC1B,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,CAAC;QACnC,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC;IAED,OAAO;QACL,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;CACF;AAED,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"clusterContext.js","sourceRoot":"","sources":["../../../../src/layer/cesium/clusterContext.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,5 @@
1
1
  import { PrimitiveCollection, type SplitDirection } from '@vcmap-cesium/engine';
2
2
  import type VectorSource from 'ol/source/Vector.js';
3
- import type { Feature } from 'ol/index.js';
4
- import VectorContext from './vectorContext.js';
5
3
  import LayerImplementation from '../layerImplementation.js';
6
4
  import type CesiumMap from '../../map/cesiumMap.js';
7
5
  import type { FeatureLayerImplementation } from '../featureLayer.js';
@@ -10,6 +8,7 @@ import type VectorProperties from '../vectorProperties.js';
10
8
  import type StyleItem from '../../style/styleItem.js';
11
9
  import type FeatureVisibility from '../featureVisibility.js';
12
10
  import type GlobalHider from '../globalHider.js';
11
+ import VectorContext from './vectorContext.js';
13
12
  /**
14
13
  * represents a specific vector layer for cesium.
15
14
  */
@@ -35,7 +34,7 @@ declare class VectorCesiumImpl extends LayerImplementation<CesiumMap> implements
35
34
  private _addListeners;
36
35
  protected _setupContext(cesiumMap: CesiumMap): Promise<void>;
37
36
  initialize(): Promise<void>;
38
- _addFeatures(features: Feature[]): void;
37
+ private _addFeatures;
39
38
  /**
40
39
  * converts a feature and adds the associated primitives to the collection of primitives
41
40
  */
@@ -1,9 +1,9 @@
1
1
  import { unByKey } from 'ol/Observable.js';
2
2
  import { PrimitiveCollection, } from '@vcmap-cesium/engine';
3
- import VectorContext from './vectorContext.js';
4
3
  import { vcsLayerName } from '../layerSymbols.js';
5
4
  import LayerImplementation from '../layerImplementation.js';
6
5
  import { synchronizeFeatureVisibilityWithSource } from '../vectorHelpers.js';
6
+ import VectorContext from './vectorContext.js';
7
7
  /**
8
8
  * represents a specific vector layer for cesium.
9
9
  */
@@ -41,13 +41,17 @@ class VectorCesiumImpl extends LayerImplementation {
41
41
  }
42
42
  _addListeners() {
43
43
  this._olListeners.push(this.source.on('addfeature', (event) => {
44
- this._addFeature(event.feature);
44
+ this._addFeature(event.feature).catch(() => {
45
+ this.getLogger().error('failed to convert feature');
46
+ });
45
47
  }));
46
48
  this._olListeners.push(this.source.on('removefeature', (event) => {
47
49
  this._removeFeature(event.feature);
48
50
  }));
49
51
  this._olListeners.push(this.source.on('changefeature', (event) => {
50
- this._featureChanged(event.feature);
52
+ this._featureChanged(event.feature).catch(() => {
53
+ this.getLogger().error('failed to convert feature');
54
+ });
51
55
  }));
52
56
  this._removeVectorPropertiesChangeHandler =
53
57
  this.vectorProperties.propertyChanged.addEventListener(this.refresh.bind(this));
@@ -72,15 +76,19 @@ class VectorCesiumImpl extends LayerImplementation {
72
76
  }
73
77
  _addFeatures(features) {
74
78
  // TODO we should make this non-blocking to better handle larger data sets check in RIWA Impl
75
- features.forEach((f) => this._addFeature(f));
79
+ features.forEach((f) => {
80
+ this._addFeature(f).catch(() => {
81
+ this.getLogger().error('failed to convert feature');
82
+ });
83
+ });
76
84
  }
77
85
  /**
78
86
  * converts a feature and adds the associated primitives to the collection of primitives
79
87
  */
80
- _addFeature(feature) {
88
+ async _addFeature(feature) {
81
89
  if (this.active) {
82
90
  // XXX cluster check here? or on init?
83
- this._context.convertFeature(feature, this.style.style, this.vectorProperties, this._scene);
91
+ await this._context.addFeature(feature, this.style.style, this.vectorProperties, this._scene);
84
92
  }
85
93
  else {
86
94
  this._featureToAdd.add(feature);
@@ -103,11 +111,9 @@ class VectorCesiumImpl extends LayerImplementation {
103
111
  /**
104
112
  * called when a features property have changed
105
113
  */
106
- _featureChanged(feature) {
107
- const cache = this._context.createFeatureCache(feature);
114
+ async _featureChanged(feature) {
108
115
  this._featureToAdd.delete(feature);
109
- this._addFeature(feature);
110
- this._context.clearFeatureCache(cache);
116
+ await this._addFeature(feature);
111
117
  }
112
118
  async activate() {
113
119
  if (!this.active) {