-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Splitting an area appears to be broken #969
Comments
|
What is the behavior you expected? |
|
I was shooting for the ability to split the area into two different areas. In JOSM I do this by: splitting the closed way in two spots: unjoining the ways I just split and then merging the nodes back together, creating two closed ways. This is all a convoluted way of splitting an area. Maybe show a "split area" operation when the user closes off an area into two areas like this: |
|
(At the very least, it's a bug that when splitting a closed way in iD two nodes get the split -- the one you had selected and some other seemingly random node.) |
|
So, you're asking for multiselect support for the split and unjoin operations, or some sort of dedicated "split area" operation. The former seems generally useful and adds little UI complexity, so I think we should add it. I'm not convinced about the latter, especially since your original use case was "delete part of an area" -- is there a way we can make that more direct?
It's actually by design. We don't show the shared node of a closed way, so iD has to choose some other node to split at in order to form a two-way multipolygon. It chooses the opposite node, i.e. preferring to make two ways with an equal number of nodes (+/- 1 node). It could choose the shared start/end node as the second split point, but then it would have to disallow splitting at that node, or choose another node in that case anyway. I chose consistency. (JOSM's solution is to force users to choose two points, interrupting with a modal error dialog if they don't, which seems clumsy to me.) |
I suppose so. I agree that a dedicated Area Split operation is complicated and would rather see multi-select be required when splitting a closed way. In my example above I was trying to save the bottom part of the building because it's still there. There's still a Video Adventure rental store (a Blockbuster/Netflix murder/suicide victim) occupying the building. I guess I could have just deleted the nodes until the northern part of the building was all that's left but that would have been too easy.
This seems very unintuitive to me. My view is definitely tainted by JOSM, but I would rather see it refuse to split on a closed way than pick an arbitrary node as the second split point. |
|
I'm trying to accomplish the same. The split worked for me; though it was unintuitive, had to go into line edit mode to do it. Problem is, the two resulting ways did not inherit tags from the parent way. |
|
Often i have a osm building which combines two buildings in reality. I have not found a way to make two ways out of those to retag one half. Splitting the area on one point makes a Multipolygon which is not easy to rebuild back to a way. |
|
Suggested user workflow for splitting of areas:
iD should split the area up along the line. Both resulting closed way areas get the tags from the original area. |
|
My shameless workflow for splitting an area:
|
|
A reasonable area split based on one selected vertex would be: The current area split might be reworked into a more reasonable split based on a two vertex selection, or might be discarded in total. @bhousel I will try to make a pull request if you agree. |
Can we just make it a new operation that's available if a user has selected both an area and a line that divides it? Then you don't need to worry about putting the user in drawing mode and dealing with whatever stuff might happen in there. We can do this without turf.js but it might be worth looking at Turfjs/turf#580 for some related work over in that library. Also, I know it gets real tricky with multipolygons, so I'm not sure how strict you want to make this. An initial version could, for example, just disallow cutting across holes/inners. |
|
This ticket has been open for over 5 years. Is anyone working on a solution for this? I haven't really seen any updates. It's a feature that I need a lot. :) |
Nobody is working on it as far as I know.. You'll find that that most interesting and impactful tickets are the ones that have been open the longest! Anything else, we would just close or trivially implement. |
|
This would be very useful for landcover and water features. For example, I once tried cleaning up the the mess of landcover in New Jersey, but found it much to difficult. This operation would be the magical solution to doing that without JOSM. |
|
@BjornRasmussen
|
Another workaround is CTRL+C CTRL+V to get a copy of the area, and then place the new one on top of the old one (steady hand). And delete the now extraneous nodes in each. Not too painful if there are only a handful of nodes to delete. |








The Walgreen's chunk of the building below was torn down late last week, so I'm trying to split it in an attempt to keep the older, northern part of the building in tact in OSM:
When I click the node immediately under Hunan Spring and use the Split operation, that node becomes gray as expected, but so does another node on the other, far west side of the area:
When I click on the node I just split, use the Disconnect operation, and drag one of the nodes out of the way, it looks like iD thinks the two ways are still related because it's drawing an area fill between the old and new ways:
The text was updated successfully, but these errors were encountered: