1

グーグルマップにポリラインを描き、そのすべてのポイントにマーカーを配置します。これらのマーカーをより高いズームレベルで非表示にしたいので、マーカーマネージャーを使用します。それはうまくいきます。

すべてを描画した後、google.map.fitBoundコマンドを使用して、マップをポリラインの境界にズームします。ただし、マーカーが非表示になる遠方までズームすると、非表示になります。彼らはまだ見えています。もう一度ドラッグまたはズームすると、隠れています。

私は簡単な方法でmarkermanagerを使用します:

var aMarkers [...array of markers...],
markerMgr = new MarkerManager(map);

google.maps.event.addListener(markerMgr, 'loaded', function() {
    markerMgr.addMarkers(aMarkers[0], 15, 0);
    markerMgr.addMarkers(aMarkers[1], 12, 0);
    markerMgr.addMarkers(aMarkers[2], 10, 0);
    markerMgr.refresh();
});

誰かが以前にこの問題に遭遇したことがありますか?よろしくお願いします!

4

2 に答える 2

2

私はこれと同じ問題を抱えていました。マーカーを作成するときは、マーカー オプションで「マップ」パラメーターを設定しないでください。ズームインおよびズームアウトすると、MarkerManager がマップにマーカーを追加します。

例えば:

var newMarker = new google.maps.Marker({
    //map: map
    position: markerPosition,
    icon: icon
});
mgr.addMarker( newMarker, 9 );
于 2013-04-06T16:08:19.833 に答える
0

マーカーの最大ズームが 0 に設定されているのはなぜですか?

MarkerManager.addMarkers(aMarkers[0], minZoom, maxZoom(optional))

試してください(そのパラメーターはドキュメントごとにオプションです):

var aMarkers [...array of markers...],
markerMgr = new MarkerManager(map);

google.maps.event.addListener(markerMgr, 'loaded', function() {
    markerMgr.addMarker(aMarkers[0], 15);
    markerMgr.addMarker(aMarkers[1], 12);
    markerMgr.addMarker(aMarkers[2], 10);
    markerMgr.refresh();
});

実施例

于 2013-02-12T15:32:12.493 に答える