ol 6.14.2-dev.1649705129239 → 6.14.2-dev.1649706321836
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/interaction/Draw.d.ts +15 -0
- package/interaction/Draw.d.ts.map +1 -1
- package/interaction/Draw.js +24 -7
- package/interaction/Draw.js.map +1 -1
- package/package.json +1 -1
- package/src/interaction/Draw.js +32 -7
- package/util.js +1 -1
package/interaction/Draw.d.ts
CHANGED
|
@@ -136,6 +136,16 @@ export type Options = {
|
|
|
136
136
|
* overlay.
|
|
137
137
|
*/
|
|
138
138
|
wrapX?: boolean | undefined;
|
|
139
|
+
/**
|
|
140
|
+
* Layout of the
|
|
141
|
+
* feature geometries created by the draw interaction.
|
|
142
|
+
*/
|
|
143
|
+
geometryLayout?: {
|
|
144
|
+
XY: string;
|
|
145
|
+
XYZ: string;
|
|
146
|
+
XYM: string;
|
|
147
|
+
XYZM: string;
|
|
148
|
+
} | undefined;
|
|
139
149
|
};
|
|
140
150
|
/**
|
|
141
151
|
* Coordinate type when drawing points.
|
|
@@ -294,6 +304,11 @@ declare class Draw extends PointerInteraction {
|
|
|
294
304
|
* @type {import("../events/condition.js").Condition}
|
|
295
305
|
*/
|
|
296
306
|
private finishCondition_;
|
|
307
|
+
/**
|
|
308
|
+
* @private
|
|
309
|
+
* @type {import("../geom/GeometryLayout").default}
|
|
310
|
+
*/
|
|
311
|
+
private geometryLayout_;
|
|
297
312
|
/**
|
|
298
313
|
* @type {GeometryFunction}
|
|
299
314
|
* @private
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Draw.d.ts","sourceRoot":"","sources":["../src/interaction/Draw.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Draw.d.ts","sourceRoot":"","sources":["../src/interaction/Draw.js"],"names":[],"mappings":"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"}
|
package/interaction/Draw.js
CHANGED
|
@@ -20,6 +20,7 @@ import Circle from '../geom/Circle.js';
|
|
|
20
20
|
import Event from '../events/Event.js';
|
|
21
21
|
import EventType from '../events/EventType.js';
|
|
22
22
|
import Feature from '../Feature.js';
|
|
23
|
+
import GeometryLayout from '../geom/GeometryLayout.js';
|
|
23
24
|
import GeometryType from '../geom/GeometryType.js';
|
|
24
25
|
import InteractionProperty from './Property.js';
|
|
25
26
|
import LineString from '../geom/LineString.js';
|
|
@@ -38,6 +39,7 @@ import { always, noModifierKeys, shiftKeyOnly } from '../events/condition.js';
|
|
|
38
39
|
import { boundingExtent, getBottomLeft, getBottomRight, getTopLeft, getTopRight, } from '../extent.js';
|
|
39
40
|
import { createEditingStyle } from '../style/Style.js';
|
|
40
41
|
import { fromUserCoordinate, getUserProjection } from '../proj.js';
|
|
42
|
+
import { getStrideForLayout } from '../geom/SimpleGeometry.js';
|
|
41
43
|
import { squaredDistance as squaredCoordinateDistance } from '../coordinate.js';
|
|
42
44
|
/**
|
|
43
45
|
* @typedef {Object} Options
|
|
@@ -90,6 +92,8 @@ import { squaredDistance as squaredCoordinateDistance } from '../coordinate.js';
|
|
|
90
92
|
* Shift key activates freehand drawing.
|
|
91
93
|
* @property {boolean} [wrapX=false] Wrap the world horizontally on the sketch
|
|
92
94
|
* overlay.
|
|
95
|
+
* @property {GeometryLayout} [geometryLayout='XY'] Layout of the
|
|
96
|
+
* feature geometries created by the draw interaction.
|
|
93
97
|
*/
|
|
94
98
|
/**
|
|
95
99
|
* Coordinate type when drawing points.
|
|
@@ -314,6 +318,13 @@ var Draw = /** @class */ (function (_super) {
|
|
|
314
318
|
_this.finishCondition_ = options.finishCondition
|
|
315
319
|
? options.finishCondition
|
|
316
320
|
: TRUE;
|
|
321
|
+
/**
|
|
322
|
+
* @private
|
|
323
|
+
* @type {import("../geom/GeometryLayout").default}
|
|
324
|
+
*/
|
|
325
|
+
_this.geometryLayout_ = options.geometryLayout
|
|
326
|
+
? options.geometryLayout
|
|
327
|
+
: GeometryLayout.XY;
|
|
317
328
|
var geometryFunction = options.geometryFunction;
|
|
318
329
|
if (!geometryFunction) {
|
|
319
330
|
var mode_1 = _this.mode_;
|
|
@@ -330,7 +341,7 @@ var Draw = /** @class */ (function (_super) {
|
|
|
330
341
|
: new Circle([NaN, NaN]);
|
|
331
342
|
var center = fromUserCoordinate(coordinates[0], projection);
|
|
332
343
|
var squaredLength = squaredCoordinateDistance(center, fromUserCoordinate(coordinates[coordinates.length - 1], projection));
|
|
333
|
-
circle.setCenterAndRadius(center, Math.sqrt(squaredLength));
|
|
344
|
+
circle.setCenterAndRadius(center, Math.sqrt(squaredLength), this.geometryLayout_);
|
|
334
345
|
var userProjection = getUserProjection();
|
|
335
346
|
if (userProjection) {
|
|
336
347
|
circle.transform(projection, userProjection);
|
|
@@ -360,20 +371,18 @@ var Draw = /** @class */ (function (_super) {
|
|
|
360
371
|
if (mode_1 === Mode.POLYGON) {
|
|
361
372
|
if (coordinates[0].length) {
|
|
362
373
|
// Add a closing coordinate to match the first
|
|
363
|
-
geometry.setCoordinates([
|
|
364
|
-
coordinates[0].concat([coordinates[0][0]]),
|
|
365
|
-
]);
|
|
374
|
+
geometry.setCoordinates([coordinates[0].concat([coordinates[0][0]])], this.geometryLayout_);
|
|
366
375
|
}
|
|
367
376
|
else {
|
|
368
|
-
geometry.setCoordinates([]);
|
|
377
|
+
geometry.setCoordinates([], this.geometryLayout_);
|
|
369
378
|
}
|
|
370
379
|
}
|
|
371
380
|
else {
|
|
372
|
-
geometry.setCoordinates(coordinates);
|
|
381
|
+
geometry.setCoordinates(coordinates, this.geometryLayout_);
|
|
373
382
|
}
|
|
374
383
|
}
|
|
375
384
|
else {
|
|
376
|
-
geometry = new Constructor_1(coordinates);
|
|
385
|
+
geometry = new Constructor_1(coordinates, this.geometryLayout_);
|
|
377
386
|
}
|
|
378
387
|
return geometry;
|
|
379
388
|
};
|
|
@@ -743,6 +752,10 @@ var Draw = /** @class */ (function (_super) {
|
|
|
743
752
|
*/
|
|
744
753
|
Draw.prototype.startDrawing_ = function (start) {
|
|
745
754
|
var projection = this.getMap().getView().getProjection();
|
|
755
|
+
var stride = getStrideForLayout(this.geometryLayout_);
|
|
756
|
+
while (start.length < stride) {
|
|
757
|
+
start.push(0);
|
|
758
|
+
}
|
|
746
759
|
this.finishCoordinate_ = start;
|
|
747
760
|
if (this.mode_ === Mode.POINT) {
|
|
748
761
|
this.sketchCoords_ = start.slice();
|
|
@@ -775,7 +788,11 @@ var Draw = /** @class */ (function (_super) {
|
|
|
775
788
|
var map = this.getMap();
|
|
776
789
|
var geometry = this.sketchFeature_.getGeometry();
|
|
777
790
|
var projection = map.getView().getProjection();
|
|
791
|
+
var stride = getStrideForLayout(this.geometryLayout_);
|
|
778
792
|
var coordinates, last;
|
|
793
|
+
while (coordinate.length < stride) {
|
|
794
|
+
coordinate.push(0);
|
|
795
|
+
}
|
|
779
796
|
if (this.mode_ === Mode.POINT) {
|
|
780
797
|
last = this.sketchCoords_;
|
|
781
798
|
}
|
package/interaction/Draw.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Draw.js","sourceRoot":"","sources":["../src/interaction/Draw.js"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Draw.js","sourceRoot":"","sources":["../src/interaction/Draw.js"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/interaction/Draw.js
CHANGED
|
@@ -5,6 +5,7 @@ import Circle from '../geom/Circle.js';
|
|
|
5
5
|
import Event from '../events/Event.js';
|
|
6
6
|
import EventType from '../events/EventType.js';
|
|
7
7
|
import Feature from '../Feature.js';
|
|
8
|
+
import GeometryLayout from '../geom/GeometryLayout.js';
|
|
8
9
|
import GeometryType from '../geom/GeometryType.js';
|
|
9
10
|
import InteractionProperty from './Property.js';
|
|
10
11
|
import LineString from '../geom/LineString.js';
|
|
@@ -29,6 +30,7 @@ import {
|
|
|
29
30
|
} from '../extent.js';
|
|
30
31
|
import {createEditingStyle} from '../style/Style.js';
|
|
31
32
|
import {fromUserCoordinate, getUserProjection} from '../proj.js';
|
|
33
|
+
import {getStrideForLayout} from '../geom/SimpleGeometry.js';
|
|
32
34
|
import {squaredDistance as squaredCoordinateDistance} from '../coordinate.js';
|
|
33
35
|
|
|
34
36
|
/**
|
|
@@ -82,6 +84,8 @@ import {squaredDistance as squaredCoordinateDistance} from '../coordinate.js';
|
|
|
82
84
|
* Shift key activates freehand drawing.
|
|
83
85
|
* @property {boolean} [wrapX=false] Wrap the world horizontally on the sketch
|
|
84
86
|
* overlay.
|
|
87
|
+
* @property {GeometryLayout} [geometryLayout='XY'] Layout of the
|
|
88
|
+
* feature geometries created by the draw interaction.
|
|
85
89
|
*/
|
|
86
90
|
|
|
87
91
|
/**
|
|
@@ -335,6 +339,14 @@ class Draw extends PointerInteraction {
|
|
|
335
339
|
? options.finishCondition
|
|
336
340
|
: TRUE;
|
|
337
341
|
|
|
342
|
+
/**
|
|
343
|
+
* @private
|
|
344
|
+
* @type {import("../geom/GeometryLayout").default}
|
|
345
|
+
*/
|
|
346
|
+
this.geometryLayout_ = options.geometryLayout
|
|
347
|
+
? options.geometryLayout
|
|
348
|
+
: GeometryLayout.XY;
|
|
349
|
+
|
|
338
350
|
let geometryFunction = options.geometryFunction;
|
|
339
351
|
if (!geometryFunction) {
|
|
340
352
|
const mode = this.mode_;
|
|
@@ -354,7 +366,11 @@ class Draw extends PointerInteraction {
|
|
|
354
366
|
center,
|
|
355
367
|
fromUserCoordinate(coordinates[coordinates.length - 1], projection)
|
|
356
368
|
);
|
|
357
|
-
circle.setCenterAndRadius(
|
|
369
|
+
circle.setCenterAndRadius(
|
|
370
|
+
center,
|
|
371
|
+
Math.sqrt(squaredLength),
|
|
372
|
+
this.geometryLayout_
|
|
373
|
+
);
|
|
358
374
|
const userProjection = getUserProjection();
|
|
359
375
|
if (userProjection) {
|
|
360
376
|
circle.transform(projection, userProjection);
|
|
@@ -381,17 +397,18 @@ class Draw extends PointerInteraction {
|
|
|
381
397
|
if (mode === Mode.POLYGON) {
|
|
382
398
|
if (coordinates[0].length) {
|
|
383
399
|
// Add a closing coordinate to match the first
|
|
384
|
-
geometry.setCoordinates(
|
|
385
|
-
coordinates[0].concat([coordinates[0][0]]),
|
|
386
|
-
|
|
400
|
+
geometry.setCoordinates(
|
|
401
|
+
[coordinates[0].concat([coordinates[0][0]])],
|
|
402
|
+
this.geometryLayout_
|
|
403
|
+
);
|
|
387
404
|
} else {
|
|
388
|
-
geometry.setCoordinates([]);
|
|
405
|
+
geometry.setCoordinates([], this.geometryLayout_);
|
|
389
406
|
}
|
|
390
407
|
} else {
|
|
391
|
-
geometry.setCoordinates(coordinates);
|
|
408
|
+
geometry.setCoordinates(coordinates, this.geometryLayout_);
|
|
392
409
|
}
|
|
393
410
|
} else {
|
|
394
|
-
geometry = new Constructor(coordinates);
|
|
411
|
+
geometry = new Constructor(coordinates, this.geometryLayout_);
|
|
395
412
|
}
|
|
396
413
|
return geometry;
|
|
397
414
|
};
|
|
@@ -803,6 +820,10 @@ class Draw extends PointerInteraction {
|
|
|
803
820
|
*/
|
|
804
821
|
startDrawing_(start) {
|
|
805
822
|
const projection = this.getMap().getView().getProjection();
|
|
823
|
+
const stride = getStrideForLayout(this.geometryLayout_);
|
|
824
|
+
while (start.length < stride) {
|
|
825
|
+
start.push(0);
|
|
826
|
+
}
|
|
806
827
|
this.finishCoordinate_ = start;
|
|
807
828
|
if (this.mode_ === Mode.POINT) {
|
|
808
829
|
this.sketchCoords_ = start.slice();
|
|
@@ -840,7 +861,11 @@ class Draw extends PointerInteraction {
|
|
|
840
861
|
const map = this.getMap();
|
|
841
862
|
const geometry = this.sketchFeature_.getGeometry();
|
|
842
863
|
const projection = map.getView().getProjection();
|
|
864
|
+
const stride = getStrideForLayout(this.geometryLayout_);
|
|
843
865
|
let coordinates, last;
|
|
866
|
+
while (coordinate.length < stride) {
|
|
867
|
+
coordinate.push(0);
|
|
868
|
+
}
|
|
844
869
|
if (this.mode_ === Mode.POINT) {
|
|
845
870
|
last = this.sketchCoords_;
|
|
846
871
|
} else if (this.mode_ === Mode.POLYGON) {
|
package/util.js
CHANGED