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

fix: Use a spike mask instead of line intersections. #561

Merged
merged 1 commit into from
Mar 1, 2021

Conversation

eyal0
Copy link
Contributor

@eyal0 eyal0 commented Feb 28, 2021

Checking for intersections fails sometimes when the milled line
matches the voronoi boundary because the spike doesn't have an inner
path against which to make an intersection. This can cause the spike
to dig into the trace a little.

Rather than check if a spike intersects a previous milling line, just
mask the spikes by the area of the previous milling. This should do
the same work, more or less, but without the pathological case when
the previous milling paths match the current milling path at some or
all of the path.

@coveralls
Copy link
Collaborator

coveralls commented Mar 1, 2021

Coverage Status

Coverage increased (+0.003%) to 69.257% when pulling 09c7504 on eyal0:spike_mask into 2dd89dc on pcb2gcode:master.

Checking for intersections fails sometimes when the milled line
matches the voronoi boundary because the spike doesn't have an inner
path against which to make an intersection.  This can cause the spike
to dig into the trace a little.

Rather than check if a spike intersects a previous milling line, just
mask the spikes by the area of the previous milling.  This should do
the same work, more or less, but without the pathological case when
the previous milling paths match the current milling path at some or
all of the path.
@eyal0 eyal0 merged commit 8ce4933 into pcb2gcode:master Mar 1, 2021
@eyal0 eyal0 deleted the spike_mask branch March 1, 2021 02:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants