Qual a origem desse dogma, na minha opinião: ao importar a hidrografia de uma certa região, alguns importadores acharam mais conveniente colocar layer=-1 em todos os rios pra se livrar dos alertas do JOSM do que deixar os alertas e, quem sabe, adicionar as pontes corretamente.
Bem, tem 1 coisa errada com essa idéia: o JOSM deveria alertar sobre a falta de uma ponte nesses casos porque "layer=-1" não significa "subterrâneo". É bem possível também que o próprio importador estivesse entendendo "alerta" no JOSM como "erro", mas são coisas diferentes. Tem outra coisa: o importador deveria ter previsto esse efeito colateral antes de importar. Por isso que não se pode sair importando as coisas de qualquer jeito sem conversar com a comunidade antes pra ver se vai funcionar. Caso isso tenha acontecido (como se pergunta no fim da página de discussão), a melhor forma de resolver a situação é: baixar o mapa, mudar a tag layer dos rios para layer=0 (ou simplesmente excluí-la), rodar o validador, e mapear as pontes onde o validador tiver dado um aviso. Tanto faz o valor que vai em layer, desde que a layer do rio seja inferior à layer da ponte (ou, equivalentemente, que a layer da ponte seja superior à do rio). Ou seja, depois de mapeadas as pontes, daria pra colocar layer=-1 (ou -2, ou -5) de novo nos rios (inclusive durante a mesma edição). Também daria colocar layer nas pontes. Enfim, a escolha é livre. 2014-03-14 10:52 GMT-03:00 Fernando Trebien <[email protected]>: > - Pra renderização o que ficaria melhor ? > > Depende do seu renderizador. Para o Mapnik, layer=0 nas pontes fica > melhor >nesse caso específico< porque daí ele consegue conectar o > preenchimento e o contorno da via da ponte ao preenchimento e contorno > das vias em que a ponte se conecta. Daí, o rio ficaria com layer=-1. > > Se não quiser colocar layer=-1 no rio todo, pode colocar só no trecho > próximo da ponte. > > Se quiser colocar layer=-1 no rio ou layer=1 na ponte, está correto. > > Se quiser colocar layer=0 no rio e layer=1 na ponte, está correto. > > Se quiser colocar layer=-3 no rio e layer=-2 na ponte, está correto. > Não é o que se esperaria tipicamente, mas está correto. > > Todas essas formas levam exatamente ao mesmo rendering, exceto pela > questão da conexão entre a ponte e o resto da malha, que pode ser > vista como "defeito" do renderizador. > > - Pra roteamento, o que funcionaria melhor ? > > Não faz absolutamente nenhuma diferença, essa é uma tag voltada > exclusivamente à renderização. > > - Será que não seria bom padronizar ? ( no caso de comportamentos > diferentes para cada caso ) > > Acho melhor entender a semântica da tag. Há muitas outras coisas em > que uma padronização seria muito mais importante, nesse caso uma > padronização rígida não faz diferença na prática. > > 2014-03-14 10:21 GMT-03:00 Marcelo Pereira <[email protected]>: >> Osmanianos, >> >> >> Lendo a frase "Rivers and streams should not be tagged with layer -1 along >> long sections of their length", eu entendo que a tag layer NÃO deve ser >> usada em "longas seções" de rios e ( seja-lá-o-que-for ) streams. >> >> Mas deduzo que é possível usá-la em rios nos pontos/trechos onde estiver em >> uma "camada" diferente da entidade que ele cruza. >> >> >> Mais uma frase : >> "A bridge is at layer 1 even if it is only several feet above sea level >> while the peak of Mount Everest is at layer 0 even though it is 8848 meters >> above sea level." >> >> Aqui interpreto que toda a superficie da terra, rios e mares é layer=0, que >> é o default e por isso não recomendado explicitar, e só se registra layer >> onde houver claramente uma diferença de "camada" em um "cruzamento". >> >> >> Assim ... >> " >> Um exemplo prático e mais extremo: suponha que seja um rio com várias >> pontes atravessando-o, como é o caso do arroio Dilúvio em Porto >> Alegre. Você teria que colocar layer=1 em cada uma das 54 pontes que o >> cruzam, versus layer=-1 somente no arroio. 54 tags vs 1 tag. (Só pra >> constar: eu revisei uma por uma, e mapeei as que faltavam.) >> " >> >> Usando a minha interpretação da frase inicial, o uso neste exemplo dado pelo >> Trebien, seria a de se incluir layer=1 em todas as pontes, ou layer=-1 em >> todos os trechos do arroio que cruzam as pontes, sejam pequenos trechos ou >> pontos, não em toda sua extensão. >> >> E de acordo com a segunda frase, teríamos que usar o layer=1 para as pontes >> e não o layer=-1 para o rio, pois esse ainda faz parte da superfície da >> terra ( layer=0), o elemento adicional são as pontes. >> >> >> >> Adicionando uma questão a discussão, que diferença faz usar layer=1 na ponte >> ou layer=-1 no rio ? >> >> - Pra renderização o que ficaria melhor ? >> - Pra roteamento, o que funcionaria melhor ? >> - Será que não seria bom padronizar ? ( no caso de comportamentos >> diferentes para cada caso ) >> >> Marcelo P >> >> >> >> Em 14 de março de 2014 06:58, Flavio Bello Fialho <[email protected]> >> escreveu: >> >>> Fernando, acho que não entendeste. Leia a página >>> http://wiki.openstreetmap.org/wiki/Key:layer com calma. Ela diz >>> explicitamente: >>> >>> "Do not use layer=-1 to hide warnings about crossing or overlapping ways. >>> Either fix them or leave the easily visible warning so that others can fix >>> them." >>> >>> "When ways are passing on different levels apply layer=* only to the way >>> which also has the bridge/tunnel attribute. Only ways with one of the >>> tags/attributes tunnel=*, bridge=*, highway=steps, highway=elevator, >>> covered=* should be tagged with the layer tag, similar for railways and >>> waterways." >>> >>> "Rivers and streams should not be tagged with layer -1 along long sections >>> of their length" >>> >>> Eles estão dizendo explicitamente para NÃO fazer isso que queres fazer. Se >>> tens alguma dúvida, discuta na comunidade internacional. Esse é o meu último >>> post sobre esse assunto. >>> >>> >>> >>> Em 14 de março de 2014 02:08, Fernando Trebien >>> <[email protected]> escreveu: >>> >>>> Mais além: na verdade, em alguns casos, chega a ser pior marcar as pontes >>>> com layer=1 porque isso altera a priorização da renderização no Mapnik. Por >>>> exemplo, highway=secondary_link com layer=1 é renderizado por cima de >>>> highway=primary (com ou sem layer=0). Isso é o oposto do normal e faz o >>>> desenho ficar "feio". >>>> >>>> Mas o Mapnik não é o único parâmetro. No wiki diz que algumas ferramentas >>>> de QA (mas não todas) exigem que o rio tenha layer=-1 e a ponte tenha >>>> layer=1. Nada no restante do artigo sugere que isso é, de fato, necessário >>>> (pelo contrário). Pra mim, parece uma escolha arbitrária sem muita >>>> justificativa (ou seja, um dogma). Colocar layer=-1 no rio ou layer=1 na >>>> ponte estão ambos corretos, mas frequentemente uma das opções requer menos >>>> trabalho e resulta numa representação menos complexa. >>>> >>>> E se o próprio artigo diz que não é necessário colocar layer=0 nos casos >>>> em que seria esse o valor, me parece que o ideal é, quase sempre, marcar o >>>> rio com layer=-1, e nada mais. >>>> >>>> Claro, daí algumas pessoas poderiam pensar que não precisam marcar a >>>> ponte que passa por cima. Por isso concordo que o validador nacional aponte >>>> esses casos como "aviso" - que deve ser interpretado com bom senso (assim >>>> como os demais avisos do validador do JOSM) de acordo com a definição da >>>> tag, não necessariamente como erro. >>>> >>>> On Mar 14, 2014 1:34 AM, "Fernando Trebien" <[email protected]> >>>> wrote: >>>>> >>>>> Só complementando, o que layer=0 realmente significa é: desenhe este >>>>> objeto depois dos que têm layer=-1, e antes dos que tÊm layer=1. Não >>>>> significa nada além disso. >>>>> >>>>> 2014-03-14 1:30 GMT-03:00 Fernando Trebien <[email protected]>: >>>>> > Exemplo fácil (inclusive já tinha citado antes): 1 rio + 2 linhas de >>>>> > uma via separada. É mais fácil colocar layer=-1 no rio do que colocar >>>>> > 2 tags layer=1, uma para cada linha da via. >>>>> > >>>>> > Um exemplo prático e mais extremo: suponha que seja um rio com várias >>>>> > pontes atravessando-o, como é o caso do arroio Dilúvio em Porto >>>>> > Alegre. Você teria que colocar layer=1 em cada uma das 54 pontes que o >>>>> > cruzam, versus layer=-1 somente no arroio. 54 tags vs 1 tag. (Só pra >>>>> > constar: eu revisei uma por uma, e mapeei as que faltavam.) >>>>> > >>>>> > Não disse que layer=-1 deveria ser aplicada ao rio inteiro. Da mesma >>>>> > forma, layer=1 não deveria ser aplicada à via inteira. >>>>> > >>>>> > Não vamos introduzir regras que não existem. Em nenhum lugar diz que >>>>> > layer=0 equivale a "estar no mesmo nível da superfície". >>>>> > >>>>> > 2014-03-13 22:03 GMT-03:00 Flavio Bello Fialho >>>>> > <[email protected]>: >>>>> >> "The layer provides absolutely no information about relative or >>>>> >> absolute >>>>> >> height difference of objects which do not immediately cross or >>>>> >> overlap. A >>>>> >> change in layer should not be used to indicate a change in >>>>> >> elevation." >>>>> >> >>>>> >> Traduzindo: >>>>> >> >>>>> >> O "layer" não fornece absolutamente nenhuma informação a respeito da >>>>> >> diferença de altura relativa ou absoluta de objetos que não se cruzam >>>>> >> ou se >>>>> >> sobrepõem. Uma mudança no "layer" não deve ser usada para indicar uma >>>>> >> mudança em elevação. >>>>> >> >>>>> >> O que isso diz é que não há uma relação direta entre a altura e o >>>>> >> layer. Se >>>>> >> uma estrada está em cima de um morro e outra no fundo de um vale, o >>>>> >> layer é >>>>> >> zero nos dois casos, apesar da ELEVAÇÃO (=ALTITUDE) ser diferente nos >>>>> >> dois >>>>> >> casos. É ISSO que está sendo dito no wiki: >>>>> >> >>>>> >> "A bridge is at layer 1 even if it is only several feet above sea >>>>> >> level >>>>> >> while the peak of Mount Everest is at layer 0 even though it is 8848 >>>>> >> meters >>>>> >> above sea level." >>>>> >> >>>>> >> A mesma página ainda diz: >>>>> >> >>>>> >> "Use the smallest suitable layer value. Only use layer=2 for a bridge >>>>> >> that >>>>> >> passes over a feature that is already at level 1; similarly only use >>>>> >> layer=-2 for a tunnel that passes below another tunnel." >>>>> >> >>>>> >> O menor valor possível é zero. Como a imensa maioria dos atributos >>>>> >> mapeados >>>>> >> está na superfície, ela é mapeada no layer 0. É a forma que mantém os >>>>> >> valores no seu mínimo. Por favor, cite uma situação em que não seja >>>>> >> útil que >>>>> >> a superfície esteja no layer 0, pois não consigo imaginar nenhum >>>>> >> caso. >>>>> >> >>>>> >> "Features at layer 0 should not normally have a layer tag" >>>>> >> >>>>> >> Ou seja, não só não é obrigatório, é recomendável que se elimine o >>>>> >> tag >>>>> >> "layer" quando ele for igual a zero. A página cita explicitamente que >>>>> >> rios >>>>> >> NÃO devem estar no layer -1: >>>>> >> >>>>> >> "Rivers and streams should not be tagged with layer -1 along their >>>>> >> entire >>>>> >> length or long sections" >>>>> >> >>>>> >> Em 13/03/2014 20:54, "Fernando Trebien" <[email protected]> >>>>> >> escreveu: >>>>> >> >>>>> >>> "The layer provides absolutely no information about relative or >>>>> >>> absolute height difference of objects which do not immediately cross >>>>> >>> or overlap. A change in layer should not be used to indicate a >>>>> >>> change >>>>> >>> in elevation." [http://wiki.openstreetmap.org/wiki/Key:layer] >>>>> >>> >>>>> >>> Portanto, não é obrigatório que layer=0 seja aplicado a algo que >>>>> >>> está >>>>> >>> na superfície. Pode até ser costume (ou um bom costume), mas não é >>>>> >>> obrigatório, e certamente há situações em que não é muito útil >>>>> >>> seguir >>>>> >>> essa regra. Além disso, não é obrigatório colocar layer=0 porque >>>>> >>> esse >>>>> >>> é o valor padrão. (Diz isso no mesmo artigo.) >>>>> >>> >>>>> >>> 2014-03-13 20:15 GMT-03:00 Flavio Bello Fialho >>>>> >>> <[email protected]>: >>>>> >>> > Layer e level são coisas diferentes. Layer 0 está no nível da >>>>> >>> > superfície. >>>>> >>> > Quando duas coisas se sobrepõem, a que não está no nível da >>>>> >>> > superfície >>>>> >>> > fica >>>>> >>> > com layer=1 (ex: ponte) ou layer=-1 (ex: túnel). Um rio só deve >>>>> >>> > ter >>>>> >>> > layer=-1 >>>>> >>> > quando estiver embaixo da terra, canalizado. Lençol freático é uma >>>>> >>> > coisa >>>>> >>> > completamente diferente. Level não tem nada a ver com layer. É o >>>>> >>> > andar >>>>> >>> > de um >>>>> >>> > edifício. >>>>> >>> > >>>>> >>> > Em 13/03/2014 13:48, "Fernando Trebien" >>>>> >>> > <[email protected]> >>>>> >>> > escreveu: >>>>> >>> > >>>>> >>> >> Valor "0" para algo no nível do chão vale só para "level", em >>>>> >>> >> "layer" >>>>> >>> >> a escolha é livre porque não representa a "altura" (no sentido >>>>> >>> >> físico) >>>>> >>> >> e sim a "ordem de desenho". >>>>> >>> >> >>>>> >>> >> 2014-03-13 12:43 GMT-03:00 Flavio Bello Fialho >>>>> >>> >> <[email protected]>: >>>>> >>> >> > O tag layer deve ser relativo à superfície da terra ou água >>>>> >>> >> > (layer=0). >>>>> >>> >> > Qualquer coisa acima deve ter layer positivo e qualquer coisa >>>>> >>> >> > abaixo >>>>> >>> >> > deve >>>>> >>> >> > ter layer negativo. >>>>> >>> >> > >>>>> >>> >> > Em 12/03/2014 17:57, "Fernando Trebien" >>>>> >>> >> > <[email protected]> >>>>> >>> >> > escreveu: >>>>> >>> >> > >>>>> >>> >> >> Ah bom, então tá perfeito. :D >>>>> >>> >> >> >>>>> >>> >> >> 2014-03-12 16:24 GMT-03:00 Nelson A. de Oliveira >>>>> >>> >> >> <[email protected]>: >>>>> >>> >> >> > 2014-03-12 16:16 GMT-03:00 Fernando Trebien >>>>> >>> >> >> > <[email protected]>: >>>>> >>> >> >> >> Bem, posso estar falando bobagem (não cheguei a testar esse >>>>> >>> >> >> >> caso >>>>> >>> >> >> >> com >>>>> >>> >> >> >> o >>>>> >>> >> >> >> validador ainda), só acho que não deveria ser tratado como >>>>> >>> >> >> >> "erro", >>>>> >>> >> >> >> só >>>>> >>> >> >> >> como "aviso" (ou "alerta"), pra seguir a mesma idéia dos >>>>> >>> >> >> >> outros >>>>> >>> >> >> >> avisos >>>>> >>> >> >> >> do validador do JOSM. >>>>> >>> >> >> > >>>>> >>> >> >> > Mas não é erro :-) >>>>> >>> >> >> > É um aviso. E a mensagem do aviso começa justamente com >>>>> >>> >> >> > "verificar: >>>>> >>> >> >> > ..." >>>>> >>> >> >> > >>>>> >>> >> >> > _______________________________________________ >>>>> >>> >> >> > Talk-br mailing list >>>>> >>> >> >> > [email protected] >>>>> >>> >> >> > https://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) >>>>> >>> >> >> >>>>> >>> >> >> _______________________________________________ >>>>> >>> >> >> Talk-br mailing list >>>>> >>> >> >> [email protected] >>>>> >>> >> >> https://lists.openstreetmap.org/listinfo/talk-br >>>>> >>> >> > >>>>> >>> >> > >>>>> >>> >> > _______________________________________________ >>>>> >>> >> > Talk-br mailing list >>>>> >>> >> > [email protected] >>>>> >>> >> > https://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) >>>>> >>> >> >>>>> >>> >> _______________________________________________ >>>>> >>> >> Talk-br mailing list >>>>> >>> >> [email protected] >>>>> >>> >> https://lists.openstreetmap.org/listinfo/talk-br >>>>> >>> > >>>>> >>> > >>>>> >>> > _______________________________________________ >>>>> >>> > Talk-br mailing list >>>>> >>> > [email protected] >>>>> >>> > https://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) >>>>> >>> >>>>> >>> _______________________________________________ >>>>> >>> Talk-br mailing list >>>>> >>> [email protected] >>>>> >>> https://lists.openstreetmap.org/listinfo/talk-br >>>>> >> >>>>> >> >>>>> >> _______________________________________________ >>>>> >> Talk-br mailing list >>>>> >> [email protected] >>>>> >> https://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) >>>> >>>> >>>> _______________________________________________ >>>> Talk-br mailing list >>>> [email protected] >>>> https://lists.openstreetmap.org/listinfo/talk-br >>>> >>> >>> >>> >>> -- >>> Flávio Bello Fialho >>> [email protected] >>> >>> _______________________________________________ >>> Talk-br mailing list >>> [email protected] >>> https://lists.openstreetmap.org/listinfo/talk-br >>> >> >> >> >> -- >> >> ... Edileuzaaaa, eu não tem nada a ver com Creuza, >> É mentira da Ivete, não é meu esse caniveeeeeete... >> "Halley, Luiz" - Poeta, Cantor, Compsitor >> >> _______________________________________________ >> Talk-br mailing list >> [email protected] >> https://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) _______________________________________________ Talk-br mailing list [email protected] https://lists.openstreetmap.org/listinfo/talk-br
