x

Re: Doppelte Member in Riesen-MP-Relation entfernen


Geschrieben von GerdP (Gast) am 31. Juli 2016 07:18:50: [flux]

Als Antwort auf: Doppelte Member in Riesen-MP-Relation entfernen geschrieben von GerdP (Gast) am 29. Juli 2016 09:52:

GerdP wrote:

wambacher wrote:

Muss kapitulieren 🙁
. Sortieren --- und da klemmt es fürchterlich.

Sollen sich die Iren drum kümmern.

Gruss
walter

Ja, genau da klemmt es auch bei mir.
Der JOSM code zum Handling von MP-Rels ist im Vergleich zu dem von
mkgmap relativ einfach gestrickt. Ich werde vielleicht mal versuchen,
die mkgmap Optimierungen in JOSM einzubauen.
Ein generelles Problem in JOSM ist, das die darzustellenden Flächen
bei diversen Aktionen neu berechnet werden, auch wenn
sich an den Daten nichts geändert hat. Da ist sicher viel Raum
für Verbesserungen.

Gerd

Ich habe mir mal angeschaut, was da klemmt. Nach dem Sortieren wird ermittelt, welche Member betroffen waren,
um diese zu "highlighten".
Es gibt da eine Schleife, die dann sequentiell für alle Member aufgerufen wird und wiederum seq. alle
bis dahin verarbeiteten Member durchsucht. Bei > 6000 Membern kommen
da 'ne Menge Durchläufe zusammen, etwa sowas wie 2*1 + 3*2 + 4*3 + ... 6000*5999 ...

Ich habe nicht verstanden, was da genau passiert, aber man kann das deutlich beschleunigen,
indem man ein HashSet anstelle einer ArrayList verwendet. Damit reargiert JOSM nach dem Sortieren auf meinem
Rechner wieder innerhalb von Sekunden.

Ich muss jetzt mal schauen, wie ich diese Info an die Entwickler weiterleiten kann.

Gerd