同じ場所に複数のマーカーがある場合、または互いに非常に近い場合は、OverlappingMarkerSpiderfierを使用することにしました。
問題は、私のスコープでは、各マーカーに、spiderfy がトリガーされたときに移動するマーカーがバインドされていることでした。
同じ場所に複数のマーカーがある場合、または互いに非常に近い場合は、OverlappingMarkerSpiderfierを使用することにしました。
問題は、私のスコープでは、各マーカーに、spiderfy がトリガーされたときに移動するマーカーがバインドされていることでした。
基本的な解決策は、リスナーを追加し、手動で円が所定の位置に保持されるようにすることです。
this.oms.addListener('spiderfy', function (activeMarkers) {
activeMarkers.forEach(function(marker) {
console.log(marker._originalPosition);
marker._circle.unbind('center');
marker._circle.setCenter(marker._originalPosition);
});
});
this.oms.addListener('unspiderfy', function (activeMarkers) {
activeMarkers.forEach(function(marker) {
circle.bindTo('center', marker, 'position');
});
});
_originalPosition
元の場所は から入手できないため、事前に保管する必要があります (問題_omsData
を参照してください)。