Для конвертации используются суточные дампы. Поэтому минимальный период при автоматизированном конвертировании - сутки.
Либо “ручками”. Неужели вам лениво? Если да, то к чему этот вопрос к тем, кто занят автоматизированной конвертацией?
Для себя, при помощи liosha, наваял такой скриптик:
#!/usr/bin/perl -w
open my $in, "<:encoding(cp1251)", @ARGV or die "@ARGV: $!";
open my $out, ">:encoding(cp1251)", "@ARGV.err.html" or die;
while(my $line=readline($in)){
if ($line=~m/ERROR/){
$line=~s/\(([0-9\.]*),([0-9\.]*)\)/sprintf("<a href=http:\/\/127.0.0.1:8111\/load_and_zoom\?left=%f\&right=%f\&top=%f&bottom=%f>\($1,$2\)<a>",$2-0.0003,$2+0.0003,$1+0.0003,$1-0.0003)/ge;
$line=~s/WayID=([0-9\.]*)/sprintf("WayID=<a href=http:\/\/www.openstreetmap.org\/browse\/way\/%d>\($1\)<a>",$1)/ge;
$line=~s/RelID=([0-9\.]*)/sprintf("RelID=<a href=http:\/\/www.openstreetmap.org\/browse\/relation\/%d>\($1\)<a>",$1)/ge;
print $out "$line<br>";
}
}
close $in or die;
close $out or die;
Для использования в качестве аргумента указывается МР, содержащий ошибки. На выходе получается хтмл со ссылками на координаты для жосма.
Fortress, а вот было бы клева, если б после фикса список ошибок апдейтился до следующей выгрузки. Например, выделение пофикшенного цветом/шрифтом, перемещение в другой список и т.п.
Шоб куча народу не ломилась чинить починенное.
с вас алгоритм. Или, хотя бы, принцип манипулирования данными. Ну или, если уж совсем не получается, способ проверки, что ошибка исправлена (а не просто “потрогана”)
Как ты себе это представляешь? И кстати, пока народ не ломится исправлять ошибки… К тому же если файл не обновляется неделю, а списка ошибок нет, у кого то это может вызвать дополнительное недоумение…
Мне бы для начала понять, как данные выгружаются.
Вы тащите откуда-то готовые MP-выгрузки или выгружаете с OSM сами?
Если ошибка обозначена как “потроганная” - тянем с OSM нужный бокс и проверяем наличие изменений. Если есть - инициируем очередную выгрузку.
Я, к сожалению, пока слабо это представляю.
Я вижу что на OSM ошибка пофикшена, а при следующем (и, возможно, нескольких последующих) проходе сборки карта не обновляется. И пытаюсь понять, что не так.
Если не обновляется, значит появились новые ошибки. Проход раз в сутки, по алфавиту, за исключением moscow, krasnoyarsk, yakut, Russia которые в конце списка, текущий регион над табличкой выводится, вроде все понятно должно быть.
Я читал. Вот я и не понимаю, ты используешь гислабовские выгрузки или сам выгружаешь с OSM?
По моим наблюдениям, ошибки пофикшены, а следующие пара проходов холостые - карта не обновляется, список ошибок тоже.
Мне каацца, что было бы полезно показывать именно момент начала выгрузки и момент окончания прохода валидатора по ней. Возникало бы меньше дурацких вопросов
UPD: Вот, например, только что завершилась конвертация nizhegorod. Карта не обновилась, ошибки те же. Хотя все они пофикшены.
Значит возникла специфическая ошибка, которую можно обнаружить скачав mp файл себе на локальный компьютер и сделав экспорт в nm2 формат в программе gpsmapedit. Т.е. как я себе представляю логику: если ошибок нет, а nm2 по дате отстаёт от текущей даты, то в osm-err.html пишется соответствующая информация.
PS Т.е. для примера можно взять Забайкалький край, err нет, а дата nm2 файла 24/июн/2011 12:03, значит специфическая ошибка. И в самом деле в районе вея совершенно мне непонятная развязка, кто местный исправьте.
А сама ошибка это примыкание вея с уровнем “-2” (что само по себе странно) к этому вею.
ЗЫЫ Вроде исправил, скоро уведем, насколько хорошо ))
Данные берутся с гис-лаб, т.е. актуальность отстает примерно на сутки или более, т.е. если ошибки исправлены сегодня, то при сегодняшней конвертации они все ещё будут в данных.
Потому, что она есть в другом месте, а для настройки более или менее регулярного обновления нужны регулярные обновления препроцеснутых дампов, которые пока не имеют постоянного адреса и регулярного обновления.
Потому что в один файл они не умещаются. Пермь пока умещается, но (кажется) не на всех девайсах адекватно работает, поэтому были попытки её делить, но сейчас вроде никто не жалуется.