LINUX.ORG.RU

metromap 0.0.7


0

0

metromap - это простая программа, написаная на pygtk+2, для поиска и отображения кратчайших по времени путей на картах метро. "В поставке" есть карты Московского, Питерского и Киевского метро. Другие карты можно взять с сайта программы pMetro (http://www.alar-2.ru/Boris/pMetro/). С картой Лондона, правда, работать не будет =)

>>> Домашняя страница

★★

Проверено: Demetrio ()

Чего народ wxWidgets не любит? Опять ptgtk...

mst_72
()
Ответ на: комментарий от Cybem

поддерживаю

под линукс вообще есть движки карт кроме gpsdrive?

anonymous
()

о алар-2 оч. хорошо знакомая фирма:)

anonymous
()

Все правильно. надо дать в массы delphi(т.е. python). поднять количество пользователей линукс и вуаля, получаем кучу нужных программ.

anonymous
()

$ ./metromap.py
Traceback (most recent call last):
File "./metromap.py", line 89, in ?
CITY = citylist[0]
IndexError: list index out of range

anonymous
()
Ответ на: комментарий от anonymous

а как указать ему на запуск не в полном экране? а то бесит очень))

anonymous
()

А че нормально! Вот только если уж афтар пишет, что карта Москвы включена в релиз, то не плохоб было бы, блин, так и сделать! ...или хоть ридми написать как карты прикручивать, а то еслиб не Liandr хрен бы разобрался.

anonymous
()

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

anonymous
()

А для Лондона это прога не нужна - есть travel planner,
толька он про все знает, и сколька пешком до остновки, в курсе про автобусы, поезда, экспрессы...
Ну показывает иногда глупости, но в целом ничего даже :-))

tukan
()
Ответ на: комментарий от Cybem

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

anonymous
()

О здорово! В сизиф положите?

anonymous
()
Ответ на: комментарий от tukan

>А для Лондона это прога не нужна - есть travel planner, толька он про все знает, и сколька пешком до остновки, в курсе про автобусы, поезда, экспрессы... Ну показывает иногда глупости, но в целом ничего даже :-))

А сцука Ливингстон штрафы поднимает до двадцатника...

Хотя мне до лондона 2.5 часа на поезде -) Ты в какой части обитаешь?

PashaKustov ★★
()
Ответ на: комментарий от PashaKustov

А ты как, штрафы постоянно платиш, билеты не покупаеш? :-))
Два с половиной часа - это дофига, 45 мин езды на поезде стоит 10 фунтей, так что тебе может дешевле штрафы платить:-)
Я живу там на востоке, 3 зона.

tukan
()

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

mit
()
Ответ на: комментарий от mit

Все равно, в график то они как то укладываются, с какими то огрехами.
Для автобусов - это да, проблема, трафик и все дела, а метро и поездам гораздо легче.

tukan
()

Чтобы прога запахала, требуется.

1) распаковать тарбол с программой в дирку (например ~/metromap).

tar -xzf --directory ~/metromap metromap*.tar.gz

2) создать директорию ~/.metromap и положить в нее файл под названием "rc" со след. содержанием:

$cat ~/.metromap/rc
city=Moscow
xsize=800
ysize=520

3) cоздать директорию ~/metromap/data/Moscow
4) скачать (пиксельную!) карту http://www.alar-2.ru/Boris/pMetro/pMetroM.zip
и распаковать файл Moscow_pix.pmz в эту директорию. Это обычный зип.

unzip pMetroM.zip
unzip Moscow_pix.pmz


5) лично я облагородил карту убрав концы строк и сконвертировав ее в utf:

perl -pi -e "s|\r||g" *.txt *.ini *.vec
for i in `ls *.txt *.ini *.vec`; do iconv -f cp1251 -t utf8 -o $i.utf $i; done
rename .utf "" *.utf

но вроде как это необязательно...

6) раз уж сконвертировали карту, надо перекинуть и прогу в юникод - поменять все koi8-r и cp1251 на utf8.

