2013-08-29 6 views
3

я использую для Google Maps Marker (V3) иконки следующим образом:Изменения Stroke Цвет маркера Icon

var marker = new google.maps.Marker({ 
    id: "theId", 
    icon: { 
     path: google.maps.SymbolPath.FORWARD_CLOSED_ARROW, 
     strokeColor: "green" 
    }, 
    map: map, 
    title: "theTitle", 
    position: someLatitudeLongitude 
}); 

Теперь после создания этого маркеров я хотел изменить цвет во время выполнения с цвет панель. Теперь это отлично работает для полилинии или полигона, но для маркера не совсем хорошо: он изменен, но не обновляется в реальном времени.

Код:

selectedShape.icon.strokeColor = color; 

ПРОБЛЕМА: Не показывает изменение цвета на карте. Только после сохранения и перезагрузки карты отображается правильный цвет.

Для полигона я использую:

selectedShape.set('strokeColor', color); 

Это прекрасно работает.

. Есть ли такой набор, как оператор для маркера или частичного обновления?

Спасибо за любую помощь.

С наилучшими пожеланиями,

Эверт Wiesenekker

ответ

2

Я связала бы на события, где изменения цвета, а затем вызвать marker.setIcon(icon_options) на маркер, чтобы передать новые значения.

1

Я думаю, что вам нужно сделать, это 'обновление' маркер, как это:

marker.getIcon().strokeColor = 'green'; 
marker.setMap(map); 

Или вы могли бы сделать:

marker.setIcon({ 
    path: google.maps.SymbolPath.FORWARD_CLOSED_ARROW, 
    strokeColor:'green' 
}); 
Смежные вопросы