GoGPT Best VPN GoSearch

Значок OnWorks

mkgmap-splitter - онлайн в облаке

Запустите mkgmap-splitter в бесплатном хостинг-провайдере OnWorks через Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS

Это команда mkgmap-splitter, которую можно запустить в провайдере бесплатного хостинга OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.

ПРОГРАММА:

ИМЯ


mkgmap-splitter - разделитель тайлов для mkgmap

СИНТАКСИС


mkgmap-сплиттер [кредита] файл.osm > сплиттер.лог

ОПИСАНИЕ


mkgmap-сплиттер разбивает файл .osm, содержащий большие хорошо сопоставленные области, на несколько
фрагментов меньшего размера, чтобы они соответствовали максимальному размеру, используемому для формата карт Garmin. Там
требуется как минимум два этапа обработки. Первый этап - рассчитать, какой площади
каждая плитка должна покрывать, исходя из распределения узлов. Второй этап выписывает
узлы, пути и отношения из исходного файла .osm в отдельные меньшие .osm
файлы, по одному для каждой области, рассчитанной на первом этапе. С опцией
--keep-complete = истина, используются два дополнительных этапа, чтобы избежать ломаных путей и многоугольников.

Двумя наиболее важными характеристиками являются:

· Плитки переменного размера для предотвращения образования большого количества крошечных файлов.

· Плитка стыкуется точно, без нахлеста и зазоров.

Вам понадобится много памяти на вашем компьютере, если вы собираетесь разделить большую область. Немного
опции позволяют настроить необходимый вам объем памяти. С параметрами по умолчанию вам нужно
около 4-5 байтов для каждого узла и пути. Звучит немного, но их около 1700
миллионов узлов во всем файле планеты, поэтому вы не можете обработать всю планету за один
передать файл на 32-битном компьютере с помощью этой утилиты, так как максимальное пространство кучи java составляет 2 ГБ. Это
возможно с 64-битной java и около 7 ГБ кучи или с несколькими проходами.

Экстракт Европы из Cloudmade или Geofabrik может быть обработан в пределах 2G, если вы
иметь достаточно памяти. С параметрами по умолчанию Европа разделена примерно на 750 плиток.
Экстракт Европы составляет примерно половину размера полного файла планеты.

С другой стороны, отдельная страна, даже хорошо нанесенная на карту, например, Германия или Великобритания, будет
быть возможно на скромной машине, даже на нетбуке.

ИСПОЛЬЗОВАНИЕ


Splitter требует java 1.6 или выше. Основное использование выглядит следующим образом.

mkgmap-сплиттер файл.osm > сплиттер.лог

Если на вашем компьютере меньше 2 ГБ памяти, вам следует уменьшить -XMX вариант по
установка переменной окружения JAVA_OPTS.

JAVA_OPTS = "-Xmx512m" mkgmap-сплиттер файл.osm > сплиттер.лог

Это создаст ряд файлов .osm.pbf, которые могут быть прочитаны мкгмап(1). Есть
также производятся другие файлы:

The шаблон.args file - это файл, который можно использовать с -c возможность мкгмап что будет
скомпилировать все файлы. Вы можете использовать его как есть или можете скопировать и отредактировать, чтобы включить
ваши собственные варианты. Например, вместо того, чтобы каждое описание было «Карта OSM», оно могло бы быть «NW.
Шотландия "в зависимости от обстоятельств.

The area.list файл - это список рассчитанных ограничивающих рамок. Если ты хочешь тебя
можно использовать это при последующем вызове разделителя с помощью --split-файл возможность использовать
точно такие же области, как и в прошлый раз. Это может быть полезно, если вы регулярно создаете карту.
и хотите, чтобы площадь плитки оставалась неизменной из месяца в месяц. Также полезно избегать
время, необходимое для регенерации файла каждый раз (в настоящее время около трети от общего
время, затраченное на выполнение сплита). Конечно, если карта вырастет настолько, что одна из плиток
переполнения придется заново рассчитывать площади.

The Area.poly файл содержит ограничивающий многоугольник расчетных площадей. См. Вариант
--polygon-файл как это можно использовать.

