So, as I’ve been getting more familiar with Carbide Create, there’s one thing that still baffles me: what on earth is it thinking when it picks the order of operations for a carve?
Like, sometimes it’ll start by casually poking three random holes dead center, like it’s testing the waters. Then—without warning—it sprints across the board to start carving straight lines on the far side like it forgot something important over there. Then it’ll hog out an area… but not quite all the way, just leaving a whisper of material behind, like it’s saving a snack for later. Then it finally circles back like, “Oh yeah! That thing I started earlier.”
Now, I know it’s not actually crazy—but watching it in action makes me feel like I am.
So can someone super simply explain what it’s doing? Maybe not the super smart descriptions that all you with IQs two times mine sometime use in other topics: “it’s just optimizing toolpaths based on vector nesting algorithms while considering axial load tolerance”. Talk to me like I’m five. Better yet—talk to me like I’m a tired adult pretending to understand what five-year-olds are saying.
(And yes, yes—I know it’s not really thinking. It’s just doing what it was programmed to do… unless, of course, it’s become self-aware. Hard to tell these days.)
I stopped worrying about it along time ago. I don’t run a business however and do not depend on the most efficient work flow. I can understand folks that do however. I’m just happy that it finishes a final product that I could not possibly create with a hand router!
Very good point. I too am extremely happy with the end outcome. I find myself always trying to find ways to make things more efficient, whether this, my “normal” job (where part of my duties is to find the more efficient solution), or regular day-to-day life things.
It was as much a curiosity thing than a “I GOT to figure this out!” thing.
Like most things in life, it’s a trade-off — we could make the user wait through an even longer toolpath calculation, but that’s an interactive usage where folks tend to be impatient.
I have yet to find a program that orders toolpaths logically, half the time.
A work around is that you can make individual vectors have their own paths, and order them how you like. It’s great for production work that is always the same. But if you have a design with a ton of vectors and a one-off, you replace machine time with programming time.
To reduce the effect on time, keep the retract to a bare minimum to clear the material and clamps.
The movement generation weirdness dates back to at least the late 1980’s. I was working for a pen plotter manufacturer and wondered why the plotter jumped all over the drawing. It would draw part of a letter in the title block, part of a different letter, go way over and draw a few lines in different areas, then come back and finish a letter… There at least used to be a utility you could use to optimize the motions. But that was for plotting, and not cutting…
[edit] And that was not in gcode–it was an output language called GML (graphics machine language)[/edit]
I think you did a fantastic job of defining exactly why it does what it does - the motivations you listed here are EXACTLY what the software is thinking! Got to love software developers who have a sense of humor!
Well, the instructor said it was good for my soul, but I think he lied. It did teach me a hell of a lot about how things worked on the Haas Mill, but I’m still not sure how transferable that is.
I had the crazy idea of asking ChatGPT to optimize my tool paths. I then asked it to tell me how much time the new file saves. The answer is that the new file takes 14 seconds longer.
I recall a comment by Winston Moy several years ago (version 5 era) that you can influence the order of carve by manually selecting the individual items. it will follow order of selection.
Leaving it to random, it will try top down then furthest from XY zero point if multiple items on same Y level.