Google maps 刷新谷歌地图上的圆圈

Google maps 刷新谷歌地图上的圆圈,google-maps,google-maps-api-3,google-maps-markers,Google Maps,Google Maps Api 3,Google Maps Markers,我正在实现一个应用程序,在这个应用程序中,我必须在地图的中心显示一个圆圈。我可以在地图上画一个圆,但几秒钟后我必须更新圆的半径。我想使用相同的map实例,而不是创建新实例。 当我创建新圆时,它与旧圆重叠。我想删除以前添加的圆并显示新的圆。 在检查api时,我从Circle类获得了这个方法,它将隐藏这个圆。 setOptions({visible:false}) 但问题是我无法访问旧的circle实例。 是否有任何方法可以让我获得分配给该地图的地图标记和信息框并将其删除? 下面是将以几秒钟的时间间

我正在实现一个应用程序,在这个应用程序中,我必须在地图的中心显示一个圆圈。我可以在地图上画一个圆,但几秒钟后我必须更新圆的半径。我想使用相同的map实例,而不是创建新实例。 当我创建新圆时,它与旧圆重叠。我想删除以前添加的圆并显示新的圆。 在检查api时,我从Circle类获得了这个方法,它将隐藏这个圆。 setOptions({visible:false})

但问题是我无法访问旧的circle实例。 是否有任何方法可以让我获得分配给该地图的地图标记和信息框并将其删除? 下面是将以几秒钟的时间间隔调用的方法

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);
}

谢谢

我们可以使用以下方法使已经绘制的圆圈在谷歌地图上不可见 circle.setOptions({visible:false});
并且可以使该地图的实例为空。

我们可以使用以下方法使已经绘制的圆圈在谷歌地图上不可见 circle.setOptions({visible:false});
并且可以使该映射的实例为空。

尝试
circle.setRadius(radiusvalue)
尝试
circle.setRadius(radiusvalue)

将帮助我们查看您尝试过的代码。farmethod添加了哪些代码,并对其进行了一些更改。每次我同时创建实例时,我都不想公开var。是否有任何方法可以访问地图中的circle info信息框看起来您发布的代码每次运行时都会重新创建地图。如果您不希望发生这种情况,那么您应该做的第一件事就是从定期执行的例程中删除该代码。发布的代码有什么问题?我想从mapIs的当前实例中删除以前添加的circle和infobax。通过任何方式,我们都可以从map对象中删除以前添加的circle和infobox实例。这将有助于我们查看您尝试添加了哪些代码,farmethod对其进行了一些更改。每次我同时创建实例时,我都不想公开var。是否有任何方法可以访问地图中的circle info信息框看起来您发布的代码每次运行时都会重新创建地图。如果您不希望发生这种情况,那么您应该做的第一件事就是从定期执行的例程中删除该代码。您对发布的代码有什么问题?我想从mapIs的当前实例中删除以前添加的circle和infobax。我们可以通过任何方式从map对象中删除以前添加的circle和infobox实例,但是如何refresh@EdathadanChiefakaArun:setRadius()会立即生效,不是吗setOptions()会?但是怎么做呢refresh@EdathadanChiefakaArun:setRadius()立即生效,对吗setOptions()有用且有效有用且有效