Я хочу научиться делать простую линейку (измерение) на Листовке.Jquery

Программирование на jquery
Ответить Пред. темаСлед. тема
Anonymous
 Я хочу научиться делать простую линейку (измерение) на Листовке.

Сообщение Anonymous »

Я хочу создать простую линейку на основе примера ниже:
Изображение

Я знаю множество плагинов по измерению в Leaflet, но по каким-то причинам я хочу обойтись без плагина. Для этого мне нужен совет и помощь.
Это мой код функции:

Код: Выделить всё

var markersRulerGroup = L.layerGroup();
markersRulerGroup.addTo(map);

var tooltipRulerGroup = L.layerGroup();
tooltipRulerGroup.addTo(map);

var rulerIcon = L.divIcon({className: 'bi bi-dot text-ruler-map', iconSize: [0, 0], iconAnchor: [26, 36]});
var markerRuler;
var markersCount;
var tooltipRuler;

function measureDistance(){
if ($('#measureDistanceCheckedState').is(":checked")) {
$('#measureDistanceCheckedState').prop('checked', false);
btnMeasureDistance.style.backgroundColor = '#ffffff';

// markersRulerGroup.removeLayer(markerRuler);
map.eachLayer(function(layer) {
if(layer.options.alt === "markerRuler") layer.removeFrom(markersRulerGroup);
if(layer.options.alt === "tooltipRuler") layer.removeFrom(tooltipRulerGroup);
});

map.off('click');
}   else {
$('#measureDistanceCheckedState').prop('checked', true);
btnMeasureDistance.style.backgroundColor = '#dbdbdb';

map.on('click', function(e){
markerRuler = new L.marker(e.latlng, {alt: 'markerRuler', icon: rulerIcon});
markersRulerGroup.addLayer(markerRuler);

markersCount = markersRulerGroup.getLayers().length;

tooltipRuler = new L.tooltip(e.latlng, {alt: 'tooltipRuler', permanent: true, direction:'bottom', offset:[1,6]})
.setContent("THIS MARKER:" +markersCount);
tooltipRulerGroup.addLayer(tooltipRuler);
});
};
};

Основываясь на моей функции выше, когда я нажимаю на карту, я добавляю маркер, как показано на рисунке ниже:
Изображение

На самом деле моя проблема в том, что я не знаю, как определить маркер[ до] и маркер[после]. Это важно для расчета расстояния и добавления линии между двумя маркерами. Если я знаю, как определить маркер[до] и маркер[после], я ожидал, что мой следующий результат будет ниже:
[img]https:/ /i.sstatic.net/34urilDe.png[/img]


Подробнее здесь: https://stackoverflow.com/questions/791 ... on-leaflet
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Выровнять текст и горизонтальную линейку одинаковой ширины
    Гость » » в форуме CSS
    0 Ответы
    32 Просмотры
    Последнее сообщение Гость
  • Как переместить масштабную линейку в центр при работе с Mapsforge на Android?
    Гость » » в форуме Android
    0 Ответы
    24 Просмотры
    Последнее сообщение Гость
  • Как вставить масштабную линейку на карту в matplotlib
    Anonymous » » в форуме Python
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Как я могу показать линейку км на графике cartopy/matplotlib?
    Anonymous » » в форуме Python
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Использование JQuery для загрузки JSON и использования в листовке
    Гость » » в форуме Jquery
    0 Ответы
    25 Просмотры
    Последнее сообщение Гость

Вернуться в «Jquery»