The плотности-out.txt файл записывается, когда не указан разделенный файл, и содержит отладку
только информация.

Вы также можете использовать сжатый файл .osm с gzip или bz2 в качестве входного файла. Обратите внимание, что
это может значительно замедлить сплиттер (особенно верно для bz2), потому что
распаковка файла .osm может потребовать значительных ресурсов процессора. Если вы, вероятно, будете
обрабатывая файл несколько раз, вам, вероятно, лучше преобразовать файл в один из
двоичные форматы pbf или o5m. Формат o5m читается быстрее, но требует больше места
на диске.

ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ


Есть несколько вариантов точной настройки, которые вы, возможно, захотите попробовать.

--boundary-tags =string
Список значений тегов для отношений, разделенных запятыми. Используется для фильтрации мультиполигона
и граничные отношения для обработки списка проблем. Также вариант
- желаемый-админ-уровень. По умолчанию: use-exclude-list

--cache =string
Устарело, теперь ничего не делает

--description =string
Устанавливает описание, которое будет записано в шаблон.args .

--geonames-file =string
Имя файла GeoNames, используемого для определения имен листов. Обычно
City15000.zip от geonames ⟨http://download.geonames.org/export/dump⟩.

--keep-complete =логический
Используйте --keep-complete = ложь для отключения двух дополнительных этапов программы между
разделение и финальная фаза распространения (не рекомендуется). Первый этап, названный
gen-problem-list, выявляет все пути и связи, которые пересекают границы
один или несколько выходных файлов. Вторая фаза, называемая списком проблем-обработчиков, собирает
координаты этих путей и отношений и вычисляет все выходные файлы, которые
перечеркнуты или заключены. Информация передается в финальную фазу дист.
три временных файла. Это позволяет избежать сломанных полигонов, но имейте в виду, что для этого требуется
прочитать входные файлы как минимум два дополнительных раза.

Не указывайте это с помощью --перекрывать если у вас нет на то веской причины.

По умолчанию: верно

--mapid =Int
Задайте имя файла для разделенных файлов. В этом примере первый файл будет называться
63240001.osm.pbf и следующий будет 63240002.osm.pbf и т. д.

По умолчанию: 63240001

--max-area =Int
Максимальное количество областей, которые можно обработать за один проход во время
второй этап обработки. Это должно быть число от 1 до 4096. Более высокие числа
означает меньшее количество проходов по исходному файлу и, следовательно, более быструю общую обработку, но
также требуется больше памяти. Если вы обнаружите, что у вас заканчивается память, но вы не хотите
увеличить ваш --макс-узлы значение, попробуйте вместо этого уменьшить его. Изменение этой воли
не влияют на результат разделения, это просто позволяет вам торговать памятью
за производительность. Обратите внимание, что первый этап обработки имеет фиксированную память.
накладные расходы независимо от того, что это установлено, поэтому, если у вас заканчивается память
до area.list файл создается, вам нужно либо увеличить -XMX
значение или уменьшите размер входного файла, который вы пытаетесь разделить.

По умолчанию: 512

--макс-узлы =Int
Максимальное количество узлов, которые могут быть в любом из результирующих файлов. По умолчанию
довольно консервативен, вы можете значительно увеличить его, прежде чем получить какую-либо карту
слишком большие сообщения. Было проведено не так много экспериментов. Также чем больше это
значение, тем меньше памяти требуется на этапе разделения.

По умолчанию: 1600000

--max-thread =ценностное
Максимальное количество потоков, используемых mkgmap-сплиттер.

По умолчанию: 4 (авто)

--mixed =логический
Укажите это, если во входном файле osm перемешаны узлы, пути и отношения или
идентификаторы строго не отсортированы. Для увеличения производительности используйте осмос sort
функции.

По умолчанию: false

--no-trim =логический
Не обрезайте пустое пространство по краям плитки. Эта опция игнорируется, когда
--polygon-файл используется.

По умолчанию: false

--num-tile =ценностное string
Целевое значение, которое используется, когда не указан разделенный файл. Разделение выполняется так, чтобы
произведено заданное количество плиток. В --макс-узлы значение игнорируется, если это
предоставляется вариант.

