Ultimaker / CuraEngine

Powerful, fast and robust engine for converting 3D models into g-code instructions for 3D printers. It is part of the larger open source project Cura.
https://ultimaker.com/en/products/cura-software
GNU Affero General Public License v3.0
1.68k stars 882 forks source link

Re implement wall roofing #2021

Closed casperlamboo closed 8 months ago

casperlamboo commented 8 months ago

Description

This "feature" allows users to set a different print configuration (speed, acceleration, jerk) for those outer walls that in the "top surface layers". This gives users more control over printed part quality, especially when tuning profiles for speed.

Previously this feature was implemented but it had some downsides. There was a lot of code duplication, and the code was running into performance issues.

This new implementation solves both this issues, and adds a better interpretation of the feature. Previously if a line segment was partially within and partially outside a top layer then the whole line segment would be printed with the top surface layer outer wall config. With the new implementation only those area's within a line segment that are within the area are printed with this config.

Screenshot 2024-01-26 at 15 19 26

CURA-11129

Type of change

How Has This Been Tested?

Yes

Test Configuration:

Checklist: