Ahoj! > > A ted ten skript.
Tak dobra zprava, ten web to umi dat we wgs-84. Spatna je, ze to posila mailem, dle cisla katastralniho uzemi. Aha, a ty cisla katastralnich uzemi jde dokonce vykoukat z osm, jako ref u boundary=administrative, admin_level=10. Bohuzel jsou to maly uzemi. > :-), normálka ;). Landuse je opravdu hodně potřeba. Vždycky tak trochu > "závidím" karviňákům tu jejich barevnou mapu. Přemýšlel jsem o možnosti > využít > parcely z RUIAN. Tam je nejen zemědělská půda, ale i leccos ostatního - > zastavěná plocha, silnice, dálnice a co já vím, co ještě. Zemědělská půda tam > určitě není tak podrobně jako v eagri/lpis. > Máš představu, nakolik jsou údaje trvanlivé, t.j. zda příští rok ještě budou > platit? Jak aktualizovat? Jak to spojit s jiným landuse, neb nejen > zemědělskou > půdou povrch naší matičky pokryt jest. Maji tam klic podle kteryho to pujde aktualizovat, a normalne zemedelska puda relativne trvanliva je. Spojit s jinym landusem -- spis radej ne, ne? Maji to docela podrobny, tj pole zacina na kraji cesty. > Dle právě provedeného výpočtu má v RUIAN digitální mapu 64 procent území > republiky, takže sice dobré, ale ne dost. > > Určitě najdeme spoustu míst, kde podle RUIAN je sídliště a podle EAGRI louka > či pole (po zkušenostech s importem adres ;-)). No, tohle bude krasne videt na bingu :-). > Nakolik budeme která data brát jako referenční či jak se rozhodneme, co > převezmeme. Možná existují i další zdroje pro landuse.? > > Co budeme dělat se stávajícími polygony landuse. Dělat díry v polygonech z > EAGRI? No, asi zalezi co bude lepsi. V oblastech, co jsem mapoval ja, je LPIS lepsi nez rucni trasovani z ortofota... Takze pekne vymazat a nahrat znova. A ted.. umel by nekdo automaticky z mbox souboru s mailama vytahnout zip-ovy prilohy? Pavel (Aktualni verse importeru v priloze). -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
#!/usr/bin/python # http://www.lpis.cz/index.html # Mapa: # http://eagri.cz/public/app/lpisext/lpis/verejny/ # Vyzadat data na: # http://eagri.cz/public/app/lpisext/lpis/verejny/exportDat.html # Vyzadat: Pudni bloky # Souradny systrem: wgs-84 # Aha, a ty cisla katastralnich uzemi jde dokonce vykoukat z osm, jako ref u boundary=administrative, admin_level=10 # A... nefunguje jim dobre captcha, takze jde stahnout vic uzemi jednim formularem. # doubek: 631035 # babice: 600601 # for A in *.zip; do unzip $A; done import sys import shapefile from pyproj import * print "<?xml version='1.0' encoding='UTF-8'?>" print "<osm version='0.6' generator='pyshp'>" #p1 = Proj(init='esri:102067') p1 = Proj(init='EPSG:4326') p2 = Proj(init='EPSG:4326') sf = shapefile.Reader(sys.argv[1]) global field field = {} def a_field(num, name): global field i1, i2, i3, i4 = sf.fields[num] if name != i1: print 'Unexpected field name <', name field[name] = num a_field(1, 'ID_FB') a_field(3, 'NKODFB') a_field(6, 'PLATNYOD') a_field(7, 'VYMERAM') a_field(8, 'KULTURA') a_field(9, 'KULTURA_KL') a_field(10, 'KULTURAOD') a_field(11, 'EKO') a_field(21, 'VYSKA') a_field(22, 'SVAZITOST') a_field(26, 'KU_KOD') global nodeid nodeid = 0 def convert(point): lon, lat = point lon, lat = transform(p1, p2, lon, lat) #lat += 50.013082018919185-50.013834 #lon += 14.748617781670555-14.749757 return lon, lat def write_point(point): global nodeid lon, lat = convert(point) tags = '<tag k="created_by" v="shpupload"/>' tags += '<tag k="source" v="lpis"/>' nodeid -= 1 print '<node id="%d" lon="%f" lat="%f\">%s</node>' % ( nodeid, lon, lat, tags ) return nodeid def attr(shrec, name): return shrec.record[field[name]] for shrec in sf.shapeRecords(): shape = shrec.shape pts = [] for point in shape.points: pts += [ write_point(point) ] nodeid -= 1 print '<way id="%d">' % nodeid print ' <tag k="created_by" v="pyshp"/>' print ' <tag k="id_fb" v="%s"/>' % attr(shrec, 'ID_FB') print ' <tag k="source" v="lpis"/>' print ' <tag k="lpis:kultura" v="%d"/>' % attr(shrec, 'KULTURA') kul = attr(shrec, 'KULTURA') if kul == 2: print ' <tag k="landuse" v="farmland"/>' elif kul == 3: print ' <tag k="landuse" v="hop_field"/>' elif kul == 30: print ' <tag k="landuse" v="hop_field"/>' elif kul == 31: print ' <tag k="landuse" v="hop_field"/><tag k="crop" v="hop"/>' elif kul == 41: print ' <tag k="landuse" v="vineyard"/><tag k="barrier" v="fence"/>' elif kul == 61: print ' <tag k="landuse" v="orchard"/><tag k="barrier" v="fence"/>' elif kul == 62: print ' <tag k="landuse" v="orchard"/>' elif kul == 7: print ' <tag k="landuse" v="meadow"/><tag k="meadow" v="agricultural"/>' elif kul == 71: print ' <tag k="landuse" v="meadow"/><tag k="meadow" v="agricultural"/><tag k="barrier" v="fence"/>' elif kul == 72: print ' <tag k="landuse" v="meadow"/><tag k="meadow" v="agricultural"/>' elif kul == 91: print ' <tag k="landuse" v="forest"/><tag k="barrier" v="fence"/>' elif kul == 92: print ' <tag k="landuse" v="farm"/><tag k="crop" v="vegetables"/>' elif kul == 97: print ' <tag k="landuse" v="reservoir"/>' elif kul == 98: print ' <tag k="landuse" v="forest"/><tag k="note" v="rychle rostouci dreviny"/>' elif kul == 99: print ' <tag k="landuse" v="forest"/>' else: print ' <tag k="landuse" v="unknown_farmland_%d"/>' % kul print ' <tag k="ele" v="%d"/>' % attr(shrec, 'VYSKA') print ' <tag k="ref" v="%s"/>' % attr(shrec, 'NKODFB') for pt in pts: print ' <nd ref="%d"/>' % pt print '</way>' print '</osm>'
_______________________________________________ Talk-cz mailing list Talk-cz@openstreetmap.org https://lists.openstreetmap.org/listinfo/talk-cz