CuraEngine icon indicating copy to clipboard operation
CuraEngine copied to clipboard

Feature issue 15583 spiral z hop

Open NadineMik opened this issue 2 years ago • 3 comments

Description

This pull requests adds a tangential spiral z-hop and thus fixes this issue. It provides a smooth spiral z-hop after a retraction, where the beginning and the end of the spiral (or arc) is tangential to the previous and following movement. Additionally, a retraction can be performed throughout the spiral. The z-height increases linearly throughout the spiral and the speed in xy-direction is kept constant relative to the previous movement. After the following travel a normal unretract and vertical un-z-hop is performed. The full documentation on this feature can be found over here. This pull request is paired with a pull request in cura over here.

Type of change

  • Two new files were added into path planning for calculating the arc.

  • Inside the gcode export the arc is created and used to write a spiral z-hop (possibly with retraction).

  • In the layer plan the logic for which type of retraction is performed is changed depending on the UI settings and possibly adding a spiral z-hop to the gcode.

  • Added the spiral path to the gcode preview after slicing.

  • Added unit testing for the arc path calculation.

  • [ ] Bug fix (non-breaking change which fixes an issue)

  • [x] New feature (non-breaking change which adds functionality)

How Has This Been Tested?

  • [x] Unit testing for arc calculation
  • [x] Test prints on internal printer
  • [ ] Add photos of test prints

Test Configuration:

  • Operating System: Window 10

Checklist:

  • [x] My code follows the style guidelines of this project as described in UltiMaker Meta
  • [x] I have read the Contribution guide
  • [x] I have commented my code, particularly in hard-to-understand areas
  • [x] I have uploaded any files required to test this change

NadineMik avatar Dec 08 '23 10:12 NadineMik

Hi,

Thank you for taking the time to contribute. We're in the progress of updating our Way-Of-Working with regards to PR's so I'm adding some label(s). That way we can prioritize our work-load and give your PR the love it deserves.

Either I our one of my colleagues will pick this up in the near future

jellespijker avatar Feb 16 '24 09:02 jellespijker

Hey @NadineMik ! I have created a branch and a PR based on your PR https://github.com/Ultimaker/CuraEngine/pull/2076, to test the feature. I'd like you to please take a look at the benchmarks. You can find benchmark results here: https://github.com/Ultimaker/CuraEngine/actions/runs/8891872064/job/24414747014?pr=2076 image

saumyaj3 avatar Apr 30 '24 08:04 saumyaj3

Hey @NadineMik ! I have created a branch and a PR based on your PR #2076, to test the feature. I'd like you to please take a look at the benchmarks. You can find benchmark results here: https://github.com/Ultimaker/CuraEngine/actions/runs/8891872064/job/24414747014?pr=2076 image

Hi @saumyaj3, thanks for pointing this out. There was a minor mistake in two of the gtest macro calls. I corrected it and pushed it to the branch in my fork. All checks which ran are pass now.

NadineMik avatar May 11 '24 20:05 NadineMik