我在 Openlayers 地图上有一个 WMS 图层。此 WMS 图层显示地图上某个人的位置。因此,层需要随着人的移动而更新。如果我在某个预定义的时间间隔调用 WMS 层的 redraw() 函数,它会正确更新。但问题是:在每一个时间间隔,WMS层都会闪烁。我想解决这个问题。
有什么方法可以像 ajax 或任何异步方式来更新 WMS 层,这样用户就不会觉得在每个时间间隔内都发生了一些不必要的事情。任何其他替代方案也受到高度赞赏。
我在 Openlayers 地图上有一个 WMS 图层。此 WMS 图层显示地图上某个人的位置。因此,层需要随着人的移动而更新。如果我在某个预定义的时间间隔调用 WMS 层的 redraw() 函数,它会正确更新。但问题是:在每一个时间间隔,WMS层都会闪烁。我想解决这个问题。
有什么方法可以像 ajax 或任何异步方式来更新 WMS 层,这样用户就不会觉得在每个时间间隔内都发生了一些不必要的事情。任何其他替代方案也受到高度赞赏。
终于可以解决问题了。我无法通过 WMS 层找到任何方法来实现这一点。相反,我可以通过矢量图层来实现这一点。
现在我有一个带有 Refresh 策略的矢量图层,如下所示:
strategies: [new OpenLayers.Strategy.BBOX(),
new OpenLayers.Strategy.Refresh({ interval: 5000,
refresh: function() {
myVectorLayer.refresh({force:true})
}
})
]
这将有助于刷新矢量图层“myVectorLayer”以每 5 秒刷新一次。
我希望这将有助于任何未来的问题解决者。