RU:Maperitive
Maperitive | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Автор: | Igor Brejc | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Лицензия: | Проприетарная (бесплатно) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Платформ: | Windows, Linux, и macOS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Версия: | 1202 (2011-12-25) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Язык: | английский | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Веб-сайт: | http://maperitive.net/ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Язык программирования: |
C# | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Desktop based |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Maperitive - приложение, которое рендерит карты в реальном времени используя OSM и другие источники данных.
Является преемником Kosmos. О причинах переименования написано в блоге igorbrejc.net
Полная документация (еще разрабатывается) находится по адресу http://maperitive.net/docs/manual (перевод RU:Maperitive_book). Инструкции ниже - это "исследования" первых пользователей и выдержки из писем автора. Они написаны для того, чтобы вы могли уже сейчас что-нибудь делать, пока пишется полная документация.
Вы можете загрузить последнюю версию Maperitive отсюда http://maperitive.net/download/. Имейте в виду что программа все еще находится в стадии бета-тестирования и на данный момент имеет простой графический интерфейс, а также управляется через командную строку.
Установка
Windows
Загрузите последнюю версию Maperitive из http://maperitive.net/download/ и разархивируйте его в любой каталог (наверное лучше удалить номер версии, потому что обновления будут установлены в то же место).
Чтобы запустить программу, просто сделайте двойной щелчок мышью на файле maperitive.exe (вы можете также создать ярлык на рабочем столе)
Ubuntu 11.10
Скачайте zip файл с последней версией Maperitive из http://maperitive.net/download/ и распакуйте в любую директорию.
sudo apt-get install libmono-winforms2.0-cil
chmod +x ./Maperitive.sh
./Maperitive.sh
Проблемы, которые были в 10.04, вроде бы решены.
Ubuntu 10.04
Загрузите последнюю версию zip архива с http://maperitive.net/download и распакуйте его в папку по Вашему выбору (желательно удалить номер версии, потому что обновления будут установлены в то же место).
sudo apt-get install libmono-winforms2.0-cil
chmod +x ./Maperitive.sh
./Maperitive.sh
Debian 10
sudo apt install mono-devel
chmod +x ./Maperitive.sh
./Maperitive.sh
Fedora 14
Загрузите последнюю версию zip архива с http://maperitive.net/download и распакуйте его в папку по Вашему выбору (желательно удалить номер версии, потому что обновления будут установлены в то же место).
Выполните от имени рута
yum install mono-winforms
Перейдите в директорию, куда вы распаковали Maperitive и сделайте файл исполняемым
chmod +x ./Maperitive.sh
Для запуска Maperitive наберите
./Maperitive.sh
Загрузка данных
Вам потребуется файл данных в формате OSM. Есть несколько способов получить его:
- загрузить определенную область в JOSM и затем выполнить команду File>Save As, для сохранения файла
- выбрать нужные bz2 файлы по адресу Geofabrik
Хорошая идея - настроить папку для Ваших рабочих файлов с подкаталогами (например): data, rules, scripts, outputs.
Самые последние примеры предполагают, что Ваши данные находятся в файле c:\users\igor\documents\osm\maperitive\data\test.osm
Основные инструкции
Для ввода команд, нажмите на серую полосу внизу экрана (или просто нажмите Enter) - полоска станет желтой. Некоторые команды также доступны из меню. Заметьте, что программа Maperitive требует ввода только стольких букв, чтобы они однозначно идентифицировали команду и заполняет то, что может, сама, по мере ввода.
По умолчанию, на заднем плане показываются плитки Mapnik-а (при наличии соединения с Интернетом). Вы должны переместиться, чтобы попасть на область Ваших данных. Например, эта команда переместит Вас в центральный Лондон:
move-pos x=-0.11 y=51.52
Вы можете отобразить данные поверх фона Mapnik-а, или можете использовать пустую страницу:
clear-map
Присвойте данным отдельную папку, это позволит сделать ее папкой по умолчанию, например:
change-directory c:\users\igor\documents\osm\maperitive\
Чтобы загрузить данные, нужна команда:
load-source data\test.osm
Карта будет загружена и отрисована, с использованием правил по умолчанию (правила находятся в файле rules\default.txt, который шел с Maperitive). Эти правила дают изображение, подобное обычной отрисовке Mapnik-а.
Сохранение момента для потомства:
export-bitmap zoom=15 file=outputs\test.png width=3000 height=3000 scale=3
Примите поздравления! Вы отобразили карту!
Изменение правил рендеринга
Для изменения правил рендеринга, откройте активные правила, с сохранением копии в вашу рабочую папку (лучше всего File>Save As путь_к_папке_с_правилами\test.txt):
edit-rules
Во время редактирования, сохраняйте структуру. Можете попробовать изменить некоторые цвета (большинство стандартных цветов можно задать словами). После того, как вы сделаете и сохраните изменения:
use-ruleset location=rules\test.txt as-alias=test apply-ruleset
Если вы редактируете файл правил, который Maperitive использует в данный момент, программа автоматически перезагрузит правила, когда вы сохраните файл. Maperitive покажет эффект от новых правил через пару секунд
Для возвращения стандартных правил, используйте алиас:
use-ruleset alias=default apply-ruleset
Maperitive запоминает расположение ваших правил, так что вам не нужно открывать их заново. Если вы вызовите старый алиас, это перепишет старый путь.
Примеры изменённых или созданных пользователями правил вы можете найти в Вики Category Maperitive/Rules.
Скрипты
Вы можете сохранить набор команд в простом текстовом файле (скрипте). Например
move-pos x=-0.11 y=51.52 clear-map change-directory c:\users\igor\documents\osm\maperitive\ use-ruleset location=rules\test.txt as-alias=test load-source data\test.osm export-bitmap zoom=15 file=outputs\test.png width=3000 height=3000 scale=3
Вы можете выполнить все эти команды одной строкой:
run-script c:\users\igor\documents\osm\maperitive\scripts\myscript.txt
Чтобы не набирать строку выше каждый раз, вы можете вписать команду change-directory
в файл scripts\default.txt идущий с Maperitive (но учтите, что он будет переписан при обновлении). В качестве альтернативы, создайте командный файл Windows (текстовый файл с расширением .bat) в вашей рабочей папке с содержимым:
maperitive.exe scripts\myscript.txt
и создайте ярлык к командному файлу на вашем рабочем столе. В свойствах ярлыка укажите в качестве рабочей папки расположение maperitive.exe. Вы также можете присвоить ярлыку иконку maperitive.ico (лежит рядом с maperitive.exe).
Разбор файла правил
Такова высокоуровневая структура файла правил:
features ... areas ... lines ... points ... properties ... rules target : feature1 ... target : feature2 ...
Секция features
указывает Maperitive какие данные вы хотите использовать. Вы можете выбрать объекты в виде полигонов (areas), линий (lines) или точек (points), или указать всё сразу.
Секция properties
позволяет вам переназначить Maperitive установки по умолчанию (например, используемый шрифт).
Секция rules
указывает Maperitive что рисовать для объектов (наборов данных) подходящих по указанным критериям. Как правило, можно указать несколько свойств, а затем нарисовать что-то с указанными свойствами. Вы можете менять рендеринг, пробуя изменять каждое правило, что на самом деле даёт гибкие возможности.
Команды
Полный список команд можно увидеть, набрав help-commands
. Правда, прокручиваются они слишком шустро, да и окно не шибко большое... Вобщем, вот список команд для версии 809 (28 марта 2010 года).
Команда | Действие |
---|---|
add-web-map background=<подкладывать веб карту на фоне (true/false)> intensity=<яркость веб карты (от 0 до 1)> provider=<имя провайдера карты (mapnik, osmarender, osm cyclemap> | добавляет веб карту фоном |
apply-ruleset [источник] | применяет активный набор правил к карте |
change-directory <директория> | меняет текущую директорию |
check-updates | проверяет обновления Maperitive |
clear-cache webmap=<очистить кэшированные тайлы веб карты> | очищает кэш программы |
clear-command-history | очищает историю команд |
clear-map | очищает карту (удаляет все источники карты) |
clear-results | очищает результаты поиска |
dump-bounds | пишет обозреваемые границы карты в лог команд |
dump-entrails | пишет системные сообщения Mapertivie в лог команд (для отладочных работ) |
dump-pos | пишет текущую позицию на карте в лог команд |
exit | завершает работу Maperitive |
export-bitmap aspect=<соотношение сторон> scale=<масштаб> zoom=<уровень приближения> file=<имя файла растра> width=<ширина растра> height=<высота растра> | экспортирует текущее изображение карты в растровый файл, также создаёт worldfile |
export-command-history <имя выходного файла> | экспортирует историю команд в текстовый файл |
export-osm <имя файла> [источник] | экспортирует текущее изображение карты в файл OSM (обычные данные OSM) |
find <запрос> | поиск данных карты с использованием языка запросов |
find-here <запрос> | поиск данных карты с использованием языка запросов но с ограничением видимой в окне картой |
find-next | переход к следующему результату поиска |
find-prev | переход к предыдущему результату поиска |
generate-contours [интервал высот] | генерирует контуры рельефа на текущем изображении карты |
get-info | отображает детальную информацию о текущем объекте на карте |
help | отображает базовую справочную информацию |
help-commands | отображает список всех команд Maperitive |
help-keyboard | отображает список всех комбинаций клавиш Maperitive |
help-properties | отображает список всех свойств правил рендеринга в Maperitive |
list-results | пишет список результатов поиска в лог команд |
list-rulesets | список всех зарегистрированных наборов правил |
list-sources | отображает список всех источников на карте |
list-viewpoints | |
load-source <имя файла> | загружает источник карты из файла (OSM, GPX or IBF file) |
move-pos <x> <y> [zoom] | перемещает в другую точку на карте |
prompt | перевести фокус на командную строку |
remove-ruleset index=<индекс набора правил> alias=<алиас набора правил> location=<расположение набора правил> | удаляет (отменяет регистрацию) набора правил |
remove-source [sourceindex] | удаляет указанный источник из карты |
run-script <имя файла скрипта> | выполняет скрипт Maperitive из указанного файла |
save-map-script <имя файла скрипта> | сохраняет текущую карту как скрипт Maperitive |
save-source <sourceindex> <имя файла> | сохраняет указанный источник карты в указанный файл |
send-feedback | открываает почтовый клиент и готовит сообщение автору Maperitive |
use-ruleset index=<ruleset index> as-alias=<новый алиас> location=<расположение набора правил> alias=<алиас набора правил> | активация указанного набора правил |
zoom <значение> | станавлевает уровень приближения обзора карты |
zoom-all | отображает карту целиком |
zoom-bounds <minx> <miny> <maxx> <maxy> | отображает указанную область карты |
zoom-in | приблизить |
zoom-out | отдалить |
zoom-selection | приблизиться к текущему элементу |
Комбинации клавиш
Полный список комбинаций клавиш можно увидеть, набрав help-keyboard
. Правда, прокручиваются они слишком шустро, да и окно не шибко большое... Вобщем, вот список команд для версии 1154 (2 апреля 2011 года)
> help-keyboard F3 (global): find-next Shift+F3 (global): find-prev Ctrl+A (map): zoom-all Ctrl+Shift+C (global): generate-contours Ctrl+Shift+D (global): download-osm Ctrl+E (global): export-bitmap Ctrl+H (global): go-home Ctrl+M (global): focus-map Ctrl+N (global): clear-map Ctrl+Q (global): exit Ctrl+R (global): reload-ruleset + (map): zoom-in = (map): zoom-in - (map): zoom-out Left (map): move-screen-pos x=-0.1 Right (map): move-screen-pos x=0.1 Up (map): move-screen-pos y=-0.1 Down (map): move-screen-pos y=0.1 Ctrl+Enter (global): prompt
Значки
Значки Mapnik содержатся в Maperitive, но доступны и другие (некоторые из них могут быть лицензированы, действуйте на свой риск!):
- http://svn.openstreetmap.org/applications/share/map-icons/
- http://svn.openstreetmap.org/applications/rendering/mapnik/symbols
- http://josm.openstreetmap.de/svn/trunk/images/presets/
- http://www.sjjb.co.uk/mapicons/
- http://mapicons.nicolasmollet.com/
- http://thenounproject.com/
Maperitive копирует значки в папку cache\images\ и просто обращается к ним по имени файла. Так что если они однажды использовались правилах, подключение к Интернет уже не нужно.
Ссылки
- Сайт Maperitive: http://maperitive.net/
- Загрузить: http://maperitive.net/download/
- Документация: http://maperitive.net/docs/manual/
- перевод документации: RU:Maperitive_book
- Блог разработчика: http://igorbrejc.net/category/openstreetmap/maperitive
How to
Как использовать Maperitive оффлайн и легко демонстрировать его возможности конечному пользователю.
Как использовать команду find в Maperitive.