@vcmap/core 6.0.0-rc.4 → 6.0.0-rc.6

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 (209) hide show
  1. package/dist/cesium.d.ts +11 -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 +8 -14
  7. package/dist/src/layer/cesium/clusterContext.js +62 -41
  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 +10 -53
  13. package/dist/src/layer/cesium/vectorContext.js +88 -172
  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 +6 -6
  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 +8 -3
  23. package/dist/src/layer/vectorProperties.js +30 -5
  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/map/obliqueMap.d.ts +3 -0
  28. package/dist/src/map/obliqueMap.js +27 -6
  29. package/dist/src/map/obliqueMap.js.map +1 -1
  30. package/dist/src/map/vcsMap.d.ts +8 -0
  31. package/dist/src/map/vcsMap.js +11 -0
  32. package/dist/src/map/vcsMap.js.map +1 -1
  33. package/dist/src/oblique/helpers.js +5 -5
  34. package/dist/src/oblique/helpers.js.map +1 -1
  35. package/dist/src/oblique/obliqueDataSet.js +4 -4
  36. package/dist/src/oblique/obliqueDataSet.js.map +1 -1
  37. package/dist/src/ol/geom/geometryCollection.js +19 -2
  38. package/dist/src/ol/geom/geometryCollection.js.map +1 -1
  39. package/dist/src/style/arcStyle.js +1 -0
  40. package/dist/src/style/arcStyle.js.map +1 -1
  41. package/dist/src/util/editor/createFeatureSession.d.ts +5 -1
  42. package/dist/src/util/editor/createFeatureSession.js +48 -4
  43. package/dist/src/util/editor/createFeatureSession.js.map +1 -1
  44. package/dist/src/util/editor/editFeaturesSession.d.ts +10 -4
  45. package/dist/src/util/editor/editFeaturesSession.js +74 -37
  46. package/dist/src/util/editor/editFeaturesSession.js.map +1 -1
  47. package/dist/src/util/editor/editGeometrySession.d.ts +5 -1
  48. package/dist/src/util/editor/editGeometrySession.js +77 -55
  49. package/dist/src/util/editor/editGeometrySession.js.map +1 -1
  50. package/dist/src/util/editor/editorHelpers.d.ts +12 -6
  51. package/dist/src/util/editor/editorHelpers.js +47 -20
  52. package/dist/src/util/editor/editorHelpers.js.map +1 -1
  53. package/dist/src/util/editor/editorSessionHelpers.d.ts +5 -0
  54. package/dist/src/util/editor/editorSessionHelpers.js +1 -0
  55. package/dist/src/util/editor/editorSessionHelpers.js.map +1 -1
  56. package/dist/src/util/editor/editorSymbols.d.ts +1 -1
  57. package/dist/src/util/editor/editorSymbols.js +1 -1
  58. package/dist/src/util/editor/editorSymbols.js.map +1 -1
  59. package/dist/src/util/editor/interactions/createBBoxInteraction.d.ts +1 -0
  60. package/dist/src/util/editor/interactions/createBBoxInteraction.js +20 -16
  61. package/dist/src/util/editor/interactions/createBBoxInteraction.js.map +1 -1
  62. package/dist/src/util/editor/interactions/createCircleInteraction.js +1 -1
  63. package/dist/src/util/editor/interactions/createCircleInteraction.js.map +1 -1
  64. package/dist/src/util/editor/interactions/createLineStringInteraction.js +3 -3
  65. package/dist/src/util/editor/interactions/createLineStringInteraction.js.map +1 -1
  66. package/dist/src/util/editor/interactions/createPointInteraction.js +1 -1
  67. package/dist/src/util/editor/interactions/createPointInteraction.js.map +1 -1
  68. package/dist/src/util/editor/interactions/createPolygonInteraction.d.ts +4 -0
  69. package/dist/src/util/editor/interactions/createPolygonInteraction.js +9 -3
  70. package/dist/src/util/editor/interactions/createPolygonInteraction.js.map +1 -1
  71. package/dist/src/util/editor/interactions/creationSnapping.d.ts +26 -0
  72. package/dist/src/util/editor/interactions/creationSnapping.js +139 -0
  73. package/dist/src/util/editor/interactions/creationSnapping.js.map +1 -0
  74. package/dist/src/util/editor/interactions/editGeometryMouseOverInteraction.js +3 -2
  75. package/dist/src/util/editor/interactions/editGeometryMouseOverInteraction.js.map +1 -1
  76. package/dist/src/util/editor/interactions/insertVertexInteraction.d.ts +3 -1
  77. package/dist/src/util/editor/interactions/insertVertexInteraction.js +14 -6
  78. package/dist/src/util/editor/interactions/insertVertexInteraction.js.map +1 -1
  79. package/dist/src/util/editor/interactions/layerSnapping.d.ts +19 -0
  80. package/dist/src/util/editor/interactions/layerSnapping.js +87 -0
  81. package/dist/src/util/editor/interactions/layerSnapping.js.map +1 -0
  82. package/dist/src/util/editor/interactions/translateVertexInteraction.js +2 -2
  83. package/dist/src/util/editor/interactions/translateVertexInteraction.js.map +1 -1
  84. package/dist/src/util/editor/interactions/translationSnapping.d.ts +25 -0
  85. package/dist/src/util/editor/interactions/translationSnapping.js +179 -0
  86. package/dist/src/util/editor/interactions/translationSnapping.js.map +1 -0
  87. package/dist/src/util/editor/snappingHelpers.d.ts +44 -0
  88. package/dist/src/util/editor/snappingHelpers.js +329 -0
  89. package/dist/src/util/editor/snappingHelpers.js.map +1 -0
  90. package/dist/src/util/editor/transformation/create2DHandlers.js +26 -26
  91. package/dist/src/util/editor/transformation/create2DHandlers.js.map +1 -1
  92. package/dist/src/util/editor/transformation/create3DHandlers.js +65 -14
  93. package/dist/src/util/editor/transformation/create3DHandlers.js.map +1 -1
  94. package/dist/src/util/editor/transformation/scaleInteraction.js +27 -5
  95. package/dist/src/util/editor/transformation/scaleInteraction.js.map +1 -1
  96. package/dist/src/util/editor/transformation/transformationHandler.js +56 -38
  97. package/dist/src/util/editor/transformation/transformationHandler.js.map +1 -1
  98. package/dist/src/util/editor/transformation/transformationTypes.d.ts +2 -0
  99. package/dist/src/util/editor/transformation/transformationTypes.js +4 -0
  100. package/dist/src/util/editor/transformation/transformationTypes.js.map +1 -1
  101. package/dist/src/util/featureconverter/arcToCesium.d.ts +5 -19
  102. package/dist/src/util/featureconverter/arcToCesium.js +15 -42
  103. package/dist/src/util/featureconverter/arcToCesium.js.map +1 -1
  104. package/dist/src/util/featureconverter/circleToCesium.d.ts +2 -27
  105. package/dist/src/util/featureconverter/circleToCesium.js +84 -63
  106. package/dist/src/util/featureconverter/circleToCesium.js.map +1 -1
  107. package/dist/src/util/featureconverter/clampedPrimitive.d.ts +2 -0
  108. package/dist/src/util/featureconverter/clampedPrimitive.js +29 -0
  109. package/dist/src/util/featureconverter/clampedPrimitive.js.map +1 -0
  110. package/dist/src/util/featureconverter/convert.d.ts +26 -7
  111. package/dist/src/util/featureconverter/convert.js +221 -44
  112. package/dist/src/util/featureconverter/convert.js.map +1 -1
  113. package/dist/src/util/featureconverter/extent3D.d.ts +4 -3
  114. package/dist/src/util/featureconverter/extent3D.js +4 -3
  115. package/dist/src/util/featureconverter/extent3D.js.map +1 -1
  116. package/dist/src/util/featureconverter/lineStringToCesium.d.ts +12 -27
  117. package/dist/src/util/featureconverter/lineStringToCesium.js +85 -107
  118. package/dist/src/util/featureconverter/lineStringToCesium.js.map +1 -1
  119. package/dist/src/util/featureconverter/pointHelpers.d.ts +8 -11
  120. package/dist/src/util/featureconverter/pointHelpers.js +134 -120
  121. package/dist/src/util/featureconverter/pointHelpers.js.map +1 -1
  122. package/dist/src/util/featureconverter/pointToCesium.d.ts +14 -17
  123. package/dist/src/util/featureconverter/pointToCesium.js +47 -96
  124. package/dist/src/util/featureconverter/pointToCesium.js.map +1 -1
  125. package/dist/src/util/featureconverter/polygonToCesium.d.ts +2 -26
  126. package/dist/src/util/featureconverter/polygonToCesium.js +62 -72
  127. package/dist/src/util/featureconverter/polygonToCesium.js.map +1 -1
  128. package/dist/src/util/featureconverter/storeyHelpers.d.ts +17 -0
  129. package/dist/src/util/featureconverter/storeyHelpers.js +78 -0
  130. package/dist/src/util/featureconverter/storeyHelpers.js.map +1 -0
  131. package/dist/src/util/featureconverter/vectorGeometryFactory.d.ts +54 -0
  132. package/dist/src/util/featureconverter/vectorGeometryFactory.js +278 -0
  133. package/dist/src/util/featureconverter/vectorGeometryFactory.js.map +1 -0
  134. package/dist/src/util/featureconverter/vectorHeightInfo.d.ts +86 -0
  135. package/dist/src/util/featureconverter/vectorHeightInfo.js +242 -0
  136. package/dist/src/util/featureconverter/vectorHeightInfo.js.map +1 -0
  137. package/dist/src/util/geometryHelpers.d.ts +22 -1
  138. package/dist/src/util/geometryHelpers.js +65 -2
  139. package/dist/src/util/geometryHelpers.js.map +1 -1
  140. package/dist/src/util/mapCollection.js +8 -0
  141. package/dist/src/util/mapCollection.js.map +1 -1
  142. package/dist/src/util/math.d.ts +6 -2
  143. package/dist/src/util/math.js +34 -12
  144. package/dist/src/util/math.js.map +1 -1
  145. package/dist/tests/unit/helpers/cesiumHelpers.js +3 -1
  146. package/dist/tests/unit/helpers/cesiumHelpers.js.map +1 -1
  147. package/dist/tests/unit/helpers/helpers.d.ts +2 -9
  148. package/dist/tests/unit/helpers/helpers.js +2 -8
  149. package/dist/tests/unit/helpers/helpers.js.map +1 -1
  150. package/index.ts +74 -35
  151. package/package.json +3 -3
  152. package/src/cesium/cesium.d.ts +11 -0
  153. package/src/layer/cesium/clusterContext.ts +82 -91
  154. package/src/layer/cesium/vectorCesiumImpl.ts +17 -11
  155. package/src/layer/cesium/vectorContext.ts +120 -348
  156. package/src/layer/geojsonHelpers.ts +9 -12
  157. package/src/layer/oblique/obliqueHelpers.ts +6 -6
  158. package/src/layer/vectorLayer.ts +0 -71
  159. package/src/layer/vectorProperties.ts +46 -9
  160. package/src/map/baseOLMap.ts +1 -1
  161. package/src/map/obliqueMap.ts +46 -6
  162. package/src/map/vcsMap.ts +20 -2
  163. package/src/oblique/helpers.ts +11 -5
  164. package/src/oblique/obliqueDataSet.ts +4 -4
  165. package/src/ol/geom/geometryCollection.js +21 -2
  166. package/src/ol/ol.d.ts +15 -2
  167. package/src/style/arcStyle.ts +1 -0
  168. package/src/util/editor/createFeatureSession.ts +64 -6
  169. package/src/util/editor/editFeaturesSession.ts +105 -39
  170. package/src/util/editor/editGeometrySession.ts +118 -75
  171. package/src/util/editor/editorHelpers.ts +78 -30
  172. package/src/util/editor/editorSessionHelpers.ts +7 -0
  173. package/src/util/editor/editorSymbols.ts +1 -1
  174. package/src/util/editor/interactions/createBBoxInteraction.ts +25 -16
  175. package/src/util/editor/interactions/createCircleInteraction.ts +1 -1
  176. package/src/util/editor/interactions/createLineStringInteraction.ts +9 -3
  177. package/src/util/editor/interactions/createPointInteraction.ts +1 -1
  178. package/src/util/editor/interactions/createPolygonInteraction.ts +16 -3
  179. package/src/util/editor/interactions/creationSnapping.ts +226 -0
  180. package/src/util/editor/interactions/editGeometryMouseOverInteraction.ts +3 -2
  181. package/src/util/editor/interactions/insertVertexInteraction.ts +27 -7
  182. package/src/util/editor/interactions/layerSnapping.ts +136 -0
  183. package/src/util/editor/interactions/translateVertexInteraction.ts +8 -2
  184. package/src/util/editor/interactions/translationSnapping.ts +302 -0
  185. package/src/util/editor/snappingHelpers.ts +490 -0
  186. package/src/util/editor/transformation/create2DHandlers.ts +38 -26
  187. package/src/util/editor/transformation/create3DHandlers.ts +84 -22
  188. package/src/util/editor/transformation/scaleInteraction.ts +28 -5
  189. package/src/util/editor/transformation/transformationHandler.ts +72 -41
  190. package/src/util/editor/transformation/transformationTypes.ts +5 -0
  191. package/src/util/featureconverter/arcToCesium.ts +25 -95
  192. package/src/util/featureconverter/circleToCesium.ts +127 -113
  193. package/src/util/featureconverter/clampedPrimitive.ts +70 -0
  194. package/src/util/featureconverter/convert.ts +446 -114
  195. package/src/util/featureconverter/extent3D.ts +13 -6
  196. package/src/util/featureconverter/lineStringToCesium.ts +132 -179
  197. package/src/util/featureconverter/pointHelpers.ts +271 -214
  198. package/src/util/featureconverter/pointToCesium.ts +111 -175
  199. package/src/util/featureconverter/polygonToCesium.ts +98 -117
  200. package/src/util/featureconverter/storeyHelpers.ts +104 -0
  201. package/src/util/featureconverter/vectorGeometryFactory.ts +601 -0
  202. package/src/util/featureconverter/vectorHeightInfo.ts +393 -0
  203. package/src/util/geometryHelpers.ts +79 -5
  204. package/src/util/mapCollection.ts +8 -0
  205. package/src/util/math.ts +59 -12
  206. package/dist/src/util/featureconverter/featureconverterHelper.d.ts +0 -35
  207. package/dist/src/util/featureconverter/featureconverterHelper.js +0 -404
  208. package/dist/src/util/featureconverter/featureconverterHelper.js.map +0 -1
  209. 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 {
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, getFlatCoordinatesFromGeometry, circleFromCenterRadius, convertGeometryToPolygon, enforceEndingVertex, removeEndingVertex, removeEndingVertexFromGeometry, enforceRightHand, is2DLayout, from2Dto3DLayout, from3Dto2DLayout, } 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, getFlatCoordinatesFromGeometry, circleFromCenterRadius, convertGeometryToPolygon, enforceEndingVertex, removeEndingVertex, removeEndingVertexFromGeometry, enforceRightHand, is2DLayout, from2Dto3DLayout, from3Dto2DLayout, } 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":"AAAA,OAAO,yBAAyB,CAAC;AACjC,OAAO,qCAAqC,CAAC;AAC7C,OAAO,qBAAqB,CAAC;AAC7B,OAAO,mCAAmC,CAAC;AAC3C,OAAO,0CAA0C,CAAC;AAClD,OAAO,qCAAqC,CAAC;AAC7C,OAAO,wBAAwB,CAAC;AAEhC,OAAO,EACL,OAAO,IAAI,kBAAkB,GAE9B,MAAM,0CAA0C,CAAC;AAElD,OAAO,EACL,OAAO,IAAI,QAAQ,GAEpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AACrF,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,4BAA4B,EAC5B,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACrB,0BAA0B,EAC1B,OAAO,IAAI,aAAa,GAGzB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,OAAO,IAAI,uBAAuB,GAEnC,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iDAAiD,CAAC;AACpF,OAAO,EACL,OAAO,IAAI,2BAA2B,GAEvC,MAAM,sDAAsD,CAAC;AAC9D,OAAO,EACL,SAAS,EACT,OAAO,IAAI,kBAAkB,GAG9B,MAAM,6CAA6C,CAAC;AACrD,OAAO,EACL,OAAO,IAAI,mBAAmB,GAM/B,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AACtF,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,gDAAgD,CAAC;AACtG,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,iDAAiD,CAAC;AACxG,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AACpF,cAAc,sCAAsC,CAAC;AACrD,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,OAAO,IAAI,uBAAuB,GACnC,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAC7F,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AACnG,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AAC/F,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AAC/F,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AACvF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AACrF,OAAO,EACL,sBAAsB,EACtB,6BAA6B,EAC7B,+BAA+B,EAC/B,OAAO,IAAI,aAAa,GAEzB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,kDAAkD,CAAC;AACzG,OAAO,EACL,SAAS,EACT,qBAAqB,EACrB,OAAO,IAAI,yBAAyB,GAErC,MAAM,iDAAiD,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACjF,OAAO,EACL,OAAO,IAAI,kBAAkB,GAG9B,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,SAAS,EAAe,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EACL,OAAO,IAAI,eAAe,GAE3B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,OAAO,IAAI,YAAY,GAIxB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,cAAc,EACd,OAAO,IAAI,iBAAiB,GAK7B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,OAAO,IAAI,wBAAwB,GAIpC,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,uBAAuB,GAExB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,aAAa,EACb,WAAW,EACX,MAAM,EACN,YAAY,EACZ,aAAa,EACb,uBAAuB,EACvB,4BAA4B,EAC5B,OAAO,IAAI,iBAAiB,GAI7B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,YAAY,GAGb,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,kBAAkB,EAClB,OAAO,IAAI,YAAY,GAExB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EACL,OAAO,IAAI,KAAK,GAKjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACpF,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AACtF,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,OAAO,EACP,+BAA+B,EAC/B,+BAA+B,EAC/B,sBAAsB,EACtB,cAAc,GACf,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AACxF,OAAO,EACL,OAAO,IAAI,kBAAkB,GAE9B,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,OAAO,IAAI,mBAAmB,GAE/B,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,OAAO,IAAI,2BAA2B,EAAE,MAAM,uDAAuD,CAAC;AAC/G,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,qDAAqD,CAAC;AAC3G,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,qDAAqD,CAAC;AAC3G,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,mDAAmD,CAAC;AACvG,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,gDAAgD,CAAC;AACjG,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,oDAAoD,CAAC;AACzG,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EACL,sBAAsB,EACtB,OAAO,IAAI,eAAe,GAE3B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,OAAO,IAAI,WAAW,GAKvB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,OAAO,IAAI,gBAAgB,GAG5B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,wBAAwB,EACxB,4BAA4B,EAC5B,sBAAsB,GAEvB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,OAAO,IAAI,YAAY,GAGxB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EACL,OAAO,IAAI,eAAe,GAE3B,MAAM,6CAA6C,CAAC;AACrD,OAAO,EACL,OAAO,IAAI,yBAAyB,GAErC,MAAM,uDAAuD,CAAC;AAC/D,OAAO,EACL,0BAA0B,EAC1B,iBAAiB,EACjB,OAAO,IAAI,YAAY,GAKxB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,MAAM,EACN,OAAO,IAAI,uBAAuB,GAEnC,MAAM,qDAAqD,CAAC;AAC7D,OAAO,EACL,OAAO,IAAI,QAAQ,GAGpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,uBAAuB,EACvB,iBAAiB,EACjB,sCAAsC,GACvC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,OAAO,IAAI,WAAW,GAGvB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,wBAAwB,EACxB,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,sBAAsB,EACtB,4BAA4B,EAC5B,sBAAsB,EACtB,oBAAoB,EACpB,cAAc,EAEd,OAAO,IAAI,gBAAgB,GAO5B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,4BAA4B,EAC5B,yBAAyB,EACzB,eAAe,EACf,cAAc,EACd,qBAAqB,EACrB,gBAAgB,EAChB,UAAU,GACX,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,OAAO,IAAI,eAAe,GAI3B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAc,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAoB,MAAM,2BAA2B,CAAC;AAC3E,OAAO,EACL,OAAO,IAAI,QAAQ,GAGpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,OAAO,IAAI,SAAS,GAGrB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EACL,iBAAiB,EACjB,OAAO,IAAI,aAAa,GAEzB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,OAAO,IAAI,SAAS,GAIrB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EACL,6BAA6B,EAC7B,OAAO,IAAI,UAAU,GAEtB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,OAAO,IAAI,aAAa,GAEzB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,OAAO,IAAI,MAAM,GAIlB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAChG,OAAO,EACL,2BAA2B,EAC3B,qBAAqB,EACrB,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,GAGd,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,OAAO,IAAI,iBAAiB,GAM7B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,SAAS,EACT,uBAAuB,EACvB,OAAO,IAAI,cAAc,GAE1B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,OAAO,IAAI,YAAY,GAExB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,OAAO,IAAI,gBAAgB,GAE5B,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,OAAO,IAAI,eAAe,GAG3B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,OAAO,IAAI,WAAW,GAEvB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,uBAAuB,EACvB,cAAc,EACd,cAAc,EACd,oBAAoB,GACrB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAClF,OAAO,EACL,gBAAgB,EAChB,OAAO,IAAI,QAAQ,GAEpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,QAAQ,EACR,OAAO,IAAI,UAAU,GAEtB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,uBAAuB,EACvB,OAAO,IAAI,oBAAoB,GAEhC,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,mBAAmB,EACnB,aAAa,GACd,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EACL,WAAW,EACX,YAAY,EACZ,kBAAkB,EAClB,oBAAoB,EACpB,UAAU,EACV,cAAc,EACd,cAAc,EACd,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,WAAW,EACX,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,UAAU,EACV,UAAU,EACV,UAAU,EACV,UAAU,EACV,gCAAgC,EAChC,mBAAmB,EACnB,8BAA8B,GAE/B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,OAAO,IAAI,SAAS,GAErB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,OAAO,IAAI,eAAe,GAQ3B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,iBAAiB,EACjB,OAAO,IAAI,UAAU,GACtB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,OAAO,IAAI,cAAc,GAI1B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AAChG,OAAO,EACL,6BAA6B,EAC7B,8BAA8B,EAC9B,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,GAEnB,MAAM,4CAA4C,CAAC;AACpD,OAAO,EACL,OAAO,IAAI,cAAc,EACzB,mBAAmB,GAGpB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EACL,OAAO,IAAI,yBAAyB,GAGrC,MAAM,2CAA2C,CAAC;AACnD,OAAO,EACL,OAAO,IAAI,wBAAwB,GAEpC,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,OAAO,IAAI,wBAAwB,GAEpC,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,YAAY,EACZ,mCAAmC,EACnC,uBAAuB,EACvB,aAAa,EACb,aAAa,EACb,yBAAyB,EACzB,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,GAIvB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,YAAY,EAIZ,cAAc,GACf,MAAM,2CAA2C,CAAC;AACnD,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,eAAe,GAChB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,8BAA8B,EAC9B,SAAS,EACT,mBAAmB,GAGpB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,yDAAyD,CAAC;AAC3G,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,2DAA2D,CAAC;AAC/G,OAAO,EAAE,OAAO,IAAI,2BAA2B,EAAE,MAAM,+DAA+D,CAAC;AACvH,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,0DAA0D,CAAC;AAC7G,OAAO,EACL,OAAO,IAAI,wBAAwB,EACnC,mBAAmB,GACpB,MAAM,4DAA4D,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,gCAAgC,EAAE,MAAM,oEAAoE,CAAC;AACjI,OAAO,EACL,SAAS,EACT,OAAO,IAAI,gCAAgC,GAC5C,MAAM,oEAAoE,CAAC;AAC5E,OAAO,EAAE,OAAO,IAAI,iCAAiC,EAAE,MAAM,qEAAqE,CAAC;AACnI,OAAO,EACL,OAAO,IAAI,uBAAuB,GAEnC,MAAM,2DAA2D,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,4DAA4D,CAAC;AACjH,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,2DAA2D,CAAC;AAC/G,OAAO,EACL,aAAa,EACb,OAAO,IAAI,iCAAiC,GAC7C,MAAM,qEAAqE,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,6BAA6B,EAAE,MAAM,iEAAiE,CAAC;AAC3H,OAAO,EAAE,OAAO,IAAI,8BAA8B,EAAE,MAAM,kEAAkE,CAAC;AAC7H,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,8DAA8D,CAAC;AACrH,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oDAAoD,CAAC;AACjG,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,uDAAuD,CAAC;AACvG,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iDAAiD,CAAC;AAC3F,OAAO,EACL,wBAAwB,EACxB,OAAO,IAAI,0BAA0B,GAEtC,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,sDAAsD,CAAC;AACnG,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,sDAAsD,CAAC;AACnG,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,wDAAwD,CAAC;AACvG,OAAO,EACL,OAAO,IAAI,iBAAiB,GAE7B,MAAM,uDAAuD,CAAC;AAC/D,OAAO,EACL,OAAO,IAAI,gBAAgB,GAE5B,MAAM,sDAAsD,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,2BAA2B,EAAE,MAAM,2DAA2D,CAAC;AACnH,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,QAAQ,EACR,QAAQ,GAGT,MAAM,yDAAyD,CAAC;AACjE,OAAO,EACL,OAAO,IAAI,oBAAoB,GAEhC,MAAM,0DAA0D,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,wCAAwC,CAAC;AACpF,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,MAAM,EAAiB,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EACL,cAAc,EACd,wBAAwB,GACzB,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iDAAiD,CAAC;AACxF,OAAO,EACL,cAAc,EACd,OAAO,IAAI,OAAO,GAInB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,4BAA4B,GAC7B,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,+BAA+B,GAChC,MAAM,6CAA6C,CAAC;AACrD,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,2BAA2B,EAG3B,kBAAkB,GACnB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EACL,eAAe,EACf,yBAAyB,GAC1B,MAAM,gDAAgD,CAAC;AACxD,OAAO,EAKL,aAAa,EACb,YAAY,EACZ,cAAc,EACd,sBAAsB,EACtB,qBAAqB,EACrB,yBAAyB,EACzB,wBAAwB,EACxB,yBAAyB,EACzB,uCAAuC,EACvC,2CAA2C,GAC5C,MAAM,iDAAiD,CAAC;AACzD,OAAO,EAML,qBAAqB,EACrB,iCAAiC,EACjC,wBAAwB,EACxB,0BAA0B,EAC1B,uBAAuB,EACvB,6BAA6B,EAC7B,yBAAyB,EACzB,0BAA0B,GAC3B,MAAM,sDAAsD,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,gBAAgB,GAEjB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EACL,UAAU,EACV,WAAW,EACX,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,oCAAoC,EACpC,8BAA8B,EAC9B,sBAAsB,EACtB,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,8BAA8B,EAC9B,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EACL,SAAS,EACT,OAAO,IAAI,eAAe,GAC3B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAEL,6BAA6B,GAC9B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EACL,OAAO,IAAI,aAAa,GAEzB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,mBAAmB,EACnB,mBAAmB,EACnB,0BAA0B,EAC1B,mBAAmB,EACnB,MAAM,EACN,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,WAAW,EACX,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,oBAAoB,EACpB,OAAO,IAAI,sBAAsB,GAKlC,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,EAC1B,2BAA2B,EAC3B,oBAAoB,EACpB,eAAe,EACf,kBAAkB,EAClB,OAAO,IAAI,UAAU,GAGtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,uBAAuB,EACvB,OAAO,IAAI,SAAS,GAErB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,sBAAsB,EACtB,aAAa,EACb,OAAO,IAAI,MAAM,GAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,OAAO,IAAI,SAAS,GAErB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,iBAAiB,GAElB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,OAAO,IAAI,SAAS,EAAoB,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AACpF,OAAO,EACL,OAAO,IAAI,cAAc,GAI1B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAGL,sBAAsB,EACtB,wBAAwB,EACxB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAIL,kBAAkB,GACnB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EACzB,oCAAoC,EACpC,4BAA4B,EAC5B,6BAA6B,GAC9B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAEL,yBAAyB,GAC1B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAC;AACpF,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,0BAA0B,CAAC"}
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,22 +1,16 @@
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>>;
8
+ private _featureItems;
9
+ private _convertingFeatures;
9
10
  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;
