RU:Mapgen.pl
Исходная статья: Mapgen.pl. Вы можете закончить перевод.
Если вы знаете английский, то можете помочь нам, переведя часть оригинальной статьи. Общие сведения о переводе статей на русский язык можно найти здесь.
Mapgen.pl | |
---|---|
Автор: | User:Garry68 |
Платформа: | Linux |
Версия: | 1.12 (2010-11-17) |
Язык: | английский |
Исходный код: | http://svn.openstreetmap.org/applications/utils/gary68/ |
Язык программирования: |
Perl |
easy to use cause limited concept |
mapgen это движок рендеринга основанный на Perl, который принимает на входе файл .osm и файл стиля. На выходе генерируется SVG и, при использовании inkscape, PDF и PNG. Текущая версия не работает под Windows.
Также почитайте про Hikingbook.pl, чтобы увидеть, насколько сложные карты для туристических маршрутов или атласы дорог можно сгенерировать автоматически.
Я подумываю о преемнике для mapgen... А вот и он, собственно: Mapweaver
Примеры карт и файлов
Примеры
- Mapgen.pl/samples
- Media:HujeFireMapgen.pdf (карта гидрантов)
- Media:MapgenFrankfurt100000.pdf
- Media:MapgenHessen250000.pdf
- Media:MapgenGermanyNuclear.pdf
Старое
- Media:Mapgen014Hofheim10000.pdf
- Media:Mapgen014Frankfurt10000.pdf
- Media:Mapgen014Helgoland10000.pdf
- Media:Mapgen010Taunus.pdf
Цели
- Простая и быстрая генерация карты, разнообразные выходные форматы
- Быстрое извлечение нужных данных из файлов *.osm (place=*)
- Простая обработка файла стиля
- Street and place directories
- Keep it simple (лишь 2 необходимых параметра для быстрого запуска)
- Keep it powerful (с использованием дополнительных параметров)
Возможности
- проекция Меркатора
- создание SVG, PDF и PNG за один шаг
- автоматическая генерация карты для указанного населённого пункта (v0.05)
- файл стиля легко создаётся в OpenOffice или MS Excel (просто экспортируем в csv; разделитель полей - пробел, разделитель текста - ")
- поддержка мультиполигонов (v0.06)
- надписи для точек и линий (даже если там несколько значений)
- интеллектуальное размещение надписей для линий и POI (обнаружение коллизий, учёт изгиба линии)
- дополнительная конвертация в PNG и PDF при возможности и при наличии inkscape
- легенда автоматически рисуется в соответствии с файлом стиля (может быть отключена, произвольное размещение)
- опционально может быть наложена координатная сетка
- ещё одна опция для автоматического создания списка улиц и/или POI (с привязкой к сетке); также форматируется в PDF (посредством latex, dvips и ps2pdf - автоматически.)
- данные могут быть обрезаны по границе, что допускает отсутствующие/недостаточные данные в файле osm
- функции масштабирования
- поддержка "мульти-надписей"
- статистика тегов для оптимизации правил
- поддержка маршрутов с остановками и расставленными значками/символами на маршруте
- шаблоны значков для полигонов
- поддержка разной резкости и выходных разрешений
- таблички в качестве надписей
Документация
Подсказки
- если в надписях не видно букв, пожалуйста, увеличьте значение ppc, равное 6. Поставьте -ppc=6.5, например. ppc - количество точек на символ (points per character (at 10pt))
- мой 10" нетбук с разрешением 1024x600 имеет 117 dpi (вы можете использовать это значение в [-scaledpi])
- мой 18" монитор с разрешением 1280x1024 имеет 90 dpi (вы можете использовать это значение в [-scaledpi])
- Acrobat Standard (9) может печатать большие PDF, разбивая их на несколько листов! Даже перекрытие позволяет задать.
- My evince document viewer has problems rendering areas with tile patterns! Use another viewer if problems become visible.
- интересная статья о надписях(англ.)
- производительность: Гамбург (157MB OSM файл) в масштабе 1:50.000 использует 370MB RAM и обрабатывается 22 минуты (включая конвертацию в PDF) на моём маленьком нетбуке
Пожелания / Обсуждения / Идеи
- отдельный тег для табличек вместо надписей
- таблички для точек
- ini файлы для внешнего задания некоторых параметров
- масштабирование мостов/туннелей по мере расширения дороги
- опциональные заголовки на карте
- поддержка Open Sea Map (маяки, буи и прочее)
- [-forceicons] (параметр, который рисует значки и надписи, не заморачиваясь об их порядке)
- blank background for ruler and scale
- использование другой библиотеки проекции для совместимости с Windows
- как видно, легенда может разещаться только в левом верхнем или нижнем правом углу. Было бы замечательно, если бы она размещалась и в остальных углах тоже
- версия для Windows? - насколько мне известно, скрипт запускается под active perl и некоторыми другими реализациями. Или ставьте Virtualbox. Gary68.
- Нет, Geo::Proj4 падает под ActivePerl for Windows --ajoessen
Версии
v1.19 (2 апреля 2011)
- circles also for ways/areas; скоректирована ошибка толщины кругов
v1.18 (1 апреля 2011)
- таблички в качестве надписей
v1.17 (29 марта 2011)
ВНИМАНИЕ! Для данной версии требуется адаптировать файлы правил. Смотрите последний раздел в мануале.
- новые определения пунктиров, более гибкие
- position of ruler, grid labels and scale value changed
- теперь можно настраивать надписи для легенды
Установка и исходники
Поскольку тут набралось много информации на эту тему, она представлена на отдельной подстранице: Mapgen.pl/Installation
Использование
- скачайте область с помощью josm, или на вкладке "Экспорт" на главном сайте, как данные XML. Сохраните её в ту же папку, где лежит mapgen.pl как файл .osm.
- перейдите в папку с mapgen.pl и прочими файлами с помощью команды cd
- предположим, что вы назвали файл "map.osm", выполните следующую команду:
perl mapgen.pl -in=map.osm -style=mapgenRules.csv
- будет создан файл mapgen.svg с вашей картой.
Notes
Если вы правите свой osm файл в josm перед созданием карты, не удаляйте (DEL) объекты, а вычищайте (purge, CTRL+SHIFT+P) их. Точки, которые вы удалили командой delete, всё равно будут нарисованы.
Чтобы увидеть, какие опции доступны для использования (например, отключение легенды, или настройка размера изображения), выполните
perl mapgen.pl -help