ol 10.4.1-dev.1738876509030 → 10.4.1-dev.1739165709127
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.
- package/dist/ol.js +1 -1
- package/dist/ol.js.map +1 -1
- package/interaction/Snap.d.ts +69 -75
- package/interaction/Snap.d.ts.map +1 -1
- package/interaction/Snap.js +221 -154
- package/package.json +1 -1
- package/util.js +1 -1
package/interaction/Snap.d.ts
CHANGED
|
@@ -1,41 +1,75 @@
|
|
|
1
1
|
export default Snap;
|
|
2
|
-
|
|
2
|
+
/**
|
|
3
|
+
* An array of two coordinates representing a line segment, or an array of one
|
|
4
|
+
* coordinate representing a point.
|
|
5
|
+
*/
|
|
6
|
+
export type Segment = Array<import("../coordinate.js").Coordinate>;
|
|
7
|
+
export type SegmentData = {
|
|
3
8
|
/**
|
|
4
|
-
*
|
|
9
|
+
* Feature.
|
|
5
10
|
*/
|
|
6
|
-
|
|
11
|
+
feature: import("../Feature.js").default;
|
|
7
12
|
/**
|
|
8
|
-
*
|
|
13
|
+
* Segment.
|
|
9
14
|
*/
|
|
10
|
-
|
|
15
|
+
segment: Segment;
|
|
11
16
|
/**
|
|
12
|
-
*
|
|
17
|
+
* Is intersection.
|
|
13
18
|
*/
|
|
14
|
-
|
|
19
|
+
isIntersection?: boolean | undefined;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* A function taking a {@link module :ol/geom/Geometry~Geometry} as argument and returning an array of {@link Segment}s.
|
|
23
|
+
*/
|
|
24
|
+
export type Segmenter<GeometryType extends import("../geom/Geometry.js").default = import("../geom/Geometry.js").default> = (geometry: GeometryType, projection?: import("../proj/Projection.js").default) => Array<Segment>;
|
|
25
|
+
/**
|
|
26
|
+
* Each segmenter specified here will override the default segmenter for the
|
|
27
|
+
* corresponding geometry type. To exclude all geometries of a specific geometry type from being snapped to,
|
|
28
|
+
* set the segmenter to `null`.
|
|
29
|
+
*/
|
|
30
|
+
export type Segmenters = {
|
|
15
31
|
/**
|
|
16
|
-
*
|
|
32
|
+
* Point segmenter.
|
|
17
33
|
*/
|
|
18
|
-
|
|
19
|
-
};
|
|
20
|
-
export type SegmentData = {
|
|
34
|
+
Point?: Segmenter<import("../geom/Point.js").default> | null | undefined;
|
|
21
35
|
/**
|
|
22
|
-
*
|
|
36
|
+
* LineString segmenter.
|
|
23
37
|
*/
|
|
24
|
-
|
|
38
|
+
LineString?: Segmenter<import("../geom/LineString.js").default> | null | undefined;
|
|
25
39
|
/**
|
|
26
|
-
*
|
|
40
|
+
* Polygon segmenter.
|
|
27
41
|
*/
|
|
28
|
-
|
|
42
|
+
Polygon?: Segmenter<import("../geom/Polygon.js").default> | null | undefined;
|
|
29
43
|
/**
|
|
30
|
-
*
|
|
44
|
+
* Circle segmenter.
|
|
31
45
|
*/
|
|
32
|
-
|
|
46
|
+
Circle?: Segmenter<import("../geom/Circle.js").default> | null | undefined;
|
|
47
|
+
/**
|
|
48
|
+
* GeometryCollection segmenter.
|
|
49
|
+
*/
|
|
50
|
+
GeometryCollection?: Segmenter<import("../geom/GeometryCollection.js").default> | null | undefined;
|
|
51
|
+
/**
|
|
52
|
+
* MultiPoint segmenter.
|
|
53
|
+
*/
|
|
54
|
+
MultiPoint?: Segmenter<import("../geom/MultiPoint.js").default> | null | undefined;
|
|
55
|
+
/**
|
|
56
|
+
* MultiLineString segmenter.
|
|
57
|
+
*/
|
|
58
|
+
MultiLineString?: Segmenter<import("../geom/MultiLineString.js").default> | null | undefined;
|
|
59
|
+
/**
|
|
60
|
+
* MultiPolygon segmenter.
|
|
61
|
+
*/
|
|
62
|
+
MultiPolygon?: Segmenter<import("../geom/MultiPolygon.js").default> | null | undefined;
|
|
33
63
|
};
|
|
34
64
|
export type Options = {
|
|
35
65
|
/**
|
|
36
66
|
* Snap to these features. Either this option or source should be provided.
|
|
37
67
|
*/
|
|
38
68
|
features?: import("../Collection.js").default<import("../Feature.js").default<import("../geom/Geometry.js").default>> | undefined;
|
|
69
|
+
/**
|
|
70
|
+
* Snap to features from this source. Either this option or features should be provided
|
|
71
|
+
*/
|
|
72
|
+
source?: import("../source/Vector.js").default<import("../Feature.js").default<import("../geom/Geometry.js").default>> | undefined;
|
|
39
73
|
/**
|
|
40
74
|
* Snap to edges.
|
|
41
75
|
*/
|
|
@@ -54,9 +88,18 @@ export type Options = {
|
|
|
54
88
|
*/
|
|
55
89
|
pixelTolerance?: number | undefined;
|
|
56
90
|
/**
|
|
57
|
-
*
|
|
58
|
-
|
|
59
|
-
|
|
91
|
+
* Custom segmenters by {@link module :ol/geom/Geometry~Type}. By default, the
|
|
92
|
+
* following segmenters are used:
|
|
93
|
+
* - `Point`: A one-dimensional segment (e.g. `[[10, 20]]`) representing the point.
|
|
94
|
+
* - `LineString`: One two-dimensional segment (e.g. `[[10, 20], [30, 40]]`) for each segment of the linestring.
|
|
95
|
+
* - `Polygon`: One two-dimensional segment for each segment of the exterior ring and the interior rings.
|
|
96
|
+
* - `Circle`: One two-dimensional segment for each segment of a regular polygon with 32 points representing the circle circumference.
|
|
97
|
+
* - `GeometryCollection`: All segments of the contained geometries.
|
|
98
|
+
* - `MultiPoint`: One one-dimensional segment for each point.
|
|
99
|
+
* - `MultiLineString`: One two-dimensional segment for each segment of the linestrings.
|
|
100
|
+
* - `MultiPolygon`: One two-dimensional segment for each segment of the polygons.
|
|
101
|
+
*/
|
|
102
|
+
segmenters?: Segmenters | undefined;
|
|
60
103
|
};
|
|
61
104
|
/**
|
|
62
105
|
* Information about the last snapped state.
|
|
@@ -69,7 +112,7 @@ export type SnappedInfo = {
|
|
|
69
112
|
/**
|
|
70
113
|
* - The pixel of the snapped vertex.
|
|
71
114
|
*/
|
|
72
|
-
vertexPixel: import("../
|
|
115
|
+
vertexPixel: import("../pixel.js").Pixel | null;
|
|
73
116
|
/**
|
|
74
117
|
* - The feature being snapped.
|
|
75
118
|
*/
|
|
@@ -77,7 +120,7 @@ export type SnappedInfo = {
|
|
|
77
120
|
/**
|
|
78
121
|
* - Segment, or `null` if snapped to a vertex.
|
|
79
122
|
*/
|
|
80
|
-
segment:
|
|
123
|
+
segment: Segment | null;
|
|
81
124
|
};
|
|
82
125
|
/**
|
|
83
126
|
* *
|
|
@@ -201,11 +244,10 @@ declare class Snap extends PointerInteraction {
|
|
|
201
244
|
*/
|
|
202
245
|
private snapped_;
|
|
203
246
|
/**
|
|
204
|
-
* @
|
|
247
|
+
* @type {Object<string, Segmenter>}
|
|
205
248
|
* @private
|
|
206
|
-
* @type {Object<string, function(Array<Array<import('../coordinate.js').Coordinate>>, import("../geom/Geometry.js").default): void>}
|
|
207
249
|
*/
|
|
208
|
-
private
|
|
250
|
+
private segmenters_;
|
|
209
251
|
/**
|
|
210
252
|
* Add a feature to the collection of features that we may snap to.
|
|
211
253
|
* @param {import("../Feature.js").default} feature Feature.
|
|
@@ -264,62 +306,14 @@ declare class Snap extends PointerInteraction {
|
|
|
264
306
|
* @param {import("../pixel.js").Pixel} pixel Pixel
|
|
265
307
|
* @param {import("../coordinate.js").Coordinate} pixelCoordinate Coordinate
|
|
266
308
|
* @param {import("../Map.js").default} map Map.
|
|
267
|
-
* @return {
|
|
309
|
+
* @return {SnappedInfo|null} Snap result
|
|
268
310
|
*/
|
|
269
|
-
snapTo(pixel: import("../pixel.js").Pixel, pixelCoordinate: import("../coordinate.js").Coordinate, map: import("../Map.js").default):
|
|
311
|
+
snapTo(pixel: import("../pixel.js").Pixel, pixelCoordinate: import("../coordinate.js").Coordinate, map: import("../Map.js").default): SnappedInfo | null;
|
|
270
312
|
/**
|
|
271
313
|
* @param {import("../Feature.js").default} feature Feature
|
|
272
314
|
* @private
|
|
273
315
|
*/
|
|
274
316
|
private updateFeature_;
|
|
275
|
-
/**
|
|
276
|
-
* @param {Array<Array<import('../coordinate.js').Coordinate>>} segments Segments
|
|
277
|
-
* @param {import("../geom/Circle.js").default} geometry Geometry.
|
|
278
|
-
* @private
|
|
279
|
-
*/
|
|
280
|
-
private segmentCircleGeometry_;
|
|
281
|
-
/**
|
|
282
|
-
* @param {Array<Array<import('../coordinate.js').Coordinate>>} segments Segments
|
|
283
|
-
* @param {import("../geom/GeometryCollection.js").default} geometry Geometry.
|
|
284
|
-
* @private
|
|
285
|
-
*/
|
|
286
|
-
private segmentGeometryCollectionGeometry_;
|
|
287
|
-
/**
|
|
288
|
-
* @param {Array<Array<import('../coordinate.js').Coordinate>>} segments Segments
|
|
289
|
-
* @param {import("../geom/LineString.js").default} geometry Geometry.
|
|
290
|
-
* @private
|
|
291
|
-
*/
|
|
292
|
-
private segmentLineStringGeometry_;
|
|
293
|
-
/**
|
|
294
|
-
* @param {Array<Array<import('../coordinate.js').Coordinate>>} segments Segments
|
|
295
|
-
* @param {import("../geom/MultiLineString.js").default} geometry Geometry.
|
|
296
|
-
* @private
|
|
297
|
-
*/
|
|
298
|
-
private segmentMultiLineStringGeometry_;
|
|
299
|
-
/**
|
|
300
|
-
* @param {Array<Array<import('../coordinate.js').Coordinate>>} segments Segments
|
|
301
|
-
* @param {import("../geom/MultiPoint.js").default} geometry Geometry.
|
|
302
|
-
* @private
|
|
303
|
-
*/
|
|
304
|
-
private segmentMultiPointGeometry_;
|
|
305
|
-
/**
|
|
306
|
-
* @param {Array<Array<import('../coordinate.js').Coordinate>>} segments Segments
|
|
307
|
-
* @param {import("../geom/MultiPolygon.js").default} geometry Geometry.
|
|
308
|
-
* @private
|
|
309
|
-
*/
|
|
310
|
-
private segmentMultiPolygonGeometry_;
|
|
311
|
-
/**
|
|
312
|
-
* @param {Array<Array<import('../coordinate.js').Coordinate>>} segments Segments
|
|
313
|
-
* @param {import("../geom/Point.js").default} geometry Geometry.
|
|
314
|
-
* @private
|
|
315
|
-
*/
|
|
316
|
-
private segmentPointGeometry_;
|
|
317
|
-
/**
|
|
318
|
-
* @param {Array<Array<import('../coordinate.js').Coordinate>>} segments Segments
|
|
319
|
-
* @param {import("../geom/Polygon.js").default} geometry Geometry.
|
|
320
|
-
* @private
|
|
321
|
-
*/
|
|
322
|
-
private segmentPolygonGeometry_;
|
|
323
317
|
}
|
|
324
318
|
import { SnapEvent } from '../events/SnapEvent.js';
|
|
325
319
|
import PointerInteraction from './Pointer.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Snap.d.ts","sourceRoot":"","sources":["Snap.js"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"Snap.d.ts","sourceRoot":"","sources":["Snap.js"],"names":[],"mappings":";;;;;sBAiCa,KAAK,CAAC,OAAO,kBAAkB,EAAE,UAAU,CAAC;;;;;aAO3C,OAAO,eAAe,EAAE,OAAO;;;;aAC/B,OAAO;;;;;;;;;sBAKiC,YAAY,SAArD,OAAQ,qBAAqB,EAAE,OAAQ,4CACvC,CAAC,QAAQ,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,OAAO,uBAAuB,EAAE,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA2C/F,OAAO,kBAAkB,EAAE,UAAU,GAAC,IAAI;;;;iBAC1C,OAAO,aAAa,EAAE,KAAK,GAAC,IAAI;;;;aAChC,OAAO,eAAe,EAAE,OAAO,GAAC,IAAI;;;;aACpC,OAAO,GAAC,IAAI;;;;;4BAgMb,MAAM,IACN,OAAO,eAAe,EAAE,WAAW,CAAC,OAAO,eAAe,EAAE,UAAU,EAAE,OAAO,oBAAoB,EAAE,OAAO,EAAE,MAAM,CAAC,GACjI,OAAW,eAAe,EAAE,WAAW,CAAC,OAAO,oBAAoB,EAAE,KAAK,GAC1E,eAAqB,EAAE,OAAO,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,GAC/D,OAAW,eAAe,EAAE,WAAW,CAAC,MAAM,GAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,GAC3E,OAAW,eAAe,EAAE,mBAAmB,CAAC,OAAO,eAAe,EAAE,UAAU,GAAC,OAAO,oBAAoB,EAAE,KAAK,GACrH,eAAqB,GAAC,MAAM,GAAC,QAAQ,EAAE,MAAM,CAAC;AAP/C;;;;;;;;GAQG;AAEH;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH;IACE;;OAEG;IACH,sBAFW,OAAO,EA4HjB;IAzGC;;OAEG;IACH,IAFU,eAAe,CAAC,OAAO,WAAW,EAAE,SAAS,CAAC,CAEjD;IAEP;;OAEG;IACH,MAFU,eAAe,CAAC,OAAO,WAAW,EAAE,SAAS,CAAC,CAE/C;IAET;;OAEG;IACH,IAFU,eAAe,CAAC,IAAI,CAAC,CAExB;IAEP;;;OAGG;IACH,gBAAqD;IAErD;;;OAGG;IACH,gBAAmE;IAEnE;;;OAGG;IACH,cAA6D;IAE7D;;;OAGG;IACH,sBACmE;IAEnE;;;OAGG;IACH,kBAA2D;IAE3D;;;OAGG;IACH,8BAA+B;IAE/B;;;OAGG;IACH,mCAAoC;IAEpC;;;;;OAKG;IACH,gCAAiC;IAEjC;;;;;;OAMG;IACH,yBAA0B;IAE1B;;;OAGG;IACH,wBACoE;IAEpE;;;;OAIG;IACH,eAAyB;IAEzB;;;;OAIG;IACH,iBAAoB;IAEpB;;;OAGG;IACH,oBAIC;IAGH;;;;;;OAMG;IACH,oBALW,OAAO,eAAe,EAAE,OAAO,aAC/B,OAAO,QA+FjB;IAED;;;OAGG;IACH,qBASC;IAED;;;;;;;;OAQG;IACH,0BAEC;IAoCD;;;OAGG;IACH,0BAKC;IAED;;;OAGG;IACH,6BAKC;IAED;;;OAGG;IACH,6BAUC;IAkBD;;;;;;OAMG;IACH,uBALW,OAAO,eAAe,EAAE,OAAO,aAC/B,OAAO,QAyBjB;IAED;;;;;;OAMG;IACH,qBAHW,OAAO,WAAW,EAAE,OAAO,QAwDrC;IAED;;;;;OAKG;IACH,cALW,OAAO,aAAa,EAAE,KAAK,mBAC3B,OAAO,kBAAkB,EAAE,UAAU,OACrC,OAAO,WAAW,EAAE,OAAO,GAC1B,WAAW,GAAC,IAAI,CAsH3B;IAED;;;OAGG;IACH,uBAGC;CACF;0BA52BsC,wBAAwB;+BAoBhC,cAAc"}
|