Ahoj,

uvažoval jsem podobně ... zatím tedy o JOSM a API pro pluginy moc
nevím. A v Javě jsem něco naposledy před x lety (nějaké drobnosti tedy
i později, ale mnohem větší zkušenosti mám s .NETem). Přepsat jádro
algoritmu do Javy by asi takový problém nebyl (tedy tu část, která
vezme 2D pole bytů (byte = pixel) a souřadnici kliknutí a vrátí
seřazený seznam souřadnic vrcholů polygonu obrysu budovy). Horší pro
mne bude se stahováním a cachování bitmap, jejich spojováním pro účely
trace, převáděním na pole bytů (kvůli rychlosti ... v .NETu na to
používám unmanaged kód). Tedy takovými věcmi, kde jsou třeba znalosti
nejen jazyka Java, ale i různých knihoven.

A otázka je, jak to bude rychlé v čisté Javě. Spíše jsem uvažoval i
nad přepisem toho jádra do nativního C či C++.

Včera jsem na ten plugin lake-walker zběžně koukal, inspirovat by se z
toho jistě dalo. Zda by z toho šlo využít všechno a jen doplnit
algoritmus rozpoznávání, to je otázka.

Jinak jsem ještě uvažoval na tím, že by rozpoznávání mohla dělat
externí aplikace, se kterou by plugin komunikovat třeba TCP ... tedy
plugin JOSM by zavolat "uživatel kliknul na souřadnici x, y" a externí
aplikace by vrátila "ok, výsledný polygon je x1, y1, x2, y2, x3, y3,
...". Bylo by to jistě méně pohodlné, ale to jádro by nemuselo být v
Javě. Ten směr z externí aplikace do JOSM je dokonce myslím už v JOSM
naimplementovaný v podobě RemoteControl:
[http://wiki.openstreetmap.org/wiki/JOSM/Plugins/RemoteControl]

Algoritmus jsem ještě trochu vylepšil oproti tomu v ukázce.

Jinak integrace do JOSM by měla výhodu v tom, že by nebylo třeba do té
aplikace dělat všechno ostatní GIS věci (tedy takový klon JOSM).

Nevýhoda by asi byla v tom, že JOSM je pro začátečníky složitý a
výsledný program by nebyl tak jednoduchý, jak může být (tedy něco
takového, co by si člověk s Windows stáhnul, nainstaloval a klikal na
budovy, aniž by musel něco nastavovat, zkoumat ovládání, ...).

Aneb práce ještě není zdaleka u konce ... algoritmus trasování je jen
jedna část.

Honza


2010/1/27 Pavel Zbytovský <m...@zby.cz>:
> Ahoj,
>
> jůů, tak tohle je velmi dobrá práce! Něco podobného mi hodně chybělo, tak
> jsem uvažoval nad tvorbou vlastního nástroje, už nemusím :-))
>
> Integraci do JOSM bych také moc ocenil, přeci jen na rozumné mapování větší
> oblasti se to moc jinak než josmem dělat nedá. Možná bych viděl trochu potíž
> v tom, že JOSM je v javě a tudíš platform independent, což .NET není. Jo a
> asi by šlo podstatnou část api pluginu vydolovat z lake-walkera - tedy
> trasovače jezer z landsatu - viz
> http://wiki.openstreetmap.org/wiki/JOSM/Plugins/Lakewalker
>
> Dělá to dost podobnou věc, takže by úprava na tvůj algoritmus a cuzk mapy
> neměla být taková potíž..
>
> Každopádně supr!
>
> Zdravím,
> Pavel Zbytovský
>
>
>
>
> 2010/1/26 Jan Bilak <jan.bilak....@gmail.com>
>>
>> Ahoj,
>>
>> dělal jsem na programu, který by dokázal rozumně trasovat budovy z
>> digit. map katastru. Ty ruční čmáranice ze skenů mnoha let starých map
>> myslím nemá smysl automaticky trasovat. Zkoušel jsem to pomocí potrace
>> apod. ... ale nějak mi to nedopadalo moc dobře, takže jsem se rozhodl
>> pro vlastní řešení.
>>
>> V vyzkoušení zde (binárka v .NETu + test.png k vyzkoušení):
>> http://jabi.aspone.cz/osm/TracerTest.zip
>>
>> Po spuštění se zobrazí mapka. Klikejte do prázdných (bílých) částí
>> uvnitř budov. Testovací png je možné nahranit případně jiným se
>> stejným název.
>>
>> Ještě zkusím udělat to, aby když člověk klikne na popis budovy (text
>> uvnitř budovy), tak aby to také fungovalo. Pak lze doladit nějaké
>> chyby. A bude zbývat udělat nějaké GUI s kontinuální mapou, přepočtem
>> souřadnic a exportem do *.osm, zobrazováním současných objektů,
>> nabízení budov podle adresních míst, možností ruční editace,
>> zobrazování fotomapy na pozadí, ... Nebo je někdo schopný to
>> integrovat do JOSM?
>>
>> Pokud bude zájem, zdrojáky dodám.
>>
>> Honza
>>
>> _______________________________________________
>> Talk-cz mailing list
>> Talk-cz@openstreetmap.org
>> http://lists.openstreetmap.org/listinfo/talk-cz
>
>
> _______________________________________________
> Talk-cz mailing list
> Talk-cz@openstreetmap.org
> http://lists.openstreetmap.org/listinfo/talk-cz
>
>

_______________________________________________
Talk-cz mailing list
Talk-cz@openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk-cz

Odpovedet emailem