Amikor élesben akartam használni a függvényt, mégpedig úgy, hogy az útvonalat ÉN MAGAM rajzoltatom ki és nem adok meg sem panelt az itinernek, sem pedig map paramétert kiderült, hogy ez bizony így nem megy:
var directions = new GDirections();
Nem tudom bug-e vagy feature, de az ititnert feldolgozó DIV megadása nélkül nem működik.
var directions = new GDirections(map, directionsPanel);
Az, hogy az itiner ne legyen látható, elég egyszerű hack.
<div id="route" style="width: 0px; height:0px; display: none;">
Ha (úgy ahogy én) csak a polyline-t akarjuk beszerezni, akkor a konstruktorban lehet null-t adni a map helyén:
var directions = new GDirections(null, directionsPanel);
Egészében a működő cucc:
Bár ennél a megjelenítésnél nem látszik, de az irány több helyen egyirányú utcákban szemben megy, bizonyítván ezzel, hogy tényleg gyalogos útvonalterv készült :)
Íme a forrás:
var map;
var directionsPanel;
var directions;
function initialize() {
map = new GMap2(document.getElementById("map_canvas"));
map.enableScrollWheelZoom();
geocoder = new GClientGeocoder();
geocoder.getLocations("Hungary, Budapest Jókai tér 5", function(response) {
var place = response.Placemark[0];
var p = new GLatLng(place.Point.coordinates[1], place.Point.coordinates[0]);
map.setCenter(p, 17);
}
);
directionsPanel = document.getElementById("route");
directions = new GDirections(null, directionsPanel);
GEvent.addListener(directions, "load", function() {
var gdpolyline = directions.getPolyline();
map.addOverlay(gdpolyline);
});
var opts = { getPolyline: true, getSteps: true, preserveViewport: false, travelMode: G_TRAVEL_MODE_WALKING };
directions.load("from: Hungary, Budapest Jókai tér 5 to: Hungary, Budapest Hernád utca 48", opts);
}
2 megjegyzés:
Az útvonal leírást hova töltöd be?
Az itiner egy egyszerű DIV-be megy, ami jelen példában el van dugva:
<div id="route" style="width: 0px; height:0px; display: none;">
A konstruktorban kell megadni neki:
new GDirections(map, directionsPanel);
Első paraméter a térképet tartalmazó, a második az itinert tartalmazó DIV-re mutat.
Megjegyzés küldése