Hi Marksk - Sounds like fun but your going down a tough path to generalise a 3D path. There are many tool end shapes and calculating the locus of these to create an accurate offset for say a bowl tool, then a square tool then a round tool is a mission. You need a good mathematician who is into geometry and jacobians. There are so many CAM systems that are free why do this? I'm not saying you shouldn't but why? Its one thing to have a tool path offset from the surface but then you need a path strategy. A high speed machining strategy is needed these days and that is much more complex then a simple offset zig zag? Then there is the velocity planning. A machine does not follow the exact coordinates of the toolpath, it is modified by the velocity planner to produce a smooth path. Advanced controllers have adaptive planners that run the path several times and control acceleration and jerk to produce very very smooth toolpaths. There are so many layers to this interesting area of manufacture.
Grasshopper would automate a lot of this, have you seen grasshopper? Peter
https://www.rhino3d.com/6/new/grasshopper
https://books.google.com.au/books?id...cobian&f=false