Právě byla vydána verze Alfa 0.3 map1.eu. Na vykreslování dlaždic tato verze nic nemění, je totiž zaměřena na uživatelské rozhraní. Kromě oprav chyb je výrazně vylepšen tisk.
Jedním z cílů map1.eu je snadný tisk map z internetu. Každý, kdo jste si zkoušel vytisknout mapu ať už ze Seznamu nebo z jiného serveru, mi snad dáte za pravdu, že to není nic pěkného. Zaplnit mapou celou stránku je takřka nemožné a chtít, aby byl tisk nakalibrován například na měřítko 1:50000 zůstane navždy nevyplněným přáním. Vytisknutí více stran se stává misí, která vám zabere celé odpoledne.
Chci to změnit. Map1eu tiskne do PDF. Umožňuje si vybrat přesnou oblast, kterou chcete tisknout, měřítko, formát a orientaci stránky. Vygenerovaný dokument se pak podobá autoatlasu. Obsahuje přehledovou stránku, kde je klad dalších listů a jednotlivé listy mapy obsahují odkazy na další stránky. Zatím je to jen začátek. Do budoucna plánuji přidat legendu, jmenný rejstřík a mnoho dalšího.
Technická poznámka: PDFka jsou generována javaskriptem na straně klienta, což znamená, že pro server je operace tištění mapy pouze poskytování statického obsahu (dlaždic s mapou). To výrazně zvyšuje kapacitu, kterou je server schopný obsloužit. Do budoucna chci nechat počítat klienta místo serveru co nejvíce. Například i routování bych rád prováděl pomocí javaskriptu na straně prohlížeče. Jediná nevýhoda tohoto řešení je v tom, že ke stažení velkého souboru (malé lze stahovat i jinak) vygenerováného javaskriptem je třeba flash (downloadify). Nezbývá než doufat, že do budoucna tato povinnost odpadne.
Další verze (0.4 alfa) se bude opět věnovat samotné mapě. Na githubu, zde na blogu a v mé hlavě se nashromáždilo mnoho problémů. Rád bych jich většinu vyřešil a proto patrně bude vydání nové alfy trvat trochu déle než obvyklých 14 dnů.
Výsledek snahy strukturovaně sepsat cíle příští alfy je tento:
Je to pro mě příjemné překvapení. Poté, co jsem v minulém článku, poprosil o finanční i jinou podporu, se skutečně našlo několik z vás, kteří na map1.eu přispěli. K dnešnímu datu se mi podařilo „vyžebrat“ 2500Kč. Sice to není částka, která by mě uživila (projektu se nyní věnuji na 90% úvazku), ale pomůže mi zaplatit servery na 2 měsíce dopředu. Největší pozitivum této skutečnosti však je, že mi tato Vaše podpora vlévá elán do žil. A ten elán mě drží v noci v bdělém stavu nad klávesnicí počítače o pár chvil déle.
A když jsme u těch serverů, tak se našel sponzor, který mi poskytne výpočetní výkon. Zatím jsem ve fázi instalace, takže se může ještě něco pokazit a celá věc zhatit. Proto jeho jméno zatím neprozradím. (Kdyby byla náhodou zkušenost negativní, tak abych mu neuškodil).
Ještě jednou děkuji všem, kteří mě podporují finančně i jinak. Předem děkuji i těm, kteří tak v budoucnu učiní. Velký dík také patří Vám všem, kteří nahlašujete chyby na githubu i zde na blogu.
Dik. S tim nemeckem to vim. Je to muj preklep. Nazvy zemi v malych zvetsenich kreslim z vlastnorucne nakresleneho osm souboru, protoze sem je chtel mit zaobleny.Problem je ze ted mam rendering malych zvetseni rozvrtanej. A nemam jak to rychle opravit. Ale snad dalsi verze uz bude ok.
Lze někde stáhnout mapu ve formátu PNG (Celá republika v maximálním zvětšení) pro offline (python scriptík http://www.abclinuxu.cz/poradna/linux/show/374495 ) ?
V png to nejde, protoze tili ukladam v jpg (z duvodu setreni prostorem). Stahnout vsechny jpg dlazdice by slo treba wgetem, nebo jakokoliv jinak a pak je spojit nejakym skriptem. Jenom bych chtel upozornit ze vsechny dlazdice majei neco pres 100GB dat tak prosim budte setrny. Mam omezene prostredky.
Pocin je to jiste zajimavy, jen mi to prijde jako trochu nevdecna prace. Nebylo by lepsi tento telocvik provozovat radsi primo pod hlavickou OSM? Oni jsou sice radi, kdyz jejich podklady renderuje nekdo jiny a nezatezuje jejich infrastrukturu, i tak maji ale urcite k dispozici radove vetsi zdroje. Vygenerovat jednou podklady a rucne je upravovat je urcite zajimave, ale to se u map bude muset delat stale dokola, jinak zastaraji a po desate uz to moc legrace nebude. K tomu ten vypocetni vykona, ulozny prostor a mnozstvi prenasenych dat, to je pro jednotlivce dost vrazedne, zvlast kdyz by se rad soustredil spis na pridanou funkcionalitu jako jsou PDF atlasy.
Ten JPG vs. PNG mi taky prijde zvlastni - PNG pokud se dela z obrazu s ostrymi konturami atd. tak vetsinou vychazi lip (tzn. mensi nebo v lepsi kvalite) nez JPG, ktery navic barevne zkresluje.
Pěkný. Na poklepání mi to nechce přidávat bod do trasy, ale zvětšuje mapu, což se mi líbí. Ono to šlo asi i v předchozích verzích, ale nedělalo mi to hned od začátku (moc jsem to, pravda, taky ani nezkoušel). Část naší ulice chybí, ale to je tak v hodně mapách. Moc pěkná práce, to bych chtěl taky umět (a mít tu trpělivost).
Tisk - dokonalost sama! Jen bych snad lehce zpruhlednil pozadi u cisel stranek/ciselnych odkazu, nadmerne zakryvaji mapu.
Docela postradam jakykoli meritko aktualniho zobrazeni - nejlepe formou maleho "pravitka" v (levem?) dolnim rohu. Pokud by vedle nej bylo mritko i formou 1:neco, bylo by to dokonaly :) (hlavne by pak clovek snaz vedel, jaky meritko se mu hodi zvolit pro tisk).
U ovladaciho panelu chybi popisky pri najeti mysi - hlavne u "about" clovek nevi, na co vlastne klika ...
"About" by mohlo byt prelozeny ;) stejne jako popisky vzdalenosti atd u vyhledavani - kdyz uz je prelozeny tisk.
Znazorneni vyhledane trasy je docela nehezky, hlavne u vetsich priblizeni silne matouci (hlavne nadmerna sirka).
Hodila by se nejaka legenda, nejlepe formou nove polozky v menu. Jen stezi sem tipoval, ze ty fialovy cary, co se tahnou mestem, sou asi cyklotrasy. Podobne u hranic vsemoznych rezervaci atd.
Hodne rad slysim, ze se podarilo sehnat sponzora :) map1.eu hodlam silne propagovat mezi svymi znamymi (zatim vsak jen u technicky znalejsich, kteri pochopi, ze je to ve vyvoji - ostatni az pozdeji, aby je nedoladenosti neodradily).
Diky a hodne stesti!
To Comodet: OSM je nadace neni to vydelecna firma. Me budouci plany jsou castecne i komercniho charakteru a chci se tim zivit. Pevne douvam ze zdroje na to mapu pravidelne pregenerovavat sezenu. Co se tyka toho PNG vs JPG tak zalezi na kvalite, kterou se JPG komprimuje, ja nyni pokud se dobre pamatuju pouzivam 85. Vysledek je dvakrat mensi nez PNG, overeno prakticky.
Moc dekuji za konstruktivni pripominky.
Ad Cisla stranek: Chtel sem udelat pruhledne, bohuzel jspdf pruhlednost zatim neumoznuje, musel bych to kreslit rastrove pres canvas, coz se mi moc nechce.
Ad Meritko: Urcite bude
Ad popisky: Popisky jsou v planu
Ad preklady: Taktez v planu
Ad legenda: Legenda je take v planu a bude se pridavat i do tisteneho pdf
Ad cyklotrasy: S cyklo trasama ve meste mam velky problem, zatim s jejich renderovanim bojuju.
Ad PNG: taky bych se divil, pokud by JPG bylo mensi. Zrovna v tomto pripade bych tipoval, ze rozdil bude v nasobcich velikosti ve prospech PNG - hlavne po prohnani pres pngcrush :-P
(uz jenom primitivnim postupem preulozeni JPG dlazdice do GIF [snizeni poctu barev] a pak do PNG sem se dostal pod dvojnasobek velikosti JPG; pres rozumne vypadajici posterize sem se pak JPG velikosti vylozene priblizil. S cistym obrazem by to jiste slo jeste lip... a to sem vybral docela komplexni kousek)
Obdivuji kvalitu vyrenderování map a data, která obsahují. OSM znám důvěrně, občas mapuji, ale na OSM.org je např. v lese vidět jen zmatek, zatímco na map1 je bůhvíproč vidět krásně právě to, co vidět být má, tj. turistické cesty a vrstevnice. Naprosto nechápu, proč to OSM.org neumí taky tak pěkně vyrenderovat - nebo jsou do map1 nějaká data přidaná odjinud?
To je dost Česká odpověď. Za prvé jsem se ptal na něco jiného, než na co odpovídáte. Za druhé chci jen vědět, jak to máte zařízené, ne se v něčem rýpat. Rád bych se přiučil, kde jsou meze komerčního využití. Zatím marně hledám, kde jsem původně informaci o nekomerčním použití našel. Všude je "pouze pro vědecké účely". Až to najdu, tak mi jistě odpovíte.
O non-commercial licenci jsem cerpal zde: http://wiki.openstreetmap.org/wiki/SRTM. Proto jsem take vyrenderovana data poskytl s non commercinal licenci. Co se ASTER tyka tak tam je situace neprehledna a na tom zda-li se pouzivat smeji ci ne neexistuje konsenzus. Jinak pravdepodobne vim stejne malo jako vy. To priznavam. Na to zaplatit si pravniky (kteri by stejne k nicemu nedosli), k tomu, aby zkoumali zda-li jsou vrstevnice pouzite v mape, ktera je poskytovana spolecne ze sluzbou za kterou se plati, jejim komercnim vyuzitim, nemam penize. Proste to risknu a odpovim si, ze ne. Kdybych nebyl schopen, alespon takovehoto elementarniho rizika, tak bych v dnestnim svete softwarevych patentu a navodu jak nestrkat kocku do mikrovlnky nevychazel radsi ani z domu. Ale pokud se to jako problem ukaze, nebudu v tom rozhodne sam.
Nešlo by pod nápisy (jména obcí atp.) dát bílý poloprůhledný obdélník? O dost lépe by se četly. Obecně by obydlené zóny mohly být trochu světlejší.
Zvlášť oceňuju, že jsou vrstevnice zakulacené (pomáhá čitelnosti mapy) a že vodní plochy jsou tmavě modré a výrazné (protože na osm.org jsou světlejší než les).
Také bych chtěl upozornit na určitě známý projekt na http://tchor.fi.muni.cz (momentálně nedostupný?), který má podobné cíle a z nějakého důvodu se mi ta jeho mapa zdá místy čitelnější. Určitě byste mohli spojit síly.
Hodně zdaru!
V soucasnosti je to skutecne jen tak jak to vyjde. Cili radove tydny az mesice. Do budoucna bych s tim chtel neco udelat, evidovat zmeny a generovat jen to co se prave zmenilo. Pak by to mohli byt mozna radove i dny mozna desitky hodin. Soucasne verzi v CR je neco pres 20 dnu. Pokud se nezobrazuji starsi znacky, tak mi prosim dejte vedet, muze to byt bug.
nezobrazuje se například modrá turistická značka vedoucí ze stanice Litice do Bohousové, kterou jsem v tomto úseku zakreslil dne 22.2.2013 (OSM Relace: 2280719)
viz http://alpha.map1.eu/#zoom=15&lat=50.08788&lon=16.37207&layers=BT
Znovu nezbývá, něž pochválit tvoji snahu a elán. Myslím si, že takováhle aplikace tady skutečně chyběla.
Už od tvého prvního článku mi vrtá hlavou jeden červíček - co kdybys místo renderování milionu dlaždic a jejich posílání do browseru, renderoval aktuální výřez přímo browserem - javascriptem. Na serveru bys pak mohl mít připravené vektoriální dlaždice řekněme 10x10km a alternativně 100x100km s menšími podrobnostmi a browser by si stáhnul typicky 4 dlaždice a z nich by vykreslil konkrétní výřez.
Nevím, jeslti jsi přemýšlel třeba i o téhle variantě, jednak o jaký objem dat by se jednalo (určitě o několik řádů menší, než grafické dlaždice) a hlavně jestli by toho byl javascript v reálném čase schopen (a jestli by ten javascriptový program neměl 100 mega :-).
Ještě poznámka pro ty, co oprávněně říkají, že tam a ta ulice v mapě chybí. Běžte na http:///www.openstreetmap.org, zaregistrujte se tam a opravte to. Není to vůbec nic složitého a je to zábava na dlouhé zimní večery. Jak se do toho jednou pustíš, nevíš, kdy přestat :-) Ale hlavně je to užitečné pro všechny, kdo potom tuhle mapu používají. Můžeš si vždycky říct - tuhle ulici jsem tam namaloval já.
Dekuji za pochvalu. Premyslel sem o tom. Ale zatim chybeji technologie na to kreslit mapu javascripem. Programovat cely mapovy renderer v jedne osobe by bylo silenstvi a proto tak zatim necinim. Ale moje dlouhodoba vize je kreslit mapu pres WebGL a stahovat jenom GIS data ulozena v dlazdicich. Je to ale vzdalena budoucnost.
--Jediná nevýhoda tohoto řešení je v tom, že ke stažení velkého souboru (malé lze stahovat i jinak) vygenerováného javaskriptem je třeba flash (downloadify).--
Mrkni na HTML5 FileApi. "Blob" by měl pomoct. http://www.w3.org/TR/file-upload/ http://www.w3.org/TR/file-writer-api/
Pokud mohu pozadat, prosim o DOBRE zvazeni, zda generovat vse az javascriptem. Na mobilnich zarizenich a starsich browserech je to nepouzitelne. V soucasnosti ani google ani mapy.cz a mam pocit ze ani openstreetmap zadne light html rozhrani nema.
Spise bych se primlouval za distribuovane rendrovani. Svuj vypocetni vykon bych mohl dat k dispozici. Velice zajimava je moznost, ze by server registroval zajem o danou oblast, vystavil tickety a distribuovani klienti by na jejich zaklade rendrovali dlazdice. Pak by oblasti se zvysenym zajmem byly uprednostneny a samotny server by resil jen datove uloziste.
Renderovani javaskriptem je vzdalena budoucnost, a je jasne, ze krome ni by existovali i alternativni vyrenderovane obrazky. V prostredich, ktere by client-side rendereing umoznili by to vsak znamenalo obrovskou vyhodu. Mohli by si mapu natacet, plynule zvetsovat, vypinat ci zapinat v podstate cokoliv. To vsak nezname, ze nebude vzdycky existovat i fallback verze na serveru.
Jina otazka je routing pomoci javaskriptu, zde uznavam ze by to mohl byt pro nektera zarizeni problem. Tuto otazku proto porad jeste zvazuji.
Kazdopadne v obou pripadech se jedna o budoucnost spuise vzdalenou. Do prvni stable verze se urcite ani jedno ani druhe nedostane.
Dobrý den,
Pročítal jsem tady ty příspěvky a zaujalo mě jak se zde, naprosto vážně, diskutuje myšlenka javascriptového renderingu mapovách dat v browseru na počítači u klienta..
Kdysi jsem někde viděl pokusy, které takto renderovaly (spíše stylizovaly) data do svg - a byla to i pro můj, ani ne 10 let starý komp,) smrtelná nálož na výkon. (mmtálně nemám, bohužel, po ruce link co to bylo za projekt) Možná se ale časy změnily a co bylo kdysi obskurní hříčkou, tomu dnes patří budoucnost...
Tak bych se rád zeptal, pokud se tady někdo v té problematice trochu orientuje, v čem jsem zaspal dobu, když si pořád ještě myslím, že jde o naprostý nesmysl:
- pokud mluvíme o renderingu jako o nějakém jpg/png výstupu z vektorových dat.
- na serveru se tedy ušetří výkon který by tam padl na rendering, ale při vyšší návštěvnosti stránek se tedy vše bude u každého uživatele renderovat separátně? Není to úhrnem mnohonásobně vyšší, zbytečně spotřebovaný výkon? A při každém novém zazoomování/odzoomování se v browseru spustí další rendering? ( Protože si samozřejmě uvědomujeme, že pro každé zvětšení jsou jiné popisky, jiné zobrazené entity - vpodstatě jiná mapa.. ) Nejsou zábavnější způsoby jak usmažit planetu? (Dobrá, nemusí tady být každý hned ekolog..)
- v čem bude spočívat náplň projektu jako je například zrovna tento? Pokud si každý upgraduje procesory a nakoupí ramky aby si mohl renderoat sám u sebe, tak si taky nejspíš bude renderovat po svém... přizpůsobí si zobrazení svým potřebám a nebude se obtěžovat nějakými bugreporty, aby se mu někdo v mapě možná někdy zobrazil ostrovy a neschovával značky pod řekou... Takže jaká položka zůstane v budoucnu částečně komerční mapě1.eu jako onen tahák na štědré přispivatele? Že by "tailing dat" ??!
- uff. TAILING DAT... Původně jsem se tomu chtěl jenom smát (než jsem zjistil, že jsem naprosto paralyzován údivem a zděšením) S prominutím, dlaždicování map je úžasná technologie, která svým nástupem nesmírně zrychlila (zinteraktivnila) práci s mapou a přitom ušetřila obrovské, jinak promrhané výpočetní výkony, oproti do té doby používaným WMS a CGI (python, php..) renderingem přímo do okna. Technologie, které generovaly na každé vyžádání nový, ale podruhé již nepoužitelný obrázek byly nahrazeny předrenderovanými sadami dlaždic, které na sebe navazovaly a stačilo je prostě jenom poslat a poskládat. Opakovaně, libovolněkrát. Přineslo to nějaká omezení, například ve volbě měřítka a nehodilo se to pro dynamiká data.. Odpusťte, že si tady dovoluji připomínat a po svém přeformulovávat něco, co je asi obecně známé, rozhodně tím nechci říct, že tomu někdo nerozumí.
Takže: jedny data na serveru, jedenkráte realizovaný rendering, rychlá mapa.
A pak příjde někdo jiný a začne tvrdit: pomalé mapy nevadí (pokud je si tou pomalostí vinen klient sám), duplicitní rendering neřešíme (nejsme přeci žádní ekologové.. ) A jak je do s těmi daty? To je pro mě právě veliká záhada. Když bych měl něco takového řešit já, tak dobrá, data u sebe máme jednou a posíláme je klientovi na vyžádání do okna, ať si tam s nimi dělá co chce. S client-side renderingem prostě padá tailing to je jednoduché. Alespoň se navrátíme k výhodám libovolného zoomu a dynamických dat..
Ale vy chcete mít,.. jestli tomu dobře rozumím (doufám, že ne) u sebe celý dataset ... dejmetomu 20krát ..??? pro každé zvětšení jednou?? A pro to nejmenší měřítko naporcované po 30m2??
Ehm. PRO CELOU EVROPU??? ,DDD .)
Áánebo .. mít pouze dlaždice, jak tady radil někdo nade mnou, předporcované po 100m2 .. a jako takové je budete posílat i když někdo bude na mapě hledat brouka ve zvětšení 20? Jak se vlastně v tomto modelu řeší zobrazení malých měřítek? Pro zobrazení celé Evropy se posílá celá Evropa?
Áánebo .. všechno zůstane při starém, jenom se dlaždice (datové) budou generovat na vyžádání (aby stroj nezahálel, když už nemusí renderovat?)
Prostě záhada. Možná by to chtělo vymyslet (a nebo nastudovat) něco jako WFS.
Odpusťte délku příspěvku, ale je tak akorát adekvátní mojí dezorientaci.
Dekuji za obsahle zamysleni. Pokusim se odpovedet a co nejvicve vyjasnit:
1) Client side rendering, neni a nikdy nepude hlavni naplni prokejktu map1.eu, je to jen jedna z moznych cest, kterou zvazuji a vydam-li se po ni tak to nebude cesta jedina.
2) Rychlost vykreslovani map je absolutni priorita a nepujde-li nebude-li clientside rendering dostatecne rychly, nikdy nasazen nebude
3) Skutecne se jedna o generovani obrazovich dat primo na strane klienta nikoliv on request generovani map na strane serveru.
4) To podstatne co se posledni dobou meni je WebGL a SVG. Rozhodne se nebude generovat prim rastrovy obrazek. Data by byla stale tilovana, nikolv vsak primo v podobe obrazku, ale v podobe predzpracovanych vektorocych dat. Tilovana data by byla ukladana inkrementalne takze to co se stahne pro mensi zvestseni se pouzije pro zvetseni vetsi.
5) Uvedomuji si, ze toto reseni ma sva uskali a dost mozna je technicky nemozne, ale odmena takoveho reseni by byla stavnata.
6) Ad ekologie. Myslite ze by bylo ekoligictejsi predgenorovat normalni html stranky na serveru a posilat je klientovi jako obrazek? Vim ze to neni zcela totez, ale prenos zbytecne redundatnich dat take necoo stoji.
7) Komerce: 99% uzivatelo si nic upravovat nebude a bude pouzivat jiz hotove. Nikdy nechci prodavat mapu samotnou, ale doplnkove sluzby.
8) Vyhody clientside renderingu jsou opravdu velke. Napr. Libovolna rotace mapy, libovolne spojite zvetseni. Nevic pomoci 3D moznost volitelneho hillshadingu, treba podle denni doby (zajimava moznost pro paraglidisty).
Od té doby, co existuje https://github.com/kripken/emscripten/wiki je portace C++ programů do Javascriptu poměrně realizovatelná. Nejspíš by tak šel portovat i ten mapnik
Výborná práce. Snad jen připomínka, pokud jsou data z OSM, tak v centru mapy, viz odkaz se nevykreslí 50ha vodní plocha, která v OSM zakreslena je.
http://alpha.map1.eu/#zoom=14&lat=49.69314&lon=14.66902&layers=BT
Zdravím,
v tom pdf, které si vygeneruju a stáhnu, mi docela vadí artefakty vzniklé ztrátovou jpg kompresí. Líbilo by se mi, pokud by bylo pdf v takové kvalitě, aby sneslo několikanásobný zoom. Pak bych si mapu stáhnul do tabletu a používal offline v terénu. Pro tento use-case by se také hodila možnost generovat pdf s jedinou velkou stránkou (vůbec by se nestránkovalo - nekouskovalo např. na A4ky). Dále by to pdf mohlo být vektorové :-) Tolik co mě napadlo - nevím co je reálné.
PS: Je mi jasné, že zoom v pdf je něco jiného než online zoom v mapě, kdy se zoomem mění i vzhled a podrobnost mapy.