-
Notifications
You must be signed in to change notification settings - Fork 18
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
catch and handle topology exceptions when splitting geometries #362
Conversation
We used to say that with the OSHDB the user has access to erroneous OSM data as well, including features that were falsely tagged, or also had a broken geometry. How would this be affected with this fix here? Could someone still perform an analysis looking at such data that has/had some issues regarding its topology through the OSHDB? |
I'm not sure where exactly and in which context we said that, but certain data problems are just too grave to be able to access via the What I think we always promised is that the
Yes, for example by using a big enough bounding box, so that clipping doesn't affect the elements one is interested in. Or by using a custom |
I see.. and yes of course we can only deal with what JTS can deal with in that matter. The workaround with just using a bigger bbox would already be sufficient I guess. Do we potentially have to add another test or extend one of the existing ones to also cover this specific issue? Because you say that it was something that was working as intended in v0.5. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks good to me. Only the question by @FabiKo117 is still an open question I would be interested in:
Do we potentially have to add another test or extend one of the existing ones to also cover this specific issue? Because you say that it was something that was working as intended in v0.5.
oshdb-api/src/main/java/org/heigit/ohsome/oshdb/api/mapreducer/GeometrySplitter.java
Show resolved
Hide resolved
Unfortunately, it's hard to find data which triggers this bug in our limited test data set. 😬 |
Description
After #272 (version
0.6.0
), topology exceptions thrown during theintersection
calculations in theGeometrySplitter
class are not (always) catched anymore. This solves the problem by adding an additional try-catch block and returning an empty geometry if a topology exception is occurring.Checklist
I have written javadoc (required for public methods)I have added sufficient unit testsI have made corresponding changes to the documentationI have adjusted the examples or created an issue in the corresponding repositoryI have adjusted the benchmark or created an issue in the corresponding repository