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

Reducing the amount of retractions #2193

Open
BagelOrb opened this issue Dec 29, 2024 · 0 comments
Open

Reducing the amount of retractions #2193

BagelOrb opened this issue Dec 29, 2024 · 0 comments

Comments

@BagelOrb
Copy link
Contributor

Hello, young blood. Bienvenu and such.

I've been fooling around with 3D lithophanes again, but printing them is rather difficult. With default settings the print comes out horrible with lots of oozed material and it takes forever. Upon closer examination it appears that it spends 3h of the printing time on retractions (50%!). Surely this can be improved, so I started optimizing print settings. I got it down to 20 minutes worth of retractions and the print came out perfect.

My thinking is that my workarounds/findings should somehow be made available to the general public via feature requests. This issue is to inform you about the print settings I chose and the workarounds I had to take so that you might decide to make some of several ideas into feature requests. Sorry for bundling this here in a single ticket for now.

Here's the line width view which gives a bit of an idea of what the final lithophane will look like when lit from behind - just to give you an idea of what this project is about.
image

The 3D lithophane should be printed solid and most layers consist of a single connected shape, so you would hope that the combing algorithm already manages to avoid traveling via the outside of the single island on all layers, but alas. The combing algorithm seems to break up thin parts into several islands even though there is only one island:
image

One solution for this issue would be to make it in some way configurable which polygons to use for combing: the outer wall, the outline, the second wall or some other custom offset from the outline.
Another solution would be to expand the combing areas with the central skeleton from Arachne - expanded such that the skeletal graph becomes an area.

( There seem to be some issues with combing making it take weird detours:
image
)

Another issue is that extra travels are generated because the order between the walls is strictly enforced: all outer walls have to be printed before other walls:
image
Optimize wall printing order doesn't change this because everything is a single island - even though the second wall is distributed over disconnected patches.

A possible feature request would be to have a Wall Ordering option [Fastest], or you might even get more intricate with options for weighing soft constraints on ordering against travel penalties - but that's rather advanced.

Anywho, without these features I had to find other workarounds, so instead of printing the whole part with dense infill, or printing it with 999 walls, I turned to printing everything as skin, which enables some options which are not available to walls or infill.

Using the option Connect Top/Bottom Polygons it is possible to enforce an optimized order where all 'walls' are printed without any travel whatsoever. Combining this with some smart settings for the minimum wall line widths we can force almost all layers to be a single extrusion line. (Also I had to disable topmost skin layers.)
image

It makes sense to me to try and port this feature to the walls so that the walls can also enjoy such travelless joy.

If you guys need any help with implementing any of these features then perhaps I would be willing to work free-lance ;)

I hope you find this ticket helpful. If not then just close it - I won't hold a grudge!

Happy new year!

  • BagelOrb

Application Version
5.9.0

Platform
Win, UM3

Display Driver
NVIDIA RTX 3060 laptop

Actual Results
problem scenario:
image

half-workaround scenario:
Adjusted minimal wall line widths and horizontal expansion:
image

Expected results
workaround:
image

Additional Information
retraction_hell_0.3mf.rename.zip

( with updated minimum wall line widths:
retraction_hell.3mf.rename.zip
)

final workaround:
final_workaround.3mf.rename.zip

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

1 participant