@eliorar/angular-cesium
Version:
Angular library for working with Cesium.
53 lines • 5.96 kB
JavaScript
import { CallbackProperty } from 'cesium';
import { AcEntity } from '../../angular-cesium/models/ac-entity';
export class EditPoint extends AcEntity {
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 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++;
}
}
EditPoint.counter = 0;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1wb2ludC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY2VzaXVtL3NyYy9saWIvYW5ndWxhci1jZXNpdW0td2lkZ2V0cy9tb2RlbHMvZWRpdC1wb2ludC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsZ0JBQWdCLEVBQWEsTUFBTSxRQUFRLENBQUM7QUFDcEQsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBSS9ELE1BQU0sT0FBTyxTQUFVLFNBQVEsUUFBUTtJQVNyQyxZQUFZLFFBQWdCLEVBQUUsUUFBb0IsRUFBRSxVQUF1QixFQUFFLFlBQVksR0FBRyxLQUFLO1FBQy9GLEtBQUssRUFBRSxDQUFDO1FBSEYsVUFBSyxHQUFHLElBQUksQ0FBQztRQUluQixJQUFJLENBQUMsY0FBYyxHQUFHLFFBQVEsQ0FBQztRQUMvQixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUMsR0FBRyxVQUFVLEVBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsWUFBWSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQUksSUFBSSxDQUFDLEtBQUs7UUFDWixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFJLEtBQUssQ0FBQyxLQUFpQjtRQUN6QixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDO0lBQ2hDLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxLQUFjO1FBQ2hDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUM7SUFDakMsQ0FBQztJQUVELGlCQUFpQjtRQUNmLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUM3QixDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRUQsMkJBQTJCO1FBQ3pCLE9BQU8sSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBR0QsV0FBVyxDQUFDLFFBQW9CO1FBQzlCLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxLQUFLO1FBQ0gsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFTyxVQUFVO1FBQ2hCLE9BQU8sYUFBYSxHQUFHLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUM3QyxDQUFDOztBQWxFTSxpQkFBTyxHQUFHLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2FsbGJhY2tQcm9wZXJ0eSwgQ2FydGVzaWFuM30gZnJvbSAnY2VzaXVtJztcbmltcG9ydCB7QWNFbnRpdHl9IGZyb20gJy4uLy4uL2FuZ3VsYXItY2VzaXVtL21vZGVscy9hYy1lbnRpdHknO1xuLy8gaW1wb3J0IHsgQ2FydGVzaWFuMyB9IGZyb20gJy4uLy4uL2FuZ3VsYXItY2VzaXVtL21vZGVscy9jYXJ0ZXNpYW4zJztcbmltcG9ydCB7UG9pbnRQcm9wc30gZnJvbSAnLi9wb2ludC1lZGl0LW9wdGlvbnMnO1xuXG5leHBvcnQgY2xhc3MgRWRpdFBvaW50IGV4dGVuZHMgQWNFbnRpdHkge1xuICBzdGF0aWMgY291bnRlciA9IDA7XG4gIHByaXZhdGUgaWQ6IHN0cmluZztcbiAgcHJpdmF0ZSBlZGl0ZWRFbnRpdHlJZDogc3RyaW5nO1xuICBwcml2YXRlIHBvc2l0aW9uOiBDYXJ0ZXNpYW4zO1xuICBwcml2YXRlIF92aXJ0dWFsRWRpdFBvaW50OiBib29sZWFuO1xuICBwcml2YXRlIHBvaW50UHJvcHM6IFBvaW50UHJvcHM7XG4gIHByaXZhdGUgX3Nob3cgPSB0cnVlO1xuXG4gIGNvbnN0cnVjdG9yKGVudGl0eUlkOiBzdHJpbmcsIHBvc2l0aW9uOiBDYXJ0ZXNpYW4zLCBwb2ludFByb3BzPzogUG9pbnRQcm9wcywgdmlydHVhbFBvaW50ID0gZmFsc2UpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuZWRpdGVkRW50aXR5SWQgPSBlbnRpdHlJZDtcbiAgICB0aGlzLnBvc2l0aW9uID0gcG9zaXRpb247XG4gICAgdGhpcy5pZCA9IHRoaXMuZ2VuZXJhdGVJZCgpO1xuICAgIHRoaXMucG9pbnRQcm9wcyA9IHsuLi5wb2ludFByb3BzfTtcbiAgICB0aGlzLl92aXJ0dWFsRWRpdFBvaW50ID0gdmlydHVhbFBvaW50O1xuICB9XG5cbiAgZ2V0IHNob3coKSB7XG4gICAgcmV0dXJuIHRoaXMuX3Nob3c7XG4gIH1cblxuICBzZXQgc2hvdyh2YWx1ZSkge1xuICAgIHRoaXMuX3Nob3cgPSB2YWx1ZTtcbiAgfVxuXG4gIGdldCBwcm9wcygpOiBQb2ludFByb3BzIHtcbiAgICByZXR1cm4gdGhpcy5wb2ludFByb3BzO1xuICB9XG5cbiAgc2V0IHByb3BzKHZhbHVlOiBQb2ludFByb3BzKSB7XG4gICAgdGhpcy5wb2ludFByb3BzID0gdmFsdWU7XG4gIH1cblxuICBpc1ZpcnR1YWxFZGl0UG9pbnQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3ZpcnR1YWxFZGl0UG9pbnQ7XG4gIH1cblxuICBzZXRWaXJ0dWFsRWRpdFBvaW50KHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fdmlydHVhbEVkaXRQb2ludCA9IHZhbHVlO1xuICB9XG5cbiAgZ2V0RWRpdGVkRW50aXR5SWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5lZGl0ZWRFbnRpdHlJZDtcbiAgfVxuXG4gIGdldFBvc2l0aW9uKCk6IENhcnRlc2lhbjMge1xuICAgIHJldHVybiB0aGlzLnBvc2l0aW9uLmNsb25lKCk7XG4gIH1cblxuICBnZXRQb3NpdGlvbkNhbGxiYWNrUHJvcGVydHkoKTogQ2FsbGJhY2tQcm9wZXJ0eSB7XG4gICAgcmV0dXJuIG5ldyBDYWxsYmFja1Byb3BlcnR5KHRoaXMuZ2V0UG9zaXRpb24uYmluZCh0aGlzKSwgZmFsc2UpO1xuICB9XG5cblxuICBzZXRQb3NpdGlvbihwb3NpdGlvbjogQ2FydGVzaWFuMykge1xuICAgIHRoaXMucG9zaXRpb24ueCA9IHBvc2l0aW9uLng7XG4gICAgdGhpcy5wb3NpdGlvbi55ID0gcG9zaXRpb24ueTtcbiAgICB0aGlzLnBvc2l0aW9uLnogPSBwb3NpdGlvbi56O1xuICB9XG5cbiAgZ2V0SWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pZDtcbiAgfVxuXG4gIHByaXZhdGUgZ2VuZXJhdGVJZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnZWRpdC1wb2ludC0nICsgRWRpdFBvaW50LmNvdW50ZXIrKztcbiAgfVxufVxuIl19