マップの中心に円を付けてGoogleマップを表示する必要があるアプリケーションを実装しています。マップ上に円を描くことはできますが、数秒後に円の半径を更新する必要があります。新しいマップを作成するのではなく、同じインスタンスのマップを使用したい。新しい円を作成すると、古い円に重なっています。以前に追加したサークルを削除して、新しいサークルを表示したい。APIをチェックしているときに、円を非表示にするCircleクラスからこのメソッドを取得しました。myCity.setOptions({visible:false});
しかし問題は、古いサークル インスタンスにアクセスできないことです。そのマップに割り当てられたマップ マーカーとインフォボックスを取得して削除する方法はありますか? 以下は、数秒間隔で呼び出されるメソッドです
function mapByCoordinates()
{
var lat=document.getElementById("latValue").value;
var lng=document.getElementById("lngValue").value;
var accuracy = document.getElementById("zoomValue").value;
var zoomVal=getZoomBasedOnAccuracy(accuracy);
var zm = parseInt(zoomVal);
var tempRadius = getRadiusBasedOnAccuracy(accuracy);
var amstr = new google.maps.LatLng(lat,lng);
var mapProp = {
center:amstr,
zoom:zm,
mapTypeId:google.maps.MapTypeId.HYBRID
};
map.setOptions(mapProp);
myCity.setOptions({visible:false});
infobox.close();
myCity = new google.maps.Circle({
center:amstr,
radius:tempRadius
});
marker=new google.maps.Marker({
position:amstr,
});
myCity.setMap(map);
myCity1.setMap(map1);
infobox = new google.maps.InfoWindow({
content:"Welcome to google map",
disableAutoPan:true
});
infobox.open(map,marker);
map.panTo(amstr);
map.setZoom(19);
}
ありがとう