Штрихові лінії в OL3?


13

Я знаю, що в рядку тире не працює OL3 (Openlayers 3) запитували раніше, але запропоноване рішення не працює.

Мій код:

var calculateStyle= new ol.style.Style({
      fill: new ol.style.Fill({
    color: [255, 255, 255, 0.6],
    opacity: 0.3
  }),
  stroke: new ol.style.Stroke({
    color: [0, 153, 255, 1],
    linedash: [40,40],
    width: 3
  })
});

Я спробував і те, [4,4]і [40,40]запропоноване в питанні, пов'язаному Але це не працює.


2
будь ласка, спробуйте lineDash: [4,4]абоlineDash: [40,40]
Габор Фаркас

@GaborFarkas: Привіт. Я вже пробував обидва, але це не працює
Ішан

Відповіді:


19

Штрихові лінії можна виконати за допомогою:

new ol.style.Style({
    stroke: new ol.style.Stroke({
        width: 3, color: 'rgba(255, 255, 255, 1)',
        lineDash: [.1, 5] //or other combinations
    }),
    zIndex: 2
})

Я зробив для вас приклад в Інтернеті!

http://plnkr.co/edit/AW1YNC?p=preview

Ви можете використовувати цей онлайн-тестер для отримання різних комбінацій:

http://phrogz.net/tmp/canvas_dashed_line.html


Добрий приклад живого життя, але чи можете ви описати у своїй відповіді, що ви зробили, щоб отримати пунктирні лінії?
Mapperz

1
Дякую за всі ваші відповіді. Я помилився. Я робив те саме, що всі мені кажуть робити. Помилкою була невелика різниця малих та великих літер. 'Linedash' та 'LineDash'
Ішан
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.