Направления Google Maps V3: несколько направлений на карте - PullRequest
1 голос
/ 21 августа 2010

Я пытаюсь визуализировать несколько направлений (ну, в сущности, их полилинии) на одном экземпляре карты.В предыдущей версии API карт я делал что-то вроде

//directions[] stores the GDirections objects
//x[] is an array of Elements extracted from an XMLHTTPResponse object
//iterating over the values in x[]
GEvent.addListener(directions[i], "load", function() {
 var polyline = this.getPolyline();
 map.addOverlay(polyline);
 polyline.setStrokeStyle({opacity:0.2})
 });

directions[i].load("from:here to:"+x[i].childNodes[0].nodeValue,{getPolyline:true});

Теперь, когда есть классы DirectionsService и DirectionsRenderer, я не знаю, как лучше всего делать то же самое.Могу ли я создать несколько экземпляров класса DirectionsRenderer и заставить их выполнить setMap () для экземпляра основной карты?Создаю ли я несколько экземпляров класса DirectionsServices.

Я очень плохо знаком с javascript и функциональными языками в целом и едва успел понять функциональные замыкания, связанные с обратными вызовами.Приносим свои извинения за форматирование.

Буду признателен за любую помощь, я постараюсь уточнить любые вопросы, которые вы можете поднять.

Ответы [ 2 ]

1 голос
/ 22 октября 2010

Привет, Эфраим, после долгих исследований и проб разных решений, которые я придумал, тебе нужно создать другой экземпляр DirectionsRenderer и (это важно!) Создать экземпляр DirectionsService ВНУТРИ функции ответа. Эта ссылка поможет вам в правильном направлении.

0 голосов
/ 31 марта 2011

Пользуясь ссылкой @ifaour, я поднял грязную демо-версию. Поскольку мои цели требовали нескольких уникальных точек маршрута для каждого объекта направления, я взял этот фрагмент немного дальше, создавая массивы для точек маршрута: вот ссылка на демонстрационную версию ... все встроено. : D

Это действительно грязный набор кода (я промежуточный) ... во что бы то ни стало, очистите его, если можете

...