1

Openlayers マップに WMS レイヤーがあります。この WMS レイヤーは、地図上のある人​​物の位置を示しています。そのため、人物の移動に合わせてレイヤーを更新する必要があります。WMS レイヤーの redraw() 関数を事前定義された時間間隔で呼び出すと、適切に更新されます。しかし問題は、時間間隔ごとに WMS レイヤーが点滅することです。これを解決したい。

ajaxや非同期の方法のようなWMSレイヤーを更新して、ユーザーが時間間隔ごとに内部で不必要な何かが起こっていると感じないようにする方法はありますか? 他の代替案も高く評価されます。

4

1 に答える 1

1

最後に問題を乗り越えることができます。WMSレイヤーでこれを実現する方法が見つかりませんでした。むしろ、ベクターレイヤーでこれを達成できました。

これで、次のように更新戦略を使用したベクトルレイヤーができました。

strategies: [new OpenLayers.Strategy.BBOX(), 
                                 new OpenLayers.Strategy.Refresh({ interval: 5000,
                                     refresh: function() {
                                         myVectorLayer.refresh({force:true})
                                     }

                                  })
            ]

これは、ベクターレイヤー「myVectorLayer」を5秒ごとに更新するのに役立ちます。

これが将来の問題解決に役立つことを願っています。

于 2012-09-25T11:45:13.430 に答える