@artstesh/maps 3.1.3 → 3.1.5
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/esm2020/map/messages/executors/calculate-area.executor.mjs +12 -0
- package/dist/esm2020/map/messages/index.mjs +2 -1
- package/dist/esm2020/map/models/polygon.model.mjs +4 -1
- package/dist/esm2020/map/services/feature.service.mjs +7 -1
- package/dist/esm2020/map/services/message-registrator.service.mjs +3 -1
- package/dist/esm2020/src/map/messages/executors/calculate-area.executor.mjs +12 -0
- package/dist/esm2020/src/map/messages/index.mjs +2 -1
- package/dist/esm2020/src/map/models/polygon.model.mjs +4 -1
- package/dist/esm2020/src/map/services/feature.service.mjs +7 -1
- package/dist/esm2020/src/map/services/message-registrator.service.mjs +3 -1
- package/dist/fesm2015/maps-components-src-map.mjs +23 -3
- package/dist/fesm2015/maps-components-src-map.mjs.map +1 -1
- package/dist/fesm2015/maps-components.mjs +23 -3
- package/dist/fesm2015/maps-components.mjs.map +1 -1
- package/dist/fesm2020/maps-components-src-map.mjs +21 -1
- package/dist/fesm2020/maps-components-src-map.mjs.map +1 -1
- package/dist/fesm2020/maps-components.mjs +21 -1
- package/dist/fesm2020/maps-components.mjs.map +1 -1
- package/dist/map/messages/executors/calculate-area.executor.d.ts +10 -0
- package/dist/map/messages/index.d.ts +1 -0
- package/dist/map/services/feature.service.d.ts +1 -0
- package/dist/src/map/messages/executors/calculate-area.executor.d.ts +10 -0
- package/dist/src/map/messages/index.d.ts +1 -0
- package/dist/src/map/services/feature.service.d.ts +1 -0
- package/package.json +1 -1
|
@@ -11,6 +11,7 @@ import { get, useGeographic, transform } from 'ol/proj';
|
|
|
11
11
|
import { PostboyGenericMessage, PostboyCallbackMessage, PostboyExecutor, PostboyService, PostboyAbstractRegistrator } from '@artstesh/postboy';
|
|
12
12
|
import { Draw, Modify, Translate } from 'ol/interaction';
|
|
13
13
|
import { createRegularPolygon, createBox } from 'ol/interaction/Draw';
|
|
14
|
+
import * as Sphere from 'ol/sphere';
|
|
14
15
|
import { first, filter, auditTime } from 'rxjs/operators';
|
|
15
16
|
import { Vector, XYZ } from 'ol/source';
|
|
16
17
|
import TileLayer from 'ol/layer/Tile';
|
|
@@ -159,6 +160,8 @@ class PolygonModel {
|
|
|
159
160
|
this.info = info;
|
|
160
161
|
this.id = id == null ? IdGenerator.get() : id;
|
|
161
162
|
this._feature = feature;
|
|
163
|
+
if (this.info)
|
|
164
|
+
this._feature?.set(MapConstants.FeatureInfo, this.info);
|
|
162
165
|
[this.lng, this.lat] = getCenter(this._feature.getGeometry()?.getExtent());
|
|
163
166
|
}
|
|
164
167
|
static fromGeoJson(id, json, info) {
|
|
@@ -404,6 +407,17 @@ class SetMapCenterCommand extends PostboyGenericMessage {
|
|
|
404
407
|
}
|
|
405
408
|
SetMapCenterCommand.ID = 'd50e89c9-6707-4f8c-ab57-65fcef232182';
|
|
406
409
|
|
|
410
|
+
class CalculateAreaExecutor extends PostboyExecutor {
|
|
411
|
+
constructor(polygon) {
|
|
412
|
+
super();
|
|
413
|
+
this.polygon = polygon;
|
|
414
|
+
}
|
|
415
|
+
get id() {
|
|
416
|
+
return CalculateAreaExecutor.ID;
|
|
417
|
+
}
|
|
418
|
+
}
|
|
419
|
+
CalculateAreaExecutor.ID = '172ecf46-86b5-4f46-a5f1-96ba2cbb1694';
|
|
420
|
+
|
|
407
421
|
class AddLayerCommand extends PostboyGenericMessage {
|
|
408
422
|
constructor(layer) {
|
|
409
423
|
super();
|
|
@@ -529,6 +543,11 @@ class FeatureService {
|
|
|
529
543
|
return g1.intersectsCoordinate(g2.getInteriorPoint().getCoordinates());
|
|
530
544
|
return false;
|
|
531
545
|
}
|
|
546
|
+
static calculateArea(g) {
|
|
547
|
+
if (!g)
|
|
548
|
+
return 0;
|
|
549
|
+
return Sphere.getArea(g, { projection: 'EPSG:4326' });
|
|
550
|
+
}
|
|
532
551
|
}
|
|
533
552
|
|
|
534
553
|
class GetFeaturesInAreaQuery extends PostboyCallbackMessage {
|
|
@@ -1035,6 +1054,7 @@ class MessageRegistratorService extends PostboyAbstractRegistrator {
|
|
|
1035
1054
|
}
|
|
1036
1055
|
setExecutors() {
|
|
1037
1056
|
this.registerExecutor(FilterFeaturesInAreaExecutor.ID, (e) => FeatureService.filterFeaturesInArea(e));
|
|
1057
|
+
this.registerExecutor(CalculateAreaExecutor.ID, (e) => FeatureService.calculateArea(e.polygon?.feature?.getGeometry()));
|
|
1038
1058
|
this.registerExecutor(GenerateDrawExecutor.ID, (e) => DrawingGenerationService.getDraw(e));
|
|
1039
1059
|
this.registerExecutor(GenerateZoomControlExecutor.ID, (e) => ZoomControlFactory.build(e.settings));
|
|
1040
1060
|
}
|
|
@@ -2097,5 +2117,5 @@ class StringifyFeatureHelper {
|
|
|
2097
2117
|
* Generated bundle index. Do not edit.
|
|
2098
2118
|
*/
|
|
2099
2119
|
|
|
2100
|
-
export { AddControlCommand, CancelDrawingCommand, CancelFeatureModificationCommand, CloseTooltipCommand, ClusterLayerComponent, ClusterLayerSettings, Dictionary, DrawSelectionAreaCommand, DrawingType, FeatureLayerComponent, FeatureLayerSettings, FeatureOutputFormat, MapClickEvent, MapControl, MapControlZoomComponent, MapLyrs, MapLyrsLabel, MapModule, MapMoveEndEvent, MapPlateComponent, MapPostboyService, MapRenderedEvent, MapSettings, MarkerModel, MarkerStyleHelper, MarkersComponent, MessageRegistratorService, ModifyFeatureCommand, OsmTileLayerComponent, PolygonModel, PolygonStyleHelper, PolygonsComponent, RemoveControlCommand, SetMapCenterCommand, StartDrawingCommand, StringifyFeatureHelper, TextStyleHelper, TileLayerComponent, TileLayerSettings, TooltipComponent, TooltipSettings, ZoomControlSettings };
|
|
2120
|
+
export { AddControlCommand, CalculateAreaExecutor, CancelDrawingCommand, CancelFeatureModificationCommand, CloseTooltipCommand, ClusterLayerComponent, ClusterLayerSettings, Dictionary, DrawSelectionAreaCommand, DrawingType, FeatureLayerComponent, FeatureLayerSettings, FeatureOutputFormat, MapClickEvent, MapControl, MapControlZoomComponent, MapLyrs, MapLyrsLabel, MapModule, MapMoveEndEvent, MapPlateComponent, MapPostboyService, MapRenderedEvent, MapSettings, MarkerModel, MarkerStyleHelper, MarkersComponent, MessageRegistratorService, ModifyFeatureCommand, OsmTileLayerComponent, PolygonModel, PolygonStyleHelper, PolygonsComponent, RemoveControlCommand, SetMapCenterCommand, StartDrawingCommand, StringifyFeatureHelper, TextStyleHelper, TileLayerComponent, TileLayerSettings, TooltipComponent, TooltipSettings, ZoomControlSettings };
|
|
2101
2121
|
//# sourceMappingURL=maps-components.mjs.map
|