[Talk-es] ¿Cómo va el desarrollo de cat2osm?

David cymerio en gmail.com
Lun Oct 15 16:32:50 GMT 2012


Estoy de acuerdo con lo de intentarlo primero así, e ir haciendo cambios
incrementales hasta que nos lo acepten.
Seguramente con eso ya se eliminarán la mayor parte de relaciones.

Pero lo que nunca he entendido es por qué se sigue diciendo que las
relaciones son lo "correcto".
Que yo sepa en esta lista de correo nunca ha explicado nadie por qué es lo
"correcto" (más allá de que sea una preferencia personal).
Los ficheros generados ocupan más o menos lo mismo (de hecho algo más con
relaciones), y la información sigue estando ahí de una forma u otra.

Con vías compartidas también se usan una especie de "mini-relaciones"
(referencias).
Por ejemplo, un fichero (simplificado para ilustrar el concepto) podría
quedar así:
<node id='-1' lat='...' lon='...'> <!-- definimos 6 "puntos" o nodos -->
<node id='-2' lat='...' lon='...'>
<node id='-3' lat='...' lon='...'>
<node id='-4' lat='...' lon='...'>
<node id='-5' lat='...' lon='...'>
<node id='-6' lat='...' lon='...'>
<way id='-7'>
   <nd ref='-1' /> <!-- Esto es una referencia al primer nodo que hemos
definido antes, etc -->
   <nd ref='-2' />
   <nd ref='-3' />
   <nd ref='-4' />
</way>
<way id='-8'>
   <nd ref='-5' />
   <nd ref='-2' /> <!-- referencia al primer nodo compartido -->
   <nd ref='-3' /> <!-- referencia al segundo nodo compartido -->
   <nd ref='-6' />
</way>

Es decir, hemos definido 6 nodos y tenemos 2 vías que comparten 2 nodos.
Con relaciones en cambio habría que partir cada "way" en segmentos de 2
nodos y luego juntarlos otra vez en cada relación (¿para qué? ¿separar para
volver a juntar? ).
por ejemplo:
<!-- la definición de nodos me la salto pero sería igual que arriba -->
<way id='-7'> <!-- definimos tantos ways como segmentos de 2 nodos -->
   <nd ref='-1' />
   <nd ref='-2' />
</way>
<way id='-8'>
   <nd ref='-2' />
   <nd ref='-3' />
</way>
<way id='-9'>
   <nd ref='-3' />
   <nd ref='-4' />
</way>
<way id='-10'>
   <nd ref='-5' />
   <nd ref='-2' />
</way>
<way id='-11'>
   <nd ref='-3' />
   <nd ref='-6' />
</way>
<!-- Aquí reensamblamos lo que rompimos -->
<relation id='-12'>
   <member type='way' ref='-7' role='' />
   <member type='way' ref='-8' role='' />
   <member type='way' ref='-9' role='' />
</relation>
<relation id='-13'>
   <member type='way' ref='-10' role='' />
   <member type='way' ref='-8' role='' />
   <member type='way' ref='-11' role='' />
</relation>

¿Y para qué hemos hecho esto? :-/
Perdonad mi ignorancia pero no creo que se gane en nada. Igual alguien más
veterano tiene una razón de peso para hacerlo así pero yo no la veo.
Si queremos aplicar un "tag" a cualquiera de los dos conjuntos de vías se
puede hacer igual de bien en el ejemplo de arriba como en el de abajo.
Además, no me digáis que no, pero el primero es mucho más compacto y más
claro.
Luego también se dice que los renderers procesan más rápido lo primero...
Bueno, pero entonces ¿qué pega tiene hacerlo así?


El 15 de octubre de 2012 17:25, Cruz Enrique Borges
<cruz.borges en deusto.es>escribió:

> On Lunes, 15 de octubre de 2012 17:11:52 David escribió:
> > Pero a parte de hacer simplificaciones para reducir el número de
> > relaciones, ¿no se pueden eliminar por completo?
> > Me refiero a usar vías compartidas en lugar de relaciones.
> > ¿Es muy difícil hacer eso a estas alturas del programa?
>
> Hombre, a primera vista es deshacer el paso de simplificado de vías.
> Ander siempre ha dicho que es fácil, pero cada vez que hacemos algo
> "fácil" rompemos algo por detrás y tardamos 3 días en averiguar que
> hemos roto. De todas formas, personalmente, no me gusta esa opción
> porque es "incorrecta". Que se haga así por simplicidad y/o por
> falta de recursos es una cosa, pero no se "debería" hacer así.
>
> Yo por mi parte creo que primero vamos a intentar tal y como está,
> luego con solo la planta y relaciones y finalmente, si aún así no nos
> dejan, entonces sobre la planta del edificio, ya eliminamos las
> relaciones (pero no antes, porque entonces si que la liamos parda con
> ways sin absolutamente ningún sentido).
>
> Nos vemos.
>
> --
> Cruz Enrique Borges Hernández
> Email: cruz.borges en deusto.es
>
> DeustoTech Energy
> Telefono: 944139000 ext.2052
> Avda. Universidades, 24
> 48007 Bilbao, Spain
>
> _______________________________________________
> Talk-es mailing list
> Talk-es en openstreetmap.org
> http://lists.openstreetmap.org/listinfo/talk-es
>



-- 
Saludos
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.openstreetmap.org/pipermail/talk-es/attachments/20121015/68ff25eb/attachment-0001.html>


Más información sobre la lista de distribución Talk-es