arc-overhang icon indicating copy to clipboard operation
arc-overhang copied to clipboard

Gradual transition from arcs to concentric perimeter

Open ServAlex opened this issue 2 years ago • 9 comments

2 stages:

  1. Print some number of regular arcs. Need to figure out when to stop and move to 2
  2. Have 2 curves: outline of already printed shape A, target shape B The goal is to interpolate between A and B. Divide each of them into N segments of equal lengths A0, A1, ... AN - points of curve A B0, B1, ... BN - points of curve B Build points of intermediate curves C with LERP(Ai, Bi, c) This will require variable flow rate. It looks like flow rate in any i-th point is proportional to the length of AiBi line.

Caveat - I'm not sure how to avoid concave segments

image

ServAlex avatar Dec 19 '22 20:12 ServAlex

Looks like a solid idea. You may be able to forget about arcs entirely. I'm not sure that the concave shapes will be an issue as long as there is sufficient overlap between lines.

stmcculloch avatar Dec 20 '22 00:12 stmcculloch

For starters I'll keep arcs, they should help in case of odd shapes. Seems like even spacing on both sides is not the right way to go, should try even spacing on one side and project those points to another side image

ServAlex avatar Dec 22 '22 17:12 ServAlex

Projection looks like this image Even with those gaps it may be a way to go. Time to generate some contours

ServAlex avatar Dec 22 '22 18:12 ServAlex

left faint interpolation rails in background image distance between lines is less than line_width most of the time as number of contours is selected in a way to not exceed it in the widest areas probably after generating rails it's worth finding widest gaps and add extra points there

ServAlex avatar Dec 22 '22 19:12 ServAlex

latest version, still only drawing, no gcode image

ServAlex avatar Dec 23 '22 18:12 ServAlex

Woah!! Looks amazing! Hope you don't mind, I shared your progress on my Instagram: https://www.instagram.com/p/CmkG-vQSK9o/

stmcculloch avatar Dec 24 '22 20:12 stmcculloch

Sure! However, I did not continue with this idea today to explore another one, I'll create a separate issue for that later. In this approach I'm concerned that I need to maintain line width of 0.35 on widest sections but as result on most of the contour it's around 0.15-0.20

ServAlex avatar Dec 24 '22 20:12 ServAlex

Another idea is kinda flood approach, it's a little buggy at the moment, but has much better performance and consistent line widths image

ServAlex avatar Dec 24 '22 20:12 ServAlex

sorry for teasing it like that, all the work is in my fork main branch for this issue and floodfill2 branch for todays idea https://github.com/ServAlex/arc-overhang/tree/main

ServAlex avatar Dec 24 '22 21:12 ServAlex