Skip to content
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

Bug Fix: reworked line polygon crossings so that combing copes with complex boundaries #973

Merged

Conversation

smartavionics
Copy link
Contributor

The original line polygon crossings implementation did not cope with complex combing regions well because it assumed that each polygon in the combing boundary could only have a single crossing pair. This is not true for complex combing regions that have multiple holes.

Before this PR...

screenshot_2019-01-08_08-50-18

With this PR...

screenshot_2019-01-08_09-07-35

This PR fixes Ultimaker/Cura#5116.

Note that the problem is not only with no-skin combing, it can occur with any combing where the combing region is sufficiently complex.

…x comb boundaries.

Before, if a travel crossed multiple polygons it could fail to detect all of the crossings
and the resulting comb path could cross regions that it should not.
@diegopradogesto
Copy link
Contributor

Devs. CURA-6112

@holgerpieta
Copy link

I'll like to second that PR, because I ran into the same issue on a 3Dbenchy (!?!).

Copy link
Collaborator

@Ghostkeeper Ghostkeeper left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like a good approach to the problem. Reduces the administration with that minimum and maximum, too. I'll give it a good test...

@rburema
Copy link
Member

rburema commented Oct 25, 2019

Looks like a good approach to the problem. Reduces the administration with that minimum and maximum, too. I'll give it a good test...

Good that I saw you post this, I had this one pegged as the next one to-do, but couldn't get to it yesterday. Almost also started a review :-)

@Ghostkeeper
Copy link
Collaborator

Well it's got a Jira ticket so Jira would've resolved the conflict anyway :)

@Ghostkeeper
Copy link
Collaborator

Took a while, but indeed I found some cases where it improved combing. It doesn't seem to have any noticeable performance impact.

@Ghostkeeper Ghostkeeper merged commit f06c57e into Ultimaker:master Oct 25, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Combing with Not in Skin doesn't work properly when using 100% infill
5 participants