Is er een makkelijke manier om een aantal wegen en de aangrenzende gebieden parallel aan elkaar te maken? Anders dan met de hand node voor node gaan slepen?
Er is een tool voor JOSM waarmee je een object met al zijn geschiedenis kan vervangen door een nieuwe. Deze heet Replace Geometry en zit in de plugin UtilsPlugin2. Je tekent dan met de parallele lijnentool de nieuwe lijn in, selecteert zowel de oude als de nieuwe, en kiest ‘Replace Geometry’ uit het menu. De geschiedenis blijft dan behouden, en de nieuwe vervangt de oude.
Let wel op als de voetpaden deel uitmaken van relaties van wandelnetwerken, dan wordt het een tikje ingewikkelder.
Dan BGT omtrekgericht met als onderlaag AHN3 maaiveld ( prive gratis licentie) of PDOK luchtfoto 25.
Ook al teken je een nieuwe weg in zet eerst begin- en eindnode (rechte lijne) en gebruik dan W, hierdoor kleef je nieuwe nodes ook niet aan bestaande vast.
Ik heb me eens verdiept in het maken van plugins voor JOSM en heb wat in elkaar geknutseld. Het doet nu redelijk wat ik wil als proof of concept.
Moet nog wel het een en ander aan gebeuren om het robuust en user-friendly te maken.
Maar lijkt me wel een nuttige functie als toevoeging in JOSM.
Behoorlijk indrukwekkend, JJWW! Daar zou ik zeker gebruik van maken! Geldt hier het eerst geselecteerde als referentie voor het parallel laten lopen? Ofwel het daarna geselecteerde (vlak) zal de weg “volgen”?
Ja, je selecteert als eerste een node op de weg of vlak van de “source” die het beginpunt aangeeft, daarna de node op de weg of vlak van de “destination”.
En daarna nog een node op de source en op de destination die het eindpunt aangeven.
In het segment op de destination voeg ik dan extra nodes toe of verwijder ik nodes zodat het er evenveel zijn als het source-segment.
Vervolgens plaats ik de nodes parallel.
De afstand tussen de eerste twee geselecteerde nodes bepaald de afstand tussen de twee parallel gemaakte segmenten.
Ik moet nog even gaan uitzoeken hoe ik het zo kan programmeren dat de actie ook weer ongedaan gemaakt kan worden (want dat is nu niet het geval). En nog de nodige checks toevoegen voor als de input niet is zoals verwacht.
Als de destination meer nodes bevat dan de source, verwijder ik die nu dus. Dus een waarschuwing toevoegen als die nodes extra informatie bevatten lijkt me ook wel wenselijk.
Je zou de nodes die tags bevatten kunnen behouden en ze zo dicht mogelijk bij hun oorspronkelijke positie kunnen plaatsen. Je kan dan dus ook meer nodes dan je referentie-way hebben, maar die kun je op rechte stukken wel kwijt. Ik zou dan eerst de nieuwe way tekenen en daarna de nodes met tags er nog bij plaatsen waar ze het beste kunnen. Het algoritme wordt wel flink ingewikkelder zo, dus je kan het ook bij een foutmelding houden en weigeren de actie uit te voeren als er tags staan.
Kijk ook even wat er gebeurt als de way deel uitmaakt van relaties. Veel fiets- en wandelpaden maken deel uit van knooppuntennetwerken, dus dat moet wel goed werken.
Soms liggen sommige nodes over de andere polygon, of samen met een andere node.
In praktijk zullen dit soort problemen in allerlei vormen voorkomen.
Hier zul je (hopelijk) een oplossing voor vinden.
Plugin controleert volgens mij nu redelijk of de input voldoet aan de verwachtingen en gaat geen nodes verwijderen die tags bevatten, of onderdeel zijn van meerdere wegen/gebieden.
Gezien de plugin code in git staat hoeft je alleen svn:externals aan te passen zoals voor de andere plugins die niet in SVN staan (e.g. todo plugin).
De git plugins leven allemaal onder de JOSM namespace op GitHub, dus je kan het beste met de JOSM developers coordineren om de plugin daarin op te nemen.
Mooie plugin. Top.
Echter nu al een paar keer gehad dat de destnation aan de andere kant van de source komt te liggen. Hij is dan wel parallel, maar aan de verkeerde kant van het source segment.