Opção name-tag-list do mkgmap.
14 de Abril de 2015, 1:17 - sem comentários aindaNo mkgmap existe uma opção que pode ser passada na linha de comando chamada “name-tag-list”. No manual do mkgmap consta:
--name-tag-list
Get the tag that will be used to supply the name. Useful for language variations. You can supply a list and the first one will be used. eg. --name-tag-list=name:en,int_name,name
Isso significa que essa opção deve ser usada para substituir o conteúdo da tag name, a qual é responsável por nomear os objetos (Vias, POIs, etc) do OSM. Assim no exemplo do manual (--name-tag-list=name:en,int_name,name) teríamos que o conteúdo do nome seria preenchido seguindo a ordem: primeiramente com o conteúdo da tag “name:en”, caso essa tag não exista, então seria preenchido com o conteúdo da tag “int_name”, caso essa tag também não exista então seria usado o conteúdo da tag “name”. Caso o tag “name” não exista o objeto ficaria sem nome. Você pode escolher a ordem de prioridade que desejar.
Quando usar essa opção? Imagine a situação: você fala inglês, não fala francês e deseja viajar de carro pela França. Nesse caso você poderia pegar o mapa do OSM da França e compilar usando essa opção, colocando como prioridade o conteúdo da tag “name:en” sobre o conteúdo da tag “name”. Assim os nomes dos lugares e vias ficariam em inglês e não francês ficando mais fácil de localizar os lugares.
A tag int_name quando ela é usada? Segundo o wiki do OSM ela deve ser usada para descrever o nome que um objeto é conhecido internacional, no wiki consta também a observação que internacional não significa necessariamente ser em inglês. Por exemplo o que nós brasileiros conhecemos como “Cataratas do Iguaçu” é conhecido internacionalmente como “Iguazu Falls”.
Vi que alguns colaboradores do OSM estão “internacionalizando” o nome de algumas vias. Apenas como exemplo temos essa via (https://www.openstreetmap.org/way/117755023) que tem a tag name com o valor de “Rua Clemente Pereira” e a tag int_name com o valor de “Clemente Pereira Street”. Independente se essa “internacionalização” está correta ou não (na minha opinião é que não está) é algo que acontece e pode ser observado.
Pois bem, agora que sabemos para que serve a opção name-tag-list podemos pensar o seguinte: você é brasileiro quer compilar o mapa do OSM do Brasil, o qual é feito, em sua maioria, por brasileiros. Nesse caso é necessário usar essa opção sobrepondo o conteúdo que já consta na tag name? Minha opinião é que não, pois você deve estar acostumado aos nomes em português os quais já estão por “padrão” dentro da tag “name”. Usar essa opção vai fazer com que esses nomes sejam substituídos por outros nomes, por exemplo você não vai encontrar mais as Cataratas do Iguaçu apenas “Iguazu Falls”, você não irá encontrar a rua “Rua Clemente Pereira” apenas “Clemente Pereira Street”. Assim quando você for procurar um objeto no mapa terá que pensar será que o nome pode estar sua forma internacional. Não acho que isso ajuda, pelo contrário, acho que vai te atrapalhar.
Assim, se você é brasileiro e deseja compilar o mapa do OSM do Brasil não recomendo que use essa opção.
Referências: Tag Name | Opções do mkgmap
Mkgmap: Pesquisa por nome de vias
13 de Abril de 2015, 21:16 - sem comentários aindaQuem já compilou mapas com o mkgmap já deve ter percebido um problema comum: ao pesquisar por nome de vias (Ruas) a pesquisa somente encontra resultado quando você digita o nome completo da via. Imagine que a via se chame “Travessa Antônio Maurizi”, caso você pesquise por “Maurizi” ou “Antônio Maurizi” nada é encontrado. O problema disso é que você é obrigado a saber o Tipo do logradouro (Rua, Travessa, Avenida, etc) para pode fazer a busca. Se você não souber vai ter que ficar na tentativa e erro.
Para resolver isso algumas pessoas criavam regras no “Style File” jogando o primeiro nome da via para a última posição. Assim, “Travessa Antônio Maurizi” ficaria “Antônio Maurizi Travessa”. Isso permite que a pesquisa por “Antônio Maurizi” retorne o nome da via, nesse caso eu não preciso digitar o nome completo e nem saber o tipo de logradouro. Porém a pesquisa por “Maurizi” continua a não trazer resultados.
Abaixo exemplo de alguns comandos no “Style File” que permitem fazer esse tipo de pesquisa:
highway=* & name ~ '(?i)travessa\s+.*' { add streettype:movedend='${name|subst:(?i)travessa\s+~>}, Travessa'}
highway=* & name ~ '(?i)rua\s+.*' { add streettype:movedend='${name|subst:(?i)rua\s+~>}, Rua'}
highway=* & name ~ '(?i)avenida\s+.*' { add streettype:movedend='${name|subst:(?i)avenida\s+~>}, Avenida'}
A desvantagem dessa solução é que a pesquisa pela terceira palavra do nome continua não trazendo resultados. Além disso, o IMG gerado pelo mkgmap fica maior, não muito maior, mas maior do que um mapa que não é compilado com essa solução.
Para resolver o problema em definitivo as versões recentes do mkgmap (lançadas pós 2015) trazem uma opção chamada “--x-split-name-index”. Essa opção não é habilitada por padrão assim para usá-la é necessário fazer a chamada dela explicitamente. Sua linha de comando ficaria parecida com esta:
java -jar mkgmap.jar --x-split-name-index --housenumbers --route --index --gmapsupp brazil.osm.pbf
Essa opção nova no mkgmap ainda está em testes. Caso encontre erros avise o time de desenvolvimento do mkgmap. Na lista do mkgmap esse problema foi referenciado como problema do "multi-word street search".
Referências: Wiki OSM | Documentação mkgmap | Lista de e-mail do mkgmap | Kit cocar de compilação
Primeiro Post
13 de Abril de 2015, 19:42 - sem comentários aindaEu vou usar este espaço para distribuir informações sobre o OSM, mkgmap e assuntos relacionados.
Marcações
13 de Abril de 2015, 2:15 - sem comentários aindaOlá,Meu nome é Sara William,minhas marcações tem o objetivo de mapear jacaraípe.Estou cursando o ensino médio, na escola jacaraípe.Estou fazendo um trabalho de Demografia, que envolve o OpenStreetMap. Marquei no OpenStreetMap: Padaria, Agências Correios, Escolas, Lojas,Clínicas.. E marquei o Rio Jacaraípe e etc...
Nome do grupo: Sara William,Ronieri Rodrigues, Jean Carlos, Naiane Santos, Gleici Kelly e Samuel Conca.
Trabalhinho de Geografia..
12 de Abril de 2015, 16:06 - sem comentários aindaEstou cursando o ensino médio, na escola jacaraípe.. Estou fazendo um trabalho de Hidrologia, que envolve o OpenStreetMap. Marquei no OpenStreetMap: Padaria, Papelaria, Supermercado, Salão e Lanchonete.. E marquei uma lagoa (Local Histórico).
Nomes do grupo: Giullia Gatti, Brenda Sarantides, Aline Salina, Karen Lícia, Pâmela Hérika e Eliziellen Chaves.