UNPKG

angular-cesium-ivy

Version:
29 lines 4.91 kB
import { PrimitivesDrawerService } from '../../primitives-drawer/primitives-drawer.service'; /** * * This drawer is deprecated. * General static primitives drawer responsible of drawing static Cesium primitives with material. */ export class StaticPrimitiveDrawer extends PrimitivesDrawerService { constructor(geometryType, cesiumService) { super(Cesium.PrimitiveCollection, cesiumService); this.geometryType = geometryType; } add(geometryProps, instanceProps, primitiveProps) { if (Object.keys(instanceProps).length === 0) { throw (new Error('instanceProps object is empty')); } instanceProps.geometry = new this.geometryType(geometryProps); primitiveProps.geometryInstances = new Cesium.GeometryInstance(instanceProps); primitiveProps.asynchronous = false; const primitive = new Cesium.Primitive(primitiveProps); return super.add(primitive); } update(primitive, geometryProps, instanceProps, primitiveProps) { instanceProps.geometry = new this.geometryType(geometryProps); primitiveProps.geometryInstances = new Cesium.GeometryInstance(instanceProps); this._cesiumCollection.remove(primitive); return super.add(new Cesium.Primitive(primitiveProps)); } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGljLXByaW1pdGl2ZS1kcmF3ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY2VzaXVtL3NyYy9saWIvYW5ndWxhci1jZXNpdW0vc2VydmljZXMvZHJhd2Vycy9zdGF0aWMtZHluYW1pYy9zdGF0aWMtcHJpbWl0aXZlLWRyYXdlci9zdGF0aWMtcHJpbWl0aXZlLWRyYXdlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBRzVGOzs7O0dBSUc7QUFDSCxNQUFNLE9BQWdCLHFCQUFzQixTQUFRLHVCQUF1QjtJQUN6RSxZQUFvQixZQUFpQixFQUFFLGFBQTRCO1FBQ2pFLEtBQUssQ0FBQyxNQUFNLENBQUMsbUJBQW1CLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFEL0IsaUJBQVksR0FBWixZQUFZLENBQUs7SUFFckMsQ0FBQztJQUVELEdBQUcsQ0FBQyxhQUFrQixFQUFFLGFBQWtCLEVBQUUsY0FBbUI7UUFDN0QsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDM0MsTUFBSyxDQUFDLElBQUksS0FBSyxDQUFDLCtCQUErQixDQUFDLENBQUMsQ0FBQztTQUNuRDtRQUNELGFBQWEsQ0FBQyxRQUFRLEdBQUcsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzlELGNBQWMsQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM5RSxjQUFjLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztRQUNwQyxNQUFNLFNBQVMsR0FBRyxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDdkQsT0FBTyxLQUFLLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxNQUFNLENBQUMsU0FBYyxFQUFFLGFBQWtCLEVBQUUsYUFBa0IsRUFBRSxjQUFtQjtRQUNoRixhQUFhLENBQUMsUUFBUSxHQUFHLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM5RCxjQUFjLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDOUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN6QyxPQUFPLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7SUFDekQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJpbWl0aXZlc0RyYXdlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9wcmltaXRpdmVzLWRyYXdlci9wcmltaXRpdmVzLWRyYXdlci5zZXJ2aWNlJztcbmltcG9ydCB7IENlc2l1bVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jZXNpdW0vY2VzaXVtLnNlcnZpY2UnO1xuXG4vKipcbiAqXG4gKiBUaGlzIGRyYXdlciBpcyBkZXByZWNhdGVkLlxuICogR2VuZXJhbCBzdGF0aWMgcHJpbWl0aXZlcyBkcmF3ZXIgcmVzcG9uc2libGUgb2YgZHJhd2luZyBzdGF0aWMgQ2VzaXVtIHByaW1pdGl2ZXMgd2l0aCBtYXRlcmlhbC5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFN0YXRpY1ByaW1pdGl2ZURyYXdlciBleHRlbmRzIFByaW1pdGl2ZXNEcmF3ZXJTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBnZW9tZXRyeVR5cGU6IGFueSwgY2VzaXVtU2VydmljZTogQ2VzaXVtU2VydmljZSkge1xuICAgIHN1cGVyKENlc2l1bS5QcmltaXRpdmVDb2xsZWN0aW9uLCBjZXNpdW1TZXJ2aWNlKTtcbiAgfVxuXG4gIGFkZChnZW9tZXRyeVByb3BzOiBhbnksIGluc3RhbmNlUHJvcHM6IGFueSwgcHJpbWl0aXZlUHJvcHM6IGFueSk6IGFueSB7XG4gICAgaWYgKE9iamVjdC5rZXlzKGluc3RhbmNlUHJvcHMpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cobmV3IEVycm9yKCdpbnN0YW5jZVByb3BzIG9iamVjdCBpcyBlbXB0eScpKTtcbiAgICB9XG4gICAgaW5zdGFuY2VQcm9wcy5nZW9tZXRyeSA9IG5ldyB0aGlzLmdlb21ldHJ5VHlwZShnZW9tZXRyeVByb3BzKTtcbiAgICBwcmltaXRpdmVQcm9wcy5nZW9tZXRyeUluc3RhbmNlcyA9IG5ldyBDZXNpdW0uR2VvbWV0cnlJbnN0YW5jZShpbnN0YW5jZVByb3BzKTtcbiAgICBwcmltaXRpdmVQcm9wcy5hc3luY2hyb25vdXMgPSBmYWxzZTtcbiAgICBjb25zdCBwcmltaXRpdmUgPSBuZXcgQ2VzaXVtLlByaW1pdGl2ZShwcmltaXRpdmVQcm9wcyk7XG4gICAgcmV0dXJuIHN1cGVyLmFkZChwcmltaXRpdmUpO1xuICB9XG5cbiAgdXBkYXRlKHByaW1pdGl2ZTogYW55LCBnZW9tZXRyeVByb3BzOiBhbnksIGluc3RhbmNlUHJvcHM6IGFueSwgcHJpbWl0aXZlUHJvcHM6IGFueSkge1xuICAgIGluc3RhbmNlUHJvcHMuZ2VvbWV0cnkgPSBuZXcgdGhpcy5nZW9tZXRyeVR5cGUoZ2VvbWV0cnlQcm9wcyk7XG4gICAgcHJpbWl0aXZlUHJvcHMuZ2VvbWV0cnlJbnN0YW5jZXMgPSBuZXcgQ2VzaXVtLkdlb21ldHJ5SW5zdGFuY2UoaW5zdGFuY2VQcm9wcyk7XG4gICAgdGhpcy5fY2VzaXVtQ29sbGVjdGlvbi5yZW1vdmUocHJpbWl0aXZlKTtcbiAgICByZXR1cm4gc3VwZXIuYWRkKG5ldyBDZXNpdW0uUHJpbWl0aXZlKHByaW1pdGl2ZVByb3BzKSk7XG4gIH1cbn1cbiJdfQ==