Fix DXF polygon loading by correctly joining oriented segments#264
Open
tokoro10g wants to merge 1 commit intoreilleya:stagingfrom
Open
Fix DXF polygon loading by correctly joining oriented segments#264tokoro10g wants to merge 1 commit intoreilleya:stagingfrom
tokoro10g wants to merge 1 commit intoreilleya:stagingfrom
Conversation
Update the polygon editor's segment-joining loop to properly handle all four endpoint-to-endpoint proximity cases. By allowing reversal of both the primary and comparison chunks, segments can be joined into a continuous path regardless of their initial direction.
Owner
|
Hi! Thanks for the contribution. Do you have an example DXF that doesn't load? Took me a moment to think through the existing code, but I believe it is right. In your example, line 90 actually does because and this block of code reverses the second chunk in the array (not the first) before concatenating them: Totally possible I'm missing something, though! |
Author
|
Thank you for this awesome project! Sorry, I was looking at the wrong line, l.93 had an error. It was implemented like This cannot be solved by simply swapping so I decided to add another flag for flipping. |
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.
This PR fixes the polygon loading algorithm.
For example, if we haveit tries to join the segments like the following in l.90:which is obviously invalid. It should performC = A + flip(B)instead.