[Talk-de] Flächen/Wege // Trolling in changesets

Florian Lohoff f at zz.de
Do Apr 5 09:38:26 UTC 2018


Hi Michael,

On Wed, Apr 04, 2018 at 07:54:30PM +0200, Michael Reichert wrote:
> Hallo Flo,

> An dem Quellcode wäre ich interessiert, um es mal bundesweit laufen zu
> lassen. Ich habe im Sommer 2015 eine Abstimmung auf Haralds
> Umfrageplattform gemacht, bei der die Nichtkleber in der Mehrheit waren.
> [1, 2, 3, 4]
> 
> Ich bin sehr daran interessiert, die Abstimmung mit den Füßen
> auszuwerten, und würde mich freuen, wenn du deinen Code entweder mir zur
> Verfügung stellen könntest oder gleich als freie Software
> veröffentlichen könntest. Die Auswertung ist nicht ganz einfach, weil
> man weder einfach die Objekte noch die Länge noch den Flächeninhalt
> zählen muss, sondern auch beachten muss, wer was beigetragen hat.

Kein ding:

git clone git://pax.zz.de/wayareaconflicts2

Braucht libosmium - geht davon aus das das im selben Verzeichniss liegt,
cmake und so ein bischen boost zeugs. Wobei ich glaube das gar nicht
mehr wirklich gebraucht wird.

Der möchte gerne ein pbf auf der command line und schreibt
dann im aktuellen Verzeichniss eine sqlite und den stdout
kannst du mit dem output-to-html in eine html Seite verwandeln.

Für NRW brauchst du ~12GByte Ram - Das dingen ist null optimiert und
eher so zusammengepfriemelt. Ich mache im moment Ostwestfalen-Lippe.

Was ich mache ist das ich mir für jeden node merke welche Wege attached
sind. Dann gehe ich alle Wege durch (Nur die lines - also high und
waterway) und gucke ob an 2 aufeinanderfolgenden nodes jeweils eine
area mit derselben ID attached ist.

Also ein Geometrischer match sondern ein logischer über die nodeIDs 

Es gibt ein paar cornercases die ich nicht abgeklopft habe.
Multipolygone sind das eine. Das andere sind wenn der erste und letzte
node verklebt sind (Des Weges oder der area) - Es könnte sein
das das dann unter Umständen nicht matched. War mir aber erstmal
nicht so wichtig. Erstmal die 80% Lösung und damit anfangen.

In der sqlite stehen für jeden weg/area jeweils die id, der letzte
bearbeiter, das letzte changeset und die letzte uhrzeit und eben
die geometrie einer linie zwischen den beiden nodes die überlappen.

Am ende hab ich mir überlegt noch alle nodes rauszuschreiben die 
jeweils an linien und Flächen sind. So das du auch einzelne
nodes findest. Ist so ein Sekundärproblem aber wenn man es eh
auswertet - Und falsch ist das in 90% der Fälle auch.

Flo
-- 
Florian Lohoff                                                 f at zz.de
             UTF-8 Test: The 🐈 ran after a 🐁, but the 🐁 ran away
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : signature.asc
Dateityp    : application/pgp-signature
Dateigröße  : 833 bytes
Beschreibung: nicht verfügbar
URL         : <http://lists.openstreetmap.org/pipermail/talk-de/attachments/20180405/d510b631/attachment.sig>


Mehr Informationen über die Mailingliste Talk-de