New strict crossings multiply PIP algorithm #846
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This PR is in progress (draft).
This is a modification of the CrossingsMultiply algorithm worked out by @harrism and @isVoid that avoids explicit collinearity checks and consistently treats points on the polygon boundary as outside. While CrossingsMultiply works by shooting an imaginary ray in the +X direction from the test point and computing the inequality that results in crossings, this modification tests against +X and -X rays simultaneously.
Currently failing one of the tests, need to investigate.
Checklist