2013-10-08 1 views
0

아무도 코 인드를 사용하지 않는 폴링 라인을 계속 깜박이는 방법을 알려주실 수 있습니다. 좌표가없는 Google지도에서 폴리선을 그렸습니다. 그러나 좌표를 사용하는 점멸하는 것과 같이 깜박 거리지는 못했습니다. 좌표 좌표없이코디네이트없이 그려진 폴리 라인의 깜박임

FIDDLE

폴리 라인과

깜박 폴리 라인은 FIDDLE

이 내 코드가 주어로

(방법 위 등이 하나 깜박) 이하

$(function(){ 
var map = new google.maps.Map(document.getElementById("map"), { 
        center: new google.maps.LatLng(11.275387916698238, 75.8015380957031), 
        zoom: 12 
       }), 
    routes = [{origin:'p t usha road, kozhikode', 
       destination:'cooperative hospital, eranjipalam, kozhikode' 
       }, 
       {origin:'IIM, Kozhikode', 
       destination:'VELLIMADUKUNNU, KOZHIKODE' 
       } 
       ], 
    rendererOptions = { 
       preserveViewport: true, 
       map:map, 
       polylineOptions:{strokeColor:'#FF3300', 
           strokeWeight: 10},   
       suppressMarkers:true, 
       routeIndex:0 
       }, 
    directionsService = new google.maps.DirectionsService(); 
    var i=0; 
var infowindow = new google.maps.InfoWindow(); 
     $.each(routes, 
     function(i,obj){//<--anonymous function 

     var request = { 
       origin: obj.origin, 
       destination: obj.destination, 
       travelMode: google.maps.TravelMode.DRIVING 
       }, 

      directionsDisplay = new google.maps.DirectionsRenderer(rendererOptions); 
      directionsService.route(request, function(result, status) { 

       if (status == google.maps.DirectionsStatus.OK) { 

var lat = result.routes[0].legs[0].start_location.lat(); 
var lon = result.routes[0].legs[0].start_location.lng(); 

    var lat1 = result.routes[0].legs[0].end_location.lat(); 
var lon1 = result.routes[0].legs[0].end_location.lng();    



        try{ 

        var marker1 = new google.maps.Marker({ 
    position: new google.maps.LatLng(lat, lon), 
         icon:'https://mts.googleapis.com/vt/icon/name=icons/spotlight/spotlight-waypoint-b.png&text=B&psize=16&font=fonts/Roboto-Regular.ttf&color=ff333333&ax=44&ay=48&scale=1', 
     map: map 
     }); 

          google.maps.event.addListener(marker1, 'click', (function(marker1, i) { 
     return function() { 
      infowindow.setContent('hh'); 
      infowindow.open(map, marker1); 
     } 
     })(marker1, i));      

        }catch(e){alert(e)} 






         try{ 

        var marker2 = new google.maps.Marker({ 
    position: new google.maps.LatLng(lat1, lon1), 
         icon:'https://mts.googleapis.com/vt/icon/name=icons/spotlight/spotlight-waypoint-a.png&text=A&psize=16&font=fonts/Roboto-Regular.ttf&color=ff333333&ax=44&ay=48&scale=1', 
     map: map 
     }); 



          google.maps.event.addListener(marker2, 'click', (function(marker2, i) { 
     return function() { 
      infowindow.setContent('hdddh'); 
      infowindow.open(map, marker2); 
     } 
     })(marker2, i));          

        }catch(e){alert(e)} 




        directionsDisplay.setDirections(result); 
       } 
      }); 
     i++; 
     });}); 
+0

, 당신이에 대해 묻는 [DirectionsRenderer] (https://developers.google.com/maps/documentation/javascript/reference#DirectionsRenderer)에서 렌더링 한 폴리 라인입니다. 바이올린에 표시된 2 방향 결과가 있습니다. 너 뭐하려고? 둘 다 깜박이게 만드시겠습니까? 하나가 아니라 다른 하나? – geocodezip

답변

1

DirectionsRenderer에서 만든 폴리 라인은 API를 통해 액세스 할 수 없습니다.

당신이 할 수있는 일 : (예 : supressPolylines를) 렌더러의 설정을 전환하고 결과를 다시 그리기 :

setInterval(function() { 

    directionsDisplay.set('suppressPolylines', 
          !directionsDisplay.get('suppressPolylines')); 
    directionsDisplay.setDirections(result); 

}, 2000); 

데모 : 당신은 "좌표없이"말할 http://jsfiddle.net/doktormolle/927DS/