GithubHelp home page GithubHelp logo

nextgis / metro4all Goto Github PK

View Code? Open in Web Editor NEW
11.0 21.0 13.0 217.28 MB

Metro navigation and accessibility

Home Page: http://metro4all.org

License: GNU General Public License v2.0

CSS 19.81% JavaScript 43.08% HTML 30.22% Perl 0.63% Python 5.81% Shell 0.07% Smarty 0.33% Batchfile 0.05%

metro4all's Introduction

Metro4All - Project is closed, feel free to reuse data

http://metro4all.org

Subway navigation and accessibility app.

Screenshot_1

Now available for: Amsterdam, Glasgow, Ekaterinburg, Kazan, Kiev, Lausanne, Minsk, Moscow, Nizhny Novgorod, Saint-Petersburg, Samara, Volgograd, Warsaw, Novosibirsk, Marseille (upcoming).

Metro4all is:

Separate Android app repository - https://github.com/nextgis/metro4all-android

Separate iOS app repository - https://github.com/nextgis/metro4all-ios

Read more about data structures, running apps, etc. in wiki: https://github.com/nextgis/metro4all/wiki/_pages

License information:

  • Code - GPL v2 or any later version
  • Data - CC-BY-SA 4.0 International

Commercial support

Need to fix a bug or add a feature to Metro4All? We provide custom development and support for this system. Contact us to discuss options!

http://nextgis.com

metro4all's People

Contributors

4ertuk avatar asidarovich avatar bishopgis avatar drnextgis avatar ivanovv avatar karavanjo avatar kinda-me avatar kogor avatar kolesovdmitry avatar krzysztofmadejski avatar nikitafeodonit avatar simgislab avatar suntehnik avatar trolleway avatar zverik avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

metro4all's Issues

Марьина роща - северный выход

Здравствуйте! Ваша деятельность очень важна и полезна. Поэтому хочу вас проинформировать: я проложил маршрут от Марьиной рощи до любой станции и на северном входе он выдал информацию о том, что отсутствуют наклонные поверхности и рельсы с рампами. Так вот, на самом деле до эскалатора метро можно спокойно добраться по пандусам, которые есть как на улице, так и в вестибюле. Наклон небольшой и все сделано качественно. Это вообще один из самых удобных входов в метро. Сам каждый день на самокате вкатываюсь прям до турникетов. Поэтому думаю стоит поправить, ведь кого то это может заставить остаться дома, когда старый дедушка на самом деле может легко спуститься в метро.

http://metro4all.ru/ru/msk/#stat-start=217&portal-in=17270&stat-end=113&portal-out=19530

Баг в ФФ

В firefox 21.0 при старте не отображается карта и выпадающие списки с названиями станций.

firefox

