Tuesday, December 1, 2009
Flyout toolbars improvement
Flyout toolbars working OK with Windows, but not quite right with Ubuntu.
Sunday, November 29, 2009
OpenGL tree view
Thursday, November 19, 2009
open source tractor
Marcin asks "I was considering Blender. Can HeeksCAD do better?"
I haven't tried Blender for a while.
I like to think that HeeksCAD is easier to use, but that might just be because I wrote it.
Here is a video of me playing with HeeksCAD a few minutes ago.
HeeksCAD has plenty of bugs, but it is OK for making some solid models.
It doesn't do anything nice like fitting solids together.
Save the file every time you do something, preferably with a different file name each time, in case HeeksCAD crashes.
I haven't tried Blender for a while.
I like to think that HeeksCAD is easier to use, but that might just be because I wrote it.
Here is a video of me playing with HeeksCAD a few minutes ago.
HeeksCAD has plenty of bugs, but it is OK for making some solid models.
It doesn't do anything nice like fitting solids together.
Save the file every time you do something, preferably with a different file name each time, in case HeeksCAD crashes.
Saturday, November 14, 2009
Spline Machining
You can now profile sketches with splines in HeeksCAD ( mostly from SVG file ), without needing to split them into little lines. They are converted into arcs for the python script, but they remain as splines in HeeksCAD. This is in the source code now; http://code.google.com/p/heekscad/source/browse/trunk/src/HSpline.cpp#417 This was inspired by Jeff Epler's biarc code, available here http://bitbucket.org/jst/inkscape-gcode/
Wednesday, October 21, 2009
BRepAlgo_Fuse
I added an option "Use old solid fuse" and made it the default. When using the old method, it fixes the problem with unwanted edges.
I found this here http://www.opencascade.org/org/forum/thread_13599/
see 'Use Old Boolean Operations “BRepAlgo_Fuse” can avoid coplanar faces.'
However, apparently the new method is better in other ways, so I have made an option.
I found this here http://www.opencascade.org/org/forum/thread_13599/
see 'Use Old Boolean Operations “BRepAlgo_Fuse” can avoid coplanar faces.'
However, apparently the new method is better in other ways, so I have made an option.
Wednesday, September 30, 2009
OCC offset
Wednesday, September 23, 2009
flyout toolbars again
Graduated Background
Thursday, September 17, 2009
Flyout toolbars
I've added fly-outs menu to toolbars in HeeksCAD. Currently you have to press the little arrow button to get the popup menu. Then you have to click again on the menu item. I want it to work with a click and drag, rather than two clicks. Also, I want to get rid of the little arrow button and have click and drag work on the main toolbar button. Also, I want the button on the toolbar to change to the last used tool from the drop-down. I can't work out how to change the tool bitmap, though.
Thursday, August 13, 2009
Statistics
Thursday, July 16, 2009
Necklace Disc
I spent the whole day making a necklace thing, made from stainless steel. My girlfriend has a necklace which is made from a piece of shell. It is a circle with a circular hole to put the string through. I measured it and drew it up in HeeksCNC. I added a couple of extra holes to lighten it a bit. I drew some text in Inkscape, wrapped around a curve. I got a bit of 3mm stainless steel from my Dad.
I made two NC files, one for the text and one for the circles.
I set the feedrates to 50.
I broke the tip of my first engraving tool.
I used another stronger engraving tool.
This did the text OK ( at 0.1mm deep ).
I did the text again, another 0.1mm deeper.
I changed the tool to the 3mm slot drill.
Again feedrates at 50. Depth of cut about 0.52mm ( 6 cuts down to 3.1mm deep )
On feeding down, it broke the tool.
I reprogrammed it with feedrates at 10 and bought a new cutter from my dad.
This worked better, but it was too slow to stand and watch. I changed the horizontal feedrate to 25, leaving the vertical feedrate at 10. Later I upped the horizontal feedrate to 40 and it was still OK. Even so, with 6 depths of cut for each profile, it took at least an hour to cut, with me standing there pouring coolant from a jug.
It hadn't cut all the way through, instead it had pushed the steel down into the wood in a bulge. I had to cut through this with a knife.
I filed the sharp edges and sanded it with "Wet and Dry".
The default vertical feedrate should be lower than the horizontal feedrate.
The profile operation, in HeeksCNC, is not remembering the previously entered feedrates.
I made two NC files, one for the text and one for the circles.
I set the feedrates to 50.
I broke the tip of my first engraving tool.
I used another stronger engraving tool.
This did the text OK ( at 0.1mm deep ).
I did the text again, another 0.1mm deeper.
I changed the tool to the 3mm slot drill.
Again feedrates at 50. Depth of cut about 0.52mm ( 6 cuts down to 3.1mm deep )
On feeding down, it broke the tool.
I reprogrammed it with feedrates at 10 and bought a new cutter from my dad.
This worked better, but it was too slow to stand and watch. I changed the horizontal feedrate to 25, leaving the vertical feedrate at 10. Later I upped the horizontal feedrate to 40 and it was still OK. Even so, with 6 depths of cut for each profile, it took at least an hour to cut, with me standing there pouring coolant from a jug.
It hadn't cut all the way through, instead it had pushed the steel down into the wood in a bulge. I had to cut through this with a knife.
I filed the sharp edges and sanded it with "Wet and Dry".
The default vertical feedrate should be lower than the horizontal feedrate.
The profile operation, in HeeksCNC, is not remembering the previously entered feedrates.
Wednesday, July 1, 2009
hpgl in HeeksCNC
I have started making post-processors for hpgl plotters, for HeeksCNC, after a request from someone called Gary, who has some engraving machines.
In the picture is the toolpath from the sample file that Gary gave me.
I made it so that the machine is now chosen from a drop-down in the program properties.
Tuesday, June 23, 2009
Code::Blocks
I made a Code::Blocks project file for HeeksCAD.
I used this on my Dell Inspiron 530 running Ubuntu 9.04.
It works for me. I can edit a file, press "Build" and it only builds the file it needs to.
I can do "Find Declaration of" or "Find Implementation of".
I don't seem to be able to add breakpoints while it's running. I seem to have to add them before I start running.
Monday, June 15, 2009
Monday, June 8, 2009
Pictures on Menus
Monday, May 11, 2009
HeeksCAD Ubuntu installation
Installing HeeksCAD on Ubuntu is now easy.
You need Ubuntu 8.10 or later.
I tested it with Ubuntu 9.04.
You follow the instructions on the wiki on the HeeksCAD project page, http://code.google.com/p/heekscad/wiki/InstallingOnUbuntu, you only need the one called heekscad_0.7.0-svn0_i386.deb, and it just works. It even works in German, if you change Ubuntu's language to German!
Thursday, April 30, 2009
HeeksPython
jonpry has made HeeksPython http://code.google.com/p/heekspython/
I had some trouble getting it to build, but now I have it running.
It adds a Python console window to HeeksCAD, which will allow us to do things more interesting than we can imagine. The first thing I did was make some lines in a pretty pattern.
This is only for Windows at the moment and isn't available in the current HeeksCAD 0.7.0 installation.
Friday, April 10, 2009
Phone Pocketing
My youngest daughter asked me to engrave her name on my phone, because her sister's name is already on there. I took the oportunity to use the pocketing operation. It was quite easy to use and I'm pleased with the result.
I made her name in Inkscape and opened it in HeeksCNC as a SVG file.
I got the heart shape as a SVG file from Wikipedia ( the page about love ) and imported it into HeeksCNC.
I drew the rectangle after measuring how much space there was on my phone.
I clamped a lump of wood in my machine's vice and machined it flat with a big tool, just using jog moves. I superglued the flexible battery cover from my phone onto the wood to make sure it was flat.
Monday, March 30, 2009
jukumagic
Friday, March 27, 2009
solid datum arrows
Tuesday, March 10, 2009
bezier triangle meshes
Wednesday, March 4, 2009
Real machining again
celeron55 did some milling of wood with his homemade machine, using HeeksCNC software, which prompted me to do some machining on my machine. It was good being able to have my little Dell Mini 9 computer near to the machine, so that I could remember where the X0 Y0 position is in relation to the drawing. My machine requires a M3 code on the spindle speed line, otherwise the spindle doesn't start. It was a good thing I did a dry run 5mm above the material, first. See the video on http://www.youtube.com/watch?v=rH5VNbBSR-E
HeeksCNC Windows download
Monday, March 2, 2009
sketch as boundary for adaptive roughing
Sunday, March 1, 2009
Profile a section of a sketch
I can now profile part of a sketch by specifying the start and end points in the profile operation's properties.
It has been a good weekend for HeeksCNC. Someone called celeron55 joined #cam chat channel on FreeNode and did lot of good work on HeeksCNC, including fixing the German decimal point problem and adding the Adaptive Roughing operation to the tree . Also "fenn" added a lot of easy to repeat bugs to the HeeksCAD bug list http://code.google.com/p/heekscad/issues/list
Friday, February 27, 2009
toroidal cutter - problems
Thursday, February 26, 2009
Pocketing and Profiling
Monday, February 23, 2009
kitten
Sunday, February 22, 2009
Island machining
To do islands, I have to make sure I draw the islands going the other way to the outside.
These examples all have outside clockwise, inside anti-clockwise.
There seems to be problems sometimes with using a rounding factor of 1.5 ( sharp corners for right angles ). Ignore all the red lines, I still have work to do, linking the paths together.
Friday, February 20, 2009
Arc output
Home made Miller
This machine was originally built by my Dad, when he was younger than I am now.
We tried to make it CNC. I got Dad to make the gearboxes for the stepper motors. Later, I tried servo motors ( slot-car motors ). I was always being too cheap, using motors that were too small. I never had it reliably working. It is still useful as a manual miller, like it always was. The weights are to remove backlash.
Tuesday, February 10, 2009
Dell Mini 9
I bought a Mini 9 from Dell for £279, which comes with Ubuntu 8.04
HeeksCAD works well on it.
The Open CASCADE package from http://www.opennovation.org/ubuntu/ wouldn't download.
It said Failed to fetch http://www.opennovation.org/ubuntu/dists/hardy/Release
Unable to find expected entry main/binary-lpia/Packages in
Meta-index file (malformed Release file)
So, I had to download the Open CASCADE source code and build it. It took over 6 hours to build.
But it worked.
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.
Friday, February 6, 2009
arc pocketing
area clearance Ubuntu
area clearance
I have been trying to work out how to use the polygon boolean operations from http://boolean.klaasholwerda.nl/bool.html
It took me a while to see that the Offset function is actually called "Correction".
There are comments that tell me that, but I wasn't reading the comments.
I can now almost do area clearance machining.
I have made a class CArea to make these functions work the way I expect, it is not finished yet.
I have made a Python module.
It have added a Google Code project called libarea http://code.google.com/p/libarea/
I have added my latest work to it.
Thursday, February 5, 2009
Wednesday, February 4, 2009
trying to do pocketing
DanielFalck from #cam has found where to edit the start point, so we hope to do pocketing.
In this example, I simply made a cuboid 20x20x20. In CoreRoughGeneration::FindGoStart(), I changed a0 and a1 to be
P2 a0(10.0, 10.0);
P2 a1(12.0, 10.0);
This is this result ( click on picture ). It looks like the algorithm doesn't car if it goes outside the boundary, so long as everything inside the boundary is cleared.
Sunday, February 1, 2009
adaptive roughin in Linux
Friday, January 30, 2009
adaptive roughing
Thursday, January 22, 2009
Profile operation
I now have profile operation working.
Draw some sketches and then press the Profile button on the toolbar in the "Program" window.
Edit the properties of the operation in the "Properties" window. Then press the "Python" button to make the text program ( I will skip this step eventually ), then press the "Post-Process" button to make the NC code and see the toolpath. The operation has been added in the "Objects" window in the tree under "Operations" which is under "Program".
Subscribe to:
Posts (Atom)