Saturday, February 7, 2009

HeeksCNC structure


( Click on picture to make it bigger )
#cam guys are having trouble with plugins again, for HeeksCNC.
The only plugin needed for HeeksCAD is the HeeksCNC dll ( or .so file ).
HeeksCNC adds the "Program", "Operations", "Profile", "Pocket", "ZigZag", "NC Code" object types to HeeksCAD. It uses these to create a script and then copies that script to a Python file "post.py". This file is a stand-alone Python file, that can be run outside HeeksCNC ( for testing, for example ), but it will need various Python modules to do this.
kurve.so, actp.so and area.so, are Python modules.
They should not be added as plugins to HeeksCAD, they are not HeeksCAD plugins.
They just need to be built and put in the right place.
At the moment, post.py expects kurve.so and area.so to be copied to HeeksCAD\HeeksCNC.
If you use the ZigZag operation, it creates script which expects the pycam stuff to be in a structure like this: HeeksCAD\HeeksCNC\PyCam\trunk\pycam\Geometry

When post.py is run, it should create the nc file ( test.tap for example ).

When post.py has been run from the "G0" button in HeeksCNC's program window, it then calls nc/iso_read.py to make an xml file ( test.tap.nc.xml for example ) which contains a list of NC code blocks and their associated toolpath. This is then imported into HeeksCNC so that it can display the NC code and the toolpath. I hope this makes things clearer.

No comments: