UNPKG

angular-cesium

Version:
29 lines 5.02 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGljLXByaW1pdGl2ZS1kcmF3ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY2VzaXVtL3NyYy9saWIvYW5ndWxhci1jZXNpdW0vc2VydmljZXMvZHJhd2Vycy9zdGF0aWMtZHluYW1pYy9zdGF0aWMtcHJpbWl0aXZlLWRyYXdlci9zdGF0aWMtcHJpbWl0aXZlLWRyYXdlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBRzVGOzs7O0dBSUc7QUFDSCxNQUFNLE9BQWdCLHFCQUFzQixTQUFRLHVCQUF1QjtJQUN6RSxZQUFvQixZQUFpQixFQUFFLGFBQTRCO1FBQ2pFLEtBQUssQ0FBQyxNQUFNLENBQUMsbUJBQW1CLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFEL0IsaUJBQVksR0FBWixZQUFZLENBQUs7SUFFckMsQ0FBQztJQUVELEdBQUcsQ0FBQyxhQUFrQixFQUFFLGFBQWtCLEVBQUUsY0FBbUI7UUFDN0QsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDM0MsTUFBSyxDQUFDLElBQUksS0FBSyxDQUFDLCtCQUErQixDQUFDLENBQUMsQ0FBQztTQUNuRDtRQUNELGFBQWEsQ0FBQyxRQUFRLEdBQUcsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzlELGNBQWMsQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM5RSxjQUFjLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztRQUNwQyxNQUFNLFNBQVMsR0FBRyxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDdkQsT0FBTyxLQUFLLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxNQUFNLENBQUMsU0FBYyxFQUFFLGFBQWtCLEVBQUUsYUFBa0IsRUFBRSxjQUFtQjtRQUNoRixhQUFhLENBQUMsUUFBUSxHQUFHLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM5RCxjQUFjLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDOUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN6QyxPQUFPLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7SUFDekQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJpbWl0aXZlc0RyYXdlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9wcmltaXRpdmVzLWRyYXdlci9wcmltaXRpdmVzLWRyYXdlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ2VzaXVtU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2Nlc2l1bS9jZXNpdW0uc2VydmljZSc7XHJcblxyXG4vKipcclxuICpcclxuICogVGhpcyBkcmF3ZXIgaXMgZGVwcmVjYXRlZC5cclxuICogR2VuZXJhbCBzdGF0aWMgcHJpbWl0aXZlcyBkcmF3ZXIgcmVzcG9uc2libGUgb2YgZHJhd2luZyBzdGF0aWMgQ2VzaXVtIHByaW1pdGl2ZXMgd2l0aCBtYXRlcmlhbC5cclxuICovXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTdGF0aWNQcmltaXRpdmVEcmF3ZXIgZXh0ZW5kcyBQcmltaXRpdmVzRHJhd2VyU2VydmljZSB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBnZW9tZXRyeVR5cGU6IGFueSwgY2VzaXVtU2VydmljZTogQ2VzaXVtU2VydmljZSkge1xyXG4gICAgc3VwZXIoQ2VzaXVtLlByaW1pdGl2ZUNvbGxlY3Rpb24sIGNlc2l1bVNlcnZpY2UpO1xyXG4gIH1cclxuXHJcbiAgYWRkKGdlb21ldHJ5UHJvcHM6IGFueSwgaW5zdGFuY2VQcm9wczogYW55LCBwcmltaXRpdmVQcm9wczogYW55KTogYW55IHtcclxuICAgIGlmIChPYmplY3Qua2V5cyhpbnN0YW5jZVByb3BzKS5sZW5ndGggPT09IDApIHtcclxuICAgICAgdGhyb3cobmV3IEVycm9yKCdpbnN0YW5jZVByb3BzIG9iamVjdCBpcyBlbXB0eScpKTtcclxuICAgIH1cclxuICAgIGluc3RhbmNlUHJvcHMuZ2VvbWV0cnkgPSBuZXcgdGhpcy5nZW9tZXRyeVR5cGUoZ2VvbWV0cnlQcm9wcyk7XHJcbiAgICBwcmltaXRpdmVQcm9wcy5nZW9tZXRyeUluc3RhbmNlcyA9IG5ldyBDZXNpdW0uR2VvbWV0cnlJbnN0YW5jZShpbnN0YW5jZVByb3BzKTtcclxuICAgIHByaW1pdGl2ZVByb3BzLmFzeW5jaHJvbm91cyA9IGZhbHNlO1xyXG4gICAgY29uc3QgcHJpbWl0aXZlID0gbmV3IENlc2l1bS5QcmltaXRpdmUocHJpbWl0aXZlUHJvcHMpO1xyXG4gICAgcmV0dXJuIHN1cGVyLmFkZChwcmltaXRpdmUpO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlKHByaW1pdGl2ZTogYW55LCBnZW9tZXRyeVByb3BzOiBhbnksIGluc3RhbmNlUHJvcHM6IGFueSwgcHJpbWl0aXZlUHJvcHM6IGFueSkge1xyXG4gICAgaW5zdGFuY2VQcm9wcy5nZW9tZXRyeSA9IG5ldyB0aGlzLmdlb21ldHJ5VHlwZShnZW9tZXRyeVByb3BzKTtcclxuICAgIHByaW1pdGl2ZVByb3BzLmdlb21ldHJ5SW5zdGFuY2VzID0gbmV3IENlc2l1bS5HZW9tZXRyeUluc3RhbmNlKGluc3RhbmNlUHJvcHMpO1xyXG4gICAgdGhpcy5fY2VzaXVtQ29sbGVjdGlvbi5yZW1vdmUocHJpbWl0aXZlKTtcclxuICAgIHJldHVybiBzdXBlci5hZGQobmV3IENlc2l1bS5QcmltaXRpdmUocHJpbWl0aXZlUHJvcHMpKTtcclxuICB9XHJcbn1cclxuIl19