--output =string
Формат, в котором записываются выходные файлы. Возможные значения: xml, pbf,
o5m и смоделировать. По умолчанию используется pbf, что соответствует наименьшему размеру файла.
Формат o5m быстрее записывается, но создает файлы примерно на 40% больше. В
Параметр моделирования предназначен для отладки.

--output-dir =путь
Каталог, в который сплиттер должен записывать выходные файлы. Если указанный
путь к каталогу не существует, mkgmap-сплиттер пытается создать это. По умолчанию
текущий рабочий каталог.

--overlap =string
Устарело с r279. С участием --keep-complete = ложь, mkgmap-сплиттер должны включать
узлы за пределами ограничивающей рамки, так что мкгмап можно аккуратно обрезать точно на
граница. Этот параметр контролирует размер перекрытия. Это в единицах карты,
по умолчанию используется значение 2000, что означает около 0.04 градуса широты или долготы.
If --keep-complete = истина активен и --перекрывать дается, будет напечатано предупреждение
потому что такое сочетание редко имеет смысл.

--polygon-desc-file =путь
Файл osm (.o5m, .pbf, .osm) с именованными способами, которые описывают ограничивающие многоугольники с помощью
Способы OSM, имеющие теги name и mapid.

--polygon-file =путь
Имя файла, содержащего ограничивающий многоугольник в формате файла многоугольника осмоса.
. mkgmap-сплиттер использует этот файл при расчете площадей. Сначала он вычисляет
сетка с использованием заданного --разрешающая способность. Считывается входной файл, и для каждого узла создается
счетчик увеличивается для соответствующей области сетки. Если входной файл содержит
ограничивающий прямоугольник, он применяется к сетке, чтобы узлы за пределами ограничивающего прямоугольника
игнорируются. Затем, если указано, ограничивающий многоугольник используется для обнуления этой сетки.
элементы за пределами ограничивающей области многоугольника. Если область (и) многоугольника описывает (а)
прямолинейный участок с числом вершин не более 40, mkgmap-сплиттер постараюсь
создавайте выходные файлы, которые точно вписываются в область, иначе это будет примерно
область многоугольника с прямоугольниками.

--precomp-sea =путь
Имя каталога, содержащего предварительно скомпилированные морские тайлы. Если дано, mkgmap-
сплиттер будет использовать предварительно скомпилированные морские тайлы так же, как мкгмап делает. Использовать
это, если вы хотите использовать файл многоугольника или --no-trim = истина и мкгмап создает пустой
* .img файлы в сочетании с сообщением, начинающимся с "Недостаточно места в одном
карта Garmin для всех исходных данных ».

--problem-file =путь
Имя файла, содержащего способы и отношения, которые, как известно, вызывают проблемы.
в процессе раскола. Используйте эту опцию, если - сохранить в полном объеме требует слишком много времени или
памяти и --перекрывать не решает вашу проблему.

Синтаксис проблемного файла:

способ: # комментарий ...
rel: # комментарий ...

пример:

путь: 2784765 # паром Гернси - Джерси

--problem-report =путь
Имя файла для записи сгенерированного списка проблем, созданного с помощью
- сохранить в полном объеме. Параметр игнорируется, если --keep-complete = ложь. Вы можете повторно использовать
этот файл с - проблема-файл параметр, но делайте это только в том случае, если вы используете тот же
значения для --макс-узлы и --разрешающая способность.

--resolution =Int
Разрешение карты плотности, созданной на первом этапе. Значение между
1 и 24. По умолчанию 13. Для увеличения значения до 14 требуется в четыре раза больше.
память в разделенной фазе. Значение игнорируется, если --split-файл дано.

--search-limit =Int
Ограничение поиска в алгоритме разделения. Чем выше значения, тем лучше разбиение, но
дольше.

По умолчанию: 200000

--split-file =путь
Используйте ранее рассчитанные площади плитки вместо того, чтобы рассчитывать их с нуля.
Файл может быть в формате .list или .kml.

