[Talk-br] Relações

Fernando Trebien fernando.trebien em gmail.com
Segunda Julho 15 21:43:57 UTC 2013


Ah, olha só. Na rota da rodovia que eu mandei como exemplo há um erro.
Alguém deve ter editado esse pedaço com o Potlatch:
http://www.openstreetmap.org/?lat=-30.1085&lon=-51.7269&zoom=14&layers=M&relation=155359

O que acontece com o Potlatch: ao excluir um membro de uma relação, não é
gerado aviso nenhum (e isso é péssimo, já tem um ticket no TRAC aberto pra
isso mas nunca consertaram, e provavelmente não vão agora que o editor iD é
o principal foco de desenvolvimento - a nova versão, que ainda não entrou
no ar, adiciona suporte às relações). Atualmente, só o JOSM avisa ao
excluir um membro de uma relação, e acho que só ele quebra uma linha que é
membro de uma relação corretamente (não cheguei a testar com o iD). Ao
quebrar uma linha, o certo é que, se ela inteira era parte de uma relação,
os 2 novos pedaços sejam parte também; o JOSM faz certo (só dá um aviso),
mas o Potlatch não adiciona 1 dos pedaços. Com isso, é muito comum que os
iniciantes introduzam erros no mapa sem saber. Algo parecido acontece ao
combinar linhas, especialmente em fronteiras: o JOSM mostra como as
relações vão ser atualizadas, o Potlatch não dá aviso nenhum, então às
vezes, sem o usuário saber, as fronteiras ficam inconsistentes e bizarras,
incluindo pedaços que não fecham uma área, ou até pedaços soltos longe da
área principal.

Resumindo, até que o novo iD entre no ar, o melhor editor pra tratar de
relações é o JOSM.

No Potlatch, as relações podem ser visualizadas e editadas na tab
"Advanced" na esquerda embaixo, mas o padrão é que o Potlatch mostre a tab
"Simple".

2013/7/15 Fernando Trebien <fernando.trebien em gmail.com>

