SoftFever / OrcaSlicer

G-code generator for 3D printers (Bambu, Prusa, Voron, VzBot, RatRig, Creality, etc.)
https://discord.gg/P4VE9UY9gJ
GNU Affero General Public License v3.0
7.23k stars 853 forks source link

Solid Infill Combination #6391

Open ZedOud opened 3 months ago

ZedOud commented 3 months ago

Is there an existing issue for this feature request?

Is your feature request related to a problem?

I was inspired by this video about taking grams of plastic and printing time out of infill for strengthening parts (except for that which is strictly necessary to support top surfaces) and using it to thicken the shell instead.

I have developed a routine for simple parts to print thicker bottom and top layers quickly. My default print heigh is 0.15mm with infill combination enabled, however internal solid infill is also printed at 0.15 instead of 0.3. (0.14-0.16 is the optimal height for strength on a 0.4mm nozzle.)

So I use an object modifier that overlaps the bottom layers and top layers with settings set as follows:

This basically achieves internal solid infill printed at infill combination layer height.

It would be nice to have a checkmark to do this for all top/bottom surfaces, especially if we can avoid 1-2 overhanging surfaces so the combination layers are well supported.

One problem I anticipate is using this with layer heights <33% of the nozzle width (like 0.1mm with a 0.4mm nozzle). This will result in the infamous problem of greater than 80% nozzle width layer heights. Imagine: a layer height of 0.4mm on a 0.4mm nozzle for internal solid layers. The whole point of printing more internal solid infill for strength, and this would ruin the layer adhesion.

Which printers will be beneficial to this feature?

All

Describe the solution you'd like

A checkbox to enable this feature and (optionally) an integer for how many top/bottom layers should be combined away, or else how many should be retained for overhang/bridging and top surface handling.

Also, for anyone who prints with layer heights below 1/3 of the nozzle width it would be necessary to provide some sort of cap on the number of layer combinations.

Describe alternatives you've considered

The current alternative available is to manually drop lots of modifier objects to target all the top/bottom layers you want to convert to this style of combined internal solid infill.

Additional context

Also, #5421 here is the latest enhancement issue asking for a way to control the number/multiplier on combination layers.

discip commented 3 months ago

@vovodroid Maybe you could take on this task since you have already contributed a whole bunch of very useful features! 👍

This might help as well: https://github.com/SoftFever/OrcaSlicer/issues/5421#issuecomment-2253636173

thanks in advance 😊

igiannakas commented 3 months ago

Raised a PR that aims to address this above.

vovodroid commented 3 months ago

It's not the same - FR author would like to apply infill combination also for solid.

igiannakas commented 3 months ago

Ah misunderstood. I’ll untag it.

Ataraxia-Mechanica commented 3 months ago

I remember this being a thing in some random obscure slicer from a printer company. Surprised to find out the slicer supports setting how many solid infill layers get combined, and how many sparse infill get combined separately, but doesn't support changing line width.

igiannakas commented 3 months ago

The issue I see with combining solid layers is how do you deal with non rectangular models.

Basically, if you print a curved model with say 0.1 LH and you combine solid infill every 3 layers, the overlap between the solid infill and the walls will change as the angle of the surface/walls of the model changes. I think this may end up leading to benchy hull line type artefacts (if you overlap too much) or part strength artefacts (if you overlap too little) unless the model is perfectly flat.

For sparse infill this is not a problem as the area is mostly void and the overlap is far less visible due to the density of the infill being low. And also anchoring happens on the top side only so you still have “disconnected” sparse infill already but it matters less.

But for solid infill you’ll get a “rectangle” over multiple layers trying to fit a slice of a “sphere” if that makes any sense.

Like imagine the below: IMG_4276

lines on the side are a cross section of the 0.1LH for perimeters with the block in the middle being the cross section of the solid infill line combined over 4 layers.

maybe we can get away with it if printing very fine layers (say 0.1mm) and combine every 2 layers at most but anything above that may end up being problematic I think.

Ataraxia-Mechanica commented 3 months ago

I've printed at 0.05 height with 0.4mm nozzles before and it would be useful in that situation. Probably too niche and isn't worth implementing due to the disadvantage you listed?

github-actions[bot] commented 19 hours ago

Orca bot: this issue is stale because it has been open for 90 days with no activity.