iceye-angular-cesium-fork
Version:
Angular library for working with Cesium.
26 lines • 4.39 kB
JavaScript
import { Injectable } from '@angular/core';
import { EditableRectangle } from '../../../models/editable-rectangle';
export class RectanglesManagerService {
constructor() {
this.rectangles = new Map();
}
createEditableRectangle(id, editRectanglesLayer, editPointsLayer, coordinateConverter, rectangleOptions, positions) {
const editableRectangle = new EditableRectangle(id, editPointsLayer, editRectanglesLayer, coordinateConverter, rectangleOptions, positions);
this.rectangles.set(id, editableRectangle);
}
dispose(id) {
this.rectangles.get(id).dispose();
this.rectangles.delete(id);
}
get(id) {
return this.rectangles.get(id);
}
clear() {
this.rectangles.forEach(rectangle => rectangle.dispose());
this.rectangles.clear();
}
}
RectanglesManagerService.decorators = [
{ type: Injectable }
];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjdGFuZ2xlcy1tYW5hZ2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNlc2l1bS9zcmMvbGliL2FuZ3VsYXItY2VzaXVtLXdpZGdldHMvc2VydmljZXMvZW50aXR5LWVkaXRvcnMvcmVjdGFuZ2xlcy1lZGl0b3IvcmVjdGFuZ2xlcy1tYW5hZ2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQU92RSxNQUFNLE9BQU8sd0JBQXdCO0lBRHJDO1FBRUUsZUFBVSxHQUFtQyxJQUFJLEdBQUcsRUFBNkIsQ0FBQztJQW1DcEYsQ0FBQztJQWpDQyx1QkFBdUIsQ0FDckIsRUFBVSxFQUNWLG1CQUFxQyxFQUNyQyxlQUFpQyxFQUNqQyxtQkFBd0MsRUFDeEMsZ0JBQXVDLEVBQ3ZDLFNBQXdCO1FBRXhCLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxpQkFBaUIsQ0FDN0MsRUFBRSxFQUNGLGVBQWUsRUFDZixtQkFBbUIsRUFDbkIsbUJBQW1CLEVBQ25CLGdCQUFnQixFQUNoQixTQUFTLENBQ1YsQ0FBQztRQUVGLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxPQUFPLENBQUMsRUFBVTtRQUNoQixJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNsQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQsR0FBRyxDQUFDLEVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUMxRCxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzFCLENBQUM7OztZQXBDRixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRWRpdGFibGVSZWN0YW5nbGUgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZWRpdGFibGUtcmVjdGFuZ2xlJztcbmltcG9ydCB7IENhcnRlc2lhbjMgfSBmcm9tICcuLi8uLi8uLi8uLi9hbmd1bGFyLWNlc2l1bS9tb2RlbHMvY2FydGVzaWFuMyc7XG5pbXBvcnQgeyBSZWN0YW5nbGVFZGl0T3B0aW9ucyB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9yZWN0YW5nbGUtZWRpdC1vcHRpb25zJztcbmltcG9ydCB7IEFjTGF5ZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9hbmd1bGFyLWNlc2l1bS9jb21wb25lbnRzL2FjLWxheWVyL2FjLWxheWVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb29yZGluYXRlQ29udmVydGVyIH0gZnJvbSAnLi4vLi4vLi4vLi4vYW5ndWxhci1jZXNpdW0vc2VydmljZXMvY29vcmRpbmF0ZS1jb252ZXJ0ZXIvY29vcmRpbmF0ZS1jb252ZXJ0ZXIuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBSZWN0YW5nbGVzTWFuYWdlclNlcnZpY2Uge1xuICByZWN0YW5nbGVzOiBNYXA8c3RyaW5nLCBFZGl0YWJsZVJlY3RhbmdsZT4gPSBuZXcgTWFwPHN0cmluZywgRWRpdGFibGVSZWN0YW5nbGU+KCk7XG5cbiAgY3JlYXRlRWRpdGFibGVSZWN0YW5nbGUoXG4gICAgaWQ6IHN0cmluZyxcbiAgICBlZGl0UmVjdGFuZ2xlc0xheWVyOiBBY0xheWVyQ29tcG9uZW50LFxuICAgIGVkaXRQb2ludHNMYXllcjogQWNMYXllckNvbXBvbmVudCxcbiAgICBjb29yZGluYXRlQ29udmVydGVyOiBDb29yZGluYXRlQ29udmVydGVyLFxuICAgIHJlY3RhbmdsZU9wdGlvbnM/OiBSZWN0YW5nbGVFZGl0T3B0aW9ucyxcbiAgICBwb3NpdGlvbnM/OiBDYXJ0ZXNpYW4zW11cbiAgKSB7XG4gICAgY29uc3QgZWRpdGFibGVSZWN0YW5nbGUgPSBuZXcgRWRpdGFibGVSZWN0YW5nbGUoXG4gICAgICBpZCxcbiAgICAgIGVkaXRQb2ludHNMYXllcixcbiAgICAgIGVkaXRSZWN0YW5nbGVzTGF5ZXIsXG4gICAgICBjb29yZGluYXRlQ29udmVydGVyLFxuICAgICAgcmVjdGFuZ2xlT3B0aW9ucyxcbiAgICAgIHBvc2l0aW9uc1xuICAgICk7XG5cbiAgICB0aGlzLnJlY3RhbmdsZXMuc2V0KGlkLCBlZGl0YWJsZVJlY3RhbmdsZSk7XG4gIH1cblxuICBkaXNwb3NlKGlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLnJlY3RhbmdsZXMuZ2V0KGlkKS5kaXNwb3NlKCk7XG4gICAgdGhpcy5yZWN0YW5nbGVzLmRlbGV0ZShpZCk7XG4gIH1cblxuICBnZXQoaWQ6IHN0cmluZyk6IEVkaXRhYmxlUmVjdGFuZ2xlIHtcbiAgICByZXR1cm4gdGhpcy5yZWN0YW5nbGVzLmdldChpZCk7XG4gIH1cblxuICBjbGVhcigpIHtcbiAgICB0aGlzLnJlY3RhbmdsZXMuZm9yRWFjaChyZWN0YW5nbGUgPT4gcmVjdGFuZ2xlLmRpc3Bvc2UoKSk7XG4gICAgdGhpcy5yZWN0YW5nbGVzLmNsZWFyKCk7XG4gIH1cbn1cblxuIl19