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

Maximum resolution not respected on circular path and smaller (0.1mm) layer height #11379

Closed
2 tasks
commons3nse opened this issue Jan 30, 2022 · 3 comments
Closed
2 tasks
Labels
Status: Needs Info Needs more information before action can be taken. Type: Bug The code does not produce the intended behavior.

Comments

@commons3nse
Copy link

commons3nse commented Jan 30, 2022

Application Version

4.13.1

Platform

MacOS Mojave 10.14.6

Printer

Creality Ender 3 V2

Reproduction steps

  1. Slice attached model with "Standard Quality - 0.2mm" profile, only change to 0.1 mm layer height instead (this seems important, I couldn't reproduce bug with 0.2mm)
  2. Print (or check Gcode)

Actual results

On layer #20 (this seems to happen on layers #5-30 or so) produced GCode for circular outer wall path contains segments with length less than 0.25mm (default maximum resolution). This results in printer stuttering on high speeds (75mm/s), so producing bad quality surface (I use Klipper firmware on my Ender 3 V2).

Screen Shot 2022-01-30 at 6 19 11 AM

photo_2022-01-30 06 35 38

There are also such segments on layers 30+, but much less of them (see photo).
When I increase max resolution to 1mm and max deviation to 0.1mm, these artifacts disappear, but it affects print quality on glossy plastic.

Expected results

Smooth glossy object

Checklist of files to include

  • Log file
  • Project file

Additional information & file uploads

highdef_bottom_v7.3mf.zip

@commons3nse commons3nse added the Type: Bug The code does not produce the intended behavior. label Jan 30, 2022
@commons3nse commons3nse changed the title Maximum resolution not respected on circular path and smaller (0.1) layer height Maximum resolution not respected on circular path and smaller (0.1mm) layer height Jan 30, 2022
@fvrmr
Copy link
Contributor

fvrmr commented Feb 4, 2022

Hi @commons3nse thank you for your report.
This could be related to your firmware.
Also did you try out the same print with our Arachne engine? https://github.com/Ultimaker/Cura/releases/tag/Arachne_engine_beta_2

@fvrmr fvrmr added the Status: Needs Info Needs more information before action can be taken. label Feb 4, 2022
@Ghostkeeper
Copy link
Collaborator

Ghostkeeper commented Feb 14, 2022

Note that the 3MF file provided is not a project file. To save a project file, you'd have to go into Cura and do File -> Save Project. This results in a 3MF file that contains also the profiles, settings and model placement, which can be used to reproduce your issue. I'll try loading with the Ender 3 default settings.

I don't think this has much to do with firmware. The issue is visible in the visualisation of the g-code posted in the initial post.

By the nature of a triangle mesh, cross sections of the triangles are not all equally long, so it makes sense that the segment output from Cura is not 100% consistent; the input mesh is not. The question is whether any of the segments should've been removed within the constraints of Maximum Resolution and Maximum Deviation. Let's take this example of a small line segment (the middle of the 3), which is smaller than the surrounding segments (generated in current master):

G1 X135.669 Y92.651 E517.53327
G1 X135.602 Y92.601 E517.53605
G1 X134.829 Y92.06 E517.56743

Maximum Resolution is 0.25mm. The length of this line segment is sqrt((135.609 - 135.602)² + (92.651 - 92.601)²) which is 0.05049mm, so definitely smaller than the Maximum Resolution. Would removing its endpoints violate the Maximum Deviation though? Maximum Deviation is set to 0.025mm. Using Wolfram|Alpha you can calculate the distance of the middle vertex to the line through the two surrounding vertices: 0.00234mm. This is less than the Maximum Deviation, so you'd think that this vertex could be removed. The current result seems to be wrong to me.

We have a ticket in our planning that changes the simplification algorithm significantly (again). Developers, see CURA-8636. I'll add this as a test case.

@no-response
Copy link

no-response bot commented Feb 18, 2022

This issue has been automatically closed because there has been no response to our request for more information from the original author. With only the information that is currently in the issue, we don't have enough information to take action. Please reach out if you have or find the answers we need so that we can investigate further.

@no-response no-response bot closed this as completed Feb 18, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Status: Needs Info Needs more information before action can be taken. Type: Bug The code does not produce the intended behavior.
Projects
None yet
Development

No branches or pull requests

3 participants