Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 设置GPS和标记之间的地图边界_Javascript_Google Maps - Fatal编程技术网

Javascript 设置GPS和标记之间的地图边界

Javascript 设置GPS和标记之间的地图边界,javascript,google-maps,Javascript,Google Maps,我不知道如何设置地图边界。我看了其他几个相关的问题,但我无法让它们正常工作 这就是我正在尝试的: 在每个标记之后,我调整贴图的边界,如下所示: var bounds = new google.maps.LatLngBounds(); bounds.extend(gps_coords); 我做错了什么?不要每次都创建一个新的空边界对象(对于每个标记),在开始时创建一个,将所有点添加到其中,然后使用它缩放地图并使其居中 代码片段: 函数映射_init(){ 变量映射选项={ 缩放:8, 中心:新

我不知道如何设置地图边界。我看了其他几个相关的问题,但我无法让它们正常工作

这就是我正在尝试的:

在每个标记之后,我调整贴图的边界,如下所示:

var bounds = new google.maps.LatLngBounds();
bounds.extend(gps_coords);

我做错了什么?

不要每次都创建一个新的空边界对象(对于每个标记),在开始时创建一个,将所有点添加到其中,然后使用它缩放地图并使其居中

代码片段:

函数映射_init(){
变量映射选项={
缩放:8,
中心:新google.maps.LatLng(-34.397150.644),
mapTypeId:google.maps.mapTypeId.ROADMAP
}
var map=new google.maps.map(document.getElementById(“map_canvas”),mapOptions);
var bounds=new google.maps.LatLngBounds();
//添加GPS位置
/*
var sensor_image=new google.maps.MarkerImage(“#{asset_path”
sensor.png“}”,
新google.maps.Size(38,38),
新的google.maps.Point(0,0),
新的google.maps.Point(19,19));
*/
if(导航器.地理位置){
browserSupportFlag=true;
navigator.geolocation.getCurrentPosition(函数(位置){
var gps_coords=新的google.maps.LatLng(position.coords.lation,position.coords.longitude);
新的google.maps.Marker({
位置:gps_坐标,
地图:地图,
//图标:传感器图像
});
var bounds=new google.maps.LatLngBounds();
扩展(gps_坐标);
},函数(){
//不处理地理定位支持
})
}
//添加存储位置
geocoder=新的google.maps.geocoder();
地理编码({
“地址”:“纽约州纽约市”
},功能(结果、状态){
if(status==google.maps.GeocoderStatus.OK){
var store_coords=results[0].geometry.location;
新的google.maps.Marker({
职位:门店合作,
动画:google.maps.animation.DROP,
地图:地图
});
扩展(存储坐标);
映射边界(bounds);
}
});
地理编码({
“地址”:“马萨诸塞州波士顿”
},功能(结果、状态){
if(status==google.maps.GeocoderStatus.OK){
var store_coords=results[0].geometry.location;
新的google.maps.Marker({
职位:门店合作,
动画:google.maps.animation.DROP,
地图:地图
});
扩展(存储坐标);
映射边界(bounds);
}
});
//配置映射
//扩展(gps_坐标);
//扩展(存储坐标);
映射边界(bounds);
}
google.maps.event.addDomListener(窗口,'load',map\u init)
html,
身体,
#地图画布{
身高:100%;
宽度:100%;
}

不要每次都创建一个新的空边界对象(对于每个标记),在开始时创建一个空边界对象,将所有点添加到该对象中,然后使用它缩放和居中地图

代码片段:

函数映射_init(){
变量映射选项={
缩放:8,
中心:新google.maps.LatLng(-34.397150.644),
mapTypeId:google.maps.mapTypeId.ROADMAP
}
var map=new google.maps.map(document.getElementById(“map_canvas”),mapOptions);
var bounds=new google.maps.LatLngBounds();
//添加GPS位置
/*
var sensor_image=new google.maps.MarkerImage(“#{asset_path”
sensor.png“}”,
新google.maps.Size(38,38),
新的google.maps.Point(0,0),
新的google.maps.Point(19,19));
*/
if(导航器.地理位置){
browserSupportFlag=true;
navigator.geolocation.getCurrentPosition(函数(位置){
var gps_coords=新的google.maps.LatLng(position.coords.lation,position.coords.longitude);
新的google.maps.Marker({
位置:gps_坐标,
地图:地图,
//图标:传感器图像
});
var bounds=new google.maps.LatLngBounds();
扩展(gps_坐标);
},函数(){
//不处理地理定位支持
})
}
//添加存储位置
geocoder=新的google.maps.geocoder();
地理编码({
“地址”:“纽约州纽约市”
},功能(结果、状态){
if(status==google.maps.GeocoderStatus.OK){
var store_coords=results[0].geometry.location;
新的google.maps.Marker({
职位:门店合作,
动画:google.maps.animation.DROP,
地图:地图
});
扩展(存储坐标);
映射边界(bounds);
}
});
地理编码({
“地址”:“马萨诸塞州波士顿”
},功能(结果、状态){
if(status==google.maps.GeocoderStatus.OK){
var store_coords=results[0].geometry.location;
新的google.maps.Marker({
职位:门店合作,
动画:google.maps.animation.DROP,
地图:地图
});
扩展(存储坐标);
映射边界(bounds);
}
});
//配置映射
//扩展(gps_坐标);
//扩展(存储坐标);
映射边界(bounds);
}
google.maps.event.addDomListener(窗口,'load',map\u init)
html,
身体,
#地图画布{
身高:100%;
宽度:100%;
}