Используйте openlayers степени с угловой - PullRequest
0 голосов
/ 20 ноября 2018

Я использую угловой 6 с открытыми слоями 5.1.3.Я пытаюсь объединить экстент двух векторных слоев, а затем подгоняю его под вид карты.

Я делаю следующее

import Extent from 'ol/interaction/Extent.js';
olextent: Extent;
//then in ngOnInit
ngOnInit() {
  this.olextent = new Extent();
}

//then get the extent of the 2 layers
let relatedext = this.relatedsource.getExtent();
let vectorext = this.vectorsource.getExtent(); 
//then create an empty extent and extent it with the layer extents

ext = this.olextent.createEmpty(); 
ext.extend(this.olextent, relatedext);
ext.extend(this.olextent, vectorext); 

//also create a size and use it with the extent to fit the map view

this.olmap.getView().fit(ext, {size:size, duration: 1500});

Этот код выглядит нормально для меня, но я получаю this.olextent.createEmpty is not a function и это не работает.

Как я могу это исправить?

1 Ответ

0 голосов
/ 20 ноября 2018

Я думаю, что это то, чего вы, возможно, пытаетесь достичь (если у вас нет какой-либо обработки взаимодействия в другом месте вашего кода)

import {createEmpty, extend} from 'ol/extent.js';

//then in ngOnInit
ngOnInit() {
  this.olextent = createEmpty();
}

//then get the extent of the 2 layers
let relatedext = this.relatedsource.getExtent();
let vectorext = this.vectorsource.getExtent(); 
//then extent empty extent with the layer extents

extend(this.olextent, relatedext);
extend(this.olextent, vectorext); 

//also create a size and use it with the extent to fit the map view

this.olmap.getView().fit(this.olextent, {size:size, duration: 1500});
...