--status-freq =Int
Отображает объем памяти, используемый JVM каждые --статус-частота секунд. Установить = 0
отключить.

По умолчанию: 120

--stop-after =string
Отладка: остановка после заданной фазы программы. Может быть разделен, список генпроблем или
справиться-список-проблем. По умолчанию dist, что означает выполнение всех этапов.

- желаемый-админ-уровень =string
Задает наименьшее значение admin_level для граничных отношений, которое следует сохранить
полный. Используется для фильтрации граничных отношений при обработке списка проблем. В
значение по умолчанию 5 означает, что граничные отношения сохраняются, когда
admin_level равен 5 или выше (5..11). Параметр игнорируется, если
--keep-complete = ложь. По умолчанию: 5

--write-kml =путь
Имя файла kml, в который записываются области. Это в дополнение к
area.list (который всегда выписывается).

Специальные опции

--версия
Если параметр --версия находится где-то в опциях, mkgmap-сплиттер предусматривает
просто распечатайте информацию о версии и выйдите. Информация о версии выглядит так:

splitter 279 compiled 2013-01-12T01:45:02+0000

--Помогите Если параметр --Помогите находится где-то в опциях, mkgmap-сплиттер предусматривает
распечатать список всех известных нормальных опций вместе с краткой справкой и выйти.

TUNING


Настройка на лучшую производительность

Несколько советов для тех, кто использует mkgmap-сплиттер для разделения больших файлов.

· Для более быстрой обработки с --keep-complete = истина, конвертируем входной файл в формат o5m
с помощью:

осмконверт - drop-версия файл.osm -o =файл.o5m

· Опция - drop-версия не является обязательным, он сокращает файл до тех данных, которые необходимы
by mkgmap-сплиттер и мкгмап.

· Если вы по-прежнему ощущаете низкую производительность, изучите сплиттер.лог. Искать слово
Распространение. Вы можете найти что-то вроде этого в следующей строке:

Обработка 1502 участков за 3 прохода, 501 участок за раз

Это означает, что сплиттер должен прочитать входной файл три раза, потому что --макс-площади
параметр был намного меньше количества областей. Если у вас достаточно кучи, установите
--макс-площади значение выше, чем количество областей, например
--max-area = 2048, казнить mkgmap-сплиттер снова и ты должен найти

Обработка 1502 участков за один проход

· Для большего количества областей требуется больше памяти. Убедись в том, что mkgmap-сплиттер достаточно кучи
(увеличить -XMX параметр), чтобы не тратить много времени на мусор
сборщик (GC), но сохраните как можно больше памяти для системных кешей ввода-вывода.

· Если возможно, используйте два разных диска для входного файла и выходного каталога, особенно. когда ты
используйте формат o5m для ввода и вывода.

· Если вы используете мкгмап r2415 или новее и место на диске не проблема, подумайте об использовании
--output = o5m для ускорения обработки.

Настройка на низкие требования к памяти

Если на вашем компьютере меньше 1 ГБ свободной памяти (например, нетбук), вы все равно можете использовать mkgmap-
сплиттер, но вам, возможно, придется набраться терпения, если вы используете параметр - сохранить в полном объеме и
хочу разбить файл как Германия.osm.pbf или более крупный. При необходимости уменьшите количество
параллельно обрабатываемых площадей до 50 с --макс-площади параметр. Вы должны использовать
--keep-complete = ложь при разделении области, подобной Европе.

ПРИМЕЧАНИЯ


· Больше нет верхнего предела количества областей, которые можно выводить (ранее
было 255). Больше областей просто означает, что потенциально потребуется больше проходов через .osm.
файл, и, следовательно, сплиттер будет работать дольше.

· Больше нет ограничений на то, сколько областей может принадлежать путь или отношение (ранее
было 4).

Используйте mkgmap-splitter онлайн через сервисы onworks.net


Бесплатные серверы и рабочие станции

Скачать приложения для Windows и Linux

Команды Linux

Ad




×
Реклама
❤️Совершайте покупки, бронируйте или заказывайте здесь — никаких затрат, что помогает поддерживать бесплатность услуг.