[Talk-lt] Lietuvos miesteliai

saimhe saimhe at mail.lt
Sun Nov 22 20:24:02 UTC 2009


> iš kur gauti visų Lietuvos miestelių koordinates?

  Su OSM-compatible licenzija - kažin ar egzistuoja.


> http://lt.wikipedia.org/wiki/Lietuvos_miesteliai
> Gal galima koordinates paimti iš ten?

  /dev/hands ir 2-3 valandos laiko.
  Per 5 min rinkimo:

Butrimonys          54.50277777777778  24.25277777777778
Krokialaukis        54.43611111111111  23.76388888888889
Nemunaitis          54.30000000000000  24.02777777777778
Leipalingis         54.08611111111112  23.86111111111111
Viečiūnai           54.05833333333333  24.05277777777778
Kapčiamiestis       54.00000000000000  23.65833333333333
Krosna              54.37777777777778  23.53055555555556
Rudamina_(Lazdijai) 54.28888888888888  23.45000000000000
Seirijai            54.23055555555555  23.81388888888889
Šeštokai            54.35555555555555  23.43888888888889
Šventežeris         54.23888888888889  23.64166666666667
Merkinė             54.16388888888888  24.18611111111111
Valkininkai         54.35555555555555  24.83888888888889

  Idėja tokia. Atsidaryti kiekvieno miestelio puslapį, kopijuoti geohack'o URL.
Pavyzdžiui, 
http://stable.toolserver.org/geohack/geohack.php?pagename=Rudamina_(Lazdijai)&language=lt&params=54_17_20_N_23_27_00_E_region:LT-AL_type:city(296)_scale:250000&title=Rudamina
  Tada URL'us sušerti šitam Perl scriptui:

while (<STDIN>) {
 @a = split(/&/);
 @n = split(/=/, @a[0]);
 $name = @n[1];
 $name =~ s/%([a-fA-F0-9]{2,2})/chr(hex($1))/eg;
 @c = split(/=/, @a[2]);
 @cc = split(/_/, @c[1]);
 $lat = @cc[0] + (@cc[1] / 60) + (@cc[2] / 3600);
 $lon = @cc[4] + (@cc[5] / 60) + (@cc[6] / 3600);
 printf("%s\t%.14f\t%.14f\n", $name, $lat, $lon);
}

--
  saimhe 





More information about the Talk-lt mailing list