@eliorar/angular-cesium
Version:
Angular library for working with Cesium.
44 lines • 5.47 kB
JavaScript
import { Injectable } from '@angular/core';
import { CzmlDataSource } from 'cesium';
import { BasicDrawerService } from '../basic-drawer/basic-drawer.service';
import * as i0 from "@angular/core";
import * as i1 from "../../cesium/cesium.service";
/**
* This drawer is responsible for drawing czml dataSources.
*/
export class CzmlDrawerService extends BasicDrawerService {
constructor(cesiumService) {
super();
this.cesiumService = cesiumService;
}
init(options) {
const dataSources = [];
this.czmlStream = new CzmlDataSource('czml');
dataSources.push(this.czmlStream);
this.cesiumService.getViewer().dataSources.add(this.czmlStream);
return dataSources;
}
// returns the packet, provided by the stream
add(cesiumProps) {
this.czmlStream.process(cesiumProps.czmlPacket);
return cesiumProps;
}
update(entity, cesiumProps) {
this.czmlStream.process(cesiumProps.czmlPacket);
}
remove(entity) {
this.czmlStream.entities.removeById(entity.acEntity.id);
}
removeAll() {
this.czmlStream.entities.removeAll();
}
setShow(showValue) {
this.czmlStream.entities.show = showValue;
}
}
CzmlDrawerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: CzmlDrawerService, deps: [{ token: i1.CesiumService }], target: i0.ɵɵFactoryTarget.Injectable });
CzmlDrawerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: CzmlDrawerService });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: CzmlDrawerService, decorators: [{
type: Injectable
}], ctorParameters: function () { return [{ type: i1.CesiumService }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3ptbC1kcmF3ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY2VzaXVtL3NyYy9saWIvYW5ndWxhci1jZXNpdW0vc2VydmljZXMvZHJhd2Vycy9jem1sLWRyYXdlci9jem1sLWRyYXdlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLFFBQVEsQ0FBQztBQUV0QyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQzs7O0FBR3hFOztHQUVHO0FBRUgsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGtCQUFrQjtJQUl2RCxZQUNVLGFBQTRCO1FBRXBDLEtBQUssRUFBRSxDQUFDO1FBRkEsa0JBQWEsR0FBYixhQUFhLENBQWU7SUFHdEMsQ0FBQztJQUdELElBQUksQ0FBQyxPQUErQjtRQUNsQyxNQUFNLFdBQVcsR0FBRyxFQUFFLENBQUM7UUFFdkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUU3QyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUVsQyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRWhFLE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7SUFFRCw2Q0FBNkM7SUFDN0MsR0FBRyxDQUFDLFdBQWdCO1FBRWxCLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUVoRCxPQUFPLFdBQVcsQ0FBQztJQUNyQixDQUFDO0lBRUQsTUFBTSxDQUFDLE1BQVcsRUFBRSxXQUFnQjtRQUNsQyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELE1BQU0sQ0FBQyxNQUFXO1FBQ2hCLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDdkMsQ0FBQztJQUVELE9BQU8sQ0FBQyxTQUFrQjtRQUN4QixJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsU0FBUyxDQUFDO0lBQzVDLENBQUM7OzhHQTdDVSxpQkFBaUI7a0hBQWpCLGlCQUFpQjsyRkFBakIsaUJBQWlCO2tCQUQ3QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q3ptbERhdGFTb3VyY2V9IGZyb20gJ2Nlc2l1bSc7XG5pbXBvcnQge0Nlc2l1bVNlcnZpY2V9IGZyb20gJy4uLy4uL2Nlc2l1bS9jZXNpdW0uc2VydmljZSc7XG5pbXBvcnQge0Jhc2ljRHJhd2VyU2VydmljZX0gZnJvbSAnLi4vYmFzaWMtZHJhd2VyL2Jhc2ljLWRyYXdlci5zZXJ2aWNlJztcbmltcG9ydCB7RW50aXRpZXNEcmF3ZXJPcHRpb25zfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZW50aXRpZXMtZHJhd2VyLW9wdGlvbnMnO1xuXG4vKipcbiAqICBUaGlzIGRyYXdlciBpcyByZXNwb25zaWJsZSBmb3IgZHJhd2luZyBjem1sIGRhdGFTb3VyY2VzLlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ3ptbERyYXdlclNlcnZpY2UgZXh0ZW5kcyBCYXNpY0RyYXdlclNlcnZpY2Uge1xuXG4gIGN6bWxTdHJlYW06IGFueTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNlc2l1bVNlcnZpY2U6IENlc2l1bVNlcnZpY2UsXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuXG4gIGluaXQob3B0aW9ucz86IEVudGl0aWVzRHJhd2VyT3B0aW9ucykge1xuICAgIGNvbnN0IGRhdGFTb3VyY2VzID0gW107XG5cbiAgICB0aGlzLmN6bWxTdHJlYW0gPSBuZXcgQ3ptbERhdGFTb3VyY2UoJ2N6bWwnKTtcblxuICAgIGRhdGFTb3VyY2VzLnB1c2godGhpcy5jem1sU3RyZWFtKTtcblxuICAgIHRoaXMuY2VzaXVtU2VydmljZS5nZXRWaWV3ZXIoKS5kYXRhU291cmNlcy5hZGQodGhpcy5jem1sU3RyZWFtKTtcblxuICAgIHJldHVybiBkYXRhU291cmNlcztcbiAgfVxuXG4gIC8vIHJldHVybnMgdGhlIHBhY2tldCwgcHJvdmlkZWQgYnkgdGhlIHN0cmVhbVxuICBhZGQoY2VzaXVtUHJvcHM6IGFueSk6IGFueSB7XG5cbiAgICB0aGlzLmN6bWxTdHJlYW0ucHJvY2VzcyhjZXNpdW1Qcm9wcy5jem1sUGFja2V0KTtcblxuICAgIHJldHVybiBjZXNpdW1Qcm9wcztcbiAgfVxuXG4gIHVwZGF0ZShlbnRpdHk6IGFueSwgY2VzaXVtUHJvcHM6IGFueSkge1xuICAgIHRoaXMuY3ptbFN0cmVhbS5wcm9jZXNzKGNlc2l1bVByb3BzLmN6bWxQYWNrZXQpO1xuICB9XG5cbiAgcmVtb3ZlKGVudGl0eTogYW55KSB7XG4gICAgdGhpcy5jem1sU3RyZWFtLmVudGl0aWVzLnJlbW92ZUJ5SWQoZW50aXR5LmFjRW50aXR5LmlkKTtcbiAgfVxuXG4gIHJlbW92ZUFsbCgpIHtcbiAgICB0aGlzLmN6bWxTdHJlYW0uZW50aXRpZXMucmVtb3ZlQWxsKCk7XG4gIH1cblxuICBzZXRTaG93KHNob3dWYWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuY3ptbFN0cmVhbS5lbnRpdGllcy5zaG93ID0gc2hvd1ZhbHVlO1xuICB9XG5cbn1cblxuXG4iXX0=