2012/2/14 Cristian Draghici <cristian.dragh...@gmail.com> > > > 2012/2/13 Alex Morega <a...@grep.ro> > >> >> On 13 Feb 2012, at 11:54, Cristian Draghici wrote: >> >> > Ca veni vorba de harti interactive: >> > >> > http://www.cnadnr.ro/drumuri.php >> > >> > listeaza situatia drumurilor nationale cu actualizare frecventa. >> >> Am făcut un script care parsează datele de la CNADNR și le salvează ca >> JSON. Datele pot fi luate de aici: >> >> http://sheffield.grep.ro/starea-drumurilor/latest.json >> >> Scriptul rulează la 10 minute, și păstrează date istorice, deci în teorie >> putem face și un timelapse :) >> >> > Ignorand aspectul de mai sus cu referinta de kilometri (KM XYZ+w) nu >> cred sa se poata face ceva automatizat (pentru ca segmentele de drum sunt >> sparte in OSM iar la re-gruparea pe baza de nume order-ing-ul lor spatial >> nu este coerent), dar cu referinta de localitate ar putea sa iasa ceva (cel >> mai apropiat punct de pe drum raportat la centrul localitatii). >> >> Am aruncat o întrebare[1] pe gis.stackexchange.com și am primit un >> răspuns util, deși nu cred că răspunde la problema ridicată de tine. Deci >> cel mai simplu ar fi să desenăm un fel de buline roșii care indică drum >> întrerupt în dreptul unei localități, nu? >> > > Salut > > Cred ca buline ar fi super! > > Ref la referinta de Km, reformulez: se poate face automatizat dar e > relativ mult de munca si nu stiu daca merita. > Noi am facut ceva similar (ordonare de segmente de way-uri) pentru relatii > care definesc rute montane (gis.modulo.ro). Problema noastra era afisarea > unui profil de altitudine derivat din date SRTM -> moment la care e nevoie > de determinarea altitudinii la distanta start+X, start+Y, etc. > > In planet_osm_line singurul lucru in comun pentru segmente care apartin > aceluiasi drum sunt tag-urile drumului si faptul ca fiecare 2 segmente > conectate formeaza o pereche in sensul in care acolo unde se termina un > segment continua alt segment (punctul de final segment 1 == punct de start > segment 2). > > Pe baza acestui lucru se pot regrupa segmentele pentru a forma o geometrie > cu sens de parcurgere corect moment in care KM X+y -> KM Z+w poate fi > extras ca o subgeometrie (pentru gis.modulo.ro implementarea a fost > facuta de un coleg cu o functie C postresql care ia toate segmentele si le > ordoneaza de la Est la Vest). > > Dar: drumurile sparte pe sensuri de circulatie si sensurile giratorii > complica treaba (la noi cazul asta nu este tratat). > > Cel mai probabil asa ceva e mai usor de facut cu GRASS (care stie ca din > geometrii incorecte topologic cum e modelul OSM sa construiasca un model pe > care se pot face calcule pe graf-uri -> distante, rutari, etc). > > -- > Cristi > > >
Ref la folosirea linear referencing din postgis pentru calcul - nu cred ca merge direct. Din ce tin minte am incercat asa ceva si linear referencing merge pe *un*linestring - ori tocmai asta e problema descrisa mai sus - drumurile in modelul OSM sunt un set ne-ordonat de linestring-uri. Deci primul pas ramane obtinerea unui singur linestring pentru un drum -> noi n-am reusit asta cu functiile standard de postgis.
_______________________________________________ Talk-ro mailing list Talk-ro@openstreetmap.org http://lists.openstreetmap.org/listinfo/talk-ro