UNPKG

@eliorar/angular-cesium

Version:

Angular library for working with Cesium.

51 lines 5.6 kB
import { Component } from '@angular/core'; import { EntityOnMapComponent } from '../../services/entity-on-map/entity-on-map.component'; import * as i0 from "@angular/core"; import * as i1 from "../../services/drawers/ellipse-drawer/ellipse-drawer.service"; import * as i2 from "../../services/map-layers/map-layers.service"; /** * This is a circle implementation. * The element must be a child of ac-map element. * semiMajorAxis ans semiMinorAxis are replaced with radius property. * All other properties of props are the same as the properties of Entity and EllipseGraphics: * + https://cesiumjs.org/Cesium/Build/Documentation/Entity.html * + https://cesiumjs.org/Cesium/Build/Documentation/EllipseGraphics.html * * __Usage:__ * ``` * <ac-circle [props]="{ * position: position, * radius:40000.0, * granularity:0.03, * }"> * </ac-circle> * ``` */ export class AcCircleComponent extends EntityOnMapComponent { constructor(ellipseDrawerService, mapLayers) { super(ellipseDrawerService, mapLayers); } updateEllipseProps() { this.props.semiMajorAxis = this.props.radius; this.props.semiMinorAxis = this.props.radius; this.props.rotation = 0.0; } drawOnMap() { this.updateEllipseProps(); super.drawOnMap(); } updateOnMap() { this.updateEllipseProps(); super.updateOnMap(); } } AcCircleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: AcCircleComponent, deps: [{ token: i1.EllipseDrawerService }, { token: i2.MapLayersService }], target: i0.ɵɵFactoryTarget.Component }); AcCircleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: AcCircleComponent, selector: "ac-circle", usesInheritance: true, ngImport: i0, template: '', isInline: true }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: AcCircleComponent, decorators: [{ type: Component, args: [{ selector: 'ac-circle', template: '', }] }], ctorParameters: function () { return [{ type: i1.EllipseDrawerService }, { type: i2.MapLayersService }]; } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWMtY2lyY2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY2VzaXVtL3NyYy9saWIvYW5ndWxhci1jZXNpdW0vY29tcG9uZW50cy9hYy1jaXJjbGUvYWMtY2lyY2xlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHNEQUFzRCxDQUFDOzs7O0FBSTFGOzs7Ozs7Ozs7Ozs7Ozs7OztHQWlCRztBQU1ILE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxvQkFBb0I7SUFFekQsWUFBWSxvQkFBMEMsRUFBRSxTQUEyQjtRQUNqRixLQUFLLENBQUMsb0JBQW9CLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVPLGtCQUFrQjtRQUN4QixJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUM3QyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUM3QyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUM7SUFDNUIsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdEIsQ0FBQzs7OEdBcEJVLGlCQUFpQjtrR0FBakIsaUJBQWlCLHdFQUZsQixFQUFFOzJGQUVELGlCQUFpQjtrQkFKN0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsV0FBVztvQkFDckIsUUFBUSxFQUFFLEVBQUU7aUJBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0VudGl0eU9uTWFwQ29tcG9uZW50fSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9lbnRpdHktb24tbWFwL2VudGl0eS1vbi1tYXAuY29tcG9uZW50JztcbmltcG9ydCB7RWxsaXBzZURyYXdlclNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2RyYXdlcnMvZWxsaXBzZS1kcmF3ZXIvZWxsaXBzZS1kcmF3ZXIuc2VydmljZSc7XG5pbXBvcnQge01hcExheWVyc1NlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2VzL21hcC1sYXllcnMvbWFwLWxheWVycy5zZXJ2aWNlJztcblxuLyoqXG4gKiAgVGhpcyBpcyBhIGNpcmNsZSBpbXBsZW1lbnRhdGlvbi5cbiAqICBUaGUgZWxlbWVudCBtdXN0IGJlIGEgY2hpbGQgb2YgYWMtbWFwIGVsZW1lbnQuXG4gKiAgc2VtaU1ham9yQXhpcyBhbnMgc2VtaU1pbm9yQXhpcyBhcmUgcmVwbGFjZWQgd2l0aCByYWRpdXMgcHJvcGVydHkuXG4gKiAgQWxsIG90aGVyIHByb3BlcnRpZXMgb2YgcHJvcHMgYXJlIHRoZSBzYW1lIGFzIHRoZSBwcm9wZXJ0aWVzIG9mIEVudGl0eSBhbmQgRWxsaXBzZUdyYXBoaWNzOlxuICogICsgaHR0cHM6Ly9jZXNpdW1qcy5vcmcvQ2VzaXVtL0J1aWxkL0RvY3VtZW50YXRpb24vRW50aXR5Lmh0bWxcbiAqICArIGh0dHBzOi8vY2VzaXVtanMub3JnL0Nlc2l1bS9CdWlsZC9Eb2N1bWVudGF0aW9uL0VsbGlwc2VHcmFwaGljcy5odG1sXG4gKlxuICogIF9fVXNhZ2U6X19cbiAqICBgYGBcbiAqICA8YWMtY2lyY2xlIFtwcm9wc109XCJ7XG4gKiAgICBwb3NpdGlvbjogcG9zaXRpb24sXG4gKiAgICByYWRpdXM6NDAwMDAuMCxcbiAqICAgIGdyYW51bGFyaXR5OjAuMDMsXG4gKiAgfVwiPlxuICogIDwvYWMtY2lyY2xlPlxuICogIGBgYFxuICovXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FjLWNpcmNsZScsXG4gIHRlbXBsYXRlOiAnJyxcbn0pXG5leHBvcnQgY2xhc3MgQWNDaXJjbGVDb21wb25lbnQgZXh0ZW5kcyBFbnRpdHlPbk1hcENvbXBvbmVudCB7XG5cbiAgY29uc3RydWN0b3IoZWxsaXBzZURyYXdlclNlcnZpY2U6IEVsbGlwc2VEcmF3ZXJTZXJ2aWNlLCBtYXBMYXllcnM6IE1hcExheWVyc1NlcnZpY2UpIHtcbiAgICBzdXBlcihlbGxpcHNlRHJhd2VyU2VydmljZSwgbWFwTGF5ZXJzKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlRWxsaXBzZVByb3BzKCkge1xuICAgIHRoaXMucHJvcHMuc2VtaU1ham9yQXhpcyA9IHRoaXMucHJvcHMucmFkaXVzO1xuICAgIHRoaXMucHJvcHMuc2VtaU1pbm9yQXhpcyA9IHRoaXMucHJvcHMucmFkaXVzO1xuICAgIHRoaXMucHJvcHMucm90YXRpb24gPSAwLjA7XG4gIH1cblxuICBkcmF3T25NYXAoKSB7XG4gICAgdGhpcy51cGRhdGVFbGxpcHNlUHJvcHMoKTtcbiAgICBzdXBlci5kcmF3T25NYXAoKTtcbiAgfVxuXG4gIHVwZGF0ZU9uTWFwKCkge1xuICAgIHRoaXMudXBkYXRlRWxsaXBzZVByb3BzKCk7XG4gICAgc3VwZXIudXBkYXRlT25NYXAoKTtcbiAgfVxufVxuIl19