-
Notifications
You must be signed in to change notification settings - Fork 134
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
add steiner support and add test cases from earcut.js #23
Conversation
Here's the reason why we haven't yet ported the tests: #6 (comment) If you find out why the tests fail and fix the PR so that the build passes, that would awesome! |
@mourner Yes, this PR is based on the port-tests branch, because there were still (failing) new tests in earcut.js that were missing in this branch. This is meant to be merged into the port-tests branch, not the master branch. |
@mrgreywater but the build on Travis still fails for this PR, right? How could this be fixed? |
@mourner If I'm reading the output right the build completes and runs, but the tests are failing, so travis reports that the checks failed. This is fine, since the whole purpose of this branch is that the tests may fail. |
@mrgreywater if the tests are failing, Travis looses its sense since we won't be able to track down regressions. We need to figure out how to make them pass before we can merge new tests. |
@mourner Then I don't get why the "port-tests" branch exists at all. It's failing at travis already without this PR because it contains failing tests, why not add the rest of those aswell then. ...mumble mumble.. test driven development ..mumble... |
This last commit is porting mapbox/earcut@deb0bfe, mapbox/earcut@65c7da5, mapbox/earcut@68da53f and some others. Test cases now match earcut.js again (and work). Closing the other PR for now, since it duplicates some of this PR's changes. |
Performance record (
After:
as @mourner said here I'm curious about the performance difference (if any) that this commit had to earcut.js itself. |
This is great, thanks for bringing earcut.hpp up to date and fixing tests! The regression from my benchmarks looked a bit worse as far as I remember but that may be just some platform deviation, and after all I think it only regresses on really bad data with lots of self-intersections. When the polygons are clean, the performance should improve (like the building case above). So I'll merge this to master. |
Rebased and merged to master 👍 |
Mmh, that rebase was kind of unnecessary. I would've just merged it onto port-tests and then merged that branch with master. Thanks for adding the changes though. |
@mrgreywater just reducing the number of merge commits in git history, and rebase was clean. |
I could've rebased myself if you asked, then this PR would appear as merged and not closed, but it's alright :) |
Port of steiner points (see #23 (comment)).
Also added missing tests from earcut.js