22

JavaScript と Google Maps API を使用してハンドヘルド デバイス用の小さなアプリケーションを作成しました。タイマー機能を使用して、ルートに沿ってマップ上の任意の場所にマーカー アイコンを移動する必要があります。男性のアイコンがあり、マップ上で自動的に移動する必要があります。これどうやってするの?

4

3 に答える 3

17

非常にクールな例を次に示します。

http://www.kmcgraphics.com/google/

于 2010-08-25T10:03:31.937 に答える
9

残念ながら、公式のGMapsコレクションには自動マーカー移動機能はありません。

ただし、GRouteがある場合は、一連のポイントがあることを意味します。ルートステップをループするには、次のようなものを使用できます。

for (var c = 0; c < yourroute.getNumSteps(); c++) { 
    yourmarker.setLatLng(yourroute.getStep(c).getLatLng());
}

もちろん、タイマーを使用して非同期でこれを実行することをお勧めします。

function moveToStep(yourmarker,yourroute,c) {
    if {yourroute.getNumSteps() > c) {
        yourmarker.setLatLng(yourroute.getStep(c).getLatLng());
        window.setTimeout(function(){
            moveToStep(yourmarker,yourroute,c+1);
        },500);
    }
}

moveToStep(marker,route,0);

さらにスムーズな動きのために、あなたはあなたがすでに持っているものからポイントを補間することができます。

于 2009-03-20T08:39:03.567 に答える