It’s a bit more complicated than it used to be, sorry about that.
1. Check out this branch of the project: http://code.google.com/p/polargraph/source/browse/#svn%2Fcontroller%2Fbranches%2Fpolargraphcontroller_zoom
You need all of the files.
2. You need these libraries also installed:
Geomerative for SVG import and polygonalisation.
ControlP5 for the GUI. I’ve tested with 0.5.4 which is the last stable release.
3. Alternatively, get some precompiled binaries. These are a pain to make, and I can only test the windows versions myself, so there’s a good chance they won’t get updated very often, but they are here.
- SVG import and vector graphics output. In conjunction with the latest version of the server code, this is now a pleasant reality. It’s a bit slow, and a little inflexible right now, but I anticipate it’ll get better. The SVG file is placed at the top-left of the machine, so I’ve been making a file in inkscape that’s the same size as the machine (in px), and drawing my layouts on that. It is aware of lines only (no fills), and ignores all styles in the SVG.
I’ve discovered that there is something like an incompatibility between the way inkscape exports text outlines and the way geomerative imports them though, that results in some of the centres of the letters being offset a bit. Not sure why, but if I break the object into its constituent paths, (Path->Break Apart) then it’s solved. Go figure.
- Zooming and panning on the machine. Use the mouse wheel to zoom the machine, and a middle button drag to move the machine. This should let it be usable for most screens.
- Adaptable button panels. They’ll stack to fit on the screen.
- New GUI library. I’m using ControlP5 to handle the buttons and tabs, and there’s a few nice things in that like the number spinners too. It’s pretty good.
- More sensible controls. How to select an area is more obvious. Buttons are disabled when not usable, buttons can toggle on and off too.
- Machine designer. The setup tab lets you define machine sizes, page sizes, page positions and pen width test settings. You should save your properties and restart if you change the mmPerRev and stepsPerRev settings. The only thing you need to edit manually now is the serial port. I’ll fix that shortly.
- Queue path preview. This looks for C01 (move pen) and C17 (move pen in straight line) commands in the queue and draws them on the machine.
- Row size is now grid size.
- Pixel threshold. Use the bright pixel and dark pixel number spinners to ignore pixels at either end of the spectrum. Chroma keying is reinstated (mask with bright green).
Please have a go and see what you reckon.
Almost forgot – AccelStepper has been officially upgraded to work with Arduino 1.0. Don’t use my branch.