> * Taškų interaktyvi informacija lyg ir normaliai veikia per
> openlayer.text. T.y. reikia tik parašyti Lietuvos duomenų xml skenerį,
> kuris galėtų į atskirus txt failus ištraukti info apie dominančius
> objektus (piliakalniai, laužavietės, polisiavietės, muziejai ir t.t.
> ir pan.). Šituo užsiimsiu truputį vėliau (nebent gal kas gali/nori
> padėti?).
Na va, šitas irgi veikia. Kobra, sliekas ar kokia te gyvatė (python)
turi osm xml'o skaitymo modulį. Tai jo pagalba pasirašo nedidukas
scenarijus, kuris gražiai išima reikiamą info ir sukrauna į
openlayeriams tinkamo formato failą.
Prisegu py failą, gal kolegos pitoninikai kokių nors stambių kliurkų
pastebės, nes šiaip kodą rašiau google pagalba „search: python print,
search: python loop, search: python variables“ ir pan. :-)
--
Tomas Straupis
#!/usr/bin/python
from imposm.parser import OSMParser
class Taskai(object):
highways = 0
def ieskok(self, nodes):
# callback method for nodes
for osmid, tags, pos in nodes:
if 'historic' in tags:
#print tags
title = ''
description = ''
url = ''
if 'name' in tags:
title = tags['name']
if title == '':
title = tags['historic']
description = title
if 'url' in tags:
url = tags['url']
description += '<br><a href="%s" target="_blank">Info</a>' % url
if tags['historic'] == 'hill_fort' or tags['historic'] == 'monument' or tags['historic'] == 'archaeological_site':
print title
f.write('%s\t%s\t%s\t%s\t16,16\t0,0\tistorinis.png\n' % (pos[1], pos[0], title.encode('utf-8'), description.encode('utf-8')))
# instantiate counter and parser and start parsing
f = open('textfile.txt', 'w')
f.write('lat\tlon\ttitle\tdescription\ticonSize\ticonOffset\ticon\n')
taskai = Taskai()
p = OSMParser(concurrency=4, nodes_callback=taskai.ieskok)
p.parse('lithuania_.osm')
_______________________________________________
Talk-lt mailing list
[email protected]
http://lists.openstreetmap.org/listinfo/talk-lt