Рисование полилинии в Leaflet?


24

Это моя кодировка, которую я использовал в Leaflet:

    var pointA = new L.LatLng(28.635308, 77.22496);
    var pointB = new L.LatLng(28.984461, 77.70641);
    var pointList = [pointA, pointB];

    var firstpolyline = new L.Polyline(pointList {
    color: 'red',
    weight: 3,
    opacity: 0.5
    smoothFactor: 1

    });

    map.addLayer(firstpolyline);

Карта не показывает никакого результата. Мне просто нужна прямая линия от одной точки к другой, просто визуализируйте ее, а не геодезически правильно. Точки (в Leaflet "круги") отлично отображаются на карте.

Ответы:


36

Ваш код вставлен напрямую? Если так,

var pointA = new L.LatLng(28.635308, 77.22496);
var pointB = new L.LatLng(28.984461, 77.70641);
var pointList = [pointA, pointB];

var firstpolyline = new L.polyline(pointList {
color: 'red',
weight: 3,
opacity: 0.5
smoothFactor: 1

});

пропущены запятые в строках 5 и 8, а в строке 12 используется firstpolyline.addTo(map). Сделай это

var pointA = new L.LatLng(28.635308, 77.22496);
var pointB = new L.LatLng(28.984461, 77.70641);
var pointList = [pointA, pointB];

var firstpolyline = new L.Polyline(pointList, {
    color: 'red',
    weight: 3,
    opacity: 0.5,
    smoothFactor: 1
});
firstpolyline.addTo(map);

Я вижу только одну ошибку, и я исправил ее. Но полилиния все еще не отображается на моей карте. Что я делаю не так?
против потока

Вы просто пропустили небольшую строку кода в конце. Полилиния была правильно закодирована, но она не была добавлена ​​на карту, так как Lealflet требует: firstpolyline.addTo (map);


1

Используйте строчную "полилинию" в L.polyline(...). Это будет работать


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.