2012-09-24 5 views
1

Openlayers 맵에 WMS 계층이 있습니다. 이 WMS 계층은지도에있는 사람의 위치를 ​​보여줍니다. 따라서 사람이 움직일 때 레이어를 업데이트해야합니다. 미리 정의 된 시간 간격으로 WMS 계층의 redraw() 함수를 호출하면 올바르게 업데이트됩니다. 그러나 문제는 모든 시간 간격마다 WMS 계층이 깜박이는 것입니다. 나는 이것을 해결하고 싶다.Openlayers에서 WMS 계층의 비동기 업데이트

아약스 또는 비동기 방식과 같은 WMS 계층을 업데이트하여 사용자가 매 시간마다 내부적으로 불필요한 일이 발생하지 않는다고 느끼지 않도록 할 수있는 방법이 있습니까? 다른 대안은 또한 높게 평가됩니다.

답변

1

마지막으로 문제가 발생할 수 있습니다. 나는 이것을 WMS 계층에서 얻을 수있는 방법을 찾지 못했습니다. 오히려 나는 이것을 Vector 레이어로 얻을 수 있었다. 다음과 같이

는 지금은 새로 고침 전략 벡터 레이어를 가지고 :

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

            }) 
      ] 

이것은 벡터 레이어를 새로 고침하는 데 도움이 될 것 'myVectorLayer'매 5 초마다 새로 고침.

향후 문제 해결에 도움이되기를 바랍니다.