Как это выглядит? Я хочу генерировать направления с одной широты/долготы на другую широту/долготу.
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);
То же самое... карта, но никаких указаний. Любая помощь очень ценится, спасибо заранее!
Я не вижу ничего очевидного с первого взгляда на ваш код, поэтому первое предположение - неудача, возвращающаяся к запросу GDirections (я также предполагаю, что вы проверили журнал ошибок javascript для любых ошибок, Tools/Error Console, если вы еще этого не сделали).
Я предлагаю добавить обработчик ошибок для вашего объекта GDirections, это даст вам некоторое представление о том, что происходит с вашим запросом:
GEvent.addListener(directions, "error", handleErrors);
и в обратном вызове handleErrors посмотрите:
directions.getStatus().code
Сравните с коды состояния Geo.
EDIT: Хорошо, я просто попробовал ваш код здесь и работает отлично. Я могу только предположить, что на вашей странице есть и другие проблемы, которые вызывают проблему. Можете ли вы опубликовать ссылку в вопросе, чтобы мы могли проверить это?
Проверка статуса (604) Я получил, когда попытался в Справочник API Карт Google:
Объект GDirections не может вычислять направления между точками упомянутых в запросе. Это обычно потому, что нет маршрута между двумя точками или потому что у нас нет данных для маршрутизации в этой области.
и это код, который я использовал (слегка измененный):
$(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');
}
});