> Ah, mais um detalhe: a rota de ônibus está incompleta (era só um teste).
> Mas tem todos os elementos de uma rota completa.
>
>
> 2013/7/15 Fernando Trebien <fernando.trebien em gmail.com>
>
>> Oops, corrigindo, a primeira rota de ônibus é no setido centro > bairro.
>>
>>
>> 2013/7/15 Fernando Trebien <fernando.trebien em gmail.com>
>>
>>> Então, Erick, pra resumir:
>>> - nós (nodes) têm somente tags e posição
>>> - linhas (ways) têm tags e uma lista de nós; um par da sequência forma
>>> um segmento de reta, o par seguinte forma o segmento seguinte da linha,
>>> etc. e a ordem dos nós dá a direção da linha
>>>   (áreas nada mais são do que linhas fechadas, ou seja, primeiro nó =
>>> último nó)
>>> - relações (relations) têm tags e membros com papéis, onde cada membro
>>> pode ser qualquer coisa (nó, linha ou relação)
>>>
>>> E agora exemplificando.
>>>
>>> *Rota representando o sentido bairro > centro de uma linha de ônibus*
>>> http://www.openstreetmap.org/browse/relation/2727021
>>>
>>> Repare nas etiquetas descrevendo a linha de ônibus e nos membros com os
>>> seus papéis "forward", "backward" e "stop". Especificação completa desse
>>> tipo de relação:
>>> http://wiki.openstreetmap.org/wiki/Relation:route#Bus_routes_.28also_trolley_bus.29
>>>
>>> *Rota representando todas as partes de uma rodovia*
>>> http://www.openstreetmap.org/browse/relation/155359
>>>
>>> Repare nas tags "network", "ref", "type" e "route" e também que os
>>> membros têm papéis "forward" e "backward" tal como na rota de ônibus.
>>> Especificação completa desse tipo de relação:
>>> http://wiki.openstreetmap.org/wiki/Relation:route#Road_routes
>>>
>>> *Restrição de conversão proibindo fazer o retorno*
>>> http://www.openstreetmap.org/browse/relation/3077198
>>>
>>> Repare nos papéis "via" - um nó - e "from" e "to" - ambos linhas.
>>> Especificação completa:
>>> http://wiki.openstreetmap.org/wiki/Relation:restriction
>>>
>>> *Multipolígono representando um delta*
>>> http://www.openstreetmap.org/browse/relation/86833
>>>
>>> Repare nos membros com papéis "outer" - borda externa - e "inner" -
>>> borda interna. Especificação completa:
>>> http://wiki.openstreetmap.org/wiki/Relation:multipolygon
>>>
>>> *Fronteira definindo uma mesorregião*
>>> http://www.openstreetmap.org/browse/relation/2844354
>>>
>>> Repare nas etiquetas "admin_level" e "type=boundary", também repare nos
>>> papéis "outer" e "inner" que funcionam exatamente da mesma forma que nos
>>> multipolígonos. Especificação completa:
>>> http://wiki.openstreetmap.org/wiki/Relation:boundary
>>>
>>> *Fronteiras definindo um bairro e uma cidade*
>>> http://www.openstreetmap.org/browse/relation/2727083
>>> http://www.openstreetmap.org/browse/relation/242397
>>>
>>> Repare o valor em "admin_level" em cada uma e os membros "label" e
>>> "admin_centre" (que aparecem com uma função similar.
>>>
>>> *Um rio que serve como fronteira em várias relações de fronteira*
>>> http://www.openstreetmap.org/browse/way/227577336
>>>
>>> Repare lá no final a seção "Parte de". Esse rio é membro das relações
>>> que representam as fronteiras de dois países (Brasil e Uruguai), de um
>>> estado brasileiro (Rio Grande do Sul), uma cidade brasileira (Jaguarão) e
>>> uma região uruguaia (Cerro Largo), além de uma microrregião brasileira e da
>>> relação que representa a região Sul do Brasil.
>>>
>>> (OBS: a tag "name" desse rio está "errada". Combinei com um uruguaio que
>>> usaríamos a convenção européia de colocar ambos os nomes, em português e
>>> espanhol, separados por " / ", em ordem alfabética, mas ainda não tive
>>> tempo de atualizar toda a fronteira.)
>>>
>>> Pra mais detalhes, eis a lista das principais relações usadas no
>>> OpenStreetMap: http://wiki.openstreetmap.org/wiki/Types_of_relation
>>>
>>> A relação associatedStreet é pouco usada no Brasil, mas muito usada na
>>> Europa. A relação public_transport é nova e provavelmente será mais usada
>>> no futuro (faz mais diferença em lugares em que as paradas são complexas e
>>> atendem a vários modos de transporte simultaneamente). A relação
>>> route_master é usada para agrupar rotas (como os dois sentidos e as
>>> variações de uma mesma linha de ônibus), mas não sei de nenhum sistema que
>>> faça uso dela. Nunca vi usarem enforcement, bridge e tunnel.
>>>
>>> A relação site é meio polêmica (frequentemente usada sem necessidade)
>>> mas é muito usada. Tem gente que mapeia, por exemplo, a área de uma
>>> universidade, os prédios, daí agrupa tudo numa relação "site". Muitos
>>> defendem que isso não é necessário e que uma aplicação deveria ser capaz de
>>> determinar que o prédio pertence à universidade usando um algoritmo
>>> geométrico simples. Outros (que defendem sistemas mais fáceis de programar)
>>> preferem que a informação de continência seja expressa por relações porque
>>> daí não envolve nenhum algoritmo geométrico complicado (mas também há
>>> espaço para erros bem grosseiros). É praticamente uma extensão da discussão
>>> sobre o uso das tags "is_in" (que é contra-indicado).
>>>
>>> 2013/7/15 Fernando Trebien <fernando.trebien em gmail.com>:
>>>
>>> > Outro exemplo importante: as relações "boundary" agrupam os pedaços de
>>> > fronteira que delimitam um bairro, uma cidade, um estado, um país, um
>>> > continente, e adicionam informação como o nó "admin_centre" que
>>> representa o
>>> > "centro" da cidade (geralmente o marco zero, e também o lugar onde se
>>> > desenha o nome da cidade).
>>> >
>>> > On Jul 15, 2013 1:14 PM, "Fernando Trebien" <
>>> fernando.trebien em gmail.com>
>>> > wrote:
>>> >>
>>> >> Uma relação, como qualquer outro elemento, tem tags. A diferença é
>>> que uma
>>> >> relação, além das tags, possui membros. Os membros podem ser de
>>> qualquer
>>> >> tipo, inclusive podem ser outras relações. Cada membro tem um papel
>>> ("role")
>>> >> que especifica a sua função na relação.
>>> >>
>>> >> Por exemplo, relações de rotas de ônibus têm membros com os papéis
>>> >> "forward" e "backward" indicando a direção da rota em uma via. Além
>>> disso, a
>>> >> relação tem tags especificando o nome e o número da rota. Relações de
>>> >> restrição de conversão têm 3 membros: "from" e "to" (especificando de
>>> onde
>>> >> para onde que vale a restrição) e "via" especificando o nó que junta
>>> os dois
>>> >> segmentos, exatamente onde vale a restrição. Essas não têm tags
>>> obrigatórias
>>> >> (exceto "type=restriction") mas pode ter tags como "fixme" e "note".
>>> >>
>>> >> On Jul 15, 2013 1:07 PM, "Fernando Trebien" <
>>> fernando.trebien em gmail.com>
>>> >> wrote:
>>> >>>
>>> >>> São importantíssimas. As relações agrupam coisas (como todos os
>>> pedaços
>>> >>> de uma rodovia e duas vias e um nó numa restrição de conversão). Sem
>>> elas,
>>> >>> não seria possível obter o traçado completo de uma rodovia, nem
>>> várias rotas
>>> >>> (por exemplo, de ônibus) que compartilham parte de um trajeto, nem
>>> >>> especificar que é proibido fazer o retorno ou dobrar à direita. Nem
>>> desenhar
>>> >>> polígonos com buracos. Enfim, há muitos usos.
>>> >>>
>>> >>> On Jul 15, 2013 12:18 PM, "Erick de Oliveira Leal"
>>> >>> <erickdeoliveiraleal em gmail.com> wrote:
>>> >>>>
>>> >>>> Alguém pode me explicar o que são relações, pq vi que tem algumas
>>> >>>> rodovias que usam isso, e qual a importância delas?
>>> >>>>
>>> >>>> _______________________________________________
>>> >>>> Talk-br mailing list
>>> >>>> Talk-br em openstreetmap.org
>>> >>>> http://lists.openstreetmap.org/listinfo/talk-br
>>> >>>>
>>> >
>>>
>>>
>>>
>>> --
>>> Fernando Trebien
>>> +55 (51) 9962-5409
>>>
>>> "The speed of computer chips doubles every 18 months." (Moore's law)
>>> "The speed of software halves every 18 months." (Gates' law)
>>>
>>
>>
>>
>> --
>> Fernando Trebien
>> +55 (51) 9962-5409
>>
>> "The speed of computer chips doubles every 18 months." (Moore's law)
>> "The speed of software halves every 18 months." (Gates' law)
>>
>
>
>
> --
> Fernando Trebien
> +55 (51) 9962-5409
>
> "The speed of computer chips doubles every 18 months." (Moore's law)
> "The speed of software halves every 18 months." (Gates' law)
>



-- 
Fernando Trebien
+55 (51) 9962-5409

"The speed of computer chips doubles every 18 months." (Moore's law)
"The speed of software halves every 18 months." (Gates' law)
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://lists.openstreetmap.org/pipermail/talk-br/attachments/20130715/c30f386f/attachment-0001.html>


Mais detalhes sobre a lista de discussão Talk-br