Take your creations from Concept to Completion

NCGen is an extension for Trimble’s Sketchup, which is marketed as CAD for everyone. NCGen works with both the free Sketchup Make and the Professional Sketchup versions.  NCGen has been in development since 2010 and has been written from scratch with the basic principle of allowing advanced tool paths to be drawn and created from a low cost CAD platform for use on the FC6A Foam Cutting Machine.  As the FC6A uses standard g-code, NCGen can be used on other CNC systems, 3-axis mill or 4-axis hot wire.

NCGen has the capability to create advanced g-code for the purposes of:
Engraving by converting drawn lines directly into tool paths.
2d Milling with an advanced offset routine and now including step-down milling for thicker materials.
2.5d Milling as defining multiple faces on multiple planes is a simple task with SketchUp.
3d Milling full 3d zig-zag style tool paths are created direct surface intersections, estimating a surface offset, or by scaling .
Rough Cutting tool paths are generated by using efficient repetitive offsets for fast removal of material. 
Pocket Milling tool path generation, with a ramp-in style lead-in starting in the center of the pocket for conventional milling.
4 Axis Hot Wire tool path generation allows for tapered and 2d style cuts to be made for hot wire machines.
Automatic Airfoil Generation by 4 Digit NACA specifications or externally loaded data files.

See NCGen in action on our tutorials page or on our youtube channel

NCGen was designed for the FC6A and LinuxCNC, however it now supports and is used on many types of other CNC machines running various types of software as many parameters can be controlled from SketchUp, for example, each axis can be re-named to suit the end users needs.   

NCGen works by using properties that are native to Sketchup and by automatically creating tool paths for both 4 axis hot wire operations and 3 axis mill operations.
The design philosophy of NCGen is that of, if the tool path can be drawn, it can be exported as g-code. Therefore NCGen is setup so that any line that can be drawn in Sketchup can also be made into a cut path manually, if need be, by simply meeting the correct criteria:
1. The lines that represent the tool path are on proper layer (ie G1).
2. The lines are grouped, and that group on proper layer (ie G1).
3. The group given a unique name (via Entity Info, a right click option).

Additional Documentation


Offset related issues

  • 3dToolpath option sometimes makes funny connections.
  • Occasionally a 2d offset path will create an invalid result.

(If this happens please let us know there are many “gotchas” in creating a proper offset path, we think we have them all, but probably do not).

3D Tool Path Generation

  • Parallel offset paths in the roughing planes sometimes do not generate properly.
  • Roughing plane generation sometimes creates funny results on square objects, sometimes rotating the object helps to avoid the problem.

(3D Tool Path Generation is the most active portion of this project and improvements are constantly being made).

Sketchup Observer Class related issues:

  • When an group is added manually to the G1 layer, the list will not auto update (press up or down, or close and reopen).
  • If the group name is changed in normally in Sketchup, it will not update in the order list automatically.
  • If the groups are deleted in normally in Sketchup, it will not update in the order list automatically.
  • When a object is selected, with the list open, it would be nice to highlight it on the list.

(These features can be processor intensive, they requires observers, maybe they can be built into a timer update feature the would work better??)

Playback bugs:

  • g2/g3 sometimes are drawn in the wrong direction.
  • g2/g3 only plays back in the XY plane.
  • g90/g91 is not implemented yet.
  • This feature is not yet a complete g-code interpreter.

(These features are being worked on for future releases).

Misc. Bugs

  • G1 generation gets confused by intersections of lines, we are looking for solutions to this problem.
  • On large groups (ie: >4k segments) or very complicated geometry, the tool for creating tool paths tends to hang without feedback while the computer thinks.
  • Complex geometry can take a long time to process, both while generating and then again during export. (We always recommend saving often).

FoamCasualty LLC is not responsible for any damages that using this software or code it produces may have on your CNC machine, computer, or network. No warranty on this software is expressed or implied. By purchasing this software from us you are directly funding efforts to continue to improve upon it. We are grateful to our customers and we believe it to be of good practice to provide updates to our software as we improve it.  NCGen will periodically check for updates and will prompt the user when updates are available.  We hope that you find NCGen to be useful.