11
+ private _addConvertedItems;
12
+ addFeature(feature: Feature, style: StyleLike, vectorProperties: VectorProperties, scene: Scene): Promise<void>;
14
13
  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
14
  updateSplitDirection(_splitDirection: SplitDirection): void;
21
15
  clear(): void;
22
16
  destroy(): void;
@@ -1,57 +1,78 @@
1
- import { removeFeatureFromMap, addPrimitiveToContext, removeArrayFromCollection, } from './vectorContext.js';
1
+ import { setReferenceForPicking, } from './vectorContext.js';
2
+ import convert from '../../util/featureconverter/convert.js';
2
3
  class ClusterContext {
3
4
  entities;
4
- featureToBillboardMap = new Map();
5
- featureToLabelMap = new Map();
5
+ _featureItems = new Map();
6
+ _convertingFeatures = new Map();
6
7
  constructor(dataSource) {
7
8
  this.entities = dataSource.entities;
8
9
  }
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);
10
+ _addConvertedItems(feature, allowPicking, items) {
11
+ const removeItems = items
12
+ .map((item) => {
13
+ let instance;
14
+ let removeItem;
15
+ if (item.type === 'billboard') {
16
+ instance = this.entities.add({
17
+ billboard: item.item,
18
+ position: item.item.position,
19
+ });
20
+ }
21
+ else if (item.type === 'label') {
22
+ instance = this.entities.add({
23
+ label: item.item,
24
+ position: item.item.position,
25
+ });
26
+ }
27
+ if (instance) {
28
+ removeItem = () => {
29
+ this.entities.remove(instance);
30
+ };
31
+ }
32
+ if (instance) {
33
+ if (allowPicking) {
34
+ setReferenceForPicking(feature, instance);
35
+ }
36
+ }
37
+ return removeItem;
38
+ })
39
+ .filter((i) => i != null);
40
+ this._featureItems.set(feature, removeItems);
20
41
  }
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);
42
+ async addFeature(feature, style, vectorProperties, scene) {
43
+ this._convertingFeatures.get(feature)?.();
44
+ let deleted = false;
45
+ this._convertingFeatures.set(feature, () => {
46
+ deleted = true;
47
+ });
48
+ const convertedItems = await convert(feature, style, vectorProperties, scene);
49
+ this._featureItems.get(feature)?.forEach((removeItem) => removeItem());
50
+ if (deleted) {
51
+ convertedItems.forEach((item) => {
52
+ if (item.type === 'primitive') {
53
+ item.item.destroy();
54
+ }
55
+ });
56
+ }
57
+ else {
58
+ this._addConvertedItems(feature, vectorProperties.getAllowPicking(feature), convertedItems);
59
+ }
29
60
  }
30
61
  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);
62
+ this._convertingFeatures.get(feature)?.();
63
+ this._convertingFeatures.delete(feature);
64
+ this._featureItems.get(feature)?.forEach((removeItem) => removeItem());
65
+ this._featureItems.delete(feature);
48
66
  }
49
67
  // eslint-disable-next-line class-methods-use-this,no-unused-vars
50
68
  updateSplitDirection(_splitDirection) { }
51
69
  clear() {
52
70
  this.entities.removeAll();
53
- this.featureToBillboardMap.clear();
54
- this.featureToLabelMap.clear();
71
+ this._featureItems.clear();
72
+ this._convertingFeatures.forEach((destroy) => {
73
+ destroy();
74
+ });
75
+ this._convertingFeatures.clear();
55
76
  }
56
77
  destroy() {
57
78
  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) {
@@ -1 +1 @@
1
- {"version":3,"file":"vectorCesiumImpl.js","sourceRoot":"","sources":["../../../../src/layer/cesium/vectorCesiumImpl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vectorCesiumImpl.js","sourceRoot":"","sources":["../../../../src/layer/cesium/vectorCesiumImpl.ts"],"names":[],"mappings":"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"}