Note: The following article appeared in Digital Machinist Volume 5 No. 3 Fall 2010. HeeksCAD has continued to mature since then. The current user interface may vary significantly from the images below.
No Secrets: Open-source CAM application bares all.
In the opening scene of the 1981 movie Raiders of the Lost Ark, explorers come upon an idol hidden in the jungle. Weaker men flee, but the hero, undaunted, continues on to discover a treasure.
The first words on the HeeksCAD website are a little like that: “HeeksCAD is not finished, yet. “ Those who make it past this warning, will face challenges but are ultimately rewarded with a prize: HeeksCAD and it's CAM plug-in HeeksCNC are quite usable – and powerful- even in their unfinished condition.
I really love HeeksCAD as a design tool. There's a lot of features that are hidden like easter eggs and a new one got added today. This isn't an obvious feature so I made a little youtube video to show how it can be used.
My friend Dan Falck and I wrote an article about HeeksCAD. It got put in a magazine that looks like this:
They sell it at these places:
Dan Heeks made two fixes to HeeksCAD today that made my life a lot easier.
Sometimes you have a sketch that you want to extrude to multiple faces. For example you have a sketch like this:
And you want a solid like this:
In order to extrude a solid, you need a face. To get a face, you need a sketch. That means the two inside lines have to be duplicated and three separate sketches have to be created, faced, extruded. With simple parts this was a pain, but doable. Complicated parts meant juggling dozens of sketches.
The fix allows you to select a group of elements from a sketch and create a face directly from them. To use it, make sure you un-tick 'sketches' from the selection options. Then select the elements that make up the face you want and right-click to 'convert sketch to face'
The other fix added today will be especially appreciated by anyone using HeeksCAD to design parts for 3D printing. You can now select individual solids from your design and save them out to .STL files.
A project I've been working on has had me using the constraint engine in HeeksCAD a lot more. I've used this in the past but never took the time to really explore it. It's a great feature that a lot of people hardly know about. I was going to do a quick youtube video about it but this one by geo01005 is already pretty thorough.
Cubes have their datum at the corner. This means that grabbing the scale handle causes them scale around the corner instead of the center of the object. Sphere's have the datum at the center. So if a sphere and a cube are centered on the same point, scaling them one at a time results in correctly scaled but no longer centered objects. It makes sense, but it's annoying to me.
Trying to model this entrapment cube was difficult until I found a simple work-around and then it was trivial. Add a sphere and center it in the cube. Select the sphere first, then the cube. Grab the sphere's scaling handle and both objects will scale around the center of the sphere. Delete the sphere when finished.
The screenshot below doesn't look like much but represents way too much work.
I recently finished my probe. Here's a shot of it mounted on the router
After getting the probe to work. I ran gridprobe.ngc from the example files that come with emc2. The file can be edited to control the range of the scan and the size of each incremental step. I set up the file to probe the surface of the router at 1 inch increments in both the X and Y direction. The output of the scan is a list of XYZ coordinates in an ASCII file.
This Guy has a couple scripts for blender that are very handy. One imports a CSV file and the other 'skins' the resulting point cloud by creating faces for the vertices.
The output from the scan had to be edited into a CSV but that was easy. After experimenting with the settings for the skinning script I had a mesh which I exported to an .STL file and brought into HeeksCAD. Voila. A perfect scan of an almost flat surface.
Next up: Try it with something more interesting.
DanielFalck on the #CAM IRC channel turned me on to a cool feature of HeeksCAD.
Support of STEP files, at least as far as import, is very good in HeeksCAD. McMaster-Carr, which has a truly phenomenal catelog, has an option to download 3d files for many of their parts. They support a number of different file formats including STEP.
If they have 3d data you'll find this link on the part page. Follow it to download and then import the file to HeeksCAD.
I've gotten so comfortable designing in qcad that it's my default tool for new projects. But qcad is 2d only. So lately I've been forcing myself to use HeeksCAD more. I still find the UI to be a bit clunky but I'm getting better at it. I'd love to see some quick tool bars for things like snapping and selection.
I'm going to build a touch probe so I can play with some of the other HeeksCNC operations. Here's the design I drew in HeeksCAD based on this page