map-ol-utils 0.1.11 → 0.1.12
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/index.cjs +41 -29
- package/dist/index.js +41 -29
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -426,6 +426,37 @@ var buildMassMarksStyles = (getImgUrlFn) => {
|
|
|
426
426
|
return massMarksStyles;
|
|
427
427
|
};
|
|
428
428
|
};
|
|
429
|
+
var selectEventHandle = (vectorLayer, feature) => {
|
|
430
|
+
const data = feature.getProperties();
|
|
431
|
+
const { activeStyle } = data;
|
|
432
|
+
feature.setStyle(activeStyle);
|
|
433
|
+
emitter_default.emit("selected-feature", data);
|
|
434
|
+
vectorLayer.set("_hasActive", true);
|
|
435
|
+
if (vectorLayer.get("_isDynamic")) {
|
|
436
|
+
const activeImage = activeStyle.getImage();
|
|
437
|
+
setTimeout(() => {
|
|
438
|
+
emitter_default.emit(
|
|
439
|
+
"dynamic-marker",
|
|
440
|
+
Object.assign({}, data.rawData || {}, {
|
|
441
|
+
lnglat: data.lnglat,
|
|
442
|
+
style: data.style,
|
|
443
|
+
crsForm: data.crsForm,
|
|
444
|
+
width: activeImage.getWidth(),
|
|
445
|
+
height: activeImage.getHeight()
|
|
446
|
+
})
|
|
447
|
+
);
|
|
448
|
+
}, 1e3);
|
|
449
|
+
}
|
|
450
|
+
const isAutoFit = vectorLayer.get("_isAutoFit");
|
|
451
|
+
if (isAutoFit) {
|
|
452
|
+
const view = instance.getView();
|
|
453
|
+
view.animate({
|
|
454
|
+
duration: 1e3,
|
|
455
|
+
zoom: view.getZoom(),
|
|
456
|
+
center: (0, import_extent.getCenter)(feature.getGeometry().getExtent())
|
|
457
|
+
});
|
|
458
|
+
}
|
|
459
|
+
};
|
|
429
460
|
var createSelectByLayer = (vectorLayer) => {
|
|
430
461
|
const interaction = new import_interaction.Select({
|
|
431
462
|
style: null,
|
|
@@ -450,34 +481,14 @@ var createSelectByLayer = (vectorLayer) => {
|
|
|
450
481
|
const { selected, deselected } = evt;
|
|
451
482
|
if (selected.length) {
|
|
452
483
|
const feature = selected[0];
|
|
453
|
-
const
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
emitter_default.emit(
|
|
462
|
-
"dynamic-marker",
|
|
463
|
-
Object.assign({}, data.rawData || {}, {
|
|
464
|
-
lnglat: data.lnglat,
|
|
465
|
-
style: data.style,
|
|
466
|
-
crsForm: data.crsForm,
|
|
467
|
-
width: activeImage.getWidth(),
|
|
468
|
-
height: activeImage.getHeight()
|
|
469
|
-
})
|
|
470
|
-
);
|
|
471
|
-
}, 1e3);
|
|
472
|
-
}
|
|
473
|
-
const isAutoFit = vectorLayer.get("_isAutoFit");
|
|
474
|
-
if (isAutoFit) {
|
|
475
|
-
const view = instance.getView();
|
|
476
|
-
view.animate({
|
|
477
|
-
duration: 1e3,
|
|
478
|
-
zoom: view.getZoom(),
|
|
479
|
-
center: (0, import_extent.getCenter)(feature.getGeometry().getExtent())
|
|
480
|
-
});
|
|
484
|
+
const isClusterLayer = vectorLayer.get("_isClusterLayer");
|
|
485
|
+
if (isClusterLayer) {
|
|
486
|
+
const features = feature.get("features");
|
|
487
|
+
if (features.length === 1) {
|
|
488
|
+
selectEventHandle(vectorLayer, features[0]);
|
|
489
|
+
}
|
|
490
|
+
} else {
|
|
491
|
+
selectEventHandle(vectorLayer, feature);
|
|
481
492
|
}
|
|
482
493
|
}
|
|
483
494
|
if (deselected.length) {
|
|
@@ -691,7 +702,8 @@ var createClusterLayer = (dataList, config) => {
|
|
|
691
702
|
});
|
|
692
703
|
vectorLayer.setProperties({
|
|
693
704
|
_isCustom: true,
|
|
694
|
-
_isVectorLayer: true
|
|
705
|
+
_isVectorLayer: true,
|
|
706
|
+
_isClusterLayer: true
|
|
695
707
|
});
|
|
696
708
|
if (openClick) {
|
|
697
709
|
createSelectByLayer(vectorLayer);
|
package/dist/index.js
CHANGED
|
@@ -359,6 +359,37 @@ var buildMassMarksStyles = (getImgUrlFn) => {
|
|
|
359
359
|
return massMarksStyles;
|
|
360
360
|
};
|
|
361
361
|
};
|
|
362
|
+
var selectEventHandle = (vectorLayer, feature) => {
|
|
363
|
+
const data = feature.getProperties();
|
|
364
|
+
const { activeStyle } = data;
|
|
365
|
+
feature.setStyle(activeStyle);
|
|
366
|
+
emitter_default.emit("selected-feature", data);
|
|
367
|
+
vectorLayer.set("_hasActive", true);
|
|
368
|
+
if (vectorLayer.get("_isDynamic")) {
|
|
369
|
+
const activeImage = activeStyle.getImage();
|
|
370
|
+
setTimeout(() => {
|
|
371
|
+
emitter_default.emit(
|
|
372
|
+
"dynamic-marker",
|
|
373
|
+
Object.assign({}, data.rawData || {}, {
|
|
374
|
+
lnglat: data.lnglat,
|
|
375
|
+
style: data.style,
|
|
376
|
+
crsForm: data.crsForm,
|
|
377
|
+
width: activeImage.getWidth(),
|
|
378
|
+
height: activeImage.getHeight()
|
|
379
|
+
})
|
|
380
|
+
);
|
|
381
|
+
}, 1e3);
|
|
382
|
+
}
|
|
383
|
+
const isAutoFit = vectorLayer.get("_isAutoFit");
|
|
384
|
+
if (isAutoFit) {
|
|
385
|
+
const view = instance.getView();
|
|
386
|
+
view.animate({
|
|
387
|
+
duration: 1e3,
|
|
388
|
+
zoom: view.getZoom(),
|
|
389
|
+
center: getCenter(feature.getGeometry().getExtent())
|
|
390
|
+
});
|
|
391
|
+
}
|
|
392
|
+
};
|
|
362
393
|
var createSelectByLayer = (vectorLayer) => {
|
|
363
394
|
const interaction = new Select({
|
|
364
395
|
style: null,
|
|
@@ -383,34 +414,14 @@ var createSelectByLayer = (vectorLayer) => {
|
|
|
383
414
|
const { selected, deselected } = evt;
|
|
384
415
|
if (selected.length) {
|
|
385
416
|
const feature = selected[0];
|
|
386
|
-
const
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
emitter_default.emit(
|
|
395
|
-
"dynamic-marker",
|
|
396
|
-
Object.assign({}, data.rawData || {}, {
|
|
397
|
-
lnglat: data.lnglat,
|
|
398
|
-
style: data.style,
|
|
399
|
-
crsForm: data.crsForm,
|
|
400
|
-
width: activeImage.getWidth(),
|
|
401
|
-
height: activeImage.getHeight()
|
|
402
|
-
})
|
|
403
|
-
);
|
|
404
|
-
}, 1e3);
|
|
405
|
-
}
|
|
406
|
-
const isAutoFit = vectorLayer.get("_isAutoFit");
|
|
407
|
-
if (isAutoFit) {
|
|
408
|
-
const view = instance.getView();
|
|
409
|
-
view.animate({
|
|
410
|
-
duration: 1e3,
|
|
411
|
-
zoom: view.getZoom(),
|
|
412
|
-
center: getCenter(feature.getGeometry().getExtent())
|
|
413
|
-
});
|
|
417
|
+
const isClusterLayer = vectorLayer.get("_isClusterLayer");
|
|
418
|
+
if (isClusterLayer) {
|
|
419
|
+
const features = feature.get("features");
|
|
420
|
+
if (features.length === 1) {
|
|
421
|
+
selectEventHandle(vectorLayer, features[0]);
|
|
422
|
+
}
|
|
423
|
+
} else {
|
|
424
|
+
selectEventHandle(vectorLayer, feature);
|
|
414
425
|
}
|
|
415
426
|
}
|
|
416
427
|
if (deselected.length) {
|
|
@@ -624,7 +635,8 @@ var createClusterLayer = (dataList, config) => {
|
|
|
624
635
|
});
|
|
625
636
|
vectorLayer.setProperties({
|
|
626
637
|
_isCustom: true,
|
|
627
|
-
_isVectorLayer: true
|
|
638
|
+
_isVectorLayer: true,
|
|
639
|
+
_isClusterLayer: true
|
|
628
640
|
});
|
|
629
641
|
if (openClick) {
|
|
630
642
|
createSelectByLayer(vectorLayer);
|