Papazol » 08 ноя 2011, 23:52
Возможно, я уже отстал от жизни, когда тестировал ggcozi, было именно так, как я написАл. Больше я её не пробовал, может, автор внёс изменения, улучшающие работу. Но ведь проверить это очень просто. Откройте в OziExplorer'е карту, привязанную с помощью ggcozi, и проверьте привязку. Если маркеры опорных точек стоЯт точно на углах карты (а не всего изображения!), привязка точная. В противном случае... Вообще-то почему-то не верится, что такая маленькая программа может автоматически находить углы карты.
Появилось время заняться картами ggc, и вот что обнаружилось. Есть где скачать листы (правда, в основном, однокилометровки и немного 500-метровок). Есть возможность их привязать (об этом чуть позже). И есть нужда их склеить в единое полотно, а затем порезать на тайлы, естественно, в Global Mapper'е. При склейке листы необходимо обрезать. Для этого раньше я использовал ту утилитку, что выложил недавно. Однако она работала в узком диапазоне возможных всяких значений, в частности, масштаб обрабатываемых карт был фиксированным и составлял 25k. И квадраты были ограничены. Решился я эту утилитку переделать, чтоб могла. И вот, теперь можно задавать любые квадраты, начиная с 1М и до 25k (только в северном полушарии, ну их нафиг!), а также пересылать обрезку прямо в Global Mapper. Последняя операция меня весьма напрягала, ибо при её выполнении требовалось внимательно набирать многия цифры. Теперь процесс автоматизирован, чему я весьма рад.
Конечно, не обошлось без ограничений. Поскольку набор горячих клавиш в Global Mapper'е не слишком обширен, многие вещи можно делать только мышью. А это накладывает ограничения при различных размерах экрана. У меня разрешение 1280х1024, с ним это и работает. Да, ещё мой Global Mapper русифицирован...
Итак, процесс следующий:
1. Скачиваем изображения квадратов (с привязками или без).
2. Если без привязок - привязываем, если с привязками - проверяем!
3. Открываем отобранные изображения в Global Mapper'е. Это может быть довольно долгий процесс в зависимости от количества квадратов.
4. Запускаем утилитку.
5. Далее в принципе всё интуитивно понятно. Цель работы - обрезать все загруженные квадраты, чтобы получилось цельное полотно. Рекомендую сначала выбирать квадрат в Global Mapper'е, и только потом в предлагаемой утилитке, в противном случае... ничего плохого не случится, но лучше так.
Теперь о привязке. Будучи приверженцем ручного способа как позволяющего полностью контролировать ход процесса, написАл ещё одну утилитку. Она пишет map-файлы для всех изображений, находящихся в указанной папке. Причём названия файлов этих изображений должны удовлетворять некоторому шаблону (чтобы правильно посчитать координаты углов). Созданные map-файлы называются так же, как соответствующие им изображения. В них правильно прописаны координаты опорных точек привязки (углов). А вот маркеры этих опорных точек поставлены во всех файлах одинаково, и они не совпадают с углами карт. Этот факт требует ручной коррекции привязки. Однако, по сравнению с привязкой "с нуля", не приходится вводить координаты, работа только с мышью.
Есть желание добить программу, чтобы стала универсальной. Так что пока её не выкладываю, как сделаю - сразу выложу.
Не прошло и года. Вот программа, которая пишет map-файлы для найденных в папке изображений. Условия:
1. Формат наименования всех файлов изображений должен быть либо P-40-035-D-c.png, либо P-40-035-G-v.png. То есть, буквы, которыми обозначаются квадраты 50k и 25k, могут быть либо abcd, либо abvg, но только один из вариантов для всех файлов. Расширение файлов значения не имеет, png - это по умолчанию.
2. Можно делать map-файлы для квадратов 1M, 100k, 50k, 25k. Теоретически можно в одной папке иметь разные масштабы, для них будут записаны правильные map-файлы, только это неудобно.
3. Можно добавлять в папку новые изображения, существующие файлы привязок не будут затронуты.
4. Необходима последующая ручная корректировка положений маркеров привязки!
Программа в архиве Program.zip.
- Вложения
-
- Program.zip
- (286.02 KiB) Скачиваний: 244
-
- .zip
- (295.39 KiB) Скачиваний: 225
Последний раз редактировалось
Papazol 09 ноя 2011, 11:36, всего редактировалось 1 раз.
- За это сообщение автора Papazol поблагодарил:
- igel72 (09 ноя 2011, 07:20)