Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > .NET > ASP.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 15 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 30.08.2015, 19:34   #1
PinkPink
Форумчанин
 
Регистрация: 09.10.2011
Сообщений: 98
Репутация: 10
По умолчанию Маркеры в OpenStreetMap

Добрый день.
Необходимо показывать перемещение объекта на карте. Использую OpenStreetMap, Leaflet библиотечку.
На данном этапе код работает следующим образом:
Код:
 
var markers = new L.FeatureGroup();
//Удаляю предыдущие маркеры
map.removeLayer(markers);
        $.ajax({
            url: '@Url.Action("GetHum")',
            success: function (humans) {
                var humansAr = $.parseJSON(humans);
                for (var i in humansAr) {
                    var mark = L.marker([humansAr[i].Latitude, humansAr[i].Longitude])
                    .bindPopup(humansAr[i].ShortName)
                    .openPopup().on("dblclick", function () { ClickOnMark(humansAr[i].Id) });
                    map.addLayer(mark)
                    console.dir(mark)
                }
                map.addLayer(markers)
            }
        });
Вызывается всё это следующим образом
setInterval(GetHumansInformation, 5000)

В результате каждые 5 секунд метки мигают. Удаляются и появляются вновь.

Чего хотелось бы достичь:
плавное перемещение меток.

В чём сложности:
А вот тут целый вагон проблем.
Первое, что хотелось сделать это обновлять координаты точек с помощью SetLatLng.
Также не мешало бы менять координаты только тех точек, у которых эти координаты изменились. Но проблема в том, что мои маркеры не реагируют абсолютно никак на SetLatLng() и GetLatLng().
Хотелось, например, получать координаты, сравнивать. Потом устанавливать новые координаты.
Стал копать почему возвращаются такие результаты. Выяснилось что свойство LatLng объекта по нулям. А где же тогда хранятся координаты? И почему свойство этого объекта не отвечает за его позиционирование. Прикрепляю состояние объекта на отладке.

Итак, пожалуйста, кто-нибудь объясните мне каким образом работает всё это и конкретно эти методы.
Если есть идеи, то как реализовать перемещение меток.
Документация вот. http://leafletjs.com/reference.html#marker
Изображения
 
PinkPink вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вытащить данные с openstreetmap в форму temasey HTML и CSS 0 17.12.2014 23:57
Вопрос по OPenStreetMap и SwingX масштабирование SamsonOff Общие вопросы по Java, Java SE, Kotlin 0 16.04.2013 20:46
Маркеры строки _fynjy_ Общие вопросы Delphi 0 30.06.2011 09:26
Маркеры при компиляции LSergM Общие вопросы Delphi 10 06.11.2009 14:19
Какvправильно хранить маркеры и пасты... Altera Свободное общение 6 19.09.2009 12:57


11:11.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru