HPC.ru lite - Все форумы
Форум: АВТОСПУТНИК - персональная навигация
Тема: Возможность внесения изменений в карты. Как у конкурентов?
Страницы: 1 [2]

[Ответить]
shadowizard [16.02.2008 02:15] :
И.Ю.
Слушайте, включите уже голову!
И, сделав это, ответьте на вопрос: как можно заполнять поля в базе, не имея привязки к ее ячейкам? Подсказываю: от СМИлинка приходят данные о загруженности ограниченного числа участков московских дорог (800 с чем-то, кажется) - и как прикажете АС отличать один из них от другого?
Да и, согласитесь, бред это - динамически править файл с картой. Наверняка технология пробок организована по-другому - на тех ребрах/узлах графа, данные о которых приходят от СМИлинка, стоит признак: смотри в пробочный файл, участок номер такой-то. А на других ребрах и узлах карты такого признака нет - что логично: СМИлинк пока работает только в масштабах Москвы, а больше присваивать "имена" ребрам и узлам графа некому. По крайней мере, НС такой самодеятельностью заниматься не будет точно: им потенциальные проблемы со СМИлинком не нужны.
Разумеется, можно было сделать по-другому - присвоить каждому узлу/ребру графа свой уникальный ID и делать таблицу трансляции - какой участок в карте соответствует какому участку данных СМИлинка. И это было бы более универсально, согласен. Но... кому охота делать лишнюю работу? А в преспективе еще и переделывать ее - например, когда в Росии таки заработат TMC. Вот народ из НавСистем и пошел по пути наименьшего сопротивления - подстроив свою карту под СМИлинк. И поставив тем самым крест на всей затее с запретами.
И.Ю. [16.02.2008 06:20] :
Опять же - что значит "на тех ребрах/узлах графа, данные о которых приходят от СМИлинка, стоит признак.."? Если я правильно понимаю, речь у Вас идет об основной базе данных и, следовательно, она неоднородна - часть записей другого формата. Что-то сомнительно.
Если Ваше предположение верно, получается структура базы с полями переменной длинны. Конечно и такое можно реализовать, но скорость обработки будет заметно меньше.
В своей предыдущей программе PGP Moscow тот же народ из НавСистем как-то уживался из с запретами и с пробками от того же Смилинка. По-вашему получается, что в АС на это пошли только из-за увеличения покрытия с Москвы на всю Россию. Опять же сомнительно, поскольку база POI при таком подходе явно основной потребитель памяти, а никак не пара байт на каждую дорогу.

P.S. Мне интересно разобраться в сложившейся ситуации, но если Вы считаете меня безнадежно тупым, то прошу просто не отвечать на мои сообщения. Это будет лучше, чем скатываться до банальных оскорблений. Все же я надеюсь, что я не давал Вам для этого повода (я имею ввиду оскорбительный тон по отношению к Вам).
Напомню, что это форум пользователей программы АС, а не разработчиков.
shadowizard [16.02.2008 21:32] :
И.Ю.
А я, в свою очередь, напомню, что я - не разработчик и даже не пользователь АС, мне и iGo вполне хватает. На этоф форуме я же убиваю свое свободное время, объясняя всем и каждому очевидные вещи.