При этом, если пройти по ссылке, например из бага с IE (#24), то все нормально:
firefox1

Подпись под миникартами

Мелким шрифтом

"Нажмите на значок входа, чтобы его выбрать"
"Нажмите на значок выхода, чтобы его выбрать"

Три киевских

Маршрут - Молодежная-Академическая, почему Киевских 3 и для двух показывается инфа по переходам?

Должна же быть одна пара:
Киевская (арбатско-покровская) - Киевская (Кольцевая) и соответственно один набор цифр для нее.

е/ё в поиске

Черная/Чёрная, Савеловская/Савёловская... Буквы должны быть идентичны, люди жалуются.

Закрыть один из выходов на ВДНХ

ВДНХ. Все бы ничего, но там один выход закрыт аж до 1 июня 2014 года, а ресурс спокойно ставит зеленую галку. Надо бы как-то это тоже отражать.

Видимо стоит добавить поле для выхода "работает/не работает"

Экономия места на экране при раскрытии клавиатуры в выборы станций

У меня не самый маленький телефон (HTC Incredible S), но при быстром поиске со вводом у меня очень сложно увидеть что же нашлось.

Варианты:

  • при открытой клаве скрывать надпись "входы конфликтующие..." она уж точно не нужна
  • оптимизировать раскладку, например поле где иконка и Куда занимает уж больно много места
  • слепить вместе строку где Куда и А..Я..Линии и т.д.

screenshot_2013-10-17-16-13-13

Добавить в graph.csv номера линий

Одна и та же станция может входить в несколько линий. Например, «Технологический институт» в Петербурге. Поэтому обычный формат «какая станция идёт за какой» здесь неудобен: за одной и той же станцией идут две станции разных линий, и нужно разобрать, какая какой принадлежит.

Виртуальные станции здесь не годятся, поскольку повлекут удвоение в выпадающем списке станций.

Запутанный механизм взаимодействия фронэнда на php и бэкэнда на python

Насколько я могу судить по коду фронтэнда, он сейчас выступает в роли прокси к бэкэнду для URL начинающихся /ajax/, но там жестко закодирован адрес девелоперской версии бэкэнда на порту 8088. Помимо этого, где-то в коде прописаны URL бэкэнда как на порту 8088, так и 8087.

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

Сейчас же все завязано на бэкэнд, который запущен у меня в screen сессии. У кого он был запущен ранее, я не знаю, но днем все упало из-за того, что бэкэнд отвалился.

Веб-сайт пишет неправильные углы наклона

http://metro4all.ru/ru/spb/#stat-start=4&stat-end=5&portal-in=1053&portal-out=1060
На всех входах на Ленинском проспекте 1-2°, на выходе в Автово — 2°. Данные https://github.com/nextgis/metroaccess/blob/master/data/spb/portals.csv (см. строчки по этим двум станциям в начале) говорят обратное. Явная ошибка где-то.

Направленный граф

Сделать в graph.csv направленный граф: то есть, для N;M почти везде потребуется M;N. Это позволит смоделировать станции вроде Китай-города и Технологического института. И лучше считать перегоны с разными интервалами для разных направлений, если такие существуют.

prepare_portals_data.py util enhancement

  1. В пустых полях необходимо ставить 0, а не пустую строчку, а то у меня парсер спотыкается.

Например, не ";;" а ";0;"

  1. Знаки вопроса, да по-хорошему, и все не цифровые знаки заменять на 0

Например, не ";?;" а ";0;"

Возможно в других утилитах необходимо сделать тоже самое.

Структуры данных

Повторил все таблицы для Петербурга, в процессе возникло несколько замечаний. Предлагаю:

  1. colors.csv: файл удалить, стобец color добавить в lines.csv
  2. stations.csv: переставить столбцы: id_station;id_line;name (как в lines.csv)
  3. stations.csv: добавить столбцы lat;lon
  4. graph.csv: переименовать cost в minutes
  5. portals.csv и interchanges.csv: переименовать min_width в max_width
  6. portals.csv и interchanges.csv: смысл столбцов lift и lift_minus_step непонятен, добавить описания в вики
  7. portals.csv и interchanges.csv: добавить столбец date, дату последней проверки
  8. interchanges.csv: после идентификаторов добавить столбец name, как в portals.csv

Заменить подписи для препятствий

Пересмотр структуры для порталов и пересадок

Порталы и пересадки — суть одно и то же: пешеходный переход из точки A в точку B. Для пересадок A и B — идентификаторы станций, для порталов B — выход. При этом ограничения по направлению важны там и там: например, между станциями на пересадке может быть однонаправленный эскалатор.

Таблица portals.csv будет отдана только под описание выходов: останутся столбцы id_entrance;name;lat;lon. Привязывать выходы к станциям возможно не везде, но для удобство в поле name можно хранить название станции (я так и делаю).

Идентификаторы выходов должны быть в одном пространстве с идентификаторами станций, т.е. не пересекаться с ними. Это можно сделать постобработкой данных google docs.

Таблицу interchanges.csv нужно переименовать в routes.csv (так проще), состав колонок до max_width (см. #18) будет таким: id_from;id_to;direction;name. Здесь идентификаторы могут быть как станций, так и выходов. Кроме того, могут быть фиктивные идентификаторы для обозначения промежуточных точек: например, для выходов в подземные переходы можно разбить путь до двери и путь до поверхности.

При необходимости (хотя есть ли она?) можно добавить таблицу для фиктивных идентификаторов virtual.csv со столбцами id_virtual;name.

число ступенек на Каховской указано одинаковым, на самом деле оно различается

via shurshur

http://metro4all.ru/ru/msk/#stat-start=26&portal-in=16180&stat-end=11&portal-out=16180

и

http://metro4all.ru/ru/msk/#stat-start=26&portal-in=16210&stat-end=11&portal-out=16180

число ступенек на Каховской указано одинаковым, на самом деле оно различается, в первом в переход спускаются 27 ступенек, во втором - 30+4

Android: Не показываются выходы станции "Крестовский остров" в Санкт-Петербурге

Для повторения бага:
открыть приложение в АНдроиде
Выбрать вверху из списка "Санкт-Петербург"
Нажать на кнопку "Выберите станцию"
Пролистать список до станции "Крестовский остров"
Нажать на название станции в списке
При нажатии не раскрывается список выходов.

Не устанавливается на планшеты

В google play пишет:
Окончательная версия APK-файла должна соответствовать следующим требованиям:
Используется все пространство на экране планшетного ПК.

На Nexus 10 пишет что пакет подписан не правильно. Хотя при установке из eclipse проблем нет.

Позиционирование устройства на станции метрополитена по БС

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

  • getNeighboringCellInfo()
  • getCellLocation()

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.