Стилизация полилинии Google Maps v3 с помощью штрихов или точек?

Я хотел бы взять карту на основе Google Map v3 с некоторыми пользовательскими ломаными линиями и сделать некоторые из этих линий пунктирными или пунктирными. Кажется, я не могу найти способ сделать это. Возможно ли это, и если да, то как?


person David Pfeffer    schedule 23.05.2011    source источник
comment
Не могли бы вы принять другой ответ в качестве решения, поскольку он правильный?   -  person kaiser    schedule 17.11.2013


Ответы (1)


Эта функция добавлена ​​в параметры полилиний и называется Символы на полилиниях< /сильный>

Создание пунктирной линии выглядит следующим образом (демонстрация):

var lineCoordinates = [
  new google.maps.LatLng(22.291, 153.027),
  new google.maps.LatLng(18.291, 153.027)
];

var lineSymbol = {
  path: 'M 0,-1 0,1',
  strokeOpacity: 1,
  scale: 4
};

var line = new google.maps.Polyline({
  path: lineCoordinates,
  strokeOpacity: 0,
  icons: [{
    icon: lineSymbol,
    offset: '0',
    repeat: '20px'
  }],
  map: map
});

Длина тире определяется path +/-1, а интервал - repeat. Это немного многословно, но очень гибко.

Помимо тире, новая функция включает в себя предопределенные пути для круга, наконечники стрелок, а в документации даже есть демонстрация анимации :)

person Tina CG Hoehr    schedule 09.07.2012
comment
При рисовании многоугольника вышеприведенный код работает. Но как только я завершаю рисование многоугольника, пунктирные символы исчезают. - person Popara; 27.03.2014