Este é o comando osmconvert que pode ser executado no provedor de hospedagem gratuita OnWorks usando uma de nossas várias estações de trabalho online gratuitas, como Ubuntu Online, Fedora Online, emulador Windows online ou emulador MAC OS online
PROGRAMA:
NOME
osmconvert - Conversor de arquivos OSM
SINOPSE
osmconvert opções [Arquivo de entrada]
DESCRIÇÃO
Este programa lê diferentes formatos de arquivo do projeto OpenStreetMap e converte o
dados para o formato de arquivo de saída selecionado.
Estes formatos pode be ler:
.osm .osc .osc.gz .osh .o5m .o5c .pbf
Estes formatos pode be escrito:
.osm (padrão) .osc .osh .o5m .o5c .pbf
Os nomes dos arquivos de entrada devem ser especificados como parâmetros da linha de comando. Use - para ler de
entrada padrão. Você não precisa especificar os formatos de entrada, o osmconvert reconhecerá
eles por si só. O formato de saída é .osm por padrão. Se você quiser um formato diferente,
especifique-o usando o parâmetro de linha de comando apropriado.
OPÇÕES
-b =, , ,
Se você deseja limitar a região geográfica, pode definir uma caixa delimitadora. Pendência
isso, entre nos cantos sudoeste e nordeste dessa área. Para
exemplo: -b= -0.5,51,0.5,52
-B =
Como alternativa para uma caixa delimitadora, você pode usar um polígono de borda para limitar o
região geográfica. O formato de um arquivo de polígono de borda pode ser encontrado no OSM
Wiki em Polygon_Filter_File_Format: http://wiki.openstreetmap.org/wiki/Osmosis/
Você não precisa seguir estritamente a descrição do formato, você deve garantir que
cada linha de coordenadas começa com espaços em branco.
- formas completas
Se for aplicada uma caixa de borda ou um polígono de borda, todos os nós das bordas são excluídos;
mesmo assim, se pertencerem a um caminho que não está totalmente excluído porque tem
alguns nós dentro das fronteiras. Esta opção irá garantir que todas as formas permaneçam
completa, mesmo que cruze as fronteiras. Isso resultará em um processamento mais lento,
e o programa perderá sua capacidade de ler a entrada padrão. Isto é
recomendado o uso do formato .o5m como formato de entrada para compensar a maior parte da velocidade
desvantagem.
- formas complexas
O mesmo que antes, mas os multipolígonos não serão cortados nas bordas também.
--todos para nós
Alguns aplicativos não têm a capacidade de processar formas ou relações, eles apenas
aceitar nós como entrada. No entanto, objetos cada vez mais complexos são mapeados como formas ou
até mesmo relações para obter todos os seus detalhes no banco de dados. Aplicar isto
opção se você deseja converter formas e relações para nós e, assim, torná-los
disponível para aplicativos que só podem lidar com nós. Para cada maneira que um nó é
criada. O id do caminho é aumentado em 10 ^ 15 e considerado como id para o novo nó. o
a longitude e a latitude do nó são definidas como o centro geográfico do caminho. Mesmo
aplica-se a relações, no entanto, eles obtêm 2 * 10 ^ 15 como deslocamento de id.
--add-bbox-tags
Esta opção adiciona uma tag com uma caixa delimitadora a cada objeto. A tag conterá
as coordenadas da fronteira nesta ordem: min Longitude, min Latitude, max Longitude,
Latitude máxima. por exemplo:
--add-bboxarea-tags
Uma tag para um valor de área estimado para a bbox é adicionada a cada caminho e cada
relação. A unidade tem metros quadrados. Por exemplo:
v = "33828002" />
--add-bboxweight-tags
Esta opção irá adicionar o logaritmo binário da área bbox de cada forma e cada
relação. Por exemplo:
--add-bboxwidth-tags
Uma tag para um valor estimado de largura para a bbox é adicionada a cada caminho e cada
relação. A unidade é metros. Por exemplo:
--add-bboxwidthweight-tags
Esta opção irá adicionar o logaritmo binário da largura da bbox de cada forma e cada
relação. Por exemplo:
--object-type-offset =
Se aplicar o --todos para nós opção conforme explicado acima, você pode ajustar o id
Deslocamento. Por exemplo: --object-type-offset= 4000000000
Ao anexar "+1" ao deslocamento, o programa criará ids em uma sequência com
etapa 1. Isso pode ser útil se houver um aplicativo em execução subsequente
que não pode processar grandes números de identificação. Exemplo:
--object-type-offset= + 1900000000 1
--drop-broken-refs
Use esta opção se você precisar deletar referências a nós que foram excluídos
porque está fora das fronteiras (obrigatório para algumas aplicações, por exemplo, Mapa
Compositor, JOSM).
--drop-autor
Para a maioria dos aplicativos, as tags do autor não são necessárias. Se você especificar esta opção,
nenhuma informação do autor será gravada: nenhum conjunto de alterações, usuário ou carimbo de data / hora.
--drop-versão
Se você deseja excluir não apenas as informações do autor, mas também o número da versão,
especifique esta opção.
--drop-nós - vias de entrega - relações de gota
De acordo com a combinação desses parâmetros, nenhum membro do referido
seção será escrita.
--dif
Calcule a diferença entre dois arquivos e crie um novo arquivo .osc ou .o5c. Lá
deve ser DOIS arquivos de entrada e as bordas não podem ser aplicadas. Ambos os arquivos devem ser classificados
por tipo de objeto e id. Os objetos criados aparecerão no arquivo de saída como
"modificado", a menos que tenha o número de versão 1.
--diff-conteúdo
Semelhante a --dif, esta opção calcula as diferenças entre dois arquivos OSM. Aqui,
para determinar as diferenças, objetos OSM completos são consultados, não apenas o
números de versão. Infelizmente, esta opção requer estritamente ambos os arquivos de entrada para
tem formato .o5m.
--subtrair
O arquivo de saída não conterá nenhum objeto que exista em um dos arquivos de entrada
seguindo esta diretriz. Por exemplo: osmconvert input.o5m --subtrair menos.o5m
-o= output.o5m
--pbf-granularity =
Raramente os arquivos .pbf vêm com granularidade não padrão. osmconvert reconhecerá
isso e sugerir especificar a granularidade lon / lat anormal usando este comando
opção de linha. Os valores permitidos são: 100 (padrão), 1000, 10000, ..., 10000000.
--emular-osmose --emular-pbf2osm
No caso do formato de saída .osm, o programa tentará usar a mesma sintaxe de dados que
Osmose, resp. pbf2osm.
--autor falso
Se você abandonou as informações do autor (--drop-autor) que os dados serão perdidos, de
curso. Alguns programas, no entanto, exigem informações do autor na entrada, embora eles façam
não precisa desses dados. Para isso, você pode falsificar as informações do autor.
osmconvert gravará o changeset 1, timestamp 1970.
--versão-falsa
Igual a --autor falso, mas - se .osm xml for usado como formato de saída - apenas o
o número da versão será escrito (versão 1). Isso é útil se você deseja inspecionar
os dados com JOSM.
--fake-lonlat
Alguns programas dependem da obtenção de valores de longitude / latitude, mesmo quando o objeto em
questão será excluída. Com esta opção, você pode ter o osmconvert para falsificar estes
valores:
... lat = "0" lon = "0" ...
Observe que isso é apenas para arquivos XML (.osc e .osh).
-h
Exibe uma breve visão geral dos parâmetros.
--Socorro
Mostre esta ajuda.
--merge-versões
Alguns arquivos .osc contêm diferentes versões de um objeto. Use esta opção para
aceitar tais duplicatas na entrada.
--out-osm
Os dados serão gravados no formato .osm. Este é o formato de saída padrão.
--out-osc
O formato OSM Change será usado para a saída. Observe que os objetos OSM que
devem ser excluídos serão representados apenas por seus ids.
--out-osh
Para cada objeto OSM, a tag 'visível' apropriada será adicionada para atender 'full
especificação da história do planeta.
--out-o5m
O formato .o5m será usado. Este formato tem a mesma estrutura do
formato .osm convencional, mas os dados são armazenados como números binários e são
portanto, muito mais compacto do que no formato .osm. Nenhuma embalagem é usada, então você pode
empacote arquivos .o5m usando cada compactador de arquivo que desejar, por exemplo, lzo, bz2, etc.
--out-o5c
Este é o formato de arquivo de mudança do formato de dados .o5m. Tudo tags não serão
executado como ações de exclusão, mas convertido em formato de dados .o5c.
--out-pbf
Para saída, o formato PBF será usado.
--out-csv
Uma lista separada por caracteres será gravada na saída. O separador padrão é
Tab, as colunas padrão são: tipo, id, nome. Você pode alterar ambos usando o
opções --csv-separator = e --csv =
--csv-título
Escolha esta opção para imprimir um título na saída csv.
--csv-separator =
Você pode alterar o separador padrão (Tab) para um caractere ou caractere diferente
seqüência. Por exemplo: --csv-separator =";"
--csv =
Se você quiser ter certas colunas em sua lista csv, especifique seus nomes como
mostrado neste exemplo: --csv ="@id name ref description" Existem alguns especiais
nomes de coluna para dados de cabeçalho: @otype (tipo de objeto 0..2), @oname (nome do tipo de objeto),
@id @lon, @lat, @version, @timestamp, @changeset, @uid, @user
- out-none
Esta não será uma saída padrão. Esta opção é apenas para fins de teste.
--timestamp = --timestamp= AGORA
Se você deseja definir o carimbo de data / hora OSM de seu arquivo de saída, forneça-o com este
opção. A data e a hora devem ser formatadas de acordo com as especificações de data / hora OSM. Para
exemplo: --timestamp=2011-01-31T23:59:30Z Vocês tb pode supply a relativo tempo in
segundos, por exemplo, 24 horas atrás: --timestamp = NOW-86400
--out-timestamp
Com esta opção definida, osmconvert imprime apenas o carimbo de data / hora do arquivo de entrada,
nada mais.
--Estatisticas
Esta opção ativa um contador de estatísticas. O programa irá imprimir dados estatísticos
para stderr.
--out-statistics
Igual a --Estatisticas, mas os dados estatísticos serão gravados na saída padrão.
-o =
A saída padrão será redirecionada para o arquivo especificado. Se nenhum formato de saída tiver
for especificado, o programa contará com a extensão do nome do arquivo.
-t =
Se bordas devem ser aplicadas ou referências quebradas devem ser eliminadas, osmconvert
cria e usa dois arquivos temporários. Este parâmetro define seu prefixo de nome.
O valor padrão é "osmconvert_tempfile".
--arquivo de parâmetro=ARQUIVO
Se você quiser fornecer um ou mais argumentos de linha de comando por um arquivo de parâmetro,
por favor, use esta opção e especifique o nome do arquivo. Dentro do arquivo de parâmetro,
os parâmetros devem ser separados por linhas vazias. Os feeds de linha dentro de um parâmetro serão
convertido em espaços. As linhas que começam com "//" serão tratadas como comentários.
-v --verbose
Com o modo 'detalhado' ativado, alguns dados estatísticos e dados de diagnóstico serão
exibido. Se -v respectivamente --verbose é o primeiro parâmetro da linha, osmconvert
exibirá todos os parâmetros de entrada.
TUNING
Para acelerar o processo, o programa usa parte da memória principal para uma tabela hash. Por padrão,
ele usa 480 MB para armazenar um sinalizador para cada nó possível, 90 para os sinalizadores de caminho e 30
sinalizadores de relação. Cada byte contém os sinalizadores para 8 números de ID, ou seja, em 480 MB o programa
pode armazenar 3840 milhões de sinalizadores. Como há menos de 1900 milhões de IDs para nós no momento
(Julho de 2012), 240 MB seriam suficientes. Então, por exemplo, você pode diminuir os tamanhos de hash para
por exemplo, 240, 30 e 2 MB usando esta opção:
--memória hash=240-30-2
Mas lembre-se de que o banco de dados OSM está em constante expansão. Por este motivo o
o valor padrão do próprio programa é maior do que mostrado no exemplo e pode ser apropriado
para aumentá-lo no futuro. Se você não quiser se preocupar com os detalhes, você pode
insira a quantidade de memória como uma soma, e o programa irá dividi-la por si mesmo. Para
exemplo:
--memória hash=1000
Esses 1000 MiB serão divididos em três partes: 800 para nós, 150 para vias e 50 para
relações.
Como estamos pegando hashes, não é necessário fornecer toda a memória sugerida; a
o programa também funcionará com menos memória hash. Mas, neste caso, o filtro de borda irá
ser menos eficaz, ou seja, algumas maneiras e algumas relações serão deixadas no arquivo de saída
embora devessem ter sido excluídos. O valor máximo que o programa aceita para o
o tamanho do hash é 4000 MiB; Se você exceder a quantidade máxima de memória disponível em seu
sistema, o programa tentará reduzir essa quantidade e exibir uma mensagem de aviso.
Existe outro espaço de memória temporária que é usado apenas para a conversão de caminhos e
relações com os nós (opção --todos para nós) Este espaço é suficiente para até 25 milhões.
Objetos OSM, 400 MB de memória principal são necessários para esta finalidade, 800 MB se opção estendida
--add-bbox-tags foi invocado. Se isso não for suficiente ou se você quiser economizar memória,
você mesmo pode configurar o número máximo de objetos OSM. Por exemplo:
--max-objetos=35000000
O número de referências por objeto é limitado a 100,000. Isso será suficiente para todos
Arquivos OSM. Se você vai criar seus próprios arquivos OSM, convertendo shapefiles ou outros
arquivos para o formato OSM, isso pode resultar em objetos de forma com mais de 100,000 nós. Para
por isso, você precisará aumentar o máximo de acordo. Exemplo:
--max-refs=400000
LIMITAÇÕES
Ao extrair uma região geográfica (usando -b or -B), o arquivo de entrada deve conter o
objetos ordenados por seu tipo: primeiro, todos os nós, a seguir, todos os caminhos, seguidos por todos
relações. Dentro de cada uma dessas seções, a seção de objetos deve ser classificada por seu id
em ordem ascendente.
Os arquivos .osm, .osc, .o5m, o5c e .pbf usuais aderem a essa condição. Isso significa que você
não precisa se preocupar com essa limitação. osmconvert exibirá uma mensagem de erro se
esta sequência está quebrada.
Se um arquivo de polígono para bordas for fornecido, o número máximo de pontos do polígono é sobre
40,000.
NOTAS
Este programa é para uso experimental. Conte com mau funcionamento e perda de dados. Não use o
programa em sistemas produtivos ou comerciais.
NÃO HÁ GARANTIA, na medida permitida por lei. Por favor, envie qualquer relatório de bug para
[email protected]
EXEMPLO
osmconvert europa.pbf --drop-autor > europe.osm
osmconvert europe.pbf | gzip> europe.osm.gz
bzcat europe.osm.bz2 | ./osmconvert --out-pbf > europa.pbf
osmconvert europa.pbf -B=ch.poly> switzerland.osm
osmconvert suíça.osm --out-o5m > suíça.o5m
osmconvert junho_julho.osc --out-o5c > june_july.o5c
osmconvert junho.o5m junho_julho.o5c.gz --out-o5m > julho.o5m
osmconvert sep.osm sep_oct.osc oct_nov.osc> nov.osm
osmconvert northamerica.osm southamerica.osm> americas.osm
Use osmconvert online usando serviços onworks.net
