OpenLayers 6.4.3和AGM(Angular Google Maps)之间的缩放问题



在我更新到OpenLayers 6.4.3 AGM(Angular Google Maps(之前,OpenLayers通过加载、缩放和平移保持同步。。。现在各层的操作与OpenLayers矢量层的移动速度比AGM层快不同步。

共享值:

export class MapValues {
public static view: any = null;
public static googleLat = 0;
public static googleLng = 0;
public static googleZoom = 5;
public static map: olMap = null;
};

创建地图:

createMap() {
MapValues.view = new View({
center: [MapValues.googleLng, MapValues.googleLat],
zoom: MapValues.googleZoom,
projection: 'EPSG:3857',
maxZoom: 20,
minZoom: 5
});
let map = new olMap({
interactions: defaultInteractions({
doubleClickZoom: false,
dragPan: false,
altShiftDragRotate: false,
shiftDragZoom: false
}),
target: 'map',
view: MapValues.view,
controls:[]
});
}

对齐贴图:

alignMap() {
MapValues.view.on('change:center', function () {
MapValues.mapCenter = transform(MapValues.view.getCenter(), 'EPSG:3857', 'EPSG:4326');
MapValues.googleLat = MapValues.mapCenter[1];
MapValues.googleLng = MapValues.mapCenter[0];
});
MapValues.view.on('change:resolution', function () {
MapValues.googleZoom = MapValues.view.getZoom();
});
}

因此,每当地图被平移或缩放时;alignMap";在OpenLayers 6.4.3之前,所有矢量对象在。。。没有对齐矢量对象。。。

更新:

看起来像";变换";可能不会像以前那样工作。。。我越是关注这个问题,OpenLayers和AGM之间的投影冲突就越明显。

更新:

这个问题肯定是缩放问题,离整数越远,错位就越严重。

我在这里创建了一个StackBlitz来演示这个问题。只需使用";绘制";按钮和顶部以跟踪其中一个字段。单击";停止绘图";然后平移地图。

https://stackblitz.com/edit/angular-openlayer-play-n5brr8?file=src%2Fapp%2Fapp.component.ts

非常感谢您的帮助。

因此,对于那些正在寻找解决方案的人来说。。。

创建贴图时,请添加这些参数。

constrainResolution: true,
smoothResolutionConstraint: false,

所以它看起来是这样的。

createMap() {
MapValues.view = new View({
center: [MapValues.googleLng, MapValues.googleLat],
zoom: MapValues.googleZoom,
projection: 'EPSG:3857',
maxZoom: 20,
minZoom: 5,
constrainResolution: true,
smoothResolutionConstraint: false,
});
let map = new olMap({
interactions: defaultInteractions({
doubleClickZoom: false,
dragPan: false,
altShiftDragRotate: false,
shiftDragZoom: false
}),
target: 'map',
view: MapValues.view,
controls:[]
});
}

在上面列出的堆栈闪电战中尝试它,并查看修复程序。

相关内容

  • 没有找到相关文章

最新更新