OpenStreetMap Forum

The Free Wiki World Map

You are not logged in.


A fix has been applied to the login system for the forums - if you have trouble logging in please contact with both your forum username and your OpenStreetMap username so we can make sure your accounts are properly linked.

#1 2017-10-06 13:24:15

New Member
Registered: 2017-10-06
Posts: 1

Alter a way by adding another way in JOSM

I am looking to see if anybody has any suggestions as to how to most effortlessly solve the problem I have at hand. It is fairly specific, but I think that its applications are of a more general nature.

What I have are the following closed paths:
Path A: A lake
Path B: A forested area (multipolygon)
Path C: A wetland area

They are in the current configuration:

  • C is a subset of B

  • All share a common boundary with common nodes

What I would like is to separate B from (a part of) the shared boundary, setting back the boundary B, but leaving the boundary between A and C (with common nodes) as it were before.

As I understand it, the underlying model is that the multipoligon's outer boundary is just a closed way, that is a sequence of nodes. What I need to do is thus just to replace a sub-sequence of that way (the outer boundary) with another sub-sequence, leaving the rest intact.

I have now drawn a new way to mark the new inset of the forested area (Let's call it "D"). D shares begin and end nodes with A, B and C. D serves no other purpose than to mark the new (inset) boundary of B, so it is all right if it does not survive the process as a separate entity. It should be merged into B as such.

I know that in order for the multipolygon to still make semantically sense as an area, it needs to be the case that its outer boundary makes the transition from one closed way to another in "one go", since any intermittend step would leave the data model unsound.

I realize that I could go through all the shared nodes and split them using G and then move the boundary of B back, but depending on the number of nodes that is a rather tedious process. Also, that will split all the intermittent nodes that A and C share, which would then need to be merged anew, creating an even larger change set to no avail.

My intuition tells me that regardless of whether you consider this a set operation on spatial areas or a mutation of a list of nodes, this should be possible. Just draw D, select B and D and then .. ???

Is there a smart way to accomplish this in JOSM ? I am running v.12921.


#2 2017-10-10 21:39:01

Registered: 2015-12-18
Posts: 153

Re: Alter a way by adding another way in JOSM

I am not sure if I missed a special case here, but in JOSM you have the replace geometry method.
You draw a new way, select it and an existing way and press Ctrl+Shift+G .
As a result the existing way is replaced by the new, the new one has the id, the tags (and the history) of the old.
Another useful function to redraw a part of an existing shape is Follow Line (F).
You draw the new part, connect the new line with the existing and add the next point of the existing way.
After that you press F to follow the existing line.
Would that help?


#3 2017-10-11 04:15:06

Registered: 2011-08-13
Posts: 1,176

Re: Alter a way by adding another way in JOSM

Yet another possibility is to select B, unglue it from A by pressing G.
Now improve the precision of B by pressing W, see ImproveWayAccurary

at the end let de validator run and automatically fix all double landuse points (i.e. let de validator merge all points of B that are still common to A and any other landuse).


Board footer

Powered by FluxBB