Валерий Махорин
Заказчик Валерий Махорин Mahor | FL.RU

Валерий Махорин

На сайте 16 лет и 2 месяца (заходил 12 лет 6 месяцев 24 дня назад)
0
148
Рейтинг
148
Все (1)       Заказы (1)        Вакансии (0)       Конкурсы (0)
Разместить заказ
20 Апреля 2011
По договоренности
Требуется создать поисковую программу, которая будет находить совпадение маршрутов попутчиков (пассажира и водителя). Движения пассажира будут в виде точек – Широты и Долготы посадки и высадки. Например

46.46117, 30.70489 (посадка пассажира в начале движения)
46.48109, 30.73991 (высадка пассажира в конце движения)

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

46.46117, 30.70489 (начало движения водителя)
46.46093, 30.71107
46.46090, 30.71571
46.46394, 30.72098
46.46740, 30.72656
46.46909, 30.73038
46.47328, 30.73086
46.47736, 30.73163
46.47695, 30.73772
46.48115, 30.73849
46.48109, 30.73991 (конечная точка водителя)

Необходимо, чтобы программа находила сходство маршрутов и, в случае совпасения вариантов, выдавала на сайт сохранённый в базе айфрейм ранее записанный пассажиром или водителем с карт Google Maps в таком виде:

<iframe width="425" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="maps.google.ru/maps?f=q&s... /><small><a href="maps.google.ru/maps?f=q&s..." style="color:#0000FF;text-align:left"> Просмотреть увеличенную карту</a></small>.

Нюансы:
1) пассажир может подсесть к водителю не обязательно в начальной-конечной точках. Соответсвие может найтись и по трассе (в промежуточных точках).
2) необходимо учитывать "шаговой доступности" для посадки-высадки. Разница в один квартал (примерно) составляет разницу в 0,006
Например есть пара ШиД
46.46085, 30.70487
желательно включить в охват поиска квадрат в котором эта ШиД будет в середине. То есть в любую сторону нужно будет пройти один квартал что бы сесть в машину или заехать за пассажиром. Может попробовать создать алгоритм поиска, чтоб например,
если пользователь вводит свою начальную точку в виде 46.46085, 30.70487 то
точку 46.46085 рассматривать как диапазон между (46.46085-0.006) и (46.46085+0.006)
аналогично с долготой. Тогда точная цифра будет "в коробочке" и в выдаче будет больше вариантов (см приложение-рисунок).
3) Необходимо чтоб учитывалось направление маршрута (очередность цифр в столбике будет постоянным – начало движения всегда идёт в верхней цифрой и окончание нижней).

На совпадения будут накладываться следующие ограничения:
1) в поиске будут участвовать только связка водитель + пассажир (не водитель +водитель или пассажир+пассажир)
2) времени начала движения (поиск по умолчанию +- 15 минут от старта). Если, в поиске по умолчанию не найдётся подходящей пары, то выскочит менюшка выбора в которой при помощи ниспадающего окна можно будет увеличивать интервал поиска.
а) точное +- 30 минут в) точное +-сутки (для разовых дальних поездок).
3) поиск среди регулярных или разовых поездок.
- Регулярные, те , которые будут помечаться галочками по дням недели
а) рабочие минус выходные
б) выходные минус рабочие
с) рабочие плюс выходные дни

Прошло времени с момента публикации: 13 лет 7 месяцев 6 дней 16 часов 14 минут
Раздел: Программирование / Базы данных
Наши партнеры
Сведения об ООО «Ваан» внесены в реестр аккредитованных организаций, осуществляющих деятельность в области информационных технологий. ООО «Ваан» осуществляет деятельность, связанную с использованием информационных технологий, по разработке компьютерного программного обеспечения, предоставлению доступа к программе для ЭВМ и является правообладателем программы для ЭВМ «Платформа FL.ru (версия 2.0)».