Elefant foot compensation for solid layers #1468

Open
opened 2026-04-05 17:55:13 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @pi-squared-studio on 11/29/2025

Elefant foot compensation for solid layers above bottommost by infill density manipulation.

Description

When the first layer is incorrectly adjusted along the Z axis or the bed has an imperfect surface, an effect called "elephant foot" occurs. It is due to the fact that there is little space left for the extruded plastic so that it does spread beyond the printed line.
For perimeters, there has long been a measure of counteraction in the form of a narrowing of geometric dimensions along the X-Y axis. But the fact is that excess plastic accumulates and layers up inside the perimeter along the Z-axis, which leads to mechanical collisions with nozzle when printing the next layer, or deformation of the upper surface of the printed thin plates, for example, the bottom of the box.

This PR suggests adding just one option to the existing configuration of elefant foot compensation, where it will be possible to set the density of the subsequent solid layer to absorb excess plastic.

If there is not enough plastic on the first layer, this will not be reflected in the surface geometry in any way, since the upper level of the compensation layer will remain at the print level. The next layer will form strait with minimal overlap. I don't think the strength of the bottom surface will decrease much, but this fact should be borne in mind in any case.

Also, if you specify several layers for such compensation, the density of the subsequent ones will increase linearly upto 100%.

Let's say you specified 4 compensation layers. The initial density is 50%.
Then the density distribution across the layers will be:

id
5 - solid layer 100%
4 - 4st compensation layer 87.5%
3 - 3st compensation layer 75%
2 - 2st compensation layer 62.5%
1 - 1st compensation layer 50%
0 - the bottom layer

PR does not affect the generation of any other surfaces, such as the bottom layer, top layer, or sparse infill.

Actually, this idea, in another implementation, migrated from my newly developed calibration test, when in just a few layers it was necessary to get a perfectly flat surface.

Screenshots/Recordings/Graphs

Before:
image

After:
image

The first 3 compensation layers
image image image

Tests

image image There are printed together 2 thin samples of solid filling only 5 layers. Left is regular, Right is with this PR modifier.
*Originally created by @pi-squared-studio on 11/29/2025* Elefant foot compensation for solid layers above bottommost by infill density manipulation. # Description When the first layer is incorrectly adjusted along the Z axis or the bed has an imperfect surface, an effect called "elephant foot" occurs. It is due to the fact that there is little space left for the extruded plastic so that it does spread beyond the printed line. For perimeters, there has long been a measure of counteraction in the form of a narrowing of geometric dimensions along the X-Y axis. But the fact is that excess plastic accumulates and layers up inside the perimeter along the Z-axis, which leads to mechanical collisions with nozzle when printing the next layer, or deformation of the upper surface of the printed thin plates, for example, the bottom of the box. This PR suggests adding just one option to the existing configuration of elefant foot compensation, where it will be possible to set the density of the subsequent solid layer to absorb excess plastic. If there is not enough plastic on the first layer, this will not be reflected in the surface geometry in any way, since the upper level of the compensation layer will remain at the print level. The next layer will form strait with minimal overlap. I don't think the strength of the bottom surface will decrease much, but this fact should be borne in mind in any case. Also, if you specify several layers for such compensation, the density of the subsequent ones will increase linearly upto 100%. Let's say you specified 4 compensation layers. The initial density is 50%. Then the density distribution across the layers will be: id 5 - solid layer 100% 4 - 4st compensation layer 87.5% 3 - 3st compensation layer 75% 2 - 2st compensation layer 62.5% 1 - 1st compensation layer 50% 0 - the bottom layer PR does not affect the generation of any other surfaces, such as the bottom layer, top layer, or sparse infill. Actually, this idea, in another implementation, migrated from my newly developed calibration test, when in just a few layers it was necessary to get a perfectly flat surface. # Screenshots/Recordings/Graphs Before: <img width="1147" height="365" alt="image" src="https://github.com/user-attachments/assets/b590b1b0-1a29-4502-8c7f-9716a2ad5ec8" /> After: <img width="1147" height="365" alt="image" src="https://github.com/user-attachments/assets/6f0200b5-e7d9-4809-8409-e393a8b1dfa9" /> The first 3 compensation layers <img width="240" height="343" alt="image" src="https://github.com/user-attachments/assets/089089a2-6e49-421e-81bd-1441db37ab1f" /> <img width="240" height="343" alt="image" src="https://github.com/user-attachments/assets/9f3f09ca-292a-4994-aa35-83619201f534" /> <img width="240" height="343" alt="image" src="https://github.com/user-attachments/assets/fa23884d-9355-4020-b9e4-408634c5e794" /> ## Tests <img width="883" height="338" alt="image" src="https://github.com/user-attachments/assets/a9084ce8-e627-40d4-b303-c9b57f09f495" /> <img width="1946" height="1004" alt="image" src="https://github.com/user-attachments/assets/7a2d4419-3495-4b7d-a09a-a4fc0ae2f6bf" /> There are printed together 2 thin samples of solid filling only 5 layers. Left is regular, Right is with this PR modifier.
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/OrcaSlicer#1468