Opened 6 years ago
Closed 4 years ago
#381 closed defect (fixed)
[PATCH] Don't allow creation of self-overlapping ways
| Reported by: | Ben | Owned by: | anonymous |
|---|---|---|---|
| Priority: | minor | Component: | Core |
| Version: | latest | Keywords: | |
| Cc: |
Description
If I create a set of nodes in a circle, and then draw way-segments between them, I can overlap. I can make a circle using 8 nodes have infinite sides therefore. Bad mapping comes of this, and there isn't anyway to really see it.
Different ways shoudl of corse be able to have way-semgnets in the same places as other ways, but not the same way.
Attachments (1)
Change History (9)
comment:1 Changed 6 years ago by Gabriel Ebner <ge@…>
- Summary changed from The same way overlapping itself to Add-node-and-connect and add-segment can produce self-overlapping ways
comment:2 Changed 6 years ago by Ben
I had noticed both these things, but is there any reason why you should be able to create this mistake in the first place? I beleive the ability to create the bad data is maybe what needs solving, rather than being forced to scan for a potentially common error after making edits.
comment:3 Changed 5 years ago by tag-osm-trac@…
- Version changed from release to latest
While true segments are gone, this error persists.
This comment is just to keep it open. :)
comment:4 Changed 5 years ago by stoecker
- Component changed from unspecified to Core
comment:5 Changed 5 years ago by anonymous
- Summary changed from Add-node-and-connect and add-segment can produce self-overlapping ways to Don't allow creation of self-overlapping ways
comment:6 Changed 4 years ago by stoecker
- Owner changed from imi to framm
comment:7 Changed 4 years ago by xeen
- Owner changed from framm to anonymous
- Status changed from new to assigned
- Summary changed from Don't allow creation of self-overlapping ways to [PATCH] Don't allow creation of self-overlapping ways
The attached patch prevents the user from creating self-overlapping ways. Instead, it will stop drawing. If the user forces drawing from "that" node, it will create a new way to prevent self-overlapping.
It also fixes #696 ("Don't continue drawing when way is closed").
I'm unsure if we want to change from drawing to selecting mode or not once the "stop drawing" kicks in:
currently:
- easy tagging, but rubber band line annoys users. Thus: 1 step (choose select mode)
- adding another way: 1 step (unselecting)
- selecting another way: 1 step (choose select mode)
staying in drawing mode:
- easy tagging
- adding another way: 1 step (unselecting)
- selecting another way: 1 step (choose select mode)
setting select mode:
- easy tagging
- adding another way: 2 steps (unselecting, choose draw mode)
- selecting another way: 0 steps (just click)
I prefer staying in drawing mode, as adding a bunch of buildings from WMS would be very annoying otherwise. It also keeps current behaviour and I believe it's rather seldom that someone draws something and then wants to select something entirely different.
I'm unsure about the self-overlapping ways though: Normally you don't want to draw self-overlapping ways, thus this is an advantage, but think of when adding ways of a park. They have no name, intersect very often and will probably all get the same tagging. I know about Shift+Click, but it's still not easy to click, press shift, click, release shift, click. But just creating a new way would ease things very much. Any thoughts on this?
Changed 4 years ago by xeen
Prevents creation of self overlapping ways and stops drawing when ways are closed
comment:8 Changed 4 years ago by anonymous
- Resolution set to fixed
- Status changed from assigned to closed
Applied in r1287.



In case you didn't know: The current validator plugin highlights overlapping ways (you might have to enable it by going to the validator preferences dialog).
If you want to repair such a way without creating it from scratch, you can split it at a node and then combine the pieces (this will automatically remove any duplicate waysegments)