import { Component, OnDestroy, OnInit, Input, Optional, OnChanges, SimpleChanges } from '@angular/core'; import { MapComponent } from '../map.component'; import { Vector } from 'ol/layer'; import { Style } from 'ol/style'; import { StyleFunction } from 'ol/style/Style'; import { LayerComponent } from './layer.component'; import { LayerGroupComponent } from './layergroup.component'; @Component({ selector: 'aol-layer-vector', template: ` `, }) export class LayerVectorComponent extends LayerComponent implements OnInit, OnDestroy, OnChanges { @Input() renderBuffer: number; @Input() style: Style | Style[] | StyleFunction; @Input() updateWhileAnimating: boolean; @Input() updateWhileInteracting: boolean; constructor(map: MapComponent, @Optional() group?: LayerGroupComponent) { super(group || map); } ngOnInit() { // console.log('creating ol.layer.Vector instance with:', this); this.instance = new Vector(this); super.ngOnInit(); } ngOnChanges(changes: SimpleChanges) { super.ngOnChanges(changes); } }