OpenLayers预先缓解

时间:2013-07-06 21:02:38

标签: javascript openlayers

我正在使用PhoneGap使用OpenLayers和WMS服务在HTML / JS(TypeScript)中开发移动应用程序。我需要预先处理某些区域,以便应用程序脱机工作。

我使用了OpenLayers中CacheWrite和CacheRead控件的代码来实现我自己的自定义处理程序。这允许我控制要使用的存储空间(SQLite而不是localStorage),具有循环缓存大小限制而不是基于配额(在缓存中保留x最后的磁贴)并为存储选择“容器”以便我可以区分“普通缓存“和”预加载缓存“。我们的想法是让用户选择特定于预先缓存的区域。

要预先缓存区域,我正在尝试向现有地图添加“visible:false”的WMS图层,并为此图层添加“loadend”事件。我也尝试使用“OpenLayers.Strategy.Fixed”并将其“preload”属性设置为true。

我的问题是OpenLayers没有下载(不可见)图层。它在其他层上工作正常。

我的地图中有一个“切换地图”按钮(与隐藏的预先缓存层无关),如果我使用它,那么“loadend”事件就会被触发。 “切换地图”首先删除显示地图的旧WMS图层,然后添加一个新网址(新的WMS图层)。

如何使用OpenLayers预加载(预缓存)地图?

0 个答案:

没有答案