Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

Hi GF357, thank you for the suggestion!

The only related feature that has been under consideration thus far has been with regard to dynamically controlling feed/speed rates (spindle RPM for machines that support it) to maintain a constant spindle load in spite of varying engagement between the cutter and material. I'm curious what exactly the purpose of the feature you propose would be because you did explain the effect clearly enough but I'm at a loss as to what this would be useful for. I apologize if I come off as presumptuous, and by no means intend to seem insulting in any way, but what it sounds like you're talking about is a bit like an alternate means of producing a sort of finishing cut pass? If that's not the case then please elaborate because I'm always curious as to what users envision a need for :)

For purposes of ensuring a clean final surface it is possible in most cases to simply create a finishing pass operation that cleans up previous operations' cuts at different feed/speed rates. The "Leave Stock" parameter enables operations to be treated as roughing passes, leaving a thickness of stock material which allows for a finishing pass to then come in and clean up the rest of the workpiece at different feed/speed rates - and even entirely different cutters that are better suited for the task than what roughed out the piece to begin with. Multiple finishing passes can be performed too, with each one leaving successively less stock material behind to ensure a flawless final surface. I mean no insult if you're well-rehearsed in the arts of CNC and if none of this is new to you and you still think there's a need for a variable feed feature then consider my interest piqued!

The leave-stock parameter, however, is only applicable with the operations which generate toolpaths from the project's actual surface contours and form, such as for relief/emboss type carvings. This excludes the Medial-Axis Carve, Profiling, and Pocketing operations due to the fact that these operations generate toolpaths directly from the project input image itself, with no regard for any 3D geometry to 'leave stock' of any thickness on. They simply generate a toolpath based on a 2D image with no intention of producing or conforming to any  3D form because their depth and offset parameters allow for cuts that are completely independent of the generated 3D project mesh.

At any rate, as far as the 2.5D type operations like pocketing/profiling/horizontal are concerned - which feed through cuts horizontally at incremental depths - it wouldn't be much of a hassle at all to implement a means by which users could impart a fractional decrease in the feed rate or spindle RPM of successive cuts by depth or concentricity. Specifically for the pocketing operation though it's not difficult to produce the equivalent of a finishing pass by using another pocketing operation with the cut depth and max depth both set to the exact final desired depth, and a finishing feed/speed rate set. This would only take care of the bottom of the pockets which is where a profiling operation would come in right after to clean up the 'walls' of the pockets at the finishing speed/feed rates. If your flutes are long enough to reach the depth of your pocketing max-depth then you could clean up the walls with the finishing pocketing operation itself instead, because the profiling operation is only necessary if your cut depth is less than the max depth of the pockets themselves and you couldn't just combine finishing the bottom of the pockets with the walls in one shot.

Again, I am in no way trying to be insulting or presumptive as to what your skill level or existing CNC knowledge may be! I'm only trying to provide some pointers in the event that they may be useful because many PixelCNC users are (surprisingly) actually complete newcomers to CNC. But if what you're suggesting has another reason that such a feature would be of use then consider me all ears! Perhaps it could be a means of providing an opportunity for something of a pseudo-finishing pass built right into an operation - without having to explicitly define one (or more) to get the job done, and that doesn't seem like a bad idea at all. Let me know!

Thanks again,

Charlie