Уже много полезной информации успел почерпнуть. Но от такого обилия информации и возможностей у меня разбежались глаза и не знаю с чего начать. Поэтому задам тут несколько вопросов.
По секрету скажу что я собираюсь писать дипломную работу (специальность Информационные технологии). Одной из интересных тем мне показалось создание интерактивной карты города, которой пока у нас нет.
В общем есть карта в формате Map Info. Мне нужен совет какие инструменты использовать лучше в моей ситуации и сколько потребуется вручную написанного кода для реализации следующих возможностей (в порядке убывания значимости):
1) поиск, отображение объектов по категориям (ну там больницы, автозаправки и т.д. я еще не освоил полностью терминологию поэтому буду называть как могу

2) возможность добавления новых объектов пользователями (с модерацией или без пока не важно)
3) отображать на карте маршруты общественного транспорта (честно я этого на онлайн-картах нигде не видел, может это глупая идея, но она мне нравится

4) подсчет оптимального маршрута (тут варианты: автомобиль, общественный транспорт различного типа)
Как то так. Покопавшись в интернете начал присматриваться к таким инструментам как GeoServer для серверной и OpenLayers для клиентской частей. Прав ли мой выбор и можно ли все это реализовать с помощью этих средств? Что нужно будет написать вручную (С/С++, Java владею. PHP, JS, HTML тоже в некоторой степени) ? MapInfo можно использовать с GeoServer или нужно будет сконвертировать в какойто формат?
Буду рад любому ответу и ссылке (можно и на английском). Мне нужно как можно быстрее оценить время которое необходимо для реализации, чтоб понять что делать а что нет и реально ли это в мои сроки. Поэтому и задаю эти вопросы здесь ибо копание в документациях займет очень много времени. Мне достаточно знать что что-то _можно_ сделать с помощью тех или ихных средств, а _как_ я уже постараюсь разобраться сам. Сложность в том что я пока не совсем разбираюсь в форматах хренения карт (какие данные и как там хранятся) и уже существующих инструментах (колесо как говориться изобретать не только глупо но и вредно).