Google maps 谷歌地图API:半径圆未绘制

Google maps 谷歌地图API:半径圆未绘制,google-maps,google-maps-api-3,Google Maps,Google Maps Api 3,我遵循了网站上的指示,但我的圈子从来没有被画到我的地图上,我真的不明白我遗漏了什么,有人能给我指出正确的方向吗 以下是我向地图添加新地址标记和搜索半径的方法(请注意,标记是按预期添加的): 我确信有人会问我是否配置了一个底图对象,这是在我的初始化方法中完成的: var geocoder; var map; // Create our base map object function initialize() { geocoder = new google.maps.Geocoder()

我遵循了网站上的指示,但我的圈子从来没有被画到我的地图上,我真的不明白我遗漏了什么,有人能给我指出正确的方向吗

以下是我向地图添加新地址标记和搜索半径的方法(请注意,标记是按预期添加的):

我确信有人会问我是否配置了一个底图对象,这是在我的初始化方法中完成的:

var geocoder;
var map;

// Create our base map object 
function initialize()
{
   geocoder = new google.maps.Geocoder();
   var latlng = new google.maps.LatLng(0,0);
   var mapOptions = { 
      zoom: 12,
      center: latlng,
      mapTypeId: google.maps.MapTypeId.ROADMAP
   }   
   map = new google.maps.Map(document.getElementById("map"), mapOptions);
}

如何获取给定点周围显示的半径?任何建议都将不胜感激。

对于将来遇到相同问题的任何人,请确保采取API指南中未演示的额外步骤,即设置radius对象所属的地图,在我的情况下:

search_radius.setMap(map);

我用发布的代码得到这个错误:
Uncaught InvalidValueError:setRadius:不是一个数字
但真正的问题是:
center:marker.center,
应该是
center:marker.getPosition(),
(a没有“center”属性)

工作代码段:

//将用户点添加到地图
函数addAddress(){
//获取用户的当前位置
var location=document.getElementById(“P1_location”).value;//用户邮政编码
var radius_size=parseFloat(document.getElementById(“P1_radius”).value);//用户半径大小(以米为单位)(除非将其缩放为英里)
var搜索半径;
//将用户位置转换到地图上
地理编码({
“地址”:位置
},功能(结果、状态){
if(status==google.maps.GeocoderStatus.OK){
//以用户位置为中心
map.setCenter(结果[0].geometry.location);
//在用户所在的位置放置一个标记
var marker=new google.maps.marker({
地图:地图,
位置:结果[0]。几何体。位置
});
//配置半径
//构造半径圆
var radiusOptions={
strokeColor:#FF0000“,
笔划不透明度:0.8,
冲程重量:2,
填充颜色:'#FF0000',
不透明度:0.35,
地图:地图,
center:marker.getPosition(),//我想围绕用户位置设置中心
radius:radius\u size//我希望半径以英里为单位,我该怎么做?
};
//将半径圆添加到地图中
搜索半径=新的google.maps.Circle(半径选项);
}
});
}
var地理编码器;
var映射;
//创建我们的底图对象
函数初始化(){
geocoder=新的google.maps.geocoder();
var latlng=新的google.maps.latlng(0,0);
变量映射选项={
缩放:12,
中心:拉特林,
mapTypeId:google.maps.mapTypeId.ROADMAP
}
map=new google.maps.map(document.getElementById(“map”)、mapOptions);
}
google.maps.event.addDomListener(窗口“加载”,初始化)
html,
身体,
#地图{
高度:500px;
宽度:500px;
边际:0px;
填充:0px
}


您可以在代码中设置映射属性。您不需要再次设置它(除非地图是在地理编码器返回其结果后定义的,但是您没有提供足够的上下文来知道这一点)感谢@geocodezip,我认为在阅读教程时会很奇怪-我想这是我的错,添加到我已经编写的代码中,API非常新,但代表我来说是一个新手错误:)谢谢:)我没有添加parseInt方法,因为它是以字符串的形式返回的-现在一切都对我有用,但会接受你的答案,因为它肯定比我的更简洁。谢谢你的时间,伙计
search_radius.setMap(map);