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

invalid exclude of pocket #321

Open
tcurdt opened this issue Dec 15, 2024 · 6 comments
Open

invalid exclude of pocket #321

tcurdt opened this issue Dec 15, 2024 · 6 comments

Comments

@tcurdt
Copy link
Contributor

tcurdt commented Dec 15, 2024

If a tool is too big for a pocket operation, the operation is skipped.

But here the tool is 3.175mm and the hole to pocket is 3.3mm.
Screenshot 2024-12-15 at 20 35 30
Screenshot 2024-12-15 at 20 35 50

Yet, the operation is excluded. IMO that's a bug.

bug.kmz.zip

@stewartoallen
Copy link
Contributor

this hole is highly faceted. the poly offsetting library concludes that it's zero in size when offset. reducing the tool diameter to 3.165 from 3.175 succeeds. I am making changes to allow offset polys close to 0 to work.

Screenshot 2024-12-15 at 3 06 06 PM Screenshot 2024-12-15 at 3 09 36 PM

@tcurdt
Copy link
Contributor Author

tcurdt commented Dec 15, 2024

While any improvement is of course great, I think just reporting on the problem would go a long way.

As discussed on the chat, I can confirm a higher resolution includes the hole in the op, but it seems the offset is too small to spiral into.

Screenshot 2024-12-15 at 22 20 10

@tcurdt
Copy link
Contributor Author

tcurdt commented Dec 15, 2024

I tried a bit more.

Even with much higher resolution the current dev version still fails to pocket a 3.2mm pocket with a 3.175mm endmill.

Screenshot 2024-12-15 at 23 53 37

@stewartoallen
Copy link
Contributor

in the clipper library, when the poly is offset inward, close points are collapsed. this may be tunable to some degree. but this outcome is not entirely surprising.

@tcurdt
Copy link
Contributor Author

tcurdt commented Dec 15, 2024

So IIUC it's the algo from clipper that optimizes away some points to calculate the area.
And the optimization leads to a simplification that leads to a smaller area and hence gets excluded.
Did I understand that correctly?

Any other strategy that could work?

@stewartoallen
Copy link
Contributor

essentially. the right fix is updating the drill op. trace will have the same problems.

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

No branches or pull requests

2 participants