perl -pi -e "s|koi8-r|utf8|g" *.py

7) можно запускать metromap.py...

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

anonymous
()

спасибо. прикольно! :-)

poet
()
Ответ на: комментарий от anonymous

сбывается прогноз что питон как и делфи станет источником кучи ламеров-недопрограммеров, которым не хватило ума освоить с\с++, и засилья кривых поделий написаных ими

anonymous
()
Ответ на: комментарий от anonymous

Traceback (most recent call last): File "./metromap.py", line 91, in ? MetroMap = ReadMap(DATAPATH + CITY + '/' + MAPINI) File "/home/fedor/metromap/modules/ReadMap.py", line 21, in __init__ self._makeGraph() File "/home/fedor/metromap/modules/ReadMap.py", line 130, in _makeGraph d = float(transfers[4]) IndexError: list index out of range

samy_volosaty ★★★★★
()
Ответ на: комментарий от anonymous

> сбывается прогноз что питон как и делфи станет источником кучи
> ламеров-недопрограммеров, которым не хватило ума освоить с\с++, и
> засилья кривых поделий написаных ими

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

питон позволяет ламерам писать программы, вот и вся фантастика.

anonymous
()
Ответ на: комментарий от anonymous

Наверное не ламерам, а новичкам (ламер это вроде как оскорбление, а оскорблять это не есть хорошо). По поводу не хватило ума освоить с/с++, сразу видно, что если человек упоминает в одном контексте два достаточно разных языка программирования, насколько "хорошо" он ориентируется в предмете. Программ, написанных на С++ людьми которым вообще не стоит программы писать, более чем хватает. А программа написанная новичком на С++, как правило представляет собой куда более печальное зрелище, нежели программа написанная новичком на Python.

sigill
()

пока карта казанского метро не появится пользоваться не буду

anonymous
()

"Данные" я забыл упаковать, простите. Положил 0.0.8, с картами. Про день/вечер - в "данных" отличие есть только во времени ожидания. Я, пока, всегда считаю, что едем днем. Про "инструкцию по установке" - rc руками создавать не надо. И данные перекодировать не надо. Нормально читаем и в koi и в cp1251. Про "Прога отчаяно сыра и непрофессионально написана." - в чем "сырость"? (Про непрофессионализм помолчу). За "ламеров-недопрограммеров" тоже спасибо.

drF_ckoff ★★
() автор топика
Ответ на: комментарий от samy_volosaty

Посмотри в Metro.ini в карте.

Там в одной строке пересадок (transfers) (по моему Полежаевская,) отсутствует последний параметр - количество пересадок. Поставь 1.

anonymous
()
Ответ на: комментарий от drF_ckoff

Сырая, потому что нехорошо, когда прога молча падает раз за разом.
Для перехвата исключений существует try except или finally.
нет даже проверки версии pygtk2

Не был бы это питон с его элементарной отладкой - хрен бы ее запустил бы...


Непрофессиональна, потому что вот так развешивать гирлянды веток в своем самописном парсере просто глупо. Есть готовый модуль.

Для разбора текстовой строки из ini есть регекспы. Всего делов то -

transfers_re=re.compile("(.*),(.*)(.*),(.*)")

result=tranfers_re.match(string_from_ini_file)

if result is None:
print "гамно эта ваша %s !" % string_from_ini_file
else:
transfers.append(result[0],result[1],result[2],result[3])

и сразу тебе и проверка на валидность и отладка и парсинг. А у тебя гирлянда из split, strip без дебага и юез валидации...

ну и все такое...


anonymous
()
Ответ на: комментарий от anonymous

Она не падает, она выходит с сообщениями об ошибках, которые для меня намного более информативны, чем то, что бы я там мог сам наprintать. Про ConfigParser - может и перепишу со временем на него. "В строчках кода" это будет ненамного меньше, чем то, что есть. Так что _оба_ способа имеют право на существование. Про "регекспы" - "Когда программист видит проблему - он думает - Ха! Я решу ее с помощью регулярного выражения! - Теперь он имеет две проблемы".

