2010-08-21 9 views
1

지도의 단일 인스턴스에서 여러 방향 (기본적으로 폴리 라인)을 렌더링하려고합니다. 지도 API의 이전 버전에서, 내가하려면 DirectionsService 및 DirectionsRenderer의 클래스가 이제 Google지도 길 찾기 V3 :지도의 여러 방향도

//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}); 

같은 것을했다, 나는 같은 일을 수행하는 가장 좋은 방법이 무엇인지 모른다. DirectionsRenderer 클래스의 인스턴스를 여러 개 만들고 기본지도 인스턴스에 setMap()을 수행하게합니까? DirectionsServices 클래스의 인스턴스를 여러 개 만들 수 있습니까?

저는 일반적으로 자바 스크립트와 함수 언어에 매우 익숙하며 콜백에 관련된 기능적 클로저를 이해하려고 애 쓰고 있습니다. 서식에 대해서도 사과드립니다.

도움이 될만한 정보가 있으면 알려 주시면 점수를 올리려고합니다.

답변

1

안녕하세요 Ephraim, 몇 시간 동안 연구하고 다른 해결책을 시도한 후 DirectionsRenderer의 다른 인스턴스를 만들어야합니다 (중요합니다!) 응답 함수 내부에 DirectionsService 인스턴스를 만듭니다. This link은 올바른 방향으로 안내합니다.

0

@ifaour 링크를 사용하여 게시자는 아래로 더러운 데모를 작성했습니다. 내 목적은 길 찾기 객체 당 여러 개의 고유 한 경유지를 필요로했기 때문에이 스 니펫을 약간 멀리 가져 와서 웨이 포인트 배열을 만들었습니다. 여기는 link to the demo ... 모든 것이 인라인입니다. : D

그것은 코드의 정말 더러운 세트의

(I 중간 해요) ... 꼭, 당신이

+0

분명,이 파이어 폭스에 약간 드문 드문 ...하지만 크롬과 사파리에 체크 아웃이 할 수있는 경우까지를 청소 . IE에 대한 생각은 내가 Mac에있어 – joshdcomp

+0

이 예제를 정리하면 다음과 같습니다. http://voxapp.com/multipoints.html –