[Talk-cat] Mapeig i Futur 3D

yo paseopor yopaseopor at gmail.com
Wed Aug 7 12:29:59 UTC 2013


Us poso en situació actual de tot plegat per a que m'entengueu.Com sempre
dues premises bàsiques sobre la meva persona: NFIO (No Fuckin' Idea Of): No
tinc ni puta idea ni de programar ni de modelar.

Dit això:

La idea és que a través de les dades obtingudes de OSM com a molt via l'ús
d'una aplicació exterior (JOSM seria ideal , per nombre d'usuaris i per ús
senzill de l'aplicació) aconseguir un renderitzat 3D realista, a l'estil
del que fa Google Maps, sense cap intervenció de dades exterior.

Com sabeu la meva "dèria" són les carreteres i tot el que fa referència a
elles.M'he centrat en un element "faltant" al nostre país: els senyals de
trànsit.

Per introduir-los es requereix una mica de treball extra.Bàsicament són
dues passades per la totalitat de la via.En la primera , a través
d'ortofoto podem definir els camps bàsics per a qualsevol via que necessita
l'estil de mapes - i per extensió ara el renderitzador 3D - ara o en un
futur perquè m'he posat en contacte amb el creador per veure què hi podem
fer-:


   - change:lanes:backward=no < Línia contínua en el sentit contrari de la
   via, serveix per avançaments, carrils de direcció que s'han de separar i
   carrils d'acceleració (l'estil de mapa dóna doble contínua o doble
   discontínua, el renderitzador hem de veure com ho podem aconseguir, jo li
   veig possibilitats)
   - change:lanes:forward=no < Línia contínua en el sentit de la via
   (l'estil de mapa dóna doble contínua o doble discontínua, el renderitzador
   hem de veure com ho podem aconseguir, jo li veig possibilitats)
   - highway=secondary < categoria de la via... serveixen ben poc pel
   renderitzador 3D - fa les vies iguals, però hi ha possibilitats futures a
   través de la clau smoothness, imagineu-vos veure els bonys de determinada
   carretera mal asfaltada :P ...)
   - lanes:backward=1 < Carrils contraris al sentit de la via , més que els
   carrils totals el mapa style es preocupa de quants hi ha en cada sentit
   (serveix pel tema fletxes, al 3D li veig possibilitats)
   - lanes:forward=1 > Carrils al sentit de la via (s'ha acabat això de
   oneway=-1, les vies han de tenir el sentit de la seva circulació -
   important per mantenir la definició d'orientació dels senyals de trànsit
   (n'hi ha una de nova per punts cardinals però és horrorosa i poc factible)
   - lanes=2 > el camp de sempre, útil quan la resta anterior no
   s'especifica, a carrers
   - overtaking=no > avançar o no avançar (és tan fàcil com fixar-se en el
   que diuen els camps change:lanes (forward,backward,yes,no)
   - ref=C-12 (He tingut un somni... que els renderitzadors acabin mostrant
   lletres, OSM ja té alguns projectes de definició de caixes de referències,
   sóc optimista, aviat no només es mostraran els senyals, també es mostrarà
   el que diu el senyal i no un model com fins ara.
   - width=7 > L'estil de mapa fa una cosa bastant digna, així que a través
   d'ell ens podem anar fiant de quina amplada li posem a tota la via (tot
   això enllaça amb el tema classificació que plantejava l'Àlex)
   - turn:lanes:backward=through <direcció que es pot agafar en el sentit
   contrari a la via (el mapa style et mostra les nostres marques vials, el
   render 3D podrà arribar a mostrar alguna cosa, jo hi confio - a
   l'experiment que us vaig enviar vaig fotre uns triangles a estil ceda el
   paso manual que demostren que podem endollar algo)
   - turn:lanes:backward=through < direcció que es pot agafar en el sentit
   de la via, el cas que per ser més realistes es pot tallar la via i fer que
   el mapastyle no mostri constantment flextes de direcció sinó que ho faci
   allà on realment les tenim (es veuen bé via ortofoto)


(sobre STOPS i CEDEIXI el PAS faig servir el traffic_signs que ja mostra el
senyal en sí (encara que no la marca vial), és cert que potser a la
realitat en falta un o un altre però tampoc caldria ser tan primmirats, no?)

Feta aquesta primera passada, que deixa la via bastant resoluta és hora del
treball de camp: la realitat.Per poder posar un senyal de trànsit hem de
saber on està posat i què hi diu i això amb l'ortofoto no ho trobarem.Per
tant ens hem de cenyir a la realitat (no m'atrapareu, Google Street View
ara per ara mostra la realitat -potser algo antiga- i encara que algú pugui
mirar fotos fetes per ells o per qualsevol altre usuari la realitat i les
conclusions que en poguem extreure no és propietat de qui la fotografia
:P).La forma més realista? Agafar GPS , anotar senyal i posició. #oletu

Passat el paràgraf d'humor negre tornem a lo seriós.Els senyals de trànsit
(més enllà de STOP, CEDEIXI EL PAS, SEMÀFOR, PAS DE VIANANTS, CITY_LIMIT,
que ja eren renderitzades) han de ser tot nodes dins de la via (pel perill
que els GPS no captin els senyals que hi posem al voltant), només quan són
balises o tals sí que ho posem sobre de les illetes (sí, també les definim,
i si tenen vorera ,jardinet o monument (rotonda amb escultura horrorosa al
mig).En l'actualitat qui més en fa són els alemanys i els finesos.El que he
fet és adaptar una cosa similar per als 300 i escaig senyals espanyols, més
alguns de la darrera fornada senyalitzadora catalana (que difereixen una
mica dels espanyols).Per fer-ho fàcil he adaptat un preset per al connector
RoadSigns, que es qui va començar a moure això ,Si es tria node es mostrarà
un senyal de trànsit, si es tria via es donarà aquella propietat a aquell
tram de via que triem (com el cas de maxspeed o overtaking)

Dit això a tot plegat se li afegeixen un parell de camps importants (es pot
fer amb el semàfor horitzontal que hi veieu):


   - direction=backward,forward (marca l'orientació del senyal respecte al
   sentit de la via, per això és tan important fer com els rius i eliminar els
   oneway=-1 si la via és d'un sol sentit)
   - side=right,left,both,up (marca el lloc on està el senyal SEMPRE EN EL
   SENTIT DE LA VIA: a la dreta de la carretera, a l'esquerra, ambdues,és un
   pòrtic superior - amb el modelatge 3D poden sortir coses molt
   interessants...)

Ara que ja us he explicat els mètodes passem als renderitzadors.Tornant a
la base NFIO ("acudit" del principi) la cosa és la següent:

   - El preset del connector Roadsigns està "estable", i tot i que no tinc
   control directe sobre ell , els tiquets es van responent i es van afegint
   les novetats que mes rere mes vaig enviant - sobretot a l'hora de que un
   senyal de trànsit defineixi camps en una via - n'estic aprenent.Va inclós
   al connector quan us el descarregueu com qualsevol altre connector.
   - El mapa style Lanes and Road Attributes modificat "alfa" , el tinc jo
   i l'envio a qui vulgui (estic a l'espera de que l'original col·loqui alguna
   opció que permeti canviar el país de les fletxes - les austríaques no són
   les mateixes que les nostres).Si no ho fés treuria un Lanes and Road
   Attributes ES (gràcies programari lliure ;)
   - El mapa style traffic_signs va fent, "estable", com el preset.El
   trobareu com qualsevol estil dins de preferències > acoloriments de mapes
   (a vegades surt definit com estil semàfor)
   - El preset traffic_signs, està en "beta", vaig fent i vaig afegint
   senyals de trànsit, cada setmana o així penjo les novetats, així que suposo
   que s'aniran actualitzant.
   - Sobre el tema renderitzador 3D."Alfíssima".Estic trastejant el pluggin
   Kendzi3D, com que no tinc ni idea de modelar amb el Blender he aprofitat el
   fanal que té ell als seus models,l'he fet crèixer, l'he pintat de blanc, li
   he encolomat un cub (que no surt, no m'expliqueu per què, no ho sé) i
   aquest cub en una de les seves cares mostra un senyal de trànsit.En
   l'actualitat el renderitzador mostra tots els senyals en la mateixa
   orientació, amb doble cara, com si fos un pla.Se m'escapa al meu
   coneixement, com fer un millor model, com orientar-lo,com introduir nous
   camps,com sobreposar-los - marques vials- etc.De moment només he aprés a
   desplaçar el senyal "fora" de les vies petites (i no al mig) i de deixar-lo
   molt a la vora a les grans.He parlat amb el creador sobre formats i
   caràcters invàlids, m'ha demanat proves, i en quant li remeti els 300
   senyals espanyols com a model - "em farà cas" (s'enrecordarà dels meus
   morts, aquesta gent està més ficada en el tema edificis, i provarà de
   trobar-hi una solució abans que li col·lapsi el xiringuito ;)

-Què pot fer la comunitat per tot plegat?

Pot fer a nivell de tres coses, segons els seus coneixements i experiències:

1A.Programació: jo no en tinc ni un borrall, obriu tot el que faig, en tot
el que em baso, destripeu-ho, comuniqueu-vos amb els creadors originals,
milloreu les seves creacions (molts cops tinc la sensació que entenent com
funciona la programació amb un parell de línies de codi les coses farien un
gran salt, però no estic segur)

1B.Coses a millorar dels presets actuals (de les claus OSM)
-Tot senyal més enllà del seu codi internacional hauria de fer referència a
una propietat de la via o del node en sí...n'hi ha poques (i segur que
desconec algunes de les que sí hi són).Hi ha projectes però estan a les
veceroles.

-Preset roadsigns espanyol: Estacionament, estacionament regulat, rutes de
transport públic
,relacions senyals sentit obligatori...
-Estil acoloriment de mapes traffic_signs: el fet de mostrar un senyal una
mica més apartat a dreta o esquerra segons orientació i no a sobre del node
com ara mateix
-Preset traffic_signs: Estacionament, estacionament regulat, rutes de
transport públic
,relacions senyals direcció obligatòria...
-Kendzi3D: introducció del caràcter : (base de totes les senyalitzacions ja
fetes als altres països, i de les nostres) al codi de pointModelLayer.

2.Modelatge 3D: és una necessitat recentment creada.Copiar els senyals de
la wikipèdia, donar-los format, i mida ho he pogut fer.Però a l'hora del
renderitzat no sé dissenyar els típics pals que hi ha a les nostres
carreteres, ni tampoc sé com orientar-les més enllà de l'orientació única i
bàsica per una cara.Fixeu-vos que per fer el suport, he agafat un fanal,
l'he pintat de blanc, i l'he estirat (una xapussa).Com que són processos
independents , una millora dels models no afectarà al codi base OSM.Així
que animo a qualsevol que sàpiga de modelatge i aconsegueixi models en
format OBJ hi treballi.

3.Introduir els senyals: aquí qualsevol, repeteixo, qualsevol persona pot
ajudar, observant la realitat, amb visor o sense, a través dels
connectors,presets,estils de mapes aquí llistats i plugins podeu començar a
afegir tots els senyals de trànsit de les vostres carreteres conegudes,
favorites...TOTES :P Els codis de la gran majoria de senyals són els que
són, no admeten modificacions, i per tant és un afegit més enllà de les que
ja existeixen actualment:STOP, CEDEIXI EL PAS, SEMÀFOR, PAS DE VIANANTS,
CITY_LIMIT,RESTRICCIONS - excepte la de direcció prohibida, que encara no
he trobat la seva clau).Són dades de les que no només en treurem profit
veient-les en 3D, sinó que jo ja m'imagino un GPS mostrant el senyal exacte
d'un encreuament, més enllà del de límit de velocitat que ja ho fan la gran
majoria.I això està a la nostra mà ja.Però per tenir-ho aquestes dades han
d'estar introduïdes, parlem de desenes,centenars de milers de nous nodes i
dades que hem d'introduir i això no ho aconseguirem a bon ritme sense que
la comunitat s'hi posi de valent.Així que jo el que més demanaria és
mapejar senyals!!

Perdoneu per l'estona llarga que us he robat, pel rollo que us he fotut i
per les mancances de tot plegat que té aquest escrit, però confio que sigui
l'inici d'una nova era en el mapejat català, almenys.

Salut i mapes (en 3D, en estils, en GPS, en la realitat...)
yopaseopor

PD: Us adjunto la captura que va fer "despertar" ahir a kendzi3D
-------------- part seg??ent --------------
Un document HTML ha estat eliminat...
URL: <http://lists.openstreetmap.org/pipermail/talk-cat/attachments/20130807/3d26de44/attachment-0001.html>
-------------- part seg??ent --------------
A non-text attachment was scrubbed...
Name: traffic_sign_kendzi3d.jpg
Type: image/jpeg
Size: 146479 bytes
Desc: no disponible
URL: <http://lists.openstreetmap.org/pipermail/talk-cat/attachments/20130807/3d26de44/attachment-0001.jpg>


More information about the Talk-cat mailing list