2013-04-26 150 views
2

我正在嘗試追蹤運行mapmytracks.com應用程序的設備的位置。該網站允許用戶將GPS軌道導出爲KML文件,包括正在進行的活動。在我的GWT應用程序中,我創建了一個使用URL到mapmytracks.com的KML文件的網絡鏈接。如何在網絡鏈接刷新後將Google地球插件的時間滑塊設置爲當前時間?

該鏈接設置爲每隔1秒刷新一次。每次刷新發生時,插件會提取新數據,並且我看到時間滑塊中反映出的數據 - 有更多空間將其向前移動。

但是,爲了看到當前位置,我必須手動將滑塊移動到最右邊的位置。我知道如何將插件中的時間設置爲當前時間,但是,如何在每次刷新網絡鏈接時告訴插件執行此操作?是否可以添加某種處理程序到網絡鏈接?

回答

1

由於沒有暴露的事件,因此無法向網絡鏈接添加處理程序。

但是,您可以簡單地將時間滑塊設置爲每秒當前系統時間以跟上您的Kml數據。

// sets the current slider position to the current system time 
function updateTime() { 
    ge.getTime().setTimePrimitive(ge.getTime().getSystemTime().getWhen().get()); 
} 

var timer = setInterval(updateTime, 1000); //update the slider every second. 

很明顯,你可以添加其他的檢查,看是否有特定的元素存在,或者如果滑動條等

如果需要停止計時器您只需撥打

clearInterval(timer); 
+1

現在應該這樣做,謝謝!順便說一下,我注意到如果鏈接設置爲「在刷新時飛行」,則滑塊會自動向前移動,但是,地球正在跟蹤軌道。雖然沒關係,如果我有一個軌道,它不適合2+。 – m0squito 2013-05-16 12:43:16

+0

啊,是的 - 考慮它你也可以使用每個加載特徵的時間基元(而不是當前系統時間)來設置滑塊的時間基元。總之,很高興有幫助。 – Fraser 2013-05-16 13:27:30

相關問題