görünmüyor, ancak harita her zaman sadece İrlanda varsayılan konumu gösteriyor ve rotadaGoogle Maps ben iki işaret arasındaki bir rotayı göstermeye çalışıyorum rotayı
public string DrawMapDirections(string Start,string End,string[] WayPoints)
{
string map = "<script type=\"text/javascript\" src=\"https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false\"></script>" +
"<script>" +
"var rendererOptions = { "+
"draggable: true "+
"}; " +
"var directionsDisplay = new google.maps.DirectionsRenderer(rendererOptions); " +
" var directionsService = new google.maps.DirectionsService(); " +
" var map; " +
"function initialize() { " +
"var ireland = new google.maps.LatLng(53.085222, -7.558594); " + //Default Ireland
" var mapOptions = { " +
" zoom: 7, " +
" mapTypeId: google.maps.MapTypeId.ROADMAP," +
" center: ireland " +
"}; " +
"map = new google.maps.Map(document.getElementById('map_canvas'), mapOptions); " +
"directionsDisplay.setMap(map); " +
"directionsDisplay.setPanel(document.getElementById('directionsPanel'));" +
"google.maps.event.addListener(directionsDisplay, 'directions_changed', function() { " +
"computeTotalDistance(directionsDisplay.directions); "+
"}); "+
//Call calcRoute
" calcRoute();" +
"}" +
"function calcRoute() { " +
"var start = '" + Start.Replace("'", "") + "'; " +
"var end = '" + End.Replace("'", "") + "'; " +
"var waypts = []; ";
foreach (string s in WayPoints)
{
map += "waypts.push({ " +
"location:'" + s.Replace("'","") + "'}); ";
}
map += "var request = { " +
"origin: start, " +
"destination: end, " +
"waypoints: waypts, " +
"optimizeWaypoints: document.getElementById('chkOptimizeWaypoints').checked, " +
"durationInTraffic:document.getElementById('chkDurationInTraffic').checked , " +
"provideRouteAlternatives: document.getElementById('chkProvideRouteAlternatives').checked," +
"avoidHighways: document.getElementById('chkAvoidHighWays').checked," +
"avoidTolls: document.getElementById('chkAvoidTolls').checked, " +
"travelMode: google.maps.DirectionsTravelMode.DRIVING " +
"}; " +
"directionsService.route(request, function(response, status) { " +
"if (status == google.maps.DirectionsStatus.OK) {" +
"directionsDisplay.setDirections(response);" +
"var route = response.routes[0];" +
"}" +
"});" +
" }" +
"function computeTotalDistance(result) { "+
"var total = 0; "+
"var myroute = result.routes[0]; " +
"for (i = 0; i < myroute.legs.length; i++) { "+
"total += myroute.legs[i].distance.value; "+
"} "+
"total = total/1000; "+
"document.getElementById('total').innerHTML = total + ' km'; "+
"} "+
"</script>";
return map;
}
başlangıç ve bitiş noktaları gösterilmiyor Bu fonksiyonun geçirilir olsun:
GoogleMap gm = new GoogleMap();
html += gm.DrawMapDirections(start, end, waypoints.ToArray());
böylece örneğin başlangıç gibi bir şey olabilir - Treloggan San Est'ten Newquay, TR7 2SX, Cornwall, Birleşik Krallık. Buranın
Tamam rotayı göstermez neden bilmiyorum bu yüzden
ne Harita geri hataları oluyor alamıyorum:
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"></script>
<script>
var rendererOptions = { draggable: true };
var directionsDisplay = new google.maps.DirectionsRenderer(rendererOptions);
var directionsService = new google.maps.DirectionsService();
var map; function initialize() {
var ireland = new google.maps.LatLng(53.085222, -7.558594);
var mapOptions = { zoom: 7, mapTypeId: google.maps.MapTypeId.ROADMAP, center: ireland };
map = new google.maps.Map(document.getElementById('map_canvas'), mapOptions);
directionsDisplay.setMap(map);
directionsDisplay.setPanel(document.getElementById('directionsPanel'));
google.maps.event.addListener(directionsDisplay, 'directions_changed',
function() {
computeTotalDistance(directionsDisplay.directions);
});
calcRoute()
;}
function calcRoute() {
var start = 'Unit 2, Hendy Industrial Estate, Hendy, SWANSEA, SA4 0XP, West Glamorgan, UNITED KINGDOM';
var end = 'Treloggan Ind Est, Newquay, TR7 2SX, Cornwall, UNITED KINGDOM';
var waypts = [];
var request = {
origin: start, destination: end,
waypoints: waypts, optimizeWaypoints: document.getElementById('chkOptimizeWaypoints').checked,
durationInTraffic:document.getElementById('chkDurationInTraffic').checked ,
provideRouteAlternatives: document.getElementById('chkProvideRouteAlternatives').checked,
avoidHighways: document.getElementById('chkAvoidHighWays').checked,avoidTolls: document.getElementById('chkAvoidTolls').checked,
travelMode: google.maps.DirectionsTravelMode.DRIVING };
directionsService.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK){
directionsDisplay.setDirections(response);var route = response.routes[0];}});
}
function computeTotalDistance(result) {
var total = 0;
var myroute = result.routes[0];
for (i = 0; i < myroute.legs.length; i++) {
total += myroute.legs[i].distance.value; }
total = total/1000;
document.getElementById('total').innerHTML = total + ' km';
}
</script>
gerçek çıktı yerine sunucu kodu gönderir misiniz? Ayrıca, yönlendirmenin başarılı olmaması durumunda bir hata işleyicisini koyabilirsiniz - bir hata iletisi almalısınız – SWa
Lütfen aspx sayfanızın içeriğini gönderebilir misiniz? –
@Kyle Çıktıyı soruya gönderdim – user123456789