-
Notifications
You must be signed in to change notification settings - Fork 216
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
Incorrect result from bg::intersection() #1174
Comments
I got this particular case to work by using |
I thought I'll debug this to help out. I got to the point where I am finding that at differed types for coord_type I get different number of turns. Is this expected? |
Yes, the number of turns can be different for different coordinate types. |
You can omit the flag |
It makes sense that turn count would depend on the coordinate type, at least in the general case. In this case, the coordinates are not that close for a double type. I am curious about this. Can you help me with some pointers into the code I can look to understand a bit more about the turn calculation? |
The turn points in the oval are so close together that some turns are calculated incorrectly. These are the enriched turns.
You get this info by adding these defines, before all other code
(I added the turn point locally). If I compare a run with There might be multiple problems. Currently I cannot continue with this, I would advice you to simplify the input ellipse. |
Alternatively you can increase the boxes, for example
you will get the same result (but most probably without these errors) |
I see there are few reports against this function already, I hope I am not repeating the issue.
I have an oval, which I am trying to split into 4 pieces using the 4 quadrants from the center. The result is that my lower left quadrant is incorrect (same as the overlapping box), upper right is incorrect (empty), but upper left and lower right are correct.
This is the input oval:
And this is the final result:
I am using boost 1.82 with BOOST_GEOMETRY_NO_ROBUSTNESS.
Any suggestions?
Here is my code:
The text was updated successfully, but these errors were encountered: