Рисование полилинии в 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 "круги") отлично отображаются на карте.

againstflow
источник

Ответы:

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

addLayer не работает для меня, должен был сделать .addTo(map)

Коннор Лич
источник
1

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

Адам
источник
-1

Если вы хотите точный путь (формы кривой), используйте polyline.antPath.

Тарак Редди
источник