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
GMaps API-驾驶进入行人区的计算路线_Api_Google Maps_Google Maps Api 3_Routes - Fatal编程技术网

GMaps API-驾驶进入行人区的计算路线

GMaps API-驾驶进入行人区的计算路线,api,google-maps,google-maps-api-3,routes,Api,Google Maps,Google Maps Api 3,Routes,到目前为止,我计算的路线运行良好,但我的目的地地址有一些问题 当目的地位于步行区(市中心)内时,该目的地(横向、纵向)将设置为下一条有效街道。这可能是它应该是什么,但重要的是,我得到的路线,直到特定的目的地地址。我想要的:例如,我开车进入步行区,或者我开车尽量远,然后步行到目的地 有人知道我如何解决这个问题吗?我正在使用以下代码,该代码可以正常工作,因此这不是问题: var directionsDisplay=新建google.maps.DirectionsRenderer({ 动画:goo

到目前为止,我计算的路线运行良好,但我的目的地地址有一些问题

当目的地位于步行区(市中心)内时,该目的地(横向、纵向)将设置为下一条有效街道。这可能是它应该是什么,但重要的是,我得到的路线,直到特定的目的地地址。我想要的:例如,我开车进入步行区,或者我开车尽量远,然后步行到目的地

有人知道我如何解决这个问题吗?我正在使用以下代码,该代码可以正常工作,因此这不是问题:


var directionsDisplay=新建google.maps.DirectionsRenderer({
动画:google.maps.animation.DROP,
德拉格布尔:是的
});
var directionsService=new google.maps.directionsService();
var映射;
var地理编码器;
var结果投入;
var问题;
var routeStart,routeEnd;
var-travMode;
var frage_gruppen_nr;
变量zsf1,zsf2;
var zentrieren;
函数初始化(){
geocoder=新的google.maps.geocoder();
routeStart=$('.多个短文本:eq(0).文本:eq(0)');
routeEnd=$('.多个短文本:eq(0)。文本:eq(1)');
coords_field_map=$('.文本简称:eq(1).文本:eq(0)');
coords_field_map.hide();
zsf1=$('.多个短文本:eq(1).文本:eq(0)');
zsf2=$('.多个短文本:eq(1).文本:eq(1)');
var aktuelle_frage='r1';
var frage_gruppen_nr=parseInt(aktuelle_frage.substr(1));
frage_gruppen_nr=frage_gruppen_nr-1;
如果(frage_gruppen_nr>1){
routeStart.val('xxxx');
var-coords;
var ziel_vorfrage='abc';
警惕(齐尔·沃弗雷奇);
geocoder.geocode({'address':ziel_vorfrage},函数(results1,status1){
if(status1==google.maps.GeocoderStatus.OK){
coords=String(结果1[0]。几何体。位置)
} 
});
zentrieren=新的google.maps.LatLng(coords);
}否则{
zentrieren=new google.maps.LatLng(49.759578,6.644134);
}
travMode=document.getElementsByTagName(“选择”)[0];
问题={SGQ}u c';
变量映射选项={
缩放:12,
中心:zentrieren
};
map=new google.maps.map(document.getElementById('gmap\u canvas\ux'+问题),mapOptions);
google.maps.event.addListener(方向显示,'directions_changed',函数(事件){
var directions=this.getDirections();
var overview\u path=方向。路由[0]。overview\u path;
var startingPoint=overview_path[0];
var destination=概览_路径[概览_路径.length-1];
if(StartAtlng的类型=='undefined'| |!StartPoint.equals(StartAtlng)){
STARTATLNG=起始点;
getLocationName(起始点、函数(名称){
routeStart.val(名称);
});
}
如果(endLatlng的类型=='undefined'| |!destination.equals(endLatlng)){
endLatlng=目的地;
getLocationName(目标、函数(名称){
routeEnd.val(名称);
});
}
//警报(“起始点:”+起始点);
计算位置(起点、终点);
});
方向显示.setMap(地图);
resultInput=$('.text-long:eq(0).textarea');
$(resultInput.attr('readonly',true);
}
函数calcRoute(){
var-coords;
var坐标2;
var start=routeStart.val();
geocoder.geocode({'address':start},函数(results1,status1){
if(status1==google.maps.GeocoderStatus.OK){
coords=String(结果1[0]。几何体。位置)
} 
否则{
警觉(“我的女明星不在这里”);
}
});
var end=routeEnd.val();
geocoder.geocode({'address':end},函数(results2,status1){
if(status1==google.maps.GeocoderStatus.OK){
coords2=字符串(结果2[0]。几何体。位置)
} 
否则{
警觉('Die zieladress konnte nicht gefunden werden');
}
});	
var选择模式;
if(travMode.value==1){
selectedMode=‘DRIVING’;
}else if(travMode.value==2){
selectedMode=‘自行车’;
}else if(travMode.value==3){
selectedMode='TRANSIT';
}else if(travMode.value==4){
selectedMode='WALKING';
}
//
var请求={
来源:start,
目的地:完,
travelMode:google.maps.travelMode[selectedMode]
};
路由(请求、功能(响应、状态){
if(status==google.maps.directionstatus.OK){
方向显示。设置方向(响应);
}
});
}
函数计算状态(起点、终点){
var选择模式;
//选择行驶模式
if(travMode.value==1){
selectedMode=‘DRIVING’;
}else if(travMode.value==2){
selectedMode=‘自行车’;
}else if(travMode.value==3){
selectedMode='TRANSIT';
}else if(travMode.value==4){
selectedMode='WALKING';
}
var service=new google.maps.DistanceMatrixService();
service.getDistanceMatrix({
来源:[来源],
目的地:[目的地],
travelMode:google.maps.travelMode[selectedMode],
unitSystem:google.maps.unitSystem.METRIC,
避免:错误,
避免收费:错误
},回调);
}
函数回调(响应、状态){
if(status!=google.maps.DistanceMatrixStatus.OK){
}否则{
var origins=response.originAddresses;
var destinations=response.destinationaddress;
对于(变量i=0;i