@greenmice/ngx-cesium
Version:
Angular library for working with Cesium.
52 lines • 5.83 kB
JavaScript
import { AcEntity } from '../../angular-cesium/models/ac-entity';
export class EditPoint extends AcEntity {
static { this.counter = 0; }
constructor(entityId, position, pointProps, virtualPoint = false) {
super();
this._show = true;
this.editedEntityId = entityId;
this.position = position;
this.id = this.generateId();
this.pointProps = { ...pointProps };
this._virtualEditPoint = virtualPoint;
}
get show() {
return this._show;
}
set show(value) {
this._show = value;
}
get props() {
return this.pointProps;
}
set props(value) {
this.pointProps = value;
}
isVirtualEditPoint() {
return this._virtualEditPoint;
}
setVirtualEditPoint(value) {
this._virtualEditPoint = value;
}
getEditedEntityId() {
return this.editedEntityId;
}
getPosition() {
return this.position.clone();
}
getPositionCallbackProperty() {
return new Cesium.CallbackProperty(this.getPosition.bind(this), false);
}
setPosition(position) {
this.position.x = position.x;
this.position.y = position.y;
this.position.z = position.z;
}
getId() {
return this.id;
}
generateId() {
return 'edit-point-' + EditPoint.counter++;
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1wb2ludC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY2VzaXVtL3NyYy9saWIvYW5ndWxhci1jZXNpdW0td2lkZ2V0cy9tb2RlbHMvZWRpdC1wb2ludC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFJakUsTUFBTSxPQUFPLFNBQVUsU0FBUSxRQUFRO2FBQzlCLFlBQU8sR0FBRyxDQUFDLEFBQUosQ0FBSztJQVFuQixZQUFZLFFBQWdCLEVBQUUsUUFBb0IsRUFBRSxVQUF1QixFQUFFLFlBQVksR0FBRyxLQUFLO1FBQy9GLEtBQUssRUFBRSxDQUFDO1FBSEYsVUFBSyxHQUFHLElBQUksQ0FBQztRQUluQixJQUFJLENBQUMsY0FBYyxHQUFHLFFBQVEsQ0FBQztRQUMvQixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUMsR0FBRyxVQUFVLEVBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsWUFBWSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQUksSUFBSSxDQUFDLEtBQUs7UUFDWixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFJLEtBQUssQ0FBQyxLQUFpQjtRQUN6QixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDO0lBQ2hDLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxLQUFjO1FBQ2hDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUM7SUFDakMsQ0FBQztJQUVELGlCQUFpQjtRQUNmLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUM3QixDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRUQsMkJBQTJCO1FBQ3pCLE9BQU8sSUFBSSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUdELFdBQVcsQ0FBQyxRQUFvQjtRQUM5QixJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsS0FBSztRQUNILE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRU8sVUFBVTtRQUNoQixPQUFPLGFBQWEsR0FBRyxTQUFTLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDN0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjRW50aXR5IH0gZnJvbSAnLi4vLi4vYW5ndWxhci1jZXNpdW0vbW9kZWxzL2FjLWVudGl0eSc7XG5pbXBvcnQgeyBDYXJ0ZXNpYW4zIH0gZnJvbSAnLi4vLi4vYW5ndWxhci1jZXNpdW0vbW9kZWxzL2NhcnRlc2lhbjMnO1xuaW1wb3J0IHsgUG9pbnRQcm9wcyB9IGZyb20gJy4vcG9pbnQtZWRpdC1vcHRpb25zJztcblxuZXhwb3J0IGNsYXNzIEVkaXRQb2ludCBleHRlbmRzIEFjRW50aXR5IHtcbiAgc3RhdGljIGNvdW50ZXIgPSAwO1xuICBwcml2YXRlIGlkOiBzdHJpbmc7XG4gIHByaXZhdGUgZWRpdGVkRW50aXR5SWQ6IHN0cmluZztcbiAgcHJpdmF0ZSBwb3NpdGlvbjogQ2FydGVzaWFuMztcbiAgcHJpdmF0ZSBfdmlydHVhbEVkaXRQb2ludDogYm9vbGVhbjtcbiAgcHJpdmF0ZSBwb2ludFByb3BzOiBQb2ludFByb3BzO1xuICBwcml2YXRlIF9zaG93ID0gdHJ1ZTtcblxuICBjb25zdHJ1Y3RvcihlbnRpdHlJZDogc3RyaW5nLCBwb3NpdGlvbjogQ2FydGVzaWFuMywgcG9pbnRQcm9wcz86IFBvaW50UHJvcHMsIHZpcnR1YWxQb2ludCA9IGZhbHNlKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmVkaXRlZEVudGl0eUlkID0gZW50aXR5SWQ7XG4gICAgdGhpcy5wb3NpdGlvbiA9IHBvc2l0aW9uO1xuICAgIHRoaXMuaWQgPSB0aGlzLmdlbmVyYXRlSWQoKTtcbiAgICB0aGlzLnBvaW50UHJvcHMgPSB7Li4ucG9pbnRQcm9wc307XG4gICAgdGhpcy5fdmlydHVhbEVkaXRQb2ludCA9IHZpcnR1YWxQb2ludDtcbiAgfVxuXG4gIGdldCBzaG93KCkge1xuICAgIHJldHVybiB0aGlzLl9zaG93O1xuICB9XG5cbiAgc2V0IHNob3codmFsdWUpIHtcbiAgICB0aGlzLl9zaG93ID0gdmFsdWU7XG4gIH1cblxuICBnZXQgcHJvcHMoKTogUG9pbnRQcm9wcyB7XG4gICAgcmV0dXJuIHRoaXMucG9pbnRQcm9wcztcbiAgfVxuXG4gIHNldCBwcm9wcyh2YWx1ZTogUG9pbnRQcm9wcykge1xuICAgIHRoaXMucG9pbnRQcm9wcyA9IHZhbHVlO1xuICB9XG5cbiAgaXNWaXJ0dWFsRWRpdFBvaW50KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl92aXJ0dWFsRWRpdFBvaW50O1xuICB9XG5cbiAgc2V0VmlydHVhbEVkaXRQb2ludCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3ZpcnR1YWxFZGl0UG9pbnQgPSB2YWx1ZTtcbiAgfVxuXG4gIGdldEVkaXRlZEVudGl0eUlkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZWRpdGVkRW50aXR5SWQ7XG4gIH1cblxuICBnZXRQb3NpdGlvbigpOiBDYXJ0ZXNpYW4zIHtcbiAgICByZXR1cm4gdGhpcy5wb3NpdGlvbi5jbG9uZSgpO1xuICB9XG5cbiAgZ2V0UG9zaXRpb25DYWxsYmFja1Byb3BlcnR5KCk6IENhcnRlc2lhbjMge1xuICAgIHJldHVybiBuZXcgQ2VzaXVtLkNhbGxiYWNrUHJvcGVydHkodGhpcy5nZXRQb3NpdGlvbi5iaW5kKHRoaXMpLCBmYWxzZSk7XG4gIH1cblxuXG4gIHNldFBvc2l0aW9uKHBvc2l0aW9uOiBDYXJ0ZXNpYW4zKSB7XG4gICAgdGhpcy5wb3NpdGlvbi54ID0gcG9zaXRpb24ueDtcbiAgICB0aGlzLnBvc2l0aW9uLnkgPSBwb3NpdGlvbi55O1xuICAgIHRoaXMucG9zaXRpb24ueiA9IHBvc2l0aW9uLno7XG4gIH1cblxuICBnZXRJZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmlkO1xuICB9XG5cbiAgcHJpdmF0ZSBnZW5lcmF0ZUlkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdlZGl0LXBvaW50LScgKyBFZGl0UG9pbnQuY291bnRlcisrO1xuICB9XG59XG4iXX0=