2016-12-01 8 views
0

Я пытаюсь достичь, когда когда-либо создаю новый маркер, у него должен быть другой цвет. Это мой объем.Как изменить цвет google map api draggable markers?

$scope.addRoute = function() { 
    console.log('addRoute'); 
    var marker2 = new google.maps.Marker(
    { 
     position: {lat: 52.02, lng: 10.56}, 
     visible:true, 
     icon:'', 
     map: map, 
     draggable: true 
    });  

     directionsDisplay.setMap(map); 
}; 

ответ

0

Использование Symbols

В существующем $scope.addRoute функция вместо icon:'' использование generateIcon().

var marker = new google.maps.Marker({ 
     position : { 
      lat : 52.02, 
      lng : 10.56 
     }, 
     visible : true, 
     icon : generateIcon(), 
     map : map, 
     draggable : true 

    }); 

Вам нужно будет добавить эту функцию в контроллер.

function generateIcon() { 
    //http://map-icons.com/ for svg path 
    return { 

     path : 'M0-48c-9.8 0-17.7 7.8-17.7 17.4 0 15.5 17.7 30.6 17.7 30.6s17.7-15.4 17.7-30.6c0-9.6-7.9-17.4-17.7-17.4z', 
     scale : 0.5, 
     fillColor : '#' + (Math.random() * 0xFFFFFF << 0).toString(16), 
     fillOpacity : 100, 
    } 
} 
+0

как я добавить это в мой возбуждающий scope – Frrank

+0

@Frrank добавил бит больше информации. Надеюсь, поможет. Дайте мне знать иначе .. – Searching

+0

проблема @Поиск этой сферы в контроллерах, ребята, которые работали над этим, не использовали директивы – Frrank

0

Вы можете использовать значок с желаемым цветом:

var marker2 = new google.maps.Marker(
{ 
    position: {lat: 52.02, lng: 10.56}, 
    visible:true, 
    icon:'', 
    map: map, 
    draggable: true 
}); 

marker2.setIcon('https://maps.google.com/mapfiles/ms/icons/blue-dot.png'); 

var marker3 = new google.maps.Marker(
{ 
    position: {lat: 62.02, lng: 12.56}, 
    visible:true, 
    icon:'', 
    map: map, 
    draggable: true 
}); 

marker3.setIcon('https://maps.google.com/mapfiles/ms/icons/red-dot.png') 

Или вы можете изменить цвет непосредственно из URL:

http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=%E2%80%A2|FE7569 
+0

это решение будет влиять на производительность позволяет сказать, что вам нужно 100 различных значков вы бы не полагаться на просто добавить их, как это, кстати 2 маркеров это лучший – Frrank