UNPKG

@eliorar/angular-cesium

Version:

Angular library for working with Cesium.

29 lines 5.01 kB
import { Injectable } from '@angular/core'; import { EditablePolygon } from '../../../models/editable-polygon'; import * as i0 from "@angular/core"; export class PolygonsManagerService { constructor() { this.polygons = new Map(); } createEditablePolygon(id, editPolygonsLayer, editPointsLayer, editPolylinesLayer, coordinateConverter, scene, polygonOptions, positions) { const editablePolygon = new EditablePolygon(id, editPolygonsLayer, editPointsLayer, editPolylinesLayer, coordinateConverter, scene, polygonOptions, positions); this.polygons.set(id, editablePolygon); } dispose(id) { this.polygons.get(id).dispose(); this.polygons.delete(id); } get(id) { return this.polygons.get(id); } clear() { this.polygons.forEach(polygon => polygon.dispose()); this.polygons.clear(); } } PolygonsManagerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: PolygonsManagerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); PolygonsManagerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: PolygonsManagerService }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: PolygonsManagerService, decorators: [{ type: Injectable }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9seWdvbnMtbWFuYWdlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jZXNpdW0vc3JjL2xpYi9hbmd1bGFyLWNlc2l1bS13aWRnZXRzL3NlcnZpY2VzL2VudGl0eS1lZGl0b3JzL3BvbHlnb25zLWVkaXRvci9wb2x5Z29ucy1tYW5hZ2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sa0NBQWtDLENBQUM7O0FBTWpFLE1BQU0sT0FBTyxzQkFBc0I7SUFEbkM7UUFFRSxhQUFRLEdBQWlDLElBQUksR0FBRyxFQUEyQixDQUFDO0tBZ0M3RTtJQTlCQyxxQkFBcUIsQ0FBQyxFQUFVLEVBQUUsaUJBQW1DLEVBQUUsZUFBaUMsRUFDbEYsa0JBQW9DLEVBQUUsbUJBQXdDLEVBQzlFLEtBQVUsRUFDVixjQUFtQyxFQUFFLFNBQXdCO1FBQ2pGLE1BQU0sZUFBZSxHQUFHLElBQUksZUFBZSxDQUN6QyxFQUFFLEVBQ0YsaUJBQWlCLEVBQ2pCLGVBQWUsRUFDZixrQkFBa0IsRUFDbEIsbUJBQW1CLEVBQ25CLEtBQUssRUFDTCxjQUFjLEVBQ2QsU0FBUyxDQUFDLENBQUM7UUFDYixJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsZUFBZSxDQUNwQyxDQUFDO0lBQ0osQ0FBQztJQUVELE9BQU8sQ0FBQyxFQUFVO1FBQ2hCLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxHQUFHLENBQUMsRUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDeEIsQ0FBQzs7bUhBaENVLHNCQUFzQjt1SEFBdEIsc0JBQXNCOzJGQUF0QixzQkFBc0I7a0JBRGxDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDYXJ0ZXNpYW4zfSBmcm9tICdjZXNpdW0nO1xuaW1wb3J0IHtFZGl0YWJsZVBvbHlnb259IGZyb20gJy4uLy4uLy4uL21vZGVscy9lZGl0YWJsZS1wb2x5Z29uJztcbmltcG9ydCB7UG9seWdvbkVkaXRPcHRpb25zfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvcG9seWdvbi1lZGl0LW9wdGlvbnMnO1xuaW1wb3J0IHtBY0xheWVyQ29tcG9uZW50fSBmcm9tICcuLi8uLi8uLi8uLi9hbmd1bGFyLWNlc2l1bS9jb21wb25lbnRzL2FjLWxheWVyL2FjLWxheWVyLmNvbXBvbmVudCc7XG5pbXBvcnQge0Nvb3JkaW5hdGVDb252ZXJ0ZXJ9IGZyb20gJy4uLy4uLy4uLy4uL2FuZ3VsYXItY2VzaXVtL3NlcnZpY2VzL2Nvb3JkaW5hdGUtY29udmVydGVyL2Nvb3JkaW5hdGUtY29udmVydGVyLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUG9seWdvbnNNYW5hZ2VyU2VydmljZSB7XG4gIHBvbHlnb25zOiBNYXA8c3RyaW5nLCBFZGl0YWJsZVBvbHlnb24+ID0gbmV3IE1hcDxzdHJpbmcsIEVkaXRhYmxlUG9seWdvbj4oKTtcblxuICBjcmVhdGVFZGl0YWJsZVBvbHlnb24oaWQ6IHN0cmluZywgZWRpdFBvbHlnb25zTGF5ZXI6IEFjTGF5ZXJDb21wb25lbnQsIGVkaXRQb2ludHNMYXllcjogQWNMYXllckNvbXBvbmVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGVkaXRQb2x5bGluZXNMYXllcjogQWNMYXllckNvbXBvbmVudCwgY29vcmRpbmF0ZUNvbnZlcnRlcjogQ29vcmRpbmF0ZUNvbnZlcnRlcixcbiAgICAgICAgICAgICAgICAgICAgICAgIHNjZW5lOiBhbnksXG4gICAgICAgICAgICAgICAgICAgICAgICBwb2x5Z29uT3B0aW9ucz86IFBvbHlnb25FZGl0T3B0aW9ucywgcG9zaXRpb25zPzogQ2FydGVzaWFuM1tdKSB7XG4gICAgY29uc3QgZWRpdGFibGVQb2x5Z29uID0gbmV3IEVkaXRhYmxlUG9seWdvbihcbiAgICAgIGlkLFxuICAgICAgZWRpdFBvbHlnb25zTGF5ZXIsXG4gICAgICBlZGl0UG9pbnRzTGF5ZXIsXG4gICAgICBlZGl0UG9seWxpbmVzTGF5ZXIsXG4gICAgICBjb29yZGluYXRlQ29udmVydGVyLFxuICAgICAgc2NlbmUsXG4gICAgICBwb2x5Z29uT3B0aW9ucyxcbiAgICAgIHBvc2l0aW9ucyk7XG4gICAgdGhpcy5wb2x5Z29ucy5zZXQoaWQsIGVkaXRhYmxlUG9seWdvblxuICAgICk7XG4gIH1cblxuICBkaXNwb3NlKGlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLnBvbHlnb25zLmdldChpZCkuZGlzcG9zZSgpO1xuICAgIHRoaXMucG9seWdvbnMuZGVsZXRlKGlkKTtcbiAgfVxuXG4gIGdldChpZDogc3RyaW5nKTogRWRpdGFibGVQb2x5Z29uIHtcbiAgICByZXR1cm4gdGhpcy5wb2x5Z29ucy5nZXQoaWQpO1xuICB9XG5cbiAgY2xlYXIoKSB7XG4gICAgdGhpcy5wb2x5Z29ucy5mb3JFYWNoKHBvbHlnb24gPT4gcG9seWdvbi5kaXNwb3NlKCkpO1xuICAgIHRoaXMucG9seWdvbnMuY2xlYXIoKTtcbiAgfVxufVxuIl19