3
我寫了一個小算法,可以將標記從 移動到另一個點。該算法是這樣的僞代碼:如何使用Google地圖平滑地標記標記?
lat_delta = new_lat - old_lat;
lng_delta = new_lng - old_lng;
for(alpha=0; alpha < 1; alpha += 0.1) {
lat = old_lat + (alpha * lat_delta);
lng = old_lng + (alpha * lng_delta);
update_marker(lat, lng);
}
的完整代碼可在http://dev.syskall.com/map/和 http://dev.syskall.com/map/commute.js。
我遇到的問題是,當地圖縮小時,動畫似乎是「曲折曲折」。這就是說,當你放大, 動畫是太更順暢。
我認爲這可能是由於我的動畫是基於 lat,lng座標而不是屏幕上的像素。縮小時,Google地圖不會精確到位,並且必須以某種方式圍繞座標位置。
當然,當地圖放大時當前的實施效果很好,但在縮小時效果不是很好。
有沒有辦法解決這個問題?
問題是您只能通過Latlng對象定位標記。無法直接設置頂點:/ – 2010-10-03 21:26:47
並且從像素合作伙伴轉換給我提出了同樣的問題,我試圖解決:谷歌做了一個可憐的latlng像素轉換 – 2010-10-03 22:00:13
第一個問題可以通過從像素座標,有一種方法...但如果你認爲轉換質量不好,那麼就沒有太多的事情要做:( – 2010-10-04 04:51:50