« zpět na výpis měsíce |

[Talk-cz] Openlayers - kombinace vrstev v různých projekcích

Vlákno 12.11. - 14.11.2010, počet zpráv: 10


12.11.2010 10:19:45 (#1)
gravatar

Petr Dlouhý

<petr.dlouhy at email.cz>
607
Ahoj, není tu nějaký znalec Openlayers, který by mi dokázal poradit? Snažím se prohloubit spolupráci mezi Prahounakole.cz a Openstreetmap. Pokouším se dostat mapu z Prahounakole do Openlayers tak, aby byla lépe ovladatelná a aby šlo jednoduše přepínat na vrstvy Openstreetmap. Ukázka výsledku mého úsilí je na [1], konfigurační skript na [2]. Bohužel mi nefunguje správně přepínání mezi vrstvami Prahounakole a ostatními. Udělal jsem projekci, která převádí pixelové hodnoty z Prahounakole na WGS (i na projekci Google). Když mám pouze vrstvu Prahounakole, tak vše funguje správně - ukazuje to správnou pozici a funguje i ikonový overlay, který je též ve WGS. Nefunguje ale overlay s hranicí mapy, který je v projekci Google. Především ale nefunguje správně přepínání mezi ostatními vrstvami a i ikonový overlay se nad nimi zobrazuje špatně. Je zajímavé, že když vypnu vrstvu Prahounakole, tak se ikonový overlay zobrazí správně. Nevíte tedy někdo, kde je chyba? Poznámka na závěr: musel jsem upravit OpenLayers.Layer.XYZ, ve kterém byla chyba (alespoň tak se mi to jeví) - viz [3]. [1] http://prahounakole.wz.cz/map.html [2] http://prahounakole.wz.cz/prh.js [3] http://trac.osgeo.org/openlayers/ticket/2892 -- Petr Dlouhý

13.11.2010 01:04:39 (#2)
gravatar

Radek Bartoň

<blackhex at post.cz>
149
Dne pátek 12 Listopad 2010 22:19:45 Petr Dlouhý napsal(a): zobrazit citaci
> Ahoj,
Ahoj. Setkal jsem se se stejným problémem, když jsem chtěl zobrazit Google Maps na OpenTrackMap. Vygooglil jsem, že to má něco společného s nastavením výstupní projekce (ta, která se používá po konečné zobrazení), ale k řešení jsem se už nedostal, takže by mě to taky zajímalo. S pozdravem, -- Ing. Radek Bartoň Faculty of Information Technology Department of Computer Graphics and Multimedia Brno University of Technology E-mail: blackhex na post.cz Web: http://blackhex.no-ip.org Jabber: blackhex na jabber.cz

13.11.2010 11:39:16 (#3)
gravatar

Zbynek Winkler

<zbynek.winkler at gmail.com>
7
Já jsem se snažil openlayers pochopit několik víkendů, ale nakonec jsem to vzdal. Vlastní množství kódu a spousta všelijakých kejklů... Projekce, maxExtent, resolutions, zoom, markery - všechno jeden velký zmatek. Byl jsem rád, když jsem našel polymaps. Mají jen cca 50kB kódu a je docela pochopitelný a že je třeba mít browser s svg mi nevadí. Zbyněk 2010/11/12 Petr Dlouhý <petr.dlouhy na email.cz>: zobrazit citaci
> Ahoj, > > není tu nějaký znalec Openlayers, který by mi dokázal poradit? > > Snažím se prohloubit spolupráci mezi Prahounakole.cz a Openstreetmap. > Pokouším se dostat mapu z Prahounakole do Openlayers tak, aby byla lépe > ovladatelná a aby šlo jednoduše přepínat na vrstvy Openstreetmap. Ukázka > výsledku mého úsilí je na [1], konfigurační skript na [2]. > > Bohužel mi nefunguje správně přepínání mezi vrstvami Prahounakole a > ostatními. > > Udělal jsem projekci, která převádí pixelové hodnoty z Prahounakole na WGS > (i na projekci Google). Když mám pouze vrstvu Prahounakole, tak vše > funguje správně - ukazuje to správnou pozici a funguje i ikonový overlay, > který je též ve WGS. Nefunguje ale overlay s hranicí mapy, který je v > projekci Google. Především ale nefunguje správně přepínání mezi ostatními > vrstvami a i ikonový overlay se nad nimi zobrazuje špatně. Je zajímavé, že > když vypnu vrstvu Prahounakole, tak se ikonový overlay zobrazí správně. > > Nevíte tedy někdo, kde je chyba? > > Poznámka na závěr: musel jsem upravit OpenLayers.Layer.XYZ, ve kterém byla > chyba (alespoň tak se mi to jeví) - viz [3]. > > [1] http://prahounakole.wz.cz/map.html > [2] http://prahounakole.wz.cz/prh.js > [3] http://trac.osgeo.org/openlayers/ticket/2892 > > > -- > Petr Dlouhý > > _______________________________________________ > Talk-cz mailing list > Talk-cz na openstreetmap.org > http://lists.openstreetmap.org/listinfo/talk-cz >

13.11.2010 11:58:43 (#4)
gravatar

hanoj

<ehanoj at gmail.com>
718
zobrazit citaci
> Udělal jsem projekci, která převádí pixelové hodnoty z Prahounakole na WGS > (i na projekci Google). Když mám pouze vrstvu Prahounakole, tak vše > funguje správně - ukazuje to správnou pozici a funguje i ikonový overlay, > který je též ve WGS. Nefunguje ale overlay s hranicí mapy, který je v > projekci Google.
*** vzdycky jsem spise premyslel zda Prahou na kole nenacpat do OSM. Je to tak zdrobnela mapa ze se snad hodi jen pro specialisty. zobrazit citaci
> Především ale nefunguje správně přepínání mezi ostatními > vrstvami a i ikonový overlay se nad nimi zobrazuje špatně. Je zajímavé, že > když vypnu vrstvu Prahounakole, tak se ikonový overlay zobrazí správně. > > Nevíte tedy někdo, kde je chyba? > > Poznámka na závěr: musel jsem upravit OpenLayers.Layer.XYZ, ve kterém byla > chyba (alespoň tak se mi to jeví) - viz [3].
*** tva mapa mi nejde, ale... tady jsem pred pul rokem resil neco WGS vs. Mercator a napojeni na Geoserver+Postgis/Postgresql. Mel jsem za to ze rastr, narozdil od vektoru, nelze v OLayers JS pres projekce prevadet. Zpravidla se to resilo (jako to ma BNHELP) nejakym map serverem ktery pozadovane transformace dela na strane (proxy)serveru. http://gis.templ.net/nakole/index.html http://gis.templ.net/nakole/index2.html http://nakole.templ.net/kudy_jezdis/ ahoj hanoj

13.11.2010 12:34:38 (#5)
gravatar

Petr Dlouhý

<petr.dlouhy at email.cz>
607
On Sat, 13 Nov 2010 11:58:43 +0100, hanoj <ehanoj na gmail.com> wrote: zobrazit citaci
> *** vzdycky jsem spise premyslel zda Prahou na kole nenacpat do OSM. > Je to tak zdrobnela mapa ze se snad hodi jen pro specialisty. >
Myslím, že se hodí do OSM dávat jen některé věci - například stojany ano, ale trasy Prahounakole nebo upozornění na množství chodců už možná ne. Navíc na Prahounakole jsou různé komentáře, fotky, videa, odkazy, které se v této podobě do OSM taky asi nehodí. Každopádně OSM cycle map je na dost špatné úrovni, takže by to vyžadovalo udělat vlastní nastavení rendereru, a všechny ty věci okolo. To mi přišlo jako o dost víc práce, než nacpat do OpenLayers to, co už je, alespoň prozatím. Ty data by navíc bylo nutné často ručně zakomponovávat do mapy. Nejlepší by asi bylo tlačit Cycle mapu k tomu, aby začala vykreslovat všechny důležité objekty, a postupně to přidávat data do OSM. Nezná někdo náhodou mapu generovanou z OSM na které by všechny ty vlastnosti/objekty (protisměrky pro cyklisty, pruhy, piktokoridory, špatný povrch) byly správně vykreslené, a která by byla čitelnější než Cycle map? zobrazit citaci
> *** tva mapa mi nejde, ale... tady jsem pred pul rokem resil neco WGS > vs. Mercator a napojeni na Geoserver+Postgis/Postgresql. > Mel jsem za to ze rastr, narozdil od vektoru, nelze v OLayers JS pres > projekce prevadet. Zpravidla se to resilo (jako to ma BNHELP) nejakym > map serverem ktery pozadovane transformace dela na strane > (proxy)serveru.
No jediné co chci je, aby se při přepnutí vrstvy nastavil střed na stejné místo v nové projekci, a aby se nastavil zoom co nejbližší tomu předchozímu. Myslel jsem, že by něco takového umět mohl, už proto, že ty transformace provádět umí (vrstva ikonek ve WGS se v klidu zobrazí nad vrstvou v pixelové projekci od Prahounakole). -- Petr Dlouhý

13.11.2010 01:35:16 (#6)
gravatar

hanoj

<ehanoj at gmail.com>
718
zobrazit citaci
>> *** vzdycky jsem spise premyslel zda Prahou na kole nenacpat do OSM. >> Je to tak zdrobnela mapa ze se snad hodi jen pro specialisty. >> > > Myslím, že se hodí do OSM dávat jen některé věci - například stojany ano, > ale trasy Prahounakole nebo upozornění na množství chodců už možná ne. Navíc > na Prahounakole jsou různé komentáře, fotky, videa, odkazy, které se v této > podobě do OSM taky asi nehodí.
*** mapa Prahou na kole je spise databaze cyklo-infrastruktury a prostredi nez prujezdni/orientacni mapa. zobrazit citaci
> Každopádně OSM cycle map je na dost špatné úrovni, takže by to vyžadovalo > udělat vlastní nastavení rendereru, a všechny ty věci okolo. To mi přišlo > jako o dost víc práce, než nacpat do OpenLayers to, co už je, alespoň > prozatím.
*** to je urcite krok dobrym smerem. zobrazit citaci
> Ty data by navíc bylo nutné často ručně zakomponovávat do mapy. > Nejlepší by asi bylo tlačit Cycle mapu k tomu, aby začala vykreslovat > všechny důležité objekty, a postupně to přidávat data do OSM.
*** Problem OCM je, ze je closed source v kombinaci s one man show. Spousta veci je jako bug znama leta. (napr. cycleway=track, nebo tram+tertiary) zobrazit citaci
> Nezná někdo náhodou mapu generovanou z OSM na které by všechny ty > vlastnosti/objekty (protisměrky pro cyklisty, pruhy, piktokoridory, špatný > povrch) byly správně vykreslené, a která by byla čitelnější než Cycle map?
http://osm.t-i.ch/bicycle/map/ http://www.freemap.sk/#p=48.12856|17.13783|15|C,m=C http://gemedeplace.free.fr/MonOsm.html v kodani zatim jen routing http://www.cyclecopenhagen.dk/3c/master.php# zobrazit citaci
>> *** tva mapa mi nejde, ale... tady jsem pred pul rokem resil neco WGS >> vs. Mercator a napojeni na Geoserver+Postgis/Postgresql. >> Mel jsem za to ze rastr, narozdil od vektoru, nelze v OLayers JS pres >> projekce prevadet. Zpravidla se to resilo (jako to ma BNHELP) nejakym >> map serverem ktery pozadovane transformace dela na strane >> (proxy)serveru. > > No jediné co chci je, aby se při přepnutí vrstvy nastavil střed na stejné > místo v nové projekci, a aby se nastavil zoom co nejbližší tomu předchozímu. > Myslel jsem, že by něco takového umět mohl, už proto, že ty transformace > provádět umí (vrstva ikonek ve WGS se v klidu zobrazí nad vrstvou v pixelové > projekci od Prahounakole).
*** ikonky myslis z Prahou na kole nebo ikonky GUI? Zmenu vychozi projekce za behu, je nad moje pokusy s OL. PS: zkousel jsem rozjet tvuj vyborny skript na ale v posledni verzi mi haze error (oproti te starsi srovnane wiki-diff): http://wiki.openstreetmap.org/w/index.php?title=Cyklotrasy_v_%C4%8CR%2Fskript&action=historysubmit&diff=403144&oldid=333761 $ java -Xmx700M -classpath /usr/share/java/saxonb.jar net.sf.saxon.Transform bnk.osm bicycle2wiki.xsl | awk -f relan.awk > bnk_wiki.txt Error on line 17 column 42 of file:/../bicycle2wiki.xsl: SXXP0003: Error reported by XML parser: The element type "span" must be terminated by the matching end-tag "</span>". Failed to compile stylesheet. 1 error detected. diky hanoj

13.11.2010 02:01:06 (#7)
gravatar

Petr Dlouhý

<petr.dlouhy at email.cz>
607
On Sat, 13 Nov 2010 13:35:16 +0100, hanoj <ehanoj na gmail.com> wrote: zobrazit citaci
> *** ikonky myslis z Prahou na kole nebo ikonky GUI? Zmenu vychozi > projekce za behu, je nad moje pokusy s OL.
Ikonky jsou z Prahou na kole, ale tahá se to z překonvertovaného CSV, ve kterém jsou souřadnice ve WGS. Ten odkaz (http://prahounakole.wz.cz/map.html) mě funguje v Opeře i ve Firefoxu, akorát se to ze začátku trochu dýl natahuje. Ke každé vrstvě je možné nastavit projection, ale bohužel to někdy nefunguje tak, jak bych očekával. zobrazit citaci
> > PS: zkousel jsem rozjet tvuj vyborny skript na ale v posledni verzi mi > haze error (oproti te starsi srovnane wiki-diff): > http://wiki.openstreetmap.org/w/index.php?title=Cyklotrasy_v_%C4%8CR%2Fskript&action=historysubmit&diff=403144&oldid=333761 > > $ java -Xmx700M -classpath /usr/share/java/saxonb.jar > net.sf.saxon.Transform bnk.osm bicycle2wiki.xsl | awk -f relan.awk > > bnk_wiki.txt > Error on line 17 column 42 of file:/../bicycle2wiki.xsl: > SXXP0003: Error reported by XML parser: The element type "span" must > be terminated by the > matching end-tag "</span>". > Failed to compile stylesheet. 1 error detected.
Skript jsem aktualizoval, takže to zkus teď. zobrazit citaci
> > > > diky > hanoj > > _______________________________________________ > Talk-cz mailing list > Talk-cz na openstreetmap.org > http://lists.openstreetmap.org/listinfo/talk-cz
-- Petr Dlouhý

13.11.2010 06:21:07 (#8)
gravatar

hanoj

<ehanoj at gmail.com>
718
zobrazit citaci
>> *** ikonky myslis z Prahou na kole nebo ikonky GUI? Zmenu vychozi >> projekce za behu, je nad moje pokusy s OL. > > Ikonky jsou z Prahou na kole, ale tahá se to z překonvertovaného CSV, ve > kterém jsou souřadnice ve WGS. Ten odkaz > (http://prahounakole.wz.cz/map.html) mě funguje v Opeře i ve Firefoxu, > akorát se to ze začátku trochu dýl natahuje. Ke každé vrstvě je možné > nastavit > projection, ale bohužel to někdy nefunguje tak, jak bych očekával.
*** tak se asi na 10 pokus vetsina knihoven do 5 min z wz.cz stahla, tedy uz mapu vidim. No kdyz do toho koukam zadnou chybu na 1 pohled nevidim. Podle toho ale, ze se pod mapnikem zobrazuji ikony do oblasti wgs84 lat/lon 0/0 bych si myslel, ze je problem tento: Stale si myslim (podle pameti s OL 2.8), ze je nutne mit vsechny rastrove vrstvy v jedne projekci a to v nasem pripade EPSG 900913. A ty vrstvu prahounakole prevadis z neceho bez projekce do 4326, nemylim-li se. OL s mapnikem ocekavame, ze : displayProjection: new OpenLayers.Projection("EPSG:4326") a vsechny tile vrstvy jsou v jedne projekci. projection: new OpenLayers.Projection("EPSG:900913") a vektorovou vrstvu lze za pomoci vnitrnich mechanismu prevest do EPSG 900913 (napr z 4326) projection: new OpenLayers.Projection("EPSG:4326") zobrazit citaci
> Skript jsem aktualizoval, takže to zkus teď.
*** supr funguje hanoj

13.11.2010 06:32:59 (#9)
gravatar

Petr Dlouhý

<petr.dlouhy at email.cz>
607
On Sat, 13 Nov 2010 18:21:07 +0100, hanoj <ehanoj na gmail.com> wrote: Já doufám, že už jsem našel v čem je problém. Chyba je v Openlayers, které neaktualizují po přepnutí správně střed - viz bug [1], který obsahuje patch a již 2 roky čeká na commitnutí. Na [2] je ukázka, která používá opravené Openlayers, a funguje to tam. [1] http://trac.osgeo.org/openlayers/ticket/1249 [2] http://dev.openlayers.org/sandbox/edgemaster/openlayers/examples/multiple-projections.html zobrazit citaci
> *** tak se asi na 10 pokus vetsina knihoven do 5 min z wz.cz stahla, > tedy uz mapu vidim. > No kdyz do toho koukam zadnou chybu na 1 pohled nevidim. Podle toho > ale, ze se pod mapnikem zobrazuji ikony do oblasti wgs84 lat/lon 0/0 > bych si myslel, ze je problem tento: > Stale si myslim (podle pameti s OL 2.8), ze je nutne mit vsechny > rastrove vrstvy v jedne projekci a to v nasem pripade EPSG 900913. A > ty vrstvu prahounakole prevadis z neceho bez projekce do 4326, > nemylim-li se. > OL s mapnikem ocekavame, ze : > displayProjection: new OpenLayers.Projection("EPSG:4326") > a vsechny tile vrstvy jsou v jedne projekci. > projection: new OpenLayers.Projection("EPSG:900913") > a vektorovou vrstvu lze za pomoci vnitrnich mechanismu prevest do EPSG > 900913 (napr z 4326) > projection: new OpenLayers.Projection("EPSG:4326")
-- Petr Dlouhý

14.11.2010 12:36:02 (#10)
gravatar

Petr Dlouhý

<petr.dlouhy at email.cz>
607
Ahoj, tak už to funguje (1), a mělo by být opraveno i zdlouhavé natahování - bylo nutné aplikovat patch t1249r7916.Reproject.patch z [2] na verzi 2.8. [1] http://prahounakole.wz.cz/map.html [2] http://trac.osgeo.org/openlayers/ticket/1249 On Sat, 13 Nov 2010 18:32:59 +0100, Petr Dlouhý <petr.dlouhy na email.cz> wrote: zobrazit citaci
> Já doufám, že už jsem našel v čem je problém. Chyba je v Openlayers, > které neaktualizují po přepnutí správně střed - viz bug [1], který > obsahuje patch a již 2 roky čeká na commitnutí. Na [2] je ukázka, která > používá opravené Openlayers, a funguje to tam. > [1] http://trac.osgeo.org/openlayers/ticket/1249 > [2] > http://dev.openlayers.org/sandbox/edgemaster/openlayers/examples/multiple-projections.html
-- Petr Dlouhý

« zpět na výpis měsíce