2009-06-18 5 views
1

Как это выглядит? Я хочу генерировать направления от одной широты/долготы до другой широты/долготы.Google Maps GDirections - маршруты маршрута между двумя точками на карте

var dirMap = new GMap2($("#dirMap").get(0)); 
var wp = new Array(2); 
wp[0] = new GLatLng(35.742149,139.337218); 
wp[1] = new GLatLng(35.735347,139.328485); 

var marker = new GMarker(wp[1]); 
dirMap.addOverlay(marker); 
dirMap.setCenter(wp[0], 12); 
dirMap.setUIToDefault(); 

// load directions 
directions = new GDirections(dirMap); 
directions.load("from: [email protected],100.337218 to: [email protected],100.3267"); 

Картографических грузы мелких, но направление не приходит в. Я тоже пробовал это так:

var dirMap = new GMap2($("#dirMap").get(0)); 
var wp = new Array(2); 
wp[0] = new GLatLng(32.742149,119.337218); 
wp[1] = new GLatLng(32.735347,119.328485); 

var marker = new GMarker(wp[1]); 
dirMap.addOverlay(marker); 
dirMap.setCenter(wp[0], 12); 
dirMap.setUIToDefault(); 

// load directions 
directions = new GDirections(dirMap); 
directions.loadFromWaypoints(wp); 

То же самое ... карта, но никаких указаний. Любая помощь очень ценится, спасибо заранее!

ответ

1

Я ничего не вижу очевидное на первый взгляд на свой коде, так что моя первая догадка неудача возвращается в течение GDirections запроса (Я также предполагаю, что вы проверили яваскрипт журнала ошибок за любые ошибки, Tools/Error Console, если вы еще этого не сделали).

Я предлагаю вам добавить обработчик ошибок для объекта ваши GDirections, это даст вам некоторое представление о том, что происходит с вашим запросом:

GEvent.addListener(directions, "error", handleErrors); 

и в обратном вызове handleErrors загляните в:

directions.getStatus().code 

Сравнить с Geo Status Codes.

EDIT: Хорошо, я только что пробовал your code вот и works perfectly. Я могу только предположить, что на вашей странице есть и другие проблемы, которые вызывают проблему. Можете ли вы опубликовать ссылку в вопросе, чтобы мы могли проверить это?

+0

Проблема была на моей испытательной коробке ... так что ссылки нет. После того, как вы проверили это, я скопировал код в новый html-файл и успешно получил его для загрузки. По крайней мере, я знаю, что теперь это не ошибка JavaScript. Я действительно ценю помощь в этом, большое вам спасибо. – Chaddeus

+0

Рад это услышать :). – RedBlueThing

1

Проверка состояния (604) я получил, когда я пытался в Google Maps API Reference говорит:

В GDirections объект не мог направления Compute между точками , указанных в запросе. Это обычно потому, что между двумя точками нет , или , потому что у нас нет данных для маршрутизации в этом регионе.

и это код, который я использовал (слегка измененный):

$(function() 
{ 
    if (GBrowserIsCompatible()) 
    { 
     var wp = [new GLatLng(35.742149,139.337218), new GLatLng(35.735347,139.328485)]; 

     var map = new GMap2(document.getElementById('map-canvas')); 
     map.setCenter(wp[0], 12); 
     map.setUIToDefault(); 

     var marker = new GMarker(wp[1]); 
     map.addOverlay(marker); 

     var directions = new GDirections(map); 
     GEvent.addListener(
      directions, 
      'error', 
      function() 
      { 
       console.log(directions.getStatus().code); 
      } 
     ); 
     directions.load('from: [email protected],100.337218 to: [email protected],100.3267'); 
    } 
}); 
+0

Нет проблем с кодом, который он предоставил. Я использовал его дословно и был рассчитан правильный маршрут. – RedBlueThing

Смежные вопросы