RU:Maperitive

From OpenStreetMap Wiki
Jump to navigation Jump to search
Maperitive
Mapertive 823 OSX .png
Автор: Igor Brejc
Лицензия: Проприетарная (бесплатно)
Платформ: Windows, Linux, и macOS
Версия: 1202 (2011-11-21)
Язык: английский
Веб-сайт: http://maperitive.net/
Язык
программирования:
C#

Desktop based

Maperitive в Mac OS X
Немецкая сеть линий электропередачи в Maperitive

Maperitive - приложение, которое рендерит карты в реальном времени используя OSM и другие источники данных.

http://maperitive.net/

Является преемником 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, но доступны и другие (некоторые из них могут быть лицензированы, действуйте на свой риск!):

Maperitive копирует значки в папку cache\images\ и просто обращается к ним по имени файла. Так что если они однажды использовались правилах, подключение к Интернет уже не нужно.

Ссылки

How to

Как использовать Maperitive оффлайн и легко демонстрировать его возможности конечному пользователю.

Как использовать команду find в Maperitive.