HPC.ru lite - Все форумы
Форум: PocketGPS Pro и MacCentre PocketGPS
Тема: Вариант решения глюков с прокладкой и подсказками!
Страницы: [1] 2 3

[Ответить]
VarAn [01.09.2005 11:54] Вариант решения глюков с прокладкой и подсказками!:
Предлагаю использовать алгоритм не просчета вершин на перекрестках, а принципиально другой принцип построения перекрестков:

Для всех перекрестков нужно составить несколько стандартных шаблонов правильного проезда данных перекрестков и закрепить за каждым перекрестком по одному шаблону.

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

При этом программа при проезде перекрестка не будет пытаться каждый раз анализировать вершины углов, а просто будет выполнять предписанный алгоритм проезда для данного конкретного перекрестка по шаблону.

Этим самым мы снижаем вычислительные нагрузки в программе, улучшаем надежность правильности прокладки маршрута, выдачи подсказок и избавляемся от системы запретов проезда.

В итоге мы получаем карту с графами на дорогах и легко корректируемыми перекрестками вместо существующей системы.

Как Вам этот вариант?
Alligator. [01.09.2005 15:20] :
Боюсь, что я не очень понял

Ты предлагаешь для каждого перекрестка хранить в программе все возможные варианты его проезда + правильную подсказку для каждого варианта?

Если так, то имхо получится слишком много дополнительной информации
BreQwaS [01.09.2005 15:42] :
Почему же? Нужно хранить граф маршрутов. Но это и так есть - именно по этому графу строятся маршруты.

А вот шаблоны - IMHO штука безнадёжная... Не всё под них можно подогнать. Анализ на лету - гораздо более верный подход. Вопрос в том, как сделать его более точным...
Logout [05.09.2005 14:42] :
А у меня проще есть предложение (с точки зрения разработки).

Во-первых, на карте перекрестки должны быть как-либо обозначены. То есть, у вершие входа и выхода из перекрестка должен быть соответствующий признак. У ребер насколько я понимаю такой признак уже есть (коричнеывй цвет стрелок).

Дальше алгоритм такой:
1) Определить точку входа на перекресток
2) определить точку выхода из перекрестка.
3) посчитать угол между ребром перед входом на перекресток и линией, соединяющей точку входа и выхода. По этому углу мы определим правый это поворот или левый.
4) Посмотреть другие точки выхода из перекрестка. Если существует более чем одна точка выхода в том же направлении, то вычислить порядковый номер нужного выхода (для того чтобы сказать "2-й направо" например)
5) Подобрать нужную картинку для подсказки из набора что я приводил ранее (http://www.hpc.ru/pda/board/index.php?p=232569#232569)
6) Выбрать нужный звуковой файл соответсвующий картинке

Единственная сложность которую я вижу - это сложные перекрестки (Тверская застава, Таганская и т.д.), но это не проблема. Просто надо их разбить на несколько перекрестков. ТОгда подсказка будет выдаваться "по шагам", как в другим навигационных системах.

Как продолжение идее, "склеивать" подсказки типа "первый поворот направо затем возьмите левее во второй заезд".
VarAn [05.09.2005 14:49] :
А еще можно отображать на картинке-подсказке предстоящего поворота копию изображения маршрутной линии в изогнутом месте.
BreQwaS [05.09.2005 14:52] :
Угу. А если это roundabout, где если смотреть на угол между входом и выходом - будет поворот налево, а реально поворачивать нужно сначала направо, а потом ещё раз направо?
Logout [05.09.2005 15:00] :
roundabout - это отдельная ситуация (которую я временно вычеркнул из "алгоритма"). Если вы сходите по ссылке в первом письме - то увидите пример картинки с "раундэбаутом".
Подсказка должна быть простая: "n-й съезд с кругового движения".
При этом, картинок достаточно будет 4-х видов:
1) поворот направо по кругу
2) проезд по кругу прямо
3) поворот по кругу налево
4) разворот по кругу.
Выбирается наиболее подходящая картинка из условий точки входа и точки выхода.
Logout [05.09.2005 15:02] :
1) Если б я работал бы в МакЦентре - я б за такую идею метнул бы в вас чем-нибудь тяжелым ИМХО это не так просто сделать.
2) Зачем? У нас же есть уже карта! Картинка со стрелочками предназначена для схематического обозначения маневра. Чтобы раз взглянул и все стало понятно.
gren [05.09.2005 15:22] :
Предлагаю другой алгоритм: поторопить ТомТом скорее выйти в России

все наши обсуждения здесь бесполезны....
BreQwaS [05.09.2005 15:46] :
Боюсь "отдельных ситуаций" будет многовато - вспомните московские развязки.

Более "читерский" вариант - когда приближается хитрая рзвязка и программа не уверена, какие давать подказки, надо говорить что-то типа "впереди сложный перекрёсток" и показывать его на картинке крупным планом - мол, рули как хочешь
[Ответить]
[Вперед >]