Implement GeneralRoundedRectangle contains() and intersects() methods#9
Open
karlvr wants to merge 3 commits intovioletlib:masterfrom
Open
Implement GeneralRoundedRectangle contains() and intersects() methods#9karlvr wants to merge 3 commits intovioletlib:masterfrom
GeneralRoundedRectangle contains() and intersects() methods#9karlvr wants to merge 3 commits intovioletlib:masterfrom
Conversation
29efeff to
d411140
Compare
Also adds JUnit 4 jars to lib/test/ and a test target to the Ant build.
The previous implementation would skip sharp corners (arc=0). This caused false negatives when a query rect overlapped a sharp corner: the middle band was too narrow to accept it, and the corner check skipped it. Also fixes the intersects_cornerOverlap test to use a rect that actually exercises the corner intersection path, and add a test for the mixed sharp/rounded corner case.
d411140 to
525d0de
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
The
GeneralRoundedRectangleclass came fromRoundRectangle2Dbut the implementations ofcontains()andintersects()from there were commented-out. We've taken the liberty of producing implementations that handle the rounded rect having non-uniform corners... perhaps that's why the original implementations were rejected?Because of the nature of this code we've added some unit tests... I couldn't work out the right way to use VBuilder to do this so I've dumped the junit jar (and dependency) into the project... perhaps you can improve that?