drF_ckoff ★★
() автор топика
Ответ на: комментарий от anonymous

"Последний параметр" - время. Не вижу я там нигде его отсутствия. А если и отсутствует - это надо автору pMetro сообщать.

drF_ckoff ★★
() автор топика
Ответ на: комментарий от anonymous

Не. У ConfigParser имена секций case sensitive. Нафик.

drF_ckoff ★★
() автор топика
Ответ на: комментарий от sigill

ага. язык программирования делает ламера умнее. научная фантастика в чистом виде. три раза ха собственно что вас так задело в моем посте? ;))

anonymous
()
Ответ на: комментарий от anonymous

Меня ничего не задело, я достаточно много пишу как на Python, так и на Си. Язык программирования за счёт более простых конструкций и высокоуровневых типов данных (встроенных в язык), а также большого числа стандартных библиотек, позволяет _новичку_ писать более компактные и надёжные программы. А ламеру ничего не поможет, ни язык программирования, ни дружеский совет.

sigill
()
Ответ на: комментарий от anonymous

Говорят, что, если человек активно демонстрирует "гомофобию", то он является латентным пидорасом. Это я к тому, что "ламерами" всех обзывают _только_ ламеры.

drF_ckoff ★★
() автор топика
Ответ на: комментарий от tukan

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

VitalyLugovsky
()
Ответ на: комментарий от anonymous

Так кривых поделок на C/C++ - всё равно на порядки больше, чем на чём либо ещё.

VitalyLugovsky
()
Ответ на: комментарий от tukan

BTW:

>А для Лондона это прога не нужна - есть travel planner,

А для покета версия есть ?

А то в прошлом году ездил с MetrO 5.3.0 Нефига неудобно :(

sS ★★★★★
()
Ответ на: BTW: от sS

BTW:

s/5.3.0/5.2.5/g

sS ★★★★★
()
Ответ на: комментарий от drF_ckoff

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

Mitrich
()
Ответ на: BTW: от sS

Что то видел под WAP кажется, но не пользовался, как бы нафиг нада, из дома все посмотрел и разобрался.
В любом случае, Pocket PC - не кашерна!

tukan
()
Ответ на: комментарий от mit

Да я особо и не обращаю. "Порта" от меня ждать бесполезно. Я и rpm собирать не горю желанием. Я новость сюда поместил как раз в надежде, что кто-нибудь "присоединится" и поможет делать всякую фигню, которая мне неинтересна. Типа переводов, написания документации, упаковки в пакеты, порты, "ебилды", сайт...

drF_ckoff ★★
() автор топика

Тут такая фича: на монорельсовой дороге между любыми двумя рядом стоящими станциями получается 23 минуты, а между любыми двумя станциями через одну -- 26. Что-то странно это выглядит. Хотя, признаюсь честно, я эту монорельсовую дорогу вживую ни разу не видал, мало ли, может, это там такая магнитная аномалия :)

ikm ★★
()
Ответ на: комментарий от sS

Конечно онлайновое, а вы как хотели, если какие то задержки на линии,
или еще что то ложанулось, как вы хотите об этом узнать?
А если интересно как в принцыпе попасть и А в Б, то нафиг PDA юзать,
дома посмотрели и вперед.
А самое просто, звониш и все спрашиваеш по телефону, и ни инет, ни PDA ниче не нада, и услуга эта бесплатна, платиш толька за звонок локальный!

tukan
()
Ответ на: комментарий от ikm

[Line13]
Name=Монорельс
DelayDay=20

Дальше объяснять?

drF_ckoff ★★
() автор топика
Ответ на: lor рулит от drF_ckoff

> Ндя. Прикольно тут с куками дела обстоят...

Это не с куками, это ты свой броwсер неправильно отконфигурировал, сказав, чтобы он не только пароль, но и заглавие помнил.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.