ОК, начнем с самого начала. Итак, ребро или узел графа представляет из себя элемент базы данных, содержащий некоторое количество полей, этот самый узел или ребро описывающих. Одно из ключевых полей - вес, опираясь на значение которого алгоритм прокладки маршрута и принимает решение о [не]целесообразности включения данного ребра/узла в маршрут.
Очевидно, что значение веса элемента динамически меняется при получении информации о заторе или пробке на нем. Реализовать это можно двумя путями: либо менять значение непосредственно в базе, либо дополнив элемент полем, в котором содержится "имя" даного элемента в файле пробок, приходящем от СМИлинк.
Думаю, не надо быть семи пядей во лбу, чтобы понять, какой из путей выгоднее. Явно ведь перелопачивать всю базу, меняя значения весовых полей при приходе новой информации о пробках, будет медленнее, чем с той же частотой обновлять некую вспомогательную БД, информация из которой будет "подсасываться" по мере необходимости, а именно - при [пере]прокладке конкретного маршрута. Число участков в котором явно меньше тех восьми сотен, информацию о которых предосталяет СМИлинк - следовательно, и работать такая конструкция будет быстрее.
Но вот тут-то нас и поджидает засада. Казалось бы, чего проще, пропиши всем элементам графа уникальные "имена" для базы пробок - и ставь через эту базу запреты вручную сколько влезет! Однако - если для Москвы такое "именование" уже есть и используется (договорился ли СМИлинк с ГеоЦентром о едином формате или же производится трансляция - мне неведомо), то для других городов его просто нет. А присваивать идентификаторы, что называется, от балды никто не хочет - чтобы не иметь потом проблем с пересечениями и совпадениями и не делать двойную работу. В картосновах от ТелеАтласа "именования" также нет - они получают эти данные от TMC, а ни один из российских городов там не зарегистрирован. Брать же на себя задачу если не глобальной регистрации улиц российских городов в базе ТМС, то хотя бы создания аналогичной внутрироссийкой базы, никто не хочет - ни НавСис, ни СМИлинк, ибо геморроя много, а финансовой отдачи нет.
Вот мы и получаем то, что имеем - карту России с "именами" только элементов московских улиц и, соответственно, возможностью ставить запреты только по Москве. Но если с PGPS ничего страшного в этом не было, ибо карта за пределы московской области практически не выходила и в каком-нибудь Пскове или Смоленске запретить что-либо было невозможно чисто физически, то в АС другие города уже есть. И невозможность выставлять запреты по улицам этих городов на фоне таковой возможности для Москвы выглядеть будет крайне негативно для региональных потребителей, которые вряд ли пойдут на этот форум читать оо объективных причинах, а просто пошлют "зажравшихся москвичей" куда подальше. Вот и не стали делать запретов ни для кого, ожидая того светлого дня, когда "поименованы" будут все ребра и все узлы дорожно го графа по всей России.

Надеюсь, я доступно объяснил?
Kollega [18.02.2008 19:38] :
shadowizard
Пишешь ты много и умно, но неверно. У данной проблемы есть совершенно простое решение, это еще один лишний слой доступный для редактирования пользователем, в котором и можно делать все изменения в дорожном графе и который будет считаться главенствующим. Что думаю и будет реализовано в технологии MapShare.
Заранее говорю, что не надо меня "лечить", так как сам работаю хоть и юристом, но в области картографии.
shadowizard [19.02.2008 12:48] :
Kollega
Не смешно.
"Лишний слой, доступный для редактирования" - извините, слой чего? Слоев-то у карты много - ландшафтный, строений, дорог, POI, собственно дорожный граф... который, кстати, тоже так легко не поредактируешь: надо ж и связность учесть, и вес не с потолка проставить...
Так что, Kollega, лучше приведите сюда своих коллег, которые непосредственно электронной картографией занимаются - и я с удовольствием выслушаю мнение компетентных специалистов.
И.Ю. [20.02.2008 02:27] :
Про механизм работы с пробками - очень понятно и обстоятельно, правда я все больше про ручную простановку запретов на проезд...

А с ручными запретами (в отличие от пробок), как мне кажется, есть принципиальные особенности:

1. Эта информация достаточно статична и вполне допустима правка самой базы. Хотя ничего не исключает создания специальной базы запретов и работа со ссылками на эту базу, все равно она будет требоваться только при прокладке маршрута.

2. Никакой разработки специальной базы кодов дорог в общероссийском масштабе тут не нужно. Информация о пробках является внешней к программе, готовится другой службой и в этом случае действительно приходится договориваться об уникальных идентификаторах дорожных участков, т.к. передавать в кажом анонсе текстовое название города и улицы явно неприемлемо. Запрет же проставляется самим пользователем, глядя на экран устройства, т.е. сама улица уже идентифицированна, любая нужная кодировка может быть локальной и ни с кем не согласованной.

Когда я писал ранее, что в АС уже есть реализованный механизм работы с пробками, я имел ввиду, что достаточно разработать алгоритм простановки этих весов запретов, а вот механизм объезда уже готовый использовать.

Кстати, интересно, АС держит в оперативной памяти всю базу карты России, или используется некий аналог страничного обмена (как в механизмах виртуальной памяти ОС)? Если правильно последнее предположение, то больших проблем с увеличением кол-ва полей в базе быть не должно.

С надеждой на плодотворный диалог. И.Ю.
shadowizard [20.02.2008 10:51] :
И.Ю.
Так в том-то и дело, что уже существует и работает механизм учета пробок и прокладки маршрута мимо них! Именно поэтому никто не станет создавать второй механизм - редактирования пользователем непосредственно карты, да и чревато это... любая ошибка - и карту придется восстанавливать из бэкапа, а если его не делалось - то из заводской копии. Что в полевых условиях может оказаться проблематично, а то и невозможно.
Гораздо проще и эффективнее использовать для расстановки запретов уже существующий "пробочный" механизм, но... во что тут все утыкается - я уже написал. А в итоге - тупиковая ситуация...
[Ответить]
[< Назад]