Gestrichelte Linien in OL3?

13

Ich weiß, dass Line Dash nicht funktioniert OL3 (Openlayers 3) wurde früher gefragt, aber die vorgeschlagene Lösung funktioniert nicht.

Mein Code lautet:

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
  })
});

Ich habe beides versucht [4,4]und [40,40]in der verlinkten Frage vorgeschlagen. Aber es funktioniert nicht.

Ishan
quelle
2
Bitte versuchen Sie es lineDash: [4,4]oderlineDash: [40,40]
Gabor Farkas
@ LaborFarkas: Hallo. Ich habe bereits beide ausprobiert, aber es funktioniert nicht
Ishan

Antworten:

19

Gestrichelte Linien können gemacht werden mit:

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
})

Ich habe dir ein Online-Beispiel gemacht!

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

Sie können diesen Online- "Tester" verwenden, um verschiedene Kombinationen zu erhalten:

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

Jonatas Walker
quelle
Gutes Live-Beispiel, aber können Sie in Ihrer Antwort beschreiben, was Sie getan haben, um die gestrichelten Linien zu erhalten?
Mapperz
1
Vielen Dank für alle Ihre Antworten. Ich habe den Fehler bekommen. Ich habe das Gleiche getan, was mir jeder gesagt hat. Der Fehler war ein kleiner Unterschied zwischen Klein- und Großbuchstaben. 'Linedash' und 'LineDash'
Ishan